@sudobility/contracts 1.11.1 → 1.11.2

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 (58) hide show
  1. package/artifacts/contracts/Mailer.sol/Mailer.d.ts +120 -2
  2. package/artifacts/contracts/Mailer.sol/Mailer.dbg.json +1 -1
  3. package/artifacts/contracts/Mailer.sol/Mailer.json +120 -2
  4. package/artifacts/contracts/MockUSDC.sol/MockUSDC.dbg.json +1 -1
  5. package/artifacts/contracts/interfaces/IERC20.sol/IERC20.dbg.json +1 -1
  6. package/dist/evm/src/evm/mailer-client.d.ts +890 -190
  7. package/dist/evm/src/evm/mailer-client.d.ts.map +1 -1
  8. package/dist/evm/src/evm/mailer-client.js +169 -237
  9. package/dist/evm/src/evm/mailer-client.js.map +1 -1
  10. package/dist/evm/typechain-types/Mailer.d.ts +81 -11
  11. package/dist/evm/typechain-types/Mailer.d.ts.map +1 -1
  12. package/dist/evm/typechain-types/factories/Mailer__factory.d.ts +93 -1
  13. package/dist/evm/typechain-types/factories/Mailer__factory.d.ts.map +1 -1
  14. package/dist/evm/typechain-types/factories/Mailer__factory.js +119 -1
  15. package/dist/evm/typechain-types/factories/Mailer__factory.js.map +1 -1
  16. package/dist/solana/solana/mailer-client.d.ts +4 -0
  17. package/dist/solana/solana/mailer-client.d.ts.map +1 -1
  18. package/dist/solana/solana/mailer-client.js +181 -18
  19. package/dist/solana/solana/mailer-client.js.map +1 -1
  20. package/dist/unified/src/evm/mailer-client.d.ts +890 -190
  21. package/dist/unified/src/evm/mailer-client.d.ts.map +1 -1
  22. package/dist/unified/src/evm/mailer-client.js +169 -237
  23. package/dist/unified/src/evm/mailer-client.js.map +1 -1
  24. package/dist/unified/src/solana/mailer-client.d.ts +4 -0
  25. package/dist/unified/src/solana/mailer-client.d.ts.map +1 -1
  26. package/dist/unified/src/solana/mailer-client.js +181 -18
  27. package/dist/unified/src/solana/mailer-client.js.map +1 -1
  28. package/dist/unified/src/unified/onchain-mailer-client.d.ts +25 -0
  29. package/dist/unified/src/unified/onchain-mailer-client.d.ts.map +1 -1
  30. package/dist/unified/src/unified/onchain-mailer-client.js +147 -4
  31. package/dist/unified/src/unified/onchain-mailer-client.js.map +1 -1
  32. package/dist/unified/typechain-types/Mailer.d.ts +81 -11
  33. package/dist/unified/typechain-types/Mailer.d.ts.map +1 -1
  34. package/dist/unified/typechain-types/factories/Mailer__factory.d.ts +93 -1
  35. package/dist/unified/typechain-types/factories/Mailer__factory.d.ts.map +1 -1
  36. package/dist/unified/typechain-types/factories/Mailer__factory.js +119 -1
  37. package/dist/unified/typechain-types/factories/Mailer__factory.js.map +1 -1
  38. package/dist/unified-esm/src/evm/mailer-client.d.ts +890 -190
  39. package/dist/unified-esm/src/evm/mailer-client.d.ts.map +1 -1
  40. package/dist/unified-esm/src/evm/mailer-client.js +171 -239
  41. package/dist/unified-esm/src/evm/mailer-client.js.map +1 -1
  42. package/dist/unified-esm/src/solana/mailer-client.d.ts +4 -0
  43. package/dist/unified-esm/src/solana/mailer-client.d.ts.map +1 -1
  44. package/dist/unified-esm/src/solana/mailer-client.js +181 -18
  45. package/dist/unified-esm/src/solana/mailer-client.js.map +1 -1
  46. package/dist/unified-esm/src/unified/onchain-mailer-client.d.ts +25 -0
  47. package/dist/unified-esm/src/unified/onchain-mailer-client.d.ts.map +1 -1
  48. package/dist/unified-esm/src/unified/onchain-mailer-client.js +147 -4
  49. package/dist/unified-esm/src/unified/onchain-mailer-client.js.map +1 -1
  50. package/dist/unified-esm/typechain-types/Mailer.d.ts +81 -11
  51. package/dist/unified-esm/typechain-types/Mailer.d.ts.map +1 -1
  52. package/dist/unified-esm/typechain-types/factories/Mailer__factory.d.ts +93 -1
  53. package/dist/unified-esm/typechain-types/factories/Mailer__factory.d.ts.map +1 -1
  54. package/dist/unified-esm/typechain-types/factories/Mailer__factory.js +119 -1
  55. package/dist/unified-esm/typechain-types/factories/Mailer__factory.js.map +1 -1
  56. package/package.json +1 -1
  57. package/typechain-types/Mailer.ts +137 -9
  58. package/typechain-types/factories/Mailer__factory.ts +119 -1
