@bitgo/wasm-utxo 1.7.0 → 1.9.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/js/fixedScriptWallet/BitGoPsbt.d.ts +99 -0
- package/dist/cjs/js/fixedScriptWallet/BitGoPsbt.js +122 -0
- package/dist/cjs/js/wasm/wasm_utxo.d.ts +86 -0
- package/dist/cjs/js/wasm/wasm_utxo.js +276 -24
- package/dist/cjs/js/wasm/wasm_utxo_bg.wasm +0 -0
- package/dist/cjs/js/wasm/wasm_utxo_bg.wasm.d.ts +21 -17
- package/dist/esm/js/fixedScriptWallet/BitGoPsbt.d.ts +99 -0
- package/dist/esm/js/fixedScriptWallet/BitGoPsbt.js +122 -0
- package/dist/esm/js/wasm/wasm_utxo.d.ts +86 -0
- package/dist/esm/js/wasm/wasm_utxo_bg.js +276 -24
- package/dist/esm/js/wasm/wasm_utxo_bg.wasm +0 -0
- package/dist/esm/js/wasm/wasm_utxo_bg.wasm.d.ts +21 -17
- package/package.json +3 -3
- package/dist/cjs/package.json +0 -1
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +0 -1
- package/dist/esm/test/address/utxolibCompat.d.ts +0 -1
- package/dist/esm/test/address/utxolibCompat.js +0 -107
- package/dist/esm/test/ast/formatNode.d.ts +0 -1
- package/dist/esm/test/ast/formatNode.js +0 -15
- package/dist/esm/test/bip32.d.ts +0 -1
- package/dist/esm/test/bip32.js +0 -242
- package/dist/esm/test/descriptorFixtures.d.ts +0 -25
- package/dist/esm/test/descriptorFixtures.js +0 -605
- package/dist/esm/test/descriptorUtil.d.ts +0 -13
- package/dist/esm/test/descriptorUtil.js +0 -52
- package/dist/esm/test/ecpair.d.ts +0 -1
- package/dist/esm/test/ecpair.js +0 -137
- package/dist/esm/test/fixedScript/address.d.ts +0 -1
- package/dist/esm/test/fixedScript/address.js +0 -66
- package/dist/esm/test/fixedScript/finalizeExtract.d.ts +0 -1
- package/dist/esm/test/fixedScript/finalizeExtract.js +0 -66
- package/dist/esm/test/fixedScript/fixtureUtil.d.ts +0 -95
- package/dist/esm/test/fixedScript/fixtureUtil.js +0 -55
- package/dist/esm/test/fixedScript/parseTransactionWithWalletKeys.d.ts +0 -1
- package/dist/esm/test/fixedScript/parseTransactionWithWalletKeys.js +0 -168
- package/dist/esm/test/fixedScript/verifySignature.d.ts +0 -1
- package/dist/esm/test/fixedScript/verifySignature.js +0 -187
- package/dist/esm/test/fixedScriptToDescriptor.d.ts +0 -1
- package/dist/esm/test/fixedScriptToDescriptor.js +0 -93
- package/dist/esm/test/fixtures.d.ts +0 -1
- package/dist/esm/test/fixtures.js +0 -16
- package/dist/esm/test/opdrop.d.ts +0 -1
- package/dist/esm/test/opdrop.js +0 -85
- package/dist/esm/test/psbt.util.d.ts +0 -8
- package/dist/esm/test/psbt.util.js +0 -113
- package/dist/esm/test/psbtFixedScriptCompat.d.ts +0 -1
- package/dist/esm/test/psbtFixedScriptCompat.js +0 -116
- package/dist/esm/test/psbtFixedScriptCompatFixtures.d.ts +0 -10
- package/dist/esm/test/psbtFixedScriptCompatFixtures.js +0 -53
- package/dist/esm/test/psbtFromDescriptor.d.ts +0 -1
- package/dist/esm/test/psbtFromDescriptor.js +0 -104
- package/dist/esm/test/psbtFromDescriptor.util.d.ts +0 -63
- package/dist/esm/test/psbtFromDescriptor.util.js +0 -101
- package/dist/esm/test/test.d.ts +0 -1
- package/dist/esm/test/test.js +0 -123
- package/dist/esm/tsconfig.tsbuildinfo +0 -1
|
@@ -2,11 +2,22 @@
|
|
|
2
2
|
/* eslint-disable */
|
|
3
3
|
export const memory: WebAssembly.Memory;
|
|
4
4
|
export const __wbg_utxolibcompatnamespace_free: (a: number, b: number) => void;
|
|
5
|
+
export const __wbg_wrapminiscript_free: (a: number, b: number) => void;
|
|
6
|
+
export const utxolibcompatnamespace_from_output_script: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
|
|
7
|
+
export const utxolibcompatnamespace_to_output_script: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
|
|
8
|
+
export const wrapminiscript_encode: (a: number, b: number) => void;
|
|
9
|
+
export const wrapminiscript_fromBitcoinScript: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
10
|
+
export const wrapminiscript_fromString: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
11
|
+
export const wrapminiscript_node: (a: number, b: number) => void;
|
|
12
|
+
export const wrapminiscript_toAsmString: (a: number, b: number) => void;
|
|
13
|
+
export const wrapminiscript_toString: (a: number, b: number) => void;
|
|
14
|
+
export const __wbg_addressnamespace_free: (a: number, b: number) => void;
|
|
5
15
|
export const __wbg_wasmbip32_free: (a: number, b: number) => void;
|
|
6
16
|
export const __wbg_wasmecpair_free: (a: number, b: number) => void;
|
|
17
|
+
export const __wbg_wasmreplayprotection_free: (a: number, b: number) => void;
|
|
7
18
|
export const __wbg_wasmrootwalletkeys_free: (a: number, b: number) => void;
|
|
8
|
-
export const
|
|
9
|
-
export const
|
|
19
|
+
export const addressnamespace_from_output_script_with_coin: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => void;
|
|
20
|
+
export const addressnamespace_to_output_script_with_coin: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
10
21
|
export const wasmbip32_chain_code: (a: number) => number;
|
|
11
22
|
export const wasmbip32_depth: (a: number) => number;
|
|
12
23
|
export const wasmbip32_derive: (a: number, b: number, c: number) => void;
|
|
@@ -37,26 +48,30 @@ export const wasmecpair_public_key: (a: number) => number;
|
|
|
37
48
|
export const wasmecpair_to_wif: (a: number, b: number) => void;
|
|
38
49
|
export const wasmecpair_to_wif_mainnet: (a: number, b: number) => void;
|
|
39
50
|
export const wasmecpair_to_wif_testnet: (a: number, b: number) => void;
|
|
51
|
+
export const wasmreplayprotection_from_addresses: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
52
|
+
export const wasmreplayprotection_from_output_scripts: (a: number, b: number) => number;
|
|
53
|
+
export const wasmreplayprotection_from_public_keys: (a: number, b: number, c: number) => void;
|
|
40
54
|
export const wasmrootwalletkeys_backup_key: (a: number) => number;
|
|
41
55
|
export const wasmrootwalletkeys_bitgo_key: (a: number) => number;
|
|
42
56
|
export const wasmrootwalletkeys_new: (a: number, b: number, c: number, d: number) => void;
|
|
43
57
|
export const wasmrootwalletkeys_user_key: (a: number) => number;
|
|
44
58
|
export const wasmrootwalletkeys_with_derivation_prefixes: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number) => void;
|
|
45
59
|
export const wasmbip32_from_bip32_properties: (a: number, b: number) => void;
|
|
46
|
-
export const __wbg_addressnamespace_free: (a: number, b: number) => void;
|
|
47
60
|
export const __wbg_bitgopsbt_free: (a: number, b: number) => void;
|
|
61
|
+
export const __wbg_fixedscriptwalletnamespace_free: (a: number, b: number) => void;
|
|
48
62
|
export const __wbg_wrapdescriptor_free: (a: number, b: number) => void;
|
|
49
|
-
export const __wbg_wrapminiscript_free: (a: number, b: number) => void;
|
|
50
63
|
export const __wbg_wrappsbt_free: (a: number, b: number) => void;
|
|
51
|
-
export const
|
|
52
|
-
export const addressnamespace_to_output_script_with_coin: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
64
|
+
export const bitgopsbt_combine_musig2_nonces: (a: number, b: number, c: number) => void;
|
|
53
65
|
export const bitgopsbt_extract_transaction: (a: number, b: number) => void;
|
|
54
66
|
export const bitgopsbt_finalize_all_inputs: (a: number, b: number) => void;
|
|
55
67
|
export const bitgopsbt_from_bytes: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
68
|
+
export const bitgopsbt_generate_musig2_nonces: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
56
69
|
export const bitgopsbt_network: (a: number, b: number) => void;
|
|
57
70
|
export const bitgopsbt_parse_outputs_with_wallet_keys: (a: number, b: number, c: number) => void;
|
|
58
71
|
export const bitgopsbt_parse_transaction_with_wallet_keys: (a: number, b: number, c: number, d: number) => void;
|
|
59
72
|
export const bitgopsbt_serialize: (a: number, b: number) => void;
|
|
73
|
+
export const bitgopsbt_sign_with_privkey: (a: number, b: number, c: number, d: number) => void;
|
|
74
|
+
export const bitgopsbt_sign_with_xpriv: (a: number, b: number, c: number, d: number) => void;
|
|
60
75
|
export const bitgopsbt_unsigned_txid: (a: number, b: number) => void;
|
|
61
76
|
export const bitgopsbt_verify_replay_protection_signature: (a: number, b: number, c: number, d: number) => void;
|
|
62
77
|
export const bitgopsbt_verify_signature_with_pub: (a: number, b: number, c: number, d: number) => void;
|
|
@@ -74,12 +89,6 @@ export const wrapdescriptor_node: (a: number, b: number) => void;
|
|
|
74
89
|
export const wrapdescriptor_scriptPubkey: (a: number, b: number) => void;
|
|
75
90
|
export const wrapdescriptor_toAsmString: (a: number, b: number) => void;
|
|
76
91
|
export const wrapdescriptor_toString: (a: number, b: number) => void;
|
|
77
|
-
export const wrapminiscript_encode: (a: number, b: number) => void;
|
|
78
|
-
export const wrapminiscript_fromBitcoinScript: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
79
|
-
export const wrapminiscript_fromString: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
80
|
-
export const wrapminiscript_node: (a: number, b: number) => void;
|
|
81
|
-
export const wrapminiscript_toAsmString: (a: number, b: number) => void;
|
|
82
|
-
export const wrapminiscript_toString: (a: number, b: number) => void;
|
|
83
92
|
export const wrappsbt_clone: (a: number) => number;
|
|
84
93
|
export const wrappsbt_deserialize: (a: number, b: number, c: number) => void;
|
|
85
94
|
export const wrappsbt_finalize: (a: number, b: number) => void;
|
|
@@ -88,11 +97,6 @@ export const wrappsbt_signWithPrv: (a: number, b: number, c: number, d: number)
|
|
|
88
97
|
export const wrappsbt_signWithXprv: (a: number, b: number, c: number, d: number) => void;
|
|
89
98
|
export const wrappsbt_updateInputWithDescriptor: (a: number, b: number, c: number, d: number) => void;
|
|
90
99
|
export const wrappsbt_updateOutputWithDescriptor: (a: number, b: number, c: number, d: number) => void;
|
|
91
|
-
export const __wbg_fixedscriptwalletnamespace_free: (a: number, b: number) => void;
|
|
92
|
-
export const __wbg_wasmreplayprotection_free: (a: number, b: number) => void;
|
|
93
|
-
export const wasmreplayprotection_from_addresses: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
94
|
-
export const wasmreplayprotection_from_output_scripts: (a: number, b: number) => number;
|
|
95
|
-
export const wasmreplayprotection_from_public_keys: (a: number, b: number, c: number) => void;
|
|
96
100
|
export const rustsecp256k1_v0_10_0_context_create: (a: number) => number;
|
|
97
101
|
export const rustsecp256k1_v0_10_0_context_destroy: (a: number) => void;
|
|
98
102
|
export const rustsecp256k1_v0_10_0_default_error_callback_fn: (a: number, b: number) => void;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bitgo/wasm-utxo",
|
|
3
3
|
"description": "WebAssembly wrapper for rust-bitcoin (beta)",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.9.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -9,8 +9,8 @@
|
|
|
9
9
|
},
|
|
10
10
|
"license": "MIT",
|
|
11
11
|
"files": [
|
|
12
|
-
"dist/esm/**/*",
|
|
13
|
-
"dist/cjs/**/*"
|
|
12
|
+
"dist/esm/js/**/*",
|
|
13
|
+
"dist/cjs/js/**/*"
|
|
14
14
|
],
|
|
15
15
|
"exports": {
|
|
16
16
|
".": {
|
package/dist/cjs/package.json
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"type":"commonjs"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"fileNames":["../../../../node_modules/typescript/lib/lib.es5.d.ts","../../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../../node_modules/typescript/lib/lib.es2022.d.ts","../../../../node_modules/typescript/lib/lib.dom.d.ts","../../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../../node_modules/typescript/lib/lib.dom.asynciterable.d.ts","../../../../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../../../../node_modules/typescript/lib/lib.scripthost.d.ts","../../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../../node_modules/typescript/lib/lib.es2022.full.d.ts","../../js/wasm/wasm_utxo.d.ts","../../js/coinName.ts","../../js/address.ts","../../js/bip32.ts","../../js/ecpair.ts","../../js/ast/formatNode.ts","../../js/ast/fromWasmNode.ts","../../js/ast/index.ts","../../js/utxolibCompat.ts","../../js/triple.ts","../../js/fixedScriptWallet/RootWalletKeys.ts","../../js/fixedScriptWallet/ReplayProtection.ts","../../js/fixedScriptWallet/address.ts","../../js/fixedScriptWallet/BitGoPsbt.ts","../../js/fixedScriptWallet/index.ts","../../js/index.ts","../../js/wasm/wasm_utxo_bg.wasm.d.ts","../../../../node_modules/@types/node/compatibility/disposable.d.ts","../../../../node_modules/@types/node/compatibility/indexable.d.ts","../../../../node_modules/@types/node/compatibility/iterators.d.ts","../../../../node_modules/@types/node/compatibility/index.d.ts","../../../../node_modules/@types/node/globals.typedarray.d.ts","../../../../node_modules/@types/node/buffer.buffer.d.ts","../../../../node_modules/@types/node/globals.d.ts","../../../../node_modules/@types/node/web-globals/abortcontroller.d.ts","../../../../node_modules/@types/node/web-globals/domexception.d.ts","../../../../node_modules/@types/node/web-globals/events.d.ts","../../../../node_modules/undici-types/header.d.ts","../../../../node_modules/undici-types/readable.d.ts","../../../../node_modules/undici-types/file.d.ts","../../../../node_modules/undici-types/fetch.d.ts","../../../../node_modules/undici-types/formdata.d.ts","../../../../node_modules/undici-types/connector.d.ts","../../../../node_modules/undici-types/client.d.ts","../../../../node_modules/undici-types/errors.d.ts","../../../../node_modules/undici-types/dispatcher.d.ts","../../../../node_modules/undici-types/global-dispatcher.d.ts","../../../../node_modules/undici-types/global-origin.d.ts","../../../../node_modules/undici-types/pool-stats.d.ts","../../../../node_modules/undici-types/pool.d.ts","../../../../node_modules/undici-types/handlers.d.ts","../../../../node_modules/undici-types/balanced-pool.d.ts","../../../../node_modules/undici-types/agent.d.ts","../../../../node_modules/undici-types/mock-interceptor.d.ts","../../../../node_modules/undici-types/mock-agent.d.ts","../../../../node_modules/undici-types/mock-client.d.ts","../../../../node_modules/undici-types/mock-pool.d.ts","../../../../node_modules/undici-types/mock-errors.d.ts","../../../../node_modules/undici-types/proxy-agent.d.ts","../../../../node_modules/undici-types/env-http-proxy-agent.d.ts","../../../../node_modules/undici-types/retry-handler.d.ts","../../../../node_modules/undici-types/retry-agent.d.ts","../../../../node_modules/undici-types/api.d.ts","../../../../node_modules/undici-types/interceptors.d.ts","../../../../node_modules/undici-types/util.d.ts","../../../../node_modules/undici-types/cookies.d.ts","../../../../node_modules/undici-types/patch.d.ts","../../../../node_modules/undici-types/websocket.d.ts","../../../../node_modules/undici-types/eventsource.d.ts","../../../../node_modules/undici-types/filereader.d.ts","../../../../node_modules/undici-types/diagnostics-channel.d.ts","../../../../node_modules/undici-types/content-type.d.ts","../../../../node_modules/undici-types/cache.d.ts","../../../../node_modules/undici-types/index.d.ts","../../../../node_modules/@types/node/web-globals/fetch.d.ts","../../../../node_modules/@types/node/web-globals/navigator.d.ts","../../../../node_modules/@types/node/web-globals/storage.d.ts","../../../../node_modules/@types/node/assert.d.ts","../../../../node_modules/@types/node/assert/strict.d.ts","../../../../node_modules/@types/node/async_hooks.d.ts","../../../../node_modules/@types/node/buffer.d.ts","../../../../node_modules/@types/node/child_process.d.ts","../../../../node_modules/@types/node/cluster.d.ts","../../../../node_modules/@types/node/console.d.ts","../../../../node_modules/@types/node/constants.d.ts","../../../../node_modules/@types/node/crypto.d.ts","../../../../node_modules/@types/node/dgram.d.ts","../../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../../node_modules/@types/node/dns.d.ts","../../../../node_modules/@types/node/dns/promises.d.ts","../../../../node_modules/@types/node/domain.d.ts","../../../../node_modules/@types/node/events.d.ts","../../../../node_modules/@types/node/fs.d.ts","../../../../node_modules/@types/node/fs/promises.d.ts","../../../../node_modules/@types/node/http.d.ts","../../../../node_modules/@types/node/http2.d.ts","../../../../node_modules/@types/node/https.d.ts","../../../../node_modules/@types/node/inspector.generated.d.ts","../../../../node_modules/@types/node/module.d.ts","../../../../node_modules/@types/node/net.d.ts","../../../../node_modules/@types/node/os.d.ts","../../../../node_modules/@types/node/path.d.ts","../../../../node_modules/@types/node/perf_hooks.d.ts","../../../../node_modules/@types/node/process.d.ts","../../../../node_modules/@types/node/punycode.d.ts","../../../../node_modules/@types/node/querystring.d.ts","../../../../node_modules/@types/node/readline.d.ts","../../../../node_modules/@types/node/readline/promises.d.ts","../../../../node_modules/@types/node/repl.d.ts","../../../../node_modules/@types/node/sea.d.ts","../../../../node_modules/@types/node/sqlite.d.ts","../../../../node_modules/@types/node/stream.d.ts","../../../../node_modules/@types/node/stream/promises.d.ts","../../../../node_modules/@types/node/stream/consumers.d.ts","../../../../node_modules/@types/node/stream/web.d.ts","../../../../node_modules/@types/node/string_decoder.d.ts","../../../../node_modules/@types/node/test.d.ts","../../../../node_modules/@types/node/timers.d.ts","../../../../node_modules/@types/node/timers/promises.d.ts","../../../../node_modules/@types/node/tls.d.ts","../../../../node_modules/@types/node/trace_events.d.ts","../../../../node_modules/@types/node/tty.d.ts","../../../../node_modules/@types/node/url.d.ts","../../../../node_modules/@types/node/util.d.ts","../../../../node_modules/@types/node/v8.d.ts","../../../../node_modules/@types/node/vm.d.ts","../../../../node_modules/@types/node/wasi.d.ts","../../../../node_modules/@types/node/worker_threads.d.ts","../../../../node_modules/@types/node/zlib.d.ts","../../../../node_modules/@types/node/index.d.ts","../../../../node_modules/@types/connect/index.d.ts","../../../../node_modules/@types/body-parser/index.d.ts","../../../../node_modules/@types/bonjour/index.d.ts","../../../../node_modules/mime/dist/src/Mime.d.ts","../../../../node_modules/mime/dist/src/index.d.ts","../../../../node_modules/@types/send/index.d.ts","../../../../node_modules/@types/qs/index.d.ts","../../../../node_modules/@types/range-parser/index.d.ts","../../../../node_modules/@types/express-serve-static-core/index.d.ts","../../../../node_modules/@types/connect-history-api-fallback/index.d.ts","../../../../node_modules/@types/estree/index.d.ts","../../../../node_modules/@types/http-errors/index.d.ts","../../../../node_modules/@types/serve-static/index.d.ts","../../../../node_modules/@types/express/index.d.ts","../../../../node_modules/@types/html-minifier-terser/index.d.ts","../../../../node_modules/@types/http-proxy/index.d.ts","../../../../node_modules/@types/json-schema/index.d.ts","../../../../node_modules/@types/mime/index.d.ts","../../../../node_modules/@types/minimatch/index.d.ts","../../../../node_modules/@types/minimist/index.d.ts","../../../../node_modules/@types/mocha/index.d.ts","../../../../node_modules/@types/node-forge/index.d.ts","../../../../node_modules/@types/normalize-package-data/index.d.ts","../../../../node_modules/@types/parse-json/index.d.ts","../../../../node_modules/@types/retry/index.d.ts","../../../../node_modules/@types/serve-index/index.d.ts","../../../../node_modules/@types/sockjs/index.d.ts","../../../../node_modules/@types/ws/index.d.ts"],"fileIdsList":[[86,134,148,183,184],[86,134,140,183],[86,134,176,183,192],[86,134,148,183],[86,134],[86,134,145,148,183,189,190,191],[86,134,185,190,192,196],[86,134,145,148,150,153,165,176,183],[86,134,183],[86,131,134],[86,133,134],[134],[86,134,139,168],[86,134,135,140,145,153,165,176],[86,134,135,136,145,153],[81,82,83,86,134],[86,134,137,177],[86,134,138,139,146,154],[86,134,139,165,173],[86,134,140,142,145,153],[86,133,134,141],[86,134,142,143],[86,134,144,145],[86,133,134,145],[86,134,145,146,147,165,176],[86,134,145,146,147,160,165,168],[86,127,134,142,145,148,153,165,176],[86,134,145,146,148,149,153,165,173,176],[86,134,148,150,165,173,176],[84,85,86,87,88,89,90,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182],[86,134,145,151],[86,134,152,176],[86,134,142,145,153,165],[86,134,154],[86,134,155],[86,133,134,156],[86,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182],[86,134,158],[86,134,159],[86,134,145,160,161],[86,134,160,162,177,179],[86,134,146],[86,134,145,165,166,168],[86,134,167,168],[86,134,165,166],[86,134,168],[86,134,169],[86,131,134,165,170],[86,134,145,171,172],[86,134,171,172],[86,134,139,153,165,173],[86,134,174],[86,134,153,175],[86,134,148,159,176],[86,134,139,177],[86,134,165,178],[86,134,152,179],[86,134,180],[86,127,134],[86,127,134,145,147,156,165,168,176,178,179,181],[86,134,165,182],[86,134,146,165,183,188],[86,134,146,197],[86,134,148,183,189,195],[86,134,145,148,150,165,173,176,182,183],[86,134,187],[86,99,103,134,176],[86,99,134,165,176],[86,94,134],[86,96,99,134,173,176],[86,134,153,173],[86,94,134,183],[86,96,99,134,153,176],[86,91,92,95,98,134,145,165,176],[86,99,106,134],[86,91,97,134],[86,99,120,121,134],[86,95,99,134,168,176,183],[86,120,134,183],[86,93,94,134,183],[86,99,134],[86,93,94,95,96,97,98,99,100,101,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,121,122,123,124,125,126,134],[86,99,114,134],[86,99,106,107,134],[86,97,99,107,108,134],[86,98,134],[86,91,94,99,134],[86,99,103,107,108,134],[86,103,134],[86,97,99,102,134,176],[86,91,96,99,106,134],[86,134,165],[86,94,99,120,134,181,183],[64,65,79,86,134],[69,79,86,134],[69,70,86,134],[64,79,86,134],[64,65,67,68,72,74,75,79,86,134],[64,68,79,86,134],[64,67,73,79,86,134],[64,66,72,74,79,86,134],[74,75,76,77,86,134],[64,65,66,67,68,71,72,73,78,79,86,134],[64,66,79,86,134]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2e80ee7a49e8ac312cc11b77f1475804bee36b3b2bc896bead8b6e1266befb43","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7a3c8b952931daebdfc7a2897c53c0a1c73624593fa070e46bd537e64dcd20a","affectsGlobalScope":true,"impliedFormat":1},{"version":"80e18897e5884b6723488d4f5652167e7bb5024f946743134ecc4aa4ee731f89","affectsGlobalScope":true,"impliedFormat":1},{"version":"cd034f499c6cdca722b60c04b5b1b78e058487a7085a8e0d6fb50809947ee573","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"3cbad9a1ba4453443026ed38e4b8be018abb26565fa7c944376463ad9df07c41","impliedFormat":1},"b1c3268ac72371b7daa37f117149b10c26899c9bfc7452ca94bac440b2d610a4",{"version":"3b99dea801fd316188b5fad98943e2b372f3149e7bd951c05851c594b65cc7b6","signature":"7fa7f4adf80750703996ddde2f5e1b1b693b2896642abcb46d3bcb75dacb9586"},{"version":"d7c783ec45de983a020025b0cd384c29588077f87b1859f4cb9ba73b462efd2a","signature":"e5432fa80d0a2bc1449512292bae450c583c62317ef7f268143fbaea6e2f6ea3"},{"version":"05ad6ee870967e86bff715e8fc45f7a14863b07209e7e392b5b6e4103d9145d5","signature":"cc684452de0eafef528fda45a2ca8926f4bc3450d64f4d8feb88f1e4602e8c03"},{"version":"7b3715bd71cedc4793f87681a03909a333057784be5077335f23efc9527bdf92","signature":"47405d06004fab0fba16710a9565ccf9c0a0524336d3e490923bd557336351bd"},{"version":"da6fd182232dba4d34f9c5c8680ac6b5d825c326167dcf7330375a2743052a29","signature":"61dfd53156ff3b08d41058733fdc6f829ac4dd4fc7cdf2162752bdcdcb5087b7"},{"version":"3aa6ef162edd718ea06dc8773deafd8d9ced429ee4273034f72bdf630c0d2bfe","signature":"71aa3455a73e209077b4f9dd880bca15e93a6ce1d8553c36b169b9903a0b553c"},"0332cd036e345ef857f693c100d10e2d3b6a924f1941a49645fb521eae8c96dd",{"version":"3ac01916919f85b9cd4546dd083ebe30e9dc4b297f9118f2864115d60f906772","signature":"0a4a93921b9f3bc9836e87693b803f49ff2c5a815da7ecb46bf79053b8617eac"},"cd45d67cb5fcdf6ead91db2e486a890dcb62dd14053bb29c136f959123650ed0",{"version":"aca6aa50688e39d33aabfc816692a67f625c45d289f5d85ed7f02dd30078bdd7","signature":"b5ebf32aafbb76c60e2ac0f670206cedd624b8132e240a07347ae7ea33c3a5ee"},{"version":"0fd4e3251115ddada568c40179fa0758d86aa10aca5893078936a0a566e9dac3","signature":"735e4272143964b689ae06a9bfae1596666ae20b1513e29a615d89d5633800cc"},{"version":"543f42ea1e75097aed480d3a67a0aa8e19d1a272e521c23025791ed7277ea0c3","signature":"cf12adcabc21a78f86cd85a5664b5b732ea7adf40ac35effb184f6a38d24613f"},{"version":"7a357c0dca0d7fb2934cf91759ed2d5e76c72f3087533552747463994c01ce5a","signature":"d142792cb92d040c3d270bceff519263591adf1d263038315b27e9408edac4c6"},{"version":"9d35a3d41ea289a2acafebf386609f991a75dcaffcee4fc3a5bd8ad5f591486f","signature":"245d432556f3a3b5b7041ad110754a4e0a0f9e713dd5e24f2af89b97715036c2"},{"version":"7f5874c3ce1b4a4c7ee265d3a3ffe107c8c5e64299df01b553fd295077a7c650","signature":"fdcc20b32d651d1da921522d2e91cd637cf1108e1e85d4ac7afbca42270a932a"},"83051665180f9c040ce9f0468f62e85c7644ab41cde1c14219603848afb839de",{"version":"6c7176368037af28cb72f2392010fa1cef295d6d6744bca8cfb54985f3a18c3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"437e20f2ba32abaeb7985e0afe0002de1917bc74e949ba585e49feba65da6ca1","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"98cffbf06d6bab333473c70a893770dbe990783904002c4f1a960447b4b53dca","affectsGlobalScope":true,"impliedFormat":1},{"version":"3af97acf03cc97de58a3a4bc91f8f616408099bc4233f6d0852e72a8ffb91ac9","affectsGlobalScope":true,"impliedFormat":1},{"version":"808069bba06b6768b62fd22429b53362e7af342da4a236ed2d2e1c89fcca3b4a","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","affectsGlobalScope":true,"impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"763fe0f42b3d79b440a9b6e51e9ba3f3f91352469c1e4b3b67bfa4ff6352f3f4","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"7f182617db458e98fc18dfb272d40aa2fff3a353c44a89b2c0ccb3937709bfb5","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"2cbe0621042e2a68c7cbce5dfed3906a1862a16a7d496010636cdbdb91341c0f","affectsGlobalScope":true,"impliedFormat":1},{"version":"f9501cc13ce624c72b61f12b3963e84fad210fbdf0ffbc4590e08460a3f04eba","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"df48adbf5b82b79ed989ec3bef2979d988b94978907fd86b4f30ba2b668e49de","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"2b06b93fd01bcd49d1a6bd1f9b65ddcae6480b9a86e9061634d6f8e354c1468f","impliedFormat":1},{"version":"6a0cd27e5dc2cfbe039e731cf879d12b0e2dded06d1b1dedad07f7712de0d7f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"13f5c844119c43e51ce777c509267f14d6aaf31eafb2c2b002ca35584cd13b29","impliedFormat":1},{"version":"e60477649d6ad21542bd2dc7e3d9ff6853d0797ba9f689ba2f6653818999c264","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"4c829ab315f57c5442c6667b53769975acbf92003a66aef19bce151987675bd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"b2ade7657e2db96d18315694789eff2ddd3d8aea7215b181f8a0b303277cc579","impliedFormat":1},{"version":"9855e02d837744303391e5623a531734443a5f8e6e8755e018c41d63ad797db2","impliedFormat":1},{"version":"6851b67b164a1e84add721ea67ac52696b5aee426b800f68283c6a13046f95ec","impliedFormat":1},{"version":"836a356aae992ff3c28a0212e3eabcb76dd4b0cc06bcb9607aeef560661b860d","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"41670ee38943d9cbb4924e436f56fc19ee94232bc96108562de1a734af20dc2c","affectsGlobalScope":true,"impliedFormat":1},{"version":"c906fb15bd2aabc9ed1e3f44eb6a8661199d6c320b3aa196b826121552cb3695","impliedFormat":1},{"version":"22295e8103f1d6d8ea4b5d6211e43421fe4564e34d0dd8e09e520e452d89e659","impliedFormat":1},{"version":"a0c4ff5309f0108772562412d15aaa15b32f5db3326288a4490fd461f66a95c8","impliedFormat":1},{"version":"6b4e081d55ac24fc8a4631d5dd77fe249fa25900abd7d046abb87d90e3b45645","impliedFormat":1},{"version":"a10f0e1854f3316d7ee437b79649e5a6ae3ae14ffe6322b02d4987071a95362e","impliedFormat":1},{"version":"ed58b9974bb3114f39806c9c2c6258c4ffa6a255921976a7c53dfa94bf178f42","impliedFormat":1},{"version":"e6fa9ad47c5f71ff733744a029d1dc472c618de53804eae08ffc243b936f87ff","affectsGlobalScope":true,"impliedFormat":1},{"version":"b57f8f7247d878e1bb5c329acbd4c1ad8efb073f4ffa6dc120d52924b1e30e40","impliedFormat":1},{"version":"24826ed94a78d5c64bd857570fdbd96229ad41b5cb654c08d75a9845e3ab7dde","impliedFormat":1},{"version":"45875bcae57270aeb3ebc73a5e3fb4c7b9d91d6b045f107c1d8513c28ece71c0","impliedFormat":1},{"version":"928af3d90454bf656a52a48679f199f64c1435247d6189d1caf4c68f2eaf921f","affectsGlobalScope":true,"impliedFormat":1},{"version":"1006bd26bab1e32617bf91a999b28a939666d7eee1f46c1047d9c11b4d2f3fcf","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"933921f0bb0ec12ef45d1062a1fc0f27635318f4d294e4d99de9a5493e618ca2","impliedFormat":1},{"version":"71a0f3ad612c123b57239a7749770017ecfe6b66411488000aba83e4546fde25","impliedFormat":1},{"version":"77fbe5eecb6fac4b6242bbf6eebfc43e98ce5ccba8fa44e0ef6a95c945ff4d98","impliedFormat":1},{"version":"4f9d8ca0c417b67b69eeb54c7ca1bedd7b56034bb9bfd27c5d4f3bc4692daca7","impliedFormat":1},{"version":"814118df420c4e38fe5ae1b9a3bafb6e9c2aa40838e528cde908381867be6466","impliedFormat":1},{"version":"248bc21b92f51ce0b8a67140f2e55887c5f598095e9a790a05fdd2729b531e7a","impliedFormat":1},{"version":"f27524f4bef4b6519c604bdb23bf4465bddcccbf3f003abb901acbd0d7404d99","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"45650f47bfb376c8a8ed39d4bcda5902ab899a3150029684ee4c10676d9fbaee","impliedFormat":1},{"version":"dba28a419aec76ed864ef43e5f577a5c99a010c32e5949fe4e17a4d57c58dd11","affectsGlobalScope":true,"impliedFormat":1},{"version":"18fd40412d102c5564136f29735e5d1c3b455b8a37f920da79561f1fde068208","impliedFormat":1},{"version":"c959a391a75be9789b43c8468f71e3fa06488b4d691d5729dde1416dcd38225b","impliedFormat":1},{"version":"f0be1b8078cd549d91f37c30c222c2a187ac1cf981d994fb476a1adc61387b14","affectsGlobalScope":true,"impliedFormat":1},{"version":"0aaed1d72199b01234152f7a60046bc947f1f37d78d182e9ae09c4289e06a592","impliedFormat":1},{"version":"8c66347a2f5b28e579a306672633dd900751e72bb5c3150ceb10b1fcfcf3d12d","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"ea2e8e586844e2ebda7986fd859c4c7b283dc90198cd485250498a5412db27a0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4bf07b8f59b43670a28f14d0d5668a5f4abfe106d481fad660f8a1010529609a","affectsGlobalScope":true,"impliedFormat":1},{"version":"ea08a0345023ade2b47fbff5a76d0d0ed8bff10bc9d22b83f40858a8e941501c","impliedFormat":1},{"version":"47613031a5a31510831304405af561b0ffaedb734437c595256bb61a90f9311b","impliedFormat":1},{"version":"ae062ce7d9510060c5d7e7952ae379224fb3f8f2dd74e88959878af2057c143b","impliedFormat":1},{"version":"71122b94871f11a2be216426470523b679a318b08b34dab23e5e4ba9bdf54c23","affectsGlobalScope":true,"impliedFormat":1},{"version":"02aa5feb7aaa41b25b86c7a873839a799d4c6beee4f7d1789aa338905554e495","impliedFormat":1},{"version":"bdf1feb266c87edbee61f12ceaaef60ab0e2e5dba70ca19360b6448911c53d52","impliedFormat":1},{"version":"104c67f0da1bdf0d94865419247e20eded83ce7f9911a1aa75fc675c077ca66e","impliedFormat":1},{"version":"cc0d0b339f31ce0ab3b7a5b714d8e578ce698f1e13d7f8c60bfb766baeb1d35c","impliedFormat":1},{"version":"f9e22729fa06ed20f8b1fe60670b7c74933fdfd44d869ddfb1919c15a5cf12fb","impliedFormat":1},{"version":"0ae65c3e977c81f6e46ae9028ae97fc75c78c70f4d6d5f961a8af60301145af6","impliedFormat":99},{"version":"b1a6683b821c624d63d887dbdd9f34aebb9de586acf87bbf50cb16f5ec2c36c7","impliedFormat":99},{"version":"b78cd10245a90e27e62d0558564f5d9a16576294eee724a59ae21b91f9269e4a","impliedFormat":1},{"version":"17f0ae35f62a9586cade6c10e5a0d61362257b8e03e661c49ca417e4f3da857d","impliedFormat":1},{"version":"2f5747b1508ccf83fad0c251ba1e5da2f5a30b78b09ffa1cfaf633045160afed","impliedFormat":1},{"version":"a45c25e77c911c1f2a04cade78f6f42b4d7d896a3882d4e226efd3a3fcd5f2c4","affectsGlobalScope":true,"impliedFormat":1},{"version":"689be50b735f145624c6f391042155ae2ff6b90a93bac11ca5712bc866f6010c","impliedFormat":1},{"version":"151ff381ef9ff8da2da9b9663ebf657eac35c4c9a19183420c05728f31a6761d","impliedFormat":1},{"version":"b71c603a539078a5e3a039b20f2b0a0d1708967530cf97dec8850a9ca45baa2b","impliedFormat":1},{"version":"0e13570a7e86c6d83dd92e81758a930f63747483e2cd34ef36fcdb47d1f9726a","impliedFormat":1},{"version":"5c45abf1e13e4463eacfd5dedda06855da8748a6a6cb3334f582b52e219acc04","impliedFormat":1},{"version":"ee65fe452abe1309389c5f50710f24114e08a302d40708101c4aa950a2a7d044","impliedFormat":1},{"version":"f9649058dc6542f821894390c2358cd71c9350bae97478eff06d9a39c8b082a4","impliedFormat":1},{"version":"f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","impliedFormat":1},{"version":"d3f2d715f57df3f04bf7b16dde01dec10366f64fce44503c92b8f78f614c1769","impliedFormat":1},{"version":"8841e2aa774b89bd23302dede20663306dc1b9902431ac64b24be8b8d0e3f649","impliedFormat":1},{"version":"fbca5ffaebf282ec3cdac47b0d1d4a138a8b0bb32105251a38acb235087d3318","impliedFormat":1},{"version":"90ebf5865e27d8966ef44b073e6e83b0ddd45058bab1d58b1e4b5a47d36396c4","affectsGlobalScope":true,"impliedFormat":1},{"version":"8b5402ae709d042c3530ed3506c135a967159f42aed3221267e70c5b7240b577","impliedFormat":1},{"version":"22293bd6fa12747929f8dfca3ec1684a3fe08638aa18023dd286ab337e88a592","impliedFormat":1},{"version":"916be7d770b0ae0406be9486ac12eb9825f21514961dd050594c4b250617d5a8","impliedFormat":1},{"version":"510616459e6edd01acbce333fb256e06bdffdad43ca233a9090164bf8bb83912","impliedFormat":1},{"version":"ddef25f825320de051dcb0e62ffce621b41c67712b5b4105740c32fd83f4c449","impliedFormat":1},{"version":"1b3dffaa4ca8e38ac434856843505af767a614d187fb3a5ef4fcebb023c355aa","impliedFormat":1},{"version":"9a2eaab4e54953c6b2ba21f7ac4c2593859da03917011c10a2acd8864e38e7b2","impliedFormat":1}],"root":[[64,80]],"options":{"allowJs":true,"composite":true,"declaration":true,"esModuleInterop":true,"module":1,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","rootDir":"../..","skipLibCheck":true,"target":9},"referencedMap":[[185,1],[186,2],[193,3],[184,4],[194,5],[192,6],[197,7],[198,5],[195,5],[199,8],[200,5],[201,5],[202,5],[203,5],[204,5],[205,9],[131,10],[132,10],[133,11],[86,12],[134,13],[135,14],[136,15],[81,5],[84,16],[82,5],[83,5],[137,17],[138,18],[139,19],[140,20],[141,21],[142,22],[143,22],[144,23],[145,24],[146,25],[147,26],[87,5],[85,5],[148,27],[149,28],[150,29],[183,30],[151,31],[152,32],[153,33],[154,34],[155,35],[156,36],[157,37],[158,38],[159,39],[160,40],[161,40],[162,41],[163,5],[164,42],[165,43],[167,44],[166,45],[168,46],[169,47],[170,48],[171,49],[172,50],[173,51],[174,52],[175,53],[176,54],[177,55],[178,56],[179,57],[180,58],[88,5],[89,5],[90,5],[128,59],[129,5],[130,5],[181,60],[182,61],[206,5],[207,5],[190,5],[191,5],[208,5],[189,62],[209,63],[196,64],[210,4],[211,65],[187,5],[188,66],[61,5],[62,5],[12,5],[10,5],[11,5],[16,5],[15,5],[2,5],[17,5],[18,5],[19,5],[20,5],[21,5],[22,5],[23,5],[24,5],[3,5],[25,5],[26,5],[4,5],[27,5],[31,5],[28,5],[29,5],[30,5],[32,5],[33,5],[34,5],[5,5],[35,5],[36,5],[37,5],[38,5],[6,5],[42,5],[39,5],[40,5],[41,5],[43,5],[7,5],[44,5],[49,5],[50,5],[45,5],[46,5],[47,5],[48,5],[8,5],[54,5],[51,5],[52,5],[53,5],[55,5],[9,5],[56,5],[63,5],[57,5],[58,5],[60,5],[59,5],[1,5],[14,5],[13,5],[106,67],[116,68],[105,67],[126,69],[97,70],[96,71],[125,9],[119,72],[124,73],[99,74],[113,75],[98,76],[122,77],[94,78],[93,9],[123,79],[95,80],[100,81],[101,5],[104,81],[91,5],[127,82],[117,83],[108,84],[109,85],[111,86],[107,87],[110,88],[120,9],[102,89],[103,90],[112,91],[92,92],[115,83],[114,81],[118,5],[121,93],[66,94],[69,5],[70,95],[71,96],[67,97],[65,5],[68,97],[77,98],[75,99],[74,100],[76,101],[78,102],[79,103],[73,5],[72,104],[64,5],[80,5]],"latestChangedDtsFile":"./js/index.d.ts","version":"5.9.3"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
import * as path from "node:path";
|
|
2
|
-
import * as fs from "node:fs/promises";
|
|
3
|
-
import { fileURLToPath } from "node:url";
|
|
4
|
-
import { dirname } from "node:path";
|
|
5
|
-
import * as utxolib from "@bitgo/utxo-lib";
|
|
6
|
-
import assert from "node:assert";
|
|
7
|
-
import { utxolibCompat, address as addressNs, } from "../../js/index.js";
|
|
8
|
-
const __filename = fileURLToPath(import.meta.url);
|
|
9
|
-
const __dirname = dirname(__filename);
|
|
10
|
-
function getCoinNameForNetwork(name) {
|
|
11
|
-
switch (name) {
|
|
12
|
-
case "bitcoin":
|
|
13
|
-
return "btc";
|
|
14
|
-
case "testnet":
|
|
15
|
-
return "tbtc";
|
|
16
|
-
case "bitcoinTestnet4":
|
|
17
|
-
return "tbtc4";
|
|
18
|
-
case "bitcoinPublicSignet":
|
|
19
|
-
return "tbtcsig";
|
|
20
|
-
case "bitcoinBitGoSignet":
|
|
21
|
-
return "tbtcbgsig";
|
|
22
|
-
case "bitcoincash":
|
|
23
|
-
return "bch";
|
|
24
|
-
case "bitcoincashTestnet":
|
|
25
|
-
return "tbch";
|
|
26
|
-
case "ecash":
|
|
27
|
-
return "bcha";
|
|
28
|
-
case "ecashTest":
|
|
29
|
-
return "tbcha";
|
|
30
|
-
case "bitcoingold":
|
|
31
|
-
return "btg";
|
|
32
|
-
case "bitcoingoldTestnet":
|
|
33
|
-
return "tbtg";
|
|
34
|
-
case "bitcoinsv":
|
|
35
|
-
return "bsv";
|
|
36
|
-
case "bitcoinsvTestnet":
|
|
37
|
-
return "tbsv";
|
|
38
|
-
case "dash":
|
|
39
|
-
return "dash";
|
|
40
|
-
case "dashTest":
|
|
41
|
-
return "tdash";
|
|
42
|
-
case "dogecoin":
|
|
43
|
-
return "doge";
|
|
44
|
-
case "dogecoinTest":
|
|
45
|
-
return "tdoge";
|
|
46
|
-
case "litecoin":
|
|
47
|
-
return "ltc";
|
|
48
|
-
case "litecoinTest":
|
|
49
|
-
return "tltc";
|
|
50
|
-
case "zcash":
|
|
51
|
-
return "zec";
|
|
52
|
-
case "zcashTest":
|
|
53
|
-
return "tzec";
|
|
54
|
-
default:
|
|
55
|
-
throw new Error(`Unknown network: ${name}`);
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
async function getFixtures(name, addressFormat) {
|
|
59
|
-
if (name === "bitcoinBitGoSignet") {
|
|
60
|
-
name = "bitcoinPublicSignet";
|
|
61
|
-
}
|
|
62
|
-
const filename = addressFormat ? `${name}-${addressFormat}` : name;
|
|
63
|
-
const fixturePath = path.join(__dirname, "..", "fixtures", "address", `${filename}.json`);
|
|
64
|
-
const fixtures = await fs.readFile(fixturePath, "utf8");
|
|
65
|
-
return JSON.parse(fixtures);
|
|
66
|
-
}
|
|
67
|
-
function runTest(network, addressFormat) {
|
|
68
|
-
const name = utxolib.getNetworkName(network);
|
|
69
|
-
describe(`utxolibCompat ${name} ${addressFormat ?? "default"}`, function () {
|
|
70
|
-
let fixtures;
|
|
71
|
-
before(async function () {
|
|
72
|
-
fixtures = await getFixtures(name, addressFormat);
|
|
73
|
-
});
|
|
74
|
-
it("should convert to utxolib compatible network", function () {
|
|
75
|
-
for (const fixture of fixtures) {
|
|
76
|
-
const [, script, addressRef] = fixture;
|
|
77
|
-
const scriptBuf = Buffer.from(script, "hex");
|
|
78
|
-
const address = utxolibCompat.fromOutputScript(scriptBuf, network, addressFormat);
|
|
79
|
-
assert.strictEqual(address, addressRef);
|
|
80
|
-
const scriptFromAddress = utxolibCompat.toOutputScript(address, network, addressFormat);
|
|
81
|
-
assert.deepStrictEqual(Buffer.from(scriptFromAddress), scriptBuf);
|
|
82
|
-
}
|
|
83
|
-
});
|
|
84
|
-
it("should convert using coin name", function () {
|
|
85
|
-
const coinName = getCoinNameForNetwork(name);
|
|
86
|
-
for (const fixture of fixtures) {
|
|
87
|
-
const [, script, addressRef] = fixture;
|
|
88
|
-
const scriptBuf = Buffer.from(script, "hex");
|
|
89
|
-
// Test encoding (script -> address)
|
|
90
|
-
const address = addressNs.fromOutputScriptWithCoin(scriptBuf, coinName, addressFormat);
|
|
91
|
-
assert.strictEqual(address, addressRef);
|
|
92
|
-
// Test decoding (address -> script)
|
|
93
|
-
const scriptFromAddress = addressNs.toOutputScriptWithCoin(addressRef, coinName);
|
|
94
|
-
assert.deepStrictEqual(Buffer.from(scriptFromAddress), scriptBuf);
|
|
95
|
-
}
|
|
96
|
-
});
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
describe("utxolib compatible address encoding/decoding", function () {
|
|
100
|
-
utxolib.getNetworkList().forEach((network) => {
|
|
101
|
-
runTest(network);
|
|
102
|
-
const mainnet = utxolib.getMainnet(network);
|
|
103
|
-
if (mainnet === utxolib.networks.bitcoincash || mainnet === utxolib.networks.ecash) {
|
|
104
|
-
runTest(network, "cashaddr");
|
|
105
|
-
}
|
|
106
|
-
});
|
|
107
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import * as assert from "assert";
|
|
2
|
-
import { formatNode } from "../../js/ast/index.js";
|
|
3
|
-
describe("formatNode", function () {
|
|
4
|
-
it("formats simple nodes", function () {
|
|
5
|
-
assert.strictEqual(formatNode({ pk: "lol" }), "pk(lol)");
|
|
6
|
-
assert.strictEqual(formatNode({ after: 1 }), "after(1)");
|
|
7
|
-
assert.strictEqual(formatNode({ and_v: [{ after: 1 }, { after: 1 }] }), "and_v(after(1),after(1))");
|
|
8
|
-
// taproot single key
|
|
9
|
-
assert.strictEqual(formatNode({ tr: "k" }), "tr(k)");
|
|
10
|
-
// key with single-node taproot tree
|
|
11
|
-
assert.strictEqual(formatNode({ tr: ["k", { pk: "k1" }] }), "tr(k,pk(k1))");
|
|
12
|
-
// key with multi-node taproot tree
|
|
13
|
-
assert.strictEqual(formatNode({ tr: ["k", [{ pk: "k1" }, { pk: "k2" }]] }), "tr(k,{pk(k1),pk(k2)})");
|
|
14
|
-
});
|
|
15
|
-
});
|
package/dist/esm/test/bip32.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/dist/esm/test/bip32.js
DELETED
|
@@ -1,242 +0,0 @@
|
|
|
1
|
-
import * as assert from "assert";
|
|
2
|
-
import { bip32 as utxolibBip32 } from "@bitgo/utxo-lib";
|
|
3
|
-
import { BIP32 } from "../js/bip32.js";
|
|
4
|
-
const bip32 = { BIP32 };
|
|
5
|
-
describe("WasmBIP32", () => {
|
|
6
|
-
it("should create from base58 xpub", () => {
|
|
7
|
-
const xpub = "xpub6D4BDPcP2GT577Vvch3R8wDkScZWzQzMMUm3PWbmWvVJrZwQY4VUNgqFJPMM3No2dFDFGTsxxpG5uJh7n7epu4trkrX7x7DogT5Uv6fcLW5";
|
|
8
|
-
const key = bip32.BIP32.fromBase58(xpub);
|
|
9
|
-
assert.strictEqual(key.isNeutered(), true);
|
|
10
|
-
assert.strictEqual(key.depth, 3);
|
|
11
|
-
assert.strictEqual(key.toBase58(), xpub);
|
|
12
|
-
// Verify properties exist
|
|
13
|
-
assert.ok(key.chainCode instanceof Uint8Array);
|
|
14
|
-
assert.ok(key.publicKey instanceof Uint8Array);
|
|
15
|
-
assert.ok(key.identifier instanceof Uint8Array);
|
|
16
|
-
assert.ok(key.fingerprint instanceof Uint8Array);
|
|
17
|
-
assert.strictEqual(key.privateKey, undefined);
|
|
18
|
-
});
|
|
19
|
-
it("should create from base58 xprv", () => {
|
|
20
|
-
const xprv = "xprv9s21ZrQH143K3QTDL4LXw2F7HEK3wJUD2nW2nRk4stbPy6cq3jPPqjiChkVvvNKmPGJxWUtg6LnF5kejMRNNU3TGtRBeJgk33yuGBxrMPHi";
|
|
21
|
-
const key = bip32.BIP32.fromBase58(xprv);
|
|
22
|
-
assert.strictEqual(key.isNeutered(), false);
|
|
23
|
-
assert.strictEqual(key.depth, 0);
|
|
24
|
-
assert.strictEqual(key.toBase58(), xprv);
|
|
25
|
-
// Verify properties exist
|
|
26
|
-
assert.ok(key.chainCode instanceof Uint8Array);
|
|
27
|
-
assert.ok(key.publicKey instanceof Uint8Array);
|
|
28
|
-
assert.ok(key.privateKey instanceof Uint8Array);
|
|
29
|
-
assert.ok(key.identifier instanceof Uint8Array);
|
|
30
|
-
assert.ok(key.fingerprint instanceof Uint8Array);
|
|
31
|
-
});
|
|
32
|
-
it("should derive child keys", () => {
|
|
33
|
-
const xpub = "xpub6D4BDPcP2GT577Vvch3R8wDkScZWzQzMMUm3PWbmWvVJrZwQY4VUNgqFJPMM3No2dFDFGTsxxpG5uJh7n7epu4trkrX7x7DogT5Uv6fcLW5";
|
|
34
|
-
const key = bip32.BIP32.fromBase58(xpub);
|
|
35
|
-
const child = key.derive(0);
|
|
36
|
-
assert.strictEqual(child.depth, 4);
|
|
37
|
-
assert.strictEqual(child.isNeutered(), true);
|
|
38
|
-
});
|
|
39
|
-
it("should derive using path", () => {
|
|
40
|
-
const xprv = "xprv9s21ZrQH143K3QTDL4LXw2F7HEK3wJUD2nW2nRk4stbPy6cq3jPPqjiChkVvvNKmPGJxWUtg6LnF5kejMRNNU3TGtRBeJgk33yuGBxrMPHi";
|
|
41
|
-
const key = bip32.BIP32.fromBase58(xprv);
|
|
42
|
-
const derived1 = key.derivePath("0/1/2");
|
|
43
|
-
assert.strictEqual(derived1.depth, 3);
|
|
44
|
-
const derived2 = key.derivePath("m/0/1/2");
|
|
45
|
-
assert.strictEqual(derived2.depth, 3);
|
|
46
|
-
// Both should produce the same result
|
|
47
|
-
assert.strictEqual(derived1.toBase58(), derived2.toBase58());
|
|
48
|
-
});
|
|
49
|
-
it("should neutered a private key", () => {
|
|
50
|
-
const xprv = "xprv9s21ZrQH143K3QTDL4LXw2F7HEK3wJUD2nW2nRk4stbPy6cq3jPPqjiChkVvvNKmPGJxWUtg6LnF5kejMRNNU3TGtRBeJgk33yuGBxrMPHi";
|
|
51
|
-
const key = bip32.BIP32.fromBase58(xprv);
|
|
52
|
-
const neuteredKey = key.neutered();
|
|
53
|
-
assert.strictEqual(neuteredKey.isNeutered(), true);
|
|
54
|
-
assert.strictEqual(neuteredKey.privateKey, undefined);
|
|
55
|
-
assert.ok(neuteredKey.publicKey instanceof Uint8Array);
|
|
56
|
-
});
|
|
57
|
-
it("should derive hardened keys from private key", () => {
|
|
58
|
-
const xprv = "xprv9s21ZrQH143K3QTDL4LXw2F7HEK3wJUD2nW2nRk4stbPy6cq3jPPqjiChkVvvNKmPGJxWUtg6LnF5kejMRNNU3TGtRBeJgk33yuGBxrMPHi";
|
|
59
|
-
const key = bip32.BIP32.fromBase58(xprv);
|
|
60
|
-
const hardened = key.deriveHardened(0);
|
|
61
|
-
assert.strictEqual(hardened.depth, 1);
|
|
62
|
-
assert.strictEqual(hardened.isNeutered(), false);
|
|
63
|
-
});
|
|
64
|
-
it("should fail to derive hardened from public key", () => {
|
|
65
|
-
const xpub = "xpub6D4BDPcP2GT577Vvch3R8wDkScZWzQzMMUm3PWbmWvVJrZwQY4VUNgqFJPMM3No2dFDFGTsxxpG5uJh7n7epu4trkrX7x7DogT5Uv6fcLW5";
|
|
66
|
-
const key = bip32.BIP32.fromBase58(xpub);
|
|
67
|
-
assert.throws(() => {
|
|
68
|
-
key.deriveHardened(0);
|
|
69
|
-
});
|
|
70
|
-
});
|
|
71
|
-
it("should export to WIF", () => {
|
|
72
|
-
const xprv = "xprv9s21ZrQH143K3QTDL4LXw2F7HEK3wJUD2nW2nRk4stbPy6cq3jPPqjiChkVvvNKmPGJxWUtg6LnF5kejMRNNU3TGtRBeJgk33yuGBxrMPHi";
|
|
73
|
-
const key = bip32.BIP32.fromBase58(xprv);
|
|
74
|
-
const wif = key.toWIF();
|
|
75
|
-
assert.ok(typeof wif === "string");
|
|
76
|
-
assert.ok(wif.length > 0);
|
|
77
|
-
});
|
|
78
|
-
it("should fail to export WIF from public key", () => {
|
|
79
|
-
const xpub = "xpub6D4BDPcP2GT577Vvch3R8wDkScZWzQzMMUm3PWbmWvVJrZwQY4VUNgqFJPMM3No2dFDFGTsxxpG5uJh7n7epu4trkrX7x7DogT5Uv6fcLW5";
|
|
80
|
-
const key = bip32.BIP32.fromBase58(xpub);
|
|
81
|
-
assert.throws(() => {
|
|
82
|
-
key.toWIF();
|
|
83
|
-
});
|
|
84
|
-
});
|
|
85
|
-
it("should create from seed", () => {
|
|
86
|
-
const seed = new Uint8Array(32);
|
|
87
|
-
for (let i = 0; i < 32; i++) {
|
|
88
|
-
seed[i] = i;
|
|
89
|
-
}
|
|
90
|
-
const key = bip32.BIP32.fromSeed(seed);
|
|
91
|
-
assert.strictEqual(key.depth, 0);
|
|
92
|
-
assert.strictEqual(key.isNeutered(), false);
|
|
93
|
-
assert.ok(key.privateKey instanceof Uint8Array);
|
|
94
|
-
});
|
|
95
|
-
it("should create from seed with network", () => {
|
|
96
|
-
const seed = new Uint8Array(32);
|
|
97
|
-
for (let i = 0; i < 32; i++) {
|
|
98
|
-
seed[i] = i;
|
|
99
|
-
}
|
|
100
|
-
const key = bip32.BIP32.fromSeed(seed, "BitcoinTestnet3");
|
|
101
|
-
assert.strictEqual(key.depth, 0);
|
|
102
|
-
assert.strictEqual(key.isNeutered(), false);
|
|
103
|
-
assert.ok(key.toBase58().startsWith("tprv"));
|
|
104
|
-
});
|
|
105
|
-
});
|
|
106
|
-
describe("WasmBIP32 parity with utxolib", () => {
|
|
107
|
-
function bufferEqual(a, b) {
|
|
108
|
-
if (a.length !== b.length)
|
|
109
|
-
return false;
|
|
110
|
-
for (let i = 0; i < a.length; i++) {
|
|
111
|
-
if (a[i] !== b[i])
|
|
112
|
-
return false;
|
|
113
|
-
}
|
|
114
|
-
return true;
|
|
115
|
-
}
|
|
116
|
-
it("should match utxolib when creating from base58 xpub", () => {
|
|
117
|
-
const xpub = "xpub6D4BDPcP2GT577Vvch3R8wDkScZWzQzMMUm3PWbmWvVJrZwQY4VUNgqFJPMM3No2dFDFGTsxxpG5uJh7n7epu4trkrX7x7DogT5Uv6fcLW5";
|
|
118
|
-
const wasmKey = bip32.BIP32.fromBase58(xpub);
|
|
119
|
-
const utxolibKey = utxolibBip32.fromBase58(xpub);
|
|
120
|
-
// Compare all properties
|
|
121
|
-
assert.strictEqual(wasmKey.toBase58(), utxolibKey.toBase58());
|
|
122
|
-
assert.strictEqual(wasmKey.depth, utxolibKey.depth);
|
|
123
|
-
assert.strictEqual(wasmKey.index, utxolibKey.index);
|
|
124
|
-
assert.strictEqual(wasmKey.parentFingerprint, utxolibKey.parentFingerprint);
|
|
125
|
-
assert.strictEqual(wasmKey.isNeutered(), utxolibKey.isNeutered());
|
|
126
|
-
assert.ok(bufferEqual(wasmKey.chainCode, utxolibKey.chainCode));
|
|
127
|
-
assert.ok(bufferEqual(wasmKey.publicKey, utxolibKey.publicKey));
|
|
128
|
-
assert.ok(bufferEqual(wasmKey.identifier, utxolibKey.identifier));
|
|
129
|
-
assert.ok(bufferEqual(wasmKey.fingerprint, utxolibKey.fingerprint));
|
|
130
|
-
});
|
|
131
|
-
it("should match utxolib when creating from base58 xprv", () => {
|
|
132
|
-
const xprv = "xprv9s21ZrQH143K3QTDL4LXw2F7HEK3wJUD2nW2nRk4stbPy6cq3jPPqjiChkVvvNKmPGJxWUtg6LnF5kejMRNNU3TGtRBeJgk33yuGBxrMPHi";
|
|
133
|
-
const wasmKey = bip32.BIP32.fromBase58(xprv);
|
|
134
|
-
const utxolibKey = utxolibBip32.fromBase58(xprv);
|
|
135
|
-
// Compare all properties
|
|
136
|
-
assert.strictEqual(wasmKey.toBase58(), utxolibKey.toBase58());
|
|
137
|
-
assert.strictEqual(wasmKey.depth, utxolibKey.depth);
|
|
138
|
-
assert.strictEqual(wasmKey.index, utxolibKey.index);
|
|
139
|
-
assert.strictEqual(wasmKey.parentFingerprint, utxolibKey.parentFingerprint);
|
|
140
|
-
assert.strictEqual(wasmKey.isNeutered(), utxolibKey.isNeutered());
|
|
141
|
-
assert.ok(bufferEqual(wasmKey.chainCode, utxolibKey.chainCode));
|
|
142
|
-
assert.ok(bufferEqual(wasmKey.publicKey, utxolibKey.publicKey));
|
|
143
|
-
assert.ok(bufferEqual(wasmKey.identifier, utxolibKey.identifier));
|
|
144
|
-
assert.ok(bufferEqual(wasmKey.fingerprint, utxolibKey.fingerprint));
|
|
145
|
-
assert.ok(wasmKey.privateKey &&
|
|
146
|
-
utxolibKey.privateKey &&
|
|
147
|
-
bufferEqual(wasmKey.privateKey, utxolibKey.privateKey));
|
|
148
|
-
});
|
|
149
|
-
it("should match utxolib when deriving normal child keys", () => {
|
|
150
|
-
const xprv = "xprv9s21ZrQH143K3QTDL4LXw2F7HEK3wJUD2nW2nRk4stbPy6cq3jPPqjiChkVvvNKmPGJxWUtg6LnF5kejMRNNU3TGtRBeJgk33yuGBxrMPHi";
|
|
151
|
-
const wasmKey = bip32.BIP32.fromBase58(xprv);
|
|
152
|
-
const utxolibKey = utxolibBip32.fromBase58(xprv);
|
|
153
|
-
// Derive several children and compare
|
|
154
|
-
for (const index of [0, 1, 10, 100, 2147483647]) {
|
|
155
|
-
const wasmChild = wasmKey.derive(index);
|
|
156
|
-
const utxolibChild = utxolibKey.derive(index);
|
|
157
|
-
assert.strictEqual(wasmChild.toBase58(), utxolibChild.toBase58(), `Failed at index ${index}`);
|
|
158
|
-
assert.ok(bufferEqual(wasmChild.publicKey, utxolibChild.publicKey));
|
|
159
|
-
assert.ok(bufferEqual(wasmChild.chainCode, utxolibChild.chainCode));
|
|
160
|
-
}
|
|
161
|
-
});
|
|
162
|
-
it("should match utxolib when deriving hardened child keys", () => {
|
|
163
|
-
const xprv = "xprv9s21ZrQH143K3QTDL4LXw2F7HEK3wJUD2nW2nRk4stbPy6cq3jPPqjiChkVvvNKmPGJxWUtg6LnF5kejMRNNU3TGtRBeJgk33yuGBxrMPHi";
|
|
164
|
-
const wasmKey = bip32.BIP32.fromBase58(xprv);
|
|
165
|
-
const utxolibKey = utxolibBip32.fromBase58(xprv);
|
|
166
|
-
// Derive several hardened children and compare
|
|
167
|
-
for (const index of [0, 1, 10, 2147483647]) {
|
|
168
|
-
const wasmChild = wasmKey.deriveHardened(index);
|
|
169
|
-
const utxolibChild = utxolibKey.deriveHardened(index);
|
|
170
|
-
assert.strictEqual(wasmChild.toBase58(), utxolibChild.toBase58(), `Failed at hardened index ${index}`);
|
|
171
|
-
assert.ok(bufferEqual(wasmChild.publicKey, utxolibChild.publicKey));
|
|
172
|
-
assert.ok(bufferEqual(wasmChild.chainCode, utxolibChild.chainCode));
|
|
173
|
-
}
|
|
174
|
-
});
|
|
175
|
-
it("should match utxolib when deriving using paths", () => {
|
|
176
|
-
const xprv = "xprv9s21ZrQH143K3QTDL4LXw2F7HEK3wJUD2nW2nRk4stbPy6cq3jPPqjiChkVvvNKmPGJxWUtg6LnF5kejMRNNU3TGtRBeJgk33yuGBxrMPHi";
|
|
177
|
-
const wasmKey = bip32.BIP32.fromBase58(xprv);
|
|
178
|
-
const utxolibKey = utxolibBip32.fromBase58(xprv);
|
|
179
|
-
const paths = ["0", "0/1", "0/1/2", "m/0/1/2", "0'/1", "m/44'/0'/0'", "m/44'/0'/0'/0/0"];
|
|
180
|
-
for (const path of paths) {
|
|
181
|
-
const wasmDerived = wasmKey.derivePath(path);
|
|
182
|
-
const utxolibDerived = utxolibKey.derivePath(path);
|
|
183
|
-
assert.strictEqual(wasmDerived.toBase58(), utxolibDerived.toBase58(), `Failed at path ${path}`);
|
|
184
|
-
assert.ok(bufferEqual(wasmDerived.publicKey, utxolibDerived.publicKey));
|
|
185
|
-
assert.ok(bufferEqual(wasmDerived.chainCode, utxolibDerived.chainCode));
|
|
186
|
-
}
|
|
187
|
-
});
|
|
188
|
-
it("should match utxolib when deriving from public keys", () => {
|
|
189
|
-
const xpub = "xpub6D4BDPcP2GT577Vvch3R8wDkScZWzQzMMUm3PWbmWvVJrZwQY4VUNgqFJPMM3No2dFDFGTsxxpG5uJh7n7epu4trkrX7x7DogT5Uv6fcLW5";
|
|
190
|
-
const wasmKey = bip32.BIP32.fromBase58(xpub);
|
|
191
|
-
const utxolibKey = utxolibBip32.fromBase58(xpub);
|
|
192
|
-
// Derive several children from public key
|
|
193
|
-
for (const index of [0, 1, 10, 100]) {
|
|
194
|
-
const wasmChild = wasmKey.derive(index);
|
|
195
|
-
const utxolibChild = utxolibKey.derive(index);
|
|
196
|
-
assert.strictEqual(wasmChild.toBase58(), utxolibChild.toBase58());
|
|
197
|
-
assert.ok(bufferEqual(wasmChild.publicKey, utxolibChild.publicKey));
|
|
198
|
-
}
|
|
199
|
-
});
|
|
200
|
-
it("should match utxolib when neutering", () => {
|
|
201
|
-
const xprv = "xprv9s21ZrQH143K3QTDL4LXw2F7HEK3wJUD2nW2nRk4stbPy6cq3jPPqjiChkVvvNKmPGJxWUtg6LnF5kejMRNNU3TGtRBeJgk33yuGBxrMPHi";
|
|
202
|
-
const wasmKey = bip32.BIP32.fromBase58(xprv);
|
|
203
|
-
const utxolibKey = utxolibBip32.fromBase58(xprv);
|
|
204
|
-
const wasmNeutered = wasmKey.neutered();
|
|
205
|
-
const utxolibNeutered = utxolibKey.neutered();
|
|
206
|
-
assert.strictEqual(wasmNeutered.toBase58(), utxolibNeutered.toBase58());
|
|
207
|
-
assert.ok(bufferEqual(wasmNeutered.publicKey, utxolibNeutered.publicKey));
|
|
208
|
-
assert.ok(bufferEqual(wasmNeutered.chainCode, utxolibNeutered.chainCode));
|
|
209
|
-
assert.strictEqual(wasmNeutered.privateKey, undefined);
|
|
210
|
-
});
|
|
211
|
-
it("should match utxolib when exporting to WIF", () => {
|
|
212
|
-
const xprv = "xprv9s21ZrQH143K3QTDL4LXw2F7HEK3wJUD2nW2nRk4stbPy6cq3jPPqjiChkVvvNKmPGJxWUtg6LnF5kejMRNNU3TGtRBeJgk33yuGBxrMPHi";
|
|
213
|
-
const wasmKey = bip32.BIP32.fromBase58(xprv);
|
|
214
|
-
const utxolibKey = utxolibBip32.fromBase58(xprv);
|
|
215
|
-
assert.strictEqual(wasmKey.toWIF(), utxolibKey.toWIF());
|
|
216
|
-
});
|
|
217
|
-
it("should match utxolib for BIP44 wallet derivation (m/44'/0'/0'/0/0)", () => {
|
|
218
|
-
const seed = Buffer.from("fffcf9f6f3f0edeae7e4e1dedbd8d5d2cfccc9c6c3c0bdbab7b4b1aeaba8a5a29f9c999693908d8a8784817e7b7875726f6c696663605d5a5754514e4b484542", "hex");
|
|
219
|
-
const wasmMaster = bip32.BIP32.fromSeed(seed);
|
|
220
|
-
const utxolibMaster = utxolibBip32.fromSeed(seed);
|
|
221
|
-
// Standard BIP44 path for Bitcoin: m/44'/0'/0'/0/0
|
|
222
|
-
const path = "m/44'/0'/0'/0/0";
|
|
223
|
-
const wasmDerived = wasmMaster.derivePath(path);
|
|
224
|
-
const utxolibDerived = utxolibMaster.derivePath(path);
|
|
225
|
-
assert.strictEqual(wasmDerived.toBase58(), utxolibDerived.toBase58());
|
|
226
|
-
assert.ok(bufferEqual(wasmDerived.publicKey, utxolibDerived.publicKey));
|
|
227
|
-
assert.ok(bufferEqual(wasmDerived.chainCode, utxolibDerived.chainCode));
|
|
228
|
-
});
|
|
229
|
-
it("should produce same fingerprint for derived keys", () => {
|
|
230
|
-
const xprv = "xprv9s21ZrQH143K3QTDL4LXw2F7HEK3wJUD2nW2nRk4stbPy6cq3jPPqjiChkVvvNKmPGJxWUtg6LnF5kejMRNNU3TGtRBeJgk33yuGBxrMPHi";
|
|
231
|
-
const wasmKey = bip32.BIP32.fromBase58(xprv);
|
|
232
|
-
const utxolibKey = utxolibBip32.fromBase58(xprv);
|
|
233
|
-
// Derive a child and check its parent fingerprint matches the parent's fingerprint
|
|
234
|
-
const wasmChild = wasmKey.derive(0);
|
|
235
|
-
const utxolibChild = utxolibKey.derive(0);
|
|
236
|
-
// Parent fingerprints should match
|
|
237
|
-
assert.strictEqual(wasmChild.parentFingerprint, utxolibChild.parentFingerprint);
|
|
238
|
-
// The parent fingerprint should match the parent's fingerprint
|
|
239
|
-
const wasmParentFp = new DataView(wasmKey.fingerprint.buffer).getUint32(0, false);
|
|
240
|
-
assert.strictEqual(wasmChild.parentFingerprint, wasmParentFp);
|
|
241
|
-
});
|
|
242
|
-
});
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
export declare const fixtures: {
|
|
2
|
-
valid: ({
|
|
3
|
-
descriptor: string;
|
|
4
|
-
script: string;
|
|
5
|
-
checksumRequired: boolean;
|
|
6
|
-
index?: undefined;
|
|
7
|
-
} | {
|
|
8
|
-
descriptor: string;
|
|
9
|
-
script: string;
|
|
10
|
-
index: number;
|
|
11
|
-
checksumRequired: boolean;
|
|
12
|
-
} | {
|
|
13
|
-
descriptor: string;
|
|
14
|
-
script: string;
|
|
15
|
-
checksumRequired?: undefined;
|
|
16
|
-
index?: undefined;
|
|
17
|
-
})[];
|
|
18
|
-
invalid: ({
|
|
19
|
-
descriptor: string;
|
|
20
|
-
checksumRequired: boolean;
|
|
21
|
-
} | {
|
|
22
|
-
descriptor: string;
|
|
23
|
-
checksumRequired?: undefined;
|
|
24
|
-
})[];
|
|
25
|
-
};
|