@sign-global/tokentable 0.4.1-beta.5 → 0.4.1-beta.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/dist/cjs/airdrop/SignatureAirdropClient.d.ts +1 -1
  2. package/dist/cjs/airdrop/SignatureAirdropClient.js +3 -2
  3. package/dist/cjs/airdrop/SignatureAirdropClient.js.map +1 -1
  4. package/dist/cjs/airdrop/contracts/solana/AirdropSignatureClient.d.ts +8 -3
  5. package/dist/cjs/airdrop/contracts/solana/AirdropSignatureClient.js +32 -13
  6. package/dist/cjs/airdrop/contracts/solana/AirdropSignatureClient.js.map +1 -1
  7. package/dist/cjs/airdrop/contracts/solana/FeeCollectorClient.d.ts +2 -2
  8. package/dist/cjs/airdrop/contracts/solana/FeeCollectorClient.js +11 -7
  9. package/dist/cjs/airdrop/contracts/solana/FeeCollectorClient.js.map +1 -1
  10. package/dist/cjs/airdrop/contracts/solana/SignatureAirdropService.d.ts +2 -2
  11. package/dist/cjs/airdrop/contracts/solana/SignatureAirdropService.js +1 -1
  12. package/dist/cjs/airdrop/contracts/solana/SignatureAirdropService.js.map +1 -1
  13. package/dist/cjs/airdrop/contracts/solana/SolanaContractClient.d.ts +2 -1
  14. package/dist/cjs/airdrop/contracts/solana/SolanaContractClient.js +10 -4
  15. package/dist/cjs/airdrop/contracts/solana/SolanaContractClient.js.map +1 -1
  16. package/dist/cjs/airdrop/contracts/solana/fee_collector.d.ts +78 -11
  17. package/dist/cjs/airdrop/contracts/solana/fee_collector.json +78 -11
  18. package/dist/cjs/airdrop/contracts/solana/fungible_token_distributor_solana.d.ts +56 -1
  19. package/dist/cjs/airdrop/contracts/solana/fungible_token_distributor_solana.json +56 -1
  20. package/dist/cjs/utils/web3.d.ts +15 -1
  21. package/dist/cjs/utils/web3.js +43 -0
  22. package/dist/cjs/utils/web3.js.map +1 -1
  23. package/dist/cjs/wallets/providers/evm/EvmWallet.js +27 -17
  24. package/dist/cjs/wallets/providers/evm/EvmWallet.js.map +1 -1
  25. package/dist/esm/airdrop/SignatureAirdropClient.d.ts +1 -1
  26. package/dist/esm/airdrop/SignatureAirdropClient.js +3 -2
  27. package/dist/esm/airdrop/SignatureAirdropClient.js.map +1 -1
  28. package/dist/esm/airdrop/contracts/solana/AirdropSignatureClient.d.ts +8 -3
  29. package/dist/esm/airdrop/contracts/solana/AirdropSignatureClient.js +33 -14
  30. package/dist/esm/airdrop/contracts/solana/AirdropSignatureClient.js.map +1 -1
  31. package/dist/esm/airdrop/contracts/solana/FeeCollectorClient.d.ts +2 -2
  32. package/dist/esm/airdrop/contracts/solana/FeeCollectorClient.js +11 -7
  33. package/dist/esm/airdrop/contracts/solana/FeeCollectorClient.js.map +1 -1
  34. package/dist/esm/airdrop/contracts/solana/SignatureAirdropService.d.ts +2 -2
  35. package/dist/esm/airdrop/contracts/solana/SignatureAirdropService.js +1 -1
  36. package/dist/esm/airdrop/contracts/solana/SignatureAirdropService.js.map +1 -1
  37. package/dist/esm/airdrop/contracts/solana/SolanaContractClient.d.ts +2 -1
  38. package/dist/esm/airdrop/contracts/solana/SolanaContractClient.js +10 -4
  39. package/dist/esm/airdrop/contracts/solana/SolanaContractClient.js.map +1 -1
  40. package/dist/esm/airdrop/contracts/solana/fee_collector.d.ts +78 -11
  41. package/dist/esm/airdrop/contracts/solana/fee_collector.json +78 -11
  42. package/dist/esm/airdrop/contracts/solana/fungible_token_distributor_solana.d.ts +56 -1
  43. package/dist/esm/airdrop/contracts/solana/fungible_token_distributor_solana.json +56 -1
  44. package/dist/esm/utils/web3.d.ts +15 -1
  45. package/dist/esm/utils/web3.js +43 -2
  46. package/dist/esm/utils/web3.js.map +1 -1
  47. package/dist/esm/wallets/providers/evm/EvmWallet.js +27 -17
  48. package/dist/esm/wallets/providers/evm/EvmWallet.js.map +1 -1
  49. package/package.json +1 -1
  50. package/src/airdrop/SignatureAirdropClient.ts +3 -2
  51. package/src/airdrop/contracts/solana/AirdropSignatureClient.ts +38 -15
  52. package/src/airdrop/contracts/solana/FeeCollectorClient.ts +10 -7
  53. package/src/airdrop/contracts/solana/SignatureAirdropService.ts +2 -2
  54. package/src/airdrop/contracts/solana/SolanaContractClient.ts +19 -11
  55. package/src/airdrop/contracts/solana/fee_collector.json +78 -11
  56. package/src/airdrop/contracts/solana/fee_collector.ts +78 -11
  57. package/src/airdrop/contracts/solana/fungible_token_distributor_solana.json +56 -1
  58. package/src/airdrop/contracts/solana/fungible_token_distributor_solana.ts +56 -1
  59. package/src/utils/web3.ts +62 -2
  60. package/src/wallets/providers/evm/EvmWallet.ts +27 -19
