@sign-global/tokentable 0.5.3-beta.0 → 1.0.0

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 (634) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/index.d.mts +122 -0
  3. package/dist/index.d.ts +122 -0
  4. package/dist/index.js +828 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/index.mjs +824 -0
  7. package/dist/index.mjs.map +1 -0
  8. package/package.json +23 -34
  9. package/src/AirdropClient.ts +320 -0
  10. package/src/SignatureAirdropClient.ts +390 -0
  11. package/src/index.ts +4 -0
  12. package/src/strategies/AirdropStrategyFactory.ts +34 -0
  13. package/src/strategies/EvmAirdropStrategy.ts +88 -0
  14. package/src/strategies/IAirdropStrategy.ts +28 -0
  15. package/src/strategies/SolanaAirdropStrategy.ts +76 -0
  16. package/src/strategies/StrategyCache.ts +34 -0
  17. package/src/strategies/TonAirdropStrategy.ts +76 -0
  18. package/src/tests/index.test.ts +387 -0
  19. package/tsup.config.ts +28 -0
  20. package/.github/workflows/beta.yml +0 -28
  21. package/.github/workflows/push.yml +0 -33
  22. package/.prettierignore +0 -2
  23. package/.prettierrc +0 -7
  24. package/README.md +0 -286
  25. package/dist/cjs/airdrop/AirdropClient.d.ts +0 -47
  26. package/dist/cjs/airdrop/AirdropClient.js +0 -260
  27. package/dist/cjs/airdrop/AirdropClient.js.map +0 -1
  28. package/dist/cjs/airdrop/SignatureAirdropClient.d.ts +0 -54
  29. package/dist/cjs/airdrop/SignatureAirdropClient.js +0 -312
  30. package/dist/cjs/airdrop/SignatureAirdropClient.js.map +0 -1
  31. package/dist/cjs/airdrop/common/index.d.ts +0 -1075
  32. package/dist/cjs/airdrop/common/index.js +0 -41
  33. package/dist/cjs/airdrop/common/index.js.map +0 -1
  34. package/dist/cjs/airdrop/common/projectDataForTon.d.ts +0 -79
  35. package/dist/cjs/airdrop/common/projectDataForTon.js +0 -83
  36. package/dist/cjs/airdrop/common/projectDataForTon.js.map +0 -1
  37. package/dist/cjs/airdrop/constants/chain-config.d.ts +0 -1144
  38. package/dist/cjs/airdrop/constants/chain-config.js +0 -108
  39. package/dist/cjs/airdrop/constants/chain-config.js.map +0 -1
  40. package/dist/cjs/airdrop/constants/index.d.ts +0 -7
  41. package/dist/cjs/airdrop/constants/index.js +0 -25
  42. package/dist/cjs/airdrop/constants/index.js.map +0 -1
  43. package/dist/cjs/airdrop/constants/network.d.ts +0 -180
  44. package/dist/cjs/airdrop/constants/network.js +0 -150
  45. package/dist/cjs/airdrop/constants/network.js.map +0 -1
  46. package/dist/cjs/airdrop/contracts/evm/AirdropService.d.ts +0 -36
  47. package/dist/cjs/airdrop/contracts/evm/AirdropService.js +0 -149
  48. package/dist/cjs/airdrop/contracts/evm/AirdropService.js.map +0 -1
  49. package/dist/cjs/airdrop/contracts/evm/SignatureAirdropService.d.ts +0 -26
  50. package/dist/cjs/airdrop/contracts/evm/SignatureAirdropService.js +0 -95
  51. package/dist/cjs/airdrop/contracts/evm/SignatureAirdropService.js.map +0 -1
  52. package/dist/cjs/airdrop/contracts/evm/contracts/AirdropSignatureClient.d.ts +0 -17
  53. package/dist/cjs/airdrop/contracts/evm/contracts/AirdropSignatureClient.js +0 -51
  54. package/dist/cjs/airdrop/contracts/evm/contracts/AirdropSignatureClient.js.map +0 -1
  55. package/dist/cjs/airdrop/contracts/evm/contracts/AirdropSignatureFeeClient.d.ts +0 -17
  56. package/dist/cjs/airdrop/contracts/evm/contracts/AirdropSignatureFeeClient.js +0 -51
  57. package/dist/cjs/airdrop/contracts/evm/contracts/AirdropSignatureFeeClient.js.map +0 -1
  58. package/dist/cjs/airdrop/contracts/evm/contracts/AirdropV2Client.d.ts +0 -8
  59. package/dist/cjs/airdrop/contracts/evm/contracts/AirdropV2Client.js +0 -40
  60. package/dist/cjs/airdrop/contracts/evm/contracts/AirdropV2Client.js.map +0 -1
  61. package/dist/cjs/airdrop/contracts/evm/contracts/AirdropV3Client.d.ts +0 -16
  62. package/dist/cjs/airdrop/contracts/evm/contracts/AirdropV3Client.js +0 -49
  63. package/dist/cjs/airdrop/contracts/evm/contracts/AirdropV3Client.js.map +0 -1
  64. package/dist/cjs/airdrop/contracts/evm/contracts/AirdropV3FeeClient.d.ts +0 -6
  65. package/dist/cjs/airdrop/contracts/evm/contracts/AirdropV3FeeClient.js +0 -21
  66. package/dist/cjs/airdrop/contracts/evm/contracts/AirdropV3FeeClient.js.map +0 -1
  67. package/dist/cjs/airdrop/contracts/evm/contracts/AirdropV4Client.d.ts +0 -13
  68. package/dist/cjs/airdrop/contracts/evm/contracts/AirdropV4Client.js +0 -28
  69. package/dist/cjs/airdrop/contracts/evm/contracts/AirdropV4Client.js.map +0 -1
  70. package/dist/cjs/airdrop/contracts/evm/contracts/ContractBaseClient.d.ts +0 -32
  71. package/dist/cjs/airdrop/contracts/evm/contracts/ContractBaseClient.js +0 -68
  72. package/dist/cjs/airdrop/contracts/evm/contracts/ContractBaseClient.js.map +0 -1
  73. package/dist/cjs/airdrop/contracts/evm/contracts/DeployClient.d.ts +0 -7
  74. package/dist/cjs/airdrop/contracts/evm/contracts/DeployClient.js +0 -40
  75. package/dist/cjs/airdrop/contracts/evm/contracts/DeployClient.js.map +0 -1
  76. package/dist/cjs/airdrop/contracts/evm/contracts/FeeCollectorClient.d.ts +0 -6
  77. package/dist/cjs/airdrop/contracts/evm/contracts/FeeCollectorClient.js +0 -26
  78. package/dist/cjs/airdrop/contracts/evm/contracts/FeeCollectorClient.js.map +0 -1
  79. package/dist/cjs/airdrop/contracts/evm/contracts/KycClient.d.ts +0 -6
  80. package/dist/cjs/airdrop/contracts/evm/contracts/KycClient.js +0 -26
  81. package/dist/cjs/airdrop/contracts/evm/contracts/KycClient.js.map +0 -1
  82. package/dist/cjs/airdrop/contracts/evm/contracts/abis/AirdropV2.json +0 -676
  83. package/dist/cjs/airdrop/contracts/evm/contracts/abis/AirdropV3.json +0 -740
  84. package/dist/cjs/airdrop/contracts/evm/contracts/abis/AirdropV3_Fee.json +0 -678
  85. package/dist/cjs/airdrop/contracts/evm/contracts/abis/CustomFeeNativeAirdropV4.json +0 -701
  86. package/dist/cjs/airdrop/contracts/evm/contracts/abis/Deployer.json +0 -271
  87. package/dist/cjs/airdrop/contracts/evm/contracts/abis/FeeCollector.json +0 -322
  88. package/dist/cjs/airdrop/contracts/evm/contracts/abis/FungibleTokenECDSADistributor.json +0 -564
  89. package/dist/cjs/airdrop/contracts/evm/contracts/abis/FungibleTokenWithFeesECDSADistributor.json +0 -260
  90. package/dist/cjs/airdrop/contracts/evm/contracts/abis/KycHook.json +0 -312
  91. package/dist/cjs/airdrop/contracts/index.d.ts +0 -5
  92. package/dist/cjs/airdrop/contracts/index.js +0 -14
  93. package/dist/cjs/airdrop/contracts/index.js.map +0 -1
  94. package/dist/cjs/airdrop/contracts/solana/AirdropService.d.ts +0 -16
  95. package/dist/cjs/airdrop/contracts/solana/AirdropService.js +0 -38
  96. package/dist/cjs/airdrop/contracts/solana/AirdropService.js.map +0 -1
  97. package/dist/cjs/airdrop/contracts/solana/AirdropSignatureClient.d.ts +0 -46
  98. package/dist/cjs/airdrop/contracts/solana/AirdropSignatureClient.js +0 -218
  99. package/dist/cjs/airdrop/contracts/solana/AirdropSignatureClient.js.map +0 -1
  100. package/dist/cjs/airdrop/contracts/solana/FeeCollectorClient.d.ts +0 -12
  101. package/dist/cjs/airdrop/contracts/solana/FeeCollectorClient.js +0 -71
  102. package/dist/cjs/airdrop/contracts/solana/FeeCollectorClient.js.map +0 -1
  103. package/dist/cjs/airdrop/contracts/solana/MerkleDistributorClient.d.ts +0 -49
  104. package/dist/cjs/airdrop/contracts/solana/MerkleDistributorClient.js +0 -243
  105. package/dist/cjs/airdrop/contracts/solana/MerkleDistributorClient.js.map +0 -1
  106. package/dist/cjs/airdrop/contracts/solana/SignatureAirdropService.d.ts +0 -21
  107. package/dist/cjs/airdrop/contracts/solana/SignatureAirdropService.js +0 -35
  108. package/dist/cjs/airdrop/contracts/solana/SignatureAirdropService.js.map +0 -1
  109. package/dist/cjs/airdrop/contracts/solana/SolanaContractClient.d.ts +0 -28
  110. package/dist/cjs/airdrop/contracts/solana/SolanaContractClient.js +0 -84
  111. package/dist/cjs/airdrop/contracts/solana/SolanaContractClient.js.map +0 -1
  112. package/dist/cjs/airdrop/contracts/solana/eddsa_token_distributor_solana.d.ts +0 -1627
  113. package/dist/cjs/airdrop/contracts/solana/eddsa_token_distributor_solana.js +0 -3
  114. package/dist/cjs/airdrop/contracts/solana/eddsa_token_distributor_solana.js.map +0 -1
  115. package/dist/cjs/airdrop/contracts/solana/eddsa_token_with_fees_distributor_solana.d.ts +0 -1631
  116. package/dist/cjs/airdrop/contracts/solana/eddsa_token_with_fees_distributor_solana.js +0 -3
  117. package/dist/cjs/airdrop/contracts/solana/eddsa_token_with_fees_distributor_solana.js.map +0 -1
  118. package/dist/cjs/airdrop/contracts/solana/eddsa_token_with_fees_distributor_solana.json +0 -1625
  119. package/dist/cjs/airdrop/contracts/solana/fee_collector.d.ts +0 -1266
  120. package/dist/cjs/airdrop/contracts/solana/fee_collector.js +0 -3
  121. package/dist/cjs/airdrop/contracts/solana/fee_collector.js.map +0 -1
  122. package/dist/cjs/airdrop/contracts/solana/fee_collector.json +0 -1260
  123. package/dist/cjs/airdrop/contracts/solana/fungible_token_distributor_solana.d.ts +0 -1579
  124. package/dist/cjs/airdrop/contracts/solana/fungible_token_distributor_solana.js +0 -3
  125. package/dist/cjs/airdrop/contracts/solana/fungible_token_distributor_solana.js.map +0 -1
  126. package/dist/cjs/airdrop/contracts/solana/merkle_token_distributor_solana.d.ts +0 -1658
  127. package/dist/cjs/airdrop/contracts/solana/merkle_token_distributor_solana.js +0 -3
  128. package/dist/cjs/airdrop/contracts/solana/merkle_token_distributor_solana.js.map +0 -1
  129. package/dist/cjs/airdrop/contracts/solana/merkle_token_distributor_solana.json +0 -1652
  130. package/dist/cjs/airdrop/contracts/ton/AirdropClientV1.d.ts +0 -24
  131. package/dist/cjs/airdrop/contracts/ton/AirdropClientV1.js +0 -104
  132. package/dist/cjs/airdrop/contracts/ton/AirdropClientV1.js.map +0 -1
  133. package/dist/cjs/airdrop/contracts/ton/AirdropClientV2.d.ts +0 -30
  134. package/dist/cjs/airdrop/contracts/ton/AirdropClientV2.js +0 -102
  135. package/dist/cjs/airdrop/contracts/ton/AirdropClientV2.js.map +0 -1
  136. package/dist/cjs/airdrop/contracts/ton/AirdropClientV21.d.ts +0 -31
  137. package/dist/cjs/airdrop/contracts/ton/AirdropClientV21.js +0 -112
  138. package/dist/cjs/airdrop/contracts/ton/AirdropClientV21.js.map +0 -1
  139. package/dist/cjs/airdrop/contracts/ton/AirdropClientV3.d.ts +0 -30
  140. package/dist/cjs/airdrop/contracts/ton/AirdropClientV3.js +0 -109
  141. package/dist/cjs/airdrop/contracts/ton/AirdropClientV3.js.map +0 -1
  142. package/dist/cjs/airdrop/contracts/ton/AirdropService.d.ts +0 -52
  143. package/dist/cjs/airdrop/contracts/ton/AirdropService.js +0 -127
  144. package/dist/cjs/airdrop/contracts/ton/AirdropService.js.map +0 -1
  145. package/dist/cjs/airdrop/contracts/ton/TonContractBaseClient.d.ts +0 -34
  146. package/dist/cjs/airdrop/contracts/ton/TonContractBaseClient.js +0 -216
  147. package/dist/cjs/airdrop/contracts/ton/TonContractBaseClient.js.map +0 -1
  148. package/dist/cjs/airdrop/contracts/ton/v1/build/Leaf.compiled.json +0 -1
  149. package/dist/cjs/airdrop/contracts/ton/v1/utils/constants.d.ts +0 -40
  150. package/dist/cjs/airdrop/contracts/ton/v1/utils/constants.js +0 -47
  151. package/dist/cjs/airdrop/contracts/ton/v1/utils/constants.js.map +0 -1
  152. package/dist/cjs/airdrop/contracts/ton/v1/utils/date.utils.d.ts +0 -3
  153. package/dist/cjs/airdrop/contracts/ton/v1/utils/date.utils.js +0 -15
  154. package/dist/cjs/airdrop/contracts/ton/v1/utils/date.utils.js.map +0 -1
  155. package/dist/cjs/airdrop/contracts/ton/v1/utils/index.d.ts +0 -3
  156. package/dist/cjs/airdrop/contracts/ton/v1/utils/index.js +0 -20
  157. package/dist/cjs/airdrop/contracts/ton/v1/utils/index.js.map +0 -1
  158. package/dist/cjs/airdrop/contracts/ton/v1/utils/ton.utils.d.ts +0 -17
  159. package/dist/cjs/airdrop/contracts/ton/v1/utils/ton.utils.js +0 -87
  160. package/dist/cjs/airdrop/contracts/ton/v1/utils/ton.utils.js.map +0 -1
  161. package/dist/cjs/airdrop/contracts/ton/v1/wrappers/JettonMinter.d.ts +0 -24
  162. package/dist/cjs/airdrop/contracts/ton/v1/wrappers/JettonMinter.js +0 -67
  163. package/dist/cjs/airdrop/contracts/ton/v1/wrappers/JettonMinter.js.map +0 -1
  164. package/dist/cjs/airdrop/contracts/ton/v1/wrappers/JettonWallet.d.ts +0 -23
  165. package/dist/cjs/airdrop/contracts/ton/v1/wrappers/JettonWallet.js +0 -63
  166. package/dist/cjs/airdrop/contracts/ton/v1/wrappers/JettonWallet.js.map +0 -1
  167. package/dist/cjs/airdrop/contracts/ton/v1/wrappers/Leaf.d.ts +0 -26
  168. package/dist/cjs/airdrop/contracts/ton/v1/wrappers/Leaf.js +0 -77
  169. package/dist/cjs/airdrop/contracts/ton/v1/wrappers/Leaf.js.map +0 -1
  170. package/dist/cjs/airdrop/contracts/ton/v1/wrappers/MerkleTokenDistributor.d.ts +0 -62
  171. package/dist/cjs/airdrop/contracts/ton/v1/wrappers/MerkleTokenDistributor.js +0 -228
  172. package/dist/cjs/airdrop/contracts/ton/v1/wrappers/MerkleTokenDistributor.js.map +0 -1
  173. package/dist/cjs/airdrop/contracts/ton/v1/wrappers/index.d.ts +0 -2
  174. package/dist/cjs/airdrop/contracts/ton/v1/wrappers/index.js +0 -19
  175. package/dist/cjs/airdrop/contracts/ton/v1/wrappers/index.js.map +0 -1
  176. package/dist/cjs/airdrop/contracts/ton/v2/build/Leaf.compiled.json +0 -1
  177. package/dist/cjs/airdrop/contracts/ton/v2/utils/constants.d.ts +0 -41
  178. package/dist/cjs/airdrop/contracts/ton/v2/utils/constants.js +0 -48
  179. package/dist/cjs/airdrop/contracts/ton/v2/utils/constants.js.map +0 -1
  180. package/dist/cjs/airdrop/contracts/ton/v2/utils/date.utils.d.ts +0 -3
  181. package/dist/cjs/airdrop/contracts/ton/v2/utils/date.utils.js +0 -15
  182. package/dist/cjs/airdrop/contracts/ton/v2/utils/date.utils.js.map +0 -1
  183. package/dist/cjs/airdrop/contracts/ton/v2/utils/index.d.ts +0 -3
  184. package/dist/cjs/airdrop/contracts/ton/v2/utils/index.js +0 -20
  185. package/dist/cjs/airdrop/contracts/ton/v2/utils/index.js.map +0 -1
  186. package/dist/cjs/airdrop/contracts/ton/v2/utils/ton.utils.d.ts +0 -20
  187. package/dist/cjs/airdrop/contracts/ton/v2/utils/ton.utils.js +0 -104
  188. package/dist/cjs/airdrop/contracts/ton/v2/utils/ton.utils.js.map +0 -1
  189. package/dist/cjs/airdrop/contracts/ton/v2/wrappers/Leaf.d.ts +0 -24
  190. package/dist/cjs/airdrop/contracts/ton/v2/wrappers/Leaf.js +0 -60
  191. package/dist/cjs/airdrop/contracts/ton/v2/wrappers/Leaf.js.map +0 -1
  192. package/dist/cjs/airdrop/contracts/ton/v2/wrappers/MerkleTokenDistributor.d.ts +0 -65
  193. package/dist/cjs/airdrop/contracts/ton/v2/wrappers/MerkleTokenDistributor.js +0 -245
  194. package/dist/cjs/airdrop/contracts/ton/v2/wrappers/MerkleTokenDistributor.js.map +0 -1
  195. package/dist/cjs/airdrop/contracts/ton/v2/wrappers/index.d.ts +0 -2
  196. package/dist/cjs/airdrop/contracts/ton/v2/wrappers/index.js +0 -19
  197. package/dist/cjs/airdrop/contracts/ton/v2/wrappers/index.js.map +0 -1
  198. package/dist/cjs/airdrop/contracts/ton/v21/build/Leaf.compiled.json +0 -1
  199. package/dist/cjs/airdrop/contracts/ton/v21/utils/constants.d.ts +0 -44
  200. package/dist/cjs/airdrop/contracts/ton/v21/utils/constants.js +0 -51
  201. package/dist/cjs/airdrop/contracts/ton/v21/utils/constants.js.map +0 -1
  202. package/dist/cjs/airdrop/contracts/ton/v21/utils/date.utils.d.ts +0 -3
  203. package/dist/cjs/airdrop/contracts/ton/v21/utils/date.utils.js +0 -15
  204. package/dist/cjs/airdrop/contracts/ton/v21/utils/date.utils.js.map +0 -1
  205. package/dist/cjs/airdrop/contracts/ton/v21/utils/index.d.ts +0 -3
  206. package/dist/cjs/airdrop/contracts/ton/v21/utils/index.js +0 -20
  207. package/dist/cjs/airdrop/contracts/ton/v21/utils/index.js.map +0 -1
  208. package/dist/cjs/airdrop/contracts/ton/v21/utils/ton.utils.d.ts +0 -17
  209. package/dist/cjs/airdrop/contracts/ton/v21/utils/ton.utils.js +0 -87
  210. package/dist/cjs/airdrop/contracts/ton/v21/utils/ton.utils.js.map +0 -1
  211. package/dist/cjs/airdrop/contracts/ton/v21/wrappers/Leaf.d.ts +0 -24
  212. package/dist/cjs/airdrop/contracts/ton/v21/wrappers/Leaf.js +0 -60
  213. package/dist/cjs/airdrop/contracts/ton/v21/wrappers/Leaf.js.map +0 -1
  214. package/dist/cjs/airdrop/contracts/ton/v21/wrappers/MerkleTokenDistributor.d.ts +0 -66
  215. package/dist/cjs/airdrop/contracts/ton/v21/wrappers/MerkleTokenDistributor.js +0 -255
  216. package/dist/cjs/airdrop/contracts/ton/v21/wrappers/MerkleTokenDistributor.js.map +0 -1
  217. package/dist/cjs/airdrop/contracts/ton/v21/wrappers/index.d.ts +0 -2
  218. package/dist/cjs/airdrop/contracts/ton/v21/wrappers/index.js +0 -19
  219. package/dist/cjs/airdrop/contracts/ton/v21/wrappers/index.js.map +0 -1
  220. package/dist/cjs/airdrop/contracts/ton/v3/build/Leaf.compiled.json +0 -1
  221. package/dist/cjs/airdrop/contracts/ton/v3/utils/constants.d.ts +0 -40
  222. package/dist/cjs/airdrop/contracts/ton/v3/utils/constants.js +0 -47
  223. package/dist/cjs/airdrop/contracts/ton/v3/utils/constants.js.map +0 -1
  224. package/dist/cjs/airdrop/contracts/ton/v3/utils/date.utils.d.ts +0 -3
  225. package/dist/cjs/airdrop/contracts/ton/v3/utils/date.utils.js +0 -15
  226. package/dist/cjs/airdrop/contracts/ton/v3/utils/date.utils.js.map +0 -1
  227. package/dist/cjs/airdrop/contracts/ton/v3/utils/index.d.ts +0 -3
  228. package/dist/cjs/airdrop/contracts/ton/v3/utils/index.js +0 -20
  229. package/dist/cjs/airdrop/contracts/ton/v3/utils/index.js.map +0 -1
  230. package/dist/cjs/airdrop/contracts/ton/v3/utils/ton.utils.d.ts +0 -17
  231. package/dist/cjs/airdrop/contracts/ton/v3/utils/ton.utils.js +0 -87
  232. package/dist/cjs/airdrop/contracts/ton/v3/utils/ton.utils.js.map +0 -1
  233. package/dist/cjs/airdrop/contracts/ton/v3/wrappers/Leaf.d.ts +0 -24
  234. package/dist/cjs/airdrop/contracts/ton/v3/wrappers/Leaf.js +0 -60
  235. package/dist/cjs/airdrop/contracts/ton/v3/wrappers/Leaf.js.map +0 -1
  236. package/dist/cjs/airdrop/contracts/ton/v3/wrappers/MerkleTokenDistributor.d.ts +0 -63
  237. package/dist/cjs/airdrop/contracts/ton/v3/wrappers/MerkleTokenDistributor.js +0 -225
  238. package/dist/cjs/airdrop/contracts/ton/v3/wrappers/MerkleTokenDistributor.js.map +0 -1
  239. package/dist/cjs/airdrop/contracts/ton/v3/wrappers/index.d.ts +0 -2
  240. package/dist/cjs/airdrop/contracts/ton/v3/wrappers/index.js +0 -19
  241. package/dist/cjs/airdrop/contracts/ton/v3/wrappers/index.js.map +0 -1
  242. package/dist/cjs/airdrop/index.d.ts +0 -4
  243. package/dist/cjs/airdrop/index.js +0 -15
  244. package/dist/cjs/airdrop/index.js.map +0 -1
  245. package/dist/cjs/airdrop/services/index.d.ts +0 -63
  246. package/dist/cjs/airdrop/services/index.js +0 -100
  247. package/dist/cjs/airdrop/services/index.js.map +0 -1
  248. package/dist/cjs/airdrop/services/wallet-service/ton/WalletService.d.ts +0 -46
  249. package/dist/cjs/airdrop/services/wallet-service/ton/WalletService.js +0 -173
  250. package/dist/cjs/airdrop/services/wallet-service/ton/WalletService.js.map +0 -1
  251. package/dist/cjs/airdrop/services/wallet-service/ton/index.d.ts +0 -1
  252. package/dist/cjs/airdrop/services/wallet-service/ton/index.js +0 -6
  253. package/dist/cjs/airdrop/services/wallet-service/ton/index.js.map +0 -1
  254. package/dist/cjs/airdrop/strategies/AirdropStrategyFactory.d.ts +0 -16
  255. package/dist/cjs/airdrop/strategies/AirdropStrategyFactory.js +0 -24
  256. package/dist/cjs/airdrop/strategies/AirdropStrategyFactory.js.map +0 -1
  257. package/dist/cjs/airdrop/strategies/EvmAirdropStrategy.d.ts +0 -28
  258. package/dist/cjs/airdrop/strategies/EvmAirdropStrategy.js +0 -82
  259. package/dist/cjs/airdrop/strategies/EvmAirdropStrategy.js.map +0 -1
  260. package/dist/cjs/airdrop/strategies/IAirdropStrategy.d.ts +0 -30
  261. package/dist/cjs/airdrop/strategies/IAirdropStrategy.js +0 -3
  262. package/dist/cjs/airdrop/strategies/IAirdropStrategy.js.map +0 -1
  263. package/dist/cjs/airdrop/strategies/SolanaAirdropStrategy.d.ts +0 -28
  264. package/dist/cjs/airdrop/strategies/SolanaAirdropStrategy.js +0 -70
  265. package/dist/cjs/airdrop/strategies/SolanaAirdropStrategy.js.map +0 -1
  266. package/dist/cjs/airdrop/strategies/StrategyCache.d.ts +0 -10
  267. package/dist/cjs/airdrop/strategies/StrategyCache.js +0 -32
  268. package/dist/cjs/airdrop/strategies/StrategyCache.js.map +0 -1
  269. package/dist/cjs/airdrop/strategies/TonAirdropStrategy.d.ts +0 -27
  270. package/dist/cjs/airdrop/strategies/TonAirdropStrategy.js +0 -68
  271. package/dist/cjs/airdrop/strategies/TonAirdropStrategy.js.map +0 -1
  272. package/dist/cjs/airdrop/types/index.d.ts +0 -180
  273. package/dist/cjs/airdrop/types/index.js +0 -42
  274. package/dist/cjs/airdrop/types/index.js.map +0 -1
  275. package/dist/cjs/index.d.ts +0 -4
  276. package/dist/cjs/index.js +0 -33
  277. package/dist/cjs/index.js.map +0 -1
  278. package/dist/cjs/utils/api-client.d.ts +0 -19
  279. package/dist/cjs/utils/api-client.js +0 -47
  280. package/dist/cjs/utils/api-client.js.map +0 -1
  281. package/dist/cjs/utils/biz.d.ts +0 -15
  282. package/dist/cjs/utils/biz.js +0 -41
  283. package/dist/cjs/utils/biz.js.map +0 -1
  284. package/dist/cjs/utils/index.d.ts +0 -5
  285. package/dist/cjs/utils/index.js +0 -22
  286. package/dist/cjs/utils/index.js.map +0 -1
  287. package/dist/cjs/utils/math.d.ts +0 -1
  288. package/dist/cjs/utils/math.js +0 -9
  289. package/dist/cjs/utils/math.js.map +0 -1
  290. package/dist/cjs/utils/utils.d.ts +0 -9
  291. package/dist/cjs/utils/utils.js +0 -53
  292. package/dist/cjs/utils/utils.js.map +0 -1
  293. package/dist/cjs/utils/web3.d.ts +0 -29
  294. package/dist/cjs/utils/web3.js +0 -132
  295. package/dist/cjs/utils/web3.js.map +0 -1
  296. package/dist/cjs/wallets/WalletBase.d.ts +0 -32
  297. package/dist/cjs/wallets/WalletBase.js +0 -71
  298. package/dist/cjs/wallets/WalletBase.js.map +0 -1
  299. package/dist/cjs/wallets/WalletFactory.d.ts +0 -8
  300. package/dist/cjs/wallets/WalletFactory.js +0 -38
  301. package/dist/cjs/wallets/WalletFactory.js.map +0 -1
  302. package/dist/cjs/wallets/index.d.ts +0 -2
  303. package/dist/cjs/wallets/index.js +0 -21
  304. package/dist/cjs/wallets/index.js.map +0 -1
  305. package/dist/cjs/wallets/providers/evm/EvmWallet.d.ts +0 -26
  306. package/dist/cjs/wallets/providers/evm/EvmWallet.js +0 -83
  307. package/dist/cjs/wallets/providers/evm/EvmWallet.js.map +0 -1
  308. package/dist/cjs/wallets/providers/evm/index.d.ts +0 -10
  309. package/dist/cjs/wallets/providers/evm/index.js +0 -37
  310. package/dist/cjs/wallets/providers/evm/index.js.map +0 -1
  311. package/dist/cjs/wallets/providers/index.d.ts +0 -3
  312. package/dist/cjs/wallets/providers/index.js +0 -14
  313. package/dist/cjs/wallets/providers/index.js.map +0 -1
  314. package/dist/cjs/wallets/providers/solana/index.d.ts +0 -31
  315. package/dist/cjs/wallets/providers/solana/index.js +0 -112
  316. package/dist/cjs/wallets/providers/solana/index.js.map +0 -1
  317. package/dist/cjs/wallets/providers/ton/TonWallet.d.ts +0 -23
  318. package/dist/cjs/wallets/providers/ton/TonWallet.js +0 -118
  319. package/dist/cjs/wallets/providers/ton/TonWallet.js.map +0 -1
  320. package/dist/cjs/wallets/providers/ton/index.d.ts +0 -9
  321. package/dist/cjs/wallets/providers/ton/index.js +0 -29
  322. package/dist/cjs/wallets/providers/ton/index.js.map +0 -1
  323. package/dist/cjs/wallets/types.d.ts +0 -38
  324. package/dist/cjs/wallets/types.js +0 -30
  325. package/dist/cjs/wallets/types.js.map +0 -1
  326. package/dist/cjs/wallets/utils/index.d.ts +0 -8
  327. package/dist/cjs/wallets/utils/index.js +0 -41
  328. package/dist/cjs/wallets/utils/index.js.map +0 -1
  329. package/dist/esm/airdrop/AirdropClient.d.ts +0 -47
  330. package/dist/esm/airdrop/AirdropClient.js +0 -256
  331. package/dist/esm/airdrop/AirdropClient.js.map +0 -1
  332. package/dist/esm/airdrop/SignatureAirdropClient.d.ts +0 -54
  333. package/dist/esm/airdrop/SignatureAirdropClient.js +0 -308
  334. package/dist/esm/airdrop/SignatureAirdropClient.js.map +0 -1
  335. package/dist/esm/airdrop/common/index.d.ts +0 -1075
  336. package/dist/esm/airdrop/common/index.js +0 -34
  337. package/dist/esm/airdrop/common/index.js.map +0 -1
  338. package/dist/esm/airdrop/common/projectDataForTon.d.ts +0 -79
  339. package/dist/esm/airdrop/common/projectDataForTon.js +0 -80
  340. package/dist/esm/airdrop/common/projectDataForTon.js.map +0 -1
  341. package/dist/esm/airdrop/constants/chain-config.d.ts +0 -1144
  342. package/dist/esm/airdrop/constants/chain-config.js +0 -105
  343. package/dist/esm/airdrop/constants/chain-config.js.map +0 -1
  344. package/dist/esm/airdrop/constants/index.d.ts +0 -7
  345. package/dist/esm/airdrop/constants/index.js +0 -8
  346. package/dist/esm/airdrop/constants/index.js.map +0 -1
  347. package/dist/esm/airdrop/constants/network.d.ts +0 -180
  348. package/dist/esm/airdrop/constants/network.js +0 -147
  349. package/dist/esm/airdrop/constants/network.js.map +0 -1
  350. package/dist/esm/airdrop/contracts/evm/AirdropService.d.ts +0 -36
  351. package/dist/esm/airdrop/contracts/evm/AirdropService.js +0 -145
  352. package/dist/esm/airdrop/contracts/evm/AirdropService.js.map +0 -1
  353. package/dist/esm/airdrop/contracts/evm/SignatureAirdropService.d.ts +0 -26
  354. package/dist/esm/airdrop/contracts/evm/SignatureAirdropService.js +0 -91
  355. package/dist/esm/airdrop/contracts/evm/SignatureAirdropService.js.map +0 -1
  356. package/dist/esm/airdrop/contracts/evm/contracts/AirdropSignatureClient.d.ts +0 -17
  357. package/dist/esm/airdrop/contracts/evm/contracts/AirdropSignatureClient.js +0 -44
  358. package/dist/esm/airdrop/contracts/evm/contracts/AirdropSignatureClient.js.map +0 -1
  359. package/dist/esm/airdrop/contracts/evm/contracts/AirdropSignatureFeeClient.d.ts +0 -17
  360. package/dist/esm/airdrop/contracts/evm/contracts/AirdropSignatureFeeClient.js +0 -44
  361. package/dist/esm/airdrop/contracts/evm/contracts/AirdropSignatureFeeClient.js.map +0 -1
  362. package/dist/esm/airdrop/contracts/evm/contracts/AirdropV2Client.d.ts +0 -8
  363. package/dist/esm/airdrop/contracts/evm/contracts/AirdropV2Client.js +0 -33
  364. package/dist/esm/airdrop/contracts/evm/contracts/AirdropV2Client.js.map +0 -1
  365. package/dist/esm/airdrop/contracts/evm/contracts/AirdropV3Client.d.ts +0 -16
  366. package/dist/esm/airdrop/contracts/evm/contracts/AirdropV3Client.js +0 -42
  367. package/dist/esm/airdrop/contracts/evm/contracts/AirdropV3Client.js.map +0 -1
  368. package/dist/esm/airdrop/contracts/evm/contracts/AirdropV3FeeClient.d.ts +0 -6
  369. package/dist/esm/airdrop/contracts/evm/contracts/AirdropV3FeeClient.js +0 -14
  370. package/dist/esm/airdrop/contracts/evm/contracts/AirdropV3FeeClient.js.map +0 -1
  371. package/dist/esm/airdrop/contracts/evm/contracts/AirdropV4Client.d.ts +0 -13
  372. package/dist/esm/airdrop/contracts/evm/contracts/AirdropV4Client.js +0 -21
  373. package/dist/esm/airdrop/contracts/evm/contracts/AirdropV4Client.js.map +0 -1
  374. package/dist/esm/airdrop/contracts/evm/contracts/ContractBaseClient.d.ts +0 -32
  375. package/dist/esm/airdrop/contracts/evm/contracts/ContractBaseClient.js +0 -64
  376. package/dist/esm/airdrop/contracts/evm/contracts/ContractBaseClient.js.map +0 -1
  377. package/dist/esm/airdrop/contracts/evm/contracts/DeployClient.d.ts +0 -7
  378. package/dist/esm/airdrop/contracts/evm/contracts/DeployClient.js +0 -33
  379. package/dist/esm/airdrop/contracts/evm/contracts/DeployClient.js.map +0 -1
  380. package/dist/esm/airdrop/contracts/evm/contracts/FeeCollectorClient.d.ts +0 -6
  381. package/dist/esm/airdrop/contracts/evm/contracts/FeeCollectorClient.js +0 -19
  382. package/dist/esm/airdrop/contracts/evm/contracts/FeeCollectorClient.js.map +0 -1
  383. package/dist/esm/airdrop/contracts/evm/contracts/KycClient.d.ts +0 -6
  384. package/dist/esm/airdrop/contracts/evm/contracts/KycClient.js +0 -19
  385. package/dist/esm/airdrop/contracts/evm/contracts/KycClient.js.map +0 -1
  386. package/dist/esm/airdrop/contracts/evm/contracts/abis/AirdropV2.json +0 -676
  387. package/dist/esm/airdrop/contracts/evm/contracts/abis/AirdropV3.json +0 -740
  388. package/dist/esm/airdrop/contracts/evm/contracts/abis/AirdropV3_Fee.json +0 -678
  389. package/dist/esm/airdrop/contracts/evm/contracts/abis/CustomFeeNativeAirdropV4.json +0 -701
  390. package/dist/esm/airdrop/contracts/evm/contracts/abis/Deployer.json +0 -271
  391. package/dist/esm/airdrop/contracts/evm/contracts/abis/FeeCollector.json +0 -322
  392. package/dist/esm/airdrop/contracts/evm/contracts/abis/FungibleTokenECDSADistributor.json +0 -564
  393. package/dist/esm/airdrop/contracts/evm/contracts/abis/FungibleTokenWithFeesECDSADistributor.json +0 -260
  394. package/dist/esm/airdrop/contracts/evm/contracts/abis/KycHook.json +0 -312
  395. package/dist/esm/airdrop/contracts/index.d.ts +0 -5
  396. package/dist/esm/airdrop/contracts/index.js +0 -6
  397. package/dist/esm/airdrop/contracts/index.js.map +0 -1
  398. package/dist/esm/airdrop/contracts/solana/AirdropService.d.ts +0 -16
  399. package/dist/esm/airdrop/contracts/solana/AirdropService.js +0 -34
  400. package/dist/esm/airdrop/contracts/solana/AirdropService.js.map +0 -1
  401. package/dist/esm/airdrop/contracts/solana/AirdropSignatureClient.d.ts +0 -46
  402. package/dist/esm/airdrop/contracts/solana/AirdropSignatureClient.js +0 -188
  403. package/dist/esm/airdrop/contracts/solana/AirdropSignatureClient.js.map +0 -1
  404. package/dist/esm/airdrop/contracts/solana/FeeCollectorClient.d.ts +0 -12
  405. package/dist/esm/airdrop/contracts/solana/FeeCollectorClient.js +0 -41
  406. package/dist/esm/airdrop/contracts/solana/FeeCollectorClient.js.map +0 -1
  407. package/dist/esm/airdrop/contracts/solana/MerkleDistributorClient.d.ts +0 -49
  408. package/dist/esm/airdrop/contracts/solana/MerkleDistributorClient.js +0 -213
  409. package/dist/esm/airdrop/contracts/solana/MerkleDistributorClient.js.map +0 -1
  410. package/dist/esm/airdrop/contracts/solana/SignatureAirdropService.d.ts +0 -21
  411. package/dist/esm/airdrop/contracts/solana/SignatureAirdropService.js +0 -31
  412. package/dist/esm/airdrop/contracts/solana/SignatureAirdropService.js.map +0 -1
  413. package/dist/esm/airdrop/contracts/solana/SolanaContractClient.d.ts +0 -28
  414. package/dist/esm/airdrop/contracts/solana/SolanaContractClient.js +0 -80
  415. package/dist/esm/airdrop/contracts/solana/SolanaContractClient.js.map +0 -1
  416. package/dist/esm/airdrop/contracts/solana/eddsa_token_distributor_solana.d.ts +0 -1627
  417. package/dist/esm/airdrop/contracts/solana/eddsa_token_distributor_solana.js +0 -2
  418. package/dist/esm/airdrop/contracts/solana/eddsa_token_distributor_solana.js.map +0 -1
  419. package/dist/esm/airdrop/contracts/solana/eddsa_token_with_fees_distributor_solana.d.ts +0 -1631
  420. package/dist/esm/airdrop/contracts/solana/eddsa_token_with_fees_distributor_solana.js +0 -2
  421. package/dist/esm/airdrop/contracts/solana/eddsa_token_with_fees_distributor_solana.js.map +0 -1
  422. package/dist/esm/airdrop/contracts/solana/eddsa_token_with_fees_distributor_solana.json +0 -1625
  423. package/dist/esm/airdrop/contracts/solana/fee_collector.d.ts +0 -1266
  424. package/dist/esm/airdrop/contracts/solana/fee_collector.js +0 -2
  425. package/dist/esm/airdrop/contracts/solana/fee_collector.js.map +0 -1
  426. package/dist/esm/airdrop/contracts/solana/fee_collector.json +0 -1260
  427. package/dist/esm/airdrop/contracts/solana/fungible_token_distributor_solana.d.ts +0 -1579
  428. package/dist/esm/airdrop/contracts/solana/fungible_token_distributor_solana.js +0 -2
  429. package/dist/esm/airdrop/contracts/solana/fungible_token_distributor_solana.js.map +0 -1
  430. package/dist/esm/airdrop/contracts/solana/merkle_token_distributor_solana.d.ts +0 -1658
  431. package/dist/esm/airdrop/contracts/solana/merkle_token_distributor_solana.js +0 -2
  432. package/dist/esm/airdrop/contracts/solana/merkle_token_distributor_solana.js.map +0 -1
  433. package/dist/esm/airdrop/contracts/solana/merkle_token_distributor_solana.json +0 -1652
  434. package/dist/esm/airdrop/contracts/ton/AirdropClientV1.d.ts +0 -24
  435. package/dist/esm/airdrop/contracts/ton/AirdropClientV1.js +0 -97
  436. package/dist/esm/airdrop/contracts/ton/AirdropClientV1.js.map +0 -1
  437. package/dist/esm/airdrop/contracts/ton/AirdropClientV2.d.ts +0 -30
  438. package/dist/esm/airdrop/contracts/ton/AirdropClientV2.js +0 -95
  439. package/dist/esm/airdrop/contracts/ton/AirdropClientV2.js.map +0 -1
  440. package/dist/esm/airdrop/contracts/ton/AirdropClientV21.d.ts +0 -31
  441. package/dist/esm/airdrop/contracts/ton/AirdropClientV21.js +0 -105
  442. package/dist/esm/airdrop/contracts/ton/AirdropClientV21.js.map +0 -1
  443. package/dist/esm/airdrop/contracts/ton/AirdropClientV3.d.ts +0 -30
  444. package/dist/esm/airdrop/contracts/ton/AirdropClientV3.js +0 -102
  445. package/dist/esm/airdrop/contracts/ton/AirdropClientV3.js.map +0 -1
  446. package/dist/esm/airdrop/contracts/ton/AirdropService.d.ts +0 -52
  447. package/dist/esm/airdrop/contracts/ton/AirdropService.js +0 -123
  448. package/dist/esm/airdrop/contracts/ton/AirdropService.js.map +0 -1
  449. package/dist/esm/airdrop/contracts/ton/TonContractBaseClient.d.ts +0 -34
  450. package/dist/esm/airdrop/contracts/ton/TonContractBaseClient.js +0 -212
  451. package/dist/esm/airdrop/contracts/ton/TonContractBaseClient.js.map +0 -1
  452. package/dist/esm/airdrop/contracts/ton/v1/build/Leaf.compiled.json +0 -1
  453. package/dist/esm/airdrop/contracts/ton/v1/utils/constants.d.ts +0 -40
  454. package/dist/esm/airdrop/contracts/ton/v1/utils/constants.js +0 -44
  455. package/dist/esm/airdrop/contracts/ton/v1/utils/constants.js.map +0 -1
  456. package/dist/esm/airdrop/contracts/ton/v1/utils/date.utils.d.ts +0 -3
  457. package/dist/esm/airdrop/contracts/ton/v1/utils/date.utils.js +0 -10
  458. package/dist/esm/airdrop/contracts/ton/v1/utils/date.utils.js.map +0 -1
  459. package/dist/esm/airdrop/contracts/ton/v1/utils/index.d.ts +0 -3
  460. package/dist/esm/airdrop/contracts/ton/v1/utils/index.js +0 -4
  461. package/dist/esm/airdrop/contracts/ton/v1/utils/index.js.map +0 -1
  462. package/dist/esm/airdrop/contracts/ton/v1/utils/ton.utils.d.ts +0 -17
  463. package/dist/esm/airdrop/contracts/ton/v1/utils/ton.utils.js +0 -69
  464. package/dist/esm/airdrop/contracts/ton/v1/utils/ton.utils.js.map +0 -1
  465. package/dist/esm/airdrop/contracts/ton/v1/wrappers/JettonMinter.d.ts +0 -24
  466. package/dist/esm/airdrop/contracts/ton/v1/wrappers/JettonMinter.js +0 -62
  467. package/dist/esm/airdrop/contracts/ton/v1/wrappers/JettonMinter.js.map +0 -1
  468. package/dist/esm/airdrop/contracts/ton/v1/wrappers/JettonWallet.d.ts +0 -23
  469. package/dist/esm/airdrop/contracts/ton/v1/wrappers/JettonWallet.js +0 -58
  470. package/dist/esm/airdrop/contracts/ton/v1/wrappers/JettonWallet.js.map +0 -1
  471. package/dist/esm/airdrop/contracts/ton/v1/wrappers/Leaf.d.ts +0 -26
  472. package/dist/esm/airdrop/contracts/ton/v1/wrappers/Leaf.js +0 -72
  473. package/dist/esm/airdrop/contracts/ton/v1/wrappers/Leaf.js.map +0 -1
  474. package/dist/esm/airdrop/contracts/ton/v1/wrappers/MerkleTokenDistributor.d.ts +0 -62
  475. package/dist/esm/airdrop/contracts/ton/v1/wrappers/MerkleTokenDistributor.js +0 -222
  476. package/dist/esm/airdrop/contracts/ton/v1/wrappers/MerkleTokenDistributor.js.map +0 -1
  477. package/dist/esm/airdrop/contracts/ton/v1/wrappers/index.d.ts +0 -2
  478. package/dist/esm/airdrop/contracts/ton/v1/wrappers/index.js +0 -3
  479. package/dist/esm/airdrop/contracts/ton/v1/wrappers/index.js.map +0 -1
  480. package/dist/esm/airdrop/contracts/ton/v2/build/Leaf.compiled.json +0 -1
  481. package/dist/esm/airdrop/contracts/ton/v2/utils/constants.d.ts +0 -41
  482. package/dist/esm/airdrop/contracts/ton/v2/utils/constants.js +0 -45
  483. package/dist/esm/airdrop/contracts/ton/v2/utils/constants.js.map +0 -1
  484. package/dist/esm/airdrop/contracts/ton/v2/utils/date.utils.d.ts +0 -3
  485. package/dist/esm/airdrop/contracts/ton/v2/utils/date.utils.js +0 -10
  486. package/dist/esm/airdrop/contracts/ton/v2/utils/date.utils.js.map +0 -1
  487. package/dist/esm/airdrop/contracts/ton/v2/utils/index.d.ts +0 -3
  488. package/dist/esm/airdrop/contracts/ton/v2/utils/index.js +0 -4
  489. package/dist/esm/airdrop/contracts/ton/v2/utils/index.js.map +0 -1
  490. package/dist/esm/airdrop/contracts/ton/v2/utils/ton.utils.d.ts +0 -20
  491. package/dist/esm/airdrop/contracts/ton/v2/utils/ton.utils.js +0 -83
  492. package/dist/esm/airdrop/contracts/ton/v2/utils/ton.utils.js.map +0 -1
  493. package/dist/esm/airdrop/contracts/ton/v2/wrappers/Leaf.d.ts +0 -24
  494. package/dist/esm/airdrop/contracts/ton/v2/wrappers/Leaf.js +0 -55
  495. package/dist/esm/airdrop/contracts/ton/v2/wrappers/Leaf.js.map +0 -1
  496. package/dist/esm/airdrop/contracts/ton/v2/wrappers/MerkleTokenDistributor.d.ts +0 -65
  497. package/dist/esm/airdrop/contracts/ton/v2/wrappers/MerkleTokenDistributor.js +0 -239
  498. package/dist/esm/airdrop/contracts/ton/v2/wrappers/MerkleTokenDistributor.js.map +0 -1
  499. package/dist/esm/airdrop/contracts/ton/v2/wrappers/index.d.ts +0 -2
  500. package/dist/esm/airdrop/contracts/ton/v2/wrappers/index.js +0 -3
  501. package/dist/esm/airdrop/contracts/ton/v2/wrappers/index.js.map +0 -1
  502. package/dist/esm/airdrop/contracts/ton/v21/build/Leaf.compiled.json +0 -1
  503. package/dist/esm/airdrop/contracts/ton/v21/utils/constants.d.ts +0 -44
  504. package/dist/esm/airdrop/contracts/ton/v21/utils/constants.js +0 -48
  505. package/dist/esm/airdrop/contracts/ton/v21/utils/constants.js.map +0 -1
  506. package/dist/esm/airdrop/contracts/ton/v21/utils/date.utils.d.ts +0 -3
  507. package/dist/esm/airdrop/contracts/ton/v21/utils/date.utils.js +0 -10
  508. package/dist/esm/airdrop/contracts/ton/v21/utils/date.utils.js.map +0 -1
  509. package/dist/esm/airdrop/contracts/ton/v21/utils/index.d.ts +0 -3
  510. package/dist/esm/airdrop/contracts/ton/v21/utils/index.js +0 -4
  511. package/dist/esm/airdrop/contracts/ton/v21/utils/index.js.map +0 -1
  512. package/dist/esm/airdrop/contracts/ton/v21/utils/ton.utils.d.ts +0 -17
  513. package/dist/esm/airdrop/contracts/ton/v21/utils/ton.utils.js +0 -69
  514. package/dist/esm/airdrop/contracts/ton/v21/utils/ton.utils.js.map +0 -1
  515. package/dist/esm/airdrop/contracts/ton/v21/wrappers/Leaf.d.ts +0 -24
  516. package/dist/esm/airdrop/contracts/ton/v21/wrappers/Leaf.js +0 -55
  517. package/dist/esm/airdrop/contracts/ton/v21/wrappers/Leaf.js.map +0 -1
  518. package/dist/esm/airdrop/contracts/ton/v21/wrappers/MerkleTokenDistributor.d.ts +0 -66
  519. package/dist/esm/airdrop/contracts/ton/v21/wrappers/MerkleTokenDistributor.js +0 -249
  520. package/dist/esm/airdrop/contracts/ton/v21/wrappers/MerkleTokenDistributor.js.map +0 -1
  521. package/dist/esm/airdrop/contracts/ton/v21/wrappers/index.d.ts +0 -2
  522. package/dist/esm/airdrop/contracts/ton/v21/wrappers/index.js +0 -3
  523. package/dist/esm/airdrop/contracts/ton/v21/wrappers/index.js.map +0 -1
  524. package/dist/esm/airdrop/contracts/ton/v3/build/Leaf.compiled.json +0 -1
  525. package/dist/esm/airdrop/contracts/ton/v3/utils/constants.d.ts +0 -40
  526. package/dist/esm/airdrop/contracts/ton/v3/utils/constants.js +0 -44
  527. package/dist/esm/airdrop/contracts/ton/v3/utils/constants.js.map +0 -1
  528. package/dist/esm/airdrop/contracts/ton/v3/utils/date.utils.d.ts +0 -3
  529. package/dist/esm/airdrop/contracts/ton/v3/utils/date.utils.js +0 -10
  530. package/dist/esm/airdrop/contracts/ton/v3/utils/date.utils.js.map +0 -1
  531. package/dist/esm/airdrop/contracts/ton/v3/utils/index.d.ts +0 -3
  532. package/dist/esm/airdrop/contracts/ton/v3/utils/index.js +0 -4
  533. package/dist/esm/airdrop/contracts/ton/v3/utils/index.js.map +0 -1
  534. package/dist/esm/airdrop/contracts/ton/v3/utils/ton.utils.d.ts +0 -17
  535. package/dist/esm/airdrop/contracts/ton/v3/utils/ton.utils.js +0 -69
  536. package/dist/esm/airdrop/contracts/ton/v3/utils/ton.utils.js.map +0 -1
  537. package/dist/esm/airdrop/contracts/ton/v3/wrappers/Leaf.d.ts +0 -24
  538. package/dist/esm/airdrop/contracts/ton/v3/wrappers/Leaf.js +0 -55
  539. package/dist/esm/airdrop/contracts/ton/v3/wrappers/Leaf.js.map +0 -1
  540. package/dist/esm/airdrop/contracts/ton/v3/wrappers/MerkleTokenDistributor.d.ts +0 -63
  541. package/dist/esm/airdrop/contracts/ton/v3/wrappers/MerkleTokenDistributor.js +0 -219
  542. package/dist/esm/airdrop/contracts/ton/v3/wrappers/MerkleTokenDistributor.js.map +0 -1
  543. package/dist/esm/airdrop/contracts/ton/v3/wrappers/index.d.ts +0 -2
  544. package/dist/esm/airdrop/contracts/ton/v3/wrappers/index.js +0 -3
  545. package/dist/esm/airdrop/contracts/ton/v3/wrappers/index.js.map +0 -1
  546. package/dist/esm/airdrop/index.d.ts +0 -4
  547. package/dist/esm/airdrop/index.js +0 -5
  548. package/dist/esm/airdrop/index.js.map +0 -1
  549. package/dist/esm/airdrop/services/index.d.ts +0 -63
  550. package/dist/esm/airdrop/services/index.js +0 -84
  551. package/dist/esm/airdrop/services/index.js.map +0 -1
  552. package/dist/esm/airdrop/services/wallet-service/ton/WalletService.d.ts +0 -46
  553. package/dist/esm/airdrop/services/wallet-service/ton/WalletService.js +0 -169
  554. package/dist/esm/airdrop/services/wallet-service/ton/WalletService.js.map +0 -1
  555. package/dist/esm/airdrop/services/wallet-service/ton/index.d.ts +0 -1
  556. package/dist/esm/airdrop/services/wallet-service/ton/index.js +0 -2
  557. package/dist/esm/airdrop/services/wallet-service/ton/index.js.map +0 -1
  558. package/dist/esm/airdrop/strategies/AirdropStrategyFactory.d.ts +0 -16
  559. package/dist/esm/airdrop/strategies/AirdropStrategyFactory.js +0 -20
  560. package/dist/esm/airdrop/strategies/AirdropStrategyFactory.js.map +0 -1
  561. package/dist/esm/airdrop/strategies/EvmAirdropStrategy.d.ts +0 -28
  562. package/dist/esm/airdrop/strategies/EvmAirdropStrategy.js +0 -78
  563. package/dist/esm/airdrop/strategies/EvmAirdropStrategy.js.map +0 -1
  564. package/dist/esm/airdrop/strategies/IAirdropStrategy.d.ts +0 -30
  565. package/dist/esm/airdrop/strategies/IAirdropStrategy.js +0 -2
  566. package/dist/esm/airdrop/strategies/IAirdropStrategy.js.map +0 -1
  567. package/dist/esm/airdrop/strategies/SolanaAirdropStrategy.d.ts +0 -28
  568. package/dist/esm/airdrop/strategies/SolanaAirdropStrategy.js +0 -66
  569. package/dist/esm/airdrop/strategies/SolanaAirdropStrategy.js.map +0 -1
  570. package/dist/esm/airdrop/strategies/StrategyCache.d.ts +0 -10
  571. package/dist/esm/airdrop/strategies/StrategyCache.js +0 -28
  572. package/dist/esm/airdrop/strategies/StrategyCache.js.map +0 -1
  573. package/dist/esm/airdrop/strategies/TonAirdropStrategy.d.ts +0 -27
  574. package/dist/esm/airdrop/strategies/TonAirdropStrategy.js +0 -64
  575. package/dist/esm/airdrop/strategies/TonAirdropStrategy.js.map +0 -1
  576. package/dist/esm/airdrop/types/index.d.ts +0 -180
  577. package/dist/esm/airdrop/types/index.js +0 -39
  578. package/dist/esm/airdrop/types/index.js.map +0 -1
  579. package/dist/esm/index.d.ts +0 -4
  580. package/dist/esm/index.js +0 -5
  581. package/dist/esm/index.js.map +0 -1
  582. package/dist/esm/utils/api-client.d.ts +0 -19
  583. package/dist/esm/utils/api-client.js +0 -43
  584. package/dist/esm/utils/api-client.js.map +0 -1
  585. package/dist/esm/utils/biz.d.ts +0 -15
  586. package/dist/esm/utils/biz.js +0 -36
  587. package/dist/esm/utils/biz.js.map +0 -1
  588. package/dist/esm/utils/index.d.ts +0 -5
  589. package/dist/esm/utils/index.js +0 -6
  590. package/dist/esm/utils/index.js.map +0 -1
  591. package/dist/esm/utils/math.d.ts +0 -1
  592. package/dist/esm/utils/math.js +0 -6
  593. package/dist/esm/utils/math.js.map +0 -1
  594. package/dist/esm/utils/utils.d.ts +0 -9
  595. package/dist/esm/utils/utils.js +0 -41
  596. package/dist/esm/utils/utils.js.map +0 -1
  597. package/dist/esm/utils/web3.d.ts +0 -29
  598. package/dist/esm/utils/web3.js +0 -121
  599. package/dist/esm/utils/web3.js.map +0 -1
  600. package/dist/esm/wallets/WalletBase.d.ts +0 -32
  601. package/dist/esm/wallets/WalletBase.js +0 -67
  602. package/dist/esm/wallets/WalletBase.js.map +0 -1
  603. package/dist/esm/wallets/WalletFactory.d.ts +0 -8
  604. package/dist/esm/wallets/WalletFactory.js +0 -34
  605. package/dist/esm/wallets/WalletFactory.js.map +0 -1
  606. package/dist/esm/wallets/index.d.ts +0 -2
  607. package/dist/esm/wallets/index.js +0 -3
  608. package/dist/esm/wallets/index.js.map +0 -1
  609. package/dist/esm/wallets/providers/evm/EvmWallet.d.ts +0 -26
  610. package/dist/esm/wallets/providers/evm/EvmWallet.js +0 -78
  611. package/dist/esm/wallets/providers/evm/EvmWallet.js.map +0 -1
  612. package/dist/esm/wallets/providers/evm/index.d.ts +0 -10
  613. package/dist/esm/wallets/providers/evm/index.js +0 -31
  614. package/dist/esm/wallets/providers/evm/index.js.map +0 -1
  615. package/dist/esm/wallets/providers/index.d.ts +0 -3
  616. package/dist/esm/wallets/providers/index.js +0 -5
  617. package/dist/esm/wallets/providers/index.js.map +0 -1
  618. package/dist/esm/wallets/providers/solana/index.d.ts +0 -31
  619. package/dist/esm/wallets/providers/solana/index.js +0 -102
  620. package/dist/esm/wallets/providers/solana/index.js.map +0 -1
  621. package/dist/esm/wallets/providers/ton/TonWallet.d.ts +0 -23
  622. package/dist/esm/wallets/providers/ton/TonWallet.js +0 -113
  623. package/dist/esm/wallets/providers/ton/TonWallet.js.map +0 -1
  624. package/dist/esm/wallets/providers/ton/index.d.ts +0 -9
  625. package/dist/esm/wallets/providers/ton/index.js +0 -24
  626. package/dist/esm/wallets/providers/ton/index.js.map +0 -1
  627. package/dist/esm/wallets/types.d.ts +0 -38
  628. package/dist/esm/wallets/types.js +0 -27
  629. package/dist/esm/wallets/types.js.map +0 -1
  630. package/dist/esm/wallets/utils/index.d.ts +0 -8
  631. package/dist/esm/wallets/utils/index.js +0 -35
  632. package/dist/esm/wallets/utils/index.js.map +0 -1
  633. package/jest.config.cjs +0 -5
  634. package/tsconfig.json +0 -29
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/index.ts","../src/AirdropClient.ts","../src/strategies/AirdropStrategyFactory.ts","../src/strategies/EvmAirdropStrategy.ts","../src/strategies/SolanaAirdropStrategy.ts","../src/strategies/TonAirdropStrategy.ts","../src/strategies/StrategyCache.ts","../src/SignatureAirdropClient.ts"],"sourcesContent":["export { AirdropClient } from './AirdropClient';\nexport { SignatureAirdropClient } from './SignatureAirdropClient';\nexport * from '@sign-global/tokentable-core';\nexport * from '@sign-global/tokentable-wallets';\n","import { TonClient } from '@ton/ton';\nimport {\n getAirdropPro,\n getAirdropProject,\n getAirdropQuery,\n getAirdropContractConfig,\n getChainRpc,\n getTonProjectIdByAddress,\n ChainId,\n ChainType,\n ETokenType,\n EvmAirdropVersionEnum,\n IAirdropClaim,\n IAirdropOptions,\n IContractConfig,\n IProject,\n IWalletClient\n} from '@sign-global/tokentable-core';\nimport { AirdropStrategyFactory } from './strategies/AirdropStrategyFactory';\nimport { IAirdropStrategy } from './strategies/IAirdropStrategy';\nimport { strategyCache } from './strategies/StrategyCache';\n\nexport class AirdropClient {\n private tonClient?: TonClient;\n private slug?: string;\n private projectId?: string;\n private endpoint?: string;\n private project: IProject | undefined;\n protected chainRpc?: string;\n protected claims?: IAirdropClaim[];\n private projectPromise: Promise<void> | undefined;\n private claimHook: ((v: any) => any) | undefined;\n private contractConfig: IContractConfig | null = null;\n\n constructor(params: IAirdropOptions) {\n if ('slug' in params) {\n this.slug = params.slug;\n }\n this.projectId = params.projectId;\n this.endpoint = params.endpoint;\n this.chainRpc = params.chainRpc;\n if (this.project) {\n this.project = params.project;\n } else {\n this.projectPromise = this.initializeProjects();\n }\n }\n\n setTonClient(tonClient: TonClient) {\n this.tonClient = tonClient;\n }\n\n private getTonClient(): TonClient | undefined {\n if (!this.tonClient) {\n return undefined;\n }\n return this.tonClient;\n }\n\n private async fetchProjectFromSlug(address?: string): Promise<string | undefined> {\n if (!this.slug) return undefined;\n\n const res = await getAirdropPro(this.slug, this.endpoint);\n const projectMap = res?.childProjectMapping || {};\n\n return getTonProjectIdByAddress({\n address,\n slug: this.slug,\n data: projectMap\n });\n }\n\n private async fetchProjectDetails(projectId: string): Promise<void> {\n const project = await getAirdropProject(projectId, this.endpoint);\n this.project = project;\n if (this.chainRpc) return;\n const chainId = project.chainType === ChainType.Evm ? Number(project.chainId) : project.chainId;\n this.chainRpc = getChainRpc(chainId as ChainId);\n }\n\n protected async initializeProjects(address?: string) {\n try {\n let projectId = this.projectId;\n\n // If slug is provided, try to fetch project ID from slug\n if (!projectId) {\n projectId = await this.fetchProjectFromSlug(address);\n }\n\n if (!projectId) {\n return;\n }\n\n // Fetch project details\n await this.fetchProjectDetails(projectId);\n } catch (error: any) {\n throw new Error(`Failed to initialize project: ${error.message}`);\n }\n }\n\n async getProjectInfo() {\n if (this.projectPromise) {\n await this.projectPromise;\n }\n if (!this.project) throw new Error('Project not found');\n return this.project;\n }\n\n async getAirdropClaims(data: { address: string }) {\n if (this.slug) {\n await this.initializeProjects(data.address); // Fetch project details by address & slug\n }\n const project = await this.getProjectInfo();\n\n const res = await getAirdropQuery(\n {\n recipient: data.address,\n projectId: project!.id,\n recipientType: project!.recipientType\n },\n this.endpoint\n );\n const claimsRes = res.claims?.map((it) => ({\n ...it,\n project: project!,\n claimId: project!.chainType === ChainType.Evm ? `${project!.id}:${it.leaf}` : `${project!.id}:${it.index}`\n }));\n this.claims = claimsRes;\n return this.claims;\n }\n\n public async getStrategy(walletClient?: IWalletClient): Promise<IAirdropStrategy> {\n const project = await this.getProjectInfo();\n const version = this.contractConfig?.version || undefined;\n\n const hasWallet = !!walletClient;\n\n // Try to get cached strategy\n let strategy = strategyCache.getStrategy(project.contractAddress, project.chainId, project.chainType, hasWallet);\n\n if (!strategy) {\n // Create new strategy if not cached\n strategy = AirdropStrategyFactory.createStrategy({\n chainType: project.chainType,\n contractAddress: project.contractAddress,\n chainId: project.chainId,\n projectId: project.id,\n walletClient,\n tonClient: this.getTonClient(),\n version,\n chainRpc: this.chainRpc!\n });\n\n // Initialize the strategy\n await strategy.initialize(walletClient);\n\n // Cache the initialized strategy\n strategyCache.setStrategy(project.contractAddress, project.chainId, project.chainType, strategy, hasWallet);\n } else if (hasWallet) {\n // If we have a wallet and the strategy exists, just initialize with the new wallet\n await strategy.initialize(walletClient);\n }\n\n return strategy;\n }\n\n private getClaimDataById(claimId: string) {\n const claimData = this.claims?.find((it) => it.claimId === claimId);\n if (!claimData) throw new Error('Claim data not found');\n return claimData;\n }\n\n setClaimHook(fn: (v: any) => any) {\n this.claimHook = fn;\n }\n\n private getDefaultExtraData() {\n return {\n isLegacy: true,\n attestationId: BigInt(1)\n };\n }\n\n private async calculateClaimFee(project: IProject, claimAmount: string): Promise<string | bigint | undefined> {\n if (project.chainType === ChainType.Evm) {\n const version = await this.getVersion();\n const isNativeFreeVersion =\n project.tokenType === ETokenType.Native &&\n [EvmAirdropVersionEnum.V3, EvmAirdropVersionEnum.V4].includes(version as EvmAirdropVersionEnum);\n return isNativeFreeVersion ? undefined : await this.getClaimFee(BigInt(claimAmount));\n }\n\n if (project.chainType === ChainType.Ton) {\n return await this.getClaimFee(BigInt(claimAmount));\n }\n\n return undefined;\n }\n\n async claimAirdrop(\n { claimId, walletClient }: { claimId: string; walletClient: IWalletClient },\n options?: { onLoading?: () => void }\n ) {\n // Get claim data and initialize strategy\n const claimData = this.getClaimDataById(claimId);\n const strategy = await this.getStrategy(walletClient);\n const project = await this.getProjectInfo();\n\n // Process extra data\n const extraData =\n project.chainType === ChainType.Ton\n ? undefined\n : this.claimHook\n ? this.claimHook(claimData)\n : this.getDefaultExtraData();\n\n // Calculate claim value based on project type\n const value = await this.calculateClaimFee(project, claimData.amount);\n\n // Execute claim with processed data\n return strategy.claim(\n {\n ...claimData,\n extraData,\n value\n },\n options\n );\n }\n\n async checkClaimed(claimId: string): Promise<boolean> {\n const claimData = this.getClaimDataById(claimId);\n const strategy = await this.getStrategy();\n return strategy.checkClaimed(claimData);\n }\n\n private async getContractConfig(): Promise<IContractConfig | null> {\n try {\n const project = await this.getProjectInfo();\n\n if (!this.contractConfig && [ChainType.Evm, ChainType.Ton].includes(project.chainType)) {\n this.contractConfig = await getAirdropContractConfig(\n {\n chainId: project.chainId,\n chainType: project.chainType,\n contractAddress: project.contractAddress\n },\n this.endpoint\n );\n }\n return this.contractConfig;\n } catch (error) {\n console.error('Error fetching contract config:', error);\n return null;\n }\n }\n\n async getVersion(): Promise<string> {\n const config = await this.getContractConfig();\n if (config?.version) {\n return config.version;\n }\n\n const strategy = await this.getStrategy();\n return strategy.getVersion();\n }\n\n async getPaused(): Promise<boolean> {\n const config = await this.getContractConfig();\n if (config && config?.paused !== null) {\n return config.paused;\n }\n\n const strategy = await this.getStrategy();\n if (!strategy.getPaused) {\n throw new Error('getPaused is not supported for this chain');\n }\n return strategy.getPaused();\n }\n\n async getClaimFee(amount?: bigint, walletClient?: IWalletClient): Promise<string | bigint> {\n const config = await this.getContractConfig();\n if (config?.claimFee) {\n return config.claimFee;\n }\n\n const strategy = await this.getStrategy(walletClient);\n if (!strategy.getClaimFee) {\n throw new Error('getClaimFee is not supported for this chain');\n }\n return strategy.getClaimFee(this.project?.contractAddress || '', amount || BigInt(0));\n }\n\n // params claimId[]\n async batchCheckClaimed(): Promise<{ result: boolean; status: string }[]> {\n const strategy = await this.getStrategy();\n if (!strategy.batchCheckClaimed) {\n throw new Error('batchCheckClaimed is not supported for this chain');\n }\n const leafs = this.claims?.map((it) => it.leaf);\n if (!leafs) return [];\n return strategy.batchCheckClaimed(leafs);\n }\n\n async getNFT(): Promise<string> {\n const strategy = await this.getStrategy();\n if (!strategy.getNFT) {\n throw new Error('getNFT is not supported for this chain');\n }\n return strategy.getNFT();\n }\n\n async getKycThreshold(): Promise<bigint> {\n const strategy = await this.getStrategy();\n if (!strategy.getKycThreshold) {\n throw new Error('getKycThreshold is not supported for this chain');\n }\n return strategy.getKycThreshold();\n }\n}\n","import { ChainType, IWalletClient } from '@sign-global/tokentable-core';\nimport { EvmAirdropStrategy } from './EvmAirdropStrategy';\nimport { IAirdropStrategy, IAirdropStrategyConstructor } from './IAirdropStrategy';\nimport { SolanaAirdropStrategy } from './SolanaAirdropStrategy';\nimport { TonAirdropStrategy } from './TonAirdropStrategy';\nimport { TonClient } from '@ton/ton';\n\nexport class AirdropStrategyFactory {\n private static strategyMap: Record<ChainType, IAirdropStrategyConstructor | null> = {\n [ChainType.Evm]: EvmAirdropStrategy,\n [ChainType.Ton]: TonAirdropStrategy,\n [ChainType.Solana]: SolanaAirdropStrategy\n };\n\n static createStrategy(params: {\n chainType: ChainType;\n contractAddress: string;\n chainId: string | number;\n walletClient?: IWalletClient;\n tonClient?: TonClient;\n version?: string;\n projectId: string;\n chainRpc: string;\n }): IAirdropStrategy {\n const { chainType, ...strategyParams } = params;\n const StrategyClass = this.strategyMap[chainType];\n\n if (!StrategyClass) {\n throw new Error(`Unsupported chain type: ${chainType}`);\n }\n\n return new StrategyClass(strategyParams);\n }\n}\n","import { EvmAirdropService, ChainId, IWalletClient } from '@sign-global/tokentable-core';\nimport { IAirdropStrategy } from './IAirdropStrategy';\nimport { WalletClient as ViemWalletClient } from 'viem';\n\nexport class EvmAirdropStrategy implements IAirdropStrategy {\n private service: EvmAirdropService | undefined;\n private readonly contractAddress: string;\n private readonly chainId: ChainId;\n private readonly chainRpc: string;\n private walletClient?: ViemWalletClient;\n private cachedVersion: string | null = null;\n\n constructor(params: {\n contractAddress: string;\n chainId: string | number;\n walletClient?: IWalletClient;\n chainRpc: string;\n }) {\n this.contractAddress = params.contractAddress;\n this.chainId = Number(params.chainId) as ChainId;\n this.chainRpc = params.chainRpc;\n if (params.walletClient) {\n this.walletClient = params.walletClient as ViemWalletClient;\n }\n }\n\n async initialize(walletClient?: IWalletClient): Promise<void> {\n if (walletClient) {\n this.walletClient = walletClient as ViemWalletClient;\n }\n this.service = new EvmAirdropService({\n contractAddress: this.contractAddress,\n chainId: this.chainId,\n walletClient: this.walletClient,\n chainRpc: this.chainRpc\n });\n }\n\n isInitialized(): boolean {\n return !!this.service;\n }\n\n async getVersion(): Promise<string> {\n if (this.cachedVersion) {\n return this.cachedVersion;\n }\n if (!this.service) throw new Error('Strategy not initialized');\n this.cachedVersion = await this.service.getVersion();\n return this.cachedVersion;\n }\n\n async claim(claimData: any): Promise<any> {\n if (!this.service) throw new Error('Strategy not initialized');\n const { proof, group, data, value, extraData } = claimData;\n return this.service.claim({\n proof,\n group,\n data,\n value,\n extraData\n });\n }\n\n async checkClaimed(claimData: any): Promise<boolean> {\n if (!this.service) throw new Error('Strategy not initialized');\n return this.service.isLeafUsed(claimData.leaf);\n }\n\n async batchCheckClaimed(leafs: string[]): Promise<{ result: boolean; status: string }[]> {\n if (!this.service) throw new Error('Strategy not initialized');\n return this.service.batchFetchClaimed(leafs);\n }\n\n async getNFT(): Promise<string> {\n if (!this.service) throw new Error('Strategy not initialized');\n return this.service.getNFT() as unknown as string;\n }\n\n async getKycThreshold(): Promise<bigint> {\n if (!this.service) throw new Error('Strategy not initialized');\n return this.service.getKycThreshold();\n }\n\n async getClaimFee(contractAddress: string, amount: bigint): Promise<bigint> {\n if (!this.service) throw new Error('Strategy not initialized');\n return this.service.getClaimFee(contractAddress, amount) as unknown as bigint;\n }\n}\n","import { SolanaAirdropService, ChainId, IWalletClient, SolanaWalletState } from '@sign-global/tokentable-core';\nimport { IAirdropStrategy } from './IAirdropStrategy';\n\nexport class SolanaAirdropStrategy implements IAirdropStrategy {\n private service: SolanaAirdropService | undefined;\n private readonly chainId: ChainId;\n private readonly chainRpc: string;\n private walletClient?: SolanaWalletState;\n private cachedVersion: string | null = null;\n private projectId: string;\n\n constructor(params: {\n contractAddress: string;\n chainId: string | number;\n walletClient?: IWalletClient;\n projectId: string;\n chainRpc: string;\n }) {\n this.chainId = params.chainId as ChainId;\n this.projectId = params.projectId;\n this.chainRpc = params.chainRpc;\n if (params.walletClient) {\n this.walletClient = params.walletClient as SolanaWalletState;\n }\n }\n\n async initialize(walletClient?: IWalletClient): Promise<void> {\n if (walletClient) {\n this.walletClient = walletClient as SolanaWalletState;\n }\n this.service = new SolanaAirdropService({\n projectId: this.projectId,\n chainId: this.chainId as string,\n walletClient: this.walletClient as any,\n chainRpc: this.chainRpc\n });\n }\n\n isInitialized(): boolean {\n return !!this.service;\n }\n\n async getVersion(): Promise<string> {\n if (this.cachedVersion) {\n return this.cachedVersion;\n }\n if (!this.service) throw new Error('Strategy not initialized');\n this.cachedVersion = await this.service.getVersion();\n return this.cachedVersion;\n }\n\n async claim(claimData: any): Promise<any> {\n if (!this.service) throw new Error('Strategy not initialized');\n return this.service.claim(claimData);\n }\n\n async checkClaimed(claimData: any): Promise<boolean> {\n if (!this.service) throw new Error('Strategy not initialized');\n return this.service.isLeafUsed(claimData.leaf);\n }\n\n async batchCheckClaimed(leafs: string[]): Promise<{ result: boolean; status: string }[]> {\n if (!this.service) throw new Error('Strategy not initialized');\n return this.service.batchFetchClaimed(leafs);\n }\n\n async getClaimFee(contractAddress: string, amount: bigint): Promise<bigint> {\n if (!this.service) throw new Error('Strategy not initialized');\n return this.service.getClaimFee(contractAddress, amount) as unknown as bigint;\n }\n\n async getPaused(): Promise<boolean> {\n if (!this.service) throw new Error('Strategy not initialized');\n return this.service.getPaused();\n }\n}\n","import { TonClient } from '@ton/ton';\nimport { TonConnectUI } from '@tonconnect/ui-react';\nimport { TonAirdropService, IWalletClient } from '@sign-global/tokentable-core';\nimport { IAirdropStrategy } from './IAirdropStrategy';\n\nexport class TonAirdropStrategy implements IAirdropStrategy {\n private service: TonAirdropService | undefined;\n private readonly contractAddress: string;\n private readonly chainId: string;\n private readonly tonClient?: TonClient;\n private walletClient?: TonConnectUI;\n private cachedVersion: string | null = null;\n\n constructor(params: {\n contractAddress: string;\n chainId: string | number;\n walletClient?: IWalletClient;\n tonClient?: TonClient;\n version?: string;\n }) {\n this.contractAddress = params.contractAddress;\n this.chainId = params.chainId.toString();\n this.tonClient = params.tonClient;\n if (params.walletClient) {\n this.walletClient = params.walletClient as TonConnectUI;\n }\n if (params.version) {\n this.cachedVersion = params.version;\n }\n }\n\n async initialize(walletClient?: IWalletClient): Promise<void> {\n if (walletClient) {\n this.walletClient = walletClient as TonConnectUI;\n }\n this.service = new TonAirdropService({\n address: this.contractAddress,\n chainId: this.chainId,\n walletClient: this.walletClient,\n tonClient: this.tonClient,\n version: this.cachedVersion || undefined\n });\n }\n\n isInitialized(): boolean {\n return !!this.service;\n }\n\n async getVersion(): Promise<string> {\n if (!this.service) throw new Error('Strategy not initialized');\n if (!this.cachedVersion) {\n this.cachedVersion = await this.service.getVersion();\n }\n return this.cachedVersion;\n }\n\n async claim(claimData: any, options?: { onLoading?: () => void }): Promise<any> {\n if (!this.service) throw new Error('Strategy not initialized');\n return this.service.claim(claimData, options);\n }\n\n async checkClaimed(claimData: any): Promise<boolean> {\n if (!this.service) throw new Error('Strategy not initialized');\n return this.service.checkClaimed(claimData);\n }\n\n async getPaused(): Promise<boolean> {\n if (!this.service) throw new Error('Strategy not initialized');\n return this.service.getPaused();\n }\n\n async getClaimFee(contractAddress: string, amount: bigint): Promise<string> {\n if (!this.service) throw new Error('Strategy not initialized');\n return this.service.getClaimFee(contractAddress, amount);\n }\n}\n","import { IAirdropStrategy } from './IAirdropStrategy';\n\nexport class StrategyCache {\n private readOnlyStrategies: Map<string, IAirdropStrategy> = new Map();\n private walletStrategies: Map<string, IAirdropStrategy> = new Map();\n\n private getCacheKey(contractAddress: string, chainId: string | number, chainType: string): string {\n return `${chainType}:${contractAddress}:${chainId}`;\n }\n\n getStrategy(contractAddress: string, chainId: string | number, chainType: string, hasWallet: boolean = false): IAirdropStrategy | undefined {\n const cache = hasWallet ? this.walletStrategies : this.readOnlyStrategies;\n const cacheKey = this.getCacheKey(contractAddress, chainId, chainType);\n return cache.get(cacheKey);\n }\n\n setStrategy(contractAddress: string, chainId: string | number, chainType: string, strategy: IAirdropStrategy, hasWallet: boolean = false): void {\n const cache = hasWallet ? this.walletStrategies : this.readOnlyStrategies;\n const cacheKey = this.getCacheKey(contractAddress, chainId, chainType);\n cache.set(cacheKey, strategy);\n }\n\n clearStrategy(contractAddress: string, chainId: string | number, chainType: string, hasWallet?: boolean): void {\n const cacheKey = this.getCacheKey(contractAddress, chainId, chainType);\n if (hasWallet === undefined || hasWallet) {\n this.walletStrategies.delete(cacheKey);\n }\n if (hasWallet === undefined || !hasWallet) {\n this.readOnlyStrategies.delete(cacheKey);\n }\n }\n}\n\nexport const strategyCache = new StrategyCache();\n","import { WalletFactory } from '@sign-global/tokentable-wallets';\nimport {\n bindWallet,\n checkEligibility,\n checkGetSignatures,\n connectGoogleApi,\n connectTwitter,\n disconnectRecipient,\n getAirdropProject,\n cleanUrlParams,\n isMobile,\n getChainRpc,\n CONST,\n EvmSignatureAirdropService,\n SolanaSignatureAirdropService,\n AirdropSigIdentityTypeEnum,\n ChainId,\n ErrorCode,\n IAirdropOptions,\n IAirdropSignatureClaim,\n IAirdropSignatureIdentity,\n IClaimSignature,\n IProject,\n IWalletClient,\n SolanaWalletState,\n ViemWalletClient,\n ChainType\n} from '@sign-global/tokentable-core';\n\nexport class SignatureAirdropClient {\n private projectId?: string;\n private endpoint?: string;\n private project: IProject | undefined;\n private chainRpc?: string;\n protected claims?: IAirdropSignatureClaim[];\n protected identities?: IAirdropSignatureIdentity[];\n private projectPromise: Promise<void> | undefined;\n private authPromise: Promise<void> | undefined;\n private strategyCache: Map<string, EvmSignatureAirdropService | SolanaSignatureAirdropService> = new Map();\n constructor(params: IAirdropOptions) {\n this.projectId = params.projectId;\n this.endpoint = params.endpoint;\n this.chainRpc = params.chainRpc;\n if (this.project) {\n this.project = params.project;\n } else {\n this.projectPromise = this.initializeProjects();\n }\n if (isMobile()) {\n this.authPromise = this.checkAndHandleTwitterCode();\n }\n }\n\n private readonly LOCAL_STORAGE_SID_PREFIX = 'sid_';\n\n private async checkAndHandleTwitterCode() {\n try {\n const urlParams = new URLSearchParams(window.location.search);\n const code = urlParams.get('code');\n const type = urlParams.get('type');\n\n if (code && this.projectId) {\n let res;\n if (type === 'twitter') {\n res = await connectTwitter({ code, projectId: this.projectId }, this.endpoint);\n } else if (type === 'google') {\n res = await connectGoogleApi({ code, projectId: this.projectId }, this.endpoint);\n }\n if (res?.sid) {\n this.setSid(this.projectId!, res.sid);\n } else {\n throw new Error('Failed to connect');\n }\n cleanUrlParams(['code', 'type']);\n }\n } catch (error) {\n console.error(error);\n }\n }\n\n private setSid(projectId: string, sid: string): void {\n window.localStorage.setItem(`${this.LOCAL_STORAGE_SID_PREFIX}${projectId}`, sid);\n }\n\n private async fetchProjectDetails(projectId: string): Promise<void> {\n const project = await getAirdropProject(projectId, this.endpoint);\n this.project = project;\n if (this.chainRpc) return;\n const chainId = project.chainType === ChainType.Evm ? Number(project.chainId) : project.chainId;\n this.chainRpc = getChainRpc(chainId as ChainId);\n }\n\n protected async initializeProjects() {\n try {\n let projectId = this.projectId;\n if (!projectId) {\n return;\n }\n await this.fetchProjectDetails(projectId);\n } catch (error: any) {\n throw new Error(`Failed to initialize project: ${error.message}`);\n }\n }\n\n async getProjectInfo() {\n if (this.projectPromise) {\n await this.projectPromise;\n }\n if (!this.project) throw new Error('Project not found');\n return this.project;\n }\n\n async connectOAuth({\n onSuccess,\n onError,\n type\n }: {\n onSuccess: () => void;\n onError: (error: Error) => void;\n type: AirdropSigIdentityTypeEnum;\n }) {\n const project = await this.getProjectInfo();\n const authorizeUrl = project.identities.find((item: any) => item.identityType === type)?.authorizeUrl;\n if (!authorizeUrl) {\n onError(new Error('Authorize URL not found'));\n return;\n }\n if (isMobile()) {\n const state = encodeURIComponent(window.location.href);\n window.location.href = `${authorizeUrl}&state=${state}`;\n return;\n }\n const onWindowMessage = async (message: any) => {\n const name = message.data?.name;\n if (name && [CONST.TWITTER_AUTH_SUCCESS, CONST.GOOGLE_AUTH_SUCCESS].includes(name)) {\n const { code } = message.data.data || {};\n try {\n let res;\n if (name === CONST.GOOGLE_AUTH_SUCCESS) {\n res = await connectGoogleApi({ code, projectId: project.id }, this.endpoint);\n } else if (name === CONST.TWITTER_AUTH_SUCCESS) {\n res = await connectTwitter({ code, projectId: project.id }, this.endpoint);\n }\n if (res?.sid) {\n this.setSid(project.id, res?.sid);\n onSuccess();\n } else {\n onError(new Error('Failed to connect'));\n }\n } catch (error) {\n onError(error as Error);\n } finally {\n window.removeEventListener('message', onWindowMessage);\n }\n }\n };\n\n window.addEventListener('message', onWindowMessage);\n window.open(`${authorizeUrl}&state=state`, `twitter_auth_${project.id}`, 'width=600,height=800');\n }\n\n async connectX({ onSuccess, onError }: { onSuccess: () => void; onError: (error: Error) => void }) {\n await this.connectOAuth({\n onSuccess,\n onError,\n type: AirdropSigIdentityTypeEnum.Twitter\n });\n }\n\n async connectGoogle({ onSuccess, onError }: { onSuccess: () => void; onError: (error: Error) => void }) {\n await this.connectOAuth({\n onSuccess,\n onError,\n type: AirdropSigIdentityTypeEnum.Google\n });\n }\n\n async connectWallet({\n chainType,\n onSuccess,\n onError\n }: {\n chainType: ChainType;\n onSuccess?: (address: string) => void;\n onError?: (error: any) => void;\n }) {\n try {\n const project = await this.getProjectInfo();\n const wallet = WalletFactory.getWallet(chainType);\n const timestamp = Date.now();\n const recipientTypeMap = {\n [ChainType.Evm]: AirdropSigIdentityTypeEnum.EVMWallet,\n [ChainType.Solana]: AirdropSigIdentityTypeEnum.SolanaWallet,\n [ChainType.Ton]: AirdropSigIdentityTypeEnum.TONWallet\n };\n const msg = [project.id, recipientTypeMap[chainType], timestamp].join(',');\n const signResult = await wallet.signin(msg, false);\n await wallet.disconnect();\n const { message, signature } = signResult || {};\n\n if (this.identities?.find((it) => it.value?.toLowerCase() === wallet.address?.toLowerCase())) {\n onError?.(ErrorCode.WALLET_ALREADY_CONNECTED);\n return;\n }\n\n const payload = {\n signature: signature as string,\n message: message as string,\n key: wallet.publicKey || wallet.address!,\n address: wallet.address!,\n projectId: project.id,\n timestamp: timestamp,\n recipientType: recipientTypeMap[chainType]\n };\n\n const res = await bindWallet(payload, this.endpoint);\n if (res?.sid) {\n this.setSid(project.id, res?.sid);\n }\n onSuccess?.(wallet.address!);\n } catch (error) {\n onError?.(error);\n }\n }\n\n async getClaims() {\n const project = await this.getProjectInfo();\n if (this.authPromise) {\n await this.authPromise;\n }\n const res = await checkEligibility(\n {\n projectId: project.id\n },\n this.endpoint\n );\n this.claims = res.claims;\n this.identities = res.identities;\n return res;\n }\n\n public async disconnectIdentity({\n recipientType,\n recipient\n }: {\n recipientType: AirdropSigIdentityTypeEnum;\n recipient?: string;\n }) {\n const project = await this.getProjectInfo();\n return await disconnectRecipient(\n {\n projectId: project.id,\n recipientType,\n recipient\n },\n this.endpoint\n );\n }\n\n public async getStrategy(\n walletClient?: IWalletClient\n ): Promise<EvmSignatureAirdropService | SolanaSignatureAirdropService> {\n const project = await this.getProjectInfo();\n\n const cacheKey = walletClient\n ? project.chainType === ChainType.Evm\n ? (walletClient as ViemWalletClient).account?.address!\n : project.chainType === ChainType.Solana\n ? (walletClient as SolanaWalletState).publicKey!.toString()\n : 'walletClient'\n : 'default';\n if (this.strategyCache.has(cacheKey)) {\n return this.strategyCache.get(cacheKey)!;\n }\n\n const strategy =\n project.chainType === ChainType.Solana\n ? new SolanaSignatureAirdropService({\n chainId: project.chainId,\n projectId: project.id,\n token: project.tokenAddress,\n walletClient: walletClient as any,\n chainRpc: this.chainRpc!\n })\n : new EvmSignatureAirdropService({\n chainId: Number(project.chainId) as ChainId,\n contractAddress: project.contractAddress,\n walletClient: walletClient as any,\n chainRpc: this.chainRpc!\n });\n this.strategyCache.set(cacheKey, strategy);\n return strategy;\n }\n\n async getVersion(): Promise<string> {\n const strategy = await this.getStrategy();\n return strategy.getVersion();\n }\n\n // solana prams need to wallet\n async getClaimFee(amount?: bigint, walletClient?: IWalletClient): Promise<undefined | bigint> {\n const strategy = await this.getStrategy(walletClient);\n if (!strategy.getClaimFee) {\n throw new Error('getClaimFee is not supported for this chain');\n }\n return await strategy.getClaimFee(this.project?.contractAddress || '', amount || BigInt(1));\n }\n\n async claimAirdrop({\n claimIds,\n walletClient,\n recipient\n }: {\n claimIds: string[];\n walletClient: IWalletClient;\n recipient: string;\n }) {\n if (!claimIds.length) {\n throw new Error('Claim IDs cannot be empty');\n }\n if (!walletClient) {\n throw new Error('Wallet client is required');\n }\n if (!this.claims?.length) {\n throw new Error('No claims available');\n }\n const service = await this.getStrategy(walletClient);\n const project = await this.getProjectInfo();\n const res = await checkGetSignatures(\n {\n claimIds,\n projectId: this.projectId!,\n recipient\n },\n this.endpoint\n );\n if (!res?.signatures?.length) {\n throw new Error('Failed to get signatures');\n }\n const signatureMap = res?.signatures?.reduce(\n (map, item) => {\n map[item.claimId] = item;\n return map;\n },\n {} as Record<string, IClaimSignature>\n );\n const filteredClaims = this.claims.filter((it) => claimIds.includes(it.claimId));\n if (!filteredClaims.length) {\n throw new Error('No matching claims found');\n }\n\n // only evm use\n const defaultRecipient =\n project.chainType === ChainType.Evm ? (walletClient as ViemWalletClient).account?.address! : '';\n\n const claimData = filteredClaims.map((it) => {\n const signature = signatureMap[it.claimId];\n if (!signature) {\n throw new Error(`Signature not found for claim ID: ${it.claimId}`);\n }\n\n return {\n ...it,\n recipient: recipient ? recipient : defaultRecipient,\n ...signature\n };\n });\n\n const hash = (await service!.claim(claimData, recipient)) as `0x${string}`;\n return hash;\n }\n\n async batchCheckClaimed(): Promise<boolean[]> {\n if (!this.claims?.length) return [];\n const strategy = await this.getStrategy();\n if (!strategy.batchFetchClaimed) {\n throw new Error('batchCheckClaimed is not supported for this chain');\n }\n const claimIds = this.claims?.map((it) => it.claimId);\n return strategy.batchFetchClaimed(claimIds);\n }\n\n async getPaused(): Promise<boolean> {\n const strategy = await this.getStrategy();\n if (!strategy.getPaused) {\n throw new Error('getPaused is not supported for this chain');\n }\n return strategy.getPaused();\n }\n}\n"],"mappings":"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","names":["import_tokentable_core","import_tokentable_core","import_tokentable_core","import_tokentable_core","import_tokentable_core"]}