@bitgo-beta/utxo-core 1.0.0-beta.4 → 1.0.0-beta.40
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/src/descriptor/Output.d.ts +41 -1
- package/dist/src/descriptor/Output.d.ts.map +1 -1
- package/dist/src/descriptor/Output.js +75 -2
- package/dist/src/testutil/descriptor/descriptors.d.ts +1 -2
- package/dist/src/testutil/descriptor/descriptors.d.ts.map +1 -1
- package/dist/src/testutil/descriptor/descriptors.js +37 -21
- package/dist/src/testutil/descriptor/mock.utils.d.ts.map +1 -1
- package/dist/src/testutil/descriptor/mock.utils.js +1 -1
- package/dist/src/testutil/fixtures.utils.d.ts.map +1 -1
- package/dist/src/testutil/fixtures.utils.js +11 -1
- package/package.json +5 -5
|
@@ -1,15 +1,54 @@
|
|
|
1
1
|
import { Descriptor } from '@bitgo/wasm-miniscript';
|
|
2
2
|
import { DescriptorMap } from './DescriptorMap';
|
|
3
|
-
export type Output = {
|
|
3
|
+
export type Output<TValue = bigint> = {
|
|
4
4
|
script: Buffer;
|
|
5
|
+
value: TValue;
|
|
6
|
+
};
|
|
7
|
+
export type MaxOutput = Output<'max'>;
|
|
8
|
+
type ValueBigInt = {
|
|
5
9
|
value: bigint;
|
|
6
10
|
};
|
|
11
|
+
type ValueMax = {
|
|
12
|
+
value: 'max';
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* @return true if the output is a max output
|
|
16
|
+
*/
|
|
17
|
+
export declare function isMaxOutput<A extends ValueBigInt, B extends ValueMax>(output: A | B): output is B;
|
|
18
|
+
/**
|
|
19
|
+
* @return the max output if there is one
|
|
20
|
+
* @throws if there are multiple max outputs
|
|
21
|
+
*/
|
|
22
|
+
export declare function getMaxOutput<A extends ValueBigInt, B extends ValueMax>(outputs: (A | B)[]): B | undefined;
|
|
23
|
+
/**
|
|
24
|
+
* @return the sum of the outputs
|
|
25
|
+
*/
|
|
26
|
+
export declare function getOutputSum(outputs: ValueBigInt[]): bigint;
|
|
27
|
+
/**
|
|
28
|
+
* @return the sum of the outputs that are not 'max'
|
|
29
|
+
*/
|
|
30
|
+
export declare function getFixedOutputSum(outputs: (ValueBigInt | ValueMax)[]): bigint;
|
|
31
|
+
/**
|
|
32
|
+
* @param outputs
|
|
33
|
+
* @param params
|
|
34
|
+
* @return the outputs with the 'max' output replaced with the max amount
|
|
35
|
+
*/
|
|
36
|
+
export declare function toFixedOutputs<A extends ValueBigInt, B extends ValueMax>(outputs: (A | B)[], params: {
|
|
37
|
+
maxAmount: bigint;
|
|
38
|
+
}): A[];
|
|
7
39
|
export type WithDescriptor<T> = T & {
|
|
8
40
|
descriptor: Descriptor;
|
|
9
41
|
};
|
|
10
42
|
export type WithOptDescriptor<T> = T & {
|
|
11
43
|
descriptor?: Descriptor;
|
|
12
44
|
};
|
|
45
|
+
export declare function isInternalOutput<T extends object>(output: T | WithDescriptor<T>): output is WithDescriptor<T>;
|
|
46
|
+
export declare function isExternalOutput<T extends object>(output: T | WithDescriptor<T>): output is T;
|
|
47
|
+
/**
|
|
48
|
+
* @return the sum of the external outputs that are not 'max'
|
|
49
|
+
* @param outputs
|
|
50
|
+
*/
|
|
51
|
+
export declare function getExternalFixedAmount(outputs: WithOptDescriptor<Output | MaxOutput>[]): bigint;
|
|
13
52
|
export type PrevOutput = {
|
|
14
53
|
hash: string;
|
|
15
54
|
index: number;
|
|
@@ -21,4 +60,5 @@ export type DescriptorWalletOutput = PrevOutput & {
|
|
|
21
60
|
};
|
|
22
61
|
export type DerivedDescriptorWalletOutput = WithDescriptor<PrevOutput>;
|
|
23
62
|
export declare function toDerivedDescriptorWalletOutput(output: DescriptorWalletOutput, descriptorMap: DescriptorMap): DerivedDescriptorWalletOutput;
|
|
63
|
+
export {};
|
|
24
64
|
//# sourceMappingURL=Output.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Output.d.ts","sourceRoot":"","sources":["../../../src/descriptor/Output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,MAAM,MAAM,MAAM,GAAG;
|
|
1
|
+
{"version":3,"file":"Output.d.ts","sourceRoot":"","sources":["../../../src/descriptor/Output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,MAAM,MAAM,MAAM,CAAC,MAAM,GAAG,MAAM,IAAI;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;AAEtC,KAAK,WAAW,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AACrC,KAAK,QAAQ,GAAG;IAAE,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC;AAEjC;;GAEG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,CAEjG;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,SAAS,CASzG;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,MAAM,CAE3D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,CAAC,WAAW,GAAG,QAAQ,CAAC,EAAE,GAAG,MAAM,CAE7E;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,QAAQ,EACtE,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAClB,MAAM,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,GAC5B,CAAC,EAAE,CAaL;AAED,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI,CAAC,GAAG;IAClC,UAAU,EAAE,UAAU,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAAI,CAAC,GAAG;IACrC,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC,CAE7G;AAED,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC,CAE7F;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,iBAAiB,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,GAAG,MAAM,CAE/F;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,UAAU,GAAG;IAChD,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;AAEvE,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,sBAAsB,EAC9B,aAAa,EAAE,aAAa,GAC3B,6BAA6B,CAkB/B"}
|
|
@@ -1,7 +1,80 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isMaxOutput = isMaxOutput;
|
|
4
|
+
exports.getMaxOutput = getMaxOutput;
|
|
5
|
+
exports.getOutputSum = getOutputSum;
|
|
6
|
+
exports.getFixedOutputSum = getFixedOutputSum;
|
|
7
|
+
exports.toFixedOutputs = toFixedOutputs;
|
|
8
|
+
exports.isInternalOutput = isInternalOutput;
|
|
9
|
+
exports.isExternalOutput = isExternalOutput;
|
|
10
|
+
exports.getExternalFixedAmount = getExternalFixedAmount;
|
|
3
11
|
exports.toDerivedDescriptorWalletOutput = toDerivedDescriptorWalletOutput;
|
|
4
12
|
const address_1 = require("./address");
|
|
13
|
+
/**
|
|
14
|
+
* @return true if the output is a max output
|
|
15
|
+
*/
|
|
16
|
+
function isMaxOutput(output) {
|
|
17
|
+
return output.value === 'max';
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* @return the max output if there is one
|
|
21
|
+
* @throws if there are multiple max outputs
|
|
22
|
+
*/
|
|
23
|
+
function getMaxOutput(outputs) {
|
|
24
|
+
const max = outputs.filter((isMaxOutput));
|
|
25
|
+
if (max.length === 0) {
|
|
26
|
+
return undefined;
|
|
27
|
+
}
|
|
28
|
+
if (max.length > 1) {
|
|
29
|
+
throw new Error('Multiple max outputs');
|
|
30
|
+
}
|
|
31
|
+
return max[0];
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* @return the sum of the outputs
|
|
35
|
+
*/
|
|
36
|
+
function getOutputSum(outputs) {
|
|
37
|
+
return outputs.reduce((sum, output) => sum + output.value, 0n);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* @return the sum of the outputs that are not 'max'
|
|
41
|
+
*/
|
|
42
|
+
function getFixedOutputSum(outputs) {
|
|
43
|
+
return getOutputSum(outputs.filter((o) => !isMaxOutput(o)));
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* @param outputs
|
|
47
|
+
* @param params
|
|
48
|
+
* @return the outputs with the 'max' output replaced with the max amount
|
|
49
|
+
*/
|
|
50
|
+
function toFixedOutputs(outputs, params) {
|
|
51
|
+
// assert that there is at most one max output
|
|
52
|
+
const maxOutput = getMaxOutput(outputs);
|
|
53
|
+
return outputs.map((output) => {
|
|
54
|
+
if (isMaxOutput(output)) {
|
|
55
|
+
if (output !== maxOutput) {
|
|
56
|
+
throw new Error('illegal state');
|
|
57
|
+
}
|
|
58
|
+
return { ...output, value: params.maxAmount };
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
return output;
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
function isInternalOutput(output) {
|
|
66
|
+
return 'descriptor' in output && output.descriptor !== undefined;
|
|
67
|
+
}
|
|
68
|
+
function isExternalOutput(output) {
|
|
69
|
+
return !isInternalOutput(output);
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* @return the sum of the external outputs that are not 'max'
|
|
73
|
+
* @param outputs
|
|
74
|
+
*/
|
|
75
|
+
function getExternalFixedAmount(outputs) {
|
|
76
|
+
return getFixedOutputSum(outputs.filter(isExternalOutput));
|
|
77
|
+
}
|
|
5
78
|
function toDerivedDescriptorWalletOutput(output, descriptorMap) {
|
|
6
79
|
const descriptor = descriptorMap.get(output.descriptorName);
|
|
7
80
|
if (!descriptor) {
|
|
@@ -10,7 +83,7 @@ function toDerivedDescriptorWalletOutput(output, descriptorMap) {
|
|
|
10
83
|
const derivedDescriptor = descriptor.atDerivationIndex(output.descriptorIndex);
|
|
11
84
|
const script = (0, address_1.createScriptPubKeyFromDescriptor)(derivedDescriptor);
|
|
12
85
|
if (!script.equals(output.witnessUtxo.script)) {
|
|
13
|
-
throw new Error(`Script mismatch: descriptor ${output.descriptorName} ${descriptor.toString()} script=${script}`);
|
|
86
|
+
throw new Error(`Script mismatch: descriptor ${output.descriptorName} ${descriptor.toString()} script=${script.toString('hex')}`);
|
|
14
87
|
}
|
|
15
88
|
return {
|
|
16
89
|
hash: output.hash,
|
|
@@ -19,4 +92,4 @@ function toDerivedDescriptorWalletOutput(output, descriptorMap) {
|
|
|
19
92
|
descriptor: descriptor.atDerivationIndex(output.descriptorIndex),
|
|
20
93
|
};
|
|
21
94
|
}
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3V0cHV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Rlc2NyaXB0b3IvT3V0cHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBa0JBLGtDQUVDO0FBTUQsb0NBU0M7QUFLRCxvQ0FFQztBQUtELDhDQUVDO0FBT0Qsd0NBZ0JDO0FBVUQsNENBRUM7QUFFRCw0Q0FFQztBQU1ELHdEQUVDO0FBZUQsMEVBcUJDO0FBaklELHVDQUE2RDtBQVk3RDs7R0FFRztBQUNILFNBQWdCLFdBQVcsQ0FBNEMsTUFBYTtJQUNsRixPQUFPLE1BQU0sQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDO0FBQ2hDLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFnQixZQUFZLENBQTRDLE9BQWtCO0lBQ3hGLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQSxXQUFpQixDQUFBLENBQUMsQ0FBQztJQUM5QyxJQUFJLEdBQUcsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDckIsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUNELElBQUksR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUNuQixNQUFNLElBQUksS0FBSyxDQUFDLHNCQUFzQixDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUNELE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2hCLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLFlBQVksQ0FBQyxPQUFzQjtJQUNqRCxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztBQUNqRSxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixpQkFBaUIsQ0FBQyxPQUFtQztJQUNuRSxPQUFPLFlBQVksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFlLEVBQUUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDM0UsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFnQixjQUFjLENBQzVCLE9BQWtCLEVBQ2xCLE1BQTZCO0lBRTdCLDhDQUE4QztJQUM5QyxNQUFNLFNBQVMsR0FBRyxZQUFZLENBQU8sT0FBTyxDQUFDLENBQUM7SUFDOUMsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFLLEVBQUU7UUFDL0IsSUFBSSxXQUFXLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUN4QixJQUFJLE1BQU0sS0FBSyxTQUFTLEVBQUUsQ0FBQztnQkFDekIsTUFBTSxJQUFJLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUNuQyxDQUFDO1lBQ0QsT0FBTyxFQUFFLEdBQUcsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDaEQsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDO0lBQ0gsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBVUQsU0FBZ0IsZ0JBQWdCLENBQW1CLE1BQTZCO0lBQzlFLE9BQU8sWUFBWSxJQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsVUFBVSxLQUFLLFNBQVMsQ0FBQztBQUNuRSxDQUFDO0FBRUQsU0FBZ0IsZ0JBQWdCLENBQW1CLE1BQTZCO0lBQzlFLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUNuQyxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0Isc0JBQXNCLENBQUMsT0FBZ0Q7SUFDckYsT0FBTyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztBQUM3RCxDQUFDO0FBZUQsU0FBZ0IsK0JBQStCLENBQzdDLE1BQThCLEVBQzlCLGFBQTRCO0lBRTVCLE1BQU0sVUFBVSxHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzVELElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNoQixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixNQUFNLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBQ0QsTUFBTSxpQkFBaUIsR0FBRyxVQUFVLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQy9FLE1BQU0sTUFBTSxHQUFHLElBQUEsMENBQWdDLEVBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNuRSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDOUMsTUFBTSxJQUFJLEtBQUssQ0FDYiwrQkFBK0IsTUFBTSxDQUFDLGNBQWMsSUFBSSxVQUFVLENBQUMsUUFBUSxFQUFFLFdBQVcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUNqSCxDQUFDO0lBQ0osQ0FBQztJQUNELE9BQU87UUFDTCxJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUk7UUFDakIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLO1FBQ25CLFdBQVcsRUFBRSxNQUFNLENBQUMsV0FBVztRQUMvQixVQUFVLEVBQUUsVUFBVSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUM7S0FDakUsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXNjcmlwdG9yIH0gZnJvbSAnQGJpdGdvL3dhc20tbWluaXNjcmlwdCc7XG5cbmltcG9ydCB7IERlc2NyaXB0b3JNYXAgfSBmcm9tICcuL0Rlc2NyaXB0b3JNYXAnO1xuaW1wb3J0IHsgY3JlYXRlU2NyaXB0UHViS2V5RnJvbURlc2NyaXB0b3IgfSBmcm9tICcuL2FkZHJlc3MnO1xuXG5leHBvcnQgdHlwZSBPdXRwdXQ8VFZhbHVlID0gYmlnaW50PiA9IHtcbiAgc2NyaXB0OiBCdWZmZXI7XG4gIHZhbHVlOiBUVmFsdWU7XG59O1xuXG5leHBvcnQgdHlwZSBNYXhPdXRwdXQgPSBPdXRwdXQ8J21heCc+O1xuXG50eXBlIFZhbHVlQmlnSW50ID0geyB2YWx1ZTogYmlnaW50IH07XG50eXBlIFZhbHVlTWF4ID0geyB2YWx1ZTogJ21heCcgfTtcblxuLyoqXG4gKiBAcmV0dXJuIHRydWUgaWYgdGhlIG91dHB1dCBpcyBhIG1heCBvdXRwdXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzTWF4T3V0cHV0PEEgZXh0ZW5kcyBWYWx1ZUJpZ0ludCwgQiBleHRlbmRzIFZhbHVlTWF4PihvdXRwdXQ6IEEgfCBCKTogb3V0cHV0IGlzIEIge1xuICByZXR1cm4gb3V0cHV0LnZhbHVlID09PSAnbWF4Jztcbn1cblxuLyoqXG4gKiBAcmV0dXJuIHRoZSBtYXggb3V0cHV0IGlmIHRoZXJlIGlzIG9uZVxuICogQHRocm93cyBpZiB0aGVyZSBhcmUgbXVsdGlwbGUgbWF4IG91dHB1dHNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldE1heE91dHB1dDxBIGV4dGVuZHMgVmFsdWVCaWdJbnQsIEIgZXh0ZW5kcyBWYWx1ZU1heD4ob3V0cHV0czogKEEgfCBCKVtdKTogQiB8IHVuZGVmaW5lZCB7XG4gIGNvbnN0IG1heCA9IG91dHB1dHMuZmlsdGVyKGlzTWF4T3V0cHV0PEEsIEI+KTtcbiAgaWYgKG1heC5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGlmIChtYXgubGVuZ3RoID4gMSkge1xuICAgIHRocm93IG5ldyBFcnJvcignTXVsdGlwbGUgbWF4IG91dHB1dHMnKTtcbiAgfVxuICByZXR1cm4gbWF4WzBdO1xufVxuXG4vKipcbiAqIEByZXR1cm4gdGhlIHN1bSBvZiB0aGUgb3V0cHV0c1xuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0T3V0cHV0U3VtKG91dHB1dHM6IFZhbHVlQmlnSW50W10pOiBiaWdpbnQge1xuICByZXR1cm4gb3V0cHV0cy5yZWR1Y2UoKHN1bSwgb3V0cHV0KSA9PiBzdW0gKyBvdXRwdXQudmFsdWUsIDBuKTtcbn1cblxuLyoqXG4gKiBAcmV0dXJuIHRoZSBzdW0gb2YgdGhlIG91dHB1dHMgdGhhdCBhcmUgbm90ICdtYXgnXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRGaXhlZE91dHB1dFN1bShvdXRwdXRzOiAoVmFsdWVCaWdJbnQgfCBWYWx1ZU1heClbXSk6IGJpZ2ludCB7XG4gIHJldHVybiBnZXRPdXRwdXRTdW0ob3V0cHV0cy5maWx0ZXIoKG8pOiBvIGlzIE91dHB1dCA9PiAhaXNNYXhPdXRwdXQobykpKTtcbn1cblxuLyoqXG4gKiBAcGFyYW0gb3V0cHV0c1xuICogQHBhcmFtIHBhcmFtc1xuICogQHJldHVybiB0aGUgb3V0cHV0cyB3aXRoIHRoZSAnbWF4JyBvdXRwdXQgcmVwbGFjZWQgd2l0aCB0aGUgbWF4IGFtb3VudFxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9GaXhlZE91dHB1dHM8QSBleHRlbmRzIFZhbHVlQmlnSW50LCBCIGV4dGVuZHMgVmFsdWVNYXg+KFxuICBvdXRwdXRzOiAoQSB8IEIpW10sXG4gIHBhcmFtczogeyBtYXhBbW91bnQ6IGJpZ2ludCB9XG4pOiBBW10ge1xuICAvLyBhc3NlcnQgdGhhdCB0aGVyZSBpcyBhdCBtb3N0IG9uZSBtYXggb3V0cHV0XG4gIGNvbnN0IG1heE91dHB1dCA9IGdldE1heE91dHB1dDxBLCBCPihvdXRwdXRzKTtcbiAgcmV0dXJuIG91dHB1dHMubWFwKChvdXRwdXQpOiBBID0+IHtcbiAgICBpZiAoaXNNYXhPdXRwdXQob3V0cHV0KSkge1xuICAgICAgaWYgKG91dHB1dCAhPT0gbWF4T3V0cHV0KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignaWxsZWdhbCBzdGF0ZScpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHsgLi4ub3V0cHV0LCB2YWx1ZTogcGFyYW1zLm1heEFtb3VudCB9O1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gb3V0cHV0O1xuICAgIH1cbiAgfSk7XG59XG5cbmV4cG9ydCB0eXBlIFdpdGhEZXNjcmlwdG9yPFQ+ID0gVCAmIHtcbiAgZGVzY3JpcHRvcjogRGVzY3JpcHRvcjtcbn07XG5cbmV4cG9ydCB0eXBlIFdpdGhPcHREZXNjcmlwdG9yPFQ+ID0gVCAmIHtcbiAgZGVzY3JpcHRvcj86IERlc2NyaXB0b3I7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gaXNJbnRlcm5hbE91dHB1dDxUIGV4dGVuZHMgb2JqZWN0PihvdXRwdXQ6IFQgfCBXaXRoRGVzY3JpcHRvcjxUPik6IG91dHB1dCBpcyBXaXRoRGVzY3JpcHRvcjxUPiB7XG4gIHJldHVybiAnZGVzY3JpcHRvcicgaW4gb3V0cHV0ICYmIG91dHB1dC5kZXNjcmlwdG9yICE9PSB1bmRlZmluZWQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0V4dGVybmFsT3V0cHV0PFQgZXh0ZW5kcyBvYmplY3Q+KG91dHB1dDogVCB8IFdpdGhEZXNjcmlwdG9yPFQ+KTogb3V0cHV0IGlzIFQge1xuICByZXR1cm4gIWlzSW50ZXJuYWxPdXRwdXQob3V0cHV0KTtcbn1cblxuLyoqXG4gKiBAcmV0dXJuIHRoZSBzdW0gb2YgdGhlIGV4dGVybmFsIG91dHB1dHMgdGhhdCBhcmUgbm90ICdtYXgnXG4gKiBAcGFyYW0gb3V0cHV0c1xuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RXh0ZXJuYWxGaXhlZEFtb3VudChvdXRwdXRzOiBXaXRoT3B0RGVzY3JpcHRvcjxPdXRwdXQgfCBNYXhPdXRwdXQ+W10pOiBiaWdpbnQge1xuICByZXR1cm4gZ2V0Rml4ZWRPdXRwdXRTdW0ob3V0cHV0cy5maWx0ZXIoaXNFeHRlcm5hbE91dHB1dCkpO1xufVxuXG5leHBvcnQgdHlwZSBQcmV2T3V0cHV0ID0ge1xuICBoYXNoOiBzdHJpbmc7XG4gIGluZGV4OiBudW1iZXI7XG4gIHdpdG5lc3NVdHhvOiBPdXRwdXQ7XG59O1xuXG5leHBvcnQgdHlwZSBEZXNjcmlwdG9yV2FsbGV0T3V0cHV0ID0gUHJldk91dHB1dCAmIHtcbiAgZGVzY3JpcHRvck5hbWU6IHN0cmluZztcbiAgZGVzY3JpcHRvckluZGV4OiBudW1iZXI7XG59O1xuXG5leHBvcnQgdHlwZSBEZXJpdmVkRGVzY3JpcHRvcldhbGxldE91dHB1dCA9IFdpdGhEZXNjcmlwdG9yPFByZXZPdXRwdXQ+O1xuXG5leHBvcnQgZnVuY3Rpb24gdG9EZXJpdmVkRGVzY3JpcHRvcldhbGxldE91dHB1dChcbiAgb3V0cHV0OiBEZXNjcmlwdG9yV2FsbGV0T3V0cHV0LFxuICBkZXNjcmlwdG9yTWFwOiBEZXNjcmlwdG9yTWFwXG4pOiBEZXJpdmVkRGVzY3JpcHRvcldhbGxldE91dHB1dCB7XG4gIGNvbnN0IGRlc2NyaXB0b3IgPSBkZXNjcmlwdG9yTWFwLmdldChvdXRwdXQuZGVzY3JpcHRvck5hbWUpO1xuICBpZiAoIWRlc2NyaXB0b3IpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYERlc2NyaXB0b3Igbm90IGZvdW5kOiAke291dHB1dC5kZXNjcmlwdG9yTmFtZX1gKTtcbiAgfVxuICBjb25zdCBkZXJpdmVkRGVzY3JpcHRvciA9IGRlc2NyaXB0b3IuYXREZXJpdmF0aW9uSW5kZXgob3V0cHV0LmRlc2NyaXB0b3JJbmRleCk7XG4gIGNvbnN0IHNjcmlwdCA9IGNyZWF0ZVNjcmlwdFB1YktleUZyb21EZXNjcmlwdG9yKGRlcml2ZWREZXNjcmlwdG9yKTtcbiAgaWYgKCFzY3JpcHQuZXF1YWxzKG91dHB1dC53aXRuZXNzVXR4by5zY3JpcHQpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgYFNjcmlwdCBtaXNtYXRjaDogZGVzY3JpcHRvciAke291dHB1dC5kZXNjcmlwdG9yTmFtZX0gJHtkZXNjcmlwdG9yLnRvU3RyaW5nKCl9IHNjcmlwdD0ke3NjcmlwdC50b1N0cmluZygnaGV4Jyl9YFxuICAgICk7XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBoYXNoOiBvdXRwdXQuaGFzaCxcbiAgICBpbmRleDogb3V0cHV0LmluZGV4LFxuICAgIHdpdG5lc3NVdHhvOiBvdXRwdXQud2l0bmVzc1V0eG8sXG4gICAgZGVzY3JpcHRvcjogZGVzY3JpcHRvci5hdERlcml2YXRpb25JbmRleChvdXRwdXQuZGVzY3JpcHRvckluZGV4KSxcbiAgfTtcbn1cbiJdfQ==
|
|
@@ -3,9 +3,8 @@ import { DescriptorMap, PsbtParams } from '../../descriptor';
|
|
|
3
3
|
import { Triple, KeyTriple } from '../key.utils';
|
|
4
4
|
export declare function getDefaultXPubs(seed?: string): Triple<string>;
|
|
5
5
|
export declare function getUnspendableKey(): string;
|
|
6
|
-
export type DescriptorTemplate = 'Wsh2Of3' | 'Tr2Of3-NoKeyPath' | 'Wsh2Of2' | '
|
|
6
|
+
export type DescriptorTemplate = 'Wsh2Of3' | 'Tr1Of3-NoKeyPath-Tree' | 'Tr2Of3-NoKeyPath' | 'Wsh2Of2' | 'Wsh2Of3CltvDrop';
|
|
7
7
|
export declare function getPsbtParams(t: DescriptorTemplate): Partial<PsbtParams>;
|
|
8
|
-
export declare function getDescriptorString(template: DescriptorTemplate, keys?: KeyTriple | string[], path?: string): string;
|
|
9
8
|
export declare function getDescriptor(template: DescriptorTemplate, keys?: KeyTriple | string[], path?: string): Descriptor;
|
|
10
9
|
export declare function getDescriptorMap(template: DescriptorTemplate, keys?: KeyTriple | string[]): DescriptorMap;
|
|
11
10
|
//# sourceMappingURL=descriptors.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"descriptors.d.ts","sourceRoot":"","sources":["../../../../src/testutil/descriptor/descriptors.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"descriptors.d.ts","sourceRoot":"","sources":["../../../../src/testutil/descriptor/descriptors.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAO,MAAM,wBAAwB,CAAC;AAGzD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAgB,MAAM,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE/D,wBAAgB,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAE7D;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAsB1C;AAMD,MAAM,MAAM,kBAAkB,GAC1B,SAAS,GACT,uBAAuB,GACvB,kBAAkB,GAClB,SAAS,GAMT,iBAAiB,CAAC;AAoBtB,wBAAgB,aAAa,CAAC,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,CAAC,CAUxE;AAuCD,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,kBAAkB,EAC5B,IAAI,GAAE,SAAS,GAAG,MAAM,EAAsB,EAC9C,IAAI,SAAQ,GACX,UAAU,CAEZ;AAED,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,kBAAkB,EAC5B,IAAI,GAAE,SAAS,GAAG,MAAM,EAAsB,GAC7C,aAAa,CAKf"}
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.getDefaultXPubs = getDefaultXPubs;
|
|
4
7
|
exports.getUnspendableKey = getUnspendableKey;
|
|
5
8
|
exports.getPsbtParams = getPsbtParams;
|
|
6
|
-
exports.getDescriptorString = getDescriptorString;
|
|
7
9
|
exports.getDescriptor = getDescriptor;
|
|
8
10
|
exports.getDescriptorMap = getDescriptorMap;
|
|
11
|
+
const assert_1 = __importDefault(require("assert"));
|
|
9
12
|
const wasm_miniscript_1 = require("@bitgo/wasm-miniscript");
|
|
10
13
|
const key_utils_1 = require("../key.utils");
|
|
11
14
|
function getDefaultXPubs(seed) {
|
|
@@ -37,13 +40,13 @@ function getUnspendableKey() {
|
|
|
37
40
|
function toDescriptorMap(v) {
|
|
38
41
|
return new Map(Object.entries(v).map(([k, v]) => [k, wasm_miniscript_1.Descriptor.fromString(v, 'derivable')]));
|
|
39
42
|
}
|
|
40
|
-
function toXPub(k) {
|
|
43
|
+
function toXPub(k, path) {
|
|
41
44
|
if (typeof k === 'string') {
|
|
42
|
-
return k;
|
|
45
|
+
return k + '/' + path;
|
|
43
46
|
}
|
|
44
|
-
return k.neutered().toBase58();
|
|
47
|
+
return k.neutered().toBase58() + '/' + path;
|
|
45
48
|
}
|
|
46
|
-
function
|
|
49
|
+
function multiArgs(m, n, keys, path) {
|
|
47
50
|
if (n < m) {
|
|
48
51
|
throw new Error(`Cannot create ${m} of ${n} multisig`);
|
|
49
52
|
}
|
|
@@ -51,40 +54,53 @@ function multi(prefix, m, n, keys, path) {
|
|
|
51
54
|
throw new Error(`Not enough keys for ${m} of ${n} multisig: keys.length=${keys.length}`);
|
|
52
55
|
}
|
|
53
56
|
keys = keys.slice(0, n);
|
|
54
|
-
return
|
|
55
|
-
}
|
|
56
|
-
function multiWsh(m, n, keys, path) {
|
|
57
|
-
return multi('multi', m, n, keys, path);
|
|
58
|
-
}
|
|
59
|
-
function multiTap(m, n, keys, path) {
|
|
60
|
-
return multi('multi_a', m, n, keys, path);
|
|
57
|
+
return [m, ...keys.map((k) => toXPub(k, path))];
|
|
61
58
|
}
|
|
62
59
|
function getPsbtParams(t) {
|
|
63
60
|
switch (t) {
|
|
64
61
|
case 'Wsh2Of3':
|
|
65
62
|
case 'Wsh2Of2':
|
|
63
|
+
case 'Tr1Of3-NoKeyPath-Tree':
|
|
66
64
|
case 'Tr2Of3-NoKeyPath':
|
|
67
65
|
return {};
|
|
68
|
-
case '
|
|
66
|
+
case 'Wsh2Of3CltvDrop':
|
|
69
67
|
return { locktime: 1 };
|
|
70
68
|
}
|
|
71
69
|
}
|
|
72
|
-
function
|
|
70
|
+
function getDescriptorNode(template, keys = getDefaultXPubs(), path = '0/*') {
|
|
73
71
|
switch (template) {
|
|
74
72
|
case 'Wsh2Of3':
|
|
75
|
-
return
|
|
76
|
-
|
|
73
|
+
return {
|
|
74
|
+
wsh: { multi: multiArgs(2, 3, keys, path) },
|
|
75
|
+
};
|
|
76
|
+
case 'Wsh2Of3CltvDrop':
|
|
77
77
|
const { locktime } = getPsbtParams(template);
|
|
78
|
-
|
|
78
|
+
(0, assert_1.default)(locktime);
|
|
79
|
+
return {
|
|
80
|
+
wsh: {
|
|
81
|
+
and_v: [{ 'r:after': locktime }, { multi: multiArgs(2, 3, keys, path) }],
|
|
82
|
+
},
|
|
83
|
+
};
|
|
79
84
|
case 'Wsh2Of2':
|
|
80
|
-
return
|
|
85
|
+
return {
|
|
86
|
+
wsh: { multi: multiArgs(2, 2, keys, path) },
|
|
87
|
+
};
|
|
81
88
|
case 'Tr2Of3-NoKeyPath':
|
|
82
|
-
return
|
|
89
|
+
return {
|
|
90
|
+
tr: [getUnspendableKey(), { multi_a: multiArgs(2, 3, keys, path) }],
|
|
91
|
+
};
|
|
92
|
+
case 'Tr1Of3-NoKeyPath-Tree':
|
|
93
|
+
return {
|
|
94
|
+
tr: [
|
|
95
|
+
getUnspendableKey(),
|
|
96
|
+
[{ pk: toXPub(keys[0], path) }, [{ pk: toXPub(keys[1], path) }, { pk: toXPub(keys[2], path) }]],
|
|
97
|
+
],
|
|
98
|
+
};
|
|
83
99
|
}
|
|
84
100
|
throw new Error(`Unknown descriptor template: ${template}`);
|
|
85
101
|
}
|
|
86
102
|
function getDescriptor(template, keys = getDefaultXPubs(), path = '0/*') {
|
|
87
|
-
return wasm_miniscript_1.Descriptor.fromString(
|
|
103
|
+
return wasm_miniscript_1.Descriptor.fromString(wasm_miniscript_1.ast.formatNode(getDescriptorNode(template, keys, path)), 'derivable');
|
|
88
104
|
}
|
|
89
105
|
function getDescriptorMap(template, keys = getDefaultXPubs()) {
|
|
90
106
|
return toDescriptorMap({
|
|
@@ -92,4 +108,4 @@ function getDescriptorMap(template, keys = getDefaultXPubs()) {
|
|
|
92
108
|
internal: getDescriptor(template, keys, '1/*').toString(),
|
|
93
109
|
});
|
|
94
110
|
}
|
|
95
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpcHRvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdGVzdHV0aWwvZGVzY3JpcHRvci9kZXNjcmlwdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQU1BLDBDQUVDO0FBRUQsOENBc0JDO0FBaURELHNDQVNDO0FBRUQsa0RBaUJDO0FBRUQsc0NBTUM7QUFFRCw0Q0FRQztBQS9IRCw0REFBb0Q7QUFJcEQsNENBQStEO0FBRS9ELFNBQWdCLGVBQWUsQ0FBQyxJQUFhO0lBQzNDLE9BQU8sSUFBQSx3QkFBWSxFQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFtQixDQUFDO0FBQ2xGLENBQUM7QUFFRCxTQUFnQixpQkFBaUI7SUFDL0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7TUFtQkU7SUFDRixPQUFPLGtFQUFrRSxDQUFDO0FBQzVFLENBQUM7QUFFRCxTQUFTLGVBQWUsQ0FBQyxDQUF5QjtJQUNoRCxPQUFPLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLDRCQUFVLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNoRyxDQUFDO0FBYUQsU0FBUyxNQUFNLENBQUMsQ0FBMEI7SUFDeEMsSUFBSSxPQUFPLENBQUMsS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUMxQixPQUFPLENBQUMsQ0FBQztJQUNYLENBQUM7SUFDRCxPQUFPLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztBQUNqQyxDQUFDO0FBRUQsU0FBUyxLQUFLLENBQ1osTUFBMkIsRUFDM0Is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Q0FBQztBQUN2RixDQUFDO0FBRUQsU0FBZ0IsZ0JBQWdCLENBQzlCLFFBQTRCLEVBQzVCLE9BQTZCLGVBQWUsRUFBRTtJQUU5QyxPQUFPLGVBQWUsQ0FBQztRQUNyQixRQUFRLEVBQUUsYUFBYSxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsUUFBUSxFQUFFO1FBQ3pELFFBQVEsRUFBRSxhQUFhLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQyxRQUFRLEVBQUU7S0FDMUQsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlc2NyaXB0b3IgfSBmcm9tICdAYml0Z28vd2FzbS1taW5pc2NyaXB0JztcbmltcG9ydCB7IEJJUDMySW50ZXJmYWNlIH0gZnJvbSAnQGJpdGdvLWJldGEvdXR4by1saWInO1xuXG5pbXBvcnQgeyBEZXNjcmlwdG9yTWFwLCBQc2J0UGFyYW1zIH0gZnJvbSAnLi4vLi4vZGVzY3JpcHRvcic7XG5pbXBvcnQgeyBnZXRLZXlUcmlwbGUsIFRyaXBsZSwgS2V5VHJpcGxlIH0gZnJvbSAnLi4va2V5LnV0aWxzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldERlZmF1bHRYUHVicyhzZWVkPzogc3RyaW5nKTogVHJpcGxlPHN0cmluZz4ge1xuICByZXR1cm4gZ2V0S2V5VHJpcGxlKHNlZWQpLm1hcCgoaykgPT4gay5uZXV0ZXJlZCgpLnRvQmFzZTU4KCkpIGFzIFRyaXBsZTxzdHJpbmc+O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VW5zcGVuZGFibGVLZXkoKTogc3RyaW5nIHtcbiAgLypcbiAgaHR0cHM6Ly9naXRodWIuY29tL2JpdGNvaW4vYmlwcy9ibG9iL21hc3Rlci9iaXAtMDM0MS5tZWRpYXdpa2kjY29uc3RydWN0aW5nLWFuZC1zcGVuZGluZy10YXByb290LW91dHB1dHNcblxuICBgYGBcbiAgSWYgb25lIG9yIG1vcmUgb2YgdGhlIHNwZW5kaW5nIGNvbmRpdGlvbnMgY29uc2lzdCBvZiBqdXN0IGEgc2luZ2xlIGtleSAoYWZ0ZXIgYWdncmVnYXRpb24pLCB0aGUgbW9zdCBsaWtlbHkgb25lIHNob3VsZFxuICBiZSBtYWRlIHRoZSBpbnRlcm5hbCBrZXkuIElmIG5vIHN1Y2ggY29uZGl0aW9uIGV4aXN0cywgaXQgbWF5IGJlIHdvcnRod2hpbGUgYWRkaW5nIG9uZSB0aGF0IGNvbnNpc3RzIG9mIGFuIGFnZ3JlZ2F0aW9uXG4gIG9mIGFsbCBrZXlzIHBhcnRpY2lwYXRpbmcgaW4gYWxsIHNjcmlwdHMgY29tYmluZWQ7IGVmZmVjdGl2ZWx5IGFkZGluZyBhbiBcImV2ZXJ5b25lIGFncmVlc1wiIGJyYW5jaC4gSWYgdGhhdCBpc1xuICBpbmFjY2VwdGFibGUsIHBpY2sgYXMgaW50ZXJuYWwga2V5IGEgXCJOb3RoaW5nIFVwIE15IFNsZWV2ZVwiIChOVU1TKSBwb2ludCwgaS5lLiwgYSBwb2ludCB3aXRoIHVua25vd24gZGlzY3JldGVcbiAgbG9nYXJpdGhtLlxuXG4gIE9uZSBleGFtcGxlIG9mIHN1Y2ggYSBwb2ludCBpcyBIID0gbGlmdF94KDB4NTA5MjliNzRjMWEwNDk1NGI3OGI0YjYwMzVlOTdhNWUwNzhhNWEwZjI4ZWM5NmQ1NDdiZmVlOWFjZTgwM2FjMCkgd2hpY2ggaXNcbiAgY29uc3RydWN0ZWQgYnkgdGFraW5nIHRoZSBoYXNoIG9mIHRoZSBzdGFuZGFyZCB1bmNvbXByZXNzZWQgZW5jb2Rpbmcgb2YgdGhlIHNlY3AyNTZrMSBiYXNlIHBvaW50IEcgYXMgWCBjb29yZGluYXRlLlxuICBJbiBvcmRlciB0byBhdm9pZCBsZWFraW5nIHRoZSBpbmZvcm1hdGlvbiB0aGF0IGtleSBwYXRoIHNwZW5kaW5nIGlzIG5vdCBwb3NzaWJsZSBpdCBpcyByZWNvbW1lbmRlZCB0byBwaWNrIGEgZnJlc2hcbiAgaW50ZWdlciByIGluIHRoZSByYW5nZSAwLi4ubi0xIHVuaWZvcm1seSBhdCByYW5kb20gYW5kIHVzZSBIICsgckcgYXMgaW50ZXJuYWwga2V5LiBJdCBpcyBwb3NzaWJsZSB0byBwcm92ZSB0aGF0IHRoaXNcbiAgaW50ZXJuYWwga2V5IGRvZXMgbm90IGhhdmUgYSBrbm93biBkaXNjcmV0ZSBsb2dhcml0aG0gd2l0aCByZXNwZWN0IHRvIEcgYnkgcmV2ZWFsaW5nIHIgdG8gYSB2ZXJpZmllciB3aG8gY2FuIHRoZW5cbiAgcmVjb25zdHJ1Y3QgaG93IHRoZSBpbnRlcm5hbCBrZXkgd2FzIGNyZWF0ZWQuXG4gIGBgYFxuXG4gIFdlIGNvdWxkIGRvIHRoZSByYW5kb20gaW50ZWdlciB0cmljayBoZXJlLCBidXQgZm9yIGludGVybmFsIHRlc3RpbmcgaXQgaXMgc3VmZmljaWVudCB0byB1c2UgdGhlIGZpeGVkIHBvaW50LlxuICAqL1xuICByZXR1cm4gJzUwOTI5Yjc0YzFhMDQ5NTRiNzhiNGI2MDM1ZTk3YTVlMDc4YTVhMGYyOGVjOTZkNTQ3YmZlZTlhY2U4MDNhYzAnO1xufVxuXG5mdW5jdGlvbiB0b0Rlc2NyaXB0b3JNYXAodjogUmVjb3JkPHN0cmluZywgc3RyaW5nPik6IERlc2NyaXB0b3JNYXAge1xuICByZXR1cm4gbmV3IE1hcChPYmplY3QuZW50cmllcyh2KS5tYXAoKFtrLCB2XSkgPT4gW2ssIERlc2NyaXB0b3IuZnJvbVN0cmluZyh2LCAnZGVyaXZhYmxlJyldKSk7XG59XG5cbmV4cG9ydCB0eXBlIERlc2NyaXB0b3JUZW1wbGF0ZSA9XG4gIHwgJ1dzaDJPZjMnXG4gIHwgJ1RyMk9mMy1Ob0tleVBhdGgnXG4gIHwgJ1dzaDJPZjInXG4gIC8qXG4gICAqIFRoaXMgaXMgYSB3cmFwcGVkIHNlZ3dpdCAyb2YzIG11bHRpc2lnIHRoYXQgYWxzbyB1c2VzIGEgcmVsYXRpdmUgbG9ja3RpbWUgd2l0aFxuICAgKiBhbiBPUF9EUk9QIChyZXF1aXJpbmcgYSBtaW5pc2NyaXB0IGV4dGVuc2lvbikuXG4gICAqIEl0IGlzIGJhc2ljYWxseSB3aGF0IGlzIHVzZWQgaW4gQ29yZURhbyBzdGFraW5nIHRyYW5zYWN0aW9ucy5cbiAgICovXG4gIHwgJ1NoV3NoMk9mM0NsdHZEcm9wJztcblxuZnVuY3Rpb24gdG9YUHViKGs6IEJJUDMySW50ZXJmYWNlIHwgc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKHR5cGVvZiBrID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiBrO1xuICB9XG4gIHJldHVybiBrLm5ldXRlcmVkKCkudG9CYXNlNTgoKTtcbn1cblxuZnVuY3Rpb24gbXVsdGkoXG4gIHByZWZpeDogJ211bHRpJyB8ICdtdWx0aV9hJyxcbiAgbTogbnVtYmVyLFxuICBuOiBudW1iZXIsXG4gIGtleXM6IEJJUDMySW50ZXJmYWNlW10gfCBzdHJpbmdbXSxcbiAgcGF0aDogc3RyaW5nXG4pOiBzdHJpbmcge1xuICBpZiAobiA8IG0pIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCBjcmVhdGUgJHttfSBvZiAke259IG11bHRpc2lnYCk7XG4gIH1cbiAgaWYgKGtleXMubGVuZ3RoIDwgbikge1xuICAgIHRocm93IG5ldyBFcnJvcihgTm90IGVub3VnaCBrZXlzIGZvciAke219IG9mICR7bn0gbXVsdGlzaWc6IGtleXMubGVuZ3RoPSR7a2V5cy5sZW5ndGh9YCk7XG4gIH1cbiAga2V5cyA9IGtleXMuc2xpY2UoMCwgbik7XG4gIHJldHVybiBwcmVmaXggKyBgKCR7bX0sJHtrZXlzLm1hcCgoaykgPT4gYCR7dG9YUHViKGspfS8ke3BhdGh9YCkuam9pbignLCcpfSlgO1xufVxuXG5mdW5jdGlvbiBtdWx0aVdzaChtOiBudW1iZXIsIG46IG51bWJlciwga2V5czogQklQMzJJbnRlcmZhY2VbXSB8IHN0cmluZ1tdLCBwYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gbXVsdGkoJ211bHRpJywgbSwgbiwga2V5cywgcGF0aCk7XG59XG5cbmZ1bmN0aW9uIG11bHRpVGFwKG06IG51bWJlciwgbjogbnVtYmVyLCBrZXlzOiBCSVAzMkludGVyZmFjZVtdIHwgc3RyaW5nW10sIHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBtdWx0aSgnbXVsdGlfYScsIG0sIG4sIGtleXMsIHBhdGgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0UHNidFBhcmFtcyh0OiBEZXNjcmlwdG9yVGVtcGxhdGUpOiBQYXJ0aWFsPFBzYnRQYXJhbXM+IHtcbiAgc3dpdGNoICh0KSB7XG4gICAgY2FzZSAnV3NoMk9mMyc6XG4gICAgY2FzZSAnV3NoMk9mMic6XG4gICAgY2FzZSAnVHIyT2YzLU5vS2V5UGF0aCc6XG4gICAgICByZXR1cm4ge307XG4gICAgY2FzZSAnU2hXc2gyT2YzQ2x0dkRyb3AnOlxuICAgICAgcmV0dXJuIHsgbG9ja3RpbWU6IDEgfTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGVzY3JpcHRvclN0cmluZyhcbiAgdGVtcGxhdGU6IERlc2NyaXB0b3JUZW1wbGF0ZSxcbiAga2V5czogS2V5VHJpcGxlIHwgc3RyaW5nW10gPSBnZXREZWZhdWx0WFB1YnMoKSxcbiAgcGF0aCA9ICcwLyonXG4pOiBzdHJpbmcge1xuICBzd2l0Y2ggKHRlbXBsYXRlKSB7XG4gICAgY2FzZSAnV3NoMk9mMyc6XG4gICAgICByZXR1cm4gYHdzaCgke211bHRpV3NoKDIsIDMsIGtleXMsIHBhdGgpfSlgO1xuICAgIGNhc2UgJ1NoV3NoMk9mM0NsdHZEcm9wJzpcbiAgICAgIGNvbnN0IHsgbG9ja3RpbWUgfSA9IGdldFBzYnRQYXJhbXModGVtcGxhdGUpO1xuICAgICAgcmV0dXJuIGBzaCh3c2goYW5kX3YocjphZnRlcigke2xvY2t0aW1lfSksJHttdWx0aVdzaCgyLCAzLCBrZXlzLCBwYXRoKX0pKSlgO1xuICAgIGNhc2UgJ1dzaDJPZjInOlxuICAgICAgcmV0dXJuIGB3c2goJHttdWx0aVdzaCgyLCAyLCBrZXlzLCBwYXRoKX0pYDtcbiAgICBjYXNlICdUcjJPZjMtTm9LZXlQYXRoJzpcbiAgICAgIHJldHVybiBgdHIoJHtnZXRVbnNwZW5kYWJsZUtleSgpfSwke211bHRpVGFwKDIsIDMsIGtleXMsIHBhdGgpfSlgO1xuICB9XG4gIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBkZXNjcmlwdG9yIHRlbXBsYXRlOiAke3RlbXBsYXRlfWApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGVzY3JpcHRvcihcbiAgdGVtcGxhdGU6IERlc2NyaXB0b3JUZW1wbGF0ZSxcbiAga2V5czogS2V5VHJpcGxlIHwgc3RyaW5nW10gPSBnZXREZWZhdWx0WFB1YnMoKSxcbiAgcGF0aCA9ICcwLyonXG4pOiBEZXNjcmlwdG9yIHtcbiAgcmV0dXJuIERlc2NyaXB0b3IuZnJvbVN0cmluZyhnZXREZXNjcmlwdG9yU3RyaW5nKHRlbXBsYXRlLCBrZXlzLCBwYXRoKSwgJ2Rlcml2YWJsZScpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGVzY3JpcHRvck1hcChcbiAgdGVtcGxhdGU6IERlc2NyaXB0b3JUZW1wbGF0ZSxcbiAga2V5czogS2V5VHJpcGxlIHwgc3RyaW5nW10gPSBnZXREZWZhdWx0WFB1YnMoKVxuKTogRGVzY3JpcHRvck1hcCB7XG4gIHJldHVybiB0b0Rlc2NyaXB0b3JNYXAoe1xuICAgIGV4dGVybmFsOiBnZXREZXNjcmlwdG9yKHRlbXBsYXRlLCBrZXlzLCAnMC8qJykudG9TdHJpbmcoKSxcbiAgICBpbnRlcm5hbDogZ2V0RGVzY3JpcHRvcih0ZW1wbGF0ZSwga2V5cywgJzEvKicpLnRvU3RyaW5nKCksXG4gIH0pO1xufVxuIl19
|
|
111
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpcHRvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdGVzdHV0aWwvZGVzY3JpcHRvci9kZXNjcmlwdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQVFBLDBDQUVDO0FBRUQsOENBc0JDO0FBb0NELHNDQVVDO0FBdUNELHNDQU1DO0FBRUQsNENBUUM7QUF2SUQsb0RBQTRCO0FBRTVCLDREQUF5RDtBQUl6RCw0Q0FBK0Q7QUFFL0QsU0FBZ0IsZUFBZSxDQUFDLElBQWE7SUFDM0MsT0FBTyxJQUFBLHdCQUFZLEVBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQW1CLENBQUM7QUFDbEYsQ0FBQztBQUVELFNBQWdCLGlCQUFpQjtJQUMvQjs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQW1CRTtJQUNGLE9BQU8sa0VBQWtFLENBQUM7QUFDNUUsQ0FBQztBQUVELFNBQVMsZUFBZSxDQUFDLENBQXlCO0lBQ2hELE9BQU8sSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsNEJBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2hHLENBQUM7QUFjRCxTQUFTLE1BQU0sQ0FBQyxDQUEwQixFQUFFLElBQVk7SUFDdEQsSUFBSSxPQUFPLENBQUMsS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUMxQixPQUFPLENBQUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDO0lBQ3hCLENBQUM7SUFDRCxPQUFPLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLEVBQUUsR0FBRyxHQUFHLEdB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QUksQ0FBQyxFQUFFLENBQUMsQ0FBQztpQkFDaEc7YUFDRixDQUFDO0lBQ04sQ0FBQztJQUNELE1BQU0sSUFBSSxLQUFLLENBQUMsZ0NBQWdDLFFBQVEsRUFBRSxDQUFDLENBQUM7QUFDOUQsQ0FBQztBQUVELFNBQWdCLGFBQWEsQ0FDM0IsUUFBNEIsRUFDNUIsT0FBNkIsZUFBZSxFQUFFLEVBQzlDLElBQUksR0FBRyxLQUFLO0lBRVosT0FBTyw0QkFBVSxDQUFDLFVBQVUsQ0FBQyxxQkFBRyxDQUFDLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLEVBQUUsV0FBVyxDQUFDLENBQUM7QUFDckcsQ0FBQztBQUVELFNBQWdCLGdCQUFnQixDQUM5QixRQUE0QixFQUM1QixPQUE2QixlQUFlLEVBQUU7SUFFOUMsT0FBTyxlQUFlLENBQUM7UUFDckIsUUFBUSxFQUFFLGFBQWEsQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDLFFBQVEsRUFBRTtRQUN6RCxRQUFRLEVBQUUsYUFBYSxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsUUFBUSxFQUFFO0tBQzFELENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5cbmltcG9ydCB7IERlc2NyaXB0b3IsIGFzdCB9IGZyb20gJ0BiaXRnby93YXNtLW1pbmlzY3JpcHQnO1xuaW1wb3J0IHsgQklQMzJJbnRlcmZhY2UgfSBmcm9tICdAYml0Z28tYmV0YS91dHhvLWxpYic7XG5cbmltcG9ydCB7IERlc2NyaXB0b3JNYXAsIFBzYnRQYXJhbXMgfSBmcm9tICcuLi8uLi9kZXNjcmlwdG9yJztcbmltcG9ydCB7IGdldEtleVRyaXBsZSwgVHJpcGxlLCBLZXlUcmlwbGUgfSBmcm9tICcuLi9rZXkudXRpbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGVmYXVsdFhQdWJzKHNlZWQ/OiBzdHJpbmcpOiBUcmlwbGU8c3RyaW5nPiB7XG4gIHJldHVybiBnZXRLZXlUcmlwbGUoc2VlZCkubWFwKChrKSA9PiBrLm5ldXRlcmVkKCkudG9CYXNlNTgoKSkgYXMgVHJpcGxlPHN0cmluZz47XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRVbnNwZW5kYWJsZUtleSgpOiBzdHJpbmcge1xuICAvKlxuICBodHRwczovL2dpdGh1Yi5jb20vYml0Y29pbi9iaXBzL2Jsb2IvbWFzdGVyL2JpcC0wMzQxLm1lZGlhd2lraSNjb25zdHJ1Y3RpbmctYW5kLXNwZW5kaW5nLXRhcHJvb3Qtb3V0cHV0c1xuXG4gIGBgYFxuICBJZiBvbmUgb3IgbW9yZSBvZiB0aGUgc3BlbmRpbmcgY29uZGl0aW9ucyBjb25zaXN0IG9mIGp1c3QgYSBzaW5nbGUga2V5IChhZnRlciBhZ2dyZWdhdGlvbiksIHRoZSBtb3N0IGxpa2VseSBvbmUgc2hvdWxkXG4gIGJlIG1hZGUgdGhlIGludGVybmFsIGtleS4gSWYgbm8gc3VjaCBjb25kaXRpb24gZXhpc3RzLCBpdCBtYXkgYmUgd29ydGh3aGlsZSBhZGRpbmcgb25lIHRoYXQgY29uc2lzdHMgb2YgYW4gYWdncmVnYXRpb25cbiAgb2YgYWxsIGtleXMgcGFydGljaXBhdGluZyBpbiBhbGwgc2NyaXB0cyBjb21iaW5lZDsgZWZmZWN0aXZlbHkgYWRkaW5nIGFuIFwiZXZlcnlvbmUgYWdyZWVzXCIgYnJhbmNoLiBJZiB0aGF0IGlzXG4gIGluYWNjZXB0YWJsZSwgcGljayBhcyBpbnRlcm5hbCBrZXkgYSBcIk5vdGhpbmcgVXAgTXkgU2xlZXZlXCIgKE5VTVMpIHBvaW50LCBpLmUuLCBhIHBvaW50IHdpdGggdW5rbm93biBkaXNjcmV0ZVxuICBsb2dhcml0aG0uXG5cbiAgT25lIGV4YW1wbGUgb2Ygc3VjaCBhIHBvaW50IGlzIEggPSBsaWZ0X3goMHg1MDkyOWI3NGMxYTA0OTU0Yjc4YjRiNjAzNWU5N2E1ZTA3OGE1YTBmMjhlYzk2ZDU0N2JmZWU5YWNlODAzYWMwKSB3aGljaCBpc1xuICBjb25zdHJ1Y3RlZCBieSB0YWtpbmcgdGhlIGhhc2ggb2YgdGhlIHN0YW5kYXJkIHVuY29tcHJlc3NlZCBlbmNvZGluZyBvZiB0aGUgc2VjcDI1NmsxIGJhc2UgcG9pbnQgRyBhcyBYIGNvb3JkaW5hdGUuXG4gIEluIG9yZGVyIHRvIGF2b2lkIGxlYWtpbmcgdGhlIGluZm9ybWF0aW9uIHRoYXQga2V5IHBhdGggc3BlbmRpbmcgaXMgbm90IHBvc3NpYmxlIGl0IGlzIHJlY29tbWVuZGVkIHRvIHBpY2sgYSBmcmVzaFxuICBpbnRlZ2VyIHIgaW4gdGhlIHJhbmdlIDAuLi5uLTEgdW5pZm9ybWx5IGF0IHJhbmRvbSBhbmQgdXNlIEggKyByRyBhcyBpbnRlcm5hbCBrZXkuIEl0IGlzIHBvc3NpYmxlIHRvIHByb3ZlIHRoYXQgdGhpc1xuICBpbnRlcm5hbCBrZXkgZG9lcyBub3QgaGF2ZSBhIGtub3duIGRpc2NyZXRlIGxvZ2FyaXRobSB3aXRoIHJlc3BlY3QgdG8gRyBieSByZXZlYWxpbmcgciB0byBhIHZlcmlmaWVyIHdobyBjYW4gdGhlblxuICByZWNvbnN0cnVjdCBob3cgdGhlIGludGVybmFsIGtleSB3YXMgY3JlYXRlZC5cbiAgYGBgXG5cbiAgV2UgY291bGQgZG8gdGhlIHJhbmRvbSBpbnRlZ2VyIHRyaWNrIGhlcmUsIGJ1dCBmb3IgaW50ZXJuYWwgdGVzdGluZyBpdCBpcyBzdWZmaWNpZW50IHRvIHVzZSB0aGUgZml4ZWQgcG9pbnQuXG4gICovXG4gIHJldHVybiAnNTA5MjliNzRjMWEwNDk1NGI3OGI0YjYwMzVlOTdhNWUwNzhhNWEwZjI4ZWM5NmQ1NDdiZmVlOWFjZTgwM2FjMCc7XG59XG5cbmZ1bmN0aW9uIHRvRGVzY3JpcHRvck1hcCh2OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+KTogRGVzY3JpcHRvck1hcCB7XG4gIHJldHVybiBuZXcgTWFwKE9iamVjdC5lbnRyaWVzKHYpLm1hcCgoW2ssIHZdKSA9PiBbaywgRGVzY3JpcHRvci5mcm9tU3RyaW5nKHYsICdkZXJpdmFibGUnKV0pKTtcbn1cblxuZXhwb3J0IHR5cGUgRGVzY3JpcHRvclRlbXBsYXRlID1cbiAgfCAnV3NoMk9mMydcbiAgfCAnVHIxT2YzLU5vS2V5UGF0aC1UcmVlJ1xuICB8ICdUcjJPZjMtTm9LZXlQYXRoJ1xuICB8ICdXc2gyT2YyJ1xuICAvKlxuICAgKiBUaGlzIGlzIGEgd3JhcHBlZCBzZWd3aXQgMm9mMyBtdWx0aXNpZyB0aGF0IGFsc28gdXNlcyBhIHJlbGF0aXZlIGxvY2t0aW1lIHdpdGhcbiAgICogYW4gT1BfRFJPUCAocmVxdWlyaW5nIGEgbWluaXNjcmlwdCBleHRlbnNpb24pLlxuICAgKiBJdCBpcyBiYXNpY2FsbHkgd2hhdCBpcyB1c2VkIGluIENvcmVEYW8gc3Rha2luZyB0cmFuc2FjdGlvbnMuXG4gICAqL1xuICB8ICdXc2gyT2YzQ2x0dkRyb3AnO1xuXG5mdW5jdGlvbiB0b1hQdWIoazogQklQMzJJbnRlcmZhY2UgfCBzdHJpbmcsIHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gIGlmICh0eXBlb2YgayA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gayArICcvJyArIHBhdGg7XG4gIH1cbiAgcmV0dXJuIGsubmV1dGVyZWQoKS50b0Jhc2U1OCgpICsgJy8nICsgcGF0aDtcbn1cblxuZnVuY3Rpb24gbXVsdGlBcmdzKG06IG51bWJlciwgbjogbnVtYmVyLCBrZXlzOiBCSVAzMkludGVyZmFjZVtdIHwgc3RyaW5nW10sIHBhdGg6IHN0cmluZyk6IFtudW1iZXIsIC4uLnN0cmluZ1tdXSB7XG4gIGlmIChuIDwgbSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IGNyZWF0ZSAke219IG9mICR7bn0gbXVsdGlzaWdgKTtcbiAgfVxuICBpZiAoa2V5cy5sZW5ndGggPCBuKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBOb3QgZW5vdWdoIGtleXMgZm9yICR7bX0gb2YgJHtufSBtdWx0aXNpZzoga2V5cy5sZW5ndGg9JHtrZXlzLmxlbmd0aH1gKTtcbiAgfVxuICBrZXlzID0ga2V5cy5zbGljZSgwLCBuKTtcbiAgcmV0dXJuIFttLCAuLi5rZXlzLm1hcCgoaykgPT4gdG9YUHViKGssIHBhdGgpKV07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRQc2J0UGFyYW1zKHQ6IERlc2NyaXB0b3JUZW1wbGF0ZSk6IFBhcnRpYWw8UHNidFBhcmFtcz4ge1xuICBzd2l0Y2ggKHQpIHtcbiAgICBjYXNlICdXc2gyT2YzJzpcbiAgICBjYXNlICdXc2gyT2YyJzpcbiAgICBjYXNlICdUcjFPZjMtTm9LZXlQYXRoLVRyZWUnOlxuICAgIGNhc2UgJ1RyMk9mMy1Ob0tleVBhdGgnOlxuICAgICAgcmV0dXJuIHt9O1xuICAgIGNhc2UgJ1dzaDJPZjNDbHR2RHJvcCc6XG4gICAgICByZXR1cm4geyBsb2NrdGltZTogMSB9O1xuICB9XG59XG5cbmZ1bmN0aW9uIGdldERlc2NyaXB0b3JOb2RlKFxuICB0ZW1wbGF0ZTogRGVzY3JpcHRvclRlbXBsYXRlLFxuICBrZXlzOiBLZXlUcmlwbGUgfCBzdHJpbmdbXSA9IGdldERlZmF1bHRYUHVicygpLFxuICBwYXRoID0gJzAvKidcbik6IGFzdC5EZXNjcmlwdG9yTm9kZSB7XG4gIHN3aXRjaCAodGVtcGxhdGUpIHtcbiAgICBjYXNlICdXc2gyT2YzJzpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHdzaDogeyBtdWx0aTogbXVsdGlBcmdzKDIsIDMsIGtleXMsIHBhdGgpIH0sXG4gICAgICB9O1xuICAgIGNhc2UgJ1dzaDJPZjNDbHR2RHJvcCc6XG4gICAgICBjb25zdCB7IGxvY2t0aW1lIH0gPSBnZXRQc2J0UGFyYW1zKHRlbXBsYXRlKTtcbiAgICAgIGFzc2VydChsb2NrdGltZSk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB3c2g6IHtcbiAgICAgICAgICBhbmRfdjogW3sgJ3I6YWZ0ZXInOiBsb2NrdGltZSB9LCB7IG11bHRpOiBtdWx0aUFyZ3MoMiwgMywga2V5cywgcGF0aCkgfV0sXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIGNhc2UgJ1dzaDJPZjInOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgd3NoOiB7IG11bHRpOiBtdWx0aUFyZ3MoMiwgMiwga2V5cywgcGF0aCkgfSxcbiAgICAgIH07XG4gICAgY2FzZSAnVHIyT2YzLU5vS2V5UGF0aCc6XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0cjogW2dldFVuc3BlbmRhYmxlS2V5KCksIHsgbXVsdGlfYTogbXVsdGlBcmdzKDIsIDMsIGtleXMsIHBhdGgpIH1dLFxuICAgICAgfTtcbiAgICBjYXNlICdUcjFPZjMtTm9LZXlQYXRoLVRyZWUnOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdHI6IFtcbiAgICAgICAgICBnZXRVbnNwZW5kYWJsZUtleSgpLFxuICAgICAgICAgIFt7IHBrOiB0b1hQdWIoa2V5c1swXSwgcGF0aCkgfSwgW3sgcGs6IHRvWFB1YihrZXlzWzFdLCBwYXRoKSB9LCB7IHBrOiB0b1hQdWIoa2V5c1syXSwgcGF0aCkgfV1dLFxuICAgICAgICBdLFxuICAgICAgfTtcbiAgfVxuICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gZGVzY3JpcHRvciB0ZW1wbGF0ZTogJHt0ZW1wbGF0ZX1gKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldERlc2NyaXB0b3IoXG4gIHRlbXBsYXRlOiBEZXNjcmlwdG9yVGVtcGxhdGUsXG4gIGtleXM6IEtleVRyaXBsZSB8IHN0cmluZ1tdID0gZ2V0RGVmYXVsdFhQdWJzKCksXG4gIHBhdGggPSAnMC8qJ1xuKTogRGVzY3JpcHRvciB7XG4gIHJldHVybiBEZXNjcmlwdG9yLmZyb21TdHJpbmcoYXN0LmZvcm1hdE5vZGUoZ2V0RGVzY3JpcHRvck5vZGUodGVtcGxhdGUsIGtleXMsIHBhdGgpKSwgJ2Rlcml2YWJsZScpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGVzY3JpcHRvck1hcChcbiAgdGVtcGxhdGU6IERlc2NyaXB0b3JUZW1wbGF0ZSxcbiAga2V5czogS2V5VHJpcGxlIHwgc3RyaW5nW10gPSBnZXREZWZhdWx0WFB1YnMoKVxuKTogRGVzY3JpcHRvck1hcCB7XG4gIHJldHVybiB0b0Rlc2NyaXB0b3JNYXAoe1xuICAgIGV4dGVybmFsOiBnZXREZXNjcmlwdG9yKHRlbXBsYXRlLCBrZXlzLCAnMC8qJykudG9TdHJpbmcoKSxcbiAgICBpbnRlcm5hbDogZ2V0RGVzY3JpcHRvcih0ZW1wbGF0ZSwga2V5cywgJzEvKicpLnRvU3RyaW5nKCksXG4gIH0pO1xufVxuIl19
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mock.utils.d.ts","sourceRoot":"","sources":["../../../../src/testutil/descriptor/mock.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"mock.utils.d.ts","sourceRoot":"","sources":["../../../../src/testutil/descriptor/mock.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAgD,MAAM,kBAAkB,CAAC;AAC5F,OAAO,EAAE,6BAA6B,EAAE,MAAM,yBAAyB,CAAC;AAExE,OAAO,EAAE,kBAAkB,EAAkC,MAAM,eAAe,CAAC;AAEnF,KAAK,kBAAkB,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3D,KAAK,8BAA8B,GAAG;IACpC,EAAE,CAAC,EAAE,kBAAkB,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAWF,wBAAgB,iCAAiC,CAC/C,UAAU,EAAE,UAAU,EACtB,YAAY,GAAE,8BAAmC,GAChD,6BAA6B,CAY/B;AAED,KAAK,SAAS,GAAG,8BAA8B,GAAG;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,UAAU,CAAC;CACxB,CAAC;AAEF,KAAK,UAAU,GAAG;IAChB,UAAU,EAAE,UAAU,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,QAAQ,CACtB,MAAM,EAAE,SAAS,EAAE,EACnB,OAAO,EAAE,UAAU,EAAE,EACrB,MAAM,GAAE,OAAO,CAAC,UAAU,CAAM,GAC/B,OAAO,CAAC,KAAK,CAAC,QAAQ,CAaxB;AAED,wBAAgB,eAAe,CAAC,EAC9B,cAA+D,EAC/D,eAAgE,EAChE,MAAW,GACZ,GAAE;IACD,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;CACzB,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAY9B;AAED,wBAAgB,qCAAqC,CACnD,CAAC,EAAE,kBAAkB,EACrB,MAAM,GAAE,OAAO,CAAC,UAAU,CAAM,GAC/B,OAAO,CAAC,KAAK,CAAC,QAAQ,CAMxB"}
|
|
@@ -84,4 +84,4 @@ function mockPsbtDefaultWithDescriptorTemplate(t, params = {}) {
|
|
|
84
84
|
params,
|
|
85
85
|
});
|
|
86
86
|
}
|
|
87
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
87
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90ZXN0dXRpbC9kZXNjcmlwdG9yL21vY2sudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUF5QkEsOEVBZUM7QUFjRCw0QkFpQkM7QUFFRCwwQ0FvQkM7QUFFRCxzRkFTQztBQXZHRCw4REFBZ0Q7QUFFaEQsaURBQTRGO0FBRzVGLCtDQUFtRjtBQVVuRixTQUFTLFlBQVksQ0FBQyxFQUF1QjtJQUkzQyxNQUFNLElBQUksR0FBRyxFQUFFLEVBQUUsSUFBSSxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3RCxNQUFNLElBQUksR0FBRyxFQUFFLEVBQUUsSUFBSSxJQUFJLENBQUMsQ0FBQztJQUMzQixPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDO0FBQ3hCLENBQUM7QUFFRCxTQUFnQixpQ0FBaUMsQ0FDL0MsVUFBc0IsRUFDdEIsZUFBK0MsRUFBRTtJQUVqRCxNQUFNLEVBQUUsS0FBSyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLFlBQVksQ0FBQztJQUM3QyxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxHQUFHLFlBQVksQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDckQsT0FBTztRQUNMLElBQUk7UUFDSixLQUFLLEVBQUUsSUFBSTtRQUNYLFdBQVcsRUFBRTtZQUNYLE1BQU0sRUFBRSxJQUFBLDZDQUFnQyxFQUFDLFVBQVUsQ0FBQztZQUNwRCxLQUFLO1NBQ047UUFDRCxVQUFVO0tBQ1gsQ0FBQztBQUNKLENBQUM7QUFjRCxTQUFnQixRQUFRLENBQ3RCLE1BQW1CLEVBQ25CLE9BQXFCLEVBQ3JCLFNBQThCLEVBQUU7SUFFaEMsT0FBTyxJQUFBLHVCQUFVLEVBQ2YsRUFBRSxHQUFHLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU8sSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxFQUNsRSxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUNoRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7UUFDaEIsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLENBQUMsVUFBVSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsRSxPQUFPO1lBQ0wsTUFBTSxFQUFFLElBQUEsNkNBQWdDLEVBQUMsaUJBQWlCLENBQUM7WUFDM0QsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLO1lBQ2QsVUFBVSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsaUJBQWlCO1NBQ3ZELENBQUM7SUFDSixDQUFDLENBQUMsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQUVELFNBQWdCLGVBQWUsQ0FBQyxFQUM5QixjQUFjLEdBQUcsSUFBQSwyQkFBYSxFQUFDLFNBQVMsRUFBRSxJQUFBLDZCQUFlLEVBQUMsR0FBRyxDQUFDLENBQUMsRUFDL0QsZUFBZSxHQUFHLElBQUEsMkJBQWEsRUFBQyxTQUFTLEVBQUUsSUFBQSw2QkFBZSxFQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQ2hFLE1BQU0sR0FBRyxFQUFFLE1BS1QsRUFBRTtJQUNKLE9BQU8sUUFBUSxDQUNiO1FBQ0UsRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUU7UUFDeEMsRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFO0tBQzFELEVBQ0Q7UUFDRSxFQUFFLFVBQVUsRUFBRSxlQUFlLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7UUFDN0UsRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRTtLQUM3RCxFQUNELE1BQU0sQ0FDUCxDQUFDO0FBQ0osQ0FBQztBQUVELFNBQWdCLHFDQUFxQyxDQUNuRCxDQUFxQixFQUNyQixTQUE4QixFQUFFO0lBRWhDLE9BQU8sZUFBZSxDQUFDO1FBQ3JCLGNBQWMsRUFBRSxJQUFBLDJCQUFhLEVBQUMsQ0FBQyxFQUFFLElBQUEsNkJBQWUsRUFBQyxHQUFHLENBQUMsQ0FBQztRQUN0RCxlQUFlLEVBQUUsSUFBQSwyQkFBYSxFQUFDLENBQUMsRUFBRSxJQUFBLDZCQUFlLEVBQUMsR0FBRyxDQUFDLENBQUM7UUFDdkQsTUFBTTtLQUNQLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXNjcmlwdG9yIH0gZnJvbSAnQGJpdGdvL3dhc20tbWluaXNjcmlwdCc7XG5pbXBvcnQgKiBhcyB1dHhvbGliIGZyb20gJ0BiaXRnby1iZXRhL3V0eG8tbGliJztcblxuaW1wb3J0IHsgUHNidFBhcmFtcywgY3JlYXRlUHNidCwgY3JlYXRlU2NyaXB0UHViS2V5RnJvbURlc2NyaXB0b3IgfSBmcm9tICcuLi8uLi9kZXNjcmlwdG9yJztcbmltcG9ydCB7IERlcml2ZWREZXNjcmlwdG9yV2FsbGV0T3V0cHV0IH0gZnJvbSAnLi4vLi4vZGVzY3JpcHRvci9PdXRwdXQnO1xuXG5pbXBvcnQgeyBEZXNjcmlwdG9yVGVtcGxhdGUsIGdldERlZmF1bHRYUHVicywgZ2V0RGVzY3JpcHRvciB9IGZyb20gJy4vZGVzY3JpcHRvcnMnO1xuXG50eXBlIE1vY2tPdXRwdXRJZFBhcmFtcyA9IHsgaGFzaD86IHN0cmluZzsgdm91dD86IG51bWJlciB9O1xuXG50eXBlIEJhc2VNb2NrRGVzY3JpcHRvck91dHB1dFBhcmFtcyA9IHtcbiAgaWQ/OiBNb2NrT3V0cHV0SWRQYXJhbXM7XG4gIGluZGV4PzogbnVtYmVyO1xuICB2YWx1ZT86IGJpZ2ludDtcbn07XG5cbmZ1bmN0aW9uIG1vY2tPdXRwdXRJZChpZD86IE1vY2tPdXRwdXRJZFBhcmFtcyk6IHtcbiAgaGFzaDogc3RyaW5nO1xuICB2b3V0OiBudW1iZXI7XG59IHtcbiAgY29uc3QgaGFzaCA9IGlkPy5oYXNoID8/IEJ1ZmZlci5hbGxvYygzMiwgMSkudG9TdHJpbmcoJ2hleCcpO1xuICBjb25zdCB2b3V0ID0gaWQ/LnZvdXQgPz8gMDtcbiAgcmV0dXJuIHsgaGFzaCwgdm91dCB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbW9ja0Rlcml2ZWREZXNjcmlwdG9yV2FsbGV0T3V0cHV0KFxuICBkZXNjcmlwdG9yOiBEZXNjcmlwdG9yLFxuICBvdXRwdXRQYXJhbXM6IEJhc2VNb2NrRGVzY3JpcHRvck91dHB1dFBhcmFtcyA9IHt9XG4pOiBEZXJpdmVkRGVzY3JpcHRvcldhbGxldE91dHB1dCB7XG4gIGNvbnN0IHsgdmFsdWUgPSBCaWdJbnQoMWU2KSB9ID0gb3V0cHV0UGFyYW1zO1xuICBjb25zdCB7IGhhc2gsIHZvdXQgfSA9IG1vY2tPdXRwdXRJZChvdXRwdXRQYXJhbXMuaWQpO1xuICByZXR1cm4ge1xuICAgIGhhc2gsXG4gICAgaW5kZXg6IHZvdXQsXG4gICAgd2l0bmVzc1V0eG86IHtcbiAgICAgIHNjcmlwdDogY3JlYXRlU2NyaXB0UHViS2V5RnJvbURlc2NyaXB0b3IoZGVzY3JpcHRvciksXG4gICAgICB2YWx1ZSxcbiAgICB9LFxuICAgIGRlc2NyaXB0b3IsXG4gIH07XG59XG5cbnR5cGUgTW9ja0lucHV0ID0gQmFzZU1vY2tEZXNjcmlwdG9yT3V0cHV0UGFyYW1zICYge1xuICBpbmRleDogbnVtYmVyO1xuICBkZXNjcmlwdG9yOiBEZXNjcmlwdG9yO1xufTtcblxudHlwZSBNb2NrT3V0cHV0ID0ge1xuICBkZXNjcmlwdG9yOiBEZXNjcmlwdG9yO1xuICBpbmRleDogbnVtYmVyO1xuICB2YWx1ZTogYmlnaW50O1xuICBleHRlcm5hbD86IGJvb2xlYW47XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gbW9ja1BzYnQoXG4gIGlucHV0czogTW9ja0lucHV0W10sXG4gIG91dHB1dHM6IE1vY2tPdXRwdXRbXSxcbiAgcGFyYW1zOiBQYXJ0aWFsPFBzYnRQYXJhbXM+ID0ge31cbik6IHV0eG9saWIuYml0Z28uVXR4b1BzYnQge1xuICByZXR1cm4gY3JlYXRlUHNidChcbiAgICB7IC4uLnBhcmFtcywgbmV0d29yazogcGFyYW1zLm5ldHdvcmsgPz8gdXR4b2xpYi5uZXR3b3Jrcy5iaXRjb2luIH0sXG4gICAgaW5wdXRzLm1hcCgoaSkgPT4gbW9ja0Rlcml2ZWREZXNjcmlwdG9yV2FsbGV0T3V0cHV0KGkuZGVzY3JpcHRvci5hdERlcml2YXRpb25JbmRleChpLmluZGV4KSwgaSkpLFxuICAgIG91dHB1dHMubWFwKChvKSA9PiB7XG4gICAgICBjb25zdCBkZXJpdmVkRGVzY3JpcHRvciA9IG8uZGVzY3JpcHRvci5hdERlcml2YXRpb25JbmRleChvLmluZGV4KTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHNjcmlwdDogY3JlYXRlU2NyaXB0UHViS2V5RnJvbURlc2NyaXB0b3IoZGVyaXZlZERlc2NyaXB0b3IpLFxuICAgICAgICB2YWx1ZTogby52YWx1ZSxcbiAgICAgICAgZGVzY3JpcHRvcjogby5leHRlcm5hbCA/IHVuZGVmaW5lZCA6IGRlcml2ZWREZXNjcmlwdG9yLFxuICAgICAgfTtcbiAgICB9KVxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbW9ja1BzYnREZWZhdWx0KHtcbiAgZGVzY3JpcHRvclNlbGYgPSBnZXREZXNjcmlwdG9yKCdXc2gyT2YzJywgZ2V0RGVmYXVsdFhQdWJzKCdhJykpLFxuICBkZXNjcmlwdG9yT3RoZXIgPSBnZXREZXNjcmlwdG9yKCdXc2gyT2YzJywgZ2V0RGVmYXVsdFhQdWJzKCdiJykpLFxuICBwYXJhbXMgPSB7fSxcbn06IHtcbiAgZGVzY3JpcHRvclNlbGY/OiBEZXNjcmlwdG9yO1xuICBkZXNjcmlwdG9yT3RoZXI/OiBEZXNjcmlwdG9yO1xuICBwYXJhbXM/OiBQYXJ0aWFsPFBzYnRQYXJhbXM+O1xufSA9IHt9KTogdXR4b2xpYi5iaXRnby5VdHhvUHNidCB7XG4gIHJldHVybiBtb2NrUHNidChcbiAgICBbXG4gICAgICB7IGRlc2NyaXB0b3I6IGRlc2NyaXB0b3JTZWxmLCBpbmRleDogMCB9LFxuICAgICAgeyBkZXNjcmlwdG9yOiBkZXNjcmlwdG9yU2VsZiwgaW5kZXg6IDEsIGlkOiB7IHZvdXQ6IDEgfSB9LFxuICAgIF0sXG4gICAgW1xuICAgICAgeyBkZXNjcmlwdG9yOiBkZXNjcmlwdG9yT3RoZXIsIGluZGV4OiAwLCB2YWx1ZTogQmlnSW50KDRlNSksIGV4dGVybmFsOiB0cnVlIH0sXG4gICAgICB7IGRlc2NyaXB0b3I6IGRlc2NyaXB0b3JTZWxmLCBpbmRleDogMCwgdmFsdWU6IEJpZ0ludCg0ZTUpIH0sXG4gICAgXSxcbiAgICBwYXJhbXNcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1vY2tQc2J0RGVmYXVsdFdpdGhEZXNjcmlwdG9yVGVtcGxhdGUoXG4gIHQ6IERlc2NyaXB0b3JUZW1wbGF0ZSxcbiAgcGFyYW1zOiBQYXJ0aWFsPFBzYnRQYXJhbXM+ID0ge31cbik6IHV0eG9saWIuYml0Z28uVXR4b1BzYnQge1xuICByZXR1cm4gbW9ja1BzYnREZWZhdWx0KHtcbiAgICBkZXNjcmlwdG9yU2VsZjogZ2V0RGVzY3JpcHRvcih0LCBnZXREZWZhdWx0WFB1YnMoJ2EnKSksXG4gICAgZGVzY3JpcHRvck90aGVyOiBnZXREZXNjcmlwdG9yKHQsIGdldERlZmF1bHRYUHVicygnYicpKSxcbiAgICBwYXJhbXMsXG4gIH0pO1xufVxuIl19
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fixtures.utils.d.ts","sourceRoot":"","sources":["../../../src/testutil/fixtures.utils.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"fixtures.utils.d.ts","sourceRoot":"","sources":["../../../src/testutil/fixtures.utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAoDH;;;;;;;;GAQG;AACH,wBAAsB,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CA+BnG;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAExC"}
|
|
@@ -50,6 +50,9 @@ function fixtureEncoding(path) {
|
|
|
50
50
|
if (path.endsWith('.hex')) {
|
|
51
51
|
return 'hex';
|
|
52
52
|
}
|
|
53
|
+
if (path.endsWith('.txt')) {
|
|
54
|
+
return 'txt';
|
|
55
|
+
}
|
|
53
56
|
throw new Error(`unknown fixture encoding for ${path}`);
|
|
54
57
|
}
|
|
55
58
|
function decodeFixture(raw, encoding) {
|
|
@@ -58,6 +61,8 @@ function decodeFixture(raw, encoding) {
|
|
|
58
61
|
return JSON.parse(raw);
|
|
59
62
|
case 'hex':
|
|
60
63
|
return Buffer.from(raw, 'hex');
|
|
64
|
+
case 'txt':
|
|
65
|
+
return raw;
|
|
61
66
|
}
|
|
62
67
|
}
|
|
63
68
|
function encodeFixture(value, encoding) {
|
|
@@ -69,6 +74,11 @@ function encodeFixture(value, encoding) {
|
|
|
69
74
|
throw new Error(`expected Buffer, got ${typeof value}`);
|
|
70
75
|
}
|
|
71
76
|
return value.toString('hex');
|
|
77
|
+
case 'txt':
|
|
78
|
+
if (typeof value !== 'string') {
|
|
79
|
+
throw new Error(`expected string, got ${typeof value}`);
|
|
80
|
+
}
|
|
81
|
+
return value;
|
|
72
82
|
}
|
|
73
83
|
}
|
|
74
84
|
/**
|
|
@@ -114,4 +124,4 @@ async function getFixture(path, defaultValue) {
|
|
|
114
124
|
function jsonNormalize(v) {
|
|
115
125
|
return JSON.parse(JSON.stringify(v));
|
|
116
126
|
}
|
|
117
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
127
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4dHVyZXMudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdGVzdHV0aWwvZml4dHVyZXMudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQTZESCxnQ0ErQkM7QUFFRCxzQ0FFQztBQTlGRCx1Q0FBeUI7QUFDekIsNENBQThCO0FBSTlCLFNBQVMsYUFBYSxDQUFDLENBQVU7SUFDL0IsT0FBTyxDQUFDLFlBQVksS0FBSyxJQUFJLE9BQVEsQ0FBMkIsQ0FBQyxJQUFJLEtBQUssUUFBUSxDQUFDO0FBQ3JGLENBQUM7QUFFRCxTQUFTLGVBQWUsQ0FBQyxJQUFZO0lBQ25DLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQzNCLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUMxQixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFDRCxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUMxQixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLGdDQUFnQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0FBQzFELENBQUM7QUFFRCxTQUFTLGFBQWEsQ0FBQyxHQUFXLEVBQUUsUUFBeUI7SUFDM0QsUUFBUSxRQUFRLEVBQUUsQ0FBQztRQUNqQixLQUFLLE1BQU07WUFDVCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDekIsS0FBSyxLQUFLO1lBQ1IsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNqQyxLQUFLLEtBQUs7WUFDUixPQUFPLEdBQUcsQ0FBQztJQUNm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KipcbiAqIENvbnRhaW5zIGhlbHBlcnMgZm9yIHdvcmtpbmcgd2l0aCB0ZXN0IGZpeHR1cmVzXG4gKi9cblxuaW1wb3J0ICogYXMgZnMgZnJvbSAnZnMnO1xuaW1wb3J0ICogYXMgbXBhdGggZnJvbSAncGF0aCc7XG5cbnR5cGUgRml4dHVyZUVuY29kaW5nID0gJ2pzb24nIHwgJ2hleCcgfCAndHh0JztcblxuZnVuY3Rpb24gaXNOb2RlSnNFcnJvcihlOiB1bmtub3duKTogZSBpcyBOb2RlSlMuRXJybm9FeGNlcHRpb24ge1xuICByZXR1cm4gZSBpbnN0YW5jZW9mIEVycm9yICYmIHR5cGVvZiAoZSBhcyBOb2RlSlMuRXJybm9FeGNlcHRpb24pLmNvZGUgPT09ICdzdHJpbmcnO1xufVxuXG5mdW5jdGlvbiBmaXh0dXJlRW5jb2RpbmcocGF0aDogc3RyaW5nKTogRml4dHVyZUVuY29kaW5nIHtcbiAgaWYgKHBhdGguZW5kc1dpdGgoJy5qc29uJykpIHtcbiAgICByZXR1cm4gJ2pzb24nO1xuICB9XG4gIGlmIChwYXRoLmVuZHNXaXRoKCcuaGV4JykpIHtcbiAgICByZXR1cm4gJ2hleCc7XG4gIH1cbiAgaWYgKHBhdGguZW5kc1dpdGgoJy50eHQnKSkge1xuICAgIHJldHVybiAndHh0JztcbiAgfVxuICB0aHJvdyBuZXcgRXJyb3IoYHVua25vd24gZml4dHVyZSBlbmNvZGluZyBmb3IgJHtwYXRofWApO1xufVxuXG5mdW5jdGlvbiBkZWNvZGVGaXh0dXJlKHJhdzogc3RyaW5nLCBlbmNvZGluZzogRml4dHVyZUVuY29kaW5nKTogdW5rbm93biB7XG4gIHN3aXRjaCAoZW5jb2RpbmcpIHtcbiAgICBjYXNlICdqc29uJzpcbiAgICAgIHJldHVybiBKU09OLnBhcnNlKHJhdyk7XG4gICAgY2FzZSAnaGV4JzpcbiAgICAgIHJldHVybiBCdWZmZXIuZnJvbShyYXcsICdoZXgnKTtcbiAgICBjYXNlICd0eHQnOlxuICAgICAgcmV0dXJuIHJhdztcbiAgfVxufVxuXG5mdW5jdGlvbiBlbmNvZGVGaXh0dXJlKHZhbHVlOiB1bmtub3duLCBlbmNvZGluZzogRml4dHVyZUVuY29kaW5nKTogc3RyaW5nIHtcbiAgc3dpdGNoIChlbmNvZGluZykge1xuICAgIGNhc2UgJ2pzb24nOlxuICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHZhbHVlLCBudWxsLCAyKSArICdcXG4nO1xuICAgIGNhc2UgJ2hleCc6XG4gICAgICBpZiAoIUJ1ZmZlci5pc0J1ZmZlcih2YWx1ZSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBleHBlY3RlZCBCdWZmZXIsIGdvdCAke3R5cGVvZiB2YWx1ZX1gKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB2YWx1ZS50b1N0cmluZygnaGV4Jyk7XG4gICAgY2FzZSAndHh0JzpcbiAgICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgZXhwZWN0ZWQgc3RyaW5nLCBnb3QgJHt0eXBlb2YgdmFsdWV9YCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gdmFsdWU7XG4gIH1cbn1cblxuLyoqXG4gKiBSZXR1cm4gZml4dHVyZSBkZXNjcmliZWQgaW4gYHBhdGhgLlxuICpcbiAqIElmIGZpbGUgZG9lcyBub3QgZXhpc3QgYW5kIGBkZWZhdWx0VmFsdWVgIGlzIHByb3ZpZGVkLCB3cml0ZXMgZGVmYXVsdFZhbHVlIHRvIGBwYXRoYCBhbmQgdGhyb3dzIGFuIGVycm9yLlxuICpcbiAqIEBwYXJhbSBwYXRoXG4gKiBAcGFyYW0gZGVmYXVsdFZhbHVlXG4gKiBAcmV0dXJuIFQgLSBmaXh0dXJlIGNvbnRlbnRcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEZpeHR1cmU8VD4ocGF0aDogc3RyaW5nLCBkZWZhdWx0VmFsdWU/OiBUIHwgKCgpID0+IFByb21pc2U8VD4pKTogUHJvbWlzZTxUPiB7XG4gIHRyeSB7XG4gICAgYXdhaXQgZnMucHJvbWlzZXMuc3RhdChtcGF0aC5kaXJuYW1lKHBhdGgpKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGlmIChpc05vZGVKc0Vycm9yKGUpICYmIGUuY29kZSA9PT0gJ0VOT0VOVCcpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgZml4dHVyZSBkaXJlY3RvcnkgJHttcGF0aC5kaXJuYW1lKHBhdGgpfSBub3QgZm91bmQsIHBsZWFzZSBjcmVhdGUgaXQgZmlyc3RgKTtcbiAgICB9XG4gICAgdGhyb3cgZTtcbiAgfVxuXG4gIGNvbnN0IGVuY29kaW5nID0gZml4dHVyZUVuY29kaW5nKHBhdGgpO1xuXG4gIHRyeSB7XG4gICAgcmV0dXJuIGRlY29kZUZpeHR1cmUoYXdhaXQgZnMucHJvbWlzZXMucmVhZEZpbGUocGF0aCwgJ3V0ZjgnKSwgZW5jb2RpbmcpIGFzIFQ7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBpZiAoaXNOb2RlSnNFcnJvcihlKSAmJiBlLmNvZGUgPT09ICdFTk9FTlQnKSB7XG4gICAgICBpZiAocHJvY2Vzcy5lbnYuV1JJVEVfRklYVFVSRVMgPT09ICcwJykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGZpeHR1cmUgJHtwYXRofSBub3QgZm91bmQsIFdSSVRFX0ZJWFRVUkVTPTBgKTtcbiAgICAgIH1cbiAgICAgIGlmIChkZWZhdWx0VmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGZpeHR1cmUgJHtwYXRofSBub3QgZm91bmQgYW5kIG5vIGRlZmF1bHQgdmFsdWUgZ2l2ZW5gKTtcbiAgICAgIH1cbiAgICAgIGlmICh0eXBlb2YgZGVmYXVsdFZhbHVlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIGRlZmF1bHRWYWx1ZSA9IGF3YWl0IChkZWZhdWx0VmFsdWUgYXMgKCkgPT4gUHJvbWlzZTxUPikoKTtcbiAgICAgIH1cbiAgICAgIGF3YWl0IGZzLnByb21pc2VzLndyaXRlRmlsZShwYXRoLCBlbmNvZGVGaXh0dXJlKGRlZmF1bHRWYWx1ZSwgZW5jb2RpbmcpKTtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgd3JvdGUgZGVmYXVsdCB2YWx1ZSBmb3IgJHtwYXRofSwgcGxlYXNlIGluc3BlY3QgYW5kIHJlc3RhcnQgdGVzdGApO1xuICAgIH1cblxuICAgIHRocm93IGU7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGpzb25Ob3JtYWxpemU8VD4odjogVCk6IFQge1xuICByZXR1cm4gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh2KSkgYXMgVDtcbn1cbiJdfQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bitgo-beta/utxo-core",
|
|
3
|
-
"version": "1.0.0-beta.
|
|
3
|
+
"version": "1.0.0-beta.40",
|
|
4
4
|
"description": "BitGo UTXO Core types",
|
|
5
5
|
"main": "./dist/src/index.js",
|
|
6
6
|
"types": "./dist/src/index.d.ts",
|
|
@@ -51,10 +51,10 @@
|
|
|
51
51
|
]
|
|
52
52
|
},
|
|
53
53
|
"dependencies": {
|
|
54
|
-
"@bitgo-beta/unspents": "0.13.2-beta.
|
|
55
|
-
"@bitgo-beta/utxo-lib": "8.0.3-beta.
|
|
56
|
-
"@bitgo/wasm-miniscript": "
|
|
54
|
+
"@bitgo-beta/unspents": "0.13.2-beta.729",
|
|
55
|
+
"@bitgo-beta/utxo-lib": "8.0.3-beta.730",
|
|
56
|
+
"@bitgo/wasm-miniscript": "2.0.0-beta.6",
|
|
57
57
|
"bip174": "npm:@bitgo-forks/bip174@3.1.0-master.4"
|
|
58
58
|
},
|
|
59
|
-
"gitHead": "
|
|
59
|
+
"gitHead": "5d33d1630f5d6c3ae8167e2117f2cb53900aa7d6"
|
|
60
60
|
}
|