thirdweb 5.107.1 → 5.108.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 (96) hide show
  1. package/dist/cjs/exports/x402.js +8 -1
  2. package/dist/cjs/exports/x402.js.map +1 -1
  3. package/dist/cjs/react/core/utils/defaultTokens.js +2 -8
  4. package/dist/cjs/react/core/utils/defaultTokens.js.map +1 -1
  5. package/dist/cjs/react/web/ui/Bridge/BridgeOrchestrator.js +18 -14
  6. package/dist/cjs/react/web/ui/Bridge/BridgeOrchestrator.js.map +1 -1
  7. package/dist/cjs/react/web/ui/Bridge/BuyWidget.js +15 -6
  8. package/dist/cjs/react/web/ui/Bridge/BuyWidget.js.map +1 -1
  9. package/dist/cjs/version.js +1 -1
  10. package/dist/cjs/x402/common.js +173 -0
  11. package/dist/cjs/x402/common.js.map +1 -0
  12. package/dist/cjs/x402/encode.js +71 -0
  13. package/dist/cjs/x402/encode.js.map +1 -0
  14. package/dist/cjs/x402/facilitator.js +83 -2
  15. package/dist/cjs/x402/facilitator.js.map +1 -1
  16. package/dist/cjs/x402/fetchWithPayment.js +7 -15
  17. package/dist/cjs/x402/fetchWithPayment.js.map +1 -1
  18. package/dist/cjs/x402/schemas.js +50 -0
  19. package/dist/cjs/x402/schemas.js.map +1 -0
  20. package/dist/cjs/x402/settle-payment.js +174 -0
  21. package/dist/cjs/x402/settle-payment.js.map +1 -0
  22. package/dist/cjs/x402/sign.js +148 -0
  23. package/dist/cjs/x402/sign.js.map +1 -0
  24. package/dist/cjs/x402/types.js +5 -0
  25. package/dist/cjs/x402/types.js.map +1 -0
  26. package/dist/cjs/x402/verify-payment.js +121 -0
  27. package/dist/cjs/x402/verify-payment.js.map +1 -0
  28. package/dist/esm/exports/x402.js +3 -0
  29. package/dist/esm/exports/x402.js.map +1 -1
  30. package/dist/esm/react/core/utils/defaultTokens.js +2 -8
  31. package/dist/esm/react/core/utils/defaultTokens.js.map +1 -1
  32. package/dist/esm/react/web/ui/Bridge/BridgeOrchestrator.js +18 -14
  33. package/dist/esm/react/web/ui/Bridge/BridgeOrchestrator.js.map +1 -1
  34. package/dist/esm/react/web/ui/Bridge/BuyWidget.js +15 -6
  35. package/dist/esm/react/web/ui/Bridge/BuyWidget.js.map +1 -1
  36. package/dist/esm/version.js +1 -1
  37. package/dist/esm/x402/common.js +170 -0
  38. package/dist/esm/x402/common.js.map +1 -0
  39. package/dist/esm/x402/encode.js +66 -0
  40. package/dist/esm/x402/encode.js.map +1 -0
  41. package/dist/esm/x402/facilitator.js +83 -2
  42. package/dist/esm/x402/facilitator.js.map +1 -1
  43. package/dist/esm/x402/fetchWithPayment.js +8 -16
  44. package/dist/esm/x402/fetchWithPayment.js.map +1 -1
  45. package/dist/esm/x402/schemas.js +46 -0
  46. package/dist/esm/x402/schemas.js.map +1 -0
  47. package/dist/esm/x402/settle-payment.js +171 -0
  48. package/dist/esm/x402/settle-payment.js.map +1 -0
  49. package/dist/esm/x402/sign.js +145 -0
  50. package/dist/esm/x402/sign.js.map +1 -0
  51. package/dist/esm/x402/types.js +2 -0
  52. package/dist/esm/x402/types.js.map +1 -0
  53. package/dist/esm/x402/verify-payment.js +118 -0
  54. package/dist/esm/x402/verify-payment.js.map +1 -0
  55. package/dist/types/exports/x402.d.ts +4 -0
  56. package/dist/types/exports/x402.d.ts.map +1 -1
  57. package/dist/types/react/core/utils/defaultTokens.d.ts +2 -7
  58. package/dist/types/react/core/utils/defaultTokens.d.ts.map +1 -1
  59. package/dist/types/react/web/ui/Bridge/BridgeOrchestrator.d.ts +4 -3
  60. package/dist/types/react/web/ui/Bridge/BridgeOrchestrator.d.ts.map +1 -1
  61. package/dist/types/react/web/ui/Bridge/BuyWidget.d.ts +7 -3
  62. package/dist/types/react/web/ui/Bridge/BuyWidget.d.ts.map +1 -1
  63. package/dist/types/version.d.ts +1 -1
  64. package/dist/types/x402/common.d.ts +16 -0
  65. package/dist/types/x402/common.d.ts.map +1 -0
  66. package/dist/types/x402/encode.d.ts +23 -0
  67. package/dist/types/x402/encode.d.ts.map +1 -0
  68. package/dist/types/x402/facilitator.d.ts +44 -3
  69. package/dist/types/x402/facilitator.d.ts.map +1 -1
  70. package/dist/types/x402/fetchWithPayment.d.ts +1 -1
  71. package/dist/types/x402/fetchWithPayment.d.ts.map +1 -1
  72. package/dist/types/x402/schemas.d.ts +164 -0
  73. package/dist/types/x402/schemas.d.ts.map +1 -0
  74. package/dist/types/x402/settle-payment.d.ts +117 -0
  75. package/dist/types/x402/settle-payment.d.ts.map +1 -0
  76. package/dist/types/x402/sign.d.ts +12 -0
  77. package/dist/types/x402/sign.d.ts.map +1 -0
  78. package/dist/types/x402/types.d.ts +71 -0
  79. package/dist/types/x402/types.d.ts.map +1 -0
  80. package/dist/types/x402/verify-payment.d.ts +69 -0
  81. package/dist/types/x402/verify-payment.d.ts.map +1 -0
  82. package/package.json +1 -1
  83. package/src/exports/x402.ts +8 -0
  84. package/src/react/core/utils/defaultTokens.ts +2 -8
  85. package/src/react/web/ui/Bridge/BridgeOrchestrator.tsx +42 -31
  86. package/src/react/web/ui/Bridge/BuyWidget.tsx +24 -9
  87. package/src/version.ts +1 -1
  88. package/src/x402/common.ts +242 -0
  89. package/src/x402/encode.ts +81 -0
  90. package/src/x402/facilitator.ts +114 -6
  91. package/src/x402/fetchWithPayment.ts +13 -27
  92. package/src/x402/schemas.ts +76 -0
  93. package/src/x402/settle-payment.ts +186 -0
  94. package/src/x402/sign.ts +206 -0
  95. package/src/x402/types.ts +90 -0
  96. package/src/x402/verify-payment.ts +133 -0
