uvd-x402-sdk 2.15.2 → 2.16.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 (77) hide show
  1. package/README.md +247 -6
  2. package/dist/adapters/index.d.mts +1 -1
  3. package/dist/adapters/index.d.ts +1 -1
  4. package/dist/adapters/index.js +82 -1
  5. package/dist/adapters/index.js.map +1 -1
  6. package/dist/adapters/index.mjs +82 -1
  7. package/dist/adapters/index.mjs.map +1 -1
  8. package/dist/backend/index.d.mts +1 -1
  9. package/dist/backend/index.d.ts +1 -1
  10. package/dist/backend/index.js +82 -1
  11. package/dist/backend/index.js.map +1 -1
  12. package/dist/backend/index.mjs +82 -1
  13. package/dist/backend/index.mjs.map +1 -1
  14. package/dist/{index-Cwi_VM05.d.ts → index-B2cQzyKa.d.ts} +10 -2
  15. package/dist/{index-BYIugZlE.d.mts → index-BE5cH7oS.d.mts} +48 -5
  16. package/dist/{index-BYIugZlE.d.ts → index-BE5cH7oS.d.ts} +48 -5
  17. package/dist/{index-D3PO3jLW.d.mts → index-oE4dj05k.d.mts} +10 -2
  18. package/dist/index.d.mts +11 -2
  19. package/dist/index.d.ts +11 -2
  20. package/dist/index.js +111 -2
  21. package/dist/index.js.map +1 -1
  22. package/dist/index.mjs +110 -3
  23. package/dist/index.mjs.map +1 -1
  24. package/dist/providers/algorand/index.d.mts +1 -1
  25. package/dist/providers/algorand/index.d.ts +1 -1
  26. package/dist/providers/algorand/index.js +95 -2
  27. package/dist/providers/algorand/index.js.map +1 -1
  28. package/dist/providers/algorand/index.mjs +95 -2
  29. package/dist/providers/algorand/index.mjs.map +1 -1
  30. package/dist/providers/evm/index.d.mts +1 -1
  31. package/dist/providers/evm/index.d.ts +1 -1
  32. package/dist/providers/evm/index.js +82 -1
  33. package/dist/providers/evm/index.js.map +1 -1
  34. package/dist/providers/evm/index.mjs +82 -1
  35. package/dist/providers/evm/index.mjs.map +1 -1
  36. package/dist/providers/near/index.d.mts +1 -1
  37. package/dist/providers/near/index.d.ts +1 -1
  38. package/dist/providers/near/index.js +82 -1
  39. package/dist/providers/near/index.js.map +1 -1
  40. package/dist/providers/near/index.mjs +82 -1
  41. package/dist/providers/near/index.mjs.map +1 -1
  42. package/dist/providers/solana/index.d.mts +1 -1
  43. package/dist/providers/solana/index.d.ts +1 -1
  44. package/dist/providers/solana/index.js +82 -1
  45. package/dist/providers/solana/index.js.map +1 -1
  46. package/dist/providers/solana/index.mjs +82 -1
  47. package/dist/providers/solana/index.mjs.map +1 -1
  48. package/dist/providers/stellar/index.d.mts +1 -1
  49. package/dist/providers/stellar/index.d.ts +1 -1
  50. package/dist/providers/stellar/index.js +82 -1
  51. package/dist/providers/stellar/index.js.map +1 -1
  52. package/dist/providers/stellar/index.mjs +82 -1
  53. package/dist/providers/stellar/index.mjs.map +1 -1
  54. package/dist/providers/sui/index.d.mts +105 -0
  55. package/dist/providers/sui/index.d.ts +105 -0
  56. package/dist/providers/sui/index.js +1027 -0
  57. package/dist/providers/sui/index.js.map +1 -0
  58. package/dist/providers/sui/index.mjs +1022 -0
  59. package/dist/providers/sui/index.mjs.map +1 -0
  60. package/dist/react/index.d.mts +3 -3
  61. package/dist/react/index.d.ts +3 -3
  62. package/dist/react/index.js +82 -1
  63. package/dist/react/index.js.map +1 -1
  64. package/dist/react/index.mjs +82 -1
  65. package/dist/react/index.mjs.map +1 -1
  66. package/dist/utils/index.d.mts +1 -1
  67. package/dist/utils/index.d.ts +1 -1
  68. package/dist/utils/index.js +82 -1
  69. package/dist/utils/index.js.map +1 -1
  70. package/dist/utils/index.mjs +82 -1
  71. package/dist/utils/index.mjs.map +1 -1
  72. package/package.json +15 -4
  73. package/src/chains/index.ts +98 -0
  74. package/src/facilitator.ts +18 -0
  75. package/src/index.ts +20 -1
  76. package/src/providers/sui/index.ts +431 -0
  77. package/src/types/index.ts +55 -3
