uvd-x402-sdk 2.46.0 → 2.48.0

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 (100) hide show
  1. package/README.md +65 -0
  2. package/dist/adapters/index.d.mts +3 -3
  3. package/dist/adapters/index.d.ts +3 -3
  4. package/dist/adapters/index.js +58 -1
  5. package/dist/adapters/index.js.map +1 -1
  6. package/dist/adapters/index.mjs +58 -1
  7. package/dist/adapters/index.mjs.map +1 -1
  8. package/dist/backend/index.d.mts +2 -2
  9. package/dist/backend/index.d.ts +2 -2
  10. package/dist/backend/index.js +62 -2
  11. package/dist/backend/index.js.map +1 -1
  12. package/dist/backend/index.mjs +62 -2
  13. package/dist/backend/index.mjs.map +1 -1
  14. package/dist/{index-BidnFGw_.d.mts → index-BQ45e-Xa.d.ts} +18 -2
  15. package/dist/{index-H64xdjKh.d.ts → index-BkeMrSHP.d.mts} +18 -2
  16. package/dist/{index-DgChnK_c.d.mts → index-DeJMYEKC.d.mts} +41 -1
  17. package/dist/{index-DgChnK_c.d.ts → index-DeJMYEKC.d.ts} +41 -1
  18. package/dist/index.d.mts +388 -6
  19. package/dist/index.d.ts +388 -6
  20. package/dist/index.js +503 -10
  21. package/dist/index.js.map +1 -1
  22. package/dist/index.mjs +487 -11
  23. package/dist/index.mjs.map +1 -1
  24. package/dist/{ows-DTDixPzO.d.ts → ows-C-KmORG9.d.ts} +1 -1
  25. package/dist/{ows-CYIVd4xO.d.mts → ows-Z9v4GxOZ.d.mts} +1 -1
  26. package/dist/providers/algorand/index.d.mts +1 -1
  27. package/dist/providers/algorand/index.d.ts +1 -1
  28. package/dist/providers/algorand/index.js +58 -1
  29. package/dist/providers/algorand/index.js.map +1 -1
  30. package/dist/providers/algorand/index.mjs +58 -1
  31. package/dist/providers/algorand/index.mjs.map +1 -1
  32. package/dist/providers/evm/index.d.mts +10 -2
  33. package/dist/providers/evm/index.d.ts +10 -2
  34. package/dist/providers/evm/index.js +107 -2
  35. package/dist/providers/evm/index.js.map +1 -1
  36. package/dist/providers/evm/index.mjs +107 -2
  37. package/dist/providers/evm/index.mjs.map +1 -1
  38. package/dist/providers/near/index.d.mts +1 -1
  39. package/dist/providers/near/index.d.ts +1 -1
  40. package/dist/providers/near/index.js +58 -1
  41. package/dist/providers/near/index.js.map +1 -1
  42. package/dist/providers/near/index.mjs +58 -1
  43. package/dist/providers/near/index.mjs.map +1 -1
  44. package/dist/providers/solana/index.d.mts +1 -1
  45. package/dist/providers/solana/index.d.ts +1 -1
  46. package/dist/providers/solana/index.js +58 -1
  47. package/dist/providers/solana/index.js.map +1 -1
  48. package/dist/providers/solana/index.mjs +58 -1
  49. package/dist/providers/solana/index.mjs.map +1 -1
  50. package/dist/providers/stellar/index.d.mts +1 -1
  51. package/dist/providers/stellar/index.d.ts +1 -1
  52. package/dist/providers/stellar/index.js +58 -1
  53. package/dist/providers/stellar/index.js.map +1 -1
  54. package/dist/providers/stellar/index.mjs +58 -1
  55. package/dist/providers/stellar/index.mjs.map +1 -1
  56. package/dist/providers/sui/index.d.mts +1 -1
  57. package/dist/providers/sui/index.d.ts +1 -1
  58. package/dist/providers/sui/index.js +58 -1
  59. package/dist/providers/sui/index.js.map +1 -1
  60. package/dist/providers/sui/index.mjs +58 -1
  61. package/dist/providers/sui/index.mjs.map +1 -1
  62. package/dist/providers/xrpl/index.d.mts +1 -1
  63. package/dist/providers/xrpl/index.d.ts +1 -1
  64. package/dist/providers/xrpl/index.js +58 -1
  65. package/dist/providers/xrpl/index.js.map +1 -1
  66. package/dist/providers/xrpl/index.mjs +58 -1
  67. package/dist/providers/xrpl/index.mjs.map +1 -1
  68. package/dist/react/index.d.mts +3 -3
  69. package/dist/react/index.d.ts +3 -3
  70. package/dist/react/index.js +124 -7
  71. package/dist/react/index.js.map +1 -1
  72. package/dist/react/index.mjs +124 -7
  73. package/dist/react/index.mjs.map +1 -1
  74. package/dist/utils/index.d.mts +68 -2
  75. package/dist/utils/index.d.ts +68 -2
  76. package/dist/utils/index.js +103 -2
  77. package/dist/utils/index.js.map +1 -1
  78. package/dist/utils/index.mjs +100 -3
  79. package/dist/utils/index.mjs.map +1 -1
  80. package/dist/{wallet-0cX9Pw2F.d.mts → wallet-w7BnImDG.d.mts} +1 -1
  81. package/dist/{wallet-0cX9Pw2F.d.ts → wallet-w7BnImDG.d.ts} +1 -1
  82. package/package.json +38 -13
  83. package/src/backend/index.ts +22 -1
  84. package/src/chains/index.ts +82 -0
  85. package/src/client/X402Client.ts +41 -12
  86. package/src/erc8128.ts +443 -0
  87. package/src/escrow-preauth.ts +416 -0
  88. package/src/index.ts +44 -0
  89. package/src/providers/algorand/index.ts +2 -2
  90. package/src/providers/evm/index.ts +28 -4
  91. package/src/providers/near/index.ts +2 -2
  92. package/src/providers/solana/index.ts +2 -2
  93. package/src/providers/stellar/index.ts +2 -2
  94. package/src/providers/sui/index.ts +2 -2
  95. package/src/providers/xrpl/index.ts +2 -2
  96. package/src/types/index.ts +42 -0
  97. package/src/utils/base64.ts +58 -0
  98. package/src/utils/index.ts +8 -0
  99. package/src/utils/token-metadata.ts +44 -0
  100. package/src/utils/x402.ts +3 -2
