thirdweb 5.48.2 → 5.48.3-nightly-b661ce7b2fd58e7ff01faf47cf8fb3bb232841ec-20240827000337

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 (112) hide show
  1. package/dist/cjs/exports/wallets/smart.js +4 -2
  2. package/dist/cjs/exports/wallets/smart.js.map +1 -1
  3. package/dist/cjs/extensions/erc1155/drops/write/claimTo.js.map +1 -1
  4. package/dist/cjs/extensions/erc4337/__generated__/IEntryPoint_v07/events/PostOpRevertReason.js +32 -0
  5. package/dist/cjs/extensions/erc4337/__generated__/IEntryPoint_v07/events/PostOpRevertReason.js.map +1 -0
  6. package/dist/cjs/extensions/erc4337/__generated__/IEntryPoint_v07/read/getUserOpHash.js +153 -0
  7. package/dist/cjs/extensions/erc4337/__generated__/IEntryPoint_v07/read/getUserOpHash.js.map +1 -0
  8. package/dist/cjs/extensions/prebuilts/__generated__/VoteERC20/write/initialize.js +184 -0
  9. package/dist/cjs/extensions/prebuilts/__generated__/VoteERC20/write/initialize.js.map +1 -0
  10. package/dist/cjs/extensions/prebuilts/deploy-vote.js +122 -0
  11. package/dist/cjs/extensions/prebuilts/deploy-vote.js.map +1 -0
  12. package/dist/cjs/version.js +1 -1
  13. package/dist/cjs/version.js.map +1 -1
  14. package/dist/cjs/wallets/smart/index.js +13 -2
  15. package/dist/cjs/wallets/smart/index.js.map +1 -1
  16. package/dist/cjs/wallets/smart/lib/bundler.js +11 -2
  17. package/dist/cjs/wallets/smart/lib/bundler.js.map +1 -1
  18. package/dist/cjs/wallets/smart/lib/constants.js +27 -13
  19. package/dist/cjs/wallets/smart/lib/constants.js.map +1 -1
  20. package/dist/cjs/wallets/smart/lib/packUserOp.js +75 -0
  21. package/dist/cjs/wallets/smart/lib/packUserOp.js.map +1 -0
  22. package/dist/cjs/wallets/smart/lib/paymaster.js +11 -1
  23. package/dist/cjs/wallets/smart/lib/paymaster.js.map +1 -1
  24. package/dist/cjs/wallets/smart/lib/userop.js +201 -66
  25. package/dist/cjs/wallets/smart/lib/userop.js.map +1 -1
  26. package/dist/cjs/wallets/smart/lib/utils.js +1 -1
  27. package/dist/cjs/wallets/smart/lib/utils.js.map +1 -1
  28. package/dist/cjs/wallets/smart/smart-wallet.js +2 -1
  29. package/dist/cjs/wallets/smart/smart-wallet.js.map +1 -1
  30. package/dist/cjs/wallets/smart/types.js.map +1 -1
  31. package/dist/esm/exports/wallets/smart.js +1 -1
  32. package/dist/esm/exports/wallets/smart.js.map +1 -1
  33. package/dist/esm/extensions/erc1155/drops/write/claimTo.js.map +1 -1
  34. package/dist/esm/extensions/erc4337/__generated__/IEntryPoint_v07/events/PostOpRevertReason.js +29 -0
  35. package/dist/esm/extensions/erc4337/__generated__/IEntryPoint_v07/events/PostOpRevertReason.js.map +1 -0
  36. package/dist/esm/extensions/erc4337/__generated__/IEntryPoint_v07/read/getUserOpHash.js +145 -0
  37. package/dist/esm/extensions/erc4337/__generated__/IEntryPoint_v07/read/getUserOpHash.js.map +1 -0
  38. package/dist/esm/extensions/prebuilts/__generated__/VoteERC20/write/initialize.js +177 -0
  39. package/dist/esm/extensions/prebuilts/__generated__/VoteERC20/write/initialize.js.map +1 -0
  40. package/dist/esm/extensions/prebuilts/deploy-vote.js +119 -0
  41. package/dist/esm/extensions/prebuilts/deploy-vote.js.map +1 -0
  42. package/dist/esm/version.js +1 -1
  43. package/dist/esm/version.js.map +1 -1
  44. package/dist/esm/wallets/smart/index.js +14 -3
  45. package/dist/esm/wallets/smart/index.js.map +1 -1
  46. package/dist/esm/wallets/smart/lib/bundler.js +12 -3
  47. package/dist/esm/wallets/smart/lib/bundler.js.map +1 -1
  48. package/dist/esm/wallets/smart/lib/constants.js +23 -10
  49. package/dist/esm/wallets/smart/lib/constants.js.map +1 -1
  50. package/dist/esm/wallets/smart/lib/packUserOp.js +65 -0
  51. package/dist/esm/wallets/smart/lib/packUserOp.js.map +1 -0
  52. package/dist/esm/wallets/smart/lib/paymaster.js +12 -2
  53. package/dist/esm/wallets/smart/lib/paymaster.js.map +1 -1
  54. package/dist/esm/wallets/smart/lib/userop.js +202 -67
  55. package/dist/esm/wallets/smart/lib/userop.js.map +1 -1
  56. package/dist/esm/wallets/smart/lib/utils.js +1 -1
  57. package/dist/esm/wallets/smart/lib/utils.js.map +1 -1
  58. package/dist/esm/wallets/smart/smart-wallet.js +3 -2
  59. package/dist/esm/wallets/smart/smart-wallet.js.map +1 -1
  60. package/dist/esm/wallets/smart/types.js.map +1 -1
  61. package/dist/types/exports/wallets/smart.d.ts +2 -2
  62. package/dist/types/exports/wallets/smart.d.ts.map +1 -1
  63. package/dist/types/extensions/erc1155/drops/write/claimTo.d.ts +2 -3
  64. package/dist/types/extensions/erc1155/drops/write/claimTo.d.ts.map +1 -1
  65. package/dist/types/extensions/erc4337/__generated__/IEntryPoint_v07/events/PostOpRevertReason.d.ts +57 -0
  66. package/dist/types/extensions/erc4337/__generated__/IEntryPoint_v07/events/PostOpRevertReason.d.ts.map +1 -0
  67. package/dist/types/extensions/erc4337/__generated__/IEntryPoint_v07/read/getUserOpHash.d.ts +123 -0
  68. package/dist/types/extensions/erc4337/__generated__/IEntryPoint_v07/read/getUserOpHash.d.ts.map +1 -0
  69. package/dist/types/extensions/prebuilts/__generated__/VoteERC20/write/initialize.d.ts +129 -0
  70. package/dist/types/extensions/prebuilts/__generated__/VoteERC20/write/initialize.d.ts.map +1 -0
  71. package/dist/types/extensions/prebuilts/deploy-vote.d.ts +82 -0
  72. package/dist/types/extensions/prebuilts/deploy-vote.d.ts.map +1 -0
  73. package/dist/types/version.d.ts +1 -1
  74. package/dist/types/version.d.ts.map +1 -1
  75. package/dist/types/wallets/smart/index.d.ts.map +1 -1
  76. package/dist/types/wallets/smart/lib/bundler.d.ts +3 -3
  77. package/dist/types/wallets/smart/lib/bundler.d.ts.map +1 -1
  78. package/dist/types/wallets/smart/lib/constants.d.ts +6 -6
  79. package/dist/types/wallets/smart/lib/constants.d.ts.map +1 -1
  80. package/dist/types/wallets/smart/lib/packUserOp.d.ts +16 -0
  81. package/dist/types/wallets/smart/lib/packUserOp.d.ts.map +1 -0
  82. package/dist/types/wallets/smart/lib/paymaster.d.ts +3 -3
  83. package/dist/types/wallets/smart/lib/paymaster.d.ts.map +1 -1
  84. package/dist/types/wallets/smart/lib/userop.d.ts +6 -4
  85. package/dist/types/wallets/smart/lib/userop.d.ts.map +1 -1
  86. package/dist/types/wallets/smart/lib/utils.d.ts +2 -2
  87. package/dist/types/wallets/smart/lib/utils.d.ts.map +1 -1
  88. package/dist/types/wallets/smart/smart-wallet.d.ts.map +1 -1
  89. package/dist/types/wallets/smart/types.d.ts +62 -9
  90. package/dist/types/wallets/smart/types.d.ts.map +1 -1
  91. package/package.json +1 -1
  92. package/src/exports/wallets/smart.ts +4 -2
  93. package/src/extensions/erc1155/drops/write/claimTo.ts +2 -3
  94. package/src/extensions/erc4337/__generated__/IEntryPoint_v07/events/PostOpRevertReason.ts +49 -0
  95. package/src/extensions/erc4337/__generated__/IEntryPoint_v07/read/getUserOpHash.ts +181 -0
  96. package/src/extensions/prebuilts/__generated__/VoteERC20/write/initialize.ts +230 -0
  97. package/src/extensions/prebuilts/deploy-vote.test.ts +73 -0
  98. package/src/extensions/prebuilts/deploy-vote.ts +213 -0
  99. package/src/extensions/vote/read/proposalExists.test.ts +123 -0
  100. package/src/version.ts +1 -1
  101. package/src/wallets/smart/index.ts +21 -5
  102. package/src/wallets/smart/lib/bundler.ts +21 -5
  103. package/src/wallets/smart/lib/constants.ts +29 -10
  104. package/src/wallets/smart/lib/packUserOp.ts +79 -0
  105. package/src/wallets/smart/lib/paymaster.ts +22 -5
  106. package/src/wallets/smart/lib/userop.ts +292 -85
  107. package/src/wallets/smart/lib/utils.ts +11 -4
  108. package/src/wallets/smart/smart-wallet-integration-v07.test.ts +206 -0
  109. package/src/wallets/smart/smart-wallet-integration.test.ts +1 -1
  110. package/src/wallets/smart/smart-wallet-zksync.test.ts +1 -2
  111. package/src/wallets/smart/smart-wallet.ts +4 -2
  112. package/src/wallets/smart/types.ts +73 -9
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/utils.ts"],"names":[],"mappings":";;;AAkCA,sCAQC;AAED,0CAOC;AAnDD,+BAA8B;AAE9B,2DAA2E;AAGpE,MAAM,qBAAqB,GAAG,GAAW,EAAE;IAChD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC;IAC9D,OAAO,CACL,CAAC,KAAK,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;QACtB,CAAC,KAAK,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;QACtB,CAAC,KAAK,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;QACrB,CAAC,KAAK,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;QACrB,CAAC,KAAK,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;QACrB,KAAK,CACN,CAAC;AACJ,CAAC,CAAC;AAfW,QAAA,qBAAqB,yBAehC;AAEF;;GAEG;AACI,MAAM,WAAW,GAAG,GAAG,EAAE;IAC9B,OAAO,MAAM,CACX,IAAA,aAAM,EAAC,CAAC,IAAA,oBAAW,EAAC,IAAA,6BAAqB,GAAE,CAAC,EAAE,oBAAoB,CAAC,CAAC,CACrE,CAAC;AACJ,CAAC,CAAC;AAJW,QAAA,WAAW,eAItB;AAEF;;GAEG;AACH,SAAgB,aAAa,CAAC,MAAqB;IACjD,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC;QACzC,GAAG;QACH,yCAAyC;QACzC,IAAA,cAAK,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAA,cAAK,EAAC,GAAG,CAAC;KAC9B,CAAC,CACmB,CAAC;AAC1B,CAAC;AAED,SAAgB,eAAe,CAAC,KAAY;IAC1C,OAAO,CACL,KAAK,CAAC,EAAE,KAAK,GAAG;QAChB,KAAK,CAAC,EAAE,KAAK,GAAG;QAChB,KAAK,CAAC,EAAE,KAAK,GAAG;QAChB,KAAK,CAAC,EAAE,KAAK,KAAK,CACnB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/wallets/smart/lib/utils.ts"],"names":[],"mappings":";;;AAuCA,sCAUC;AAED,0CAOC;AA1DD,+BAA8B;AAE9B,2DAA2E;AAQpE,MAAM,qBAAqB,GAAG,GAAW,EAAE;IAChD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC;IAC9D,OAAO,CACL,CAAC,KAAK,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;QACtB,CAAC,KAAK,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;QACtB,CAAC,KAAK,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;QACrB,CAAC,KAAK,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;QACrB,CAAC,KAAK,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;QACrB,KAAK,CACN,CAAC;AACJ,CAAC,CAAC;AAfW,QAAA,qBAAqB,yBAehC;AAEF;;GAEG;AACI,MAAM,WAAW,GAAG,GAAG,EAAE;IAC9B,OAAO,MAAM,CACX,IAAA,aAAM,EAAC,CAAC,IAAA,oBAAW,EAAC,IAAA,6BAAqB,GAAE,CAAC,EAAE,oBAAoB,CAAC,CAAC,CACrE,CAAC;AACJ,CAAC,CAAC;AAJW,QAAA,WAAW,eAItB;AAEF;;GAEG;AACH,SAAgB,aAAa,CAC3B,MAA2C;IAE3C,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC;QACzC,GAAG;QACH,yCAAyC;QACzC,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,IAAI,IAAA,cAAK,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAA,cAAK,EAAC,GAAG,CAAC;KACnE,CAAC,CAC8C,CAAC;AACrD,CAAC;AAED,SAAgB,eAAe,CAAC,KAAY;IAC1C,OAAO,CACL,KAAK,CAAC,EAAE,KAAK,GAAG;QAChB,KAAK,CAAC,EAAE,KAAK,GAAG;QAChB,KAAK,CAAC,EAAE,KAAK,GAAG;QAChB,KAAK,CAAC,EAAE,KAAK,KAAK,CACnB,CAAC;AACJ,CAAC"}
@@ -154,7 +154,8 @@ function smartWallet(createOptions) {
154
154
  }
