thirdweb 5.111.9 → 5.111.10

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 (98) hide show
  1. package/dist/cjs/cli/commands/stylus/create.js +48 -0
  2. package/dist/cjs/cli/commands/stylus/create.js.map +1 -1
  3. package/dist/cjs/extensions/modules/common/installPublishedModule.js +26 -9
  4. package/dist/cjs/extensions/modules/common/installPublishedModule.js.map +1 -1
  5. package/dist/cjs/extensions/prebuilts/deploy-published.js +1 -1
  6. package/dist/cjs/extensions/prebuilts/deploy-published.js.map +1 -1
  7. package/dist/cjs/react/web/ui/Bridge/TransactionPayment.js +1 -1
  8. package/dist/cjs/react/web/ui/Bridge/common/TokenAndChain.js +1 -1
  9. package/dist/cjs/react/web/ui/Bridge/common/TokenBalanceRow.js +2 -2
  10. package/dist/cjs/react/web/ui/Bridge/common/TokenBalanceRow.js.map +1 -1
  11. package/dist/cjs/react/web/ui/Bridge/common/selected-token-button.js +7 -2
  12. package/dist/cjs/react/web/ui/Bridge/common/selected-token-button.js.map +1 -1
  13. package/dist/cjs/react/web/ui/Bridge/payment-details/PaymentOverview.js +5 -5
  14. package/dist/cjs/react/web/ui/Bridge/payment-details/PaymentOverview.js.map +1 -1
  15. package/dist/cjs/react/web/ui/Bridge/payment-selection/TokenSelection.js +1 -1
  16. package/dist/cjs/react/web/ui/Bridge/payment-success/PaymentReceipt.js +20 -44
  17. package/dist/cjs/react/web/ui/Bridge/payment-success/PaymentReceipt.js.map +1 -1
  18. package/dist/cjs/react/web/ui/Bridge/payment-success/SuccessScreen.js +3 -3
  19. package/dist/cjs/react/web/ui/Bridge/payment-success/SuccessScreen.js.map +1 -1
  20. package/dist/cjs/react/web/ui/Bridge/swap-widget/select-chain.js +10 -2
  21. package/dist/cjs/react/web/ui/Bridge/swap-widget/select-chain.js.map +1 -1
  22. package/dist/cjs/react/web/ui/Bridge/swap-widget/select-token-ui.js +94 -48
  23. package/dist/cjs/react/web/ui/Bridge/swap-widget/select-token-ui.js.map +1 -1
  24. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.js +2 -1
  25. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.js.map +1 -1
  26. package/dist/cjs/react/web/ui/components/CopyIcon.js +6 -8
  27. package/dist/cjs/react/web/ui/components/CopyIcon.js.map +1 -1
  28. package/dist/cjs/react/web/ui/components/Spacer.js +1 -0
  29. package/dist/cjs/react/web/ui/components/Spacer.js.map +1 -1
  30. package/dist/cjs/version.js +1 -1
  31. package/dist/cjs/version.js.map +1 -1
  32. package/dist/esm/cli/commands/stylus/create.js +48 -0
  33. package/dist/esm/cli/commands/stylus/create.js.map +1 -1
  34. package/dist/esm/extensions/modules/common/installPublishedModule.js +26 -9
  35. package/dist/esm/extensions/modules/common/installPublishedModule.js.map +1 -1
  36. package/dist/esm/extensions/prebuilts/deploy-published.js +1 -1
  37. package/dist/esm/extensions/prebuilts/deploy-published.js.map +1 -1
  38. package/dist/esm/react/web/ui/Bridge/TransactionPayment.js +1 -1
  39. package/dist/esm/react/web/ui/Bridge/common/TokenAndChain.js +1 -1
  40. package/dist/esm/react/web/ui/Bridge/common/TokenBalanceRow.js +2 -2
  41. package/dist/esm/react/web/ui/Bridge/common/TokenBalanceRow.js.map +1 -1
  42. package/dist/esm/react/web/ui/Bridge/common/selected-token-button.js +7 -2
  43. package/dist/esm/react/web/ui/Bridge/common/selected-token-button.js.map +1 -1
  44. package/dist/esm/react/web/ui/Bridge/payment-details/PaymentOverview.js +5 -5
  45. package/dist/esm/react/web/ui/Bridge/payment-details/PaymentOverview.js.map +1 -1
  46. package/dist/esm/react/web/ui/Bridge/payment-selection/TokenSelection.js +1 -1
  47. package/dist/esm/react/web/ui/Bridge/payment-success/PaymentReceipt.js +23 -47
  48. package/dist/esm/react/web/ui/Bridge/payment-success/PaymentReceipt.js.map +1 -1
  49. package/dist/esm/react/web/ui/Bridge/payment-success/SuccessScreen.js +4 -4
  50. package/dist/esm/react/web/ui/Bridge/payment-success/SuccessScreen.js.map +1 -1
  51. package/dist/esm/react/web/ui/Bridge/swap-widget/select-chain.js +10 -2
  52. package/dist/esm/react/web/ui/Bridge/swap-widget/select-chain.js.map +1 -1
  53. package/dist/esm/react/web/ui/Bridge/swap-widget/select-token-ui.js +95 -49
  54. package/dist/esm/react/web/ui/Bridge/swap-widget/select-token-ui.js.map +1 -1
  55. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.js +2 -1
  56. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.js.map +1 -1
  57. package/dist/esm/react/web/ui/components/CopyIcon.js +6 -8
  58. package/dist/esm/react/web/ui/components/CopyIcon.js.map +1 -1
  59. package/dist/esm/react/web/ui/components/Spacer.js +1 -0
  60. package/dist/esm/react/web/ui/components/Spacer.js.map +1 -1
  61. package/dist/esm/version.js +1 -1
  62. package/dist/esm/version.js.map +1 -1
  63. package/dist/scripts/bridge-widget.js +100 -100
  64. package/dist/types/cli/commands/stylus/create.d.ts.map +1 -1
  65. package/dist/types/extensions/modules/common/installPublishedModule.d.ts.map +1 -1
  66. package/dist/types/react/web/ui/Bridge/common/TokenBalanceRow.d.ts.map +1 -1
  67. package/dist/types/react/web/ui/Bridge/common/selected-token-button.d.ts.map +1 -1
  68. package/dist/types/react/web/ui/Bridge/payment-details/PaymentOverview.d.ts.map +1 -1
  69. package/dist/types/react/web/ui/Bridge/payment-success/PaymentReceipt.d.ts.map +1 -1
  70. package/dist/types/react/web/ui/Bridge/payment-success/SuccessScreen.d.ts.map +1 -1
  71. package/dist/types/react/web/ui/Bridge/swap-widget/select-chain.d.ts.map +1 -1
  72. package/dist/types/react/web/ui/Bridge/swap-widget/select-token-ui.d.ts.map +1 -1
  73. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.d.ts.map +1 -1
  74. package/dist/types/react/web/ui/components/CopyIcon.d.ts.map +1 -1
  75. package/dist/types/react/web/ui/components/Spacer.d.ts.map +1 -1
  76. package/dist/types/version.d.ts +1 -1
  77. package/dist/types/version.d.ts.map +1 -1
  78. package/package.json +8 -8
  79. package/src/cli/commands/stylus/create.ts +49 -0
  80. package/src/contract/deployment/deploy-dynamic.test.ts +35 -39
  81. package/src/extensions/dynamic-contracts/write/installPublishedExtension.test.ts +40 -44
  82. package/src/extensions/dynamic-contracts/write/uninstallExtension.test.ts +1 -2
  83. package/src/extensions/modules/common/installPublishedModule.ts +28 -9
  84. package/src/extensions/prebuilts/deploy-published.ts +1 -1
  85. package/src/react/web/ui/Bridge/TransactionPayment.tsx +1 -1
  86. package/src/react/web/ui/Bridge/common/TokenAndChain.tsx +1 -1
  87. package/src/react/web/ui/Bridge/common/TokenBalanceRow.tsx +11 -10
  88. package/src/react/web/ui/Bridge/common/selected-token-button.tsx +11 -1
  89. package/src/react/web/ui/Bridge/payment-details/PaymentOverview.tsx +9 -7
  90. package/src/react/web/ui/Bridge/payment-selection/TokenSelection.tsx +1 -1
  91. package/src/react/web/ui/Bridge/payment-success/PaymentReceipt.tsx +92 -115
  92. package/src/react/web/ui/Bridge/payment-success/SuccessScreen.tsx +4 -6
  93. package/src/react/web/ui/Bridge/swap-widget/select-chain.tsx +18 -3
  94. package/src/react/web/ui/Bridge/swap-widget/select-token-ui.tsx +186 -118
  95. package/src/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.tsx +5 -3
  96. package/src/react/web/ui/components/CopyIcon.tsx +8 -9
  97. package/src/react/web/ui/components/Spacer.tsx +1 -0
  98. package/src/version.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/stylus/create.ts"],"names":[],"mappings":"AAKA,wBAAsB,mBAAmB,kBA2IxC"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/stylus/create.ts"],"names":[],"mappings":"AAKA,wBAAsB,mBAAmB,kBA4LxC"}
