@bitgo-beta/sdk-core 8.2.1-beta.96 → 8.2.1-beta.961

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 (495) hide show
  1. package/CHANGELOG.md +2801 -0
  2. package/dist/src/account-lib/baseCoin/baseTransaction.d.ts +0 -1
  3. package/dist/src/account-lib/baseCoin/baseTransaction.d.ts.map +1 -1
  4. package/dist/src/account-lib/baseCoin/baseTransactionBuilder.d.ts +3 -3
  5. package/dist/src/account-lib/baseCoin/baseTransactionBuilder.d.ts.map +1 -1
  6. package/dist/src/account-lib/baseCoin/baseTransactionBuilder.js +4 -3
  7. package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts +1 -0
  8. package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts.map +1 -1
  9. package/dist/src/account-lib/baseCoin/ed25519KeyPair.js +41 -29
  10. package/dist/src/account-lib/baseCoin/enum.d.ts +17 -3
  11. package/dist/src/account-lib/baseCoin/enum.d.ts.map +1 -1
  12. package/dist/src/account-lib/baseCoin/enum.js +32 -7
  13. package/dist/src/account-lib/baseCoin/errors.js +1 -1
  14. package/dist/src/account-lib/baseCoin/iface.d.ts +11 -35
  15. package/dist/src/account-lib/baseCoin/iface.d.ts.map +1 -1
  16. package/dist/src/account-lib/baseCoin/iface.js +4 -18
  17. package/dist/src/account-lib/baseCoin/index.d.ts +0 -1
  18. package/dist/src/account-lib/baseCoin/index.d.ts.map +1 -1
  19. package/dist/src/account-lib/baseCoin/index.js +7 -5
  20. package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.d.ts +1 -2
  21. package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.d.ts.map +1 -1
  22. package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.js +38 -26
  23. package/dist/src/account-lib/index.js +23 -9
  24. package/dist/src/account-lib/mpc/curves/ed25519.d.ts +4 -18
  25. package/dist/src/account-lib/mpc/curves/ed25519.d.ts.map +1 -1
  26. package/dist/src/account-lib/mpc/curves/ed25519.js +6 -60
  27. package/dist/src/account-lib/mpc/index.d.ts +4 -4
  28. package/dist/src/account-lib/mpc/index.d.ts.map +1 -1
  29. package/dist/src/account-lib/mpc/index.js +11 -7
  30. package/dist/src/account-lib/mpc/shamir.d.ts +5 -37
  31. package/dist/src/account-lib/mpc/shamir.d.ts.map +1 -1
  32. package/dist/src/account-lib/mpc/shamir.js +6 -130
  33. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +38 -9
  34. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -1
  35. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.js +497 -349
  36. package/dist/src/account-lib/mpc/tss/ecdsa/index.js +23 -9
  37. package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts +2 -2
  38. package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts.map +1 -1
  39. package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.js +3 -3
  40. package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts +73 -52
  41. package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts.map +1 -1
  42. package/dist/src/account-lib/mpc/tss/ecdsa/types.js +1 -1
  43. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts +1 -2
  44. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts.map +1 -1
  45. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.js +66 -69
  46. package/dist/src/account-lib/mpc/tss/eddsa/index.js +23 -9
  47. package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts +1 -1
  48. package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts.map +1 -1
  49. package/dist/src/account-lib/mpc/tss/eddsa/types.js +1 -1
  50. package/dist/src/account-lib/mpc/tss/index.js +23 -9
  51. package/dist/src/account-lib/mpc/util.d.ts +7 -1
  52. package/dist/src/account-lib/mpc/util.d.ts.map +1 -1
  53. package/dist/src/account-lib/mpc/util.js +19 -1
  54. package/dist/src/account-lib/staking/index.js +6 -2
  55. package/dist/src/account-lib/staking/utils.js +3 -3
  56. package/dist/src/account-lib/util/crypto.d.ts +8 -2
  57. package/dist/src/account-lib/util/crypto.d.ts.map +1 -1
  58. package/dist/src/account-lib/util/crypto.js +69 -38
  59. package/dist/src/account-lib/util/ed25519KeyDeriver.d.ts +2 -1
  60. package/dist/src/account-lib/util/ed25519KeyDeriver.d.ts.map +1 -1
  61. package/dist/src/account-lib/util/ed25519KeyDeriver.js +5 -3
  62. package/dist/src/api/bip32path.js +2 -3
  63. package/dist/src/api/index.js +6 -2
  64. package/dist/src/api/types.d.ts +8 -0
  65. package/dist/src/api/types.d.ts.map +1 -1
  66. package/dist/src/api/types.js +1 -1
  67. package/dist/src/bitgo/address-book/address-book.d.ts +61 -0
  68. package/dist/src/bitgo/address-book/address-book.d.ts.map +1 -0
  69. package/dist/src/bitgo/address-book/address-book.js +139 -0
  70. package/dist/src/bitgo/address-book/index.d.ts +3 -0
  71. package/dist/src/bitgo/address-book/index.d.ts.map +1 -0
  72. package/dist/src/bitgo/address-book/index.js +19 -0
  73. package/dist/src/bitgo/address-book/types.d.ts +170 -0
  74. package/dist/src/bitgo/address-book/types.d.ts.map +1 -0
  75. package/dist/src/bitgo/address-book/types.js +3 -0
  76. package/dist/src/bitgo/baseCoin/baseCoin.d.ts +90 -10
  77. package/dist/src/bitgo/baseCoin/baseCoin.d.ts.map +1 -1
  78. package/dist/src/bitgo/baseCoin/baseCoin.js +142 -16
  79. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +111 -19
  80. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -1
  81. package/dist/src/bitgo/baseCoin/iBaseCoin.js +7 -3
  82. package/dist/src/bitgo/baseCoin/index.js +6 -2
  83. package/dist/src/bitgo/bip32util.d.ts +3 -16
  84. package/dist/src/bitgo/bip32util.d.ts.map +1 -1
  85. package/dist/src/bitgo/bip32util.js +4 -56
  86. package/dist/src/bitgo/bitcoin.d.ts +0 -1
  87. package/dist/src/bitgo/bitcoin.d.ts.map +1 -1
  88. package/dist/src/bitgo/bitcoin.js +26 -13
  89. package/dist/src/bitgo/bitgoBase.d.ts +6 -2
  90. package/dist/src/bitgo/bitgoBase.d.ts.map +1 -1
  91. package/dist/src/bitgo/bitgoBase.js +1 -1
  92. package/dist/src/bitgo/coinFactory.d.ts +17 -3
  93. package/dist/src/bitgo/coinFactory.d.ts.map +1 -1
  94. package/dist/src/bitgo/coinFactory.js +26 -3
  95. package/dist/src/bitgo/config.d.ts +94 -20
  96. package/dist/src/bitgo/config.d.ts.map +1 -1
  97. package/dist/src/bitgo/config.js +26 -15
  98. package/dist/src/bitgo/ecdh.d.ts +0 -1
  99. package/dist/src/bitgo/ecdh.d.ts.map +1 -1
  100. package/dist/src/bitgo/ecdh.js +26 -13
  101. package/dist/src/bitgo/enterprise/enterprise.d.ts +16 -14
  102. package/dist/src/bitgo/enterprise/enterprise.d.ts.map +1 -1
  103. package/dist/src/bitgo/enterprise/enterprise.js +64 -31
  104. package/dist/src/bitgo/enterprise/enterprises.d.ts +6 -0
  105. package/dist/src/bitgo/enterprise/enterprises.d.ts.map +1 -1
  106. package/dist/src/bitgo/enterprise/enterprises.js +48 -9
  107. package/dist/src/bitgo/enterprise/iEnterprise.d.ts +6 -7
  108. package/dist/src/bitgo/enterprise/iEnterprise.d.ts.map +1 -1
  109. package/dist/src/bitgo/enterprise/iEnterprise.js +1 -1
  110. package/dist/src/bitgo/enterprise/iEnterprises.d.ts +2 -0
  111. package/dist/src/bitgo/enterprise/iEnterprises.d.ts.map +1 -1
  112. package/dist/src/bitgo/enterprise/iEnterprises.js +1 -1
  113. package/dist/src/bitgo/enterprise/index.js +6 -2
  114. package/dist/src/bitgo/environments.d.ts +60 -5
  115. package/dist/src/bitgo/environments.d.ts.map +1 -1
  116. package/dist/src/bitgo/environments.js +96 -32
  117. package/dist/src/bitgo/errors.d.ts +6 -0
  118. package/dist/src/bitgo/errors.d.ts.map +1 -1
  119. package/dist/src/bitgo/errors.js +14 -2
  120. package/dist/src/bitgo/index.d.ts +1 -1
  121. package/dist/src/bitgo/index.d.ts.map +1 -1
  122. package/dist/src/bitgo/index.js +26 -11
  123. package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.d.ts +3 -3
  124. package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.d.ts.map +1 -1
  125. package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.js +1 -1
  126. package/dist/src/bitgo/inscriptionBuilder/index.js +6 -2
  127. package/dist/src/bitgo/internal/index.js +6 -2
  128. package/dist/src/bitgo/internal/internal.js +5 -6
  129. package/dist/src/bitgo/internal/keycard.js +6 -7
  130. package/dist/src/bitgo/keychain/decryptKeychain.d.ts +13 -0
  131. package/dist/src/bitgo/keychain/decryptKeychain.d.ts.map +1 -0
  132. package/dist/src/bitgo/keychain/decryptKeychain.js +35 -0
  133. package/dist/src/bitgo/keychain/iKeychains.d.ts +63 -7
  134. package/dist/src/bitgo/keychain/iKeychains.d.ts.map +1 -1
  135. package/dist/src/bitgo/keychain/iKeychains.js +2 -2
  136. package/dist/src/bitgo/keychain/index.d.ts +1 -0
  137. package/dist/src/bitgo/keychain/index.d.ts.map +1 -1
  138. package/dist/src/bitgo/keychain/index.js +7 -2
  139. package/dist/src/bitgo/keychain/keychains.d.ts +13 -3
  140. package/dist/src/bitgo/keychain/keychains.d.ts.map +1 -1
  141. package/dist/src/bitgo/keychain/keychains.js +128 -37
  142. package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts +3 -3
  143. package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts.map +1 -1
  144. package/dist/src/bitgo/keychain/ovcJsonCodec.js +23 -9
  145. package/dist/src/bitgo/legacyBitcoin.d.ts +0 -1
  146. package/dist/src/bitgo/legacyBitcoin.d.ts.map +1 -1
  147. package/dist/src/bitgo/legacyBitcoin.js +27 -13
  148. package/dist/src/bitgo/lightning/lightningWalletUtil.d.ts +7 -0
  149. package/dist/src/bitgo/lightning/lightningWalletUtil.d.ts.map +1 -0
  150. package/dist/src/bitgo/lightning/lightningWalletUtil.js +25 -0
  151. package/dist/src/bitgo/market/iMarkets.d.ts +2 -2
  152. package/dist/src/bitgo/market/iMarkets.d.ts.map +1 -1
  153. package/dist/src/bitgo/market/index.js +6 -2
  154. package/dist/src/bitgo/market/markets.js +23 -9
  155. package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts +1 -0
  156. package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts.map +1 -1
  157. package/dist/src/bitgo/pendingApproval/iPendingApproval.js +4 -4
  158. package/dist/src/bitgo/pendingApproval/index.js +6 -2
  159. package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts +20 -8
  160. package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts.map +1 -1
  161. package/dist/src/bitgo/pendingApproval/pendingApproval.js +221 -107
  162. package/dist/src/bitgo/pendingApproval/pendingApprovals.js +23 -9
  163. package/dist/src/bitgo/recovery/index.js +6 -2
  164. package/dist/src/bitgo/recovery/initiate.d.ts +8 -2
  165. package/dist/src/bitgo/recovery/initiate.d.ts.map +1 -1
  166. package/dist/src/bitgo/recovery/initiate.js +7 -8
  167. package/dist/src/bitgo/staking/goStakingWallet.d.ts +36 -0
  168. package/dist/src/bitgo/staking/goStakingWallet.d.ts.map +1 -0
  169. package/dist/src/bitgo/staking/goStakingWallet.js +92 -0
  170. package/dist/src/bitgo/staking/iGoStakingWallet.d.ts +44 -0
  171. package/dist/src/bitgo/staking/iGoStakingWallet.d.ts.map +1 -0
  172. package/dist/src/bitgo/staking/iGoStakingWallet.js +3 -0
  173. package/dist/src/bitgo/staking/iStakingWallet.d.ts +120 -4
  174. package/dist/src/bitgo/staking/iStakingWallet.d.ts.map +1 -1
  175. package/dist/src/bitgo/staking/iStakingWallet.js +2 -2
  176. package/dist/src/bitgo/staking/index.d.ts +2 -0
  177. package/dist/src/bitgo/staking/index.d.ts.map +1 -1
  178. package/dist/src/bitgo/staking/index.js +8 -2
  179. package/dist/src/bitgo/staking/stakingWallet.d.ts +13 -2
  180. package/dist/src/bitgo/staking/stakingWallet.d.ts.map +1 -1
  181. package/dist/src/bitgo/staking/stakingWallet.js +45 -4
  182. package/dist/src/bitgo/trading/iTradingAccount.d.ts +2 -32
  183. package/dist/src/bitgo/trading/iTradingAccount.d.ts.map +1 -1
  184. package/dist/src/bitgo/trading/iTradingAccount.js +1 -1
  185. package/dist/src/bitgo/trading/index.d.ts +1 -15
  186. package/dist/src/bitgo/trading/index.d.ts.map +1 -1
  187. package/dist/src/bitgo/trading/index.js +7 -17
  188. package/dist/src/bitgo/trading/network/decrypt-aes-gcm.d.ts +8 -0
  189. package/dist/src/bitgo/trading/network/decrypt-aes-gcm.d.ts.map +1 -0
  190. package/dist/src/bitgo/trading/network/decrypt-aes-gcm.js +31 -0
  191. package/dist/src/bitgo/trading/network/decrypt-rsa.d.ts +8 -0
  192. package/dist/src/bitgo/trading/network/decrypt-rsa.d.ts.map +1 -0
  193. package/dist/src/bitgo/trading/network/decrypt-rsa.js +23 -0
  194. package/dist/src/bitgo/trading/network/decrypt.d.ts +14 -0
  195. package/dist/src/bitgo/trading/network/decrypt.d.ts.map +1 -0
  196. package/dist/src/bitgo/trading/network/decrypt.js +23 -0
  197. package/dist/src/bitgo/trading/network/encrypt-aes-gcm.d.ts +8 -0
  198. package/dist/src/bitgo/trading/network/encrypt-aes-gcm.d.ts.map +1 -0
  199. package/dist/src/bitgo/trading/network/encrypt-aes-gcm.js +25 -0
  200. package/dist/src/bitgo/trading/network/encrypt-rsa-browser.d.ts +8 -0
  201. package/dist/src/bitgo/trading/network/encrypt-rsa-browser.d.ts.map +1 -0
  202. package/dist/src/bitgo/trading/network/encrypt-rsa-browser.js +65 -0
  203. package/dist/src/bitgo/trading/network/encrypt-rsa.d.ts +8 -0
  204. package/dist/src/bitgo/trading/network/encrypt-rsa.d.ts.map +1 -0
  205. package/dist/src/bitgo/trading/network/encrypt-rsa.js +23 -0
  206. package/dist/src/bitgo/trading/network/encrypt.d.ts +37 -0
  207. package/dist/src/bitgo/trading/network/encrypt.d.ts.map +1 -0
  208. package/dist/src/bitgo/trading/network/encrypt.js +58 -0
  209. package/dist/src/bitgo/trading/network/index.d.ts +5 -0
  210. package/dist/src/bitgo/trading/network/index.d.ts.map +1 -0
  211. package/dist/src/bitgo/trading/network/index.js +21 -0
  212. package/dist/src/bitgo/trading/network/network.d.ts +36 -0
  213. package/dist/src/bitgo/trading/network/network.d.ts.map +1 -0
  214. package/dist/src/bitgo/trading/network/network.js +101 -0
  215. package/dist/src/bitgo/trading/network/types.d.ts +277 -0
  216. package/dist/src/bitgo/trading/network/types.d.ts.map +1 -0
  217. package/dist/src/bitgo/trading/network/types.js +3 -0
  218. package/dist/src/bitgo/trading/network/utils.d.ts +20 -0
  219. package/dist/src/bitgo/trading/network/utils.d.ts.map +1 -0
  220. package/dist/src/bitgo/trading/network/utils.js +54 -0
  221. package/dist/src/bitgo/trading/tradingAccount.d.ts +11 -35
  222. package/dist/src/bitgo/trading/tradingAccount.d.ts.map +1 -1
  223. package/dist/src/bitgo/trading/tradingAccount.js +9 -96
  224. package/dist/src/bitgo/tss/bitgoPubKeys.d.ts +27 -0
  225. package/dist/src/bitgo/tss/bitgoPubKeys.d.ts.map +1 -0
  226. package/dist/src/bitgo/tss/bitgoPubKeys.js +61 -0
  227. package/dist/src/bitgo/tss/common.d.ts +37 -5
  228. package/dist/src/bitgo/tss/common.d.ts.map +1 -1
  229. package/dist/src/bitgo/tss/common.js +103 -17
  230. package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts +6 -4
  231. package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts.map +1 -1
  232. package/dist/src/bitgo/tss/ecdsa/ecdsa.js +78 -66
  233. package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.d.ts +15 -0
  234. package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -0
  235. package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.js +162 -0
  236. package/dist/src/bitgo/tss/ecdsa/index.d.ts +1 -0
  237. package/dist/src/bitgo/tss/ecdsa/index.d.ts.map +1 -1
  238. package/dist/src/bitgo/tss/ecdsa/index.js +25 -10
  239. package/dist/src/bitgo/tss/ecdsa/types.d.ts +27 -27
  240. package/dist/src/bitgo/tss/ecdsa/types.d.ts.map +1 -1
  241. package/dist/src/bitgo/tss/ecdsa/types.js +3 -3
  242. package/dist/src/bitgo/tss/eddsa/eddsa.d.ts +11 -8
  243. package/dist/src/bitgo/tss/eddsa/eddsa.d.ts.map +1 -1
  244. package/dist/src/bitgo/tss/eddsa/eddsa.js +38 -41
  245. package/dist/src/bitgo/tss/eddsa/index.js +23 -9
  246. package/dist/src/bitgo/tss/eddsa/types.d.ts +4 -4
  247. package/dist/src/bitgo/tss/eddsa/types.d.ts.map +1 -1
  248. package/dist/src/bitgo/tss/index.d.ts +3 -2
  249. package/dist/src/bitgo/tss/index.d.ts.map +1 -1
  250. package/dist/src/bitgo/tss/index.js +26 -10
  251. package/dist/src/bitgo/tss/types.d.ts +3 -3
  252. package/dist/src/bitgo/tss/types.d.ts.map +1 -1
  253. package/dist/src/bitgo/tss/types.js +2 -2
  254. package/dist/src/bitgo/types.d.ts +3 -3
  255. package/dist/src/bitgo/types.d.ts.map +1 -1
  256. package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts +11 -0
  257. package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts.map +1 -1
  258. package/dist/src/bitgo/utils/abstractUtxoCoinUtil.js +66 -10
  259. package/dist/src/bitgo/utils/codecProps.d.ts +7 -0
  260. package/dist/src/bitgo/utils/codecProps.d.ts.map +1 -0
  261. package/dist/src/bitgo/utils/codecProps.js +54 -0
  262. package/dist/src/bitgo/utils/decode.d.ts.map +1 -1
  263. package/dist/src/bitgo/utils/decode.js +30 -16
  264. package/dist/src/bitgo/utils/index.d.ts +2 -2
  265. package/dist/src/bitgo/utils/index.d.ts.map +1 -1
  266. package/dist/src/bitgo/utils/index.js +25 -11
  267. package/dist/src/bitgo/utils/mpcUtils.d.ts +2 -3
  268. package/dist/src/bitgo/utils/mpcUtils.d.ts.map +1 -1
  269. package/dist/src/bitgo/utils/mpcUtils.js +34 -12
  270. package/dist/src/bitgo/utils/notEmpty.d.ts +2 -0
  271. package/dist/src/bitgo/utils/notEmpty.d.ts.map +1 -0
  272. package/dist/src/bitgo/utils/notEmpty.js +7 -0
  273. package/dist/src/bitgo/utils/opengpgUtils.d.ts +11 -9
  274. package/dist/src/bitgo/utils/opengpgUtils.d.ts.map +1 -1
  275. package/dist/src/bitgo/utils/opengpgUtils.js +74 -73
  276. package/dist/src/bitgo/utils/postWithCodec.d.ts +18 -0
  277. package/dist/src/bitgo/utils/postWithCodec.d.ts.map +1 -0
  278. package/dist/src/bitgo/utils/postWithCodec.js +25 -0
  279. package/dist/src/bitgo/utils/promise-utils.d.ts +1 -1
  280. package/dist/src/bitgo/utils/promise-utils.d.ts.map +1 -1
  281. package/dist/src/bitgo/utils/promise-utils.js +2 -3
  282. package/dist/src/bitgo/utils/triple.d.ts +1 -1
  283. package/dist/src/bitgo/utils/triple.d.ts.map +1 -1
  284. package/dist/src/bitgo/utils/triple.js +2 -3
  285. package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts +39 -14
  286. package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -1
  287. package/dist/src/bitgo/utils/tss/baseTSSUtils.js +145 -45
  288. package/dist/src/bitgo/utils/tss/baseTypes.d.ts +202 -34
  289. package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -1
  290. package/dist/src/bitgo/utils/tss/baseTypes.js +22 -20
  291. package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.d.ts +23 -0
  292. package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.d.ts.map +1 -0
  293. package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.js +157 -0
  294. package/dist/src/bitgo/utils/tss/ecdsa/base.d.ts +28 -0
  295. package/dist/src/bitgo/utils/tss/ecdsa/base.d.ts.map +1 -0
  296. package/dist/src/bitgo/utils/tss/ecdsa/base.js +53 -0
  297. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts +20 -52
  298. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts.map +1 -1
  299. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.js +145 -280
  300. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts +199 -0
  301. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -0
  302. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.js +950 -0
  303. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.d.ts +8 -0
  304. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.d.ts.map +1 -0
  305. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.js +13 -0
  306. package/dist/src/bitgo/utils/tss/ecdsa/index.d.ts +4 -0
  307. package/dist/src/bitgo/utils/tss/ecdsa/index.d.ts.map +1 -1
  308. package/dist/src/bitgo/utils/tss/ecdsa/index.js +10 -2
  309. package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts +15 -9
  310. package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts.map +1 -1
  311. package/dist/src/bitgo/utils/tss/ecdsa/types.js +1 -1
  312. package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.d.ts +107 -0
  313. package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.d.ts.map +1 -0
  314. package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.js +55 -0
  315. package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts +5 -3
  316. package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts.map +1 -1
  317. package/dist/src/bitgo/utils/tss/eddsa/eddsa.js +75 -58
  318. package/dist/src/bitgo/utils/tss/eddsa/index.js +23 -9
  319. package/dist/src/bitgo/utils/tss/eddsa/types.d.ts +7 -7
  320. package/dist/src/bitgo/utils/tss/eddsa/types.d.ts.map +1 -1
  321. package/dist/src/bitgo/utils/tss/index.js +23 -9
  322. package/dist/src/bitgo/utils/txRequest.d.ts +10 -0
  323. package/dist/src/bitgo/utils/txRequest.d.ts.map +1 -0
  324. package/dist/src/bitgo/utils/txRequest.js +47 -0
  325. package/dist/src/bitgo/utils/util.js +24 -10
  326. package/dist/src/bitgo/utils/wallet.d.ts +7 -0
  327. package/dist/src/bitgo/utils/wallet.d.ts.map +1 -0
  328. package/dist/src/bitgo/utils/wallet.js +48 -0
  329. package/dist/src/bitgo/wallet/BuildParams.d.ts +119 -0
  330. package/dist/src/bitgo/wallet/BuildParams.d.ts.map +1 -0
  331. package/dist/src/bitgo/wallet/BuildParams.js +140 -0
  332. package/dist/src/bitgo/wallet/iWallet.d.ts +203 -19
  333. package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -1
  334. package/dist/src/bitgo/wallet/iWallet.js +1 -1
  335. package/dist/src/bitgo/wallet/iWallets.d.ts +91 -16
  336. package/dist/src/bitgo/wallet/iWallets.d.ts.map +1 -1
  337. package/dist/src/bitgo/wallet/iWallets.js +43 -3
  338. package/dist/src/bitgo/wallet/index.js +6 -2
  339. package/dist/src/bitgo/wallet/wallet.d.ts +192 -25
  340. package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
  341. package/dist/src/bitgo/wallet/wallet.js +945 -357
  342. package/dist/src/bitgo/wallet/wallets.d.ts +96 -9
  343. package/dist/src/bitgo/wallet/wallets.d.ts.map +1 -1
  344. package/dist/src/bitgo/wallet/wallets.js +816 -193
  345. package/dist/src/bitgo/webhook/index.js +6 -2
  346. package/dist/src/bitgo/webhook/webhooks.js +23 -9
  347. package/dist/src/coins/fiataed.d.ts +32 -0
  348. package/dist/src/coins/fiataed.d.ts.map +1 -0
  349. package/dist/src/coins/fiataed.js +61 -0
  350. package/dist/src/coins/fiateur.d.ts +3 -2
  351. package/dist/src/coins/fiateur.d.ts.map +1 -1
  352. package/dist/src/coins/fiateur.js +5 -1
  353. package/dist/src/coins/fiatgbp.d.ts +3 -2
  354. package/dist/src/coins/fiatgbp.d.ts.map +1 -1
  355. package/dist/src/coins/fiatgbp.js +5 -1
  356. package/dist/src/coins/fiatsgd.d.ts +32 -0
  357. package/dist/src/coins/fiatsgd.d.ts.map +1 -0
  358. package/dist/src/coins/fiatsgd.js +61 -0
  359. package/dist/src/coins/fiatusd.d.ts +3 -2
  360. package/dist/src/coins/fiatusd.d.ts.map +1 -1
  361. package/dist/src/coins/fiatusd.js +5 -1
  362. package/dist/src/coins/index.d.ts +4 -0
  363. package/dist/src/coins/index.d.ts.map +1 -1
  364. package/dist/src/coins/index.js +10 -2
  365. package/dist/src/coins/ofc.d.ts +3 -2
  366. package/dist/src/coins/ofc.d.ts.map +1 -1
  367. package/dist/src/coins/ofc.js +6 -2
  368. package/dist/src/coins/ofcToken.js +2 -2
  369. package/dist/src/coins/susd.d.ts +3 -2
  370. package/dist/src/coins/susd.d.ts.map +1 -1
  371. package/dist/src/coins/susd.js +5 -1
  372. package/dist/src/coins/tfiataed.d.ts +11 -0
  373. package/dist/src/coins/tfiataed.d.ts.map +1 -0
  374. package/dist/src/coins/tfiataed.js +17 -0
  375. package/dist/src/coins/tfiatsgd.d.ts +11 -0
  376. package/dist/src/coins/tfiatsgd.d.ts.map +1 -0
  377. package/dist/src/coins/tfiatsgd.js +17 -0
  378. package/dist/src/common.js +27 -13
  379. package/dist/src/index.d.ts +2 -1
  380. package/dist/src/index.d.ts.map +1 -1
  381. package/dist/src/index.js +26 -11
  382. package/dist/src/units.js +5 -6
  383. package/dist/test/node.utils.d.ts +2 -0
  384. package/dist/test/node.utils.d.ts.map +1 -0
  385. package/dist/test/node.utils.js +5 -0
  386. package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +2 -0
  387. package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -0
  388. package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.js +233 -0
  389. package/dist/test/unit/account-lib/mpc/tss/ecdsa/fixtures.d.ts +3 -0
  390. package/dist/test/unit/account-lib/mpc/tss/ecdsa/fixtures.d.ts.map +1 -0
  391. package/dist/test/unit/account-lib/mpc/tss/ecdsa/fixtures.js +24 -0
  392. package/dist/test/unit/bitgo/trading/network/encrypt.d.ts +2 -0
  393. package/dist/test/unit/bitgo/trading/network/encrypt.d.ts.map +1 -0
  394. package/dist/test/unit/bitgo/trading/network/encrypt.js +71 -0
  395. package/dist/test/unit/bitgo/utils/abstractUtxoCoinUtil.d.ts +2 -0
  396. package/dist/test/unit/bitgo/utils/abstractUtxoCoinUtil.d.ts.map +1 -0
  397. package/dist/test/unit/bitgo/utils/abstractUtxoCoinUtil.js +45 -0
  398. package/dist/test/unit/bitgo/utils/notEmpty.d.ts +2 -0
  399. package/dist/test/unit/bitgo/utils/notEmpty.d.ts.map +1 -0
  400. package/dist/test/unit/bitgo/utils/notEmpty.js +15 -0
  401. package/dist/test/unit/bitgo/utils/postWithCodec.d.ts +2 -0
  402. package/dist/test/unit/bitgo/utils/postWithCodec.d.ts.map +1 -0
  403. package/dist/test/unit/bitgo/utils/postWithCodec.js +73 -0
  404. package/dist/test/unit/bitgo/utils/txRequest.d.ts +2 -0
  405. package/dist/test/unit/bitgo/utils/txRequest.d.ts.map +1 -0
  406. package/dist/test/unit/bitgo/utils/txRequest.js +105 -0
  407. package/dist/test/unit/bitgo/wallet/BuildParams.d.ts +2 -0
  408. package/dist/test/unit/bitgo/wallet/BuildParams.d.ts.map +1 -0
  409. package/dist/test/unit/bitgo/wallet/BuildParams.js +68 -0
  410. package/dist/test/unit/bitgo/wallet/SendTransactionRequest.d.ts +2 -0
  411. package/dist/test/unit/bitgo/wallet/SendTransactionRequest.d.ts.map +1 -0
  412. package/dist/test/unit/bitgo/wallet/SendTransactionRequest.js +58 -0
  413. package/dist/test/unit/units.d.ts +2 -0
  414. package/dist/test/unit/units.d.ts.map +1 -0
  415. package/dist/test/unit/units.js +98 -0
  416. package/dist/tsconfig.tsbuildinfo +1 -1
  417. package/package.json +25 -22
  418. package/dist/src/account-lib/baseCoin/blsKeyPair.d.ts +0 -77
  419. package/dist/src/account-lib/baseCoin/blsKeyPair.d.ts.map +0 -1
  420. package/dist/src/account-lib/baseCoin/blsKeyPair.js +0 -209
  421. package/dist/src/account-lib/mpc/hdTree.d.ts +0 -31
  422. package/dist/src/account-lib/mpc/hdTree.d.ts.map +0 -1
  423. package/dist/src/account-lib/mpc/hdTree.js +0 -141
  424. package/dist/src/account-lib/mpc/types.d.ts +0 -5
  425. package/dist/src/account-lib/mpc/types.d.ts.map +0 -1
  426. package/dist/src/account-lib/mpc/types.js +0 -3
  427. package/dist/src/bitgo/lightning/iLightning.d.ts +0 -186
  428. package/dist/src/bitgo/lightning/iLightning.d.ts.map +0 -1
  429. package/dist/src/bitgo/lightning/iLightning.js +0 -106
  430. package/dist/src/bitgo/lightning/index.d.ts +0 -5
  431. package/dist/src/bitgo/lightning/index.d.ts.map +0 -1
  432. package/dist/src/bitgo/lightning/index.js +0 -17
  433. package/dist/src/bitgo/lightning/lightning.d.ts +0 -25
  434. package/dist/src/bitgo/lightning/lightning.d.ts.map +0 -1
  435. package/dist/src/bitgo/lightning/lightning.js +0 -111
  436. package/dist/src/bitgo/lightning/lightningUtils.d.ts +0 -46
  437. package/dist/src/bitgo/lightning/lightningUtils.d.ts.map +0 -1
  438. package/dist/src/bitgo/lightning/lightningUtils.js +0 -133
  439. package/dist/src/bitgo/lightning/lnurlCodec.d.ts +0 -3
  440. package/dist/src/bitgo/lightning/lnurlCodec.d.ts.map +0 -1
  441. package/dist/src/bitgo/lightning/lnurlCodec.js +0 -28
  442. package/dist/src/bitgo/trading/affirmation.d.ts +0 -35
  443. package/dist/src/bitgo/trading/affirmation.d.ts.map +0 -1
  444. package/dist/src/bitgo/trading/affirmation.js +0 -53
  445. package/dist/src/bitgo/trading/affirmations.d.ts +0 -23
  446. package/dist/src/bitgo/trading/affirmations.d.ts.map +0 -1
  447. package/dist/src/bitgo/trading/affirmations.js +0 -45
  448. package/dist/src/bitgo/trading/iAffirmation.d.ts +0 -15
  449. package/dist/src/bitgo/trading/iAffirmation.d.ts.map +0 -1
  450. package/dist/src/bitgo/trading/iAffirmation.js +0 -13
  451. package/dist/src/bitgo/trading/iAffirmations.d.ts +0 -10
  452. package/dist/src/bitgo/trading/iAffirmations.d.ts.map +0 -1
  453. package/dist/src/bitgo/trading/iAffirmations.js +0 -3
  454. package/dist/src/bitgo/trading/iSettlement.d.ts +0 -25
  455. package/dist/src/bitgo/trading/iSettlement.d.ts.map +0 -1
  456. package/dist/src/bitgo/trading/iSettlement.js +0 -17
  457. package/dist/src/bitgo/trading/iSettlements.d.ts +0 -19
  458. package/dist/src/bitgo/trading/iSettlements.d.ts.map +0 -1
  459. package/dist/src/bitgo/trading/iSettlements.js +0 -3
  460. package/dist/src/bitgo/trading/iTradingPartner.d.ts +0 -14
  461. package/dist/src/bitgo/trading/iTradingPartner.d.ts.map +0 -1
  462. package/dist/src/bitgo/trading/iTradingPartner.js +0 -17
  463. package/dist/src/bitgo/trading/iTradingPartners.d.ts +0 -15
  464. package/dist/src/bitgo/trading/iTradingPartners.d.ts.map +0 -1
  465. package/dist/src/bitgo/trading/iTradingPartners.js +0 -9
  466. package/dist/src/bitgo/trading/lock.d.ts +0 -16
  467. package/dist/src/bitgo/trading/lock.d.ts.map +0 -1
  468. package/dist/src/bitgo/trading/lock.js +0 -12
  469. package/dist/src/bitgo/trading/payload.d.ts +0 -22
  470. package/dist/src/bitgo/trading/payload.d.ts.map +0 -1
  471. package/dist/src/bitgo/trading/payload.js +0 -3
  472. package/dist/src/bitgo/trading/settlement.d.ts +0 -16
  473. package/dist/src/bitgo/trading/settlement.d.ts.map +0 -1
  474. package/dist/src/bitgo/trading/settlement.js +0 -21
  475. package/dist/src/bitgo/trading/settlements.d.ts +0 -32
  476. package/dist/src/bitgo/trading/settlements.d.ts.map +0 -1
  477. package/dist/src/bitgo/trading/settlements.js +0 -61
  478. package/dist/src/bitgo/trading/trade.d.ts +0 -29
  479. package/dist/src/bitgo/trading/trade.d.ts.map +0 -1
  480. package/dist/src/bitgo/trading/trade.js +0 -11
  481. package/dist/src/bitgo/trading/tradingPartner.d.ts +0 -26
  482. package/dist/src/bitgo/trading/tradingPartner.d.ts.map +0 -1
  483. package/dist/src/bitgo/trading/tradingPartner.js +0 -31
  484. package/dist/src/bitgo/trading/tradingPartners.d.ts +0 -24
  485. package/dist/src/bitgo/trading/tradingPartners.d.ts.map +0 -1
  486. package/dist/src/bitgo/trading/tradingPartners.js +0 -32
  487. package/dist/src/bitgo/utils/blsUtils.d.ts +0 -52
  488. package/dist/src/bitgo/utils/blsUtils.d.ts.map +0 -1
  489. package/dist/src/bitgo/utils/blsUtils.js +0 -237
  490. package/dist/src/bitgo/utils/iBlsUtils.d.ts +0 -14
  491. package/dist/src/bitgo/utils/iBlsUtils.d.ts.map +0 -1
  492. package/dist/src/bitgo/utils/iBlsUtils.js +0 -3
  493. package/dist/src/openssl/index.d.ts +0 -5
  494. package/dist/src/openssl/index.d.ts.map +0 -1
  495. package/dist/src/openssl/index.js +0 -9
