@bitgo-beta/abstract-eth 1.2.3-alpha.401 → 1.2.3-alpha.402

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.
Files changed (153) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/dist/tsconfig.tsbuildinfo +1 -1
  3. package/package.json +8 -8
  4. package/dist/src/abstractEthLikeCoin.d.ts +0 -95
  5. package/dist/src/abstractEthLikeCoin.d.ts.map +0 -1
  6. package/dist/src/abstractEthLikeCoin.js +0 -160
  7. package/dist/src/abstractEthLikeNewCoins.d.ts +0 -749
  8. package/dist/src/abstractEthLikeNewCoins.d.ts.map +0 -1
  9. package/dist/src/abstractEthLikeNewCoins.js +0 -2229
  10. package/dist/src/ethLikeToken.d.ts +0 -70
  11. package/dist/src/ethLikeToken.d.ts.map +0 -1
  12. package/dist/src/ethLikeToken.js +0 -360
  13. package/dist/src/index.d.ts +0 -5
  14. package/dist/src/index.d.ts.map +0 -1
  15. package/dist/src/index.js +0 -21
  16. package/dist/src/lib/contractCall.d.ts +0 -8
  17. package/dist/src/lib/contractCall.d.ts.map +0 -1
  18. package/dist/src/lib/contractCall.js +0 -17
  19. package/dist/src/lib/iface.d.ts +0 -133
  20. package/dist/src/lib/iface.d.ts.map +0 -1
  21. package/dist/src/lib/iface.js +0 -8
  22. package/dist/src/lib/index.d.ts +0 -16
  23. package/dist/src/lib/index.d.ts.map +0 -1
  24. package/dist/src/lib/index.js +0 -57
  25. package/dist/src/lib/keyPair.d.ts +0 -26
  26. package/dist/src/lib/keyPair.d.ts.map +0 -1
  27. package/dist/src/lib/keyPair.js +0 -65
  28. package/dist/src/lib/messages/eip191/eip191Message.d.ts +0 -12
  29. package/dist/src/lib/messages/eip191/eip191Message.d.ts.map +0 -1
  30. package/dist/src/lib/messages/eip191/eip191Message.js +0 -25
  31. package/dist/src/lib/messages/eip191/eip191MessageBuilder.d.ts +0 -19
  32. package/dist/src/lib/messages/eip191/eip191MessageBuilder.d.ts.map +0 -1
  33. package/dist/src/lib/messages/eip191/eip191MessageBuilder.js +0 -27
  34. package/dist/src/lib/messages/eip191/index.d.ts +0 -3
  35. package/dist/src/lib/messages/eip191/index.d.ts.map +0 -1
  36. package/dist/src/lib/messages/eip191/index.js +0 -19
  37. package/dist/src/lib/messages/eip712/eip712Message.d.ts +0 -6
  38. package/dist/src/lib/messages/eip712/eip712Message.d.ts.map +0 -1
  39. package/dist/src/lib/messages/eip712/eip712Message.js +0 -27
  40. package/dist/src/lib/messages/eip712/eip712MessageBuilder.d.ts +0 -7
  41. package/dist/src/lib/messages/eip712/eip712MessageBuilder.d.ts.map +0 -1
  42. package/dist/src/lib/messages/eip712/eip712MessageBuilder.js +0 -15
  43. package/dist/src/lib/messages/eip712/index.d.ts +0 -3
  44. package/dist/src/lib/messages/eip712/index.d.ts.map +0 -1
  45. package/dist/src/lib/messages/eip712/index.js +0 -19
  46. package/dist/src/lib/messages/index.d.ts +0 -4
  47. package/dist/src/lib/messages/index.d.ts.map +0 -1
  48. package/dist/src/lib/messages/index.js +0 -20
  49. package/dist/src/lib/messages/messageBuilderFactory.d.ts +0 -7
  50. package/dist/src/lib/messages/messageBuilderFactory.d.ts.map +0 -1
  51. package/dist/src/lib/messages/messageBuilderFactory.js +0 -23
  52. package/dist/src/lib/transaction.d.ts +0 -67
  53. package/dist/src/lib/transaction.d.ts.map +0 -1
  54. package/dist/src/lib/transaction.js +0 -142
  55. package/dist/src/lib/transactionBuilder.d.ts +0 -270
  56. package/dist/src/lib/transactionBuilder.d.ts.map +0 -1
  57. package/dist/src/lib/transactionBuilder.js +0 -822
  58. package/dist/src/lib/transferBuilder.d.ts +0 -76
  59. package/dist/src/lib/transferBuilder.d.ts.map +0 -1
  60. package/dist/src/lib/transferBuilder.js +0 -307
  61. package/dist/src/lib/transferBuilders/baseNFTTransferBuilder.d.ts +0 -54
  62. package/dist/src/lib/transferBuilders/baseNFTTransferBuilder.d.ts.map +0 -1
  63. package/dist/src/lib/transferBuilders/baseNFTTransferBuilder.js +0 -120
  64. package/dist/src/lib/transferBuilders/index.d.ts +0 -4
  65. package/dist/src/lib/transferBuilders/index.d.ts.map +0 -1
  66. package/dist/src/lib/transferBuilders/index.js +0 -20
  67. package/dist/src/lib/transferBuilders/transferBuilderERC1155.d.ts +0 -17
  68. package/dist/src/lib/transferBuilders/transferBuilderERC1155.d.ts.map +0 -1
  69. package/dist/src/lib/transferBuilders/transferBuilderERC1155.js +0 -96
  70. package/dist/src/lib/transferBuilders/transferBuilderERC721.d.ts +0 -16
  71. package/dist/src/lib/transferBuilders/transferBuilderERC721.d.ts.map +0 -1
  72. package/dist/src/lib/transferBuilders/transferBuilderERC721.js +0 -81
  73. package/dist/src/lib/types.d.ts +0 -39
  74. package/dist/src/lib/types.d.ts.map +0 -1
  75. package/dist/src/lib/types.js +0 -137
  76. package/dist/src/lib/utils.d.ts +0 -310
  77. package/dist/src/lib/utils.d.ts.map +0 -1
  78. package/dist/src/lib/utils.js +0 -829
  79. package/dist/src/lib/walletUtil.d.ts +0 -40
  80. package/dist/src/lib/walletUtil.d.ts.map +0 -1
  81. package/dist/src/lib/walletUtil.js +0 -43
  82. package/dist/src/types.d.ts +0 -9
  83. package/dist/src/types.d.ts.map +0 -1
  84. package/dist/src/types.js +0 -3
  85. package/dist/test/index.d.ts +0 -2
  86. package/dist/test/index.d.ts.map +0 -1
  87. package/dist/test/index.js +0 -18
  88. package/dist/test/unit/coin.d.ts +0 -8
  89. package/dist/test/unit/coin.d.ts.map +0 -1
  90. package/dist/test/unit/coin.js +0 -577
  91. package/dist/test/unit/index.d.ts +0 -6
  92. package/dist/test/unit/index.d.ts.map +0 -1
  93. package/dist/test/unit/index.js +0 -22
  94. package/dist/test/unit/messages/abstractEthMessageBuilderTests.d.ts +0 -3
  95. package/dist/test/unit/messages/abstractEthMessageBuilderTests.d.ts.map +0 -1
  96. package/dist/test/unit/messages/abstractEthMessageBuilderTests.js +0 -110
  97. package/dist/test/unit/messages/abstractEthMessageTestTypes.d.ts +0 -43
  98. package/dist/test/unit/messages/abstractEthMessageTestTypes.d.ts.map +0 -1
  99. package/dist/test/unit/messages/abstractEthMessageTestTypes.js +0 -3
  100. package/dist/test/unit/messages/abstractEthMessagesTests.d.ts +0 -3
  101. package/dist/test/unit/messages/abstractEthMessagesTests.d.ts.map +0 -1
  102. package/dist/test/unit/messages/abstractEthMessagesTests.js +0 -129
  103. package/dist/test/unit/messages/eip191/eip191Message.d.ts +0 -2
  104. package/dist/test/unit/messages/eip191/eip191Message.d.ts.map +0 -1
  105. package/dist/test/unit/messages/eip191/eip191Message.js +0 -15
  106. package/dist/test/unit/messages/eip191/eip191MessageBuilder.d.ts +0 -2
  107. package/dist/test/unit/messages/eip191/eip191MessageBuilder.d.ts.map +0 -1
  108. package/dist/test/unit/messages/eip191/eip191MessageBuilder.js +0 -16
  109. package/dist/test/unit/messages/eip191/fixtures.d.ts +0 -109
  110. package/dist/test/unit/messages/eip191/fixtures.d.ts.map +0 -1
  111. package/dist/test/unit/messages/eip191/fixtures.js +0 -63
  112. package/dist/test/unit/messages/eip712/eip712Message.d.ts +0 -2
  113. package/dist/test/unit/messages/eip712/eip712Message.d.ts.map +0 -1
  114. package/dist/test/unit/messages/eip712/eip712Message.js +0 -15
  115. package/dist/test/unit/messages/eip712/eip712MessageBuilder.d.ts +0 -2
  116. package/dist/test/unit/messages/eip712/eip712MessageBuilder.d.ts.map +0 -1
  117. package/dist/test/unit/messages/eip712/eip712MessageBuilder.js +0 -16
  118. package/dist/test/unit/messages/eip712/fixtures.d.ts +0 -76
  119. package/dist/test/unit/messages/eip712/fixtures.d.ts.map +0 -1
  120. package/dist/test/unit/messages/eip712/fixtures.js +0 -120
  121. package/dist/test/unit/messages/index.d.ts +0 -4
  122. package/dist/test/unit/messages/index.d.ts.map +0 -1
  123. package/dist/test/unit/messages/index.js +0 -20
  124. package/dist/test/unit/messages/messageBuilderFactory.d.ts +0 -2
  125. package/dist/test/unit/messages/messageBuilderFactory.d.ts.map +0 -1
  126. package/dist/test/unit/messages/messageBuilderFactory.js +0 -52
  127. package/dist/test/unit/token.d.ts +0 -2
  128. package/dist/test/unit/token.d.ts.map +0 -1
  129. package/dist/test/unit/token.js +0 -37
  130. package/dist/test/unit/transaction.d.ts +0 -3
  131. package/dist/test/unit/transaction.d.ts.map +0 -1
  132. package/dist/test/unit/transaction.js +0 -60
  133. package/dist/test/unit/transactionBuilder/addressInitialization.d.ts +0 -8
  134. package/dist/test/unit/transactionBuilder/addressInitialization.d.ts.map +0 -1
  135. package/dist/test/unit/transactionBuilder/addressInitialization.js +0 -95
  136. package/dist/test/unit/transactionBuilder/flushNft.d.ts +0 -2
  137. package/dist/test/unit/transactionBuilder/flushNft.d.ts.map +0 -1
  138. package/dist/test/unit/transactionBuilder/flushNft.js +0 -381
  139. package/dist/test/unit/transactionBuilder/index.d.ts +0 -5
  140. package/dist/test/unit/transactionBuilder/index.d.ts.map +0 -1
  141. package/dist/test/unit/transactionBuilder/index.js +0 -21
  142. package/dist/test/unit/transactionBuilder/send.d.ts +0 -3
  143. package/dist/test/unit/transactionBuilder/send.d.ts.map +0 -1
  144. package/dist/test/unit/transactionBuilder/send.js +0 -197
  145. package/dist/test/unit/transactionBuilder/walletInitialization.d.ts +0 -10
  146. package/dist/test/unit/transactionBuilder/walletInitialization.d.ts.map +0 -1
  147. package/dist/test/unit/transactionBuilder/walletInitialization.js +0 -124
  148. package/dist/test/unit/transferBuilder.d.ts +0 -2
  149. package/dist/test/unit/transferBuilder.d.ts.map +0 -1
  150. package/dist/test/unit/transferBuilder.js +0 -76
  151. package/dist/test/unit/utils.d.ts +0 -2
  152. package/dist/test/unit/utils.d.ts.map +0 -1
  153. package/dist/test/unit/utils.js +0 -184