155
155
  // check if factory is deployed
156
156
  const factory = (0, contract_js_1.getContract)({
157
- address: createOptions.factoryAddress || constants_js_1.DEFAULT_ACCOUNT_FACTORY,
157
+ address: createOptions.factoryAddress ||
158
+ (0, constants_js_1.getDefaultAccountFactory)(createOptions.overrides?.entrypointAddress),
158
159
  chain: newChain,
159
160
  client: lastConnectOptions.client,
160
161
  });
@@ -1 +1 @@
1
- {"version":3,"file":"smart-wallet.js","sourceRoot":"","sources":["../../../../src/wallets/smart/smart-wallet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smart-wallet.js","sourceRoot":"","sources":["../../../../src/wallets/smart/smart-wallet.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/wallets/smart/types.ts"],"names":[],"mappings":";;AA6IA,gEA4CC;AA5CD,SAAgB,0BAA0B,CACxC,gBAAsC;IAEtC,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAE,GAAG,gBAAgB,CAAC;IAEzD,MAAM,OAAO,GAAG;QACd,GAAG,kBAAkB;QACrB,eAAe,EAAE,kBAAkB,CAAC,eAAe;QACnD,WAAW,EAAE,kBAAkB,CAAC,WAAW;YACzC,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,WAAW,CAAC;YACxC,CAAC,CAAC,IAAI;QACR,eAAe,EAAE,kBAAkB,CAAC,eAAe;YACjD,CAAC,CAAC,kBAAkB,CAAC,eAAe;YACpC,CAAC,CAAC,IAAI;QACR,iBAAiB,EAAE,kBAAkB,CAAC,iBAAiB;YACrD,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,iBAAiB,CAAC;YAC9C,CAAC,CAAC,IAAI;QACR,iBAAiB,EAAE,kBAAkB,CAAC,iBAAiB;YACrD,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,iBAAiB,CAAC;YAC9C,CAAC,CAAC,IAAI;QACR,OAAO,EAAE,kBAAkB,CAAC,OAAO;YACjC,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC;YACpC,CAAC,CAAC,IAAI;QACR,IAAI,EAAE,kBAAkB,CAAC,IAAI;QAC7B,EAAE,EAAE,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;QACxD,gBAAgB,EAAE,kBAAkB,CAAC,gBAAgB;QACrD,MAAM,EAAE,kBAAkB,CAAC,MAAM;QACjC,IAAI,EAAE,kBAAkB,CAAC,IAAI;KACR,CAAC;IAExB,IAAI,kBAAkB,CAAC,YAAY;QACjC,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;IACjE,IAAI,kBAAkB,CAAC,WAAW;QAChC,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAE/D,MAAM,aAAa,GAAG;QACpB,GAAG,gBAAgB;QACnB,OAAO;QACP,UAAU,EAAE,gBAAgB,CAAC,UAAU;QACvC,aAAa,EAAE,MAAM,CAAC,gBAAgB,CAAC,aAAa,CAAC;QACrD,aAAa,EAAE,MAAM,CAAC,gBAAgB,CAAC,aAAa,CAAC;QACrD,KAAK,EAAE,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC;KACd,CAAC;IAC1B,OAAO,aAAa,CAAC;AACvB,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/wallets/smart/types.ts"],"names":[],"mappings":";;AA6MA,gEA4CC;AA5CD,SAAgB,0BAA0B,CACxC,gBAAsC;IAEtC,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAE,GAAG,gBAAgB,CAAC;IAEzD,MAAM,OAAO,GAAG;QACd,GAAG,kBAAkB;QACrB,eAAe,EAAE,kBAAkB,CAAC,eAAe;QACnD,WAAW,EAAE,kBAAkB,CAAC,WAAW;YACzC,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,WAAW,CAAC;YACxC,CAAC,CAAC,IAAI;QACR,eAAe,EAAE,kBAAkB,CAAC,eAAe;YACjD,CAAC,CAAC,kBAAkB,CAAC,eAAe;YACpC,CAAC,CAAC,IAAI;QACR,iBAAiB,EAAE,kBAAkB,CAAC,iBAAiB;YACrD,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,iBAAiB,CAAC;YAC9C,CAAC,CAAC,IAAI;QACR,iBAAiB,EAAE,kBAAkB,CAAC,iBAAiB;YACrD,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,iBAAiB,CAAC;YAC9C,CAAC,CAAC,IAAI;QACR,OAAO,EAAE,kBAAkB,CAAC,OAAO;YACjC,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC;YACpC,CAAC,CAAC,IAAI;QACR,IAAI,EAAE,kBAAkB,CAAC,IAAI;QAC7B,EAAE,EAAE,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;QACxD,gBAAgB,EAAE,kBAAkB,CAAC,gBAAgB;QACrD,MAAM,EAAE,kBAAkB,CAAC,MAAM;QACjC,IAAI,EAAE,kBAAkB,CAAC,IAAI;KACR,CAAC;IAExB,IAAI,kBAAkB,CAAC,YAAY;QACjC,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;IACjE,IAAI,kBAAkB,CAAC,WAAW;QAChC,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAE/D,MAAM,aAAa,GAAG;QACpB,GAAG,gBAAgB;QACnB,OAAO;QACP,UAAU,EAAE,gBAAgB,CAAC,UAAU;QACvC,aAAa,EAAE,MAAM,CAAC,gBAAgB,CAAC,aAAa,CAAC;QACrD,aAAa,EAAE,MAAM,CAAC,gBAAgB,CAAC,aAAa,CAAC;QACrD,KAAK,EAAE,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC;KACd,CAAC;IAC1B,OAAO,aAAa,CAAC;AACvB,CAAC"}
@@ -3,5 +3,5 @@ export { waitForUserOpReceipt, createUnsignedUserOp, signUserOp, } from "../../w
3
3
  export { getUserOpReceipt, getUserOpReceiptRaw, bundleUserOp, getUserOpGasFees, estimateUserOpGas, } from "../../wallets/smart/lib/bundler.js";