@@ -1,6 +1,17 @@
1
1
  import * as utxolib from '@bitgo-beta/utxo-lib';
2
2
  import ScriptType2Of3 = utxolib.bitgo.outputScripts.ScriptType2Of3;
3
+ import { WalletType } from '../wallet';
3
4
  export declare function inferAddressType(addressDetails: {
4
5
  chain: number;
5
6
  }): ScriptType2Of3 | null;
7
+ /**
8
+ * Get the supported 2 of 3 script types for a given utxo coin
9
+ */
10
+ export declare function getUtxoCoinScriptTypes2Of3(coinName: string): utxolib.bitgo.outputScripts.ScriptType2Of3[];
11
+ /**
12
+ * Get the supported 2 of 3 script types for a given utxo coin and wallet type
13
+ * @param coinName
14
+ * @param walletType
15
+ */
16
+ export declare function getUtxoCoinScriptTypesForWalletType(coinName: string, walletType: WalletType): utxolib.bitgo.outputScripts.ScriptType2Of3[];
6
17
  //# sourceMappingURL=abstractUtxoCoinUtil.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"abstractUtxoCoinUtil.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/utils/abstractUtxoCoinUtil.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,OAAO,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,cAAc,CAAC;AAEnE,wBAAgB,gBAAgB,CAAC,cAAc,EAAE;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,cAAc,GAAG,IAAI,CAIzF"}
