@sign-global/tokentable 0.0.1 → 0.0.3
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 +19 -55
- package/dist/cjs/airdrop/common/index.d.ts +1 -1
- package/dist/cjs/airdrop/common/index.js +4 -0
- package/dist/cjs/airdrop/common/index.js.map +1 -1
- package/dist/cjs/airdrop/core/evm/AirdropService.d.ts +1 -1
- package/dist/cjs/airdrop/core/evm/AirdropService.js +3 -4
- package/dist/cjs/airdrop/core/evm/AirdropService.js.map +1 -1
- package/dist/cjs/airdrop/core/ton/AirdropService.d.ts +1 -0
- package/dist/cjs/airdrop/core/ton/AirdropService.js +5 -0
- package/dist/cjs/airdrop/core/ton/AirdropService.js.map +1 -1
- package/dist/cjs/airdrop/index.d.ts +42 -3
- package/dist/cjs/airdrop/index.js +188 -20
- package/dist/cjs/airdrop/index.js.map +1 -1
- package/dist/cjs/airdrop/types/index.d.ts +35 -24
- package/dist/cjs/airdrop/types/index.js +7 -1
- package/dist/cjs/airdrop/types/index.js.map +1 -1
- package/dist/cjs/index.d.ts +2 -1
- package/dist/cjs/index.js +17 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/airdrop/common/index.d.ts +1 -1
- package/dist/esm/airdrop/common/index.js +4 -0
- package/dist/esm/airdrop/common/index.js.map +1 -1
- package/dist/esm/airdrop/core/evm/AirdropService.d.ts +1 -1
- package/dist/esm/airdrop/core/evm/AirdropService.js +3 -4
- package/dist/esm/airdrop/core/evm/AirdropService.js.map +1 -1
- package/dist/esm/airdrop/core/ton/AirdropService.d.ts +1 -0
- package/dist/esm/airdrop/core/ton/AirdropService.js +5 -0
- package/dist/esm/airdrop/core/ton/AirdropService.js.map +1 -1
- package/dist/esm/airdrop/index.d.ts +42 -3
- package/dist/esm/airdrop/index.js +186 -3
- package/dist/esm/airdrop/index.js.map +1 -1
- package/dist/esm/airdrop/types/index.d.ts +35 -24
- package/dist/esm/airdrop/types/index.js +6 -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/jest.config.cjs +5 -0
- package/package.json +6 -2
- package/src/airdrop/common/index.ts +6 -1
- package/src/airdrop/core/evm/AirdropService.ts +3 -4
- package/src/airdrop/core/ton/AirdropService.ts +6 -0
- package/src/airdrop/index.ts +243 -3
- package/src/airdrop/tests/index.test.ts +95 -0
- package/src/airdrop/types/index.ts +39 -33
- package/src/index.ts +2 -1
- package/dist/cjs/airdrop/BaseAirdropClient.d.ts +0 -28
- package/dist/cjs/airdrop/BaseAirdropClient.js +0 -50
- package/dist/cjs/airdrop/BaseAirdropClient.js.map +0 -1
- package/dist/cjs/airdrop/EvmAirdropClient.d.ts +0 -19
- package/dist/cjs/airdrop/EvmAirdropClient.js +0 -65
- package/dist/cjs/airdrop/EvmAirdropClient.js.map +0 -1
- package/dist/cjs/airdrop/TonAirdropClient.d.ts +0 -24
- package/dist/cjs/airdrop/TonAirdropClient.js +0 -78
- package/dist/cjs/airdrop/TonAirdropClient.js.map +0 -1
- package/dist/esm/airdrop/BaseAirdropClient.d.ts +0 -28
- package/dist/esm/airdrop/BaseAirdropClient.js +0 -46
- package/dist/esm/airdrop/BaseAirdropClient.js.map +0 -1
- package/dist/esm/airdrop/EvmAirdropClient.d.ts +0 -19
- package/dist/esm/airdrop/EvmAirdropClient.js +0 -61
- package/dist/esm/airdrop/EvmAirdropClient.js.map +0 -1
- package/dist/esm/airdrop/TonAirdropClient.d.ts +0 -24
- package/dist/esm/airdrop/TonAirdropClient.js +0 -74
- package/dist/esm/airdrop/TonAirdropClient.js.map +0 -1
- package/index.ts +0 -34
- package/src/airdrop/BaseAirdropClient.ts +0 -75
- package/src/airdrop/EvmAirdropClient.ts +0 -74
- package/src/airdrop/TonAirdropClient.ts +0 -93
package/README.md
CHANGED
|
@@ -2,6 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
# @sign-global/tokentable
|
|
4
4
|
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @sign-global/tokentable
|
|
9
|
+
```
|
|
5
10
|
|
|
6
11
|
## Initialization
|
|
7
12
|
|
|
@@ -9,40 +14,26 @@
|
|
|
9
14
|
AirdropClient supports initialization for two chain types:
|
|
10
15
|
|
|
11
16
|
|
|
12
|
-
###
|
|
17
|
+
### Initialization AirdropClient
|
|
13
18
|
|
|
14
19
|
The baseURL parameter determines which environment the SDK will interact with. The default is the production environment. You can pass the test environment address for testing.
|
|
15
20
|
|
|
16
21
|
```typescript
|
|
17
|
-
import {
|
|
22
|
+
import { AirdropClient } from '@sign-global/tokentable';
|
|
18
23
|
|
|
19
24
|
// Initialize with projectId
|
|
20
|
-
const client = new
|
|
25
|
+
const client = new AirdropClient({
|
|
21
26
|
projectId: "your_project_id",
|
|
22
27
|
endpoint: "http://ec2-3-89-178-45.compute-1.amazonaws.com:3030/api" // optional
|
|
23
28
|
})
|
|
24
29
|
|
|
25
30
|
// Or initialize with slug
|
|
26
|
-
const client = new
|
|
31
|
+
const client = new AirdropClient({
|
|
27
32
|
slug: "your_slug",
|
|
28
33
|
endpoint: "optional_api_base_url" // optional
|
|
29
34
|
})
|
|
30
35
|
```
|
|
31
36
|
|
|
32
|
-
### EVM Chain Initialization
|
|
33
|
-
|
|
34
|
-
Important Notes for EVM Chain:
|
|
35
|
-
Make sure wagmi are used in your project, see more: https://wagmi.sh/, It is recommended to use rainbowkit(https://www.rainbowkit.com/docs/installation) to manage wallet connection.
|
|
36
|
-
|
|
37
|
-
```typescript
|
|
38
|
-
import { EvmAirdropClient } from '@sign-global/tokentable';
|
|
39
|
-
|
|
40
|
-
const client = new EvmAirdropClient({
|
|
41
|
-
projectId: "your_project_id",
|
|
42
|
-
endpoint: "optional_api_base_url" // optional
|
|
43
|
-
})
|
|
44
|
-
```
|
|
45
|
-
|
|
46
37
|
|
|
47
38
|
|
|
48
39
|
## Main Features
|
|
@@ -51,7 +42,7 @@ const client = new EvmAirdropClient({
|
|
|
51
42
|
### Get Airdrop Claims
|
|
52
43
|
|
|
53
44
|
```typescript
|
|
54
|
-
const claims = await client.
|
|
45
|
+
const claims = await client.getAirdropClaims({
|
|
55
46
|
address: "user_address"
|
|
56
47
|
})
|
|
57
48
|
```
|
|
@@ -61,7 +52,7 @@ const claims = await client.fetchAirdropClaims({
|
|
|
61
52
|
|
|
62
53
|
```typescript
|
|
63
54
|
// Get project list
|
|
64
|
-
const projects = client.
|
|
55
|
+
const projects = client.getProjectInfo()
|
|
65
56
|
```
|
|
66
57
|
|
|
67
58
|
|
|
@@ -85,7 +76,7 @@ const result = await tonClient.claimAirdrop({
|
|
|
85
76
|
#### EVM Chain Claiming
|
|
86
77
|
|
|
87
78
|
```typescript
|
|
88
|
-
const walletClient = await getWalletClient(); //wagmi
|
|
79
|
+
const walletClient = await getWalletClient(wagmiConfig); //wagmi
|
|
89
80
|
const result = await evmClient.claimAirdrop({
|
|
90
81
|
claimId: "claim_id",
|
|
91
82
|
// wallet client
|
|
@@ -100,46 +91,19 @@ const result = await evmClient.claimAirdrop({
|
|
|
100
91
|
const isClaimed = await client.checkClaimed("claim_id")
|
|
101
92
|
```
|
|
102
93
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
### TON Chain Specific Features
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
Check if contract is paused:
|
|
94
|
+
### Batch Check Claimed (EVM Chain Only)
|
|
110
95
|
|
|
111
96
|
```typescript
|
|
112
|
-
const
|
|
113
|
-
contractAddress: "contract_address",
|
|
114
|
-
chainId: "chain_id",
|
|
115
|
-
})
|
|
97
|
+
const isClaimedArr = await client.batchCheckClaimed()
|
|
116
98
|
```
|
|
117
99
|
|
|
118
100
|
|
|
119
|
-
|
|
120
|
-
|
|
101
|
+
### TON Chain Specific Features
|
|
121
102
|
|
|
122
|
-
|
|
103
|
+
Check if contract is paused:
|
|
123
104
|
|
|
124
105
|
```typescript
|
|
125
|
-
|
|
126
|
-
type IAirdropClaim = {
|
|
127
|
-
index: number
|
|
128
|
-
amount: string
|
|
129
|
-
proof: string[]
|
|
130
|
-
leaf: string
|
|
131
|
-
project: IProject
|
|
132
|
-
claimId: string
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
type IProject = {
|
|
136
|
-
id: string
|
|
137
|
-
chainId: string
|
|
138
|
-
chainType: ChainType
|
|
139
|
-
contractAddress: string
|
|
140
|
-
recipientType: string
|
|
141
|
-
}
|
|
142
|
-
|
|
106
|
+
const isPaused = await tonClient.getPaused()
|
|
143
107
|
```
|
|
144
108
|
|
|
145
109
|
|
|
@@ -148,7 +112,7 @@ type IProject = {
|
|
|
148
112
|
|
|
149
113
|
|
|
150
114
|
|
|
151
|
-
1. Before calling claim-related methods, you need to call `
|
|
115
|
+
1. Before calling claim-related methods, you need to call `getAirdropClaims` to get claim information
|
|
152
116
|
|
|
153
117
|
|
|
154
118
|
2. TON chain and EVM chain use different claiming methods
|
|
@@ -177,7 +141,7 @@ It's recommended to use try-catch for error handling:
|
|
|
177
141
|
|
|
178
142
|
```typescript
|
|
179
143
|
try {
|
|
180
|
-
const claims = await client.
|
|
144
|
+
const claims = await client.getAirdropClaims({
|
|
181
145
|
address: "user_address"
|
|
182
146
|
})
|
|
183
147
|
} catch (error) {
|
|
@@ -1028,7 +1028,7 @@ export declare function getChainConfig(chainId: ChainId): {
|
|
|
1028
1028
|
};
|
|
1029
1029
|
export declare function getChainRpc(chainId: ChainId): string;
|
|
1030
1030
|
export declare const getTonProjectIdByAddress: ({ address, slug, data }: {
|
|
1031
|
-
address
|
|
1031
|
+
address?: string;
|
|
1032
1032
|
slug: string;
|
|
1033
1033
|
data: Record<string, string>;
|
|
1034
1034
|
}) => string | undefined;
|
|
@@ -28,6 +28,10 @@ const getTonProjectIdByAddress = ({ address, slug, data }) => {
|
|
|
28
28
|
if (!project) {
|
|
29
29
|
project = data;
|
|
30
30
|
}
|
|
31
|
+
if (!address) {
|
|
32
|
+
const firstProject = Object.values(project)[0];
|
|
33
|
+
return firstProject;
|
|
34
|
+
}
|
|
31
35
|
const lastText = address[address.length - 1];
|
|
32
36
|
const group = Object.keys(project || {}).find((key) => key.includes(lastText));
|
|
33
37
|
const projectId = group ? project[group] : undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/airdrop/common/index.ts"],"names":[],"mappings":";;;AAIA,oCAQC;AAED,wCAEC;AAED,kCAQC;AA1BD,4CAA4D;AAE5D,2DAAwD;AAExD,SAAgB,YAAY,CAAC,OAAgB;IAC3C,MAAM,KAAK,GAAG,2BAAe,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;IAEpE,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,iBAAiB,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAgB,cAAc,CAAC,OAAgB;IAC7C,OAAO,uBAAW,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC;AAED,SAAgB,WAAW,CAAC,OAAgB;IAC1C,MAAM,MAAM,GAAG,cAAc,CAAC,OAAc,CAAC,CAAC;IAE9C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,iBAAiB,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,MAAM,EAAE,MAAM,CAAC;AACxB,CAAC;AAEM,MAAM,wBAAwB,GAAG,CAAC,EACvC,OAAO,EACP,IAAI,EACJ,IAAI,EAKL,EAAsB,EAAE;IACvB,IAAI,OAAO,GAA2B,qCAAiB,CAAC,IAAsC,CAAC,CAAC;IAChG,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;IACD,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAE7C,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE/E,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAA6B,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE7E,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/airdrop/common/index.ts"],"names":[],"mappings":";;;AAIA,oCAQC;AAED,wCAEC;AAED,kCAQC;AA1BD,4CAA4D;AAE5D,2DAAwD;AAExD,SAAgB,YAAY,CAAC,OAAgB;IAC3C,MAAM,KAAK,GAAG,2BAAe,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;IAEpE,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,iBAAiB,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAgB,cAAc,CAAC,OAAgB;IAC7C,OAAO,uBAAW,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC;AAED,SAAgB,WAAW,CAAC,OAAgB;IAC1C,MAAM,MAAM,GAAG,cAAc,CAAC,OAAc,CAAC,CAAC;IAE9C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,iBAAiB,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,MAAM,EAAE,MAAM,CAAC;AACxB,CAAC;AAEM,MAAM,wBAAwB,GAAG,CAAC,EACvC,OAAO,EACP,IAAI,EACJ,IAAI,EAKL,EAAsB,EAAE;IACvB,IAAI,OAAO,GAA2B,qCAAiB,CAAC,IAAsC,CAAC,CAAC;IAChG,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;IAED,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/C,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAE7C,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE/E,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAA6B,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE7E,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAzBW,QAAA,wBAAwB,4BAyBnC"}
|
|
@@ -31,6 +31,6 @@ export declare class AirdropService {
|
|
|
31
31
|
feeCollectors: (address: string) => Promise<unknown>;
|
|
32
32
|
feeTokens: (address: string) => Promise<unknown>;
|
|
33
33
|
getFeelessThreshold(): Promise<unknown>;
|
|
34
|
-
getClaimFee(address: string,
|
|
34
|
+
getClaimFee(address: string, amount: bigint): Promise<bigint | undefined>;
|
|
35
35
|
getKycThreshold(): Promise<bigint>;
|
|
36
36
|
}
|
|
@@ -66,7 +66,6 @@ class AirdropService {
|
|
|
66
66
|
}
|
|
67
67
|
async claim({ proof, group, data, value, extraData }) {
|
|
68
68
|
const version = await this.getVersion();
|
|
69
|
-
console.log(version, 'version');
|
|
70
69
|
if (version === types_1.EvmAirdropVersionEnum.V4) {
|
|
71
70
|
const encodeData = (0, viem_1.encodeAbiParameters)([
|
|
72
71
|
{
|
|
@@ -118,17 +117,17 @@ class AirdropService {
|
|
|
118
117
|
async getFeelessThreshold() {
|
|
119
118
|
return this.airdropV3FeeClient.getFeelessThreshold();
|
|
120
119
|
}
|
|
121
|
-
async getClaimFee(address,
|
|
120
|
+
async getClaimFee(address, amount) {
|
|
122
121
|
const feeCollector = await this.feeCollectors(this.options.contractAddress);
|
|
123
122
|
if (!feeCollector || feeCollector === constants_1.ZERO_ADDRESS) {
|
|
124
123
|
return undefined;
|
|
125
124
|
}
|
|
126
125
|
const feeClient = this.getFeeClient(feeCollector);
|
|
127
|
-
const fee = await feeClient.getFee(address,
|
|
126
|
+
const fee = await feeClient.getFee(address, amount);
|
|
128
127
|
const version = await this.getVersion();
|
|
129
128
|
if (version === types_1.EvmAirdropVersionEnum.V3) {
|
|
130
129
|
const threshold = await this.getFeelessThreshold();
|
|
131
|
-
if ((0, bignumber_js_1.BigNumber)(Number(
|
|
130
|
+
if ((0, bignumber_js_1.BigNumber)(Number(amount)).gt((0, bignumber_js_1.BigNumber)(Number(threshold)))) {
|
|
132
131
|
return fee;
|
|
133
132
|
}
|
|
134
133
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AirdropService.js","sourceRoot":"","sources":["../../../../../src/airdrop/core/evm/AirdropService.ts"],"names":[],"mappings":";;;AAAA,iEAA8D;AAC9D,uEAAoE;AACpE,2DAA0D;AAC1D,uEAAoE;AACpE,+CAAyC;AACzC,iEAA8D;AAC9D,+BAA2C;AAC3C,qDAAwD;AACxD,+CAA+C;AAC/C,uCAA4G;AAE5G,MAAa,cAAc;IACzB,OAAO,CAA0B;IACjC,YAAY,OAAgC;QAC1C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,IAAY,eAAe;QACzB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACtC,CAAC;QAED,OAAO,IAAI,iCAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED,IAAY,kBAAkB;QAC5B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACtC,CAAC;QAED,OAAO,IAAI,uCAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,IAAY,eAAe;QACzB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACtC,CAAC;QAED,OAAO,IAAI,iCAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,OAAO,IAAI,6BAAc,CAAC;YACxB,GAAG,IAAI,CAAC,OAAO;YACf,eAAe,EAAE,QAAQ;SAC1B,CAAC,CAAC;IACL,CAAC;IAEO,YAAY,CAAC,OAAe;QAClC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACtC,CAAC;QAED,OAAO,IAAI,uCAAkB,CAAC;YAC5B,GAAG,IAAI,CAAC,OAAO;YACf,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAkB;YACxC,eAAe,EAAE,OAAO;SACzB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;QAE5D,OAAO,IAAI,2BAAe,CAAC;YACzB,GAAG,IAAI,CAAC,OAAO;YACf,eAAe,EAAE,SAAS;SAC3B,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,IAAY;QAC3B,OAAO,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,IAAI,CAAqB,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,KAAe;QACrC,OAAO,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,KAAK,CAAmD,CAAC;IACzG,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,EACV,KAAK,EACL,KAAK,EACL,IAAI,EACJ,KAAK,EACL,SAAS,EAUV;QACC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAExC,
|
|
1
|
+
{"version":3,"file":"AirdropService.js","sourceRoot":"","sources":["../../../../../src/airdrop/core/evm/AirdropService.ts"],"names":[],"mappings":"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"}
|
|
@@ -97,6 +97,11 @@ class AirdropService {
|
|
|
97
97
|
claimFeeReceiver: feeInfo.claimFeeReceiver.toString({ bounceable: false })
|
|
98
98
|
};
|
|
99
99
|
}
|
|
100
|
+
async getClaimFee(address, amount) {
|
|
101
|
+
const client = await this.getClient();
|
|
102
|
+
const feeInfo = await client.getFeeInfo();
|
|
103
|
+
return (0, core_1.fromNano)(feeInfo.claimFee);
|
|
104
|
+
}
|
|
100
105
|
}
|
|
101
106
|
exports.AirdropService = AirdropService;
|
|
102
107
|
//# sourceMappingURL=AirdropService.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AirdropService.js","sourceRoot":"","sources":["../../../../../src/airdrop/core/ton/AirdropService.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"AirdropService.js","sourceRoot":"","sources":["../../../../../src/airdrop/core/ton/AirdropService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,42 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { AirdropService as TonAirdropService } from './core/ton/AirdropService';
|
|
2
|
+
import { AirdropService as EvmAirdropService } from './core/evm/AirdropService';
|
|
3
|
+
import { IAirdropClaim, IAirdropOptions, IProject, IWalletClient } from './types';
|
|
4
|
+
export declare class AirdropClient {
|
|
5
|
+
private tonClient?;
|
|
6
|
+
private slug?;
|
|
7
|
+
private projectId?;
|
|
8
|
+
private endpoint?;
|
|
9
|
+
private project;
|
|
10
|
+
protected claims?: IAirdropClaim[];
|
|
11
|
+
private contractInstanceWithWallet;
|
|
12
|
+
private contractInstanceWithoutWallet;
|
|
13
|
+
private projectPromise;
|
|
14
|
+
private claimHook;
|
|
15
|
+
private cachedVersion;
|
|
16
|
+
constructor(params: IAirdropOptions);
|
|
17
|
+
protected initializeProjects(address?: string): Promise<void>;
|
|
18
|
+
getProjectInfo(): Promise<IProject>;
|
|
19
|
+
getAirdropClaims(data: {
|
|
20
|
+
address: string;
|
|
21
|
+
}): Promise<IAirdropClaim[]>;
|
|
22
|
+
getAirdropContractWrapper(options?: {
|
|
23
|
+
walletClient?: IWalletClient;
|
|
24
|
+
}): Promise<TonAirdropService | EvmAirdropService>;
|
|
25
|
+
private getClaimDataById;
|
|
26
|
+
setClaimFeeHook(fn: (v: any) => any): void;
|
|
27
|
+
claimAirdrop({ claimId, walletClient }: {
|
|
28
|
+
claimId: string;
|
|
29
|
+
walletClient: IWalletClient;
|
|
30
|
+
}, options: {
|
|
31
|
+
onLoading?: () => void;
|
|
32
|
+
}): Promise<`0x${string}` | import("tonapi-sdk-js").Event | null>;
|
|
33
|
+
checkClaimed(claimId: string): Promise<boolean>;
|
|
34
|
+
getPaused(): Promise<boolean>;
|
|
35
|
+
getVersion(): Promise<string>;
|
|
36
|
+
batchCheckClaimed(): Promise<{
|
|
37
|
+
result: boolean;
|
|
38
|
+
status: string;
|
|
39
|
+
}[]>;
|
|
40
|
+
getNFT(): Promise<unknown>;
|
|
41
|
+
getClaimFee(amount?: bigint): Promise<string | bigint | undefined>;
|
|
42
|
+
}
|
|
@@ -1,23 +1,191 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
3
|
+
exports.AirdropClient = void 0;
|
|
4
|
+
const AirdropService_1 = require("./core/ton/AirdropService");
|
|
5
|
+
const AirdropService_2 = require("./core/evm/AirdropService");
|
|
6
|
+
const services_1 = require("./services");
|
|
7
|
+
const types_1 = require("./types");
|
|
8
|
+
const common_1 = require("./common");
|
|
9
|
+
class AirdropClient {
|
|
10
|
+
tonClient;
|
|
11
|
+
slug;
|
|
12
|
+
projectId;
|
|
13
|
+
endpoint;
|
|
14
|
+
project;
|
|
15
|
+
claims;
|
|
16
|
+
contractInstanceWithWallet;
|
|
17
|
+
contractInstanceWithoutWallet;
|
|
18
|
+
projectPromise;
|
|
19
|
+
claimHook;
|
|
20
|
+
cachedVersion = null;
|
|
21
|
+
constructor(params) {
|
|
22
|
+
if ('slug' in params) {
|
|
23
|
+
this.slug = params.slug;
|
|
24
|
+
}
|
|
25
|
+
this.tonClient = params.tonClient;
|
|
26
|
+
this.projectId = params.projectId;
|
|
27
|
+
this.endpoint = params.endpoint;
|
|
28
|
+
this.projectPromise = this.initializeProjects();
|
|
29
|
+
}
|
|
30
|
+
async initializeProjects(address) {
|
|
31
|
+
let projectId = this.projectId;
|
|
32
|
+
if (this.slug) {
|
|
33
|
+
const res = await (0, services_1.getAirdropPro)(this.slug, this.endpoint);
|
|
34
|
+
const projectMap = res?.childProjectMapping || {};
|
|
35
|
+
let legacyProjectId;
|
|
36
|
+
legacyProjectId = (0, common_1.getTonProjectIdByAddress)({ address, slug: this.slug, data: projectMap });
|
|
37
|
+
if (legacyProjectId) {
|
|
38
|
+
projectId = legacyProjectId;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
if (!projectId)
|
|
42
|
+
throw new Error('Project ID is required');
|
|
43
|
+
this.project = await (0, services_1.getAirdropProject)(projectId, this.endpoint);
|
|
44
|
+
}
|
|
45
|
+
async getProjectInfo() {
|
|
46
|
+
await this.projectPromise;
|
|
47
|
+
if (!this.project)
|
|
48
|
+
throw new Error('Project not found');
|
|
49
|
+
return this.project;
|
|
50
|
+
}
|
|
51
|
+
async getAirdropClaims(data) {
|
|
52
|
+
const project = await this.getProjectInfo();
|
|
53
|
+
const res = await (0, services_1.getAirdropQuery)({
|
|
54
|
+
recipient: data.address,
|
|
55
|
+
projectId: project.id,
|
|
56
|
+
recipientType: project.recipientType
|
|
57
|
+
}, this.endpoint);
|
|
58
|
+
const claimsRes = res.claims?.map((it) => ({
|
|
59
|
+
...it,
|
|
60
|
+
project: project,
|
|
61
|
+
claimId: project.chainType === types_1.ChainType.Evm ? `${project.id}:${it.leaf}` : `${project.id}:${it.index}`
|
|
62
|
+
}));
|
|
63
|
+
this.claims = claimsRes;
|
|
64
|
+
return this.claims;
|
|
65
|
+
}
|
|
66
|
+
async getAirdropContractWrapper(options) {
|
|
67
|
+
const project = await this.getProjectInfo();
|
|
68
|
+
if (options?.walletClient) {
|
|
69
|
+
if (!this.contractInstanceWithWallet) {
|
|
70
|
+
const instance = project.chainType === types_1.ChainType.Evm
|
|
71
|
+
? new AirdropService_2.AirdropService({
|
|
72
|
+
contractAddress: project.contractAddress,
|
|
73
|
+
chainId: Number(project.chainId),
|
|
74
|
+
walletClient: options.walletClient
|
|
75
|
+
})
|
|
76
|
+
: new AirdropService_1.AirdropService({
|
|
77
|
+
chainId: project.chainId.toString(),
|
|
78
|
+
address: project.contractAddress,
|
|
79
|
+
walletClient: options.walletClient,
|
|
80
|
+
tonClient: this.tonClient
|
|
81
|
+
});
|
|
82
|
+
this.contractInstanceWithWallet = instance;
|
|
83
|
+
}
|
|
84
|
+
return this.contractInstanceWithWallet;
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
if (!this.contractInstanceWithoutWallet) {
|
|
88
|
+
const instance = project.chainType === types_1.ChainType.Evm
|
|
89
|
+
? new AirdropService_2.AirdropService({
|
|
90
|
+
contractAddress: project.contractAddress,
|
|
91
|
+
chainId: Number(project.chainId)
|
|
92
|
+
})
|
|
93
|
+
: new AirdropService_1.AirdropService({
|
|
94
|
+
chainId: project.chainId.toString(),
|
|
95
|
+
address: project.contractAddress,
|
|
96
|
+
tonClient: this.tonClient
|
|
97
|
+
});
|
|
98
|
+
this.contractInstanceWithoutWallet = instance;
|
|
99
|
+
}
|
|
100
|
+
return this.contractInstanceWithoutWallet;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
getClaimDataById(claimId) {
|
|
104
|
+
const claimData = this.claims?.find((it) => it.claimId === claimId);
|
|
105
|
+
if (!claimData)
|
|
106
|
+
throw new Error('Claim data not found');
|
|
107
|
+
return claimData;
|
|
108
|
+
}
|
|
109
|
+
setClaimFeeHook(fn) {
|
|
110
|
+
this.claimHook = fn;
|
|
111
|
+
}
|
|
112
|
+
async claimAirdrop({ claimId, walletClient }, options) {
|
|
113
|
+
const claimData = this.getClaimDataById(claimId);
|
|
114
|
+
const project = await this.getProjectInfo();
|
|
115
|
+
const contractWrapper = await this.getAirdropContractWrapper({
|
|
116
|
+
walletClient
|
|
117
|
+
});
|
|
118
|
+
if (project.chainType === types_1.ChainType.Evm) {
|
|
119
|
+
const version = await contractWrapper.getVersion();
|
|
120
|
+
const needsFeeData = !(project.tokenType === types_1.ETokenType.Native &&
|
|
121
|
+
[types_1.EvmAirdropVersionEnum.V3, types_1.EvmAirdropVersionEnum.V4].includes(version));
|
|
122
|
+
const value = needsFeeData ? await this.getClaimFee(BigInt(claimData.amount)) : undefined;
|
|
123
|
+
let extraData = {
|
|
124
|
+
isLegacy: true,
|
|
125
|
+
attestationId: BigInt(1)
|
|
126
|
+
};
|
|
127
|
+
if (this.claimHook) {
|
|
128
|
+
extraData = this.claimHook(claimData);
|
|
129
|
+
}
|
|
130
|
+
return contractWrapper.claim({
|
|
131
|
+
proof: claimData.proof,
|
|
132
|
+
group: claimData.group,
|
|
133
|
+
data: claimData.data,
|
|
134
|
+
value: value,
|
|
135
|
+
extraData: extraData
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
return contractWrapper.claim(claimData, options);
|
|
139
|
+
}
|
|
140
|
+
async checkClaimed(claimId) {
|
|
141
|
+
const claimData = this.getClaimDataById(claimId);
|
|
142
|
+
const project = await this.getProjectInfo();
|
|
143
|
+
const contractWrapper = await this.getAirdropContractWrapper();
|
|
144
|
+
if (project.chainType === types_1.ChainType.Evm) {
|
|
145
|
+
return contractWrapper.isLeafUsed(claimData.leaf);
|
|
146
|
+
}
|
|
147
|
+
return contractWrapper.checkClaimed(claimData);
|
|
148
|
+
}
|
|
149
|
+
async getPaused() {
|
|
150
|
+
const project = await this.getProjectInfo();
|
|
151
|
+
const contractWrapper = await this.getAirdropContractWrapper();
|
|
152
|
+
if (project.chainType === types_1.ChainType.Evm) {
|
|
153
|
+
throw new Error('EVM chain is not supported');
|
|
154
|
+
}
|
|
155
|
+
return contractWrapper.getPaused();
|
|
156
|
+
}
|
|
157
|
+
async getVersion() {
|
|
158
|
+
if (this.cachedVersion) {
|
|
159
|
+
return this.cachedVersion;
|
|
160
|
+
}
|
|
161
|
+
const contractWrapper = await this.getAirdropContractWrapper();
|
|
162
|
+
this.cachedVersion = await contractWrapper?.getVersion();
|
|
163
|
+
return this.cachedVersion;
|
|
164
|
+
}
|
|
165
|
+
async batchCheckClaimed() {
|
|
166
|
+
const project = await this.getProjectInfo();
|
|
167
|
+
if (project.chainType === types_1.ChainType.Ton) {
|
|
168
|
+
throw new Error('TON chain is not supported');
|
|
169
|
+
}
|
|
170
|
+
const contractWrapper = await this.getAirdropContractWrapper({});
|
|
171
|
+
const leafs = this.claims?.map((it) => it.leaf);
|
|
172
|
+
if (!leafs)
|
|
173
|
+
return [];
|
|
174
|
+
return contractWrapper.batchFetchClaimed(leafs);
|
|
175
|
+
}
|
|
176
|
+
async getNFT() {
|
|
177
|
+
const project = await this.getProjectInfo();
|
|
178
|
+
if (project.chainType === types_1.ChainType.Ton) {
|
|
179
|
+
throw new Error('TON chain is not supported');
|
|
180
|
+
}
|
|
181
|
+
const contractWrapper = await this.getAirdropContractWrapper({});
|
|
182
|
+
return contractWrapper.getNFT();
|
|
183
|
+
}
|
|
184
|
+
async getClaimFee(amount) {
|
|
185
|
+
const project = await this.getProjectInfo();
|
|
186
|
+
const contractWrapper = await this.getAirdropContractWrapper({});
|
|
187
|
+
return contractWrapper.getClaimFee(project.contractAddress, amount || BigInt(1));
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
exports.AirdropClient = AirdropClient;
|
|
23
191
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/airdrop/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/airdrop/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,31 @@ export declare enum ChainType {
|
|
|
15
15
|
Evm = "evm",
|
|
16
16
|
Ton = "ton"
|
|
17
17
|
}
|
|
18
|
+
export type ThemeConfig = {
|
|
19
|
+
logo: string;
|
|
20
|
+
title: string;
|
|
21
|
+
description: string;
|
|
22
|
+
coverImage: string;
|
|
23
|
+
subTitle: string;
|
|
24
|
+
primaryColor: string;
|
|
25
|
+
secondaryColor: string;
|
|
26
|
+
buttonPrimaryHover: string;
|
|
27
|
+
buttonSecondaryHover: string;
|
|
28
|
+
buttonPrimaryForeground: string;
|
|
29
|
+
buttonSecondaryForeground: string;
|
|
30
|
+
welcomeModalText: string;
|
|
31
|
+
welcomeModalTitle: string;
|
|
32
|
+
isShowWelcomeModal: boolean;
|
|
33
|
+
blockCountries: string;
|
|
34
|
+
termsOfUse: string;
|
|
35
|
+
successModalPrimaryBtnText: string;
|
|
36
|
+
successModalUrl: string;
|
|
37
|
+
successModalTitle: string;
|
|
38
|
+
successModalDesc: string;
|
|
39
|
+
successModalShareTexts: string;
|
|
40
|
+
isUnAvailable: boolean;
|
|
41
|
+
privacyPolicy: string;
|
|
42
|
+
};
|
|
18
43
|
export interface IProject {
|
|
19
44
|
id: string;
|
|
20
45
|
name: string;
|
|
@@ -29,13 +54,18 @@ export interface IProject {
|
|
|
29
54
|
merkleRoot: string;
|
|
30
55
|
ownerAddress: string;
|
|
31
56
|
blockCountries: Record<string, string>;
|
|
32
|
-
themeConf:
|
|
57
|
+
themeConf: ThemeConfig | null;
|
|
33
58
|
version: string;
|
|
34
59
|
extra?: {
|
|
35
60
|
kyc: boolean;
|
|
36
61
|
tag: string;
|
|
37
62
|
};
|
|
38
63
|
}
|
|
64
|
+
export declare enum ETokenType {
|
|
65
|
+
Erc20 = "ERC20",
|
|
66
|
+
Native = "NATIVE_TOKEN",
|
|
67
|
+
NFT = "ERC721"
|
|
68
|
+
}
|
|
39
69
|
export type IAirdropClaim = {
|
|
40
70
|
index: number;
|
|
41
71
|
recipient: string;
|
|
@@ -70,36 +100,17 @@ export declare enum EvmAirdropVersionEnum {
|
|
|
70
100
|
}
|
|
71
101
|
export type IWalletClient = TonConnectUI | ViemWalletClient;
|
|
72
102
|
export type IAirdropService = TonAirdropService | EvmAirdropService;
|
|
73
|
-
|
|
74
|
-
endpoint?: string;
|
|
75
|
-
projectId?: string;
|
|
76
|
-
};
|
|
77
|
-
type BaseTonConfig = {
|
|
103
|
+
type BaseAirdropOptions = {
|
|
78
104
|
endpoint?: string;
|
|
79
105
|
tonClient?: TonClient;
|
|
80
106
|
};
|
|
81
|
-
type
|
|
107
|
+
type ProjectIdOptions = BaseAirdropOptions & {
|
|
82
108
|
projectId: string;
|
|
83
109
|
slug?: never;
|
|
84
110
|
};
|
|
85
|
-
type
|
|
111
|
+
type SlugOptions = BaseAirdropOptions & {
|
|
86
112
|
slug: string;
|
|
87
113
|
projectId?: never;
|
|
88
114
|
};
|
|
89
|
-
export type
|
|
90
|
-
export interface EvmAirdropOptions extends BaseAirdropOptions {
|
|
91
|
-
projectId: string;
|
|
92
|
-
}
|
|
93
|
-
export interface TonContractWrapperOptions {
|
|
94
|
-
chainId: ChainId;
|
|
95
|
-
contractAddress: string;
|
|
96
|
-
walletClient?: TonConnectUI;
|
|
97
|
-
tonClient?: TonClient;
|
|
98
|
-
}
|
|
99
|
-
export interface EvmContractWrapperOptions {
|
|
100
|
-
chainId: ChainId;
|
|
101
|
-
contractAddress: string;
|
|
102
|
-
walletClient?: ViemWalletClient;
|
|
103
|
-
}
|
|
104
|
-
export type ContractWrapperOptions = TonContractWrapperOptions | EvmContractWrapperOptions;
|
|
115
|
+
export type IAirdropOptions = ProjectIdOptions | SlugOptions;
|
|
105
116
|
export {};
|
|
@@ -1,11 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EvmAirdropVersionEnum = exports.TonAirdropVersionEnum = exports.ChainType = void 0;
|
|
3
|
+
exports.EvmAirdropVersionEnum = exports.TonAirdropVersionEnum = exports.ETokenType = exports.ChainType = void 0;
|
|
4
4
|
var ChainType;
|
|
5
5
|
(function (ChainType) {
|
|
6
6
|
ChainType["Evm"] = "evm";
|
|
7
7
|
ChainType["Ton"] = "ton";
|
|
8
8
|
})(ChainType || (exports.ChainType = ChainType = {}));
|
|
9
|
+
var ETokenType;
|
|
10
|
+
(function (ETokenType) {
|
|
11
|
+
ETokenType["Erc20"] = "ERC20";
|
|
12
|
+
ETokenType["Native"] = "NATIVE_TOKEN";
|
|
13
|
+
ETokenType["NFT"] = "ERC721";
|
|
14
|
+
})(ETokenType || (exports.ETokenType = ETokenType = {}));
|
|
9
15
|
var TonAirdropVersionEnum;
|
|
10
16
|
(function (TonAirdropVersionEnum) {
|
|
11
17
|
TonAirdropVersionEnum["V1"] = "1.0.0";
|