@sign-global/tokentable 0.4.0 → 0.4.1-beta.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.
- package/README.md +138 -4
- package/dist/cjs/airdrop/AirdropClient.js +9 -2
- package/dist/cjs/airdrop/AirdropClient.js.map +1 -1
- package/dist/cjs/airdrop/SignatureAirdropClient.d.ts +24 -7
- package/dist/cjs/airdrop/SignatureAirdropClient.js +146 -27
- package/dist/cjs/airdrop/SignatureAirdropClient.js.map +1 -1
- package/dist/cjs/airdrop/contracts/evm/AirdropService.js.map +1 -0
- package/dist/cjs/airdrop/contracts/evm/SignatureAirdropService.d.ts +24 -0
- package/dist/cjs/airdrop/contracts/evm/SignatureAirdropService.js +74 -0
- package/dist/cjs/airdrop/contracts/evm/SignatureAirdropService.js.map +1 -0
- package/dist/cjs/airdrop/contracts/evm/contracts/AirdropSignatureClient.d.ts +17 -0
- package/dist/cjs/airdrop/contracts/evm/contracts/AirdropSignatureClient.js +51 -0
- package/dist/cjs/airdrop/contracts/evm/contracts/AirdropSignatureClient.js.map +1 -0
- package/dist/cjs/airdrop/contracts/evm/contracts/AirdropV2Client.js.map +1 -0
- package/dist/cjs/airdrop/contracts/evm/contracts/AirdropV3Client.js.map +1 -0
- package/dist/cjs/airdrop/contracts/evm/contracts/AirdropV3FeeClient.js.map +1 -0
- package/dist/cjs/airdrop/contracts/evm/contracts/AirdropV4Client.js.map +1 -0
- package/dist/cjs/airdrop/contracts/evm/contracts/ContractBaseClient.js.map +1 -0
- package/dist/cjs/airdrop/contracts/evm/contracts/DeployClient.js.map +1 -0
- package/dist/cjs/airdrop/contracts/evm/contracts/FeeCollectorClient.js.map +1 -0
- package/dist/cjs/airdrop/contracts/evm/contracts/KycClient.js.map +1 -0
- package/dist/cjs/airdrop/contracts/evm/contracts/abis/FungibleTokenECDSADistributor.json +564 -0
- package/dist/cjs/airdrop/contracts/index.d.ts +4 -0
- package/dist/cjs/airdrop/contracts/index.js +12 -0
- package/dist/cjs/airdrop/contracts/index.js.map +1 -0
- package/dist/cjs/airdrop/contracts/solana/AirdropSignatureClient.d.ts +39 -0
- package/dist/cjs/airdrop/contracts/solana/AirdropSignatureClient.js +199 -0
- package/dist/cjs/airdrop/contracts/solana/AirdropSignatureClient.js.map +1 -0
- package/dist/cjs/airdrop/contracts/solana/FeeCollectorClient.d.ts +10 -0
- package/dist/cjs/airdrop/contracts/solana/FeeCollectorClient.js +58 -0
- package/dist/cjs/airdrop/contracts/solana/FeeCollectorClient.js.map +1 -0
- package/dist/cjs/airdrop/contracts/solana/SignatureAirdropService.d.ts +24 -0
- package/dist/cjs/airdrop/contracts/solana/SignatureAirdropService.js +57 -0
- package/dist/cjs/airdrop/contracts/solana/SignatureAirdropService.js.map +1 -0
- package/dist/cjs/airdrop/contracts/solana/SolanaContractClient.d.ts +24 -0
- package/dist/cjs/airdrop/contracts/solana/SolanaContractClient.js +73 -0
- package/dist/cjs/airdrop/contracts/solana/SolanaContractClient.js.map +1 -0
- package/dist/cjs/airdrop/contracts/solana/fee_collector.d.ts +803 -0
- package/dist/cjs/airdrop/contracts/solana/fee_collector.js +3 -0
- package/dist/cjs/airdrop/contracts/solana/fee_collector.js.map +1 -0
- package/dist/cjs/airdrop/contracts/solana/fee_collector.json +1046 -0
- package/dist/cjs/airdrop/contracts/solana/fungible_token_distributor_solana.d.ts +1098 -0
- package/dist/cjs/airdrop/contracts/solana/fungible_token_distributor_solana.js +3 -0
- package/dist/cjs/airdrop/contracts/solana/fungible_token_distributor_solana.js.map +1 -0
- package/dist/cjs/airdrop/contracts/solana/fungible_token_distributor_solana.json +1527 -0
- package/dist/cjs/airdrop/contracts/ton/AirdropClientV1.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/AirdropClientV2.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/AirdropClientV21.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/AirdropClientV3.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/AirdropService.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/TonContractBaseClient.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v1/utils/constants.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v1/utils/date.utils.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v1/utils/index.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v1/utils/ton.utils.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v1/wrappers/JettonMinter.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v1/wrappers/JettonWallet.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v1/wrappers/Leaf.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v1/wrappers/MerkleTokenDistributor.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v1/wrappers/index.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v2/utils/constants.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v2/utils/date.utils.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v2/utils/index.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v2/utils/ton.utils.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v2/wrappers/Leaf.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v2/wrappers/MerkleTokenDistributor.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v2/wrappers/index.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v21/utils/constants.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v21/utils/date.utils.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v21/utils/index.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v21/utils/ton.utils.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v21/wrappers/Leaf.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v21/wrappers/MerkleTokenDistributor.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v21/wrappers/index.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v3/utils/constants.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v3/utils/date.utils.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v3/utils/index.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v3/utils/ton.utils.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v3/wrappers/Leaf.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v3/wrappers/MerkleTokenDistributor.js.map +1 -0
- package/dist/cjs/airdrop/contracts/ton/v3/wrappers/index.js.map +1 -0
- package/dist/cjs/airdrop/index.d.ts +0 -1
- package/dist/cjs/airdrop/index.js +0 -15
- package/dist/cjs/airdrop/index.js.map +1 -1
- package/dist/cjs/airdrop/services/index.d.ts +26 -8
- package/dist/cjs/airdrop/services/index.js +34 -5
- package/dist/cjs/airdrop/services/index.js.map +1 -1
- package/dist/cjs/airdrop/strategies/AirdropStrategyFactory.js +2 -1
- package/dist/cjs/airdrop/strategies/AirdropStrategyFactory.js.map +1 -1
- package/dist/cjs/airdrop/strategies/EvmAirdropStrategy.js +2 -2
- package/dist/cjs/airdrop/strategies/EvmAirdropStrategy.js.map +1 -1
- package/dist/cjs/airdrop/strategies/TonAirdropStrategy.js +3 -3
- package/dist/cjs/airdrop/strategies/TonAirdropStrategy.js.map +1 -1
- package/dist/cjs/airdrop/types/index.d.ts +61 -27
- package/dist/cjs/airdrop/types/index.js +8 -1
- package/dist/cjs/airdrop/types/index.js.map +1 -1
- package/dist/cjs/index.d.ts +2 -1
- package/dist/cjs/index.js +8 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/utils/api-client.d.ts +1 -0
- package/dist/cjs/utils/api-client.js +2 -2
- package/dist/cjs/utils/api-client.js.map +1 -1
- package/dist/cjs/utils/utils.d.ts +0 -1
- package/dist/cjs/utils/utils.js +1 -2
- package/dist/cjs/utils/utils.js.map +1 -1
- package/dist/cjs/utils/web3.d.ts +13 -0
- package/dist/cjs/utils/web3.js +59 -0
- package/dist/cjs/utils/web3.js.map +1 -1
- package/dist/{esm/airdrop/core/useWeb3ConnectWallet → cjs/wallets}/WalletBase.js.map +1 -1
- package/dist/cjs/wallets/WalletFactory.js.map +1 -0
- package/dist/cjs/wallets/index.js.map +1 -0
- package/dist/{esm/airdrop/core/useWeb3ConnectWallet → cjs/wallets}/providers/evm/EvmWallet.d.ts +1 -1
- package/dist/cjs/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/evm/EvmWallet.js +6 -3
- package/dist/cjs/wallets/providers/evm/EvmWallet.js.map +1 -0
- package/dist/{esm/airdrop/core/useWeb3ConnectWallet → cjs/wallets}/providers/evm/index.d.ts +2 -1
- package/dist/cjs/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/evm/index.js +6 -4
- package/dist/cjs/wallets/providers/evm/index.js.map +1 -0
- package/dist/cjs/wallets/providers/index.js.map +1 -0
- package/dist/cjs/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/solana/index.d.ts +4 -2
- package/dist/cjs/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/solana/index.js +11 -18
- package/dist/cjs/wallets/providers/solana/index.js.map +1 -0
- package/dist/{esm/airdrop/core/useWeb3ConnectWallet → cjs/wallets}/providers/ton/TonWallet.d.ts +1 -1
- package/dist/cjs/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/ton/TonWallet.js +10 -9
- package/dist/cjs/wallets/providers/ton/TonWallet.js.map +1 -0
- package/dist/cjs/wallets/providers/ton/index.js.map +1 -0
- package/dist/cjs/wallets/types.js.map +1 -0
- package/dist/cjs/wallets/utils/index.js.map +1 -0
- package/dist/esm/airdrop/AirdropClient.js +9 -2
- package/dist/esm/airdrop/AirdropClient.js.map +1 -1
- package/dist/esm/airdrop/SignatureAirdropClient.d.ts +24 -7
- package/dist/esm/airdrop/SignatureAirdropClient.js +147 -28
- package/dist/esm/airdrop/SignatureAirdropClient.js.map +1 -1
- package/dist/esm/airdrop/contracts/evm/AirdropService.js.map +1 -0
- package/dist/esm/airdrop/contracts/evm/SignatureAirdropService.d.ts +24 -0
- package/dist/esm/airdrop/contracts/evm/SignatureAirdropService.js +70 -0
- package/dist/esm/airdrop/contracts/evm/SignatureAirdropService.js.map +1 -0
- package/dist/esm/airdrop/contracts/evm/contracts/AirdropSignatureClient.d.ts +17 -0
- package/dist/esm/airdrop/contracts/evm/contracts/AirdropSignatureClient.js +44 -0
- package/dist/esm/airdrop/contracts/evm/contracts/AirdropSignatureClient.js.map +1 -0
- package/dist/esm/airdrop/contracts/evm/contracts/AirdropV2Client.js.map +1 -0
- package/dist/esm/airdrop/contracts/evm/contracts/AirdropV3Client.js.map +1 -0
- package/dist/esm/airdrop/contracts/evm/contracts/AirdropV3FeeClient.js.map +1 -0
- package/dist/esm/airdrop/contracts/evm/contracts/AirdropV4Client.js.map +1 -0
- package/dist/esm/airdrop/contracts/evm/contracts/ContractBaseClient.js.map +1 -0
- package/dist/esm/airdrop/contracts/evm/contracts/DeployClient.js.map +1 -0
- package/dist/esm/airdrop/contracts/evm/contracts/FeeCollectorClient.js.map +1 -0
- package/dist/esm/airdrop/contracts/evm/contracts/KycClient.js.map +1 -0
- package/dist/esm/airdrop/contracts/evm/contracts/abis/FungibleTokenECDSADistributor.json +564 -0
- package/dist/esm/airdrop/contracts/index.d.ts +4 -0
- package/dist/esm/airdrop/contracts/index.js +5 -0
- package/dist/esm/airdrop/contracts/index.js.map +1 -0
- package/dist/esm/airdrop/contracts/solana/AirdropSignatureClient.d.ts +39 -0
- package/dist/esm/airdrop/contracts/solana/AirdropSignatureClient.js +169 -0
- package/dist/esm/airdrop/contracts/solana/AirdropSignatureClient.js.map +1 -0
- package/dist/esm/airdrop/contracts/solana/FeeCollectorClient.d.ts +10 -0
- package/dist/esm/airdrop/contracts/solana/FeeCollectorClient.js +28 -0
- package/dist/esm/airdrop/contracts/solana/FeeCollectorClient.js.map +1 -0
- package/dist/esm/airdrop/contracts/solana/SignatureAirdropService.d.ts +24 -0
- package/dist/esm/airdrop/contracts/solana/SignatureAirdropService.js +53 -0
- package/dist/esm/airdrop/contracts/solana/SignatureAirdropService.js.map +1 -0
- package/dist/esm/airdrop/contracts/solana/SolanaContractClient.d.ts +24 -0
- package/dist/esm/airdrop/contracts/solana/SolanaContractClient.js +69 -0
- package/dist/esm/airdrop/contracts/solana/SolanaContractClient.js.map +1 -0
- package/dist/esm/airdrop/contracts/solana/fee_collector.d.ts +803 -0
- package/dist/esm/airdrop/contracts/solana/fee_collector.js +2 -0
- package/dist/esm/airdrop/contracts/solana/fee_collector.js.map +1 -0
- package/dist/esm/airdrop/contracts/solana/fee_collector.json +1046 -0
- package/dist/esm/airdrop/contracts/solana/fungible_token_distributor_solana.d.ts +1098 -0
- package/dist/esm/airdrop/contracts/solana/fungible_token_distributor_solana.js +2 -0
- package/dist/esm/airdrop/contracts/solana/fungible_token_distributor_solana.js.map +1 -0
- package/dist/esm/airdrop/contracts/solana/fungible_token_distributor_solana.json +1527 -0
- package/dist/esm/airdrop/contracts/ton/AirdropClientV1.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/AirdropClientV2.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/AirdropClientV21.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/AirdropClientV3.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/AirdropService.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/TonContractBaseClient.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v1/utils/constants.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v1/utils/date.utils.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v1/utils/index.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v1/utils/ton.utils.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v1/wrappers/JettonMinter.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v1/wrappers/JettonWallet.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v1/wrappers/Leaf.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v1/wrappers/MerkleTokenDistributor.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v1/wrappers/index.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v2/utils/constants.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v2/utils/date.utils.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v2/utils/index.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v2/utils/ton.utils.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v2/wrappers/Leaf.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v2/wrappers/MerkleTokenDistributor.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v2/wrappers/index.js.map +1 -0
- package/dist/esm/airdrop/{core/ton/v1 → contracts/ton/v21}/utils/constants.js.map +1 -1
- package/dist/esm/airdrop/contracts/ton/v21/utils/date.utils.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v21/utils/index.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v21/utils/ton.utils.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v21/wrappers/Leaf.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v21/wrappers/MerkleTokenDistributor.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v21/wrappers/index.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v3/utils/constants.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v3/utils/date.utils.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v3/utils/index.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v3/utils/ton.utils.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v3/wrappers/Leaf.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v3/wrappers/MerkleTokenDistributor.js.map +1 -0
- package/dist/esm/airdrop/contracts/ton/v3/wrappers/index.js.map +1 -0
- package/dist/esm/airdrop/index.d.ts +0 -1
- package/dist/esm/airdrop/index.js +0 -1
- package/dist/esm/airdrop/index.js.map +1 -1
- package/dist/esm/airdrop/services/index.d.ts +26 -8
- package/dist/esm/airdrop/services/index.js +31 -4
- package/dist/esm/airdrop/services/index.js.map +1 -1
- package/dist/esm/airdrop/strategies/AirdropStrategyFactory.js +2 -1
- package/dist/esm/airdrop/strategies/AirdropStrategyFactory.js.map +1 -1
- package/dist/esm/airdrop/strategies/EvmAirdropStrategy.js +1 -1
- package/dist/esm/airdrop/strategies/EvmAirdropStrategy.js.map +1 -1
- package/dist/esm/airdrop/strategies/TonAirdropStrategy.js +2 -2
- package/dist/esm/airdrop/strategies/TonAirdropStrategy.js.map +1 -1
- package/dist/esm/airdrop/types/index.d.ts +61 -27
- package/dist/esm/airdrop/types/index.js +7 -0
- package/dist/esm/airdrop/types/index.js.map +1 -1
- package/dist/esm/index.d.ts +2 -1
- package/dist/esm/index.js +2 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/utils/api-client.d.ts +1 -0
- package/dist/esm/utils/api-client.js +2 -2
- package/dist/esm/utils/api-client.js.map +1 -1
- package/dist/esm/utils/utils.d.ts +0 -1
- package/dist/esm/utils/utils.js +0 -1
- package/dist/esm/utils/utils.js.map +1 -1
- package/dist/esm/utils/web3.d.ts +13 -0
- package/dist/esm/utils/web3.js +57 -0
- package/dist/esm/utils/web3.js.map +1 -1
- package/dist/{cjs/airdrop/core/useWeb3ConnectWallet → esm/wallets}/WalletBase.js.map +1 -1
- package/dist/esm/wallets/WalletFactory.js.map +1 -0
- package/dist/esm/wallets/index.js.map +1 -0
- package/dist/{cjs/airdrop/core/useWeb3ConnectWallet → esm/wallets}/providers/evm/EvmWallet.d.ts +1 -1
- package/dist/esm/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/evm/EvmWallet.js +6 -3
- package/dist/esm/wallets/providers/evm/EvmWallet.js.map +1 -0
- package/dist/{cjs/airdrop/core/useWeb3ConnectWallet → esm/wallets}/providers/evm/index.d.ts +2 -1
- package/dist/esm/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/evm/index.js +7 -5
- package/dist/esm/wallets/providers/evm/index.js.map +1 -0
- package/dist/esm/wallets/providers/index.js.map +1 -0
- package/dist/esm/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/solana/index.d.ts +4 -2
- package/dist/esm/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/solana/index.js +12 -19
- package/dist/esm/wallets/providers/solana/index.js.map +1 -0
- package/dist/{cjs/airdrop/core/useWeb3ConnectWallet → esm/wallets}/providers/ton/TonWallet.d.ts +1 -1
- package/dist/esm/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/ton/TonWallet.js +10 -9
- package/dist/esm/wallets/providers/ton/TonWallet.js.map +1 -0
- package/dist/esm/wallets/providers/ton/index.js.map +1 -0
- package/dist/esm/wallets/types.js.map +1 -0
- package/dist/esm/wallets/utils/index.js.map +1 -0
- package/package.json +5 -3
- package/src/airdrop/AirdropClient.ts +8 -2
- package/src/airdrop/SignatureAirdropClient.ts +209 -33
- package/src/airdrop/contracts/evm/SignatureAirdropService.ts +94 -0
- package/src/airdrop/contracts/evm/contracts/AirdropSignatureClient.ts +61 -0
- package/src/airdrop/contracts/evm/contracts/abis/FungibleTokenECDSADistributor.json +564 -0
- package/src/airdrop/contracts/index.ts +4 -0
- package/src/airdrop/contracts/solana/AirdropSignatureClient.ts +234 -0
- package/src/airdrop/contracts/solana/FeeCollectorClient.ts +34 -0
- package/src/airdrop/contracts/solana/SignatureAirdropService.ts +77 -0
- package/src/airdrop/contracts/solana/SolanaContractClient.ts +113 -0
- package/src/airdrop/contracts/solana/fee_collector.json +1046 -0
- package/src/airdrop/contracts/solana/fee_collector.ts +803 -0
- package/src/airdrop/contracts/solana/fungible_token_distributor_solana.json +1527 -0
- package/src/airdrop/contracts/solana/fungible_token_distributor_solana.ts +1098 -0
- package/src/airdrop/index.ts +0 -1
- package/src/airdrop/services/index.ts +76 -14
- package/src/airdrop/strategies/AirdropStrategyFactory.ts +4 -3
- package/src/airdrop/strategies/EvmAirdropStrategy.ts +2 -6
- package/src/airdrop/strategies/TonAirdropStrategy.ts +2 -2
- package/src/airdrop/tests/index.test.ts +12 -16
- package/src/airdrop/types/index.ts +68 -28
- package/src/index.ts +2 -1
- package/src/utils/api-client.ts +3 -2
- package/src/utils/utils.ts +0 -2
- package/src/utils/web3.ts +104 -0
- package/src/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/evm/EvmWallet.ts +6 -3
- package/src/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/evm/index.tsx +18 -5
- package/src/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/solana/index.tsx +13 -21
- package/src/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/ton/TonWallet.ts +16 -12
- package/dist/cjs/airdrop/core/evm/AirdropService.js.map +0 -1
- package/dist/cjs/airdrop/core/evm/contracts/AirdropV2Client.js.map +0 -1
- package/dist/cjs/airdrop/core/evm/contracts/AirdropV3Client.js.map +0 -1
- package/dist/cjs/airdrop/core/evm/contracts/AirdropV3FeeClient.js.map +0 -1
- package/dist/cjs/airdrop/core/evm/contracts/AirdropV4Client.js.map +0 -1
- package/dist/cjs/airdrop/core/evm/contracts/ContractBaseClient.js.map +0 -1
- package/dist/cjs/airdrop/core/evm/contracts/DeployClient.js.map +0 -1
- package/dist/cjs/airdrop/core/evm/contracts/FeeCollectorClient.js.map +0 -1
- package/dist/cjs/airdrop/core/evm/contracts/KycClient.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/AirdropClientV1.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/AirdropClientV2.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/AirdropClientV21.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/AirdropClientV3.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/AirdropService.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/TonContractBaseClient.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v1/utils/constants.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v1/utils/date.utils.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v1/utils/index.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v1/utils/ton.utils.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v1/wrappers/JettonMinter.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v1/wrappers/JettonWallet.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v1/wrappers/Leaf.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v1/wrappers/MerkleTokenDistributor.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v1/wrappers/index.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v2/utils/constants.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v2/utils/date.utils.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v2/utils/index.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v2/utils/ton.utils.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v2/wrappers/Leaf.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v2/wrappers/MerkleTokenDistributor.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v2/wrappers/index.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v21/utils/constants.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v21/utils/date.utils.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v21/utils/index.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v21/utils/ton.utils.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v21/wrappers/Leaf.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v21/wrappers/MerkleTokenDistributor.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v21/wrappers/index.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v3/utils/constants.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v3/utils/date.utils.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v3/utils/index.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v3/utils/ton.utils.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v3/wrappers/Leaf.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v3/wrappers/MerkleTokenDistributor.js.map +0 -1
- package/dist/cjs/airdrop/core/ton/v3/wrappers/index.js.map +0 -1
- package/dist/cjs/airdrop/core/useWeb3ConnectWallet/WalletFactory.js.map +0 -1
- package/dist/cjs/airdrop/core/useWeb3ConnectWallet/index.js.map +0 -1
- package/dist/cjs/airdrop/core/useWeb3ConnectWallet/providers/evm/EvmWallet.js.map +0 -1
- package/dist/cjs/airdrop/core/useWeb3ConnectWallet/providers/evm/index.js.map +0 -1
- package/dist/cjs/airdrop/core/useWeb3ConnectWallet/providers/index.js.map +0 -1
- package/dist/cjs/airdrop/core/useWeb3ConnectWallet/providers/solana/index.js.map +0 -1
- package/dist/cjs/airdrop/core/useWeb3ConnectWallet/providers/ton/TonWallet.js.map +0 -1
- package/dist/cjs/airdrop/core/useWeb3ConnectWallet/providers/ton/index.js.map +0 -1
- package/dist/cjs/airdrop/core/useWeb3ConnectWallet/types.js.map +0 -1
- package/dist/cjs/airdrop/core/useWeb3ConnectWallet/utils/index.js.map +0 -1
- package/dist/esm/airdrop/core/evm/AirdropService.js.map +0 -1
- package/dist/esm/airdrop/core/evm/contracts/AirdropV2Client.js.map +0 -1
- package/dist/esm/airdrop/core/evm/contracts/AirdropV3Client.js.map +0 -1
- package/dist/esm/airdrop/core/evm/contracts/AirdropV3FeeClient.js.map +0 -1
- package/dist/esm/airdrop/core/evm/contracts/AirdropV4Client.js.map +0 -1
- package/dist/esm/airdrop/core/evm/contracts/ContractBaseClient.js.map +0 -1
- package/dist/esm/airdrop/core/evm/contracts/DeployClient.js.map +0 -1
- package/dist/esm/airdrop/core/evm/contracts/FeeCollectorClient.js.map +0 -1
- package/dist/esm/airdrop/core/evm/contracts/KycClient.js.map +0 -1
- package/dist/esm/airdrop/core/ton/AirdropClientV1.js.map +0 -1
- package/dist/esm/airdrop/core/ton/AirdropClientV2.js.map +0 -1
- package/dist/esm/airdrop/core/ton/AirdropClientV21.js.map +0 -1
- package/dist/esm/airdrop/core/ton/AirdropClientV3.js.map +0 -1
- package/dist/esm/airdrop/core/ton/AirdropService.js.map +0 -1
- package/dist/esm/airdrop/core/ton/TonContractBaseClient.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v1/utils/date.utils.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v1/utils/index.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v1/utils/ton.utils.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v1/wrappers/JettonMinter.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v1/wrappers/JettonWallet.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v1/wrappers/Leaf.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v1/wrappers/MerkleTokenDistributor.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v1/wrappers/index.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v2/utils/constants.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v2/utils/date.utils.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v2/utils/index.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v2/utils/ton.utils.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v2/wrappers/Leaf.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v2/wrappers/MerkleTokenDistributor.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v2/wrappers/index.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v21/utils/constants.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v21/utils/date.utils.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v21/utils/index.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v21/utils/ton.utils.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v21/wrappers/Leaf.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v21/wrappers/MerkleTokenDistributor.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v21/wrappers/index.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v3/utils/constants.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v3/utils/date.utils.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v3/utils/index.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v3/utils/ton.utils.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v3/wrappers/Leaf.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v3/wrappers/MerkleTokenDistributor.js.map +0 -1
- package/dist/esm/airdrop/core/ton/v3/wrappers/index.js.map +0 -1
- package/dist/esm/airdrop/core/useWeb3ConnectWallet/WalletFactory.js.map +0 -1
- package/dist/esm/airdrop/core/useWeb3ConnectWallet/index.js.map +0 -1
- package/dist/esm/airdrop/core/useWeb3ConnectWallet/providers/evm/EvmWallet.js.map +0 -1
- package/dist/esm/airdrop/core/useWeb3ConnectWallet/providers/evm/index.js.map +0 -1
- package/dist/esm/airdrop/core/useWeb3ConnectWallet/providers/index.js.map +0 -1
- package/dist/esm/airdrop/core/useWeb3ConnectWallet/providers/solana/index.js.map +0 -1
- package/dist/esm/airdrop/core/useWeb3ConnectWallet/providers/ton/TonWallet.js.map +0 -1
- package/dist/esm/airdrop/core/useWeb3ConnectWallet/providers/ton/index.js.map +0 -1
- package/dist/esm/airdrop/core/useWeb3ConnectWallet/types.js.map +0 -1
- package/dist/esm/airdrop/core/useWeb3ConnectWallet/utils/index.js.map +0 -1
- /package/dist/cjs/airdrop/{core → contracts}/evm/AirdropService.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/AirdropService.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/AirdropV2Client.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/AirdropV2Client.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/AirdropV3Client.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/AirdropV3Client.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/AirdropV3FeeClient.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/AirdropV3FeeClient.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/AirdropV4Client.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/AirdropV4Client.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/ContractBaseClient.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/ContractBaseClient.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/DeployClient.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/DeployClient.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/FeeCollectorClient.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/FeeCollectorClient.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/KycClient.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/KycClient.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/abis/AirdropV2.json +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/abis/AirdropV3.json +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/abis/AirdropV3_Fee.json +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/abis/CustomFeeNativeAirdropV4.json +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/abis/Deployer.json +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/abis/FeeCollector.json +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/evm/contracts/abis/KycHook.json +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/AirdropClientV1.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/AirdropClientV1.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/AirdropClientV2.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/AirdropClientV2.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/AirdropClientV21.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/AirdropClientV21.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/AirdropClientV3.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/AirdropClientV3.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/AirdropService.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/AirdropService.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/TonContractBaseClient.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/TonContractBaseClient.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v1/build/Leaf.compiled.json +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v1/utils/constants.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v1/utils/constants.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v1/utils/date.utils.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v1/utils/date.utils.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v1/utils/index.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v1/utils/index.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v1/utils/ton.utils.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v1/utils/ton.utils.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v1/wrappers/JettonMinter.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v1/wrappers/JettonMinter.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v1/wrappers/JettonWallet.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v1/wrappers/JettonWallet.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v1/wrappers/Leaf.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v1/wrappers/Leaf.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v1/wrappers/MerkleTokenDistributor.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v1/wrappers/MerkleTokenDistributor.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v1/wrappers/index.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v1/wrappers/index.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v2/build/Leaf.compiled.json +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v2/utils/constants.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v2/utils/constants.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v2/utils/date.utils.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v2/utils/date.utils.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v2/utils/index.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v2/utils/index.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v2/utils/ton.utils.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v2/utils/ton.utils.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v2/wrappers/Leaf.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v2/wrappers/Leaf.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v2/wrappers/MerkleTokenDistributor.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v2/wrappers/MerkleTokenDistributor.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v2/wrappers/index.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v2/wrappers/index.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v21/build/Leaf.compiled.json +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v21/utils/constants.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v21/utils/constants.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v21/utils/date.utils.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v21/utils/date.utils.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v21/utils/index.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v21/utils/index.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v21/utils/ton.utils.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v21/utils/ton.utils.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v21/wrappers/Leaf.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v21/wrappers/Leaf.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v21/wrappers/MerkleTokenDistributor.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v21/wrappers/MerkleTokenDistributor.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v21/wrappers/index.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v21/wrappers/index.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v3/build/Leaf.compiled.json +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v3/utils/constants.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v3/utils/constants.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v3/utils/date.utils.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v3/utils/date.utils.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v3/utils/index.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v3/utils/index.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v3/utils/ton.utils.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v3/utils/ton.utils.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v3/wrappers/Leaf.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v3/wrappers/Leaf.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v3/wrappers/MerkleTokenDistributor.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v3/wrappers/MerkleTokenDistributor.js +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v3/wrappers/index.d.ts +0 -0
- /package/dist/cjs/airdrop/{core → contracts}/ton/v3/wrappers/index.js +0 -0
- /package/dist/cjs/{airdrop/core/useWeb3ConnectWallet → wallets}/WalletBase.d.ts +0 -0
- /package/dist/cjs/{airdrop/core/useWeb3ConnectWallet → wallets}/WalletBase.js +0 -0
- /package/dist/cjs/{airdrop/core/useWeb3ConnectWallet → wallets}/WalletFactory.d.ts +0 -0
- /package/dist/cjs/{airdrop/core/useWeb3ConnectWallet → wallets}/WalletFactory.js +0 -0
- /package/dist/cjs/{airdrop/core/useWeb3ConnectWallet → wallets}/index.d.ts +0 -0
- /package/dist/cjs/{airdrop/core/useWeb3ConnectWallet → wallets}/index.js +0 -0
- /package/dist/cjs/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/index.d.ts +0 -0
- /package/dist/cjs/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/index.js +0 -0
- /package/dist/cjs/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/ton/index.d.ts +0 -0
- /package/dist/cjs/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/ton/index.js +0 -0
- /package/dist/cjs/{airdrop/core/useWeb3ConnectWallet → wallets}/types.d.ts +0 -0
- /package/dist/cjs/{airdrop/core/useWeb3ConnectWallet → wallets}/types.js +0 -0
- /package/dist/cjs/{airdrop/core/useWeb3ConnectWallet → wallets}/utils/index.d.ts +0 -0
- /package/dist/cjs/{airdrop/core/useWeb3ConnectWallet → wallets}/utils/index.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/AirdropService.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/AirdropService.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/AirdropV2Client.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/AirdropV2Client.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/AirdropV3Client.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/AirdropV3Client.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/AirdropV3FeeClient.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/AirdropV3FeeClient.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/AirdropV4Client.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/AirdropV4Client.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/ContractBaseClient.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/ContractBaseClient.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/DeployClient.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/DeployClient.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/FeeCollectorClient.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/FeeCollectorClient.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/KycClient.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/KycClient.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/abis/AirdropV2.json +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/abis/AirdropV3.json +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/abis/AirdropV3_Fee.json +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/abis/CustomFeeNativeAirdropV4.json +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/abis/Deployer.json +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/abis/FeeCollector.json +0 -0
- /package/dist/esm/airdrop/{core → contracts}/evm/contracts/abis/KycHook.json +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/AirdropClientV1.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/AirdropClientV1.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/AirdropClientV2.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/AirdropClientV2.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/AirdropClientV21.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/AirdropClientV21.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/AirdropClientV3.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/AirdropClientV3.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/AirdropService.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/AirdropService.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/TonContractBaseClient.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/TonContractBaseClient.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v1/build/Leaf.compiled.json +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v1/utils/constants.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v1/utils/constants.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v1/utils/date.utils.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v1/utils/date.utils.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v1/utils/index.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v1/utils/index.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v1/utils/ton.utils.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v1/utils/ton.utils.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v1/wrappers/JettonMinter.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v1/wrappers/JettonMinter.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v1/wrappers/JettonWallet.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v1/wrappers/JettonWallet.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v1/wrappers/Leaf.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v1/wrappers/Leaf.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v1/wrappers/MerkleTokenDistributor.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v1/wrappers/MerkleTokenDistributor.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v1/wrappers/index.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v1/wrappers/index.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v2/build/Leaf.compiled.json +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v2/utils/constants.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v2/utils/constants.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v2/utils/date.utils.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v2/utils/date.utils.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v2/utils/index.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v2/utils/index.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v2/utils/ton.utils.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v2/utils/ton.utils.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v2/wrappers/Leaf.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v2/wrappers/Leaf.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v2/wrappers/MerkleTokenDistributor.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v2/wrappers/MerkleTokenDistributor.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v2/wrappers/index.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v2/wrappers/index.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v21/build/Leaf.compiled.json +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v21/utils/constants.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v21/utils/constants.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v21/utils/date.utils.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v21/utils/date.utils.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v21/utils/index.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v21/utils/index.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v21/utils/ton.utils.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v21/utils/ton.utils.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v21/wrappers/Leaf.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v21/wrappers/Leaf.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v21/wrappers/MerkleTokenDistributor.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v21/wrappers/MerkleTokenDistributor.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v21/wrappers/index.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v21/wrappers/index.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v3/build/Leaf.compiled.json +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v3/utils/constants.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v3/utils/constants.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v3/utils/date.utils.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v3/utils/date.utils.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v3/utils/index.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v3/utils/index.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v3/utils/ton.utils.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v3/utils/ton.utils.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v3/wrappers/Leaf.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v3/wrappers/Leaf.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v3/wrappers/MerkleTokenDistributor.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v3/wrappers/MerkleTokenDistributor.js +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v3/wrappers/index.d.ts +0 -0
- /package/dist/esm/airdrop/{core → contracts}/ton/v3/wrappers/index.js +0 -0
- /package/dist/esm/{airdrop/core/useWeb3ConnectWallet → wallets}/WalletBase.d.ts +0 -0
- /package/dist/esm/{airdrop/core/useWeb3ConnectWallet → wallets}/WalletBase.js +0 -0
- /package/dist/esm/{airdrop/core/useWeb3ConnectWallet → wallets}/WalletFactory.d.ts +0 -0
- /package/dist/esm/{airdrop/core/useWeb3ConnectWallet → wallets}/WalletFactory.js +0 -0
- /package/dist/esm/{airdrop/core/useWeb3ConnectWallet → wallets}/index.d.ts +0 -0
- /package/dist/esm/{airdrop/core/useWeb3ConnectWallet → wallets}/index.js +0 -0
- /package/dist/esm/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/index.d.ts +0 -0
- /package/dist/esm/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/index.js +0 -0
- /package/dist/esm/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/ton/index.d.ts +0 -0
- /package/dist/esm/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/ton/index.js +0 -0
- /package/dist/esm/{airdrop/core/useWeb3ConnectWallet → wallets}/types.d.ts +0 -0
- /package/dist/esm/{airdrop/core/useWeb3ConnectWallet → wallets}/types.js +0 -0
- /package/dist/esm/{airdrop/core/useWeb3ConnectWallet → wallets}/utils/index.d.ts +0 -0
- /package/dist/esm/{airdrop/core/useWeb3ConnectWallet → wallets}/utils/index.js +0 -0
- /package/src/airdrop/{core → contracts}/evm/AirdropService.ts +0 -0
- /package/src/airdrop/{core → contracts}/evm/contracts/AirdropV2Client.ts +0 -0
- /package/src/airdrop/{core → contracts}/evm/contracts/AirdropV3Client.ts +0 -0
- /package/src/airdrop/{core → contracts}/evm/contracts/AirdropV3FeeClient.ts +0 -0
- /package/src/airdrop/{core → contracts}/evm/contracts/AirdropV4Client.ts +0 -0
- /package/src/airdrop/{core → contracts}/evm/contracts/ContractBaseClient.ts +0 -0
- /package/src/airdrop/{core → contracts}/evm/contracts/DeployClient.ts +0 -0
- /package/src/airdrop/{core → contracts}/evm/contracts/FeeCollectorClient.ts +0 -0
- /package/src/airdrop/{core → contracts}/evm/contracts/KycClient.ts +0 -0
- /package/src/airdrop/{core → contracts}/evm/contracts/abis/Airdrop.json +0 -0
- /package/src/airdrop/{core → contracts}/evm/contracts/abis/AirdropV2.json +0 -0
- /package/src/airdrop/{core → contracts}/evm/contracts/abis/AirdropV3.json +0 -0
- /package/src/airdrop/{core → contracts}/evm/contracts/abis/AirdropV3_Fee.json +0 -0
- /package/src/airdrop/{core → contracts}/evm/contracts/abis/CustomFeeNativeAirdropV4.json +0 -0
- /package/src/airdrop/{core → contracts}/evm/contracts/abis/Deployer.json +0 -0
- /package/src/airdrop/{core → contracts}/evm/contracts/abis/ERC721.json +0 -0
- /package/src/airdrop/{core → contracts}/evm/contracts/abis/FeeCollector.json +0 -0
- /package/src/airdrop/{core → contracts}/evm/contracts/abis/KycHook.json +0 -0
- /package/src/airdrop/{core → contracts}/ton/AirdropClientV1.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/AirdropClientV2.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/AirdropClientV21.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/AirdropClientV3.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/AirdropService.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/TonContractBaseClient.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v1/build/Leaf.compiled.json +0 -0
- /package/src/airdrop/{core → contracts}/ton/v1/build/MerkleTokenDistributor.compiled.json +0 -0
- /package/src/airdrop/{core → contracts}/ton/v1/utils/constants.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v1/utils/date.utils.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v1/utils/index.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v1/utils/ton.utils.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v1/wrappers/JettonMinter.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v1/wrappers/JettonWallet.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v1/wrappers/Leaf.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v1/wrappers/MerkleTokenDistributor.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v1/wrappers/index.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v2/build/Leaf.compiled.json +0 -0
- /package/src/airdrop/{core → contracts}/ton/v2/build/MerkleTokenDistributor.compiled.json +0 -0
- /package/src/airdrop/{core → contracts}/ton/v2/utils/constants.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v2/utils/date.utils.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v2/utils/index.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v2/utils/ton.utils.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v2/wrappers/Leaf.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v2/wrappers/MerkleTokenDistributor.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v2/wrappers/index.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v21/build/Leaf.compiled.json +0 -0
- /package/src/airdrop/{core → contracts}/ton/v21/build/MerkleTokenDistributor.compiled.json +0 -0
- /package/src/airdrop/{core → contracts}/ton/v21/utils/constants.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v21/utils/date.utils.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v21/utils/index.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v21/utils/ton.utils.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v21/wrappers/Leaf.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v21/wrappers/MerkleTokenDistributor.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v21/wrappers/index.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v3/build/Leaf.compiled.json +0 -0
- /package/src/airdrop/{core → contracts}/ton/v3/build/MerkleTokenDistributor.compiled.json +0 -0
- /package/src/airdrop/{core → contracts}/ton/v3/utils/constants.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v3/utils/date.utils.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v3/utils/index.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v3/utils/ton.utils.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v3/wrappers/Leaf.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v3/wrappers/MerkleTokenDistributor.ts +0 -0
- /package/src/airdrop/{core → contracts}/ton/v3/wrappers/index.ts +0 -0
- /package/src/{airdrop/core/useWeb3ConnectWallet → wallets}/WalletBase.ts +0 -0
- /package/src/{airdrop/core/useWeb3ConnectWallet → wallets}/WalletFactory.tsx +0 -0
- /package/src/{airdrop/core/useWeb3ConnectWallet → wallets}/index.ts +0 -0
- /package/src/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/index.ts +0 -0
- /package/src/{airdrop/core/useWeb3ConnectWallet → wallets}/providers/ton/index.tsx +0 -0
- /package/src/{airdrop/core/useWeb3ConnectWallet → wallets}/types.ts +0 -0
- /package/src/{airdrop/core/useWeb3ConnectWallet → wallets}/utils/index.ts +0 -0
|
@@ -0,0 +1,234 @@
|
|
|
1
|
+
import { PublicKey } from '@solana/web3.js';
|
|
2
|
+
import { SolanaContractClientBase, SolanaContractInfo } from './SolanaContractClient';
|
|
3
|
+
import IDL from './fungible_token_distributor_solana.json';
|
|
4
|
+
import * as anchor from '@coral-xyz/anchor';
|
|
5
|
+
import { FungibleTokenDistributorSolana } from './fungible_token_distributor_solana';
|
|
6
|
+
import { TOKEN_2022_PROGRAM_ID } from '@solana/spl-token';
|
|
7
|
+
import { FeeCollectorClient } from './FeeCollectorClient';
|
|
8
|
+
import { getOrCreateAssociatedTokenAccount, hexStrToU8Array } from '../../../utils';
|
|
9
|
+
|
|
10
|
+
export class AirdropSignatureClient extends SolanaContractClientBase<FungibleTokenDistributorSolana> {
|
|
11
|
+
projectId: string;
|
|
12
|
+
constructor(options: SolanaContractInfo) {
|
|
13
|
+
super({
|
|
14
|
+
...options,
|
|
15
|
+
idl: IDL
|
|
16
|
+
});
|
|
17
|
+
this.projectId = options.projectId;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
getVersion() {
|
|
21
|
+
return '1.0.0';
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
get FeeCollector() {
|
|
25
|
+
return new FeeCollectorClient({
|
|
26
|
+
projectId: this.projectId,
|
|
27
|
+
walletClient: this.wallet,
|
|
28
|
+
chainId: this.chainId
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
async getStoragePDA(): Promise<PublicKey> {
|
|
33
|
+
const [storagePDA] = await this.findProgramAddress([
|
|
34
|
+
anchor.utils.bytes.utf8.encode('storage'),
|
|
35
|
+
anchor.utils.bytes.utf8.encode(this.projectId)
|
|
36
|
+
]);
|
|
37
|
+
|
|
38
|
+
return storagePDA;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
async getAirdropPDA(): Promise<PublicKey> {
|
|
42
|
+
const [airdropPDA] = await this.findProgramAddress([
|
|
43
|
+
anchor.utils.bytes.utf8.encode('airdrop'),
|
|
44
|
+
anchor.utils.bytes.utf8.encode(this.projectId)
|
|
45
|
+
]);
|
|
46
|
+
|
|
47
|
+
return airdropPDA;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
async getVaultPDA(): Promise<PublicKey> {
|
|
51
|
+
const airdropPDA = await this.getAirdropPDA();
|
|
52
|
+
const [vaultPDA] = await this.findProgramAddress([anchor.utils.bytes.utf8.encode('vault'), airdropPDA.toBuffer()]);
|
|
53
|
+
|
|
54
|
+
return vaultPDA;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
async getClaimPDA(claimId: string): Promise<PublicKey> {
|
|
58
|
+
const airdropPDA = await this.getAirdropPDA();
|
|
59
|
+
const [claimPDA] = await this.findProgramAddress([
|
|
60
|
+
anchor.utils.bytes.utf8.encode('claim'),
|
|
61
|
+
airdropPDA.toBuffer(),
|
|
62
|
+
new Uint8Array(hexStrToU8Array(claimId))
|
|
63
|
+
]);
|
|
64
|
+
return claimPDA;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
async getContractInfo() {
|
|
68
|
+
const airdropPDA = await this.getAirdropPDA();
|
|
69
|
+
console.log(airdropPDA);
|
|
70
|
+
const config: any = await this.fetchAccountData('airdrop', airdropPDA);
|
|
71
|
+
console.log(config);
|
|
72
|
+
|
|
73
|
+
return {
|
|
74
|
+
version: '1.0.0' as string,
|
|
75
|
+
token: config.token.toString() as string,
|
|
76
|
+
startTime: Number(config.startTime),
|
|
77
|
+
endTime: Number(config.endTime),
|
|
78
|
+
paused: config.paused as boolean,
|
|
79
|
+
signer: config.authorizedSigner.toString() as string,
|
|
80
|
+
owner: config.owner.toString() as string
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
async getPaused() {
|
|
85
|
+
const config = await this.getContractInfo();
|
|
86
|
+
return config.paused;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
async checkClaim(id: string) {
|
|
90
|
+
const claimPDA = await this.getClaimPDA(id);
|
|
91
|
+
try {
|
|
92
|
+
const claimData = await this.fetchAccountData('claim', claimPDA);
|
|
93
|
+
console.log(claimData, 'claimData');
|
|
94
|
+
return true;
|
|
95
|
+
} catch (error) {
|
|
96
|
+
return false;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
async batchFetchClaimed(userClaimIds: string[]): Promise<boolean[]> {
|
|
101
|
+
const res = await Promise.all(userClaimIds.map((id) => this.checkClaim(id)));
|
|
102
|
+
return res;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
async initialize(projectId: string, feeCollector?: PublicKey): Promise<string> {
|
|
106
|
+
try {
|
|
107
|
+
const airdropPDA = await this.getAirdropPDA();
|
|
108
|
+
console.log(airdropPDA);
|
|
109
|
+
const config = await this.getContractInfo();
|
|
110
|
+
console.log(config);
|
|
111
|
+
return airdropPDA.toString();
|
|
112
|
+
} catch (error) {
|
|
113
|
+
const owner = this.wallet.publicKey;
|
|
114
|
+
const res = await this.invokeInstruction(
|
|
115
|
+
'initialize',
|
|
116
|
+
{
|
|
117
|
+
// storage: storagePDA,
|
|
118
|
+
// authority: this.wallet.publicKey
|
|
119
|
+
},
|
|
120
|
+
[projectId, owner, feeCollector || PublicKey.default]
|
|
121
|
+
);
|
|
122
|
+
console.log(res);
|
|
123
|
+
const airdropPDA = await this.getAirdropPDA();
|
|
124
|
+
return airdropPDA.toString();
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
async setBaseParams(tokenAddress: string, startTime: number, endTime: number, signer: string) {
|
|
129
|
+
const start = new anchor.BN(startTime),
|
|
130
|
+
end = new anchor.BN(endTime);
|
|
131
|
+
console.log(start, end, tokenAddress, signer);
|
|
132
|
+
await this.invokeInstruction('setBaseParams', {}, [new PublicKey(tokenAddress), start, end, new PublicKey(signer)]);
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
async togglePause() {
|
|
136
|
+
await this.invokeInstruction('togglePause', {}, [this.projectId]);
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
async claim(
|
|
140
|
+
data: {
|
|
141
|
+
recipient: string;
|
|
142
|
+
data: string;
|
|
143
|
+
claimId: string;
|
|
144
|
+
signature: string;
|
|
145
|
+
extraData?: string;
|
|
146
|
+
unlockingAt: number;
|
|
147
|
+
value: string;
|
|
148
|
+
hash: string;
|
|
149
|
+
}[]
|
|
150
|
+
) {
|
|
151
|
+
const config = await this.getContractInfo();
|
|
152
|
+
|
|
153
|
+
const feeCollectorStoragePDA = await this.FeeCollector.getStoragePDA();
|
|
154
|
+
const userFeePDA = await this.FeeCollector.getUserFeePDA();
|
|
155
|
+
const airdropPDA = await this.getAirdropPDA();
|
|
156
|
+
const vaultPDA = await this.getVaultPDA();
|
|
157
|
+
|
|
158
|
+
const authorityATA = await getOrCreateAssociatedTokenAccount({
|
|
159
|
+
connection: this.connection,
|
|
160
|
+
payer: this.wallet.publicKey,
|
|
161
|
+
mint: new PublicKey(config.token),
|
|
162
|
+
owner: new PublicKey(this.wallet.publicKey),
|
|
163
|
+
signTransaction: (this.wallet as any).signTransaction,
|
|
164
|
+
programId: TOKEN_2022_PROGRAM_ID
|
|
165
|
+
});
|
|
166
|
+
|
|
167
|
+
const tx = new anchor.web3.Transaction();
|
|
168
|
+
|
|
169
|
+
for (const claim of data) {
|
|
170
|
+
tx.add(
|
|
171
|
+
anchor.web3.Ed25519Program.createInstructionWithPublicKey({
|
|
172
|
+
publicKey: new PublicKey(config.signer).toBytes(),
|
|
173
|
+
message: Uint8Array.from(hexStrToU8Array(claim.hash)),
|
|
174
|
+
signature: new Uint8Array(hexStrToU8Array(claim.signature))
|
|
175
|
+
})
|
|
176
|
+
);
|
|
177
|
+
|
|
178
|
+
console.log(
|
|
179
|
+
anchor.web3.Ed25519Program.programId.toString(),
|
|
180
|
+
{
|
|
181
|
+
publicKey: new PublicKey(config.signer).toBytes(),
|
|
182
|
+
message: Uint8Array.from(hexStrToU8Array(claim.hash)),
|
|
183
|
+
signature: new Uint8Array(hexStrToU8Array(claim.signature))
|
|
184
|
+
},
|
|
185
|
+
'sign'
|
|
186
|
+
);
|
|
187
|
+
|
|
188
|
+
const claimPDA = await this.getClaimPDA(claim.claimId);
|
|
189
|
+
|
|
190
|
+
const decodedData = {
|
|
191
|
+
claimableTimestamp: new anchor.BN(claim.unlockingAt),
|
|
192
|
+
claimableAmount: new anchor.BN(claim.value)
|
|
193
|
+
};
|
|
194
|
+
console.log(
|
|
195
|
+
airdropPDA.toString(),
|
|
196
|
+
claimPDA,
|
|
197
|
+
this.projectId,
|
|
198
|
+
new Uint8Array(hexStrToU8Array(claim.claimId)),
|
|
199
|
+
[],
|
|
200
|
+
decodedData,
|
|
201
|
+
Buffer.from(hexStrToU8Array(claim.signature)),
|
|
202
|
+
'txdata'
|
|
203
|
+
);
|
|
204
|
+
|
|
205
|
+
tx.add(
|
|
206
|
+
await this.program.methods
|
|
207
|
+
.claim(
|
|
208
|
+
this.projectId,
|
|
209
|
+
new Uint8Array(hexStrToU8Array(claim.claimId)),
|
|
210
|
+
[],
|
|
211
|
+
decodedData,
|
|
212
|
+
Buffer.from(hexStrToU8Array(claim.signature))
|
|
213
|
+
)
|
|
214
|
+
.accountsPartial({
|
|
215
|
+
authority: this.wallet.publicKey,
|
|
216
|
+
airdrop: airdropPDA,
|
|
217
|
+
claim: claimPDA,
|
|
218
|
+
vault: vaultPDA,
|
|
219
|
+
authorityAta: authorityATA.address,
|
|
220
|
+
tokenMint: new PublicKey(config.token),
|
|
221
|
+
feeCollectorStorage: feeCollectorStoragePDA,
|
|
222
|
+
feeCollectorVault: null,
|
|
223
|
+
userFee: userFeePDA,
|
|
224
|
+
authorityFeeAta: null,
|
|
225
|
+
tokenProgram: TOKEN_2022_PROGRAM_ID
|
|
226
|
+
})
|
|
227
|
+
.transaction()
|
|
228
|
+
);
|
|
229
|
+
console.log(tx);
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
return await this.program.provider.sendAndConfirm?.(tx);
|
|
233
|
+
}
|
|
234
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { FeeCollector } from './fee_collector';
|
|
2
|
+
import { SolanaContractClientBase, SolanaContractInfo } from './SolanaContractClient';
|
|
3
|
+
import IDL from './fee_collector.json';
|
|
4
|
+
import { PublicKey } from '@solana/web3.js';
|
|
5
|
+
import * as anchor from '@coral-xyz/anchor';
|
|
6
|
+
|
|
7
|
+
export class FeeCollectorClient extends SolanaContractClientBase<FeeCollector> {
|
|
8
|
+
projectId: string;
|
|
9
|
+
constructor(options: SolanaContractInfo) {
|
|
10
|
+
super({
|
|
11
|
+
...options,
|
|
12
|
+
idl: IDL
|
|
13
|
+
});
|
|
14
|
+
this.projectId = options.projectId;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
async getStoragePDA(): Promise<PublicKey> {
|
|
18
|
+
const [storagePDA] = await this.findProgramAddress([anchor.utils.bytes.utf8.encode('storage')]);
|
|
19
|
+
|
|
20
|
+
return storagePDA;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
async getUserFeePDA(): Promise<PublicKey> {
|
|
24
|
+
const [userFeePDA] = await this.findProgramAddress([
|
|
25
|
+
anchor.utils.bytes.utf8.encode('fee'),
|
|
26
|
+
anchor.utils.bytes.utf8.encode(this.projectId)
|
|
27
|
+
]);
|
|
28
|
+
return userFeePDA;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
async setDefaultFee(fee: string) {
|
|
32
|
+
return this.invokeInstruction('setDefaultFee', {}, [new anchor.BN(fee)]);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { AirdropSignatureClient } from './AirdropSignatureClient';
|
|
2
|
+
import { SolanaContractInfo } from './SolanaContractClient';
|
|
3
|
+
|
|
4
|
+
export class SignatureAirdropService {
|
|
5
|
+
options: SolanaContractInfo;
|
|
6
|
+
constructor(options: SolanaContractInfo) {
|
|
7
|
+
this.options = options;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
private get airdropClient(): AirdropSignatureClient {
|
|
11
|
+
if (!this.options) {
|
|
12
|
+
throw new Error('options is empty');
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
return new AirdropSignatureClient(this.options);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
async getVersion() {
|
|
19
|
+
return this.airdropClient.getVersion();
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
feeCollectors = async (address: string) => {
|
|
23
|
+
// const deployerClient = await this.getDeployerClient();
|
|
24
|
+
// return await deployerClient.feeCollectors(address);
|
|
25
|
+
return '';
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
feeTokens = async (address: string) => {
|
|
29
|
+
// const deployerClient = await this.getDeployerClient();
|
|
30
|
+
// return await deployerClient.feeTokens(address);
|
|
31
|
+
return '';
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
async getFeelessThreshold() {
|
|
35
|
+
// return this.airdropClient.getFeelessThreshold();
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
async getDeployer() {
|
|
39
|
+
return '';
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
async getClaimFee(address: string, amount: bigint): Promise<bigint | undefined> {
|
|
43
|
+
// const feeCollector = await this.feeCollectors(this.options.contractAddress as string);
|
|
44
|
+
// if (!feeCollector || feeCollector === ZERO_ADDRESS) {
|
|
45
|
+
// return undefined;
|
|
46
|
+
// }
|
|
47
|
+
// const feeClient = this.getFeeClient(feeCollector as string);
|
|
48
|
+
// const fee = (await feeClient.getFee(address, amount)) as bigint;
|
|
49
|
+
// return fee;
|
|
50
|
+
return 0n;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
async batchFetchClaimed(userClaimIds: string[]): Promise<boolean[]> {
|
|
54
|
+
const res = await this.airdropClient.batchFetchClaimed(userClaimIds);
|
|
55
|
+
return res;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
async getPaused() {
|
|
59
|
+
return this.airdropClient.getPaused();
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
async claim(
|
|
63
|
+
data: {
|
|
64
|
+
recipient: string;
|
|
65
|
+
claimId: string;
|
|
66
|
+
data: string;
|
|
67
|
+
signature: string;
|
|
68
|
+
extraData?: string;
|
|
69
|
+
unlockingAt: number;
|
|
70
|
+
value: string;
|
|
71
|
+
hash: string;
|
|
72
|
+
}[],
|
|
73
|
+
value?: bigint
|
|
74
|
+
) {
|
|
75
|
+
return this.airdropClient.claim(data);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { Program, AnchorProvider, setProvider, Wallet, Idl, AccountNamespace } from '@coral-xyz/anchor';
|
|
2
|
+
import {
|
|
3
|
+
AllAccountsMap,
|
|
4
|
+
AllInstructions,
|
|
5
|
+
MakeMethodsNamespace
|
|
6
|
+
} from '@coral-xyz/anchor/dist/cjs/program/namespace/types';
|
|
7
|
+
import { Cluster, clusterApiUrl, Connection, PublicKey, Signer } from '@solana/web3.js';
|
|
8
|
+
|
|
9
|
+
export interface SolanaContractInfo {
|
|
10
|
+
projectId: string;
|
|
11
|
+
chainId?: string;
|
|
12
|
+
idl?: any;
|
|
13
|
+
token?: string;
|
|
14
|
+
walletClient: Wallet;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export abstract class SolanaContractClientBase<T extends Idl = Idl> {
|
|
18
|
+
protected program: Program<T>;
|
|
19
|
+
protected connection: Connection;
|
|
20
|
+
protected wallet: Wallet;
|
|
21
|
+
protected chainId: string;
|
|
22
|
+
|
|
23
|
+
constructor(contractInfo: SolanaContractInfo) {
|
|
24
|
+
console.log(contractInfo);
|
|
25
|
+
const { idl, walletClient, chainId } = contractInfo;
|
|
26
|
+
this.chainId = chainId || 'mainnet-beta';
|
|
27
|
+
|
|
28
|
+
this.connection = this.getConnection(chainId);
|
|
29
|
+
this.wallet = walletClient;
|
|
30
|
+
|
|
31
|
+
const provider = new AnchorProvider(this.connection, this.wallet, { commitment: 'confirmed' });
|
|
32
|
+
setProvider(provider);
|
|
33
|
+
|
|
34
|
+
this.program = new Program(idl, provider);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
getConnection(endpoint?: string) {
|
|
38
|
+
const apiUrl = clusterApiUrl((endpoint as Cluster) ?? 'mainnet-beta');
|
|
39
|
+
|
|
40
|
+
const conn = new Connection(apiUrl);
|
|
41
|
+
return conn;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
protected async findProgramAddress(
|
|
45
|
+
seeds: Array<Buffer | Uint8Array>,
|
|
46
|
+
programId?: PublicKey
|
|
47
|
+
): Promise<[PublicKey, number]> {
|
|
48
|
+
return await PublicKey.findProgramAddressSync(seeds, programId || new PublicKey(this.program.idl.address));
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
async fetchAccountData(accountName: keyof AllAccountsMap<T>, address: PublicKey): Promise<T> {
|
|
52
|
+
try {
|
|
53
|
+
if (!this.program.account[accountName]) {
|
|
54
|
+
throw new Error(`Account ${accountName} not found in program`);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
const account = await this.program.account[accountName].fetch(address);
|
|
58
|
+
return account as T;
|
|
59
|
+
} catch (error) {
|
|
60
|
+
console.error(`Error fetching account ${accountName}:`, error);
|
|
61
|
+
throw error;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
async invokeView<M extends keyof MakeMethodsNamespace<T, AllInstructions<T>>>(
|
|
66
|
+
methodName: M,
|
|
67
|
+
args: Parameters<MakeMethodsNamespace<T, AllInstructions<T>>[M]>
|
|
68
|
+
): Promise<ReturnType<MakeMethodsNamespace<T, AllInstructions<T>>[M]>> {
|
|
69
|
+
try {
|
|
70
|
+
if (!this.program.methods[methodName]) {
|
|
71
|
+
throw new Error(`Method ${methodName} not found in program`);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
const result = await this.program.methods[methodName](...args).view();
|
|
75
|
+
|
|
76
|
+
return result;
|
|
77
|
+
} catch (error) {
|
|
78
|
+
console.error(`Error invoking view method ${methodName}:`, error);
|
|
79
|
+
throw error;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
async invokeInstruction<M extends keyof MakeMethodsNamespace<T, AllInstructions<T>>>(
|
|
84
|
+
methodName: M,
|
|
85
|
+
accounts: any,
|
|
86
|
+
args: any,
|
|
87
|
+
options?: { signers?: Signer[] }
|
|
88
|
+
): Promise<string> {
|
|
89
|
+
const latestBlockhash = await this.connection.getLatestBlockhash();
|
|
90
|
+
|
|
91
|
+
let instruction = this.program.methods[methodName](...args).accounts(accounts);
|
|
92
|
+
|
|
93
|
+
if (options?.signers?.length) {
|
|
94
|
+
instruction = instruction.signers(options.signers);
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
console.log(instruction, 'in');
|
|
98
|
+
|
|
99
|
+
const tx = await instruction.rpc();
|
|
100
|
+
|
|
101
|
+
await this.connection.confirmTransaction({
|
|
102
|
+
signature: tx,
|
|
103
|
+
blockhash: latestBlockhash.blockhash,
|
|
104
|
+
lastValidBlockHeight: latestBlockhash.lastValidBlockHeight
|
|
105
|
+
});
|
|
106
|
+
console.log(tx);
|
|
107
|
+
|
|
108
|
+
return tx;
|
|
109
|
+
}
|
|
110
|
+
// protected abstract getProgramAccount(accountName: string, address: PublicKey): Promise<any>;
|
|
111
|
+
|
|
112
|
+
// protected abstract getEventLogs(signature: string, eventName: string): Promise<any[]>;
|
|
113
|
+
}
|