1
+ {"version":3,"file":"abstractUtxoCoinUtil.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/utils/abstractUtxoCoinUtil.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,OAAO,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,cAAc,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,wBAAgB,gBAAgB,CAAC,cAAc,EAAE;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,cAAc,GAAG,IAAI,CAIzF;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,cAAc,EAAE,CAOzG;AAkBD;;;;GAIG;AACH,wBAAgB,mCAAmC,CACjD,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,UAAU,GACrB,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,cAAc,EAAE,CAQ9C"}
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[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);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -11,20 +15,72 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
11
15
  }) : function(o, v) {
12
16
  o["default"] = v;
13
17
  });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
20
37
  };
21
38
  Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.inferAddressType = void 0;
39
+ exports.inferAddressType = inferAddressType;
40
+ exports.getUtxoCoinScriptTypes2Of3 = getUtxoCoinScriptTypes2Of3;
41
+ exports.getUtxoCoinScriptTypesForWalletType = getUtxoCoinScriptTypesForWalletType;
42
+ const assert_1 = __importDefault(require("assert"));
43
+ const statics_1 = require("@bitgo-beta/statics");
23
44
  const utxolib = __importStar(require("@bitgo-beta/utxo-lib"));
24
45
  function inferAddressType(addressDetails) {
25
46
  return utxolib.bitgo.isChainCode(addressDetails.chain)
26
47
  ? utxolib.bitgo.scriptTypeForChain(addressDetails.chain)
27
48
  : null;
28
49
  }
29
- exports.inferAddressType = inferAddressType;
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3RVdHhvQ29pblV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vdXRpbHMvYWJzdHJhY3RVdHhvQ29pblV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDhEQUFnRDtBQUdoRCxTQUFnQixnQkFBZ0IsQ0FBQyxjQUFpQztJQUNoRSxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUM7UUFDcEQsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQztRQUN4RCxDQUFDLENBQUMsSUFBSSxDQUFDO0FBQ1gsQ0FBQztBQUpELDRDQUlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICdAYml0Z28tYmV0YS91dHhvLWxpYic7XG5pbXBvcnQgU2NyaXB0VHlwZTJPZjMgPSB1dHhvbGliLmJpdGdvLm91dHB1dFNjcmlwdHMuU2NyaXB0VHlwZTJPZjM7XG5cbmV4cG9ydCBmdW5jdGlvbiBpbmZlckFkZHJlc3NUeXBlKGFkZHJlc3NEZXRhaWxzOiB7IGNoYWluOiBudW1iZXIgfSk6IFNjcmlwdFR5cGUyT2YzIHwgbnVsbCB7XG4gIHJldHVybiB1dHhvbGliLmJpdGdvLmlzQ2hhaW5Db2RlKGFkZHJlc3NEZXRhaWxzLmNoYWluKVxuICAgID8gdXR4b2xpYi5iaXRnby5zY3JpcHRUeXBlRm9yQ2hhaW4oYWRkcmVzc0RldGFpbHMuY2hhaW4pXG4gICAgOiBudWxsO1xufVxuIl19
50
+ /**
51
+ * Get the supported 2 of 3 script types for a given utxo coin
52
+ */
53
+ function getUtxoCoinScriptTypes2Of3(coinName) {
54
+ const coin = statics_1.coins.get(coinName);
55
+ (0, assert_1.default)(coin instanceof statics_1.UtxoCoin, `coin ${coinName} is not a utxo coin`);
56
+ const network = utxolib.networks[coin.network.utxolibName];
57
+ return utxolib.bitgo.outputScripts.scriptTypes2Of3.filter((v) => utxolib.bitgo.outputScripts.isSupportedScriptType(network, v));
58
+ }
59
+ /**
60
+ * Check if script type is enabled for a given walletType and network
61
+ * @param network
62
+ * @param walletType
63
+ * @param scriptType
64
+ */
65
+ function isEnabledAddressType(network, walletType, scriptType) {
66
+ if (!utxolib.bitgo.outputScripts.isSupportedScriptType(network, scriptType)) {
67
+ return false;
68
+ }
69
+ if (scriptType === 'p2trMusig2') {
70
+ return walletType === 'hot' || (walletType === 'cold' && utxolib.isTestnet(network));
71
+ }
72
+ return true;
73
+ }
74
+ /**
75
+ * Get the supported 2 of 3 script types for a given utxo coin and wallet type
76
+ * @param coinName
77
+ * @param walletType
78
+ */
79
+ function getUtxoCoinScriptTypesForWalletType(coinName, walletType) {
80
+ const scriptTypes = getUtxoCoinScriptTypes2Of3(coinName);
81
+ const coin = statics_1.coins.get(coinName);
82
+ (0, assert_1.default)(coin instanceof statics_1.UtxoCoin, `coin ${coinName} is not a utxo coin`);
83
+ const network = utxolib.networks[coin.network.utxolibName];
84
+ return scriptTypes.filter((scriptType) => isEnabledAddressType(network, walletType, scriptType));
85
+ }
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3RVdHhvQ29pblV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vdXRpbHMvYWJzdHJhY3RVdHhvQ29pblV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNQSw0Q0FJQztBQUtELGdFQU9DO0FBdUJELGtGQVdDO0FBeERELG9EQUE0QjtBQUM1QixpREFBc0Q7QUFDdEQsOERBQWdEO0FBSWhELFNBQWdCLGdCQUFnQixDQUFDLGNBQWlDO0lBQ2hFLE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQztRQUNwRCxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDO1FBQ3hELENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDWCxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQiwwQkFBMEIsQ0FBQyxRQUFnQjtJQUN6RCxNQUFNLElBQUksR0FBRyxlQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2pDLElBQUEsZ0JBQU0sRUFBQyxJQUFJLFlBQVksa0JBQVEsRUFBRSxRQUFRLFFBQVEscUJBQXFCLENBQUMsQ0FBQztJQUN4RSxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBa0MsQ0FBQyxDQUFDO0lBQ2xGLE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQzlELE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FDOUQsQ0FBQztBQUNKLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQVMsb0JBQW9CLENBQUMsT0FBd0IsRUFBRSxVQUFzQixFQUFFLFVBQTBCO0lBQ3hHLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDLEVBQUUsQ0FBQztRQUM1RSxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFDRCxJQUFJLFVBQVUsS0FBSyxZQUFZLEVBQUUsQ0FBQztRQUNoQyxPQUFPLFVBQVUsS0FBSyxLQUFLLElBQUksQ0FBQyxVQUFVLEtBQUssTUFBTSxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUN2RixDQUFDO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILFNBQWdCLG1DQUFtQyxDQUNqRCxRQUFnQixFQUNoQixVQUFzQjtJQUV0QixNQUFNLFdBQVcsR0FBRywwQkFBMEIsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUV6RCxNQUFNLElBQUksR0FBRyxlQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2pDLElBQUEsZ0JBQU0sRUFBQyxJQUFJLFlBQVksa0JBQVEsRUFBRSxRQUFRLFFBQVEscUJBQXFCLENBQUMsQ0FBQztJQUN4RSxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBa0MsQ0FBQyxDQUFDO0lBRWxGLE9BQU8sV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsb0JBQW9CLENBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUE0QixDQUFDLENBQUMsQ0FBQztBQUNySCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHsgY29pbnMsIFV0eG9Db2luIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgKiBhcyB1dHhvbGliIGZyb20gJ0BiaXRnby1iZXRhL3V0eG8tbGliJztcbmltcG9ydCBTY3JpcHRUeXBlMk9mMyA9IHV0eG9saWIuYml0Z28ub3V0cHV0U2NyaXB0cy5TY3JpcHRUeXBlMk9mMztcbmltcG9ydCB7IFdhbGxldFR5cGUgfSBmcm9tICcuLi93YWxsZXQnO1xuXG5leHBvcnQgZnVuY3Rpb24gaW5mZXJBZGRyZXNzVHlwZShhZGRyZXNzRGV0YWlsczogeyBjaGFpbjogbnVtYmVyIH0pOiBTY3JpcHRUeXBlMk9mMyB8IG51bGwge1xuICByZXR1cm4gdXR4b2xpYi5iaXRnby5pc0NoYWluQ29kZShhZGRyZXNzRGV0YWlscy5jaGFpbilcbiAgICA/IHV0eG9saWIuYml0Z28uc2NyaXB0VHlwZUZvckNoYWluKGFkZHJlc3NEZXRhaWxzLmNoYWluKVxuICAgIDogbnVsbDtcbn1cblxuLyoqXG4gKiBHZXQgdGhlIHN1cHBvcnRlZCAyIG9mIDMgc2NyaXB0IHR5cGVzIGZvciBhIGdpdmVuIHV0eG8gY29pblxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0VXR4b0NvaW5TY3JpcHRUeXBlczJPZjMoY29pbk5hbWU6IHN0cmluZyk6IHV0eG9saWIuYml0Z28ub3V0cHV0U2NyaXB0cy5TY3JpcHRUeXBlMk9mM1tdIHtcbiAgY29uc3QgY29pbiA9IGNvaW5zLmdldChjb2luTmFtZSk7XG4gIGFzc2VydChjb2luIGluc3RhbmNlb2YgVXR4b0NvaW4sIGBjb2luICR7Y29pbk5hbWV9IGlzIG5vdCBhIHV0eG8gY29pbmApO1xuICBjb25zdCBuZXR3b3JrID0gdXR4b2xpYi5uZXR3b3Jrc1tjb2luLm5ldHdvcmsudXR4b2xpYk5hbWUgYXMgdXR4b2xpYi5OZXR3b3JrTmFtZV07XG4gIHJldHVybiB1dHhvbGliLmJpdGdvLm91dHB1dFNjcmlwdHMuc2NyaXB0VHlwZXMyT2YzLmZpbHRlcigodikgPT5cbiAgICB1dHhvbGliLmJpdGdvLm91dHB1dFNjcmlwdHMuaXNTdXBwb3J0ZWRTY3JpcHRUeXBlKG5ldHdvcmssIHYpXG4gICk7XG59XG5cbi8qKlxuICogQ2hlY2sgaWYgc2NyaXB0IHR5cGUgaXMgZW5hYmxlZCBmb3IgYSBnaXZlbiB3YWxsZXRUeXBlIGFuZCBuZXR3b3JrXG4gKiBAcGFyYW0gbmV0d29ya1xuICogQHBhcmFtIHdhbGxldFR5cGVcbiAqIEBwYXJhbSBzY3JpcHRUeXBlXG4gKi9cbmZ1bmN0aW9uIGlzRW5hYmxlZEFkZHJlc3NUeXBlKG5ldHdvcms6IHV0eG9saWIuTmV0d29yaywgd2FsbGV0VHlwZTogV2FsbGV0VHlwZSwgc2NyaXB0VHlwZTogU2NyaXB0VHlwZTJPZjMpOiBib29sZWFuIHtcbiAgaWYgKCF1dHhvbGliLmJpdGdvLm91dHB1dFNjcmlwdHMuaXNTdXBwb3J0ZWRTY3JpcHRUeXBlKG5ldHdvcmssIHNjcmlwdFR5cGUpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIGlmIChzY3JpcHRUeXBlID09PSAncDJ0ck11c2lnMicpIHtcbiAgICByZXR1cm4gd2FsbGV0VHlwZSA9PT0gJ2hvdCcgfHwgKHdhbGxldFR5cGUgPT09ICdjb2xkJyAmJiB1dHhvbGliLmlzVGVzdG5ldChuZXR3b3JrKSk7XG4gIH1cbiAgcmV0dXJuIHRydWU7XG59XG5cbi8qKlxuICogR2V0IHRoZSBzdXBwb3J0ZWQgMiBvZiAzIHNjcmlwdCB0eXBlcyBmb3IgYSBnaXZlbiB1dHhvIGNvaW4gYW5kIHdhbGxldCB0eXBlXG4gKiBAcGFyYW0gY29pbk5hbWVcbiAqIEBwYXJhbSB3YWxsZXRUeXBlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRVdHhvQ29pblNjcmlwdFR5cGVzRm9yV2FsbGV0VHlwZShcbiAgY29pbk5hbWU6IHN0cmluZyxcbiAgd2FsbGV0VHlwZTogV2FsbGV0VHlwZVxuKTogdXR4b2xpYi5iaXRnby5vdXRwdXRTY3JpcHRzLlNjcmlwdFR5cGUyT2YzW10ge1xuICBjb25zdCBzY3JpcHRUeXBlcyA9IGdldFV0eG9Db2luU2NyaXB0VHlwZXMyT2YzKGNvaW5OYW1lKTtcblxuICBjb25zdCBjb2luID0gY29pbnMuZ2V0KGNvaW5OYW1lKTtcbiAgYXNzZXJ0KGNvaW4gaW5zdGFuY2VvZiBVdHhvQ29pbiwgYGNvaW4gJHtjb2luTmFtZX0gaXMgbm90IGEgdXR4byBjb2luYCk7XG4gIGNvbnN0IG5ldHdvcmsgPSB1dHhvbGliLm5ldHdvcmtzW2NvaW4ubmV0d29yay51dHhvbGliTmFtZSBhcyB1dHhvbGliLk5ldHdvcmtOYW1lXTtcblxuICByZXR1cm4gc2NyaXB0VHlwZXMuZmlsdGVyKChzY3JpcHRUeXBlKSA9PiBpc0VuYWJsZWRBZGRyZXNzVHlwZShuZXR3b3JrLCB3YWxsZXRUeXBlLCBzY3JpcHRUeXBlIGFzIFNjcmlwdFR5cGUyT2YzKSk7XG59XG4iXX0=
@@ -0,0 +1,7 @@
1
+ import * as t from 'io-ts';
2
+ /**
3
+ * @param type
4
+ * @returns {string[]} the top-level properties of a codec
5
+ */
6
+ export declare function getCodecProperties(type: t.Type<any>): string[];
7
+ //# sourceMappingURL=codecProps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codecProps.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/utils/codecProps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,OAAO,CAAC;AAE3B;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAY9D"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.getCodecProperties = getCodecProperties;
37
+ const t = __importStar(require("io-ts"));
38
+ /**
39
+ * @param type
40
+ * @returns {string[]} the top-level properties of a codec
41
+ */
42
+ function getCodecProperties(type) {
43
+ if (type instanceof t.IntersectionType) {
44
+ return type.types.flatMap(getCodecProperties);
45
+ }
46
+ if (type instanceof t.ExactType) {
47
+ return getCodecProperties(type.type);
48
+ }
49
+ if (type instanceof t.PartialType || type instanceof t.InterfaceType) {
50
+ return Object.keys(type.props);
51
+ }
52
+ throw new Error(`Unsupported type: ${type.name}`);
53
+ }
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZWNQcm9wcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby91dGlscy9jb2RlY1Byb3BzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUEsZ0RBWUM7QUFsQkQseUNBQTJCO0FBRTNCOzs7R0FHRztBQUNILFNBQWdCLGtCQUFrQixDQUFDLElBQWlCO0lBQ2xELElBQUksSUFBSSxZQUFZLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBQ0QsSUFBSSxJQUFJLFlBQVksQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2hDLE9BQU8sa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFDRCxJQUFJLElBQUksWUFBWSxDQUFDLENBQUMsV0FBVyxJQUFJLElBQUksWUFBWSxDQUFDLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDckUsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7QUFDcEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHQgZnJvbSAnaW8tdHMnO1xuXG4vKipcbiAqIEBwYXJhbSB0eXBlXG4gKiBAcmV0dXJucyB7c3RyaW5nW119IHRoZSB0b3AtbGV2ZWwgcHJvcGVydGllcyBvZiBhIGNvZGVjXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRDb2RlY1Byb3BlcnRpZXModHlwZTogdC5UeXBlPGFueT4pOiBzdHJpbmdbXSB7XG4gIGlmICh0eXBlIGluc3RhbmNlb2YgdC5JbnRlcnNlY3Rpb25UeXBlKSB7XG4gICAgcmV0dXJuIHR5cGUudHlwZXMuZmxhdE1hcChnZXRDb2RlY1Byb3BlcnRpZXMpO1xuICB9XG4gIGlmICh0eXBlIGluc3RhbmNlb2YgdC5FeGFjdFR5cGUpIHtcbiAgICByZXR1cm4gZ2V0Q29kZWNQcm9wZXJ0aWVzKHR5cGUudHlwZSk7XG4gIH1cbiAgaWYgKHR5cGUgaW5zdGFuY2VvZiB0LlBhcnRpYWxUeXBlIHx8IHR5cGUgaW5zdGFuY2VvZiB0LkludGVyZmFjZVR5cGUpIHtcbiAgICByZXR1cm4gT2JqZWN0LmtleXModHlwZS5wcm9wcyk7XG4gIH1cblxuICB0aHJvdyBuZXcgRXJyb3IoYFVuc3VwcG9ydGVkIHR5cGU6ICR7dHlwZS5uYW1lfWApO1xufVxuIl19
@@ -1 +1 @@
1
- {"version":3,"file":"decode.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/utils/decode.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAIlC,OAAO,KAAK,CAAC,MAAM,OAAO,CAAC;AAE3B;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,cACf,MAAM,cACT,EAAE,MAAM,KAAG,MAmBnB,CAAC;AAEJ,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAKpG;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EACrC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EACtB,KAAK,EAAE,CAAC,EACR,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,GAC5B,CAAC,GAAG,CAAC,CAEP"}
1
+ {"version":3,"file":"decode.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/utils/decode.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAIlC,OAAO,KAAK,CAAC,MAAM,OAAO,CAAC;AAE3B;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,cACf,MAAM,cACT,CAAC,CAAC,MAAM,KAAG,MAmBnB,CAAC;AAEJ,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAKpG;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EACrC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EACtB,KAAK,EAAE,CAAC,EACR,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,GAC5B,CAAC,GAAG,CAAC,CAEP"}
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[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);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -11,15 +15,27 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
11
15
  }) : function(o, v) {
12
16
  o["default"] = v;
13
17
  });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
