@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
@@ -1 +1 @@
1
- {"version":3,"file":"mailer-client.d.ts","sourceRoot":"","sources":["../../../../src/evm/mailer-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mailer-client.d.ts","sourceRoot":"","sources":["../../../../src/evm/mailer-client.ts"],"names":[],"mappings":"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"}
@@ -1,153 +1,154 @@
1
- import { getAddress } from "viem";
2
- import { Mailer__factory } from "../../typechain-types/factories/Mailer__factory.js";
3
- // Get ABI from typechain-generated factories
1
+ import { getAddress, } from 'viem';
2
+ import { Mailer__factory } from '../../typechain-types/factories/Mailer__factory.js';
4
3
  const MAILER_ABI = Mailer__factory.abi;
5
- // Get bytecode from typechain-generated factories
6
4
  const MAILER_BYTECODE = Mailer__factory.bytecode;
7
5
  /**
8
- * @class MailerClient
9
- * @description High-level TypeScript client for the Mailer contract using viem
10
- * @notice Provides easy-to-use methods for sending messages with USDC fees and revenue sharing
11
- *
12
- * ## Key Features:
13
- * - **Delegation Management**: Delegate mail handling with rejection capability
14
- * - **Priority Messages**: Full fee (0.1 USDC) with 90% revenue share to recipient
15
- * - **Standard Messages**: 10% fee only (0.01 USDC) with no revenue share
16
- * - **Revenue Claims**: 60-day claim period for priority message revenue shares
17
- *
18
- * ## Usage Examples:
19
- * ```typescript
20
- * // Connect to existing contract
21
- * import { createPublicClient, createWalletClient, http } from 'viem';
22
- * import { mainnet } from 'viem/chains';
23
- *
24
- * const publicClient = createPublicClient({
25
- * chain: mainnet,
26
- * transport: http()
27
- * });
28
- *
29
- * const mailer = new MailerClient('CONTRACT_ADDRESS', publicClient);
30
- *
31
- * // Send message with revenue sharing to recipient
32
- * const walletClient = createWalletClient({
33
- * chain: mainnet,
34
- * transport: http()
35
- * });
36
- *
37
- * await mailer.send('0x...', 'Subject', 'Body', true, walletClient, account);
38
- *
39
- * // Claim your revenue share (as recipient)
40
- * await mailer.claimRecipientShare(walletClient, account);
41
- * ```
6
+ * Normalize any Address-like input (string with checksum or lowercase) to checksum format.
7
+ */
8
+ function normalizeAddress(value) {
9
+ return getAddress(value);
10
+ }
11
+ /**
12
+ * High-level client for interacting with the EVM Mailer contract.
13
+ * Exposes every callable contract function with type-safe wrappers.
42
14
  */
43
15
  export class MailerClient {
44
- /**
45
- * @description Creates a new MailerClient instance
46
- * @param contractAddress The deployed Mailer contract address
47
- * @param publicClient Viem public client for reading blockchain state
48
- */
49
16
  constructor(contractAddress, publicClient) {
50
- this.contractAddress = getAddress(contractAddress);
17
+ this.contractAddress = normalizeAddress(contractAddress);
51
18
  this.publicClient = publicClient;
52
19
  }
53
20
  /**
54
- * @description Deploy a new Mailer contract and return a client instance
55
- * @param walletClient Viem wallet client with deployment permissions
56
- * @param account Account to deploy from
57
- * @param usdcTokenAddress Address of the USDC token contract
58
- * @param ownerAddress Address that will own the deployed contract
59
- * @returns Promise resolving to a MailerClient instance
21
+ * Deploy a fresh Mailer contract instance.
60
22
  */
61
23
  static async deploy(walletClient, publicClient, account, usdcTokenAddress, ownerAddress) {
62
24
  const hash = await walletClient.deployContract({
63
25
  abi: MAILER_ABI,
64
26
  bytecode: MAILER_BYTECODE,
65
- args: [getAddress(usdcTokenAddress), getAddress(ownerAddress)],
27
+ args: [normalizeAddress(usdcTokenAddress), normalizeAddress(ownerAddress)],
66
28
  account,
67
29
  chain: walletClient.chain,
68
30
  });
69
31
  const receipt = await publicClient.waitForTransactionReceipt({ hash });
70
32
  if (!receipt.contractAddress) {
71
- throw new Error("Contract deployment failed");
33
+ throw new Error('Contract deployment failed');
72
34
  }
73
35
  return new MailerClient(receipt.contractAddress, publicClient);
74
36
  }
37
+ getAddress() {
38
+ return this.contractAddress;
39
+ }
75
40
  /**
76
- * @description Send a message with optional revenue sharing
77
- * @notice Two modes:
78
- * - revenueShareToReceiver=true: Sender pays 0.1 USDC, recipient gets 90% claimable
79
- * - revenueShareToReceiver=false: Sender pays 0.01 USDC only
80
- * @param to Recipient address who receives the message and potential revenue share
81
- * @param subject Message subject line
82
- * @param body Message content
83
- * @param revenueShareToReceiver If true, recipient gets 90% revenue share; if false, no revenue share
84
- * @param resolveSenderToName If true, resolve sender address to name via off-chain service
85
- * @param walletClient Viem wallet client for transaction
86
- * @param account Account to send from
87
- * @returns Promise resolving to transaction hash
88
- * @example
89
- * ```typescript
90
- * // Send with revenue share to recipient
91
- * const hash = await mailer.send('0x...', 'Subject', 'Priority message', true, false, walletClient, account);
92
- * // Send standard message (no revenue share)
93
- * const hash2 = await mailer.send('0x...', 'Subject', 'Standard message', false, false, walletClient, account);
94
- * await publicClient.waitForTransactionReceipt({ hash });
95
- * ```
41
+ * Core message send with explicit payer control.
96
42
  */
97
- async send(to, subject, body, revenueShareToReceiver, resolveSenderToName = false, walletClient, account) {
98
- return await walletClient.writeContract({
43
+ async send(to, subject, body, payer, revenueShareToReceiver, resolveSenderToName, walletClient, account) {
44
+ return walletClient.writeContract({
99
45
  address: this.contractAddress,
100
46
  abi: MAILER_ABI,
101
47
  functionName: 'send',
102
- args: [to, subject, body, revenueShareToReceiver, resolveSenderToName],
48
+ args: [
49
+ normalizeAddress(to),
50
+ subject,
51
+ body,
52
+ normalizeAddress(payer),
53
+ revenueShareToReceiver,
54
+ resolveSenderToName,
55
+ ],
103
56
  account,
104
57
  chain: walletClient.chain,
105
58
  });
106
59
  }
107
- /**
108
- * @description Send a message using a pre-prepared mail ID with optional revenue sharing
109
- * @notice Two modes:
110
- * - revenueShareToReceiver=true: Sender pays 0.1 USDC, recipient gets 90% claimable
111
- * - revenueShareToReceiver=false: Sender pays 0.01 USDC only
112
- * @param to Recipient address who receives the message and potential revenue share
113
- * @param mailId Pre-prepared message identifier
114
- * @param revenueShareToReceiver If true, recipient gets 90% revenue share; if false, no revenue share
115
- * @param resolveSenderToName If true, resolve sender address to name via off-chain service
116
- * @param walletClient Viem wallet client for transaction
117
- * @param account Account to send from
118
- * @returns Promise resolving to transaction hash
119
- */
120
- async sendPrepared(to, mailId, revenueShareToReceiver, resolveSenderToName = false, walletClient, account) {
121
- return await walletClient.writeContract({
60
+ async sendPrepared(to, mailId, payer, revenueShareToReceiver, resolveSenderToName, walletClient, account) {
61
+ return walletClient.writeContract({
122
62
  address: this.contractAddress,
123
63
  abi: MAILER_ABI,
124
64
  functionName: 'sendPrepared',
125
- args: [to, mailId, revenueShareToReceiver, resolveSenderToName],
65
+ args: [
66
+ normalizeAddress(to),
67
+ mailId,
68
+ normalizeAddress(payer),
69
+ revenueShareToReceiver,
70
+ resolveSenderToName,
71
+ ],
72
+ account,
73
+ chain: walletClient.chain,
74
+ });
75
+ }
76
+ async sendThroughWebhook(to, webhookId, payer, revenueShareToReceiver, resolveSenderToName, walletClient, account) {
77
+ return walletClient.writeContract({
78
+ address: this.contractAddress,
79
+ abi: MAILER_ABI,
80
+ functionName: 'sendThroughWebhook',
81
+ args: [
82
+ normalizeAddress(to),
83
+ webhookId,
84
+ normalizeAddress(payer),
85
+ revenueShareToReceiver,
86
+ resolveSenderToName,
87
+ ],
88
+ account,
89
+ chain: walletClient.chain,
90
+ });
91
+ }
92
+ async sendToEmailAddress(toEmail, subject, body, payer, walletClient, account) {
93
+ return walletClient.writeContract({
94
+ address: this.contractAddress,
95
+ abi: MAILER_ABI,
96
+ functionName: 'sendToEmailAddress',
97
+ args: [toEmail, subject, body, normalizeAddress(payer)],
98
+ account,
99
+ chain: walletClient.chain,
100
+ });
101
+ }
102
+ async sendPreparedToEmailAddress(toEmail, mailId, payer, walletClient, account) {
103
+ return walletClient.writeContract({
104
+ address: this.contractAddress,
105
+ abi: MAILER_ABI,
106
+ functionName: 'sendPreparedToEmailAddress',
107
+ args: [toEmail, mailId, normalizeAddress(payer)],
126
108
  account,
127
109
  chain: walletClient.chain,
128
110
  });
129
111
  }
112
+ async getFee() {
113
+ return (await this.publicClient.readContract({
114
+ address: this.contractAddress,
115
+ abi: MAILER_ABI,
116
+ functionName: 'getFee',
117
+ }));
118
+ }
130
119
  async getSendFee() {
131
- return await this.publicClient.readContract({
120
+ return (await this.publicClient.readContract({
132
121
  address: this.contractAddress,
133
122
  abi: MAILER_ABI,
134
123
  functionName: 'sendFee',
135
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
124
+ }));
125
+ }
126
+ async setFee(newFee, walletClient, account) {
127
+ return walletClient.writeContract({
128
+ address: this.contractAddress,
129
+ abi: MAILER_ABI,
130
+ functionName: 'setFee',
131
+ args: [newFee],
132
+ account,
133
+ chain: walletClient.chain,
136
134
  });
137
135
  }
138
136
  async getUsdcToken() {
139
- return await this.publicClient.readContract({
137
+ return (await this.publicClient.readContract({
140
138
  address: this.contractAddress,
141
139
  abi: MAILER_ABI,
142
140
  functionName: 'usdcToken',
143
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
144
- });
141
+ }));
145
142
  }
146
- getAddress() {
147
- return this.contractAddress;
143
+ async getOwner() {
144
+ return (await this.publicClient.readContract({
145
+ address: this.contractAddress,
146
+ abi: MAILER_ABI,
147
+ functionName: 'owner',
148
+ }));
148
149
  }
149
150
  async claimRecipientShare(walletClient, account) {
150
- return await walletClient.writeContract({
151
+ return walletClient.writeContract({
151
152
  address: this.contractAddress,
152
153
  abi: MAILER_ABI,
153
154
  functionName: 'claimRecipientShare',
@@ -156,7 +157,7 @@ export class MailerClient {
156
157
  });
157
158
  }
158
159
  async claimOwnerShare(walletClient, account) {
159
- return await walletClient.writeContract({
160
+ return walletClient.writeContract({
160
161
  address: this.contractAddress,
161
162
  abi: MAILER_ABI,
162
163
  functionName: 'claimOwnerShare',
@@ -165,93 +166,60 @@ export class MailerClient {
165
166
  });
166
167
  }
167
168
  async claimExpiredShares(recipient, walletClient, account) {
168
- return await walletClient.writeContract({
169
+ return walletClient.writeContract({
169
170
  address: this.contractAddress,
170
171
  abi: MAILER_ABI,
171
172
  functionName: 'claimExpiredShares',
172
- args: [getAddress(recipient)],
173
+ args: [normalizeAddress(recipient)],
173
174
  account,
174
175
  chain: walletClient.chain,
175
176
  });
176
177
  }
177
178
  async getRecipientClaimable(recipient) {
178
- const result = await this.publicClient.readContract({
179
+ const [amount, expiresAt, isExpired] = (await this.publicClient.readContract({
179
180
  address: this.contractAddress,
180
181
  abi: MAILER_ABI,
181
182
  functionName: 'getRecipientClaimable',
182
- args: [getAddress(recipient)],
183
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
184
- });
185
- return {
186
- amount: result[0],
187
- expiresAt: result[1],
188
- isExpired: result[2]
189
- };
183
+ args: [normalizeAddress(recipient)],
184
+ }));
185
+ return { amount, expiresAt, isExpired };
190
186
  }
191
187
  async getOwnerClaimable() {
192
- return await this.publicClient.readContract({
188
+ return (await this.publicClient.readContract({
193
189
  address: this.contractAddress,
194
190
  abi: MAILER_ABI,
195
- functionName: 'getOwnerClaimable'
196
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
197
- });
191
+ functionName: 'getOwnerClaimable',
192
+ }));
198
193
  }
199
- // Delegation functionality
200
- /**
201
- * Delegate mail handling to another address
202
- * @param delegate Address to delegate to (or 0x0 to clear delegation)
203
- * @param walletClient Connected wallet client
204
- * @param account Account to send transaction from
205
- * @returns Transaction hash
206
- */
207
194
  async delegateTo(delegate, walletClient, account) {
208
- return await walletClient.writeContract({
195
+ return walletClient.writeContract({
209
196
  address: this.contractAddress,
210
197
  abi: MAILER_ABI,
211
198
  functionName: 'delegateTo',
212
- args: [getAddress(delegate)],
199
+ args: [normalizeAddress(delegate)],
213
200
  account,
214
201
  chain: walletClient.chain,
215
202
  });
216
203
  }
217
- /**
218
- * Reject a delegation made to you by another address
219
- * @param delegatingAddress Address that delegated to you
220
- * @param walletClient Connected wallet client
221
- * @param account Account to send transaction from
222
- * @returns Transaction hash
223
- */
224
204
  async rejectDelegation(delegatingAddress, walletClient, account) {
225
- return await walletClient.writeContract({
205
+ return walletClient.writeContract({
226
206
  address: this.contractAddress,
227
207
  abi: MAILER_ABI,
228
208
  functionName: 'rejectDelegation',
229
- args: [getAddress(delegatingAddress)],
209
+ args: [normalizeAddress(delegatingAddress)],
230
210
  account,
231
211
  chain: walletClient.chain,
232
212
  });
233
213
  }
234
- /**
235
- * Get current delegation fee in USDC (6 decimals)
236
- * @returns Delegation fee amount
237
- */
238
214
  async getDelegationFee() {
239
- return await this.publicClient.readContract({
215
+ return (await this.publicClient.readContract({
240
216
  address: this.contractAddress,
241
217
  abi: MAILER_ABI,
242
218
  functionName: 'getDelegationFee',
243
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
244
- });
219
+ }));
245
220
  }
246
- /**
247
- * Update delegation fee (owner only)
248
- * @param newFee New fee amount in USDC (6 decimals)
249
- * @param walletClient Connected wallet client
250
- * @param account Account to send transaction from
251
- * @returns Transaction hash
252
- */
253
221
  async setDelegationFee(newFee, walletClient, account) {
254
- return await walletClient.writeContract({
222
+ return walletClient.writeContract({
255
223
  address: this.contractAddress,
256
224
  abi: MAILER_ABI,
257
225
  functionName: 'setDelegationFee',
@@ -260,88 +228,75 @@ export class MailerClient {
260
228
  chain: walletClient.chain,
261
229
  });
262
230
  }
263
- /**
264
- * @description Send a message to an email address (no wallet known)
265
- * @notice Charges only 10% owner fee since recipient wallet is unknown
266
- * @param toEmail Email address of the recipient
267
- * @param subject Message subject line
268
- * @param body Message content
269
- * @param walletClient Viem wallet client for transaction
270
- * @param account Account to send from
271
- * @returns Promise resolving to transaction hash
272
- * @example
273
- * ```typescript
274
- * // Send to email address
275
- * const hash = await mailer.sendToEmailAddress('user@example.com', 'Subject', 'Body', walletClient, account);
276
- * await publicClient.waitForTransactionReceipt({ hash });
277
- * ```
278
- */
279
- async sendToEmailAddress(toEmail, subject, body, walletClient, account) {
280
- return await walletClient.writeContract({
231
+ async setCustomFeePercentage(target, percentage, walletClient, account) {
232
+ return walletClient.writeContract({
281
233
  address: this.contractAddress,
282
234
  abi: MAILER_ABI,
283
- functionName: 'sendToEmailAddress',
284
- args: [toEmail, subject, body],
235
+ functionName: 'setCustomFeePercentage',
236
+ args: [normalizeAddress(target), BigInt(percentage)],
285
237
  account,
286
238
  chain: walletClient.chain,
287
239
  });
288
240
  }
289
- /**
290
- * @description Send a pre-prepared message to an email address (no wallet known)
291
- * @notice Charges only 10% owner fee since recipient wallet is unknown
292
- * @param toEmail Email address of the recipient
293
- * @param mailId Pre-prepared message identifier
294
- * @param walletClient Viem wallet client for transaction
295
- * @param account Account to send from
296
- * @returns Promise resolving to transaction hash
297
- */
298
- async sendPreparedToEmailAddress(toEmail, mailId, walletClient, account) {
299
- return await walletClient.writeContract({
241
+ async clearCustomFeePercentage(target, walletClient, account) {
242
+ return walletClient.writeContract({
300
243
  address: this.contractAddress,
301
244
  abi: MAILER_ABI,
302
- functionName: 'sendPreparedToEmailAddress',
303
- args: [toEmail, mailId],
245
+ functionName: 'clearCustomFeePercentage',
246
+ args: [normalizeAddress(target)],
304
247
  account,
305
248
  chain: walletClient.chain,
306
249
  });
307
250
  }
308
- /**
309
- * Set the send fee (owner only)
310
- * @param newFee New fee amount in USDC (6 decimals)
311
- * @param walletClient Viem wallet client for transaction
312
- * @param account Account to send from (must be owner)
313
- * @returns Promise resolving to transaction hash
314
- */
315
- async setFee(newFee, walletClient, account) {
316
- return await walletClient.writeContract({
251
+ async getCustomFeePercentage(target) {
252
+ const percentage = (await this.publicClient.readContract({
317
253
  address: this.contractAddress,
318
254
  abi: MAILER_ABI,
319
- functionName: 'setFee',
320
- args: [newFee],
255
+ functionName: 'getCustomFeePercentage',
256
+ args: [normalizeAddress(target)],
257
+ }));
258
+ return Number(percentage);
259
+ }
260
+ async getCustomFeeDiscount(target) {
261
+ const discount = (await this.publicClient.readContract({
262
+ address: this.contractAddress,
263
+ abi: MAILER_ABI,
264
+ functionName: 'customFeeDiscount',
265
+ args: [normalizeAddress(target)],
266
+ }));
267
+ return Number(discount);
268
+ }
269
+ async setPermission(contractAddress, walletClient, account) {
270
+ return walletClient.writeContract({
271
+ address: this.contractAddress,
272
+ abi: MAILER_ABI,
273
+ functionName: 'setPermission',
274
+ args: [normalizeAddress(contractAddress)],
321
275
  account,
322
276
  chain: walletClient.chain,
323
277
  });
324
278
  }
325
- /**
326
- * Get the current send fee
327
- * @returns Current send fee in USDC (6 decimals)
328
- */
329
- async getFee() {
330
- return await this.publicClient.readContract({
279
+ async removePermission(contractAddress, walletClient, account) {
280
+ return walletClient.writeContract({
331
281
  address: this.contractAddress,
332
282
  abi: MAILER_ABI,
333
- functionName: 'getFee',
334
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
283
+ functionName: 'removePermission',
284
+ args: [normalizeAddress(contractAddress)],
285
+ account,
286
+ chain: walletClient.chain,
335
287
  });
336
288
  }
337
- /**
338
- * Pause the contract and distribute all claimable funds (owner only)
339
- * @param walletClient Viem wallet client for transaction
340
- * @param account Account to send from (must be owner)
341
- * @returns Promise resolving to transaction hash
342
- */
289
+ async hasPermission(contractAddress, wallet) {
290
+ const permitted = (await this.publicClient.readContract({
291
+ address: this.contractAddress,
292
+ abi: MAILER_ABI,
293
+ functionName: 'permissions',
294
+ args: [normalizeAddress(contractAddress), normalizeAddress(wallet)],
295
+ }));
296
+ return permitted;
297
+ }
343
298
  async pause(walletClient, account) {
344
- return await walletClient.writeContract({
299
+ return walletClient.writeContract({
345
300
  address: this.contractAddress,
346
301
  abi: MAILER_ABI,
347
302
  functionName: 'pause',
@@ -349,14 +304,8 @@ export class MailerClient {
349
304
  chain: walletClient.chain,
350
305
  });
351
306
  }
352
- /**
353
- * Unpause the contract (owner only)
354
- * @param walletClient Viem wallet client for transaction
355
- * @param account Account to send from (must be owner)
356
- * @returns Promise resolving to transaction hash
357
- */
358
307
  async unpause(walletClient, account) {
359
- return await walletClient.writeContract({
308
+ return walletClient.writeContract({
360
309
  address: this.contractAddress,
361
310
  abi: MAILER_ABI,
362
311
  functionName: 'unpause',
@@ -364,14 +313,8 @@ export class MailerClient {
364
313
  chain: walletClient.chain,
365
314
  });
366
315
  }
367
- /**
368
- * Emergency unpause without fund distribution (owner only)
369
- * @param walletClient Viem wallet client for transaction
370
- * @param account Account to send from (must be owner)
371
- * @returns Promise resolving to transaction hash
372
- */
373
316
  async emergencyUnpause(walletClient, account) {
374
- return await walletClient.writeContract({
317
+ return walletClient.writeContract({
375
318
  address: this.contractAddress,
376
319
  abi: MAILER_ABI,
377
320
  functionName: 'emergencyUnpause',
@@ -379,35 +322,24 @@ export class MailerClient {
379
322
  chain: walletClient.chain,
380
323
  });
381
324
  }
382
- /**
383
- * Check if contract is currently paused
384
- * @returns True if contract is paused, false otherwise
385
- */
386
325
  async isPaused() {
387
- return await this.publicClient.readContract({
326
+ return (await this.publicClient.readContract({
388
327
  address: this.contractAddress,
389
328
  abi: MAILER_ABI,
390
329
  functionName: 'isPaused',
391
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
392
- });
330
+ }));
393
331
  }
394
- /**
395
- * Distribute a specific recipient's claimable funds during pause
396
- * Anyone can call this function when contract is paused
397
- * @param recipient Address to distribute funds for
398
- * @param walletClient Viem wallet client for transaction
399
- * @param account Account to send from
400
- * @returns Promise resolving to transaction hash
401
- */
402
332
  async distributeClaimableFunds(recipient, walletClient, account) {
403
- return await walletClient.writeContract({
333
+ return walletClient.writeContract({
404
334
  address: this.contractAddress,
405
335
  abi: MAILER_ABI,
406
336
  functionName: 'distributeClaimableFunds',
407
- args: [getAddress(recipient)],
337
+ args: [normalizeAddress(recipient)],
408
338
  account,
409
339
  chain: walletClient.chain,
410
340
  });
411
341
  }
412
342
  }
343
+ MailerClient.abi = MAILER_ABI;
344
+ MailerClient.bytecode = MAILER_BYTECODE;
413
345
  //# sourceMappingURL=mailer-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mailer-client.js","sourceRoot":"","sources":["../../../../src/evm/mailer-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mailer-client.js","sourceRoot":"","sources":["../../../../src/evm/mailer-client.ts"],"names":[],"mappings":"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"}