@@ -1 +1 @@
1
- {"version":3,"file":"installPublishedModule.d.ts","sourceRoot":"","sources":["../../../../../src/extensions/modules/common/installPublishedModule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEtE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAC;AAGrE;;GAEG;AACH,MAAM,MAAM,6BAA6B,GAAG;IAC1C,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,UAAU,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,6BAA6B,kMA+B5E"}
1
+ {"version":3,"file":"installPublishedModule.d.ts","sourceRoot":"","sources":["../../../../../src/extensions/modules/common/installPublishedModule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEtE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAC;AAIrE;;GAEG;AACH,MAAM,MAAM,6BAA6B,GAAG;IAC1C,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,UAAU,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,6BAA6B,kMAiD5E"}
@@ -1 +1 @@
1
- {"version":3,"file":"TokenBalanceRow.d.ts","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/Bridge/common/TokenBalanceRow.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAE5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAShF,wBAAgB,eAAe,CAAC,EAC9B,MAAM,EACN,KAAK,EACL,MAAM,EACN,OAAO,EACP,KAAK,EACL,QAAQ,GACT,EAAE;IACD,MAAM,EAAE,cAAc,CAAC;IACvB,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAChC,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,QAAQ,CAAC,EAAE,qBAAqB,CAAC;CAClC,2CAsEA"}
1
+ {"version":3,"file":"TokenBalanceRow.d.ts","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/Bridge/common/TokenBalanceRow.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAE5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAShF,wBAAgB,eAAe,CAAC,EAC9B,MAAM,EACN,KAAK,EACL,MAAM,EACN,OAAO,EACP,KAAK,EACL,QAAQ,GACT,EAAE;IACD,MAAM,EAAE,cAAc,CAAC;IACvB,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAChC,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,QAAQ,CAAC,EAAE,qBAAqB,CAAC;CAClC,2CAuEA"}
@@ -1 +1 @@
1
- {"version":3,"file":"selected-token-button.d.ts","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/Bridge/common/selected-token-button.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAetE,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IACzC,aAAa,EACT;QACE,IAAI,EAAE,eAAe,GAAG,SAAS,CAAC;QAClC,UAAU,EAAE,OAAO,CAAC;QACpB,OAAO,EAAE,OAAO,CAAC;KAClB,GACD,SAAS,CAAC;IACd,MAAM,EAAE,cAAc,CAAC;IACvB,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,KAAK,EAAE,WAAW,GAAG,SAAS,CAAC;CAChC,2CA2IA"}
1
+ {"version":3,"file":"selected-token-button.d.ts","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/Bridge/common/selected-token-button.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAetE,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IACzC,aAAa,EACT;QACE,IAAI,EAAE,eAAe,GAAG,SAAS,CAAC;QAClC,UAAU,EAAE,OAAO,CAAC;QACpB,OAAO,EAAE,OAAO,CAAC;KAClB,GACD,SAAS,CAAC;IACd,MAAM,EAAE,cAAc,CAAC;IACvB,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,KAAK,EAAE,WAAW,GAAG,SAAS,CAAC;CAChC,2CAqJA"}
@@ -1 +1 @@
1
- {"version":3,"file":"PaymentOverview.d.ts","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/Bridge/payment-details/PaymentOverview.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAE5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAYhF,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE3D,wBAAgB,eAAe,CAAC,KAAK,EAAE;IACrC,QAAQ,EAAE,qBAAqB,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,cAAc,CAAC;IACvB,aAAa,EAAE,aAAa,CAAC;IAC7B,OAAO,EAAE,KAAK,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;QAC1B,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;KACjC,CAAC;IACF,QAAQ,EAAE,QAAQ,CAAC;CACpB,2CAiLA"}
1
+ {"version":3,"file":"PaymentOverview.d.ts","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/Bridge/payment-details/PaymentOverview.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAE5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAYhF,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE3D,wBAAgB,eAAe,CAAC,KAAK,EAAE;IACrC,QAAQ,EAAE,qBAAqB,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,cAAc,CAAC;IACvB,aAAa,EAAE,aAAa,CAAC;IAC7B,OAAO,EAAE,KAAK,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;QAC1B,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;KACjC,CAAC;IACF,QAAQ,EAAE,QAAQ,CAAC;CACpB,2CAmLA"}
@@ -1 +1 @@
1
- {"version":3,"file":"PaymentReceipt.d.ts","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/Bridge/payment-success/PaymentReceipt.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAOhF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACtF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2CAA2C,CAAC;AA+SvF,UAAU,kBAAkB;IAC1B;;OAEG;IACH,aAAa,EAAE,mBAAmB,CAAC;IAEnC;;OAEG;IACH,iBAAiB,EAAE,qBAAqB,EAAE,CAAC;IAE3C;;OAEG;IACH,MAAM,EAAE,MAAM,IAAI,CAAC;IAEnB;;OAEG;IACH,aAAa,EAAE,aAAa,CAAC;CAC9B;AAED,wBAAgB,cAAc,CAAC,EAC7B,aAAa,EACb,iBAAiB,EACjB,MAAM,EACN,aAAa,GACd,EAAE,kBAAkB,2CAsCpB"}
1
+ {"version":3,"file":"PaymentReceipt.d.ts","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/Bridge/payment-success/PaymentReceipt.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAGhF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACtF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2CAA2C,CAAC;AAySvF,UAAU,kBAAkB;IAC1B;;OAEG;IACH,aAAa,EAAE,mBAAmB,CAAC;IAEnC;;OAEG;IACH,iBAAiB,EAAE,qBAAqB,EAAE,CAAC;IAE3C;;OAEG;IACH,MAAM,EAAE,MAAM,IAAI,CAAC;IAEnB;;OAEG;IACH,aAAa,EAAE,aAAa,CAAC;CAC9B;AAED,wBAAgB,cAAc,CAAC,EAC7B,aAAa,EACb,iBAAiB,EACjB,MAAM,EACN,aAAa,GACd,EAAE,kBAAkB,2CA4BpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"SuccessScreen.d.ts","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/Bridge/payment-success/SuccessScreen.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAGhF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACtF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2CAA2C,CAAC;AAOvF,KAAK,kBAAkB,GAAG;IACxB;;OAEG;IACH,kBAAkB,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,aAAa,EAAE,mBAAmB,CAAC;IAEnC;;OAEG;IACH,iBAAiB,EAAE,qBAAqB,EAAE,CAAC;IAE3C;;OAEG;IACH,MAAM,EAAE,MAAM,IAAI,CAAC;IAEnB;;OAEG;IACH,aAAa,EAAE,aAAa,CAAC;IAE7B,MAAM,EAAE,cAAc,CAAC;IAEvB;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAIF,wBAAgB,aAAa,CAAC,EAC5B,aAAa,EACb,iBAAiB,EACjB,MAAM,EACN,aAAa,EACb,MAAM,EACN,YAAoB,EACpB,kBAAkB,GACnB,EAAE,kBAAkB,2CA0IpB"}
1
+ {"version":3,"file":"SuccessScreen.d.ts","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/Bridge/payment-success/SuccessScreen.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAGhF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACtF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2CAA2C,CAAC;AAOvF,KAAK,kBAAkB,GAAG;IACxB;;OAEG;IACH,kBAAkB,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,aAAa,EAAE,mBAAmB,CAAC;IAEnC;;OAEG;IACH,iBAAiB,EAAE,qBAAqB,EAAE,CAAC;IAE3C;;OAEG;IACH,MAAM,EAAE,MAAM,IAAI,CAAC;IAEnB;;OAEG;IACH,aAAa,EAAE,aAAa,CAAC;IAE7B,MAAM,EAAE,cAAc,CAAC;IAEvB;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAIF,wBAAgB,aAAa,CAAC,EAC5B,aAAa,EACb,iBAAiB,EACjB,MAAM,EACN,aAAa,EACb,MAAM,EACN,YAAoB,EACpB,kBAAkB,GACnB,EAAE,kBAAkB,2CAwIpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"select-chain.d.ts","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/Bridge/swap-widget/select-chain.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAiBtE,KAAK,mBAAmB,GAAG;IACzB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,cAAc,CAAC;IACvB,aAAa,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IAC5C,aAAa,EAAE,WAAW,GAAG,SAAS,CAAC;IACvC,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,mBAAmB,2CAW3D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,mBAAmB,GAAG;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,aAAa,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IAC5C,aAAa,EAAE,WAAW,GAAG,SAAS,CAAC;CACxC,2CA+FF"}
1
+ {"version":3,"file":"select-chain.d.ts","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/Bridge/swap-widget/select-chain.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAkBtE,KAAK,mBAAmB,GAAG;IACzB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,cAAc,CAAC;IACvB,aAAa,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IAC5C,aAAa,EAAE,WAAW,GAAG,SAAS,CAAC;IACvC,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,mBAAmB,2CAW3D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,mBAAmB,GAAG;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,aAAa,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IAC5C,aAAa,EAAE,WAAW,GAAG,SAAS,CAAC;CACxC,2CA+FF"}
@@ -1 +1 @@
1
- {"version":3,"file":"select-token-ui.d.ts","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/Bridge/swap-widget/select-token-ui.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAwBtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AASnE;;GAEG;AACH,KAAK,kBAAkB,GAAG;IACxB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,EAAE,cAAc,CAAC;IACvB,aAAa,EAAE,cAAc,GAAG,SAAS,CAAC;IAC1C,gBAAgB,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;IAClD,gBAAgB,EAAE,gBAAgB,GAAG,SAAS,CAAC;CAChD,CAAC;AASF;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,kBAAkB,2CAsEpD"}
1
+ {"version":3,"file":"select-token-ui.d.ts","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/Bridge/swap-widget/select-token-ui.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAsBtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AASnE;;GAEG;AACH,KAAK,kBAAkB,GAAG;IACxB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,EAAE,cAAc,CAAC;IACvB,aAAa,EAAE,cAAc,GAAG,SAAS,CAAC;IAC1C,gBAAgB,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;IAClD,gBAAgB,EAAE,gBAAgB,GAAG,SAAS,CAAC;CAChD,CAAC;AAYF;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,kBAAkB,2CAoFpD"}
@@ -1 +1 @@
1
- {"version":3,"file":"WalletRow.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAI5E,OAAO,EACL,QAAQ,EACR,QAAQ,EACT,MAAM,+CAA+C,CAAC;AAavD,wBAAgB,SAAS,CAAC,KAAK,EAAE;IAC/B,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,OAAO,QAAQ,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,OAAO,QAAQ,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,2CAsDA"}
1
+ {"version":3,"file":"WalletRow.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAI5E,OAAO,EACL,QAAQ,EACR,QAAQ,EACT,MAAM,+CAA+C,CAAC;AAavD,wBAAgB,SAAS,CAAC,KAAK,EAAE;IAC/B,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,OAAO,QAAQ,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,OAAO,QAAQ,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,2CAwDA"}
@@ -1 +1 @@
1
- {"version":3,"file":"CopyIcon.d.ts","sourceRoot":"","sources":["../../../../../../src/react/web/ui/components/CopyIcon.tsx"],"names":[],"mappings":"AAMA;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IAC3C,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IACnC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CA4CA,CAAC"}
1
+ {"version":3,"file":"CopyIcon.d.ts","sourceRoot":"","sources":["../../../../../../src/react/web/ui/components/CopyIcon.tsx"],"names":[],"mappings":"AAQA;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IAC3C,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IACnC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAyCA,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Spacer.d.ts","sourceRoot":"","sources":["../../../../../../src/react/web/ui/components/Spacer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AAE/D;;GAEG;AACH,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,CAAC,EAAE,MAAM,OAAO,OAAO,CAAA;CAAE,CAQxD,CAAC"}
1
+ {"version":3,"file":"Spacer.d.ts","sourceRoot":"","sources":["../../../../../../src/react/web/ui/components/Spacer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AAE/D;;GAEG;AACH,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,CAAC,EAAE,MAAM,OAAO,OAAO,CAAA;CAAE,CASxD,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const version = "5.111.9";
1
+ export declare const version = "5.111.10";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,YAAY,CAAC"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,aAAa,CAAC"}
package/package.json CHANGED
@@ -39,8 +39,8 @@
39
39
  "viem": "2.37.9",
40
40
  "x402": "0.7.0",
41
41
  "zod": "3.25.75",
42
- "@thirdweb-dev/engine": "3.4.0",
43
- "@thirdweb-dev/insight": "1.1.1"
42
+ "@thirdweb-dev/insight": "1.1.1",
43
+ "@thirdweb-dev/engine": "3.4.0"
44
44
  },
45
45
  "devDependencies": {
46
46
  "@aws-sdk/client-kms": "3.592.0",
@@ -73,8 +73,8 @@
73
73
  "dotenv-mono": "^1.3.14",
74
74
  "ethers5": "npm:ethers@5",
75
75
  "ethers6": "npm:ethers@6",
76
- "expo-linking": "7.0.5",
77
- "expo-web-browser": "14.0.2",
76
+ "expo-linking": "8.0.8",
77
+ "expo-web-browser": "15.0.9",
78
78
  "happy-dom": "17.4.4",
79
79
  "knip": "5.60.2",
80
80
  "msw": "2.7.5",
@@ -256,10 +256,10 @@
256
256
  "@aws-sdk/credential-providers": "^3",
257
257
  "@coinbase/wallet-mobile-sdk": "^1",
258
258
  "@mobile-wallet-protocol/client": "^1",
259
- "@react-native-async-storage/async-storage": "^1 || ^2",
259
+ "@react-native-async-storage/async-storage": "*",
260
260
  "ethers": "^5 || ^6",
261
- "expo-linking": "^6 || ^7",
262
- "expo-web-browser": "^13 || ^14",
261
+ "expo-linking": "*",
262
+ "expo-web-browser": "*",
263
263
  "react": "^18 || ^19",
264
264
  "react-native": "*",
265
265
  "react-native-aes-gcm-crypto": "^0.2",
@@ -399,7 +399,7 @@
399
399
  }
400
400
  },
401
401
  "typings": "./dist/types/exports/thirdweb.d.ts",
402
- "version": "5.111.9",
402
+ "version": "5.111.10",
403
403
  "scripts": {
404
404
  "bench": "vitest -c ./test/vitest.config.ts bench",
405
405
  "bench:compare": "bun run ./benchmarks/run.ts",
@@ -60,6 +60,12 @@ export async function createStylusProject() {
60
60
  { title: "Airdrop ERC1155", value: "airdrop1155" },
61
61
  { title: "ZK ERC721", value: "zk-erc721" },
62
62
  { title: "ZK ERC20", value: "zk-erc20" },
63
+ { title: "Mint module - ERC20", value: "mintable20" },
64
+ { title: "Transfer module - ERC20", value: "transferable20" },
65
+ { title: "Mint module - ERC721", value: "mintable721" },
66
+ { title: "Transfer module - ERC721", value: "transferable721" },
67
+ { title: "Mint module - ERC1155", value: "mintable1155" },
68
+ { title: "Transfer module - ERC1155", value: "transferable1155" },
63
69
  ],
64
70
  message: "Select a template:",
65
71
  name: "projectType",
@@ -133,6 +139,49 @@ export async function createStylusProject() {
133
139
  newProject = spawnSync("git", ["clone", repoUrl, projectName], {
134
140
  stdio: "inherit",
135
141
  });
142
+ } else if (projectType === "mintable20") {
143
+ const repoUrl = "git@github.com:thirdweb-example/stylus-mintable-erc20.git";
144
+ spinner.start(`Creating new ERC20 Mintable module: ${projectName}...`);
145
+ newProject = spawnSync("git", ["clone", repoUrl, projectName], {
146
+ stdio: "inherit",
147
+ });
148
+ } else if (projectType === "transferable20") {
149
+ const repoUrl =
150
+ "git@github.com:thirdweb-example/stylus-transferable-erc20.git";
151
+ spinner.start(`Creating new ERC20 Transferable module: ${projectName}...`);
152
+ newProject = spawnSync("git", ["clone", repoUrl, projectName], {
153
+ stdio: "inherit",
154
+ });
155
+ } else if (projectType === "mintable721") {
156
+ const repoUrl =
157
+ "git@github.com:thirdweb-example/stylus-mintable-erc721.git";
158
+ spinner.start(`Creating new ERC721 Mintable module: ${projectName}...`);
159
+ newProject = spawnSync("git", ["clone", repoUrl, projectName], {
160
+ stdio: "inherit",
161
+ });
162
+ } else if (projectType === "transferable721") {
163
+ const repoUrl =
164
+ "git@github.com:thirdweb-example/stylus-transferable-erc721.git";
165
+ spinner.start(`Creating new ERC721 Transferable module: ${projectName}...`);
166
+ newProject = spawnSync("git", ["clone", repoUrl, projectName], {
167
+ stdio: "inherit",
168
+ });
169
+ } else if (projectType === "mintable1155") {
170
+ const repoUrl =
171
+ "git@github.com:thirdweb-example/stylus-mintable-erc1155.git";
172
+ spinner.start(`Creating new ERC1155 Mintable module: ${projectName}...`);
173
+ newProject = spawnSync("git", ["clone", repoUrl, projectName], {
174
+ stdio: "inherit",
175
+ });
176
+ } else if (projectType === "transferable1155") {
177
+ const repoUrl =
178
+ "git@github.com:thirdweb-example/stylus-transferable-erc1155.git";
179
+ spinner.start(
180
+ `Creating new ERC1155 Transferable module: ${projectName}...`,
181
+ );
182
+ newProject = spawnSync("git", ["clone", repoUrl, projectName], {
183
+ stdio: "inherit",
184
+ });
136
185
  }
137
186
 
138
187
  if (!newProject || newProject.status !== 0) {
@@ -9,48 +9,44 @@ import { getContract } from "../contract.js";
9
9
  import { deployCloneFactory } from "./utils/bootstrap.js";
10
10
 
11
11
  describe.runIf(process.env.TW_SECRET_KEY)("deploy dynamic", () => {
12
- // TODO: Fix this test
13
- it.skip.sequential(
14
- "should deploy dynamic contract with extensions",
15
- async () => {
16
- await deployCloneFactory({
17
- account: TEST_ACCOUNT_A,
18
- chain: ANVIL_CHAIN,
19
- client: TEST_CLIENT,
20
- });
12
+ it.sequential("should deploy dynamic contract with extensions", async () => {
13
+ await deployCloneFactory({
14
+ account: TEST_ACCOUNT_A,
15
+ chain: ANVIL_CHAIN,
16
+ client: TEST_CLIENT,
17
+ });
21
18
 
22
- const deployed = await deployPublishedContract({
23
- account: TEST_ACCOUNT_A,
24
- chain: ANVIL_CHAIN,
25
- client: TEST_CLIENT,
26
- contractId: "EvolvingNFT",
27
- contractParams: {
28
- contractURI: "",
29
- defaultAdmin: TEST_ACCOUNT_A.address,
30
- name: "Evolving nft",
31
- royaltyBps: 0n,
32
- royaltyRecipient: TEST_ACCOUNT_A.address,
33
- saleRecipient: TEST_ACCOUNT_A.address,
34
- symbol: "ENFT",
35
- trustedForwarders: [],
36
- },
37
- });
19
+ const deployed = await deployPublishedContract({
20
+ account: TEST_ACCOUNT_A,
21
+ chain: ANVIL_CHAIN,
22
+ client: TEST_CLIENT,
23
+ contractId: "EvolvingNFT",
24
+ contractParams: {
25
+ contractURI: "",
26
+ defaultAdmin: TEST_ACCOUNT_A.address,
27
+ name: "Evolving nft",
28
+ royaltyBps: 0n,
29
+ royaltyRecipient: TEST_ACCOUNT_A.address,
30
+ saleRecipient: TEST_ACCOUNT_A.address,
31
+ symbol: "ENFT",
32
+ trustedForwarders: [],
33
+ },
34
+ });
38
35
 
39
- expect(deployed).toBeDefined();
36
+ expect(deployed).toBeDefined();
40
37
 
41
- const contract = getContract({
42
- address: deployed,
43
- chain: ANVIL_CHAIN,
44
- client: TEST_CLIENT,
45
- });
38
+ const contract = getContract({
39
+ address: deployed,
40
+ chain: ANVIL_CHAIN,
41
+ client: TEST_CLIENT,
42
+ });
46
43
 
47
- const extensions = await readContract({
48
- contract,
49
- method: resolveMethod("getAllExtensions"),
50
- params: [],
51
- });
44
+ const extensions = await readContract({
45
+ contract,
46
+ method: resolveMethod("getAllExtensions"),
47
+ params: [],
48
+ });
52
49
 
53
- expect(extensions.length).toEqual(3);
54
- },
55
- );
50
+ expect(extensions.length).toEqual(3);
51
+ });
56
52
  });
@@ -11,54 +11,50 @@ import { sendTransaction } from "../../../transaction/actions/send-transaction.j
11
11
  import { installPublishedExtension } from "./installPublishedExtension.js";
12
12
 
13
13
  describe.runIf(process.env.TW_SECRET_KEY)("install extension", () => {
14
- // TODO: Fix this test
15
- it.skip.sequential(
16
- "should install extension to a dynamic contract",
17
- async () => {
18
- await deployCloneFactory({
19
- account: TEST_ACCOUNT_A,
20
- chain: ANVIL_CHAIN,
21
- client: TEST_CLIENT,
22
- });
14
+ it.sequential("should install extension to a dynamic contract", async () => {
15
+ await deployCloneFactory({
16
+ account: TEST_ACCOUNT_A,
17
+ chain: ANVIL_CHAIN,
18
+ client: TEST_CLIENT,
19
+ });
23
20
 
24
- const deployed = await deployPublishedContract({
25
- account: TEST_ACCOUNT_A,
26
- chain: ANVIL_CHAIN,
27
- client: TEST_CLIENT,
28
- contractId: "EvolvingNFT",
29
- contractParams: {
30
- contractURI: "",
31
- defaultAdmin: TEST_ACCOUNT_A.address,
32
- name: "Evolving nft",
33
- royaltyBps: 0n,
34
- royaltyRecipient: TEST_ACCOUNT_A.address,
35
- saleRecipient: TEST_ACCOUNT_A.address,
36
- symbol: "ENFT",
37
- trustedForwarders: [],
38
- },
39
- });
21
+ const deployed = await deployPublishedContract({
22
+ account: TEST_ACCOUNT_A,
23
+ chain: ANVIL_CHAIN,
24
+ client: TEST_CLIENT,
25
+ contractId: "EvolvingNFT",
26
+ contractParams: {
27
+ contractURI: "",
28
+ defaultAdmin: TEST_ACCOUNT_A.address,
29
+ name: "Evolving nft",
30
+ royaltyBps: 0n,
31
+ royaltyRecipient: TEST_ACCOUNT_A.address,
32
+ saleRecipient: TEST_ACCOUNT_A.address,
33
+ symbol: "ENFT",
34
+ trustedForwarders: [],
35
+ },
36
+ });
40
37
 
41
- const contract = getContract({
42
- address: deployed,
43
- chain: ANVIL_CHAIN,
44
- client: TEST_CLIENT,
45
- });
38
+ const contract = getContract({
39
+ address: deployed,
40
+ chain: ANVIL_CHAIN,
41
+ client: TEST_CLIENT,
42
+ });
46
43
 
47
- const transaction = installPublishedExtension({
48
- account: TEST_ACCOUNT_A,
49
- contract,
50
- extensionName: "DirectListingsLogic",
51
- });
44
+ const transaction = installPublishedExtension({
45
+ account: TEST_ACCOUNT_A,
46
+ contract,
47
+ extensionName: "DirectListingsLogic",
48
+ });
52
49
 
53
- await sendTransaction({ account: TEST_ACCOUNT_A, transaction });
50
+ await sendTransaction({ account: TEST_ACCOUNT_A, transaction });
54
51
 
55
- const extensions = await readContract({
56
- contract,
57
- method: resolveMethod("getAllExtensions"),
58
- params: [],
59
- });
52
+ const extensions = await readContract({
53
+ contract,
54
+ method: resolveMethod("getAllExtensions"),
55
+ params: [],
56
+ });
60
57
 
61
- expect(extensions.length).toEqual(4);
62
- },
63
- );
58
+ expect(extensions.length).toEqual(4);
59
+ });
64
60
  });
@@ -11,8 +11,7 @@ import { deployPublishedContract } from "../../prebuilts/deploy-published.js";
11
11
  import { uninstallExtension } from "./uninstallExtension.js";
12
12
 
13
13
  describe.runIf(process.env.TW_SECRET_KEY)("uninstall extension", () => {
14
- // TODO: Fix this test
15
- it.skip.sequential(
14
+ it.sequential(
16
15
  "should uninstall extension from a dynamic contract",
17
16
  async () => {
18
17
  await deployCloneFactory({
@@ -1,6 +1,7 @@
1
1
  import type { ThirdwebContract } from "../../../contract/contract.js";
2
2
  import { getOrDeployInfraForPublishedContract } from "../../../contract/deployment/utils/bootstrap.js";
3
3
  import type { Account } from "../../../wallets/interfaces/wallet.js";
4
+ import { deployPublishedContract } from "../../prebuilts/deploy-published.js";
4
5
  import { installModule } from "../__generated__/IModularCore/write/installModule.js";
5
6
 
6
7
  /**
@@ -49,17 +50,35 @@ export function installPublishedModule(options: InstallPublishedModuleOptions) {
49
50
 
50
51
  return installModule({
51
52
  asyncParams: async () => {
52
- const deployedModule = await getOrDeployInfraForPublishedContract({
53
- account,
54
- chain: contract.chain,
55
- client: contract.client,
56
- constructorParams,
57
- contractId: moduleName,
58
- publisher,
59
- });
53
+ let implementationAddress: string;
54
+
55
+ if (moduleName.toLowerCase().includes("stylus")) {
56
+ // TODO: switch to deterministic / create2 when available
57
+
58
+ implementationAddress = await deployPublishedContract({
59
+ account,
60
+ chain: contract.chain,
61
+ client: contract.client,
62
+ contractParams: constructorParams,
63
+ contractId: moduleName,
64
+ publisher,
65
+ });
66
+ } else {
67
+ const deployedModule = await getOrDeployInfraForPublishedContract({
68
+ account,
69
+ chain: contract.chain,
70
+ client: contract.client,
71
+ constructorParams,
72
+ contractId: moduleName,
73
+ publisher,
74
+ });
75
+
76
+ implementationAddress = deployedModule.implementationContract
77
+ .address as string;
78
+ }
60
79
  return {
61
80
  data: moduleData || "0x",
62
- moduleContract: deployedModule.implementationContract.address as string,
81
+ moduleContract: implementationAddress,
63
82
  };
64
83
  },
65
84
  contract,
@@ -215,7 +215,7 @@ export async function deployContractfromDeployMetadata(
215
215
  if (
216
216
  deployMetadata.routerType === "dynamic" &&
217
217
  deployMetadata.defaultExtensions &&
218
- !isZkSyncChain(chain)
218
+ !(await isZkSyncChain(chain))
219
219
  ) {
220
220
  for (const e of deployMetadata.defaultExtensions) {
221
221
  await getOrDeployInfraForPublishedContract({
@@ -219,7 +219,7 @@ export function TransactionPayment({
219
219
  }}
220
220
  >
221
221
  {/* USD Value */}
222
- <Text color="primaryText" size="xl" weight={600}>
222
+ <Text color="primaryText" size="xl" weight={500}>
223
223
  {costToDisplay}
224
224
  </Text>
225
225
 
@@ -82,7 +82,7 @@ export function TokenAndChain({
82
82
  textOverflow: "ellipsis",
83
83
  whiteSpace: "nowrap",
84
84
  }}
85
- weight={600}
85
+ weight={500}
86
86
  trackingTight
87
87
  >
88
88
  {token.name}
@@ -68,18 +68,9 @@ export function TokenBalanceRow({
68
68
  overflow: "hidden",
69
69
  }}
70
70
  >
71
- <FiatValue
72
- currency={currency}
73
- chain={chain}
74
- client={client}
71
+ <Text
75
72
  color="primaryText"
76
73
  size="sm"
77
- token={token}
78
- tokenAmount={amount}
79
- />
80
- <Text
81
- color="secondaryText"
82
- size="xs"
83
74
  style={{
84
75
  overflow: "hidden",
85
76
  textOverflow: "ellipsis",
@@ -91,6 +82,16 @@ export function TokenBalanceRow({
91
82
  minimumFractionDigits: 0,
92
83
  })} ${token.symbol}`}
93
84
  </Text>
85
+
86
+ <FiatValue
87
+ currency={currency}
88
+ chain={chain}
89
+ client={client}
90
+ color="secondaryText"
91
+ size="sm"
92
+ token={token}
93
+ tokenAmount={amount}
94
+ />
94
95
  </Container>
95
96
  </Container>
96
97
  </StyledButton>
@@ -100,13 +100,23 @@ export function SelectedTokenButton(props: {
100
100
  }}
101
101
  >
102
102
  <Img
103
- src={props.chain?.icon}
103
+ src={props.chain?.icon || ""}
104
104
  client={props.client}
105
105
  width={iconSize.sm}
106
106
  height={iconSize.sm}
107
107
  style={{
108
108
  borderRadius: radius.full,
109
109
  }}
110
+ fallback={
111
+ <Container
112
+ style={{
113
+ background: `linear-gradient(45deg, white, ${theme.colors.accentText})`,
114
+ borderRadius: radius.full,
115
+ width: `${iconSize.sm}px`,
116
+ height: `${iconSize.sm}px`,
117
+ }}
118
+ />
119
+ }
110
120
  />
111
121
  </Container>
112
122
  )}
@@ -63,7 +63,7 @@ export function PaymentOverview(props: {
63
63
  <WalletRow
64
64
  address={sender}
65
65
  client={props.client}
66
- iconSize="md"
66
+ iconSize="lg"
67
67
  textSize="sm"
68
68
  />
69
69
  </Container>
@@ -91,13 +91,14 @@ export function PaymentOverview(props: {
91
91
  py="sm"
92
92
  style={{ justifyContent: "space-between" }}
93
93
  >
94
+ {/* left */}
94
95
  <Container center="y" flex="row" gap="sm">
95
96
  {getFiatCurrencyIcon({
96
97
  currency: props.paymentMethod.currency,
97
98
  size: "lg",
98
99
  })}
99
100
  <Container center="y" flex="column" gap="3xs">
100
- <Text color="primaryText" size="sm" style={{ fontWeight: 600 }}>
101
+ <Text color="primaryText" size="sm" weight={500}>
101
102
  {props.paymentMethod.currency}
102
103
  </Text>
103
104
  <Text color="secondaryText" size="xs">
@@ -106,7 +107,8 @@ export function PaymentOverview(props: {
106
107
  </Text>
107
108
  </Container>
108
109
  </Container>
109
- <Text color="primaryText" size="sm" style={{ fontWeight: 600 }}>
110
+ {/* right */}
111
+ <Text color="primaryText" size="sm">
110
112
  {props.fromAmount}
111
113
  </Text>
112
114
  </Container>
@@ -136,11 +138,12 @@ export function PaymentOverview(props: {
136
138
  <WalletRow
137
139
  address={props.receiver}
138
140
  client={props.client}
139
- iconSize="md"
141
+ iconSize="lg"
140
142
  textSize="sm"
141
143
  />
142
144
  </Container>
143
145
  )}
146
+
144
147
  {props.modeInfo.mode === "direct_payment" && (
145
148
  <Container
146
149
  center="y"
@@ -150,7 +153,7 @@ export function PaymentOverview(props: {
150
153
  style={{ justifyContent: "space-between" }}
151
154
  >
152
155
  <Container center="y" flex="column" gap="3xs" style={{ flex: 1 }}>
153
- <Text color="primaryText" size="sm" style={{ fontWeight: 600 }}>
156
+ <Text color="primaryText" size="sm" weight={500}>
154
157
  {props.metadata.title || "Payment"}
155
158
  </Text>
156
159
  {props.metadata.description && (
@@ -173,7 +176,6 @@ export function PaymentOverview(props: {
173
176
  size="sm"
174
177
  token={props.toToken}
175
178
  tokenAmount={props.modeInfo.paymentInfo.amount}
176
- weight={600}
177
179
  />
178
180
  <Text color="secondaryText" size="xs">
179
181
  {props.modeInfo.paymentInfo.amount} {props.toToken.symbol}
@@ -285,7 +287,7 @@ const TransactionOverViewCompact = (props: {
285
287
  style={{ justifyContent: "space-between" }}
286
288
  >
287
289
  <Container center="y" flex="column" gap="3xs" style={{ flex: 1 }}>
288
- <Text color="primaryText" size="sm" style={{ fontWeight: 600 }}>
290
+ <Text color="primaryText" size="sm" weight={500}>
289
291
  {props.metadata.title || "Transaction"}
290
292
  </Text>
291
293
  {props.metadata.description && (
@@ -89,7 +89,7 @@ function PaymentMethodTokenRow({
89
89
  <Text
90
90
  color="primaryText"
91
91
  size="sm"
92
- style={{ fontWeight: 600, textWrap: "nowrap" }}
92
+ style={{ fontWeight: 500, textWrap: "nowrap" }}
93
93
  >
94
94
  {formatCurrencyAmount(
95
95
  currency || "USD",