21
35
  Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.decodeOrElse = exports.decode = exports.validationErrors = void 0;
36
+ exports.validationErrors = void 0;
37
+ exports.decode = decode;
38
+ exports.decodeOrElse = decodeOrElse;
23
39
  const function_1 = require("fp-ts/function");
24
40
  const E = __importStar(require("fp-ts/Either"));
25
41
  const Json = __importStar(require("fp-ts/Json"));
@@ -32,25 +48,23 @@ const NEA = __importStar(require("fp-ts/ReadonlyNonEmptyArray"));
32
48
  */
33
49
  const validationErrors = (typeAlias) => (errors) => {
34
50
  return errors
35
- .map((error) => function_1.pipe(NEA.fromReadonlyArray(error.context), O.map((context) => {
51
+ .map((error) => (0, function_1.pipe)(NEA.fromReadonlyArray(error.context), O.map((context) => {
36
52
  const name = typeAlias || NEA.head(context).type.name;
37
53
  const lastType = NEA.last(context).type.name;
38
54
  const path = name + error.context.map((c) => c.key).join('.');
39
- return function_1.pipe(Json.stringify(error.value), E.getOrElse(() => error.value), (value) => `Invalid value '${value}' supplied to ${path}, expected ${lastType}.`);
55
+ return (0, function_1.pipe)(Json.stringify(error.value), E.getOrElse(() => error.value), (value) => `Invalid value '${value}' supplied to ${path}, expected ${lastType}.`);
40
56
  }), O.getOrElse(() => `Unable to decode ${typeAlias}, but no error reported`)))
41
57
  .join('\n');
42
58
  };
43
59
  exports.validationErrors = validationErrors;
44
60
  function decode(codecName, codec, u) {
45
- return function_1.pipe(codec.decode(u), E.mapLeft((errors) => exports.validationErrors(codecName)(errors)));
61
+ return (0, function_1.pipe)(codec.decode(u), E.mapLeft((errors) => (0, exports.validationErrors)(codecName)(errors)));
46
62
  }
47
- exports.decode = decode;
48
63
  /**
49
64
  * Decodes input `value` with `codec`. When decoding fails, calls the `orElse` function with the error message from
50
65
  * `validationErrors`.
51
66
  */
52
67
  function decodeOrElse(codecName, codec, value, orElse) {
53
- return function_1.pipe(decode(codecName, codec, value), E.getOrElseW(orElse));
68
+ return (0, function_1.pipe)(decode(codecName, codec, value), E.getOrElseW(orElse));
54
69
  }
55
- exports.decodeOrElse = decodeOrElse;
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb2RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JpdGdvL3V0aWxzL2RlY29kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQXNDO0FBQ3RDLGdEQUFrQztBQUNsQyxpREFBbUM7QUFDbkMsZ0RBQWtDO0FBQ2xDLGlFQUFtRDtBQUduRDs7OztHQUlHO0FBQ0ksTUFBTSxnQkFBZ0IsR0FDM0IsQ0FBQyxTQUFpQixFQUFFLEVBQUUsQ0FDdEIsQ0FBQyxNQUFnQixFQUFVLEVBQUU7SUFDM0IsT0FBTyxNQUFNO1NBQ1YsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDYixlQUFJLENBQ0YsR0FBRyxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsRUFDcEMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1FBQ2hCLE1BQU0sSUFBSSxHQUFHLFNBQVMsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDdEQsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQzdDLE1BQU0sSUFBSSxHQUFHLElBQUksR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM5RCxPQUFPLGVBQUksQ0FDVCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFDM0IsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQzlCLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxrQkFBa0IsS0FBSyxpQkFBaUIsSUFBSSxjQUFjLFFBQVEsR0FBRyxDQUNqRixDQUFDO0lBQ0osQ0FBQyxDQUFDLEVBQ0YsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxvQkFBb0IsU0FBUyx5QkFBeUIsQ0FBQyxDQUMxRSxDQUNGO1NBQ0EsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ2hCLENBQUMsQ0FBQztBQXJCUyxRQUFBLGdCQUFnQixvQkFxQnpCO0FBRUosU0FBZ0IsTUFBTSxDQUFVLFNBQWlCLEVBQUUsS0FBc0IsRUFBRSxDQUFJO0lBQzdFLE9BQU8sZUFBSSxDQUNULEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQ2YsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsd0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FDM0QsQ0FBQztBQUNKLENBQUM7QUFMRCx3QkFLQztBQUVEOzs7R0FHRztBQUNILFNBQWdCLFlBQVksQ0FDMUIsU0FBaUIsRUFDakIsS0FBc0IsRUFDdEIsS0FBUSxFQUNSLE1BQTZCO0lBRTdCLE9BQU8sZUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztBQUNyRSxDQUFDO0FBUEQsb0NBT0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBwaXBlIH0gZnJvbSAnZnAtdHMvZnVuY3Rpb24nO1xuaW1wb3J0ICogYXMgRSBmcm9tICdmcC10cy9FaXRoZXInO1xuaW1wb3J0ICogYXMgSnNvbiBmcm9tICdmcC10cy9Kc29uJztcbmltcG9ydCAqIGFzIE8gZnJvbSAnZnAtdHMvT3B0aW9uJztcbmltcG9ydCAqIGFzIE5FQSBmcm9tICdmcC10cy9SZWFkb25seU5vbkVtcHR5QXJyYXknO1xuaW1wb3J0ICogYXMgdCBmcm9tICdpby10cyc7XG5cbi8qKlxuICogRm9ybWF0IGFuIGBFcnJvcnNgIG9iamVjdCBhcyBhIGh1bWFuLXJlYWRhYmxlIGBzdHJpbmdgLiBTZWUgYGRlY29kZWAgaW4gYGRlY29kZS50c2AgZm9yIGFuIGV4YW1wbGUuXG4gKiBJbnNwaXJlZCBieVxuICogaHR0cHM6Ly9naXRodWIuY29tL21ta2FsL3RzL2Jsb2IvOTRhOWJhOGYyOTMxYzljOTExMjJkMDBiMGJmMWJkMjFiMmJlMDVjZC9wYWNrYWdlcy9pby10cy1leHRyYS9zcmMvcmVwb3J0ZXJzLnRzI0wxMS5cbiAqL1xuZXhwb3J0IGNvbnN0IHZhbGlkYXRpb25FcnJvcnMgPVxuICAodHlwZUFsaWFzOiBzdHJpbmcpID0+XG4gIChlcnJvcnM6IHQuRXJyb3JzKTogc3RyaW5nID0+IHtcbiAgICByZXR1cm4gZXJyb3JzXG4gICAgICAubWFwKChlcnJvcikgPT5cbiAgICAgICAgcGlwZShcbiAgICAgICAgICBORUEuZnJvbVJlYWRvbmx5QXJyYXkoZXJyb3IuY29udGV4dCksXG4gICAgICAgICAgTy5tYXAoKGNvbnRleHQpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG5hbWUgPSB0eXBlQWxpYXMgfHwgTkVBLmhlYWQoY29udGV4dCkudHlwZS5uYW1lO1xuICAgICAgICAgICAgY29uc3QgbGFzdFR5cGUgPSBORUEubGFzdChjb250ZXh0KS50eXBlLm5hbWU7XG4gICAgICAgICAgICBjb25zdCBwYXRoID0gbmFtZSArIGVycm9yLmNvbnRleHQubWFwKChjKSA9PiBjLmtleSkuam9pbignLicpO1xuICAgICAgICAgICAgcmV0dXJuIHBpcGUoXG4gICAgICAgICAgICAgIEpzb24uc3RyaW5naWZ5KGVycm9yLnZhbHVlKSxcbiAgICAgICAgICAgICAgRS5nZXRPckVsc2UoKCkgPT4gZXJyb3IudmFsdWUpLFxuICAgICAgICAgICAgICAodmFsdWUpID0+IGBJbnZhbGlkIHZhbHVlICcke3ZhbHVlfScgc3VwcGxpZWQgdG8gJHtwYXRofSwgZXhwZWN0ZWQgJHtsYXN0VHlwZX0uYFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBPLmdldE9yRWxzZSgoKSA9PiBgVW5hYmxlIHRvIGRlY29kZSAke3R5cGVBbGlhc30sIGJ1dCBubyBlcnJvciByZXBvcnRlZGApXG4gICAgICAgIClcbiAgICAgIClcbiAgICAgIC5qb2luKCdcXG4nKTtcbiAgfTtcblxuZXhwb3J0IGZ1bmN0aW9uIGRlY29kZTxBLCBPLCBJPihjb2RlY05hbWU6IHN0cmluZywgY29kZWM6IHQuVHlwZTxBLCBPLCBJPiwgdTogSSk6IEUuRWl0aGVyPHN0cmluZywgQT4ge1xuICByZXR1cm4gcGlwZShcbiAgICBjb2RlYy5kZWNvZGUodSksXG4gICAgRS5tYXBMZWZ0KChlcnJvcnMpID0+IHZhbGlkYXRpb25FcnJvcnMoY29kZWNOYW1lKShlcnJvcnMpKVxuICApO1xufVxuXG4vKipcbiAqIERlY29kZXMgaW5wdXQgYHZhbHVlYCB3aXRoIGBjb2RlY2AuIFdoZW4gZGVjb2RpbmcgZmFpbHMsIGNhbGxzIHRoZSBgb3JFbHNlYCBmdW5jdGlvbiB3aXRoIHRoZSBlcnJvciBtZXNzYWdlIGZyb21cbiAqIGB2YWxpZGF0aW9uRXJyb3JzYC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlY29kZU9yRWxzZTxBLCBPLCBJLCBFPihcbiAgY29kZWNOYW1lOiBzdHJpbmcsXG4gIGNvZGVjOiB0LlR5cGU8QSwgTywgST4sXG4gIHZhbHVlOiBJLFxuICBvckVsc2U6IChlcnJvcnM6IHN0cmluZykgPT4gRVxuKTogRSB8IEEge1xuICByZXR1cm4gcGlwZShkZWNvZGUoY29kZWNOYW1lLCBjb2RlYywgdmFsdWUpLCBFLmdldE9yRWxzZVcob3JFbHNlKSk7XG59XG4iXX0=
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb2RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JpdGdvL3V0aWxzL2RlY29kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFtQ0Esd0JBS0M7QUFNRCxvQ0FPQztBQXJERCw2Q0FBc0M7QUFDdEMsZ0RBQWtDO0FBQ2xDLGlEQUFtQztBQUNuQyxnREFBa0M7QUFDbEMsaUVBQW1EO0FBR25EOzs7O0dBSUc7QUFDSSxNQUFNLGdCQUFnQixHQUMzQixDQUFDLFNBQWlCLEVBQUUsRUFBRSxDQUN0QixDQUFDLE1BQWdCLEVBQVUsRUFBRTtJQUMzQixPQUFPLE1BQU07U0FDVixHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUNiLElBQUEsZUFBSSxFQUNGLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQ3BDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtRQUNoQixNQUFNLElBQUksR0FBRyxTQUFTLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQ3RELE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztRQUM3QyxNQUFNLElBQUksR0FBRyxJQUFJLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDOUQsT0FBTyxJQUFBLGVBQUksRUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFDM0IsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQzlCLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxrQkFBa0IsS0FBSyxpQkFBaUIsSUFBSSxjQUFjLFFBQVEsR0FBRyxDQUNqRixDQUFDO0lBQ0osQ0FBQyxDQUFDLEVBQ0YsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxvQkFBb0IsU0FBUyx5QkFBeUIsQ0FBQyxDQUMxRSxDQUNGO1NBQ0EsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ2hCLENBQUMsQ0FBQztBQXJCUyxRQUFBLGdCQUFnQixvQkFxQnpCO0FBRUosU0FBZ0IsTUFBTSxDQUFVLFNBQWlCLEVBQUUsS0FBc0IsRUFBRSxDQUFJO0lBQzdFLE9BQU8sSUFBQSxlQUFJLEVBQ1QsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFDZixDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxJQUFBLHdCQUFnQixFQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQzNELENBQUM7QUFDSixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsWUFBWSxDQUMxQixTQUFpQixFQUNqQixLQUFzQixFQUN0QixLQUFRLEVBQ1IsTUFBNkI7SUFFN0IsT0FBTyxJQUFBLGVBQUksRUFBQyxNQUFNLENBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7QUFDckUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBpcGUgfSBmcm9tICdmcC10cy9mdW5jdGlvbic7XG5pbXBvcnQgKiBhcyBFIGZyb20gJ2ZwLXRzL0VpdGhlcic7XG5pbXBvcnQgKiBhcyBKc29uIGZyb20gJ2ZwLXRzL0pzb24nO1xuaW1wb3J0ICogYXMgTyBmcm9tICdmcC10cy9PcHRpb24nO1xuaW1wb3J0ICogYXMgTkVBIGZyb20gJ2ZwLXRzL1JlYWRvbmx5Tm9uRW1wdHlBcnJheSc7XG5pbXBvcnQgKiBhcyB0IGZyb20gJ2lvLXRzJztcblxuLyoqXG4gKiBGb3JtYXQgYW4gYEVycm9yc2Agb2JqZWN0IGFzIGEgaHVtYW4tcmVhZGFibGUgYHN0cmluZ2AuIFNlZSBgZGVjb2RlYCBpbiBgZGVjb2RlLnRzYCBmb3IgYW4gZXhhbXBsZS5cbiAqIEluc3BpcmVkIGJ5XG4gKiBodHRwczovL2dpdGh1Yi5jb20vbW1rYWwvdHMvYmxvYi85NGE5YmE4ZjI5MzFjOWM5MTEyMmQwMGIwYmYxYmQyMWIyYmUwNWNkL3BhY2thZ2VzL2lvLXRzLWV4dHJhL3NyYy9yZXBvcnRlcnMudHMjTDExLlxuICovXG5leHBvcnQgY29uc3QgdmFsaWRhdGlvbkVycm9ycyA9XG4gICh0eXBlQWxpYXM6IHN0cmluZykgPT5cbiAgKGVycm9yczogdC5FcnJvcnMpOiBzdHJpbmcgPT4ge1xuICAgIHJldHVybiBlcnJvcnNcbiAgICAgIC5tYXAoKGVycm9yKSA9PlxuICAgICAgICBwaXBlKFxuICAgICAgICAgIE5FQS5mcm9tUmVhZG9ubHlBcnJheShlcnJvci5jb250ZXh0KSxcbiAgICAgICAgICBPLm1hcCgoY29udGV4dCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbmFtZSA9IHR5cGVBbGlhcyB8fCBORUEuaGVhZChjb250ZXh0KS50eXBlLm5hbWU7XG4gICAgICAgICAgICBjb25zdCBsYXN0VHlwZSA9IE5FQS5sYXN0KGNvbnRleHQpLnR5cGUubmFtZTtcbiAgICAgICAgICAgIGNvbnN0IHBhdGggPSBuYW1lICsgZXJyb3IuY29udGV4dC5tYXAoKGMpID0+IGMua2V5KS5qb2luKCcuJyk7XG4gICAgICAgICAgICByZXR1cm4gcGlwZShcbiAgICAgICAgICAgICAgSnNvbi5zdHJpbmdpZnkoZXJyb3IudmFsdWUpLFxuICAgICAgICAgICAgICBFLmdldE9yRWxzZSgoKSA9PiBlcnJvci52YWx1ZSksXG4gICAgICAgICAgICAgICh2YWx1ZSkgPT4gYEludmFsaWQgdmFsdWUgJyR7dmFsdWV9JyBzdXBwbGllZCB0byAke3BhdGh9LCBleHBlY3RlZCAke2xhc3RUeXBlfS5gXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0pLFxuICAgICAgICAgIE8uZ2V0T3JFbHNlKCgpID0+IGBVbmFibGUgdG8gZGVjb2RlICR7dHlwZUFsaWFzfSwgYnV0IG5vIGVycm9yIHJlcG9ydGVkYClcbiAgICAgICAgKVxuICAgICAgKVxuICAgICAgLmpvaW4oJ1xcbicpO1xuICB9O1xuXG5leHBvcnQgZnVuY3Rpb24gZGVjb2RlPEEsIE8sIEk+KGNvZGVjTmFtZTogc3RyaW5nLCBjb2RlYzogdC5UeXBlPEEsIE8sIEk+LCB1OiBJKTogRS5FaXRoZXI8c3RyaW5nLCBBPiB7XG4gIHJldHVybiBwaXBlKFxuICAgIGNvZGVjLmRlY29kZSh1KSxcbiAgICBFLm1hcExlZnQoKGVycm9ycykgPT4gdmFsaWRhdGlvbkVycm9ycyhjb2RlY05hbWUpKGVycm9ycykpXG4gICk7XG59XG5cbi8qKlxuICogRGVjb2RlcyBpbnB1dCBgdmFsdWVgIHdpdGggYGNvZGVjYC4gV2hlbiBkZWNvZGluZyBmYWlscywgY2FsbHMgdGhlIGBvckVsc2VgIGZ1bmN0aW9uIHdpdGggdGhlIGVycm9yIG1lc3NhZ2UgZnJvbVxuICogYHZhbGlkYXRpb25FcnJvcnNgLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZGVjb2RlT3JFbHNlPEEsIE8sIEksIEU+KFxuICBjb2RlY05hbWU6IHN0cmluZyxcbiAgY29kZWM6IHQuVHlwZTxBLCBPLCBJPixcbiAgdmFsdWU6IEksXG4gIG9yRWxzZTogKGVycm9yczogc3RyaW5nKSA9PiBFXG4pOiBFIHwgQSB7XG4gIHJldHVybiBwaXBlKGRlY29kZShjb2RlY05hbWUsIGNvZGVjLCB2YWx1ZSksIEUuZ2V0T3JFbHNlVyhvckVsc2UpKTtcbn1cbiJdfQ==
@@ -1,7 +1,5 @@
1
1
  import * as openpgpUtils from './opengpgUtils';
2
2
  export * from './abstractUtxoCoinUtil';
3
- export * from './blsUtils';
4
- export * from './iBlsUtils';
5
3
  export * from './mpcUtils';
6
4
  export * from './opengpgUtils';
7
5
  export * from './promise-utils';
@@ -9,5 +7,7 @@ export * from './triple';
9
7
  export * from './tss';
10
8
  export * from './util';
11
9
  export * from './decode';
10
+ export * from './notEmpty';
11
+ export * from './wallet';
12
12
  export { openpgpUtils };
13
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,YAAY,MAAM,gBAAgB,CAAC;AAE/C,cAAc,wBAAwB,CAAC;AACvC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AAEzB,OAAO,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,YAAY,MAAM,gBAAgB,CAAC;AAE/C,cAAc,wBAAwB,CAAC;AACvC,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AAEzB,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[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);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -11,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
11
15
  }) : function(o, v) {
12
16
  o["default"] = v;
13
17
  });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
21
35
  var __exportStar = (this && this.__exportStar) || function(m, exports) {
22
36
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
23
37
  };
@@ -26,8 +40,6 @@ exports.openpgpUtils = void 0;
26
40
  const openpgpUtils = __importStar(require("./opengpgUtils"));
27
41
  exports.openpgpUtils = openpgpUtils;
28
42
  __exportStar(require("./abstractUtxoCoinUtil"), exports);
29
- __exportStar(require("./blsUtils"), exports);
30
- __exportStar(require("./iBlsUtils"), exports);
31
43
  __exportStar(require("./mpcUtils"), exports);
32
44
  __exportStar(require("./opengpgUtils"), exports);
33
45
  __exportStar(require("./promise-utils"), exports);
@@ -35,4 +47,6 @@ __exportStar(require("./triple"), exports);
35
47
  __exportStar(require("./tss"), exports);
36
48
  __exportStar(require("./util"), exports);
37
49
  __exportStar(require("./decode"), exports);
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZEQUErQztBQWF0QyxvQ0FBWTtBQVhyQix5REFBdUM7QUFDdkMsNkNBQTJCO0FBQzNCLDhDQUE0QjtBQUM1Qiw2Q0FBMkI7QUFDM0IsaURBQStCO0FBQy9CLGtEQUFnQztBQUNoQywyQ0FBeUI7QUFDekIsd0NBQXNCO0FBQ3RCLHlDQUF1QjtBQUN2QiwyQ0FBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBvcGVucGdwVXRpbHMgZnJvbSAnLi9vcGVuZ3BnVXRpbHMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2Fic3RyYWN0VXR4b0NvaW5VdGlsJztcbmV4cG9ydCAqIGZyb20gJy4vYmxzVXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9pQmxzVXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9tcGNVdGlscyc7XG5leHBvcnQgKiBmcm9tICcuL29wZW5ncGdVdGlscyc7XG5leHBvcnQgKiBmcm9tICcuL3Byb21pc2UtdXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi90cmlwbGUnO1xuZXhwb3J0ICogZnJvbSAnLi90c3MnO1xuZXhwb3J0ICogZnJvbSAnLi91dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vZGVjb2RlJztcblxuZXhwb3J0IHsgb3BlbnBncFV0aWxzIH07XG4iXX0=
50
+ __exportStar(require("./notEmpty"), exports);
51
+ __exportStar(require("./wallet"), exports);
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkRBQStDO0FBYXRDLG9DQUFZO0FBWHJCLHlEQUF1QztBQUN2Qyw2Q0FBMkI7QUFDM0IsaURBQStCO0FBQy9CLGtEQUFnQztBQUNoQywyQ0FBeUI7QUFDekIsd0NBQXNCO0FBQ3RCLHlDQUF1QjtBQUN2QiwyQ0FBeUI7QUFDekIsNkNBQTJCO0FBQzNCLDJDQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIG9wZW5wZ3BVdGlscyBmcm9tICcuL29wZW5ncGdVdGlscyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vYWJzdHJhY3RVdHhvQ29pblV0aWwnO1xuZXhwb3J0ICogZnJvbSAnLi9tcGNVdGlscyc7XG5leHBvcnQgKiBmcm9tICcuL29wZW5ncGdVdGlscyc7XG5leHBvcnQgKiBmcm9tICcuL3Byb21pc2UtdXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi90cmlwbGUnO1xuZXhwb3J0ICogZnJvbSAnLi90c3MnO1xuZXhwb3J0ICogZnJvbSAnLi91dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vZGVjb2RlJztcbmV4cG9ydCAqIGZyb20gJy4vbm90RW1wdHknO1xuZXhwb3J0ICogZnJvbSAnLi93YWxsZXQnO1xuXG5leHBvcnQgeyBvcGVucGdwVXRpbHMgfTtcbiJdfQ==
@@ -2,8 +2,7 @@ import { SerializedKeyPair } from 'openpgp';
2
2
  import { IBaseCoin, KeychainsTriplet } from '../baseCoin';
3
3
  import { BitGoBase } from '../bitgoBase';
4
4
  import { Keychain, KeyType } from '../keychain';
5
- import { BackupProvider } from '../wallet';
6
- import { PopulatedIntent, PrebuildTransactionWithIntentOptions } from './tss/baseTypes';
5
+ import { PopulatedIntent, PrebuildTransactionWithIntentOptions, TokenTransferRecipientParams } from './tss/baseTypes';
7
6
  export interface MpcKeyShare {
8
7
  publicShare: string;
9
8
  privateShare: string;
@@ -27,7 +26,6 @@ export declare abstract class MpcUtils {
27
26
  passphrase: string;
28
27
  enterprise?: string;
29
28
  originalPasscodeEncryptionCode?: string;
30
- backupProvider?: BackupProvider;
31
29
  }): Promise<KeychainsTriplet>;
32
30
  /**
33
31
  * This function would be responsible for populating intents
@@ -37,5 +35,6 @@ export declare abstract class MpcUtils {
37
35
  * @returns {Record<string, unknown>}
38
36
  */
39
37
  populateIntent(baseCoin: IBaseCoin, params: PrebuildTransactionWithIntentOptions): PopulatedIntent;
38
+ getTokenName(baseCoin: IBaseCoin, tokenData: TokenTransferRecipientParams): string | undefined;
40
39
  }
