@seedprotocol/publish 0.6.9 → 0.6.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 (312) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/README.md +1 -1
  3. package/dist/{chainConfig-CA1Hrrjg.js → chainConfig-DWzoOtkS.js} +394 -328
  4. package/dist/chainConfig-DWzoOtkS.js.map +1 -0
  5. package/dist/config.d.ts +5 -4
  6. package/dist/config.d.ts.map +1 -1
  7. package/dist/ensureAutomationSessionKey-h3zOmDr5.js +84 -0
  8. package/dist/ensureAutomationSessionKey-h3zOmDr5.js.map +1 -0
  9. package/dist/{ensureModularPublishBootstrap-DGBKVGg5.js → ensureModularPublishBootstrap-BImiIFJe.js} +9 -10
  10. package/dist/{ensureModularPublishBootstrap-5HJDqJJM.js.map → ensureModularPublishBootstrap-BImiIFJe.js.map} +1 -1
  11. package/dist/{ensureSmartWalletThenPublish-Bm58tc-b.js → ensureSmartWalletThenPublish-DuOYPJFd.js} +9 -10
  12. package/dist/{ensureSmartWalletThenPublish-Bm58tc-b.js.map → ensureSmartWalletThenPublish-DuOYPJFd.js.map} +1 -1
  13. package/dist/errors.d.ts +9 -0
  14. package/dist/errors.d.ts.map +1 -1
  15. package/dist/helpers/abi/executor.d.ts +12 -0
  16. package/dist/helpers/abi/executor.d.ts.map +1 -1
  17. package/dist/helpers/abi/factory.d.ts +11 -0
  18. package/dist/helpers/abi/factory.d.ts.map +1 -1
  19. package/dist/helpers/abi/seedExecutorRouter.d.ts +9 -1
  20. package/dist/helpers/abi/seedExecutorRouter.d.ts.map +1 -1
  21. package/dist/helpers/adapters/thirdwebAccount.d.ts.map +1 -1
  22. package/dist/helpers/chainClient.d.ts +18 -2
  23. package/dist/helpers/chainClient.d.ts.map +1 -1
  24. package/dist/helpers/contracts/index.d.ts +9 -0
  25. package/dist/helpers/contracts/index.d.ts.map +1 -1
  26. package/dist/helpers/describeRevert.d.ts +3 -2
  27. package/dist/helpers/describeRevert.d.ts.map +1 -1
  28. package/dist/helpers/enrollPublishAutomation.d.ts +2 -2
  29. package/dist/helpers/enrollPublishAutomation.d.ts.map +1 -1
  30. package/dist/helpers/ensureAutomationSessionKey.d.ts.map +1 -1
  31. package/dist/helpers/ensureExecutorModule.d.ts +28 -5
  32. package/dist/helpers/ensureExecutorModule.d.ts.map +1 -1
  33. package/dist/helpers/executorModuleReadiness.d.ts +15 -1
  34. package/dist/helpers/executorModuleReadiness.d.ts.map +1 -1
  35. package/dist/helpers/gasLog.d.ts +8 -0
  36. package/dist/helpers/gasLog.d.ts.map +1 -0
  37. package/dist/helpers/seedPaymaster.d.ts +27 -0
  38. package/dist/helpers/seedPaymaster.d.ts.map +1 -0
  39. package/dist/helpers/thirdweb.d.ts.map +1 -1
  40. package/dist/index.d.ts +3 -3
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +271 -272
  43. package/dist/index.js.map +1 -1
  44. package/dist/{managedAccountAdmin-B64V1rlU.js → managedAccountAdmin-B4HkLWWE.js} +9 -10
  45. package/dist/{managedAccountAdmin-B64V1rlU.js.map → managedAccountAdmin-B4HkLWWE.js.map} +1 -1
  46. package/dist/{publishAuthorization-CxBkijU6.js → publishAuthorization-DgDI4zor.js} +1104 -1018
  47. package/dist/publishAuthorization-DgDI4zor.js.map +1 -0
  48. package/dist/{publishThirdwebClient-CBD9sKJR.js → publishThirdwebClient-CO18ST7C.js} +2 -2
  49. package/dist/{publishThirdwebClient-CBD9sKJR.js.map → publishThirdwebClient-CO18ST7C.js.map} +1 -1
  50. package/dist/{resolveRevokeAccount-CehU81k6.js → resolveRevokeAccount-DsNod8ti.js} +11 -11
  51. package/dist/{resolveRevokeAccount-B5iXpuRT.js.map → resolveRevokeAccount-DsNod8ti.js.map} +1 -1
  52. package/dist/thirdweb.d.ts +2 -1
  53. package/dist/thirdweb.d.ts.map +1 -1
  54. package/dist/thirdweb.js +147 -148
  55. package/dist/thirdweb.js.map +1 -1
  56. package/dist/{worker-2dUZSapK.js → worker-CN7zg73B.js} +2 -2
  57. package/dist/{worker-2dUZSapK.js.map → worker-CN7zg73B.js.map} +1 -1
  58. package/package.json +6 -6
  59. package/dist/chainConfig-3sSqEVQh.js +0 -1433
  60. package/dist/chainConfig-3sSqEVQh.js.map +0 -1
  61. package/dist/chainConfig-3wlYarAG.js +0 -1433
  62. package/dist/chainConfig-3wlYarAG.js.map +0 -1
  63. package/dist/chainConfig-BRcsMopd.js +0 -1442
  64. package/dist/chainConfig-BRcsMopd.js.map +0 -1
  65. package/dist/chainConfig-BYm5OXpk.js +0 -1433
  66. package/dist/chainConfig-BYm5OXpk.js.map +0 -1
  67. package/dist/chainConfig-CA1Hrrjg.js.map +0 -1
  68. package/dist/chainConfig-CYy0XJ0M.js +0 -1283
  69. package/dist/chainConfig-CYy0XJ0M.js.map +0 -1
  70. package/dist/chainConfig-CfVGYAsY.js +0 -1311
  71. package/dist/chainConfig-CfVGYAsY.js.map +0 -1
  72. package/dist/chainConfig-DDA4YmAB.js +0 -1424
  73. package/dist/chainConfig-DDA4YmAB.js.map +0 -1
  74. package/dist/config-BA9la8B6.js +0 -941
  75. package/dist/config-BA9la8B6.js.map +0 -1
  76. package/dist/config-BqguD2Tt.js +0 -806
  77. package/dist/config-BqguD2Tt.js.map +0 -1
  78. package/dist/config-CPBd5C_b.js +0 -1201
  79. package/dist/config-CPBd5C_b.js.map +0 -1
  80. package/dist/config-DkIapO94.js +0 -955
  81. package/dist/config-DkIapO94.js.map +0 -1
  82. package/dist/config-EQZZNH9H.js +0 -955
  83. package/dist/config-EQZZNH9H.js.map +0 -1
  84. package/dist/config-qjpaJcBA.js +0 -947
  85. package/dist/config-qjpaJcBA.js.map +0 -1
  86. package/dist/deploy-BJYwLfz-.js +0 -15
  87. package/dist/deploy-BJYwLfz-.js.map +0 -1
  88. package/dist/enrollPublishAutomation-DYQMoylY.js +0 -3422
  89. package/dist/enrollPublishAutomation-DYQMoylY.js.map +0 -1
  90. package/dist/ensureAutomationSessionKey-BMHLKfjj.js +0 -85
  91. package/dist/ensureAutomationSessionKey-BMHLKfjj.js.map +0 -1
  92. package/dist/ensureAutomationSessionKey-BZ9_3FMW.js +0 -86
  93. package/dist/ensureAutomationSessionKey-BZ9_3FMW.js.map +0 -1
  94. package/dist/ensureAutomationSessionKey-Bq0PaTYE.js +0 -84
  95. package/dist/ensureAutomationSessionKey-Bq0PaTYE.js.map +0 -1
  96. package/dist/ensureAutomationSessionKey-Bw74ZSGI.js +0 -85
  97. package/dist/ensureAutomationSessionKey-Bw74ZSGI.js.map +0 -1
  98. package/dist/ensureAutomationSessionKey-C8D7BFjU.js +0 -85
  99. package/dist/ensureAutomationSessionKey-C8D7BFjU.js.map +0 -1
  100. package/dist/ensureAutomationSessionKey-CClLVX2w.js +0 -85
  101. package/dist/ensureAutomationSessionKey-CClLVX2w.js.map +0 -1
  102. package/dist/ensureAutomationSessionKey-CNNN1jBQ.js +0 -85
  103. package/dist/ensureAutomationSessionKey-CNNN1jBQ.js.map +0 -1
  104. package/dist/ensureAutomationSessionKey-CeUbjcCl.js +0 -85
  105. package/dist/ensureAutomationSessionKey-CeUbjcCl.js.map +0 -1
  106. package/dist/ensureAutomationSessionKey-D8Gki6U6.js +0 -85
  107. package/dist/ensureAutomationSessionKey-D8Gki6U6.js.map +0 -1
  108. package/dist/ensureAutomationSessionKey-DEH7nwUc.js +0 -86
  109. package/dist/ensureAutomationSessionKey-DEH7nwUc.js.map +0 -1
  110. package/dist/ensureAutomationSessionKey-DKriW4Hr.js +0 -85
  111. package/dist/ensureAutomationSessionKey-DKriW4Hr.js.map +0 -1
  112. package/dist/ensureAutomationSessionKey-Dhvbii2M.js +0 -86
  113. package/dist/ensureAutomationSessionKey-Dhvbii2M.js.map +0 -1
  114. package/dist/ensureAutomationSessionKey-Dyfk8qVp.js +0 -85
  115. package/dist/ensureAutomationSessionKey-Dyfk8qVp.js.map +0 -1
  116. package/dist/ensureModularPublishBootstrap-5HJDqJJM.js +0 -24
  117. package/dist/ensureModularPublishBootstrap-BW8jKN_A.js +0 -24
  118. package/dist/ensureModularPublishBootstrap-BW8jKN_A.js.map +0 -1
  119. package/dist/ensureModularPublishBootstrap-BhYNmLzT.js +0 -24
  120. package/dist/ensureModularPublishBootstrap-BhYNmLzT.js.map +0 -1
  121. package/dist/ensureModularPublishBootstrap-Bsw1xSCt.js +0 -24
  122. package/dist/ensureModularPublishBootstrap-Bsw1xSCt.js.map +0 -1
  123. package/dist/ensureModularPublishBootstrap-Btih5xbB.js +0 -129
  124. package/dist/ensureModularPublishBootstrap-Btih5xbB.js.map +0 -1
  125. package/dist/ensureModularPublishBootstrap-C8wdnH1P.js +0 -128
  126. package/dist/ensureModularPublishBootstrap-C8wdnH1P.js.map +0 -1
  127. package/dist/ensureModularPublishBootstrap-CI4U08Gc.js +0 -129
  128. package/dist/ensureModularPublishBootstrap-CI4U08Gc.js.map +0 -1
  129. package/dist/ensureModularPublishBootstrap-CcU-hXll.js +0 -128
  130. package/dist/ensureModularPublishBootstrap-CcU-hXll.js.map +0 -1
  131. package/dist/ensureModularPublishBootstrap-CdrykHAi.js +0 -24
  132. package/dist/ensureModularPublishBootstrap-CdrykHAi.js.map +0 -1
  133. package/dist/ensureModularPublishBootstrap-DGBKVGg5.js.map +0 -1
  134. package/dist/ensureModularPublishBootstrap-DaREOqSc.js +0 -129
  135. package/dist/ensureModularPublishBootstrap-DaREOqSc.js.map +0 -1
  136. package/dist/ensureModularPublishBootstrap-DxIG-LUP.js +0 -24
  137. package/dist/ensureModularPublishBootstrap-DxIG-LUP.js.map +0 -1
  138. package/dist/ensureModularPublishBootstrap-Jm1AAqBo.js +0 -127
  139. package/dist/ensureModularPublishBootstrap-Jm1AAqBo.js.map +0 -1
  140. package/dist/ensureSessionKey-D2Lq-56x.js +0 -363
  141. package/dist/ensureSessionKey-D2Lq-56x.js.map +0 -1
  142. package/dist/ensureSmartWalletThenPublish-BFPugsKJ.js +0 -48
  143. package/dist/ensureSmartWalletThenPublish-BFPugsKJ.js.map +0 -1
  144. package/dist/ensureSmartWalletThenPublish-BSYzckyS.js +0 -49
  145. package/dist/ensureSmartWalletThenPublish-BSYzckyS.js.map +0 -1
  146. package/dist/ensureSmartWalletThenPublish-Bf8FN1un.js +0 -49
  147. package/dist/ensureSmartWalletThenPublish-Bf8FN1un.js.map +0 -1
  148. package/dist/ensureSmartWalletThenPublish-Bl415Ss6.js +0 -48
  149. package/dist/ensureSmartWalletThenPublish-Bl415Ss6.js.map +0 -1
  150. package/dist/ensureSmartWalletThenPublish-Bmm5Fpat.js +0 -49
  151. package/dist/ensureSmartWalletThenPublish-Bmm5Fpat.js.map +0 -1
  152. package/dist/ensureSmartWalletThenPublish-CE7acryB.js +0 -49
  153. package/dist/ensureSmartWalletThenPublish-CE7acryB.js.map +0 -1
  154. package/dist/ensureSmartWalletThenPublish-D5GSZRyZ.js +0 -48
  155. package/dist/ensureSmartWalletThenPublish-D5GSZRyZ.js.map +0 -1
  156. package/dist/ensureSmartWalletThenPublish-DAomriGc.js +0 -48
  157. package/dist/ensureSmartWalletThenPublish-DAomriGc.js.map +0 -1
  158. package/dist/ensureSmartWalletThenPublish-DaZf3q5S.js +0 -48
  159. package/dist/ensureSmartWalletThenPublish-DaZf3q5S.js.map +0 -1
  160. package/dist/ensureSmartWalletThenPublish-Dta2AOyJ.js +0 -48
  161. package/dist/ensureSmartWalletThenPublish-Dta2AOyJ.js.map +0 -1
  162. package/dist/ensureSmartWalletThenPublish-ekb0xJRn.js +0 -48
  163. package/dist/ensureSmartWalletThenPublish-ekb0xJRn.js.map +0 -1
  164. package/dist/ensureSmartWalletThenPublish-v5fhvKxZ.js +0 -48
  165. package/dist/ensureSmartWalletThenPublish-v5fhvKxZ.js.map +0 -1
  166. package/dist/errors-Du3LNbJN.js +0 -70
  167. package/dist/errors-Du3LNbJN.js.map +0 -1
  168. package/dist/errors-PZAaDlkq.js +0 -79
  169. package/dist/errors-PZAaDlkq.js.map +0 -1
  170. package/dist/helpers/adapters/managedAccountTxSender.d.ts +0 -21
  171. package/dist/helpers/adapters/managedAccountTxSender.d.ts.map +0 -1
  172. package/dist/helpers/modularAccount/abi.d.ts +0 -173
  173. package/dist/helpers/modularAccount/abi.d.ts.map +0 -1
  174. package/dist/helpers/modularAccount/deploy.d.ts +0 -13
  175. package/dist/helpers/modularAccount/deploy.d.ts.map +0 -1
  176. package/dist/helpers/modularAccount/eip712.d.ts +0 -30
  177. package/dist/helpers/modularAccount/eip712.d.ts.map +0 -1
  178. package/dist/helpers/modularAccount/encode.d.ts +0 -16
  179. package/dist/helpers/modularAccount/encode.d.ts.map +0 -1
  180. package/dist/helpers/modularAccount/ensureModule.d.ts +0 -10
  181. package/dist/helpers/modularAccount/ensureModule.d.ts.map +0 -1
  182. package/dist/helpers/modularAccount/ensureSessionKey.d.ts +0 -25
  183. package/dist/helpers/modularAccount/ensureSessionKey.d.ts.map +0 -1
  184. package/dist/helpers/modularAccount/index.d.ts +0 -9
  185. package/dist/helpers/modularAccount/index.d.ts.map +0 -1
  186. package/dist/helpers/modularAccount/permissions.d.ts +0 -32
  187. package/dist/helpers/modularAccount/permissions.d.ts.map +0 -1
  188. package/dist/helpers/modularAccount/reads.d.ts +0 -28
  189. package/dist/helpers/modularAccount/reads.d.ts.map +0 -1
  190. package/dist/helpers/thirdwebEnrollPublishAutomation.d.ts +0 -31
  191. package/dist/helpers/thirdwebEnrollPublishAutomation.d.ts.map +0 -1
  192. package/dist/helpers/thirdwebModularBootstrap.d.ts +0 -8
  193. package/dist/helpers/thirdwebModularBootstrap.d.ts.map +0 -1
  194. package/dist/helpers/transformPayloadToIntegerIds.d.ts +0 -34
  195. package/dist/helpers/transformPayloadToIntegerIds.d.ts.map +0 -1
  196. package/dist/managedAccountAdmin-BVLGWpEb.js +0 -29
  197. package/dist/managedAccountAdmin-BVLGWpEb.js.map +0 -1
  198. package/dist/managedAccountAdmin-Bje6X8Ds.js +0 -29
  199. package/dist/managedAccountAdmin-Bje6X8Ds.js.map +0 -1
  200. package/dist/managedAccountAdmin-C84-IlQ9.js +0 -29
  201. package/dist/managedAccountAdmin-C84-IlQ9.js.map +0 -1
  202. package/dist/managedAccountAdmin-DJMw6UH6.js +0 -29
  203. package/dist/managedAccountAdmin-DJMw6UH6.js.map +0 -1
  204. package/dist/managedAccountAdmin-DhCRBoPX.js +0 -29
  205. package/dist/managedAccountAdmin-DhCRBoPX.js.map +0 -1
  206. package/dist/managedAccountAdmin-NXD66lP5.js +0 -29
  207. package/dist/managedAccountAdmin-NXD66lP5.js.map +0 -1
  208. package/dist/publishAuthorization-B0G1em4a.js +0 -3695
  209. package/dist/publishAuthorization-B0G1em4a.js.map +0 -1
  210. package/dist/publishAuthorization-B1BVVfp0.js +0 -3604
  211. package/dist/publishAuthorization-B1BVVfp0.js.map +0 -1
  212. package/dist/publishAuthorization-BEqRnP2h.js +0 -3925
  213. package/dist/publishAuthorization-BEqRnP2h.js.map +0 -1
  214. package/dist/publishAuthorization-Bltn3y_K.js +0 -3599
  215. package/dist/publishAuthorization-Bltn3y_K.js.map +0 -1
  216. package/dist/publishAuthorization-By2Tt9kW.js +0 -3912
  217. package/dist/publishAuthorization-By2Tt9kW.js.map +0 -1
  218. package/dist/publishAuthorization-CSN2FsQk.js +0 -3479
  219. package/dist/publishAuthorization-CSN2FsQk.js.map +0 -1
  220. package/dist/publishAuthorization-CxBkijU6.js.map +0 -1
  221. package/dist/publishAuthorization-CxWY7lAQ.js +0 -3706
  222. package/dist/publishAuthorization-CxWY7lAQ.js.map +0 -1
  223. package/dist/publishAuthorization-DEriY_jm.js +0 -3687
  224. package/dist/publishAuthorization-DEriY_jm.js.map +0 -1
  225. package/dist/publishAuthorization-DfAQs1sN.js +0 -3707
  226. package/dist/publishAuthorization-DfAQs1sN.js.map +0 -1
  227. package/dist/publishAuthorization-DgdmgLTa.js +0 -3520
  228. package/dist/publishAuthorization-DgdmgLTa.js.map +0 -1
  229. package/dist/publishAuthorization-DjVrnMC0.js +0 -3925
  230. package/dist/publishAuthorization-DjVrnMC0.js.map +0 -1
  231. package/dist/publishAuthorization-DqhhCAhd.js +0 -3652
  232. package/dist/publishAuthorization-DqhhCAhd.js.map +0 -1
  233. package/dist/publishThirdwebClient-BdgkcqM7.js +0 -18
  234. package/dist/publishThirdwebClient-BdgkcqM7.js.map +0 -1
  235. package/dist/publishThirdwebClient-BkmDN480.js +0 -18
  236. package/dist/publishThirdwebClient-BkmDN480.js.map +0 -1
  237. package/dist/publishThirdwebClient-BnDhP3N-.js +0 -18
  238. package/dist/publishThirdwebClient-BnDhP3N-.js.map +0 -1
  239. package/dist/publishThirdwebClient-CQ29pzG2.js +0 -18
  240. package/dist/publishThirdwebClient-CQ29pzG2.js.map +0 -1
  241. package/dist/publishThirdwebClient-CZIVmr9Z.js +0 -18
  242. package/dist/publishThirdwebClient-CZIVmr9Z.js.map +0 -1
  243. package/dist/publishThirdwebClient-Ce7iBIsj.js +0 -18
  244. package/dist/publishThirdwebClient-Ce7iBIsj.js.map +0 -1
  245. package/dist/publishThirdwebClient-DroRrOFQ.js +0 -18
  246. package/dist/publishThirdwebClient-DroRrOFQ.js.map +0 -1
  247. package/dist/publishThirdwebClient-DzXFjQ7L.js +0 -18
  248. package/dist/publishThirdwebClient-DzXFjQ7L.js.map +0 -1
  249. package/dist/publishThirdwebClient-Dzb2vcEs.js +0 -18
  250. package/dist/publishThirdwebClient-Dzb2vcEs.js.map +0 -1
  251. package/dist/publishThirdwebClient-i8P7fivi.js +0 -18
  252. package/dist/publishThirdwebClient-i8P7fivi.js.map +0 -1
  253. package/dist/publishWalletRegistry-Cugh691z.js +0 -37
  254. package/dist/publishWalletRegistry-Cugh691z.js.map +0 -1
  255. package/dist/resolveRevokeAccount-B5iXpuRT.js +0 -38
  256. package/dist/resolveRevokeAccount-B7ImSb4Y.js +0 -38
  257. package/dist/resolveRevokeAccount-B7ImSb4Y.js.map +0 -1
  258. package/dist/resolveRevokeAccount-BEhKQBTm.js +0 -38
  259. package/dist/resolveRevokeAccount-BEhKQBTm.js.map +0 -1
  260. package/dist/resolveRevokeAccount-BM1j2l5Q.js +0 -38
  261. package/dist/resolveRevokeAccount-BM1j2l5Q.js.map +0 -1
  262. package/dist/resolveRevokeAccount-BtVG0xxc.js +0 -38
  263. package/dist/resolveRevokeAccount-BtVG0xxc.js.map +0 -1
  264. package/dist/resolveRevokeAccount-CJZZdBcQ.js +0 -39
  265. package/dist/resolveRevokeAccount-CJZZdBcQ.js.map +0 -1
  266. package/dist/resolveRevokeAccount-CaIMuCee.js +0 -39
  267. package/dist/resolveRevokeAccount-CaIMuCee.js.map +0 -1
  268. package/dist/resolveRevokeAccount-CehU81k6.js.map +0 -1
  269. package/dist/resolveRevokeAccount-Cg4TQgnd.js +0 -38
  270. package/dist/resolveRevokeAccount-Cg4TQgnd.js.map +0 -1
  271. package/dist/resolveRevokeAccount-DHnxtEIj.js +0 -39
  272. package/dist/resolveRevokeAccount-DHnxtEIj.js.map +0 -1
  273. package/dist/resolveRevokeAccount-DJKfLlyK.js +0 -38
  274. package/dist/resolveRevokeAccount-DJKfLlyK.js.map +0 -1
  275. package/dist/resolveRevokeAccount-S-2WXkNh.js +0 -38
  276. package/dist/resolveRevokeAccount-S-2WXkNh.js.map +0 -1
  277. package/dist/resolveRevokeAccount-mzR11KJ4.js +0 -38
  278. package/dist/resolveRevokeAccount-mzR11KJ4.js.map +0 -1
  279. package/dist/resolveRevokeAccount-yWARIv9i.js +0 -38
  280. package/dist/resolveRevokeAccount-yWARIv9i.js.map +0 -1
  281. package/dist/seedSigner-CFzMD7Rb.js +0 -66
  282. package/dist/seedSigner-CFzMD7Rb.js.map +0 -1
  283. package/dist/thirdweb-BoksPRz3.js +0 -194
  284. package/dist/thirdweb-BoksPRz3.js.map +0 -1
  285. package/dist/thirdwebAccount-C2iOcp4_.js +0 -59
  286. package/dist/thirdwebAccount-C2iOcp4_.js.map +0 -1
  287. package/dist/worker-B1PcFPLi.js +0 -69
  288. package/dist/worker-B1PcFPLi.js.map +0 -1
  289. package/dist/worker-B8gN5WTx.js +0 -69
  290. package/dist/worker-B8gN5WTx.js.map +0 -1
  291. package/dist/worker-BCG1r0AS.js +0 -69
  292. package/dist/worker-BCG1r0AS.js.map +0 -1
  293. package/dist/worker-BgErCNTb.js +0 -69
  294. package/dist/worker-BgErCNTb.js.map +0 -1
  295. package/dist/worker-C07rPV2G.js +0 -69
  296. package/dist/worker-C07rPV2G.js.map +0 -1
  297. package/dist/worker-C9Za_dlQ.js +0 -69
  298. package/dist/worker-C9Za_dlQ.js.map +0 -1
  299. package/dist/worker-CEgulQnm.js +0 -69
  300. package/dist/worker-CEgulQnm.js.map +0 -1
  301. package/dist/worker-C_TL94He.js +0 -69
  302. package/dist/worker-C_TL94He.js.map +0 -1
  303. package/dist/worker-CbtzcKG6.js +0 -69
  304. package/dist/worker-CbtzcKG6.js.map +0 -1
  305. package/dist/worker-DBC_g-3I.js +0 -69
  306. package/dist/worker-DBC_g-3I.js.map +0 -1
  307. package/dist/worker-DHUm-TeQ.js +0 -69
  308. package/dist/worker-DHUm-TeQ.js.map +0 -1
  309. package/dist/worker-DypHzXgH.js +0 -69
  310. package/dist/worker-DypHzXgH.js.map +0 -1
  311. package/dist/worker-ZL4Wg19t.js +0 -69
  312. package/dist/worker-ZL4Wg19t.js.map +0 -1
