uvd-x402-sdk 2.0.1 → 2.0.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 +5 -8
- package/dist/{index-DJ4Cvrev.d.mts → index-D0N_SYpK.d.mts} +1 -1
- package/dist/{index-BrBqP1I8.d.ts → index-Db8dWNam.d.ts} +1 -1
- package/dist/{index-D6Sr4ARD.d.mts → index-MTBgC_SL.d.mts} +1 -1
- package/dist/{index-D6Sr4ARD.d.ts → index-MTBgC_SL.d.ts} +1 -1
- package/dist/index.d.mts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +1 -29
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -29
- package/dist/index.mjs.map +1 -1
- package/dist/providers/evm/index.d.mts +1 -1
- package/dist/providers/evm/index.d.ts +1 -1
- package/dist/providers/evm/index.js +1 -29
- package/dist/providers/evm/index.js.map +1 -1
- package/dist/providers/evm/index.mjs +1 -29
- package/dist/providers/evm/index.mjs.map +1 -1
- package/dist/providers/near/index.d.mts +1 -1
- package/dist/providers/near/index.d.ts +1 -1
- package/dist/providers/near/index.js +0 -1
- package/dist/providers/near/index.js.map +1 -1
- package/dist/providers/near/index.mjs +0 -1
- package/dist/providers/near/index.mjs.map +1 -1
- package/dist/providers/solana/index.d.mts +5 -1
- package/dist/providers/solana/index.d.ts +5 -1
- package/dist/providers/solana/index.js +9 -32
- package/dist/providers/solana/index.js.map +1 -1
- package/dist/providers/solana/index.mjs +9 -32
- package/dist/providers/solana/index.mjs.map +1 -1
- package/dist/providers/stellar/index.d.mts +1 -1
- package/dist/providers/stellar/index.d.ts +1 -1
- package/dist/providers/stellar/index.js +0 -1
- package/dist/providers/stellar/index.js.map +1 -1
- package/dist/providers/stellar/index.mjs +0 -1
- package/dist/providers/stellar/index.mjs.map +1 -1
- package/dist/react/index.d.mts +3 -3
- package/dist/react/index.d.ts +3 -3
- package/dist/react/index.js +1 -29
- package/dist/react/index.js.map +1 -1
- package/dist/react/index.mjs +1 -29
- package/dist/react/index.mjs.map +1 -1
- package/dist/utils/index.d.mts +1 -1
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.js +1 -29
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/index.mjs +1 -29
- package/dist/utils/index.mjs.map +1 -1
- package/package.json +2 -2
- package/src/chains/index.ts +1 -27
- package/src/index.ts +2 -2
- package/src/providers/solana/index.ts +12 -5
- package/src/types/index.ts +1 -2
package/src/chains/index.ts
CHANGED
|
@@ -25,7 +25,7 @@ export const DEFAULT_FACILITATOR_URL = 'https://facilitator.ultravioletadao.xyz'
|
|
|
25
25
|
*/
|
|
26
26
|
export const SUPPORTED_CHAINS: Record<string, ChainConfig> = {
|
|
27
27
|
// ============================================================================
|
|
28
|
-
// EVM CHAINS (
|
|
28
|
+
// EVM CHAINS (10 networks)
|
|
29
29
|
// ============================================================================
|
|
30
30
|
|
|
31
31
|
base: {
|
|
@@ -278,32 +278,6 @@ export const SUPPORTED_CHAINS: Record<string, ChainConfig> = {
|
|
|
278
278
|
},
|
|
279
279
|
},
|
|
280
280
|
|
|
281
|
-
// BSC disabled: USDC doesn't support ERC-3009 transferWithAuthorization
|
|
282
|
-
bsc: {
|
|
283
|
-
chainId: 56,
|
|
284
|
-
chainIdHex: '0x38',
|
|
285
|
-
name: 'bsc',
|
|
286
|
-
displayName: 'BNB Smart Chain',
|
|
287
|
-
networkType: 'evm',
|
|
288
|
-
rpcUrl: 'https://binance.llamarpc.com',
|
|
289
|
-
explorerUrl: 'https://bscscan.com',
|
|
290
|
-
nativeCurrency: {
|
|
291
|
-
name: 'Binance Coin',
|
|
292
|
-
symbol: 'BNB',
|
|
293
|
-
decimals: 18,
|
|
294
|
-
},
|
|
295
|
-
usdc: {
|
|
296
|
-
address: '0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d',
|
|
297
|
-
decimals: 18, // BSC USDC uses 18 decimals
|
|
298
|
-
name: 'USD Coin',
|
|
299
|
-
version: '2',
|
|
300
|
-
},
|
|
301
|
-
x402: {
|
|
302
|
-
facilitatorUrl: DEFAULT_FACILITATOR_URL,
|
|
303
|
-
enabled: false, // Disabled: BSC USDC doesn't support ERC-3009
|
|
304
|
-
},
|
|
305
|
-
},
|
|
306
|
-
|
|
307
281
|
// ============================================================================
|
|
308
282
|
// SVM CHAINS (2 networks) - Solana Virtual Machine
|
|
309
283
|
// ============================================================================
|
package/src/index.ts
CHANGED
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
*
|
|
4
4
|
* x402 Payment SDK - Gasless crypto payments using the Ultravioleta facilitator.
|
|
5
5
|
*
|
|
6
|
-
* Supports
|
|
7
|
-
* - EVM (
|
|
6
|
+
* Supports 14 blockchain networks:
|
|
7
|
+
* - EVM (10): Base, Ethereum, Polygon, Arbitrum, Optimism, Avalanche, Celo, HyperEVM, Unichain, Monad
|
|
8
8
|
* - SVM (2): Solana, Fogo
|
|
9
9
|
* - Stellar (1): Stellar
|
|
10
10
|
* - NEAR (1): NEAR Protocol
|
|
@@ -446,6 +446,10 @@ export class SVMProvider implements WalletAdapter {
|
|
|
446
446
|
|
|
447
447
|
/**
|
|
448
448
|
* Get or create a connection for a specific chain
|
|
449
|
+
*
|
|
450
|
+
* IMPORTANT: Caches by RPC URL, not chain name. This allows consumers to
|
|
451
|
+
* override the RPC URL (e.g., use Helius instead of public RPC) and get
|
|
452
|
+
* a fresh connection with their custom RPC.
|
|
449
453
|
*/
|
|
450
454
|
private async getConnection(chainConfig?: ChainConfig): Promise<InstanceType<typeof Connection>> {
|
|
451
455
|
await loadSolanaDeps();
|
|
@@ -455,14 +459,17 @@ export class SVMProvider implements WalletAdapter {
|
|
|
455
459
|
throw new X402Error('Chain config not found', 'CHAIN_NOT_SUPPORTED');
|
|
456
460
|
}
|
|
457
461
|
|
|
458
|
-
//
|
|
459
|
-
|
|
460
|
-
|
|
462
|
+
// Cache by RPC URL, not chain name - allows custom RPC overrides
|
|
463
|
+
const cacheKey = config.rpcUrl;
|
|
464
|
+
|
|
465
|
+
// Check if we already have a connection for this RPC
|
|
466
|
+
if (this.connections.has(cacheKey)) {
|
|
467
|
+
return this.connections.get(cacheKey)!;
|
|
461
468
|
}
|
|
462
469
|
|
|
463
|
-
// Create new connection for this
|
|
470
|
+
// Create new connection for this RPC
|
|
464
471
|
const connection = new Connection(config.rpcUrl, 'confirmed');
|
|
465
|
-
this.connections.set(
|
|
472
|
+
this.connections.set(cacheKey, connection);
|
|
466
473
|
|
|
467
474
|
return connection;
|
|
468
475
|
}
|
package/src/types/index.ts
CHANGED
|
@@ -26,7 +26,7 @@ export type NetworkType = 'evm' | 'svm' | 'solana' | 'stellar' | 'near';
|
|
|
26
26
|
export interface USDCConfig {
|
|
27
27
|
/** Contract/mint address */
|
|
28
28
|
address: string;
|
|
29
|
-
/** Token decimals (6 for most chains, 7 for Stellar
|
|
29
|
+
/** Token decimals (6 for most chains, 7 for Stellar) */
|
|
30
30
|
decimals: number;
|
|
31
31
|
/** Token name for EIP-712 domain (e.g., "USD Coin" or "USDC") */
|
|
32
32
|
name: string;
|
|
@@ -298,7 +298,6 @@ export const CAIP2_IDENTIFIERS: Record<string, string> = {
|
|
|
298
298
|
hyperevm: 'eip155:999',
|
|
299
299
|
unichain: 'eip155:130',
|
|
300
300
|
monad: 'eip155:143',
|
|
301
|
-
bsc: 'eip155:56',
|
|
302
301
|
// SVM chains
|
|
303
302
|
solana: 'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp',
|
|
304
303
|
fogo: 'svm:fogo',
|