41
40
  //# sourceMappingURL=mpcUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mpcUtils.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/utils/mpcUtils.ts"],"names":[],"mappings":"AAIA,OAAO,EAAwC,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAsB,QAAQ,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAmB,eAAe,EAAE,oCAAoC,EAAE,MAAM,iBAAiB,CAAC;AAEzG,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,8BAAsB,QAAQ;IAC5B,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC;IAC3B,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC;gBAElB,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS;cAKjC,mBAAmB,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;cAiBjG,uBAAuB,CACrC,UAAU,EAAE,iBAAiB,CAAC,MAAM,CAAC,EACrC,YAAY,EAAE,iBAAiB,CAAC,MAAM,CAAC,EACvC,YAAY,EAAE,WAAW,EACzB,cAAc,EAAE,WAAW,EAC3B,OAAO,EAAE,OAAO,EAChB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,QAAQ,CAAC;IAkCpB;;;;;;OAMG;IACH,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE;QAC/B,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,8BAA8B,CAAC,EAAE,MAAM,CAAC;QACxC,cAAc,CAAC,EAAE,cAAc,CAAC;KACjC,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAE7B;;;;;;OAMG;IACH,cAAc,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,oCAAoC,GAAG,eAAe;CAiFnG"}
1
+ {"version":3,"file":"mpcUtils.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/utils/mpcUtils.ts"],"names":[],"mappings":"AAIA,OAAO,EAAwC,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAsB,QAAQ,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEpE,OAAO,EAEL,eAAe,EACf,oCAAoC,EACpC,4BAA4B,EAC7B,MAAM,iBAAiB,CAAC;AAIzB,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,8BAAsB,QAAQ;IAC5B,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC;IAC3B,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC;gBAElB,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS;cAKjC,mBAAmB,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;cAiBjG,uBAAuB,CACrC,UAAU,EAAE,iBAAiB,CAAC,MAAM,CAAC,EACrC,YAAY,EAAE,iBAAiB,CAAC,MAAM,CAAC,EACvC,YAAY,EAAE,WAAW,EACzB,cAAc,EAAE,WAAW,EAC3B,OAAO,EAAE,OAAO,EAChB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,QAAQ,CAAC;IAsCpB;;;;;;OAMG;IACH,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE;QAC/B,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,8BAA8B,CAAC,EAAE,MAAM,CAAC;KACzC,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAE7B;;;;;;OAMG;IACH,cAAc,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,oCAAoC,GAAG,eAAe;IAwFlG,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,4BAA4B,GAAG,MAAM,GAAG,SAAS;CAY/F"}
@@ -10,17 +10,19 @@ exports.MpcUtils = void 0;
10
10
  const assert_1 = __importDefault(require("assert"));
11
11
  const openpgp_1 = require("openpgp");
12
12
  const opengpgUtils_1 = require("./opengpgUtils");