@@ -106,6 +106,9 @@ export declare class MailerClient {
106
106
  * @returns Transaction signature
107
107
  */
108
108
  setDelegationFee(newFee: number | bigint): Promise<string>;
109
+ setCustomFeePercentage(account: string | PublicKey, percentage: number, payer?: Optional<string | PublicKey>): Promise<string>;
110
+ clearCustomFeePercentage(account: string | PublicKey): Promise<string>;
111
+ getCustomFeePercentage(account: string | PublicKey): Promise<number>;
109
112
  /**
110
113
  * Get current fees from the mailer state
111
114
  * @returns MailerFees object with current fees
@@ -164,6 +167,7 @@ export declare class MailerClient {
164
167
  * @returns Transaction signature
165
168
  */
166
169
  sendPrepared(to: string | PublicKey, mailId: string, revenueShareToReceiver?: boolean, resolveSenderToName?: boolean): Promise<string>;
170
+ sendThroughWebhook(to: string | PublicKey, webhookId: string, revenueShareToReceiver?: boolean, resolveSenderToName?: boolean): Promise<string>;
167
171
  /**
168
172
  * Pause the contract and distribute owner claimable funds (owner only)
169
173
  * @param options Transaction confirm options
@@ -1 +1 @@
1
- {"version":3,"file":"mailer-client.d.ts","sourceRoot":"","sources":["../../../../src/solana/mailer-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mailer-client.d.ts","sourceRoot":"","sources":["../../../../src/solana/mailer-client.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,23 @@ function encodeSend(to, subject, body, revenueShareToReceiver, resolveSenderToNa
32
32
  data.writeUInt8(resolveSenderToName ? 1 : 0, offset);
33
33
  return data;
34
34
  }
35
+ function encodeSendPrepared(to, mailId, revenueShareToReceiver, resolveSenderToName = false) {
36
+ const mailIdBytes = Buffer.from(mailId, 'utf8');
37
+ const data = Buffer.alloc(1 + 32 + 4 + mailIdBytes.length + 1 + 1);
38
+ let offset = 0;
39
+ data.writeUInt8(InstructionType.SendPrepared, offset);
40
+ offset += 1;
41
+ to.toBuffer().copy(data, offset);
42
+ offset += 32;
43
+ data.writeUInt32LE(mailIdBytes.length, offset);
44
+ offset += 4;
45
+ mailIdBytes.copy(data, offset);
46
+ offset += mailIdBytes.length;
47
+ data.writeUInt8(revenueShareToReceiver ? 1 : 0, offset);
48
+ offset += 1;
49
+ data.writeUInt8(resolveSenderToName ? 1 : 0, offset);
50
+ return data;
51
+ }
35
52
  function encodeSendToEmail(toEmail, subject, body) {
36
53
  const emailBytes = Buffer.from(toEmail, 'utf8');
37
54
  const subjectBytes = Buffer.from(subject, 'utf8');
@@ -69,6 +86,23 @@ function encodeSendPreparedToEmail(toEmail, mailId) {
69
86
  mailIdBytes.copy(data, offset);
70
87
  return data;
71
88
  }
89
+ function encodeSendThroughWebhook(to, webhookId, revenueShareToReceiver, resolveSenderToName = false) {
90
+ const webhookBytes = Buffer.from(webhookId, 'utf8');
91
+ const data = Buffer.alloc(1 + 32 + 4 + webhookBytes.length + 1 + 1);
92
+ let offset = 0;
93
+ data.writeUInt8(InstructionType.SendThroughWebhook, offset);
94
+ offset += 1;
95
+ to.toBuffer().copy(data, offset);
96
+ offset += 32;
97
+ data.writeUInt32LE(webhookBytes.length, offset);
98
+ offset += 4;
99
+ webhookBytes.copy(data, offset);
100
+ offset += webhookBytes.length;
101
+ data.writeUInt8(revenueShareToReceiver ? 1 : 0, offset);
102
+ offset += 1;
103
+ data.writeUInt8(resolveSenderToName ? 1 : 0, offset);
104
+ return data;
105
+ }
72
106
  function encodeSimpleInstruction(instructionType) {
73
107
  const data = Buffer.alloc(1);
74
108
  data.writeUInt8(instructionType, 0);
@@ -86,6 +120,19 @@ function encodeSetDelegationFee(newFee) {
86
120
  data.writeBigUInt64LE(newFee, 1);
87
121
  return data;
88
122
  }
123
+ function encodeSetCustomFeePercentage(account, percentage) {
124
+ const data = Buffer.alloc(1 + 32 + 1);
125
+ data.writeUInt8(InstructionType.SetCustomFeePercentage, 0);
126
+ account.toBuffer().copy(data, 1);
127
+ data.writeUInt8(percentage, 33);
128
+ return data;
129
+ }
130
+ function encodeClearCustomFeePercentage(account) {
131
+ const data = Buffer.alloc(1 + 32);
132
+ data.writeUInt8(InstructionType.ClearCustomFeePercentage, 0);
133
+ account.toBuffer().copy(data, 1);
134
+ return data;
135
+ }
89
136
  function encodeDelegateTo(delegate) {
90
137
  if (!delegate) {
91
138
  // Clear delegation - just send the instruction type and a null option
@@ -169,26 +216,40 @@ function parseDelegation(data) {
169
216
  bump,
170
217
  };
171
218
  }
172
- /**
173
- * Instruction types for the native Solana program
174
- */
219
+ function parseFeeDiscount(data) {
220
+ let offset = 0;
221
+ const account = new PublicKey(data.slice(offset, offset + 32));
222
+ offset += 32;
223
+ const discount = data.readUInt8(offset);
224
+ offset += 1;
225
+ const bump = data.readUInt8(offset);
226
+ return {
227
+ account,
228
+ discount,
229
+ bump,
230
+ };
231
+ }
175
232
  var InstructionType;
176
233
  (function (InstructionType) {
177
234
  InstructionType[InstructionType["Initialize"] = 0] = "Initialize";
178
235
  InstructionType[InstructionType["Send"] = 1] = "Send";
179
- InstructionType[InstructionType["SendToEmail"] = 2] = "SendToEmail";
180
- InstructionType[InstructionType["SendPreparedToEmail"] = 3] = "SendPreparedToEmail";
181
- InstructionType[InstructionType["ClaimRecipientShare"] = 4] = "ClaimRecipientShare";
182
- InstructionType[InstructionType["ClaimOwnerShare"] = 5] = "ClaimOwnerShare";
183
- InstructionType[InstructionType["SetFee"] = 6] = "SetFee";
184
- InstructionType[InstructionType["DelegateTo"] = 7] = "DelegateTo";
185
- InstructionType[InstructionType["RejectDelegation"] = 8] = "RejectDelegation";
186
- InstructionType[InstructionType["SetDelegationFee"] = 9] = "SetDelegationFee";
187
- InstructionType[InstructionType["Pause"] = 10] = "Pause";
188
- InstructionType[InstructionType["Unpause"] = 11] = "Unpause";
189
- InstructionType[InstructionType["DistributeClaimableFunds"] = 12] = "DistributeClaimableFunds";
190
- InstructionType[InstructionType["ClaimExpiredShares"] = 13] = "ClaimExpiredShares";
191
- InstructionType[InstructionType["EmergencyUnpause"] = 14] = "EmergencyUnpause";
236
+ InstructionType[InstructionType["SendPrepared"] = 2] = "SendPrepared";
237
+ InstructionType[InstructionType["SendToEmail"] = 3] = "SendToEmail";
238
+ InstructionType[InstructionType["SendPreparedToEmail"] = 4] = "SendPreparedToEmail";
239
+ InstructionType[InstructionType["SendThroughWebhook"] = 5] = "SendThroughWebhook";
240
+ InstructionType[InstructionType["ClaimRecipientShare"] = 6] = "ClaimRecipientShare";
241
+ InstructionType[InstructionType["ClaimOwnerShare"] = 7] = "ClaimOwnerShare";
242
+ InstructionType[InstructionType["SetFee"] = 8] = "SetFee";
243
+ InstructionType[InstructionType["DelegateTo"] = 9] = "DelegateTo";
244
+ InstructionType[InstructionType["RejectDelegation"] = 10] = "RejectDelegation";
245
+ InstructionType[InstructionType["SetDelegationFee"] = 11] = "SetDelegationFee";
246
+ InstructionType[InstructionType["SetCustomFeePercentage"] = 12] = "SetCustomFeePercentage";
247
+ InstructionType[InstructionType["ClearCustomFeePercentage"] = 13] = "ClearCustomFeePercentage";
248
+ InstructionType[InstructionType["Pause"] = 14] = "Pause";
249
+ InstructionType[InstructionType["Unpause"] = 15] = "Unpause";
250
+ InstructionType[InstructionType["DistributeClaimableFunds"] = 16] = "DistributeClaimableFunds";
251
+ InstructionType[InstructionType["ClaimExpiredShares"] = 17] = "ClaimExpiredShares";
252
+ InstructionType[InstructionType["EmergencyUnpause"] = 18] = "EmergencyUnpause";
192
253
  })(InstructionType || (InstructionType = {}));
193
254
  /**
194
255
  * @class MailerClient
@@ -441,6 +502,58 @@ export class MailerClient {
441
502
  const transaction = new Transaction().add(instruction);
442
503
  return await this.sendTransaction(transaction);
443
504
  }
505
+ async setCustomFeePercentage(account, percentage, payer) {
506
+ const normalizedPercentage = Math.trunc(percentage);
507
+ if (normalizedPercentage < 0 || normalizedPercentage > 100) {
508
+ throw new Error('Percentage must be between 0 and 100');
509
+ }
510
+ const accountKey = typeof account === 'string' ? new PublicKey(account) : account;
511
+ const payerKey = payer
512
+ ? typeof payer === 'string'
513
+ ? new PublicKey(payer)
514
+ : payer
515
+ : this.wallet.publicKey;
516
+ const [discountPda] = PublicKey.findProgramAddressSync([Buffer.from('discount'), accountKey.toBuffer()], this.programId);
517
+ const instruction = new TransactionInstruction({
518
+ keys: [
519
+ { pubkey: this.wallet.publicKey, isSigner: true, isWritable: false },
520
+ { pubkey: this.mailerStatePda, isSigner: false, isWritable: false },
521
+ { pubkey: discountPda, isSigner: false, isWritable: true },
522
+ { pubkey: accountKey, isSigner: false, isWritable: false },
523
+ { pubkey: payerKey, isSigner: true, isWritable: true },
524
+ { pubkey: SystemProgram.programId, isSigner: false, isWritable: false },
525
+ ],
526
+ programId: this.programId,
527
+ data: encodeSetCustomFeePercentage(accountKey, normalizedPercentage),
528
+ });
529
+ const transaction = new Transaction().add(instruction);
530
+ return this.sendTransaction(transaction);
531
+ }
532
+ async clearCustomFeePercentage(account) {
533
+ const accountKey = typeof account === 'string' ? new PublicKey(account) : account;
534
+ const [discountPda] = PublicKey.findProgramAddressSync([Buffer.from('discount'), accountKey.toBuffer()], this.programId);
535
+ const instruction = new TransactionInstruction({
536
+ keys: [
537
+ { pubkey: this.wallet.publicKey, isSigner: true, isWritable: false },
538
+ { pubkey: this.mailerStatePda, isSigner: false, isWritable: false },
539
+ { pubkey: discountPda, isSigner: false, isWritable: true },
540
+ ],
541
+ programId: this.programId,
542
+ data: encodeClearCustomFeePercentage(accountKey),
543
+ });
544
+ const transaction = new Transaction().add(instruction);
545
+ return this.sendTransaction(transaction);
546
+ }
547
+ async getCustomFeePercentage(account) {
548
+ const accountKey = typeof account === 'string' ? new PublicKey(account) : account;
549
+ const [discountPda] = PublicKey.findProgramAddressSync([Buffer.from('discount'), accountKey.toBuffer()], this.programId);
550
+ const accountInfo = await this.connection.getAccountInfo(discountPda);
551
+ if (!accountInfo) {
552
+ return 100;
553
+ }
554
+ const discountState = parseFeeDiscount(accountInfo.data);
555
+ return 100 - discountState.discount;
556
+ }
444
557
  /**
445
558
  * Get current fees from the mailer state
446
559
  * @returns MailerFees object with current fees
@@ -600,8 +713,58 @@ export class MailerClient {
600
713
  * @returns Transaction signature
601
714
  */
602
715
  async sendPrepared(to, mailId, revenueShareToReceiver = false, resolveSenderToName = false) {
603
- // For Solana, we send the mailId as both subject and body to indicate it's a prepared message
604
- return this.send(to, mailId, '', revenueShareToReceiver, resolveSenderToName);
716
+ const recipientKey = typeof to === 'string' ? new PublicKey(to) : to;
717
+ const [recipientClaimPda] = PublicKey.findProgramAddressSync([Buffer.from('claim'), recipientKey.toBuffer()], this.programId);
718
+ const senderTokenAccount = getAssociatedTokenAddressSync(this.usdcMint, this.wallet.publicKey);
719
+ const mailerTokenAccount = getAssociatedTokenAddressSync(this.usdcMint, this.mailerStatePda, true);
720
+ const instructions = [];
721
+ const mailerTokenInfo = await this.connection.getAccountInfo(mailerTokenAccount);
722
+ if (!mailerTokenInfo) {
723
+ instructions.push(createAssociatedTokenAccountInstruction(this.wallet.publicKey, mailerTokenAccount, this.mailerStatePda, this.usdcMint));
724
+ }
725
+ const sendInstruction = new TransactionInstruction({
726
+ keys: [
727
+ { pubkey: this.wallet.publicKey, isSigner: true, isWritable: false },
728
+ { pubkey: recipientClaimPda, isSigner: false, isWritable: true },
729
+ { pubkey: this.mailerStatePda, isSigner: false, isWritable: false },
730
+ { pubkey: senderTokenAccount, isSigner: false, isWritable: true },
731
+ { pubkey: mailerTokenAccount, isSigner: false, isWritable: true },
732
+ { pubkey: TOKEN_PROGRAM_ID, isSigner: false, isWritable: false },
733
+ { pubkey: SystemProgram.programId, isSigner: false, isWritable: false },
734
+ ],
735
+ programId: this.programId,
736
+ data: encodeSendPrepared(recipientKey, mailId, revenueShareToReceiver, resolveSenderToName),
737
+ });
738
+ instructions.push(sendInstruction);
739
+ const transaction = new Transaction().add(...instructions);
740
+ return this.sendTransaction(transaction);
741
+ }
742
+ async sendThroughWebhook(to, webhookId, revenueShareToReceiver = false, resolveSenderToName = false) {
743
+ const recipientKey = typeof to === 'string' ? new PublicKey(to) : to;
744
+ const [recipientClaimPda] = PublicKey.findProgramAddressSync([Buffer.from('claim'), recipientKey.toBuffer()], this.programId);
745
+ const senderTokenAccount = getAssociatedTokenAddressSync(this.usdcMint, this.wallet.publicKey);
746
+ const mailerTokenAccount = getAssociatedTokenAddressSync(this.usdcMint, this.mailerStatePda, true);
747
+ const instructions = [];
748
+ const mailerTokenInfo = await this.connection.getAccountInfo(mailerTokenAccount);
749
+ if (!mailerTokenInfo) {
750
+ instructions.push(createAssociatedTokenAccountInstruction(this.wallet.publicKey, mailerTokenAccount, this.mailerStatePda, this.usdcMint));
751
+ }
752
+ const sendInstruction = new TransactionInstruction({
753
+ keys: [
754
+ { pubkey: this.wallet.publicKey, isSigner: true, isWritable: false },
755
+ { pubkey: recipientClaimPda, isSigner: false, isWritable: true },
756
+ { pubkey: this.mailerStatePda, isSigner: false, isWritable: false },
757
+ { pubkey: senderTokenAccount, isSigner: false, isWritable: true },
758
+ { pubkey: mailerTokenAccount, isSigner: false, isWritable: true },
759
+ { pubkey: TOKEN_PROGRAM_ID, isSigner: false, isWritable: false },
760
+ { pubkey: SystemProgram.programId, isSigner: false, isWritable: false },
761
+ ],
762
+ programId: this.programId,
763
+ data: encodeSendThroughWebhook(recipientKey, webhookId, revenueShareToReceiver, resolveSenderToName),
764
+ });
765
+ instructions.push(sendInstruction);
766
+ const transaction = new Transaction().add(...instructions);
767
+ return this.sendTransaction(transaction);
605
768
  }
606
769
  /**
607
770
  * Pause the contract and distribute owner claimable funds (owner only)
@@ -1 +1 @@
1
- {"version":3,"file":"mailer-client.js","sourceRoot":"","sources":["../../../../src/solana/mailer-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mailer-client.js","sourceRoot":"","sources":["../../../../src/solana/mailer-client.ts"],"names":[],"mappings":"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"}
@@ -308,6 +308,31 @@ export declare class OnchainMailerClient {
308
308
  private emergencyUnpauseSolana;
309
309
  private isPausedSolana;
310
310
  private distributeClaimableFundsSolana;
311
+ /**
312
+ * Set permission for a contract to use your wallet as payer (EVM only)
313
+ * @param contractAddress - Contract address to grant permission to
314
+ * @returns Promise resolving to transaction details
315
+ * @throws {Error} When called on Solana (not supported)
316
+ */
317
+ setPermission(contractAddress: string): Promise<UnifiedTransaction>;
318
+ /**
319
+ * Remove permission for a contract to use your wallet as payer (EVM only)
320
+ * @param contractAddress - Contract address to revoke permission from
321
+ * @returns Promise resolving to transaction details
322
+ * @throws {Error} When called on Solana (not supported)
323
+ */
324
+ removePermission(contractAddress: string): Promise<UnifiedTransaction>;
325
+ /**
326
+ * Check if a contract has permission to use a wallet as payer (EVM only)
327
+ * @param contractAddress - Contract address to check
328
+ * @param wallet - Wallet address to check permission for (defaults to connected wallet)
329
+ * @returns Promise resolving to true if permission exists, false otherwise
330
+ * @throws {Error} When called on Solana (not supported)
331
+ */
332
+ hasPermission(contractAddress: string, wallet?: string): Promise<boolean>;
333
+ private setPermissionEVM;
334
+ private removePermissionEVM;
335
+ private hasPermissionEVM;
311
336
  getChainType(): ChainType;
312
337
  getWalletAddress(): string;
313
338
  }
@@ -1 +1 @@
1
- {"version":3,"file":"onchain-mailer-client.d.ts","sourceRoot":"","sources":["../../../../src/unified/onchain-mailer-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"onchain-mailer-client.d.ts","sourceRoot":"","sources":["../../../../src/unified/onchain-mailer-client.ts"],"names":[],"mappings":"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"}