@bitgo-beta/sdk-coin-sol 2.2.3-alpha.463 → 2.2.3-alpha.465

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 (371) hide show
  1. package/dist/cjs/src/bigint-buffer-guard.d.ts.map +1 -0
  2. package/dist/cjs/src/bigint-buffer-guard.js +29 -0
  3. package/dist/cjs/src/config/token2022StaticConfig.d.ts.map +1 -0
  4. package/dist/cjs/src/config/token2022StaticConfig.js +50 -0
  5. package/dist/cjs/src/index.d.ts.map +1 -0
  6. package/dist/{src → cjs/src}/index.js +1 -1
  7. package/dist/cjs/src/lib/ataInitializationBuilder.d.ts.map +1 -0
  8. package/dist/cjs/src/lib/ataInitializationBuilder.js +196 -0
  9. package/dist/cjs/src/lib/closeAtaBuilder.d.ts.map +1 -0
  10. package/dist/cjs/src/lib/closeAtaBuilder.js +69 -0
  11. package/dist/cjs/src/lib/constants.d.ts.map +1 -0
  12. package/dist/cjs/src/lib/constants.js +189 -0
  13. package/dist/cjs/src/lib/customInstructionBuilder.d.ts.map +1 -0
  14. package/dist/cjs/src/lib/customInstructionBuilder.js +289 -0
  15. package/dist/cjs/src/lib/iface.d.ts.map +1 -0
  16. package/dist/cjs/src/lib/iface.js +7 -0
  17. package/dist/cjs/src/lib/index.d.ts.map +1 -0
  18. package/dist/{src → cjs/src}/lib/index.js +1 -1
  19. package/dist/cjs/src/lib/instructionParamsFactory.d.ts.map +1 -0
  20. package/dist/cjs/src/lib/instructionParamsFactory.js +1036 -0
  21. package/dist/cjs/src/lib/jitoStakePoolOperations.d.ts.map +1 -0
  22. package/dist/cjs/src/lib/jitoStakePoolOperations.js +200 -0
  23. package/dist/cjs/src/lib/keyPair.d.ts.map +1 -0
  24. package/dist/cjs/src/lib/keyPair.js +63 -0
  25. package/dist/cjs/src/lib/messages/index.d.ts.map +1 -0
  26. package/dist/{src → cjs/src}/lib/messages/index.js +1 -1
  27. package/dist/cjs/src/lib/messages/messageBuilderFactory.d.ts.map +1 -0
  28. package/dist/cjs/src/lib/messages/messageBuilderFactory.js +19 -0
  29. package/dist/cjs/src/lib/solInstructionFactory.d.ts.map +1 -0
  30. package/dist/cjs/src/lib/solInstructionFactory.js +572 -0
  31. package/dist/cjs/src/lib/stakingActivateBuilder.d.ts.map +1 -0
  32. package/dist/cjs/src/lib/stakingActivateBuilder.js +120 -0
  33. package/dist/cjs/src/lib/stakingAuthorizeBuilder.d.ts.map +1 -0
  34. package/dist/cjs/src/lib/stakingAuthorizeBuilder.js +89 -0
  35. package/dist/cjs/src/lib/stakingDeactivateBuilder.d.ts.map +1 -0
  36. package/dist/cjs/src/lib/stakingDeactivateBuilder.js +208 -0
  37. package/dist/cjs/src/lib/stakingDelegateBuilder.d.ts.map +1 -0
  38. package/dist/cjs/src/lib/stakingDelegateBuilder.js +120 -0
  39. package/dist/cjs/src/lib/stakingRawMsgAuthorizeBuilder.d.ts.map +1 -0
  40. package/dist/cjs/src/lib/stakingRawMsgAuthorizeBuilder.js +110 -0
  41. package/dist/cjs/src/lib/stakingWithdrawBuilder.d.ts.map +1 -0
  42. package/dist/cjs/src/lib/stakingWithdrawBuilder.js +78 -0
  43. package/dist/cjs/src/lib/token2022Config.d.ts.map +1 -0
  44. package/dist/cjs/src/lib/token2022Config.js +27 -0
  45. package/dist/cjs/src/lib/tokenTransferBuilder.d.ts.map +1 -0
  46. package/dist/cjs/src/lib/tokenTransferBuilder.js +188 -0
  47. package/dist/cjs/src/lib/transaction.d.ts.map +1 -0
  48. package/dist/cjs/src/lib/transaction.js +595 -0
  49. package/dist/cjs/src/lib/transactionBuilder.d.ts.map +1 -0
  50. package/dist/cjs/src/lib/transactionBuilder.js +380 -0
  51. package/dist/cjs/src/lib/transactionBuilderFactory.d.ts.map +1 -0
  52. package/dist/cjs/src/lib/transactionBuilderFactory.js +202 -0
  53. package/dist/cjs/src/lib/transferBuilder.d.ts.map +1 -0
  54. package/dist/cjs/src/lib/transferBuilder.js +70 -0
  55. package/dist/cjs/src/lib/transferBuilderV2.d.ts.map +1 -0
  56. package/dist/cjs/src/lib/transferBuilderV2.js +210 -0
  57. package/dist/cjs/src/lib/utils.d.ts.map +1 -0
  58. package/dist/cjs/src/lib/utils.js +589 -0
  59. package/dist/cjs/src/lib/walletInitializationBuilder.d.ts.map +1 -0
  60. package/dist/cjs/src/lib/walletInitializationBuilder.js +71 -0
  61. package/dist/cjs/src/register.d.ts.map +1 -0
  62. package/dist/cjs/src/register.js +15 -0
  63. package/dist/cjs/src/sol.d.ts.map +1 -0
  64. package/dist/cjs/src/sol.js +1329 -0
  65. package/dist/cjs/src/solToken.d.ts.map +1 -0
  66. package/dist/cjs/src/solToken.js +69 -0
  67. package/dist/cjs/src/tsol.d.ts.map +1 -0
  68. package/dist/cjs/src/tsol.js +24 -0
  69. package/dist/{test → cjs/test}/fixtures/sol.d.ts.map +1 -1
  70. package/dist/cjs/test/fixtures/sol.js +1433 -0
  71. package/dist/{test → cjs/test}/resources/sol.d.ts +27 -27
  72. package/dist/cjs/test/resources/sol.d.ts.map +1 -0
  73. package/dist/cjs/test/resources/sol.js +320 -0
  74. package/dist/cjs/test/unit/fixtures/solBackupKey.d.ts.map +1 -0
  75. package/dist/cjs/test/unit/fixtures/solBackupKey.js +8 -0
  76. package/dist/cjs/test/unit/getBuilderFactory.d.ts.map +1 -0
  77. package/dist/cjs/test/unit/getBuilderFactory.js +10 -0
  78. package/dist/cjs/test/unit/instructionParamsFactory.d.ts.map +1 -0
  79. package/dist/cjs/test/unit/instructionParamsFactory.js +412 -0
  80. package/dist/cjs/test/unit/instructionParamsFactory.staking.d.ts.map +1 -0
  81. package/dist/cjs/test/unit/instructionParamsFactory.staking.js +1059 -0
  82. package/dist/{test → cjs/test}/unit/keyPair.d.ts.map +1 -1
  83. package/dist/cjs/test/unit/keyPair.js +177 -0
  84. package/dist/cjs/test/unit/messages/messageBuilderFactory.d.ts.map +1 -0
  85. package/dist/cjs/test/unit/messages/messageBuilderFactory.js +118 -0
  86. package/dist/cjs/test/unit/messages/simpleMessageBuilder.d.ts.map +1 -0
  87. package/dist/cjs/test/unit/messages/simpleMessageBuilder.js +194 -0
  88. package/dist/{test → cjs/test}/unit/sol.d.ts.map +1 -1
  89. package/dist/cjs/test/unit/sol.js +3185 -0
  90. package/dist/cjs/test/unit/solInstructionFactory.d.ts.map +1 -0
  91. package/dist/cjs/test/unit/solInstructionFactory.js +454 -0
  92. package/dist/cjs/test/unit/solToken.d.ts.map +1 -0
  93. package/dist/cjs/test/unit/solToken.js +31 -0
  94. package/dist/cjs/test/unit/transaction.d.ts.map +1 -0
  95. package/dist/cjs/test/unit/transaction.js +983 -0
  96. package/dist/cjs/test/unit/transactionBuilder/StakingWithdrawBuilder.d.ts.map +1 -0
  97. package/dist/cjs/test/unit/transactionBuilder/StakingWithdrawBuilder.js +202 -0
  98. package/dist/cjs/test/unit/transactionBuilder/ataInitBuilder.d.ts.map +1 -0
  99. package/dist/cjs/test/unit/transactionBuilder/ataInitBuilder.js +471 -0
  100. package/dist/cjs/test/unit/transactionBuilder/customInstructionBuilder.d.ts.map +1 -0
  101. package/dist/cjs/test/unit/transactionBuilder/customInstructionBuilder.js +413 -0
  102. package/dist/cjs/test/unit/transactionBuilder/stakingActivateBuilder.d.ts.map +1 -0
  103. package/dist/cjs/test/unit/transactionBuilder/stakingActivateBuilder.js +430 -0
  104. package/dist/cjs/test/unit/transactionBuilder/stakingAuthorizeBuilder.d.ts.map +1 -0
  105. package/dist/cjs/test/unit/transactionBuilder/stakingAuthorizeBuilder.js +157 -0
  106. package/dist/cjs/test/unit/transactionBuilder/stakingDeactivateBuilder.d.ts.map +1 -0
  107. package/dist/cjs/test/unit/transactionBuilder/stakingDeactivateBuilder.js +384 -0
  108. package/dist/cjs/test/unit/transactionBuilder/stakingDelegateBuilder.d.ts.map +1 -0
  109. package/dist/cjs/test/unit/transactionBuilder/stakingDelegateBuilder.js +224 -0
  110. package/dist/cjs/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.d.ts.map +1 -0
  111. package/dist/cjs/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.js +259 -0
  112. package/dist/cjs/test/unit/transactionBuilder/tokenTransferBuilder.d.ts.map +1 -0
  113. package/dist/cjs/test/unit/transactionBuilder/tokenTransferBuilder.js +787 -0
  114. package/dist/cjs/test/unit/transactionBuilder/transactionBuilder.d.ts.map +1 -0
  115. package/dist/cjs/test/unit/transactionBuilder/transactionBuilder.js +495 -0
  116. package/dist/cjs/test/unit/transactionBuilder/transferBuilder.d.ts.map +1 -0
  117. package/dist/cjs/test/unit/transactionBuilder/transferBuilder.js +286 -0
  118. package/dist/cjs/test/unit/transactionBuilder/transferBuilderV2.d.ts.map +1 -0
  119. package/dist/cjs/test/unit/transactionBuilder/transferBuilderV2.js +862 -0
  120. package/dist/cjs/test/unit/transactionBuilder/walletInitBuilder.d.ts.map +1 -0
  121. package/dist/cjs/test/unit/transactionBuilder/walletInitBuilder.js +259 -0
  122. package/dist/{test → cjs/test}/unit/utils.d.ts.map +1 -1
  123. package/dist/cjs/test/unit/utils.js +517 -0
  124. package/dist/cjs/test/unit/versionedTransaction.d.ts.map +1 -0
  125. package/dist/cjs/test/unit/versionedTransaction.js +207 -0
  126. package/dist/cjs/tsconfig.tsbuildinfo +1 -0
  127. package/dist/esm/bigint-buffer-guard.d.ts +1 -0
  128. package/dist/esm/config/token2022StaticConfig.d.ts +3 -0
  129. package/dist/esm/config/token2022StaticConfig.js +47 -0
  130. package/dist/esm/index.d.ts +7 -0
  131. package/dist/esm/index.js +7 -0
  132. package/dist/esm/lib/ataInitializationBuilder.d.ts +47 -0
  133. package/dist/esm/lib/ataInitializationBuilder.js +156 -0
  134. package/dist/esm/lib/closeAtaBuilder.d.ts +19 -0
  135. package/dist/esm/lib/closeAtaBuilder.js +62 -0
  136. package/dist/esm/lib/constants.d.ts +158 -0
  137. package/dist/esm/lib/constants.js +186 -0
  138. package/dist/esm/lib/customInstructionBuilder.d.ts +72 -0
  139. package/dist/esm/lib/customInstructionBuilder.js +282 -0
  140. package/dist/esm/lib/iface.d.ts +244 -0
  141. package/dist/esm/lib/iface.js +3 -0
  142. package/dist/esm/lib/index.d.ts +22 -0
  143. package/dist/esm/lib/index.js +22 -0
  144. package/dist/esm/lib/instructionParamsFactory.d.ts +12 -0
  145. package/dist/esm/lib/instructionParamsFactory.js +1030 -0
  146. package/dist/esm/lib/jitoStakePoolOperations.d.ts +113 -0
  147. package/dist/esm/lib/jitoStakePoolOperations.js +189 -0
  148. package/dist/esm/lib/keyPair.d.ts +26 -0
  149. package/dist/esm/lib/keyPair.js +59 -0
  150. package/dist/esm/lib/messages/index.d.ts +2 -0
  151. package/dist/esm/lib/messages/index.js +2 -0
  152. package/dist/esm/lib/messages/messageBuilderFactory.d.ts +7 -0
  153. package/dist/{src → esm}/lib/messages/messageBuilderFactory.js +5 -9
  154. package/dist/esm/lib/solInstructionFactory.d.ts +10 -0
  155. package/dist/esm/lib/solInstructionFactory.js +566 -0
  156. package/dist/esm/lib/stakingActivateBuilder.d.ts +59 -0
  157. package/dist/esm/lib/stakingActivateBuilder.js +113 -0
  158. package/dist/esm/lib/stakingAuthorizeBuilder.d.ts +43 -0
  159. package/dist/esm/lib/stakingAuthorizeBuilder.js +82 -0
  160. package/dist/esm/lib/stakingDeactivateBuilder.d.ts +81 -0
  161. package/dist/{src → esm}/lib/stakingDeactivateBuilder.js +31 -38
  162. package/dist/esm/lib/stakingDelegateBuilder.d.ts +42 -0
  163. package/dist/esm/lib/stakingDelegateBuilder.js +113 -0
  164. package/dist/esm/lib/stakingRawMsgAuthorizeBuilder.d.ts +33 -0
  165. package/dist/esm/lib/stakingRawMsgAuthorizeBuilder.js +103 -0
  166. package/dist/esm/lib/stakingWithdrawBuilder.d.ts +31 -0
  167. package/dist/esm/lib/stakingWithdrawBuilder.js +71 -0
  168. package/dist/esm/lib/token2022Config.d.ts +44 -0
  169. package/dist/esm/lib/token2022Config.js +23 -0
  170. package/dist/esm/lib/tokenTransferBuilder.d.ts +41 -0
  171. package/dist/esm/lib/tokenTransferBuilder.js +181 -0
  172. package/dist/esm/lib/transaction.d.ts +103 -0
  173. package/dist/esm/lib/transaction.js +588 -0
  174. package/dist/esm/lib/transactionBuilder.d.ts +128 -0
  175. package/dist/esm/lib/transactionBuilder.js +373 -0
  176. package/dist/esm/lib/transactionBuilderFactory.d.ts +115 -0
  177. package/dist/esm/lib/transactionBuilderFactory.js +198 -0
  178. package/dist/esm/lib/transferBuilder.d.ts +26 -0
  179. package/dist/esm/lib/transferBuilder.js +63 -0
  180. package/dist/esm/lib/transferBuilderV2.d.ts +43 -0
  181. package/dist/esm/lib/transferBuilderV2.js +203 -0
  182. package/dist/esm/lib/utils.d.ts +200 -0
  183. package/dist/esm/lib/utils.js +552 -0
  184. package/dist/esm/lib/walletInitializationBuilder.d.ts +26 -0
  185. package/dist/esm/lib/walletInitializationBuilder.js +64 -0
  186. package/dist/esm/register.d.ts +3 -0
  187. package/dist/esm/register.js +11 -0
  188. package/dist/esm/sol.d.ts +240 -0
  189. package/dist/{src → esm}/sol.d.ts.map +1 -1
  190. package/dist/esm/sol.js +1288 -0
  191. package/dist/esm/solToken.d.ts +37 -0
  192. package/dist/esm/solToken.js +65 -0
  193. package/dist/esm/tsol.d.ts +11 -0
  194. package/dist/esm/tsol.js +20 -0
  195. package/package.json +31 -13
  196. package/dist/src/config/token2022StaticConfig.js +0 -50
  197. package/dist/src/lib/ataInitializationBuilder.js +0 -196
  198. package/dist/src/lib/closeAtaBuilder.js +0 -69
  199. package/dist/src/lib/constants.js +0 -189
  200. package/dist/src/lib/customInstructionBuilder.js +0 -289
  201. package/dist/src/lib/iface.js +0 -7
  202. package/dist/src/lib/instructionParamsFactory.js +0 -1036
  203. package/dist/src/lib/jitoStakePoolOperations.js +0 -200
  204. package/dist/src/lib/keyPair.js +0 -63
  205. package/dist/src/lib/solInstructionFactory.js +0 -572
  206. package/dist/src/lib/stakingActivateBuilder.js +0 -120
  207. package/dist/src/lib/stakingAuthorizeBuilder.js +0 -89
  208. package/dist/src/lib/stakingDelegateBuilder.js +0 -120
  209. package/dist/src/lib/stakingRawMsgAuthorizeBuilder.js +0 -110
  210. package/dist/src/lib/stakingWithdrawBuilder.js +0 -78
  211. package/dist/src/lib/token2022Config.js +0 -27
  212. package/dist/src/lib/tokenTransferBuilder.js +0 -188
  213. package/dist/src/lib/transaction.js +0 -595
  214. package/dist/src/lib/transactionBuilder.js +0 -380
  215. package/dist/src/lib/transactionBuilderFactory.js +0 -202
  216. package/dist/src/lib/transferBuilder.js +0 -70
  217. package/dist/src/lib/transferBuilderV2.js +0 -210
  218. package/dist/src/lib/utils.js +0 -589
  219. package/dist/src/lib/walletInitializationBuilder.js +0 -71
  220. package/dist/src/register.js +0 -15
  221. package/dist/src/sol.js +0 -1328
  222. package/dist/src/solToken.js +0 -69
  223. package/dist/src/tsol.js +0 -24
  224. package/dist/test/fixtures/sol.js +0 -1433
  225. package/dist/test/resources/sol.d.ts.map +0 -1
  226. package/dist/test/resources/sol.js +0 -320
  227. package/dist/test/unit/fixtures/solBackupKey.d.ts.map +0 -1
  228. package/dist/test/unit/fixtures/solBackupKey.js +0 -8
  229. package/dist/test/unit/getBuilderFactory.d.ts.map +0 -1
  230. package/dist/test/unit/getBuilderFactory.js +0 -10
  231. package/dist/test/unit/instructionParamsFactory.d.ts.map +0 -1
  232. package/dist/test/unit/instructionParamsFactory.js +0 -412
  233. package/dist/test/unit/instructionParamsFactory.staking.d.ts.map +0 -1
  234. package/dist/test/unit/instructionParamsFactory.staking.js +0 -1059
  235. package/dist/test/unit/keyPair.js +0 -177
  236. package/dist/test/unit/messages/messageBuilderFactory.d.ts.map +0 -1
  237. package/dist/test/unit/messages/messageBuilderFactory.js +0 -118
  238. package/dist/test/unit/messages/simpleMessageBuilder.d.ts.map +0 -1
  239. package/dist/test/unit/messages/simpleMessageBuilder.js +0 -194
  240. package/dist/test/unit/sol.js +0 -3185
  241. package/dist/test/unit/solInstructionFactory.d.ts.map +0 -1
  242. package/dist/test/unit/solInstructionFactory.js +0 -454
  243. package/dist/test/unit/solToken.d.ts.map +0 -1
  244. package/dist/test/unit/solToken.js +0 -31
  245. package/dist/test/unit/transaction.d.ts.map +0 -1
  246. package/dist/test/unit/transaction.js +0 -983
  247. package/dist/test/unit/transactionBuilder/StakingWithdrawBuilder.d.ts.map +0 -1
  248. package/dist/test/unit/transactionBuilder/StakingWithdrawBuilder.js +0 -202
  249. package/dist/test/unit/transactionBuilder/ataInitBuilder.d.ts.map +0 -1
  250. package/dist/test/unit/transactionBuilder/ataInitBuilder.js +0 -471
  251. package/dist/test/unit/transactionBuilder/customInstructionBuilder.d.ts.map +0 -1
  252. package/dist/test/unit/transactionBuilder/customInstructionBuilder.js +0 -413
  253. package/dist/test/unit/transactionBuilder/stakingActivateBuilder.d.ts.map +0 -1
  254. package/dist/test/unit/transactionBuilder/stakingActivateBuilder.js +0 -430
  255. package/dist/test/unit/transactionBuilder/stakingAuthorizeBuilder.d.ts.map +0 -1
  256. package/dist/test/unit/transactionBuilder/stakingAuthorizeBuilder.js +0 -157
  257. package/dist/test/unit/transactionBuilder/stakingDeactivateBuilder.d.ts.map +0 -1
  258. package/dist/test/unit/transactionBuilder/stakingDeactivateBuilder.js +0 -384
  259. package/dist/test/unit/transactionBuilder/stakingDelegateBuilder.d.ts.map +0 -1
  260. package/dist/test/unit/transactionBuilder/stakingDelegateBuilder.js +0 -224
  261. package/dist/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.d.ts.map +0 -1
  262. package/dist/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.js +0 -259
  263. package/dist/test/unit/transactionBuilder/tokenTransferBuilder.d.ts.map +0 -1
  264. package/dist/test/unit/transactionBuilder/tokenTransferBuilder.js +0 -787
  265. package/dist/test/unit/transactionBuilder/transactionBuilder.d.ts.map +0 -1
  266. package/dist/test/unit/transactionBuilder/transactionBuilder.js +0 -495
  267. package/dist/test/unit/transactionBuilder/transferBuilder.d.ts.map +0 -1
  268. package/dist/test/unit/transactionBuilder/transferBuilder.js +0 -286
  269. package/dist/test/unit/transactionBuilder/transferBuilderV2.d.ts.map +0 -1
  270. package/dist/test/unit/transactionBuilder/transferBuilderV2.js +0 -862
  271. package/dist/test/unit/transactionBuilder/walletInitBuilder.d.ts.map +0 -1
  272. package/dist/test/unit/transactionBuilder/walletInitBuilder.js +0 -259
  273. package/dist/test/unit/utils.js +0 -517
  274. package/dist/test/unit/versionedTransaction.d.ts.map +0 -1
  275. package/dist/test/unit/versionedTransaction.js +0 -207
  276. package/dist/tsconfig.tsbuildinfo +0 -1
  277. /package/dist/{src → cjs/src}/bigint-buffer-guard.d.ts +0 -0
  278. /package/dist/{src → cjs/src}/config/token2022StaticConfig.d.ts +0 -0
  279. /package/dist/{src → cjs/src}/index.d.ts +0 -0
  280. /package/dist/{src → cjs/src}/lib/ataInitializationBuilder.d.ts +0 -0
  281. /package/dist/{src → cjs/src}/lib/closeAtaBuilder.d.ts +0 -0
  282. /package/dist/{src → cjs/src}/lib/constants.d.ts +0 -0
  283. /package/dist/{src → cjs/src}/lib/customInstructionBuilder.d.ts +0 -0
  284. /package/dist/{src → cjs/src}/lib/iface.d.ts +0 -0
  285. /package/dist/{src → cjs/src}/lib/index.d.ts +0 -0
  286. /package/dist/{src → cjs/src}/lib/instructionParamsFactory.d.ts +0 -0
  287. /package/dist/{src → cjs/src}/lib/jitoStakePoolOperations.d.ts +0 -0
  288. /package/dist/{src → cjs/src}/lib/keyPair.d.ts +0 -0
  289. /package/dist/{src → cjs/src}/lib/messages/index.d.ts +0 -0
  290. /package/dist/{src → cjs/src}/lib/messages/messageBuilderFactory.d.ts +0 -0
  291. /package/dist/{src → cjs/src}/lib/solInstructionFactory.d.ts +0 -0
  292. /package/dist/{src → cjs/src}/lib/stakingActivateBuilder.d.ts +0 -0
  293. /package/dist/{src → cjs/src}/lib/stakingAuthorizeBuilder.d.ts +0 -0
  294. /package/dist/{src → cjs/src}/lib/stakingDeactivateBuilder.d.ts +0 -0
  295. /package/dist/{src → cjs/src}/lib/stakingDelegateBuilder.d.ts +0 -0
  296. /package/dist/{src → cjs/src}/lib/stakingRawMsgAuthorizeBuilder.d.ts +0 -0
  297. /package/dist/{src → cjs/src}/lib/stakingWithdrawBuilder.d.ts +0 -0
  298. /package/dist/{src → cjs/src}/lib/token2022Config.d.ts +0 -0
  299. /package/dist/{src → cjs/src}/lib/tokenTransferBuilder.d.ts +0 -0
  300. /package/dist/{src → cjs/src}/lib/transaction.d.ts +0 -0
  301. /package/dist/{src → cjs/src}/lib/transactionBuilder.d.ts +0 -0
  302. /package/dist/{src → cjs/src}/lib/transactionBuilderFactory.d.ts +0 -0
  303. /package/dist/{src → cjs/src}/lib/transferBuilder.d.ts +0 -0
  304. /package/dist/{src → cjs/src}/lib/transferBuilderV2.d.ts +0 -0
  305. /package/dist/{src → cjs/src}/lib/utils.d.ts +0 -0
  306. /package/dist/{src → cjs/src}/lib/walletInitializationBuilder.d.ts +0 -0
  307. /package/dist/{src → cjs/src}/register.d.ts +0 -0
  308. /package/dist/{src → cjs/src}/sol.d.ts +0 -0
  309. /package/dist/{src → cjs/src}/solToken.d.ts +0 -0
  310. /package/dist/{src → cjs/src}/tsol.d.ts +0 -0
  311. /package/dist/{test → cjs/test}/fixtures/sol.d.ts +0 -0
  312. /package/dist/{test → cjs/test}/unit/fixtures/solBackupKey.d.ts +0 -0
  313. /package/dist/{test → cjs/test}/unit/getBuilderFactory.d.ts +0 -0
  314. /package/dist/{test → cjs/test}/unit/instructionParamsFactory.d.ts +0 -0
  315. /package/dist/{test → cjs/test}/unit/instructionParamsFactory.staking.d.ts +0 -0
  316. /package/dist/{test → cjs/test}/unit/keyPair.d.ts +0 -0
  317. /package/dist/{test → cjs/test}/unit/messages/messageBuilderFactory.d.ts +0 -0
  318. /package/dist/{test → cjs/test}/unit/messages/simpleMessageBuilder.d.ts +0 -0
  319. /package/dist/{test → cjs/test}/unit/sol.d.ts +0 -0
  320. /package/dist/{test → cjs/test}/unit/solInstructionFactory.d.ts +0 -0
  321. /package/dist/{test → cjs/test}/unit/solToken.d.ts +0 -0
  322. /package/dist/{test → cjs/test}/unit/transaction.d.ts +0 -0
  323. /package/dist/{test → cjs/test}/unit/transactionBuilder/StakingWithdrawBuilder.d.ts +0 -0
  324. /package/dist/{test → cjs/test}/unit/transactionBuilder/ataInitBuilder.d.ts +0 -0
  325. /package/dist/{test → cjs/test}/unit/transactionBuilder/customInstructionBuilder.d.ts +0 -0
  326. /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingActivateBuilder.d.ts +0 -0
  327. /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingAuthorizeBuilder.d.ts +0 -0
  328. /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingDeactivateBuilder.d.ts +0 -0
  329. /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingDelegateBuilder.d.ts +0 -0
  330. /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.d.ts +0 -0
  331. /package/dist/{test → cjs/test}/unit/transactionBuilder/tokenTransferBuilder.d.ts +0 -0
  332. /package/dist/{test → cjs/test}/unit/transactionBuilder/transactionBuilder.d.ts +0 -0
  333. /package/dist/{test → cjs/test}/unit/transactionBuilder/transferBuilder.d.ts +0 -0
  334. /package/dist/{test → cjs/test}/unit/transactionBuilder/transferBuilderV2.d.ts +0 -0
  335. /package/dist/{test → cjs/test}/unit/transactionBuilder/walletInitBuilder.d.ts +0 -0
  336. /package/dist/{test → cjs/test}/unit/utils.d.ts +0 -0
  337. /package/dist/{test → cjs/test}/unit/versionedTransaction.d.ts +0 -0
  338. /package/dist/{src → esm}/bigint-buffer-guard.d.ts.map +0 -0
  339. /package/dist/{src → esm}/bigint-buffer-guard.js +0 -0
  340. /package/dist/{src → esm}/config/token2022StaticConfig.d.ts.map +0 -0
  341. /package/dist/{src → esm}/index.d.ts.map +0 -0
  342. /package/dist/{src → esm}/lib/ataInitializationBuilder.d.ts.map +0 -0
  343. /package/dist/{src → esm}/lib/closeAtaBuilder.d.ts.map +0 -0
  344. /package/dist/{src → esm}/lib/constants.d.ts.map +0 -0
  345. /package/dist/{src → esm}/lib/customInstructionBuilder.d.ts.map +0 -0
  346. /package/dist/{src → esm}/lib/iface.d.ts.map +0 -0
  347. /package/dist/{src → esm}/lib/index.d.ts.map +0 -0
  348. /package/dist/{src → esm}/lib/instructionParamsFactory.d.ts.map +0 -0
  349. /package/dist/{src → esm}/lib/jitoStakePoolOperations.d.ts.map +0 -0
  350. /package/dist/{src → esm}/lib/keyPair.d.ts.map +0 -0
  351. /package/dist/{src → esm}/lib/messages/index.d.ts.map +0 -0
  352. /package/dist/{src → esm}/lib/messages/messageBuilderFactory.d.ts.map +0 -0
  353. /package/dist/{src → esm}/lib/solInstructionFactory.d.ts.map +0 -0
  354. /package/dist/{src → esm}/lib/stakingActivateBuilder.d.ts.map +0 -0
  355. /package/dist/{src → esm}/lib/stakingAuthorizeBuilder.d.ts.map +0 -0
  356. /package/dist/{src → esm}/lib/stakingDeactivateBuilder.d.ts.map +0 -0
  357. /package/dist/{src → esm}/lib/stakingDelegateBuilder.d.ts.map +0 -0
  358. /package/dist/{src → esm}/lib/stakingRawMsgAuthorizeBuilder.d.ts.map +0 -0
  359. /package/dist/{src → esm}/lib/stakingWithdrawBuilder.d.ts.map +0 -0
  360. /package/dist/{src → esm}/lib/token2022Config.d.ts.map +0 -0
  361. /package/dist/{src → esm}/lib/tokenTransferBuilder.d.ts.map +0 -0
  362. /package/dist/{src → esm}/lib/transaction.d.ts.map +0 -0
  363. /package/dist/{src → esm}/lib/transactionBuilder.d.ts.map +0 -0
  364. /package/dist/{src → esm}/lib/transactionBuilderFactory.d.ts.map +0 -0
  365. /package/dist/{src → esm}/lib/transferBuilder.d.ts.map +0 -0
  366. /package/dist/{src → esm}/lib/transferBuilderV2.d.ts.map +0 -0
  367. /package/dist/{src → esm}/lib/utils.d.ts.map +0 -0
  368. /package/dist/{src → esm}/lib/walletInitializationBuilder.d.ts.map +0 -0
  369. /package/dist/{src → esm}/register.d.ts.map +0 -0
  370. /package/dist/{src → esm}/solToken.d.ts.map +0 -0
  371. /package/dist/{src → esm}/tsol.d.ts.map +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bigint-buffer-guard.d.ts","sourceRoot":"","sources":["../../../src/bigint-buffer-guard.ts"],"names":[],"mappings":""}