4
4
  export { predictAddress } from "../../wallets/smart/lib/calls.js";
5
5
  export { getPaymasterAndData } from "../../wallets/smart/lib/paymaster.js";
6
- export { ENTRYPOINT_ADDRESS_v0_6, DEFAULT_ACCOUNT_FACTORY, } from "../../wallets/smart/lib/constants.js";
6
+ export { ENTRYPOINT_ADDRESS_v0_6, ENTRYPOINT_ADDRESS_v0_7, DEFAULT_ACCOUNT_FACTORY_V0_6, DEFAULT_ACCOUNT_FACTORY_V0_7, } from "../../wallets/smart/lib/constants.js";
7
7
  //# sourceMappingURL=smart.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"smart.js","sourceRoot":"","sources":["../../../../src/exports/wallets/smart.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAElE,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,UAAU,GACX,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAElE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAS3E,OAAO,EACL,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,sCAAsC,CAAC"}
1
+ {"version":3,"file":"smart.js","sourceRoot":"","sources":["../../../../src/exports/wallets/smart.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAElE,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,UAAU,GACX,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAElE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAS3E,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,4BAA4B,EAC5B,4BAA4B,GAC7B,MAAM,sCAAsC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"claimTo.js","sourceRoot":"","sources":["../../../../../../src/extensions/erc1155/drops/write/claimTo.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,wDAAwD,CAAC;AACxF,OAAO,EAAE,KAAK,EAAE,MAAM,8CAA8C,CAAC;AAYrE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,OAAO,CAAC,OAA8C;IACpE,OAAO,KAAK,CAAC;QACX,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,KAAK,CAAC,WAAW;YACf,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;gBAClC,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,OAAO,EAAE,OAAO,CAAC,OAAO;aACzB,CAAC,CAAC;YAEH,OAAO;gBACL,GAAG,MAAM;gBACT,OAAO,EAAE,OAAO,CAAC,OAAO;aACzB,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"claimTo.js","sourceRoot":"","sources":["../../../../../../src/extensions/erc1155/drops/write/claimTo.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,wDAAwD,CAAC;AACxF,OAAO,EAAE,KAAK,EAAE,MAAM,8CAA8C,CAAC;AAYrE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,OAAO,CAAC,OAA8C;IACpE,OAAO,KAAK,CAAC;QACX,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,KAAK,CAAC,WAAW;YACf,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;gBAClC,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,OAAO,EAAE,OAAO,CAAC,OAAO;aACzB,CAAC,CAAC;YAEH,OAAO;gBACL,GAAG,MAAM;gBACT,OAAO,EAAE,OAAO,CAAC,OAAO;aACzB,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { prepareEvent } from "../../../../../event/prepare-event.js";
2
+ /**
3
+ * Creates an event object for the PostOpRevertReason event.
4
+ * @param filters - Optional filters to apply to the event.
5
+ * @returns The prepared event object.
6
+ * @extension ERC4337
7
+ * @example
8
+ * ```ts
9
+ * import { getContractEvents } from "thirdweb";
10
+ * import { postOpRevertReasonEvent } from "thirdweb/extensions/erc4337";
11
+ *
12
+ * const events = await getContractEvents({
13
+ * contract,
14
+ * events: [
15
+ * postOpRevertReasonEvent({
16
+ * userOpHash: ...,
17
+ * sender: ...,
18
+ * })
19
+ * ],
20
+ * });
21
+ * ```
22
+ */
23
+ export function postOpRevertReasonEvent(filters = {}) {
24
+ return prepareEvent({
25
+ signature: "event PostOpRevertReason(bytes32 indexed userOpHash, address indexed sender, uint256 nonce, bytes revertReason)",
26
+ filters,
27
+ });
28
+ }
29
+ //# sourceMappingURL=PostOpRevertReason.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PostOpRevertReason.js","sourceRoot":"","sources":["../../../../../../../src/extensions/erc4337/__generated__/IEntryPoint_v07/events/PostOpRevertReason.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAmBrE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,uBAAuB,CACrC,UAA0C,EAAE;IAE5C,OAAO,YAAY,CAAC;QAClB,SAAS,EACP,iHAAiH;QACnH,OAAO;KACR,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,145 @@
1
+ import { readContract } from "../../../../../transaction/read-contract.js";
2
+ import { encodeAbiParameters } from "../../../../../utils/abi/encodeAbiParameters.js";
3
+ import { decodeAbiParameters } from "viem";
4
+ import { detectMethod } from "../../../../../utils/bytecode/detectExtension.js";
5
+ export const FN_SELECTOR = "0x22cdde4c";
6
+ const FN_INPUTS = [
7
+ {
8
+ type: "tuple",
9
+ name: "userOp",
10
+ components: [
11
+ {
12
+ type: "address",
13
+ name: "sender",
14
+ },
15
+ {
16
+ type: "uint256",
17
+ name: "nonce",
18
+ },
19
+ {
20
+ type: "bytes",
21
+ name: "initCode",
22
+ },
23
+ {
24
+ type: "bytes",
25
+ name: "callData",
26
+ },
27
+ {
28
+ type: "bytes32",
29
+ name: "accountGasLimits",
30
+ },
31
+ {
32
+ type: "uint256",
33
+ name: "preVerificationGas",
34
+ },
35
+ {
36
+ type: "bytes32",
37
+ name: "gasFees",
38
+ },
39
+ {
40
+ type: "bytes",
41
+ name: "paymasterAndData",
42
+ },
43
+ {
44
+ type: "bytes",
45
+ name: "signature",
46
+ },
47
+ ],
48
+ },
49
+ ];
50
+ const FN_OUTPUTS = [
51
+ {
52
+ type: "bytes32",
53
+ },
54
+ ];
55
+ /**
56
+ * Checks if the `getUserOpHash` method is supported by the given contract.
57
+ * @param contract The ThirdwebContract.
58
+ * @returns A promise that resolves to a boolean indicating if the `getUserOpHash` method is supported.
59
+ * @extension ERC4337
60
+ * @example
61
+ * ```ts
62
+ * import { isGetUserOpHashSupported } from "thirdweb/extensions/erc4337";
63
+ *
64
+ * const supported = await isGetUserOpHashSupported(contract);
65
+ * ```
66
+ */
67
+ export async function isGetUserOpHashSupported(contract) {
68
+ return detectMethod({
69
+ contract,
70
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS],
71
+ });
72
+ }
73
+ /**
74
+ * Encodes the parameters for the "getUserOpHash" function.
75
+ * @param options - The options for the getUserOpHash function.
76
+ * @returns The encoded ABI parameters.
77
+ * @extension ERC4337
78
+ * @example
79
+ * ```ts
80
+ * import { encodeGetUserOpHashParams } "thirdweb/extensions/erc4337";
81
+ * const result = encodeGetUserOpHashParams({
82
+ * userOp: ...,
83
+ * });
84
+ * ```
85
+ */
86
+ export function encodeGetUserOpHashParams(options) {
87
+ return encodeAbiParameters(FN_INPUTS, [options.userOp]);
88
+ }
89
+ /**
90
+ * Encodes the "getUserOpHash" function into a Hex string with its parameters.
91
+ * @param options - The options for the getUserOpHash function.
92
+ * @returns The encoded hexadecimal string.
93
+ * @extension ERC4337
94
+ * @example
95
+ * ```ts
96
+ * import { encodeGetUserOpHash } "thirdweb/extensions/erc4337";
97
+ * const result = encodeGetUserOpHash({
98
+ * userOp: ...,
99
+ * });
100
+ * ```
101
+ */
102
+ export function encodeGetUserOpHash(options) {
103
+ // we do a "manual" concat here to avoid the overhead of the "concatHex" function
104
+ // we can do this because we know the specific formats of the values
105
+ return (FN_SELECTOR +
106
+ encodeGetUserOpHashParams(options).slice(2));
107
+ }
108
+ /**
109
+ * Decodes the result of the getUserOpHash function call.
110
+ * @param result - The hexadecimal result to decode.
111
+ * @returns The decoded result as per the FN_OUTPUTS definition.
112
+ * @extension ERC4337
113
+ * @example
114
+ * ```ts
115
+ * import { decodeGetUserOpHashResult } from "thirdweb/extensions/erc4337";
116
+ * const result = decodeGetUserOpHashResult("...");
117
+ * ```
118
+ */
119
+ export function decodeGetUserOpHashResult(result) {
120
+ return decodeAbiParameters(FN_OUTPUTS, result)[0];
121
+ }
122
+ /**
123
+ * Calls the "getUserOpHash" function on the contract.
124
+ * @param options - The options for the getUserOpHash function.
125
+ * @returns The parsed result of the function call.
126
+ * @extension ERC4337
127
+ * @example
128
+ * ```ts
129
+ * import { getUserOpHash } from "thirdweb/extensions/erc4337";
130
+ *
131
+ * const result = await getUserOpHash({
132
+ * contract,
133
+ * userOp: ...,
134
+ * });
135
+ *
136
+ * ```
137
+ */
138
+ export async function getUserOpHash(options) {
139
+ return readContract({
140
+ contract: options.contract,
141
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS],
142
+ params: [options.userOp],
143
+ });
144
+ }
145
+ //# sourceMappingURL=getUserOpHash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getUserOpHash.js","sourceRoot":"","sources":["../../../../../../../src/extensions/erc4337/__generated__/IEntryPoint_v07/read/getUserOpHash.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAE3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AACtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAC;AAG3C,OAAO,EAAE,YAAY,EAAE,MAAM,kDAAkD,CAAC;AAuBhF,MAAM,CAAC,MAAM,WAAW,GAAG,YAAqB,CAAC;AACjD,MAAM,SAAS,GAAG;IAChB;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,QAAQ;aACf;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,OAAO;aACd;YACD;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,UAAU;aACjB;YACD;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,UAAU;aACjB;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,kBAAkB;aACzB;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,oBAAoB;aAC3B;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,kBAAkB;aACzB;YACD;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,WAAW;aAClB;SACF;KACF;CACO,CAAC;AACX,MAAM,UAAU,GAAG;IACjB;QACE,IAAI,EAAE,SAAS;KAChB;CACO,CAAC;AAEX;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,QAA+B;IAE/B,OAAO,YAAY,CAAC;QAClB,QAAQ;QACR,MAAM,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,CAAU;KACtD,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAA4B;IACpE,OAAO,mBAAmB,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAA4B;IAC9D,iFAAiF;IACjF,oEAAoE;IACpE,OAAO,CAAC,WAAW;QACjB,yBAAyB,CAAC,OAAO,CAAC,CAAC,KAAK,CACtC,CAAC,CACF,CAAqC,CAAC;AAC3C,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,yBAAyB,CAAC,MAAW;IACnD,OAAO,mBAAmB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,OAAoD;IAEpD,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,MAAM,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,CAAU;QACrD,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;KACzB,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,177 @@
1
+ import { prepareContractCall } from "../../../../../transaction/prepare-contract-call.js";
2
+ import { encodeAbiParameters } from "../../../../../utils/abi/encodeAbiParameters.js";
3
+ import { once } from "../../../../../utils/promise/once.js";
4
+ import { detectMethod } from "../../../../../utils/bytecode/detectExtension.js";
5
+ export const FN_SELECTOR = "0x7cf43f8d";
6
+ const FN_INPUTS = [
7
+ {
8
+ type: "string",
9
+ name: "_name",
10
+ },
11
+ {
12
+ type: "string",
13
+ name: "_contractURI",
14
+ },
15
+ {
16
+ type: "address[]",
17
+ name: "_trustedForwarders",
18
+ },
19
+ {
20
+ type: "address",
21
+ name: "_token",
22
+ },
23
+ {
24
+ type: "uint256",
25
+ name: "_initialVotingDelay",
26
+ },
27
+ {
28
+ type: "uint256",
29
+ name: "_initialVotingPeriod",
30
+ },
31
+ {
32
+ type: "uint256",
33
+ name: "_initialProposalThreshold",
34
+ },
35
+ {
36
+ type: "uint256",
37
+ name: "_initialVoteQuorumFraction",
38
+ },
39
+ ];
40
+ const FN_OUTPUTS = [];
41
+ /**
42
+ * Checks if the `initialize` method is supported by the given contract.
43
+ * @param contract The ThirdwebContract.
44
+ * @returns A promise that resolves to a boolean indicating if the `initialize` method is supported.
45
+ * @extension PREBUILTS
46
+ * @example
47
+ * ```ts
48
+ * import { isInitializeSupported } from "thirdweb/extensions/prebuilts";
49
+ *
50
+ * const supported = await isInitializeSupported(contract);
51
+ * ```
52
+ */
53
+ export async function isInitializeSupported(contract) {
54
+ return detectMethod({
55
+ contract,
56
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS],
57
+ });
58
+ }
59
+ /**
60
+ * Encodes the parameters for the "initialize" function.
61
+ * @param options - The options for the initialize function.
62
+ * @returns The encoded ABI parameters.
63
+ * @extension PREBUILTS
64
+ * @example
65
+ * ```ts
66
+ * import { encodeInitializeParams } "thirdweb/extensions/prebuilts";
67
+ * const result = encodeInitializeParams({
68
+ * name: ...,
69
+ * contractURI: ...,
70
+ * trustedForwarders: ...,
71
+ * token: ...,
72
+ * initialVotingDelay: ...,
73
+ * initialVotingPeriod: ...,
74
+ * initialProposalThreshold: ...,
75
+ * initialVoteQuorumFraction: ...,
76
+ * });
77
+ * ```
78
+ */
79
+ export function encodeInitializeParams(options) {
80
+ return encodeAbiParameters(FN_INPUTS, [
81
+ options.name,
82
+ options.contractURI,
83
+ options.trustedForwarders,
84
+ options.token,
85
+ options.initialVotingDelay,
86
+ options.initialVotingPeriod,
87
+ options.initialProposalThreshold,
88
+ options.initialVoteQuorumFraction,
89
+ ]);
90
+ }
91
+ /**
92
+ * Encodes the "initialize" function into a Hex string with its parameters.
93
+ * @param options - The options for the initialize function.
94
+ * @returns The encoded hexadecimal string.
95
+ * @extension PREBUILTS
96
+ * @example
97
+ * ```ts
98
+ * import { encodeInitialize } "thirdweb/extensions/prebuilts";
99
+ * const result = encodeInitialize({
100
+ * name: ...,
101
+ * contractURI: ...,
102
+ * trustedForwarders: ...,
103
+ * token: ...,
104
+ * initialVotingDelay: ...,
105
+ * initialVotingPeriod: ...,
106
+ * initialProposalThreshold: ...,
107
+ * initialVoteQuorumFraction: ...,
108
+ * });
109
+ * ```
110
+ */
111
+ export function encodeInitialize(options) {
112
+ // we do a "manual" concat here to avoid the overhead of the "concatHex" function
113
+ // we can do this because we know the specific formats of the values
114
+ return (FN_SELECTOR +
115
+ encodeInitializeParams(options).slice(2));
116
+ }
117
+ /**
118
+ * Prepares a transaction to call the "initialize" function on the contract.
119
+ * @param options - The options for the "initialize" function.
120
+ * @returns A prepared transaction object.
121
+ * @extension PREBUILTS
122
+ * @example
123
+ * ```ts
124
+ * import { initialize } from "thirdweb/extensions/prebuilts";
125
+ *
126
+ * const transaction = initialize({
127
+ * contract,
128
+ * name: ...,
129
+ * contractURI: ...,
130
+ * trustedForwarders: ...,
131
+ * token: ...,
132
+ * initialVotingDelay: ...,
133
+ * initialVotingPeriod: ...,
134
+ * initialProposalThreshold: ...,
135
+ * initialVoteQuorumFraction: ...,
136
+ * overrides: {
137
+ * ...
138
+ * }
139
+ * });
140
+ *
141
+ * // Send the transaction
142
+ * ...
143
+ *
144
+ * ```
145
+ */
146
+ export function initialize(options) {
147
+ const asyncOptions = once(async () => {
148
+ return "asyncParams" in options ? await options.asyncParams() : options;
149
+ });
150
+ return prepareContractCall({
151
+ contract: options.contract,
152
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS],
153
+ params: async () => {
154
+ const resolvedOptions = await asyncOptions();
155
+ return [
156
+ resolvedOptions.name,
157
+ resolvedOptions.contractURI,
158
+ resolvedOptions.trustedForwarders,
159
+ resolvedOptions.token,
160
+ resolvedOptions.initialVotingDelay,
161
+ resolvedOptions.initialVotingPeriod,
162
+ resolvedOptions.initialProposalThreshold,
163
+ resolvedOptions.initialVoteQuorumFraction,
164
+ ];
165
+ },
166
+ value: async () => (await asyncOptions()).overrides?.value,
167
+ accessList: async () => (await asyncOptions()).overrides?.accessList,
168
+ gas: async () => (await asyncOptions()).overrides?.gas,
169
+ gasPrice: async () => (await asyncOptions()).overrides?.gasPrice,
170
+ maxFeePerGas: async () => (await asyncOptions()).overrides?.maxFeePerGas,
171
+ maxPriorityFeePerGas: async () => (await asyncOptions()).overrides?.maxPriorityFeePerGas,
172
+ nonce: async () => (await asyncOptions()).overrides?.nonce,
173
+ extraGas: async () => (await asyncOptions()).overrides?.extraGas,
174
+ erc20Value: async () => (await asyncOptions()).overrides?.erc20Value,
175
+ });
176
+ }
177
+ //# sourceMappingURL=initialize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initialize.js","sourceRoot":"","sources":["../../../../../../../src/extensions/prebuilts/__generated__/VoteERC20/write/initialize.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,119 @@
1
+ import { getContract } from "../../contract/contract.js";
2
+ import { deployViaAutoFactory } from "../../contract/deployment/deploy-via-autofactory.js";
3
+ import { getOrDeployInfraForPublishedContract } from "../../contract/deployment/utils/bootstrap.js";
4
+ import { decimals } from "../erc20/read/decimals.js";
5
+ /**
6
+ * Deploys a thirdweb [`VoteERC20 contract`](https://thirdweb.com/thirdweb.eth/VoteERC20)
7
+ * On chains where the thirdweb infrastructure contracts are not deployed, this function will deploy them as well.
8
+ * @param options - The deployment options.
9
+ * @returns The deployed contract address.
10
+ * @extension DEPLOY
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * import { deployVoteContract } from "thirdweb/deploys";
15
+ * const contractAddress = await deployVoteContract({
16
+ * chain,
17
+ * client,
18
+ * account,
19
+ * params: {
20
+ * tokenAddress: "0x...",
21
+ * // user needs 0.5 <token> to create proposal
22
+ * initialProposalThreshold: "0.5",
23
+ * // vote expires 10 blocks later
24
+ * initialVotingPeriod: 10,
25
+ * // Requires 51% of users who voted, voted "For", for this proposal to pass
26
+ * minVoteQuorumRequiredPercent: 51,
27
+ * }
28
+ * });
29
+ * ```
30
+ */
31
+ export async function deployVoteContract(options) {
32
+ const { chain, client, account, params } = options;
33
+ const { cloneFactoryContract, implementationContract } = await getOrDeployInfraForPublishedContract({
34
+ chain,
35
+ client,
36
+ account,
37
+ contractId: "VoteERC20",
38
+ constructorParams: [],
39
+ });
40
+ const initializeTransaction = await getInitializeTransaction({
41
+ client,
42
+ implementationContract,
43
+ params,
44
+ accountAddress: account.address,
45
+ chain,
46
+ });
47
+ return deployViaAutoFactory({
48
+ client,
49
+ chain,
50
+ account,
51
+ cloneFactoryContract,
52
+ initializeTransaction,
53
+ });
54
+ }
55
+ async function getInitializeTransaction(options) {
56
+ const { client, implementationContract, params, chain } = options;
57
+ const { name, tokenAddress, initialProposalThreshold, minVoteQuorumRequiredPercent, initialVotingDelay, initialVotingPeriod, description, symbol, image, external_link, social_urls, } = params;
58
+ const tokenErc20Contract = getContract({
59
+ address: tokenAddress,
60
+ client,
61
+ chain,
62
+ });
63
+ /**
64
+ * A good side effect for checking for token decimals (instead of just taking in value in wei)
65
+ * is that it validates the token address that user entered. In case they enter an invalid ERC20 contract address,
66
+ * the extension will throw.
67
+ */
68
+ const _decimals = await decimals({ contract: tokenErc20Contract });
69
+ if (!_decimals) {
70
+ throw new Error(`Could not fetch decimals for contract: ${tokenAddress}`);
71
+ }
72
+ const [{ toUnits }, { upload }, { initialize }] = await Promise.all([
73
+ import("../../utils/units.js"),
74
+ import("../../storage/upload.js"),
75
+ import("./__generated__/VoteERC20/write/initialize.js"),
76
+ ]);
77
+ const initialProposalThresholdInWei = toUnits(String(initialProposalThreshold), _decimals);
78
+ const contractURI = params.contractURI ||
79
+ (await upload({
80
+ client,
81
+ files: [
82
+ {
83
+ name,
84
+ description,
85
+ symbol,
86
+ image,
87
+ external_link,
88
+ social_urls,
89
+ },
90
+ ],
91
+ })) ||
92
+ "";
93
+ // Validate initialVoteQuorumFraction
94
+ const _num = Number(minVoteQuorumRequiredPercent);
95
+ if (Number.isNaN(_num)) {
96
+ throw new Error(`${minVoteQuorumRequiredPercent} is not a valid minVoteQuorumRequiredPercent`);
97
+ }
98
+ if (_num < 0 || _num > 100) {
99
+ throw new Error("minVoteQuorumRequiredPercent must be >= 0 and <= 100");
100
+ }
101
+ // Make sure if user is passing a float, it should only have 2 digit after the decimal point
102
+ if (!Number.isInteger(_num)) {
103
+ throw new Error(`${_num} is an invalid value. Only integer-like values accepted`);
104
+ }
105
+ const initialVoteQuorumFraction = BigInt(_num);
106
+ return initialize({
107
+ contract: implementationContract,
108
+ name,
109
+ token: tokenAddress,
110
+ // Make sure the final value passed to `initialProposalThreshold` is in wei
111
+ initialProposalThreshold: initialProposalThresholdInWei,
112
+ initialVoteQuorumFraction,
113
+ initialVotingDelay: BigInt(initialVotingDelay || 0),
114
+ initialVotingPeriod: BigInt(initialVotingPeriod),
115
+ contractURI,
116
+ trustedForwarders: params.trustedForwarders || [],
117
+ });
118
+ }
119
+ //# sourceMappingURL=deploy-vote.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deploy-vote.js","sourceRoot":"","sources":["../../../../src/extensions/prebuilts/deploy-vote.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export const version = "5.48.2";
1
+ export const version = "5.48.3-nightly-b661ce7b2fd58e7ff01faf47cf8fb3bb232841ec-20240827000337";
2
2
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,wEAAwE,CAAC"}
@@ -10,7 +10,7 @@ import { concatHex } from "../../utils/encoding/helpers/concat-hex.js";
10
10
  import { parseTypedData } from "../../utils/signatures/helpers/parseTypedData.js";
