@atxp/polygon 0.8.0 → 0.8.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.
- package/README.md +32 -140
- package/dist/directWalletPaymentMaker.d.ts.map +1 -1
- package/dist/directWalletPaymentMaker.js +4 -1
- package/dist/directWalletPaymentMaker.js.map +1 -1
- package/dist/index.cjs +4 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/package.json +5 -3
- package/dist/cache.d.ts +0 -19
- package/dist/cache.d.ts.map +0 -1
- package/dist/cache.js +0 -11
- package/dist/cache.js.map +0 -1
- package/dist/smartWalletHelpers.d.ts +0 -18
- package/dist/smartWalletHelpers.d.ts.map +0 -1
- package/dist/smartWalletHelpers.js +0 -93
- package/dist/smartWalletHelpers.js.map +0 -1
- package/dist/smartWalletPaymentMaker.d.ts +0 -29
- package/dist/smartWalletPaymentMaker.d.ts.map +0 -1
- package/dist/smartWalletPaymentMaker.js +0 -172
- package/dist/smartWalletPaymentMaker.js.map +0 -1
- package/dist/spendPermissionShim.d.ts +0 -19
- package/dist/spendPermissionShim.d.ts.map +0 -1
- package/dist/spendPermissionShim.js +0 -129
- package/dist/spendPermissionShim.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
# @atxp/polygon
|
|
2
2
|
|
|
3
|
-
ATXP for Polygon - Enable seamless payments in Polygon applications with
|
|
3
|
+
ATXP for Polygon - Enable seamless payments in Polygon applications with direct wallet support.
|
|
4
4
|
|
|
5
5
|
## Overview
|
|
6
6
|
|
|
7
|
-
`@atxp/polygon` provides a complete solution for integrating ATXP (Autonomous Transaction eXecution Protocol) payments into Polygon applications. It handles Polygon-specific wallet interactions
|
|
7
|
+
`@atxp/polygon` provides a complete solution for integrating ATXP (Autonomous Transaction eXecution Protocol) payments into Polygon applications. It handles Polygon-specific wallet interactions and USDC transfers while abstracting away the complexity of blockchain transactions.
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
**Note:** Smart Wallet mode is not supported on Polygon. Coinbase CDP does not provide Paymaster services for Polygon mainnet, which means gasless transactions via account abstraction are not available. All transactions require users to sign with their wallet and pay gas fees in POL.
|
|
10
|
+
|
|
11
|
+
The package supports two account types:
|
|
10
12
|
|
|
11
13
|
### Browser-Based Accounts (`PolygonBrowserAccount`)
|
|
12
|
-
- **
|
|
13
|
-
- **Direct Wallet Mode** (`DirectWalletPaymentMaker`): Direct wallet integration where users sign each transaction
|
|
14
|
+
- **Direct Wallet Mode** (`DirectWalletPaymentMaker`): Direct wallet integration where users sign each transaction and pay gas fees in POL
|
|
14
15
|
|
|
15
16
|
### Server/CLI Accounts (`PolygonServerAccount`)
|
|
16
17
|
- **Server Mode** (`ServerPaymentMaker`): For backend services and CLI tools using private keys directly
|
|
@@ -37,20 +38,12 @@ npm install viem
|
|
|
37
38
|
|
|
38
39
|
### Browser Usage
|
|
39
40
|
|
|
40
|
-
#### Option 1: Smart Wallet Mode (Recommended - Best UX)
|
|
41
|
-
|
|
42
41
|
```typescript
|
|
43
42
|
import { PolygonBrowserAccount } from '@atxp/polygon';
|
|
44
43
|
|
|
45
44
|
const account = await PolygonBrowserAccount.initialize({
|
|
46
45
|
provider: window.ethereum, // or any EIP-1193 provider
|
|
47
46
|
walletAddress: '0x1234...', // User's wallet address
|
|
48
|
-
useEphemeralWallet: true, // Smart wallet with gasless transactions
|
|
49
|
-
|
|
50
|
-
// Spend permission parameters
|
|
51
|
-
allowance: BigInt('10000000'), // 10 USDC (in 6 decimals)
|
|
52
|
-
periodInDays: 30, // Permission valid for 30 days
|
|
53
|
-
periodStart: Math.floor(Date.now() / 1000), // Start time in seconds
|
|
54
47
|
|
|
55
48
|
// Optional configuration
|
|
56
49
|
customRpcUrl: 'https://polygon-rpc.com', // Custom RPC endpoint
|
|
@@ -58,21 +51,6 @@ const account = await PolygonBrowserAccount.initialize({
|
|
|
58
51
|
});
|
|
59
52
|
```
|
|
60
53
|
|
|
61
|
-
#### Option 2: Direct Wallet Mode
|
|
62
|
-
|
|
63
|
-
```typescript
|
|
64
|
-
import { PolygonBrowserAccount } from '@atxp/polygon';
|
|
65
|
-
|
|
66
|
-
const account = await PolygonBrowserAccount.initialize({
|
|
67
|
-
provider: window.ethereum,
|
|
68
|
-
walletAddress: '0x1234...',
|
|
69
|
-
useEphemeralWallet: false, // User signs each transaction
|
|
70
|
-
allowance: BigInt('10000000'),
|
|
71
|
-
periodInDays: 30,
|
|
72
|
-
periodStart: Math.floor(Date.now() / 1000)
|
|
73
|
-
});
|
|
74
|
-
```
|
|
75
|
-
|
|
76
54
|
### Server/CLI Usage
|
|
77
55
|
|
|
78
56
|
```typescript
|
|
@@ -127,11 +105,7 @@ export const AtxpProvider = ({ children }) => {
|
|
|
127
105
|
const loadAccount = useCallback(async (walletAddress: string) => {
|
|
128
106
|
const account = await PolygonBrowserAccount.initialize({
|
|
129
107
|
provider: window.ethereum,
|
|
130
|
-
walletAddress
|
|
131
|
-
useEphemeralWallet: true,
|
|
132
|
-
allowance: BigInt('10000000'), // 10 USDC
|
|
133
|
-
periodInDays: 30,
|
|
134
|
-
periodStart: Math.floor(Date.now() / 1000)
|
|
108
|
+
walletAddress
|
|
135
109
|
});
|
|
136
110
|
setAtxpAccount(account);
|
|
137
111
|
|
|
@@ -175,20 +149,18 @@ export const AtxpProvider = ({ children }) => {
|
|
|
175
149
|
|
|
176
150
|
### `PolygonBrowserAccount.initialize(options)`
|
|
177
151
|
|
|
178
|
-
Creates and initializes a browser-based Polygon account with
|
|
152
|
+
Creates and initializes a browser-based Polygon account with direct wallet support.
|
|
179
153
|
|
|
180
154
|
#### Parameters
|
|
181
155
|
|
|
182
156
|
- `provider: Eip1193Provider` - EIP-1193 compatible provider (e.g., window.ethereum)
|
|
183
157
|
- `walletAddress: string` - The user's wallet address
|
|
184
|
-
- `useEphemeralWallet?: boolean` - Whether to use smart wallet (true) or direct wallet (false). Default: true
|
|
185
|
-
- `allowance: bigint` - Maximum USDC amount that can be spent (in 6 decimals)
|
|
186
|
-
- `periodInDays: number` - Permission validity period in days
|
|
187
|
-
- `periodStart: number` - Permission start time in Unix seconds
|
|
188
158
|
- `customRpcUrl?: string` - Optional custom RPC URL (defaults to public Polygon RPC)
|
|
189
159
|
- `chainId?: number` - Chain ID (137 for mainnet, 80002 for Amoy testnet)
|
|
190
160
|
- `logger?: Logger` - Optional logger for debugging
|
|
191
161
|
|
|
162
|
+
**Deprecated parameters:** `useEphemeralWallet`, `allowance`, `periodInDays`, `periodStart`, and `coinbaseCdpApiKey` are no longer supported as Smart Wallet mode is not available on Polygon.
|
|
163
|
+
|
|
192
164
|
#### Returns
|
|
193
165
|
|
|
194
166
|
`Promise<PolygonBrowserAccount>` - Initialized browser Polygon account
|
|
@@ -226,22 +198,8 @@ Browser-based account class that handles Polygon wallet interactions.
|
|
|
226
198
|
#### Key Features
|
|
227
199
|
|
|
228
200
|
- **USDC Transfers**: Handles native USDC transfers on Polygon (0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359)
|
|
229
|
-
- **Message Signing**: Signs JWTs using
|
|
230
|
-
- **
|
|
231
|
-
- **Spend Permissions**: Manages recurring payment permissions with ERC-20 approvals
|
|
232
|
-
- **Automatic Deployment**: Deploys smart wallet before first use (smart wallet mode only)
|
|
233
|
-
|
|
234
|
-
### `SmartWalletPaymentMaker`
|
|
235
|
-
|
|
236
|
-
Browser-based payment maker using ephemeral smart wallets with account abstraction.
|
|
237
|
-
|
|
238
|
-
#### Features
|
|
239
|
-
|
|
240
|
-
- Gasless transactions via Coinbase CDP bundler
|
|
241
|
-
- Batched transaction support
|
|
242
|
-
- Automatic memo appending to transfers
|
|
243
|
-
- User operation handling
|
|
244
|
-
- **Best for**: Production browser apps (best UX)
|
|
201
|
+
- **Message Signing**: Signs JWTs using standard Ethereum message signing with special handling for Coinbase Wallet
|
|
202
|
+
- **Transaction Confirmation**: Tracks and confirms transaction status on-chain
|
|
245
203
|
|
|
246
204
|
### `DirectWalletPaymentMaker`
|
|
247
205
|
|
|
@@ -253,7 +211,8 @@ Browser-based payment maker for direct wallet signing.
|
|
|
253
211
|
- Support for Coinbase Wallet and standard wallets
|
|
254
212
|
- Transaction confirmation tracking
|
|
255
213
|
- Flexible message signing for different wallet providers
|
|
256
|
-
-
|
|
214
|
+
- Users pay gas fees in POL
|
|
215
|
+
- **Best for**: All Polygon browser applications
|
|
257
216
|
|
|
258
217
|
### `ServerPaymentMaker`
|
|
259
218
|
|
|
@@ -267,24 +226,6 @@ Server-side payment maker using direct private key signing.
|
|
|
267
226
|
- Transaction confirmation
|
|
268
227
|
- **Best for**: Backend services, CLI tools, testing
|
|
269
228
|
|
|
270
|
-
### Caching System
|
|
271
|
-
|
|
272
|
-
```typescript
|
|
273
|
-
import { IntermediaryCache } from '@atxp/polygon';
|
|
274
|
-
|
|
275
|
-
// Browser-based cache for persistent permission storage
|
|
276
|
-
const cache = new IntermediaryCache();
|
|
277
|
-
|
|
278
|
-
// Store permission
|
|
279
|
-
await cache.set('cache-key', {
|
|
280
|
-
privateKey: '0x...',
|
|
281
|
-
permission: { /* spend permission data */ }
|
|
282
|
-
});
|
|
283
|
-
|
|
284
|
-
// Retrieve permission
|
|
285
|
-
const intermediary = await cache.get('cache-key');
|
|
286
|
-
```
|
|
287
|
-
|
|
288
229
|
## Configuration
|
|
289
230
|
|
|
290
231
|
### Default Configuration
|
|
@@ -294,44 +235,13 @@ The package comes with sensible defaults:
|
|
|
294
235
|
- **Chain**: Polygon Mainnet (Chain ID: 137)
|
|
295
236
|
- **RPC**: Public Polygon RPC endpoint (https://polygon-rpc.com)
|
|
296
237
|
- **USDC Address**: Native USDC on Polygon (0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359)
|
|
297
|
-
- **Bundler**: Coinbase CDP Polygon bundler
|
|
298
|
-
- **Paymaster**: Coinbase CDP paymaster (gasless transactions)
|
|
299
|
-
|
|
300
|
-
### Smart Wallet Mode (Browser - Default, Recommended)
|
|
301
|
-
|
|
302
|
-
```typescript
|
|
303
|
-
const account = await PolygonBrowserAccount.initialize({
|
|
304
|
-
provider: window.ethereum,
|
|
305
|
-
walletAddress: '0x1234...',
|
|
306
|
-
useEphemeralWallet: true, // default - uses SmartWalletPaymentMaker
|
|
307
|
-
allowance: BigInt('10000000'),
|
|
308
|
-
periodInDays: 30,
|
|
309
|
-
periodStart: Math.floor(Date.now() / 1000)
|
|
310
|
-
});
|
|
311
|
-
```
|
|
312
|
-
|
|
313
|
-
**How it works:**
|
|
314
|
-
1. Creates a new ephemeral smart wallet using Coinbase CDP
|
|
315
|
-
2. Requests ERC-20 approval for the smart wallet to spend USDC
|
|
316
|
-
3. Deploys the smart wallet on first use
|
|
317
|
-
4. Stores permission and wallet in cache for subsequent use
|
|
318
|
-
5. All transactions are gasless via Coinbase paymaster
|
|
319
|
-
|
|
320
|
-
**Benefits:**
|
|
321
|
-
- Single approval for multiple transactions
|
|
322
|
-
- Gasless transactions (no native POL needed)
|
|
323
|
-
- Improved UX with minimal user prompts
|
|
324
238
|
|
|
325
239
|
### Direct Wallet Mode (Browser)
|
|
326
240
|
|
|
327
241
|
```typescript
|
|
328
242
|
const account = await PolygonBrowserAccount.initialize({
|
|
329
243
|
provider: window.ethereum,
|
|
330
|
-
walletAddress: '0x1234...'
|
|
331
|
-
useEphemeralWallet: false, // uses DirectWalletPaymentMaker
|
|
332
|
-
allowance: BigInt('10000000'),
|
|
333
|
-
periodInDays: 30,
|
|
334
|
-
periodStart: Math.floor(Date.now() / 1000)
|
|
244
|
+
walletAddress: '0x1234...'
|
|
335
245
|
});
|
|
336
246
|
```
|
|
337
247
|
|
|
@@ -341,10 +251,7 @@ const account = await PolygonBrowserAccount.initialize({
|
|
|
341
251
|
3. Direct USDC transfers from user's wallet
|
|
342
252
|
4. User pays gas fees in POL
|
|
343
253
|
|
|
344
|
-
|
|
345
|
-
- Users want full control over each transaction
|
|
346
|
-
- Development/testing environments
|
|
347
|
-
- Compatibility with wallets that don't support smart contracts
|
|
254
|
+
This is the only supported mode for Polygon browser applications.
|
|
348
255
|
|
|
349
256
|
### Server/CLI Mode
|
|
350
257
|
|
|
@@ -378,11 +285,7 @@ const account = new PolygonServerAccount(
|
|
|
378
285
|
const account = await PolygonBrowserAccount.initialize({
|
|
379
286
|
provider: window.ethereum,
|
|
380
287
|
walletAddress: '0x1234...',
|
|
381
|
-
customRpcUrl: 'https://your-polygon-rpc.com'
|
|
382
|
-
useEphemeralWallet: true,
|
|
383
|
-
allowance: BigInt('10000000'),
|
|
384
|
-
periodInDays: 30,
|
|
385
|
-
periodStart: Math.floor(Date.now() / 1000)
|
|
288
|
+
customRpcUrl: 'https://your-polygon-rpc.com'
|
|
386
289
|
});
|
|
387
290
|
```
|
|
388
291
|
|
|
@@ -432,22 +335,18 @@ const client = await atxpClient({
|
|
|
432
335
|
});
|
|
433
336
|
```
|
|
434
337
|
|
|
435
|
-
###
|
|
338
|
+
### Wallet Connection Errors
|
|
436
339
|
|
|
437
340
|
```typescript
|
|
438
341
|
try {
|
|
439
|
-
const account = await
|
|
342
|
+
const account = await PolygonBrowserAccount.initialize({
|
|
440
343
|
provider: window.ethereum,
|
|
441
|
-
walletAddress: '0x1234...'
|
|
442
|
-
useEphemeralWallet: true,
|
|
443
|
-
allowance: BigInt('10000000'),
|
|
444
|
-
periodInDays: 30,
|
|
445
|
-
periodStart: Math.floor(Date.now() / 1000)
|
|
344
|
+
walletAddress: '0x1234...'
|
|
446
345
|
});
|
|
447
346
|
} catch (error) {
|
|
448
347
|
if (error.message.includes('User rejected')) {
|
|
449
|
-
// User rejected the
|
|
450
|
-
console.log('Please
|
|
348
|
+
// User rejected the wallet connection
|
|
349
|
+
console.log('Please connect your wallet to continue');
|
|
451
350
|
}
|
|
452
351
|
}
|
|
453
352
|
```
|
|
@@ -463,7 +362,7 @@ try {
|
|
|
463
362
|
- Modern browser environment
|
|
464
363
|
- EIP-1193 compatible wallet provider (e.g., MetaMask, Coinbase Wallet, WalletConnect)
|
|
465
364
|
- USDC balance on Polygon
|
|
466
|
-
- POL balance for gas fees
|
|
365
|
+
- POL balance for gas fees
|
|
467
366
|
|
|
468
367
|
### Server/CLI Usage
|
|
469
368
|
- Node.js 16+
|
|
@@ -471,27 +370,20 @@ try {
|
|
|
471
370
|
|
|
472
371
|
## Technical Details
|
|
473
372
|
|
|
474
|
-
### Smart Wallet Architecture
|
|
475
|
-
|
|
476
|
-
The ephemeral wallet implementation uses:
|
|
477
|
-
- **Coinbase CDP SDK** for smart wallet creation and management
|
|
478
|
-
- **ERC-4337 Account Abstraction** for gasless transactions
|
|
479
|
-
- **Coinbase Bundler** for user operation submission
|
|
480
|
-
- **Coinbase Paymaster** for gas sponsorship
|
|
481
|
-
|
|
482
|
-
### Spend Permission System
|
|
483
|
-
|
|
484
|
-
Instead of native spend permissions (which Polygon doesn't support), this package uses:
|
|
485
|
-
- **ERC-20 Approve/TransferFrom** pattern for permission management
|
|
486
|
-
- **Approval caching** to avoid repeated approval requests
|
|
487
|
-
- **Permission parameters** stored in cache for validation
|
|
488
|
-
|
|
489
373
|
### Authentication
|
|
490
374
|
|
|
491
|
-
- **Smart Wallet Mode** (`SmartWalletPaymentMaker`): Uses EIP-1271 smart contract signature verification
|
|
492
375
|
- **Direct Wallet Mode** (`DirectWalletPaymentMaker`): Uses standard Ethereum message signing with special handling for Coinbase Wallet
|
|
493
376
|
- **Server Mode** (`ServerPaymentMaker`): Uses ES256K JWT with direct private key signing
|
|
494
377
|
|
|
378
|
+
### Why No Smart Wallet Support?
|
|
379
|
+
|
|
380
|
+
Coinbase CDP does not provide Paymaster services for Polygon mainnet, which means:
|
|
381
|
+
- Gasless transactions via account abstraction are not available
|
|
382
|
+
- ERC-4337 smart wallet operations would require users to pay gas fees
|
|
383
|
+
- This eliminates the primary benefit of using smart wallets
|
|
384
|
+
|
|
385
|
+
For the best user experience on Polygon, use Direct Wallet mode where users sign transactions directly with their wallet.
|
|
386
|
+
|
|
495
387
|
## License
|
|
496
388
|
|
|
497
389
|
See the main ATXP SDK repository for license information.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directWalletPaymentMaker.d.ts","sourceRoot":"","sources":["../src/directWalletPaymentMaker.ts"],"names":[],"mappings":"AAGA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAiB,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAQxH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,CAAC,MAAM,EAAE;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;KAChB,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;CACpB,CAAC;AAEF;;;;GAIG;AACH,qBAAa,wBAAyB,YAAW,YAAY;IAMzD,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,QAAQ;IANlB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAS;gBAGlB,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,kBAAkB,EACpC,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,GAAE,MAAmB;IAO9B,gBAAgB,CAAC,OAAO,EAAE;QAAC,MAAM,EAAE,SAAS,CAAC;QAAC,QAAQ,EAAE,QAAQ,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,GAAG,MAAM;IAIpG,WAAW,CAAC,OAAO,EAAE;QACzB,gBAAgB,EAAE,MAAM,CAAC;QACzB,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;KAC9B,GAAG,OAAO,CAAC,MAAM,CAAC;IAoCb,WAAW,CACf,YAAY,EAAE,WAAW,EAAE,EAC3B,KAAK,EAAE,MAAM,EACb,iBAAiB,CAAC,EAAE,MAAM,GACzB,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"directWalletPaymentMaker.d.ts","sourceRoot":"","sources":["../src/directWalletPaymentMaker.ts"],"names":[],"mappings":"AAGA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAiB,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAQxH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,CAAC,MAAM,EAAE;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;KAChB,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;CACpB,CAAC;AAEF;;;;GAIG;AACH,qBAAa,wBAAyB,YAAW,YAAY;IAMzD,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,QAAQ;IANlB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAS;gBAGlB,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,kBAAkB,EACpC,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,GAAE,MAAmB;IAO9B,gBAAgB,CAAC,OAAO,EAAE;QAAC,MAAM,EAAE,SAAS,CAAC;QAAC,QAAQ,EAAE,QAAQ,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,GAAG,MAAM;IAIpG,WAAW,CAAC,OAAO,EAAE;QACzB,gBAAgB,EAAE,MAAM,CAAC;QACzB,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;KAC9B,GAAG,OAAO,CAAC,MAAM,CAAC;IAoCb,WAAW,CACf,YAAY,EAAE,WAAW,EAAE,EAC3B,KAAK,EAAE,MAAM,EACb,iBAAiB,CAAC,EAAE,MAAM,GACzB,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAoEtB,+BAA+B;CA4C9C"}
|
|
@@ -49,10 +49,13 @@ class DirectWalletPaymentMaker {
|
|
|
49
49
|
return jwtToken;
|
|
50
50
|
}
|
|
51
51
|
async makePayment(destinations, _memo, _paymentRequestId) {
|
|
52
|
+
this.logger.debug(`DirectWalletPaymentMaker: Received ${destinations.length} destinations`);
|
|
53
|
+
this.logger.debug(`DirectWalletPaymentMaker: Destinations: ${JSON.stringify(destinations)}`);
|
|
52
54
|
// Filter to polygon chain destinations
|
|
53
55
|
const polygonDestinations = destinations.filter(d => d.chain === 'polygon');
|
|
54
56
|
if (polygonDestinations.length === 0) {
|
|
55
|
-
|
|
57
|
+
const availableChains = destinations.map(d => d.chain).join(', ');
|
|
58
|
+
this.logger.warn(`DirectWalletPaymentMaker: This payment requires payment on [${availableChains}] but this account only supports Polygon. Please use a service that accepts Polygon payments, or use an account that supports one of these chains.`);
|
|
56
59
|
return null; // Cannot handle these destinations
|
|
57
60
|
}
|
|
58
61
|
// Pick first polygon destination
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directWalletPaymentMaker.js","sources":["../src/directWalletPaymentMaker.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAUA,MAAM,aAAa,GAAG,CAAC;AASvB;;;;AAIG;MACU,wBAAwB,CAAA;IAKnC,WAAA,CACU,aAAqB,EACrB,QAA4B,EACpC,MAAe,EACf,OAAA,GAAkB,OAAO,CAAC,EAAE,EAAA;QAHpB,IAAA,CAAA,aAAa,GAAb,aAAa;QACb,IAAA,CAAA,QAAQ,GAAR,QAAQ;QAIhB,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,IAAI,aAAa,EAAE;AAC3C,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO;AACtB,QAAA,IAAI,CAAC,WAAW,GAAG,qBAAqB,CAAC,OAAO,CAAC;IACnD;AAEA,IAAA,gBAAgB,CAAC,OAAgF,EAAA;QAC/F,OAAO,IAAI,CAAC,aAAa;IAC3B;IAEA,MAAM,WAAW,CAAC,OAIjB,EAAA;QACC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,eAAA,EAAkB,OAAO,CAAC,aAAa,CAAA,CAAE,CAAC;QAC3D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,kBAAA,EAAqB,OAAO,CAAC,gBAAgB,CAAA,CAAE,CAAC;QACjE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,eAAA,EAAkB,IAAI,CAAC,aAAa,CAAA,CAAE,CAAC;;AAGxD,QAAA,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,CAAC;YACxC,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,SAAS,EAAE,OAAO,CAAC,SAAS;AAC7B,SAAA,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,sCAAA,EAAyC,OAAO,CAAA,CAAE,CAAC;;;;QAKpE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;AAC5C,YAAA,MAAM,EAAE,eAAe;AACvB,YAAA,MAAM,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa;AACrC,SAAA,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,oBAAA,EAAuB,SAAS,CAAA,CAAE,CAAC;;QAGpD,MAAM,QAAQ,GAAG,iBAAiB,CAAC;YACjC,OAAO;YACP;AACD,SAAA,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,sBAAA,EAAyB,QAAQ,CAAA,CAAE,CAAC;AAErD,QAAA,OAAO,QAAQ;IACjB;AAEA,IAAA,MAAM,WAAW,CACf,YAA2B,EAC3B,KAAa,EACb,iBAA0B,EAAA;;
|
|
1
|
+
{"version":3,"file":"directWalletPaymentMaker.js","sources":["../src/directWalletPaymentMaker.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAUA,MAAM,aAAa,GAAG,CAAC;AASvB;;;;AAIG;MACU,wBAAwB,CAAA;IAKnC,WAAA,CACU,aAAqB,EACrB,QAA4B,EACpC,MAAe,EACf,OAAA,GAAkB,OAAO,CAAC,EAAE,EAAA;QAHpB,IAAA,CAAA,aAAa,GAAb,aAAa;QACb,IAAA,CAAA,QAAQ,GAAR,QAAQ;QAIhB,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,IAAI,aAAa,EAAE;AAC3C,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO;AACtB,QAAA,IAAI,CAAC,WAAW,GAAG,qBAAqB,CAAC,OAAO,CAAC;IACnD;AAEA,IAAA,gBAAgB,CAAC,OAAgF,EAAA;QAC/F,OAAO,IAAI,CAAC,aAAa;IAC3B;IAEA,MAAM,WAAW,CAAC,OAIjB,EAAA;QACC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,eAAA,EAAkB,OAAO,CAAC,aAAa,CAAA,CAAE,CAAC;QAC3D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,kBAAA,EAAqB,OAAO,CAAC,gBAAgB,CAAA,CAAE,CAAC;QACjE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,eAAA,EAAkB,IAAI,CAAC,aAAa,CAAA,CAAE,CAAC;;AAGxD,QAAA,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,CAAC;YACxC,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,SAAS,EAAE,OAAO,CAAC,SAAS;AAC7B,SAAA,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,sCAAA,EAAyC,OAAO,CAAA,CAAE,CAAC;;;;QAKpE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;AAC5C,YAAA,MAAM,EAAE,eAAe;AACvB,YAAA,MAAM,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa;AACrC,SAAA,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,oBAAA,EAAuB,SAAS,CAAA,CAAE,CAAC;;QAGpD,MAAM,QAAQ,GAAG,iBAAiB,CAAC;YACjC,OAAO;YACP;AACD,SAAA,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,sBAAA,EAAyB,QAAQ,CAAA,CAAE,CAAC;AAErD,QAAA,OAAO,QAAQ;IACjB;AAEA,IAAA,MAAM,WAAW,CACf,YAA2B,EAC3B,KAAa,EACb,iBAA0B,EAAA;QAE1B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,mCAAA,EAAsC,YAAY,CAAC,MAAM,CAAA,aAAA,CAAe,CAAC;AAC3F,QAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,wCAAA,EAA2C,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA,CAAE,CAAC;;AAG5F,QAAA,MAAM,mBAAmB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC;AAE3E,QAAA,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC,EAAE;AACpC,YAAA,MAAM,eAAe,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACjE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,4DAAA,EAA+D,eAAe,CAAA,kJAAA,CAAoJ,CAAC;YACpP,OAAO,IAAI,CAAC;QACd;;AAGA,QAAA,MAAM,IAAI,GAAG,mBAAmB,CAAC,CAAC,CAAC;AACnC,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM;AAC1B,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ;AAC9B,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO;AAE7B,QAAA,IAAI,QAAQ,KAAK,MAAM,EAAE;AACvB,YAAA,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC;QACpD;AAEA,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,yBAAA,EAA4B,MAAM,CAAA,CAAA,EAAI,QAAQ,CAAA,IAAA,EAAO,QAAQ,CAAA,WAAA,CAAa,CAAC;;AAG5F,QAAA,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,IAAI,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;;QAGrF,MAAM,YAAY,GAAG,kBAAkB,CAAC;AACtC,YAAA,GAAG,EAAE,CAAC;AACJ,oBAAA,IAAI,EAAE,UAAU;AAChB,oBAAA,IAAI,EAAE,UAAU;AAChB,oBAAA,MAAM,EAAE;AACN,wBAAA,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE;AAC/B,wBAAA,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS;AAClC,qBAAA;oBACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;iBACrC,CAAC;AACF,YAAA,YAAY,EAAE,UAAU;AACxB,YAAA,IAAI,EAAE,CAAC,QAAe,EAAE,iBAAiB;AAC1C,SAAA,CAAC;;QAGF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;AACzC,YAAA,MAAM,EAAE,qBAAqB;AAC7B,YAAA,MAAM,EAAE,CAAC;oBACP,IAAI,EAAE,IAAI,CAAC,aAAa;oBACxB,EAAE,EAAE,IAAI,CAAC,WAAW;AACpB,oBAAA,IAAI,EAAE,YAAY;AAClB,oBAAA,KAAK,EAAE;iBACR;AACF,SAAA,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,+BAAA,EAAkC,MAAM,CAAA,CAAE,CAAC;;QAG5D,MAAM,aAAa,GAAG,CAAC;QACvB,MAAM,IAAI,CAAC,+BAA+B,CAAC,MAAM,EAAE,aAAa,CAAC;;QAGjE,OAAO;AACL,YAAA,aAAa,EAAE,MAAM;AACrB,YAAA,KAAK,EAAE,SAAS;AAChB,YAAA,QAAQ,EAAE;SACX;IACH;AAEQ,IAAA,MAAM,+BAA+B,CAAC,MAAc,EAAE,aAAqB,EAAA;QACjF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,YAAA,EAAe,aAAa,CAAA,iBAAA,CAAmB,CAAC;;QAGjE,IAAI,OAAO,GAAG,IAAI;QAClB,OAAO,CAAC,OAAO,EAAE;AACf,YAAA,IAAI;AACF,gBAAA,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;AACpC,oBAAA,MAAM,EAAE,2BAA2B;oBACnC,MAAM,EAAE,CAAC,MAAM;AAChB,iBAAA,CAAC;gBAEF,IAAI,CAAC,OAAO,EAAE;AACZ,oBAAA,MAAM,IAAI,OAAO,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBACzD;YACF;YAAE,OAAO,KAAK,EAAE;gBACd,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,uBAAA,EAA0B,KAAK,CAAA,CAAE,CAAC;AACnD,gBAAA,MAAM,IAAI,OAAO,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACzD;QACF;;AAGA,QAAA,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK,EAAE;AAC5B,YAAA,MAAM,IAAI,KAAK,CAAC,+BAA+B,MAAM,CAAA,CAAE,CAAC;QAC1D;;QAGA,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;QACpD,IAAI,YAAY,GAAG,UAAU;QAE7B,OAAO,YAAY,GAAG,UAAU,GAAG,aAAa,GAAG,CAAC,EAAE;AACpD,YAAA,MAAM,IAAI,OAAO,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAEvD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;AAC9C,gBAAA,MAAM,EAAE,iBAAiB;AACzB,gBAAA,MAAM,EAAE;AACT,aAAA,CAAC;AAEF,YAAA,YAAY,GAAG,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;QAC1C;QAEA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,2BAAA,EAA8B,aAAa,CAAA,cAAA,CAAgB,CAAC;IAC/E;AAED;;;;"}
|
package/dist/index.cjs
CHANGED
|
@@ -52,10 +52,13 @@ class DirectWalletPaymentMaker {
|
|
|
52
52
|
return jwtToken;
|
|
53
53
|
}
|
|
54
54
|
async makePayment(destinations, _memo, _paymentRequestId) {
|
|
55
|
+
this.logger.debug(`DirectWalletPaymentMaker: Received ${destinations.length} destinations`);
|
|
56
|
+
this.logger.debug(`DirectWalletPaymentMaker: Destinations: ${JSON.stringify(destinations)}`);
|
|
55
57
|
// Filter to polygon chain destinations
|
|
56
58
|
const polygonDestinations = destinations.filter(d => d.chain === 'polygon');
|
|
57
59
|
if (polygonDestinations.length === 0) {
|
|
58
|
-
|
|
60
|
+
const availableChains = destinations.map(d => d.chain).join(', ');
|
|
61
|
+
this.logger.warn(`DirectWalletPaymentMaker: This payment requires payment on [${availableChains}] but this account only supports Polygon. Please use a service that accepts Polygon payments, or use an account that supports one of these chains.`);
|
|
59
62
|
return null; // Cannot handle these destinations
|
|
60
63
|
}
|
|
61
64
|
// Pick first polygon destination
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../src/directWalletPaymentMaker.ts","../src/polygonBrowserAccount.ts","../src/serverPaymentMaker.ts","../src/polygonServerAccount.ts"],"sourcesContent":[null,null,null,null],"names":["USDC_DECIMALS","polygon","ConsoleLogger","getPolygonUSDCAddress","buildES256KJWTMessage","completeES256KJWT","encodeFunctionData","ChainEnum","WalletTypeEnum","publicActions","privateKeyToAccount","createWalletClient","http","polygonAmoy"],"mappings":";;;;;;;;AAUA,MAAMA,eAAa,GAAG,CAAC;AASvB;;;;AAIG;MACU,wBAAwB,CAAA;IAKnC,WAAA,CACU,aAAqB,EACrB,QAA4B,EACpC,MAAe,EACf,OAAA,GAAkBC,cAAO,CAAC,EAAE,EAAA;QAHpB,IAAA,CAAA,aAAa,GAAb,aAAa;QACb,IAAA,CAAA,QAAQ,GAAR,QAAQ;QAIhB,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,IAAIC,oBAAa,EAAE;AAC3C,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO;AACtB,QAAA,IAAI,CAAC,WAAW,GAAGC,4BAAqB,CAAC,OAAO,CAAC;IACnD;AAEA,IAAA,gBAAgB,CAAC,OAAgF,EAAA;QAC/F,OAAO,IAAI,CAAC,aAAa;IAC3B;IAEA,MAAM,WAAW,CAAC,OAIjB,EAAA;QACC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,eAAA,EAAkB,OAAO,CAAC,aAAa,CAAA,CAAE,CAAC;QAC3D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,kBAAA,EAAqB,OAAO,CAAC,gBAAgB,CAAA,CAAE,CAAC;QACjE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,eAAA,EAAkB,IAAI,CAAC,aAAa,CAAA,CAAE,CAAC;;AAGxD,QAAA,MAAM,EAAE,OAAO,EAAE,GAAGC,4BAAqB,CAAC;YACxC,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,SAAS,EAAE,OAAO,CAAC,SAAS;AAC7B,SAAA,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,sCAAA,EAAyC,OAAO,CAAA,CAAE,CAAC;;;;QAKpE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;AAC5C,YAAA,MAAM,EAAE,eAAe;AACvB,YAAA,MAAM,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa;AACrC,SAAA,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,oBAAA,EAAuB,SAAS,CAAA,CAAE,CAAC;;QAGpD,MAAM,QAAQ,GAAGC,wBAAiB,CAAC;YACjC,OAAO;YACP;AACD,SAAA,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,sBAAA,EAAyB,QAAQ,CAAA,CAAE,CAAC;AAErD,QAAA,OAAO,QAAQ;IACjB;AAEA,IAAA,MAAM,WAAW,CACf,YAA2B,EAC3B,KAAa,EACb,iBAA0B,EAAA;;AAG1B,QAAA,MAAM,mBAAmB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC;AAE3E,QAAA,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC,EAAE;AACpC,YAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8EAA8E,CAAC;YACjG,OAAO,IAAI,CAAC;QACd;;AAGA,QAAA,MAAM,IAAI,GAAG,mBAAmB,CAAC,CAAC,CAAC;AACnC,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM;AAC1B,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ;AAC9B,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO;AAE7B,QAAA,IAAI,QAAQ,KAAK,MAAM,EAAE;AACvB,YAAA,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC;QACpD;AAEA,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,yBAAA,EAA4B,MAAM,CAAA,CAAA,EAAI,QAAQ,CAAA,IAAA,EAAO,QAAQ,CAAA,WAAA,CAAa,CAAC;;AAG5F,QAAA,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,IAAIL,eAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;;QAGrF,MAAM,YAAY,GAAGM,uBAAkB,CAAC;AACtC,YAAA,GAAG,EAAE,CAAC;AACJ,oBAAA,IAAI,EAAE,UAAU;AAChB,oBAAA,IAAI,EAAE,UAAU;AAChB,oBAAA,MAAM,EAAE;AACN,wBAAA,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE;AAC/B,wBAAA,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS;AAClC,qBAAA;oBACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;iBACrC,CAAC;AACF,YAAA,YAAY,EAAE,UAAU;AACxB,YAAA,IAAI,EAAE,CAAC,QAAe,EAAE,iBAAiB;AAC1C,SAAA,CAAC;;QAGF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;AACzC,YAAA,MAAM,EAAE,qBAAqB;AAC7B,YAAA,MAAM,EAAE,CAAC;oBACP,IAAI,EAAE,IAAI,CAAC,aAAa;oBACxB,EAAE,EAAE,IAAI,CAAC,WAAW;AACpB,oBAAA,IAAI,EAAE,YAAY;AAClB,oBAAA,KAAK,EAAE;iBACR;AACF,SAAA,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,+BAAA,EAAkC,MAAM,CAAA,CAAE,CAAC;;QAG5D,MAAM,aAAa,GAAG,CAAC;QACvB,MAAM,IAAI,CAAC,+BAA+B,CAAC,MAAM,EAAE,aAAa,CAAC;;QAGjE,OAAO;AACL,YAAA,aAAa,EAAE,MAAM;AACrB,YAAA,KAAK,EAAE,SAAS;AAChB,YAAA,QAAQ,EAAE;SACX;IACH;AAEQ,IAAA,MAAM,+BAA+B,CAAC,MAAc,EAAE,aAAqB,EAAA;QACjF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,YAAA,EAAe,aAAa,CAAA,iBAAA,CAAmB,CAAC;;QAGjE,IAAI,OAAO,GAAG,IAAI;QAClB,OAAO,CAAC,OAAO,EAAE;AACf,YAAA,IAAI;AACF,gBAAA,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;AACpC,oBAAA,MAAM,EAAE,2BAA2B;oBACnC,MAAM,EAAE,CAAC,MAAM;AAChB,iBAAA,CAAC;gBAEF,IAAI,CAAC,OAAO,EAAE;AACZ,oBAAA,MAAM,IAAI,OAAO,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBACzD;YACF;YAAE,OAAO,KAAK,EAAE;gBACd,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,uBAAA,EAA0B,KAAK,CAAA,CAAE,CAAC;AACnD,gBAAA,MAAM,IAAI,OAAO,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACzD;QACF;;AAGA,QAAA,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK,EAAE;AAC5B,YAAA,MAAM,IAAI,KAAK,CAAC,+BAA+B,MAAM,CAAA,CAAE,CAAC;QAC1D;;QAGA,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;QACpD,IAAI,YAAY,GAAG,UAAU;QAE7B,OAAO,YAAY,GAAG,UAAU,GAAG,aAAa,GAAG,CAAC,EAAE;AACpD,YAAA,MAAM,IAAI,OAAO,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAEvD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;AAC9C,gBAAA,MAAM,EAAE,iBAAiB;AACzB,gBAAA,MAAM,EAAE;AACT,aAAA,CAAC;AAEF,YAAA,YAAY,GAAG,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;QAC1C;QAEA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,2BAAA,EAA8B,aAAa,CAAA,cAAA,CAAgB,CAAC;IAC/E;AAED;;AC7LD;;;;;;;;;;AAUG;MACU,qBAAqB,CAAA;AAMhC,IAAA,aAAa,UAAU,CAAC,MAWrB,EAAA;QAED,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,IAAIJ,oBAAa,EAAE;QACnD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAID,cAAO,CAAC,EAAE,CAAC;;AAG7C,QAAA,IAAI,MAAM,CAAC,kBAAkB,KAAK,IAAI,EAAE;AACtC,YAAA,MAAM,CAAC,IAAI,CAAC,4GAA4G,CAAC;QAC3H;AACA,QAAA,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS,EAAE;AACvE,YAAA,MAAM,CAAC,IAAI,CAAC,0EAA0E,CAAC;QACzF;AACA,QAAA,IAAI,MAAM,CAAC,iBAAiB,KAAK,SAAS,EAAE;AAC1C,YAAA,MAAM,CAAC,IAAI,CAAC,+DAA+D,CAAC;QAC9E;;;AAIA,QAAA,IAAI;AACF,YAAA,MAAM,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;QAC7D;QAAE,OAAO,KAAK,EAAE;;AAEd,YAAA,MAAM,CAAC,IAAI,CAAC,iEAAiE,KAAK,CAAA,CAAE,CAAC;QACvF;QAEA,MAAM,CAAC,IAAI,CAAC,CAAA,gEAAA,EAAmE,MAAM,CAAC,aAAa,CAAA,CAAE,CAAC;AAEtG,QAAA,OAAO,IAAI,qBAAqB,CAC9B,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,QAAQ,EACf,MAAM,EACN,OAAO,CACR;IACH;IAEA,WAAA,CACE,aAAqB,EACrB,QAA4B,EAC5B,MAAc,EACd,OAAA,GAAkBA,cAAO,CAAC,EAAE,EAAA;AAE5B,QAAA,IAAI,CAAC,aAAa,GAAG,aAAa;AAClC,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO;;AAGtB,QAAA,IAAI,CAAC,SAAS,GAAG,CAAA,QAAA,EAAW,aAAa,EAAe;QAExD,IAAI,CAAC,aAAa,GAAG;YACnB,IAAI,wBAAwB,CAAC,aAAa,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO;SACtE;IACH;AAEA,IAAA,MAAM,UAAU,GAAA;;AAEd,QAAA,MAAM,KAAK,GAAGM,gBAAS,CAAC,OAAO;AAE/B,QAAA,OAAO,CAAC;gBACN,OAAO,EAAE,IAAI,CAAC,aAAa;gBAC3B,KAAK;gBACL,UAAU,EAAEC,qBAAc,CAAC;AAC5B,aAAA,CAAC;IACJ;AAEA;;;AAGG;AACH,IAAA,OAAO,kBAAkB,CAAC,kBAA0B,EAAE,MAAgB,EAAA;;IAEtE;AACD;;ACzFD;AACA,SAAS,WAAW,CAAC,IAAY,EAAA;;AAE/B,IAAA,MAAM,MAAM,GAAG,OAAO,MAAM,KAAK;UAC7B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ;AACrC,UAAE,IAAI,CAAC,IAAI,CAAC;;IAEd,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;AACzE;AAEA,MAAM,aAAa,GAAG,CAAC;AACvB,MAAM,SAAS,GAAG;AAChB,IAAA;AACE,QAAA,QAAQ,EAAE,KAAK;AACf,QAAA,MAAM,EAAE;AACN,YAAA,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE;AAChC,YAAA,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;AACpC,SAAA;AACD,QAAA,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AACrC,QAAA,IAAI,EAAE,UAAU;AACjB,KAAA;AACD,IAAA;AACI,QAAA,UAAU,EAAE,IAAI;AAChB,QAAA,QAAQ,EAAE;AACN,YAAA;AACI,gBAAA,MAAM,EAAE,QAAQ;AAChB,gBAAA,MAAM,EAAE;AACX;AACJ,SAAA;AACD,QAAA,MAAM,EAAE,WAAW;AACnB,QAAA,SAAS,EAAE;AACP,YAAA;AACI,gBAAA,MAAM,EAAE,SAAS;AACjB,gBAAA,MAAM,EAAE;AACX;AACJ,SAAA;AACD,QAAA,SAAS,EAAE,KAAK;AAChB,QAAA,iBAAiB,EAAE,MAAM;AACzB,QAAA,MAAM,EAAE;AACX;CACF;AAED;;;;AAIG;MACU,kBAAkB,CAAA;AAK7B,IAAA,WAAA,CAAY,aAAqB,EAAE,YAA0B,EAAE,OAAe,EAAE,MAAe,EAAA;QAC7F,IAAI,CAAC,aAAa,EAAE;AAClB,YAAA,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC;QAC5C;QACA,IAAI,CAAC,YAAY,EAAE;AACjB,YAAA,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC;QAC3C;AACA,QAAA,IAAG,CAAC,YAAY,CAAC,OAAO,EAAE;AACxB,YAAA,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC;QACnD;QACA,IAAI,CAAC,OAAO,EAAE;AACZ,YAAA,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC;QACtC;QAEA,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC,MAAM,CAACC,kBAAa,CAAyB;QAC/E,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,IAAIP,oBAAa,EAAE;AAC3C,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO;IACxB;AAEA,IAAA,gBAAgB,CAAC,OAAgF,EAAA;AAC/F,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,OAAQ,CAAC,OAAO;IAC5C;IAEA,MAAM,WAAW,CAAC,EAAC,gBAAgB,EAAE,aAAa,EAAE,SAAS,EAAkF,EAAA;AAC7I,QAAA,MAAM,SAAS,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE;AAEnC,QAAA,MAAM,UAAU,GAAG;AACjB,YAAA,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC,OAAQ,CAAC,OAAO;AACxC,YAAA,GAAG,EAAE,kBAAkB;AACvB,YAAA,GAAG,EAAE,sBAAsB;YAC3B,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAClC,YAAA,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE;AAC5C,YAAA,IAAI,aAAa,GAAG,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC;AAC3D,YAAA,IAAI,gBAAgB,GAAG,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC;AACrE,YAAA,IAAI,SAAS,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;SACrB;QAE5B,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACrD,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;AACvD,QAAA,MAAM,OAAO,GAAG,CAAA,EAAG,MAAM,CAAA,CAAA,EAAI,OAAO,EAAE;;AAGtC,QAAA,MAAM,YAAY,GAAG,OAAO,MAAM,KAAK;cACnC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM;cAC3B,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;;QAGrC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;AACtD,YAAA,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,OAAQ;AACpC,YAAA,OAAO,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE;AAC/B,SAAA,CAAC;;;;;AAMF,QAAA,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,CAAC;QAEzC,MAAM,GAAG,GAAG,CAAA,EAAG,MAAM,IAAI,OAAO,CAAA,CAAA,EAAI,SAAS,CAAA,CAAE;QAC/C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,sBAAA,EAAyB,GAAG,CAAA,CAAE,CAAC;AAChD,QAAA,OAAO,GAAG;IACZ;AAEA,IAAA,MAAM,WAAW,CAAC,YAA2B,EAAE,KAAa,EAAE,iBAA0B,EAAA;QACtF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,oBAAA,EAAuB,YAAY,CAAC,MAAM,CAAA,eAAA,CAAiB,CAAC;;AAG7E,QAAA,MAAM,mBAAmB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC;AAE3E,QAAA,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC,EAAE;AACpC,YAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iFAAiF,CAAC;YACpG,OAAO,IAAI,CAAC;QACd;;AAGA,QAAA,MAAM,WAAW,GAAG,mBAAmB,CAAC,CAAC,CAAC;;AAG1C,QAAA,IAAI,WAAW,CAAC,QAAQ,KAAK,MAAM,EAAE;YACnC,MAAM,IAAI,KAAK,CAAC,CAAA,sBAAA,EAAyB,WAAW,CAAC,QAAQ,CAAA,oCAAA,CAAsC,CAAC;QACtG;;QAGA,MAAM,WAAW,GAAGC,4BAAqB,CAAC,IAAI,CAAC,OAAO,CAAC;;AAGvD,QAAA,MAAM,oBAAoB,GAAG,WAAW,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,IAAI,aAAa,CAAC;AAEjF,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,aAAA,EAAgB,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAA,SAAA,EAAY,WAAW,CAAC,OAAO,CAAA,CAAE,CAAC;AAChG,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,yBAAA,EAA4B,oBAAoB,CAAC,QAAQ,EAAE,CAAA,CAAE,CAAC;AAE/E,QAAA,IAAI;;YAEF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;AACpD,gBAAA,OAAO,EAAE,WAAsB;AAC/B,gBAAA,GAAG,EAAE,SAAS;AACd,gBAAA,YAAY,EAAE,WAAW;gBACzB,IAAI,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,OAAQ,CAAC,OAAO,CAAC;AAC5C,aAAA,CAAW;AAEZ,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,sBAAA,EAAyB,OAAO,CAAC,QAAQ,EAAE,CAAA,CAAE,CAAC;AAE/D,YAAA,IAAI,OAAO,GAAG,MAAM,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;AACrD,gBAAA,MAAM,IAAI,KAAK,CAAC,CAAA,iCAAA,EAAoC,OAAO,CAAC,QAAQ,EAAE,CAAA,QAAA,EAAW,oBAAoB,CAAC,QAAQ,EAAE,CAAA,CAAE,CAAC;YACrH;;YAGA,MAAM,IAAI,GAAGG,uBAAkB,CAAC;AAC9B,gBAAA,GAAG,EAAE,SAAS;AACd,gBAAA,YAAY,EAAE,UAAU;AACxB,gBAAA,IAAI,EAAE,CAAC,WAAW,CAAC,OAAkB,EAAE,MAAM,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;AAChF,aAAA,CAAC;;YAGF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC;AACpD,gBAAA,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,OAAQ;AACpC,gBAAA,EAAE,EAAE,WAAsB;gBAC1B,IAAI;AACJ,gBAAA,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK;AAChC,aAAA,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,kBAAA,EAAqB,IAAI,CAAA,CAAE,CAAC;;AAG7C,YAAA,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,yBAAyB,CAAC,EAAE,IAAI,EAAE,CAAC;AAE5E,YAAA,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE;gBAChC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,iCAAA,EAAoC,IAAI,CAAA,CAAE,CAAC;gBAC5D,OAAO;AACL,oBAAA,aAAa,EAAE,IAAI;AACnB,oBAAA,KAAK,EAAE,SAAS;AAChB,oBAAA,QAAQ,EAAE,MAAM;iBACjB;YACH;iBAAO;AACL,gBAAA,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,CAAA,CAAE,CAAC;YAChD;QACF;QAAE,OAAO,KAAK,EAAE;YACd,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,gBAAA,EAAmB,KAAK,CAAA,CAAE,CAAC;AAC7C,YAAA,MAAM,KAAK;QACb;IACF;AACD;;ACzMD;;;;;;;;;;;;;;;;;;AAkBG;MACU,oBAAoB,CAAA;AAO/B,IAAA,WAAA,CAAY,aAAqB,EAAE,eAAuB,EAAE,UAAkB,GAAG,EAAA;QAC/E,IAAI,CAAC,aAAa,EAAE;AAClB,YAAA,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC;QAChD;QACA,IAAI,CAAC,eAAe,EAAE;AACpB,YAAA,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC;QAClD;QACA,IAAI,CAAC,OAAO,EAAE;AACZ,YAAA,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC;QACzC;AAEA,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO;AACtB,QAAA,IAAI,CAAC,OAAO,GAAGI,4BAAmB,CAAC,eAAsB,CAAC;;AAG1D,QAAA,MAAM,WAAW,GAAG,OAAO,KAAK,GAAG,GAAG,SAAS,GAAG,cAAc;AAChE,QAAA,IAAI,CAAC,SAAS,GAAG,CAAA,EAAG,WAAW,CAAA,CAAA,EAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAA,CAAe;;QAGtE,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;AAEpC,QAAA,IAAI,CAAC,YAAY,GAAGC,uBAAkB,CAAC;YACrC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,KAAK;AACL,YAAA,SAAS,EAAEC,SAAI,CAAC,aAAa,CAAC;AAC/B,SAAA,CAAC;QAEF,IAAI,CAAC,aAAa,GAAG;YACnB,IAAI,kBAAkB,CAAC,aAAa,EAAE,IAAI,CAAC,YAAY,EAAE,OAAO;SACjE;IACH;AAEQ,IAAA,QAAQ,CAAC,OAAe,EAAA;QAC9B,QAAQ,OAAO;AACb,YAAA,KAAK,GAAG;AACN,gBAAA,OAAOX,cAAO;AAChB,YAAA,KAAK,KAAK;AACR,gBAAA,OAAOY,kBAAW;AACpB,YAAA;AACE,gBAAA,MAAM,IAAI,KAAK,CAAC,iCAAiC,OAAO,CAAA,gDAAA,CAAkD,CAAC;;IAEjH;AAEA;;AAEG;AACH,IAAA,MAAM,UAAU,GAAA;;AAEd,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,KAAK,GAAG,GAAGN,gBAAS,CAAC,OAAO,GAAGA,gBAAS,CAAC,WAAW;AAE9E,QAAA,OAAO,CAAC;AACN,gBAAA,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;gBAC7B,KAAK;gBACL,UAAU,EAAEC,qBAAc,CAAC;AAC5B,aAAA,CAAC;IACJ;AACD;;;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../src/directWalletPaymentMaker.ts","../src/polygonBrowserAccount.ts","../src/serverPaymentMaker.ts","../src/polygonServerAccount.ts"],"sourcesContent":[null,null,null,null],"names":["USDC_DECIMALS","polygon","ConsoleLogger","getPolygonUSDCAddress","buildES256KJWTMessage","completeES256KJWT","encodeFunctionData","ChainEnum","WalletTypeEnum","publicActions","privateKeyToAccount","createWalletClient","http","polygonAmoy"],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -51,10 +51,13 @@ class DirectWalletPaymentMaker {
|
|
|
51
51
|
return jwtToken;
|
|
52
52
|
}
|
|
53
53
|
async makePayment(destinations, _memo, _paymentRequestId) {
|
|
54
|
+
this.logger.debug(`DirectWalletPaymentMaker: Received ${destinations.length} destinations`);
|
|
55
|
+
this.logger.debug(`DirectWalletPaymentMaker: Destinations: ${JSON.stringify(destinations)}`);
|
|
54
56
|
// Filter to polygon chain destinations
|
|
55
57
|
const polygonDestinations = destinations.filter(d => d.chain === 'polygon');
|
|
56
58
|
if (polygonDestinations.length === 0) {
|
|
57
|
-
|
|
59
|
+
const availableChains = destinations.map(d => d.chain).join(', ');
|
|
60
|
+
this.logger.warn(`DirectWalletPaymentMaker: This payment requires payment on [${availableChains}] but this account only supports Polygon. Please use a service that accepts Polygon payments, or use an account that supports one of these chains.`);
|
|
58
61
|
return null; // Cannot handle these destinations
|
|
59
62
|
}
|
|
60
63
|
// Pick first polygon destination
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/directWalletPaymentMaker.ts","../src/polygonBrowserAccount.ts","../src/serverPaymentMaker.ts","../src/polygonServerAccount.ts"],"sourcesContent":[null,null,null,null],"names":["USDC_DECIMALS"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/directWalletPaymentMaker.ts","../src/polygonBrowserAccount.ts","../src/serverPaymentMaker.ts","../src/polygonServerAccount.ts"],"sourcesContent":[null,null,null,null],"names":["USDC_DECIMALS"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atxp/polygon",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.2",
|
|
4
4
|
"description": "ATXP for Polygon",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -29,12 +29,14 @@
|
|
|
29
29
|
"lint": "eslint . --ext .ts",
|
|
30
30
|
"lint:fix": "eslint . --ext .ts --fix",
|
|
31
31
|
"test": "vitest run",
|
|
32
|
+
"test:browser": "npm run build && npm run serve:test",
|
|
33
|
+
"serve:test": "npx -y http-server -p 8000 -c-1 --cors",
|
|
32
34
|
"prepack": "npm run build && npm run typecheck",
|
|
33
35
|
"pack:dry": "npm pack --dry-run"
|
|
34
36
|
},
|
|
35
37
|
"dependencies": {
|
|
36
|
-
"@atxp/client": "0.8.
|
|
37
|
-
"@atxp/common": "0.8.
|
|
38
|
+
"@atxp/client": "0.8.2",
|
|
39
|
+
"@atxp/common": "0.8.2",
|
|
38
40
|
"bignumber.js": "^9.3.0"
|
|
39
41
|
},
|
|
40
42
|
"peerDependencies": {
|
package/dist/cache.d.ts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { SpendPermission } from './types.js';
|
|
2
|
-
import { Hex } from '@atxp/client';
|
|
3
|
-
import { type ICache, JsonCache, BrowserCache, MemoryCache } from '@atxp/common';
|
|
4
|
-
/**
|
|
5
|
-
* Stored permission data structure
|
|
6
|
-
*/
|
|
7
|
-
export interface Intermediary {
|
|
8
|
-
/** Ephemeral wallet private key */
|
|
9
|
-
privateKey: Hex;
|
|
10
|
-
/** Spend permission from Polygon */
|
|
11
|
-
permission: SpendPermission;
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Type-safe cache wrapper for permission data
|
|
15
|
-
*/
|
|
16
|
-
export declare class IntermediaryCache extends JsonCache<Intermediary> {
|
|
17
|
-
}
|
|
18
|
-
export { type ICache, BrowserCache, MemoryCache };
|
|
19
|
-
//# sourceMappingURL=cache.d.ts.map
|
package/dist/cache.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,KAAK,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEjF;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,mCAAmC;IACnC,UAAU,EAAE,GAAG,CAAC;IAChB,oCAAoC;IACpC,UAAU,EAAE,eAAe,CAAC;CAC7B;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,SAAS,CAAC,YAAY,CAAC;CAAG;AAGjE,OAAO,EAAE,KAAK,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC"}
|
package/dist/cache.js
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { JsonCache } from '@atxp/common';
|
|
2
|
-
export { BrowserCache, MemoryCache } from '@atxp/common';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Type-safe cache wrapper for permission data
|
|
6
|
-
*/
|
|
7
|
-
class IntermediaryCache extends JsonCache {
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export { IntermediaryCache };
|
|
11
|
-
//# sourceMappingURL=cache.js.map
|
package/dist/cache.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cache.js","sources":["../src/cache.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAcA;;AAEG;AACG,MAAO,iBAAkB,SAAQ,SAAuB,CAAA;AAAG;;;;"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { type Account, type Address, type Hex } from 'viem';
|
|
2
|
-
import { type BundlerClient, type SmartAccount } from 'viem/account-abstraction';
|
|
3
|
-
export interface EphemeralSmartWallet {
|
|
4
|
-
address: Address;
|
|
5
|
-
client: BundlerClient;
|
|
6
|
-
account: SmartAccount;
|
|
7
|
-
signer: Account;
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* Creates an ephemeral smart wallet with paymaster support
|
|
11
|
-
* @param privateKey - Private key for the wallet signer
|
|
12
|
-
* @param chainId - Chain ID (defaults to 137 for Polygon mainnet, or 80002 for Amoy testnet)
|
|
13
|
-
*
|
|
14
|
-
* NOTE: This implementation assumes Coinbase CDP supports Polygon.
|
|
15
|
-
* Verify support and correct endpoint URLs before using in production.
|
|
16
|
-
*/
|
|
17
|
-
export declare function toEphemeralSmartWallet(privateKey: Hex, chainId?: number): Promise<EphemeralSmartWallet>;
|
|
18
|
-
//# sourceMappingURL=smartWalletHelpers.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"smartWalletHelpers.d.ts","sourceRoot":"","sources":["../src/smartWalletHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,OAAO,EACZ,KAAK,OAAO,EACZ,KAAK,GAAG,EACT,MAAM,MAAM,CAAC;AAId,OAAO,EAGL,KAAK,aAAa,EAClB,KAAK,YAAY,EAClB,MAAM,0BAA0B,CAAC;AAiDlC,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,EAAE,YAAY,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,GAAG,EACf,OAAO,GAAE,MAAmB,GAC3B,OAAO,CAAC,oBAAoB,CAAC,CAqC/B"}
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import { createPublicClient, http } from 'viem';
|
|
2
|
-
import { polygon, polygonAmoy } from 'viem/chains';
|
|
3
|
-
import { privateKeyToAccount } from 'viem/accounts';
|
|
4
|
-
import { toCoinbaseSmartAccount, createBundlerClient } from 'viem/account-abstraction';
|
|
5
|
-
|
|
6
|
-
// Coinbase CDP API Key
|
|
7
|
-
const COINBASE_API_KEY = 'snPdXqIzOGhRkGNJvEHM5bl9Hm3yRO3m';
|
|
8
|
-
/**
|
|
9
|
-
* Get Coinbase CDP Bundler URL for a given chain
|
|
10
|
-
* NOTE: Verify Coinbase CDP support for Polygon before using in production
|
|
11
|
-
*/
|
|
12
|
-
function getCoinbaseBundlerUrl(chainId) {
|
|
13
|
-
switch (chainId) {
|
|
14
|
-
case 137: // Polygon mainnet
|
|
15
|
-
return 'https://api.developer.coinbase.com/rpc/v1/polygon-mainnet';
|
|
16
|
-
case 80002: // Polygon Amoy testnet
|
|
17
|
-
return 'https://api.developer.coinbase.com/rpc/v1/polygon-amoy';
|
|
18
|
-
default:
|
|
19
|
-
throw new Error(`Unsupported chain ID for Coinbase bundler: ${chainId}. Supported: 137 (mainnet), 80002 (Amoy testnet)`);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Get Coinbase CDP Paymaster URL for a given chain
|
|
24
|
-
* NOTE: Verify Coinbase CDP support for Polygon before using in production
|
|
25
|
-
*/
|
|
26
|
-
function getCoinbasePaymasterUrl(chainId) {
|
|
27
|
-
switch (chainId) {
|
|
28
|
-
case 137: // Polygon mainnet
|
|
29
|
-
return 'https://api.developer.coinbase.com/rpc/v1/polygon-mainnet';
|
|
30
|
-
case 80002: // Polygon Amoy testnet
|
|
31
|
-
return 'https://api.developer.coinbase.com/rpc/v1/polygon-amoy';
|
|
32
|
-
default:
|
|
33
|
-
throw new Error(`Unsupported chain ID for Coinbase paymaster: ${chainId}. Supported: 137 (mainnet), 80002 (Amoy testnet)`);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Get Polygon chain configuration by chain ID
|
|
38
|
-
*/
|
|
39
|
-
function getPolygonChain(chainId) {
|
|
40
|
-
switch (chainId) {
|
|
41
|
-
case 137:
|
|
42
|
-
return polygon;
|
|
43
|
-
case 80002:
|
|
44
|
-
return polygonAmoy;
|
|
45
|
-
default:
|
|
46
|
-
throw new Error(`Unsupported Polygon chain ID: ${chainId}. Supported: 137 (mainnet), 80002 (Amoy testnet)`);
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* Creates an ephemeral smart wallet with paymaster support
|
|
51
|
-
* @param privateKey - Private key for the wallet signer
|
|
52
|
-
* @param chainId - Chain ID (defaults to 137 for Polygon mainnet, or 80002 for Amoy testnet)
|
|
53
|
-
*
|
|
54
|
-
* NOTE: This implementation assumes Coinbase CDP supports Polygon.
|
|
55
|
-
* Verify support and correct endpoint URLs before using in production.
|
|
56
|
-
*/
|
|
57
|
-
async function toEphemeralSmartWallet(privateKey, chainId = polygon.id) {
|
|
58
|
-
const apiKey = COINBASE_API_KEY;
|
|
59
|
-
const signer = privateKeyToAccount(privateKey);
|
|
60
|
-
const chain = getPolygonChain(chainId);
|
|
61
|
-
const bundlerUrl = getCoinbaseBundlerUrl(chainId);
|
|
62
|
-
const paymasterUrl = getCoinbasePaymasterUrl(chainId);
|
|
63
|
-
const publicClient = createPublicClient({
|
|
64
|
-
chain,
|
|
65
|
-
transport: http(`${bundlerUrl}/${apiKey}`)
|
|
66
|
-
});
|
|
67
|
-
// Create the Coinbase smart wallet
|
|
68
|
-
const account = await toCoinbaseSmartAccount({
|
|
69
|
-
client: publicClient,
|
|
70
|
-
owners: [signer],
|
|
71
|
-
version: '1'
|
|
72
|
-
});
|
|
73
|
-
// Create bundler client with paymaster support
|
|
74
|
-
const bundlerClient = createBundlerClient({
|
|
75
|
-
account,
|
|
76
|
-
client: publicClient,
|
|
77
|
-
transport: http(`${bundlerUrl}/${apiKey}`),
|
|
78
|
-
chain,
|
|
79
|
-
paymaster: true, // Enable paymaster sponsorship
|
|
80
|
-
paymasterContext: {
|
|
81
|
-
transport: http(`${paymasterUrl}/${apiKey}`)
|
|
82
|
-
}
|
|
83
|
-
});
|
|
84
|
-
return {
|
|
85
|
-
address: account.address,
|
|
86
|
-
client: bundlerClient,
|
|
87
|
-
account,
|
|
88
|
-
signer,
|
|
89
|
-
};
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
export { toEphemeralSmartWallet };
|
|
93
|
-
//# sourceMappingURL=smartWalletHelpers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"smartWalletHelpers.js","sources":["../src/smartWalletHelpers.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAiBA;AACA,MAAM,gBAAgB,GAAG,kCAAkC;AAE3D;;;AAGG;AACH,SAAS,qBAAqB,CAAC,OAAe,EAAA;IAC5C,QAAQ,OAAO;QACb,KAAK,GAAG;AACN,YAAA,OAAO,2DAA2D;QACpE,KAAK,KAAK;AACR,YAAA,OAAO,wDAAwD;AACjE,QAAA;AACE,YAAA,MAAM,IAAI,KAAK,CAAC,8CAA8C,OAAO,CAAA,gDAAA,CAAkD,CAAC;;AAE9H;AAEA;;;AAGG;AACH,SAAS,uBAAuB,CAAC,OAAe,EAAA;IAC9C,QAAQ,OAAO;QACb,KAAK,GAAG;AACN,YAAA,OAAO,2DAA2D;QACpE,KAAK,KAAK;AACR,YAAA,OAAO,wDAAwD;AACjE,QAAA;AACE,YAAA,MAAM,IAAI,KAAK,CAAC,gDAAgD,OAAO,CAAA,gDAAA,CAAkD,CAAC;;AAEhI;AAEA;;AAEG;AACH,SAAS,eAAe,CAAC,OAAe,EAAA;IACtC,QAAQ,OAAO;AACb,QAAA,KAAK,GAAG;AACN,YAAA,OAAO,OAAO;AAChB,QAAA,KAAK,KAAK;AACR,YAAA,OAAO,WAAW;AACpB,QAAA;AACE,YAAA,MAAM,IAAI,KAAK,CAAC,iCAAiC,OAAO,CAAA,gDAAA,CAAkD,CAAC;;AAEjH;AASA;;;;;;;AAOG;AACI,eAAe,sBAAsB,CAC1C,UAAe,EACf,OAAA,GAAkB,OAAO,CAAC,EAAE,EAAA;IAE5B,MAAM,MAAM,GAAG,gBAAgB;AAC/B,IAAA,MAAM,MAAM,GAAG,mBAAmB,CAAC,UAAU,CAAC;AAC9C,IAAA,MAAM,KAAK,GAAG,eAAe,CAAC,OAAO,CAAC;AACtC,IAAA,MAAM,UAAU,GAAG,qBAAqB,CAAC,OAAO,CAAC;AACjD,IAAA,MAAM,YAAY,GAAG,uBAAuB,CAAC,OAAO,CAAC;IAErD,MAAM,YAAY,GAAG,kBAAkB,CAAC;QACtC,KAAK;QACL,SAAS,EAAE,IAAI,CAAC,CAAA,EAAG,UAAU,CAAA,CAAA,EAAI,MAAM,EAAE;AAC1C,KAAA,CAAC;;AAGF,IAAA,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC;AAC3C,QAAA,MAAM,EAAE,YAAY;QACpB,MAAM,EAAE,CAAC,MAAM,CAAC;AAChB,QAAA,OAAO,EAAE;AACV,KAAA,CAAC;;IAGF,MAAM,aAAa,GAAG,mBAAmB,CAAC;QACxC,OAAO;AACP,QAAA,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE,IAAI,CAAC,CAAA,EAAG,UAAU,CAAA,CAAA,EAAI,MAAM,EAAE,CAAC;QAC1C,KAAK;QACL,SAAS,EAAE,IAAI;AACf,QAAA,gBAAgB,EAAE;YAChB,SAAS,EAAE,IAAI,CAAC,CAAA,EAAG,YAAY,CAAA,CAAA,EAAI,MAAM,EAAE;AAC5C;AACF,KAAA,CAAC;IAEF,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,OAAO;AACxB,QAAA,MAAM,EAAE,aAAa;QACrB,OAAO;QACP,MAAM;KACP;AACH;;;;"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { Logger, Currency, PaymentMaker, AccountId, PaymentIdentifier, Destination } from '@atxp/common';
|
|
2
|
-
import BigNumber from 'bignumber.js';
|
|
3
|
-
import { SpendPermission } from './types.js';
|
|
4
|
-
import { type EphemeralSmartWallet } from './smartWalletHelpers.js';
|
|
5
|
-
/**
|
|
6
|
-
* Browser-based payment maker using ephemeral smart wallets with account abstraction.
|
|
7
|
-
* Uses Coinbase CDP for gasless transactions and spend permissions.
|
|
8
|
-
*/
|
|
9
|
-
export declare class SmartWalletPaymentMaker implements PaymentMaker {
|
|
10
|
-
private logger;
|
|
11
|
-
private spendPermission;
|
|
12
|
-
private smartWallet;
|
|
13
|
-
private chainId;
|
|
14
|
-
private usdcAddress;
|
|
15
|
-
constructor(spendPermission: SpendPermission, smartWallet: EphemeralSmartWallet, logger?: Logger, chainId?: number);
|
|
16
|
-
getSourceAddress(_params: {
|
|
17
|
-
amount: BigNumber;
|
|
18
|
-
currency: Currency;
|
|
19
|
-
receiver: string;
|
|
20
|
-
memo: string;
|
|
21
|
-
}): string;
|
|
22
|
-
generateJWT({ paymentRequestId, codeChallenge, accountId }: {
|
|
23
|
-
paymentRequestId: string;
|
|
24
|
-
codeChallenge: string;
|
|
25
|
-
accountId?: AccountId | null;
|
|
26
|
-
}): Promise<string>;
|
|
27
|
-
makePayment(destinations: Destination[], memo: string, _paymentRequestId?: string): Promise<PaymentIdentifier | null>;
|
|
28
|
-
}
|
|
29
|
-
//# sourceMappingURL=smartWalletPaymentMaker.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"smartWalletPaymentMaker.d.ts","sourceRoot":"","sources":["../src/smartWalletPaymentMaker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAiB,YAAY,EAAE,SAAS,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAExH,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAiDpE;;;GAGG;AACH,qBAAa,uBAAwB,YAAW,YAAY;IAC1D,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAS;gBAG1B,eAAe,EAAE,eAAe,EAChC,WAAW,EAAE,oBAAoB,EACjC,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,GAAE,MAAmB;IAe9B,gBAAgB,CAAC,OAAO,EAAE;QAAC,MAAM,EAAE,SAAS,CAAC;QAAC,QAAQ,EAAE,QAAQ,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,GAAG,MAAM;IAIpG,WAAW,CAAC,EAAC,gBAAgB,EAAE,aAAa,EAAE,SAAS,EAAC,EAAE;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;KAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAqC3J,WAAW,CAAC,YAAY,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;CA6F5H"}
|
|
@@ -1,172 +0,0 @@
|
|
|
1
|
-
import { getPolygonUSDCAddress } from '@atxp/client';
|
|
2
|
-
import { polygon } from 'viem/chains';
|
|
3
|
-
import { ConsoleLogger, constructEIP1271Message, createEIP1271AuthData, createEIP1271JWT } from '@atxp/common';
|
|
4
|
-
import { encodeFunctionData, parseEther } from 'viem';
|
|
5
|
-
import { prepareSpendCallData } from './spendPermissionShim.js';
|
|
6
|
-
|
|
7
|
-
const USDC_DECIMALS = 6;
|
|
8
|
-
// Minimal ERC20 ABI for transfer function
|
|
9
|
-
const ERC20_ABI = [
|
|
10
|
-
{
|
|
11
|
-
inputs: [
|
|
12
|
-
{ name: 'to', type: 'address' },
|
|
13
|
-
{ name: 'amount', type: 'uint256' }
|
|
14
|
-
],
|
|
15
|
-
name: 'transfer',
|
|
16
|
-
outputs: [{ name: '', type: 'bool' }],
|
|
17
|
-
stateMutability: 'nonpayable',
|
|
18
|
-
type: 'function'
|
|
19
|
-
}
|
|
20
|
-
];
|
|
21
|
-
async function waitForTransactionConfirmations(smartWallet, txHash, confirmations, logger) {
|
|
22
|
-
try {
|
|
23
|
-
const publicClient = smartWallet.client.account?.client;
|
|
24
|
-
if (publicClient && 'waitForTransactionReceipt' in publicClient) {
|
|
25
|
-
logger.info(`Waiting for ${confirmations} confirmations...`);
|
|
26
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
27
|
-
await publicClient.waitForTransactionReceipt({
|
|
28
|
-
hash: txHash,
|
|
29
|
-
confirmations: confirmations
|
|
30
|
-
});
|
|
31
|
-
logger.info(`Transaction confirmed with ${confirmations} confirmations`);
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
logger.warn('Unable to wait for confirmations: client does not support waitForTransactionReceipt');
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
catch (error) {
|
|
38
|
-
logger.warn(`Could not wait for additional confirmations: ${error}`);
|
|
39
|
-
// Continue anyway - the transaction is already mined
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Browser-based payment maker using ephemeral smart wallets with account abstraction.
|
|
44
|
-
* Uses Coinbase CDP for gasless transactions and spend permissions.
|
|
45
|
-
*/
|
|
46
|
-
class SmartWalletPaymentMaker {
|
|
47
|
-
constructor(spendPermission, smartWallet, logger, chainId = polygon.id) {
|
|
48
|
-
if (!spendPermission) {
|
|
49
|
-
throw new Error('Spend permission is required');
|
|
50
|
-
}
|
|
51
|
-
if (!smartWallet) {
|
|
52
|
-
throw new Error('Smart wallet is required');
|
|
53
|
-
}
|
|
54
|
-
this.logger = logger ?? new ConsoleLogger();
|
|
55
|
-
this.spendPermission = spendPermission;
|
|
56
|
-
this.smartWallet = smartWallet;
|
|
57
|
-
this.chainId = chainId;
|
|
58
|
-
this.usdcAddress = getPolygonUSDCAddress(chainId);
|
|
59
|
-
}
|
|
60
|
-
getSourceAddress(_params) {
|
|
61
|
-
return this.smartWallet.account.address;
|
|
62
|
-
}
|
|
63
|
-
async generateJWT({ paymentRequestId, codeChallenge, accountId }) {
|
|
64
|
-
// Generate EIP-1271 auth data for smart wallet authentication
|
|
65
|
-
const timestamp = Math.floor(Date.now() / 1000);
|
|
66
|
-
const message = constructEIP1271Message({
|
|
67
|
-
walletAddress: this.smartWallet.account.address,
|
|
68
|
-
timestamp,
|
|
69
|
-
codeChallenge,
|
|
70
|
-
paymentRequestId,
|
|
71
|
-
...(accountId ? { accountId } : {}),
|
|
72
|
-
});
|
|
73
|
-
// Sign the message - this will return an ABI-encoded signature from the smart wallet
|
|
74
|
-
const signature = await this.smartWallet.account.signMessage({
|
|
75
|
-
message: message
|
|
76
|
-
});
|
|
77
|
-
const authData = createEIP1271AuthData({
|
|
78
|
-
walletAddress: this.smartWallet.account.address,
|
|
79
|
-
message,
|
|
80
|
-
signature,
|
|
81
|
-
timestamp,
|
|
82
|
-
codeChallenge,
|
|
83
|
-
paymentRequestId,
|
|
84
|
-
...(accountId ? { accountId } : {}),
|
|
85
|
-
});
|
|
86
|
-
const jwtToken = createEIP1271JWT(authData);
|
|
87
|
-
this.logger.info(`codeChallenge: ${codeChallenge}`);
|
|
88
|
-
this.logger.info(`paymentRequestId: ${paymentRequestId}`);
|
|
89
|
-
this.logger.info(`walletAddress: ${this.smartWallet.account.address}`);
|
|
90
|
-
this.logger.info(`Generated EIP-1271 JWT: ${jwtToken}`);
|
|
91
|
-
return jwtToken;
|
|
92
|
-
}
|
|
93
|
-
async makePayment(destinations, memo, _paymentRequestId) {
|
|
94
|
-
// Filter to polygon chain destinations
|
|
95
|
-
const polygonDestinations = destinations.filter(d => d.chain === 'polygon');
|
|
96
|
-
if (polygonDestinations.length === 0) {
|
|
97
|
-
this.logger.debug('PolygonPaymentMaker: No polygon destinations found, cannot handle payment');
|
|
98
|
-
return null; // Cannot handle these destinations
|
|
99
|
-
}
|
|
100
|
-
// Pick first polygon destination
|
|
101
|
-
const dest = polygonDestinations[0];
|
|
102
|
-
const amount = dest.amount;
|
|
103
|
-
const currency = dest.currency;
|
|
104
|
-
const receiver = dest.address;
|
|
105
|
-
if (currency !== 'USDC') {
|
|
106
|
-
throw new Error('Only usdc currency is supported; received ' + currency);
|
|
107
|
-
}
|
|
108
|
-
this.logger.info(`Making spendPermission payment of ${amount} ${currency} to ${receiver} on Polygon with memo: ${memo}`);
|
|
109
|
-
// Convert amount to USDC units (6 decimals) as BigInt for spendPermission
|
|
110
|
-
const amountInUSDCUnits = BigInt(amount.multipliedBy(10 ** USDC_DECIMALS).toFixed(0));
|
|
111
|
-
const spendCalls = await prepareSpendCallData({ permission: this.spendPermission, amount: amountInUSDCUnits });
|
|
112
|
-
// Add a second call to transfer USDC from the smart wallet to the receiver
|
|
113
|
-
let transferCallData = encodeFunctionData({
|
|
114
|
-
abi: ERC20_ABI,
|
|
115
|
-
functionName: "transfer",
|
|
116
|
-
args: [receiver, amountInUSDCUnits],
|
|
117
|
-
});
|
|
118
|
-
// Append memo to transfer call data if present
|
|
119
|
-
// This works because the EVM ignores extra calldata beyond what a function expects.
|
|
120
|
-
// The ERC20 transfer() function only reads the first 68 bytes (4-byte selector + 32-byte address + 32-byte amount).
|
|
121
|
-
// Any additional data appended after those 68 bytes is safely ignored by the USDC contract
|
|
122
|
-
// but remains accessible in the transaction data for payment verification.
|
|
123
|
-
// This is a well-established pattern used by OpenSea, Uniswap, and other major protocols.
|
|
124
|
-
if (memo && memo.trim()) {
|
|
125
|
-
const memoHex = Buffer.from(memo.trim(), 'utf8').toString('hex');
|
|
126
|
-
transferCallData = (transferCallData + memoHex);
|
|
127
|
-
this.logger.info(`Added memo "${memo.trim()}" to transfer call`);
|
|
128
|
-
}
|
|
129
|
-
const transferCall = {
|
|
130
|
-
to: this.usdcAddress,
|
|
131
|
-
data: transferCallData,
|
|
132
|
-
value: '0x0'
|
|
133
|
-
};
|
|
134
|
-
// Combine spend permission calls with the transfer call
|
|
135
|
-
const allCalls = [...spendCalls, transferCall];
|
|
136
|
-
this.logger.info(`Executing ${allCalls.length} calls (${spendCalls.length} spend permission + 1 transfer)`);
|
|
137
|
-
const hash = await this.smartWallet.client.sendUserOperation({
|
|
138
|
-
account: this.smartWallet.account,
|
|
139
|
-
calls: allCalls.map(call => {
|
|
140
|
-
return {
|
|
141
|
-
to: call.to,
|
|
142
|
-
data: call.data,
|
|
143
|
-
value: BigInt(call.value || '0x0')
|
|
144
|
-
};
|
|
145
|
-
}),
|
|
146
|
-
maxPriorityFeePerGas: parseEther('0.000000001')
|
|
147
|
-
});
|
|
148
|
-
const receipt = await this.smartWallet.client.waitForUserOperationReceipt({ hash });
|
|
149
|
-
if (!receipt) {
|
|
150
|
-
throw new Error('User operation failed');
|
|
151
|
-
}
|
|
152
|
-
// The receipt contains the actual transaction hash that was mined on chain
|
|
153
|
-
const txHash = receipt.receipt.transactionHash;
|
|
154
|
-
if (!txHash) {
|
|
155
|
-
throw new Error('User operation was executed but no transaction hash was returned. This should not happen.');
|
|
156
|
-
}
|
|
157
|
-
this.logger.info(`Spend permission executed successfully. UserOp: ${receipt.userOpHash}, TxHash: ${txHash}`);
|
|
158
|
-
// Wait for additional confirmations to ensure the transaction is well-propagated
|
|
159
|
-
// This helps avoid the "Transaction receipt could not be found" error
|
|
160
|
-
await waitForTransactionConfirmations(this.smartWallet, txHash, 2, this.logger);
|
|
161
|
-
// Return payment result with chain and currency
|
|
162
|
-
return {
|
|
163
|
-
transactionId: txHash,
|
|
164
|
-
transactionSubId: receipt.userOpHash,
|
|
165
|
-
chain: 'polygon',
|
|
166
|
-
currency: 'USDC'
|
|
167
|
-
};
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
export { SmartWalletPaymentMaker };
|
|
172
|
-
//# sourceMappingURL=smartWalletPaymentMaker.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"smartWalletPaymentMaker.js","sources":["../src/smartWalletPaymentMaker.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Eip1193Provider, SpendPermission } from "./types.js";
|
|
2
|
-
export declare function requestSpendPermission(params: {
|
|
3
|
-
account: string;
|
|
4
|
-
spender: string;
|
|
5
|
-
token: string;
|
|
6
|
-
chainId: number;
|
|
7
|
-
allowance: bigint;
|
|
8
|
-
periodInDays: number;
|
|
9
|
-
provider: Eip1193Provider;
|
|
10
|
-
}): Promise<SpendPermission>;
|
|
11
|
-
export declare function prepareSpendCallData(params: {
|
|
12
|
-
permission: SpendPermission;
|
|
13
|
-
amount: bigint;
|
|
14
|
-
}): Promise<{
|
|
15
|
-
to: string;
|
|
16
|
-
data: string;
|
|
17
|
-
value: bigint;
|
|
18
|
-
}[]>;
|
|
19
|
-
//# sourceMappingURL=spendPermissionShim.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"spendPermissionShim.d.ts","sourceRoot":"","sources":["../src/spendPermissionShim.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAqF9D,wBAAsB,sBAAsB,CAAC,MAAM,EAAE;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,eAAe,CAAC;CAC3B,GAAG,OAAO,CAAC,eAAe,CAAC,CAkC3B;AAED,wBAAsB,oBAAoB,CAAC,MAAM,EAAE;IACjD,UAAU,EAAE,eAAe,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,CAczD"}
|
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
import { createWalletClient, custom, encodeFunctionData } from 'viem';
|
|
2
|
-
import { polygon } from 'viem/chains';
|
|
3
|
-
|
|
4
|
-
/*
|
|
5
|
-
This shim uses ERC20 approvals for spend permissions on Polygon.
|
|
6
|
-
|
|
7
|
-
The upside is that it will work with any Polygon wallet/connector (MetaMask, WalletConnect, etc.).
|
|
8
|
-
|
|
9
|
-
The downside is that it's a worse user experience (the user might not be familiar with ERC20 approvals,
|
|
10
|
-
and their wallet might not explain it to them), and worse security (rather than a bounded recurring limit,
|
|
11
|
-
the user needs to grant a single fixed amount up-front—renewing that amount requires a new approval).
|
|
12
|
-
*/
|
|
13
|
-
// TODO: this version of the shim will only work for the initial approval. we need logic that can conditionally
|
|
14
|
-
// require new approvals when the old one runs out. (this will require changing the API for this module, or at
|
|
15
|
-
// least introducting a new function)
|
|
16
|
-
// Minimal ERC20 ABI for approve and transferFrom functions
|
|
17
|
-
const ERC20_ABI = [
|
|
18
|
-
{
|
|
19
|
-
"constant": false,
|
|
20
|
-
"inputs": [
|
|
21
|
-
{
|
|
22
|
-
"name": "_spender",
|
|
23
|
-
"type": "address"
|
|
24
|
-
},
|
|
25
|
-
{
|
|
26
|
-
"name": "_value",
|
|
27
|
-
"type": "uint256"
|
|
28
|
-
}
|
|
29
|
-
],
|
|
30
|
-
"name": "approve",
|
|
31
|
-
"outputs": [
|
|
32
|
-
{
|
|
33
|
-
"name": "",
|
|
34
|
-
"type": "bool"
|
|
35
|
-
}
|
|
36
|
-
],
|
|
37
|
-
"payable": false,
|
|
38
|
-
"stateMutability": "nonpayable",
|
|
39
|
-
"type": "function"
|
|
40
|
-
},
|
|
41
|
-
{
|
|
42
|
-
"constant": false,
|
|
43
|
-
"inputs": [
|
|
44
|
-
{
|
|
45
|
-
"name": "_from",
|
|
46
|
-
"type": "address"
|
|
47
|
-
},
|
|
48
|
-
{
|
|
49
|
-
"name": "_to",
|
|
50
|
-
"type": "address"
|
|
51
|
-
},
|
|
52
|
-
{
|
|
53
|
-
"name": "_value",
|
|
54
|
-
"type": "uint256"
|
|
55
|
-
}
|
|
56
|
-
],
|
|
57
|
-
"name": "transferFrom",
|
|
58
|
-
"outputs": [
|
|
59
|
-
{
|
|
60
|
-
"name": "",
|
|
61
|
-
"type": "bool"
|
|
62
|
-
}
|
|
63
|
-
],
|
|
64
|
-
"payable": false,
|
|
65
|
-
"stateMutability": "nonpayable",
|
|
66
|
-
"type": "function"
|
|
67
|
-
}
|
|
68
|
-
];
|
|
69
|
-
/**
|
|
70
|
-
* Get Polygon chain configuration by chain ID
|
|
71
|
-
*/
|
|
72
|
-
function getPolygonChainConfig(chainId) {
|
|
73
|
-
switch (chainId) {
|
|
74
|
-
case 137: // Polygon mainnet
|
|
75
|
-
return polygon;
|
|
76
|
-
default:
|
|
77
|
-
throw new Error(`Unsupported Polygon Chain ID: ${chainId}. Supported chains: 137 (mainnet)`);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
async function requestSpendPermission(params) {
|
|
81
|
-
// Validate chain ID and get chain config
|
|
82
|
-
const chainConfig = getPolygonChainConfig(params.chainId);
|
|
83
|
-
const client = createWalletClient({
|
|
84
|
-
chain: chainConfig,
|
|
85
|
-
transport: custom(params.provider)
|
|
86
|
-
});
|
|
87
|
-
// Use the client
|
|
88
|
-
const hash = await client.sendTransaction({
|
|
89
|
-
account: params.account,
|
|
90
|
-
to: params.token,
|
|
91
|
-
data: encodeFunctionData({
|
|
92
|
-
abi: ERC20_ABI,
|
|
93
|
-
functionName: "approve",
|
|
94
|
-
args: [params.spender, params.allowance]
|
|
95
|
-
})
|
|
96
|
-
});
|
|
97
|
-
return {
|
|
98
|
-
permission: {
|
|
99
|
-
account: params.account,
|
|
100
|
-
spender: params.spender,
|
|
101
|
-
token: params.token,
|
|
102
|
-
allowance: params.allowance.toString(),
|
|
103
|
-
period: params.periodInDays * 24 * 60 * 60,
|
|
104
|
-
start: Math.floor(Date.now() / 1000),
|
|
105
|
-
end: Math.floor(Date.now() / 1000) + params.periodInDays * 24 * 60 * 60,
|
|
106
|
-
salt: '0x0',
|
|
107
|
-
extraData: '0x0'
|
|
108
|
-
},
|
|
109
|
-
signature: hash
|
|
110
|
-
};
|
|
111
|
-
}
|
|
112
|
-
async function prepareSpendCallData(params) {
|
|
113
|
-
// this introduces an extra layer of indirection: user wallet -> ephemeral wallet -> receiver
|
|
114
|
-
// but the reason for this is that we can't sign JWTs from the user wallet directly
|
|
115
|
-
return [
|
|
116
|
-
{
|
|
117
|
-
to: params.permission.permission.token,
|
|
118
|
-
data: encodeFunctionData({
|
|
119
|
-
abi: ERC20_ABI,
|
|
120
|
-
functionName: 'transferFrom',
|
|
121
|
-
args: [params.permission.permission.account, params.permission.permission.spender, params.amount]
|
|
122
|
-
}),
|
|
123
|
-
value: BigInt(0)
|
|
124
|
-
}
|
|
125
|
-
];
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
export { prepareSpendCallData, requestSpendPermission };
|
|
129
|
-
//# sourceMappingURL=spendPermissionShim.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"spendPermissionShim.js","sources":["../src/spendPermissionShim.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|