@bitgo-beta/sdk-coin-polyx 1.0.1-beta.68 → 1.0.1-beta.680
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/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -1
- package/dist/src/lib/baseBuilder.d.ts +24 -0
- package/dist/src/lib/baseBuilder.d.ts.map +1 -0
- package/dist/src/lib/baseBuilder.js +31 -0
- package/dist/src/lib/batchStakingBuilder.d.ts +79 -0
- package/dist/src/lib/batchStakingBuilder.d.ts.map +1 -0
- package/dist/src/lib/batchStakingBuilder.js +299 -0
- package/dist/src/lib/batchUnstakingBuilder.d.ts +39 -0
- package/dist/src/lib/batchUnstakingBuilder.d.ts.map +1 -0
- package/dist/src/lib/batchUnstakingBuilder.js +127 -0
- package/dist/src/lib/bondExtraBuilder.d.ts +37 -0
- package/dist/src/lib/bondExtraBuilder.d.ts.map +1 -0
- package/dist/src/lib/bondExtraBuilder.js +101 -0
- package/dist/src/lib/constants.d.ts +12 -0
- package/dist/src/lib/constants.d.ts.map +1 -0
- package/dist/src/lib/constants.js +15 -0
- package/dist/src/lib/iface.d.ts +140 -2
- package/dist/src/lib/iface.d.ts.map +1 -1
- package/dist/src/lib/iface.js +37 -1
- package/dist/src/lib/index.d.ts +16 -7
- package/dist/src/lib/index.d.ts.map +1 -1
- package/dist/src/lib/index.js +44 -36
- package/dist/src/lib/preApproveAssetBuilder.d.ts +33 -0
- package/dist/src/lib/preApproveAssetBuilder.d.ts.map +1 -0
- package/dist/src/lib/preApproveAssetBuilder.js +77 -0
- package/dist/src/lib/registerDidWithCDDBuilder.d.ts +34 -0
- package/dist/src/lib/registerDidWithCDDBuilder.d.ts.map +1 -0
- package/dist/src/lib/registerDidWithCDDBuilder.js +83 -0
- package/dist/src/lib/rejectInstructionBuilder.d.ts +29 -0
- package/dist/src/lib/rejectInstructionBuilder.d.ts.map +1 -0
- package/dist/src/lib/rejectInstructionBuilder.js +89 -0
- package/dist/src/lib/tokenTransferBuilder.d.ts +58 -0
- package/dist/src/lib/tokenTransferBuilder.d.ts.map +1 -0
- package/dist/src/lib/tokenTransferBuilder.js +158 -0
- package/dist/src/lib/transaction.d.ts +26 -4
- package/dist/src/lib/transaction.d.ts.map +1 -1
- package/dist/src/lib/transaction.js +183 -7
- package/dist/src/lib/transactionBuilderFactory.d.ts +29 -5
- package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilderFactory.js +119 -8
- package/dist/src/lib/transferBuilder.d.ts +51 -3
- package/dist/src/lib/transferBuilder.d.ts.map +1 -1
- package/dist/src/lib/transferBuilder.js +109 -3
- package/dist/src/lib/txnSchema.d.ts +50 -0
- package/dist/src/lib/txnSchema.d.ts.map +1 -0
- package/dist/src/lib/txnSchema.js +165 -0
- package/dist/src/lib/unbondBuilder.d.ts +37 -0
- package/dist/src/lib/unbondBuilder.d.ts.map +1 -0
- package/dist/src/lib/unbondBuilder.js +98 -0
- package/dist/src/lib/utils.d.ts +15 -14
- package/dist/src/lib/utils.d.ts.map +1 -1
- package/dist/src/lib/utils.js +40 -23
- package/dist/src/lib/withdrawUnbondedBuilder.d.ts +35 -0
- package/dist/src/lib/withdrawUnbondedBuilder.d.ts.map +1 -0
- package/dist/src/lib/withdrawUnbondedBuilder.js +89 -0
- package/dist/src/polyx.d.ts +50 -9
- package/dist/src/polyx.d.ts.map +1 -1
- package/dist/src/polyx.js +269 -15
- package/dist/src/polyxToken.d.ts +20 -0
- package/dist/src/polyxToken.d.ts.map +1 -0
- package/dist/src/polyxToken.js +55 -0
- package/dist/src/register.d.ts.map +1 -1
- package/dist/src/register.js +5 -1
- package/dist/src/resources/index.d.ts +3 -0
- package/dist/src/resources/index.d.ts.map +1 -0
- package/dist/src/resources/index.js +19 -0
- package/dist/src/resources/mainnet.d.ts +13 -0
- package/dist/src/resources/mainnet.d.ts.map +1 -0
- package/dist/src/resources/mainnet.js +16 -0
- package/dist/src/resources/testnet.d.ts +13 -0
- package/dist/src/resources/testnet.d.ts.map +1 -0
- package/dist/src/resources/testnet.js +16 -0
- package/dist/src/tpolyx.d.ts +7 -0
- package/dist/src/tpolyx.d.ts.map +1 -1
- package/dist/src/tpolyx.js +11 -1
- package/dist/test/integration/index.d.ts +1 -0
- package/dist/test/integration/index.d.ts.map +1 -0
- package/dist/test/integration/index.js +1 -0
- package/dist/test/resources/index.d.ts +106 -0
- package/dist/test/resources/index.d.ts.map +1 -0
- package/dist/test/resources/index.js +112 -0
- package/dist/test/resources/mainnet.d.ts +2 -0
- package/dist/test/resources/mainnet.d.ts.map +1 -0
- package/dist/test/resources/mainnet.js +5 -0
- package/dist/test/resources/materialData.json +8 -0
- package/dist/test/resources/materialDataModified.json +8 -0
- package/dist/test/resources/testnet.d.ts +2 -0
- package/dist/test/resources/testnet.d.ts.map +1 -0
- package/dist/test/resources/testnet.js +5 -0
- package/dist/test/resources/wrwUsers.d.ts +19 -0
- package/dist/test/resources/wrwUsers.d.ts.map +1 -0
- package/dist/test/resources/wrwUsers.js +60 -0
- package/dist/test/unit/polyx.d.ts +2 -0
- package/dist/test/unit/polyx.d.ts.map +1 -0
- package/dist/test/unit/polyx.js +209 -0
- package/dist/test/unit/transactionBuilder/base.d.ts +4 -0
- package/dist/test/unit/transactionBuilder/base.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/base.js +245 -0
- package/dist/test/unit/transactionBuilder/batchStakingBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/batchStakingBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/batchStakingBuilder.js +263 -0
- package/dist/test/unit/transactionBuilder/batchUnstakingBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/batchUnstakingBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/batchUnstakingBuilder.js +159 -0
- package/dist/test/unit/transactionBuilder/bondExtraBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/bondExtraBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/bondExtraBuilder.js +158 -0
- package/dist/test/unit/transactionBuilder/preApproveAssetBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/preApproveAssetBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/preApproveAssetBuilder.js +115 -0
- package/dist/test/unit/transactionBuilder/registerDidWithCDDBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/registerDidWithCDDBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/registerDidWithCDDBuilder.js +302 -0
- package/dist/test/unit/transactionBuilder/rejectInstructionBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/rejectInstructionBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/rejectInstructionBuilder.js +128 -0
- package/dist/test/unit/transactionBuilder/singletonRegistry.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/singletonRegistry.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/singletonRegistry.js +59 -0
- package/dist/test/unit/transactionBuilder/tokenTransferBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/tokenTransferBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/tokenTransferBuilder.js +140 -0
- package/dist/test/unit/transactionBuilder/transactionBuilderFactory.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/transactionBuilderFactory.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/transactionBuilderFactory.js +74 -0
- package/dist/test/unit/transactionBuilder/transferBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/transferBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/transferBuilder.js +326 -0
- package/dist/test/unit/transactionBuilder/unbondBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/unbondBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/unbondBuilder.js +144 -0
- package/dist/test/unit/transactionBuilder/withdrawUnbondedBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/withdrawUnbondedBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/withdrawUnbondedBuilder.js +138 -0
- package/dist/test/unit/utils.d.ts +2 -0
- package/dist/test/unit/utils.d.ts.map +1 -0
- package/dist/test/unit/utils.js +143 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +19 -10
- package/.eslintignore +0 -4
- package/.mocharc.yml +0 -8
- package/CHANGELOG.md +0 -16
- package/dist/src/lib/keyPair.d.ts +0 -12
- package/dist/src/lib/keyPair.d.ts.map +0 -1
- package/dist/src/lib/keyPair.js +0 -24
- package/dist/src/lib/transactionBuilder.d.ts +0 -43
- package/dist/src/lib/transactionBuilder.d.ts.map +0 -1
- package/dist/src/lib/transactionBuilder.js +0 -78
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export declare const wrwUser: {
|
|
2
|
+
userKey: string;
|
|
3
|
+
backupKey: string;
|
|
4
|
+
bitgoKey: string;
|
|
5
|
+
walletPassphrase: string;
|
|
6
|
+
walletAddress: string;
|
|
7
|
+
};
|
|
8
|
+
export declare const unsignedSweepUser: {
|
|
9
|
+
userKey: string;
|
|
10
|
+
backupKey: string;
|
|
11
|
+
bitgoKey: string;
|
|
12
|
+
walletPassphrase: string;
|
|
13
|
+
walletAddress: string;
|
|
14
|
+
};
|
|
15
|
+
export declare const testnetBlock: {
|
|
16
|
+
blockNumber: number;
|
|
17
|
+
hash: string;
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=wrwUsers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wrwUsers.d.ts","sourceRoot":"","sources":["../../../test/resources/wrwUsers.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO;;;;;;CA4CnB,CAAC;AAEF,eAAO,MAAM,iBAAiB;;;;;;CAY7B,CAAC;AAEF,eAAO,MAAM,YAAY;;;CAGxB,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.testnetBlock = exports.unsignedSweepUser = exports.wrwUser = void 0;
|
|
4
|
+
exports.wrwUser = {
|
|
5
|
+
userKey: '{"iv":"TR25BHPM0F8OrlhC5UEnUA==","v":1,"iter":10000,"ks":256,"ts":64,"mode"\n' +
|
|
6
|
+
':"ccm","adata":"","cipher":"aes","salt":"uQfN/R/hYaM=","ct":"IzM4WznffhakZk\n' +
|
|
7
|
+
'KwsRxTEcQ7PIcr5f6ro2YXbn1mP/dlMaYlmGOE1fJemchVeuFUWLGphJPMaUz3v4lJbklvRGtTP\n' +
|
|
8
|
+
'F8+JeFSp/ps++wirzlZoAmPOGrOPRg7TkOJXR7xZyBJHeUoV9xu7X1iKGrxhYr70CrzlkrYqlQR\n' +
|
|
9
|
+
'qU8NiV1YbeY+Ra56m9RfeE2HaXk2s9xNzn8mfdOdjkd1sjXwTzv3WPTBWPD35H8EiDbLuVLLOBg\n' +
|
|
10
|
+
'tVPNahBimxffWE5B6keQTN3ezKNTwE0z3B4sBTGHb8wbumhRAO42/BV7MNbvCDPe+GfkqljMu13\n' +
|
|
11
|
+
'u9PAaRb3Y/nK1szIxqN4PpUYP92UYr/QjveuHk37+wxQhljfn81jhkhtGOvnv1EaBhZNJ0PWbrf\n' +
|
|
12
|
+
'E9Xprx8vLmyy8UiGayUvXka2bEZyPksjBpD7chhKbqCj3q5EhJQLUiydLr9/BV50seM1+AQ9w+R\n' +
|
|
13
|
+
'8KjybUgwIF/qTLcaCxVHeAKRzs6LMGj43+l1kTkdaGRre+6MAK2aExZK2FJer49v8htKo7Z6vy+\n' +
|
|
14
|
+
'149DBwTnvCGEDQVXuumKCGX0CCfzbLAMZVKB/Xqdd3e9B99QbVFmPQpeAlJXrOpaoXS90xSSBKs\n' +
|
|
15
|
+
'dbr1wkRHlYB/NvQZwl2sGfIcPJASfWKLFUSXJM7ql1y89llNNSW7RUBcf9tKK5SqmVyGxWZ+1LJ\n' +
|
|
16
|
+
'a5ZEh4BRYh5Kx4IleCQNyZI73XVZE8kyHo07TWwlI8jR8DUIsuF1cBmFRKn2XoikQrDYie/o1zS\n' +
|
|
17
|
+
'1hDMzvF4C9BeacW6iPZ1n9/0OkwgiUIDJGh4vIOei/9U/N2scc8z5+F/yaXXW7COKxqKkx74tqI\n' +
|
|
18
|
+
'ohPm0CTnH2t2cqjK+C5x3FdwiPT+uIzgSU04EZP4gzngZ11yunj7cvw80x9/BK+GwbM97haJ8Je\n' +
|
|
19
|
+
'lMDg5++m6fJlb6weW1Rd6IiUfRSXpio7KQbxZ04UG5uPROAY1xbCJbGQi9OjcyXQKQtL81WkHSr\n' +
|
|
20
|
+
'LGjN/jXCts7OH3xZRaZk66DP6X3LaT0b6qmlem2Uvf+ZIKResF3ivijLYopJWfftamaFDyY+463\n' +
|
|
21
|
+
'uI/WNFWrc7iQWI4Fy3eUezuqBZhiZdWMxuP7yDwLgWr2h3CUNYoLvocrRuye6cI8fjmDWzeTdun\n' +
|
|
22
|
+
'5tSM8OL30hY7aH1n/ZDweng0w5k8i7Znm5LpLaAJzkA7CFV0CXI56s3isJ5CjXJFm"}',
|
|
23
|
+
backupKey: '{"iv":"yoGM9gzwedwMp+D5xfZjuw==","v":1,"iter":10000,"ks":256,"ts":64,"mode"\n' +
|
|
24
|
+
':"ccm","adata":"","cipher":"aes","salt":"bLoJpDYNb1o=","ct":"rK3JZ5VyxqsfgV\n' +
|
|
25
|
+
'JVrR8bddfMe5cy963ntRt3B7l71tvHT8KleNBlzPN6VPrvw1T9KhTHPZ8zDq1pLN39wdrgr4lD4\n' +
|
|
26
|
+
'7+FwsclqQscsi97YW7pTHhWBGGMCKzItXQfeXYCZqvXu/BeV80VWKwso40vZ13pNWmZRhjy/40U\n' +
|
|
27
|
+
'Z0J/Tf+2NuFSEuLKznrgD/oLJaAkYS7d1Bt+GUHWkXnDOsLwqbBL8y5TQJkZrp37nDXXRdP1IE1\n' +
|
|
28
|
+
'MOm2C+GMvboHwm4bpKQRpVURgjyk/7/XWXQ7OUvIFgq324sQbQCHVB/voaRVF+3x7ShRjiGG9sE\n' +
|
|
29
|
+
'W0+XsbbamrXvGiexAGPDM+2kuPe/rBFhJgf4HJnYFAM9sjzWdOIedhkuOokwqgd5OqreVMO/dYF\n' +
|
|
30
|
+
'PGI29cnrov8JpIQw5gArtlgUxOdelg/oCaRUryHCABVPTODbFYygf+3IAgng2M+oEvh26gVFOfz\n' +
|
|
31
|
+
'oPfBoqqXk6/kWpc3zx2byOB+c6Yzhg9sRnF5UobMBl50nklo1kM/24ObmsNCQeVyuZARjQgpbZx\n' +
|
|
32
|
+
'wn5l51knvxmvQXxvwnfsuifje9GkE4Tt+vYu49o3V8vmRaOxcEMnzj5WOC/MOb6QPT4Jx8/J9CB\n' +
|
|
33
|
+
'V4nU+MvgZbDJKMx9kuyJ62PihBy8uSE1JrNgWU3aEkuh9aD5HEoAtyy4tBatRTzOMLSsSr3hii7\n' +
|
|
34
|
+
'pVTBkfEFVzsrHRfIc4FhsnFqSG1yPtxQ68FUeZNM23pCOSJMcbzuP2deEwOCNE5AFIhVZmHg5Yn\n' +
|
|
35
|
+
'CXgcUwAHh+aD+Jv8LMyHq0U6GKkpghu5bptUJcX6oOwUoKD04NWuE6VvK0ZJhSpxxOLeLI4YrwA\n' +
|
|
36
|
+
'tNVo9KAehWPHJfbx4XyBKu+3Z/mIfPJ2rxz7Izdci/BhDKiuHRUynUJ7/8Taxkjqa6RBdFD/avm\n' +
|
|
37
|
+
'Z1a8GyGlxYbnF3OlJUS0Op3lAXBygMyfZqDYbYSfr7ufaIfULAApxXIV0+tyKeF78yAH/k4GIvH\n' +
|
|
38
|
+
'8GzkFu0MSzhWDddeUuKY4Me36GmPHfkzXw+jGt/I6R2vPZKW5RsfMooV7QKUrINtQTZ/4b8jAsr\n' +
|
|
39
|
+
'NJyYZX1wmjwQu3UzqpN+4oPh+WOJUX1Weo5B6c/4e1FmchSiPcI9xCR64MddbFaA/ORdN4p4cgL\n' +
|
|
40
|
+
'B4K3MOqMpoOCMgo/+N9JQr5FTMrcxVSJWRm7QrSGP3go2tywH1UuJOHxhAthdRw=="}',
|
|
41
|
+
bitgoKey: '74372039ccd6c9b2e1e16e3258ff3307b05527ac5a34e1b603b7b74353599c5eb6de9fc5f0f\n' +
|
|
42
|
+
'5f677bfa1f41915d9e1a2e794f8d5d9770d219bf5432adf0415e3',
|
|
43
|
+
walletPassphrase: '#Bondiola1234',
|
|
44
|
+
walletAddress: '5C8nEaqzwMLC2EFjUFckCfPLeFUVWNp3FErQiN8D5u2ZkWyt',
|
|
45
|
+
};
|
|
46
|
+
exports.unsignedSweepUser = {
|
|
47
|
+
userKey: '97d9da8bf544d07f3c7ae8ee06bb12a63f74478d0c461201ab94421a9c81d5b379553f0332d\n' +
|
|
48
|
+
'aaa85cb8c65e1fe7e6907c62268c00812b08a4e1361178e304ddb',
|
|
49
|
+
backupKey: '97d9da8bf544d07f3c7ae8ee06bb12a63f74478d0c461201ab94421a9c81d5b379553f0332d\n' +
|
|
50
|
+
'aaa85cb8c65e1fe7e6907c62268c00812b08a4e1361178e304ddb',
|
|
51
|
+
bitgoKey: '97d9da8bf544d07f3c7ae8ee06bb12a63f74478d0c461201ab94421a9c81d5b379553f0332d\n' +
|
|
52
|
+
'aaa85cb8c65e1fe7e6907c62268c00812b08a4e1361178e304ddb',
|
|
53
|
+
walletPassphrase: '#Bondiola1234',
|
|
54
|
+
walletAddress: '5DnZQqbxtB3CWkLgfA6wpqdkCd9Bq7AX49RpLPJwW9mzoT7s',
|
|
55
|
+
};
|
|
56
|
+
exports.testnetBlock = {
|
|
57
|
+
blockNumber: 12640277,
|
|
58
|
+
hash: '0x3771101969cc5cf1b37db0bdce589fe9174a1b820341c4d3673ce301352a3d42',
|
|
59
|
+
};
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3J3VXNlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90ZXN0L3Jlc291cmNlcy93cndVc2Vycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBYSxRQUFBLE9BQU8sR0FBRztJQUNyQixPQUFPLEVBQ0wsK0VBQStFO1FBQy9FLCtFQUErRTtRQUMvRSwrRUFBK0U7UUFDL0UsK0VBQStFO1FBQy9FLCtFQUErRTtRQUMvRSwrRUFBK0U7UUFDL0UsK0VBQStFO1FBQy9FLCtFQUErRTtRQUMvRSwrRUFBK0U7UUFDL0UsK0VBQStFO1FBQy9FLCtFQUErRTtRQUMvRSwrRUFBK0U7UUFDL0UsK0VBQStFO1FBQy9FLCtFQUErRTtRQUMvRSwrRUFBK0U7UUFDL0UsK0VBQStFO1FBQy9FLCtFQUErRTtRQUMvRSxxRUFBcUU7SUFDdkUsU0FBUyxFQUNQLCtFQUErRTtRQUMvRSwrRUFBK0U7UUFDL0UsK0VBQStFO1FBQy9FLCtFQUErRTtRQUMvRSwrRUFBK0U7UUFDL0UsK0VBQStFO1FBQy9FLCtFQUErRTtRQUMvRSwrRUFBK0U7UUFDL0UsK0VBQStFO1FBQy9FLCtFQUErRTtRQUMvRSwrRUFBK0U7UUFDL0UsK0VBQStFO1FBQy9FLCtFQUErRTtRQUMvRSwrRUFBK0U7UUFDL0UsK0VBQStFO1FBQy9FLCtFQUErRTtRQUMvRSwrRUFBK0U7UUFDL0UscUVBQXFFO0lBQ3ZFLFFBQVEsRUFDTiwrRUFBK0U7UUFDL0UsdURBQXVEO0lBQ3pELGdCQUFnQixFQUFFLGVBQWU7SUFDakMsYUFBYSxFQUFFLGtEQUFrRDtDQUNsRSxDQUFDO0FBRVcsUUFBQSxpQkFBaUIsR0FBRztJQUMvQixPQUFPLEVBQ0wsK0VBQStFO1FBQy9FLHVEQUF1RDtJQUN6RCxTQUFTLEVBQ1AsK0VBQStFO1FBQy9FLHVEQUF1RDtJQUN6RCxRQUFRLEVBQ04sK0VBQStFO1FBQy9FLHVEQUF1RDtJQUN6RCxnQkFBZ0IsRUFBRSxlQUFlO0lBQ2pDLGFBQWEsRUFBRSxrREFBa0Q7Q0FDbEUsQ0FBQztBQUVXLFFBQUEsWUFBWSxHQUFHO0lBQzFCLFdBQVcsRUFBRSxRQUFRO0lBQ3JCLElBQUksRUFBRSxvRUFBb0U7Q0FDM0UsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCB3cndVc2VyID0ge1xuICB1c2VyS2V5OlxuICAgICd7XCJpdlwiOlwiVFIyNUJIUE0wRjhPcmxoQzVVRW5VQT09XCIsXCJ2XCI6MSxcIml0ZXJcIjoxMDAwMCxcImtzXCI6MjU2LFwidHNcIjo2NCxcIm1vZGVcIlxcbicgK1xuICAgICc6XCJjY21cIixcImFkYXRhXCI6XCJcIixcImNpcGhlclwiOlwiYWVzXCIsXCJzYWx0XCI6XCJ1UWZOL1IvaFlhTT1cIixcImN0XCI6XCJJek00V3puZmZoYWtaa1xcbicgK1xuICAgICdLd3NSeFRFY1E3UEljcjVmNnJvMllYYm4xbVAvZGxNYVlsbUdPRTFmSmVtY2hWZXVGVVdMR3BoSlBNYVV6M3Y0bEpia2x2Ukd0VFBcXG4nICtcbiAgICAnRjgrSmVGU3AvcHMrK3dpcnpsWm9BbVBPR3JPUFJnN1RrT0pYUjd4WnlCSkhlVW9WOXh1N1gxaUtHcnhoWXI3MENyemxrcllxbFFSXFxuJyArXG4gICAgJ3FVOE5pVjFZYmVZK1JhNTZtOVJmZUUySGFYazJzOXhOem44bWZkT2Rqa2Qxc2pYd1R6djNXUFRCV1BEMzVIOEVpRGJMdVZMTE9CZ1xcbicgK1xuICAgICd0VlBOYWhCaW14ZmZXRTVCNmtlUVROM2V6S05Ud0UwejNCNHNCVEdIYjh3YnVtaFJBTzQyL0JWN01OYnZDRFBlK0dma3Fsak11MTNcXG4nICtcbiAgICAndTlQQWFSYjNZL25LMXN6SXhxTjRQcFVZUDkyVVlyL1FqdmV1SGszNyt3eFFobGpmbjgxamhraHRHT3ZudjFFYUJoWk5KMFBXYnJmXFxuJyArXG4gICAgJ0U5WHByeDh2TG15eThVaUdheVV2WGthMmJFWnlQa3NqQnBEN2NoaEticUNqM3E1RWhKUUxVaXlkTHI5L0JWNTBzZU0xK0FROXcrUlxcbicgK1xuICAgICc4S2p5YlVnd0lGL3FUTGNhQ3hWSGVBS1J6czZMTUdqNDMrbDFrVGtkYUdScmUrNk1BSzJhRXhaSzJGSmVyNDl2OGh0S283WjZ2eStcXG4nICtcbiAgICAnMTQ5REJ3VG52Q0dFRFFWWHV1bUtDR1gwQ0NmemJMQU1aVktCL1hxZGQzZTlCOTlRYlZGbVBRcGVBbEpYck9wYW9YUzkweFNTQktzXFxuJyArXG4gICAgJ2RicjF3a1JIbFlCL052UVp3bDJzR2ZJY1BKQVNmV0tMRlVTWEpNN3FsMXk4OWxsTk5TVzdSVUJjZjl0S0s1U3FtVnlHeFdaKzFMSlxcbicgK1xuICAgICdhNVpFaDRCUlloNUt4NElsZUNRTnlaSTczWFZaRThreUhvMDdUV3dsSThqUjhEVUlzdUYxY0JtRlJLbjJYb2lrUXJEWWllL28xelNcXG4nICtcbiAgICAnMWhETXp2RjRDOUJlYWNXNmlQWjFuOS8wT2t3Z2lVSURKR2g0dklPZWkvOVUvTjJzY2M4ejUrRi95YVhYVzdDT0t4cUtreDc0dHFJXFxuJyArXG4gICAgJ29oUG0wQ1RuSDJ0MmNxaksrQzV4M0Zkd2lQVCt1SXpnU1UwNEVaUDRnem5nWjExeXVuajdjdnc4MHg5L0JLK0d3Yk05N2hhSjhKZVxcbicgK1xuICAgICdsTURnNSsrbTZmSmxiNndlVzFSZDZJaVVmUlNYcGlvN0tRYnhaMDRVRzV1UFJPQVkxeGJDSmJHUWk5T2pjeVhRS1F0TDgxV2tIU3JcXG4nICtcbiAgICAnTEdqTi9qWEN0czdPSDN4WlJhWms2NkRQNlgzTGFUMGI2cW1sZW0yVXZmK1pJS1Jlc0YzaXZpakxZb3BKV2ZmdGFtYUZEeVkrNDYzXFxuJyArXG4gICAgJ3VJL1dORldyYzdpUVdJNEZ5M2VVZXp1cUJaaGlaZFdNeHVQN3lEd0xnV3IyaDNDVU5Zb0x2b2NyUnV5ZTZjSThmam1EV3plVGR1blxcbicgK1xuICAgICc1dFNNOE9MMzBoWTdhSDFuL1pEd2VuZzB3NWs4aTdabm01THBMYUFKemtBN0NGVjBDWEk1NnMzaXNKNUNqWEpGbVwifScsXG4gIGJhY2t1cEtleTpcbiAgICAne1wiaXZcIjpcInlvR005Z3p3ZWR3TXArRDV4ZlpqdXc9PVwiLFwidlwiOjEsXCJpdGVyXCI6MTAwMDAsXCJrc1wiOjI1NixcInRzXCI6NjQsXCJtb2RlXCJcXG4nICtcbiAgICAnOlwiY2NtXCIsXCJhZGF0YVwiOlwiXCIsXCJjaXBoZXJcIjpcImFlc1wiLFwic2FsdFwiOlwiYkxvSnBEWU5iMW89XCIsXCJjdFwiOlwickszSlo1Vnl4cXNmZ1ZcXG4nICtcbiAgICAnSlZyUjhiZGRmTWU1Y3k5NjNudFJ0M0I3bDcxdHZIVDhLbGVOQmx6UE42VlBydncxVDlLaFRIUFo4ekRxMXBMTjM5d2RyZ3I0bEQ0XFxuJyArXG4gICAgJzcrRndzY2xxUXNjc2k5N1lXN3BUSGhXQkdHTUNLekl0WFFmZVhZQ1pxdlh1L0JlVjgwVldLd3NvNDB2WjEzcE5XbVpSaGp5LzQwVVxcbicgK1xuICAgICdaMEovVGYrMk51RlNFdUxLem5yZ0Qvb0xKYUFrWVM3ZDFCdCtHVUhXa1huRE9zTHdxYkJMOHk1VFFKa1pycDM3bkRYWFJkUDFJRTFcXG4nICtcbiAgICAnTU9tMkMrR012Ym9Id200YnBLUVJwVlVSZ2p5ay83L1hXWFE3T1V2SUZncTMyNHNRYlFDSFZCL3ZvYVJWRiszeDdTaFJqaUdHOXNFXFxuJyArXG4gICAgJ1cwK1hzYmJhbXJYdkdpZXhBR1BETSsya3VQZS9yQkZoSmdmNEhKbllGQU05c2p6V2RPSWVkaGt1T29rd3FnZDVPcXJlVk1PL2RZRlxcbicgK1xuICAgICdQR0kyOWNucm92OEpwSVF3NWdBcnRsZ1V4T2RlbGcvb0NhUlVyeUhDQUJWUFRPRGJGWXlnZiszSUFnbmcyTStvRXZoMjZnVkZPZnpcXG4nICtcbiAgICAnb1BmQm9xcVhrNi9rV3BjM3p4MmJ5T0IrYzZZemhnOXNSbkY1VW9iTUJsNTBua2xvMWtNLzI0T2Jtc05DUWVWeXVaQVJqUWdwYlp4XFxuJyArXG4gICAgJ3duNWw1MWtudnhtdlFYeHZ3bmZzdWlmamU5R2tFNFR0K3ZZdTQ5bzNWOHZtUmFPeGNFTW56ajVXT0MvTU9iNlFQVDRKeDgvSjlDQlxcbicgK1xuICAgICdWNG5VK012Z1piREpLTXg5a3V5SjYyUGloQnk4dVNFMUpyTmdXVTNhRWt1aDlhRDVIRW9BdHl5NHRCYXRSVHpPTUxTc1NyM2hpaTdcXG4nICtcbiAgICAncFZUQmtmRUZWenNySFJmSWM0RmhzbkZxU0cxeVB0eFE2OEZVZVpOTTIzcENPU0pNY2J6dVAyZGVFd09DTkU1QUZJaFZabUhnNVluXFxuJyArXG4gICAgJ0NYZ2NVd0FIaCthRCtKdjhMTXlIcTBVNkdLa3BnaHU1YnB0VUpjWDZvT3dVb0tEMDROV3VFNlZ2SzBaSmhTcHh4T0xlTEk0WXJ3QVxcbicgK1xuICAgICd0TlZvOUtBZWhXUEhKZmJ4NFh5Qkt1KzNaL21JZlBKMnJ4ejdJemRjaS9CaERLaXVIUlV5blVKNy84VGF4a2pxYTZSQmRGRC9hdm1cXG4nICtcbiAgICAnWjFhOEd5R2x4WWJuRjNPbEpVUzBPcDNsQVhCeWdNeWZacURZYllTZnI3dWZhSWZVTEFBcHhYSVYwK3R5S2VGNzh5QUgvazRHSXZIXFxuJyArXG4gICAgJzhHemtGdTBNU3poV0RkZGVVdUtZNE1lMzZHbVBIZmt6WHcrakd0L0k2UjJ2UFpLVzVSc2ZNb29WN1FLVXJJTnRRVFovNGI4akFzclxcbicgK1xuICAgICdOSnlZWlgxd21qd1F1M1V6cXBOKzRvUGgrV09KVVgxV2VvNUI2Yy80ZTFGbWNoU2lQY0k5eENSNjRNZGRiRmFBL09SZE40cDRjZ0xcXG4nICtcbiAgICAnQjRLM01PcU1wb09DTWdvLytOOUpRcjVGVE1yY3hWU0pXUm03UXJTR1AzZ28ydHl3SDFVdUpPSHhoQXRoZFJ3PT1cIn0nLFxuICBiaXRnb0tleTpcbiAgICAnNzQzNzIwMzljY2Q2YzliMmUxZTE2ZTMyNThmZjMzMDdiMDU1MjdhYzVhMzRlMWI2MDNiN2I3NDM1MzU5OWM1ZWI2ZGU5ZmM1ZjBmXFxuJyArXG4gICAgJzVmNjc3YmZhMWY0MTkxNWQ5ZTFhMmU3OTRmOGQ1ZDk3NzBkMjE5YmY1NDMyYWRmMDQxNWUzJyxcbiAgd2FsbGV0UGFzc3BocmFzZTogJyNCb25kaW9sYTEyMzQnLFxuICB3YWxsZXRBZGRyZXNzOiAnNUM4bkVhcXp3TUxDMkVGalVGY2tDZlBMZUZVVldOcDNGRXJRaU44RDV1MlprV3l0Jyxcbn07XG5cbmV4cG9ydCBjb25zdCB1bnNpZ25lZFN3ZWVwVXNlciA9IHtcbiAgdXNlcktleTpcbiAgICAnOTdkOWRhOGJmNTQ0ZDA3ZjNjN2FlOGVlMDZiYjEyYTYzZjc0NDc4ZDBjNDYxMjAxYWI5NDQyMWE5YzgxZDViMzc5NTUzZjAzMzJkXFxuJyArXG4gICAgJ2FhYTg1Y2I4YzY1ZTFmZTdlNjkwN2M2MjI2OGMwMDgxMmIwOGE0ZTEzNjExNzhlMzA0ZGRiJyxcbiAgYmFja3VwS2V5OlxuICAgICc5N2Q5ZGE4YmY1NDRkMDdmM2M3YWU4ZWUwNmJiMTJhNjNmNzQ0NzhkMGM0NjEyMDFhYjk0NDIxYTljODFkNWIzNzk1NTNmMDMzMmRcXG4nICtcbiAgICAnYWFhODVjYjhjNjVlMWZlN2U2OTA3YzYyMjY4YzAwODEyYjA4YTRlMTM2MTE3OGUzMDRkZGInLFxuICBiaXRnb0tleTpcbiAgICAnOTdkOWRhOGJmNTQ0ZDA3ZjNjN2FlOGVlMDZiYjEyYTYzZjc0NDc4ZDBjNDYxMjAxYWI5NDQyMWE5YzgxZDViMzc5NTUzZjAzMzJkXFxuJyArXG4gICAgJ2FhYTg1Y2I4YzY1ZTFmZTdlNjkwN2M2MjI2OGMwMDgxMmIwOGE0ZTEzNjExNzhlMzA0ZGRiJyxcbiAgd2FsbGV0UGFzc3BocmFzZTogJyNCb25kaW9sYTEyMzQnLFxuICB3YWxsZXRBZGRyZXNzOiAnNURuWlFxYnh0QjNDV2tMZ2ZBNndwcWRrQ2Q5QnE3QVg0OVJwTFBKd1c5bXpvVDdzJyxcbn07XG5cbmV4cG9ydCBjb25zdCB0ZXN0bmV0QmxvY2sgPSB7XG4gIGJsb2NrTnVtYmVyOiAxMjY0MDI3NyxcbiAgaGFzaDogJzB4Mzc3MTEwMTk2OWNjNWNmMWIzN2RiMGJkY2U1ODlmZTkxNzRhMWI4MjAzNDFjNGQzNjczY2UzMDEzNTJhM2Q0MicsXG59O1xuIl19
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"polyx.d.ts","sourceRoot":"","sources":["../../../test/unit/polyx.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
const should_1 = __importDefault(require("should"));
|
|
40
|
+
const sdk_test_1 = require("@bitgo-beta/sdk-test");
|
|
41
|
+
const sdk_api_1 = require("@bitgo-beta/sdk-api");
|
|
42
|
+
const src_1 = require("../../src");
|
|
43
|
+
const constants_1 = require("../../src/lib/constants");
|
|
44
|
+
const sinon = __importStar(require("sinon"));
|
|
45
|
+
const testData = __importStar(require("../resources/wrwUsers"));
|
|
46
|
+
const mocha_1 = require("mocha");
|
|
47
|
+
const resources_1 = require("../resources");
|
|
48
|
+
describe('Polyx:', function () {
|
|
49
|
+
let bitgo;
|
|
50
|
+
let baseCoin;
|
|
51
|
+
before(function () {
|
|
52
|
+
bitgo = sdk_test_1.TestBitGo.decorate(sdk_api_1.BitGoAPI, { env: 'mock' });
|
|
53
|
+
bitgo.safeRegister('polyx', src_1.Polyx.createInstance);
|
|
54
|
+
bitgo.safeRegister('tpolyx', src_1.Tpolyx.createInstance);
|
|
55
|
+
bitgo.initializeTestVars();
|
|
56
|
+
baseCoin = bitgo.coin('tpolyx');
|
|
57
|
+
});
|
|
58
|
+
describe('Address Format Constants', function () {
|
|
59
|
+
it('should have the correct address format constants', function () {
|
|
60
|
+
// Verify the constants are defined correctly
|
|
61
|
+
constants_1.POLYX_ADDRESS_FORMAT.should.equal(12);
|
|
62
|
+
constants_1.TPOLYX_ADDRESS_FORMAT.should.equal(42);
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
describe('Recover Transactions:', function () {
|
|
66
|
+
const sandBox = sinon.createSandbox();
|
|
67
|
+
const recoveryDestination = '5H56f31hSYGCRV3URjQHv2Cc4ZSkJNHTM8MKGtkkV6hzCqN7';
|
|
68
|
+
const nonce = 0;
|
|
69
|
+
let accountInfoCB;
|
|
70
|
+
let headerInfoCB;
|
|
71
|
+
let getFeeCB;
|
|
72
|
+
beforeEach(function () {
|
|
73
|
+
accountInfoCB = sandBox.stub(src_1.Polyx.prototype, 'getAccountInfo');
|
|
74
|
+
headerInfoCB = sandBox.stub(src_1.Polyx.prototype, 'getHeaderInfo');
|
|
75
|
+
getFeeCB = sandBox.stub(src_1.Polyx.prototype, 'getFee');
|
|
76
|
+
});
|
|
77
|
+
(0, mocha_1.afterEach)(function () {
|
|
78
|
+
sandBox.restore();
|
|
79
|
+
});
|
|
80
|
+
it('should generate unsigned sweep correctly', async function () {
|
|
81
|
+
accountInfoCB
|
|
82
|
+
.withArgs(testData.unsignedSweepUser.walletAddress)
|
|
83
|
+
.resolves({ nonce: 0, freeBalance: 100007000000 });
|
|
84
|
+
headerInfoCB.resolves({
|
|
85
|
+
headerNumber: testData.testnetBlock.blockNumber,
|
|
86
|
+
headerHash: testData.testnetBlock.hash,
|
|
87
|
+
});
|
|
88
|
+
getFeeCB.withArgs(recoveryDestination, testData.unsignedSweepUser.walletAddress, 100007000000).resolves(74401);
|
|
89
|
+
const commonKeyChain = testData.unsignedSweepUser.bitgoKey;
|
|
90
|
+
const unsigned = await baseCoin.recover({ bitgoKey: commonKeyChain, recoveryDestination });
|
|
91
|
+
unsigned.txRequests.should.not.be.undefined();
|
|
92
|
+
unsigned.txRequests.length.should.equal(1);
|
|
93
|
+
unsigned.txRequests[0].transactions.length.should.equal(1);
|
|
94
|
+
unsigned.txRequests[0].walletCoin.should.equal('tpolyx');
|
|
95
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.should.not.be.undefined();
|
|
96
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.serializedTx.should.not.be.undefined();
|
|
97
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.scanIndex.should.equal(0);
|
|
98
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.coin.should.equal('tpolyx');
|
|
99
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.signableHex.should.not.be.undefined();
|
|
100
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.derivationPath.should.equal('m/0');
|
|
101
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.parsedTx.should.not.be.undefined();
|
|
102
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.parsedTx.inputs.should.not.be.undefined();
|
|
103
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.parsedTx.inputs.length.should.equal(1);
|
|
104
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.parsedTx.inputs[0].address.should.equal('5DnZQqbxtB3CWkLgfA6wpqdkCd9Bq7AX49RpLPJwW9mzoT7s');
|
|
105
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.parsedTx.inputs[0].valueString.should.equal('100006255990');
|
|
106
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.parsedTx.inputs[0].value.should.equal(100006255990);
|
|
107
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.parsedTx.outputs.should.not.be.undefined();
|
|
108
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.parsedTx.outputs.length.should.equal(1);
|
|
109
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.parsedTx.outputs[0].address.should.equal('5H56f31hSYGCRV3URjQHv2Cc4ZSkJNHTM8MKGtkkV6hzCqN7');
|
|
110
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.parsedTx.outputs[0].valueString.should.equal('100006255990');
|
|
111
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.parsedTx.outputs[0].coinName.should.equal('tpolyx');
|
|
112
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.parsedTx.type.should.equal('');
|
|
113
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.feeInfo.should.not.be.undefined();
|
|
114
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.feeInfo.fee.should.equal(0);
|
|
115
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.feeInfo.feeString.should.equal('0');
|
|
116
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.coinSpecific.should.not.be.undefined();
|
|
117
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.coinSpecific.firstValid.should.not.be.undefined();
|
|
118
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.coinSpecific.maxDuration.should.equal(2400);
|
|
119
|
+
unsigned.txRequests[0].transactions[0].unsignedTx.coinSpecific.commonKeychain.should.equal('97d9da8bf544d07f3c7ae8ee06bb12a63f74478d0c461201ab94421a9c81d5b379553f0332daaa85cb8c65e1fe7e6907c62268c00812b08a4e1361178e304ddb');
|
|
120
|
+
});
|
|
121
|
+
it('should recover a tx for non-bitgo recoveries', async function () {
|
|
122
|
+
accountInfoCB.withArgs(testData.wrwUser.walletAddress).resolves({ nonce: 0, freeBalance: 100007000000 });
|
|
123
|
+
headerInfoCB.resolves({
|
|
124
|
+
headerNumber: testData.testnetBlock.blockNumber,
|
|
125
|
+
headerHash: testData.testnetBlock.hash,
|
|
126
|
+
});
|
|
127
|
+
getFeeCB.withArgs(recoveryDestination, testData.wrwUser.walletAddress, 100007000000).resolves(74401);
|
|
128
|
+
const res = await baseCoin.recover({
|
|
129
|
+
userKey: testData.wrwUser.userKey,
|
|
130
|
+
backupKey: testData.wrwUser.backupKey,
|
|
131
|
+
bitgoKey: testData.wrwUser.bitgoKey,
|
|
132
|
+
walletPassphrase: testData.wrwUser.walletPassphrase,
|
|
133
|
+
recoveryDestination: recoveryDestination,
|
|
134
|
+
});
|
|
135
|
+
res.should.not.be.empty();
|
|
136
|
+
res.should.hasOwnProperty('serializedTx');
|
|
137
|
+
res.should.hasOwnProperty('scanIndex');
|
|
138
|
+
const txBuilder = baseCoin.getBuilder().from(res.serializedTx);
|
|
139
|
+
txBuilder
|
|
140
|
+
.validity({
|
|
141
|
+
firstValid: testData.testnetBlock.blockNumber,
|
|
142
|
+
maxDuration: baseCoin.SWEEP_TXN_DURATION,
|
|
143
|
+
})
|
|
144
|
+
.referenceBlock(testData.testnetBlock.hash);
|
|
145
|
+
const tx = await txBuilder.build();
|
|
146
|
+
const txJson = tx.toJson();
|
|
147
|
+
should_1.default.deepEqual(txJson.sender, testData.wrwUser.walletAddress);
|
|
148
|
+
should_1.default.deepEqual(txJson.blockNumber, testData.testnetBlock.blockNumber);
|
|
149
|
+
should_1.default.deepEqual(txJson.referenceBlock, testData.testnetBlock.hash);
|
|
150
|
+
should_1.default.deepEqual(txJson.genesisHash, resources_1.genesisHash);
|
|
151
|
+
should_1.default.deepEqual(txJson.specVersion, resources_1.specVersion);
|
|
152
|
+
should_1.default.deepEqual(txJson.nonce, nonce);
|
|
153
|
+
should_1.default.deepEqual(txJson.tip, 0);
|
|
154
|
+
should_1.default.deepEqual(txJson.transactionVersion, resources_1.txVersion);
|
|
155
|
+
should_1.default.deepEqual(txJson.eraPeriod, baseCoin.SWEEP_TXN_DURATION);
|
|
156
|
+
});
|
|
157
|
+
it('should recover a txn for unsigned-sweep recoveries', async function () {
|
|
158
|
+
accountInfoCB
|
|
159
|
+
.withArgs(testData.unsignedSweepUser.walletAddress)
|
|
160
|
+
.resolves({ nonce: 0, freeBalance: 100007000000 });
|
|
161
|
+
headerInfoCB.resolves({
|
|
162
|
+
headerNumber: testData.testnetBlock.blockNumber,
|
|
163
|
+
headerHash: testData.testnetBlock.hash,
|
|
164
|
+
});
|
|
165
|
+
getFeeCB.withArgs(recoveryDestination, testData.unsignedSweepUser.walletAddress, 100007000000).resolves(74401);
|
|
166
|
+
const res = await baseCoin.recover({
|
|
167
|
+
bitgoKey: testData.unsignedSweepUser.bitgoKey,
|
|
168
|
+
recoveryDestination: recoveryDestination,
|
|
169
|
+
});
|
|
170
|
+
res.should.not.be.empty();
|
|
171
|
+
res.txRequests[0].transactions[0].unsignedTx.should.hasOwnProperty('serializedTx');
|
|
172
|
+
res.txRequests[0].transactions[0].unsignedTx.should.hasOwnProperty('scanIndex');
|
|
173
|
+
const txBuilder = baseCoin.getBuilder().from(res.txRequests[0].transactions[0].unsignedTx.serializedTx);
|
|
174
|
+
txBuilder
|
|
175
|
+
.validity({
|
|
176
|
+
firstValid: testData.testnetBlock.blockNumber,
|
|
177
|
+
maxDuration: baseCoin.SWEEP_TXN_DURATION,
|
|
178
|
+
})
|
|
179
|
+
.referenceBlock(testData.testnetBlock.hash)
|
|
180
|
+
.sender({ address: testData.unsignedSweepUser.walletAddress });
|
|
181
|
+
const tx = await txBuilder.build();
|
|
182
|
+
const txJson = tx.toJson();
|
|
183
|
+
should_1.default.deepEqual(txJson.sender, testData.unsignedSweepUser.walletAddress);
|
|
184
|
+
should_1.default.deepEqual(txJson.blockNumber, testData.testnetBlock.blockNumber);
|
|
185
|
+
should_1.default.deepEqual(txJson.referenceBlock, testData.testnetBlock.hash);
|
|
186
|
+
should_1.default.deepEqual(txJson.genesisHash, resources_1.genesisHash);
|
|
187
|
+
should_1.default.deepEqual(txJson.specVersion, resources_1.specVersion);
|
|
188
|
+
should_1.default.deepEqual(txJson.nonce, 0);
|
|
189
|
+
should_1.default.deepEqual(txJson.tip, 0);
|
|
190
|
+
should_1.default.deepEqual(txJson.transactionVersion, resources_1.txVersion);
|
|
191
|
+
should_1.default.deepEqual(txJson.eraPeriod, baseCoin.SWEEP_TXN_DURATION);
|
|
192
|
+
});
|
|
193
|
+
});
|
|
194
|
+
describe('Token Enablement:', function () {
|
|
195
|
+
it('should have correct token enablement config', function () {
|
|
196
|
+
const config = baseCoin.getTokenEnablementConfig();
|
|
197
|
+
should_1.default.exist(config);
|
|
198
|
+
config.requiresTokenEnablement.should.equal(true);
|
|
199
|
+
config.supportsMultipleTokenEnablements.should.equal(false);
|
|
200
|
+
});
|
|
201
|
+
it('should validate wallet type for token enablement', function () {
|
|
202
|
+
const config = baseCoin.getTokenEnablementConfig();
|
|
203
|
+
(() => config.validateWallet('custodial')).should.not.throw();
|
|
204
|
+
(() => config.validateWallet('hot')).should.throw(/Token enablement for Polymesh \(polyx\) is only supported for custodial wallets/);
|
|
205
|
+
(() => config.validateWallet('cold')).should.throw(/Token enablement for Polymesh \(polyx\) is only supported for custodial wallets/);
|
|
206
|
+
});
|
|
207
|
+
});
|
|
208
|
+
});
|
|
209
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9seXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90ZXN0L3VuaXQvcG9seXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvREFBNEI7QUFDNUIsbURBQStEO0FBQy9ELGlEQUErQztBQUMvQyxtQ0FBMEM7QUFDMUMsdURBQXNGO0FBQ3RGLDZDQUErQjtBQUMvQixnRUFBa0Q7QUFDbEQsaUNBQWtDO0FBQ2xDLDRDQUFtRTtBQUVuRSxRQUFRLENBQUMsUUFBUSxFQUFFO0lBQ2pCLElBQUksS0FBbUIsQ0FBQztJQUN4QixJQUFJLFFBQVEsQ0FBQztJQUViLE1BQU0sQ0FBQztRQUNMLEtBQUssR0FBRyxvQkFBUyxDQUFDLFFBQVEsQ0FBQyxrQkFBUSxFQUFFLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDdEQsS0FBSyxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsV0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2xELEtBQUssQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLFlBQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNwRCxLQUFLLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMzQixRQUFRLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQVcsQ0FBQztJQUM1QyxDQUFDLENBQUMsQ0FBQztJQUVILFFBQVEsQ0FBQywwQkFBMEIsRUFBRTtRQUNuQyxFQUFFLENBQUMsa0RBQWtELEVBQUU7WUFDckQsNkNBQTZDO1lBQzdDLGdDQUFvQixDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDdEMsaUNBQXFCLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN6QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0lBRUgsUUFBUSxDQUFDLHVCQUF1QixFQUFFO1FBQ2hDLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN0QyxNQUFNLG1CQUFtQixHQUFHLGtEQUFrRCxDQUFDO1FBQy9FLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNoQixJQUFJLGFBQWEsQ0FBQztRQUNsQixJQUFJLFlBQVksQ0FBQztRQUNqQixJQUFJLFFBQVEsQ0FBQztRQUViLFVBQVUsQ0FBQztZQUNULGFBQWEsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQUssQ0FBQyxTQUFTLEVBQUUsZ0JBQStCLENBQUMsQ0FBQztZQUMvRSxZQUFZLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFLLENBQUMsU0FBUyxFQUFFLGVBQThCLENBQUMsQ0FBQztZQUM3RSxRQUFRLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFLLENBQUMsU0FBUyxFQUFFLFFBQXVCLENBQUMsQ0FBQztRQUNwRSxDQUFDLENBQUMsQ0FBQztRQUVILElBQUEsaUJBQVMsRUFBQztZQUNSLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDLENBQUMsQ0FBQztRQUVILEVBQUUsQ0FBQywwQ0FBMEMsRUFBRSxLQUFLO1lBQ2xELGFBQWE7aUJBQ1YsUUFBUSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLENBQUM7aUJBQ2xELFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUM7WUFDckQsWUFBWSxDQUFDLFFBQVEsQ0FBQztnQkFDcEIsWUFBWSxFQUFFLFFBQVEsQ0FBQyxZQUFZLENBQUMsV0FBVztnQkFDL0MsVUFBVSxFQUFFLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSTthQUN2QyxDQUFDLENBQUM7WUFDSCxRQUFRLENBQUMsUUFBUSxDQUFDLG1CQUFtQixFQUFFLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsWUFBWSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRS9HLE1BQU0sY0FBYyxHQUFHLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLENBQUM7WUFFM0QsTUFBTSxRQUFRLEdBQUcsTUFBTSxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRSxtQkFBbUIsRUFBRSxDQUFDLENBQUM7WUFFM0YsUUFBUSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUM5QyxRQUFRLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzNDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzNELFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDekQsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzVFLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDekYsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzVFLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM5RSxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3hGLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNyRixRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3JGLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzVGLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3pGLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUN2RixrREFBa0QsQ0FDbkQsQ0FBQztZQUNGLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQzlHLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3RHLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzdGLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzFGLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUN4RixrREFBa0QsQ0FDbkQsQ0FBQztZQUNGLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQy9HLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3RHLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDakYsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNwRixRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzlFLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDdEYsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUN6RixRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FB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QU0sQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQzlELENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQy9DLGlGQUFpRixDQUNsRixDQUFDO1lBQ0YsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDaEQsaUZBQWlGLENBQ2xGLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc2hvdWxkIGZyb20gJ3Nob3VsZCc7XG5pbXBvcnQgeyBUZXN0Qml0R28sIFRlc3RCaXRHb0FQSSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay10ZXN0JztcbmltcG9ydCB7IEJpdEdvQVBJIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWFwaSc7XG5pbXBvcnQgeyBQb2x5eCwgVHBvbHl4IH0gZnJvbSAnLi4vLi4vc3JjJztcbmltcG9ydCB7IFBPTFlYX0FERFJFU1NfRk9STUFULCBUUE9MWVhfQUREUkVTU19GT1JNQVQgfSBmcm9tICcuLi8uLi9zcmMvbGliL2NvbnN0YW50cyc7XG5pbXBvcnQgKiBhcyBzaW5vbiBmcm9tICdzaW5vbic7XG5pbXBvcnQgKiBhcyB0ZXN0RGF0YSBmcm9tICcuLi9yZXNvdXJjZXMvd3J3VXNlcnMnO1xuaW1wb3J0IHsgYWZ0ZXJFYWNoIH0gZnJvbSAnbW9jaGEnO1xuaW1wb3J0IHsgZ2VuZXNpc0hhc2gsIHNwZWNWZXJzaW9uLCB0eFZlcnNpb24gfSBmcm9tICcuLi9yZXNvdXJjZXMnO1xuXG5kZXNjcmliZSgnUG9seXg6JywgZnVuY3Rpb24gKCkge1xuICBsZXQgYml0Z286IFRlc3RCaXRHb0FQSTtcbiAgbGV0IGJhc2VDb2luO1xuXG4gIGJlZm9yZShmdW5jdGlvbiAoKSB7XG4gICAgYml0Z28gPSBUZXN0Qml0R28uZGVjb3JhdGUoQml0R29BUEksIHsgZW52OiAnbW9jaycgfSk7XG4gICAgYml0Z28uc2FmZVJlZ2lzdGVyKCdwb2x5eCcsIFBvbHl4LmNyZWF0ZUluc3RhbmNlKTtcbiAgICBiaXRnby5zYWZlUmVnaXN0ZXIoJ3Rwb2x5eCcsIFRwb2x5eC5jcmVhdGVJbnN0YW5jZSk7XG4gICAgYml0Z28uaW5pdGlhbGl6ZVRlc3RWYXJzKCk7XG4gICAgYmFzZUNvaW4gPSBiaXRnby5jb2luKCd0cG9seXgnKSBhcyBUcG9seXg7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdBZGRyZXNzIEZvcm1hdCBDb25zdGFudHMnLCBmdW5jdGlvbiAoKSB7XG4gICAgaXQoJ3Nob3VsZCBoYXZlIHRoZSBjb3JyZWN0IGFkZHJlc3MgZm9ybWF0IGNvbnN0YW50cycsIGZ1bmN0aW9uICgpIHtcbiAgICAgIC8vIFZlcmlmeSB0aGUgY29uc3RhbnRzIGFyZSBkZWZpbmVkIGNvcnJlY3RseVxuICAgICAgUE9MWVhfQUREUkVTU19GT1JNQVQuc2hvdWxkLmVxdWFsKDEyKTtcbiAgICAgIFRQT0xZWF9BRERSRVNTX0ZPUk1BVC5zaG91bGQuZXF1YWwoNDIpO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnUmVjb3ZlciBUcmFuc2FjdGlvbnM6JywgZnVuY3Rpb24gKCkge1xuICAgIGNvbnN0IHNhbmRCb3ggPSBzaW5vbi5jcmVhdGVTYW5kYm94KCk7XG4gICAgY29uc3QgcmVjb3ZlcnlEZXN0aW5hdGlvbiA9ICc1SDU2ZjMxaFNZR0NSVjNVUmpRSHYyQ2M0WlNrSk5IVE04TUtHdGtrVjZoekNxTjcnO1xuICAgIGNvbnN0IG5vbmNlID0gMDtcbiAgICBsZXQgYWNjb3VudEluZm9DQjtcbiAgICBsZXQgaGVhZGVySW5mb0NCO1xuICAgIGxldCBnZXRGZWVDQjtcblxuICAgIGJlZm9yZUVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgYWNjb3VudEluZm9DQiA9IHNhbmRCb3guc3R1YihQb2x5eC5wcm90b3R5cGUsICdnZXRBY2NvdW50SW5mbycgYXMga2V5b2YgUG9seXgpO1xuICAgICAgaGVhZGVySW5mb0NCID0gc2FuZEJveC5zdHViKFBvbHl4LnByb3RvdHlwZSwgJ2dldEhlYWRlckluZm8nIGFzIGtleW9mIFBvbHl4KTtcbiAgICAgIGdldEZlZUNCID0gc2FuZEJveC5zdHViKFBvbHl4LnByb3RvdHlwZSwgJ2dldEZlZScgYXMga2V5b2YgUG9seXgpO1xuICAgIH0pO1xuXG4gICAgYWZ0ZXJFYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIHNhbmRCb3gucmVzdG9yZSgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBnZW5lcmF0ZSB1bnNpZ25lZCBzd2VlcCBjb3JyZWN0bHknLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBhY2NvdW50SW5mb0NCXG4gICAgICAgIC53aXRoQXJncyh0ZXN0RGF0YS51bnNpZ25lZFN3ZWVwVXNlci53YWxsZXRBZGRyZXNzKVxuICAgICAgICAucmVzb2x2ZXMoeyBub25jZTogMCwgZnJlZUJhbGFuY2U6IDEwMDAwNzAwMDAwMCB9KTtcbiAgICAgIGhlYWRlckluZm9DQi5yZXNvbHZlcyh7XG4gICAgICAgIGhlYWRlck51bWJlcjogdGVzdERhdGEudGVzdG5ldEJsb2NrLmJsb2NrTnVtYmVyLFxuICAgICAgICBoZWFkZXJIYXNoOiB0ZXN0RGF0YS50ZXN0bmV0QmxvY2suaGFzaCxcbiAgICAgIH0pO1xuICAgICAgZ2V0RmVlQ0Iud2l0aEFyZ3MocmVjb3ZlcnlEZXN0aW5hdGlvbiwgdGVzdERhdGEudW5zaWduZWRTd2VlcFVzZXIud2FsbGV0QWRkcmVzcywgMTAwMDA3MDAwMDAwKS5yZXNvbHZlcyg3NDQwMSk7XG5cbiAgICAgIGNvbnN0IGNvbW1vbktleUNoYWluID0gdGVzdERhdGEudW5zaWduZWRTd2VlcFVzZXIuYml0Z29LZXk7XG5cbiAgICAgIGNvbnN0IHVuc2lnbmVkID0gYXdhaXQgYmFzZUNvaW4ucmVjb3Zlcih7IGJpdGdvS2V5OiBjb21tb25LZXlDaGFpbiwgcmVjb3ZlcnlEZXN0aW5hdGlvbiB9KTtcblxuICAgICAgdW5zaWduZWQudHhSZXF1ZXN0cy5zaG91bGQubm90LmJlLnVuZGVmaW5lZCgpO1xuICAgICAgdW5zaWduZWQudHhSZXF1ZXN0cy5sZW5ndGguc2hvdWxkLmVxdWFsKDEpO1xuICAgICAgdW5zaWduZWQudHhSZXF1ZXN0c1swXS50cmFuc2FjdGlvbnMubGVuZ3RoLnNob3VsZC5lcXVhbCgxKTtcbiAgICAgIHVuc2lnbmVkLnR4UmVxdWVzdHNbMF0ud2FsbGV0Q29pbi5zaG91bGQuZXF1YWwoJ3Rwb2x5eCcpO1xuICAgICAgdW5zaWduZWQudHhSZXF1ZXN0c1swXS50cmFuc2FjdGlvbnNbMF0udW5zaWduZWRUeC5zaG91bGQubm90LmJlLnVuZGVmaW5lZCgpO1xuICAgICAgdW5zaWduZWQudHhSZXF1ZXN0c1swXS50cmFuc2FjdGlvbnNbMF0udW5zaWduZWRUeC5zZXJpYWxpemVkVHguc2hvdWxkLm5vdC5iZS51bmRlZmluZWQoKTtcbiAgICAgIHVuc2lnbmVkLnR4UmVxdWVzdHNbMF0udHJhbnNhY3Rpb25zWzBdLnVuc2lnbmVkVHguc2NhbkluZGV4LnNob3VsZC5lcXVhbCgwKTtcbiAgICAgIHVuc2lnbmVkLnR4UmVxdWVzdHNbMF0udHJhbnNhY3Rpb25zWzBdLnVuc2lnbmVkVHguY29pbi5zaG91bGQuZXF1YWwoJ3Rwb2x5eCcpO1xuICAgICAgdW5zaWduZWQudHhSZXF1ZXN0c1swXS50cmFuc2FjdGlvbnNbMF0udW5zaWduZWRUeC5zaWduYWJsZUhleC5zaG91bGQubm90LmJlLnVuZGVmaW5lZCgpO1xuICAgICAgdW5zaWduZWQudHhSZXF1ZXN0c1swXS50cmFuc2FjdGlvbnNbMF0udW5zaWduZWRUeC5kZXJpdmF0aW9uUGF0aC5zaG91bGQuZXF1YWwoJ20vMCcpO1xuICAgICAgdW5zaWduZWQudHhSZXF1ZXN0c1swXS50cmFuc2FjdGlvbnNbMF0udW5zaWduZWRUeC5wYXJzZWRUeC5zaG91bGQubm90LmJlLnVuZGVmaW5lZCgpO1xuICAgICAgdW5zaWduZWQudHhSZXF1ZXN0c1swXS50cmFuc2FjdGlvbnNbMF0udW5zaWduZWRUeC5wYXJzZWRUeC5pbnB1dHMuc2hvdWxkLm5vdC5iZS51bmRlZmluZWQoKTtcbiAgICAgIHVuc2lnbmVkLnR4UmVxdWVzdHNbMF0udHJhbnNhY3Rpb25zWzBdLnVuc2lnbmVkVHgucGFyc2VkVHguaW5wdXRzLmxlbmd0aC5zaG91bGQuZXF1YWwoMSk7XG4gICAgICB1bnNpZ25lZC50eFJlcXVlc3RzWzBdLnRyYW5zYWN0aW9uc1swXS51bnNpZ25lZFR4LnBhcnNlZFR4LmlucHV0c1swXS5hZGRyZXNzLnNob3VsZC5lcXVhbChcbiAgICAgICAgJzVEblpRcWJ4dEIzQ1drTGdmQTZ3cHFka0NkOUJxN0FYNDlScExQSndXOW16b1Q3cydcbiAgICAgICk7XG4gICAgICB1bnNpZ25lZC50eFJlcXVlc3RzWzBdLnRyYW5zYWN0aW9uc1swXS51bnNpZ25lZFR4LnBhcnNlZFR4LmlucHV0c1swXS52YWx1ZVN0cmluZy5zaG91bGQuZXF1YWwoJzEwMDAwNjI1NTk5MCcpO1xuICAgICAgdW5zaWduZWQudHhSZXF1ZXN0c1swXS50cmFuc2FjdGlvbnNbMF0udW5zaWduZWRUeC5wYXJzZWRUeC5pbnB1dHNbMF0udmFsdWUuc2hvdWxkLmVxdWFsKDEwMDAwNjI1NTk5MCk7XG4gICAgICB1bnNpZ25lZC50eFJlcXVlc3RzWzBdLnRyYW5zYWN0aW9uc1swXS51bnNpZ25lZFR4LnBhcnNlZFR4Lm91dHB1dHMuc2hvdWxkLm5vdC5iZS51bmRlZmluZWQoKTtcbiAgICAgIHVuc2lnbmVkLnR4UmVxdWVzdHNbMF0udHJhbnNhY3Rpb25zWzBdLnVuc2lnbmVkVHgucGFyc2VkVHgub3V0cHV0cy5sZW5ndGguc2hvdWxkLmVxdWFsKDEpO1xuICAgICAgdW5zaWduZWQudHhSZXF1ZXN0c1swXS50cmFuc2FjdGlvbnNbMF0udW5zaWduZWRUeC5wYXJzZWRUeC5vdXRwdXRzWzBdLmFkZHJlc3Muc2hvdWxkLmVxdWFsKFxuICAgICAgICAnNUg1NmYzMWhTWUdDUlYzVVJqUUh2MkNjNFpTa0pOSFRNOE1LR3Rra1Y2aHpDcU43J1xuICAgICAgKTtcbiAgICAgIHVuc2lnbmVkLnR4UmVxdWVzdHNbMF0udHJhbnNhY3Rpb25zWzBdLnVuc2lnbmVkVHgucGFyc2VkVHgub3V0cHV0c1swXS52YWx1ZVN0cmluZy5zaG91bGQuZXF1YWwoJzEwMDAwNjI1NTk5MCcpO1xuICAgICAgdW5zaWduZWQudHhSZXF1ZXN0c1swXS50cmFuc2FjdGlvbnNbMF0udW5zaWduZWRUeC5wYXJzZWRUeC5vdXRwdXRzWzBdLmNvaW5OYW1lLnNob3VsZC5lcXVhbCgndHBvbHl4Jyk7XG4gICAgICB1bnNpZ25lZC50eFJlcXVlc3RzWzBdLnRyYW5zYWN0aW9uc1swXS51bnNpZ25lZFR4LnBhcnNlZFR4LnR5cGUuc2hvdWxkLmVxdWFsKCcnKTtcbiAgICAgIHVuc2lnbmVkLnR4UmVxdWVzdHNbMF0udHJhbnNhY3Rpb25zWzBdLnVuc2lnbmVkVHguZmVlSW5mby5zaG91bGQubm90LmJlLnVuZGVmaW5lZCgpO1xuICAgICAgdW5zaWduZWQudHhSZXF1ZXN0c1swXS50cmFuc2FjdGlvbnNbMF0udW5zaWduZWRUeC5mZWVJbmZvLmZlZS5zaG91bGQuZXF1YWwoMCk7XG4gICAgICB1bnNpZ25lZC50eFJlcXVlc3RzWzBdLnRyYW5zYWN0aW9uc1swXS51bnNpZ25lZFR4LmZlZUluZm8uZmVlU3RyaW5nLnNob3VsZC5lcXVhbCgnMCcpO1xuICAgICAgdW5zaWduZWQudHhSZXF1ZXN0c1swXS50cmFuc2FjdGlvbnNbMF0udW5zaWduZWRUeC5jb2luU3BlY2lmaWMuc2hvdWxkLm5vdC5iZS51bmRlZmluZWQoKTtcbiAgICAgIHVuc2lnbmVkLnR4UmVxdWVzdHNbMF0udHJhbnNhY3Rpb25zWzBdLnVuc2lnbmVkVHguY29pblNwZWNpZmljLmZpcnN0VmFsaWQuc2hvdWxkLm5vdC5iZS51bmRlZmluZWQoKTtcbiAgICAgIHVuc2lnbmVkLnR4UmVxdWVzdHNbMF0udHJhbnNhY3Rpb25zWzBdLnVuc2lnbmVkVHguY29pblNwZWNpZmljLm1heER1cmF0aW9uLnNob3VsZC5lcXVhbCgyNDAwKTtcbiAgICAgIHVuc2lnbmVkLnR4UmVxdWVzdHNbMF0udHJhbnNhY3Rpb25zWzBdLnVuc2lnbmVkVHguY29pblNwZWNpZmljLmNvbW1vbktleWNoYWluLnNob3VsZC5lcXVhbChcbiAgICAgICAgJzk3ZDlkYThiZjU0NGQwN2YzYzdhZThlZTA2YmIxMmE2M2Y3NDQ3OGQwYzQ2MTIwMWFiOTQ0MjFhOWM4MWQ1YjM3OTU1M2YwMzMyZGFhYTg1Y2I4YzY1ZTFmZTdlNjkwN2M2MjI2OGMwMDgxMmIwOGE0ZTEzNjExNzhlMzA0ZGRiJ1xuICAgICAgKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgcmVjb3ZlciBhIHR4IGZvciBub24tYml0Z28gcmVjb3ZlcmllcycsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGFjY291bnRJbmZvQ0Iud2l0aEFyZ3ModGVzdERhdGEud3J3VXNlci53YWxsZXRBZGRyZXNzKS5yZXNvbHZlcyh7IG5vbmNlOiAwLCBmcmVlQmFsYW5jZTogMTAwMDA3MDAwMDAwIH0pO1xuICAgICAgaGVhZGVySW5mb0NCLnJlc29sdmVzKHtcbiAgICAgICAgaGVhZGVyTnVtYmVyOiB0ZXN0RGF0YS50ZXN0bmV0QmxvY2suYmxvY2tOdW1iZXIsXG4gICAgICAgIGhlYWRlckhhc2g6IHRlc3REYXRhLnRlc3RuZXRCbG9jay5oYXNoLFxuICAgICAgfSk7XG4gICAgICBnZXRGZWVDQi53aXRoQXJncyhyZWNvdmVyeURlc3RpbmF0aW9uLCB0ZXN0RGF0YS53cndVc2VyLndhbGxldEFkZHJlc3MsIDEwMDAwNzAwMDAwMCkucmVzb2x2ZXMoNzQ0MDEpO1xuXG4gICAgICBjb25zdCByZXMgPSBhd2FpdCBiYXNlQ29pbi5yZWNvdmVyKHtcbiAgICAgICAgdXNlcktleTogdGVzdERhdGEud3J3VXNlci51c2VyS2V5LFxuICAgICAgICBiYWNrdXBLZXk6IHRlc3REYXRhLndyd1VzZXIuYmFja3VwS2V5LFxuICAgICAgICBiaXRnb0tleTogdGVzdERhdGEud3J3VXNlci5iaXRnb0tleSxcbiAgICAgICAgd2FsbGV0UGFzc3BocmFzZTogdGVzdERhdGEud3J3VXNlci53YWxsZXRQYXNzcGhyYXNlLFxuICAgICAgICByZWNvdmVyeURlc3RpbmF0aW9uOiByZWNvdmVyeURlc3RpbmF0aW9uLFxuICAgICAgfSk7XG5cbiAgICAgIHJlcy5zaG91bGQubm90LmJlLmVtcHR5KCk7XG4gICAgICByZXMuc2hvdWxkLmhhc093blByb3BlcnR5KCdzZXJpYWxpemVkVHgnKTtcbiAgICAgIHJlcy5zaG91bGQuaGFzT3duUHJvcGVydHkoJ3NjYW5JbmRleCcpO1xuXG4gICAgICBjb25zdCB0eEJ1aWxkZXIgPSBiYXNlQ29pbi5nZXRCdWlsZGVyKCkuZnJvbShyZXMuc2VyaWFsaXplZFR4KTtcbiAgICAgIHR4QnVpbGRlclxuICAgICAgICAudmFsaWRpdHkoe1xuICAgICAgICAgIGZpcnN0VmFsaWQ6IHRlc3REYXRhLnRlc3RuZXRCbG9jay5ibG9ja051bWJlcixcbiAgICAgICAgICBtYXhEdXJhdGlvbjogYmFzZUNvaW4uU1dFRVBfVFhOX0RVUkFUSU9OLFxuICAgICAgICB9KVxuICAgICAgICAucmVmZXJlbmNlQmxvY2sodGVzdERhdGEudGVzdG5ldEJsb2NrLmhhc2gpO1xuXG4gICAgICBjb25zdCB0eCA9IGF3YWl0IHR4QnVpbGRlci5idWlsZCgpO1xuICAgICAgY29uc3QgdHhKc29uID0gdHgudG9Kc29uKCk7XG4gICAgICBzaG91bGQuZGVlcEVxdWFsKHR4SnNvbi5zZW5kZXIsIHRlc3REYXRhLndyd1VzZXIud2FsbGV0QWRkcmVzcyk7XG4gICAgICBzaG91bGQuZGVlcEVxdWFsKHR4SnNvbi5ibG9ja051bWJlciwgdGVzdERhdGEudGVzdG5ldEJsb2NrLmJsb2NrTnVtYmVyKTtcbiAgICAgIHNob3VsZC5kZWVwRXF1YWwodHhKc29uLnJlZmVyZW5jZUJsb2NrLCB0ZXN0RGF0YS50ZXN0bmV0QmxvY2suaGFzaCk7XG4gICAgICBzaG91bGQuZGVlcEVxdWFsKHR4SnNvbi5nZW5lc2lzSGFzaCwgZ2VuZXNpc0hhc2gpO1xuICAgICAgc2hvdWxkLmRlZXBFcXVhbCh0eEpzb24uc3BlY1ZlcnNpb24sIHNwZWNWZXJzaW9uKTtcbiAgICAgIHNob3VsZC5kZWVwRXF1YWwodHhKc29uLm5vbmNlLCBub25jZSk7XG4gICAgICBzaG91bGQuZGVlcEVxdWFsKHR4SnNvbi50aXAsIDApO1xuICAgICAgc2hvdWxkLmRlZXBFcXVhbCh0eEpzb24udHJhbnNhY3Rpb25WZXJzaW9uLCB0eFZlcnNpb24pO1xuICAgICAgc2hvdWxkLmRlZXBFcXVhbCh0eEpzb24uZXJhUGVyaW9kLCBiYXNlQ29pbi5TV0VFUF9UWE5fRFVSQVRJT04pO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCByZWNvdmVyIGEgdHhuIGZvciB1bnNpZ25lZC1zd2VlcCByZWNvdmVyaWVzJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgYWNjb3VudEluZm9DQlxuICAgICAgICAud2l0aEFyZ3ModGVzdERhdGEudW5zaWduZWRTd2VlcFVzZXIud2FsbGV0QWRkcmVzcylcbiAgICAgICAgLnJlc29sdmVzKHsgbm9uY2U6IDAsIGZyZWVCYWxhbmNlOiAxMDAwMDcwMDAwMDAgfSk7XG4gICAgICBoZWFkZXJJbmZvQ0IucmVzb2x2ZXMoe1xuICAgICAgICBoZWFkZXJOdW1iZXI6IHRlc3REYXRhLnRlc3RuZXRCbG9jay5ibG9ja051bWJlcixcbiAgICAgICAgaGVhZGVySGFzaDogdGVzdERhdGEudGVzdG5ldEJsb2NrLmhhc2gsXG4gICAgICB9KTtcbiAgICAgIGdldEZlZUNCLndpdGhBcmdzKHJlY292ZXJ5RGVzdGluYXRpb24sIHRlc3REYXRhLnVuc2lnbmVkU3dlZXBVc2VyLndhbGxldEFkZHJlc3MsIDEwMDAwNzAwMDAwMCkucmVzb2x2ZXMoNzQ0MDEpO1xuXG4gICAgICBjb25zdCByZXMgPSBhd2FpdCBiYXNlQ29pbi5yZWNvdmVyKHtcbiAgICAgICAgYml0Z29LZXk6IHRlc3REYXRhLnVuc2lnbmVkU3dlZXBVc2VyLmJpdGdvS2V5LFxuICAgICAgICByZWNvdmVyeURlc3RpbmF0aW9uOiByZWNvdmVyeURlc3RpbmF0aW9uLFxuICAgICAgfSk7XG5cbiAgICAgIHJlcy5zaG91bGQubm90LmJlLmVtcHR5KCk7XG4gICAgICByZXMudHhSZXF1ZXN0c1swXS50cmFuc2FjdGlvbnNbMF0udW5zaWduZWRUeC5zaG91bGQuaGFzT3duUHJvcGVydHkoJ3NlcmlhbGl6ZWRUeCcpO1xuICAgICAgcmVzLnR4UmVxdWVzdHNbMF0udHJhbnNhY3Rpb25zWzBdLnVuc2lnbmVkVHguc2hvdWxkLmhhc093blByb3BlcnR5KCdzY2FuSW5kZXgnKTtcblxuICAgICAgY29uc3QgdHhCdWlsZGVyID0gYmFzZUNvaW4uZ2V0QnVpbGRlcigpLmZyb20ocmVzLnR4UmVxdWVzdHNbMF0udHJhbnNhY3Rpb25zWzBdLnVuc2lnbmVkVHguc2VyaWFsaXplZFR4KTtcbiAgICAgIHR4QnVpbGRlclxuICAgICAgICAudmFsaWRpdHkoe1xuICAgICAgICAgIGZpcnN0VmFsaWQ6IHRlc3REYXRhLnRlc3RuZXRCbG9jay5ibG9ja051bWJlcixcbiAgICAgICAgICBtYXhEdXJhdGlvbjogYmFzZUNvaW4uU1dFRVBfVFhOX0RVUkFUSU9OLFxuICAgICAgICB9KVxuICAgICAgICAucmVmZXJlbmNlQmxvY2sodGVzdERhdGEudGVzdG5ldEJsb2NrLmhhc2gpXG4gICAgICAgIC5zZW5kZXIoeyBhZGRyZXNzOiB0ZXN0RGF0YS51bnNpZ25lZFN3ZWVwVXNlci53YWxsZXRBZGRyZXNzIH0pO1xuXG4gICAgICBjb25zdCB0eCA9IGF3YWl0IHR4QnVpbGRlci5idWlsZCgpO1xuICAgICAgY29uc3QgdHhKc29uID0gdHgudG9Kc29uKCk7XG4gICAgICBzaG91bGQuZGVlcEVxdWFsKHR4SnNvbi5zZW5kZXIsIHRlc3REYXRhLnVuc2lnbmVkU3dlZXBVc2VyLndhbGxldEFkZHJlc3MpO1xuICAgICAgc2hvdWxkLmRlZXBFcXVhbCh0eEpzb24uYmxvY2tOdW1iZXIsIHRlc3REYXRhLnRlc3RuZXRCbG9jay5ibG9ja051bWJlcik7XG4gICAgICBzaG91bGQuZGVlcEVxdWFsKHR4SnNvbi5yZWZlcmVuY2VCbG9jaywgdGVzdERhdGEudGVzdG5ldEJsb2NrLmhhc2gpO1xuICAgICAgc2hvdWxkLmRlZXBFcXVhbCh0eEpzb24uZ2VuZXNpc0hhc2gsIGdlbmVzaXNIYXNoKTtcbiAgICAgIHNob3VsZC5kZWVwRXF1YWwodHhKc29uLnNwZWNWZXJzaW9uLCBzcGVjVmVyc2lvbik7XG4gICAgICBzaG91bGQuZGVlcEVxdWFsKHR4SnNvbi5ub25jZSwgMCk7XG4gICAgICBzaG91bGQuZGVlcEVxdWFsKHR4SnNvbi50aXAsIDApO1xuICAgICAgc2hvdWxkLmRlZXBFcXVhbCh0eEpzb24udHJhbnNhY3Rpb25WZXJzaW9uLCB0eFZlcnNpb24pO1xuICAgICAgc2hvdWxkLmRlZXBFcXVhbCh0eEpzb24uZXJhUGVyaW9kLCBiYXNlQ29pbi5TV0VFUF9UWE5fRFVSQVRJT04pO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnVG9rZW4gRW5hYmxlbWVudDonLCBmdW5jdGlvbiAoKSB7XG4gICAgaXQoJ3Nob3VsZCBoYXZlIGNvcnJlY3QgdG9rZW4gZW5hYmxlbWVudCBjb25maWcnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCBjb25maWcgPSBiYXNlQ29pbi5nZXRUb2tlbkVuYWJsZW1lbnRDb25maWcoKTtcbiAgICAgIHNob3VsZC5leGlzdChjb25maWcpO1xuICAgICAgY29uZmlnLnJlcXVpcmVzVG9rZW5FbmFibGVtZW50LnNob3VsZC5lcXVhbCh0cnVlKTtcbiAgICAgIGNvbmZpZy5zdXBwb3J0c011bHRpcGxlVG9rZW5FbmFibGVtZW50cy5zaG91bGQuZXF1YWwoZmFsc2UpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCB2YWxpZGF0ZSB3YWxsZXQgdHlwZSBmb3IgdG9rZW4gZW5hYmxlbWVudCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IGNvbmZpZyA9IGJhc2VDb2luLmdldFRva2VuRW5hYmxlbWVudENvbmZpZygpO1xuICAgICAgKCgpID0+IGNvbmZpZy52YWxpZGF0ZVdhbGxldCgnY3VzdG9kaWFsJykpLnNob3VsZC5ub3QudGhyb3coKTtcbiAgICAgICgoKSA9PiBjb25maWcudmFsaWRhdGVXYWxsZXQoJ2hvdCcpKS5zaG91bGQudGhyb3coXG4gICAgICAgIC9Ub2tlbiBlbmFibGVtZW50IGZvciBQb2x5bWVzaCBcXChwb2x5eFxcKSBpcyBvbmx5IHN1cHBvcnRlZCBmb3IgY3VzdG9kaWFsIHdhbGxldHMvXG4gICAgICApO1xuICAgICAgKCgpID0+IGNvbmZpZy52YWxpZGF0ZVdhbGxldCgnY29sZCcpKS5zaG91bGQudGhyb3coXG4gICAgICAgIC9Ub2tlbiBlbmFibGVtZW50IGZvciBQb2x5bWVzaCBcXChwb2x5eFxcKSBpcyBvbmx5IHN1cHBvcnRlZCBmb3IgY3VzdG9kaWFsIHdhbGxldHMvXG4gICAgICApO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../test/unit/transactionBuilder/base.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAS,MAAM,qBAAqB,CAAC;AASpE,eAAO,MAAM,eAAe,QAAO,QAAQ,CAAC,UAAU,CAErD,CAAC;AAEF,eAAO,MAAM,kBAAkB,QAAO,QAAQ,CAAC,UAAU,CAExD,CAAC"}
|