@@ -1,20 +0,0 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./baseNFTTransferBuilder"), exports);
18
- __exportStar(require("./transferBuilderERC1155"), exports);
19
- __exportStar(require("./transferBuilderERC721"), exports);
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3RyYW5zZmVyQnVpbGRlcnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDJEQUF5QztBQUN6QywyREFBeUM7QUFDekMsMERBQXdDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9iYXNlTkZUVHJhbnNmZXJCdWlsZGVyJztcbmV4cG9ydCAqIGZyb20gJy4vdHJhbnNmZXJCdWlsZGVyRVJDMTE1NSc7XG5leHBvcnQgKiBmcm9tICcuL3RyYW5zZmVyQnVpbGRlckVSQzcyMSc7XG4iXX0=
@@ -1,17 +0,0 @@
1
- import { BaseNFTTransferBuilder } from './baseNFTTransferBuilder';
2
- export declare class ERC1155TransferBuilder extends BaseNFTTransferBuilder {
3
- private _tokenIds;
4
- private _values;
5
- private _bytes;
6
- constructor(serializedData?: string);
7
- coin(coin: string): ERC1155TransferBuilder;
8
- tokenContractAddress(address: string): ERC1155TransferBuilder;
9
- entry(tokenId: number, value: number): ERC1155TransferBuilder;
10
- bytes(bytesInNumber: number): ERC1155TransferBuilder;
11
- getIsFirstSigner(): boolean;
12
- signAndBuild(chainId: string): string;
13
- private hasMandatoryFields;
14
- private decodeTransferData;
15
- build(): string;
16
- }
17
- //# sourceMappingURL=transferBuilderERC1155.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transferBuilderERC1155.d.ts","sourceRoot":"","sources":["../../../../src/lib/transferBuilders/transferBuilderERC1155.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAGlE,qBAAa,sBAAuB,SAAQ,sBAAsB;IAChE,OAAO,CAAC,SAAS,CAAW;IAC5B,OAAO,CAAC,OAAO,CAAW;IAC1B,OAAO,CAAC,MAAM,CAAS;gBAEX,cAAc,CAAC,EAAE,MAAM;IAWnC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,sBAAsB;IAM1C,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,sBAAsB;IAQ7D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,sBAAsB;IAM7D,KAAK,CAAC,aAAa,EAAE,MAAM,GAAG,sBAAsB;IAKpD,gBAAgB,IAAI,OAAO;IAI3B,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAqBrC,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,kBAAkB;IAe1B,KAAK,IAAI,MAAM;CAWhB"}
@@ -1,96 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ERC1155TransferBuilder = void 0;
4
- const sdk_core_1 = require("@bitgo-beta/sdk-core");
5
- const utils_1 = require("ethers/lib/utils");
6
- const contractCall_1 = require("../contractCall");
7
- const utils_2 = require("../utils");
8
- const walletUtil_1 = require("../walletUtil");
9
- const baseNFTTransferBuilder_1 = require("./baseNFTTransferBuilder");
10
- const statics_1 = require("@bitgo-beta/statics");
11
- class ERC1155TransferBuilder extends baseNFTTransferBuilder_1.BaseNFTTransferBuilder {
12
- constructor(serializedData) {
13
- super(serializedData);
14
- this.bytes(0);
15
- if (serializedData) {
16
- this.decodeTransferData(serializedData);
17
- }
18
- else {
19
- this._tokenIds = [];
20
- this._values = [];
21
- }
22
- }
23
- coin(coin) {
24
- this._coin = statics_1.coins.get(coin);
25
- this._nativeCoinOperationHashPrefix = this._coin.network.nativeCoinOperationHashPrefix;
26
- return this;
27
- }
28
- tokenContractAddress(address) {
29
- if ((0, utils_2.isValidEthAddress)(address)) {
30
- this._tokenContractAddress = address;
31
- return this;
32
- }
33
- throw new sdk_core_1.InvalidParameterValueError('Invalid address');
34
- }
35
- entry(tokenId, value) {
36
- this._tokenIds.push(tokenId.toString());
37
- this._values.push(value.toString());
38
- return this;
39
- }
40
- bytes(bytesInNumber) {
41
- this._bytes = (0, utils_1.hexZeroPad)((0, utils_1.hexlify)(bytesInNumber), 32);
42
- return this;
43
- }
44
- getIsFirstSigner() {
45
- return false;
46
- }
47
- signAndBuild(chainId) {
48
- this._chainId = chainId;
49
- const hasMandatoryFields = this.hasMandatoryFields();
50
- if (hasMandatoryFields) {
51
- this._data = this.build();
52
- return (0, utils_2.sendMultiSigData)(this._tokenContractAddress, '0', // dummy amount value
53
- this._data, this._expirationTime, this._sequenceId, this.getSignature());
54
- }
55
- throw new sdk_core_1.BuildTransactionError(`Missing transfer mandatory fields.
56
- Destination (to) address, source (from) address, sequenceID, the token contract address, tokenIDs and their values are mandatory`);
57
- }
58
- hasMandatoryFields() {
59
- return (this._tokenIds !== undefined &&
60
- this._tokenIds.length !== 0 &&
61
- this._values.length !== 0 &&
62
- this._tokenIds.length === this._values.length &&
63
- this._toAddress !== undefined &&
64
- this._fromAddress !== undefined &&
65
- this._tokenContractAddress !== undefined &&
66
- this._sequenceId !== undefined);
67
- }
68
- decodeTransferData(data) {
69
- const transferData = (0, utils_2.decodeERC1155TransferData)(data);
70
- this._toAddress = transferData.to;
71
- this._fromAddress = transferData.from;
72
- this._expirationTime = transferData.expireTime;
73
- this._sequenceId = transferData.sequenceId;
74
- this._signature = transferData.signature;
75
- this._tokenContractAddress = transferData.tokenContractAddress;
76
- this._tokenIds = transferData.tokenIds;
77
- this._values = transferData.values;
78
- if (transferData.data) {
79
- this._data = transferData.data;
80
- }
81
- }
82
- build() {
83
- if (this._tokenIds.length === 1) {
84
- const values = [this._fromAddress, this._toAddress, this._tokenIds[0], this._values[0], this._bytes];
85
- const contractCall = new contractCall_1.ContractCall(walletUtil_1.ERC1155SafeTransferTypeMethodId, walletUtil_1.ERC1155SafeTransferTypes, values);
86
- return contractCall.serialize();
87
- }
88
- else {
89
- const values = [this._fromAddress, this._toAddress, this._tokenIds, this._values, this._bytes];
90
- const contractCall = new contractCall_1.ContractCall(walletUtil_1.ERC1155BatchTransferTypeMethodId, walletUtil_1.ERC1155BatchTransferTypes, values);
91
- return contractCall.serialize();
92
- }
93
- }
94
- }
95
- exports.ERC1155TransferBuilder = ERC1155TransferBuilder;
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyRVJDMTE1NS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdHJhbnNmZXJCdWlsZGVycy90cmFuc2ZlckJ1aWxkZXJFUkMxMTU1LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQUF5RjtBQUN6Riw0Q0FBdUQ7QUFFdkQsa0RBQStDO0FBQy9DLG9DQUEwRjtBQUMxRiw4Q0FLdUI7QUFDdkIscUVBQWtFO0FBQ2xFLGlEQUErRTtBQUUvRSxNQUFhLHNCQUF1QixTQUFRLCtDQUFzQjtJQUtoRSxZQUFZLGNBQXVCO1FBQ2pDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2QsSUFBSSxjQUFjLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsa0JBQWtCLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDMUMsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUNwQixDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUksQ0FBQyxJQUFZO1FBQ2YsSUFBSSxDQUFDLEtBQUssR0FBRyxlQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyw4QkFBOEIsR0FBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQTBCLENBQUMsNkJBQTZCLENBQUM7UUFDM0csT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsb0JBQW9CLENBQUMsT0FBZTtRQUNsQyxJQUFJLElBQUEseUJBQWlCLEVBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMscUJBQXFCLEdBQUcsT0FBTyxDQUFDO1lBQ3JDLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUNELE1BQU0sSUFBSSxxQ0FBMEIs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R0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3JHLE1BQU0sWUFBWSxHQUFHLElBQUksMkJBQVksQ0FBQyw0Q0FBK0IsRUFBRSxxQ0FBd0IsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUN6RyxPQUFPLFlBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNsQyxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDL0YsTUFBTSxZQUFZLEdBQUcsSUFBSSwyQkFBWSxDQUFDLDZDQUFnQyxFQUFFLHNDQUF5QixFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQzNHLE9BQU8sWUFBWSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2xDLENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUF4R0Qsd0RBd0dDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnVpbGRUcmFuc2FjdGlvbkVycm9yLCBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvciB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IGhleGxpZnksIGhleFplcm9QYWQgfSBmcm9tICdldGhlcnMvbGliL3V0aWxzJztcblxuaW1wb3J0IHsgQ29udHJhY3RDYWxsIH0gZnJvbSAnLi4vY29udHJhY3RDYWxsJztcbmltcG9ydCB7IGRlY29kZUVSQzExNTVUcmFuc2ZlckRhdGEsIGlzVmFsaWRFdGhBZGRyZXNzLCBzZW5kTXVsdGlTaWdEYXRhIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHtcbiAgRVJDMTE1NUJhdGNoVHJhbnNmZXJUeXBlcyxcbiAgRVJDMTE1NVNhZmVUcmFuc2ZlclR5cGVzLFxuICBFUkMxMTU1QmF0Y2hUcmFuc2ZlclR5cGVNZXRob2RJZCxcbiAgRVJDMTE1NVNhZmVUcmFuc2ZlclR5cGVNZXRob2RJZCxcbn0gZnJvbSAnLi4vd2FsbGV0VXRpbCc7XG5pbXBvcnQgeyBCYXNlTkZUVHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi9iYXNlTkZUVHJhbnNmZXJCdWlsZGVyJztcbmltcG9ydCB7IGNvaW5zLCBFdGhlcmV1bU5ldHdvcmsgYXMgRXRoTGlrZU5ldHdvcmsgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcblxuZXhwb3J0IGNsYXNzIEVSQzExNTVUcmFuc2ZlckJ1aWxkZXIgZXh0ZW5kcyBCYXNlTkZUVHJhbnNmZXJCdWlsZGVyIHtcbiAgcHJpdmF0ZSBfdG9rZW5JZHM6IHN0cmluZ1tdO1xuICBwcml2YXRlIF92YWx1ZXM6IHN0cmluZ1tdO1xuICBwcml2YXRlIF9ieXRlczogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNlcmlhbGl6ZWREYXRhPzogc3RyaW5nKSB7XG4gICAgc3VwZXIoc2VyaWFsaXplZERhdGEpO1xuICAgIHRoaXMuYnl0ZXMoMCk7XG4gICAgaWYgKHNlcmlhbGl6ZWREYXRhKSB7XG4gICAgICB0aGlzLmRlY29kZVRyYW5zZmVyRGF0YShzZXJpYWxpemVkRGF0YSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX3Rva2VuSWRzID0gW107XG4gICAgICB0aGlzLl92YWx1ZXMgPSBbXTtcbiAgICB9XG4gIH1cblxuICBjb2luKGNvaW46IHN0cmluZyk6IEVSQzExNTVUcmFuc2ZlckJ1aWxkZXIge1xuICAgIHRoaXMuX2NvaW4gPSBjb2lucy5nZXQoY29pbik7XG4gICAgdGhpcy5fbmF0aXZlQ29pbk9wZXJhdGlvbkhhc2hQcmVmaXggPSAodGhpcy5fY29pbi5uZXR3b3JrIGFzIEV0aExpa2VOZXR3b3JrKS5uYXRpdmVDb2luT3BlcmF0aW9uSGFzaFByZWZpeDtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHRva2VuQ29udHJhY3RBZGRyZXNzKGFkZHJlc3M6IHN0cmluZyk6IEVSQzExNTVUcmFuc2ZlckJ1aWxkZXIge1xuICAgIGlmIChpc1ZhbGlkRXRoQWRkcmVzcyhhZGRyZXNzKSkge1xuICAgICAgdGhpcy5fdG9rZW5Db250cmFjdEFkZHJlc3MgPSBhZGRyZXNzO1xuICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuICAgIHRocm93IG5ldyBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcignSW52YWxpZCBhZGRyZXNzJyk7XG4gIH1cblxuICBlbnRyeSh0b2tlbklkOiBudW1iZXIsIHZhbHVlOiBudW1iZXIpOiBFUkMxMTU1VHJhbnNmZXJCdWlsZGVyIHtcbiAgICB0aGlzLl90b2tlbklkcy5wdXNoKHRva2VuSWQudG9TdHJpbmcoKSk7XG4gICAgdGhpcy5fdmFsdWVzLnB1c2godmFsdWUudG9TdHJpbmcoKSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBieXRlcyhieXRlc0luTnVtYmVyOiBudW1iZXIpOiBFUkMxMTU1VHJhbnNmZXJCdWlsZGVyIHtcbiAgICB0aGlzLl9ieXRlcyA9IGhleFplcm9QYWQoaGV4bGlmeShieXRlc0luTnVtYmVyKSwgMzIpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgZ2V0SXNGaXJzdFNpZ25lcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBzaWduQW5kQnVpbGQoY2hhaW5JZDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICB0aGlzLl9jaGFpbklkID0gY2hhaW5JZDtcbiAgICBjb25zdCBoYXNNYW5kYXRvcnlGaWVsZHMgPSB0aGlzLmhhc01hbmRhdG9yeUZpZWxkcygpO1xuICAgIGlmIChoYXNNYW5kYXRvcnlGaWVsZHMpIHtcbiAgICAgIHRoaXMuX2RhdGEgPSB0aGlzLmJ1aWxkKCk7XG5cbiAgICAgIHJldHVybiBzZW5kTXVsdGlTaWdEYXRhKFxuICAgICAgICB0aGlzLl90b2tlbkNvbnRyYWN0QWRkcmVzcyxcbiAgICAgICAgJzAnLCAvLyBkdW1teSBhbW91bnQgdmFsdWVcbiAgICAgICAgdGhpcy5fZGF0YSxcbiAgICAgICAgdGhpcy5fZXhwaXJhdGlvblRpbWUsXG4gICAgICAgIHRoaXMuX3NlcXVlbmNlSWQsXG4gICAgICAgIHRoaXMuZ2V0U2lnbmF0dXJlKClcbiAgICAgICk7XG4gICAgfVxuICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoXG4gICAgICBgTWlzc2luZyB0cmFuc2ZlciBtYW5kYXRvcnkgZmllbGRzLiBcbiAgICAgICBEZXN0aW5hdGlvbiAodG8pIGFkZHJlc3MsIHNvdXJjZSAoZnJvbSkgYWRkcmVzcywgc2VxdWVuY2VJRCwgdGhlIHRva2VuIGNvbnRyYWN0IGFkZHJlc3MsIHRva2VuSURzIGFuZCB0aGVpciB2YWx1ZXMgYXJlIG1hbmRhdG9yeWBcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBoYXNNYW5kYXRvcnlGaWVsZHMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuX3Rva2VuSWRzICE9PSB1bmRlZmluZWQgJiZcbiAgICAgIHRoaXMuX3Rva2VuSWRzLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgdGhpcy5fdmFsdWVzLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgdGhpcy5fdG9rZW5JZHMubGVuZ3RoID09PSB0aGlzLl92YWx1ZXMubGVuZ3RoICYmXG4gICAgICB0aGlzLl90b0FkZHJlc3MgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgdGhpcy5fZnJvbUFkZHJlc3MgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgdGhpcy5fdG9rZW5Db250cmFjdEFkZHJlc3MgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgdGhpcy5fc2VxdWVuY2VJZCAhPT0gdW5kZWZpbmVkXG4gICAgKTtcbiAgfVxuICBwcml2YXRlIGRlY29kZVRyYW5zZmVyRGF0YShkYXRhOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCB0cmFuc2ZlckRhdGEgPSBkZWNvZGVFUkMxMTU1VHJhbnNmZXJEYXRhKGRhdGEpO1xuICAgIHRoaXMuX3RvQWRkcmVzcyA9IHRyYW5zZmVyRGF0YS50bztcbiAgICB0aGlzLl9mcm9tQWRkcmVzcyA9IHRyYW5zZmVyRGF0YS5mcm9tO1xuICAgIHRoaXMuX2V4cGlyYXRpb25UaW1lID0gdHJhbnNmZXJEYXRhLmV4cGlyZVRpbWU7XG4gICAgdGhpcy5fc2VxdWVuY2VJZCA9IHRyYW5zZmVyRGF0YS5zZXF1ZW5jZUlkO1xuICAgIHRoaXMuX3NpZ25hdHVyZSA9IHRyYW5zZmVyRGF0YS5zaWduYXR1cmU7XG4gICAgdGhpcy5fdG9rZW5Db250cmFjdEFkZHJlc3MgPSB0cmFuc2ZlckRhdGEudG9rZW5Db250cmFjdEFkZHJlc3M7XG4gICAgdGhpcy5fdG9rZW5JZHMgPSB0cmFuc2ZlckRhdGEudG9rZW5JZHM7XG4gICAgdGhpcy5fdmFsdWVzID0gdHJhbnNmZXJEYXRhLnZhbHVlcztcbiAgICBpZiAodHJhbnNmZXJEYXRhLmRhdGEpIHtcbiAgICAgIHRoaXMuX2RhdGEgPSB0cmFuc2ZlckRhdGEuZGF0YTtcbiAgICB9XG4gIH1cblxuICBidWlsZCgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLl90b2tlbklkcy5sZW5ndGggPT09IDEpIHtcbiAgICAgIGNvbnN0IHZhbHVlcyA9IFt0aGlzLl9mcm9tQWRkcmVzcywgdGhpcy5fdG9BZGRyZXNzLCB0aGlzLl90b2tlbklkc1swXSwgdGhpcy5fdmFsdWVzWzBdLCB0aGlzLl9ieXRlc107XG4gICAgICBjb25zdCBjb250cmFjdENhbGwgPSBuZXcgQ29udHJhY3RDYWxsKEVSQzExNTVTYWZlVHJhbnNmZXJUeXBlTWV0aG9kSWQsIEVSQzExNTVTYWZlVHJhbnNmZXJUeXBlcywgdmFsdWVzKTtcbiAgICAgIHJldHVybiBjb250cmFjdENhbGwuc2VyaWFsaXplKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHZhbHVlcyA9IFt0aGlzLl9mcm9tQWRkcmVzcywgdGhpcy5fdG9BZGRyZXNzLCB0aGlzLl90b2tlbklkcywgdGhpcy5fdmFsdWVzLCB0aGlzLl9ieXRlc107XG4gICAgICBjb25zdCBjb250cmFjdENhbGwgPSBuZXcgQ29udHJhY3RDYWxsKEVSQzExNTVCYXRjaFRyYW5zZmVyVHlwZU1ldGhvZElkLCBFUkMxMTU1QmF0Y2hUcmFuc2ZlclR5cGVzLCB2YWx1ZXMpO1xuICAgICAgcmV0dXJuIGNvbnRyYWN0Q2FsbC5zZXJpYWxpemUoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,16 +0,0 @@
1
- import { BaseNFTTransferBuilder } from './baseNFTTransferBuilder';
2
- export declare class ERC721TransferBuilder extends BaseNFTTransferBuilder {
3
- private _tokenId;
4
- private _bytes;
5
- constructor(serializedData?: string);
6
- coin(coin: string): ERC721TransferBuilder;
7
- tokenContractAddress(address: string): ERC721TransferBuilder;
8
- tokenId(token: string): ERC721TransferBuilder;
9
- bytes(bytesInNumber: number): ERC721TransferBuilder;
10
- getIsFirstSigner(): boolean;
11
- build(): string;
12
- signAndBuild(chainId: string): string;
13
- private hasMandatoryFields;
14
- private decodeTransferData;
15
- }
16
- //# sourceMappingURL=transferBuilderERC721.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transferBuilderERC721.d.ts","sourceRoot":"","sources":["../../../../src/lib/transferBuilders/transferBuilderERC721.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAIlE,qBAAa,qBAAsB,SAAQ,sBAAsB;IAC/D,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAS;gBAEX,cAAc,CAAC,EAAE,MAAM;IAQnC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,qBAAqB;IAMzC,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,qBAAqB;IAQ5D,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,qBAAqB;IAK7C,KAAK,CAAC,aAAa,EAAE,MAAM,GAAG,qBAAqB;IAKnD,gBAAgB,IAAI,OAAO;IAI3B,KAAK,IAAI,MAAM;IAOf,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAqBrC,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,kBAAkB;CAa3B"}
@@ -1,81 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ERC721TransferBuilder = void 0;
4
- const sdk_core_1 = require("@bitgo-beta/sdk-core");
5
- const utils_1 = require("ethers/lib/utils");
6
- const contractCall_1 = require("../contractCall");
7
- const utils_2 = require("../utils");
8
- const baseNFTTransferBuilder_1 = require("./baseNFTTransferBuilder");
9
- const walletUtil_1 = require("../walletUtil");
10
- const statics_1 = require("@bitgo-beta/statics");
11
- class ERC721TransferBuilder extends baseNFTTransferBuilder_1.BaseNFTTransferBuilder {
12
- constructor(serializedData) {
13
- super(serializedData);
14
- this.bytes(0);
15
- if (serializedData) {
16
- this.decodeTransferData(serializedData);
17
- }
18
- }
19
- coin(coin) {
20
- this._coin = statics_1.coins.get(coin);
21
- this._nativeCoinOperationHashPrefix = this._coin.network.nativeCoinOperationHashPrefix;
22
- return this;
23
- }
24
- tokenContractAddress(address) {
25
- if ((0, utils_2.isValidEthAddress)(address)) {
26
- this._tokenContractAddress = address;
27
- return this;
28
- }
29
- throw new sdk_core_1.InvalidParameterValueError('Invalid address');
30
- }
31
- tokenId(token) {
32
- this._tokenId = token;
33
- return this;
34
- }
35
- bytes(bytesInNumber) {
36
- this._bytes = (0, utils_1.hexZeroPad)((0, utils_1.hexlify)(bytesInNumber), 32);
37
- return this;
38
- }
39
- getIsFirstSigner() {
40
- return false;
41
- }
42
- build() {
43
- const types = walletUtil_1.ERC721SafeTransferTypes;
44
- const values = [this._fromAddress, this._toAddress, this._tokenId, this._bytes];
45
- const contractCall = new contractCall_1.ContractCall(walletUtil_1.ERC721SafeTransferTypeMethodId, types, values);
46
- return contractCall.serialize();
47
- }
48
- signAndBuild(chainId) {
49
- this._chainId = chainId;
50
- if (this.hasMandatoryFields()) {
51
- this._data = this.build();
52
- return (0, utils_2.sendMultiSigData)(this._tokenContractAddress, // to
53
- '0', // dummy amount value
54
- this._data, this._expirationTime, this._sequenceId, this.getSignature());
55
- }
56
- throw new sdk_core_1.BuildTransactionError(`Missing transfer mandatory fields.
57
- Destination (to) address, Source (from) address, sequenceID, the token contract address and tokenID are mandatory`);
58
- }
59
- hasMandatoryFields() {
60
- return (this._tokenId !== undefined &&
61
- this._toAddress !== undefined &&
62
- this._fromAddress !== undefined &&
63
- this._tokenContractAddress !== undefined &&
64
- this._sequenceId !== undefined);
65
- }
66
- decodeTransferData(data) {
67
- const transferData = (0, utils_2.decodeERC721TransferData)(data);
68
- this._toAddress = transferData.to;
69
- this._fromAddress = transferData.from;
70
- this._expirationTime = transferData.expireTime;
71
- this._sequenceId = transferData.sequenceId;
72
- this._signature = transferData.signature;
73
- this._tokenContractAddress = transferData.tokenContractAddress;
74
- this._tokenId = transferData.tokenId;
75
- if (transferData.data) {
76
- this._data = transferData.data;
77
- }
78
- }
79
- }
80
- exports.ERC721TransferBuilder = ERC721TransferBuilder;
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyRVJDNzIxLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi90cmFuc2ZlckJ1aWxkZXJzL3RyYW5zZmVyQnVpbGRlckVSQzcyMS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFBeUY7QUFDekYsNENBQXVEO0FBRXZELGtEQUErQztBQUMvQyxvQ0FBeUY7QUFDekYscUVBQWtFO0FBQ2xFLDhDQUF3RjtBQUN4RixpREFBK0U7QUFFL0UsTUFBYSxxQkFBc0IsU0FBUSwrQ0FBc0I7SUFJL0QsWUFBWSxjQUF1QjtRQUNqQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDdEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNkLElBQUksY0FBYyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzFDLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSSxDQUFDLElBQVk7UUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLGVBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLDhCQUE4QixHQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBMEIsQ0FBQyw2QkFBNkIsQ0FBQztRQUMzRyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxPQUFlO1FBQ2xDLElBQUksSUFBQSx5QkFBaUIsRUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQy9CLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxPQUFPLENBQUM7WUFDckMsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBQ0QsTUFBTSxJQUFJLHFDQUEwQixDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFhO1FBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELEtBQUssQ0FBQyxhQUFxQjtRQUN6QixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUEsa0JBQVUsRUFBQyxJQUFBLGVBQU8sRUFBQyxhQUFhLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNyRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxLQUFLO1FBQ0gsTUFBTSxLQUFLLEdBQUcsb0NBQXVCLENBQUM7UUFDdEMsTUFBTSxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDaEYsTUFBTSxZQUFZLEdBQUcsSUFBSSwyQkFBWSxDQUFDLDJDQUE4QixFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNyRixPQUFPLFlBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsWUFBWSxDQUFDLE9BQWU7UUFDMUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDeEIsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsRUFBRSxDQUFDO1lBQzlCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBRTFCLE9BQU8sSUFBQSx3QkFBZ0IsRUFDckIsSUFBSSxDQUFDLHFCQUFxQixFQUFFLEtBQUs7WUFDakMsR0FBRyxFQUFFLHFCQUFxQjtZQUMxQixJQUFJLENBQUMsS0FBSyxFQUNWLElBQUksQ0FBQyxlQUFlLEVBQ3BCLElBQUksQ0FBQyxXQUFXLEVBQ2hCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FDcEIsQ0FBQztRQUNKLENBQUM7UUFFRCxNQUFNLElBQUksZ0NBQXFCLENBQzdCO3lIQUNtSCxDQUNwSCxDQUFDO0lBQ0osQ0FBQztJQUVPLGtCQUFrQjtRQUN4QixPQUFPLENBQ0wsSUFBSSxDQUFDLFFBQVEsS0FBSyxTQUFTO1lBQzNCLElBQUksQ0FBQyxVQUFVLEtBQUssU0FBUztZQUM3QixJQUFJLENBQUMsWUFBWSxLQUFLLFNBQVM7WUFDL0IsSUFBSSxDQUFDLHFCQUFxQixLQUFLLFNBQVM7WUFDeEMsSUFBSSxDQUFDLFdBQVcsS0FBSyxTQUFTLENBQy9CLENBQUM7SUFDSixDQUFDO0lBRU8sa0JBQWtCLENBQUMsSUFBWTtRQUNyQyxNQUFNLFlBQVksR0FBRyxJQUFBLGdDQUF3QixFQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxVQUFVLEdBQUcsWUFBWSxDQUFDLEVBQUUsQ0FBQztRQUNsQyxJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUM7UUFDdEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxZQUFZLENBQUMsVUFBVSxDQUFDO1FBQy9DLElBQUksQ0FBQyxXQUFXLEdBQUcsWUFBWSxDQUFDLFVBQVUsQ0FBQztRQUMzQyxJQUFJLENBQUMsVUFBVSxHQUFHLFlBQVksQ0FBQyxTQUFTLENBQUM7UUFDekMsSUFBSSxDQUFDLHFCQUFxQixHQUFHLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQztRQUMvRCxJQUFJLENBQUMsUUFBUSxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUM7UUFDckMsSUFBSSxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLEtBQUssR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDO1FBQ2pDLENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUEzRkQsc0RBMkZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnVpbGRUcmFuc2FjdGlvbkVycm9yLCBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvciB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IGhleGxpZnksIGhleFplcm9QYWQgfSBmcm9tICdldGhlcnMvbGliL3V0aWxzJztcblxuaW1wb3J0IHsgQ29udHJhY3RDYWxsIH0gZnJvbSAnLi4vY29udHJhY3RDYWxsJztcbmltcG9ydCB7IGRlY29kZUVSQzcyMVRyYW5zZmVyRGF0YSwgaXNWYWxpZEV0aEFkZHJlc3MsIHNlbmRNdWx0aVNpZ0RhdGEgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBCYXNlTkZUVHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi9iYXNlTkZUVHJhbnNmZXJCdWlsZGVyJztcbmltcG9ydCB7IEVSQzcyMVNhZmVUcmFuc2ZlclR5cGVNZXRob2RJZCwgRVJDNzIxU2FmZVRyYW5zZmVyVHlwZXMgfSBmcm9tICcuLi93YWxsZXRVdGlsJztcbmltcG9ydCB7IGNvaW5zLCBFdGhlcmV1bU5ldHdvcmsgYXMgRXRoTGlrZU5ldHdvcmsgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcblxuZXhwb3J0IGNsYXNzIEVSQzcyMVRyYW5zZmVyQnVpbGRlciBleHRlbmRzIEJhc2VORlRUcmFuc2ZlckJ1aWxkZXIge1xuICBwcml2YXRlIF90b2tlbklkOiBzdHJpbmc7XG4gIHByaXZhdGUgX2J5dGVzOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2VyaWFsaXplZERhdGE/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihzZXJpYWxpemVkRGF0YSk7XG4gICAgdGhpcy5ieXRlcygwKTtcbiAgICBpZiAoc2VyaWFsaXplZERhdGEpIHtcbiAgICAgIHRoaXMuZGVjb2RlVHJhbnNmZXJEYXRhKHNlcmlhbGl6ZWREYXRhKTtcbiAgICB9XG4gIH1cblxuICBjb2luKGNvaW46IHN0cmluZyk6IEVSQzcyMVRyYW5zZmVyQnVpbGRlciB7XG4gICAgdGhpcy5fY29pbiA9IGNvaW5zLmdldChjb2luKTtcbiAgICB0aGlzLl9uYXRpdmVDb2luT3BlcmF0aW9uSGFzaFByZWZpeCA9ICh0aGlzLl9jb2luLm5ldHdvcmsgYXMgRXRoTGlrZU5ldHdvcmspLm5hdGl2ZUNvaW5PcGVyYXRpb25IYXNoUHJlZml4O1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgdG9rZW5Db250cmFjdEFkZHJlc3MoYWRkcmVzczogc3RyaW5nKTogRVJDNzIxVHJhbnNmZXJCdWlsZGVyIHtcbiAgICBpZiAoaXNWYWxpZEV0aEFkZHJlc3MoYWRkcmVzcykpIHtcbiAgICAgIHRoaXMuX3Rva2VuQ29udHJhY3RBZGRyZXNzID0gYWRkcmVzcztcbiAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IoJ0ludmFsaWQgYWRkcmVzcycpO1xuICB9XG5cbiAgdG9rZW5JZCh0b2tlbjogc3RyaW5nKTogRVJDNzIxVHJhbnNmZXJCdWlsZGVyIHtcbiAgICB0aGlzLl90b2tlbklkID0gdG9rZW47XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBieXRlcyhieXRlc0luTnVtYmVyOiBudW1iZXIpOiBFUkM3MjFUcmFuc2ZlckJ1aWxkZXIge1xuICAgIHRoaXMuX2J5dGVzID0gaGV4WmVyb1BhZChoZXhsaWZ5KGJ5dGVzSW5OdW1iZXIpLCAzMik7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBnZXRJc0ZpcnN0U2lnbmVyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGJ1aWxkKCk6IHN0cmluZyB7XG4gICAgY29uc3QgdHlwZXMgPSBFUkM3MjFTYWZlVHJhbnNmZXJUeXBlcztcbiAgICBjb25zdCB2YWx1ZXMgPSBbdGhpcy5fZnJvbUFkZHJlc3MsIHRoaXMuX3RvQWRkcmVzcywgdGhpcy5fdG9rZW5JZCwgdGhpcy5fYnl0ZXNdO1xuICAgIGNvbnN0IGNvbnRyYWN0Q2FsbCA9IG5ldyBDb250cmFjdENhbGwoRVJDNzIxU2FmZVRyYW5zZmVyVHlwZU1ldGhvZElkLCB0eXBlcywgdmFsdWVzKTtcbiAgICByZXR1cm4gY29udHJhY3RDYWxsLnNlcmlhbGl6ZSgpO1xuICB9XG5cbiAgc2lnbkFuZEJ1aWxkKGNoYWluSWQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgdGhpcy5fY2hhaW5JZCA9IGNoYWluSWQ7XG4gICAgaWYgKHRoaXMuaGFzTWFuZGF0b3J5RmllbGRzKCkpIHtcbiAgICAgIHRoaXMuX2RhdGEgPSB0aGlzLmJ1aWxkKCk7XG5cbiAgICAgIHJldHVybiBzZW5kTXVsdGlTaWdEYXRhKFxuICAgICAgICB0aGlzLl90b2tlbkNvbnRyYWN0QWRkcmVzcywgLy8gdG9cbiAgICAgICAgJzAnLCAvLyBkdW1teSBhbW91bnQgdmFsdWVcbiAgICAgICAgdGhpcy5fZGF0YSxcbiAgICAgICAgdGhpcy5fZXhwaXJhdGlvblRpbWUsXG4gICAgICAgIHRoaXMuX3NlcXVlbmNlSWQsXG4gICAgICAgIHRoaXMuZ2V0U2lnbmF0dXJlKClcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcihcbiAgICAgIGBNaXNzaW5nIHRyYW5zZmVyIG1hbmRhdG9yeSBmaWVsZHMuIFxuICAgICAgIERlc3RpbmF0aW9uICh0bykgYWRkcmVzcywgU291cmNlIChmcm9tKSBhZGRyZXNzLCBzZXF1ZW5jZUlELCB0aGUgdG9rZW4gY29udHJhY3QgYWRkcmVzcyBhbmQgdG9rZW5JRCBhcmUgbWFuZGF0b3J5YFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGhhc01hbmRhdG9yeUZpZWxkcygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5fdG9rZW5JZCAhPT0gdW5kZWZpbmVkICYmXG4gICAgICB0aGlzLl90b0FkZHJlc3MgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgdGhpcy5fZnJvbUFkZHJlc3MgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgdGhpcy5fdG9rZW5Db250cmFjdEFkZHJlc3MgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgdGhpcy5fc2VxdWVuY2VJZCAhPT0gdW5kZWZpbmVkXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZGVjb2RlVHJhbnNmZXJEYXRhKGRhdGE6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHRyYW5zZmVyRGF0YSA9IGRlY29kZUVSQzcyMVRyYW5zZmVyRGF0YShkYXRhKTtcbiAgICB0aGlzLl90b0FkZHJlc3MgPSB0cmFuc2ZlckRhdGEudG87XG4gICAgdGhpcy5fZnJvbUFkZHJlc3MgPSB0cmFuc2ZlckRhdGEuZnJvbTtcbiAgICB0aGlzLl9leHBpcmF0aW9uVGltZSA9IHRyYW5zZmVyRGF0YS5leHBpcmVUaW1lO1xuICAgIHRoaXMuX3NlcXVlbmNlSWQgPSB0cmFuc2ZlckRhdGEuc2VxdWVuY2VJZDtcbiAgICB0aGlzLl9zaWduYXR1cmUgPSB0cmFuc2ZlckRhdGEuc2lnbmF0dXJlO1xuICAgIHRoaXMuX3Rva2VuQ29udHJhY3RBZGRyZXNzID0gdHJhbnNmZXJEYXRhLnRva2VuQ29udHJhY3RBZGRyZXNzO1xuICAgIHRoaXMuX3Rva2VuSWQgPSB0cmFuc2ZlckRhdGEudG9rZW5JZDtcbiAgICBpZiAodHJhbnNmZXJEYXRhLmRhdGEpIHtcbiAgICAgIHRoaXMuX2RhdGEgPSB0cmFuc2ZlckRhdGEuZGF0YTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,39 +0,0 @@
1
- import { TypedTransaction } from '@ethereumjs/tx';
2
- import EthereumCommon from '@ethereumjs/common';
3
- import { EthLikeTransactionData, TxData } from './iface';
4
- import { KeyPair } from './keyPair';
5
- /**
6
- * An Ethereum transaction with helpers for serialization and deserialization.
7
- */
8
- export declare class EthTransactionData implements EthLikeTransactionData {
9
- private tx;
10
- protected args?: {
11
- deployedAddress?: string;
12
- chainId?: string;
13
- };
14
- constructor(tx: TypedTransaction, args?: {
15
- deployedAddress?: string;
16
- chainId?: string;
17
- });
18
- /**
19
- * Build an thereum transaction from its JSON representation
20
- *
21
- * @param {TxData} tx The JSON representation of the transaction
22
- * @param {EthereumCommon} common Class to access chain and hardfork parameters
23
- * @returns {EthTransactionData} a new ethereum transaction object
24
- */
25
- static fromJson(tx: TxData, common: EthereumCommon): EthTransactionData;
26
- /**
27
- * Build an ethereum transaction from its string serialization
28
- *
29
- * @param tx The string serialization of the ethereum transaction
30
- * @param common
31
- */
32
- static fromSerialized(tx: string, common: EthereumCommon): EthTransactionData;
33
- sign(keyPair: KeyPair): void;
34
- /** @inheritdoc */
35
- toJson(): TxData;
36
- /** @inheritdoc */
37
- toSerialized(): string;
38
- }
39
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,gBAAgB,EAIjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,cAAc,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAA6B,sBAAsB,EAAoC,MAAM,EAAE,MAAM,SAAS,CAAC;AACtH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC;;GAEG;AACH,qBAAa,kBAAmB,YAAW,sBAAsB;IAC/D,OAAO,CAAC,EAAE,CAAmB;IAC7B,SAAS,CAAC,IAAI,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;gBAEpD,EAAE,EAAE,gBAAgB,EAAE,IAAI,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;IAKvF;;;;;;OAMG;WACW,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,kBAAkB;IAuC9E;;;;;OAKG;WACW,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,kBAAkB;IAMpF,IAAI,CAAC,OAAO,EAAE,OAAO;IAKrB,kBAAkB;IAClB,MAAM,IAAI,MAAM;IA2DhB,kBAAkB;IAClB,YAAY,IAAI,MAAM;CAGvB"}
@@ -1,137 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.EthTransactionData = void 0;
7
- const assert_1 = __importDefault(require("assert"));
8
- const bignumber_js_1 = __importDefault(require("bignumber.js"));
9
- const tx_1 = require("@ethereumjs/tx");
10
- const ethereumjs_util_1 = require("ethereumjs-util");
11
- const iface_1 = require("./iface");
12
- // https://github.com/ethereumjs/ethereumjs-monorepo/blob/master/packages/tx/src/transactionFactory.ts#L31
13
- const LEGACY_TX_TYPE = 0;
14
- const EIP1559_TX_TYPE = 2;
15
- /**
16
- * An Ethereum transaction with helpers for serialization and deserialization.
17
- */
18
- class EthTransactionData {
19
- constructor(tx, args) {
20
- this.tx = tx;
21
- this.args = args;
22
- }
23
- /**
24
- * Build an thereum transaction from its JSON representation
25
- *
26
- * @param {TxData} tx The JSON representation of the transaction
27
- * @param {EthereumCommon} common Class to access chain and hardfork parameters
28
- * @returns {EthTransactionData} a new ethereum transaction object
29
- */
30
- static fromJson(tx, common) {
31
- const nonce = (0, ethereumjs_util_1.addHexPrefix)(new bignumber_js_1.default(tx.nonce).toString(16));
32
- const value = (0, ethereumjs_util_1.addHexPrefix)(new bignumber_js_1.default(tx.value).toString(16));
33
- const gasLimit = (0, ethereumjs_util_1.addHexPrefix)(new bignumber_js_1.default(tx.gasLimit).toString(16));
34
- const chainId = tx.chainId ? (0, ethereumjs_util_1.addHexPrefix)(new bignumber_js_1.default(tx.chainId).toString(16)) : undefined;
35
- const gasPrice = isLegacyTx(tx) ? (0, ethereumjs_util_1.addHexPrefix)(new bignumber_js_1.default(tx.gasPrice).toString(16)) : undefined;
36
- const maxFeePerGas = isEIP1559Txn(tx) ? (0, ethereumjs_util_1.addHexPrefix)(new bignumber_js_1.default(tx.maxFeePerGas).toString(16)) : undefined;
37
- const maxPriorityFeePerGas = isEIP1559Txn(tx)
38
- ? (0, ethereumjs_util_1.addHexPrefix)(new bignumber_js_1.default(tx.maxPriorityFeePerGas).toString(16))
39
- : undefined;
40
- return new EthTransactionData(tx_1.TransactionFactory.fromTxData({
41
- type: isLegacyTx(tx) ? LEGACY_TX_TYPE : EIP1559_TX_TYPE,
42
- chainId,
43
- nonce,
44
- to: tx.to,
45
- gasPrice,
46
- gasLimit,
47
- maxFeePerGas,
48
- maxPriorityFeePerGas,
49
- value,
50
- data: tx.data,
51
- v: tx.v,
52
- r: tx.r,
53
- s: tx.s,
54
- }, { common: common }), {
55
- deployedAddress: tx.deployedAddress,
56
- chainId: (0, ethereumjs_util_1.addHexPrefix)(new bignumber_js_1.default(Number(tx.chainId)).toString(16)),
57
- });
58
- }
59
- /**
60
- * Build an ethereum transaction from its string serialization
61
- *
62
- * @param tx The string serialization of the ethereum transaction
63
- * @param common
64
- */
65
- static fromSerialized(tx, common) {
66
- return new EthTransactionData(tx_1.TransactionFactory.fromSerializedData((0, ethereumjs_util_1.toBuffer)((0, ethereumjs_util_1.addHexPrefix)(tx)), { common: common }));
67
- }
68
- sign(keyPair) {
69
- const privateKey = Buffer.from(keyPair.getKeys().prv, 'hex');
70
- this.tx = this.tx.sign(privateKey);
71
- }
72
- /** @inheritdoc */
73
- toJson() {
74
- const result = {
75
- nonce: (0, ethereumjs_util_1.bufferToInt)((0, ethereumjs_util_1.toUnsigned)(this.tx.nonce)),
76
- gasLimit: new bignumber_js_1.default((0, ethereumjs_util_1.bufferToHex)((0, ethereumjs_util_1.toUnsigned)(this.tx.gasLimit)), 16).toString(10),
77
- value: this.tx.value.toString(10),
78
- data: (0, ethereumjs_util_1.bufferToHex)(this.tx.data),
79
- };
80
- if (this.tx.isSigned()) {
81
- result.id = (0, ethereumjs_util_1.addHexPrefix)((0, ethereumjs_util_1.bufferToHex)(this.tx.hash()));
82
- }
83
- else {
84
- result.id = (0, ethereumjs_util_1.addHexPrefix)((0, ethereumjs_util_1.bufferToHex)(this.tx.getMessageToSign()));
85
- }
86
- if (this.tx.to) {
87
- result.to = (0, ethereumjs_util_1.bufferToHex)(this.tx.to.toBuffer());
88
- }
89
- if (this.tx.verifySignature()) {
90
- result.from = (0, ethereumjs_util_1.bufferToHex)(this.tx.getSenderAddress().toBuffer());
91
- (0, assert_1.default)(this.tx.r != undefined);
92
- result.r = (0, ethereumjs_util_1.bufferToHex)((0, ethereumjs_util_1.toUnsigned)(this.tx.r));
93
- (0, assert_1.default)(this.tx.s != undefined);
94
- result.s = (0, ethereumjs_util_1.bufferToHex)((0, ethereumjs_util_1.toUnsigned)(this.tx.s));
95
- }
96
- if (this.tx.v) {
97
- result.v = (0, ethereumjs_util_1.bufferToHex)((0, ethereumjs_util_1.toUnsigned)(this.tx.v));
98
- }
99
- result.chainId = (0, ethereumjs_util_1.addHexPrefix)(this.tx.common.chainIdBN().toString(16));
100
- if (this.args && this.args.deployedAddress) {
101
- result.deployedAddress = this.args.deployedAddress;
102
- }
103
- if (this.tx instanceof tx_1.Transaction) {
104
- const gasPrice = new bignumber_js_1.default((0, ethereumjs_util_1.bufferToHex)((0, ethereumjs_util_1.toUnsigned)(this.tx.gasPrice)), 16).toString(10);
105
- return {
106
- ...result,
107
- _type: iface_1.ETHTransactionType.LEGACY,
108
- gasPrice,
109
- };
110
- }
111
- else if (this.tx instanceof tx_1.FeeMarketEIP1559Transaction) {
112
- const maxFeePerGas = new bignumber_js_1.default((0, ethereumjs_util_1.bufferToHex)((0, ethereumjs_util_1.toUnsigned)(this.tx.maxFeePerGas)), 16).toString(10);
113
- const maxPriorityFeePerGas = new bignumber_js_1.default((0, ethereumjs_util_1.bufferToHex)((0, ethereumjs_util_1.toUnsigned)(this.tx.maxPriorityFeePerGas)), 16).toString(10);
114
- return {
115
- ...result,
116
- _type: iface_1.ETHTransactionType.EIP1559,
117
- maxFeePerGas,
118
- maxPriorityFeePerGas,
119
- };
120
- }
121
- else {
122
- throw new Error(`Unsupported tx type: ${tx_1.AccessListEIP2930Transaction.name}`);
123
- }
124
- }
125
- /** @inheritdoc */
126
- toSerialized() {
127
- return (0, ethereumjs_util_1.addHexPrefix)(this.tx.serialize().toString('hex'));
128
- }
129
- }
130
- exports.EthTransactionData = EthTransactionData;
131
- function isLegacyTx(tx) {
132
- return tx._type === iface_1.ETHTransactionType.LEGACY;
133
- }
134
- function isEIP1559Txn(tx) {
135
- return tx._type === iface_1.ETHTransactionType.EIP1559;
136
- }
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLG9EQUE0QjtBQUM1QixnRUFBcUM7QUFDckMsdUNBTXdCO0FBRXhCLHFEQUErRjtBQUMvRixtQ0FBc0g7QUFHdEgsMEdBQTBHO0FBQzFHLE1BQU0sY0FBYyxHQUFHLENBQUMsQ0FBQztBQUN6QixNQUFNLGVBQWUsR0FBRyxDQUFDLENBQUM7QUFFMUI7O0dBRUc7QUFDSCxNQUFhLGtCQUFrQjtJQUk3QixZQUFZLEVBQW9CLEVBQUUsSUFBcUQ7UUFDckYsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUM7UUFDYixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFVLEVBQUUsTUFBc0I7UUFDdkQsTUFBTSxLQUFLLEdBQUcsSUFBQSw4QkFBWSxFQUFDLElBQUksc0JBQVMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDakUsTUFBTSxLQUFLLEdBQUcsSUFBQSw4QkFBWSxFQUFDLElBQUksc0JBQVMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDakUsTUFBTSxRQUFRLEdBQUcsSUFBQSw4QkFBWSxFQUFDLElBQUksc0JBQVMsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDdkUsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBQSw4QkFBWSxFQUFDLElBQUksc0JBQVMsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FB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LElBQUEsNkJBQVcsRUFBQyxJQUFBLDRCQUFVLEVBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNuRyxNQUFNLG9CQUFvQixHQUFHLElBQUksc0JBQVMsQ0FBQyxJQUFBLDZCQUFXLEVBQUMsSUFBQSw0QkFBVSxFQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FDNUcsRUFBRSxDQUNILENBQUM7WUFFRixPQUFPO2dCQUNMLEdBQUcsTUFBTTtnQkFDVCxLQUFLLEVBQUUsMEJBQWtCLENBQUMsT0FBTztnQkFDakMsWUFBWTtnQkFDWixvQkFBb0I7YUFDckIsQ0FBQztRQUNKLENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsaUNBQTRCLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUMvRSxDQUFDO0lBQ0gsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixZQUFZO1FBQ1YsT0FBTyxJQUFBLDhCQUFZLEVBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUMzRCxDQUFDO0NBQ0Y7QUF4SUQsZ0RBd0lDO0FBRUQsU0FBUyxVQUFVLENBQUMsRUFBVTtJQUM1QixPQUFPLEVBQUUsQ0FBQyxLQUFLLEtBQUssMEJBQWtCLENBQUMsTUFBTSxDQUFDO0FBQ2hELENBQUM7QUFFRCxTQUFTLFlBQVksQ0FBQyxFQUFVO0lBQzlCLE9BQU8sRUFBRSxDQUFDLEtBQUssS0FBSywwQkFBa0IsQ0FBQyxPQUFPLENBQUM7QUFDakQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCBCaWdOdW1iZXIgZnJvbSAnYmlnbnVtYmVyLmpzJztcbmltcG9ydCB7XG4gIFRyYW5zYWN0aW9uRmFjdG9yeSxcbiAgVHlwZWRUcmFuc2FjdGlvbixcbiAgVHJhbnNhY3Rpb24gYXMgTGVnYWN5VHJhbnNhY3Rpb24sXG4gIEZlZU1hcmtldEVJUDE1NTlUcmFuc2FjdGlvbixcbiAgQWNjZXNzTGlzdEVJUDI5MzBUcmFuc2FjdGlvbixcbn0gZnJvbSAnQGV0aGVyZXVtanMvdHgnO1xuaW1wb3J0IEV0aGVyZXVtQ29tbW9uIGZyb20gJ0BldGhlcmV1bWpzL2NvbW1vbic7XG5pbXBvcnQgeyBidWZmZXJUb0hleCwgYnVmZmVyVG9JbnQsIHRvQnVmZmVyLCB0b1Vuc2lnbmVkLCBhZGRIZXhQcmVmaXggfSBmcm9tICdldGhlcmV1bWpzLXV0aWwnO1xuaW1wb3J0IHsgQmFzZVR4RGF0YSwgRUlQMTU1OVR4RGF0YSwgRXRoTGlrZVRyYW5zYWN0aW9uRGF0YSwgTGVnYWN5VHhEYXRhLCBFVEhUcmFuc2FjdGlvblR5cGUsIFR4RGF0YSB9IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHsgS2V5UGFpciB9IGZyb20gJy4va2V5UGFpcic7XG5cbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ldGhlcmV1bWpzL2V0aGVyZXVtanMtbW9ub3JlcG8vYmxvYi9tYXN0ZXIvcGFja2FnZXMvdHgvc3JjL3RyYW5zYWN0aW9uRmFjdG9yeS50cyNMMzFcbmNvbnN0IExFR0FDWV9UWF9UWVBFID0gMDtcbmNvbnN0IEVJUDE1NTlfVFhfVFlQRSA9IDI7XG5cbi8qKlxuICogQW4gRXRoZXJldW0gdHJhbnNhY3Rpb24gd2l0aCBoZWxwZXJzIGZvciBzZXJpYWxpemF0aW9uIGFuZCBkZXNlcmlhbGl6YXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBFdGhUcmFuc2FjdGlvbkRhdGEgaW1wbGVtZW50cyBFdGhMaWtlVHJhbnNhY3Rpb25EYXRhIHtcbiAgcHJpdmF0ZSB0eDogVHlwZWRUcmFuc2FjdGlvbjtcbiAgcHJvdGVjdGVkIGFyZ3M/OiB7IGRlcGxveWVkQWRkcmVzcz86IHN0cmluZzsgY2hhaW5JZD86IHN0cmluZyB9O1xuXG4gIGNvbnN0cnVjdG9yKHR4OiBUeXBlZFRyYW5zYWN0aW9uLCBhcmdzPzogeyBkZXBsb3llZEFkZHJlc3M/OiBzdHJpbmc7IGNoYWluSWQ/OiBzdHJpbmcgfSkge1xuICAgIHRoaXMudHggPSB0eDtcbiAgICB0aGlzLmFyZ3MgPSBhcmdzO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkIGFuIHRoZXJldW0gdHJhbnNhY3Rpb24gZnJvbSBpdHMgSlNPTiByZXByZXNlbnRhdGlvblxuICAgKlxuICAgKiBAcGFyYW0ge1R4RGF0YX0gdHggVGhlIEpTT04gcmVwcmVzZW50YXRpb24gb2YgdGhlIHRyYW5zYWN0aW9uXG4gICAqIEBwYXJhbSB7RXRoZXJldW1Db21tb259IGNvbW1vbiBDbGFzcyB0byBhY2Nlc3MgY2hhaW4gYW5kIGhhcmRmb3JrIHBhcmFtZXRlcnNcbiAgICogQHJldHVybnMge0V0aFRyYW5zYWN0aW9uRGF0YX0gYSBuZXcgZXRoZXJldW0gdHJhbnNhY3Rpb24gb2JqZWN0XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21Kc29uKHR4OiBUeERhdGEsIGNvbW1vbjogRXRoZXJldW1Db21tb24pOiBFdGhUcmFuc2FjdGlvbkRhdGEge1xuICAgIGNvbnN0IG5vbmNlID0gYWRkSGV4UHJlZml4KG5ldyBCaWdOdW1iZXIodHgubm9uY2UpLnRvU3RyaW5nKDE2KSk7XG4gICAgY29uc3QgdmFsdWUgPSBhZGRIZXhQcmVmaXgobmV3IEJpZ051bWJlcih0eC52YWx1ZSkudG9TdHJpbmcoMTYpKTtcbiAgICBjb25zdCBnYXNMaW1pdCA9IGFkZEhleFByZWZpeChuZXcgQmlnTnVtYmVyKHR4Lmdhc0xpbWl0KS50b1N0cmluZygxNikpO1xuICAgIGNvbnN0IGNoYWluSWQgPSB0eC5jaGFpbklkID8gYWRkSGV4UHJlZml4KG5ldyBCaWdOdW1iZXIodHguY2hhaW5JZCkudG9TdHJpbmcoMTYpKSA6IHVuZGVmaW5lZDtcblxuICAgIGNvbnN0IGdhc1ByaWNlID0gaXNMZWdhY3lUeCh0eCkgPyBhZGRIZXhQcmVmaXgobmV3IEJpZ051bWJlcih0eC5nYXNQcmljZSkudG9TdHJpbmcoMTYpKSA6IHVuZGVmaW5lZDtcblxuICAgIGNvbnN0IG1heEZlZVBlckdhcyA9IGlzRUlQMTU1OVR4bih0eCkgPyBhZGRIZXhQcmVmaXgobmV3IEJpZ051bWJlcih0eC5tYXhGZWVQZXJHYXMpLnRvU3RyaW5nKDE2KSkgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgbWF4UHJpb3JpdHlGZWVQZXJHYXMgPSBpc0VJUDE1NTlUeG4odHgpXG4gICAgICA/IGFkZEhleFByZWZpeChuZXcgQmlnTnVtYmVyKHR4Lm1heFByaW9yaXR5RmVlUGVyR2FzKS50b1N0cmluZygxNikpXG4gICAgICA6IHVuZGVmaW5lZDtcblxuICAgIHJldHVybiBuZXcgRXRoVHJhbnNhY3Rpb25EYXRhKFxuICAgICAgVHJhbnNhY3Rpb25GYWN0b3J5LmZyb21UeERhdGEoXG4gICAgICAgIHtcbiAgICAgICAgICB0eXBlOiBpc0xlZ2FjeVR4KHR4KSA/IExFR0FDWV9UWF9UWVBFIDogRUlQMTU1OV9UWF9UWVBFLFxuICAgICAgICAgIGNoYWluSWQsXG4gICAgICAgICAgbm9uY2UsXG4gICAgICAgICAgdG86IHR4LnRvLFxuICAgICAgICAgIGdhc1ByaWNlLFxuICAgICAgICAgIGdhc0xpbWl0LFxuICAgICAgICAgIG1heEZlZVBlckdhcyxcbiAgICAgICAgICBtYXhQcmlvcml0eUZlZVBlckdhcyxcbiAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICBkYXRhOiB0eC5kYXRhLFxuICAgICAgICAgIHY6IHR4LnYsXG4gICAgICAgICAgcjogdHgucixcbiAgICAgICAgICBzOiB0eC5zLFxuICAgICAgICB9LFxuICAgICAgICB7IGNvbW1vbjogY29tbW9uIH1cbiAgICAgICksXG4gICAgICB7XG4gICAgICAgIGRlcGxveWVkQWRkcmVzczogdHguZGVwbG95ZWRBZGRyZXNzLFxuICAgICAgICBjaGFpbklkOiBhZGRIZXhQcmVmaXgobmV3IEJpZ051bWJlcihOdW1iZXIodHguY2hhaW5JZCkpLnRvU3RyaW5nKDE2KSksXG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZCBhbiBldGhlcmV1bSB0cmFuc2FjdGlvbiBmcm9tIGl0cyBzdHJpbmcgc2VyaWFsaXphdGlvblxuICAgKlxuICAgKiBAcGFyYW0gdHggVGhlIHN0cmluZyBzZXJpYWxpemF0aW9uIG9mIHRoZSBldGhlcmV1bSB0cmFuc2FjdGlvblxuICAgKiBAcGFyYW0gY29tbW9uXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21TZXJpYWxpemVkKHR4OiBzdHJpbmcsIGNvbW1vbjogRXRoZXJldW1Db21tb24pOiBFdGhUcmFuc2FjdGlvbkRhdGEge1xuICAgIHJldHVybiBuZXcgRXRoVHJhbnNhY3Rpb25EYXRhKFxuICAgICAgVHJhbnNhY3Rpb25GYWN0b3J5LmZyb21TZXJpYWxpemVkRGF0YSh0b0J1ZmZlcihhZGRIZXhQcmVmaXgodHgpKSwgeyBjb21tb246IGNvbW1vbiB9KVxuICAgICk7XG4gIH1cblxuICBzaWduKGtleVBhaXI6IEtleVBhaXIpIHtcbiAgICBjb25zdCBwcml2YXRlS2V5ID0gQnVmZmVyLmZyb20oa2V5UGFpci5nZXRLZXlzKCkucHJ2IGFzIHN0cmluZywgJ2hleCcpO1xuICAgIHRoaXMudHggPSB0aGlzLnR4LnNpZ24ocHJpdmF0ZUtleSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdG9Kc29uKCk6IFR4RGF0YSB7XG4gICAgY29uc3QgcmVzdWx0OiBCYXNlVHhEYXRhID0ge1xuICAgICAgbm9uY2U6IGJ1ZmZlclRvSW50KHRvVW5zaWduZWQodGhpcy50eC5ub25jZSkpLFxuICAgICAgZ2FzTGltaXQ6IG5ldyBCaWdOdW1iZXIoYnVmZmVyVG9IZXgodG9VbnNpZ25lZCh0aGlzLnR4Lmdhc0xpbWl0KSksIDE2KS50b1N0cmluZygxMCksXG4gICAgICB2YWx1ZTogdGhpcy50eC52YWx1ZS50b1N0cmluZygxMCksXG4gICAgICBkYXRhOiBidWZmZXJUb0hleCh0aGlzLnR4LmRhdGEpLFxuICAgIH07XG5cbiAgICBpZiAodGhpcy50eC5pc1NpZ25lZCgpKSB7XG4gICAgICByZXN1bHQuaWQgPSBhZGRIZXhQcmVmaXgoYnVmZmVyVG9IZXgodGhpcy50eC5oYXNoKCkpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmVzdWx0LmlkID0gYWRkSGV4UHJlZml4KGJ1ZmZlclRvSGV4KHRoaXMudHguZ2V0TWVzc2FnZVRvU2lnbigpKSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudHgudG8pIHtcbiAgICAgIHJlc3VsdC50byA9IGJ1ZmZlclRvSGV4KHRoaXMudHgudG8udG9CdWZmZXIoKSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudHgudmVyaWZ5U2lnbmF0dXJlKCkpIHtcbiAgICAgIHJlc3VsdC5mcm9tID0gYnVmZmVyVG9IZXgodGhpcy50eC5nZXRTZW5kZXJBZGRyZXNzKCkudG9CdWZmZXIoKSk7XG4gICAgICBhc3NlcnQodGhpcy50eC5yICE9IHVuZGVmaW5lZCk7XG4gICAgICByZXN1bHQuciA9IGJ1ZmZlclRvSGV4KHRvVW5zaWduZWQodGhpcy50eC5yKSk7XG4gICAgICBhc3NlcnQodGhpcy50eC5zICE9IHVuZGVmaW5lZCk7XG4gICAgICByZXN1bHQucyA9IGJ1ZmZlclRvSGV4KHRvVW5zaWduZWQodGhpcy50eC5zKSk7XG4gICAgfVxuICAgIGlmICh0aGlzLnR4LnYpIHtcbiAgICAgIHJlc3VsdC52ID0gYnVmZmVyVG9IZXgodG9VbnNpZ25lZCh0aGlzLnR4LnYpKTtcbiAgICB9XG4gICAgcmVzdWx0LmNoYWluSWQgPSBhZGRIZXhQcmVmaXgodGhpcy50eC5jb21tb24uY2hhaW5JZEJOKCkudG9TdHJpbmcoMTYpKTtcblxuICAgIGlmICh0aGlzLmFyZ3MgJiYgdGhpcy5hcmdzLmRlcGxveWVkQWRkcmVzcykge1xuICAgICAgcmVzdWx0LmRlcGxveWVkQWRkcmVzcyA9IHRoaXMuYXJncy5kZXBsb3llZEFkZHJlc3M7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudHggaW5zdGFuY2VvZiBMZWdhY3lUcmFuc2FjdGlvbikge1xuICAgICAgY29uc3QgZ2FzUHJpY2UgPSBuZXcgQmlnTnVtYmVyKGJ1ZmZlclRvSGV4KHRvVW5zaWduZWQodGhpcy50eC5nYXNQcmljZSkpLCAxNikudG9TdHJpbmcoMTApO1xuXG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5yZXN1bHQsXG4gICAgICAgIF90eXBlOiBFVEhUcmFuc2FjdGlvblR5cGUuTEVHQUNZLFxuICAgICAgICBnYXNQcmljZSxcbiAgICAgIH07XG4gICAgfSBlbHNlIGlmICh0aGlzLnR4IGluc3RhbmNlb2YgRmVlTWFya2V0RUlQMTU1OVRyYW5zYWN0aW9uKSB7XG4gICAgICBjb25zdCBtYXhGZWVQZXJHYXMgPSBuZXcgQmlnTnVtYmVyKGJ1ZmZlclRvSGV4KHRvVW5zaWduZWQodGhpcy50eC5tYXhGZWVQZXJHYXMpKSwgMTYpLnRvU3RyaW5nKDEwKTtcbiAgICAgIGNvbnN0IG1heFByaW9yaXR5RmVlUGVyR2FzID0gbmV3IEJpZ051bWJlcihidWZmZXJUb0hleCh0b1Vuc2lnbmVkKHRoaXMudHgubWF4UHJpb3JpdHlGZWVQZXJHYXMpKSwgMTYpLnRvU3RyaW5nKFxuICAgICAgICAxMFxuICAgICAgKTtcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4ucmVzdWx0LFxuICAgICAgICBfdHlwZTogRVRIVHJhbnNhY3Rpb25UeXBlLkVJUDE1NTksXG4gICAgICAgIG1heEZlZVBlckdhcyxcbiAgICAgICAgbWF4UHJpb3JpdHlGZWVQZXJHYXMsXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFVuc3VwcG9ydGVkIHR4IHR5cGU6ICR7QWNjZXNzTGlzdEVJUDI5MzBUcmFuc2FjdGlvbi5uYW1lfWApO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b1NlcmlhbGl6ZWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYWRkSGV4UHJlZml4KHRoaXMudHguc2VyaWFsaXplKCkudG9TdHJpbmcoJ2hleCcpKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBpc0xlZ2FjeVR4KHR4OiBUeERhdGEpOiB0eCBpcyBMZWdhY3lUeERhdGEge1xuICByZXR1cm4gdHguX3R5cGUgPT09IEVUSFRyYW5zYWN0aW9uVHlwZS5MRUdBQ1k7XG59XG5cbmZ1bmN0aW9uIGlzRUlQMTU1OVR4bih0eDogVHhEYXRhKTogdHggaXMgRUlQMTU1OVR4RGF0YSB7XG4gIHJldHVybiB0eC5fdHlwZSA9PT0gRVRIVHJhbnNhY3Rpb25UeXBlLkVJUDE1NTk7XG59XG4iXX0=