@@ -14,20 +14,24 @@ export class FeeCollectorClient extends SolanaContractClientBase {
14
14
  const [storagePDA] = await this.findProgramAddress([anchor.utils.bytes.utf8.encode('storage')]);
15
15
  return storagePDA;
16
16
  }
17
- async getUserFeePDA() {
18
- const [userFeePDA] = await this.findProgramAddress([
17
+ async getProjectFeePDA() {
18
+ const [projectFeePDA] = await this.findProgramAddress([
19
19
  anchor.utils.bytes.utf8.encode('fee'),
20
20
  anchor.utils.bytes.utf8.encode(this.projectId)
21
21
  ]);
22
- return userFeePDA;
22
+ return projectFeePDA;
23
23
  }
24
24
  async setDefaultFee(fee) {
25
25
  return this.invokeInstruction('setDefaultFee', {}, [new anchor.BN(fee)]);
26
26
  }
27
- async getClaimFee() {
28
- const storagePDA = await this.getStoragePDA();
29
- const storageData = await this.program.account.feeCollectorStorage.fetch(storagePDA);
30
- return storageData.defaultFeesBips.toString();
27
+ async getClaimFee(tokenAmount) {
28
+ try {
29
+ const fee = await this.invokeView('getFee', [this.projectId, new anchor.BN(tokenAmount)]);
30
+ return BigInt(fee);
31
+ }
32
+ catch (error) {
33
+ return BigInt(0);
34
+ }
31
35
  }
32
36
  }
33
37
  //# sourceMappingURL=FeeCollectorClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FeeCollectorClient.js","sourceRoot":"","sources":["../../../../../src/airdrop/contracts/solana/FeeCollectorClient.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAsB,MAAM,wBAAwB,CAAC;AACtF,OAAO,GAAG,MAAM,sBAAsB,CAAC;AAEvC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAE5C,MAAM,OAAO,kBAAmB,SAAQ,wBAAsC;IAC5E,SAAS,CAAS;IAClB,YAAY,OAA2B;QACrC,KAAK,CAAC;YACJ,GAAG,OAAO;YACV,GAAG,EAAE,GAAG;SACT,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAEhG,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC;YACjD,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;YACrC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;SAC/C,CAAC,CAAC;QACH,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,GAAW;QAC7B,OAAO,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,WAAW;QACf,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACrF,OAAO,WAAW,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;IAChD,CAAC;CACF"}
1
+ {"version":3,"file":"FeeCollectorClient.js","sourceRoot":"","sources":["../../../../../src/airdrop/contracts/solana/FeeCollectorClient.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAsB,MAAM,wBAAwB,CAAC;AACtF,OAAO,GAAG,MAAM,sBAAsB,CAAC;AAEvC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAE5C,MAAM,OAAO,kBAAmB,SAAQ,wBAAsC;IAC5E,SAAS,CAAS;IAClB,YAAY,OAA2B;QACrC,KAAK,CAAC;YACJ,GAAG,OAAO;YACV,GAAG,EAAE,GAAG;SACT,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAEhG,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,MAAM,CAAC,aAAa,CAAC,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC;YACpD,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;YACrC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;SAC/C,CAAC,CAAC;QACH,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,GAAW;QAC7B,OAAO,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,WAAmB;QACnC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YAC1F,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;CACF"}
@@ -8,7 +8,7 @@ export declare class SignatureAirdropService {
8
8
  feeTokens: (address: string) => Promise<string>;
9
9
  getFeelessThreshold(): Promise<void>;
10
10
  getDeployer(): Promise<string>;
11
- getClaimFee(address: string, amount: bigint): Promise<string>;
11
+ getClaimFee(address: string, amount: bigint): Promise<bigint>;
12
12
  batchFetchClaimed(userClaimIds: string[]): Promise<boolean[]>;
13
13
  getPaused(): Promise<boolean>;
14
14
  claim(data: {
@@ -20,5 +20,5 @@ export declare class SignatureAirdropService {
20
20
  unlockingAt: number;
21
21
  value: string;
22
22
  hash: string;
23
- }[], recipient?: string): Promise<string | undefined>;
23
+ }[], recipient?: string): Promise<string>;
24
24
  }
@@ -30,7 +30,7 @@ export class SignatureAirdropService {
30
30
  return '';
31
31
  }
32
32
  async getClaimFee(address, amount) {
33
- const fee = this.airdropClient.getClaimFee();
33
+ const fee = await this.airdropClient.getClaimFee(amount);
34
34
  return fee;
35
35
  }
36
36
  async batchFetchClaimed(userClaimIds) {
@@ -1 +1 @@
1
- {"version":3,"file":"SignatureAirdropService.js","sourceRoot":"","sources":["../../../../../src/airdrop/contracts/solana/SignatureAirdropService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAGlE,MAAM,OAAO,uBAAuB;IAClC,OAAO,CAAqB;IAC5B,YAAY,OAA2B;QACrC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,IAAY,aAAa;QACvB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACtC,CAAC;QAED,OAAO,IAAI,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,UAAU;QACd,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;IACzC,CAAC;IAED,aAAa,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE;QACxC,yDAAyD;QACzD,sDAAsD;QACtD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEF,SAAS,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE;QACpC,yDAAyD;QACzD,kDAAkD;QAClD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEF,KAAK,CAAC,mBAAmB;QACvB,mDAAmD;IACrD,CAAC;IAED,KAAK,CAAC,WAAW;QACf,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAe,EAAE,MAAc;QAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;QAC7C,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,YAAsB;QAC5C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;QACrE,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,CAAC,SAAS;QACb,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,KAAK,CACT,IASG,EACH,SAAkB;QAElB,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;CACF"}
1
+ {"version":3,"file":"SignatureAirdropService.js","sourceRoot":"","sources":["../../../../../src/airdrop/contracts/solana/SignatureAirdropService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAGlE,MAAM,OAAO,uBAAuB;IAClC,OAAO,CAAqB;IAC5B,YAAY,OAA2B;QACrC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,IAAY,aAAa;QACvB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACtC,CAAC;QAED,OAAO,IAAI,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,UAAU;QACd,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;IACzC,CAAC;IAED,aAAa,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE;QACxC,yDAAyD;QACzD,sDAAsD;QACtD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEF,SAAS,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE;QACpC,yDAAyD;QACzD,kDAAkD;QAClD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEF,KAAK,CAAC,mBAAmB;QACvB,mDAAmD;IACrD,CAAC;IAED,KAAK,CAAC,WAAW;QACf,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAe,EAAE,MAAc;QAC/C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACzD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,YAAsB;QAC5C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;QACrE,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,CAAC,SAAS;QACb,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,KAAK,CACT,IASG,EACH,SAAkB;QAElB,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;CACF"}
@@ -17,8 +17,9 @@ export declare abstract class SolanaContractClientBase<T extends Idl = Idl> {
17
17
  getConnection(endpoint?: string): Connection;
18
18
  protected findProgramAddress(seeds: Array<Buffer | Uint8Array>, programId?: PublicKey): Promise<[PublicKey, number]>;
19
19
  fetchAccountData<A extends keyof AllAccountsMap<T>>(accountName: A, address: PublicKey | string, commitment?: Commitment): Promise<IdlAccounts<T>[A]>;
20
- invokeView<M extends keyof MakeMethodsNamespace<T, AllInstructions<T>>>(methodName: M, args: Parameters<MakeMethodsNamespace<T, AllInstructions<T>>[M]>): Promise<ReturnType<MakeMethodsNamespace<T, AllInstructions<T>>[M]>>;
20
+ invokeView<M extends keyof MakeMethodsNamespace<T, AllInstructions<T>>>(methodName: M, args: Parameters<MakeMethodsNamespace<T, AllInstructions<T>>[M]>): Promise<any>;
21
21
  invokeInstruction<M extends keyof MakeMethodsNamespace<T, AllInstructions<T>>>(methodName: M, accounts: any, args: any, options?: {
22
22
  signers?: Signer[];
23
23
  }): Promise<string>;
24
+ confirmTransaction(tx: string): Promise<string>;
24
25
  }
@@ -50,19 +50,25 @@ export class SolanaContractClientBase {
50
50
  }
51
51
  }
52
52
  async invokeInstruction(methodName, accounts, args, options) {
53
- const latestBlockhash = await this.connection.getLatestBlockhash();
53
+ if (!this.program.methods[methodName]) {
54
+ throw new Error(`Method ${methodName} not found in program`);
55
+ }
54
56
  let instruction = this.program.methods[methodName](...args).accounts(accounts);
55
57
  if (options?.signers?.length) {
56
58
  instruction = instruction.signers(options.signers);
57
59
  }
58
- console.log(instruction, 'in');
59
60
  const tx = await instruction.rpc();
61
+ await this.confirmTransaction(tx);
62
+ console.log(tx);
63
+ return tx;
64
+ }
65
+ async confirmTransaction(tx) {
66
+ const latestBlockhash = await this.connection.getLatestBlockhash();
60
67
  await this.connection.confirmTransaction({
61
68
  signature: tx,
62
69
  blockhash: latestBlockhash.blockhash,
63
70
  lastValidBlockHeight: latestBlockhash.lastValidBlockHeight
64
- });
65
- console.log(tx);
71
+ }, 'confirmed');
66
72
  return tx;
67
73
  }
68
74
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SolanaContractClient.js","sourceRoot":"","sources":["../../../../../src/airdrop/contracts/solana/SolanaContractClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SolanaContractClient.js","sourceRoot":"","sources":["../../../../../src/airdrop/contracts/solana/SolanaContractClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAe,MAAM,mBAAmB,CAAC;AAOtF,OAAO,EAAW,aAAa,EAAc,UAAU,EAAE,SAAS,EAAU,MAAM,iBAAiB,CAAC;AAUpG,MAAM,OAAgB,wBAAwB;IAClC,OAAO,CAAa;IACpB,UAAU,CAAa;IACvB,MAAM,CAAS;IACf,OAAO,CAAS;IAE1B,YAAY,YAAgC;QAC1C,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1B,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC;QACpD,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,cAAc,CAAC;QAEzC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC;QAE3B,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC;QAC/F,WAAW,CAAC,QAAQ,CAAC,CAAC;QAEtB,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC5C,CAAC;IAED,aAAa,CAAC,QAAiB;QAC7B,MAAM,MAAM,GAAG,aAAa,CAAE,QAAoB,IAAI,cAAc,CAAC,CAAC;QAEtE,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAES,KAAK,CAAC,kBAAkB,CAChC,KAAiC,EACjC,SAAqB;QAErB,OAAO,MAAM,SAAS,CAAC,sBAAsB,CAAC,KAAK,EAAE,SAAS,IAAI,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7G,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,WAAc,EACd,OAA2B,EAC3B,UAAuB;QAEvB,IAAI,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;gBACvC,MAAM,IAAI,KAAK,CAAC,WAAW,MAAM,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC;YACzE,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YACnF,OAAO,OAA4B,CAAC;QACtC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,0BAA0B,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACvE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CACd,UAAa,EACb,IAAgE;QAEhE,IAAI,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,UAAU,UAAU,uBAAuB,CAAC,CAAC;YAC/D,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YAEtE,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,UAAU,GAAG,EAAE,KAAK,CAAC,CAAC;YAClE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,UAAa,EACb,QAAa,EACb,IAAS,EACT,OAAgC;QAEhC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,KAAK,CAAC,UAAU,UAAU,uBAAuB,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAE/E,IAAI,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;YAC7B,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,EAAE,GAAG,MAAM,WAAW,CAAC,GAAG,EAAE,CAAC;QAEnC,MAAM,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,EAAU;QACjC,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC;QACnE,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,CACtC;YACE,SAAS,EAAE,EAAE;YACb,SAAS,EAAE,eAAe,CAAC,SAAS;YACpC,oBAAoB,EAAE,eAAe,CAAC,oBAAoB;SAC3D,EACD,WAAW,CACZ,CAAC;QACF,OAAO,EAAE,CAAC;IACZ,CAAC;CAIF"}
@@ -46,6 +46,11 @@ export type FeeCollector = {
46
46
  ];
47
47
  };
48
48
  },
49
+ {
50
+ "name": "feeTokenMint";
51
+ "writable": true;
52
+ "optional": true;
53
+ },
49
54
  {
50
55
  "name": "vault";
51
56
  "writable": true;
@@ -71,7 +76,6 @@ export type FeeCollector = {
71
76
  },
72
77
  {
73
78
  "name": "fee";
74
- "writable": true;
75
79
  "pda": {
76
80
  "seeds": [
77
81
  {
@@ -247,7 +251,6 @@ export type FeeCollector = {
247
251
  },
248
252
  {
249
253
  "name": "fee";
250
- "writable": true;
251
254
  "pda": {
252
255
  "seeds": [
253
256
  {
@@ -264,15 +267,6 @@ export type FeeCollector = {
264
267
  }
265
268
  ];
266
269
  };
267
- },
268
- {
269
- "name": "authority";
270
- "writable": true;
271
- "signer": true;
272
- },
273
- {
274
- "name": "systemProgram";
275
- "address": "11111111111111111111111111111111";
276
270
  }
277
271
  ];
278
272
  "args": [
@@ -366,6 +360,75 @@ export type FeeCollector = {
366
360
  }
367
361
  ];
368
362
  },
363
+ {
364
+ "name": "initProjectFee";
365
+ "discriminator": [
366
+ 21,
367
+ 68,
368
+ 31,
369
+ 251,
370
+ 143,
371
+ 139,
372
+ 107,
373
+ 64
374
+ ];
375
+ "accounts": [
376
+ {
377
+ "name": "storage";
378
+ "pda": {
379
+ "seeds": [
380
+ {
381
+ "kind": "const";
382
+ "value": [
383
+ 115,
384
+ 116,
385
+ 111,
386
+ 114,
387
+ 97,
388
+ 103,
389
+ 101
390
+ ];
391
+ }
392
+ ];
393
+ };
394
+ },
395
+ {
396
+ "name": "fee";
397
+ "writable": true;
398
+ "pda": {
399
+ "seeds": [
400
+ {
401
+ "kind": "const";
402
+ "value": [
403
+ 102,
404
+ 101,
405
+ 101
406
+ ];
407
+ },
408
+ {
409
+ "kind": "arg";
410
+ "path": "projectId";
411
+ }
412
+ ];
413
+ };
414
+ },
415
+ {
416
+ "name": "authority";
417
+ "writable": true;
418
+ "signer": true;
419
+ },
420
+ {
421
+ "name": "systemProgram";
422
+ "address": "11111111111111111111111111111111";
423
+ }
424
+ ];
425
+ "args": [
426
+ {
427
+ "name": "projectId";
428
+ "type": "string";
429
+ }
430
+ ];
431
+ },
369
432
  {
370
433
  "name": "initialize";
371
434
  "discriminator": [
@@ -1021,6 +1084,10 @@ export type FeeCollector = {
1021
1084
  "type": {
1022
1085
  "kind": "struct";
1023
1086
  "fields": [
1087
+ {
1088
+ "name": "default";
1089
+ "type": "bool";
1090
+ },
1024
1091
  {
1025
1092
  "name": "bips";
1026
1093
  "type": "u64";
@@ -40,6 +40,11 @@
40
40
  ]
41
41
  }
42
42
  },
43
+ {
44
+ "name": "fee_token_mint",
45
+ "writable": true,
46
+ "optional": true
47
+ },
43
48
  {
44
49
  "name": "vault",
45
50
  "writable": true,
@@ -65,7 +70,6 @@
65
70
  },
66
71
  {
67
72
  "name": "fee",
68
- "writable": true,
69
73
  "pda": {
70
74
  "seeds": [
71
75
  {
@@ -241,7 +245,6 @@
241
245
  },
242
246
  {
243
247
  "name": "fee",
244
- "writable": true,
245
248
  "pda": {
246
249
  "seeds": [
247
250
  {
@@ -258,15 +261,6 @@
258
261
  }
259
262
  ]
260
263
  }
261
- },
262
- {
263
- "name": "authority",
264
- "writable": true,
265
- "signer": true
266
- },
267
- {
268
- "name": "system_program",
269
- "address": "11111111111111111111111111111111"
270
264
  }
271
265
  ],
272
266
  "args": [
@@ -360,6 +354,75 @@
360
354
  }
361
355
  ]
362
356
  },
357
+ {
358
+ "name": "init_project_fee",
359
+ "discriminator": [
360
+ 21,
361
+ 68,
362
+ 31,
363
+ 251,
364
+ 143,
365
+ 139,
366
+ 107,
367
+ 64
368
+ ],
369
+ "accounts": [
370
+ {
371
+ "name": "storage",
372
+ "pda": {
373
+ "seeds": [
374
+ {
375
+ "kind": "const",
376
+ "value": [
377
+ 115,
378
+ 116,
379
+ 111,
380
+ 114,
381
+ 97,
382
+ 103,
383
+ 101
384
+ ]
385
+ }
386
+ ]
387
+ }
388
+ },
389
+ {
390
+ "name": "fee",
391
+ "writable": true,
392
+ "pda": {
393
+ "seeds": [
394
+ {
395
+ "kind": "const",
396
+ "value": [
397
+ 102,
398
+ 101,
399
+ 101
400
+ ]
401
+ },
402
+ {
403
+ "kind": "arg",
404
+ "path": "_project_id"
405
+ }
406
+ ]
407
+ }
408
+ },
409
+ {
410
+ "name": "authority",
411
+ "writable": true,
412
+ "signer": true
413
+ },
414
+ {
415
+ "name": "system_program",
416
+ "address": "11111111111111111111111111111111"
417
+ }
418
+ ],
419
+ "args": [
420
+ {
421
+ "name": "project_id",
422
+ "type": "string"
423
+ }
424
+ ]
425
+ },
363
426
  {
364
427
  "name": "initialize",
365
428
  "discriminator": [
@@ -1015,6 +1078,10 @@
1015
1078
  "type": {
1016
1079
  "kind": "struct",
1017
1080
  "fields": [
1081
+ {
1082
+ "name": "default",
1083
+ "type": "bool"
1084
+ },
1018
1085
  {
1019
1086
  "name": "bips",
1020
1087
  "type": "u64"
@@ -216,7 +216,12 @@ export type FungibleTokenDistributorSolana = {
216
216
  "address": "4dfP4CMvznzUuuYLhybXy71zasrhtjrFkChSFjtqS3on";
217
217
  },
218
218
  {
219
- "name": "userFee";
219
+ "name": "feeTokenMint";
220
+ "writable": true;
221
+ "optional": true;
222
+ },
223
+ {
224
+ "name": "fee";
220
225
  "writable": true;
221
226
  },
222
227
  {
@@ -495,6 +500,20 @@ export type FungibleTokenDistributorSolana = {
495
500
  ];
496
501
  };
497
502
  },
503
+ {
504
+ "name": "feeCollector";
505
+ "optional": true;
506
+ "address": "4dfP4CMvznzUuuYLhybXy71zasrhtjrFkChSFjtqS3on";
507
+ },
508
+ {
509
+ "name": "feeCollectorStorage";
510
+ "optional": true;
511
+ },
512
+ {
513
+ "name": "fee";
514
+ "writable": true;
515
+ "optional": true;
516
+ },
498
517
  {
499
518
  "name": "authority";
500
519
  "writable": true;
@@ -510,6 +529,10 @@ export type FungibleTokenDistributorSolana = {
510
529
  "name": "projectId";
511
530
  "type": "string";
512
531
  },
532
+ {
533
+ "name": "projectToken";
534
+ "type": "pubkey";
535
+ },
513
536
  {
514
537
  "name": "owner";
515
538
  "type": "pubkey";
@@ -517,6 +540,10 @@ export type FungibleTokenDistributorSolana = {
517
540
  {
518
541
  "name": "feeCollector";
519
542
  "type": "pubkey";
543
+ },
544
+ {
545
+ "name": "initFeeAccount";
546
+ "type": "bool";
520
547
  }
521
548
  ];
522
549
  },
@@ -650,6 +677,20 @@ export type FungibleTokenDistributorSolana = {
650
677
  ];
651
678
  };
652
679
  },
680
+ {
681
+ "name": "feeCollector";
682
+ "optional": true;
683
+ "address": "4dfP4CMvznzUuuYLhybXy71zasrhtjrFkChSFjtqS3on";
684
+ },
685
+ {
686
+ "name": "feeCollectorStorage";
687
+ "optional": true;
688
+ },
689
+ {
690
+ "name": "fee";
691
+ "writable": true;
692
+ "optional": true;
693
+ },
653
694
  {
654
695
  "name": "systemProgram";
655
696
  "address": "11111111111111111111111111111111";
@@ -663,6 +704,10 @@ export type FungibleTokenDistributorSolana = {
663
704
  {
664
705
  "name": "feeCollector";
665
706
  "type": "pubkey";
707
+ },
708
+ {
709
+ "name": "initFeeAccount";
710
+ "type": "bool";
666
711
  }
667
712
  ];
668
713
  },
@@ -838,6 +883,11 @@ export type FungibleTokenDistributorSolana = {
838
883
  "writable": true;
839
884
  "signer": true;
840
885
  },
886
+ {
887
+ "name": "newOwner";
888
+ "writable": true;
889
+ "signer": true;
890
+ },
841
891
  {
842
892
  "name": "systemProgram";
843
893
  "address": "11111111111111111111111111111111";
@@ -891,6 +941,11 @@ export type FungibleTokenDistributorSolana = {
891
941
  "writable": true;
892
942
  "signer": true;
893
943
  },
944
+ {
945
+ "name": "newAdmin";
946
+ "writable": true;
947
+ "signer": true;
948
+ },
894
949
  {
895
950
  "name": "systemProgram";
896
951
  "address": "11111111111111111111111111111111";
@@ -210,7 +210,12 @@
210
210
  "address": "4dfP4CMvznzUuuYLhybXy71zasrhtjrFkChSFjtqS3on"
211
211
  },
212
212
  {
213
- "name": "user_fee",
213
+ "name": "fee_token_mint",
214
+ "writable": true,
215
+ "optional": true
216
+ },
217
+ {
218
+ "name": "fee",
214
219
  "writable": true
215
220
  },
216
221
  {
@@ -489,6 +494,20 @@
489
494
  ]
490
495
  }
491
496
  },
497
+ {
498
+ "name": "fee_collector",
499
+ "optional": true,
500
+ "address": "4dfP4CMvznzUuuYLhybXy71zasrhtjrFkChSFjtqS3on"
501
+ },
502
+ {
503
+ "name": "fee_collector_storage",
504
+ "optional": true
505
+ },
506
+ {
507
+ "name": "fee",
508
+ "writable": true,
509
+ "optional": true
510
+ },
492
511
  {
493
512
  "name": "authority",
494
513
  "writable": true,
@@ -504,6 +523,10 @@
504
523
  "name": "project_id",
505
524
  "type": "string"
506
525
  },
526
+ {
527
+ "name": "project_token",
528
+ "type": "pubkey"
529
+ },
507
530
  {
508
531
  "name": "owner",
509
532
  "type": "pubkey"
@@ -511,6 +534,10 @@
511
534
  {
512
535
  "name": "fee_collector",
513
536
  "type": "pubkey"
537
+ },
538
+ {
539
+ "name": "init_fee_account",
540
+ "type": "bool"
514
541
  }
515
542
  ]
516
543
  },
@@ -644,6 +671,20 @@
644
671
  ]
645
672
  }
646
673
  },
674
+ {
675
+ "name": "fee_collector",
676
+ "optional": true,
677
+ "address": "4dfP4CMvznzUuuYLhybXy71zasrhtjrFkChSFjtqS3on"
678
+ },
679
+ {
680
+ "name": "fee_collector_storage",
681
+ "optional": true
682
+ },
683
+ {
684
+ "name": "fee",
685
+ "writable": true,
686
+ "optional": true
687
+ },
647
688
  {
648
689
  "name": "system_program",
649
690
  "address": "11111111111111111111111111111111"
@@ -657,6 +698,10 @@
657
698
  {
658
699
  "name": "fee_collector",
659
700
  "type": "pubkey"
701
+ },
702
+ {
703
+ "name": "init_fee_account",
704
+ "type": "bool"
660
705
  }
661
706
  ]
662
707
  },
@@ -832,6 +877,11 @@
832
877
  "writable": true,
833
878
  "signer": true
834
879
  },
880
+ {
881
+ "name": "new_owner",
882
+ "writable": true,
883
+ "signer": true
884
+ },
835
885
  {
836
886
  "name": "system_program",
837
887
  "address": "11111111111111111111111111111111"
@@ -885,6 +935,11 @@
885
935
  "writable": true,
886
936
  "signer": true
887
937
  },
938
+ {
939
+ "name": "new_admin",
940
+ "writable": true,
941
+ "signer": true
942
+ },
888
943
  {
889
944
  "name": "system_program",
890
945
  "address": "11111111111111111111111111111111"
@@ -1,4 +1,4 @@
1
- import { Commitment, Connection, PublicKey, Transaction } from '@solana/web3.js';
1
+ import { Cluster, Commitment, Connection, PublicKey, Transaction } from '@solana/web3.js';
2
2
  export declare function flipAddressType(address: string): string;
3
3
  export declare function hexStrToU8Array(hexStr: string): number[];
4
4
  export declare function getOrCreateAssociatedTokenAccount({ connection, payer, mint, owner, signTransaction, allowOwnerOffCurve, commitment, programId, associatedTokenProgramId }: {
@@ -12,3 +12,17 @@ export declare function getOrCreateAssociatedTokenAccount({ connection, payer, m
12
12
  associatedTokenProgramId?: PublicKey;
13
13
  signTransaction: (signature: Transaction) => Promise<Transaction>;
14
14
  }): Promise<import("@solana/spl-token").Account>;
15
+ export declare enum SplTokenVersion {
16
+ SplToken = "spl-token",
17
+ SplToken2022 = "spl-token-2022"
18
+ }
19
+ export type FetchTokenVersionOptions = {
20
+ clusterOrEndpoint?: Cluster | string;
21
+ };
22
+ export type FetchTokenMetadataOptions = FetchTokenVersionOptions & {
23
+ fetchOffchainMetadata?: boolean;
24
+ };
25
+ export declare function fetchTokenVersion(tokenAddress: string, options: FetchTokenMetadataOptions): Promise<{
26
+ name: SplTokenVersion;
27
+ programId: PublicKey;
28
+ } | null>;