@@ -0,0 +1,29 @@
1
+ // Added a lightweight runtime guard for BigInt<->Buffer conversions in @bitgo-beta/sdk-coin-sol (bigint-buffer-guard.ts) to validate input lengths and reduce misuse risk.
2
+ // It's purpose is to enforce input type/length checks around BigInt buffer operations; imported it so validations run at module load
3
+ try {
4
+ const mod = require('bigint-buffer');
5
+ const le = typeof mod.toBigIntLE === 'function' ? mod.toBigIntLE : undefined;
6
+ const be = typeof mod.toBigIntBE === 'function' ? mod.toBigIntBE : undefined;
7
+ const isBufferLike = (b) => (typeof Buffer !== 'undefined' && Buffer.isBuffer(b)) || b instanceof Uint8Array;
8
+ const byteLen = (b) => typeof Buffer !== 'undefined' && Buffer.isBuffer(b) ? b.length : b.byteLength;
9
+ const assertBuf = (b) => {
10
+ if (!isBufferLike(b))
11
+ throw new TypeError('toBigInt*: input must be Buffer/Uint8Array');
12
+ if (byteLen(b) > 1000000)
13
+ throw new RangeError('toBigInt*: buffer too large');
14
+ };
15
+ if (le)
16
+ mod.toBigIntLE = (buf) => {
17
+ assertBuf(buf);
18
+ return le(buf);
19
+ };
20
+ if (be)
21
+ mod.toBigIntBE = (buf) => {
22
+ assertBuf(buf);
23
+ return be(buf);
24
+ };
25
+ }
26
+ catch {
27
+ /* noop */
28
+ }
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlnaW50LWJ1ZmZlci1ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iaWdpbnQtYnVmZmVyLWd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDJLQUEySztBQUMzSyxxSUFBcUk7QUFFckksSUFBSSxDQUFDO0lBQ0gsTUFBTSxHQUFHLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3JDLE1BQU0sRUFBRSxHQUFHLE9BQU8sR0FBRyxDQUFDLFVBQVUsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUM3RSxNQUFNLEVBQUUsR0FBRyxPQUFPLEdBQUcsQ0FBQyxVQUFVLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFFN0UsTUFBTSxZQUFZLEdBQUcsQ0FBQyxDQUFVLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEtBQUssV0FBVyxJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksVUFBVSxDQUFDO0lBRXRILE1BQU0sT0FBTyxHQUFHLENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FDekIsT0FBTyxNQUFNLEtBQUssV0FBVyxJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFFLENBQWdCLENBQUMsVUFBVSxDQUFDO0lBRWhHLE1BQU0sU0FBUyxHQUFHLENBQUMsQ0FBVSxFQUFFLEVBQUU7UUFDL0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7WUFBRSxNQUFNLElBQUksU0FBUyxDQUFDLDRDQUE0QyxDQUFDLENBQUM7UUFDeEYsSUFBSSxPQUFPLENBQUMsQ0FBUSxDQUFDLEdBQUcsT0FBUztZQUFFLE1BQU0sSUFBSSxVQUFVLENBQUMsNkJBQTZCLENBQUMsQ0FBQztJQUN6RixDQUFDLENBQUM7SUFFRixJQUFJLEVBQUU7UUFDSixHQUFHLENBQUMsVUFBVSxHQUFHLENBQUMsR0FBd0IsRUFBRSxFQUFFO1lBQzVDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNmLE9BQU8sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pCLENBQUMsQ0FBQztJQUNKLElBQUksRUFBRTtRQUNKLEdBQUcsQ0FBQyxVQUFVLEdBQUcsQ0FBQyxHQUF3QixFQUFFLEVBQUU7WUFDNUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2YsT0FBTyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDakIsQ0FBQyxDQUFDO0FBQ04sQ0FBQztBQUFDLE1BQU0sQ0FBQztJQUNQLFVBQVU7QUFDWixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQWRkZWQgYSBsaWdodHdlaWdodCBydW50aW1lIGd1YXJkIGZvciBCaWdJbnQ8LT5CdWZmZXIgY29udmVyc2lvbnMgaW4gQGJpdGdvLWJldGEvc2RrLWNvaW4tc29sIChiaWdpbnQtYnVmZmVyLWd1YXJkLnRzKSB0byB2YWxpZGF0ZSBpbnB1dCBsZW5ndGhzIGFuZCByZWR1Y2UgbWlzdXNlIHJpc2suXG4vLyBJdCdzIHB1cnBvc2UgaXMgdG8gZW5mb3JjZSBpbnB1dCB0eXBlL2xlbmd0aCBjaGVja3MgYXJvdW5kIEJpZ0ludCBidWZmZXIgb3BlcmF0aW9uczsgaW1wb3J0ZWQgaXQgc28gdmFsaWRhdGlvbnMgcnVuIGF0IG1vZHVsZSBsb2FkXG5cbnRyeSB7XG4gIGNvbnN0IG1vZCA9IHJlcXVpcmUoJ2JpZ2ludC1idWZmZXInKTtcbiAgY29uc3QgbGUgPSB0eXBlb2YgbW9kLnRvQmlnSW50TEUgPT09ICdmdW5jdGlvbicgPyBtb2QudG9CaWdJbnRMRSA6IHVuZGVmaW5lZDtcbiAgY29uc3QgYmUgPSB0eXBlb2YgbW9kLnRvQmlnSW50QkUgPT09ICdmdW5jdGlvbicgPyBtb2QudG9CaWdJbnRCRSA6IHVuZGVmaW5lZDtcblxuICBjb25zdCBpc0J1ZmZlckxpa2UgPSAoYjogdW5rbm93bikgPT4gKHR5cGVvZiBCdWZmZXIgIT09ICd1bmRlZmluZWQnICYmIEJ1ZmZlci5pc0J1ZmZlcihiKSkgfHwgYiBpbnN0YW5jZW9mIFVpbnQ4QXJyYXk7XG5cbiAgY29uc3QgYnl0ZUxlbiA9IChiOiBhbnkpID0+XG4gICAgdHlwZW9mIEJ1ZmZlciAhPT0gJ3VuZGVmaW5lZCcgJiYgQnVmZmVyLmlzQnVmZmVyKGIpID8gYi5sZW5ndGggOiAoYiBhcyBVaW50OEFycmF5KS5ieXRlTGVuZ3RoO1xuXG4gIGNvbnN0IGFzc2VydEJ1ZiA9IChiOiB1bmtub3duKSA9PiB7XG4gICAgaWYgKCFpc0J1ZmZlckxpa2UoYikpIHRocm93IG5ldyBUeXBlRXJyb3IoJ3RvQmlnSW50KjogaW5wdXQgbXVzdCBiZSBCdWZmZXIvVWludDhBcnJheScpO1xuICAgIGlmIChieXRlTGVuKGIgYXMgYW55KSA+IDFfMDAwXzAwMCkgdGhyb3cgbmV3IFJhbmdlRXJyb3IoJ3RvQmlnSW50KjogYnVmZmVyIHRvbyBsYXJnZScpO1xuICB9O1xuXG4gIGlmIChsZSlcbiAgICBtb2QudG9CaWdJbnRMRSA9IChidWY6IEJ1ZmZlciB8IFVpbnQ4QXJyYXkpID0+IHtcbiAgICAgIGFzc2VydEJ1ZihidWYpO1xuICAgICAgcmV0dXJuIGxlKGJ1Zik7XG4gICAgfTtcbiAgaWYgKGJlKVxuICAgIG1vZC50b0JpZ0ludEJFID0gKGJ1ZjogQnVmZmVyIHwgVWludDhBcnJheSkgPT4ge1xuICAgICAgYXNzZXJ0QnVmKGJ1Zik7XG4gICAgICByZXR1cm4gYmUoYnVmKTtcbiAgICB9O1xufSBjYXRjaCB7XG4gIC8qIG5vb3AgKi9cbn1cbiJdfQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token2022StaticConfig.d.ts","sourceRoot":"","sources":["../../../../src/config/token2022StaticConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,eAAO,MAAM,yBAAyB,EAAE,eAAe,EA6CtD,CAAC"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TOKEN_2022_STATIC_CONFIGS = void 0;
4
+ exports.TOKEN_2022_STATIC_CONFIGS = [
5
+ {
6
+ mintAddress: '4MmJVdwYN8LwvbGeCowYjSx7KoEi6BJWg8XXnW4fDDp6',
7
+ transferHook: {
8
+ extraAccountMetas: [
9
+ {
10
+ pubkey: '98wFF5MpMjMQbfDF2MPzo8LCGX37unZR1ohRA1mU9GmJ',
11
+ isSigner: false,
12
+ isWritable: true,
13
+ },
14
+ {
15
+ pubkey: '48n7YGEww7fKMfJ5gJ3sQC3rM6RWGjpUsghqVfXVkR5A',
16
+ isSigner: false,
17
+ isWritable: false,
18
+ },
19
+ {
20
+ pubkey: '9sQhAH7vV3RKTCK13VY4EiNjs3qBq1srSYxdNufdAAXm',
21
+ isSigner: false,
22
+ isWritable: false,
23
+ },
24
+ ],
25
+ },
26
+ },
27
+ {
28
+ mintAddress: '3BW95VLH2za2eUQ1PGfjxwMbpsnDFnmkA7m5LDgMKbX7',
29
+ transferHook: {
30
+ extraAccountMetas: [
31
+ {
32
+ pubkey: 'GbQ8ZiEFzGGTeYoXwtZtcoxwPcMyUcmZDduMVNdUPKpX',
33
+ isSigner: false,
34
+ isWritable: true,
35
+ },
36
+ {
37
+ pubkey: '2Te6MFDwstRP2sZi6DLbkhVcSfaQVffmpbudN6pmvAXo',
38
+ isSigner: false,
39
+ isWritable: false,
40
+ },
41
+ {
42
+ pubkey: 'FR5YBEisx8mDe4ruhWKmpH5nirdJopj4uStBAVufqjMo',
43
+ isSigner: false,
44
+ isWritable: false,
45
+ },
46
+ ],
47
+ },
48
+ },
49
+ ];
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4yMDIyU3RhdGljQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbmZpZy90b2tlbjIwMjJTdGF0aWNDb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRWEsUUFBQSx5QkFBeUIsR0FBc0I7SUFDMUQ7UUFDRSxXQUFXLEVBQUUsOENBQThDO1FBQzNELFlBQVksRUFBRTtZQUNaLGlCQUFpQixFQUFFO2dCQUNqQjtvQkFDRSxNQUFNLEVBQUUsOENBQThDO29CQUN0RCxRQUFRLEVBQUUsS0FBSztvQkFDZixVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsTUFBTSxFQUFFLDhDQUE4QztvQkFDdEQsUUFBUSxFQUFFLEtBQUs7b0JBQ2YsVUFBVSxFQUFFLEtBQUs7aUJBQ2xCO2dCQUNEO29CQUNFLE1BQU0sRUFBRSw4Q0FBOEM7b0JBQ3RELFFBQVEsRUFBRSxLQUFLO29CQUNmLFVBQVUsRUFBRSxLQUFLO2lCQUNsQjthQUNGO1NBQ0Y7S0FDRjtJQUNEO1FBQ0UsV0FBVyxFQUFFLDhDQUE4QztRQUMzRCxZQUFZLEVBQUU7WUFDWixpQkFBaUIsRUFBRTtnQkFDakI7b0JBQ0UsTUFBTSxFQUFFLDhDQUE4QztvQkFDdEQsUUFBUSxFQUFFLEtBQUs7b0JBQ2YsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLE1BQU0sRUFBRSw4Q0FBOEM7b0JBQ3RELFFBQVEsRUFBRSxLQUFLO29CQUNmLFVBQVUsRUFBRSxLQUFLO2lCQUNsQjtnQkFDRDtvQkFDRSxNQUFNLEVBQUUsOENBQThDO29CQUN0RCxRQUFRLEVBQUUsS0FBSztvQkFDZixVQUFVLEVBQUUsS0FBSztpQkFDbEI7YUFDRjtTQUNGO0tBQ0Y7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBUb2tlbjIwMjJDb25maWcgfSBmcm9tICcuLi9saWIvdG9rZW4yMDIyQ29uZmlnJztcblxuZXhwb3J0IGNvbnN0IFRPS0VOXzIwMjJfU1RBVElDX0NPTkZJR1M6IFRva2VuMjAyMkNvbmZpZ1tdID0gW1xuICB7XG4gICAgbWludEFkZHJlc3M6ICc0TW1KVmR3WU44THd2YkdlQ293WWpTeDdLb0VpNkJKV2c4WFhuVzRmRERwNicsXG4gICAgdHJhbnNmZXJIb29rOiB7XG4gICAgICBleHRyYUFjY291bnRNZXRhczogW1xuICAgICAgICB7XG4gICAgICAgICAgcHVia2V5OiAnOTh3RkY1TXBNak1RYmZERjJNUHpvOExDR1gzN3VuWlIxb2hSQTFtVTlHbUonLFxuICAgICAgICAgIGlzU2lnbmVyOiBmYWxzZSxcbiAgICAgICAgICBpc1dyaXRhYmxlOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHVia2V5OiAnNDhuN1lHRXd3N2ZLTWZKNWdKM3NRQzNyTTZSV0dqcFVzZ2hxVmZYVmtSNUEnLFxuICAgICAgICAgIGlzU2lnbmVyOiBmYWxzZSxcbiAgICAgICAgICBpc1dyaXRhYmxlOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHB1YmtleTogJzlzUWhBSDd2VjNSS1RDSzEzVlk0RWlOanMzcUJxMXNyU1l4ZE51ZmRBQVhtJyxcbiAgICAgICAgICBpc1NpZ25lcjogZmFsc2UsXG4gICAgICAgICAgaXNXcml0YWJsZTogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gIH0sXG4gIHtcbiAgICBtaW50QWRkcmVzczogJzNCVzk1VkxIMnphMmVVUTFQR2ZqeHdNYnBzbkRGbm1rQTdtNUxEZ01LYlg3JyxcbiAgICB0cmFuc2Zlckhvb2s6IHtcbiAgICAgIGV4dHJhQWNjb3VudE1ldGFzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwdWJrZXk6ICdHYlE4WmlFRnpHR1RlWW9Yd3RadGNveHdQY015VWNtWkRkdU1WTmRVUEtwWCcsXG4gICAgICAgICAgaXNTaWduZXI6IGZhbHNlLFxuICAgICAgICAgIGlzV3JpdGFibGU6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwdWJrZXk6ICcyVGU2TUZEd3N0UlAyc1ppNkRMYmtoVmNTZmFRVmZmbXBidWRONnBtdkFYbycsXG4gICAgICAgICAgaXNTaWduZXI6IGZhbHNlLFxuICAgICAgICAgIGlzV3JpdGFibGU6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHVia2V5OiAnRlI1WUJFaXN4OG1EZTRydWhXS21wSDVuaXJkSm9wajR1U3RCQVZ1ZnFqTW8nLFxuICAgICAgICAgIGlzU2lnbmVyOiBmYWxzZSxcbiAgICAgICAgICBpc1dyaXRhYmxlOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgfSxcbl07XG4iXX0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,uBAAuB,CAAC;AAC/B,cAAc,OAAO,CAAC;AACtB,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC"}
@@ -20,4 +20,4 @@ __exportStar(require("./sol"), exports);
20
20
  __exportStar(require("./solToken"), exports);