@@ -1 +1 @@
1
- {"version":3,"file":"defaultTokens.js","sourceRoot":"","sources":["../../../../../src/react/core/utils/defaultTokens.ts"],"names":[],"mappings":"AAUA,MAAM,cAAc,GAClB,4vBAA4vB,CAAC;AAE/vB,MAAM,aAAa,GACjB,4qCAA4qC,CAAC;AAE/qC,MAAM,QAAQ,GACZ,ovEAAovE,CAAC;AAEvvE,MAAM,cAAc,GAClB,wmEAAwmE,CAAC;AAE3mE,MAAM,SAAS,GACb,whEAAwhE,CAAC;AAE3hE,MAAM,eAAe,GACnB,osBAAosB,CAAC;AAEvsB,MAAM,QAAQ,GACZ,4tBAA4tB,CAAC;AAE/tB,MAAM,UAAU,GACd,4hCAA4hC,CAAC;AAK/hC,kDAAkD;AAClD,MAAM,cAAc,GAAG;IACrB,GAAG,EAAE;QACH;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,iBAAiB;YACvB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,QAAQ;SACjB;KACF;IACD,IAAI,EAAE;QACJ;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;KACF;IACD,IAAI,EAAE;QACJ;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,6BAA6B;YACnC,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,MAAM;SACf;KACF;IACD,IAAI,EAAE;QACJ;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,qCAAqC;YAC3C,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,MAAM;SACf;KACF;IACD,KAAK,EAAE;QACL;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,QAAQ;SACjB;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,MAAM;SACf;KACF;IACD,KAAK,EAAE;QACL;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,gBAAgB;YACtB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,iBAAiB;YACvB,MAAM,EAAE,MAAM;SACf;KACF;IACD,KAAK,EAAE;QACL;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;SACf;KACF;IACD,MAAM,EAAE;QACN;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,gBAAgB;YACtB,MAAM,EAAE,MAAM;SACf;KACF;IACD,eAAe;IACf,MAAM,EAAE;QACN;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;KACF;IACD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;KACF;IACD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,4oEAA4oE;YAClpE,IAAI,EAAE,cAAc;YACpB,MAAM,EAAE,OAAO;SAChB;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;KACF;IACD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,4oEAA4oE;YAClpE,IAAI,EAAE,cAAc;YACpB,MAAM,EAAE,OAAO;SAChB;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,MAAM;SACf;KACF;IACD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,QAAQ;SACjB;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,MAAM;SACf;KACF;IACD,eAAe;IACf,OAAO,EAAE;QACP;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;KACF;IACD,QAAQ,EAAE;QACR;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;KACF;IACD,UAAU,EAAE;QACV;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;KACF;CACO,CAAC;AAEX;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,cAA4C,CAAC;AAK1E;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,eAAe,CAAC,KAAY,EAAE,MAAuB;IACnE,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACvC,OAAO,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;AAClD,CAAC"}
1
+ {"version":3,"file":"defaultTokens.js","sourceRoot":"","sources":["../../../../../src/react/core/utils/defaultTokens.ts"],"names":[],"mappings":"AAUA,MAAM,cAAc,GAClB,4vBAA4vB,CAAC;AAE/vB,MAAM,aAAa,GACjB,4qCAA4qC,CAAC;AAE/qC,MAAM,QAAQ,GACZ,ovEAAovE,CAAC;AAEvvE,MAAM,cAAc,GAClB,wmEAAwmE,CAAC;AAE3mE,MAAM,SAAS,GACb,whEAAwhE,CAAC;AAE3hE,MAAM,eAAe,GACnB,osBAAosB,CAAC;AAEvsB,MAAM,QAAQ,GACZ,4tBAA4tB,CAAC;AAE/tB,MAAM,UAAU,GACd,4hCAA4hC,CAAC;AAK/hC,kDAAkD;AAClD,MAAM,cAAc,GAAG;IACrB,GAAG,EAAE;QACH;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,iBAAiB;YACvB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,QAAQ;SACjB;KACF;IACD,IAAI,EAAE;QACJ;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;KACF;IACD,IAAI,EAAE;QACJ;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,6BAA6B;YACnC,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,MAAM;SACf;KACF;IACD,IAAI,EAAE;QACJ;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,qCAAqC;YAC3C,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,MAAM;SACf;KACF;IACD,KAAK,EAAE;QACL;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,QAAQ;SACjB;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,MAAM;SACf;KACF;IACD,KAAK,EAAE;QACL;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,gBAAgB;YACtB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,iBAAiB;YACvB,MAAM,EAAE,MAAM;SACf;KACF;IACD,KAAK,EAAE;QACL;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;SACf;KACF;IACD,MAAM,EAAE;QACN;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,gBAAgB;YACtB,MAAM,EAAE,MAAM;SACf;KACF;IACD,eAAe;IACf,MAAM,EAAE;QACN;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;KACF;IACD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;KACF;IACD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,4oEAA4oE;YAClpE,IAAI,EAAE,cAAc;YACpB,MAAM,EAAE,OAAO;SAChB;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;KACF;IACD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,4oEAA4oE;YAClpE,IAAI,EAAE,cAAc;YACpB,MAAM,EAAE,OAAO;SAChB;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,MAAM;SACf;KACF;IACD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,QAAQ;SACjB;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,MAAM;SACf;KACF;IACD,eAAe;IACf,OAAO,EAAE;QACP;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;KACF;IACD,QAAQ,EAAE;QACR;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;KACF;IACD,UAAU,EAAE;QACV;YACE,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;SACf;KACF;CACO,CAAC;AAEX;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,cAA4C,CAAC;AAK1E;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,eAAe,CAAC,KAAY,EAAE,MAAuB;IACnE,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACvC,OAAO,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;AAClD,CAAC"}
@@ -46,16 +46,16 @@ export function BridgeOrchestrator({ client, uiOptions, receiverAddress, onCompl
46
46
  }
47
47
  }, [send, uiOptions.mode]);