package/dist/index.mjs CHANGED
@@ -24,7 +24,10 @@ var CAIP2_IDENTIFIERS = {
24
24
  near: "near:mainnet",
25
25
  // Algorand
26
26
  algorand: "algorand:mainnet",
27
- "algorand-testnet": "algorand:testnet"
27
+ "algorand-testnet": "algorand:testnet",
28
+ // Sui
29
+ sui: "sui:mainnet",
30
+ "sui-testnet": "sui:testnet"
28
31
  };
29
32
  var CAIP2_TO_CHAIN = Object.fromEntries(
30
33
  Object.entries(CAIP2_IDENTIFIERS).map(([k, v]) => [v, k])
@@ -663,6 +666,84 @@ var SUPPORTED_CHAINS = {
663
666
  facilitatorUrl: DEFAULT_FACILITATOR_URL,
664
667
  enabled: true
665
668
  }
669
+ },
670
+ // ============================================================================
671
+ // SUI (2 networks) - Uses sponsored transactions (facilitator pays gas)
672
+ // ============================================================================
673
+ sui: {
674
+ chainId: 0,
675
+ // Non-EVM
676
+ chainIdHex: "0x0",
677
+ name: "sui",
678
+ displayName: "Sui",
679
+ networkType: "sui",
680
+ rpcUrl: "https://fullnode.mainnet.sui.io:443",
681
+ explorerUrl: "https://suiscan.xyz/mainnet",
682
+ nativeCurrency: {
683
+ name: "Sui",
684
+ symbol: "SUI",
685
+ decimals: 9
686
+ },
687
+ usdc: {
688
+ // USDC coin type on Sui mainnet
689
+ address: "0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC",
690
+ decimals: 6,
691
+ name: "USDC",
692
+ version: "1"
693
+ },
694
+ tokens: {
695
+ usdc: {
696
+ address: "0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC",
697
+ decimals: 6,
698
+ name: "USDC",
699
+ version: "1"
700
+ },
701
+ ausd: {
702
+ // AUSD (Agora USD) coin type on Sui mainnet
703
+ address: "0x2053d08c1e2bd02791056171aab0fd12bd7cd7efad2ab8f6b9c8902f14df2ff2::ausd::AUSD",
704
+ decimals: 6,
705
+ name: "AUSD",
706
+ version: "1"
707
+ }
708
+ },
709
+ x402: {
710
+ facilitatorUrl: DEFAULT_FACILITATOR_URL,
711
+ enabled: true
712
+ }
713
+ },
714
+ "sui-testnet": {
715
+ chainId: 0,
716
+ // Non-EVM
717
+ chainIdHex: "0x0",
718
+ name: "sui-testnet",
719
+ displayName: "Sui Testnet",
720
+ networkType: "sui",
721
+ rpcUrl: "https://fullnode.testnet.sui.io:443",
722
+ explorerUrl: "https://suiscan.xyz/testnet",
723
+ nativeCurrency: {
724
+ name: "Sui",
725
+ symbol: "SUI",
726
+ decimals: 9
727
+ },
728
+ usdc: {
729
+ // USDC coin type on Sui testnet
730
+ address: "0xa1ec7fc00a6f40db9693ad1415d0c193ad3906494428cf252621037bd7117e29::usdc::USDC",
731
+ decimals: 6,
732
+ name: "USDC",
733
+ version: "1"
734
+ },
735
+ tokens: {
736
+ usdc: {
737
+ address: "0xa1ec7fc00a6f40db9693ad1415d0c193ad3906494428cf252621037bd7117e29::usdc::USDC",
738
+ decimals: 6,
739
+ name: "USDC",
740
+ version: "1"
741
+ }
742
+ },
743
+ x402: {
744
+ facilitatorUrl: DEFAULT_FACILITATOR_URL,
745
+ enabled: true
746
+ }
666
747
  }
667
748
  };
668
749
  var DEFAULT_CHAIN = "base";
@@ -698,6 +779,15 @@ function isSVMChain(chainName) {
698
779
  const chain = getChainByName(chainName);
699
780
  return chain?.networkType === "svm";
700
781
  }