@@ -1,127 +0,0 @@
1
- import { H as e, J as t, R as n, U as r, W as i, nt as a, r as o } from "./config-qjpaJcBA.js";
2
- import { a as s, n as c, r as l } from "./errors-Du3LNbJN.js";
3
- import { D as u, M as d, j as f, v as p } from "./publishAuthorization-CSN2FsQk.js";
4
- import { deploySmartAccount as m, getContract as h, sendTransaction as g } from "thirdweb";
5
- import { optimismSepolia as _ } from "thirdweb/chains";
6
- import { addSessionKey as v, shouldUpdateSessionKey as y } from "thirdweb/extensions/erc4337";
7
- //#region src/helpers/ensureEip7702ModularAccountReady.ts
8
- var b = "Modular (EIP-7702) wallet is not connected. Sign in with the same method and try again.", x = "Your modular account is not upgraded to an EIP-7702 smart account on Optimism Sepolia yet. Enable autoDeployEip7702ModularAccount in publish config or complete wallet setup, then retry.", S = "Automatic EIP-7702 smart account setup failed on Optimism Sepolia. Retry or reconnect your wallet.", C = "EIP-7702 upgrade was sent but on-chain bytecode was not detected yet. Wait a moment and retry.", w = 5;
9
- async function T() {
10
- let { autoDeployEip7702ModularAccount: t } = o(), n = d();
11
- await n.autoConnect({
12
- client: u(),
13
- chain: _
14
- });
15
- let i = n.getAccount();
16
- if (!i) throw new c(b, "EIP7702_MODULAR_ACCOUNT_UNAVAILABLE");
17
- let a = u(), s = h({
18
- client: a,
19
- chain: _,
20
- address: i.address
21
- });
22
- if (!await e(i.address)) {
23
- if (!t) throw new c(x, "EIP7702_MODULAR_NOT_UPGRADED", i.address);
24
- try {
25
- await m({
26
- smartAccount: i,
27
- chain: _,
28
- client: a,
29
- accountContract: s
30
- });
31
- } catch (e) {
32
- if (await r(i.address, w)) return;
33
- throw new c(S, "EIP7702_MODULAR_DEPLOY_FAILED", i.address, e);
34
- }
35
- if (!await r(i.address, w)) throw new c(C, "EIP7702_MODULAR_NOT_CONFIRMED", i.address);
36
- }
37
- }
38
- //#endregion
39
- //#region src/helpers/defaultApprovedTargetsForModularPublish.ts
40
- function E(e) {
41
- let t = /* @__PURE__ */ new Set();
42
- for (let n of e) {
43
- let e = n.trim().toLowerCase();
44
- e.startsWith("0x") && e.length === 42 && t.add(e);
45
- }
46
- return [...t].sort().map((e) => e);
47
- }
48
- function D(e) {
49
- let n = o(), r = [e, t];
50
- return n.modularAccountModuleContract?.trim() && r.push(n.modularAccountModuleContract.trim()), E(r);
51
- }
52
- //#endregion
53
- //#region src/helpers/ensureManagedSignerSessionKey.ts
54
- var O = "Could not connect the managed publishing account to authorize the modular signer on Optimism Sepolia. Reconnect and try again.", k = "Could not authorize the modular wallet as a session signer on your publishing account on Optimism Sepolia.";
55
- async function A(e) {
56
- let { managedAddress: t, signerAddress: r } = e, a = f();
57
- await a.autoConnect({
58
- client: u(),
59
- chain: _
60
- });
61
- let o = a.getAccount();
62
- if (!o) throw new l(O, "MODULAR_SIGNER_ACTIVATION_FAILED", t);
63
- let s = h({
64
- client: u(),
65
- chain: _,
66
- address: t
67
- }), c = {
68
- approvedTargets: D(t),
69
- nativeTokenLimitPerTransaction: 0
70
- }, d = !1;
71
- try {
72
- d = await y({
73
- accountContract: s,
74
- sessionKeyAddress: r,
75
- newPermissions: c
76
- });
77
- } catch (e) {
78
- throw new l(k, "MODULAR_SIGNER_ACTIVATION_FAILED", t, e);
79
- }
80
- if (d) try {
81
- let e = v({
82
- contract: s,
83
- account: o,
84
- sessionKeyAddress: r,
85
- permissions: c
86
- }), t = await g({
87
- account: o,
88
- transaction: e
89
- });
90
- await i(t.transactionHash);
91
- } catch (e) {
92
- throw new l(k, "MODULAR_SIGNER_ACTIVATION_FAILED", t, e);
93
- }
94
- let p = !1;
95
- try {
96
- p = await n(t, r);
97
- } catch (e) {
98
- throw new l(k, "MODULAR_SIGNER_ACTIVATION_FAILED", t, e);
99
- }
100
- if (!p) throw new l(k, "MODULAR_SIGNER_ACTIVATION_FAILED", t);
101
- }
102
- //#endregion
103
- //#region src/helpers/ensureModularPublishBootstrap.ts
104
- var j = /* @__PURE__ */ a({ ensureModularPublishBootstrap: () => M });
105
- async function M(e) {
106
- let t = d();
107
- await t.autoConnect({
108
- client: u(),
109
- chain: _
110
- });
111
- let n = t.getAccount();
112
- if (!n) throw Error("Failed to get modular account");
113
- try {
114
- await A({
115
- managedAddress: e,
116
- signerAddress: n.address
117
- });
118
- } catch (e) {
119
- if (!o().autoDeployEip7702ModularAccount || !s(e)) throw e;
120
- await T();
121
- }
122
- return await p(e, (await import("./config-qjpaJcBA.js").then((e) => e.c)).fromThirdwebAccount(n)), n;
123
- }
124
- //#endregion
125
- export { T as a, D as i, j as n, A as r, M as t };
126
-
127
- //# sourceMappingURL=ensureModularPublishBootstrap-Jm1AAqBo.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ensureModularPublishBootstrap-Jm1AAqBo.js","names":[],"sources":["../src/helpers/ensureEip7702ModularAccountReady.ts","../src/helpers/defaultApprovedTargetsForModularPublish.ts","../src/helpers/ensureManagedSignerSessionKey.ts","../src/helpers/ensureModularPublishBootstrap.ts"],"sourcesContent":["import { deploySmartAccount, getContract } from 'thirdweb'\nimport { optimismSepolia } from 'thirdweb/chains'\nimport { getPublishConfig } from '../config'\nimport { Eip7702ModularAccountPublishError } from '../errors'\nimport { isContractDeployed, pollSmartWalletDeployed } from './chainClient'\nimport { getClient, getModularAccountWallet } from './thirdweb'\n\nconst MSG_NO_ACCOUNT =\n 'Modular (EIP-7702) wallet is not connected. Sign in with the same method and try again.'\nconst MSG_NOT_UPGRADED =\n 'Your modular account is not upgraded to an EIP-7702 smart account on Optimism Sepolia yet. Enable autoDeployEip7702ModularAccount in publish config or complete wallet setup, then retry.'\nconst MSG_DEPLOY_FAILED =\n 'Automatic EIP-7702 smart account setup failed on Optimism Sepolia. Retry or reconnect your wallet.'\nconst MSG_NOT_CONFIRMED =\n 'EIP-7702 upgrade was sent but on-chain bytecode was not detected yet. Wait a moment and retry.'\n\nconst DEPLOY_POLL_ATTEMPTS = 5\n\n/**\n * Ensures the Thirdweb in-app modular wallet (EIP-7702) has non-empty bytecode at its address\n * on Optimism Sepolia. deploySmartAccount remains Thirdweb; bytecode checks use viem.\n */\nexport async function ensureEip7702ModularAccountReady(): Promise<void> {\n const { autoDeployEip7702ModularAccount } = getPublishConfig()\n const modularAccountWallet = getModularAccountWallet()\n await modularAccountWallet.autoConnect({ client: getClient(), chain: optimismSepolia })\n const modularAccount = modularAccountWallet.getAccount()\n if (!modularAccount) {\n throw new Eip7702ModularAccountPublishError(MSG_NO_ACCOUNT, 'EIP7702_MODULAR_ACCOUNT_UNAVAILABLE')\n }\n\n const client = getClient()\n const accountContract = getContract({\n client,\n chain: optimismSepolia,\n address: modularAccount.address,\n })\n\n if (await isContractDeployed(modularAccount.address)) {\n return\n }\n\n if (!autoDeployEip7702ModularAccount) {\n throw new Eip7702ModularAccountPublishError(\n MSG_NOT_UPGRADED,\n 'EIP7702_MODULAR_NOT_UPGRADED',\n modularAccount.address,\n )\n }\n\n try {\n await deploySmartAccount({\n smartAccount: modularAccount,\n chain: optimismSepolia,\n client,\n accountContract,\n })\n } catch (cause) {\n if (await pollSmartWalletDeployed(modularAccount.address, DEPLOY_POLL_ATTEMPTS)) {\n return\n }\n throw new Eip7702ModularAccountPublishError(\n MSG_DEPLOY_FAILED,\n 'EIP7702_MODULAR_DEPLOY_FAILED',\n modularAccount.address,\n cause,\n )\n }\n\n if (!(await pollSmartWalletDeployed(modularAccount.address, DEPLOY_POLL_ATTEMPTS))) {\n throw new Eip7702ModularAccountPublishError(\n MSG_NOT_CONFIRMED,\n 'EIP7702_MODULAR_NOT_CONFIRMED',\n modularAccount.address,\n )\n }\n}\n","import { getPublishConfig } from '../config'\nimport { EAS_CONTRACT_ADDRESS } from './constants'\n\nfunction uniqueAddressesLower(addresses: string[]): `0x${string}`[] {\n const set = new Set<string>()\n for (const a of addresses) {\n const t = a.trim().toLowerCase()\n if (t.startsWith('0x') && t.length === 42) set.add(t)\n }\n return [...set].sort().map((x) => x as `0x${string}`)\n}\n\n/** Allowlisted call targets for modular session signers: managed account, EAS, optional executor module. */\nexport function defaultApprovedTargetsForModularPublish(managedAddress: string): `0x${string}`[] {\n const cfg = getPublishConfig()\n const extra: string[] = [managedAddress, EAS_CONTRACT_ADDRESS]\n if (cfg.modularAccountModuleContract?.trim()) {\n extra.push(cfg.modularAccountModuleContract.trim())\n }\n return uniqueAddressesLower(extra)\n}\n","import { getContract, sendTransaction } from 'thirdweb'\nimport { addSessionKey, shouldUpdateSessionKey } from 'thirdweb/extensions/erc4337'\nimport { optimismSepolia } from 'thirdweb/chains'\nimport type { Address } from 'viem'\nimport { ManagedAccountPublishError } from '../errors'\nimport { waitForPublishReceipt } from './chainClient'\nimport { readIsActiveSigner } from './contracts'\nimport { defaultApprovedTargetsForModularPublish } from './defaultApprovedTargetsForModularPublish'\nimport { getClient, getManagedAccountWallet } from './thirdweb'\n\nconst MSG_UNAVAILABLE =\n 'Could not connect the managed publishing account to authorize the modular signer on Optimism Sepolia. Reconnect and try again.'\nconst MSG_ACTIVATION_FAILED =\n 'Could not authorize the modular wallet as a session signer on your publishing account on Optimism Sepolia.'\n\n/**\n * Ensures the modular (EIP-7702) wallet is an active session signer on the ManagedAccount.\n * If permissions are missing or stale, sends `addSessionKey` signed by the managed EIP-4337 wallet.\n * Session-key AA extensions remain on Thirdweb; verification uses viem.\n */\nexport async function ensureManagedSignerSessionKey(params: {\n managedAddress: string\n signerAddress: string\n}): Promise<void> {\n const { managedAddress, signerAddress } = params\n const managedWallet = getManagedAccountWallet()\n await managedWallet.autoConnect({ client: getClient(), chain: optimismSepolia })\n const managedAccount = managedWallet.getAccount()\n if (!managedAccount) {\n throw new ManagedAccountPublishError(\n MSG_UNAVAILABLE,\n 'MODULAR_SIGNER_ACTIVATION_FAILED',\n managedAddress,\n )\n }\n\n const accountContract = getContract({\n client: getClient(),\n chain: optimismSepolia,\n address: managedAddress,\n })\n const permissions = {\n approvedTargets: defaultApprovedTargetsForModularPublish(managedAddress),\n nativeTokenLimitPerTransaction: 0,\n }\n\n let shouldUpdate = false\n try {\n shouldUpdate = await shouldUpdateSessionKey({\n accountContract,\n sessionKeyAddress: signerAddress,\n newPermissions: permissions,\n })\n } catch (cause) {\n throw new ManagedAccountPublishError(\n MSG_ACTIVATION_FAILED,\n 'MODULAR_SIGNER_ACTIVATION_FAILED',\n managedAddress,\n cause,\n )\n }\n\n if (shouldUpdate) {\n try {\n const tx = addSessionKey({\n contract: accountContract,\n account: managedAccount,\n sessionKeyAddress: signerAddress,\n permissions,\n })\n const result = await sendTransaction({ account: managedAccount, transaction: tx })\n await waitForPublishReceipt(result.transactionHash as `0x${string}`)\n } catch (cause) {\n throw new ManagedAccountPublishError(\n MSG_ACTIVATION_FAILED,\n 'MODULAR_SIGNER_ACTIVATION_FAILED',\n managedAddress,\n cause,\n )\n }\n }\n\n let active = false\n try {\n active = await readIsActiveSigner(managedAddress as Address, signerAddress as Address)\n } catch (cause) {\n throw new ManagedAccountPublishError(\n MSG_ACTIVATION_FAILED,\n 'MODULAR_SIGNER_ACTIVATION_FAILED',\n managedAddress,\n cause,\n )\n }\n\n if (!active) {\n throw new ManagedAccountPublishError(\n MSG_ACTIVATION_FAILED,\n 'MODULAR_SIGNER_ACTIVATION_FAILED',\n managedAddress,\n )\n }\n}\n","import type { Account } from 'thirdweb/wallets'\nimport { optimismSepolia } from 'thirdweb/chains'\nimport { getPublishConfig } from '../config'\nimport { isManagedAccountPublishError } from '../errors'\nimport { ensureEip7702ModularAccountReady } from './ensureEip7702ModularAccountReady'\nimport { ensureManagedAccountEasConfigured } from './ensureManagedAccountEasConfigured'\nimport { ensureManagedSignerSessionKey } from './ensureManagedSignerSessionKey'\nimport { getClient, getModularAccountWallet } from './thirdweb'\n\n/**\n * One-time modular publish bootstrap before `multiPublish`:\n * session signer on managed account → EAS pointer → optional EIP-7702 fallback.\n */\nexport async function ensureModularPublishBootstrap(managedAddress: string): Promise<Account> {\n const modularAccountWallet = getModularAccountWallet()\n await modularAccountWallet.autoConnect({ client: getClient(), chain: optimismSepolia })\n const modularAccount = modularAccountWallet.getAccount()\n if (!modularAccount) {\n throw new Error('Failed to get modular account')\n }\n\n try {\n await ensureManagedSignerSessionKey({\n managedAddress,\n signerAddress: modularAccount.address,\n })\n } catch (cause) {\n if (!getPublishConfig().autoDeployEip7702ModularAccount) {\n throw cause\n }\n if (!isManagedAccountPublishError(cause)) {\n throw cause\n }\n await ensureEip7702ModularAccountReady()\n }\n\n await ensureManagedAccountEasConfigured(managedAddress, (await import('./adapters/thirdwebAccount')).fromThirdwebAccount(modularAccount))\n return modularAccount\n}\n"],"mappings":"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"}
@@ -1,363 +0,0 @@
1
- import { A as e, E as t, M as n, O as r, S as i, T as a } from "./config-BqguD2Tt.js";
2
- import { r as o } from "./errors-PZAaDlkq.js";
3
- import { u as s } from "./seedSigner-CFzMD7Rb.js";
4
- import { encodeAbiParameters as c, encodeFunctionData as l, parseEther as u } from "viem";
5
- //#region src/helpers/modularAccount/abi.ts
6
- var d = [{
7
- type: "function",
8
- name: "installModule",
9
- stateMutability: "nonpayable",
10
- inputs: [{
11
- name: "moduleContract",
12
- type: "address"
13
- }, {
14
- name: "data",
15
- type: "bytes"
16
- }],
17
- outputs: []
18
- }], f = [{
19
- type: "function",
20
- name: "getInstalledModules",
21
- stateMutability: "view",
22
- inputs: [],
23
- outputs: [{
24
- type: "tuple[]",
25
- components: [{
26
- name: "implementation",
27
- type: "address"
28
- }, {
29
- name: "config",
30
- type: "tuple",
31
- components: [
32
- {
33
- name: "registerInstallationCallback",
34
- type: "bool"
35
- },
36
- {
37
- name: "requiredInterfaces",
38
- type: "bytes4[]"
39
- },
40
- {
41
- name: "supportedInterfaces",
42
- type: "bytes4[]"
43
- },
44
- {
45
- name: "callbackFunctions",
46
- type: "tuple[]",
47
- components: [{
48
- name: "selector",
49
- type: "bytes4"
50
- }]
51
- },
52
- {
53
- name: "fallbackFunctions",
54
- type: "tuple[]",
55
- components: [{
56
- name: "selector",
57
- type: "bytes4"
58
- }, {
59
- name: "permissionBits",
60
- type: "uint256"
61
- }]
62
- }
63
- ]
64
- }]
65
- }]
66
- }], p = [{
67
- type: "function",
68
- name: "setPermissionsForSigner",
69
- stateMutability: "nonpayable",
70
- inputs: [{
71
- name: "req",
72
- type: "tuple",
73
- components: [
74
- {
75
- name: "signer",
76
- type: "address"
77
- },
78
- {
79
- name: "isAdmin",
80
- type: "uint8"
81
- },
82
- {
83
- name: "approvedTargets",
84
- type: "address[]"
85
- },
86
- {
87
- name: "nativeTokenLimitPerTransaction",
88
- type: "uint256"
89
- },
90
- {
91
- name: "permissionStartTimestamp",
92
- type: "uint128"
93
- },
94
- {
95
- name: "permissionEndTimestamp",
96
- type: "uint128"
97
- },
98
- {
99
- name: "reqValidityStartTimestamp",
100
- type: "uint128"
101
- },
102
- {
103
- name: "reqValidityEndTimestamp",
104
- type: "uint128"
105
- },
106
- {
107
- name: "uid",
108
- type: "bytes32"
109
- }
110
- ]
111
- }, {
112
- name: "signature",
113
- type: "bytes"
114
- }],
115
- outputs: []
116
- }], m = [{
117
- type: "function",
118
- name: "getPermissionsForSigner",
119
- stateMutability: "view",
120
- inputs: [{
121
- name: "signer",
122
- type: "address"
123
- }],
124
- outputs: [{
125
- name: "permissions",
126
- type: "tuple",
127
- components: [
128
- {
129
- name: "signer",
130
- type: "address"
131
- },
132
- {
133
- name: "approvedTargets",
134
- type: "address[]"
135
- },
136
- {
137
- name: "nativeTokenLimitPerTransaction",
138
- type: "uint256"
139
- },
140
- {
141
- name: "startTimestamp",
142
- type: "uint128"
143
- },
144
- {
145
- name: "endTimestamp",
146
- type: "uint128"
147
- }
148
- ]
149
- }]
150
- }], h = { SignerPermissionRequest: [
151
- {
152
- name: "signer",
153
- type: "address"
154
- },
155
- {
156
- name: "isAdmin",
157
- type: "uint8"
158
- },
159
- {
160
- name: "approvedTargets",
161
- type: "address[]"
162
- },
163
- {
164
- name: "nativeTokenLimitPerTransaction",
165
- type: "uint256"
166
- },
167
- {
168
- name: "permissionStartTimestamp",
169
- type: "uint128"
170
- },
171
- {
172
- name: "permissionEndTimestamp",
173
- type: "uint128"
174
- },
175
- {
176
- name: "reqValidityStartTimestamp",
177
- type: "uint128"
178
- },
179
- {
180
- name: "reqValidityEndTimestamp",
181
- type: "uint128"
182
- },
183
- {
184
- name: "uid",
185
- type: "bytes32"
186
- }
187
- ] }, g = "0x0000000000000000000000000000000000000000", _ = 10n * 365n * 24n * 60n * 60n;
188
- function v() {
189
- let e = /* @__PURE__ */ new Uint8Array(32);
190
- return crypto.getRandomValues(e), `0x${Array.from(e, (e) => e.toString(16).padStart(2, "0")).join("")}`;
191
- }
192
- function y() {
193
- return BigInt(Math.floor(Date.now() / 1e3));
194
- }
195
- function b(e) {
196
- let { sessionKeyAddress: t, permissions: n } = e, r = n.permissionStartTimestamp == null ? 0n : BigInt(n.permissionStartTimestamp), i = n.permissionEndTimestamp == null ? y() + _ : BigInt(n.permissionEndTimestamp), a = n.approvedTargets === "*" ? [g] : n.approvedTargets, o = n.nativeTokenLimitPerTransaction ?? 0;
197
- return {
198
- signer: t,
199
- isAdmin: 0,
200
- approvedTargets: a,
201
- nativeTokenLimitPerTransaction: u(String(o)),
202
- permissionStartTimestamp: r,
203
- permissionEndTimestamp: i,
204
- reqValidityStartTimestamp: 0n,
205
- reqValidityEndTimestamp: y() + _,
206
- uid: e.uid ?? v()
207
- };
208
- }
209
- function x() {
210
- return {
211
- approvedTargets: [],
212
- nativeTokenLimitPerTransaction: 0,
213
- permissionStartTimestamp: 0,
214
- permissionEndTimestamp: 0
215
- };
216
- }
217
- function S(t) {
218
- return {
219
- domain: {
220
- name: "Account",
221
- version: "1",
222
- chainId: t.chainId ?? e().id,
223
- verifyingContract: t.managedAddress
224
- },
225
- types: h,
226
- primaryType: "SignerPermissionRequest",
227
- message: t.req
228
- };
229
- }
230
- async function C(e) {
231
- return s(e.adminSigner)(S({
232
- managedAddress: e.managedAddress,
233
- req: e.req,
234
- chainId: e.chainId
235
- }));
236
- }
237
- //#endregion
238
- //#region src/helpers/modularAccount/encode.ts
239
- function w(e) {
240
- return {
241
- to: e.managedAddress,
242
- data: l({
243
- abi: d,
244
- functionName: "installModule",
245
- args: [e.moduleContract, e.data ?? "0x"]
246
- })
247
- };
248
- }
249
- function T(e = n) {
250
- return c([{ type: "address" }], [e]);
251
- }
252
- function E(e) {
253
- return {
254
- to: e.managedAddress,
255
- data: l({
256
- abi: p,
257
- functionName: "setPermissionsForSigner",
258
- args: [e.req, e.signature]
259
- })
260
- };
261
- }
262
- //#endregion
263
- //#region src/helpers/modularAccount/reads.ts
264
- async function D(e) {
265
- return (await a().readContract({
266
- address: e,
267
- abi: f,
268
- functionName: "getInstalledModules"
269
- })).map((e) => ({ implementation: e.implementation }));
270
- }
271
- async function O(e, t) {
272
- return await a().readContract({
273
- address: e,
274
- abi: m,
275
- functionName: "getPermissionsForSigner",
276
- args: [t]
277
- });
278
- }
279
- function k(e, t) {
280
- let n = t.trim().toLowerCase();
281
- return e.some((e) => e.implementation?.toLowerCase() === n);
282
- }
283
- function A(e) {
284
- let t = e.nowSeconds ?? Math.floor(Date.now() / 1e3);
285
- if (e.current.endTimestamp && Number(e.current.endTimestamp) < t) return !0;
286
- let n = e.current.approvedTargets.map((e) => e.toLowerCase());
287
- return !e.approvedTargets.map((e) => e.toLowerCase()).every((e) => n.includes(e)) || e.nativeTokenLimitPerTransactionWei > e.current.nativeTokenLimitPerTransaction;
288
- }
289
- //#endregion
290
- //#region src/helpers/modularAccount/ensureSessionKey.ts
291
- var j = "Could not authorize the session key on your publishing account on Optimism Sepolia.", M = "Could not remove the session key from your publishing account on Optimism Sepolia.";
292
- async function N(e) {
293
- s(e.admin.signer);
294
- let t = b({
295
- sessionKeyAddress: e.sessionKeyAddress,
296
- permissions: e.permissions
297
- }), n = await C({
298
- adminSigner: e.admin.signer,
299
- managedAddress: e.managedAddress,
300
- req: t
301
- }), i = E({
302
- managedAddress: e.managedAddress,
303
- req: t,
304
- signature: n
305
- }), a = await e.admin.txSender.sendTransaction(i);
306
- await r(a.transactionHash);
307
- }
308
- async function P(e) {
309
- let n = e.managedAddress, r = e.sessionKeyAddress, a = e.activationFailedMessage ?? j, s = !0;
310
- try {
311
- if (await t(n)) {
312
- let t = await O(n, r), i = e.permissions.nativeTokenLimitPerTransaction ?? 0;
313
- s = A({
314
- current: t,
315
- approvedTargets: e.permissions.approvedTargets === "*" ? ["0x0000000000000000000000000000000000000000"] : e.permissions.approvedTargets,
316
- nativeTokenLimitPerTransactionWei: u(String(i))
317
- });
318
- }
319
- } catch (e) {
320
- throw new o(a, "MODULAR_SIGNER_ACTIVATION_FAILED", n, e);
321
- }
322
- if (s) try {
323
- await N({
324
- admin: e.admin,
325
- managedAddress: n,
326
- sessionKeyAddress: r,
327
- permissions: e.permissions
328
- });
329
- } catch (e) {
330
- throw e instanceof o ? e : new o(a, "MODULAR_SIGNER_ACTIVATION_FAILED", n, e);
331
- }
332
- let c = !1;
333
- try {
334
- c = await i(n, r);
335
- } catch (e) {
336
- throw new o(a, "MODULAR_SIGNER_ACTIVATION_FAILED", n, e);
337
- }
338
- if (!c) throw new o(a, "MODULAR_SIGNER_ACTIVATION_FAILED", n);
339
- }
340
- async function F(e) {
341
- let t = e.managedAddress, n = e.sessionKeyAddress;
342
- try {
343
- await N({
344
- admin: e.admin,
345
- managedAddress: t,
346
- sessionKeyAddress: n,
347
- permissions: x()
348
- });
349
- } catch (e) {
350
- throw e instanceof o ? e : new o(M, "MODULAR_SIGNER_ACTIVATION_FAILED", t, e);
351
- }
352
- }
353
- async function I(e, n) {
354
- try {
355
- return await t(e) ? await i(e, n) : !1;
356
- } catch (t) {
357
- throw new o(j, "MODULAR_SIGNER_ACTIVATION_FAILED", e, t);
358
- }
359
- }
360
- //#endregion
361
- export { D as a, E as c, k as i, b as l, I as n, T as o, F as r, w as s, P as t, C as u };
362
-
363
- //# sourceMappingURL=ensureSessionKey-D2Lq-56x.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ensureSessionKey-D2Lq-56x.js","names":[],"sources":["../src/helpers/modularAccount/abi.ts","../src/helpers/modularAccount/eip712.ts","../src/helpers/modularAccount/encode.ts","../src/helpers/modularAccount/reads.ts","../src/helpers/modularAccount/ensureSessionKey.ts"],"sourcesContent":["/**\n * In-repo ABIs for ModularCore + IAccountPermissions (Seed ManagedAccount).\n * Selectors match Thirdweb generated extensions; no thirdweb imports.\n */\n\nexport const modularCoreInstallModuleAbi = [\n {\n type: 'function',\n name: 'installModule',\n stateMutability: 'nonpayable',\n inputs: [\n { name: 'moduleContract', type: 'address' },\n { name: 'data', type: 'bytes' },\n ],\n outputs: [],\n },\n] as const\n\nexport const modularCoreGetInstalledModulesAbi = [\n {\n type: 'function',\n name: 'getInstalledModules',\n stateMutability: 'view',\n inputs: [],\n outputs: [\n {\n type: 'tuple[]',\n components: [\n { name: 'implementation', type: 'address' },\n {\n name: 'config',\n type: 'tuple',\n components: [\n { name: 'registerInstallationCallback', type: 'bool' },\n { name: 'requiredInterfaces', type: 'bytes4[]' },\n { name: 'supportedInterfaces', type: 'bytes4[]' },\n {\n name: 'callbackFunctions',\n type: 'tuple[]',\n components: [{ name: 'selector', type: 'bytes4' }],\n },\n {\n name: 'fallbackFunctions',\n type: 'tuple[]',\n components: [\n { name: 'selector', type: 'bytes4' },\n { name: 'permissionBits', type: 'uint256' },\n ],\n },\n ],\n },\n ],\n },\n ],\n },\n] as const\n\nexport const accountPermissionsSetPermissionsAbi = [\n {\n type: 'function',\n name: 'setPermissionsForSigner',\n stateMutability: 'nonpayable',\n inputs: [\n {\n name: 'req',\n type: 'tuple',\n components: [\n { name: 'signer', type: 'address' },\n { name: 'isAdmin', type: 'uint8' },\n { name: 'approvedTargets', type: 'address[]' },\n { name: 'nativeTokenLimitPerTransaction', type: 'uint256' },\n { name: 'permissionStartTimestamp', type: 'uint128' },\n { name: 'permissionEndTimestamp', type: 'uint128' },\n { name: 'reqValidityStartTimestamp', type: 'uint128' },\n { name: 'reqValidityEndTimestamp', type: 'uint128' },\n { name: 'uid', type: 'bytes32' },\n ],\n },\n { name: 'signature', type: 'bytes' },\n ],\n outputs: [],\n },\n] as const\n\nexport const accountPermissionsGetPermissionsAbi = [\n {\n type: 'function',\n name: 'getPermissionsForSigner',\n stateMutability: 'view',\n inputs: [{ name: 'signer', type: 'address' }],\n outputs: [\n {\n name: 'permissions',\n type: 'tuple',\n components: [\n { name: 'signer', type: 'address' },\n { name: 'approvedTargets', type: 'address[]' },\n { name: 'nativeTokenLimitPerTransaction', type: 'uint256' },\n { name: 'startTimestamp', type: 'uint128' },\n { name: 'endTimestamp', type: 'uint128' },\n ],\n },\n ],\n },\n] as const\n\n/** EIP-712 type fields for SignerPermissionRequest (Account domain). */\nexport const SIGNER_PERMISSION_REQUEST_TYPES = {\n SignerPermissionRequest: [\n { name: 'signer', type: 'address' },\n { name: 'isAdmin', type: 'uint8' },\n { name: 'approvedTargets', type: 'address[]' },\n { name: 'nativeTokenLimitPerTransaction', type: 'uint256' },\n { name: 'permissionStartTimestamp', type: 'uint128' },\n { name: 'permissionEndTimestamp', type: 'uint128' },\n { name: 'reqValidityStartTimestamp', type: 'uint128' },\n { name: 'reqValidityEndTimestamp', type: 'uint128' },\n { name: 'uid', type: 'bytes32' },\n ],\n} as const\n\nexport type SignerPermissionRequest = {\n signer: `0x${string}`\n isAdmin: number\n approvedTargets: readonly `0x${string}`[]\n nativeTokenLimitPerTransaction: bigint\n permissionStartTimestamp: bigint\n permissionEndTimestamp: bigint\n reqValidityStartTimestamp: bigint\n reqValidityEndTimestamp: bigint\n uid: `0x${string}`\n}\n","import { parseEther, type Address, type Hex, type TypedDataDefinition } from 'viem'\nimport { requireSignTypedData, type SeedSigner } from '../seedSigner'\nimport { getPublishViemChain } from '../chainConfig'\nimport {\n SIGNER_PERMISSION_REQUEST_TYPES,\n type SignerPermissionRequest,\n} from './abi'\nimport type { SessionKeyPermissions } from './permissions'\n\nconst ZERO_ADDRESS = '0x0000000000000000000000000000000000000000' as const\n/** ~10 years in seconds from a reference “now” — matches Thirdweb `tenYearsFromNow` window. */\nconst TEN_YEARS_SECONDS = 10n * 365n * 24n * 60n * 60n\n\nfunction randomUid(): Hex {\n const bytes = new Uint8Array(32)\n crypto.getRandomValues(bytes)\n return `0x${Array.from(bytes, (b) => b.toString(16).padStart(2, '0')).join('')}` as Hex\n}\n\nfunction nowSeconds(): bigint {\n return BigInt(Math.floor(Date.now() / 1000))\n}\n\n/**\n * Build the on-chain `SignerPermissionRequest` tuple (same shape as Thirdweb `toContractPermissions`).\n */\nexport function buildSignerPermissionRequest(params: {\n sessionKeyAddress: Address\n permissions: SessionKeyPermissions\n /** Override uid (tests). */\n uid?: Hex\n}): SignerPermissionRequest {\n const { sessionKeyAddress, permissions } = params\n const start =\n permissions.permissionStartTimestamp != null\n ? BigInt(permissions.permissionStartTimestamp)\n : 0n\n const end =\n permissions.permissionEndTimestamp != null\n ? BigInt(permissions.permissionEndTimestamp)\n : nowSeconds() + TEN_YEARS_SECONDS\n const approvedTargets =\n permissions.approvedTargets === '*'\n ? ([ZERO_ADDRESS] as `0x${string}`[])\n : permissions.approvedTargets\n\n const ethLimit = permissions.nativeTokenLimitPerTransaction ?? 0\n return {\n signer: sessionKeyAddress,\n isAdmin: 0,\n approvedTargets,\n nativeTokenLimitPerTransaction: parseEther(String(ethLimit)),\n permissionStartTimestamp: start,\n permissionEndTimestamp: end,\n reqValidityStartTimestamp: 0n,\n reqValidityEndTimestamp: nowSeconds() + TEN_YEARS_SECONDS,\n uid: params.uid ?? randomUid(),\n }\n}\n\n/** Permissions that clear a session key (Thirdweb `removeSessionKey`). */\nexport function buildRemoveSessionKeyPermissions(): SessionKeyPermissions {\n return {\n approvedTargets: [],\n nativeTokenLimitPerTransaction: 0,\n permissionStartTimestamp: 0,\n permissionEndTimestamp: 0,\n }\n}\n\nexport function signerPermissionTypedData(params: {\n managedAddress: Address\n req: SignerPermissionRequest\n chainId?: number\n}): TypedDataDefinition {\n const chainId = params.chainId ?? getPublishViemChain().id\n return {\n domain: {\n name: 'Account',\n version: '1',\n chainId,\n verifyingContract: params.managedAddress,\n },\n types: SIGNER_PERMISSION_REQUEST_TYPES,\n primaryType: 'SignerPermissionRequest',\n message: params.req,\n }\n}\n\n/**\n * Admin-signs a SignerPermissionRequest for `setPermissionsForSigner`.\n */\nexport async function signSignerPermissionRequest(params: {\n adminSigner: SeedSigner\n managedAddress: Address\n req: SignerPermissionRequest\n chainId?: number\n}): Promise<Hex> {\n const signTypedData = requireSignTypedData(params.adminSigner)\n return signTypedData(\n signerPermissionTypedData({\n managedAddress: params.managedAddress,\n req: params.req,\n chainId: params.chainId,\n }),\n )\n}\n","import { encodeAbiParameters, encodeFunctionData, type Address, type Hex } from 'viem'\nimport type { SeedTxRequest } from '../seedSigner'\nimport {\n accountPermissionsSetPermissionsAbi,\n modularCoreInstallModuleAbi,\n type SignerPermissionRequest,\n} from './abi'\nimport { EAS_CONTRACT_ADDRESS } from '../constants'\n\nexport function encodeInstallModule(params: {\n managedAddress: Address\n moduleContract: Address\n data?: Hex\n}): SeedTxRequest {\n return {\n to: params.managedAddress,\n data: encodeFunctionData({\n abi: modularCoreInstallModuleAbi,\n functionName: 'installModule',\n args: [params.moduleContract, params.data ?? '0x'],\n }),\n }\n}\n\n/** Default module install data used by Seed executor: EAS address. */\nexport function encodeExecutorModuleInstallData(\n easAddress: Address = EAS_CONTRACT_ADDRESS as Address,\n): Hex {\n return encodeAbiParameters([{ type: 'address' }], [easAddress])\n}\n\nexport function encodeSetPermissionsForSigner(params: {\n managedAddress: Address\n req: SignerPermissionRequest\n signature: Hex\n}): SeedTxRequest {\n return {\n to: params.managedAddress,\n data: encodeFunctionData({\n abi: accountPermissionsSetPermissionsAbi,\n functionName: 'setPermissionsForSigner',\n args: [params.req, params.signature],\n }),\n }\n}\n","import type { Address } from 'viem'\nimport { getPublishPublicClient } from '../chainClient'\nimport { readIsActiveSigner } from '../contracts'\nimport {\n accountPermissionsGetPermissionsAbi,\n modularCoreGetInstalledModulesAbi,\n} from './abi'\n\nexport type InstalledModule = {\n implementation: Address\n}\n\nexport type OnChainSignerPermissions = {\n signer: Address\n approvedTargets: readonly Address[]\n nativeTokenLimitPerTransaction: bigint\n startTimestamp: bigint\n endTimestamp: bigint\n}\n\nexport { readIsActiveSigner }\n\nexport async function readInstalledModules(\n managedAddress: Address,\n): Promise<InstalledModule[]> {\n const result = await getPublishPublicClient().readContract({\n address: managedAddress,\n abi: modularCoreGetInstalledModulesAbi,\n functionName: 'getInstalledModules',\n })\n return (result as unknown as Array<{ implementation: Address }>).map((m) => ({\n implementation: m.implementation,\n }))\n}\n\nexport async function readPermissionsForSigner(\n managedAddress: Address,\n signer: Address,\n): Promise<OnChainSignerPermissions> {\n const result = await getPublishPublicClient().readContract({\n address: managedAddress,\n abi: accountPermissionsGetPermissionsAbi,\n functionName: 'getPermissionsForSigner',\n args: [signer],\n })\n return result as OnChainSignerPermissions\n}\n\nexport function isModuleInstalled(\n installed: InstalledModule[],\n moduleAddress: string,\n): boolean {\n const want = moduleAddress.trim().toLowerCase()\n return installed.some((m) => m.implementation?.toLowerCase() === want)\n}\n\n/**\n * Whether session-key permissions should be (re)written — mirrors Thirdweb `shouldUpdateSessionKey`.\n */\nexport function shouldUpdateSessionKeyPermissions(params: {\n current: OnChainSignerPermissions\n /** Desired approved targets (lowercased comparison). */\n approvedTargets: `0x${string}`[]\n /** Desired native limit in wei. */\n nativeTokenLimitPerTransactionWei: bigint\n nowSeconds?: number\n}): boolean {\n const now = params.nowSeconds ?? Math.floor(Date.now() / 1000)\n if (params.current.endTimestamp && Number(params.current.endTimestamp) < now) {\n return true\n }\n const currentTargets = params.current.approvedTargets.map((t) => t.toLowerCase())\n const newTargets = params.approvedTargets.map((t) => t.toLowerCase())\n const targetsCovered = newTargets.every((t) => currentTargets.includes(t))\n if (!targetsCovered) return true\n if (params.nativeTokenLimitPerTransactionWei > params.current.nativeTokenLimitPerTransaction) {\n return true\n }\n return false\n}\n","import { parseEther, type Address, type Hex } from 'viem'\nimport { ManagedAccountPublishError } from '../../errors'\nimport { isContractDeployed, waitForPublishReceipt } from '../chainClient'\nimport type { PublishWallet } from '../seedSigner'\nimport { requireSignTypedData } from '../seedSigner'\nimport {\n buildRemoveSessionKeyPermissions,\n buildSignerPermissionRequest,\n signSignerPermissionRequest,\n} from './eip712'\nimport { encodeSetPermissionsForSigner } from './encode'\nimport type { SessionKeyPermissions } from './permissions'\nimport {\n readIsActiveSigner,\n readPermissionsForSigner,\n shouldUpdateSessionKeyPermissions,\n} from './reads'\n\nconst MSG_ACTIVATION_FAILED =\n 'Could not authorize the session key on your publishing account on Optimism Sepolia.'\nconst MSG_REMOVAL_FAILED =\n 'Could not remove the session key from your publishing account on Optimism Sepolia.'\n\nasync function sendSetPermissions(params: {\n admin: PublishWallet\n managedAddress: Address\n sessionKeyAddress: Address\n permissions: SessionKeyPermissions\n}): Promise<void> {\n requireSignTypedData(params.admin.signer)\n const req = buildSignerPermissionRequest({\n sessionKeyAddress: params.sessionKeyAddress,\n permissions: params.permissions,\n })\n const signature = await signSignerPermissionRequest({\n adminSigner: params.admin.signer,\n managedAddress: params.managedAddress,\n req,\n })\n const tx = encodeSetPermissionsForSigner({\n managedAddress: params.managedAddress,\n req,\n signature: signature as Hex,\n })\n // Admin must submit as the ManagedAccount (UserOp or AA-sponsored path).\n const result = await params.admin.txSender.sendTransaction(tx)\n await waitForPublishReceipt(result.transactionHash)\n}\n\n/**\n * Ensures `sessionKeyAddress` has the given permissions on the ManagedAccount.\n * Admin `PublishWallet` must control the ManagedAccount (signTypedData + send as account).\n */\nexport async function ensureSessionKey(params: {\n managedAddress: string\n sessionKeyAddress: string\n permissions: SessionKeyPermissions\n admin: PublishWallet\n /** Error code / messages for ManagedAccountPublishError wrapping. */\n activationFailedMessage?: string\n}): Promise<void> {\n const managedAddress = params.managedAddress as Address\n const sessionKeyAddress = params.sessionKeyAddress as Address\n const msg = params.activationFailedMessage ?? MSG_ACTIVATION_FAILED\n\n let shouldUpdate = true\n try {\n if (await isContractDeployed(managedAddress)) {\n const current = await readPermissionsForSigner(managedAddress, sessionKeyAddress)\n const ethLimit = params.permissions.nativeTokenLimitPerTransaction ?? 0\n shouldUpdate = shouldUpdateSessionKeyPermissions({\n current,\n approvedTargets:\n params.permissions.approvedTargets === '*'\n ? (['0x0000000000000000000000000000000000000000'] as `0x${string}`[])\n : params.permissions.approvedTargets,\n nativeTokenLimitPerTransactionWei: parseEther(String(ethLimit)),\n })\n }\n } catch (cause) {\n throw new ManagedAccountPublishError(\n msg,\n 'MODULAR_SIGNER_ACTIVATION_FAILED',\n managedAddress,\n cause,\n )\n }\n\n if (shouldUpdate) {\n try {\n await sendSetPermissions({\n admin: params.admin,\n managedAddress,\n sessionKeyAddress,\n permissions: params.permissions,\n })\n } catch (cause) {\n if (cause instanceof ManagedAccountPublishError) throw cause\n throw new ManagedAccountPublishError(\n msg,\n 'MODULAR_SIGNER_ACTIVATION_FAILED',\n managedAddress,\n cause,\n )\n }\n }\n\n let active = false\n try {\n active = await readIsActiveSigner(managedAddress, sessionKeyAddress)\n } catch (cause) {\n throw new ManagedAccountPublishError(\n msg,\n 'MODULAR_SIGNER_ACTIVATION_FAILED',\n managedAddress,\n cause,\n )\n }\n\n if (!active) {\n throw new ManagedAccountPublishError(\n msg,\n 'MODULAR_SIGNER_ACTIVATION_FAILED',\n managedAddress,\n )\n }\n}\n\nexport async function removeSessionKey(params: {\n managedAddress: string\n sessionKeyAddress: string\n admin: PublishWallet\n}): Promise<void> {\n const managedAddress = params.managedAddress as Address\n const sessionKeyAddress = params.sessionKeyAddress as Address\n try {\n await sendSetPermissions({\n admin: params.admin,\n managedAddress,\n sessionKeyAddress,\n permissions: buildRemoveSessionKeyPermissions(),\n })\n } catch (cause) {\n if (cause instanceof ManagedAccountPublishError) throw cause\n throw new ManagedAccountPublishError(\n MSG_REMOVAL_FAILED,\n 'MODULAR_SIGNER_ACTIVATION_FAILED',\n managedAddress,\n cause,\n )\n }\n}\n\n/**\n * True when `sessionKeyAddress` is an active signer on the ManagedAccount.\n * Returns `false` when undeployed. Throws on RPC/decode failures for deployed accounts.\n */\nexport async function isSessionKeyActive(\n managedAddress: string,\n sessionKeyAddress: string,\n): Promise<boolean> {\n try {\n if (!(await isContractDeployed(managedAddress))) {\n return false\n }\n return await readIsActiveSigner(\n managedAddress as Address,\n sessionKeyAddress as Address,\n )\n } catch (cause) {\n throw new ManagedAccountPublishError(\n MSG_ACTIVATION_FAILED,\n 'MODULAR_SIGNER_ACTIVATION_FAILED',\n managedAddress,\n cause,\n )\n }\n}\n"],"mappings":"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"}
@@ -1,48 +0,0 @@
1
- import { g as e, h as t, nt as n, r, s as i } from "./config-qjpaJcBA.js";
2
- import { r as a } from "./errors-Du3LNbJN.js";
3
- import { A as o, R as s, h as c, k as l } from "./publishAuthorization-CSN2FsQk.js";
4
- import { optimismSepolia as u } from "thirdweb/chains";
5
- import { ethers as d } from "ethers";
6
- //#region src/helpers/ensureSmartWalletThenPublish.ts
7
- var f = /* @__PURE__ */ n({ ensureSmartWalletThenPublish: () => g }), p = "A connected wallet is required for publishing with the modular executor. Connect your wallet and try again.", m = "Could not connect the managed publishing account on Optimism Sepolia. Reconnect with the same sign-in method and try again.";
8
- function h(n) {
9
- if (n) return n instanceof d.Wallet ? n : t(n) ? n.signer : e(n) ? n : i(n).signer;
10
- }
11
- async function g(e, t, n, d) {
12
- let f = r(), g = await n();
13
- if (!g || !g.trim()) return { outcome: "no_address" };
14
- if (f.useModularExecutor) {
15
- let t = await o();
16
- if (!t) return {
17
- outcome: "managed_not_ready",
18
- error: new a(p, "MANAGED_ACCOUNT_UNAVAILABLE")
19
- };
20
- let n;
21
- try {
22
- n = await l(u);
23
- } catch (e) {
24
- return {
25
- outcome: "managed_not_ready",
26
- error: new a(m, "MANAGED_ACCOUNT_UNAVAILABLE", void 0, e)
27
- };
28
- }
29
- let r = i(t);
30
- return c.createPublish(e, n, r, {
31
- ...d,
32
- dataItemSigner: h(d?.dataItemSigner) ?? r.signer
33
- }), { outcome: "started" };
34
- }
35
- let _ = await s(t ?? null);
36
- if ("address" in _) {
37
- let t = i(_.account);
38
- return c.createPublish(e, _.address, t, {
39
- ...d,
40
- dataItemSigner: h(d?.dataItemSigner) ?? t.signer
41
- }), { outcome: "started" };
42
- }
43
- return { outcome: "needs_deploy" };
44
- }
45
- //#endregion
46
- export { f as n, g as t };
47
-
48
- //# sourceMappingURL=ensureSmartWalletThenPublish-BFPugsKJ.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ensureSmartWalletThenPublish-BFPugsKJ.js","names":[],"sources":["../src/helpers/ensureSmartWalletThenPublish.ts"],"sourcesContent":["import type { Item } from '@seedprotocol/sdk'\nimport type { Account } from 'thirdweb/wallets'\nimport { optimismSepolia } from 'thirdweb/chains'\nimport {\n getConnectedManagedAccountAddress,\n getConnectedModularAccount,\n resolveSmartWalletForPublish,\n} from './thirdweb'\nimport { fromThirdwebAccount } from './adapters/thirdwebAccount'\nimport { isPublishWallet, isSeedSigner, type PublishWallet, type SeedSigner } from './seedSigner'\nimport { ethers } from 'ethers'\nimport { PublishManager } from '../services/publishManager'\nimport type { CreatePublishOptions } from '../config'\nimport { getPublishConfig } from '../config'\nimport { ManagedAccountPublishError } from '../errors'\n\nexport type EnsureSmartWalletResult =\n | { outcome: 'started' }\n | { outcome: 'no_address' }\n | { outcome: 'needs_deploy' }\n | { outcome: 'managed_not_ready'; error: ManagedAccountPublishError }\n\nconst MSG_NO_ACCOUNT_MODULAR =\n 'A connected wallet is required for publishing with the modular executor. Connect your wallet and try again.'\n\nconst MSG_MANAGED_UNAVAILABLE =\n 'Could not connect the managed publishing account on Optimism Sepolia. Reconnect with the same sign-in method and try again.'\n\nfunction coerceDataItemSigner(\n signer: CreatePublishOptions['dataItemSigner'] | Account | SeedSigner | PublishWallet | undefined,\n): CreatePublishOptions['dataItemSigner'] {\n if (!signer) return undefined\n if (signer instanceof ethers.Wallet) return signer\n if (isPublishWallet(signer)) return signer.signer\n if (isSeedSigner(signer)) return signer\n return fromThirdwebAccount(signer as Account).signer\n}\n\n/**\n * Thirdweb path: resolves the smart wallet for the current account; if deployed, starts publish.\n * Prefer {@link ensureWalletThenPublish} for vendor-neutral entry.\n */\nexport async function ensureSmartWalletThenPublish(\n item: Item<any>,\n activeAccount: Account | null | undefined,\n getAddress: () => Promise<string | null>,\n options?: CreatePublishOptions,\n): Promise<EnsureSmartWalletResult> {\n const config = getPublishConfig()\n const address = await getAddress()\n if (!address || !address.trim()) {\n return { outcome: 'no_address' }\n }\n\n if (config.useModularExecutor) {\n const modularAccount = await getConnectedModularAccount()\n if (!modularAccount) {\n return {\n outcome: 'managed_not_ready',\n error: new ManagedAccountPublishError(MSG_NO_ACCOUNT_MODULAR, 'MANAGED_ACCOUNT_UNAVAILABLE'),\n }\n }\n\n let managedAddress: string\n try {\n managedAddress = await getConnectedManagedAccountAddress(optimismSepolia)\n } catch (cause) {\n return {\n outcome: 'managed_not_ready',\n error: new ManagedAccountPublishError(\n MSG_MANAGED_UNAVAILABLE,\n 'MANAGED_ACCOUNT_UNAVAILABLE',\n undefined,\n cause,\n ),\n }\n }\n\n const wallet = fromThirdwebAccount(modularAccount)\n PublishManager.createPublish(item, managedAddress, wallet, {\n ...options,\n dataItemSigner: coerceDataItemSigner(options?.dataItemSigner) ?? wallet.signer,\n })\n return { outcome: 'started' }\n }\n\n const resolved = await resolveSmartWalletForPublish(activeAccount ?? null)\n if ('address' in resolved) {\n const wallet = fromThirdwebAccount(resolved.account)\n PublishManager.createPublish(item, resolved.address, wallet, {\n ...options,\n dataItemSigner: coerceDataItemSigner(options?.dataItemSigner) ?? wallet.signer,\n })\n return { outcome: 'started' }\n }\n return { outcome: 'needs_deploy' }\n}\n"],"mappings":";;;;;;sEAsBM,IACJ,+GAEI,IACJ;AAEF,SAAS,EACP,GACwC;CACnC,OAIL,OAHI,aAAkB,EAAO,SAAe,IACxC,EAAgB,CAAM,IAAU,EAAO,SACvC,EAAa,CAAM,IAAU,IAC1B,EAAoB,CAAiB,CAAC,CAAC;AAChD;AAMA,eAAsB,EACpB,GACA,GACA,GACA,GACkC;CAClC,IAAM,IAAS,EAAiB,GAC1B,IAAU,MAAM,EAAW;CACjC,IAAI,CAAC,KAAW,CAAC,EAAQ,KAAK,GAC5B,OAAO,EAAE,SAAS,aAAa;CAGjC,IAAI,EAAO,oBAAoB;EAC7B,IAAM,IAAiB,MAAM,EAA2B;EACxD,IAAI,CAAC,GACH,OAAO;GACL,SAAS;GACT,OAAO,IAAI,EAA2B,GAAwB,6BAA6B;EAC7F;EAGF,IAAI;EACJ,IAAI;GACF,IAAiB,MAAM,EAAkC,CAAe;EAC1E,SAAS,GAAO;GACd,OAAO;IACL,SAAS;IACT,OAAO,IAAI,EACT,GACA,+BACA,KAAA,GACA,CACF;GACF;EACF;EAEA,IAAM,IAAS,EAAoB,CAAc;EAKjD,OAJA,EAAe,cAAc,GAAM,GAAgB,GAAQ;GACzD,GAAG;GACH,gBAAgB,EAAqB,GAAS,cAAc,KAAK,EAAO;EAC1E,CAAC,GACM,EAAE,SAAS,UAAU;CAC9B;CAEA,IAAM,IAAW,MAAM,EAA6B,KAAiB,IAAI;CACzE,IAAI,aAAa,GAAU;EACzB,IAAM,IAAS,EAAoB,EAAS,OAAO;EAKnD,OAJA,EAAe,cAAc,GAAM,EAAS,SAAS,GAAQ;GAC3D,GAAG;GACH,gBAAgB,EAAqB,GAAS,cAAc,KAAK,EAAO;EAC1E,CAAC,GACM,EAAE,SAAS,UAAU;CAC9B;CACA,OAAO,EAAE,SAAS,eAAe;AACnC"}
@@ -1,49 +0,0 @@
1
- import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
- import { g as t, h as n, r, s as i } from "./config-EQZZNH9H.js";
3
- import { r as a } from "./errors-Du3LNbJN.js";
4
- import { L as o, O as s, h as c, k as l } from "./publishAuthorization-Bltn3y_K.js";
5
- import { optimismSepolia as u } from "thirdweb/chains";
6
- import { ethers as d } from "ethers";
7
- //#region src/helpers/ensureSmartWalletThenPublish.ts
8
- var f = /* @__PURE__ */ e({ ensureSmartWalletThenPublish: () => g }), p = "A connected wallet is required for publishing with the modular executor. Connect your wallet and try again.", m = "Could not connect the managed publishing account on Optimism Sepolia. Reconnect with the same sign-in method and try again.";
9
- function h(e) {
10
- if (e) return e instanceof d.Wallet ? e : n(e) ? e.signer : t(e) ? e : i(e).signer;
11
- }
12
- async function g(e, t, n, d) {
13
- let f = r(), g = await n();
14
- if (!g || !g.trim()) return { outcome: "no_address" };
15
- if (f.useModularExecutor) {
16
- let t = await l();
17
- if (!t) return {
18
- outcome: "managed_not_ready",
19
- error: new a(p, "MANAGED_ACCOUNT_UNAVAILABLE")
20
- };
21
- let n;
22
- try {
23
- n = await s(u);
24
- } catch (e) {
25
- return {
26
- outcome: "managed_not_ready",
27
- error: new a(m, "MANAGED_ACCOUNT_UNAVAILABLE", void 0, e)
28
- };
29
- }
30
- let r = i(t);
31
- return c.createPublish(e, n, r, {
32
- ...d,
33
- dataItemSigner: h(d?.dataItemSigner) ?? r.signer
34
- }), { outcome: "started" };
35
- }
36
- let _ = await o(t ?? null);
37
- if ("address" in _) {
38
- let t = i(_.account);
39
- return c.createPublish(e, _.address, t, {
40
- ...d,
41
- dataItemSigner: h(d?.dataItemSigner) ?? t.signer
42
- }), { outcome: "started" };
43
- }
44
- return { outcome: "needs_deploy" };
45
- }
46
- //#endregion
47
- export { f as n, g as t };
48
-
49
- //# sourceMappingURL=ensureSmartWalletThenPublish-BSYzckyS.js.map