48
48
  // Handle post-buy transaction completion
49
- const handlePostBuyTransactionComplete = useCallback(() => {
50
- onComplete?.();
49
+ const handlePostBuyTransactionComplete = useCallback((quote) => {
50
+ onComplete?.(quote);
51
51
  send({ type: "RESET" });
52
52
  }, [onComplete, send]);
53
53
  // Handle errors
54
54
  const handleError = useCallback((error) => {
55
55
  console.error(error);
56
- onError?.(error);
56
+ onError?.(error, state.context.quote);
57
57
  send({ error, type: "ERROR_OCCURRED" });
58
- }, [onError, send]);
58
+ }, [onError, send, state.context.quote]);
59
59
  // Handle payment method selection
60
60
  const handlePaymentMethodSelected = useCallback((paymentMethod) => {
61
61
  send({ paymentMethod, type: "PAYMENT_METHOD_SELECTED" });
@@ -69,16 +69,17 @@ export function BridgeOrchestrator({ client, uiOptions, receiverAddress, onCompl
69
69
  send({ type: "ROUTE_CONFIRMED" });
70
70
  }, [send]);
71
71
  // Handle execution complete
72
- const handleExecutionComplete = useCallback((completedStatuses) => {
72
+ const handleExecutionComplete = useCallback((completedStatuses, quote) => {
73
73
  send({ completedStatuses, type: "EXECUTION_COMPLETE" });
74
74
  if (uiOptions.mode !== "transaction") {
75
- onComplete?.();
75
+ onComplete?.(quote);
76
76
  }
77
77
  }, [send, onComplete, uiOptions.mode]);
78
78
  // Handle retry
79
79
  const handleRetry = useCallback(() => {
80
80
  send({ type: "RETRY" });
81
81
  }, [send]);
82
+ const quote = state.context.quote;
82
83
  // Handle requirements resolved from FundWallet and DirectPayment
83
84
  const handleRequirementsResolved = useCallback((amount, token, receiverAddress) => {
84
85
  send({
@@ -90,7 +91,7 @@ export function BridgeOrchestrator({ client, uiOptions, receiverAddress, onCompl
90
91
  }, [send]);
91
92
  return (_jsxs(Container, { flex: "column", fullHeight: true, children: [state.value === "error" && state.context.currentError && (_jsx(ErrorBanner, { client: client, error: state.context.currentError, onCancel: () => {
92
93
  send({ type: "RESET" });
93
- onCancel?.();
94
+ onCancel?.(quote);
94
95
  }, onRetry: handleRetry })), state.value === "init" && uiOptions.mode === "fund_wallet" && (_jsx(FundWallet, { client: client, connectOptions: modifiedConnectOptions, onContinue: handleRequirementsResolved, presetOptions: presetOptions, receiverAddress: receiverAddress, showThirdwebBranding: showThirdwebBranding, uiOptions: uiOptions })), state.value === "init" && uiOptions.mode === "direct_payment" && (_jsx(DirectPayment, { client: client, onContinue: handleRequirementsResolved, showThirdwebBranding: showThirdwebBranding, uiOptions: uiOptions })), state.value === "init" && uiOptions.mode === "transaction" && (_jsx(TransactionPayment, { client: client, connectOptions: modifiedConnectOptions, onContinue: handleRequirementsResolved, onExecuteTransaction: () => send({ type: "CONTINUE_TO_TRANSACTION" }), showThirdwebBranding: showThirdwebBranding, uiOptions: uiOptions })), state.value === "methodSelection" &&
95
96
  state.context.destinationToken &&
96
97
  state.context.destinationAmount &&
@@ -108,15 +109,18 @@ export function BridgeOrchestrator({ client, uiOptions, receiverAddress, onCompl
108
109
  state.context.selectedPaymentMethod &&
109
110
  state.context.quote && (_jsx(PaymentDetails, { client: client, onBack: () => {
110
111
  send({ type: "BACK" });
111
- }, onConfirm: handleRouteConfirmed, onError: handleError, paymentMethod: state.context.selectedPaymentMethod, preparedQuote: state.context.quote, uiOptions: uiOptions })), state.value === "execute" &&
112
- state.context.quote &&
113
- state.context.request && (_jsx(StepRunner, { autoStart: true, client: client, onBack: () => {
112
+ }, onConfirm: handleRouteConfirmed, onError: handleError, paymentMethod: state.context.selectedPaymentMethod, preparedQuote: state.context.quote, uiOptions: uiOptions })), state.value === "execute" && quote && state.context.request && (_jsx(StepRunner, { autoStart: true, client: client, onBack: () => {
114
113
  send({ type: "BACK" });
115
- }, onCancel: onCancel, onComplete: handleExecutionComplete, request: state.context.request, wallet: state.context.selectedPaymentMethod?.payerWallet, windowAdapter: webWindowAdapter })), state.value === "success" &&
116
- state.context.quote &&
117
- state.context.completedStatuses && (_jsx(SuccessScreen, { client: client, completedStatuses: state.context.completedStatuses, onDone: handleDoneOrContinueClick, preparedQuote: state.context.quote, uiOptions: uiOptions, windowAdapter: webWindowAdapter, hasPaymentId: !!paymentLinkId })), state.value === "post-buy-transaction" &&
114
+ }, onCancel: () => {
115
+ onCancel(quote);
116
+ }, onComplete: (completedStatuses) => {
117
+ handleExecutionComplete(completedStatuses, quote);
118
+ }, request: state.context.request, wallet: state.context.selectedPaymentMethod?.payerWallet, windowAdapter: webWindowAdapter })), state.value === "success" &&
119
+ quote &&
120
+ state.context.completedStatuses && (_jsx(SuccessScreen, { client: client, completedStatuses: state.context.completedStatuses, onDone: handleDoneOrContinueClick, preparedQuote: quote, uiOptions: uiOptions, windowAdapter: webWindowAdapter, hasPaymentId: !!paymentLinkId })), state.value === "post-buy-transaction" &&
118
121
  uiOptions.mode === "transaction" &&
119
- uiOptions.transaction && (_jsx(ExecutingTxScreen, { closeModal: handlePostBuyTransactionComplete, onTxSent: () => {
122
+ quote &&
123
+ uiOptions.transaction && (_jsx(ExecutingTxScreen, { closeModal: () => handlePostBuyTransactionComplete(quote), onTxSent: () => {
120
124
  // Do nothing
121
125
  }, tx: uiOptions.transaction, windowAdapter: webWindowAdapter }))] }));
122
126
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BridgeOrchestrator.js","sourceRoot":"","sources":["../../../../../../src/react/web/ui/Bridge/BridgeOrchestrator.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BridgeOrchestrator.js","sourceRoot":"","sources":["../../../../../../src/react/web/ui/Bridge/BridgeOrchestrator.tsx"],"names":[],"mappings":"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"}
@@ -215,12 +215,21 @@ export function BuyWidget(props) {
215
215
  }
216
216
  else if (bridgeDataQuery.data?.type === "success") {
217
217
  // Show normal bridge orchestrator
218
- content = (_jsx(BridgeOrchestrator, { country: props.country, supportedTokens: props.supportedTokens, client: props.client, connectLocale: localeQuery.data, connectOptions: props.connectOptions, onCancel: () => {
219
- props.onCancel?.();
220
- }, onComplete: () => {
221
- props.onSuccess?.();
222
- }, onError: (err) => {
223
- props.onError?.(err);
218
+ content = (_jsx(BridgeOrchestrator, { country: props.country, supportedTokens: props.supportedTokens, client: props.client, connectLocale: localeQuery.data, connectOptions: props.connectOptions, onCancel: (quote) => {
219
+ // type guard
220
+ if (quote?.type === "buy" || quote?.type === "onramp") {
221
+ props.onCancel?.(quote);
222
+ }
223
+ }, onComplete: (quote) => {
224
+ // type guard
225
+ if (quote?.type === "buy" || quote?.type === "onramp") {
226
+ props.onSuccess?.(quote);
227
+ }
228
+ }, onError: (err, quote) => {
229
+ // type guard
230
+ if (quote?.type === "buy" || quote?.type === "onramp") {
231
+ props.onError?.(err, quote);
232
+ }
224
233
  }, paymentLinkId: props.paymentLinkId, paymentMethods: props.paymentMethods, presetOptions: props.presetOptions, purchaseData: props.purchaseData, receiverAddress: props.receiverAddress, uiOptions: bridgeDataQuery.data.data, showThirdwebBranding: props.showThirdwebBranding }));
225
234
  }
226
235
  return (_jsx(CustomThemeProvider, { theme: theme, children: _jsx(EmbedContainer, { className: props.className, modalSize: "compact", style: props.style, children: _jsx(DynamicHeight, { children: content }) }) }));
@@ -1 +1 @@
1
- {"version":3,"file":"BuyWidget.js","sourceRoot":"","sources":["../../../../../../src/react/web/ui/Bridge/BuyWidget.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BuyWidget.js","sourceRoot":"","sources":["../../../../../../src/react/web/ui/Bridge/BuyWidget.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export const version = "5.107.1";
1
+ export const version = "5.108.0";
2
2
  //# sourceMappingURL=version.js.map
@@ -0,0 +1,170 @@
1
+ import { moneySchema, SupportedEVMNetworks, } from "x402/types";
2
+ import { getAddress } from "../utils/address.js";
3
+ import { decodePayment } from "./encode.js";
4
+ import { networkToChainId, } from "./schemas.js";
5
+ import { x402Version, } from "./types.js";
6
+ /**
7
+ * Decodes a payment request and returns the payment requirements, selected payment requirements, and decoded payment
8
+ * @param args
9
+ * @returns The payment requirements, selected payment requirements, and decoded payment
10
+ */
11
+ export async function decodePaymentRequest(args) {
12
+ const { price, network, facilitator, resourceUrl, routeConfig = {}, payTo, method, paymentData, } = args;
13
+ const { description, mimeType, maxTimeoutSeconds, inputSchema, outputSchema, errorMessages, discoverable, } = routeConfig;
14
+ const atomicAmountForAsset = await processPriceToAtomicAmount(price, network, facilitator);
15
+ if ("error" in atomicAmountForAsset) {
16
+ return {
17
+ status: 402,
18
+ responseHeaders: { "Content-Type": "application/json" },
19
+ responseBody: {
20
+ x402Version,
21
+ error: atomicAmountForAsset.error,
22
+ accepts: [],
23
+ },
24
+ };
25
+ }
26
+ const { maxAmountRequired, asset } = atomicAmountForAsset;
27
+ const paymentRequirements = [];
28
+ if (SupportedEVMNetworks.includes(network) ||
29
+ network.startsWith("eip155:")) {
30
+ paymentRequirements.push({
31
+ scheme: "exact",
32
+ network,
33
+ maxAmountRequired,
34
+ resource: resourceUrl,
35
+ description: description ?? "",
36
+ mimeType: mimeType ?? "application/json",
37
+ payTo: getAddress(payTo),
38
+ maxTimeoutSeconds: maxTimeoutSeconds ?? 300,
39
+ asset: getAddress(asset.address),
40
+ // TODO: Rename outputSchema to requestStructure
41
+ outputSchema: {
42
+ input: {
43
+ type: "http",
44
+ method,
45
+ discoverable: discoverable ?? true,
46
+ ...inputSchema,
47
+ },
48
+ output: outputSchema,
49
+ },
50
+ extra: asset.eip712,
51
+ });
52
+ }
53
+ else {
54
+ return {
55
+ status: 402,
56
+ responseHeaders: {
57
+ "Content-Type": "application/json",
58
+ },
59
+ responseBody: {
60
+ x402Version,
61
+ error: `Unsupported network: ${network}`,
62
+ accepts: paymentRequirements,
63
+ },
64
+ };
65
+ }
66
+ // Check for payment header
67
+ if (!paymentData) {
68
+ return {
69
+ status: 402,
70
+ responseHeaders: {
71
+ "Content-Type": "application/json",
72
+ },
73
+ responseBody: {
74
+ x402Version,
75
+ error: errorMessages?.paymentRequired || "X-PAYMENT header is required",
76
+ accepts: paymentRequirements,
77
+ },
78
+ };
79
+ }
80
+ // Verify payment
81
+ let decodedPayment;
82
+ try {
83
+ decodedPayment = decodePayment(paymentData);
84
+ decodedPayment.x402Version = x402Version;
85
+ }
86
+ catch (error) {
87
+ return {
88
+ status: 402,
89
+ responseHeaders: {
90
+ "Content-Type": "application/json",
91
+ },
92
+ responseBody: {
93
+ x402Version,
94
+ error: errorMessages?.invalidPayment ||
95
+ (error instanceof Error ? error.message : "Invalid payment"),
96
+ accepts: paymentRequirements,
97
+ },
98
+ };
99
+ }
100
+ const selectedPaymentRequirements = paymentRequirements.find((value) => value.scheme === decodedPayment.scheme &&
101
+ value.network === decodedPayment.network);
102
+ if (!selectedPaymentRequirements) {
103
+ return {
104
+ status: 402,
105
+ responseHeaders: {
106
+ "Content-Type": "application/json",
107
+ },
108
+ responseBody: {
109
+ x402Version,
110
+ error: errorMessages?.noMatchingRequirements ||
111
+ "Unable to find matching payment requirements",
112
+ accepts: paymentRequirements,
113
+ },
114
+ };
115
+ }
116
+ return {
117
+ status: 200,
118
+ paymentRequirements,
119
+ decodedPayment,
120
+ selectedPaymentRequirements,
121
+ };
122
+ }
123
+ /**
124
+ * Parses the amount from the given price
125
+ *
126
+ * @param price - The price to parse
127
+ * @param network - The network to get the default asset for
128
+ * @returns The parsed amount or an error message
129
+ */
130
+ async function processPriceToAtomicAmount(price, network, facilitator) {
131
+ // Handle USDC amount (string) or token amount (ERC20TokenAmount)
132
+ let maxAmountRequired;
133
+ let asset;
134
+ if (typeof price === "string" || typeof price === "number") {
135
+ // USDC amount in dollars
136
+ const parsedAmount = moneySchema.safeParse(price);
137
+ if (!parsedAmount.success) {
138
+ return {
139
+ error: `Invalid price (price: ${price}). Must be in the form "$3.10", 0.10, "0.001", ${parsedAmount.error}`,
140
+ };
141
+ }
142
+ const parsedUsdAmount = parsedAmount.data;
143
+ const defaultAsset = await getDefaultAsset(network, facilitator);
144
+ if (!defaultAsset) {
145
+ return {
146
+ error: `Unable to get default asset on ${network}. Please specify an asset in the payment requirements.`,
147
+ };
148
+ }
149
+ asset = defaultAsset;
150
+ maxAmountRequired = (parsedUsdAmount * 10 ** asset.decimals).toString();
151
+ }
152
+ else {
153
+ // Token amount in atomic units
154
+ maxAmountRequired = price.amount;
155
+ asset = price.asset;
156
+ }
157
+ return {
158
+ maxAmountRequired,
159
+ asset,
160
+ };
161
+ }
162
+ async function getDefaultAsset(network, facilitator) {
163
+ const supportedAssets = await facilitator.supported();
164
+ const chainId = networkToChainId(network);
165
+ const matchingAsset = supportedAssets.kinds.find((supported) => supported.network === `eip155:${chainId}`);
166
+ const assetConfig = matchingAsset?.extra
167
+ ?.defaultAsset;
168
+ return assetConfig;
169
+ }
170
+ //# sourceMappingURL=common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/x402/common.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,66 @@
1
+ import { RequestedPaymentPayloadSchema, } from "./schemas.js";
2
+ /**
3
+ * Encodes a payment payload into a base64 string, ensuring bigint values are properly stringified
4
+ *
5
+ * @param payment - The payment payload to encode
6
+ * @returns A base64 encoded string representation of the payment payload
7
+ */
8
+ export function encodePayment(payment) {
9
+ let safe;
10
+ // evm
11
+ const evmPayload = payment.payload;
12
+ safe = {
13
+ ...payment,
14
+ payload: {
15
+ ...evmPayload,
16
+ authorization: Object.fromEntries(Object.entries(evmPayload.authorization).map(([key, value]) => [
17
+ key,
18
+ typeof value === "bigint" ? value.toString() : value,
19
+ ])),
20
+ },
21
+ };
22
+ return safeBase64Encode(JSON.stringify(safe));
23
+ }
24
+ /**
25
+ * Decodes a base64 encoded payment string back into a PaymentPayload object
26
+ *
27
+ * @param payment - The base64 encoded payment string to decode
28
+ * @returns The decoded and validated PaymentPayload object
29
+ */
30
+ export function decodePayment(payment) {
31
+ const decoded = safeBase64Decode(payment);
32
+ const parsed = JSON.parse(decoded);
33
+ const obj = {
34
+ ...parsed,
35
+ payload: parsed.payload,
36
+ };
37
+ const validated = RequestedPaymentPayloadSchema.parse(obj);
38
+ return validated;
39
+ }
40
+ /**
41
+ * Encodes a string to base64 format
42
+ *
43
+ * @param data - The string to be encoded to base64
44
+ * @returns The base64 encoded string
45
+ */
46
+ export function safeBase64Encode(data) {
47
+ if (typeof globalThis !== "undefined" &&
48
+ typeof globalThis.btoa === "function") {
49
+ return globalThis.btoa(data);
50
+ }
51
+ return Buffer.from(data).toString("base64");
52
+ }
53
+ /**
54
+ * Decodes a base64 string back to its original format
55
+ *
56
+ * @param data - The base64 encoded string to be decoded
57
+ * @returns The decoded string in UTF-8 format
58
+ */
59
+ function safeBase64Decode(data) {
60
+ if (typeof globalThis !== "undefined" &&
61
+ typeof globalThis.atob === "function") {
62
+ return globalThis.atob(data);
63
+ }
64
+ return Buffer.from(data, "base64").toString("utf-8");
65
+ }
66
+ //# sourceMappingURL=encode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encode.js","sourceRoot":"","sources":["../../../src/x402/encode.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,6BAA6B,GAC9B,MAAM,cAAc,CAAC;AAEtB;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,OAAgC;IAC5D,IAAI,IAA6B,CAAC;IAElC,MAAM;IACN,MAAM,UAAU,GAAG,OAAO,CAAC,OAA0B,CAAC;IACtD,IAAI,GAAG;QACL,GAAG,OAAO;QACV,OAAO,EAAE;YACP,GAAG,UAAU;YACb,aAAa,EAAE,MAAM,CAAC,WAAW,CAC/B,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;gBAC7D,GAAG;gBACH,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAE,KAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK;aACjE,CAAC,CACiC;SACtC;KACF,CAAC;IACF,OAAO,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AAChD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,OAAe;IAC3C,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAEnC,MAAM,GAAG,GAA4B;QACnC,GAAG,MAAM;QACT,OAAO,EAAE,MAAM,CAAC,OAA0B;KAC3C,CAAC;IACF,MAAM,SAAS,GAAG,6BAA6B,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3D,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,IACE,OAAO,UAAU,KAAK,WAAW;QACjC,OAAO,UAAU,CAAC,IAAI,KAAK,UAAU,EACrC,CAAC;QACD,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,IAAY;IACpC,IACE,OAAO,UAAU,KAAK,WAAW;QACjC,OAAO,UAAU,CAAC,IAAI,KAAK,UAAU,EACrC,CAAC;QACD,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AACvD,CAAC"}
@@ -1,7 +1,9 @@
1
+ import { stringify } from "../utils/json.js";
2
+ import { withCache } from "../utils/promise/withCache.js";
1
3
  const DEFAULT_BASE_URL = "https://api.thirdweb.com/v1/payments/x402";
2
4
  /**
3
5
  * Creates a facilitator for the x402 payment protocol.
4
- * Use this with any x402 middleware to enable settling transactions with your thirdweb server wallet.
6
+ * You can use this with `settlePayment` or with any x402 middleware to enable settling transactions with your thirdweb server wallet.
5
7
  *
6
8
  * @param config - The configuration for the facilitator
7
9
  * @returns a x402 compatible FacilitatorConfig
@@ -46,7 +48,7 @@ export function facilitator(config) {
46
48
  if (!serverWalletAddress) {
47
49
  throw new Error("Server wallet address is required for the x402 facilitator");
48
50
  }
49
- return {
51
+ const facilitator = {
50
52
  url: (config.baseUrl ?? DEFAULT_BASE_URL),
51
53
  createAuthHeaders: async () => {
52
54
  return {
@@ -68,6 +70,85 @@ export function facilitator(config) {
68
70
  },
69
71
  };
70
72
  },
73
+ /**
74
+ * Verifies a payment payload with the facilitator service
75
+ *
76
+ * @param payload - The payment payload to verify
77
+ * @param paymentRequirements - The payment requirements to verify against
78
+ * @returns A promise that resolves to the verification response
79
+ */
80
+ async verify(payload, paymentRequirements) {
81
+ const url = config.baseUrl ?? DEFAULT_BASE_URL;
82
+ let headers = { "Content-Type": "application/json" };
83
+ const authHeaders = await facilitator.createAuthHeaders();
84
+ headers = { ...headers, ...authHeaders.verify };
85
+ const res = await fetch(`${url}/verify`, {
86
+ method: "POST",
87
+ headers,
88
+ body: stringify({
89
+ x402Version: payload.x402Version,
90
+ paymentPayload: payload,
91
+ paymentRequirements: paymentRequirements,
92
+ }),
93
+ });
94
+ if (res.status !== 200) {
95
+ const text = `${res.statusText} ${await res.text()}`;
96
+ throw new Error(`Failed to verify payment: ${res.status} ${text}`);
97
+ }
98
+ const data = await res.json();
99
+ return data;
100
+ },
101
+ /**
102
+ * Settles a payment with the facilitator service
103
+ *
104
+ * @param payload - The payment payload to settle
105
+ * @param paymentRequirements - The payment requirements for the settlement
106
+ * @returns A promise that resolves to the settlement response
107
+ */
108
+ async settle(payload, paymentRequirements) {
109
+ const url = config.baseUrl ?? DEFAULT_BASE_URL;
110
+ let headers = { "Content-Type": "application/json" };
111
+ const authHeaders = await facilitator.createAuthHeaders();
112
+ headers = { ...headers, ...authHeaders.settle };
113
+ const res = await fetch(`${url}/settle`, {
114
+ method: "POST",
115
+ headers,
116
+ body: JSON.stringify({
117
+ x402Version: payload.x402Version,
118
+ paymentPayload: payload,
119
+ paymentRequirements: paymentRequirements,
120
+ }),
121
+ });
122
+ if (res.status !== 200) {
123
+ const text = `${res.statusText} ${await res.text()}`;
124
+ throw new Error(`Failed to settle payment: ${res.status} ${text}`);
125
+ }
126
+ const data = await res.json();
127
+ return data;
128
+ },
129
+ /**
130
+ * Gets the supported payment kinds from the facilitator service.
131
+ *
132
+ * @returns A promise that resolves to the supported payment kinds
133
+ */
134
+ async supported() {
135
+ const url = config.baseUrl ?? DEFAULT_BASE_URL;
136
+ return withCache(async () => {
137
+ let headers = { "Content-Type": "application/json" };
138
+ const authHeaders = await facilitator.createAuthHeaders();
139
+ headers = { ...headers, ...authHeaders.supported };
140
+ const res = await fetch(`${url}/supported`, { headers });
141
+ if (res.status !== 200) {
142
+ throw new Error(`Failed to get supported payment kinds: ${res.statusText}`);
143
+ }
144
+ const data = await res.json();
145
+ return data;
146
+ }, {
147
+ cacheKey: `supported-payment-kinds-${url}`,
148
+ cacheTime: 1000 * 60 * 60 * 24, // 24 hours
149
+ });
150
+ },
71
151
  };
152
+ return facilitator;
72
153
  }
73
154
  //# sourceMappingURL=facilitator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"facilitator.js","sourceRoot":"","sources":["../../../src/x402/facilitator.ts"],"names":[],"mappings":"AAUA,MAAM,gBAAgB,GAAG,2CAA2C,CAAC;AAErE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,UAAU,WAAW,CACzB,MAAqC;IAErC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;IAC1C,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,CAAC;IACD,MAAM,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,CAAC;IACvD,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAC;IACJ,CAAC;IACD,OAAO;QACL,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,IAAI,gBAAgB,CAA4B;QACpE,iBAAiB,EAAE,KAAK,IAAI,EAAE;YAC5B,OAAO;gBACL,MAAM,EAAE;oBACN,cAAc,EAAE,SAAS;iBAC1B;gBACD,MAAM,EAAE;oBACN,cAAc,EAAE,SAAS;oBACzB,6BAA6B,EAAE,mBAAmB;oBAClD,GAAG,CAAC,MAAM,CAAC,gBAAgB;wBACzB,CAAC,CAAC,EAAE,sBAAsB,EAAE,MAAM,CAAC,gBAAgB,EAAE;wBACrD,CAAC,CAAC,EAAE,CAAC;iBACR;gBACD,SAAS,EAAE;oBACT,cAAc,EAAE,SAAS;iBAC1B;gBACD,IAAI,EAAE;oBACJ,cAAc,EAAE,SAAS;iBAC1B;aACF,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"facilitator.js","sourceRoot":"","sources":["../../../src/x402/facilitator.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { createPaymentHeader } from "x402/client";
2
- import { ChainIdToNetwork, EvmNetworkToChainId, PaymentRequirementsSchema, } from "x402/types";
3
- import { viemAdapter } from "../adapters/viem.js";
1
+ import { ChainIdToNetwork } from "x402/types";
4
2
  import { getCachedChain } from "../chains/utils.js";
3
+ import { networkToChainId, RequestedPaymentRequirementsSchema, } from "./schemas.js";
4
+ import { createPaymentHeader } from "./sign.js";
5
5
  /**
6
6
  * Enables the payment of APIs using the x402 payment protocol.
7
7
  *
@@ -41,7 +41,7 @@ import { getCachedChain } from "../chains/utils.js";
41
41
  *
42
42
  * @bridge x402
43
43
  */
44
- export function wrapFetchWithPayment(fetch, client, wallet, maxValue = BigInt(1 * 10 ** 6)) {
44
+ export function wrapFetchWithPayment(fetch, _client, wallet, maxValue = BigInt(1 * 10 ** 6)) {
45
45
  return async (input, init) => {
46
46
  const response = await fetch(input, init);
47
47
  if (response.status !== 402) {
@@ -49,7 +49,7 @@ export function wrapFetchWithPayment(fetch, client, wallet, maxValue = BigInt(1
49
49
  }
50
50
  const { x402Version, accepts } = (await response.json());
51
51
  const parsedPaymentRequirements = accepts
52
- .map((x) => PaymentRequirementsSchema.parse(x))
52
+ .map((x) => RequestedPaymentRequirementsSchema.parse(x))
53
53
  .filter((x) => x.scheme === "exact"); // TODO (402): accept other schemes
54
54
  const account = wallet.getAccount();
55
55
  let chain = wallet.getChain();
@@ -60,10 +60,7 @@ export function wrapFetchWithPayment(fetch, client, wallet, maxValue = BigInt(1
60
60
  if (BigInt(selectedPaymentRequirements.maxAmountRequired) > maxValue) {
61
61
  throw new Error("Payment amount exceeds maximum allowed");
62
62
  }
63
- const paymentChainId = EvmNetworkToChainId.get(selectedPaymentRequirements.network);
64
- if (!paymentChainId) {
65
- throw new Error(`No chain found for the selected payment requirement: ${selectedPaymentRequirements.network}`);
66
- }
63
+ const paymentChainId = networkToChainId(selectedPaymentRequirements.network);
67
64
  // switch to the payment chain if it's not the current chain
68
65
  if (paymentChainId !== chain.id) {
69
66
  await wallet.switchChain(getCachedChain(paymentChainId));
@@ -72,12 +69,7 @@ export function wrapFetchWithPayment(fetch, client, wallet, maxValue = BigInt(1
72
69
  throw new Error(`Failed to switch chain (${paymentChainId})`);
73
70
  }
74
71
  }
75
- const walletClient = viemAdapter.wallet.toViem({
76
- wallet: wallet,
77
- chain,
78
- client,
79
- });
80
- const paymentHeader = await createPaymentHeader(walletClient, x402Version, selectedPaymentRequirements);
72
+ const paymentHeader = await createPaymentHeader(account, x402Version, selectedPaymentRequirements);
81
73
  const initParams = init || {};
82
74
  if (initParams.__is402Retry) {
83
75
  throw new Error("Payment already attempted");
@@ -99,7 +91,7 @@ function defaultPaymentRequirementsSelector(paymentRequirements, chainId, scheme
99
91
  if (!paymentRequirements.length) {
100
92
  throw new Error("No valid payment requirements found in server 402 response");
101
93
  }
102
- const currentWalletNetwork = ChainIdToNetwork[chainId];
94
+ const currentWalletNetwork = ChainIdToNetwork[chainId] || `eip155:${chainId}`;
103
95
  // find the payment requirements matching the connected wallet chain
104
96
  const matchingPaymentRequirements = paymentRequirements.find((x) => x.network === currentWalletNetwork && x.scheme === scheme);
105
97
  if (matchingPaymentRequirements) {