21
21
  __exportStar(require("./tsol"), exports);
22
22
  __exportStar(require("./register"), exports);
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGlDQUErQjtBQUMvQix3Q0FBc0I7QUFDdEIsd0NBQXNCO0FBQ3RCLDZDQUEyQjtBQUMzQix5Q0FBdUI7QUFDdkIsNkNBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICcuL2JpZ2ludC1idWZmZXItZ3VhcmQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWInO1xuZXhwb3J0ICogZnJvbSAnLi9zb2wnO1xuZXhwb3J0ICogZnJvbSAnLi9zb2xUb2tlbic7XG5leHBvcnQgKiBmcm9tICcuL3Rzb2wnO1xuZXhwb3J0ICogZnJvbSAnLi9yZWdpc3Rlcic7XG4iXX0=
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGlDQUErQjtBQUMvQix3Q0FBc0I7QUFDdEIsd0NBQXNCO0FBQ3RCLDZDQUEyQjtBQUMzQix5Q0FBdUI7QUFDdkIsNkNBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICcuL2JpZ2ludC1idWZmZXItZ3VhcmQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWInO1xuZXhwb3J0ICogZnJvbSAnLi9zb2wnO1xuZXhwb3J0ICogZnJvbSAnLi9zb2xUb2tlbic7XG5leHBvcnQgKiBmcm9tICcuL3Rzb2wnO1xuZXhwb3J0ICogZnJvbSAnLi9yZWdpc3Rlcic7XG4iXX0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ataInitializationBuilder.d.ts","sourceRoot":"","sources":["../../../../src/lib/ataInitializationBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAA+C,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACpG,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAW,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAW3D,qBAAa,wBAAyB,SAAQ,kBAAkB;IAE9D,OAAO,CAAC,UAAU,CAAS;IAE3B,OAAO,CAAC,KAAK,CAAS;IAEtB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,yBAAyB,CAA4B;gBAEjD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAM7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,kBAAkB;IAClB,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAgBlC;;;;;OAKG;IACH,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAc7B;;;;;OAKG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAS1B;;;;;OAKG;IACH,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI;IAIhD;;;;;;OAMG;IAEH,WAAW,CAAC,SAAS,EAAE,uBAAuB,GAAG,IAAI;IA6BrD,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;CAkD5D"}
@@ -0,0 +1,196 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.AtaInitializationBuilder = void 0;
40
+ const transactionBuilder_1 = require("./transactionBuilder");
41
+ const sdk_core_1 = require("@bitgo-beta/sdk-core");
42
+ const transaction_1 = require("./transaction");
43
+ const constants_1 = require("./constants");
44
+ const utils_1 = require("./utils");
45
+ const assert_1 = __importDefault(require("assert"));
46
+ const _ = __importStar(require("lodash"));
47
+ class AtaInitializationBuilder extends transactionBuilder_1.TransactionBuilder {
48
+ constructor(_coinConfig) {
49
+ super(_coinConfig);
50
+ this._transaction = new transaction_1.Transaction(_coinConfig);
51
+ this._tokenAssociateRecipients = [];
52
+ }
53
+ get transactionType() {
54
+ return sdk_core_1.TransactionType.AssociatedTokenAccountInitialization;
55
+ }
56
+ /** @inheritDoc */
57
+ initBuilder(tx) {
58
+ super.initBuilder(tx);
59
+ this._tokenAssociateRecipients = [];
60
+ for (const instruction of this._instructionsData) {
61
+ if (instruction.type === constants_1.InstructionBuilderTypes.CreateAssociatedTokenAccount) {
62
+ const ataInitInstruction = instruction;
63
+ this._tokenAssociateRecipients.push({
64
+ ownerAddress: ataInitInstruction.params.ownerAddress,
65
+ tokenName: ataInitInstruction.params.tokenName,
66
+ tokenAddress: ataInitInstruction.params.mintAddress,
67
+ programId: ataInitInstruction.params.programId,
68
+ });
69
+ }
70
+ }
71
+ }
72
+ /**
73
+ * @deprecated - Use the enableToken method instead
74
+ * Sets the mint address of the associated token account
75
+ *
76
+ * @param tokenName name of the token
77
+ */
78
+ mint(tokenName) {
79
+ if (this._tokenAssociateRecipients.length > 0) {
80
+ throw new sdk_core_1.DuplicateMethodError('Invalid method: enableToken already used');
81
+ }
82
+ const token = (0, utils_1.getSolTokenFromTokenName)(tokenName);
83
+ if (!token) {
84
+ throw new sdk_core_1.BuildTransactionError('Invalid transaction: invalid token name, got: ' + tokenName);
85
+ }
86
+ this._mint = token.tokenAddress;
87
+ this._tokenName = token.name;
88
+ (0, utils_1.validateMintAddress)(this._mint);
89
+ return this;
90
+ }
91
+ /**
92
+ * @deprecated - Use the enableToken method instead
93
+ * Sets the owner address of the associated token account
94
+ *
95
+ * @param owner owner address of associated token account
96
+ */
97
+ owner(owner) {
98
+ if (this._tokenAssociateRecipients.length > 0) {
99
+ throw new sdk_core_1.DuplicateMethodError('Invalid method: enableToken already used');
100
+ }
101
+ this._owner = owner;
102
+ (0, utils_1.validateOwnerAddress)(owner);
103
+ return this;
104
+ }
105
+ /**
106
+ * @deprecated - Use the associatedTokenAccountRent method instead
107
+ * Used to set the minimum rent exempt amount
108
+ *
109
+ * @param rentExemptAmount minimum rent exempt amount in lamports
110
+ */
111
+ rentExemptAmount(rentExemptAmount) {
112
+ return super.associatedTokenAccountRent(rentExemptAmount);
113
+ }
114
+ /**
115
+ * Used for adding token association recipients consisting
116
+ * 1. ownerAddress: owner of the token address
117
+ * 2. tokenName: the name of token enabled that is supported by BitGo
118
+ *
119
+ * @param TokenAssociateRecipient token associate recipient info
120
+ */
121
+ enableToken(recipient) {
122
+ if (this._tokenAssociateRecipients.some((tokenAssociate) => _.isEqual(tokenAssociate, recipient))) {
123
+ throw new sdk_core_1.BuildTransactionError('Invalid transaction: invalid duplicate recipients, got: owner ' +
124
+ recipient.ownerAddress +
125
+ ' and tokenName ' +
126
+ recipient.tokenName +
127
+ ' twice');
128
+ }
129
+ if (this._tokenName || this._mint) {
130
+ throw new sdk_core_1.DuplicateMethodError('Invalid method: single mint already used');
131
+ }
132
+ (0, utils_1.validateOwnerAddress)(recipient.ownerAddress);
133
+ const token = (0, utils_1.getSolTokenFromTokenName)(recipient.tokenName);
134
+ let tokenAddress;
135
+ if (recipient.tokenAddress) {
136
+ tokenAddress = recipient.tokenAddress;
137
+ }
138
+ else if (token) {
139
+ tokenAddress = token.tokenAddress;
140
+ }
141
+ else {
142
+ throw new sdk_core_1.BuildTransactionError('Invalid transaction: invalid token name, got: ' + recipient.tokenName);
143
+ }
144
+ (0, utils_1.validateMintAddress)(tokenAddress);
145
+ this._tokenAssociateRecipients.push(recipient);
146
+ return this;
147
+ }
148
+ /** @inheritdoc */
149
+ async buildImplementation() {
150
+ (0, assert_1.default)(this._sender, 'Sender must be set before building the transaction');
151
+ if (this._tokenAssociateRecipients.length === 0) {
152
+ (0, assert_1.default)(this._mint && this._tokenName, 'Mint must be set before building the transaction');
153
+ this._owner = this._owner || this._sender;
154
+ this._tokenAssociateRecipients.push({
155
+ ownerAddress: this._owner,
156
+ tokenName: this._tokenName,
157
+ });
158
+ }
159
+ this._instructionsData = [];
160
+ await Promise.all(this._tokenAssociateRecipients.map(async (recipient) => {
161
+ const token = (0, utils_1.getSolTokenFromTokenName)(recipient.tokenName);
162
+ let tokenAddress;
163
+ let programId;
164
+ if (recipient.tokenAddress && recipient.programId) {
165
+ tokenAddress = recipient.tokenAddress;
166
+ programId = recipient.programId;
167
+ }
168
+ else if (token) {
169
+ tokenAddress = token.tokenAddress;
170
+ programId = token.programId;
171
+ }
172
+ else {
173
+ throw new sdk_core_1.BuildTransactionError('Invalid transaction: invalid token name, got: ' + recipient.tokenName);
174
+ }
175
+ // Use the provided ataAddress if it exists, otherwise calculate it
176
+ let ataPk = recipient.ataAddress;
177
+ if (!ataPk) {
178
+ ataPk = await (0, utils_1.getAssociatedTokenAccountAddress)(tokenAddress, recipient.ownerAddress, false, programId);
179
+ }
180
+ this._instructionsData.push({
181
+ type: constants_1.InstructionBuilderTypes.CreateAssociatedTokenAccount,
182
+ params: {
183
+ mintAddress: tokenAddress,
184
+ ataAddress: ataPk,
185
+ ownerAddress: recipient.ownerAddress,
186
+ payerAddress: this._sender,
187
+ tokenName: recipient.tokenName,
188
+ programId: programId,
189
+ },
190
+ });
191
+ }));
192
+ return await super.buildImplementation();
193
+ }
194
+ }
195
+ exports.AtaInitializationBuilder = AtaInitializationBuilder;
196
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRhSW5pdGlhbGl6YXRpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9hdGFJbml0aWFsaXphdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkRBQTBEO0FBQzFELG1EQUFvRztBQUVwRywrQ0FBNEM7QUFFNUMsMkNBQXNEO0FBQ3RELG1DQUtpQjtBQUNqQixvREFBNEI7QUFDNUIsMENBQTRCO0FBRTVCLE1BQWEsd0JBQXlCLFNBQVEsdUNBQWtCO0lBUzlELFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ25CLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSx5QkFBVyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyx5QkFBeUIsR0FBRyxFQUFFLENBQUM7SUFDdEMsQ0FBQztJQUVELElBQWMsZUFBZTtRQUMzQixPQUFPLDBCQUFlLENBQUMsb0NBQW9DLENBQUM7SUFDOUQsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixXQUFXLENBQUMsRUFBZTtRQUN6QixLQUFLLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3RCLElBQUksQ0FBQyx5QkFBeUIsR0FBRyxFQUFFLENBQUM7UUFDcEMsS0FBSyxNQUFNLFdBQVcsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUNqRCxJQUFJLFdBQVcsQ0FBQyxJQUFJLEtBQUssbUNBQXVCLENBQUMsNEJBQTRCLEVBQUUsQ0FBQztnQkFDOUUsTUFBTSxrQkFBa0IsR0FBWSxXQUFXLENBQUM7Z0JBQ2hELElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUM7b0JBQ2xDLFlBQVksRUFBRSxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsWUFBWTtvQkFDcEQsU0FBUyxFQUFFLGtCQUFrQixDQUFDLE1BQU0s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QyxZQUFZLENBQUM7Z0JBQ2xDLFNBQVMsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDO1lBQzlCLENBQUM7aUJBQU0sQ0FBQztnQkFDTixNQUFNLElBQUksZ0NBQXFCLENBQUMsZ0RBQWdELEdBQUcsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzFHLENBQUM7WUFFRCxtRUFBbUU7WUFDbkUsSUFBSSxLQUFLLEdBQUcsU0FBUyxDQUFDLFVBQVUsQ0FBQztZQUNqQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ1gsS0FBSyxHQUFHLE1BQU0sSUFBQSx3Q0FBZ0MsRUFBQyxZQUFZLEVBQUUsU0FBUyxDQUFDLFlBQVksRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDekcsQ0FBQztZQUVELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUM7Z0JBQzFCLElBQUksRUFBRSxtQ0FBdUIsQ0FBQyw0QkFBNEI7Z0JBQzFELE1BQU0sRUFBRTtvQkFDTixXQUFXLEVBQUUsWUFBWTtvQkFDekIsVUFBVSxFQUFFLEtBQUs7b0JBQ2pCLFlBQVksRUFBRSxTQUFTLENBQUMsWUFBWTtvQkFDcEMsWUFBWSxFQUFFLElBQUksQ0FBQyxPQUFPO29CQUMxQixTQUFTLEVBQUUsU0FBUyxDQUFDLFNBQVM7b0JBQzlCLFNBQVMsRUFBRSxTQUFTO2lCQUNyQjthQUNGLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUNILENBQUM7UUFFRixPQUFPLE1BQU0sS0FBSyxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDM0MsQ0FBQztDQUNGO0FBektELDREQXlLQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IEJ1aWxkVHJhbnNhY3Rpb25FcnJvciwgRHVwbGljYXRlTWV0aG9kRXJyb3IsIFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBBdGFJbml0LCBUb2tlbkFzc29jaWF0ZVJlY2lwaWVudCB9IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHsgSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQge1xuICBnZXRBc3NvY2lhdGVkVG9rZW5BY2NvdW50QWRkcmVzcyxcbiAgZ2V0U29sVG9rZW5Gcm9tVG9rZW5OYW1lLFxuICB2YWxpZGF0ZU1pbnRBZGRyZXNzLFxuICB2YWxpZGF0ZU93bmVyQWRkcmVzcyxcbn0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgKiBhcyBfIGZyb20gJ2xvZGFzaCc7XG5cbmV4cG9ydCBjbGFzcyBBdGFJbml0aWFsaXphdGlvbkJ1aWxkZXIgZXh0ZW5kcyBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICAvLyBAZGVwcmVjYXRlZCAtIFVzZSB0aGUgX3Rva2VuQXNzb2NpYXRlUmVjaXBpZW50cyBmaWVsZCBpbnN0ZWFkXG4gIHByaXZhdGUgX3Rva2VuTmFtZTogc3RyaW5nO1xuICAvLyBAZGVwcmVjYXRlZCAtIFVzZSB0aGUgX3Rva2VuQXNzb2NpYXRlUmVjaXBpZW50cyBmaWVsZCBpbnN0ZWFkXG4gIHByaXZhdGUgX21pbnQ6IHN0cmluZztcbiAgLy8gQGRlcHJlY2F0ZWQgLSBVc2UgdGhlIF90b2tlbkFzc29jaWF0ZVJlY2lwaWVudHMgZmllbGQgaW5zdGVhZFxuICBwcml2YXRlIF9vd25lcjogc3RyaW5nO1xuICBwcml2YXRlIF90b2tlbkFzc29jaWF0ZVJlY2lwaWVudHM6IFRva2VuQXNzb2NpYXRlUmVjaXBpZW50W107XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uID0gbmV3IFRyYW5zYWN0aW9uKF9jb2luQ29uZmlnKTtcbiAgICB0aGlzLl90b2tlbkFzc29jaWF0ZVJlY2lwaWVudHMgPSBbXTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb25UeXBlKCk6IFRyYW5zYWN0aW9uVHlwZSB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5Bc3NvY2lhdGVkVG9rZW5BY2NvdW50SW5pdGlhbGl6YXRpb247XG4gIH1cblxuICAvKiogQGluaGVyaXREb2MgKi9cbiAgaW5pdEJ1aWxkZXIodHg6IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgc3VwZXIuaW5pdEJ1aWxkZXIodHgpO1xuICAgIHRoaXMuX3Rva2VuQXNzb2NpYXRlUmVjaXBpZW50cyA9IFtdO1xuICAgIGZvciAoY29uc3QgaW5zdHJ1Y3Rpb24gb2YgdGhpcy5faW5zdHJ1Y3Rpb25zRGF0YSkge1xuICAgICAgaWYgKGluc3RydWN0aW9uLnR5cGUgPT09IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkNyZWF0ZUFzc29jaWF0ZWRUb2tlbkFjY291bnQpIHtcbiAgICAgICAgY29uc3QgYXRhSW5pdEluc3RydWN0aW9uOiBBdGFJbml0ID0gaW5zdHJ1Y3Rpb247XG4gICAgICAgIHRoaXMuX3Rva2VuQXNzb2NpYXRlUmVjaXBpZW50cy5wdXNoKHtcbiAgICAgICAgICBvd25lckFkZHJlc3M6IGF0YUluaXRJbnN0cnVjdGlvbi5wYXJhbXMub3duZXJBZGRyZXNzLFxuICAgICAgICAgIHRva2VuTmFtZTogYXRhSW5pdEluc3RydWN0aW9uLnBhcmFtcy50b2tlbk5hbWUsXG4gICAgICAgICAgdG9rZW5BZGRyZXNzOiBhdGFJbml0SW5zdHJ1Y3Rpb24ucGFyYW1zLm1pbnRBZGRyZXNzLFxuICAgICAgICAgIHByb2dyYW1JZDogYXRhSW5pdEluc3RydWN0aW9uLnBhcmFtcy5wcm9ncmFtSWQsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCAtIFVzZSB0aGUgZW5hYmxlVG9rZW4gbWV0aG9kIGluc3RlYWRcbiAgICogU2V0cyB0aGUgbWludCBhZGRyZXNzIG9mIHRoZSBhc3NvY2lhdGVkIHRva2VuIGFjY291bnRcbiAgICpcbiAgICogQHBhcmFtIHRva2VuTmFtZSBuYW1lIG9mIHRoZSB0b2tlblxuICAgKi9cbiAgbWludCh0b2tlbk5hbWU6IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICh0aGlzLl90b2tlbkFzc29jaWF0ZVJlY2lwaWVudHMubGVuZ3RoID4gMCkge1xuICAgICAgdGhyb3cgbmV3IER1cGxpY2F0ZU1ldGhvZEVycm9yKCdJbnZhbGlkIG1ldGhvZDogZW5hYmxlVG9rZW4gYWxyZWFkeSB1c2VkJyk7XG4gICAgfVxuICAgIGNvbnN0IHRva2VuID0gZ2V0U29sVG9rZW5Gcm9tVG9rZW5OYW1lKHRva2VuTmFtZSk7XG4gICAgaWYgKCF0b2tlbikge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCB0cmFuc2FjdGlvbjogaW52YWxpZCB0b2tlbiBuYW1lLCBnb3Q6ICcgKyB0b2tlbk5hbWUpO1xuICAgIH1cbiAgICB0aGlzLl9taW50ID0gdG9rZW4udG9rZW5BZGRyZXNzO1xuICAgIHRoaXMuX3Rva2VuTmFtZSA9IHRva2VuLm5hbWU7XG4gICAgdmFsaWRhdGVNaW50QWRkcmVzcyh0aGlzLl9taW50KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCAtIFVzZSB0aGUgZW5hYmxlVG9rZW4gbWV0aG9kIGluc3RlYWRcbiAgICogU2V0cyB0aGUgb3duZXIgYWRkcmVzcyBvZiB0aGUgYXNzb2NpYXRlZCB0b2tlbiBhY2NvdW50XG4gICAqXG4gICAqIEBwYXJhbSBvd25lciBvd25lciBhZGRyZXNzIG9mIGFzc29jaWF0ZWQgdG9rZW4gYWNjb3VudFxuICAgKi9cbiAgb3duZXIob3duZXI6IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICh0aGlzLl90b2tlbkFzc29jaWF0ZVJlY2lwaWVudHMubGVuZ3RoID4gMCkge1xuICAgICAgdGhyb3cgbmV3IER1cGxpY2F0ZU1ldGhvZEVycm9yKCdJbnZhbGlkIG1ldGhvZDogZW5hYmxlVG9rZW4gYWxyZWFkeSB1c2VkJyk7XG4gICAgfVxuICAgIHRoaXMuX293bmVyID0gb3duZXI7XG4gICAgdmFsaWRhdGVPd25lckFkZHJlc3Mob3duZXIpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIC0gVXNlIHRoZSBhc3NvY2lhdGVkVG9rZW5BY2NvdW50UmVudCBtZXRob2QgaW5zdGVhZFxuICAgKiBVc2VkIHRvIHNldCB0aGUgbWluaW11bSByZW50IGV4ZW1wdCBhbW91bnRcbiAgICpcbiAgICogQHBhcmFtIHJlbnRFeGVtcHRBbW91bnQgbWluaW11bSByZW50IGV4ZW1wdCBhbW91bnQgaW4gbGFtcG9ydHNcbiAgICovXG4gIHJlbnRFeGVtcHRBbW91bnQocmVudEV4ZW1wdEFtb3VudDogc3RyaW5nKTogdGhpcyB7XG4gICAgcmV0dXJuIHN1cGVyLmFzc29jaWF0ZWRUb2tlbkFjY291bnRSZW50KHJlbnRFeGVtcHRBbW91bnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVzZWQgZm9yIGFkZGluZyB0b2tlbiBhc3NvY2lhdGlvbiByZWNpcGllbnRzIGNvbnNpc3RpbmdcbiAgICogIDEuIG93bmVyQWRkcmVzczogb3duZXIgb2YgdGhlIHRva2VuIGFkZHJlc3NcbiAgICogIDIuIHRva2VuTmFtZTogdGhlIG5hbWUgb2YgdG9rZW4gZW5hYmxlZCB0aGF0IGlzIHN1cHBvcnRlZCBieSBCaXRHb1xuICAgKlxuICAgKiAgQHBhcmFtIFRva2VuQXNzb2NpYXRlUmVjaXBpZW50IHRva2VuIGFzc29jaWF0ZSByZWNpcGllbnQgaW5mb1xuICAgKi9cblxuICBlbmFibGVUb2tlbihyZWNpcGllbnQ6IFRva2VuQXNzb2NpYXRlUmVjaXBpZW50KTogdGhpcyB7XG4gICAgaWYgKHRoaXMuX3Rva2VuQXNzb2NpYXRlUmVjaXBpZW50cy5zb21lKCh0b2tlbkFzc29jaWF0ZSkgPT4gXy5pc0VxdWFsKHRva2VuQXNzb2NpYXRlLCByZWNpcGllbnQpKSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcihcbiAgICAgICAgJ0ludmFsaWQgdHJhbnNhY3Rpb246IGludmFsaWQgZHVwbGljYXRlIHJlY2lwaWVudHMsIGdvdDogb3duZXIgJyArXG4gICAgICAgICAgcmVjaXBpZW50Lm93bmVyQWRkcmVzcyArXG4gICAgICAgICAgJyBhbmQgdG9rZW5OYW1lICcgK1xuICAgICAgICAgIHJlY2lwaWVudC50b2tlbk5hbWUgK1xuICAgICAgICAgICcgdHdpY2UnXG4gICAgICApO1xuICAgIH1cbiAgICBpZiAodGhpcy5fdG9rZW5OYW1lIHx8IHRoaXMuX21pbnQpIHtcbiAgICAgIHRocm93IG5ldyBEdXBsaWNhdGVNZXRob2RFcnJvcignSW52YWxpZCBtZXRob2Q6IHNpbmdsZSBtaW50IGFscmVhZHkgdXNlZCcpO1xuICAgIH1cbiAgICB2YWxpZGF0ZU93bmVyQWRkcmVzcyhyZWNpcGllbnQub3duZXJBZGRyZXNzKTtcbiAgICBjb25zdCB0b2tlbiA9IGdldFNvbFRva2VuRnJvbVRva2VuTmFtZShyZWNpcGllbnQudG9rZW5OYW1lKTtcbiAgICBsZXQgdG9rZW5BZGRyZXNzOiBzdHJpbmc7XG4gICAgaWYgKHJlY2lwaWVudC50b2tlbkFkZHJlc3MpIHtcbiAgICAgIHRva2VuQWRkcmVzcyA9IHJlY2lwaWVudC50b2tlbkFkZHJlc3M7XG4gICAgfSBlbHNlIGlmICh0b2tlbikge1xuICAgICAgdG9rZW5BZGRyZXNzID0gdG9rZW4udG9rZW5BZGRyZXNzO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uOiBpbnZhbGlkIHRva2VuIG5hbWUsIGdvdDogJyArIHJlY2lwaWVudC50b2tlbk5hbWUpO1xuICAgIH1cbiAgICB2YWxpZGF0ZU1pbnRBZGRyZXNzKHRva2VuQWRkcmVzcyk7XG5cbiAgICB0aGlzLl90b2tlbkFzc29jaWF0ZVJlY2lwaWVudHMucHVzaChyZWNpcGllbnQpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBhc3luYyBidWlsZEltcGxlbWVudGF0aW9uKCk6IFByb21pc2U8VHJhbnNhY3Rpb24+IHtcbiAgICBhc3NlcnQodGhpcy5fc2VuZGVyLCAnU2VuZGVyIG11c3QgYmUgc2V0IGJlZm9yZSBidWlsZGluZyB0aGUgdHJhbnNhY3Rpb24nKTtcbiAgICBpZiAodGhpcy5fdG9rZW5Bc3NvY2lhdGVSZWNpcGllbnRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgYXNzZXJ0KHRoaXMuX21pbnQgJiYgdGhpcy5fdG9rZW5OYW1lLCAnTWludCBtdXN0IGJlIHNldCBiZWZvcmUgYnVpbGRpbmcgdGhlIHRyYW5zYWN0aW9uJyk7XG4gICAgICB0aGlzLl9vd25lciA9IHRoaXMuX293bmVyIHx8IHRoaXMuX3NlbmRlcjtcblxuICAgICAgdGhpcy5fdG9rZW5Bc3NvY2lhdGVSZWNpcGllbnRzLnB1c2goe1xuICAgICAgICBvd25lckFkZHJlc3M6IHRoaXMuX293bmVyLFxuICAgICAgICB0b2tlbk5hbWU6IHRoaXMuX3Rva2VuTmFtZSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHRoaXMuX2luc3RydWN0aW9uc0RhdGEgPSBbXTtcbiAgICBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgIHRoaXMuX3Rva2VuQXNzb2NpYXRlUmVjaXBpZW50cy5tYXAoYXN5bmMgKHJlY2lwaWVudCkgPT4ge1xuICAgICAgICBjb25zdCB0b2tlbiA9IGdldFNvbFRva2VuRnJvbVRva2VuTmFtZShyZWNpcGllbnQudG9rZW5OYW1lKTtcbiAgICAgICAgbGV0IHRva2VuQWRkcmVzczogc3RyaW5nO1xuICAgICAgICBsZXQgcHJvZ3JhbUlkOiBzdHJpbmc7XG4gICAgICAgIGlmIChyZWNpcGllbnQudG9rZW5BZGRyZXNzICYmIHJlY2lwaWVudC5wcm9ncmFtSWQpIHtcbiAgICAgICAgICB0b2tlbkFkZHJlc3MgPSByZWNpcGllbnQudG9rZW5BZGRyZXNzO1xuICAgICAgICAgIHByb2dyYW1JZCA9IHJlY2lwaWVudC5wcm9ncmFtSWQ7XG4gICAgICAgIH0gZWxzZSBpZiAodG9rZW4pIHtcbiAgICAgICAgICB0b2tlbkFkZHJlc3MgPSB0b2tlbi50b2tlbkFkZHJlc3M7XG4gICAgICAgICAgcHJvZ3JhbUlkID0gdG9rZW4ucHJvZ3JhbUlkO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgdHJhbnNhY3Rpb246IGludmFsaWQgdG9rZW4gbmFtZSwgZ290OiAnICsgcmVjaXBpZW50LnRva2VuTmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBVc2UgdGhlIHByb3ZpZGVkIGF0YUFkZHJlc3MgaWYgaXQgZXhpc3RzLCBvdGhlcndpc2UgY2FsY3VsYXRlIGl0XG4gICAgICAgIGxldCBhdGFQayA9IHJlY2lwaWVudC5hdGFBZGRyZXNzO1xuICAgICAgICBpZiAoIWF0YVBrKSB7XG4gICAgICAgICAgYXRhUGsgPSBhd2FpdCBnZXRBc3NvY2lhdGVkVG9rZW5BY2NvdW50QWRkcmVzcyh0b2tlbkFkZHJlc3MsIHJlY2lwaWVudC5vd25lckFkZHJlc3MsIGZhbHNlLCBwcm9ncmFtSWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5faW5zdHJ1Y3Rpb25zRGF0YS5wdXNoKHtcbiAgICAgICAgICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5DcmVhdGVBc3NvY2lhdGVkVG9rZW5BY2NvdW50LFxuICAgICAgICAgIHBhcmFtczoge1xuICAgICAgICAgICAgbWludEFkZHJlc3M6IHRva2VuQWRkcmVzcyxcbiAgICAgICAgICAgIGF0YUFkZHJlc3M6IGF0YVBrLFxuICAgICAgICAgICAgb3duZXJBZGRyZXNzOiByZWNpcGllbnQub3duZXJBZGRyZXNzLFxuICAgICAgICAgICAgcGF5ZXJBZGRyZXNzOiB0aGlzLl9zZW5kZXIsXG4gICAgICAgICAgICB0b2tlbk5hbWU6IHJlY2lwaWVudC50b2tlbk5hbWUsXG4gICAgICAgICAgICBwcm9ncmFtSWQ6IHByb2dyYW1JZCxcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICAgIH0pXG4gICAgKTtcblxuICAgIHJldHVybiBhd2FpdCBzdXBlci5idWlsZEltcGxlbWVudGF0aW9uKCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"closeAtaBuilder.d.ts","sourceRoot":"","sources":["../../../../src/lib/closeAtaBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAI7D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,qBAAa,eAAgB,SAAQ,kBAAkB;IACrD,SAAS,CAAC,eAAe,EAAE,MAAM,CAAC;IAClC,SAAS,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACtC,SAAS,CAAC,iBAAiB,EAAE,MAAM,CAAC;gBAExB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,cAAc,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAM5C,kBAAkB,CAAC,kBAAkB,EAAE,MAAM,GAAG,IAAI;IAMpD,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI;IAMhD,kBAAkB;IAClB,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAYlC,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;CAsB5D"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.CloseAtaBuilder = void 0;
7
+ const sdk_core_1 = require("@bitgo-beta/sdk-core");
8
+ const assert_1 = __importDefault(require("assert"));
9
+ const constants_1 = require("./constants");
10
+ const transaction_1 = require("./transaction");
11
+ const transactionBuilder_1 = require("./transactionBuilder");
12
+ const utils_1 = require("./utils");
13
+ class CloseAtaBuilder extends transactionBuilder_1.TransactionBuilder {
14
+ constructor(_coinConfig) {
15
+ super(_coinConfig);
16
+ this._transaction = new transaction_1.Transaction(_coinConfig);
17
+ }
18
+ get transactionType() {
19
+ return sdk_core_1.TransactionType.CloseAssociatedTokenAccount;
20
+ }
21
+ accountAddress(accountAddress) {
22
+ (0, utils_1.validateAddress)(accountAddress, 'accountAddress');
23
+ this._accountAddress = accountAddress;
24
+ return this;
25
+ }
26
+ destinationAddress(destinationAddress) {
27
+ (0, utils_1.validateAddress)(destinationAddress, 'destinationAddress');
28
+ this._destinationAddress = destinationAddress;
29
+ return this;
30
+ }
31
+ authorityAddress(authorityAddress) {
32
+ (0, utils_1.validateAddress)(authorityAddress, 'authorityAddress');
33
+ this._authorityAddress = authorityAddress;
34
+ return this;
35
+ }
36
+ /** @inheritDoc */
37
+ initBuilder(tx) {
38
+ super.initBuilder(tx);
39
+ for (const instruction of this._instructionsData) {
40
+ if (instruction.type === constants_1.InstructionBuilderTypes.CloseAssociatedTokenAccount) {
41
+ const ataCloseInstruction = instruction;
42
+ this.accountAddress(ataCloseInstruction.params.accountAddress);
43
+ this.destinationAddress(ataCloseInstruction.params.destinationAddress);
44
+ this.authorityAddress(ataCloseInstruction.params.authorityAddress);
45
+ }
46
+ }
47
+ }
48
+ /** @inheritdoc */
49
+ async buildImplementation() {
50
+ (0, assert_1.default)(this._accountAddress, 'Account Address must be set before building the transaction');
51
+ (0, assert_1.default)(this._destinationAddress, 'Destination Address must be set before building the transaction');
52
+ (0, assert_1.default)(this._authorityAddress, 'Authority Address must be set before building the transaction');
53
+ if (this._accountAddress === this._destinationAddress) {
54
+ throw new sdk_core_1.BuildTransactionError('Account address to close cannot be the same as the destination address');
55
+ }
56
+ const closeAssociatedTokenAccountData = {
57
+ type: constants_1.InstructionBuilderTypes.CloseAssociatedTokenAccount,
58
+ params: {
59
+ accountAddress: this._accountAddress,
60
+ destinationAddress: this._destinationAddress,
61
+ authorityAddress: this._authorityAddress,
62
+ },
63
+ };
64
+ this._instructionsData = [closeAssociatedTokenAccountData];
65
+ return await super.buildImplementation();
66
+ }
67
+ }
68
+ exports.CloseAtaBuilder = CloseAtaBuilder;
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvc2VBdGFCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9jbG9zZUF0YUJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsbURBQThFO0FBRTlFLG9EQUE0QjtBQUM1QiwyQ0FBc0Q7QUFFdEQsK0NBQTRDO0FBQzVDLDZEQUEwRDtBQUMxRCxtQ0FBMEM7QUFFMUMsTUFBYSxlQUFnQixTQUFRLHVDQUFrQjtJQUtyRCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUkseUJBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsSUFBYyxlQUFlO1FBQzNCLE9BQU8sMEJBQWUsQ0FBQywyQkFBMkIsQ0FBQztJQUNyRCxDQUFDO0lBRUQsY0FBYyxDQUFDLGNBQXNCO1FBQ25DLElBQUEsdUJBQWUsRUFBQyxjQUFjLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUNsRCxJQUFJLENBQUMsZUFBZSxHQUFHLGNBQWMsQ0FBQztRQUN0QyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxrQkFBMEI7UUFDM0MsSUFBQSx1QkFBZSxFQUFDLGtCQUFrQixFQUFFLG9CQUFvQixDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLG1CQUFtQixHQUFHLGtCQUFrQixDQUFDO1FBQzlDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELGdCQUFnQixDQUFDLGdCQUF3QjtRQUN2QyxJQUFBLHVCQUFlLEVBQUMsZ0JBQWdCLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsZ0JBQWdCLENBQUM7UUFDMUMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLFdBQVcsQ0FBQyxFQUFlO1FBQ3pCLEtBQUssQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdEIsS0FBSyxNQUFNLFdBQVcsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUNqRCxJQUFJLFdBQVcsQ0FBQyxJQUFJLEtBQUssbUNBQXVCLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztnQkFDN0UsTUFBTSxtQkFBbUIsR0FBYSxXQUFXLENBQUM7Z0JBQ2xELElBQUksQ0FBQyxjQUFjLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2dCQUMvRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7Z0JBQ3ZFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUNyRSxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxrQkFBa0I7SUFDUixLQUFLLENBQUMsbUJBQW1CO1FBQ2pDLElBQUEsZ0JBQU0sRUFBQyxJQUFJLENBQUMsZUFBZSxFQUFFLDZEQUE2RCxDQUFDLENBQUM7UUFDNUYsSUFBQSxnQkFBTSxFQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxpRUFBaUUsQ0FBQyxDQUFDO1FBQ3BHLElBQUEsZ0JBQU0sRUFBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsK0RBQStELENBQUMsQ0FBQztRQUVoRyxJQUFJLElBQUksQ0FBQyxlQUFlLEtBQUssSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDdEQsTUFBTSxJQUFJLGdDQUFxQixDQUFDLHdFQUF3RSxDQUFDLENBQUM7UUFDNUcsQ0FBQztRQUVELE1BQU0sK0JBQStCLEdBQWE7WUFDaEQsSUFBSSxFQUFFLG1DQUF1QixDQUFDLDJCQUEyQjtZQUN6RCxNQUFNLEVBQUU7Z0JBQ04sY0FBYyxFQUFFLElBQUksQ0FBQyxlQUFlO2dCQUNwQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsbUJBQW1CO2dCQUM1QyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsaUJBQWlCO2FBQ3pDO1NBQ0YsQ0FBQztRQUVGLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxDQUFDLCtCQUErQixDQUFDLENBQUM7UUFFM0QsT0FBTyxNQUFNLEtBQUssQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzNDLENBQUM7Q0FDRjtBQXBFRCwwQ0FvRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsIFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IEluc3RydWN0aW9uQnVpbGRlclR5cGVzIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgQXRhQ2xvc2UgfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyB2YWxpZGF0ZUFkZHJlc3MgfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNsYXNzIENsb3NlQXRhQnVpbGRlciBleHRlbmRzIFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gIHByb3RlY3RlZCBfYWNjb3VudEFkZHJlc3M6IHN0cmluZztcbiAgcHJvdGVjdGVkIF9kZXN0aW5hdGlvbkFkZHJlc3M6IHN0cmluZztcbiAgcHJvdGVjdGVkIF9hdXRob3JpdHlBZGRyZXNzOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uID0gbmV3IFRyYW5zYWN0aW9uKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb25UeXBlKCk6IFRyYW5zYWN0aW9uVHlwZSB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5DbG9zZUFzc29jaWF0ZWRUb2tlbkFjY291bnQ7XG4gIH1cblxuICBhY2NvdW50QWRkcmVzcyhhY2NvdW50QWRkcmVzczogc3RyaW5nKTogdGhpcyB7XG4gICAgdmFsaWRhdGVBZGRyZXNzKGFjY291bnRBZGRyZXNzLCAnYWNjb3VudEFkZHJlc3MnKTtcbiAgICB0aGlzLl9hY2NvdW50QWRkcmVzcyA9IGFjY291bnRBZGRyZXNzO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgZGVzdGluYXRpb25BZGRyZXNzKGRlc3RpbmF0aW9uQWRkcmVzczogc3RyaW5nKTogdGhpcyB7XG4gICAgdmFsaWRhdGVBZGRyZXNzKGRlc3RpbmF0aW9uQWRkcmVzcywgJ2Rlc3RpbmF0aW9uQWRkcmVzcycpO1xuICAgIHRoaXMuX2Rlc3RpbmF0aW9uQWRkcmVzcyA9IGRlc3RpbmF0aW9uQWRkcmVzcztcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGF1dGhvcml0eUFkZHJlc3MoYXV0aG9yaXR5QWRkcmVzczogc3RyaW5nKTogdGhpcyB7XG4gICAgdmFsaWRhdGVBZGRyZXNzKGF1dGhvcml0eUFkZHJlc3MsICdhdXRob3JpdHlBZGRyZXNzJyk7XG4gICAgdGhpcy5fYXV0aG9yaXR5QWRkcmVzcyA9IGF1dGhvcml0eUFkZHJlc3M7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKiogQGluaGVyaXREb2MgKi9cbiAgaW5pdEJ1aWxkZXIodHg6IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgc3VwZXIuaW5pdEJ1aWxkZXIodHgpO1xuICAgIGZvciAoY29uc3QgaW5zdHJ1Y3Rpb24gb2YgdGhpcy5faW5zdHJ1Y3Rpb25zRGF0YSkge1xuICAgICAgaWYgKGluc3RydWN0aW9uLnR5cGUgPT09IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkNsb3NlQXNzb2NpYXRlZFRva2VuQWNjb3VudCkge1xuICAgICAgICBjb25zdCBhdGFDbG9zZUluc3RydWN0aW9uOiBBdGFDbG9zZSA9IGluc3RydWN0aW9uO1xuICAgICAgICB0aGlzLmFjY291bnRBZGRyZXNzKGF0YUNsb3NlSW5zdHJ1Y3Rpb24ucGFyYW1zLmFjY291bnRBZGRyZXNzKTtcbiAgICAgICAgdGhpcy5kZXN0aW5hdGlvbkFkZHJlc3MoYXRhQ2xvc2VJbnN0cnVjdGlvbi5wYXJhbXMuZGVzdGluYXRpb25BZGRyZXNzKTtcbiAgICAgICAgdGhpcy5hdXRob3JpdHlBZGRyZXNzKGF0YUNsb3NlSW5zdHJ1Y3Rpb24ucGFyYW1zLmF1dGhvcml0eUFkZHJlc3MpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgYnVpbGRJbXBsZW1lbnRhdGlvbigpOiBQcm9taXNlPFRyYW5zYWN0aW9uPiB7XG4gICAgYXNzZXJ0KHRoaXMuX2FjY291bnRBZGRyZXNzLCAnQWNjb3VudCBBZGRyZXNzIG11c3QgYmUgc2V0IGJlZm9yZSBidWlsZGluZyB0aGUgdHJhbnNhY3Rpb24nKTtcbiAgICBhc3NlcnQodGhpcy5fZGVzdGluYXRpb25BZGRyZXNzLCAnRGVzdGluYXRpb24gQWRkcmVzcyBtdXN0IGJlIHNldCBiZWZvcmUgYnVpbGRpbmcgdGhlIHRyYW5zYWN0aW9uJyk7XG4gICAgYXNzZXJ0KHRoaXMuX2F1dGhvcml0eUFkZHJlc3MsICdBdXRob3JpdHkgQWRkcmVzcyBtdXN0IGJlIHNldCBiZWZvcmUgYnVpbGRpbmcgdGhlIHRyYW5zYWN0aW9uJyk7XG5cbiAgICBpZiAodGhpcy5fYWNjb3VudEFkZHJlc3MgPT09IHRoaXMuX2Rlc3RpbmF0aW9uQWRkcmVzcykge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignQWNjb3VudCBhZGRyZXNzIHRvIGNsb3NlIGNhbm5vdCBiZSB0aGUgc2FtZSBhcyB0aGUgZGVzdGluYXRpb24gYWRkcmVzcycpO1xuICAgIH1cblxuICAgIGNvbnN0IGNsb3NlQXNzb2NpYXRlZFRva2VuQWNjb3VudERhdGE6IEF0YUNsb3NlID0ge1xuICAgICAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ2xvc2VBc3NvY2lhdGVkVG9rZW5BY2NvdW50LFxuICAgICAgcGFyYW1zOiB7XG4gICAgICAgIGFjY291bnRBZGRyZXNzOiB0aGlzLl9hY2NvdW50QWRkcmVzcyxcbiAgICAgICAgZGVzdGluYXRpb25BZGRyZXNzOiB0aGlzLl9kZXN0aW5hdGlvbkFkZHJlc3MsXG4gICAgICAgIGF1dGhvcml0eUFkZHJlc3M6IHRoaXMuX2F1dGhvcml0eUFkZHJlc3MsXG4gICAgICB9LFxuICAgIH07XG5cbiAgICB0aGlzLl9pbnN0cnVjdGlvbnNEYXRhID0gW2Nsb3NlQXNzb2NpYXRlZFRva2VuQWNjb3VudERhdGFdO1xuXG4gICAgcmV0dXJuIGF3YWl0IHN1cGVyLmJ1aWxkSW1wbGVtZW50YXRpb24oKTtcbiAgfVxufVxuIl19
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/lib/constants.ts"],"names":[],"mappings":"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"}