@bitgo/account-lib 2.20.0-rc.2 → 2.20.0-rc.22

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 (481) hide show
  1. package/CHANGELOG.md +195 -0
  2. package/dist/resources/README.md +8 -2
  3. package/dist/resources/trx/protobuf/tron.js +5 -1
  4. package/dist/src/coin/avaxc/index.js +3 -3
  5. package/dist/src/coin/avaxc/keyPair.d.ts +1 -2
  6. package/dist/src/coin/avaxc/keyPair.d.ts.map +1 -1
  7. package/dist/src/coin/avaxc/keyPair.js +25 -44
  8. package/dist/src/coin/avaxc/resources.js +3 -3
  9. package/dist/src/coin/avaxc/transactionBuilder.d.ts.map +1 -1
  10. package/dist/src/coin/avaxc/transactionBuilder.js +22 -41
  11. package/dist/src/coin/avaxc/transferBuilder.js +8 -28
  12. package/dist/src/coin/avaxc/utils.js +14 -54
  13. package/dist/src/coin/celo/index.js +3 -3
  14. package/dist/src/coin/celo/resources.js +3 -3
  15. package/dist/src/coin/celo/stakingBuilder.d.ts +1 -1
  16. package/dist/src/coin/celo/stakingBuilder.d.ts.map +1 -1
  17. package/dist/src/coin/celo/stakingBuilder.js +102 -104
  18. package/dist/src/coin/celo/stakingCall.js +8 -26
  19. package/dist/src/coin/celo/stakingUtils.d.ts +1 -1
  20. package/dist/src/coin/celo/stakingUtils.d.ts.map +1 -1
  21. package/dist/src/coin/celo/stakingUtils.js +33 -34
  22. package/dist/src/coin/celo/transaction.js +10 -30
  23. package/dist/src/coin/celo/transactionBuilder.d.ts +1 -1
  24. package/dist/src/coin/celo/transactionBuilder.d.ts.map +1 -1
  25. package/dist/src/coin/celo/transactionBuilder.js +96 -115
  26. package/dist/src/coin/celo/transferBuilder.js +8 -28
  27. package/dist/src/coin/celo/types.js +71 -125
  28. package/dist/src/coin/celo/utils.js +25 -25
  29. package/dist/src/coin/dot/addressInitializationBuilder.d.ts +1 -2
  30. package/dist/src/coin/dot/addressInitializationBuilder.d.ts.map +1 -1
  31. package/dist/src/coin/dot/addressInitializationBuilder.js +60 -83
  32. package/dist/src/coin/dot/batchTransactionBuilder.d.ts +1 -1
  33. package/dist/src/coin/dot/batchTransactionBuilder.d.ts.map +1 -1
  34. package/dist/src/coin/dot/batchTransactionBuilder.js +55 -78
  35. package/dist/src/coin/dot/claimBuilder.d.ts +1 -2
  36. package/dist/src/coin/dot/claimBuilder.d.ts.map +1 -1
  37. package/dist/src/coin/dot/claimBuilder.js +46 -68
  38. package/dist/src/coin/dot/errors.d.ts +1 -1
  39. package/dist/src/coin/dot/errors.d.ts.map +1 -1
  40. package/dist/src/coin/dot/errors.js +12 -33
  41. package/dist/src/coin/dot/iface.d.ts +1 -2
  42. package/dist/src/coin/dot/iface.d.ts.map +1 -1
  43. package/dist/src/coin/dot/iface.js +1 -1
  44. package/dist/src/coin/dot/index.js +3 -3
  45. package/dist/src/coin/dot/keyPair.d.ts +1 -2
  46. package/dist/src/coin/dot/keyPair.d.ts.map +1 -1
  47. package/dist/src/coin/dot/keyPair.js +34 -52
  48. package/dist/src/coin/dot/singletonRegistry.js +6 -9
  49. package/dist/src/coin/dot/stakingBuilder.d.ts +1 -2
  50. package/dist/src/coin/dot/stakingBuilder.d.ts.map +1 -1
  51. package/dist/src/coin/dot/stakingBuilder.js +49 -71
  52. package/dist/src/coin/dot/transaction.d.ts +1 -2
  53. package/dist/src/coin/dot/transaction.d.ts.map +1 -1
  54. package/dist/src/coin/dot/transaction.js +146 -162
  55. package/dist/src/coin/dot/transactionBuilder.d.ts +2 -3
  56. package/dist/src/coin/dot/transactionBuilder.d.ts.map +1 -1
  57. package/dist/src/coin/dot/transactionBuilder.js +132 -204
  58. package/dist/src/coin/dot/transactionBuilderFactory.d.ts +1 -1
  59. package/dist/src/coin/dot/transactionBuilderFactory.d.ts.map +1 -1
  60. package/dist/src/coin/dot/transactionBuilderFactory.js +46 -65
  61. package/dist/src/coin/dot/transferBuilder.d.ts +1 -2
  62. package/dist/src/coin/dot/transferBuilder.d.ts.map +1 -1
  63. package/dist/src/coin/dot/transferBuilder.js +62 -85
  64. package/dist/src/coin/dot/txnSchema.js +17 -15
  65. package/dist/src/coin/dot/unnominateBuilder.d.ts +1 -1
  66. package/dist/src/coin/dot/unnominateBuilder.d.ts.map +1 -1
  67. package/dist/src/coin/dot/unnominateBuilder.js +24 -46
  68. package/dist/src/coin/dot/unstakeBuilder.d.ts +1 -1
  69. package/dist/src/coin/dot/unstakeBuilder.d.ts.map +1 -1
  70. package/dist/src/coin/dot/unstakeBuilder.js +38 -60
  71. package/dist/src/coin/dot/utils.d.ts +1 -2
  72. package/dist/src/coin/dot/utils.d.ts.map +1 -1
  73. package/dist/src/coin/dot/utils.js +97 -101
  74. package/dist/src/coin/dot/withdrawUnstakedBuilder.d.ts +1 -1
  75. package/dist/src/coin/dot/withdrawUnstakedBuilder.d.ts.map +1 -1
  76. package/dist/src/coin/dot/withdrawUnstakedBuilder.js +38 -60
  77. package/dist/src/coin/etc/index.js +3 -3
  78. package/dist/src/coin/etc/resources.js +3 -3
  79. package/dist/src/coin/etc/transactionBuilder.d.ts.map +1 -1
  80. package/dist/src/coin/etc/transactionBuilder.js +22 -41
  81. package/dist/src/coin/etc/transferBuilder.js +8 -28
  82. package/dist/src/coin/etc/utils.js +10 -50
  83. package/dist/src/coin/eth/contractCall.js +8 -9
  84. package/dist/src/coin/eth/iface.d.ts +1 -1
  85. package/dist/src/coin/eth/iface.d.ts.map +1 -1
  86. package/dist/src/coin/eth/iface.js +1 -1
  87. package/dist/src/coin/eth/index.js +3 -3
  88. package/dist/src/coin/eth/keyPair.d.ts +1 -2
  89. package/dist/src/coin/eth/keyPair.d.ts.map +1 -1
  90. package/dist/src/coin/eth/keyPair.js +25 -44
  91. package/dist/src/coin/eth/transaction.d.ts +1 -2
  92. package/dist/src/coin/eth/transaction.d.ts.map +1 -1
  93. package/dist/src/coin/eth/transaction.js +48 -114
  94. package/dist/src/coin/eth/transactionBuilder.d.ts +1 -2
  95. package/dist/src/coin/eth/transactionBuilder.d.ts.map +1 -1
  96. package/dist/src/coin/eth/transactionBuilder.js +232 -303
  97. package/dist/src/coin/eth/transferBuilder/baseNFTTransferBuilder.js +37 -38
  98. package/dist/src/coin/eth/transferBuilder/transferBuilderERC1155.js +36 -53
  99. package/dist/src/coin/eth/transferBuilder/transferBuilderERC721.js +32 -49
  100. package/dist/src/coin/eth/transferBuilder.js +58 -59
  101. package/dist/src/coin/eth/types.js +52 -56
  102. package/dist/src/coin/eth/utils.d.ts +1 -1
  103. package/dist/src/coin/eth/utils.d.ts.map +1 -1
  104. package/dist/src/coin/eth/utils.js +100 -147
  105. package/dist/src/coin/eth/walletUtil.d.ts +2 -0
  106. package/dist/src/coin/eth/walletUtil.d.ts.map +1 -1
  107. package/dist/src/coin/eth/walletUtil.js +4 -2
  108. package/dist/src/coin/eth2/keyPair.d.ts +1 -2
  109. package/dist/src/coin/eth2/keyPair.d.ts.map +1 -1
  110. package/dist/src/coin/eth2/keyPair.js +19 -37
  111. package/dist/src/coin/hbar/index.js +2 -2
  112. package/dist/src/coin/hbar/keyPair.d.ts +1 -2
  113. package/dist/src/coin/hbar/keyPair.d.ts.map +1 -1
  114. package/dist/src/coin/hbar/keyPair.js +30 -49
  115. package/dist/src/coin/hbar/transaction.d.ts +1 -2
  116. package/dist/src/coin/hbar/transaction.d.ts.map +1 -1
  117. package/dist/src/coin/hbar/transaction.js +77 -146
  118. package/dist/src/coin/hbar/transactionBuilder.d.ts +1 -2
  119. package/dist/src/coin/hbar/transactionBuilder.d.ts.map +1 -1
  120. package/dist/src/coin/hbar/transactionBuilder.js +110 -193
  121. package/dist/src/coin/hbar/transactionBuilderFactory.d.ts +1 -1
  122. package/dist/src/coin/hbar/transactionBuilderFactory.d.ts.map +1 -1
  123. package/dist/src/coin/hbar/transactionBuilderFactory.js +27 -45
  124. package/dist/src/coin/hbar/transferBuilder.d.ts +1 -1
  125. package/dist/src/coin/hbar/transferBuilder.d.ts.map +1 -1
  126. package/dist/src/coin/hbar/transferBuilder.js +49 -113
  127. package/dist/src/coin/hbar/utils.d.ts +2 -15
  128. package/dist/src/coin/hbar/utils.d.ts.map +1 -1
  129. package/dist/src/coin/hbar/utils.js +38 -57
  130. package/dist/src/coin/hbar/walletInitializationBuilder.d.ts.map +1 -1
  131. package/dist/src/coin/hbar/walletInitializationBuilder.js +42 -107
  132. package/dist/src/coin/near/contractCallWrapper.js +46 -65
  133. package/dist/src/coin/near/errors.d.ts +1 -1
  134. package/dist/src/coin/near/errors.d.ts.map +1 -1
  135. package/dist/src/coin/near/errors.js +7 -25
  136. package/dist/src/coin/near/iface.d.ts +1 -2
  137. package/dist/src/coin/near/iface.d.ts.map +1 -1
  138. package/dist/src/coin/near/iface.js +1 -1
  139. package/dist/src/coin/near/index.d.ts +3 -0
  140. package/dist/src/coin/near/index.d.ts.map +1 -1
  141. package/dist/src/coin/near/index.js +9 -3
  142. package/dist/src/coin/near/keyPair.d.ts +1 -2
  143. package/dist/src/coin/near/keyPair.d.ts.map +1 -1
  144. package/dist/src/coin/near/keyPair.js +23 -40
  145. package/dist/src/coin/near/stakingActivateBuilder.d.ts +1 -1
  146. package/dist/src/coin/near/stakingActivateBuilder.d.ts.map +1 -1
  147. package/dist/src/coin/near/stakingActivateBuilder.js +36 -105
  148. package/dist/src/coin/near/stakingDeactivateBuilder.d.ts +1 -1
  149. package/dist/src/coin/near/stakingDeactivateBuilder.d.ts.map +1 -1
  150. package/dist/src/coin/near/stakingDeactivateBuilder.js +36 -105
  151. package/dist/src/coin/near/stakingWithdrawBuilder.d.ts +1 -1
  152. package/dist/src/coin/near/stakingWithdrawBuilder.d.ts.map +1 -1
  153. package/dist/src/coin/near/stakingWithdrawBuilder.js +36 -105
  154. package/dist/src/coin/near/transaction.d.ts +1 -2
  155. package/dist/src/coin/near/transaction.d.ts.map +1 -1
  156. package/dist/src/coin/near/transaction.js +125 -154
  157. package/dist/src/coin/near/transactionBuilder.d.ts +1 -2
  158. package/dist/src/coin/near/transactionBuilder.d.ts.map +1 -1
  159. package/dist/src/coin/near/transactionBuilder.js +81 -144
  160. package/dist/src/coin/near/transactionBuilderFactory.d.ts +1 -1
  161. package/dist/src/coin/near/transactionBuilderFactory.d.ts.map +1 -1
  162. package/dist/src/coin/near/transactionBuilderFactory.js +33 -51
  163. package/dist/src/coin/near/transferBuilder.d.ts +1 -1
  164. package/dist/src/coin/near/transferBuilder.d.ts.map +1 -1
  165. package/dist/src/coin/near/transferBuilder.js +27 -91
  166. package/dist/src/coin/near/utils.d.ts +1 -1
  167. package/dist/src/coin/near/utils.d.ts.map +1 -1
  168. package/dist/src/coin/near/utils.js +35 -45
  169. package/dist/src/coin/near/walletInitializationBuilder.d.ts +1 -1
  170. package/dist/src/coin/near/walletInitializationBuilder.d.ts.map +1 -1
  171. package/dist/src/coin/near/walletInitializationBuilder.js +13 -70
  172. package/dist/src/coin/polygon/index.d.ts +8 -0
  173. package/dist/src/coin/polygon/index.d.ts.map +1 -0
  174. package/dist/src/coin/polygon/index.js +35 -0
  175. package/dist/src/coin/polygon/resources.d.ts +10 -0
  176. package/dist/src/coin/polygon/resources.d.ts.map +1 -0
  177. package/dist/src/coin/polygon/resources.js +25 -0
  178. package/dist/src/coin/polygon/transactionBuilder.d.ts +17 -0
  179. package/dist/src/coin/polygon/transactionBuilder.d.ts.map +1 -0
  180. package/dist/src/coin/polygon/transactionBuilder.js +44 -0
  181. package/dist/src/coin/polygon/transferBuilder.d.ts +19 -0
  182. package/dist/src/coin/polygon/transferBuilder.d.ts.map +1 -0
  183. package/dist/src/coin/polygon/transferBuilder.js +27 -0
  184. package/dist/src/coin/polygon/utils.d.ts +18 -0
  185. package/dist/src/coin/polygon/utils.d.ts.map +1 -0
  186. package/dist/src/coin/polygon/utils.js +42 -0
  187. package/dist/src/coin/polygon/walletUtil.d.ts +48 -0
  188. package/dist/src/coin/polygon/walletUtil.d.ts.map +1 -0
  189. package/dist/src/coin/polygon/walletUtil.js +632 -0
  190. package/dist/src/coin/rbtc/index.js +3 -3
  191. package/dist/src/coin/rbtc/resources.js +3 -3
  192. package/dist/src/coin/rbtc/transactionBuilder.d.ts.map +1 -1
  193. package/dist/src/coin/rbtc/transactionBuilder.js +21 -40
  194. package/dist/src/coin/rbtc/transferBuilder.js +8 -28
  195. package/dist/src/coin/rbtc/utils.js +10 -50
  196. package/dist/src/coin/sol/ataInitializationBuilder.d.ts +1 -1
  197. package/dist/src/coin/sol/ataInitializationBuilder.d.ts.map +1 -1
  198. package/dist/src/coin/sol/ataInitializationBuilder.js +52 -123
  199. package/dist/src/coin/sol/ataInitializationTransaction.d.ts.map +1 -1
  200. package/dist/src/coin/sol/ataInitializationTransaction.js +34 -57
  201. package/dist/src/coin/sol/iface.d.ts +1 -1
  202. package/dist/src/coin/sol/iface.d.ts.map +1 -1
  203. package/dist/src/coin/sol/iface.js +1 -1
  204. package/dist/src/coin/sol/index.js +3 -3
  205. package/dist/src/coin/sol/instructionParamsFactory.d.ts +1 -1
  206. package/dist/src/coin/sol/instructionParamsFactory.d.ts.map +1 -1
  207. package/dist/src/coin/sol/instructionParamsFactory.js +62 -67
  208. package/dist/src/coin/sol/keyPair.d.ts +1 -2
  209. package/dist/src/coin/sol/keyPair.d.ts.map +1 -1
  210. package/dist/src/coin/sol/keyPair.js +24 -42
  211. package/dist/src/coin/sol/solInstructionFactory.js +33 -33
  212. package/dist/src/coin/sol/stakingActivateBuilder.d.ts +1 -1
  213. package/dist/src/coin/sol/stakingActivateBuilder.d.ts.map +1 -1
  214. package/dist/src/coin/sol/stakingActivateBuilder.js +45 -113
  215. package/dist/src/coin/sol/stakingDeactivateBuilder.d.ts +1 -1
  216. package/dist/src/coin/sol/stakingDeactivateBuilder.d.ts.map +1 -1
  217. package/dist/src/coin/sol/stakingDeactivateBuilder.js +36 -104
  218. package/dist/src/coin/sol/stakingWithdrawBuilder.d.ts +1 -1
  219. package/dist/src/coin/sol/stakingWithdrawBuilder.d.ts.map +1 -1
  220. package/dist/src/coin/sol/stakingWithdrawBuilder.js +41 -109
  221. package/dist/src/coin/sol/tokenEncodeDecode.js +46 -75
  222. package/dist/src/coin/sol/tokenTransferBuilder.d.ts +1 -1
  223. package/dist/src/coin/sol/tokenTransferBuilder.d.ts.map +1 -1
  224. package/dist/src/coin/sol/tokenTransferBuilder.js +42 -115
  225. package/dist/src/coin/sol/transaction.d.ts +1 -2
  226. package/dist/src/coin/sol/transaction.d.ts.map +1 -1
  227. package/dist/src/coin/sol/transaction.js +130 -221
  228. package/dist/src/coin/sol/transactionBuilder.d.ts +1 -2
  229. package/dist/src/coin/sol/transactionBuilder.d.ts.map +1 -1
  230. package/dist/src/coin/sol/transactionBuilder.js +104 -171
  231. package/dist/src/coin/sol/transactionBuilderFactory.d.ts +1 -1
  232. package/dist/src/coin/sol/transactionBuilderFactory.d.ts.map +1 -1
  233. package/dist/src/coin/sol/transactionBuilderFactory.js +46 -64
  234. package/dist/src/coin/sol/transferBuilder.d.ts +1 -1
  235. package/dist/src/coin/sol/transferBuilder.d.ts.map +1 -1
  236. package/dist/src/coin/sol/transferBuilder.js +37 -108
  237. package/dist/src/coin/sol/utils.d.ts +1 -1
  238. package/dist/src/coin/sol/utils.d.ts.map +1 -1
  239. package/dist/src/coin/sol/utils.js +49 -117
  240. package/dist/src/coin/sol/walletInitializationBuilder.d.ts +1 -1
  241. package/dist/src/coin/sol/walletInitializationBuilder.d.ts.map +1 -1
  242. package/dist/src/coin/sol/walletInitializationBuilder.js +39 -107
  243. package/dist/src/coin/stx/abstractContractBuilder.d.ts.map +1 -1
  244. package/dist/src/coin/stx/abstractContractBuilder.js +34 -104
  245. package/dist/src/coin/stx/contractBuilder.js +38 -57
  246. package/dist/src/coin/stx/index.js +2 -2
  247. package/dist/src/coin/stx/keyPair.d.ts +1 -2
  248. package/dist/src/coin/stx/keyPair.d.ts.map +1 -1
  249. package/dist/src/coin/stx/keyPair.js +39 -62
  250. package/dist/src/coin/stx/sendmanyBuilder.js +43 -108
  251. package/dist/src/coin/stx/transaction.d.ts +1 -2
  252. package/dist/src/coin/stx/transaction.d.ts.map +1 -1
  253. package/dist/src/coin/stx/transaction.js +102 -183
  254. package/dist/src/coin/stx/transactionBuilder.d.ts +1 -2
  255. package/dist/src/coin/stx/transactionBuilder.d.ts.map +1 -1
  256. package/dist/src/coin/stx/transactionBuilder.js +121 -218
  257. package/dist/src/coin/stx/transactionBuilderFactory.d.ts +1 -1
  258. package/dist/src/coin/stx/transactionBuilderFactory.d.ts.map +1 -1
  259. package/dist/src/coin/stx/transactionBuilderFactory.js +36 -54
  260. package/dist/src/coin/stx/transferBuilder.d.ts.map +1 -1
  261. package/dist/src/coin/stx/transferBuilder.js +41 -111
  262. package/dist/src/coin/stx/utils.d.ts.map +1 -1
  263. package/dist/src/coin/stx/utils.js +58 -65
  264. package/dist/src/coin/trx/address.d.ts +1 -1
  265. package/dist/src/coin/trx/address.d.ts.map +1 -1
  266. package/dist/src/coin/trx/address.js +3 -6
  267. package/dist/src/coin/trx/contractCallBuilder.d.ts +1 -1
  268. package/dist/src/coin/trx/contractCallBuilder.d.ts.map +1 -1
  269. package/dist/src/coin/trx/contractCallBuilder.js +100 -160
  270. package/dist/src/coin/trx/iface.d.ts +1 -1
  271. package/dist/src/coin/trx/iface.d.ts.map +1 -1
  272. package/dist/src/coin/trx/iface.js +1 -1
  273. package/dist/src/coin/trx/index.js +4 -4
  274. package/dist/src/coin/trx/keyPair.d.ts +1 -3
  275. package/dist/src/coin/trx/keyPair.d.ts.map +1 -1
  276. package/dist/src/coin/trx/keyPair.js +37 -57
  277. package/dist/src/coin/trx/transaction.d.ts +1 -3
  278. package/dist/src/coin/trx/transaction.d.ts.map +1 -1
  279. package/dist/src/coin/trx/transaction.js +84 -124
  280. package/dist/src/coin/trx/transactionBuilder.d.ts +1 -2
  281. package/dist/src/coin/trx/transactionBuilder.d.ts.map +1 -1
  282. package/dist/src/coin/trx/transactionBuilder.js +72 -134
  283. package/dist/src/coin/trx/utils.js +57 -59
  284. package/dist/src/coin/trx/wrappedBuilder.d.ts +1 -2
  285. package/dist/src/coin/trx/wrappedBuilder.d.ts.map +1 -1
  286. package/dist/src/coin/trx/wrappedBuilder.js +43 -101
  287. package/dist/src/coin/xrp/index.js +2 -2
  288. package/dist/src/coin/xrp/keyPair.d.ts +1 -2
  289. package/dist/src/coin/xrp/keyPair.d.ts.map +1 -1
  290. package/dist/src/coin/xrp/keyPair.js +6 -23
  291. package/dist/src/coin/xrp/transaction.d.ts +1 -2
  292. package/dist/src/coin/xrp/transaction.d.ts.map +1 -1
  293. package/dist/src/coin/xrp/transaction.js +13 -34
  294. package/dist/src/coin/xrp/transactionBuilder.d.ts +1 -2
  295. package/dist/src/coin/xrp/transactionBuilder.d.ts.map +1 -1
  296. package/dist/src/coin/xrp/transactionBuilder.js +29 -51
  297. package/dist/src/coin/xrp/transactionBuilderFactory.d.ts +1 -1
  298. package/dist/src/coin/xrp/transactionBuilderFactory.d.ts.map +1 -1
  299. package/dist/src/coin/xrp/transactionBuilderFactory.js +17 -35
  300. package/dist/src/coin/xrp/transferBuilder.d.ts +1 -1
  301. package/dist/src/coin/xrp/transferBuilder.d.ts.map +1 -1
  302. package/dist/src/coin/xrp/transferBuilder.js +16 -73
  303. package/dist/src/coin/xrp/utils.d.ts +1 -1
  304. package/dist/src/coin/xrp/utils.d.ts.map +1 -1
  305. package/dist/src/coin/xrp/utils.js +22 -25
  306. package/dist/src/coin/xrp/walletInitializationBuilder.d.ts +1 -1
  307. package/dist/src/coin/xrp/walletInitializationBuilder.d.ts.map +1 -1
  308. package/dist/src/coin/xrp/walletInitializationBuilder.js +16 -73
  309. package/dist/src/coin/xtz/address.d.ts +1 -1
  310. package/dist/src/coin/xtz/address.d.ts.map +1 -1
  311. package/dist/src/coin/xtz/address.js +3 -6
  312. package/dist/src/coin/xtz/iface.d.ts +1 -1
  313. package/dist/src/coin/xtz/iface.d.ts.map +1 -1
  314. package/dist/src/coin/xtz/iface.js +1 -1
  315. package/dist/src/coin/xtz/index.js +4 -4
  316. package/dist/src/coin/xtz/keyPair.d.ts +1 -2
  317. package/dist/src/coin/xtz/keyPair.d.ts.map +1 -1
  318. package/dist/src/coin/xtz/keyPair.js +39 -59
  319. package/dist/src/coin/xtz/multisigUtils.js +64 -77
  320. package/dist/src/coin/xtz/transaction.d.ts +1 -2
  321. package/dist/src/coin/xtz/transaction.d.ts.map +1 -1
  322. package/dist/src/coin/xtz/transaction.js +175 -345
  323. package/dist/src/coin/xtz/transactionBuilder.d.ts +1 -2
  324. package/dist/src/coin/xtz/transactionBuilder.d.ts.map +1 -1
  325. package/dist/src/coin/xtz/transactionBuilder.js +212 -347
  326. package/dist/src/coin/xtz/transferBuilder.js +25 -28
  327. package/dist/src/coin/xtz/utils.d.ts.map +1 -1
  328. package/dist/src/coin/xtz/utils.js +54 -125
  329. package/dist/src/index.d.ts +7 -11
  330. package/dist/src/index.d.ts.map +1 -1
  331. package/dist/src/index.js +38 -44
  332. package/dist/src/keyPair/index.d.ts +1 -2
  333. package/dist/src/keyPair/index.d.ts.map +1 -1
  334. package/dist/src/keyPair/index.js +9 -9
  335. package/dist/src/utils/index.d.ts +1 -1
  336. package/dist/src/utils/index.d.ts.map +1 -1
  337. package/dist/src/utils/index.js +9 -9
  338. package/dist/tsconfig.tsbuildinfo +21131 -16701
  339. package/package.json +21 -43
  340. package/resources/README.md +8 -2
  341. package/resources/trx/protobuf/tron.js +5 -1
  342. package/dist/browser/bitgo-account-lib.js +0 -2
  343. package/dist/browser/bitgo-account-lib.js.LICENSE.txt +0 -335
  344. package/dist/src/coin/algo/assetTransferBuilder.d.ts +0 -43
  345. package/dist/src/coin/algo/assetTransferBuilder.d.ts.map +0 -1
  346. package/dist/src/coin/algo/assetTransferBuilder.js +0 -127
  347. package/dist/src/coin/algo/errors.d.ts +0 -11
  348. package/dist/src/coin/algo/errors.d.ts.map +0 -1
  349. package/dist/src/coin/algo/errors.js +0 -51
  350. package/dist/src/coin/algo/ifaces.d.ts +0 -46
  351. package/dist/src/coin/algo/ifaces.d.ts.map +0 -1
  352. package/dist/src/coin/algo/ifaces.js +0 -3
  353. package/dist/src/coin/algo/index.d.ts +0 -13
  354. package/dist/src/coin/algo/index.d.ts.map +0 -1
  355. package/dist/src/coin/algo/index.js +0 -47
  356. package/dist/src/coin/algo/keyPair.d.ts +0 -26
  357. package/dist/src/coin/algo/keyPair.d.ts.map +0 -1
  358. package/dist/src/coin/algo/keyPair.js +0 -95
  359. package/dist/src/coin/algo/keyRegistrationBuilder.d.ts +0 -104
  360. package/dist/src/coin/algo/keyRegistrationBuilder.d.ts.map +0 -1
  361. package/dist/src/coin/algo/keyRegistrationBuilder.js +0 -262
  362. package/dist/src/coin/algo/seedEncoding.d.ts +0 -25
  363. package/dist/src/coin/algo/seedEncoding.d.ts.map +0 -1
  364. package/dist/src/coin/algo/seedEncoding.js +0 -100
  365. package/dist/src/coin/algo/transaction.d.ts +0 -76
  366. package/dist/src/coin/algo/transaction.d.ts.map +0 -1
  367. package/dist/src/coin/algo/transaction.js +0 -287
  368. package/dist/src/coin/algo/transactionBuilder.d.ts +0 -205
  369. package/dist/src/coin/algo/transactionBuilder.d.ts.map +0 -1
  370. package/dist/src/coin/algo/transactionBuilder.js +0 -445
  371. package/dist/src/coin/algo/transactionBuilderFactory.d.ts +0 -16
  372. package/dist/src/coin/algo/transactionBuilderFactory.d.ts.map +0 -1
  373. package/dist/src/coin/algo/transactionBuilderFactory.js +0 -70
  374. package/dist/src/coin/algo/transferBuilder.d.ts +0 -41
  375. package/dist/src/coin/algo/transferBuilder.d.ts.map +0 -1
  376. package/dist/src/coin/algo/transferBuilder.js +0 -111
  377. package/dist/src/coin/algo/txnSchema.d.ts +0 -7
  378. package/dist/src/coin/algo/txnSchema.d.ts.map +0 -1
  379. package/dist/src/coin/algo/txnSchema.js +0 -68
  380. package/dist/src/coin/algo/utils.d.ts +0 -249
  381. package/dist/src/coin/algo/utils.d.ts.map +0 -1
  382. package/dist/src/coin/algo/utils.js +0 -544
  383. package/dist/src/coin/baseCoin/baseKeyPair.d.ts +0 -27
  384. package/dist/src/coin/baseCoin/baseKeyPair.d.ts.map +0 -1
  385. package/dist/src/coin/baseCoin/baseKeyPair.js +0 -3
  386. package/dist/src/coin/baseCoin/baseTransaction.d.ts +0 -71
  387. package/dist/src/coin/baseCoin/baseTransaction.d.ts.map +0 -1
  388. package/dist/src/coin/baseCoin/baseTransaction.js +0 -94
  389. package/dist/src/coin/baseCoin/baseTransactionBuilder.d.ts +0 -128
  390. package/dist/src/coin/baseCoin/baseTransactionBuilder.d.ts.map +0 -1
  391. package/dist/src/coin/baseCoin/baseTransactionBuilder.js +0 -179
  392. package/dist/src/coin/baseCoin/baseTransactionBuilderFactory.d.ts +0 -30
  393. package/dist/src/coin/baseCoin/baseTransactionBuilderFactory.d.ts.map +0 -1
  394. package/dist/src/coin/baseCoin/baseTransactionBuilderFactory.js +0 -20
  395. package/dist/src/coin/baseCoin/baseUtils.d.ts +0 -45
  396. package/dist/src/coin/baseCoin/baseUtils.d.ts.map +0 -1
  397. package/dist/src/coin/baseCoin/baseUtils.js +0 -3
  398. package/dist/src/coin/baseCoin/blsKeyPair.d.ts +0 -75
  399. package/dist/src/coin/baseCoin/blsKeyPair.d.ts.map +0 -1
  400. package/dist/src/coin/baseCoin/blsKeyPair.js +0 -232
  401. package/dist/src/coin/baseCoin/ed25519KeyPair.d.ts +0 -50
  402. package/dist/src/coin/baseCoin/ed25519KeyPair.d.ts.map +0 -1
  403. package/dist/src/coin/baseCoin/ed25519KeyPair.js +0 -141
  404. package/dist/src/coin/baseCoin/enum.d.ts +0 -43
  405. package/dist/src/coin/baseCoin/enum.d.ts.map +0 -1
  406. package/dist/src/coin/baseCoin/enum.js +0 -70
  407. package/dist/src/coin/baseCoin/errors.d.ts +0 -65
  408. package/dist/src/coin/baseCoin/errors.d.ts.map +0 -1
  409. package/dist/src/coin/baseCoin/errors.js +0 -156
  410. package/dist/src/coin/baseCoin/iface.d.ts +0 -162
  411. package/dist/src/coin/baseCoin/iface.d.ts.map +0 -1
  412. package/dist/src/coin/baseCoin/iface.js +0 -38
  413. package/dist/src/coin/baseCoin/index.d.ts +0 -12
  414. package/dist/src/coin/baseCoin/index.d.ts.map +0 -1
  415. package/dist/src/coin/baseCoin/index.js +0 -41
  416. package/dist/src/coin/baseCoin/secp256k1ExtendedKeyPair.d.ts +0 -55
  417. package/dist/src/coin/baseCoin/secp256k1ExtendedKeyPair.d.ts.map +0 -1
  418. package/dist/src/coin/baseCoin/secp256k1ExtendedKeyPair.js +0 -124
  419. package/dist/src/coin/cspr/constants.d.ts +0 -19
  420. package/dist/src/coin/cspr/constants.d.ts.map +0 -1
  421. package/dist/src/coin/cspr/constants.js +0 -28
  422. package/dist/src/coin/cspr/delegateBuilder.d.ts +0 -49
  423. package/dist/src/coin/cspr/delegateBuilder.d.ts.map +0 -1
  424. package/dist/src/coin/cspr/delegateBuilder.js +0 -175
  425. package/dist/src/coin/cspr/ifaces.d.ts +0 -69
  426. package/dist/src/coin/cspr/ifaces.d.ts.map +0 -1
  427. package/dist/src/coin/cspr/ifaces.js +0 -3
  428. package/dist/src/coin/cspr/index.d.ts +0 -5
  429. package/dist/src/coin/cspr/index.d.ts.map +0 -1
  430. package/dist/src/coin/cspr/index.js +0 -29
  431. package/dist/src/coin/cspr/keyPair.d.ts +0 -19
  432. package/dist/src/coin/cspr/keyPair.d.ts.map +0 -1
  433. package/dist/src/coin/cspr/keyPair.js +0 -94
  434. package/dist/src/coin/cspr/transaction.d.ts +0 -56
  435. package/dist/src/coin/cspr/transaction.d.ts.map +0 -1
  436. package/dist/src/coin/cspr/transaction.js +0 -251
  437. package/dist/src/coin/cspr/transactionBuilder.d.ts +0 -125
  438. package/dist/src/coin/cspr/transactionBuilder.d.ts.map +0 -1
  439. package/dist/src/coin/cspr/transactionBuilder.js +0 -383
  440. package/dist/src/coin/cspr/transactionBuilderFactory.d.ts +0 -46
  441. package/dist/src/coin/cspr/transactionBuilderFactory.d.ts.map +0 -1
  442. package/dist/src/coin/cspr/transactionBuilderFactory.js +0 -116
  443. package/dist/src/coin/cspr/transferBuilder.d.ts +0 -39
  444. package/dist/src/coin/cspr/transferBuilder.d.ts.map +0 -1
  445. package/dist/src/coin/cspr/transferBuilder.js +0 -169
  446. package/dist/src/coin/cspr/undelegateBuilder.d.ts +0 -49
  447. package/dist/src/coin/cspr/undelegateBuilder.d.ts.map +0 -1
  448. package/dist/src/coin/cspr/undelegateBuilder.js +0 -175
  449. package/dist/src/coin/cspr/utils.d.ts +0 -189
  450. package/dist/src/coin/cspr/utils.d.ts.map +0 -1
  451. package/dist/src/coin/cspr/utils.js +0 -483
  452. package/dist/src/coin/cspr/walletInitializationBuilder.d.ts +0 -27
  453. package/dist/src/coin/cspr/walletInitializationBuilder.d.ts.map +0 -1
  454. package/dist/src/coin/cspr/walletInitializationBuilder.js +0 -160
  455. package/dist/src/mpc/curves/baseCurve.d.ts +0 -18
  456. package/dist/src/mpc/curves/baseCurve.d.ts.map +0 -1
  457. package/dist/src/mpc/curves/baseCurve.js +0 -6
  458. package/dist/src/mpc/curves/ed25519.d.ts +0 -17
  459. package/dist/src/mpc/curves/ed25519.d.ts.map +0 -1
  460. package/dist/src/mpc/curves/ed25519.js +0 -96
  461. package/dist/src/mpc/curves/index.d.ts +0 -5
  462. package/dist/src/mpc/curves/index.d.ts.map +0 -1
  463. package/dist/src/mpc/curves/index.js +0 -6
  464. package/dist/src/mpc/hdTree.d.ts +0 -24
  465. package/dist/src/mpc/hdTree.d.ts.map +0 -1
  466. package/dist/src/mpc/hdTree.js +0 -143
  467. package/dist/src/mpc/shamir.d.ts +0 -26
  468. package/dist/src/mpc/shamir.d.ts.map +0 -1
  469. package/dist/src/mpc/shamir.js +0 -87
  470. package/dist/src/mpc/tss.d.ts +0 -98
  471. package/dist/src/mpc/tss.d.ts.map +0 -1
  472. package/dist/src/mpc/tss.js +0 -346
  473. package/dist/src/mpc/util.d.ts +0 -7
  474. package/dist/src/mpc/util.d.ts.map +0 -1
  475. package/dist/src/mpc/util.js +0 -38
  476. package/dist/src/utils/crypto.d.ts +0 -99
  477. package/dist/src/utils/crypto.d.ts.map +0 -1
  478. package/dist/src/utils/crypto.js +0 -260
  479. package/dist/src/utils/ed25519KeyDeriver.d.ts +0 -49
  480. package/dist/src/utils/ed25519KeyDeriver.d.ts.map +0 -1
  481. package/dist/src/utils/ed25519KeyDeriver.js +0 -92
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BaseNFTTransferBuilder = void 0;
4
- var errors_1 = require("../../baseCoin/errors");
5
- var utils_1 = require("../utils");
6
- var utils_2 = require("ethers/lib/utils");
7
- var BaseNFTTransferBuilder = /** @class */ (function () {
8
- function BaseNFTTransferBuilder(serializedData) {
4
+ const sdk_core_1 = require("@bitgo/sdk-core");
5
+ const utils_1 = require("../utils");
6
+ const utils_2 = require("ethers/lib/utils");
7
+ class BaseNFTTransferBuilder {
8
+ constructor(serializedData) {
9
9
  this._EMPTY_HEX_VALUE = '0x';
10
10
  if (serializedData === undefined) {
11
11
  // initialize with default values for non mandatory fields
@@ -14,81 +14,81 @@ var BaseNFTTransferBuilder = /** @class */ (function () {
14
14
  this._signature = this._EMPTY_HEX_VALUE;
15
15
  }
16
16
  }
17
- BaseNFTTransferBuilder.prototype.expirationTime = function (date) {
17
+ expirationTime(date) {
18
18
  if (date > 0) {
19
19
  this._signature = this._EMPTY_HEX_VALUE;
20
20
  this._expirationTime = date;
21
21
  return this;
22
22
  }
23
- throw new errors_1.InvalidParameterValueError('Invalid expiration time');
24
- };
25
- BaseNFTTransferBuilder.prototype.key = function (signKey) {
23
+ throw new sdk_core_1.InvalidParameterValueError('Invalid expiration time');
24
+ }
25
+ key(signKey) {
26
26
  this._signKey = signKey;
27
27
  return this;
28
- };
29
- BaseNFTTransferBuilder.prototype.contractSequenceId = function (counter) {
28
+ }
29
+ contractSequenceId(counter) {
30
30
  if (counter >= 0) {
31
31
  this._signature = this._EMPTY_HEX_VALUE;
32
32
  this._sequenceId = counter;
33
33
  return this;
34
34
  }
35
- throw new errors_1.InvalidParameterValueError('Invalid contract sequence id');
36
- };
37
- BaseNFTTransferBuilder.prototype.to = function (address) {
35
+ throw new sdk_core_1.InvalidParameterValueError('Invalid contract sequence id');
36
+ }
37
+ to(address) {
38
38
  if (utils_1.isValidEthAddress(address)) {
39
39
  this._signature = this._EMPTY_HEX_VALUE;
40
40
  this._toAddress = address;
41
41
  return this;
42
42
  }
43
- throw new errors_1.InvalidParameterValueError('Invalid address');
44
- };
45
- BaseNFTTransferBuilder.prototype.from = function (address) {
43
+ throw new sdk_core_1.InvalidParameterValueError('Invalid address');
44
+ }
45
+ from(address) {
46
46
  if (utils_1.isValidEthAddress(address)) {
47
47
  this._signature = this._EMPTY_HEX_VALUE;
48
48
  this._fromAddress = address;
49
49
  return this;
50
50
  }
51
- throw new errors_1.InvalidParameterValueError('Invalid address');
52
- };
51
+ throw new sdk_core_1.InvalidParameterValueError('Invalid address');
52
+ }
53
53
  /** Return an expiration time, in seconds, set to one hour from now
54
54
  *
55
55
  * @returns {number} expiration time
56
56
  */
57
- BaseNFTTransferBuilder.getExpirationTime = function () {
58
- var currentDate = new Date();
57
+ static getExpirationTime() {
58
+ const currentDate = new Date();
59
59
  currentDate.setHours(currentDate.getHours() + 1);
60
60
  return currentDate.getTime() / 1000;
61
- };
61
+ }
62
62
  /**
63
63
  * If a signing key is set for this builder, recalculates the signature
64
64
  *
65
65
  * @returns {string} the signature value
66
66
  */
67
- BaseNFTTransferBuilder.prototype.getSignature = function () {
67
+ getSignature() {
68
68
  if (this._signKey) {
69
69
  this._signature = this.ethSignMsgHash();
70
70
  }
71
71
  if (this._signature == null) {
72
- throw new errors_1.InvalidSignatureError('Null signature value');
72
+ throw new sdk_core_1.InvalidSignatureError('Null signature value');
73
73
  }
74
74
  return this._signature;
75
- };
75
+ }
76
76
  /**
77
77
  * Get the prefix used in generating an operation hash for sending native coins
78
78
  *
79
79
  * @returns the string prefix
80
80
  */
81
- BaseNFTTransferBuilder.prototype.getNativeOperationHashPrefix = function () {
81
+ getNativeOperationHashPrefix() {
82
82
  return 'ETHER';
83
- };
83
+ }
84
84
  /**
85
85
  * Obtains the proper operation hash to sign either a sendMultiSig data
86
86
  * or a sendMultiSigToken data
87
87
  *
88
88
  * @returns {string} the operation hash
89
89
  */
90
- BaseNFTTransferBuilder.prototype.getOperationHash = function () {
91
- var hash = utils_2.solidityKeccak256(['string', 'address', 'uint', 'bytes', 'uint', 'uint'], [
90
+ getOperationHash() {
91
+ const hash = utils_2.solidityKeccak256(['string', 'address', 'uint', 'bytes', 'uint', 'uint'], [
92
92
  this.getNativeOperationHashPrefix(),
93
93
  this._toAddress,
94
94
  '0',
@@ -97,18 +97,17 @@ var BaseNFTTransferBuilder = /** @class */ (function () {
97
97
  this._sequenceId,
98
98
  ]);
99
99
  return hash;
100
- };
100
+ }
101
101
  /**
102
102
  * Signs the Message with the given private key
103
103
  * @returns {string} 65 byte long raw signature
104
104
  */
105
- BaseNFTTransferBuilder.prototype.ethSignMsgHash = function () {
106
- var signKey = new utils_2.SigningKey('0x'.concat(this._signKey));
107
- var digest = signKey.signDigest(this.getOperationHash());
108
- var rawSignature = utils_2.joinSignature(digest);
105
+ ethSignMsgHash() {
106
+ const signKey = new utils_2.SigningKey('0x'.concat(this._signKey));
107
+ const digest = signKey.signDigest(this.getOperationHash());
108
+ const rawSignature = utils_2.joinSignature(digest);
109
109
  return rawSignature;
110
- };
111
- return BaseNFTTransferBuilder;
112
- }());
110
+ }
111
+ }
113
112
  exports.BaseNFTTransferBuilder = BaseNFTTransferBuilder;
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZU5GVFRyYW5zZmVyQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb2luL2V0aC90cmFuc2ZlckJ1aWxkZXIvYmFzZU5GVFRyYW5zZmVyQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxnREFBMEY7QUFDMUYsa0NBQTZDO0FBQzdDLDBDQUFnRjtBQUVoRjtJQVlFLGdDQUFzQixjQUF1QjtRQVgxQixxQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFZekMsSUFBSSxjQUFjLEtBQUssU0FBUyxFQUFFO1lBQ2hDLDBEQUEwRDtZQUMxRCxJQUFJLENBQUMsZUFBZSxHQUFHLHNCQUFzQixDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDbEUsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7WUFDbkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7U0FDekM7SUFDSCxDQUFDO0lBRUQsK0NBQWMsR0FBZCxVQUFlLElBQVk7UUFDekIsSUFBSSxJQUFJLEdBQUcsQ0FBQyxFQUFFO1lBQ1osSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7WUFDeEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7WUFDNUIsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELE1BQU0sSUFBSSxtQ0FBMEIsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRCxvQ0FBRyxHQUFILFVBQUksT0FBZTtRQUNqQixJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztRQUN4QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxtREFBa0IsR0FBbEIsVUFBbUIsT0FBZTtRQUNoQyxJQUFJLE9BQU8sSUFBSSxDQUFDLEVBQUU7WUFDaEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7WUFDeEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUM7WUFDM0IsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELE1BQU0sSUFBSSxtQ0FBMEIsQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRCxtQ0FBRSxHQUFGLFVBQUcsT0FBZTtRQUNoQixJQUFJLHlCQUFpQixDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQzlCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1lBQ3hDLElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDO1lBQzFCLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFDRCxNQUFNLElBQUksbUNBQTBCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQscUNBQUksR0FBSixVQUFLLE9BQWU7UUFDbEIsSUFBSSx5QkFBaUIsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUM5QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztZQUN4QyxJQUFJLENBQUMsWUFBWSxHQUFHLE9BQU8sQ0FBQztZQUM1QixPQUFPLElBQUksQ0FBQztTQUNiO1FBQ0QsTUFBTSxJQUFJLG1DQUEwQixDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVEOzs7T0FHRztJQUNZLHdDQUFpQixHQUFoQztRQUNFLElBQU0sV0FBVyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7UUFDL0IsV0FBVyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDakQsT0FBTyxXQUFXLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7OztPQUlHO0lBQ08sNkNBQVksR0FBdEI7UUFDRSxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDekM7UUFDRCxJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxFQUFFO1lBQzNCLE1BQU0sSUFBSSw4QkFBcUIsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1NBQ3pEO1FBQ0QsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFRDs7OztPQUlHO0lBQ08sNkRBQTRCLEdBQXRDO1FBQ0UsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ssaURBQWdCLEdBQXhCO1FBQ0UsSUFBTSxJQUFJLEdBQUcseUJBQWlCLENBQzVCLENBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsRUFDdEQ7WUFDRSxJQUFJLENBQUMsNEJBQTRCLEVBQUU7WUFDbkMsSUFBSSxDQUFDLFVBQVU7WUFDZixHQUFHO1lBQ0gsSUFBSSxDQUFDLEtBQUs7WUFDVixJQUFJLENBQUMsZUFBZTtZQUNwQixJQUFJLENBQUMsV0FBVztTQUNqQixDQUNGLENBQUM7UUFDRixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7O09BR0c7SUFDTywrQ0FBYyxHQUF4QjtRQUNFLElBQU0sT0FBTyxHQUFHLElBQUksa0JBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQzNELElBQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQztRQUMzRCxJQUFNLFlBQVksR0FBRyxxQkFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRTNDLE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFDSCw2QkFBQztBQUFELENBQUMsQUFoSUQsSUFnSUM7QUFoSXFCLHdEQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yLCBJbnZhbGlkU2lnbmF0dXJlRXJyb3IgfSBmcm9tICcuLi8uLi9iYXNlQ29pbi9lcnJvcnMnO1xuaW1wb3J0IHsgaXNWYWxpZEV0aEFkZHJlc3MgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBqb2luU2lnbmF0dXJlLCBzb2xpZGl0eUtlY2NhazI1NiwgU2lnbmluZ0tleSB9IGZyb20gJ2V0aGVycy9saWIvdXRpbHMnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZU5GVFRyYW5zZmVyQnVpbGRlciB7XG4gIHByb3RlY3RlZCByZWFkb25seSBfRU1QVFlfSEVYX1ZBTFVFID0gJzB4JztcbiAgLy8gZHVtbXkgYWNjb3VudCB2YWx1ZSwgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBTZW5kTXVsdGlTaWdcbiAgcHJvdGVjdGVkIF9mcm9tQWRkcmVzczogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX3RvQWRkcmVzczogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX3NlcXVlbmNlSWQ6IG51bWJlcjtcbiAgcHJvdGVjdGVkIF9zaWduS2V5OiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfZXhwaXJhdGlvblRpbWU6IG51bWJlcjtcbiAgcHJvdGVjdGVkIF9zaWduYXR1cmU6IHN0cmluZztcbiAgcHJvdGVjdGVkIF9kYXRhOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfdG9rZW5Db250cmFjdEFkZHJlc3M6IHN0cmluZztcblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3Ioc2VyaWFsaXplZERhdGE/OiBzdHJpbmcpIHtcbiAgICBpZiAoc2VyaWFsaXplZERhdGEgPT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gaW5pdGlhbGl6ZSB3aXRoIGRlZmF1bHQgdmFsdWVzIGZvciBub24gbWFuZGF0b3J5IGZpZWxkc1xuICAgICAgdGhpcy5fZXhwaXJhdGlvblRpbWUgPSBCYXNlTkZUVHJhbnNmZXJCdWlsZGVyLmdldEV4cGlyYXRpb25UaW1lKCk7XG4gICAgICB0aGlzLl9kYXRhID0gdGhpcy5fRU1QVFlfSEVYX1ZBTFVFO1xuICAgICAgdGhpcy5fc2lnbmF0dXJlID0gdGhpcy5fRU1QVFlfSEVYX1ZBTFVFO1xuICAgIH1cbiAgfVxuXG4gIGV4cGlyYXRpb25UaW1lKGRhdGU6IG51bWJlcik6IHRoaXMge1xuICAgIGlmIChkYXRlID4gMCkge1xuICAgICAgdGhpcy5fc2lnbmF0dXJlID0gdGhpcy5fRU1QVFlfSEVYX1ZBTFVFO1xuICAgICAgdGhpcy5fZXhwaXJhdGlvblRpbWUgPSBkYXRlO1xuICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuICAgIHRocm93IG5ldyBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcignSW52YWxpZCBleHBpcmF0aW9uIHRpbWUnKTtcbiAgfVxuXG4gIGtleShzaWduS2V5OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLl9zaWduS2V5ID0gc2lnbktleTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGNvbnRyYWN0U2VxdWVuY2VJZChjb3VudGVyOiBudW1iZXIpOiB0aGlzIHtcbiAgICBpZiAoY291bnRlciA+PSAwKSB7XG4gICAgICB0aGlzLl9zaWduYXR1cmUgPSB0aGlzLl9FTVBUWV9IRVhfVkFMVUU7XG4gICAgICB0aGlzLl9zZXF1ZW5jZUlkID0gY291bnRlcjtcbiAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IoJ0ludmFsaWQgY29udHJhY3Qgc2VxdWVuY2UgaWQnKTtcbiAgfVxuXG4gIHRvKGFkZHJlc3M6IHN0cmluZyk6IHRoaXMge1xuICAgIGlmIChpc1ZhbGlkRXRoQWRkcmVzcyhhZGRyZXNzKSkge1xuICAgICAgdGhpcy5fc2lnbmF0dXJlID0gdGhpcy5fRU1QVFlfSEVYX1ZBTFVFO1xuICAgICAgdGhpcy5fdG9BZGRyZXNzID0gYWRkcmVzcztcbiAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IoJ0ludmFsaWQgYWRkcmVzcycpO1xuICB9XG5cbiAgZnJvbShhZGRyZXNzOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAoaXNWYWxpZEV0aEFkZHJlc3MoYWRkcmVzcykpIHtcbiAgICAgIHRoaXMuX3NpZ25hdHVyZSA9IHRoaXMuX0VNUFRZX0hFWF9WQUxVRTtcbiAgICAgIHRoaXMuX2Zyb21BZGRyZXNzID0gYWRkcmVzcztcbiAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IoJ0ludmFsaWQgYWRkcmVzcycpO1xuICB9XG5cbiAgLyoqIFJldHVybiBhbiBleHBpcmF0aW9uIHRpbWUsIGluIHNlY29uZHMsIHNldCB0byBvbmUgaG91ciBmcm9tIG5vd1xuICAgKlxuICAgKiBAcmV0dXJucyB7bnVtYmVyfSBleHBpcmF0aW9uIHRpbWVcbiAgICovXG4gIHByaXZhdGUgc3RhdGljIGdldEV4cGlyYXRpb25UaW1lKCk6IG51bWJlciB7XG4gICAgY29uc3QgY3VycmVudERhdGUgPSBuZXcgRGF0ZSgpO1xuICAgIGN1cnJlbnREYXRlLnNldEhvdXJzKGN1cnJlbnREYXRlLmdldEhvdXJzKCkgKyAxKTtcbiAgICByZXR1cm4gY3VycmVudERhdGUuZ2V0VGltZSgpIC8gMTAwMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiBhIHNpZ25pbmcga2V5IGlzIHNldCBmb3IgdGhpcyBidWlsZGVyLCByZWNhbGN1bGF0ZXMgdGhlIHNpZ25hdHVyZVxuICAgKlxuICAgKiBAcmV0dXJucyB7c3RyaW5nfSB0aGUgc2lnbmF0dXJlIHZhbHVlXG4gICAqL1xuICBwcm90ZWN0ZWQgZ2V0U2lnbmF0dXJlKCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMuX3NpZ25LZXkpIHtcbiAgICAgIHRoaXMuX3NpZ25hdHVyZSA9IHRoaXMuZXRoU2lnbk1zZ0hhc2goKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuX3NpZ25hdHVyZSA9PSBudWxsKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFNpZ25hdHVyZUVycm9yKCdOdWxsIHNpZ25hdHVyZSB2YWx1ZScpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5fc2lnbmF0dXJlO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgcHJlZml4IHVzZWQgaW4gZ2VuZXJhdGluZyBhbiBvcGVyYXRpb24gaGFzaCBmb3Igc2VuZGluZyBuYXRpdmUgY29pbnNcbiAgICpcbiAgICogQHJldHVybnMgdGhlIHN0cmluZyBwcmVmaXhcbiAgICovXG4gIHByb3RlY3RlZCBnZXROYXRpdmVPcGVyYXRpb25IYXNoUHJlZml4KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdFVEhFUic7XG4gIH1cblxuICAvKipcbiAgICogT2J0YWlucyB0aGUgcHJvcGVyIG9wZXJhdGlvbiBoYXNoIHRvIHNpZ24gZWl0aGVyIGEgc2VuZE11bHRpU2lnIGRhdGFcbiAgICogb3IgYSBzZW5kTXVsdGlTaWdUb2tlbiBkYXRhXG4gICAqXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IHRoZSBvcGVyYXRpb24gaGFzaFxuICAgKi9cbiAgcHJpdmF0ZSBnZXRPcGVyYXRpb25IYXNoKCk6IHN0cmluZyB7XG4gICAgY29uc3QgaGFzaCA9IHNvbGlkaXR5S2VjY2FrMjU2KFxuICAgICAgWydzdHJpbmcnLCAnYWRkcmVzcycsICd1aW50JywgJ2J5dGVzJywgJ3VpbnQnLCAndWludCddLFxuICAgICAgW1xuICAgICAgICB0aGlzLmdldE5hdGl2ZU9wZXJhdGlvbkhhc2hQcmVmaXgoKSxcbiAgICAgICAgdGhpcy5fdG9BZGRyZXNzLFxuICAgICAgICAnMCcsIC8vIGR1bW15IGFtb3VudCB2YWx1ZVxuICAgICAgICB0aGlzLl9kYXRhLFxuICAgICAgICB0aGlzLl9leHBpcmF0aW9uVGltZSxcbiAgICAgICAgdGhpcy5fc2VxdWVuY2VJZCxcbiAgICAgIF0sXG4gICAgKTtcbiAgICByZXR1cm4gaGFzaDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTaWducyB0aGUgTWVzc2FnZSB3aXRoIHRoZSBnaXZlbiBwcml2YXRlIGtleVxuICAgKiBAcmV0dXJucyB7c3RyaW5nfSA2NSBieXRlIGxvbmcgcmF3IHNpZ25hdHVyZVxuICAgKi9cbiAgcHJvdGVjdGVkIGV0aFNpZ25Nc2dIYXNoKCk6IHN0cmluZyB7XG4gICAgY29uc3Qgc2lnbktleSA9IG5ldyBTaWduaW5nS2V5KCcweCcuY29uY2F0KHRoaXMuX3NpZ25LZXkpKTtcbiAgICBjb25zdCBkaWdlc3QgPSBzaWduS2V5LnNpZ25EaWdlc3QodGhpcy5nZXRPcGVyYXRpb25IYXNoKCkpO1xuICAgIGNvbnN0IHJhd1NpZ25hdHVyZSA9IGpvaW5TaWduYXR1cmUoZGlnZXN0KTtcblxuICAgIHJldHVybiByYXdTaWduYXR1cmU7XG4gIH1cbn1cbiJdfQ==
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZU5GVFRyYW5zZmVyQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb2luL2V0aC90cmFuc2ZlckJ1aWxkZXIvYmFzZU5GVFRyYW5zZmVyQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw4Q0FBb0Y7QUFDcEYsb0NBQTZDO0FBQzdDLDRDQUFnRjtBQUVoRixNQUFzQixzQkFBc0I7SUFZMUMsWUFBc0IsY0FBdUI7UUFYMUIscUJBQWdCLEdBQUcsSUFBSSxDQUFDO1FBWXpDLElBQUksY0FBYyxLQUFLLFNBQVMsRUFBRTtZQUNoQywwREFBMEQ7WUFDMUQsSUFBSSxDQUFDLGVBQWUsR0FBRyxzQkFBc0IsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ2xFLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1lBQ25DLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1NBQ3pDO0lBQ0gsQ0FBQztJQUVELGNBQWMsQ0FBQyxJQUFZO1FBQ3pCLElBQUksSUFBSSxHQUFHLENBQUMsRUFBRTtZQUNaLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1lBQ3hDLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1lBQzVCLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFDRCxNQUFNLElBQUkscUNBQTBCLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQsR0FBRyxDQUFDLE9BQWU7UUFDakIsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDeEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsT0FBZTtRQUNoQyxJQUFJLE9BQU8sSUFBSSxDQUFDLEVBQUU7WUFDaEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7WUFDeEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUM7WUFDM0IsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELE1BQU0sSUFBSSxxQ0FBMEIsQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRCxFQUFFLENBQUMsT0FBZTtRQUNoQixJQUFJLHlCQUFpQixDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQzlCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1lBQ3hDLElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDO1lBQzFCLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFDRCxNQUFNLElBQUkscUNBQTBCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQsSUFBSSxDQUFDLE9BQWU7UUFDbEIsSUFBSSx5QkFBaUIsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUM5QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztZQUN4QyxJQUFJLENBQUMsWUFBWSxHQUFHLE9BQU8sQ0FBQztZQUM1QixPQUFPLElBQUksQ0FBQztTQUNiO1FBQ0QsTUFBTSxJQUFJLHFDQUEwQixDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVEOzs7T0FHRztJQUNLLE1BQU0sQ0FBQyxpQkFBaUI7UUFDOUIsTUFBTSxXQUFXLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUMvQixXQUFXLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNqRCxPQUFPLFdBQVcsQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUM7SUFDdEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDTyxZQUFZO1FBQ3BCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUN6QztRQUNELElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLEVBQUU7WUFDM0IsTUFBTSxJQUFJLGdDQUFxQixDQUFDLHNCQUFzQixDQUFDLENBQUM7U0FDekQ7UUFDRCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUVEOzs7O09BSUc7SUFDTyw0QkFBNEI7UUFDcEMsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ssZ0JBQWdCO1FBQ3RCLE1BQU0sSUFBSSxHQUFHLHlCQUFpQixDQUM1QixDQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLEVBQ3REO1lBQ0UsSUFBSSxDQUFDLDRCQUE0QixFQUFFO1lBQ25DLElBQUksQ0FBQyxVQUFVO1lBQ2YsR0FBRztZQUNILElBQUksQ0FBQyxLQUFLO1lBQ1YsSUFBSSxDQUFDLGVBQWU7WUFDcEIsSUFBSSxDQUFDLFdBQVc7U0FDakIsQ0FDRixDQUFDO1FBQ0YsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7OztPQUdHO0lBQ08sY0FBYztRQUN0QixNQUFNLE9BQU8sR0FBRyxJQUFJLGtCQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUMzRCxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7UUFDM0QsTUFBTSxZQUFZLEdBQUcscUJBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUUzQyxPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDO0NBQ0Y7QUFoSUQsd0RBZ0lDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IsIEludmFsaWRTaWduYXR1cmVFcnJvciB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgeyBpc1ZhbGlkRXRoQWRkcmVzcyB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IGpvaW5TaWduYXR1cmUsIHNvbGlkaXR5S2VjY2FrMjU2LCBTaWduaW5nS2V5IH0gZnJvbSAnZXRoZXJzL2xpYi91dGlscyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlTkZUVHJhbnNmZXJCdWlsZGVyIHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IF9FTVBUWV9IRVhfVkFMVUUgPSAnMHgnO1xuICAvLyBkdW1teSBhY2NvdW50IHZhbHVlLCBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIFNlbmRNdWx0aVNpZ1xuICBwcm90ZWN0ZWQgX2Zyb21BZGRyZXNzOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfdG9BZGRyZXNzOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfc2VxdWVuY2VJZDogbnVtYmVyO1xuICBwcm90ZWN0ZWQgX3NpZ25LZXk6IHN0cmluZztcbiAgcHJvdGVjdGVkIF9leHBpcmF0aW9uVGltZTogbnVtYmVyO1xuICBwcm90ZWN0ZWQgX3NpZ25hdHVyZTogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX2RhdGE6IHN0cmluZztcbiAgcHJvdGVjdGVkIF90b2tlbkNvbnRyYWN0QWRkcmVzczogc3RyaW5nO1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihzZXJpYWxpemVkRGF0YT86IHN0cmluZykge1xuICAgIGlmIChzZXJpYWxpemVkRGF0YSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyBpbml0aWFsaXplIHdpdGggZGVmYXVsdCB2YWx1ZXMgZm9yIG5vbiBtYW5kYXRvcnkgZmllbGRzXG4gICAgICB0aGlzLl9leHBpcmF0aW9uVGltZSA9IEJhc2VORlRUcmFuc2ZlckJ1aWxkZXIuZ2V0RXhwaXJhdGlvblRpbWUoKTtcbiAgICAgIHRoaXMuX2RhdGEgPSB0aGlzLl9FTVBUWV9IRVhfVkFMVUU7XG4gICAgICB0aGlzLl9zaWduYXR1cmUgPSB0aGlzLl9FTVBUWV9IRVhfVkFMVUU7XG4gICAgfVxuICB9XG5cbiAgZXhwaXJhdGlvblRpbWUoZGF0ZTogbnVtYmVyKTogdGhpcyB7XG4gICAgaWYgKGRhdGUgPiAwKSB7XG4gICAgICB0aGlzLl9zaWduYXR1cmUgPSB0aGlzLl9FTVBUWV9IRVhfVkFMVUU7XG4gICAgICB0aGlzLl9leHBpcmF0aW9uVGltZSA9IGRhdGU7XG4gICAgICByZXR1cm4gdGhpcztcbiAgICB9XG4gICAgdGhyb3cgbmV3IEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yKCdJbnZhbGlkIGV4cGlyYXRpb24gdGltZScpO1xuICB9XG5cbiAga2V5KHNpZ25LZXk6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMuX3NpZ25LZXkgPSBzaWduS2V5O1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgY29udHJhY3RTZXF1ZW5jZUlkKGNvdW50ZXI6IG51bWJlcik6IHRoaXMge1xuICAgIGlmIChjb3VudGVyID49IDApIHtcbiAgICAgIHRoaXMuX3NpZ25hdHVyZSA9IHRoaXMuX0VNUFRZX0hFWF9WQUxVRTtcbiAgICAgIHRoaXMuX3NlcXVlbmNlSWQgPSBjb3VudGVyO1xuICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuICAgIHRocm93IG5ldyBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcignSW52YWxpZCBjb250cmFjdCBzZXF1ZW5jZSBpZCcpO1xuICB9XG5cbiAgdG8oYWRkcmVzczogc3RyaW5nKTogdGhpcyB7XG4gICAgaWYgKGlzVmFsaWRFdGhBZGRyZXNzKGFkZHJlc3MpKSB7XG4gICAgICB0aGlzLl9zaWduYXR1cmUgPSB0aGlzLl9FTVBUWV9IRVhfVkFMVUU7XG4gICAgICB0aGlzLl90b0FkZHJlc3MgPSBhZGRyZXNzO1xuICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuICAgIHRocm93IG5ldyBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcignSW52YWxpZCBhZGRyZXNzJyk7XG4gIH1cblxuICBmcm9tKGFkZHJlc3M6IHN0cmluZyk6IHRoaXMge1xuICAgIGlmIChpc1ZhbGlkRXRoQWRkcmVzcyhhZGRyZXNzKSkge1xuICAgICAgdGhpcy5fc2lnbmF0dXJlID0gdGhpcy5fRU1QVFlfSEVYX1ZBTFVFO1xuICAgICAgdGhpcy5fZnJvbUFkZHJlc3MgPSBhZGRyZXNzO1xuICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuICAgIHRocm93IG5ldyBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcignSW52YWxpZCBhZGRyZXNzJyk7XG4gIH1cblxuICAvKiogUmV0dXJuIGFuIGV4cGlyYXRpb24gdGltZSwgaW4gc2Vjb25kcywgc2V0IHRvIG9uZSBob3VyIGZyb20gbm93XG4gICAqXG4gICAqIEByZXR1cm5zIHtudW1iZXJ9IGV4cGlyYXRpb24gdGltZVxuICAgKi9cbiAgcHJpdmF0ZSBzdGF0aWMgZ2V0RXhwaXJhdGlvblRpbWUoKTogbnVtYmVyIHtcbiAgICBjb25zdCBjdXJyZW50RGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgY3VycmVudERhdGUuc2V0SG91cnMoY3VycmVudERhdGUuZ2V0SG91cnMoKSArIDEpO1xuICAgIHJldHVybiBjdXJyZW50RGF0ZS5nZXRUaW1lKCkgLyAxMDAwO1xuICB9XG5cbiAgLyoqXG4gICAqIElmIGEgc2lnbmluZyBrZXkgaXMgc2V0IGZvciB0aGlzIGJ1aWxkZXIsIHJlY2FsY3VsYXRlcyB0aGUgc2lnbmF0dXJlXG4gICAqXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IHRoZSBzaWduYXR1cmUgdmFsdWVcbiAgICovXG4gIHByb3RlY3RlZCBnZXRTaWduYXR1cmUoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5fc2lnbktleSkge1xuICAgICAgdGhpcy5fc2lnbmF0dXJlID0gdGhpcy5ldGhTaWduTXNnSGFzaCgpO1xuICAgIH1cbiAgICBpZiAodGhpcy5fc2lnbmF0dXJlID09IG51bGwpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkU2lnbmF0dXJlRXJyb3IoJ051bGwgc2lnbmF0dXJlIHZhbHVlJyk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLl9zaWduYXR1cmU7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBwcmVmaXggdXNlZCBpbiBnZW5lcmF0aW5nIGFuIG9wZXJhdGlvbiBoYXNoIGZvciBzZW5kaW5nIG5hdGl2ZSBjb2luc1xuICAgKlxuICAgKiBAcmV0dXJucyB0aGUgc3RyaW5nIHByZWZpeFxuICAgKi9cbiAgcHJvdGVjdGVkIGdldE5hdGl2ZU9wZXJhdGlvbkhhc2hQcmVmaXgoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ0VUSEVSJztcbiAgfVxuXG4gIC8qKlxuICAgKiBPYnRhaW5zIHRoZSBwcm9wZXIgb3BlcmF0aW9uIGhhc2ggdG8gc2lnbiBlaXRoZXIgYSBzZW5kTXVsdGlTaWcgZGF0YVxuICAgKiBvciBhIHNlbmRNdWx0aVNpZ1Rva2VuIGRhdGFcbiAgICpcbiAgICogQHJldHVybnMge3N0cmluZ30gdGhlIG9wZXJhdGlvbiBoYXNoXG4gICAqL1xuICBwcml2YXRlIGdldE9wZXJhdGlvbkhhc2goKTogc3RyaW5nIHtcbiAgICBjb25zdCBoYXNoID0gc29saWRpdHlLZWNjYWsyNTYoXG4gICAgICBbJ3N0cmluZycsICdhZGRyZXNzJywgJ3VpbnQnLCAnYnl0ZXMnLCAndWludCcsICd1aW50J10sXG4gICAgICBbXG4gICAgICAgIHRoaXMuZ2V0TmF0aXZlT3BlcmF0aW9uSGFzaFByZWZpeCgpLFxuICAgICAgICB0aGlzLl90b0FkZHJlc3MsXG4gICAgICAgICcwJywgLy8gZHVtbXkgYW1vdW50IHZhbHVlXG4gICAgICAgIHRoaXMuX2RhdGEsXG4gICAgICAgIHRoaXMuX2V4cGlyYXRpb25UaW1lLFxuICAgICAgICB0aGlzLl9zZXF1ZW5jZUlkLFxuICAgICAgXSxcbiAgICApO1xuICAgIHJldHVybiBoYXNoO1xuICB9XG5cbiAgLyoqXG4gICAqIFNpZ25zIHRoZSBNZXNzYWdlIHdpdGggdGhlIGdpdmVuIHByaXZhdGUga2V5XG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IDY1IGJ5dGUgbG9uZyByYXcgc2lnbmF0dXJlXG4gICAqL1xuICBwcm90ZWN0ZWQgZXRoU2lnbk1zZ0hhc2goKTogc3RyaW5nIHtcbiAgICBjb25zdCBzaWduS2V5ID0gbmV3IFNpZ25pbmdLZXkoJzB4Jy5jb25jYXQodGhpcy5fc2lnbktleSkpO1xuICAgIGNvbnN0IGRpZ2VzdCA9IHNpZ25LZXkuc2lnbkRpZ2VzdCh0aGlzLmdldE9wZXJhdGlvbkhhc2goKSk7XG4gICAgY29uc3QgcmF3U2lnbmF0dXJlID0gam9pblNpZ25hdHVyZShkaWdlc3QpO1xuXG4gICAgcmV0dXJuIHJhd1NpZ25hdHVyZTtcbiAgfVxufVxuIl19
@@ -1,76 +1,60 @@
1
1
  "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
2
  Object.defineProperty(exports, "__esModule", { value: true });
18
3
  exports.ERC1155TransferBuilder = void 0;
19
- var errors_1 = require("../../baseCoin/errors");
20
- var contractCall_1 = require("../contractCall");
21
- var utils_1 = require("../utils");
22
- var walletUtil_1 = require("../walletUtil");
23
- var baseNFTTransferBuilder_1 = require("./baseNFTTransferBuilder");
24
- var utils_2 = require("ethers/lib/utils");
25
- var ERC1155TransferBuilder = /** @class */ (function (_super) {
26
- __extends(ERC1155TransferBuilder, _super);
27
- function ERC1155TransferBuilder(serializedData) {
28
- var _this = _super.call(this, serializedData) || this;
29
- _this.bytes(0);
4
+ const sdk_core_1 = require("@bitgo/sdk-core");
5
+ const contractCall_1 = require("../contractCall");
6
+ const utils_1 = require("../utils");
7
+ const walletUtil_1 = require("../walletUtil");
8
+ const baseNFTTransferBuilder_1 = require("./baseNFTTransferBuilder");
9
+ const utils_2 = require("ethers/lib/utils");
10
+ class ERC1155TransferBuilder extends baseNFTTransferBuilder_1.BaseNFTTransferBuilder {
11
+ constructor(serializedData) {
12
+ super(serializedData);
13
+ this.bytes(0);
30
14
  if (serializedData) {
31
- _this.decodeTransferData(serializedData);
15
+ this.decodeTransferData(serializedData);
32
16
  }
33
17
  else {
34
- _this._tokenIds = [];
35
- _this._values = [];
18
+ this._tokenIds = [];
19
+ this._values = [];
36
20
  }
37
- return _this;
38
21
  }
39
- ERC1155TransferBuilder.prototype.tokenContractAddress = function (address) {
22
+ tokenContractAddress(address) {
40
23
  if (utils_1.isValidEthAddress(address)) {
41
24
  this._tokenContractAddress = address;
42
25
  return this;
43
26
  }
44
- throw new errors_1.InvalidParameterValueError('Invalid address');
45
- };
46
- ERC1155TransferBuilder.prototype.entry = function (tokenId, value) {
27
+ throw new sdk_core_1.InvalidParameterValueError('Invalid address');
28
+ }
29
+ entry(tokenId, value) {
47
30
  this._tokenIds.push(tokenId.toString());
48
31
  this._values.push(value.toString());
49
32
  return this;
50
- };
51
- ERC1155TransferBuilder.prototype.bytes = function (bytesInNumber) {
33
+ }
34
+ bytes(bytesInNumber) {
52
35
  this._bytes = utils_2.hexZeroPad(utils_2.hexlify(bytesInNumber), 32);
53
36
  return this;
54
- };
55
- ERC1155TransferBuilder.prototype.signAndBuild = function () {
56
- var hasMandatoryFields = this.hasMandatoryFields();
37
+ }
38
+ signAndBuild() {
39
+ const hasMandatoryFields = this.hasMandatoryFields();
57
40
  if (hasMandatoryFields) {
58
41
  if (this._tokenIds.length === 1) {
59
- var values = [this._fromAddress, this._toAddress, this._tokenIds[0], this._values[0], this._bytes];
60
- var contractCall = new contractCall_1.ContractCall(walletUtil_1.ERC1155SafeTransferTypeMethodId, walletUtil_1.ERC1155SafeTransferTypes, values);
42
+ const values = [this._fromAddress, this._toAddress, this._tokenIds[0], this._values[0], this._bytes];
43
+ const contractCall = new contractCall_1.ContractCall(walletUtil_1.ERC1155SafeTransferTypeMethodId, walletUtil_1.ERC1155SafeTransferTypes, values);
61
44
  this._data = contractCall.serialize();
62
45
  }
63
46
  else {
64
- var values = [this._fromAddress, this._toAddress, this._tokenIds, this._values, this._bytes];
65
- var contractCall = new contractCall_1.ContractCall(walletUtil_1.ERC1155BatchTransferTypeMethodId, walletUtil_1.ERC1155BatchTransferTypes, values);
47
+ const values = [this._fromAddress, this._toAddress, this._tokenIds, this._values, this._bytes];
48
+ const contractCall = new contractCall_1.ContractCall(walletUtil_1.ERC1155BatchTransferTypeMethodId, walletUtil_1.ERC1155BatchTransferTypes, values);
66
49
  this._data = contractCall.serialize();
67
50
  }
68
51
  return utils_1.sendMultiSigData(this._tokenContractAddress, '0', // dummy amount value
69
52
  this._data, this._expirationTime, this._sequenceId, this.getSignature());
70
53
  }
71
- throw new errors_1.BuildTransactionError("Missing transfer mandatory fields. \n Destination (to) address, source (from) address, sequenceID, the token contract address, tokenIDs and their values are mandatory");
72
- };
73
- ERC1155TransferBuilder.prototype.hasMandatoryFields = function () {
54
+ throw new sdk_core_1.BuildTransactionError(`Missing transfer mandatory fields.
55
+ Destination (to) address, source (from) address, sequenceID, the token contract address, tokenIDs and their values are mandatory`);
56
+ }
57
+ hasMandatoryFields() {
74
58
  return (this._tokenIds !== undefined &&
75
59
  this._tokenIds.length !== 0 &&
76
60
  this._values.length !== 0 &&
@@ -79,9 +63,9 @@ var ERC1155TransferBuilder = /** @class */ (function (_super) {
79
63
  this._fromAddress !== undefined &&
80
64
  this._tokenContractAddress !== undefined &&
81
65
  this._sequenceId !== undefined);
82
- };
83
- ERC1155TransferBuilder.prototype.decodeTransferData = function (data) {
84
- var transferData = utils_1.decodeERC1155TransferData(data);
66
+ }
67
+ decodeTransferData(data) {
68
+ const transferData = utils_1.decodeERC1155TransferData(data);
85
69
  this._toAddress = transferData.to;
86
70
  this._fromAddress = transferData.from;
87
71
  this._expirationTime = transferData.expireTime;
@@ -93,8 +77,7 @@ var ERC1155TransferBuilder = /** @class */ (function (_super) {
93
77
  if (transferData.data) {
94
78
  this._data = transferData.data;
95
79
  }
96
- };
97
- return ERC1155TransferBuilder;
98
- }(baseNFTTransferBuilder_1.BaseNFTTransferBuilder));
80
+ }
81
+ }
99
82
  exports.ERC1155TransferBuilder = ERC1155TransferBuilder;
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyRVJDMTE1NS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb2luL2V0aC90cmFuc2ZlckJ1aWxkZXIvdHJhbnNmZXJCdWlsZGVyRVJDMTE1NS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxnREFBMEY7QUFDMUYsZ0RBQStDO0FBQy9DLGtDQUEwRjtBQUMxRiw0Q0FLdUI7QUFDdkIsbUVBQWtFO0FBQ2xFLDBDQUF1RDtBQUV2RDtJQUE0QywwQ0FBc0I7SUFLaEUsZ0NBQVksY0FBdUI7UUFBbkMsWUFDRSxrQkFBTSxjQUFjLENBQUMsU0FRdEI7UUFQQyxLQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2QsSUFBSSxjQUFjLEVBQUU7WUFDbEIsS0FBSSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQ3pDO2FBQU07WUFDTCxLQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztZQUNwQixLQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztTQUNuQjs7SUFDSCxDQUFDO0lBRUQscURBQW9CLEdBQXBCLFVBQXFCLE9BQWU7UUFDbEMsSUFBSSx5QkFBaUIsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUM5QixJQUFJLENBQUMscUJBQXFCLEdBQUcsT0FBTyxDQUFDO1lBQ3JDLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFDRCxNQUFNLElBQUksbUNBQTBCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQsc0NBQUssR0FBTCxVQUFNLE9BQWUsRUFBRSxLQUFhO1FBQ2xDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ3BDLE9B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SUFBSSxDQUFDLFNBQVMsR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxPQUFPLEdBQUcsWUFBWSxDQUFDLE1BQU0sQ0FBQztRQUNuQyxJQUFJLFlBQVksQ0FBQyxJQUFJLEVBQUU7WUFDckIsSUFBSSxDQUFDLEtBQUssR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDO1NBQ2hDO0lBQ0gsQ0FBQztJQUNILDZCQUFDO0FBQUQsQ0FBQyxBQXpGRCxDQUE0QywrQ0FBc0IsR0F5RmpFO0FBekZZLHdEQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJ1aWxkVHJhbnNhY3Rpb25FcnJvciwgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IgfSBmcm9tICcuLi8uLi9iYXNlQ29pbi9lcnJvcnMnO1xuaW1wb3J0IHsgQ29udHJhY3RDYWxsIH0gZnJvbSAnLi4vY29udHJhY3RDYWxsJztcbmltcG9ydCB7IGRlY29kZUVSQzExNTVUcmFuc2ZlckRhdGEsIGlzVmFsaWRFdGhBZGRyZXNzLCBzZW5kTXVsdGlTaWdEYXRhIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHtcbiAgRVJDMTE1NUJhdGNoVHJhbnNmZXJUeXBlcyxcbiAgRVJDMTE1NVNhZmVUcmFuc2ZlclR5cGVzLFxuICBFUkMxMTU1QmF0Y2hUcmFuc2ZlclR5cGVNZXRob2RJZCxcbiAgRVJDMTE1NVNhZmVUcmFuc2ZlclR5cGVNZXRob2RJZCxcbn0gZnJvbSAnLi4vd2FsbGV0VXRpbCc7XG5pbXBvcnQgeyBCYXNlTkZUVHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi9iYXNlTkZUVHJhbnNmZXJCdWlsZGVyJztcbmltcG9ydCB7IGhleGxpZnksIGhleFplcm9QYWQgfSBmcm9tICdldGhlcnMvbGliL3V0aWxzJztcblxuZXhwb3J0IGNsYXNzIEVSQzExNTVUcmFuc2ZlckJ1aWxkZXIgZXh0ZW5kcyBCYXNlTkZUVHJhbnNmZXJCdWlsZGVyIHtcbiAgcHJpdmF0ZSBfdG9rZW5JZHM6IHN0cmluZ1tdO1xuICBwcml2YXRlIF92YWx1ZXM6IHN0cmluZ1tdO1xuICBwcml2YXRlIF9ieXRlczogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNlcmlhbGl6ZWREYXRhPzogc3RyaW5nKSB7XG4gICAgc3VwZXIoc2VyaWFsaXplZERhdGEpO1xuICAgIHRoaXMuYnl0ZXMoMCk7XG4gICAgaWYgKHNlcmlhbGl6ZWREYXRhKSB7XG4gICAgICB0aGlzLmRlY29kZVRyYW5zZmVyRGF0YShzZXJpYWxpemVkRGF0YSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX3Rva2VuSWRzID0gW107XG4gICAgICB0aGlzLl92YWx1ZXMgPSBbXTtcbiAgICB9XG4gIH1cblxuICB0b2tlbkNvbnRyYWN0QWRkcmVzcyhhZGRyZXNzOiBzdHJpbmcpOiBFUkMxMTU1VHJhbnNmZXJCdWlsZGVyIHtcbiAgICBpZiAoaXNWYWxpZEV0aEFkZHJlc3MoYWRkcmVzcykpIHtcbiAgICAgIHRoaXMuX3Rva2VuQ29udHJhY3RBZGRyZXNzID0gYWRkcmVzcztcbiAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IoJ0ludmFsaWQgYWRkcmVzcycpO1xuICB9XG5cbiAgZW50cnkodG9rZW5JZDogbnVtYmVyLCB2YWx1ZTogbnVtYmVyKTogRVJDMTE1NVRyYW5zZmVyQnVpbGRlciB7XG4gICAgdGhpcy5fdG9rZW5JZHMucHVzaCh0b2tlbklkLnRvU3RyaW5nKCkpO1xuICAgIHRoaXMuX3ZhbHVlcy5wdXNoKHZhbHVlLnRvU3RyaW5nKCkpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgYnl0ZXMoYnl0ZXNJbk51bWJlcjogbnVtYmVyKTogRVJDMTE1NVRyYW5zZmVyQnVpbGRlciB7XG4gICAgdGhpcy5fYnl0ZXMgPSBoZXhaZXJvUGFkKGhleGxpZnkoYnl0ZXNJbk51bWJlciksIDMyKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHNpZ25BbmRCdWlsZCgpOiBzdHJpbmcge1xuICAgIGNvbnN0IGhhc01hbmRhdG9yeUZpZWxkcyA9IHRoaXMuaGFzTWFuZGF0b3J5RmllbGRzKCk7XG4gICAgaWYgKGhhc01hbmRhdG9yeUZpZWxkcykge1xuICAgICAgaWYgKHRoaXMuX3Rva2VuSWRzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICBjb25zdCB2YWx1ZXMgPSBbdGhpcy5fZnJvbUFkZHJlc3MsIHRoaXMuX3RvQWRkcmVzcywgdGhpcy5fdG9rZW5JZHNbMF0sIHRoaXMuX3ZhbHVlc1swXSwgdGhpcy5fYnl0ZXNdO1xuICAgICAgICBjb25zdCBjb250cmFjdENhbGwgPSBuZXcgQ29udHJhY3RDYWxsKEVSQzExNTVTYWZlVHJhbnNmZXJUeXBlTWV0aG9kSWQsIEVSQzExNTVTYWZlVHJhbnNmZXJUeXBlcywgdmFsdWVzKTtcbiAgICAgICAgdGhpcy5fZGF0YSA9IGNvbnRyYWN0Q2FsbC5zZXJpYWxpemUoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHZhbHVlcyA9IFt0aGlzLl9mcm9tQWRkcmVzcywgdGhpcy5fdG9BZGRyZXNzLCB0aGlzLl90b2tlbklkcywgdGhpcy5fdmFsdWVzLCB0aGlzLl9ieXRlc107XG4gICAgICAgIGNvbnN0IGNvbnRyYWN0Q2FsbCA9IG5ldyBDb250cmFjdENhbGwoRVJDMTE1NUJhdGNoVHJhbnNmZXJUeXBlTWV0aG9kSWQsIEVSQzExNTVCYXRjaFRyYW5zZmVyVHlwZXMsIHZhbHVlcyk7XG4gICAgICAgIHRoaXMuX2RhdGEgPSBjb250cmFjdENhbGwuc2VyaWFsaXplKCk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBzZW5kTXVsdGlTaWdEYXRhKFxuICAgICAgICB0aGlzLl90b2tlbkNvbnRyYWN0QWRkcmVzcyxcbiAgICAgICAgJzAnLCAvLyBkdW1teSBhbW91bnQgdmFsdWVcbiAgICAgICAgdGhpcy5fZGF0YSxcbiAgICAgICAgdGhpcy5fZXhwaXJhdGlvblRpbWUsXG4gICAgICAgIHRoaXMuX3NlcXVlbmNlSWQsXG4gICAgICAgIHRoaXMuZ2V0U2lnbmF0dXJlKCksXG4gICAgICApO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKFxuICAgICAgYE1pc3NpbmcgdHJhbnNmZXIgbWFuZGF0b3J5IGZpZWxkcy4gXG4gICAgICAgRGVzdGluYXRpb24gKHRvKSBhZGRyZXNzLCBzb3VyY2UgKGZyb20pIGFkZHJlc3MsIHNlcXVlbmNlSUQsIHRoZSB0b2tlbiBjb250cmFjdCBhZGRyZXNzLCB0b2tlbklEcyBhbmQgdGhlaXIgdmFsdWVzIGFyZSBtYW5kYXRvcnlgLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGhhc01hbmRhdG9yeUZpZWxkcygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5fdG9rZW5JZHMgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgdGhpcy5fdG9rZW5JZHMubGVuZ3RoICE9PSAwICYmXG4gICAgICB0aGlzLl92YWx1ZXMubGVuZ3RoICE9PSAwICYmXG4gICAgICB0aGlzLl90b2tlbklkcy5sZW5ndGggPT09IHRoaXMuX3ZhbHVlcy5sZW5ndGggJiZcbiAgICAgIHRoaXMuX3RvQWRkcmVzcyAhPT0gdW5kZWZpbmVkICYmXG4gICAgICB0aGlzLl9mcm9tQWRkcmVzcyAhPT0gdW5kZWZpbmVkICYmXG4gICAgICB0aGlzLl90b2tlbkNvbnRyYWN0QWRkcmVzcyAhPT0gdW5kZWZpbmVkICYmXG4gICAgICB0aGlzLl9zZXF1ZW5jZUlkICE9PSB1bmRlZmluZWRcbiAgICApO1xuICB9XG4gIHByaXZhdGUgZGVjb2RlVHJhbnNmZXJEYXRhKGRhdGE6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHRyYW5zZmVyRGF0YSA9IGRlY29kZUVSQzExNTVUcmFuc2ZlckRhdGEoZGF0YSk7XG4gICAgdGhpcy5fdG9BZGRyZXNzID0gdHJhbnNmZXJEYXRhLnRvO1xuICAgIHRoaXMuX2Zyb21BZGRyZXNzID0gdHJhbnNmZXJEYXRhLmZyb207XG4gICAgdGhpcy5fZXhwaXJhdGlvblRpbWUgPSB0cmFuc2ZlckRhdGEuZXhwaXJlVGltZTtcbiAgICB0aGlzLl9zZXF1ZW5jZUlkID0gdHJhbnNmZXJEYXRhLnNlcXVlbmNlSWQ7XG4gICAgdGhpcy5fc2lnbmF0dXJlID0gdHJhbnNmZXJEYXRhLnNpZ25hdHVyZTtcbiAgICB0aGlzLl90b2tlbkNvbnRyYWN0QWRkcmVzcyA9IHRyYW5zZmVyRGF0YS50b2tlbkNvbnRyYWN0QWRkcmVzcztcbiAgICB0aGlzLl90b2tlbklkcyA9IHRyYW5zZmVyRGF0YS50b2tlbklkcztcbiAgICB0aGlzLl92YWx1ZXMgPSB0cmFuc2ZlckRhdGEudmFsdWVzO1xuICAgIGlmICh0cmFuc2ZlckRhdGEuZGF0YSkge1xuICAgICAgdGhpcy5fZGF0YSA9IHRyYW5zZmVyRGF0YS5kYXRhO1xuICAgIH1cbiAgfVxufVxuIl19
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyRVJDMTE1NS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb2luL2V0aC90cmFuc2ZlckJ1aWxkZXIvdHJhbnNmZXJCdWlsZGVyRVJDMTE1NS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw4Q0FBb0Y7QUFDcEYsa0RBQStDO0FBQy9DLG9DQUEwRjtBQUMxRiw4Q0FLdUI7QUFDdkIscUVBQWtFO0FBQ2xFLDRDQUF1RDtBQUV2RCxNQUFhLHNCQUF1QixTQUFRLCtDQUFzQjtJQUtoRSxZQUFZLGNBQXVCO1FBQ2pDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2QsSUFBSSxjQUFjLEVBQUU7WUFDbEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQ3pDO2FBQU07WUFDTCxJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztTQUNuQjtJQUNILENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxPQUFlO1FBQ2xDLElBQUkseUJBQWlCLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDOUIsSUFBSSxDQUFDLHFCQUFxQixHQUFHLE9BQU8sQ0FBQztZQUNyQyxPQUFPLElBQUksQ0FBQztTQUNiO1FBQ0QsTUFBTSxJQUFJLHFDQUEwQixDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVELEtBQUssQ0FBQyxPQUFlLEVBQUUsS0FBYTtRQUNsQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUN4QyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUNwQyxPQUFPLElBQUksQ0FBQztJQUNkLENB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QyxJQUFJLENBQUMsT0FBTyxHQUFHLFlBQVksQ0FBQyxNQUFNLENBQUM7UUFDbkMsSUFBSSxZQUFZLENBQUMsSUFBSSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQztTQUNoQztJQUNILENBQUM7Q0FDRjtBQXpGRCx3REF5RkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsIEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yIH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCB7IENvbnRyYWN0Q2FsbCB9IGZyb20gJy4uL2NvbnRyYWN0Q2FsbCc7XG5pbXBvcnQgeyBkZWNvZGVFUkMxMTU1VHJhbnNmZXJEYXRhLCBpc1ZhbGlkRXRoQWRkcmVzcywgc2VuZE11bHRpU2lnRGF0YSB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7XG4gIEVSQzExNTVCYXRjaFRyYW5zZmVyVHlwZXMsXG4gIEVSQzExNTVTYWZlVHJhbnNmZXJUeXBlcyxcbiAgRVJDMTE1NUJhdGNoVHJhbnNmZXJUeXBlTWV0aG9kSWQsXG4gIEVSQzExNTVTYWZlVHJhbnNmZXJUeXBlTWV0aG9kSWQsXG59IGZyb20gJy4uL3dhbGxldFV0aWwnO1xuaW1wb3J0IHsgQmFzZU5GVFRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vYmFzZU5GVFRyYW5zZmVyQnVpbGRlcic7XG5pbXBvcnQgeyBoZXhsaWZ5LCBoZXhaZXJvUGFkIH0gZnJvbSAnZXRoZXJzL2xpYi91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBFUkMxMTU1VHJhbnNmZXJCdWlsZGVyIGV4dGVuZHMgQmFzZU5GVFRyYW5zZmVyQnVpbGRlciB7XG4gIHByaXZhdGUgX3Rva2VuSWRzOiBzdHJpbmdbXTtcbiAgcHJpdmF0ZSBfdmFsdWVzOiBzdHJpbmdbXTtcbiAgcHJpdmF0ZSBfYnl0ZXM6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihzZXJpYWxpemVkRGF0YT86IHN0cmluZykge1xuICAgIHN1cGVyKHNlcmlhbGl6ZWREYXRhKTtcbiAgICB0aGlzLmJ5dGVzKDApO1xuICAgIGlmIChzZXJpYWxpemVkRGF0YSkge1xuICAgICAgdGhpcy5kZWNvZGVUcmFuc2ZlckRhdGEoc2VyaWFsaXplZERhdGEpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl90b2tlbklkcyA9IFtdO1xuICAgICAgdGhpcy5fdmFsdWVzID0gW107XG4gICAgfVxuICB9XG5cbiAgdG9rZW5Db250cmFjdEFkZHJlc3MoYWRkcmVzczogc3RyaW5nKTogRVJDMTE1NVRyYW5zZmVyQnVpbGRlciB7XG4gICAgaWYgKGlzVmFsaWRFdGhBZGRyZXNzKGFkZHJlc3MpKSB7XG4gICAgICB0aGlzLl90b2tlbkNvbnRyYWN0QWRkcmVzcyA9IGFkZHJlc3M7XG4gICAgICByZXR1cm4gdGhpcztcbiAgICB9XG4gICAgdGhyb3cgbmV3IEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yKCdJbnZhbGlkIGFkZHJlc3MnKTtcbiAgfVxuXG4gIGVudHJ5KHRva2VuSWQ6IG51bWJlciwgdmFsdWU6IG51bWJlcik6IEVSQzExNTVUcmFuc2ZlckJ1aWxkZXIge1xuICAgIHRoaXMuX3Rva2VuSWRzLnB1c2godG9rZW5JZC50b1N0cmluZygpKTtcbiAgICB0aGlzLl92YWx1ZXMucHVzaCh2YWx1ZS50b1N0cmluZygpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGJ5dGVzKGJ5dGVzSW5OdW1iZXI6IG51bWJlcik6IEVSQzExNTVUcmFuc2ZlckJ1aWxkZXIge1xuICAgIHRoaXMuX2J5dGVzID0gaGV4WmVyb1BhZChoZXhsaWZ5KGJ5dGVzSW5OdW1iZXIpLCAzMik7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBzaWduQW5kQnVpbGQoKTogc3RyaW5nIHtcbiAgICBjb25zdCBoYXNNYW5kYXRvcnlGaWVsZHMgPSB0aGlzLmhhc01hbmRhdG9yeUZpZWxkcygpO1xuICAgIGlmIChoYXNNYW5kYXRvcnlGaWVsZHMpIHtcbiAgICAgIGlmICh0aGlzLl90b2tlbklkcy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgY29uc3QgdmFsdWVzID0gW3RoaXMuX2Zyb21BZGRyZXNzLCB0aGlzLl90b0FkZHJlc3MsIHRoaXMuX3Rva2VuSWRzWzBdLCB0aGlzLl92YWx1ZXNbMF0sIHRoaXMuX2J5dGVzXTtcbiAgICAgICAgY29uc3QgY29udHJhY3RDYWxsID0gbmV3IENvbnRyYWN0Q2FsbChFUkMxMTU1U2FmZVRyYW5zZmVyVHlwZU1ldGhvZElkLCBFUkMxMTU1U2FmZVRyYW5zZmVyVHlwZXMsIHZhbHVlcyk7XG4gICAgICAgIHRoaXMuX2RhdGEgPSBjb250cmFjdENhbGwuc2VyaWFsaXplKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCB2YWx1ZXMgPSBbdGhpcy5fZnJvbUFkZHJlc3MsIHRoaXMuX3RvQWRkcmVzcywgdGhpcy5fdG9rZW5JZHMsIHRoaXMuX3ZhbHVlcywgdGhpcy5fYnl0ZXNdO1xuICAgICAgICBjb25zdCBjb250cmFjdENhbGwgPSBuZXcgQ29udHJhY3RDYWxsKEVSQzExNTVCYXRjaFRyYW5zZmVyVHlwZU1ldGhvZElkLCBFUkMxMTU1QmF0Y2hUcmFuc2ZlclR5cGVzLCB2YWx1ZXMpO1xuICAgICAgICB0aGlzLl9kYXRhID0gY29udHJhY3RDYWxsLnNlcmlhbGl6ZSgpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gc2VuZE11bHRpU2lnRGF0YShcbiAgICAgICAgdGhpcy5fdG9rZW5Db250cmFjdEFkZHJlc3MsXG4gICAgICAgICcwJywgLy8gZHVtbXkgYW1vdW50IHZhbHVlXG4gICAgICAgIHRoaXMuX2RhdGEsXG4gICAgICAgIHRoaXMuX2V4cGlyYXRpb25UaW1lLFxuICAgICAgICB0aGlzLl9zZXF1ZW5jZUlkLFxuICAgICAgICB0aGlzLmdldFNpZ25hdHVyZSgpLFxuICAgICAgKTtcbiAgICB9XG4gICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcihcbiAgICAgIGBNaXNzaW5nIHRyYW5zZmVyIG1hbmRhdG9yeSBmaWVsZHMuIFxuICAgICAgIERlc3RpbmF0aW9uICh0bykgYWRkcmVzcywgc291cmNlIChmcm9tKSBhZGRyZXNzLCBzZXF1ZW5jZUlELCB0aGUgdG9rZW4gY29udHJhY3QgYWRkcmVzcywgdG9rZW5JRHMgYW5kIHRoZWlyIHZhbHVlcyBhcmUgbWFuZGF0b3J5YCxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBoYXNNYW5kYXRvcnlGaWVsZHMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuX3Rva2VuSWRzICE9PSB1bmRlZmluZWQgJiZcbiAgICAgIHRoaXMuX3Rva2VuSWRzLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgdGhpcy5fdmFsdWVzLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgdGhpcy5fdG9rZW5JZHMubGVuZ3RoID09PSB0aGlzLl92YWx1ZXMubGVuZ3RoICYmXG4gICAgICB0aGlzLl90b0FkZHJlc3MgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgdGhpcy5fZnJvbUFkZHJlc3MgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgdGhpcy5fdG9rZW5Db250cmFjdEFkZHJlc3MgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgdGhpcy5fc2VxdWVuY2VJZCAhPT0gdW5kZWZpbmVkXG4gICAgKTtcbiAgfVxuICBwcml2YXRlIGRlY29kZVRyYW5zZmVyRGF0YShkYXRhOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCB0cmFuc2ZlckRhdGEgPSBkZWNvZGVFUkMxMTU1VHJhbnNmZXJEYXRhKGRhdGEpO1xuICAgIHRoaXMuX3RvQWRkcmVzcyA9IHRyYW5zZmVyRGF0YS50bztcbiAgICB0aGlzLl9mcm9tQWRkcmVzcyA9IHRyYW5zZmVyRGF0YS5mcm9tO1xuICAgIHRoaXMuX2V4cGlyYXRpb25UaW1lID0gdHJhbnNmZXJEYXRhLmV4cGlyZVRpbWU7XG4gICAgdGhpcy5fc2VxdWVuY2VJZCA9IHRyYW5zZmVyRGF0YS5zZXF1ZW5jZUlkO1xuICAgIHRoaXMuX3NpZ25hdHVyZSA9IHRyYW5zZmVyRGF0YS5zaWduYXR1cmU7XG4gICAgdGhpcy5fdG9rZW5Db250cmFjdEFkZHJlc3MgPSB0cmFuc2ZlckRhdGEudG9rZW5Db250cmFjdEFkZHJlc3M7XG4gICAgdGhpcy5fdG9rZW5JZHMgPSB0cmFuc2ZlckRhdGEudG9rZW5JZHM7XG4gICAgdGhpcy5fdmFsdWVzID0gdHJhbnNmZXJEYXRhLnZhbHVlcztcbiAgICBpZiAodHJhbnNmZXJEYXRhLmRhdGEpIHtcbiAgICAgIHRoaXMuX2RhdGEgPSB0cmFuc2ZlckRhdGEuZGF0YTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,73 +1,57 @@
1
1
  "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
2
  Object.defineProperty(exports, "__esModule", { value: true });
18
3
  exports.ERC721TransferBuilder = void 0;
19
- var errors_1 = require("../../baseCoin/errors");
20
- var contractCall_1 = require("../contractCall");
21
- var utils_1 = require("../utils");
22
- var baseNFTTransferBuilder_1 = require("./baseNFTTransferBuilder");
23
- var walletUtil_1 = require("../walletUtil");
24
- var utils_2 = require("ethers/lib/utils");
25
- var ERC721TransferBuilder = /** @class */ (function (_super) {
26
- __extends(ERC721TransferBuilder, _super);
27
- function ERC721TransferBuilder(serializedData) {
28
- var _this = _super.call(this, serializedData) || this;
29
- _this.bytes(0);
4
+ const sdk_core_1 = require("@bitgo/sdk-core");
5
+ const contractCall_1 = require("../contractCall");
6
+ const utils_1 = require("../utils");
7
+ const baseNFTTransferBuilder_1 = require("./baseNFTTransferBuilder");
8
+ const walletUtil_1 = require("../walletUtil");
9
+ const utils_2 = require("ethers/lib/utils");
10
+ class ERC721TransferBuilder extends baseNFTTransferBuilder_1.BaseNFTTransferBuilder {
11
+ constructor(serializedData) {
12
+ super(serializedData);
13
+ this.bytes(0);
30
14
  if (serializedData) {
31
- _this.decodeTransferData(serializedData);
15
+ this.decodeTransferData(serializedData);
32
16
  }
33
- return _this;
34
17
  }
35
- ERC721TransferBuilder.prototype.tokenContractAddress = function (address) {
18
+ tokenContractAddress(address) {
36
19
  if (utils_1.isValidEthAddress(address)) {
37
20
  this._tokenContractAddress = address;
38
21
  return this;
39
22
  }
40
- throw new errors_1.InvalidParameterValueError('Invalid address');
41
- };
42
- ERC721TransferBuilder.prototype.tokenId = function (token) {
23
+ throw new sdk_core_1.InvalidParameterValueError('Invalid address');
24
+ }
25
+ tokenId(token) {
43
26
  this._tokenId = token;
44
27
  return this;
45
- };
46
- ERC721TransferBuilder.prototype.bytes = function (bytesInNumber) {
28
+ }
29
+ bytes(bytesInNumber) {
47
30
  this._bytes = utils_2.hexZeroPad(utils_2.hexlify(bytesInNumber), 32);
48
31
  return this;
49
- };
50
- ERC721TransferBuilder.prototype.signAndBuild = function () {
32
+ }
33
+ signAndBuild() {
51
34
  if (this.hasMandatoryFields()) {
52
- var types = ['address', 'address', 'uint256', 'bytes'];
53
- var values = [this._fromAddress, this._toAddress, this._tokenId, this._bytes];
54
- var contractCall = new contractCall_1.ContractCall(walletUtil_1.ERC721SafeTransferTypeMethodId, types, values);
35
+ const types = ['address', 'address', 'uint256', 'bytes'];
36
+ const values = [this._fromAddress, this._toAddress, this._tokenId, this._bytes];
37
+ const contractCall = new contractCall_1.ContractCall(walletUtil_1.ERC721SafeTransferTypeMethodId, types, values);
55
38
  this._data = contractCall.serialize();
56
39
  return utils_1.sendMultiSigData(this._tokenContractAddress, // to
57
40
  '0', // dummy amount value
58
41
  this._data, this._expirationTime, this._sequenceId, this.getSignature());
59
42
  }
60
- throw new errors_1.BuildTransactionError("Missing transfer mandatory fields. \n Destination (to) address, Source (from) address, sequenceID, the token contract address and tokenID are mandatory");
61
- };
62
- ERC721TransferBuilder.prototype.hasMandatoryFields = function () {
43
+ throw new sdk_core_1.BuildTransactionError(`Missing transfer mandatory fields.
44
+ Destination (to) address, Source (from) address, sequenceID, the token contract address and tokenID are mandatory`);
45
+ }
46
+ hasMandatoryFields() {
63
47
  return (this._tokenId !== undefined &&
64
48
  this._toAddress !== undefined &&
65
49
  this._fromAddress !== undefined &&
66
50
  this._tokenContractAddress !== undefined &&
67
51
  this._sequenceId !== undefined);
68
- };
69
- ERC721TransferBuilder.prototype.decodeTransferData = function (data) {
70
- var transferData = utils_1.decodeERC721TransferData(data);
52
+ }
53
+ decodeTransferData(data) {
54
+ const transferData = utils_1.decodeERC721TransferData(data);
71
55
  this._toAddress = transferData.to;
72
56
  this._fromAddress = transferData.from;
73
57
  this._expirationTime = transferData.expireTime;
@@ -78,8 +62,7 @@ var ERC721TransferBuilder = /** @class */ (function (_super) {
78
62
  if (transferData.data) {
79
63
  this._data = transferData.data;
80
64
  }
81
- };
82
- return ERC721TransferBuilder;
83
- }(baseNFTTransferBuilder_1.BaseNFTTransferBuilder));
65
+ }
66
+ }
84
67
  exports.ERC721TransferBuilder = ERC721TransferBuilder;
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyRVJDNzIxLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvaW4vZXRoL3RyYW5zZmVyQnVpbGRlci90cmFuc2ZlckJ1aWxkZXJFUkM3MjEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsZ0RBQTBGO0FBQzFGLGdEQUErQztBQUMvQyxrQ0FBeUY7QUFDekYsbUVBQWtFO0FBQ2xFLDRDQUErRDtBQUMvRCwwQ0FBdUQ7QUFFdkQ7SUFBMkMseUNBQXNCO0lBSS9ELCtCQUFZLGNBQXVCO1FBQW5DLFlBQ0Usa0JBQU0sY0FBYyxDQUFDLFNBS3RCO1FBSkMsS0FBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNkLElBQUksY0FBYyxFQUFFO1lBQ2xCLEtBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUN6Qzs7SUFDSCxDQUFDO0lBRUQsb0RBQW9CLEdBQXBCLFVBQXFCLE9BQWU7UUFDbEMsSUFBSSx5QkFBaUIsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUM5QixJQUFJLENBQUMscUJBQXFCLEdBQUcsT0FBTyxDQUFDO1lBQ3JDLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFDRCxNQUFNLElBQUksbUNBQTBCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQsdUNBQU8sR0FBUCxVQUFRLEtBQWE7UUFDbkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQscUNBQUssR0FBTCxVQUFNLGFBQXFCO1FBQ3pCLElBQUksQ0FBQyxNQUFNLEdBQUcsa0JBQVUsQ0FBQyxlQUFPLENBQUMsYUFBYSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDckQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsNENBQVksR0FBWjtRQUNFLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFLEVBQUU7WUFDN0IsSUFBTSxLQUFLLEdBQUcsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUN6RCxJQUFNLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNoRixJQUFNLFlBQVksR0FBRyxJQUFJLDJCQUFZLENBQUMsMkNBQThCLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ3JGLElBQUksQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBRXRDLE9BQU8sd0JBQWdCLENBQ3JCLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxLQUFLO1lBQ2pDLEdBQUcsRUFBRSxxQkFBcUI7WUFDMUIsSUFBSSxDQUFDLEtBQUssRUFDVixJQUFJLENBQUMsZUFBZSxFQUNwQixJQUFJLENBQUMsV0FBVyxFQUNoQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQ3BCLENBQUM7U0FDSDtRQUVELE1BQU0sSUFBSSw4QkFBcUIsQ0FDN0IsK0pBQ21ILENBQ3BILENBQUM7SUFDSixDQUFDO0lBRU8sa0RBQWtCLEdBQTFCO1FBQ0UsT0FBTyxDQUNMLElBQUksQ0FBQyxRQUFRLEtBQUssU0FBUztZQUMzQixJQUFJLENBQUMsVUFBVSxLQUFLLFNBQVM7WUFDN0IsSUFBSSxDQUFDLFlBQVksS0FBSyxTQUFTO1lBQy9CLElBQUksQ0FBQyxxQkFBcUIsS0FBSyxTQUFTO1lBQ3hDLElBQUksQ0FBQyxXQUFXLEtBQUssU0FBUyxDQUMvQixDQUFDO0lBQ0osQ0FBQztJQUVPLGtEQUFrQixHQUExQixVQUEyQixJQUFZO1FBQ3JDLElBQU0sWUFBWSxHQUFHLGdDQUF3QixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxVQUFVLEdBQUcsWUFBWSxDQUFDLEVBQUUsQ0FBQztRQUNsQyxJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUM7UUFDdEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxZQUFZLENBQUMsVUFBVSxDQUFDO1FBQy9DLElBQUksQ0FBQyxXQUFXLEdBQUcsWUFBWSxDQUFDLFVBQVUsQ0FBQztRQUMzQyxJQUFJLENBQUMsVUFBVSxHQUFHLFlBQVksQ0FBQyxTQUFTLENBQUM7UUFDekMsSUFBSSxDQUFDLHFCQUFxQixHQUFHLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQztRQUMvRCxJQUFJLENBQUMsUUFBUSxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUM7UUFDckMsSUFBSSxZQUFZLENBQUMsSUFBSSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQztTQUNoQztJQUNILENBQUM7SUFDSCw0QkFBQztBQUFELENBQUMsQUE1RUQsQ0FBMkMsK0NBQXNCLEdBNEVoRTtBQTVFWSxzREFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsIEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yIH0gZnJvbSAnLi4vLi4vYmFzZUNvaW4vZXJyb3JzJztcbmltcG9ydCB7IENvbnRyYWN0Q2FsbCB9IGZyb20gJy4uL2NvbnRyYWN0Q2FsbCc7XG5pbXBvcnQgeyBkZWNvZGVFUkM3MjFUcmFuc2ZlckRhdGEsIGlzVmFsaWRFdGhBZGRyZXNzLCBzZW5kTXVsdGlTaWdEYXRhIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgQmFzZU5GVFRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vYmFzZU5GVFRyYW5zZmVyQnVpbGRlcic7XG5pbXBvcnQgeyBFUkM3MjFTYWZlVHJhbnNmZXJUeXBlTWV0aG9kSWQgfSBmcm9tICcuLi93YWxsZXRVdGlsJztcbmltcG9ydCB7IGhleGxpZnksIGhleFplcm9QYWQgfSBmcm9tICdldGhlcnMvbGliL3V0aWxzJztcblxuZXhwb3J0IGNsYXNzIEVSQzcyMVRyYW5zZmVyQnVpbGRlciBleHRlbmRzIEJhc2VORlRUcmFuc2ZlckJ1aWxkZXIge1xuICBwcml2YXRlIF90b2tlbklkOiBzdHJpbmc7XG4gIHByaXZhdGUgX2J5dGVzOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2VyaWFsaXplZERhdGE/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihzZXJpYWxpemVkRGF0YSk7XG4gICAgdGhpcy5ieXRlcygwKTtcbiAgICBpZiAoc2VyaWFsaXplZERhdGEpIHtcbiAgICAgIHRoaXMuZGVjb2RlVHJhbnNmZXJEYXRhKHNlcmlhbGl6ZWREYXRhKTtcbiAgICB9XG4gIH1cblxuICB0b2tlbkNvbnRyYWN0QWRkcmVzcyhhZGRyZXNzOiBzdHJpbmcpOiBFUkM3MjFUcmFuc2ZlckJ1aWxkZXIge1xuICAgIGlmIChpc1ZhbGlkRXRoQWRkcmVzcyhhZGRyZXNzKSkge1xuICAgICAgdGhpcy5fdG9rZW5Db250cmFjdEFkZHJlc3MgPSBhZGRyZXNzO1xuICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuICAgIHRocm93IG5ldyBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcignSW52YWxpZCBhZGRyZXNzJyk7XG4gIH1cblxuICB0b2tlbklkKHRva2VuOiBzdHJpbmcpOiBFUkM3MjFUcmFuc2ZlckJ1aWxkZXIge1xuICAgIHRoaXMuX3Rva2VuSWQgPSB0b2tlbjtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGJ5dGVzKGJ5dGVzSW5OdW1iZXI6IG51bWJlcik6IEVSQzcyMVRyYW5zZmVyQnVpbGRlciB7XG4gICAgdGhpcy5fYnl0ZXMgPSBoZXhaZXJvUGFkKGhleGxpZnkoYnl0ZXNJbk51bWJlciksIDMyKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHNpZ25BbmRCdWlsZCgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLmhhc01hbmRhdG9yeUZpZWxkcygpKSB7XG4gICAgICBjb25zdCB0eXBlcyA9IFsnYWRkcmVzcycsICdhZGRyZXNzJywgJ3VpbnQyNTYnLCAnYnl0ZXMnXTtcbiAgICAgIGNvbnN0IHZhbHVlcyA9IFt0aGlzLl9mcm9tQWRkcmVzcywgdGhpcy5fdG9BZGRyZXNzLCB0aGlzLl90b2tlbklkLCB0aGlzLl9ieXRlc107XG4gICAgICBjb25zdCBjb250cmFjdENhbGwgPSBuZXcgQ29udHJhY3RDYWxsKEVSQzcyMVNhZmVUcmFuc2ZlclR5cGVNZXRob2RJZCwgdHlwZXMsIHZhbHVlcyk7XG4gICAgICB0aGlzLl9kYXRhID0gY29udHJhY3RDYWxsLnNlcmlhbGl6ZSgpO1xuXG4gICAgICByZXR1cm4gc2VuZE11bHRpU2lnRGF0YShcbiAgICAgICAgdGhpcy5fdG9rZW5Db250cmFjdEFkZHJlc3MsIC8vIHRvXG4gICAgICAgICcwJywgLy8gZHVtbXkgYW1vdW50IHZhbHVlXG4gICAgICAgIHRoaXMuX2RhdGEsXG4gICAgICAgIHRoaXMuX2V4cGlyYXRpb25UaW1lLFxuICAgICAgICB0aGlzLl9zZXF1ZW5jZUlkLFxuICAgICAgICB0aGlzLmdldFNpZ25hdHVyZSgpLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKFxuICAgICAgYE1pc3NpbmcgdHJhbnNmZXIgbWFuZGF0b3J5IGZpZWxkcy4gXG4gICAgICAgRGVzdGluYXRpb24gKHRvKSBhZGRyZXNzLCBTb3VyY2UgKGZyb20pIGFkZHJlc3MsIHNlcXVlbmNlSUQsIHRoZSB0b2tlbiBjb250cmFjdCBhZGRyZXNzIGFuZCB0b2tlbklEIGFyZSBtYW5kYXRvcnlgLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGhhc01hbmRhdG9yeUZpZWxkcygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5fdG9rZW5JZCAhPT0gdW5kZWZpbmVkICYmXG4gICAgICB0aGlzLl90b0FkZHJlc3MgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgdGhpcy5fZnJvbUFkZHJlc3MgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgdGhpcy5fdG9rZW5Db250cmFjdEFkZHJlc3MgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgdGhpcy5fc2VxdWVuY2VJZCAhPT0gdW5kZWZpbmVkXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZGVjb2RlVHJhbnNmZXJEYXRhKGRhdGE6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHRyYW5zZmVyRGF0YSA9IGRlY29kZUVSQzcyMVRyYW5zZmVyRGF0YShkYXRhKTtcbiAgICB0aGlzLl90b0FkZHJlc3MgPSB0cmFuc2ZlckRhdGEudG87XG4gICAgdGhpcy5fZnJvbUFkZHJlc3MgPSB0cmFuc2ZlckRhdGEuZnJvbTtcbiAgICB0aGlzLl9leHBpcmF0aW9uVGltZSA9IHRyYW5zZmVyRGF0YS5leHBpcmVUaW1lO1xuICAgIHRoaXMuX3NlcXVlbmNlSWQgPSB0cmFuc2ZlckRhdGEuc2VxdWVuY2VJZDtcbiAgICB0aGlzLl9zaWduYXR1cmUgPSB0cmFuc2ZlckRhdGEuc2lnbmF0dXJlO1xuICAgIHRoaXMuX3Rva2VuQ29udHJhY3RBZGRyZXNzID0gdHJhbnNmZXJEYXRhLnRva2VuQ29udHJhY3RBZGRyZXNzO1xuICAgIHRoaXMuX3Rva2VuSWQgPSB0cmFuc2ZlckRhdGEudG9rZW5JZDtcbiAgICBpZiAodHJhbnNmZXJEYXRhLmRhdGEpIHtcbiAgICAgIHRoaXMuX2RhdGEgPSB0cmFuc2ZlckRhdGEuZGF0YTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyRVJDNzIxLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvaW4vZXRoL3RyYW5zZmVyQnVpbGRlci90cmFuc2ZlckJ1aWxkZXJFUkM3MjEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsOENBQW9GO0FBQ3BGLGtEQUErQztBQUMvQyxvQ0FBeUY7QUFDekYscUVBQWtFO0FBQ2xFLDhDQUErRDtBQUMvRCw0Q0FBdUQ7QUFFdkQsTUFBYSxxQkFBc0IsU0FBUSwrQ0FBc0I7SUFJL0QsWUFBWSxjQUF1QjtRQUNqQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDdEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNkLElBQUksY0FBYyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUN6QztJQUNILENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxPQUFlO1FBQ2xDLElBQUkseUJBQWlCLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDOUIsSUFBSSxDQUFDLHFCQUFxQixHQUFHLE9BQU8sQ0FBQztZQUNyQyxPQUFPLElBQUksQ0FBQztTQUNiO1FBQ0QsTUFBTSxJQUFJLHFDQUEwQixDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFhO1FBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELEtBQUssQ0FBQyxhQUFxQjtRQUN6QixJQUFJLENBQUMsTUFBTSxHQUFHLGtCQUFVLENBQUMsZUFBTyxDQUFDLGFBQWEsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3JELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxFQUFFO1lBQzdCLE1BQU0sS0FBSyxHQUFHLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDekQsTUFBTSxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDaEYsTUFBTSxZQUFZLEdBQUcsSUFBSSwyQkFBWSxDQUFDLDJDQUE4QixFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztZQUNyRixJQUFJLENBQUMsS0FBSyxHQUFHLFlBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUV0QyxPQUFPLHdCQUFnQixDQUNyQixJQUFJLENBQUMscUJBQXFCLEVBQUUsS0FBSztZQUNqQyxHQUFHLEVBQUUscUJBQXFCO1lBQzFCLElBQUksQ0FBQyxLQUFLLEVBQ1YsSUFBSSxDQUFDLGVBQWUsRUFDcEIsSUFBSSxDQUFDLFdBQVcsRUFDaEIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUNwQixDQUFDO1NBQ0g7UUFFRCxNQUFNLElBQUksZ0NBQXFCLENBQzdCO3lIQUNtSCxDQUNwSCxDQUFDO0lBQ0osQ0FBQztJQUVPLGtCQUFrQjtRQUN4QixPQUFPLENBQ0wsSUFBSSxDQUFDLFFBQVEsS0FBSyxTQUFTO1lBQzNCLElBQUksQ0FBQyxVQUFVLEtBQUssU0FBUztZQUM3QixJQUFJLENBQUMsWUFBWSxLQUFLLFNBQVM7WUFDL0IsSUFBSSxDQUFDLHFCQUFxQixLQUFLLFNBQVM7WUFDeEMsSUFBSSxDQUFDLFdBQVcsS0FBSyxTQUFTLENBQy9CLENBQUM7SUFDSixDQUFDO0lBRU8sa0JBQWtCLENBQUMsSUFBWTtRQUNyQyxNQUFNLFlBQVksR0FBRyxnQ0FBd0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsVUFBVSxHQUFHLFlBQVksQ0FBQyxFQUFFLENBQUM7UUFDbEMsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxlQUFlLEdBQUcsWUFBWSxDQUFDLFVBQVUsQ0FBQztRQUMvQyxJQUFJLENBQUMsV0FBVyxHQUFHLFlBQVksQ0FBQyxVQUFVLENBQUM7UUFDM0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxZQUFZLENBQUMsU0FBUyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxZQUFZLENBQUMsb0JBQW9CLENBQUM7UUFDL0QsSUFBSSxDQUFDLFFBQVEsR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDO1FBQ3JDLElBQUksWUFBWSxDQUFDLElBQUksRUFBRTtZQUNyQixJQUFJLENBQUMsS0FBSyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUM7U0FDaEM7SUFDSCxDQUFDO0NBQ0Y7QUE1RUQsc0RBNEVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnVpbGRUcmFuc2FjdGlvbkVycm9yLCBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvciB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgeyBDb250cmFjdENhbGwgfSBmcm9tICcuLi9jb250cmFjdENhbGwnO1xuaW1wb3J0IHsgZGVjb2RlRVJDNzIxVHJhbnNmZXJEYXRhLCBpc1ZhbGlkRXRoQWRkcmVzcywgc2VuZE11bHRpU2lnRGF0YSB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IEJhc2VORlRUcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICcuL2Jhc2VORlRUcmFuc2ZlckJ1aWxkZXInO1xuaW1wb3J0IHsgRVJDNzIxU2FmZVRyYW5zZmVyVHlwZU1ldGhvZElkIH0gZnJvbSAnLi4vd2FsbGV0VXRpbCc7XG5pbXBvcnQgeyBoZXhsaWZ5LCBoZXhaZXJvUGFkIH0gZnJvbSAnZXRoZXJzL2xpYi91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBFUkM3MjFUcmFuc2ZlckJ1aWxkZXIgZXh0ZW5kcyBCYXNlTkZUVHJhbnNmZXJCdWlsZGVyIHtcbiAgcHJpdmF0ZSBfdG9rZW5JZDogc3RyaW5nO1xuICBwcml2YXRlIF9ieXRlczogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNlcmlhbGl6ZWREYXRhPzogc3RyaW5nKSB7XG4gICAgc3VwZXIoc2VyaWFsaXplZERhdGEpO1xuICAgIHRoaXMuYnl0ZXMoMCk7XG4gICAgaWYgKHNlcmlhbGl6ZWREYXRhKSB7XG4gICAgICB0aGlzLmRlY29kZVRyYW5zZmVyRGF0YShzZXJpYWxpemVkRGF0YSk7XG4gICAgfVxuICB9XG5cbiAgdG9rZW5Db250cmFjdEFkZHJlc3MoYWRkcmVzczogc3RyaW5nKTogRVJDNzIxVHJhbnNmZXJCdWlsZGVyIHtcbiAgICBpZiAoaXNWYWxpZEV0aEFkZHJlc3MoYWRkcmVzcykpIHtcbiAgICAgIHRoaXMuX3Rva2VuQ29udHJhY3RBZGRyZXNzID0gYWRkcmVzcztcbiAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IoJ0ludmFsaWQgYWRkcmVzcycpO1xuICB9XG5cbiAgdG9rZW5JZCh0b2tlbjogc3RyaW5nKTogRVJDNzIxVHJhbnNmZXJCdWlsZGVyIHtcbiAgICB0aGlzLl90b2tlbklkID0gdG9rZW47XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBieXRlcyhieXRlc0luTnVtYmVyOiBudW1iZXIpOiBFUkM3MjFUcmFuc2ZlckJ1aWxkZXIge1xuICAgIHRoaXMuX2J5dGVzID0gaGV4WmVyb1BhZChoZXhsaWZ5KGJ5dGVzSW5OdW1iZXIpLCAzMik7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBzaWduQW5kQnVpbGQoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5oYXNNYW5kYXRvcnlGaWVsZHMoKSkge1xuICAgICAgY29uc3QgdHlwZXMgPSBbJ2FkZHJlc3MnLCAnYWRkcmVzcycsICd1aW50MjU2JywgJ2J5dGVzJ107XG4gICAgICBjb25zdCB2YWx1ZXMgPSBbdGhpcy5fZnJvbUFkZHJlc3MsIHRoaXMuX3RvQWRkcmVzcywgdGhpcy5fdG9rZW5JZCwgdGhpcy5fYnl0ZXNdO1xuICAgICAgY29uc3QgY29udHJhY3RDYWxsID0gbmV3IENvbnRyYWN0Q2FsbChFUkM3MjFTYWZlVHJhbnNmZXJUeXBlTWV0aG9kSWQsIHR5cGVzLCB2YWx1ZXMpO1xuICAgICAgdGhpcy5fZGF0YSA9IGNvbnRyYWN0Q2FsbC5zZXJpYWxpemUoKTtcblxuICAgICAgcmV0dXJuIHNlbmRNdWx0aVNpZ0RhdGEoXG4gICAgICAgIHRoaXMuX3Rva2VuQ29udHJhY3RBZGRyZXNzLCAvLyB0b1xuICAgICAgICAnMCcsIC8vIGR1bW15IGFtb3VudCB2YWx1ZVxuICAgICAgICB0aGlzLl9kYXRhLFxuICAgICAgICB0aGlzLl9leHBpcmF0aW9uVGltZSxcbiAgICAgICAgdGhpcy5fc2VxdWVuY2VJZCxcbiAgICAgICAgdGhpcy5nZXRTaWduYXR1cmUoKSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcihcbiAgICAgIGBNaXNzaW5nIHRyYW5zZmVyIG1hbmRhdG9yeSBmaWVsZHMuIFxuICAgICAgIERlc3RpbmF0aW9uICh0bykgYWRkcmVzcywgU291cmNlIChmcm9tKSBhZGRyZXNzLCBzZXF1ZW5jZUlELCB0aGUgdG9rZW4gY29udHJhY3QgYWRkcmVzcyBhbmQgdG9rZW5JRCBhcmUgbWFuZGF0b3J5YCxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBoYXNNYW5kYXRvcnlGaWVsZHMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuX3Rva2VuSWQgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgdGhpcy5fdG9BZGRyZXNzICE9PSB1bmRlZmluZWQgJiZcbiAgICAgIHRoaXMuX2Zyb21BZGRyZXNzICE9PSB1bmRlZmluZWQgJiZcbiAgICAgIHRoaXMuX3Rva2VuQ29udHJhY3RBZGRyZXNzICE9PSB1bmRlZmluZWQgJiZcbiAgICAgIHRoaXMuX3NlcXVlbmNlSWQgIT09IHVuZGVmaW5lZFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGRlY29kZVRyYW5zZmVyRGF0YShkYXRhOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCB0cmFuc2ZlckRhdGEgPSBkZWNvZGVFUkM3MjFUcmFuc2ZlckRhdGEoZGF0YSk7XG4gICAgdGhpcy5fdG9BZGRyZXNzID0gdHJhbnNmZXJEYXRhLnRvO1xuICAgIHRoaXMuX2Zyb21BZGRyZXNzID0gdHJhbnNmZXJEYXRhLmZyb207XG4gICAgdGhpcy5fZXhwaXJhdGlvblRpbWUgPSB0cmFuc2ZlckRhdGEuZXhwaXJlVGltZTtcbiAgICB0aGlzLl9zZXF1ZW5jZUlkID0gdHJhbnNmZXJEYXRhLnNlcXVlbmNlSWQ7XG4gICAgdGhpcy5fc2lnbmF0dXJlID0gdHJhbnNmZXJEYXRhLnNpZ25hdHVyZTtcbiAgICB0aGlzLl90b2tlbkNvbnRyYWN0QWRkcmVzcyA9IHRyYW5zZmVyRGF0YS50b2tlbkNvbnRyYWN0QWRkcmVzcztcbiAgICB0aGlzLl90b2tlbklkID0gdHJhbnNmZXJEYXRhLnRva2VuSWQ7XG4gICAgaWYgKHRyYW5zZmVyRGF0YS5kYXRhKSB7XG4gICAgICB0aGlzLl9kYXRhID0gdHJhbnNmZXJEYXRhLmRhdGE7XG4gICAgfVxuICB9XG59XG4iXX0=