13
+ const bitgoPubKeys_1 = require("../tss/bitgoPubKeys");
14
+ const statics_1 = require("@bitgo-beta/statics");
13
15
  class MpcUtils {
14
16
  constructor(bitgo, baseCoin) {
15
17
  this.bitgo = bitgo;
16
18
  this.baseCoin = baseCoin;
17
19
  }
18
20
  async decryptPrivateShare(privateShare, userGpgKey) {
19
- const privateShareMessage = await openpgp_1.readMessage({
21
+ const privateShareMessage = await (0, openpgp_1.readMessage)({
20
22
  armoredMessage: privateShare,
21
23
  });
22
- const userGpgPrivateKey = await openpgp_1.readPrivateKey({ armoredKey: userGpgKey.privateKey });
23
- const decryptedPrivateShare = (await openpgp_1.decrypt({
24
+ const userGpgPrivateKey = await (0, openpgp_1.readPrivateKey)({ armoredKey: userGpgKey.privateKey });
25
+ const decryptedPrivateShare = (await (0, openpgp_1.decrypt)({
24
26
  message: privateShareMessage,
25
27
  decryptionKeys: [userGpgPrivateKey],
26
28
  format: 'utf8',
@@ -28,9 +30,13 @@ class MpcUtils {
28
30
  return decryptedPrivateShare;
29
31
  }
30
32
  async createBitgoKeychainInWP(userGpgKey, backupGpgKey, userKeyShare, backupKeyShare, keyType, enterprise) {
31
- const bitgoKey = await opengpgUtils_1.getBitgoGpgPubKey(this.bitgo);
32
- const encUserToBitGoMessage = await opengpgUtils_1.encryptText(userKeyShare.privateShare, bitgoKey);
33
- const encBackupToBitGoMessage = await opengpgUtils_1.encryptText(backupKeyShare.privateShare, bitgoKey);
33
+ const bitgoKey = (await (0, opengpgUtils_1.getBitgoGpgPubKey)(this.bitgo)).mpcV1;
34
+ if ((0, bitgoPubKeys_1.envRequiresBitgoPubGpgKeyConfig)(this.bitgo.getEnv())) {
35
+ // Ensure the public key is one of the expected BitGo public keys when in test or prod.
36
+ (0, assert_1.default)((0, bitgoPubKeys_1.isBitgoMpcPubKey)(bitgoKey.armor(), 'mpcv1'), 'Invalid BitGo GPG public key');
37
+ }
38
+ const encUserToBitGoMessage = await (0, opengpgUtils_1.encryptText)(userKeyShare.privateShare, bitgoKey);
39
+ const encBackupToBitGoMessage = await (0, opengpgUtils_1.encryptText)(backupKeyShare.privateShare, bitgoKey);
34
40
  const createBitGoMPCParams = {
35
41
  keyType,
36
42
  source: 'bitgo',
@@ -66,12 +72,11 @@ class MpcUtils {
66
72
  * @returns {Record<string, unknown>}
67
73
  */
68
74
  populateIntent(baseCoin, params) {
69
- var _a, _b, _c;
70
75
  const chain = this.baseCoin.getChain();
71
76
  if (!['acceleration', 'fillNonce', 'transferToken'].includes(params.intentType)) {
72
- assert_1.default(params.recipients, `'recipients' is a required parameter for ${params.intentType} intent`);
77
+ (0, assert_1.default)(params.recipients, `'recipients' is a required parameter for ${params.intentType} intent`);
73
78
  }
74
- const intentRecipients = (_a = params.recipients) === null || _a === void 0 ? void 0 : _a.map((recipient) => {
79
+ const intentRecipients = params.recipients?.map((recipient) => {
75
80
  const formattedRecipient = {
76
81
  address: { address: recipient.address },
77
82
  amount: { value: `${recipient.amount}`, symbol: recipient.tokenName ? recipient.tokenName : chain },
@@ -85,6 +90,10 @@ class MpcUtils {
85
90
  if (!(tokenData.tokenType && tokenData.tokenQuantity)) {
86
91
  throw new Error('token type and quantity is required to request a transaction with intent to transfer a token');
87
92
  }
93
+ tokenData.tokenName = this.getTokenName(baseCoin, tokenData);
94
+ if (tokenData.tokenName) {
95
+ formattedRecipient.amount.symbol = tokenData.tokenName;
96
+ }
88
97
  formattedRecipient.tokenData = tokenData;
89
98
  }
90
99
  return formattedRecipient;
@@ -122,10 +131,11 @@ class MpcUtils {
122
131
  throw new Error(`Unsupported intent type ${params.intentType}`);
123
132
  }
124
133
  }
134
+ this.baseCoin.setCoinSpecificFieldsInIntent(baseIntent, params);
125
135
  if (params.feeOptions !== undefined) {
126
136
  return {
127
137
  ...baseIntent,
128
- memo: (_b = params.memo) === null || _b === void 0 ? void 0 : _b.value,
138
+ memo: params.memo?.value,
129
139
  token: params.tokenName,
130
140
  enableTokens: params.enableTokens,
131
141
  feeOptions: params.feeOptions,
@@ -133,11 +143,23 @@ class MpcUtils {
133
143
  }
134
144
  return {
135
145
  ...baseIntent,
136
- memo: (_c = params.memo) === null || _c === void 0 ? void 0 : _c.value,
146
+ memo: params.memo?.value,
137
147
  token: params.tokenName,
138
148
  enableTokens: params.enableTokens,
139
149
  };
140
150
  }
151
+ getTokenName(baseCoin, tokenData) {
152
+ if (tokenData.tokenName) {
153
+ return tokenData.tokenName;
154
+ }
155
+ const networkPrefix = baseCoin.getConfig().network.type === statics_1.NetworkType.TESTNET ? 't' : '';
156
+ const tokenStaticsKey = `${networkPrefix}${baseCoin.getFamily()}:${tokenData.tokenContractAddress}`;
157
+ if (statics_1.coins.has(tokenStaticsKey)) {
158
+ const tokenStatics = statics_1.coins.get(tokenStaticsKey);
159
+ tokenData.tokenName = tokenStatics.name;
160
+ }
161
+ return tokenData.tokenName;
162
+ }
141
163
  }
142
164
  exports.MpcUtils = MpcUtils;
143
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXBjVXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vdXRpbHMvbXBjVXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7O0dBRUc7QUFDSCxvREFBNEI7QUFDNUIscUNBQWtGO0FBS2xGLGlEQUFnRTtBQVVoRSxNQUFzQixRQUFRO0lBSTVCLFlBQVksS0FBZ0IsRUFBRSxRQUFtQjtRQUMvQyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMzQixDQUFDO0lBRVMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLFlBQW9CLEVBQUUsVUFBcUM7UUFDN0YsTUFBTSxtQkFBbUIsR0FBRyxNQUFNLHFCQUFXLENBQUM7WUFDNUMsY0FBYyxFQUFFLFlBQVk7U0FDN0IsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxpQkFBaUIsR0FBRyxNQUFNLHdCQUFjLENBQUMsRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFFdEYsTUFBTSxxQkFBcUIsR0FBRyxDQUM1QixNQUFNLGlCQUFPLENBQUM7WUFDWixPQUFPLEVBQUUsbUJBQW1CO1lBQzVCLGNBQWMsRUFBRSxDQUFDLGlCQUFpQixDQUFDO1lBQ25DLE1BQU0sRUFBRSxNQUFNO1NBQ2YsQ0FBQyxDQUNILENBQUMsSUFBSSxDQUFDO1FBRVAsT0FBTyxxQkFBcUIsQ0FBQztJQUMvQixDQUFDO0lBRVMsS0FBSyxDQUFDLHVCQUF1QixDQUNyQyxVQUFxQyxFQUNyQyxZQUF1QyxFQUN2QyxZQUF5QixFQUN6QixjQUEyQixFQUMzQixPQUFnQixFQUNoQixVQUFtQjtRQUVuQixNQUFNLFFBQVEsR0FBRyxNQUFNLGdDQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyRCxNQUFNLHFCQUFxQixHQUFHLE1BQU0sMEJBQVcsQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3JGLE1BQU0sdUJBQXVCLEdBQUcsTUFBTSwwQkFBVyxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFFekYsTUFBTSxvQkFBb0IsR0FBdUI7WUFDL0MsT0FBTztZQUNQLE1BQU0sRUFBRSxPQUFPO1lBQ2YsU0FBUyxFQUFFO2dCQUNUO29CQUNFLElBQUksRUFBRSxNQUFNO29CQUNaLEVBQUUsRUFBRSxPQUFPO29CQUNYLFdBQVcsRUFBRSxZQUFZLENBQUMsV0FBVztvQkFDckMsWUFBWSxFQUFFLHFCQUFxQjtvQkFDbkMsaUJBQWlCLEVBQUUsWUFBWSxDQUFDLGlCQUFpQjtvQkFDakQsUUFBUSxFQUFFLFlBQVksQ0FBQyxRQUFRO2lCQUNoQztnQkFDRDtvQkFDRSxJQUFJLEVBQUUsUUFBUTtvQkFDZCxFQUFFLEVBQUUsT0FBTztvQkFDWCxXQUFXLEVBQUUsY0FBYyxDQUFDLFdBQVc7b0JBQ3ZDLFlBQVksRUFBRSx1QkFBdUI7b0JBQ3JDLGlCQUFpQixFQUFFLGNBQWMsQ0FBQyxpQkFBaUI7b0JBQ25ELFFBQVEsRUFBRSxjQUFjLENBQUMsUUFBUTtpQkFDbEM7YUFDRjtZQUNELGdCQUFnQixFQUFFLFVBQVUsQ0FBQyxTQUFTO1lBQ3RDLGtCQUFrQixFQUFFLFlBQVksQ0FBQyxTQUFTO1lBQzFDLFVBQVUsRUFBRSxVQUFVO1NBQ3ZCLENBQUM7UUFFRixPQUFPLE1BQU0sSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBZ0JEOzs7Ozs7T0FNRztJQUNILGNBQWMsQ0FBQyxRQUFtQixFQUFFLE1BQTRDOztRQUM5RSxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRXZDLElBQUksQ0FBQyxDQUFDLGNBQWMsRUFBRSxXQUFXLEVBQUUsZUFBZSxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUMvRSxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsNENBQTRDLE1BQU0sQ0FBQyxVQUFVLFNBQVMsQ0FBQyxDQUFDO1NBQ25HO1FBQ0QsTUFBTSxnQkFBZ0IsR0FBRyxNQUFBLE1BQU0sQ0FBQyxVQUFVLDBDQUFFLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFO1lBQzVELE1BQU0sa0JBQWtCLEdBQW9CO2dCQUMxQyxPQUFPLEVBQUUsRUFBRSxPQUFPLEVBQUUsU0FBUyxDQUFDLE9BQU8sRUFBRTtnQkFDdkMsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsU0FBUyxDQUFDLE1BQU0sRUFBRSxFQUFFLE1BQU0sRUFBRSxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUU7YUFDcEcsQ0FBQztZQUVGLElBQUksU0FBUyxDQUFDLElBQUksRUFBRTtnQkFDbEIsa0JBQWtCLENBQUMsSUFBSSxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUM7YUFDMUM7WUFFRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsU0FBUyxDQUFDO1lBQ2hDLElBQUksU0FBUyxJQUFJLENBQUMsU0FBUyxDQUFDLG9CQUFvQixJQUFJLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDeEUsb0RBQW9EO2dCQUNwRCxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUMsU0FBUyxJQUFJLFNBQVMsQ0FBQyxhQUFhLENBQUMsRUFBRTtvQkFDckQsTUFBTSxJQUFJLEtBQUssQ0FDYiw4RkFBOEYsQ0FDL0YsQ0FBQztpQkFDSDtnQkFDRCxrQkFBa0IsQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO2FBQzFDO1lBQ0QsT0FBTyxrQkFBa0IsQ0FBQztRQUM1QixDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sVUFBVSxHQUFHO1lBQ2pCLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVTtZQUM3QixVQUFVLEVBQUUsTUFBTSxDQUFDLFVBQVU7WUFDN0IsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPO1lBQ3ZCLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSztZQUNuQixVQUFVLEVBQUUsZ0JBQWdCO1NBQzdCLENBQUM7UUFFRixJQUFJLFFBQVEsQ0FBQyxTQUFTLEVBQUUsS0FBSyxLQUFLLElBQUksUUFBUSxDQUFDLFNBQVMsRUFBRSxLQUFLLFNBQVMsSUFBSSxRQUFRLENBQUMsU0FBUyxFQUFFLEtBQUssS0FBSyxFQUFFO1lBQzFHLFFBQVEsTUFBTSxDQUFDLFVBQVUsRUFBRTtnQkFDekIsS0FBSyxTQUFTLENBQUM7Z0JBQ2YsS0FBSyxlQUFlLENBQUM7Z0JBQ3JCLEtBQUssV0FBVztvQkFDZCxPQUFPO3dCQUNMLEdBQUcsVUFBVTt3QkFDYixRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVE7d0JBQ3pCLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVTt3QkFDN0IsU0FBUyxFQUFFLE1BQU0sQ0FBQyxTQUFTO3dCQUMzQixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7d0JBQ25CLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSzt3QkFDbkIsc0JBQXNCLEVBQUUsTUFBTSxDQUFDLHNCQUFzQjt3QkFDckQsY0FBYyxFQUFFLE1BQU0sQ0FBQyxjQUFjO3FCQUN0QyxDQUFDO2dCQUNKLEtBQUssY0FBYztvQkFDakIsT0FBTzt3QkFDTCxHQUFHLFVBQVU7d0JBQ2IsSUFBSSxFQUFFLE1BQU0sQ0FBQyxVQUFVO3dCQUN2QixjQUFjLEVBQUUsTUFBTSxDQUFDLGNBQWM7d0JBQ3JDLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVTtxQkFDOUIsQ0FBQztnQkFDSjtvQkFDRSxNQUFNLElBQUksS0FBSyxDQUFDLDJCQUEyQixNQUFNLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQzthQUNuRTtTQUNGO1FBRUQsSUFBSSxNQUFNLENBQUMsVUFBVSxLQUFLLFNBQVMsRUFBRTtZQUNuQyxPQUFPO2dCQUNMLEdBQUcsVUFBVTtnQkFDYixJQUFJLEVBQUUsTUFBQSxNQUFNLENBQUMsSUFBSSwwQ0FBRSxLQUFLO2dCQUN4QixLQUFLLEVBQUUsTUFBTSxDQUFDLFNBQVM7Z0JBQ3ZCLFlBQVksRUFBRSxNQUFNLENBQUMsWUFBWTtnQkFDakMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxVQUFVO2FBQzlCLENBQUM7U0FDSDtRQUVELE9BQU87WUFDTCxHQUFHLFVBQVU7WUFDYixJQUFJLEVBQUUsTUFBQSxNQUFNLENBQUMsSUFBSSwwQ0FBRSxLQUFLO1lBQ3hCLEtBQUssRUFBRSxNQUFNLENBQUMsU0FBUztZQUN2QixZQUFZLEVBQUUsTUFBTSxDQUFDLFlBQVk7U0FDbEMsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQXpLRCw0QkF5S0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwcmV0dGllclxuICovXG5pbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBkZWNyeXB0LCByZWFkTWVzc2FnZSwgcmVhZFByaXZhdGVLZXksIFNlcmlhbGl6ZWRLZXlQYWlyIH0gZnJvbSAnb3BlbnBncCc7XG5pbXBvcnQgeyBJQmFzZUNvaW4sIEtleWNoYWluc1RyaXBsZXQgfSBmcm9tICcuLi9iYXNlQ29pbic7XG5pbXBvcnQgeyBCaXRHb0Jhc2UgfSBmcm9tICcuLi9iaXRnb0Jhc2UnO1xuaW1wb3J0IHsgQWRkS2V5Y2hhaW5PcHRpb25zLCBLZXljaGFpbiwgS2V5VHlwZSB9IGZyb20gJy4uL2tleWNoYWluJztcbmltcG9ydCB7IEJhY2t1cFByb3ZpZGVyIH0gZnJvbSAnLi4vd2FsbGV0JztcbmltcG9ydCB7IGVuY3J5cHRUZXh0LCBnZXRCaXRnb0dwZ1B1YktleSB9IGZyb20gJy4vb3BlbmdwZ1V0aWxzJztcbmltcG9ydCB7IEludGVudFJlY2lwaWVudCwgUG9wdWxhdGVkSW50ZW50LCBQcmVidWlsZFRyYW5zYWN0aW9uV2l0aEludGVudE9wdGlvbnMgfSBmcm9tICcuL3Rzcy9iYXNlVHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE1wY0tleVNoYXJlIHtcbiAgcHVibGljU2hhcmU6IHN0cmluZztcbiAgcHJpdmF0ZVNoYXJlOiBzdHJpbmc7XG4gIHByaXZhdGVTaGFyZVByb29mPzogc3RyaW5nO1xuICB2c3NQcm9vZj86IHN0cmluZztcbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE1wY1V0aWxzIHtcbiAgcHJvdGVjdGVkIGJpdGdvOiBCaXRHb0Jhc2U7XG4gIHByb3RlY3RlZCBiYXNlQ29pbjogSUJhc2VDb2luO1xuXG4gIGNvbnN0cnVjdG9yKGJpdGdvOiBCaXRHb0Jhc2UsIGJhc2VDb2luOiBJQmFzZUNvaW4pIHtcbiAgICB0aGlzLmJpdGdvID0gYml0Z287XG4gICAgdGhpcy5iYXNlQ29pbiA9IGJhc2VDb2luO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGRlY3J5cHRQcml2YXRlU2hhcmUocHJpdmF0ZVNoYXJlOiBzdHJpbmcsIHVzZXJHcGdLZXk6IFNlcmlhbGl6ZWRLZXlQYWlyPHN0cmluZz4pOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGNvbnN0IHByaXZhdGVTaGFyZU1lc3NhZ2UgPSBhd2FpdCByZWFkTWVzc2FnZSh7XG4gICAgICBhcm1vcmVkTWVzc2FnZTogcHJpdmF0ZVNoYXJlLFxuICAgIH0pO1xuICAgIGNvbnN0IHVzZXJHcGdQcml2YXRlS2V5ID0gYXdhaXQgcmVhZFByaXZhdGVLZXkoeyBhcm1vcmVkS2V5OiB1c2VyR3BnS2V5LnByaXZhdGVLZXkgfSk7XG5cbiAgICBjb25zdCBkZWNyeXB0ZWRQcml2YXRlU2hhcmUgPSAoXG4gICAgICBhd2FpdCBkZWNyeXB0KHtcbiAgICAgICAgbWVzc2FnZTogcHJpdmF0ZVNoYXJlTWVzc2FnZSxcbiAgICAgICAgZGVjcnlwdGlvbktleXM6IFt1c2VyR3BnUHJpdmF0ZUtleV0sXG4gICAgICAgIGZvcm1hdDogJ3V0ZjgnLFxuICAgICAgfSlcbiAgICApLmRhdGE7XG5cbiAgICByZXR1cm4gZGVjcnlwdGVkUHJpdmF0ZVNoYXJlO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGNyZWF0ZUJpdGdvS2V5Y2hhaW5JbldQKFxuICAgIHVzZXJHcGdLZXk6IFNlcmlhbGl6ZWRLZXlQYWlyPHN0cmluZz4sXG4gICAgYmFja3VwR3BnS2V5OiBTZXJpYWxpemVkS2V5UGFpcjxzdHJpbmc+LFxuICAgIHVzZXJLZXlTaGFyZTogTXBjS2V5U2hhcmUsXG4gICAgYmFja3VwS2V5U2hhcmU6IE1wY0tleVNoYXJlLFxuICAgIGtleVR5cGU6IEtleVR5cGUsXG4gICAgZW50ZXJwcmlzZT86IHN0cmluZ1xuICApOiBQcm9taXNlPEtleWNoYWluPiB7XG4gICAgY29uc3QgYml0Z29LZXkgPSBhd2FpdCBnZXRCaXRnb0dwZ1B1YktleSh0aGlzLmJpdGdvKTtcbiAgICBjb25zdCBlbmNVc2VyVG9CaXRHb01lc3NhZ2UgPSBhd2FpdCBlbmNyeXB0VGV4dCh1c2VyS2V5U2hhcmUucHJpdmF0ZVNoYXJlLCBiaXRnb0tleSk7XG4gICAgY29uc3QgZW5jQmFja3VwVG9CaXRHb01lc3NhZ2UgPSBhd2FpdCBlbmNyeXB0VGV4dChiYWNrdXBLZXlTaGFyZS5wcml2YXRlU2hhcmUsIGJpdGdvS2V5KTtcblxuICAgIGNvbnN0IGNyZWF0ZUJpdEdvTVBDUGFyYW1zOiBBZGRLZXljaGFpbk9wdGlvbnMgPSB7XG4gICAgICBrZXlUeXBlLFxuICAgICAgc291cmNlOiAnYml0Z28nLFxuICAgICAga2V5U2hhcmVzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBmcm9tOiAndXNlcicsXG4gICAgICAgICAgdG86ICdiaXRnbycsXG4gICAgICAgICAgcHVibGljU2hhcmU6IHVzZXJLZXlTaGFyZS5wdWJsaWNTaGFyZSxcbiAgICAgICAgICBwcml2YXRlU2hhcmU6IGVuY1VzZXJUb0JpdEdvTWVzc2FnZSxcbiAgICAgICAgICBwcml2YXRlU2hhcmVQcm9vZjogdXNlcktleVNoYXJlLnByaXZhdGVTaGFyZVByb29mLFxuICAgICAgICAgIHZzc1Byb29mOiB1c2VyS2V5U2hhcmUudnNzUHJvb2YsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBmcm9tOiAnYmFja3VwJyxcbiAgICAgICAgICB0bzogJ2JpdGdvJyxcbiAgICAgICAgICBwdWJsaWNTaGFyZTogYmFja3VwS2V5U2hhcmUucHVibGljU2hhcmUsXG4gICAgICAgICAgcHJpdmF0ZVNoYXJlOiBlbmNCYWNrdXBUb0JpdEdvTWVzc2FnZSxcbiAgICAgICAgICBwcml2YXRlU2hhcmVQcm9vZjogYmFja3VwS2V5U2hhcmUucHJpdmF0ZVNoYXJlUHJvb2YsXG4gICAgICAgICAgdnNzUHJvb2Y6IGJhY2t1cEtleVNoYXJlLnZzc1Byb29mLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIHVzZXJHUEdQdWJsaWNLZXk6IHVzZXJHcGdLZXkucHVibGljS2V5LFxuICAgICAgYmFja3VwR1BHUHVibGljS2V5OiBiYWNrdXBHcGdLZXkucHVibGljS2V5LFxuICAgICAgZW50ZXJwcmlzZTogZW50ZXJwcmlzZSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYmFzZUNvaW4ua2V5Y2hhaW5zKCkuYWRkKGNyZWF0ZUJpdEdvTVBDUGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIFVzZXIsIEJhY2t1cCwgYW5kIEJpdEdvIE1QQyBLZXljaGFpbnMuXG4gICAqXG4gICAqIEBwYXJhbSBwYXJhbXMucGFzc3BocmFzZSAtIHBhc3NwaHJhc2UgdXNlZCB0byBlbmNyeXB0IHNpZ25pbmcgbWF0ZXJpYWxzIGNyZWF0ZWQgZm9yIFVzZXIgYW5kIEJhY2t1cFxuICAgKiBAcGFyYW0gcGFyYW1zLmVudGVycHJpc2UgLSBvcHRpb25hbCBlbnRlcnByaXNlIGlkIHRoYXQgd2lsbCBiZSBhdHRhY2hlZCB0byB0aGUgQml0R28gS2V5Y2hhaW5cbiAgICogQHBhcmFtIHBhcmFtcy5vcmlnaW5hbFBhc3Njb2RlRW5jcnlwdGlvbkNvZGUgLSBvcHRpb25hbCBlbmNyeXB0aW9uIGNvZGUgdXNlZCB0byByZXNldCB0aGUgdXNlcidzIHBhc3N3b3JkLCBpZiBhYnNlbnQsIHBhc3N3b3JkIHJlY292ZXJ5IHdpbGwgbm90IHdvcmtcbiAgICovXG4gIGFic3RyYWN0IGNyZWF0ZUtleWNoYWlucyhwYXJhbXM6IHtcbiAgICBwYXNzcGhyYXNlOiBzdHJpbmc7XG4gICAgZW50ZXJwcmlzZT86IHN0cmluZztcbiAgICBvcmlnaW5hbFBhc3Njb2RlRW5jcnlwdGlvbkNvZGU/OiBzdHJpbmc7XG4gICAgYmFja3VwUHJvdmlkZXI/OiBCYWNrdXBQcm92aWRlcjtcbiAgfSk6IFByb21pc2U8S2V5Y2hhaW5zVHJpcGxldD47XG5cbiAgLyoqXG4gICAqIFRoaXMgZnVuY3Rpb24gd291bGQgYmUgcmVzcG9uc2libGUgZm9yIHBvcHVsYXRpbmcgaW50ZW50c1xuICAgKiBiYXNlZCBvbiB0aGUgdHlwZSBvZiBjb2luIC8gc2lnIHNjaGVtZSB0aGUgY29pbiB1c2VzXG4gICAqIEBwYXJhbSB7SUJhc2VDb2lufSBiYXNlQ29pblxuICAgKiBAcGFyYW0ge1ByZWJ1aWxkVHJhbnNhY3Rpb25XaXRoSW50ZW50T3B0aW9uc30gcGFyYW1zXG4gICAqIEByZXR1cm5zIHtSZWNvcmQ8c3RyaW5nLCB1bmtub3duPn1cbiAgICovXG4gIHBvcHVsYXRlSW50ZW50KGJhc2VDb2luOiBJQmFzZUNvaW4sIHBhcmFtczogUHJlYnVpbGRUcmFuc2FjdGlvbldpdGhJbnRlbnRPcHRpb25zKTogUG9wdWxhdGVkSW50ZW50IHtcbiAgICBjb25zdCBjaGFpbiA9IHRoaXMuYmFzZUNvaW4uZ2V0Q2hhaW4oKTtcblxuICAgIGlmICghWydhY2NlbGVyYXRpb24nLCAnZmlsbE5vbmNlJywgJ3RyYW5zZmVyVG9rZW4nXS5pbmNsdWRlcyhwYXJhbXMuaW50ZW50VHlwZSkpIHtcbiAgICAgIGFzc2VydChwYXJhbXMucmVjaXBpZW50cywgYCdyZWNpcGllbnRzJyBpcyBhIHJlcXVpcmVkIHBhcmFtZXRlciBmb3IgJHtwYXJhbXMuaW50ZW50VHlwZX0gaW50ZW50YCk7XG4gICAgfVxuICAgIGNvbnN0IGludGVudFJlY2lwaWVudHMgPSBwYXJhbXMucmVjaXBpZW50cz8ubWFwKChyZWNpcGllbnQpID0+IHtcbiAgICAgIGNvbnN0IGZvcm1hdHRlZFJlY2lwaWVudDogSW50ZW50UmVjaXBpZW50ID0ge1xuICAgICAgICBhZGRyZXNzOiB7IGFkZHJlc3M6IHJlY2lwaWVudC5hZGRyZXNzIH0sXG4gICAgICAgIGFtb3VudDogeyB2YWx1ZTogYCR7cmVjaXBpZW50LmFtb3VudH1gLCBzeW1ib2w6IHJlY2lwaWVudC50b2tlbk5hbWUgPyByZWNpcGllbnQudG9rZW5OYW1lIDogY2hhaW4gfSxcbiAgICAgIH07XG5cbiAgICAgIGlmIChyZWNpcGllbnQuZGF0YSkge1xuICAgICAgICBmb3JtYXR0ZWRSZWNpcGllbnQuZGF0YSA9IHJlY2lwaWVudC5kYXRhO1xuICAgICAgfVxuXG4gICAgICBjb25zdCB7IHRva2VuRGF0YSB9ID0gcmVjaXBpZW50O1xuICAgICAgaWYgKHRva2VuRGF0YSAmJiAodG9rZW5EYXRhLnRva2VuQ29udHJhY3RBZGRyZXNzIHx8IHRva2VuRGF0YS50b2tlbk5hbWUpKSB7XG4gICAgICAgIC8vIHRva2VuIHJlbGF0ZWQgcmVjaXBpZW50IGRhdGEgZ2V0cyB2YWxpZGF0ZWQgaW4gV1BcbiAgICAgICAgaWYgKCEodG9rZW5EYXRhLnRva2VuVHlwZSAmJiB0b2tlbkRhdGEudG9rZW5RdWFudGl0eSkpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgICAndG9rZW4gdHlwZSBhbmQgcXVhbnRpdHkgaXMgcmVxdWlyZWQgdG8gcmVxdWVzdCBhIHRyYW5zYWN0aW9uIHdpdGggaW50ZW50IHRvIHRyYW5zZmVyIGEgdG9rZW4nXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICBmb3JtYXR0ZWRSZWNpcGllbnQudG9rZW5EYXRhID0gdG9rZW5EYXRhO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGZvcm1hdHRlZFJlY2lwaWVudDtcbiAgICB9KTtcblxuICAgIGNvbnN0IGJhc2VJbnRlbnQgPSB7XG4gICAgICBpbnRlbnRUeXBlOiBwYXJhbXMuaW50ZW50VHlwZSxcbiAgICAgIHNlcXVlbmNlSWQ6IHBhcmFtcy5zZXF1ZW5jZUlkLFxuICAgICAgY29tbWVudDogcGFyYW1zLmNvbW1lbnQsXG4gICAgICBub25jZTogcGFyYW1zLm5vbmNlLFxuICAgICAgcmVjaXBpZW50czogaW50ZW50UmVjaXBpZW50cyxcbiAgICB9O1xuXG4gICAgaWYgKGJhc2VDb2luLmdldEZhbWlseSgpID09PSAnZXRoJyB8fCBiYXNlQ29pbi5nZXRGYW1pbHkoKSA9PT0gJ3BvbHlnb24nIHx8IGJhc2VDb2luLmdldEZhbWlseSgpID09PSAnYnNjJykge1xuICAgICAgc3dpdGNoIChwYXJhbXMuaW50ZW50VHlwZSkge1xuICAgICAgICBjYXNlICdwYXltZW50JzpcbiAgICAgICAgY2FzZSAndHJhbnNmZXJUb2tlbic6XG4gICAgICAgIGNhc2UgJ2ZpbGxOb25jZSc6XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLmJhc2VJbnRlbnQsXG4gICAgICAgICAgICBzZWxmU2VuZDogcGFyYW1zLnNlbGZTZW5kLFxuICAgICAgICAgICAgZmVlT3B0aW9uczogcGFyYW1zLmZlZU9wdGlvbnMsXG4gICAgICAgICAgICBob3BQYXJhbXM6IHBhcmFtcy5ob3BQYXJhbXMsXG4gICAgICAgICAgICBpc1RzczogcGFyYW1zLmlzVHNzLFxuICAgICAgICAgICAgbm9uY2U6IHBhcmFtcy5ub25jZSxcbiAgICAgICAgICAgIGN1c3RvZGlhblRyYW5zYWN0aW9uSWQ6IHBhcmFtcy5jdXN0b2RpYW5UcmFuc2FjdGlvbklkLFxuICAgICAgICAgICAgcmVjZWl2ZUFkZHJlc3M6IHBhcmFtcy5yZWNlaXZlQWRkcmVzcyxcbiAgICAgICAgICB9O1xuICAgICAgICBjYXNlICdhY2NlbGVyYXRpb24nOlxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5iYXNlSW50ZW50LFxuICAgICAgICAgICAgdHhpZDogcGFyYW1zLmxvd0ZlZVR4aWQsXG4gICAgICAgICAgICByZWNlaXZlQWRkcmVzczogcGFyYW1zLnJlY2VpdmVBZGRyZXNzLFxuICAgICAgICAgICAgZmVlT3B0aW9uczogcGFyYW1zLmZlZU9wdGlvbnMsXG4gICAgICAgICAgfTtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVuc3VwcG9ydGVkIGludGVudCB0eXBlICR7cGFyYW1zLmludGVudFR5cGV9YCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHBhcmFtcy5mZWVPcHRpb25zICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLmJhc2VJbnRlbnQsXG4gICAgICAgIG1lbW86IHBhcmFtcy5tZW1vPy52YWx1ZSxcbiAgICAgICAgdG9rZW46IHBhcmFtcy50b2tlbk5hbWUsXG4gICAgICAgIGVuYWJsZVRva2VuczogcGFyYW1zLmVuYWJsZVRva2VucyxcbiAgICAgICAgZmVlT3B0aW9uczogcGFyYW1zLmZlZU9wdGlvbnMsXG4gICAgICB9O1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAuLi5iYXNlSW50ZW50LFxuICAgICAgbWVtbzogcGFyYW1zLm1lbW8/LnZhbHVlLFxuICAgICAgdG9rZW46IHBhcmFtcy50b2tlbk5hbWUsXG4gICAgICBlbmFibGVUb2tlbnM6IHBhcmFtcy5lbmFibGVUb2tlbnMsXG4gICAgfTtcbiAgfVxufVxuIl19
165
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXBjVXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vdXRpbHMvbXBjVXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7O0dBRUc7QUFDSCxvREFBNEI7QUFDNUIscUNBQWtGO0FBSWxGLGlEQUFnRTtBQU9oRSxzREFBd0Y7QUFDeEYsaURBQXlEO0FBU3pELE1BQXNCLFFBQVE7SUFJNUIsWUFBWSxLQUFnQixFQUFFLFFBQW1CO1FBQy9DLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzNCLENBQUM7SUFFUyxLQUFLLENBQUMsbUJBQW1CLENBQUMsWUFBb0IsRUFBRSxVQUFxQztRQUM3RixNQUFNLG1CQUFtQixHQUFHLE1BQU0sSUFBQSxxQkFBVyxFQUFDO1lBQzVDLGNBQWMsRUFBRSxZQUFZO1NBQzdCLENBQUMsQ0FBQztRQUNILE1BQU0saUJBQWlCLEdBQUcsTUFBTSxJQUFBLHdCQUFjLEVBQUMsRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFFdEYsTUFBTSxxQkFBcUIsR0FBRyxDQUM1QixNQUFNLElBQUEsaUJBQU8sRUFBQztZQUNaLE9BQU8sRUFBRSxtQkFBbUI7WUFDNUIsY0FBYyxFQUFFLENBQUMsaUJBQWlCLENBQUM7WUFDbkMsTUFBTSxFQUFFLE1BQU07U0FDZixDQUFDLENBQ0gsQ0FBQyxJQUFJLENBQUM7UUFFUCxPQUFPLHFCQUFxQixDQUFDO0lBQy9CLENBQUM7SUFFUyxLQUFLLENBQUMsdUJBQXVCLENBQ3JDLFVBQXFDLEVBQ3JDLFlBQXVDLEVBQ3ZDLFlBQXlCLEVBQ3pCLGNBQTJCLEVBQzNCLE9BQWdCLEVBQ2hCLFVBQW1CO1FBRW5CLE1BQU0sUUFBUSxHQUFHLENBQUMsTUFBTSxJQUFBLGdDQUFpQixFQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUM3RCxJQUFJLElBQUEsOENBQStCLEVBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDekQsdUZBQXVGO1lBQ3ZGLElBQUEsZ0JBQU0sRUFBQyxJQUFBLCtCQUFnQixFQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsRUFBRSxPQUFPLENBQUMsRUFBRSw4QkFBOEIsQ0FBQyxDQUFDO1FBQ3RGLENBQUM7UUFDRCxNQUFNLHFCQUFxQixHQUFHLE1BQU0sSUFBQSwwQkFBVyxFQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDckYsTUFBTSx1QkFBdUIsR0FBRyxNQUFNLElBQUEsMEJBQVcsRUFBQyxjQUFjLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRXpGLE1BQU0sb0JBQW9CLEdBQXVCO1lBQy9DLE9BQU87WUFDUCxNQUFNLEVBQUUsT0FBTztZQUNmLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxJQUFJLEVBQUUsTUFBTTtvQkFDWixFQUFFLEVBQUUsT0FBTztvQkFDWCxXQUFXLEVBQUUsWUFBWSxDQUFDLFdBQVc7b0JBQ3JDLFlBQVksRUFBRSxxQkFBcUI7b0JBQ25DLGlCQUFpQixFQUFFLFlBQVksQ0FBQyxpQkFBaUI7b0JBQ2pELFFBQVEsRUFBRSxZQUFZLENBQUMsUUFBUTtpQkFDaEM7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLFFBQVE7b0JBQ2QsRUFBRSxFQUFFLE9BQU87b0JBQ1gsV0FBVyxFQUFFLGNBQWMsQ0FBQyxXQUFXO29CQUN2QyxZQUFZLEVBQUUsdUJBQXVCO29CQUNyQyxpQkFBaUIsRUFBRSxjQUFjLENBQUMsaUJBQWlCO29CQUNuRCxRQUFRLEVBQUUsY0FBYyxDQUFDLFFBQVE7aUJBQ2xDO2FBQ0Y7WUFDRCxnQkFBZ0IsRUFBRSxVQUFVLENBQUMsU0FBUztZQUN0QyxrQkFBa0IsRUFBRSxZQUFZLENBQUMsU0FBUztZQUMxQyxVQUFVLEVBQUUsVUFBVTtTQUN2QixDQUFDO1FBRUYsT0FBTyxNQUFNLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDbkUsQ0FBQztJQWVEOzs7Ozs7T0FNRztJQUNILGNBQWMsQ0FBQyxRQUFtQixFQUFFLE1BQTRDO1FBQzlFLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFdkMsSUFBSSxDQUFDLENBQUMsY0FBYyxFQUFFLFdBQVcsRUFBRSxlQUFlLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDaEYsSUFBQSxnQkFBTSxFQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsNENBQTRDLE1BQU0sQ0FBQyxVQUFVLFNBQVMsQ0FBQyxDQUFDO1FBQ3BHLENBQUM7UUFDRCxNQUFNLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDNUQsTUFBTSxrQkFBa0IsR0FBb0I7Z0JBQzFDLE9BQU8sRUFBRSxFQUFFLE9BQU8sRUFBRSxTQUFTLENBQUMsT0FBTyxFQUFFO2dCQUN2QyxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsR0FBRyxTQUFTLENBQUMsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRTthQUNwRyxDQUFDO1lBRUYsSUFBSSxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ25CLGtCQUFrQixDQUFDLElBQUksR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDO1lBQzNDLENBQUM7WUFFRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsU0FBUyxDQUFDO1lBQ2hDLElBQUksU0FBUyxJQUFJLENBQUMsU0FBUyxDQUFDLG9CQUFvQixJQUFJLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO2dCQUN6RSxvREFBb0Q7Z0JBQ3BELElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxTQUFTLElBQUksU0FBUyxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7b0JBQ3RELE1BQU0sSUFBSSxLQUFLLENBQ2IsOEZBQThGLENBQy9GLENBQUM7Z0JBQ0osQ0FBQztnQkFDRCxTQUFTLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDO2dCQUM3RCxJQUFJLFNBQVMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztvQkFDeEIsa0JBQWtCLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDO2dCQUN6RCxDQUFDO2dCQUNELGtCQUFrQixDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7WUFDM0MsQ0FBQztZQUNELE9BQU8sa0JBQWtCLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLFVBQVUsR0FBb0I7WUFDbEMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxVQUFVO1lBQzdCLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVTtZQUM3QixPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU87WUFDdkIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLO1lBQ25CLFVBQVUsRUFBRSxnQkFBZ0I7U0FDN0IsQ0FBQztRQUVGLElBQUksUUFBUSxDQUFDLFNBQVMsRUFBRSxLQUFLLEtBQUssSUFBSSxRQUFRLENBQUMsU0FBUyxFQUFFLEtBQUssU0FBUyxJQUFJLFFBQVEsQ0FBQyxTQUFTLEVBQUUsS0FBSyxLQUFLLEVBQUUsQ0FBQztZQUMzRyxRQUFRLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDMUIsS0FBSyxTQUFTLENBQUM7Z0JBQ2YsS0FBSyxlQUFlLENBQUM7Z0JBQ3JCLEtBQUssV0FBVztvQkFDZCxPQUFPO3dCQUNMLEdBQUcsVUFBVTt3QkFDYixRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVE7d0JBQ3pCLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVTt3QkFDN0IsU0FBUyxFQUFFLE1BQU0sQ0FBQyxTQUFTO3dCQUMzQixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7d0JBQ25CLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSzt3QkFDbkIsc0JBQXNCLEVBQUUsTUFBTSxDQUFDLHNCQUFzQjt3QkFDckQsY0FBYyxFQUFFLE1BQU0sQ0FBQyxjQUFjO3FCQUN0QyxDQUFDO2dCQUNKLEtBQUssY0FBYztvQkFDakIsT0FBTzt3QkFDTCxHQUFHLFVBQVU7d0JBQ2IsSUFBSSxFQUFFLE1BQU0sQ0FBQyxVQUFVO3dCQUN2QixjQUFjLEVBQUUsTUFBTSxDQUFDLGNBQWM7d0JBQ3JDLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVTtxQkFDOUIsQ0FBQztnQkFDSjtvQkFDRSxNQUFNLElBQUksS0FBSyxDQUFDLDJCQUEyQixNQUFNLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztZQUNwRSxDQUFDO1FBQ0gsQ0FBQztRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsNkJBQTZCLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRWhFLElBQUksTUFBTSxDQUFDLFVBQVUsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNwQyxPQUFPO2dCQUNMLEdBQUcsVUFBVTtnQkFDYixJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUksRUFBRSxLQUFLO2dCQUN4QixLQUFLLEVBQUUsTUFBTSxDQUFDLFNBQVM7Z0JBQ3ZCLFlBQVksRUFBRSxNQUFNLENBQUMsWUFBWTtnQkFDakMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxVQUFVO2FBQzlCLENBQUM7UUFDSixDQUFDO1FBRUQsT0FBTztZQUNMLEdBQUcsVUFBVTtZQUNiLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxFQUFFLEtBQUs7WUFDeEIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxTQUFTO1lBQ3ZCLFlBQVksRUFBRSxNQUFNLENBQUMsWUFBWTtTQUNsQyxDQUFDO0lBQ0osQ0FBQztJQUVELFlBQVksQ0FBQyxRQUFtQixFQUFFLFNBQXVDO1FBQ3ZFLElBQUksU0FBUyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3hCLE9BQU8sU0FBUyxDQUFDLFNBQVMsQ0FBQztRQUM3QixDQUFDO1FBQ0QsTUFBTSxhQUFhLEdBQUcsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEtBQUsscUJBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzNGLE1BQU0sZUFBZSxHQUFHLEdBQUcsYUFBYSxHQUFHLFFBQVEsQ0FBQyxTQUFTLEVBQUUsSUFBSSxTQUFTLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUNwRyxJQUFJLGVBQUssQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQztZQUMvQixNQUFNLFlBQVksR0FBRyxlQUFLLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQ2hELFNBQVMsQ0FBQyxTQUFTLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQztRQUMxQyxDQUFDO1FBQ0QsT0FBTyxTQUFTLENBQUMsU0FBUyxDQUFDO0lBQzdCLENBQUM7Q0FDRjtBQS9MRCw0QkErTEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwcmV0dGllclxuICovXG5pbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBkZWNyeXB0LCByZWFkTWVzc2FnZSwgcmVhZFByaXZhdGVLZXksIFNlcmlhbGl6ZWRLZXlQYWlyIH0gZnJvbSAnb3BlbnBncCc7XG5pbXBvcnQgeyBJQmFzZUNvaW4sIEtleWNoYWluc1RyaXBsZXQgfSBmcm9tICcuLi9iYXNlQ29pbic7XG5pbXBvcnQgeyBCaXRHb0Jhc2UgfSBmcm9tICcuLi9iaXRnb0Jhc2UnO1xuaW1wb3J0IHsgQWRkS2V5Y2hhaW5PcHRpb25zLCBLZXljaGFpbiwgS2V5VHlwZSB9IGZyb20gJy4uL2tleWNoYWluJztcbmltcG9ydCB7IGVuY3J5cHRUZXh0LCBnZXRCaXRnb0dwZ1B1YktleSB9IGZyb20gJy4vb3BlbmdwZ1V0aWxzJztcbmltcG9ydCB7XG4gIEludGVudFJlY2lwaWVudCxcbiAgUG9wdWxhdGVkSW50ZW50LFxuICBQcmVidWlsZFRyYW5zYWN0aW9uV2l0aEludGVudE9wdGlvbnMsXG4gIFRva2VuVHJhbnNmZXJSZWNpcGllbnRQYXJhbXMsXG59IGZyb20gJy4vdHNzL2Jhc2VUeXBlcyc7XG5pbXBvcnQgeyBlbnZSZXF1aXJlc0JpdGdvUHViR3BnS2V5Q29uZmlnLCBpc0JpdGdvTXBjUHViS2V5IH0gZnJvbSAnLi4vdHNzL2JpdGdvUHViS2V5cyc7XG5pbXBvcnQgeyBjb2lucywgTmV0d29ya1R5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcblxuZXhwb3J0IGludGVyZmFjZSBNcGNLZXlTaGFyZSB7XG4gIHB1YmxpY1NoYXJlOiBzdHJpbmc7XG4gIHByaXZhdGVTaGFyZTogc3RyaW5nO1xuICBwcml2YXRlU2hhcmVQcm9vZj86IHN0cmluZztcbiAgdnNzUHJvb2Y/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBNcGNVdGlscyB7XG4gIHByb3RlY3RlZCBiaXRnbzogQml0R29CYXNlO1xuICBwcm90ZWN0ZWQgYmFzZUNvaW46IElCYXNlQ29pbjtcblxuICBjb25zdHJ1Y3RvcihiaXRnbzogQml0R29CYXNlLCBiYXNlQ29pbjogSUJhc2VDb2luKSB7XG4gICAgdGhpcy5iaXRnbyA9IGJpdGdvO1xuICAgIHRoaXMuYmFzZUNvaW4gPSBiYXNlQ29pbjtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBkZWNyeXB0UHJpdmF0ZVNoYXJlKHByaXZhdGVTaGFyZTogc3RyaW5nLCB1c2VyR3BnS2V5OiBTZXJpYWxpemVkS2V5UGFpcjxzdHJpbmc+KTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCBwcml2YXRlU2hhcmVNZXNzYWdlID0gYXdhaXQgcmVhZE1lc3NhZ2Uoe1xuICAgICAgYXJtb3JlZE1lc3NhZ2U6IHByaXZhdGVTaGFyZSxcbiAgICB9KTtcbiAgICBjb25zdCB1c2VyR3BnUHJpdmF0ZUtleSA9IGF3YWl0IHJlYWRQcml2YXRlS2V5KHsgYXJtb3JlZEtleTogdXNlckdwZ0tleS5wcml2YXRlS2V5IH0pO1xuXG4gICAgY29uc3QgZGVjcnlwdGVkUHJpdmF0ZVNoYXJlID0gKFxuICAgICAgYXdhaXQgZGVjcnlwdCh7XG4gICAgICAgIG1lc3NhZ2U6IHByaXZhdGVTaGFyZU1lc3NhZ2UsXG4gICAgICAgIGRlY3J5cHRpb25LZXlzOiBbdXNlckdwZ1ByaXZhdGVLZXldLFxuICAgICAgICBmb3JtYXQ6ICd1dGY4JyxcbiAgICAgIH0pXG4gICAgKS5kYXRhO1xuXG4gICAgcmV0dXJuIGRlY3J5cHRlZFByaXZhdGVTaGFyZTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBjcmVhdGVCaXRnb0tleWNoYWluSW5XUChcbiAgICB1c2VyR3BnS2V5OiBTZXJpYWxpemVkS2V5UGFpcjxzdHJpbmc+LFxuICAgIGJhY2t1cEdwZ0tleTogU2VyaWFsaXplZEtleVBhaXI8c3RyaW5nPixcbiAgICB1c2VyS2V5U2hhcmU6IE1wY0tleVNoYXJlLFxuICAgIGJhY2t1cEtleVNoYXJlOiBNcGNLZXlTaGFyZSxcbiAgICBrZXlUeXBlOiBLZXlUeXBlLFxuICAgIGVudGVycHJpc2U/OiBzdHJpbmdcbiAgKTogUHJvbWlzZTxLZXljaGFpbj4ge1xuICAgIGNvbnN0IGJpdGdvS2V5ID0gKGF3YWl0IGdldEJpdGdvR3BnUHViS2V5KHRoaXMuYml0Z28pKS5tcGNWMTtcbiAgICBpZiAoZW52UmVxdWlyZXNCaXRnb1B1YkdwZ0tleUNvbmZpZyh0aGlzLmJpdGdvLmdldEVudigpKSkge1xuICAgICAgLy8gRW5zdXJlIHRoZSBwdWJsaWMga2V5IGlzIG9uZSBvZiB0aGUgZXhwZWN0ZWQgQml0R28gcHVibGljIGtleXMgd2hlbiBpbiB0ZXN0IG9yIHByb2QuXG4gICAgICBhc3NlcnQoaXNCaXRnb01wY1B1YktleShiaXRnb0tleS5hcm1vcigpLCAnbXBjdjEnKSwgJ0ludmFsaWQgQml0R28gR1BHIHB1YmxpYyBrZXknKTtcbiAgICB9XG4gICAgY29uc3QgZW5jVXNlclRvQml0R29NZXNzYWdlID0gYXdhaXQgZW5jcnlwdFRleHQodXNlcktleVNoYXJlLnByaXZhdGVTaGFyZSwgYml0Z29LZXkpO1xuICAgIGNvbnN0IGVuY0JhY2t1cFRvQml0R29NZXNzYWdlID0gYXdhaXQgZW5jcnlwdFRleHQoYmFja3VwS2V5U2hhcmUucHJpdmF0ZVNoYXJlLCBiaXRnb0tleSk7XG5cbiAgICBjb25zdCBjcmVhdGVCaXRHb01QQ1BhcmFtczogQWRkS2V5Y2hhaW5PcHRpb25zID0ge1xuICAgICAga2V5VHlwZSxcbiAgICAgIHNvdXJjZTogJ2JpdGdvJyxcbiAgICAgIGtleVNoYXJlczogW1xuICAgICAgICB7XG4gICAgICAgICAgZnJvbTogJ3VzZXInLFxuICAgICAgICAgIHRvOiAnYml0Z28nLFxuICAgICAgICAgIHB1YmxpY1NoYXJlOiB1c2VyS2V5U2hhcmUucHVibGljU2hhcmUsXG4gICAgICAgICAgcHJpdmF0ZVNoYXJlOiBlbmNVc2VyVG9CaXRHb01lc3NhZ2UsXG4gICAgICAgICAgcHJpdmF0ZVNoYXJlUHJvb2Y6IHVzZXJLZXlTaGFyZS5wcml2YXRlU2hhcmVQcm9vZixcbiAgICAgICAgICB2c3NQcm9vZjogdXNlcktleVNoYXJlLnZzc1Byb29mLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgZnJvbTogJ2JhY2t1cCcsXG4gICAgICAgICAgdG86ICdiaXRnbycsXG4gICAgICAgICAgcHVibGljU2hhcmU6IGJhY2t1cEtleVNoYXJlLnB1YmxpY1NoYXJlLFxuICAgICAgICAgIHByaXZhdGVTaGFyZTogZW5jQmFja3VwVG9CaXRHb01lc3NhZ2UsXG4gICAgICAgICAgcHJpdmF0ZVNoYXJlUHJvb2Y6IGJhY2t1cEtleVNoYXJlLnByaXZhdGVTaGFyZVByb29mLFxuICAgICAgICAgIHZzc1Byb29mOiBiYWNrdXBLZXlTaGFyZS52c3NQcm9vZixcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICB1c2VyR1BHUHVibGljS2V5OiB1c2VyR3BnS2V5LnB1YmxpY0tleSxcbiAgICAgIGJhY2t1cEdQR1B1YmxpY0tleTogYmFja3VwR3BnS2V5LnB1YmxpY0tleSxcbiAgICAgIGVudGVycHJpc2U6IGVudGVycHJpc2UsXG4gICAgfTtcblxuICAgIHJldHVybiBhd2FpdCB0aGlzLmJhc2VDb2luLmtleWNoYWlucygpLmFkZChjcmVhdGVCaXRHb01QQ1BhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBVc2VyLCBCYWNrdXAsIGFuZCBCaXRHbyBNUEMgS2V5Y2hhaW5zLlxuICAgKlxuICAgKiBAcGFyYW0gcGFyYW1zLnBhc3NwaHJhc2UgLSBwYXNzcGhyYXNlIHVzZWQgdG8gZW5jcnlwdCBzaWduaW5nIG1hdGVyaWFscyBjcmVhdGVkIGZvciBVc2VyIGFuZCBCYWNrdXBcbiAgICogQHBhcmFtIHBhcmFtcy5lbnRlcnByaXNlIC0gb3B0aW9uYWwgZW50ZXJwcmlzZSBpZCB0aGF0IHdpbGwgYmUgYXR0YWNoZWQgdG8gdGhlIEJpdEdvIEtleWNoYWluXG4gICAqIEBwYXJhbSBwYXJhbXMub3JpZ2luYWxQYXNzY29kZUVuY3J5cHRpb25Db2RlIC0gb3B0aW9uYWwgZW5jcnlwdGlvbiBjb2RlIHVzZWQgdG8gcmVzZXQgdGhlIHVzZXIncyBwYXNzd29yZCwgaWYgYWJzZW50LCBwYXNzd29yZCByZWNvdmVyeSB3aWxsIG5vdCB3b3JrXG4gICAqL1xuICBhYnN0cmFjdCBjcmVhdGVLZXljaGFpbnMocGFyYW1zOiB7XG4gICAgcGFzc3BocmFzZTogc3RyaW5nO1xuICAgIGVudGVycHJpc2U/OiBzdHJpbmc7XG4gICAgb3JpZ2luYWxQYXNzY29kZUVuY3J5cHRpb25Db2RlPzogc3RyaW5nO1xuICB9KTogUHJvbWlzZTxLZXljaGFpbnNUcmlwbGV0PjtcblxuICAvKipcbiAgICogVGhpcyBmdW5jdGlvbiB3b3VsZCBiZSByZXNwb25zaWJsZSBmb3IgcG9wdWxhdGluZyBpbnRlbnRzXG4gICAqIGJhc2VkIG9uIHRoZSB0eXBlIG9mIGNvaW4gLyBzaWcgc2NoZW1lIHRoZSBjb2luIHVzZXNcbiAgICogQHBhcmFtIHtJQmFzZUNvaW59IGJhc2VDb2luXG4gICAqIEBwYXJhbSB7UHJlYnVpbGRUcmFuc2FjdGlvbldpdGhJbnRlbnRPcHRpb25zfSBwYXJhbXNcbiAgICogQHJldHVybnMge1JlY29yZDxzdHJpbmcsIHVua25vd24+fVxuICAgKi9cbiAgcG9wdWxhdGVJbnRlbnQoYmFzZUNvaW46IElCYXNlQ29pbiwgcGFyYW1zOiBQcmVidWlsZFRyYW5zYWN0aW9uV2l0aEludGVudE9wdGlvbnMpOiBQb3B1bGF0ZWRJbnRlbnQge1xuICAgIGNvbnN0IGNoYWluID0gdGhpcy5iYXNlQ29pbi5nZXRDaGFpbigpO1xuXG4gICAgaWYgKCFbJ2FjY2VsZXJhdGlvbicsICdmaWxsTm9uY2UnLCAndHJhbnNmZXJUb2tlbiddLmluY2x1ZGVzKHBhcmFtcy5pbnRlbnRUeXBlKSkge1xuICAgICAgYXNzZXJ0KHBhcmFtcy5yZWNpcGllbnRzLCBgJ3JlY2lwaWVudHMnIGlzIGEgcmVxdWlyZWQgcGFyYW1ldGVyIGZvciAke3BhcmFtcy5pbnRlbnRUeXBlfSBpbnRlbnRgKTtcbiAgICB9XG4gICAgY29uc3QgaW50ZW50UmVjaXBpZW50cyA9IHBhcmFtcy5yZWNpcGllbnRzPy5tYXAoKHJlY2lwaWVudCkgPT4ge1xuICAgICAgY29uc3QgZm9ybWF0dGVkUmVjaXBpZW50OiBJbnRlbnRSZWNpcGllbnQgPSB7XG4gICAgICAgIGFkZHJlc3M6IHsgYWRkcmVzczogcmVjaXBpZW50LmFkZHJlc3MgfSxcbiAgICAgICAgYW1vdW50OiB7IHZhbHVlOiBgJHtyZWNpcGllbnQuYW1vdW50fWAsIHN5bWJvbDogcmVjaXBpZW50LnRva2VuTmFtZSA/IHJlY2lwaWVudC50b2tlbk5hbWUgOiBjaGFpbiB9LFxuICAgICAgfTtcblxuICAgICAgaWYgKHJlY2lwaWVudC5kYXRhKSB7XG4gICAgICAgIGZvcm1hdHRlZFJlY2lwaWVudC5kYXRhID0gcmVjaXBpZW50LmRhdGE7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHsgdG9rZW5EYXRhIH0gPSByZWNpcGllbnQ7XG4gICAgICBpZiAodG9rZW5EYXRhICYmICh0b2tlbkRhdGEudG9rZW5Db250cmFjdEFkZHJlc3MgfHwgdG9rZW5EYXRhLnRva2VuTmFtZSkpIHtcbiAgICAgICAgLy8gdG9rZW4gcmVsYXRlZCByZWNpcGllbnQgZGF0YSBnZXRzIHZhbGlkYXRlZCBpbiBXUFxuICAgICAgICBpZiAoISh0b2tlbkRhdGEudG9rZW5UeXBlICYmIHRva2VuRGF0YS50b2tlblF1YW50aXR5KSkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICd0b2tlbiB0eXBlIGFuZCBxdWFudGl0eSBpcyByZXF1aXJlZCB0byByZXF1ZXN0IGEgdHJhbnNhY3Rpb24gd2l0aCBpbnRlbnQgdG8gdHJhbnNmZXIgYSB0b2tlbidcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIHRva2VuRGF0YS50b2tlbk5hbWUgPSB0aGlzLmdldFRva2VuTmFtZShiYXNlQ29pbiwgdG9rZW5EYXRhKTtcbiAgICAgICAgaWYgKHRva2VuRGF0YS50b2tlbk5hbWUpIHtcbiAgICAgICAgICBmb3JtYXR0ZWRSZWNpcGllbnQuYW1vdW50LnN5bWJvbCA9IHRva2VuRGF0YS50b2tlbk5hbWU7XG4gICAgICAgIH1cbiAgICAgICAgZm9ybWF0dGVkUmVjaXBpZW50LnRva2VuRGF0YSA9IHRva2VuRGF0YTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBmb3JtYXR0ZWRSZWNpcGllbnQ7XG4gICAgfSk7XG5cbiAgICBjb25zdCBiYXNlSW50ZW50OiBQb3B1bGF0ZWRJbnRlbnQgPSB7XG4gICAgICBpbnRlbnRUeXBlOiBwYXJhbXMuaW50ZW50VHlwZSxcbiAgICAgIHNlcXVlbmNlSWQ6IHBhcmFtcy5zZXF1ZW5jZUlkLFxuICAgICAgY29tbWVudDogcGFyYW1zLmNvbW1lbnQsXG4gICAgICBub25jZTogcGFyYW1zLm5vbmNlLFxuICAgICAgcmVjaXBpZW50czogaW50ZW50UmVjaXBpZW50cyxcbiAgICB9O1xuXG4gICAgaWYgKGJhc2VDb2luLmdldEZhbWlseSgpID09PSAnZXRoJyB8fCBiYXNlQ29pbi5nZXRGYW1pbHkoKSA9PT0gJ3BvbHlnb24nIHx8IGJhc2VDb2luLmdldEZhbWlseSgpID09PSAnYnNjJykge1xuICAgICAgc3dpdGNoIChwYXJhbXMuaW50ZW50VHlwZSkge1xuICAgICAgICBjYXNlICdwYXltZW50JzpcbiAgICAgICAgY2FzZSAndHJhbnNmZXJUb2tlbic6XG4gICAgICAgIGNhc2UgJ2ZpbGxOb25jZSc6XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLmJhc2VJbnRlbnQsXG4gICAgICAgICAgICBzZWxmU2VuZDogcGFyYW1zLnNlbGZTZW5kLFxuICAgICAgICAgICAgZmVlT3B0aW9uczogcGFyYW1zLmZlZU9wdGlvbnMsXG4gICAgICAgICAgICBob3BQYXJhbXM6IHBhcmFtcy5ob3BQYXJhbXMsXG4gICAgICAgICAgICBpc1RzczogcGFyYW1zLmlzVHNzLFxuICAgICAgICAgICAgbm9uY2U6IHBhcmFtcy5ub25jZSxcbiAgICAgICAgICAgIGN1c3RvZGlhblRyYW5zYWN0aW9uSWQ6IHBhcmFtcy5jdXN0b2RpYW5UcmFuc2FjdGlvbklkLFxuICAgICAgICAgICAgcmVjZWl2ZUFkZHJlc3M6IHBhcmFtcy5yZWNlaXZlQWRkcmVzcyxcbiAgICAgICAgICB9O1xuICAgICAgICBjYXNlICdhY2NlbGVyYXRpb24nOlxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5iYXNlSW50ZW50LFxuICAgICAgICAgICAgdHhpZDogcGFyYW1zLmxvd0ZlZVR4aWQsXG4gICAgICAgICAgICByZWNlaXZlQWRkcmVzczogcGFyYW1zLnJlY2VpdmVBZGRyZXNzLFxuICAgICAgICAgICAgZmVlT3B0aW9uczogcGFyYW1zLmZlZU9wdGlvbnMsXG4gICAgICAgICAgfTtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVuc3VwcG9ydGVkIGludGVudCB0eXBlICR7cGFyYW1zLmludGVudFR5cGV9YCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5iYXNlQ29pbi5zZXRDb2luU3BlY2lmaWNGaWVsZHNJbkludGVudChiYXNlSW50ZW50LCBwYXJhbXMpO1xuXG4gICAgaWYgKHBhcmFtcy5mZWVPcHRpb25zICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLmJhc2VJbnRlbnQsXG4gICAgICAgIG1lbW86IHBhcmFtcy5tZW1vPy52YWx1ZSxcbiAgICAgICAgdG9rZW46IHBhcmFtcy50b2tlbk5hbWUsXG4gICAgICAgIGVuYWJsZVRva2VuczogcGFyYW1zLmVuYWJsZVRva2VucyxcbiAgICAgICAgZmVlT3B0aW9uczogcGFyYW1zLmZlZU9wdGlvbnMsXG4gICAgICB9O1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAuLi5iYXNlSW50ZW50LFxuICAgICAgbWVtbzogcGFyYW1zLm1lbW8/LnZhbHVlLFxuICAgICAgdG9rZW46IHBhcmFtcy50b2tlbk5hbWUsXG4gICAgICBlbmFibGVUb2tlbnM6IHBhcmFtcy5lbmFibGVUb2tlbnMsXG4gICAgfTtcbiAgfVxuXG4gIGdldFRva2VuTmFtZShiYXNlQ29pbjogSUJhc2VDb2luLCB0b2tlbkRhdGE6IFRva2VuVHJhbnNmZXJSZWNpcGllbnRQYXJhbXMpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIGlmICh0b2tlbkRhdGEudG9rZW5OYW1lKSB7XG4gICAgICByZXR1cm4gdG9rZW5EYXRhLnRva2VuTmFtZTtcbiAgICB9XG4gICAgY29uc3QgbmV0d29ya1ByZWZpeCA9IGJhc2VDb2luLmdldENvbmZpZygpLm5ldHdvcmsudHlwZSA9PT0gTmV0d29ya1R5cGUuVEVTVE5FVCA/ICd0JyA6ICcnO1xuICAgIGNvbnN0IHRva2VuU3RhdGljc0tleSA9IGAke25ldHdvcmtQcmVmaXh9JHtiYXNlQ29pbi5nZXRGYW1pbHkoKX06JHt0b2tlbkRhdGEudG9rZW5Db250cmFjdEFkZHJlc3N9YDtcbiAgICBpZiAoY29pbnMuaGFzKHRva2VuU3RhdGljc0tleSkpIHtcbiAgICAgIGNvbnN0IHRva2VuU3RhdGljcyA9IGNvaW5zLmdldCh0b2tlblN0YXRpY3NLZXkpO1xuICAgICAgdG9rZW5EYXRhLnRva2VuTmFtZSA9IHRva2VuU3RhdGljcy5uYW1lO1xuICAgIH1cbiAgICByZXR1cm4gdG9rZW5EYXRhLnRva2VuTmFtZTtcbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export declare function notEmpty<TValue>(value: TValue | null | undefined): value is TValue;
2
+ //# sourceMappingURL=notEmpty.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notEmpty.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/utils/notEmpty.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,IAAI,MAAM,CAElF"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.notEmpty = notEmpty;
4
+ function notEmpty(value) {
5
+ return !(value === null || value === undefined);
6
+ }
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90RW1wdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vdXRpbHMvbm90RW1wdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSw0QkFFQztBQUZELFNBQWdCLFFBQVEsQ0FBUyxLQUFnQztJQUMvRCxPQUFPLENBQUMsQ0FBQyxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxTQUFTLENBQUMsQ0FBQztBQUNsRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIG5vdEVtcHR5PFRWYWx1ZT4odmFsdWU6IFRWYWx1ZSB8IG51bGwgfCB1bmRlZmluZWQpOiB2YWx1ZSBpcyBUVmFsdWUge1xuICByZXR1cm4gISh2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkKTtcbn1cbiJdfQ==