@@ -15,6 +15,7 @@ var CAIP2_IDENTIFIERS = {
15
15
  hyperevm: "eip155:999",
16
16
  unichain: "eip155:130",
17
17
  monad: "eip155:143",
18
+ bsc: "eip155:56",
18
19
  scroll: "eip155:534352",
19
20
  "skale-base": "eip155:1187947933",
20
21
  "skale-base-sepolia": "eip155:324705682",
@@ -468,6 +469,49 @@ var SUPPORTED_CHAINS = {
468
469
  enabled: true
469
470
  }
470
471
  },
472
+ bsc: {
473
+ chainId: 56,
474
+ chainIdHex: "0x38",
475
+ name: "bsc",
476
+ displayName: "BNB Smart Chain",
477
+ networkType: "evm",
478
+ rpcUrl: "https://binance.llamarpc.com",
479
+ explorerUrl: "https://bscscan.com",
480
+ nativeCurrency: {
481
+ name: "Binance Coin",
482
+ symbol: "BNB",
483
+ decimals: 18
484
+ },
485
+ usdc: {
486
+ // Binance-Peg USDC — 18 decimals, NOT the 6 every other chain uses.
487
+ address: "0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d",
488
+ decimals: 18,
489
+ name: "USD Coin",
490
+ version: "2"
491
+ },
492
+ tokens: {
493
+ usdc: {
494
+ address: "0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d",
495
+ decimals: 18,
496
+ name: "USD Coin",
497
+ version: "2"
498
+ },
499
+ ausd: {
500
+ address: "0x00000000eFE302BEAA2b3e6e1b18d08D69a9012a",
501
+ decimals: 6,
502
+ name: "Agora Dollar",
503
+ version: "1"
504
+ }
505
+ },
506
+ x402: {
507
+ facilitatorUrl: DEFAULT_FACILITATOR_URL,
508
+ // Disabled on purpose: Binance-Peg USDC does not implement ERC-3009
509
+ // `transferWithAuthorization`, so the exact scheme cannot settle it. The
510
+ // entry exists so the 18-decimal figure is on record — assuming the usual
511
+ // 6 here mis-prices a payment by 12 orders of magnitude.
512
+ enabled: false
513
+ }
514
+ },
471
515
  scroll: {
472
516
  chainId: 534352,
473
517
  chainIdHex: "0x82750",
@@ -994,6 +1038,19 @@ function getChainByName(name) {
994
1038
  return SUPPORTED_CHAINS[name.toLowerCase()];
995
1039
  }
996
1040
 
1041
+ // src/utils/base64.ts
1042
+ function encodeBase64Utf8(value) {
1043
+ const bytes = new TextEncoder().encode(value);
1044
+ let binary = "";
1045
+ for (let i = 0; i < bytes.length; i++) {
1046
+ binary += String.fromCharCode(bytes[i]);
1047
+ }
1048
+ return btoa(binary);
1049
+ }
1050
+ function encodeBase64Json(value) {
1051
+ return encodeBase64Utf8(JSON.stringify(value));
1052
+ }
1053
+
997
1054
  // src/utils/x402.ts
998
1055
  function chainToCAIP2(chainName) {
999
1056
  const caip2 = CAIP2_IDENTIFIERS[chainName.toLowerCase()];
@@ -1206,7 +1263,7 @@ var XRPLProvider = class {
1206
1263
  network,
1207
1264
  payload: payloadData
1208
1265
  };
1209
- return btoa(JSON.stringify(x402Payload));
1266
+ return encodeBase64Json(x402Payload);
1210
1267
  }
1211
1268
  // Private helpers
1212
1269
  async getXrpl() {