782
+ function getSuiChains() {
783
+ return Object.values(SUPPORTED_CHAINS).filter(
784
+ (chain) => chain.networkType === "sui" && chain.x402.enabled
785
+ );
786
+ }
787
+ function isSuiChain(chainName) {
788
+ const chain = getChainByName(chainName);
789
+ return chain?.networkType === "sui";
790
+ }
701
791
  function getNetworkType(chainName) {
702
792
  const chain = getChainByName(chainName);
703
793
  return chain?.networkType;
@@ -717,6 +807,8 @@ function getExplorerTxUrl(chainName, txHash) {
717
807
  return `${chain.explorerUrl}/txns/${txHash}`;
718
808
  case "algorand":
719
809
  return `${chain.explorerUrl}/tx/${txHash}`;
810
+ case "sui":
811
+ return `${chain.explorerUrl}/tx/${txHash}`;
720
812
  default:
721
813
  return null;
722
814
  }
@@ -1602,7 +1694,19 @@ var FACILITATOR_ADDRESSES = {
1602
1694
  /**
1603
1695
  * Algorand facilitator address (testnet)
1604
1696
  */
1605
- "algorand-testnet": "5DPPDQNYUPCTXRZWRYSF3WPYU6RKAUR25F3YG4EKXQRHV5AUAI62H5GXL4"
1697
+ "algorand-testnet": "5DPPDQNYUPCTXRZWRYSF3WPYU6RKAUR25F3YG4EKXQRHV5AUAI62H5GXL4",
1698
+ // ============================================
1699
+ // Sui
1700
+ // ============================================
1701
+ /**
1702
+ * Sui facilitator address (mainnet)
1703
+ * Used for: Sponsoring transactions (paying gas)
1704
+ */
1705
+ sui: "0xe7bbf2b13f7d72714760aa16e024fa1b35a978793f9893d0568a4fbf356a764a",
1706
+ /**
1707
+ * Sui facilitator address (testnet)
1708
+ */
1709
+ "sui-testnet": "0xabbd16a2fab2a502c9cfe835195a6fc7d70bfc27cffb40b8b286b52a97006e67"
1606
1710
  };
1607
1711
  function getFacilitatorAddress(chainName, networkType) {
1608
1712
  const exactMatch = FACILITATOR_ADDRESSES[chainName];
@@ -1624,9 +1728,12 @@ function getFacilitatorAddress(chainName, networkType) {
1624
1728
  if (networkType === "near") {
1625
1729
  return FACILITATOR_ADDRESSES.near;
1626
1730
  }
1731
+ if (networkType === "sui") {
1732
+ return FACILITATOR_ADDRESSES.sui;
1733
+ }
1627
1734
  return void 0;
1628
1735
  }
1629
1736
 
1630
- export { CAIP2_IDENTIFIERS, CAIP2_TO_CHAIN, DEFAULT_CHAIN, DEFAULT_CONFIG, DEFAULT_FACILITATOR_URL, DEFAULT_PAYMENT_HEADER, FACILITATOR_ADDRESSES, PAYMENT_HEADER_NAMES, SUPPORTED_CHAINS, X402Client, X402Error, caip2ToChain, chainToCAIP2, convertX402Header, createPaymentHeaders, createX402Header, createX402V1Header, createX402V2Header, decodeX402Header, detectX402Version, encodeX402Header, generatePaymentOptions, getAlgorandChains, getChainById, getChainByName, getChainsByNetworkType, getChainsByToken, getEVMChainIds, getEnabledChains, getExplorerAddressUrl, getExplorerTxUrl, getFacilitatorAddress, getNetworkType, getPaymentHeader, getSVMChains, getSupportedTokens, getTokenConfig, isAlgorandChain, isCAIP2Format, isChainSupported, isSVMChain, isTokenSupported, parseNetworkIdentifier, validateAmount, validateRecipient };
1737
+ export { CAIP2_IDENTIFIERS, CAIP2_TO_CHAIN, DEFAULT_CHAIN, DEFAULT_CONFIG, DEFAULT_FACILITATOR_URL, DEFAULT_PAYMENT_HEADER, FACILITATOR_ADDRESSES, PAYMENT_HEADER_NAMES, SUPPORTED_CHAINS, X402Client, X402Error, caip2ToChain, chainToCAIP2, convertX402Header, createPaymentHeaders, createX402Header, createX402V1Header, createX402V2Header, decodeX402Header, detectX402Version, encodeX402Header, generatePaymentOptions, getAlgorandChains, getChainById, getChainByName, getChainsByNetworkType, getChainsByToken, getEVMChainIds, getEnabledChains, getExplorerAddressUrl, getExplorerTxUrl, getFacilitatorAddress, getNetworkType, getPaymentHeader, getSVMChains, getSuiChains, getSupportedTokens, getTokenConfig, isAlgorandChain, isCAIP2Format, isChainSupported, isSVMChain, isSuiChain, isTokenSupported, parseNetworkIdentifier, validateAmount, validateRecipient };
1631
1738
  //# sourceMappingURL=index.mjs.map
1632
1739
  //# sourceMappingURL=index.mjs.map