11
11
  import { broadcastZkTransaction, bundleUserOp, getZkPaymasterData, } from "./lib/bundler.js";
12
12
  import { predictAddress, prepareBatchExecute, prepareExecute, } from "./lib/calls.js";
13
- import { DEFAULT_ACCOUNT_FACTORY } from "./lib/constants.js";
13
+ import { getDefaultAccountFactory } from "./lib/constants.js";
14
14
  import { createUnsignedUserOp, signUserOp, waitForUserOpReceipt, } from "./lib/userop.js";
15
15
  import { isNativeAAChain } from "./lib/utils.js";
16
16
  /**
@@ -37,7 +37,8 @@ export async function connectSmartWallet(wallet, connectionOptions, creationOpti
37
37
  throw new Error("Personal wallet does not have an account");
38
38
  }
39
39
  const options = creationOptions;
40
- const factoryAddress = options.factoryAddress ?? DEFAULT_ACCOUNT_FACTORY;
40
+ const factoryAddress = options.factoryAddress ??
41
+ getDefaultAccountFactory(creationOptions.overrides?.entrypointAddress);
41
42
  const chain = connectChain ?? options.chain;
42
43
  const sponsorGas = "gasless" in options ? options.gasless : options.sponsorGas;
43
44
  if (isNativeAAChain(chain)) {
@@ -118,6 +119,9 @@ async function createSmartAccount(options) {
118
119
  erc20Paymaster.address,
119
120
  erc20Paymaster?.token,
120
121
  ]),
122
+ // for 0.7 compatibility
123
+ paymaster: erc20Paymaster.address,
124
+ paymasterData: "0x",
121
125
  };
122
126
  };
123
127
  paymasterOverride = options.overrides?.paymaster || paymasterCallback;
@@ -419,13 +423,20 @@ async function _sendUserOp(args) {
419
423
  overrides: options.overrides,
420
424
  });
421
425
  const signedUserOp = await signUserOp({
426
+ client: options.client,
422
427
  chain: options.chain,
423
428
  adminAccount: options.personalAccount,
424
429
  entrypointAddress: options.overrides?.entrypointAddress,
425
430
  userOp: unsignedUserOp,
426
431
  });
432
+ const bundlerOptions = {
433
+ chain: options.chain,
434
+ client: options.client,
435
+ bundlerUrl: options.overrides?.bundlerUrl,
436
+ entrypointAddress: options.overrides?.entrypointAddress,
437
+ };
427
438
  const userOpHash = await bundleUserOp({
428
- options,
439
+ options: bundlerOptions,
429
440
  userOp: signedUserOp,
430
441
  });
431
442
  // wait for tx receipt rather than return the userOp hash