@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 +0,0 @@
1
- {"version":3,"file":"thirdweb-BoksPRz3.js","names":[],"sources":["../src/helpers/thirdweb.ts"],"sourcesContent":["import { createThirdwebClient, deploySmartAccount, getContract, } from 'thirdweb'\nimport { createWallet, Account, inAppWallet, type Wallet, } from 'thirdweb/wallets'\nimport { useActiveAccount } from 'thirdweb/react'\nimport { ThirdwebContract, } from 'thirdweb/contract'\nimport { useEffect, useRef, useState, } from 'react'\nimport type { Chain } from 'thirdweb/chains'\nimport { optimismSepolia, } from 'thirdweb/chains'\nimport type { Address, Hex } from 'viem'\nimport debug from 'debug'\nimport { getPublishConfig } from '../config'\nimport {\n isContractDeployed,\n pollSmartWalletDeployed as pollDeployed,\n} from './chainClient'\nimport { readFactoryGetAddress } from './contracts'\nimport type { PublishWallet } from './seedSigner'\nimport { THIRDWEB_ACCOUNT_FACTORY_ADDRESS } from './constants'\n\nconst logger = debug('permaPress:helpers:thirdweb')\n\n/**\n * Custom storage for publish in-app wallets: same prefix for modular (EIP-7702) and managed (EIP-4337).\n * Uses `localStorage` so embedded-wallet session material survives app/tab restarts.\n */\nconst SEED_IN_APP_SESSION_PREFIX = 'seedProtocol:inAppPublish:'\n\nlet _publishInAppWalletStorage: {\n getItem: (key: string) => Promise<string | null>\n setItem: (key: string, value: string) => Promise<void>\n removeItem: (key: string) => Promise<void>\n} | null = null\n\nexport function getSharedPublishInAppWalletStorage() {\n if (!_publishInAppWalletStorage) {\n _publishInAppWalletStorage = {\n getItem: async (key) => {\n if (typeof window === 'undefined') return null\n return localStorage.getItem(SEED_IN_APP_SESSION_PREFIX + key)\n },\n setItem: async (key, value) => {\n if (typeof window === 'undefined') return\n localStorage.setItem(SEED_IN_APP_SESSION_PREFIX + key, value)\n },\n removeItem: async (key) => {\n if (typeof window === 'undefined') return\n localStorage.removeItem(SEED_IN_APP_SESSION_PREFIX + key)\n },\n }\n }\n return _publishInAppWalletStorage\n}\n\n/**\n * Copies Thirdweb in-app auth tokens between default localStorage keys and the\n * prefixed keys used by publish in-app wallets (`seedProtocol:inAppPublish:`).\n *\n * Modular ConnectButton writes the fresh session to prefixed storage; bare may be\n * stale. Prefer prefixed when both exist so managed-wallet autoConnect does not\n * overwrite a valid JWT with an old bare token.\n */\nexport function syncPublishInAppAuthToken(): {\n syncedBareToPrefixed: boolean\n syncedPrefixedToBare: boolean\n} {\n if (typeof window === 'undefined') {\n return { syncedBareToPrefixed: false, syncedPrefixedToBare: false }\n }\n const { thirdwebClientId } = getPublishConfig()\n if (!thirdwebClientId) {\n return { syncedBareToPrefixed: false, syncedPrefixedToBare: false }\n }\n try {\n const bareKey = `walletToken-${thirdwebClientId}`\n const prefixedKey = `${SEED_IN_APP_SESSION_PREFIX}${bareKey}`\n const bare = localStorage.getItem(bareKey)\n const prefixed = localStorage.getItem(prefixedKey)\n\n let syncedBareToPrefixed = false\n let syncedPrefixedToBare = false\n\n // Only copy bare → prefixed when prefixed is missing (cold-start / refresh recovery).\n if (bare && !prefixed) {\n localStorage.setItem(prefixedKey, bare)\n syncedBareToPrefixed = true\n }\n if (prefixed && !bare) {\n localStorage.setItem(bareKey, prefixed)\n syncedPrefixedToBare = true\n }\n if (prefixed && bare && bare !== prefixed) {\n localStorage.setItem(bareKey, prefixed)\n syncedPrefixedToBare = true\n }\n\n return { syncedBareToPrefixed, syncedPrefixedToBare }\n } catch {\n return { syncedBareToPrefixed: false, syncedPrefixedToBare: false }\n }\n}\n\nasync function connectManagedAccountWallet(chain: Chain = optimismSepolia) {\n syncPublishInAppAuthToken()\n const managedAccountWallet = getManagedAccountWallet()\n await managedAccountWallet.autoConnect({ client: getClient(), chain })\n return managedAccountWallet\n}\n\nlet _client: ReturnType<typeof createThirdwebClient> | null = null\n\nexport function getClient() {\n if (!_client) {\n const { thirdwebClientId } = getPublishConfig()\n if (!thirdwebClientId) {\n throw new Error(\n '@seedprotocol/publish/thirdweb: thirdwebClientId is required. Pass it in initPublish / PublishProvider config.',\n )\n }\n _client = createThirdwebClient({ clientId: thirdwebClientId })\n }\n return _client\n}\n\nexport const wallets = [\n // embeddedWallet(),\n createWallet('io.metamask',),\n // createWallet(\"com.coinbase.wallet\"),\n // createWallet(\"me.rainbow\"),\n]\n\nexport const useLocalWalletAccount = () => {\n\n const [ localWalletAccount, setLocalWalletAccount, ] = useState<Account | null>(null,)\n const personalWallet = createWallet('io.metamask',)\n\n const isConnecting = useRef(false)\n\n useEffect(() => {\n const _getAccount = async (): Promise<void> => {\n // if ( isConnecting.current ) {\n // return\n // }\n // isConnecting.current = true\n\n // const personalAccount = await personalWallet.connect({ client, },)\n // if ( !personalAccount ) {\n // throw new Error('Failed to connect to personal account',)\n // }\n\n // setLocalWalletAccount(personalAccount,)\n // isConnecting.current = false\n }\n\n _getAccount()\n\n }, [],)\n\n return localWalletAccount\n\n}\n\nexport const useActiveSmartWalletContract = () => {\n const account = useActiveAccount()\n\n const [ contract, setContract, ] = useState<ThirdwebContract | null>(null,)\n\n useEffect(() => {\n if ( !account || !account.address ) {\n return\n }\n\n setContract(getContract({\n client: getClient(),\n chain : optimismSepolia,\n address : account.address,\n },),)\n\n }, [ account, ],)\n\n return contract\n}\n\n/**\n * Returns the deterministic smart wallet address for an admin signer and optional data.\n */\nexport async function getSmartWalletAddressForAdmin (\n adminAddress: string,\n data: string = '0x',\n): Promise<string> {\n return readFactoryGetAddress(adminAddress as Address, data as Hex)\n}\n\n/**\n * Returns true if the given address has contract bytecode deployed (e.g. a ManagedAccount).\n */\nexport async function isSmartWalletDeployed ( smartWalletAddress: string, ): Promise<boolean> {\n return isContractDeployed(smartWalletAddress)\n}\n\n/** Polls chain bytecode until the smart account is deployed or attempts are exhausted. */\nexport async function pollSmartWalletDeployed(\n smartWalletAddress: string,\n attempts?: number,\n intervalMs?: number,\n): Promise<boolean> {\n return pollDeployed(smartWalletAddress, attempts, intervalMs)\n}\n\n/**\n * Resolves the smart wallet address and account to use for publish.\n * If the user has no connected account or no deployed ManagedAccount, returns needsDeploy.\n *\n * When using EIP4337 (in-app wallet with account abstraction), account.address is already\n * the smart wallet address. We detect that case and use it directly instead of deriving\n * via getSmartWalletAddressForAdmin (which assumes account.address is the EOA admin).\n */\nexport async function resolveSmartWalletForPublish (\n account: Account | null,\n): Promise<{ address: string; account: Account } | { needsDeploy: true }> {\n if ( !account ) {\n return { needsDeploy: true }\n }\n // If account.address is already a deployed smart wallet (e.g. from EIP4337), use it directly\n const accountIsDeployedSmartWallet = await isSmartWalletDeployed(account.address,)\n if ( accountIsDeployedSmartWallet ) {\n return { address: account.address, account }\n }\n // Otherwise derive smart wallet from EOA admin (e.g. MetaMask)\n const smartWalletAddress = await getSmartWalletAddressForAdmin(account.address,)\n const deployed = await isSmartWalletDeployed(smartWalletAddress,)\n if ( deployed ) {\n return { address: smartWalletAddress, account }\n }\n return { needsDeploy: true }\n}\n\n/** External wallets (MetaMask, Rainbow) for the deploy flow only; no account abstraction. */\nexport const ExternalWalletsForDeploy = [\n createWallet('io.metamask',),\n createWallet('me.rainbow',),\n]\n\nexport const deploySmartWalletContract = async ( localAccount: Account, ) => {\n const accountContract = getContract({\n client: getClient(),\n chain : optimismSepolia,\n address : localAccount.address,\n },)\n const result = await deploySmartAccount({\n smartAccount : localAccount,\n chain : optimismSepolia,\n client : getClient(),\n accountContract,\n },)\n logger('deploySmartAccount result:', result,)\n return result\n}\n\n/**\n * Deploys a ManagedAccount by calling the Thirdweb factory `createAccount`.\n * Prefer the modular EIP-7702 in-app wallet as `signingAccount` (sponsorGas); it is more reliable\n * than `deploySmartAccount` on the counterfactual EIP-4337 managed wallet (UserOp factory deploy).\n */\nexport async function deployManagedAccountViaFactory(params: {\n adminAddress: string\n signingAccount: Account | PublishWallet\n data?: `0x${string}`\n}): Promise<void> {\n const { asThirdwebPublishWallet } = await import('./adapters/thirdwebAccount')\n const { deployManagedAccountViaFactory: deployCore } = await import(\n './modularAccount/deploy'\n )\n const wallet = asThirdwebPublishWallet(params.signingAccount as Account | PublishWallet)\n await deployCore({\n adminAddress: params.adminAddress,\n signingWallet: wallet,\n data: (params.data ?? '0x') as Hex,\n })\n}\n\nexport const appMetadata = {\n name: \"Seed Protocol\",\n description: \"Seed Protocol\",\n url: \"https://seedprotocol.io\",\n}\n\n/**\n * Connects the managed account wallet (EIP4337 in-app wallet) and returns its address.\n * Use this when you need the connected managed account address for publish flows.\n *\n * @param chain - The chain to connect to (defaults to optimismSepolia)\n * @returns The connected managed account's address\n * @throws Error if the managed account cannot be connected or retrieved\n */\nexport async function getConnectedManagedAccountAddress(\n chain: Chain = optimismSepolia\n): Promise<string> {\n const managedAccountWallet = await connectManagedAccountWallet(chain)\n const managedAccount = managedAccountWallet.getAccount()\n if (!managedAccount) {\n throw new Error('Failed to get managed account')\n }\n return managedAccount.address\n}\n\n/**\n * Returns the connected account for transaction signing (e.g. revoke).\n * Uses the modular account wallet. Returns null if not connected.\n */\nexport async function getConnectedAccount(): Promise<Account | null> {\n try {\n const wallet = getModularAccountWallet()\n await wallet.autoConnect({ client: getClient(), chain: optimismSepolia })\n const account = wallet.getAccount()\n return account ?? null\n } catch {\n return null\n }\n}\n\n/**\n * Same as {@link getConnectedAccount}: the in-app modular wallet (EIP-7702) on Optimism Sepolia.\n * Prefer this name at modular publish entry points for clarity.\n */\nexport async function getConnectedModularAccount(): Promise<Account | null> {\n return getConnectedAccount()\n}\n\n/** Single instance so Thirdweb session, Connect UI, and `autoConnect` share one wallet object. */\nlet _managedInAppWallet: Wallet | null = null\n\nexport const getManagedAccountWallet = () => {\n if (!_managedInAppWallet) {\n _managedInAppWallet = inAppWallet({\n storage: getSharedPublishInAppWalletStorage(),\n auth: {\n options: [\n \"farcaster\",\n \"email\",\n \"passkey\",\n \"phone\",\n ],\n },\n executionMode: {\n mode: 'EIP4337',\n smartAccount: {\n chain: optimismSepolia,\n factoryAddress: THIRDWEB_ACCOUNT_FACTORY_ADDRESS,\n gasless: true,\n },\n },\n // executionMode: {\n // mode: 'EIP4337',\n // smartAccount: {\n // chain: optimismSepolia,\n // factoryAddress: thirdwebAccountFactoryAddress,\n // gasless: true,\n // overrides: {\n // // Custom paymaster that passes through but lets you modify the UserOp\n // paymaster: async (userOp) => {\n\n // const hexifyBigInts: any = (obj: any) => {\n // if (typeof obj === \"bigint\") return `0x${obj.toString(16)}`;\n // if (Array.isArray(obj)) return obj.map(hexifyBigInts);\n // if (obj && typeof obj === \"object\") {\n // return Object.fromEntries(\n // Object.entries(obj).map(([k, v]) => [k, hexifyBigInts(v)])\n // );\n // }\n // return obj;\n // };\n\n // const chainIdHex = `0x${optimismSepolia.id.toString(16)}`;\n\n // // Increase callGasLimit before sending to paymaster\n // const modifiedUserOp = hexifyBigInts({\n // ...userOp,\n // callGasLimit: BigInt(8000000), // Double it, or set a fixed value\n // });\n\n // console.log(\"[SmartWallet Paymaster]\", getPublishConfig().thirdwebClientId);\n \n // // Call thirdweb's default paymaster endpoint\n // const response = await fetch(\n // `https://${optimismSepolia.id}.bundler.thirdweb.com/v2`,\n // {\n // method: \"POST\",\n // headers: { \n // \"Content-Type\": \"application/json\",\n // \"X-Client-Id\": getPublishConfig().thirdwebClientId,\n // },\n // body: JSON.stringify({\n // id: 1,\n // jsonrpc: \"2.0\",\n // method: \"pm_sponsorUserOperation\",\n // params: [modifiedUserOp, '0x5ff137d4b0fdcd49dca30c7cf57e578a026d2789', chainIdHex],\n // }),\n // }\n // );\n \n // const data = await response.json();\n // console.log(\"[SmartWallet Paymaster Response]\", data);\n // return {\n // paymasterAndData: data.result.paymasterAndData,\n // preVerificationGas: data.result.preVerificationGas,\n // verificationGasLimit: data.result.verificationGasLimit,\n // callGasLimit: data.result.callGasLimit,\n // };\n // },\n // execute: (accountContract, transaction) => {\n // // Log the gas that was set on the transaction\n // console.log(\"[SmartWallet Execute]\", {\n // gas: transaction.gas,\n // to: transaction.to,\n // dataLength: transaction.data?.length,\n // });\n \n // // Return the default execute call — don't change behavior,\n // // just observe what's being passed through\n // return prepareContractCall({\n // contract: accountContract,\n // method: \"function execute(address, uint256, bytes)\",\n // params: [\n // transaction.to ?? \"\",\n // transaction.value ?? 0n,\n // transaction.data ?? \"0x\",\n // ],\n // gas: transaction.gas, // Pass through whatever was set\n // });\n // },\n // },\n // }\n // }\n })\n }\n return _managedInAppWallet\n}\n\n/** Single instance (pairs with {@link getManagedAccountWallet} for two execution modes, same Thirdweb client). */\nlet _modularInAppWallet: Wallet | null = null\n\nexport const getModularAccountWallet = () => {\n if (!_modularInAppWallet) {\n _modularInAppWallet = inAppWallet({\n storage: getSharedPublishInAppWalletStorage(),\n auth: {\n options: [\n \"farcaster\",\n \"email\",\n \"passkey\",\n \"phone\",\n ],\n },\n executionMode: {\n mode: 'EIP7702',\n sponsorGas: true,\n \n },\n })\n }\n return _modularInAppWallet\n}\n\nlet _walletsForConnectButton: Wallet[] | null = null\n\nexport const getWalletsForConnectButton = () => {\n if (!_walletsForConnectButton) {\n _walletsForConnectButton = getPublishConfig().useModularExecutor\n ? [getModularAccountWallet()]\n : [getManagedAccountWallet()]\n }\n return _walletsForConnectButton\n}"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkBM,IAAS,EAAM,6BAA6B,GAM5C,IAA6B,8BAE/B,IAIO;AAEX,SAAgB,IAAqC;CAiBnD,OAhBA,AACE,MAA6B;EAC3B,SAAS,OAAO,MACV,OAAO,SAAW,MAAoB,OACnC,aAAa,QAAQ,IAA6B,CAAG;EAE9D,SAAS,OAAO,GAAK,MAAU;GACzB,OAAO,SAAW,OACtB,aAAa,QAAQ,IAA6B,GAAK,CAAK;EAC9D;EACA,YAAY,OAAO,MAAQ;GACrB,OAAO,SAAW,OACtB,aAAa,WAAW,IAA6B,CAAG;EAC1D;CACF,GAEK;AACT;AAUA,SAAgB,IAGd;CACA,IAAI,OAAO,SAAW,KACpB,OAAO;EAAE,sBAAsB;EAAO,sBAAsB;CAAM;CAEpE,IAAM,EAAE,wBAAqB,EAAiB;CAC9C,IAAI,CAAC,GACH,OAAO;EAAE,sBAAsB;EAAO,sBAAsB;CAAM;CAEpE,IAAI;EACF,IAAM,IAAU,eAAe,KACzB,IAAc,GAAG,IAA6B,KAC9C,IAAO,aAAa,QAAQ,CAAO,GACnC,IAAW,aAAa,QAAQ,CAAW,GAE7C,IAAuB,IACvB,IAAuB;EAgB3B,OAbI,KAAQ,CAAC,MACX,aAAa,QAAQ,GAAa,CAAI,GACtC,IAAuB,KAErB,KAAY,CAAC,MACf,aAAa,QAAQ,GAAS,CAAQ,GACtC,IAAuB,KAErB,KAAY,KAAQ,MAAS,MAC/B,aAAa,QAAQ,GAAS,CAAQ,GACtC,IAAuB,KAGlB;GAAE;GAAsB;EAAqB;CACtD,QAAQ;EACN,OAAO;GAAE,sBAAsB;GAAO,sBAAsB;EAAM;CACpE;AACF;AAEA,eAAe,EAA4B,IAAe,GAAiB;CACzE,EAA0B;CAC1B,IAAM,IAAuB,EAAwB;CAErD,OADA,MAAM,EAAqB,YAAY;EAAE,QAAQ,EAAU;EAAG;CAAM,CAAC,GAC9D;AACT;AAEA,IAAI,IAA0D;AAE9D,SAAgB,IAAY;CAC1B,IAAI,CAAC,GAAS;EACZ,IAAM,EAAE,wBAAqB,EAAiB;EAC9C,IAAI,CAAC,GACH,MAAU,MACR,gHACF;EAEF,IAAU,EAAqB,EAAE,UAAU,EAAiB,CAAC;CAC/D;CACA,OAAO;AACT;AAEA,IAAa,IAAU,CAErB,EAAa,aAAc,CAG7B,GAEa,UAA8B;CAEzC,IAAM,CAAE,GAAoB,KAA2B,EAAyB,IAAK;CAyBrF,OAxBuB,EAAa,aAAc,GAE7B,EAAO,EAAK,GAEjC,QAAgB,CAkBhB,GAAG,CAAC,CAAE,GAEC;AAET,GAEa,UAAqC;CAChD,IAAM,IAAU,EAAiB,GAE3B,CAAE,GAAU,KAAiB,EAAkC,IAAK;CAe1E,OAbA,QAAgB;EACT,AAAC,KAAY,EAAQ,WAI1B,EAAY,EAAY;GACtB,QAAQ,EAAU;GAClB,OAAU;GACV,SAAU,EAAQ;EACpB,CAAE,CAAE;CAEN,GAAG,CAAE,CAAS,CAAE,GAET;AACT;AAKA,eAAsB,EACpB,GACA,IAAe,MACE;CACjB,OAAO,EAAsB,GAAyB,CAAW;AACnE;AAKA,eAAsB,EAAwB,GAAgD;CAC5F,OAAO,EAAmB,CAAkB;AAC9C;AAGA,eAAsB,EACpB,GACA,GACA,GACkB;CAClB,OAAO,EAAa,GAAoB,GAAU,CAAU;AAC9D;AAUA,eAAsB,EACpB,GACwE;CACxE,IAAK,CAAC,GACJ,OAAO,EAAE,aAAa,GAAK;CAI7B,IAAK,MADsC,EAAsB,EAAQ,OAAQ,GAE/E,OAAO;EAAE,SAAS,EAAQ;EAAS;CAAQ;CAG7C,IAAM,IAAqB,MAAM,EAA8B,EAAQ,OAAQ;CAK/E,OAHK,MADkB,EAAsB,CAAmB,IAEvD;EAAE,SAAS;EAAoB;CAAQ,IAEzC,EAAE,aAAa,GAAK;AAC7B;AAGA,IAAa,IAA2B,CACtC,EAAa,aAAc,GAC3B,EAAa,YAAa,CAC5B,GAEa,IAA4B,OAAQ,MAA4B;CAC3E,IAAM,IAAkB,EAAY;EAClC,QAAQ,EAAU;EAClB,OAAU;EACV,SAAU,EAAa;CACzB,CAAE,GACI,IAAS,MAAM,EAAmB;EACtC,cAAkB;EAClB,OAAkB;EAClB,QAAkB,EAAU;EAC5B;CACF,CAAE;CAEF,OADA,EAAO,8BAA8B,CAAO,GACrC;AACT;AAOA,eAAsB,EAA+B,GAInC;CAChB,IAAM,EAAE,+BAA4B,MAAM,OAAO,gCAAA,CAAA,MAAA,MAAA,EAAA,CAAA,GAC3C,EAAE,gCAAgC,MAAe,MAAM,OAC3D,uBAAA,CAAA,MAAA,MAAA,EAAA,CAAA,GAEI,IAAS,EAAwB,EAAO,cAAyC;CACvF,MAAM,EAAW;EACf,cAAc,EAAO;EACrB,eAAe;EACf,MAAO,EAAO,QAAQ;CACxB,CAAC;AACH;AAEA,IAAa,IAAc;CACzB,MAAM;CACN,aAAa;CACb,KAAK;AACP;AAUA,eAAsB,EACpB,IAAe,GACE;CAEjB,IAAM,KAAiB,MADY,EAA4B,CAAK,EAAA,CACxB,WAAW;CACvD,IAAI,CAAC,GACH,MAAU,MAAM,+BAA+B;CAEjD,OAAO,EAAe;AACxB;AAMA,eAAsB,IAA+C;CACnE,IAAI;EACF,IAAM,IAAS,EAAwB;EAGvC,OAFA,MAAM,EAAO,YAAY;GAAE,QAAQ,EAAU;GAAG,OAAO;EAAgB,CAAC,GACxD,EAAO,WAChB,KAAW;CACpB,QAAQ;EACN,OAAO;CACT;AACF;AAMA,eAAsB,IAAsD;CAC1E,OAAO,EAAoB;AAC7B;AAGA,IAAI,IAAqC,MAE5B,WACX,AACE,MAAsB,EAAY;CAClC,SAAS,EAAmC;CAC5C,MAAM,EACJ,SAAS;EACP;EACA;EACA;EACA;CACF,EACF;CACA,eAAe;EACb,MAAM;EACN,cAAc;GACZ,OAAO;GACP,gBAAgB;GAChB,SAAS;EACX;CACF;AAmFA,CAAC,GAEI,IAIL,IAAqC,MAE5B,WACX,AACE,MAAsB,EAAY;CAClC,SAAS,EAAmC;CAC5C,MAAM,EACJ,SAAS;EACP;EACA;EACA;EACA;CACF,EACF;CACA,eAAe;EACb,MAAM;EACN,YAAY;CAEd;AACA,CAAC,GAEI,IAGL,IAA4C,MAEnC,WACX,AACE,MAA2B,EAAiB,CAAC,CAAC,qBAC1C,CAAC,EAAwB,CAAC,IAC1B,CAAC,EAAwB,CAAC,GAEzB"}
@@ -1,59 +0,0 @@
1
- import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
- import { A as t } from "./config-BqguD2Tt.js";
3
- import { a as n, c as r, i, s as a } from "./seedSigner-CFzMD7Rb.js";
4
- import { defineChain as o, prepareTransaction as s, sendTransaction as c } from "thirdweb";
5
- import { optimismSepolia as l } from "thirdweb/chains";
6
- //#region src/helpers/adapters/thirdwebAccount.ts
7
- var u = /* @__PURE__ */ e({
8
- asSeedSignerFromThirdweb: () => m,
9
- asThirdwebPublishWallet: () => p,
10
- fromThirdwebAccount: () => f
11
- });
12
- function d() {
13
- let e = t();
14
- return e.id === l.id ? l : o({
15
- id: e.id,
16
- name: e.name,
17
- nativeCurrency: e.nativeCurrency,
18
- rpc: e.rpcUrls.default.http[0] ?? ""
19
- });
20
- }
21
- function f(e) {
22
- let t = e.address;
23
- return {
24
- signer: i({
25
- address: t,
26
- signMessage: async ({ message: t }) => await e.signMessage({ message: t }),
27
- signTypedData: async (t) => await e.signTypedData(t)
28
- }),
29
- txSender: n({
30
- address: t,
31
- sendTransaction: async (t) => {
32
- let { getClient: n } = await import("./thirdweb-BoksPRz3.js").then((e) => e.v), r = d(), i = s({
33
- client: n(),
34
- chain: r,
35
- to: t.to,
36
- data: t.data,
37
- value: t.value,
38
- gas: t.gas
39
- });
40
- return { transactionHash: (await c({
41
- account: e,
42
- transaction: i
43
- })).transactionHash };
44
- }
45
- })
46
- };
47
- }
48
- function p(e) {
49
- if (a(e)) return e;
50
- if (r(e)) throw Error("@seedprotocol/publish/thirdweb: SeedSigner alone cannot send sponsored txs. Pass fromThirdwebAccount(account) or a PublishWallet.");
51
- return f(e);
52
- }
53
- function m(e) {
54
- return a(e) ? e.signer : r(e) ? e : f(e).signer;
55
- }
56
- //#endregion
57
- export { u as i, p as n, f as r, m as t };
58
-
59
- //# sourceMappingURL=thirdwebAccount-C2iOcp4_.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"thirdwebAccount-C2iOcp4_.js","names":[],"sources":["../src/helpers/adapters/thirdwebAccount.ts"],"sourcesContent":["import { prepareTransaction, sendTransaction, defineChain } from 'thirdweb'\nimport type { Account } from 'thirdweb/wallets'\nimport { optimismSepolia as thirdwebOptimismSepolia } from 'thirdweb/chains'\nimport type { Address, Hex } from 'viem'\nimport {\n brandSigner,\n brandTxSender,\n isPublishWallet,\n isSeedSigner,\n type PublishWallet,\n type SeedSigner,\n} from '../seedSigner'\nimport { getPublishViemChain } from '../chainConfig'\n\nfunction resolveThirdwebChain() {\n const viemChain = getPublishViemChain()\n if (viemChain.id === thirdwebOptimismSepolia.id) {\n return thirdwebOptimismSepolia\n }\n return defineChain({\n id: viemChain.id,\n name: viemChain.name,\n nativeCurrency: viemChain.nativeCurrency,\n rpc: viemChain.rpcUrls.default.http[0] ?? '',\n })\n}\n\n/**\n * Wrap a Thirdweb Account so AA gas sponsorship still flows through thirdweb `sendTransaction`.\n */\nexport function fromThirdwebAccount(account: Account): PublishWallet {\n const address = account.address as Address\n const signer = brandSigner({\n address,\n signMessage: async ({ message }) => {\n const sig = await account.signMessage({ message })\n return sig as Hex\n },\n signTypedData: async (args) => {\n const sig = await account.signTypedData(args as Parameters<Account['signTypedData']>[0])\n return sig as Hex\n },\n })\n const txSender = brandTxSender({\n address,\n sendTransaction: async (tx) => {\n const { getClient } = await import('../thirdweb')\n const chain = resolveThirdwebChain()\n const transaction = prepareTransaction({\n client: getClient(),\n chain,\n to: tx.to,\n data: tx.data,\n value: tx.value,\n gas: tx.gas,\n })\n const result = await sendTransaction({ account, transaction })\n return { transactionHash: result.transactionHash as Hex }\n },\n })\n return { signer, txSender }\n}\n\n/**\n * Coerce Thirdweb Account, SeedSigner, or PublishWallet to PublishWallet.\n */\nexport function asThirdwebPublishWallet(\n accountOrWallet: Account | SeedSigner | PublishWallet,\n): PublishWallet {\n if (isPublishWallet(accountOrWallet)) return accountOrWallet\n if (isSeedSigner(accountOrWallet)) {\n throw new Error(\n '@seedprotocol/publish/thirdweb: SeedSigner alone cannot send sponsored txs. Pass fromThirdwebAccount(account) or a PublishWallet.',\n )\n }\n return fromThirdwebAccount(accountOrWallet)\n}\n\n/** @deprecated Prefer {@link asThirdwebPublishWallet}; kept for call-site migration. */\nexport function asSeedSignerFromThirdweb(\n accountOrWallet: Account | SeedSigner | PublishWallet,\n): SeedSigner {\n if (isPublishWallet(accountOrWallet)) return accountOrWallet.signer\n if (isSeedSigner(accountOrWallet)) return accountOrWallet\n return fromThirdwebAccount(accountOrWallet).signer\n}\n"],"mappings":";;;;;;;;;;;AAcA,SAAS,IAAuB;CAC9B,IAAM,IAAY,EAAoB;CAItC,OAHI,EAAU,OAAO,EAAwB,KACpC,IAEF,EAAY;EACjB,IAAI,EAAU;EACd,MAAM,EAAU;EAChB,gBAAgB,EAAU;EAC1B,KAAK,EAAU,QAAQ,QAAQ,KAAK,MAAM;CAC5C,CAAC;AACH;AAKA,SAAgB,EAAoB,GAAiC;CACnE,IAAM,IAAU,EAAQ;CA6BxB,OAAO;EAAE,QA5BM,EAAY;GACzB;GACA,aAAa,OAAO,EAAE,iBAEb,MADW,EAAQ,YAAY,EAAE,WAAQ,CAAC;GAGnD,eAAe,OAAO,MAEb,MADW,EAAQ,cAAc,CAA+C;EAG3F,CAkBS;EAAQ,UAjBA,EAAc;GAC7B;GACA,iBAAiB,OAAO,MAAO;IAC7B,IAAM,EAAE,iBAAc,MAAM,OAAO,yBAAA,CAAA,MAAA,MAAA,EAAA,CAAA,GAC7B,IAAQ,EAAqB,GAC7B,IAAc,EAAmB;KACrC,QAAQ,EAAU;KAClB;KACA,IAAI,EAAG;KACP,MAAM,EAAG;KACT,OAAO,EAAG;KACV,KAAK,EAAG;IACV,CAAC;IAED,OAAO,EAAE,kBAAiB,MADL,EAAgB;KAAE;KAAS;IAAY,CAAC,EAAA,CAC5B,gBAAuB;GAC1D;EACF,CACiB;CAAS;AAC5B;AAKA,SAAgB,EACd,GACe;CACf,IAAI,EAAgB,CAAe,GAAG,OAAO;CAC7C,IAAI,EAAa,CAAe,GAC9B,MAAU,MACR,mIACF;CAEF,OAAO,EAAoB,CAAe;AAC5C;AAGA,SAAgB,EACd,GACY;CAGZ,OAFI,EAAgB,CAAe,IAAU,EAAgB,SACzD,EAAa,CAAe,IAAU,IACnC,EAAoB,CAAe,CAAC,CAAC;AAC9C"}
@@ -1,69 +0,0 @@
1
- import { r as e } from "./config-qjpaJcBA.js";
2
- import { BaseDb as t, applyArweaveL1TransactionIdLocal as n, arweaveL1FinalizeJobs as r, getArweaveUploadStatus as i, isArweaveL1AnchoringComplete as a, queryArweaveGatewayTransactionWithFallback as o } from "@seedprotocol/sdk";
3
- import s from "debug";
4
- import { eq as c } from "drizzle-orm";
5
- //#region src/services/arweaveL1Finalize/worker.ts
6
- var l = s("seedProtocol:arweaveL1Finalize:worker"), u = 45e3, d = null;
7
- function f() {
8
- d ?? (d = setInterval(() => {
9
- p();
10
- }, u), p());
11
- }
12
- async function p() {
13
- let s;
14
- try {
15
- s = e();
16
- } catch {
17
- return;
18
- }
19
- if (!s.useArweaveBundler || !t.isAppDbReady()) return;
20
- let u = t.getAppDb();
21
- if (!u) return;
22
- let d = await u.select().from(r).where(c(r.phase, "pending_l1")).limit(25);
23
- if (d.length === 0) return;
24
- let f = s.arweaveUploadVerificationBaseUrl, p = s.arweaveGraphqlUrl;
25
- for (let e of d) {
26
- let t = e.dataItemId;
27
- try {
28
- let s = e.l1TransactionId;
29
- if (!s) {
30
- let n = (await o(p, t))?.bundledInId ?? null;
31
- n && (s = n, await u.update(r).set({
32
- l1TransactionId: n,
33
- bundleId: n,
34
- updatedAt: Date.now()
35
- }).where(c(r.id, e.id)));
36
- }
37
- let l = await i(f, t), d = l ? JSON.stringify(l) : null;
38
- if (l && a(l)) {
39
- let i = s ?? l.bundleId ?? l.turbo?.bundleId ?? e.l1TransactionId ?? null;
40
- i && await n({
41
- seedLocalId: e.seedLocalId,
42
- versionLocalId: e.versionLocalId,
43
- dataItemId: t,
44
- l1TransactionId: i
45
- }), await u.update(r).set({
46
- phase: "confirmed",
47
- statusJson: d,
48
- l1TransactionId: i ?? e.l1TransactionId,
49
- bundleId: l.bundleId ?? e.bundleId,
50
- updatedAt: Date.now()
51
- }).where(c(r.id, e.id));
52
- continue;
53
- }
54
- await u.update(r).set({
55
- statusJson: d,
56
- updatedAt: Date.now()
57
- }).where(c(r.id, e.id));
58
- } catch (t) {
59
- l("tick error for job", e.id, t), await u.update(r).set({
60
- errorMessage: t instanceof Error ? t.message : String(t),
61
- updatedAt: Date.now()
62
- }).where(c(r.id, e.id));
63
- }
64
- }
65
- }
66
- //#endregion
67
- export { f as startArweaveL1FinalizeWorker };
68
-
69
- //# sourceMappingURL=worker-B1PcFPLi.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"worker-B1PcFPLi.js","names":[],"sources":["../src/services/arweaveL1Finalize/worker.ts"],"sourcesContent":["import {\n applyArweaveL1TransactionIdLocal,\n arweaveL1FinalizeJobs,\n BaseDb,\n getArweaveUploadStatus,\n isArweaveL1AnchoringComplete,\n queryArweaveGatewayTransactionWithFallback,\n} from '@seedprotocol/sdk'\nimport { eq } from 'drizzle-orm'\nimport { getPublishConfig } from '~/config'\nimport debug from 'debug'\n\nconst logger = debug('seedProtocol:arweaveL1Finalize:worker')\n\nconst TICK_MS = 45_000\n\nlet intervalId: ReturnType<typeof setInterval> | null = null\n\nexport function startArweaveL1FinalizeWorker(): void {\n if (intervalId != null) return\n intervalId = setInterval(() => {\n void runArweaveL1FinalizeTick()\n }, TICK_MS)\n void runArweaveL1FinalizeTick()\n}\n\nexport function stopArweaveL1FinalizeWorker(): void {\n if (intervalId != null) {\n clearInterval(intervalId)\n intervalId = null\n }\n}\n\nasync function runArweaveL1FinalizeTick(): Promise<void> {\n let config: ReturnType<typeof getPublishConfig>\n try {\n config = getPublishConfig()\n } catch {\n return\n }\n if (!config.useArweaveBundler) return\n\n // initPublish may start this worker before Seed platformClassesInit configures BaseDb.\n if (!BaseDb.isAppDbReady()) return\n const db = BaseDb.getAppDb()\n if (!db) return\n\n const pending = await db\n .select()\n .from(arweaveL1FinalizeJobs)\n .where(eq(arweaveL1FinalizeJobs.phase, 'pending_l1'))\n .limit(25)\n\n if (pending.length === 0) return\n\n const uploadBase = config.arweaveUploadVerificationBaseUrl\n const graphqlUrl = config.arweaveGraphqlUrl\n\n for (const job of pending) {\n const dataItemId = job.dataItemId\n try {\n let l1TxId = job.l1TransactionId\n\n if (!l1TxId) {\n const gql = await queryArweaveGatewayTransactionWithFallback(graphqlUrl, dataItemId)\n const bundled = gql?.bundledInId ?? null\n if (bundled) {\n l1TxId = bundled\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n l1TransactionId: bundled,\n bundleId: bundled,\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n }\n }\n\n const status = await getArweaveUploadStatus(uploadBase, dataItemId)\n const statusStr = status ? JSON.stringify(status) : null\n\n if (status && isArweaveL1AnchoringComplete(status)) {\n const resolvedL1 =\n l1TxId ??\n status.bundleId ??\n status.turbo?.bundleId ??\n job.l1TransactionId ??\n null\n\n if (resolvedL1) {\n await applyArweaveL1TransactionIdLocal({\n seedLocalId: job.seedLocalId,\n versionLocalId: job.versionLocalId,\n dataItemId,\n l1TransactionId: resolvedL1,\n })\n }\n\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n phase: 'confirmed',\n statusJson: statusStr,\n l1TransactionId: resolvedL1 ?? job.l1TransactionId,\n bundleId: status.bundleId ?? job.bundleId,\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n continue\n }\n\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n statusJson: statusStr,\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n } catch (err) {\n logger('tick error for job', job.id, err)\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n errorMessage: err instanceof Error ? err.message : String(err),\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n }\n }\n}\n"],"mappings":";;;;;AAYA,IAAM,IAAS,EAAM,uCAAuC,GAEtD,IAAU,MAEZ,IAAoD;AAExD,SAAgB,IAAqC;CAC/C,MACJ,IAAa,kBAAkB;EAC7B,EAA8B;CAChC,GAAG,CAAO,GACV,EAA8B;AAChC;AASA,eAAe,IAA0C;CACvD,IAAI;CACJ,IAAI;EACF,IAAS,EAAiB;CAC5B,QAAQ;EACN;CACF;CAIA,IAHI,CAAC,EAAO,qBAGR,CAAC,EAAO,aAAa,GAAG;CAC5B,IAAM,IAAK,EAAO,SAAS;CAC3B,IAAI,CAAC,GAAI;CAET,IAAM,IAAU,MAAM,EACnB,OAAO,CAAC,CACR,KAAK,CAAqB,CAAC,CAC3B,MAAM,EAAG,EAAsB,OAAO,YAAY,CAAC,CAAC,CACpD,MAAM,EAAE;CAEX,IAAI,EAAQ,WAAW,GAAG;CAE1B,IAAM,IAAa,EAAO,kCACpB,IAAa,EAAO;CAE1B,KAAK,IAAM,KAAO,GAAS;EACzB,IAAM,IAAa,EAAI;EACvB,IAAI;GACF,IAAI,IAAS,EAAI;GAEjB,IAAI,CAAC,GAAQ;IAEX,IAAM,KAAU,MADE,EAA2C,GAAY,CAAU,EAAA,EAC9D,eAAe;IACpC,AAAI,MACF,IAAS,GACT,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;KACH,iBAAiB;KACjB,UAAU;KACV,WAAW,KAAK,IAAI;IACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;GAElD;GAEA,IAAM,IAAS,MAAM,EAAuB,GAAY,CAAU,GAC5D,IAAY,IAAS,KAAK,UAAU,CAAM,IAAI;GAEpD,IAAI,KAAU,EAA6B,CAAM,GAAG;IAClD,IAAM,IACJ,KACA,EAAO,YACP,EAAO,OAAO,YACd,EAAI,mBACJ;IAWF,AATI,KACF,MAAM,EAAiC;KACrC,aAAa,EAAI;KACjB,gBAAgB,EAAI;KACpB;KACA,iBAAiB;IACnB,CAAC,GAGH,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;KACH,OAAO;KACP,YAAY;KACZ,iBAAiB,KAAc,EAAI;KACnC,UAAU,EAAO,YAAY,EAAI;KACjC,WAAW,KAAK,IAAI;IACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;IAC9C;GACF;GAEA,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;IACH,YAAY;IACZ,WAAW,KAAK,IAAI;GACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;EAChD,SAAS,GAAK;GAEZ,AADA,EAAO,sBAAsB,EAAI,IAAI,CAAG,GACxC,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;IACH,cAAc,aAAe,QAAQ,EAAI,UAAU,OAAO,CAAG;IAC7D,WAAW,KAAK,IAAI;GACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;EAChD;CACF;AACF"}
@@ -1,69 +0,0 @@
1
- import { o as e } from "./chainConfig-3sSqEVQh.js";
2
- import { BaseDb as t, applyArweaveL1TransactionIdLocal as n, arweaveL1FinalizeJobs as r, getArweaveUploadStatus as i, isArweaveL1AnchoringComplete as a, queryArweaveGatewayTransactionWithFallback as o } from "@seedprotocol/sdk";
3
- import s from "debug";
4
- import { eq as c } from "drizzle-orm";
5
- //#region src/services/arweaveL1Finalize/worker.ts
6
- var l = s("seedProtocol:arweaveL1Finalize:worker"), u = 45e3, d = null;
7
- function f() {
8
- d ?? (d = setInterval(() => {
9
- p();
10
- }, u), p());
11
- }
12
- async function p() {
13
- let s;
14
- try {
15
- s = e();
16
- } catch {
17
- return;
18
- }
19
- if (!s.useArweaveBundler || !t.isAppDbReady()) return;
20
- let u = t.getAppDb();
21
- if (!u) return;
22
- let d = await u.select().from(r).where(c(r.phase, "pending_l1")).limit(25);
23
- if (d.length === 0) return;
24
- let f = s.arweaveUploadVerificationBaseUrl, p = s.arweaveGraphqlUrl;
25
- for (let e of d) {
26
- let t = e.dataItemId;
27
- try {
28
- let s = e.l1TransactionId;
29
- if (!s) {
30
- let n = (await o(p, t))?.bundledInId ?? null;
31
- n && (s = n, await u.update(r).set({
32
- l1TransactionId: n,
33
- bundleId: n,
34
- updatedAt: Date.now()
35
- }).where(c(r.id, e.id)));
36
- }
37
- let l = await i(f, t), d = l ? JSON.stringify(l) : null;
38
- if (l && a(l)) {
39
- let i = s ?? l.bundleId ?? l.turbo?.bundleId ?? e.l1TransactionId ?? null;
40
- i && await n({
41
- seedLocalId: e.seedLocalId,
42
- versionLocalId: e.versionLocalId,
43
- dataItemId: t,
44
- l1TransactionId: i
45
- }), await u.update(r).set({
46
- phase: "confirmed",
47
- statusJson: d,
48
- l1TransactionId: i ?? e.l1TransactionId,
49
- bundleId: l.bundleId ?? e.bundleId,
50
- updatedAt: Date.now()
51
- }).where(c(r.id, e.id));
52
- continue;
53
- }
54
- await u.update(r).set({
55
- statusJson: d,
56
- updatedAt: Date.now()
57
- }).where(c(r.id, e.id));
58
- } catch (t) {
59
- l("tick error for job", e.id, t), await u.update(r).set({
60
- errorMessage: t instanceof Error ? t.message : String(t),
61
- updatedAt: Date.now()
62
- }).where(c(r.id, e.id));
63
- }
64
- }
65
- }
66
- //#endregion
67
- export { f as startArweaveL1FinalizeWorker };
68
-
69
- //# sourceMappingURL=worker-B8gN5WTx.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"worker-B8gN5WTx.js","names":[],"sources":["../src/services/arweaveL1Finalize/worker.ts"],"sourcesContent":["import {\n applyArweaveL1TransactionIdLocal,\n arweaveL1FinalizeJobs,\n BaseDb,\n getArweaveUploadStatus,\n isArweaveL1AnchoringComplete,\n queryArweaveGatewayTransactionWithFallback,\n} from '@seedprotocol/sdk'\nimport { eq } from 'drizzle-orm'\nimport { getPublishConfig } from '~/config'\nimport debug from 'debug'\n\nconst logger = debug('seedProtocol:arweaveL1Finalize:worker')\n\nconst TICK_MS = 45_000\n\nlet intervalId: ReturnType<typeof setInterval> | null = null\n\nexport function startArweaveL1FinalizeWorker(): void {\n if (intervalId != null) return\n intervalId = setInterval(() => {\n void runArweaveL1FinalizeTick()\n }, TICK_MS)\n void runArweaveL1FinalizeTick()\n}\n\nexport function stopArweaveL1FinalizeWorker(): void {\n if (intervalId != null) {\n clearInterval(intervalId)\n intervalId = null\n }\n}\n\nasync function runArweaveL1FinalizeTick(): Promise<void> {\n let config: ReturnType<typeof getPublishConfig>\n try {\n config = getPublishConfig()\n } catch {\n return\n }\n if (!config.useArweaveBundler) return\n\n // initPublish may start this worker before Seed platformClassesInit configures BaseDb.\n if (!BaseDb.isAppDbReady()) return\n const db = BaseDb.getAppDb()\n if (!db) return\n\n const pending = await db\n .select()\n .from(arweaveL1FinalizeJobs)\n .where(eq(arweaveL1FinalizeJobs.phase, 'pending_l1'))\n .limit(25)\n\n if (pending.length === 0) return\n\n const uploadBase = config.arweaveUploadVerificationBaseUrl\n const graphqlUrl = config.arweaveGraphqlUrl\n\n for (const job of pending) {\n const dataItemId = job.dataItemId\n try {\n let l1TxId = job.l1TransactionId\n\n if (!l1TxId) {\n const gql = await queryArweaveGatewayTransactionWithFallback(graphqlUrl, dataItemId)\n const bundled = gql?.bundledInId ?? null\n if (bundled) {\n l1TxId = bundled\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n l1TransactionId: bundled,\n bundleId: bundled,\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n }\n }\n\n const status = await getArweaveUploadStatus(uploadBase, dataItemId)\n const statusStr = status ? JSON.stringify(status) : null\n\n if (status && isArweaveL1AnchoringComplete(status)) {\n const resolvedL1 =\n l1TxId ??\n status.bundleId ??\n status.turbo?.bundleId ??\n job.l1TransactionId ??\n null\n\n if (resolvedL1) {\n await applyArweaveL1TransactionIdLocal({\n seedLocalId: job.seedLocalId,\n versionLocalId: job.versionLocalId,\n dataItemId,\n l1TransactionId: resolvedL1,\n })\n }\n\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n phase: 'confirmed',\n statusJson: statusStr,\n l1TransactionId: resolvedL1 ?? job.l1TransactionId,\n bundleId: status.bundleId ?? job.bundleId,\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n continue\n }\n\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n statusJson: statusStr,\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n } catch (err) {\n logger('tick error for job', job.id, err)\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n errorMessage: err instanceof Error ? err.message : String(err),\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n }\n }\n}\n"],"mappings":";;;;;AAYA,IAAM,IAAS,EAAM,uCAAuC,GAEtD,IAAU,MAEZ,IAAoD;AAExD,SAAgB,IAAqC;CAC/C,MACJ,IAAa,kBAAkB;EAC7B,EAA8B;CAChC,GAAG,CAAO,GACV,EAA8B;AAChC;AASA,eAAe,IAA0C;CACvD,IAAI;CACJ,IAAI;EACF,IAAS,EAAiB;CAC5B,QAAQ;EACN;CACF;CAIA,IAHI,CAAC,EAAO,qBAGR,CAAC,EAAO,aAAa,GAAG;CAC5B,IAAM,IAAK,EAAO,SAAS;CAC3B,IAAI,CAAC,GAAI;CAET,IAAM,IAAU,MAAM,EACnB,OAAO,CAAC,CACR,KAAK,CAAqB,CAAC,CAC3B,MAAM,EAAG,EAAsB,OAAO,YAAY,CAAC,CAAC,CACpD,MAAM,EAAE;CAEX,IAAI,EAAQ,WAAW,GAAG;CAE1B,IAAM,IAAa,EAAO,kCACpB,IAAa,EAAO;CAE1B,KAAK,IAAM,KAAO,GAAS;EACzB,IAAM,IAAa,EAAI;EACvB,IAAI;GACF,IAAI,IAAS,EAAI;GAEjB,IAAI,CAAC,GAAQ;IAEX,IAAM,KAAU,MADE,EAA2C,GAAY,CAAU,EAAA,EAC9D,eAAe;IACpC,AAAI,MACF,IAAS,GACT,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;KACH,iBAAiB;KACjB,UAAU;KACV,WAAW,KAAK,IAAI;IACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;GAElD;GAEA,IAAM,IAAS,MAAM,EAAuB,GAAY,CAAU,GAC5D,IAAY,IAAS,KAAK,UAAU,CAAM,IAAI;GAEpD,IAAI,KAAU,EAA6B,CAAM,GAAG;IAClD,IAAM,IACJ,KACA,EAAO,YACP,EAAO,OAAO,YACd,EAAI,mBACJ;IAWF,AATI,KACF,MAAM,EAAiC;KACrC,aAAa,EAAI;KACjB,gBAAgB,EAAI;KACpB;KACA,iBAAiB;IACnB,CAAC,GAGH,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;KACH,OAAO;KACP,YAAY;KACZ,iBAAiB,KAAc,EAAI;KACnC,UAAU,EAAO,YAAY,EAAI;KACjC,WAAW,KAAK,IAAI;IACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;IAC9C;GACF;GAEA,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;IACH,YAAY;IACZ,WAAW,KAAK,IAAI;GACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;EAChD,SAAS,GAAK;GAEZ,AADA,EAAO,sBAAsB,EAAI,IAAI,CAAG,GACxC,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;IACH,cAAc,aAAe,QAAQ,EAAI,UAAU,OAAO,CAAG;IAC7D,WAAW,KAAK,IAAI;GACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;EAChD;CACF;AACF"}
@@ -1,69 +0,0 @@
1
- import { r as e } from "./config-BqguD2Tt.js";
2
- import { BaseDb as t, applyArweaveL1TransactionIdLocal as n, arweaveL1FinalizeJobs as r, getArweaveUploadStatus as i, isArweaveL1AnchoringComplete as a, queryArweaveGatewayTransactionWithFallback as o } from "@seedprotocol/sdk";
3
- import s from "debug";
4
- import { eq as c } from "drizzle-orm";
5
- //#region src/services/arweaveL1Finalize/worker.ts
6
- var l = s("seedProtocol:arweaveL1Finalize:worker"), u = 45e3, d = null;
7
- function f() {
8
- d ?? (d = setInterval(() => {
9
- p();
10
- }, u), p());
11
- }
12
- async function p() {
13
- let s;
14
- try {
15
- s = e();
16
- } catch {
17
- return;
18
- }
19
- if (!s.useArweaveBundler || !t.isAppDbReady()) return;
20
- let u = t.getAppDb();
21
- if (!u) return;
22
- let d = await u.select().from(r).where(c(r.phase, "pending_l1")).limit(25);
23
- if (d.length === 0) return;
24
- let f = s.arweaveUploadVerificationBaseUrl, p = s.arweaveGraphqlUrl;
25
- for (let e of d) {
26
- let t = e.dataItemId;
27
- try {
28
- let s = e.l1TransactionId;
29
- if (!s) {
30
- let n = (await o(p, t))?.bundledInId ?? null;
31
- n && (s = n, await u.update(r).set({
32
- l1TransactionId: n,
33
- bundleId: n,
34
- updatedAt: Date.now()
35
- }).where(c(r.id, e.id)));
36
- }
37
- let l = await i(f, t), d = l ? JSON.stringify(l) : null;
38
- if (l && a(l)) {
39
- let i = s ?? l.bundleId ?? l.turbo?.bundleId ?? e.l1TransactionId ?? null;
40
- i && await n({
41
- seedLocalId: e.seedLocalId,
42
- versionLocalId: e.versionLocalId,
43
- dataItemId: t,
44
- l1TransactionId: i
45
- }), await u.update(r).set({
46
- phase: "confirmed",
47
- statusJson: d,
48
- l1TransactionId: i ?? e.l1TransactionId,
49
- bundleId: l.bundleId ?? e.bundleId,
50
- updatedAt: Date.now()
51
- }).where(c(r.id, e.id));
52
- continue;
53
- }
54
- await u.update(r).set({
55
- statusJson: d,
56
- updatedAt: Date.now()
57
- }).where(c(r.id, e.id));
58
- } catch (t) {
59
- l("tick error for job", e.id, t), await u.update(r).set({
60
- errorMessage: t instanceof Error ? t.message : String(t),
61
- updatedAt: Date.now()
62
- }).where(c(r.id, e.id));
63
- }
64
- }
65
- }
66
- //#endregion
67
- export { f as startArweaveL1FinalizeWorker };
68
-
69
- //# sourceMappingURL=worker-BCG1r0AS.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"worker-BCG1r0AS.js","names":[],"sources":["../src/services/arweaveL1Finalize/worker.ts"],"sourcesContent":["import {\n applyArweaveL1TransactionIdLocal,\n arweaveL1FinalizeJobs,\n BaseDb,\n getArweaveUploadStatus,\n isArweaveL1AnchoringComplete,\n queryArweaveGatewayTransactionWithFallback,\n} from '@seedprotocol/sdk'\nimport { eq } from 'drizzle-orm'\nimport { getPublishConfig } from '~/config'\nimport debug from 'debug'\n\nconst logger = debug('seedProtocol:arweaveL1Finalize:worker')\n\nconst TICK_MS = 45_000\n\nlet intervalId: ReturnType<typeof setInterval> | null = null\n\nexport function startArweaveL1FinalizeWorker(): void {\n if (intervalId != null) return\n intervalId = setInterval(() => {\n void runArweaveL1FinalizeTick()\n }, TICK_MS)\n void runArweaveL1FinalizeTick()\n}\n\nexport function stopArweaveL1FinalizeWorker(): void {\n if (intervalId != null) {\n clearInterval(intervalId)\n intervalId = null\n }\n}\n\nasync function runArweaveL1FinalizeTick(): Promise<void> {\n let config: ReturnType<typeof getPublishConfig>\n try {\n config = getPublishConfig()\n } catch {\n return\n }\n if (!config.useArweaveBundler) return\n\n // initPublish may start this worker before Seed platformClassesInit configures BaseDb.\n if (!BaseDb.isAppDbReady()) return\n const db = BaseDb.getAppDb()\n if (!db) return\n\n const pending = await db\n .select()\n .from(arweaveL1FinalizeJobs)\n .where(eq(arweaveL1FinalizeJobs.phase, 'pending_l1'))\n .limit(25)\n\n if (pending.length === 0) return\n\n const uploadBase = config.arweaveUploadVerificationBaseUrl\n const graphqlUrl = config.arweaveGraphqlUrl\n\n for (const job of pending) {\n const dataItemId = job.dataItemId\n try {\n let l1TxId = job.l1TransactionId\n\n if (!l1TxId) {\n const gql = await queryArweaveGatewayTransactionWithFallback(graphqlUrl, dataItemId)\n const bundled = gql?.bundledInId ?? null\n if (bundled) {\n l1TxId = bundled\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n l1TransactionId: bundled,\n bundleId: bundled,\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n }\n }\n\n const status = await getArweaveUploadStatus(uploadBase, dataItemId)\n const statusStr = status ? JSON.stringify(status) : null\n\n if (status && isArweaveL1AnchoringComplete(status)) {\n const resolvedL1 =\n l1TxId ??\n status.bundleId ??\n status.turbo?.bundleId ??\n job.l1TransactionId ??\n null\n\n if (resolvedL1) {\n await applyArweaveL1TransactionIdLocal({\n seedLocalId: job.seedLocalId,\n versionLocalId: job.versionLocalId,\n dataItemId,\n l1TransactionId: resolvedL1,\n })\n }\n\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n phase: 'confirmed',\n statusJson: statusStr,\n l1TransactionId: resolvedL1 ?? job.l1TransactionId,\n bundleId: status.bundleId ?? job.bundleId,\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n continue\n }\n\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n statusJson: statusStr,\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n } catch (err) {\n logger('tick error for job', job.id, err)\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n errorMessage: err instanceof Error ? err.message : String(err),\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n }\n }\n}\n"],"mappings":";;;;;AAYA,IAAM,IAAS,EAAM,uCAAuC,GAEtD,IAAU,MAEZ,IAAoD;AAExD,SAAgB,IAAqC;CAC/C,MACJ,IAAa,kBAAkB;EAC7B,EAA8B;CAChC,GAAG,CAAO,GACV,EAA8B;AAChC;AASA,eAAe,IAA0C;CACvD,IAAI;CACJ,IAAI;EACF,IAAS,EAAiB;CAC5B,QAAQ;EACN;CACF;CAIA,IAHI,CAAC,EAAO,qBAGR,CAAC,EAAO,aAAa,GAAG;CAC5B,IAAM,IAAK,EAAO,SAAS;CAC3B,IAAI,CAAC,GAAI;CAET,IAAM,IAAU,MAAM,EACnB,OAAO,CAAC,CACR,KAAK,CAAqB,CAAC,CAC3B,MAAM,EAAG,EAAsB,OAAO,YAAY,CAAC,CAAC,CACpD,MAAM,EAAE;CAEX,IAAI,EAAQ,WAAW,GAAG;CAE1B,IAAM,IAAa,EAAO,kCACpB,IAAa,EAAO;CAE1B,KAAK,IAAM,KAAO,GAAS;EACzB,IAAM,IAAa,EAAI;EACvB,IAAI;GACF,IAAI,IAAS,EAAI;GAEjB,IAAI,CAAC,GAAQ;IAEX,IAAM,KAAU,MADE,EAA2C,GAAY,CAAU,EAAA,EAC9D,eAAe;IACpC,AAAI,MACF,IAAS,GACT,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;KACH,iBAAiB;KACjB,UAAU;KACV,WAAW,KAAK,IAAI;IACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;GAElD;GAEA,IAAM,IAAS,MAAM,EAAuB,GAAY,CAAU,GAC5D,IAAY,IAAS,KAAK,UAAU,CAAM,IAAI;GAEpD,IAAI,KAAU,EAA6B,CAAM,GAAG;IAClD,IAAM,IACJ,KACA,EAAO,YACP,EAAO,OAAO,YACd,EAAI,mBACJ;IAWF,AATI,KACF,MAAM,EAAiC;KACrC,aAAa,EAAI;KACjB,gBAAgB,EAAI;KACpB;KACA,iBAAiB;IACnB,CAAC,GAGH,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;KACH,OAAO;KACP,YAAY;KACZ,iBAAiB,KAAc,EAAI;KACnC,UAAU,EAAO,YAAY,EAAI;KACjC,WAAW,KAAK,IAAI;IACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;IAC9C;GACF;GAEA,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;IACH,YAAY;IACZ,WAAW,KAAK,IAAI;GACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;EAChD,SAAS,GAAK;GAEZ,AADA,EAAO,sBAAsB,EAAI,IAAI,CAAG,GACxC,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;IACH,cAAc,aAAe,QAAQ,EAAI,UAAU,OAAO,CAAG;IAC7D,WAAW,KAAK,IAAI;GACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;EAChD;CACF;AACF"}
@@ -1,69 +0,0 @@
1
- import { o as e } from "./chainConfig-CfVGYAsY.js";
2
- import { BaseDb as t, applyArweaveL1TransactionIdLocal as n, arweaveL1FinalizeJobs as r, getArweaveUploadStatus as i, isArweaveL1AnchoringComplete as a, queryArweaveGatewayTransactionWithFallback as o } from "@seedprotocol/sdk";
3
- import s from "debug";
4
- import { eq as c } from "drizzle-orm";
5
- //#region src/services/arweaveL1Finalize/worker.ts
6
- var l = s("seedProtocol:arweaveL1Finalize:worker"), u = 45e3, d = null;
7
- function f() {
8
- d ?? (d = setInterval(() => {
9
- p();
10
- }, u), p());
11
- }
12
- async function p() {
13
- let s;
14
- try {
15
- s = e();
16
- } catch {
17
- return;
18
- }
19
- if (!s.useArweaveBundler || !t.isAppDbReady()) return;
20
- let u = t.getAppDb();
21
- if (!u) return;
22
- let d = await u.select().from(r).where(c(r.phase, "pending_l1")).limit(25);
23
- if (d.length === 0) return;
24
- let f = s.arweaveUploadVerificationBaseUrl, p = s.arweaveGraphqlUrl;
25
- for (let e of d) {
26
- let t = e.dataItemId;
27
- try {
28
- let s = e.l1TransactionId;
29
- if (!s) {
30
- let n = (await o(p, t))?.bundledInId ?? null;
31
- n && (s = n, await u.update(r).set({
32
- l1TransactionId: n,
33
- bundleId: n,
34
- updatedAt: Date.now()
35
- }).where(c(r.id, e.id)));
36
- }
37
- let l = await i(f, t), d = l ? JSON.stringify(l) : null;
38
- if (l && a(l)) {
39
- let i = s ?? l.bundleId ?? l.turbo?.bundleId ?? e.l1TransactionId ?? null;
40
- i && await n({
41
- seedLocalId: e.seedLocalId,
42
- versionLocalId: e.versionLocalId,
43
- dataItemId: t,
44
- l1TransactionId: i
45
- }), await u.update(r).set({
46
- phase: "confirmed",
47
- statusJson: d,
48
- l1TransactionId: i ?? e.l1TransactionId,
49
- bundleId: l.bundleId ?? e.bundleId,
50
- updatedAt: Date.now()
51
- }).where(c(r.id, e.id));
52
- continue;
53
- }
54
- await u.update(r).set({
55
- statusJson: d,
56
- updatedAt: Date.now()
57
- }).where(c(r.id, e.id));
58
- } catch (t) {
59
- l("tick error for job", e.id, t), await u.update(r).set({
60
- errorMessage: t instanceof Error ? t.message : String(t),
61
- updatedAt: Date.now()
62
- }).where(c(r.id, e.id));
63
- }
64
- }
65
- }
66
- //#endregion
67
- export { f as startArweaveL1FinalizeWorker };
68
-
69
- //# sourceMappingURL=worker-BgErCNTb.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"worker-BgErCNTb.js","names":[],"sources":["../src/services/arweaveL1Finalize/worker.ts"],"sourcesContent":["import {\n applyArweaveL1TransactionIdLocal,\n arweaveL1FinalizeJobs,\n BaseDb,\n getArweaveUploadStatus,\n isArweaveL1AnchoringComplete,\n queryArweaveGatewayTransactionWithFallback,\n} from '@seedprotocol/sdk'\nimport { eq } from 'drizzle-orm'\nimport { getPublishConfig } from '~/config'\nimport debug from 'debug'\n\nconst logger = debug('seedProtocol:arweaveL1Finalize:worker')\n\nconst TICK_MS = 45_000\n\nlet intervalId: ReturnType<typeof setInterval> | null = null\n\nexport function startArweaveL1FinalizeWorker(): void {\n if (intervalId != null) return\n intervalId = setInterval(() => {\n void runArweaveL1FinalizeTick()\n }, TICK_MS)\n void runArweaveL1FinalizeTick()\n}\n\nexport function stopArweaveL1FinalizeWorker(): void {\n if (intervalId != null) {\n clearInterval(intervalId)\n intervalId = null\n }\n}\n\nasync function runArweaveL1FinalizeTick(): Promise<void> {\n let config: ReturnType<typeof getPublishConfig>\n try {\n config = getPublishConfig()\n } catch {\n return\n }\n if (!config.useArweaveBundler) return\n\n // initPublish may start this worker before Seed platformClassesInit configures BaseDb.\n if (!BaseDb.isAppDbReady()) return\n const db = BaseDb.getAppDb()\n if (!db) return\n\n const pending = await db\n .select()\n .from(arweaveL1FinalizeJobs)\n .where(eq(arweaveL1FinalizeJobs.phase, 'pending_l1'))\n .limit(25)\n\n if (pending.length === 0) return\n\n const uploadBase = config.arweaveUploadVerificationBaseUrl\n const graphqlUrl = config.arweaveGraphqlUrl\n\n for (const job of pending) {\n const dataItemId = job.dataItemId\n try {\n let l1TxId = job.l1TransactionId\n\n if (!l1TxId) {\n const gql = await queryArweaveGatewayTransactionWithFallback(graphqlUrl, dataItemId)\n const bundled = gql?.bundledInId ?? null\n if (bundled) {\n l1TxId = bundled\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n l1TransactionId: bundled,\n bundleId: bundled,\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n }\n }\n\n const status = await getArweaveUploadStatus(uploadBase, dataItemId)\n const statusStr = status ? JSON.stringify(status) : null\n\n if (status && isArweaveL1AnchoringComplete(status)) {\n const resolvedL1 =\n l1TxId ??\n status.bundleId ??\n status.turbo?.bundleId ??\n job.l1TransactionId ??\n null\n\n if (resolvedL1) {\n await applyArweaveL1TransactionIdLocal({\n seedLocalId: job.seedLocalId,\n versionLocalId: job.versionLocalId,\n dataItemId,\n l1TransactionId: resolvedL1,\n })\n }\n\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n phase: 'confirmed',\n statusJson: statusStr,\n l1TransactionId: resolvedL1 ?? job.l1TransactionId,\n bundleId: status.bundleId ?? job.bundleId,\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n continue\n }\n\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n statusJson: statusStr,\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n } catch (err) {\n logger('tick error for job', job.id, err)\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n errorMessage: err instanceof Error ? err.message : String(err),\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n }\n }\n}\n"],"mappings":";;;;;AAYA,IAAM,IAAS,EAAM,uCAAuC,GAEtD,IAAU,MAEZ,IAAoD;AAExD,SAAgB,IAAqC;CAC/C,MACJ,IAAa,kBAAkB;EAC7B,EAA8B;CAChC,GAAG,CAAO,GACV,EAA8B;AAChC;AASA,eAAe,IAA0C;CACvD,IAAI;CACJ,IAAI;EACF,IAAS,EAAiB;CAC5B,QAAQ;EACN;CACF;CAIA,IAHI,CAAC,EAAO,qBAGR,CAAC,EAAO,aAAa,GAAG;CAC5B,IAAM,IAAK,EAAO,SAAS;CAC3B,IAAI,CAAC,GAAI;CAET,IAAM,IAAU,MAAM,EACnB,OAAO,CAAC,CACR,KAAK,CAAqB,CAAC,CAC3B,MAAM,EAAG,EAAsB,OAAO,YAAY,CAAC,CAAC,CACpD,MAAM,EAAE;CAEX,IAAI,EAAQ,WAAW,GAAG;CAE1B,IAAM,IAAa,EAAO,kCACpB,IAAa,EAAO;CAE1B,KAAK,IAAM,KAAO,GAAS;EACzB,IAAM,IAAa,EAAI;EACvB,IAAI;GACF,IAAI,IAAS,EAAI;GAEjB,IAAI,CAAC,GAAQ;IAEX,IAAM,KAAU,MADE,EAA2C,GAAY,CAAU,EAAA,EAC9D,eAAe;IACpC,AAAI,MACF,IAAS,GACT,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;KACH,iBAAiB;KACjB,UAAU;KACV,WAAW,KAAK,IAAI;IACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;GAElD;GAEA,IAAM,IAAS,MAAM,EAAuB,GAAY,CAAU,GAC5D,IAAY,IAAS,KAAK,UAAU,CAAM,IAAI;GAEpD,IAAI,KAAU,EAA6B,CAAM,GAAG;IAClD,IAAM,IACJ,KACA,EAAO,YACP,EAAO,OAAO,YACd,EAAI,mBACJ;IAWF,AATI,KACF,MAAM,EAAiC;KACrC,aAAa,EAAI;KACjB,gBAAgB,EAAI;KACpB;KACA,iBAAiB;IACnB,CAAC,GAGH,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;KACH,OAAO;KACP,YAAY;KACZ,iBAAiB,KAAc,EAAI;KACnC,UAAU,EAAO,YAAY,EAAI;KACjC,WAAW,KAAK,IAAI;IACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;IAC9C;GACF;GAEA,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;IACH,YAAY;IACZ,WAAW,KAAK,IAAI;GACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;EAChD,SAAS,GAAK;GAEZ,AADA,EAAO,sBAAsB,EAAI,IAAI,CAAG,GACxC,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;IACH,cAAc,aAAe,QAAQ,EAAI,UAAU,OAAO,CAAG;IAC7D,WAAW,KAAK,IAAI;GACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;EAChD;CACF;AACF"}
@@ -1,69 +0,0 @@
1
- import { o as e } from "./chainConfig-DDA4YmAB.js";
2
- import { BaseDb as t, applyArweaveL1TransactionIdLocal as n, arweaveL1FinalizeJobs as r, getArweaveUploadStatus as i, isArweaveL1AnchoringComplete as a, queryArweaveGatewayTransactionWithFallback as o } from "@seedprotocol/sdk";
3
- import s from "debug";
4
- import { eq as c } from "drizzle-orm";
5
- //#region src/services/arweaveL1Finalize/worker.ts
6
- var l = s("seedProtocol:arweaveL1Finalize:worker"), u = 45e3, d = null;
7
- function f() {
8
- d ?? (d = setInterval(() => {
9
- p();
10
- }, u), p());
11
- }
12
- async function p() {
13
- let s;
14
- try {
15
- s = e();
16
- } catch {
17
- return;
18
- }
19
- if (!s.useArweaveBundler || !t.isAppDbReady()) return;
20
- let u = t.getAppDb();
21
- if (!u) return;
22
- let d = await u.select().from(r).where(c(r.phase, "pending_l1")).limit(25);
23
- if (d.length === 0) return;
24
- let f = s.arweaveUploadVerificationBaseUrl, p = s.arweaveGraphqlUrl;
25
- for (let e of d) {
26
- let t = e.dataItemId;
27
- try {
28
- let s = e.l1TransactionId;
29
- if (!s) {
30
- let n = (await o(p, t))?.bundledInId ?? null;
31
- n && (s = n, await u.update(r).set({
32
- l1TransactionId: n,
33
- bundleId: n,
34
- updatedAt: Date.now()
35
- }).where(c(r.id, e.id)));
36
- }
37
- let l = await i(f, t), d = l ? JSON.stringify(l) : null;
38
- if (l && a(l)) {
39
- let i = s ?? l.bundleId ?? l.turbo?.bundleId ?? e.l1TransactionId ?? null;
40
- i && await n({
41
- seedLocalId: e.seedLocalId,
42
- versionLocalId: e.versionLocalId,
43
- dataItemId: t,
44
- l1TransactionId: i
45
- }), await u.update(r).set({
46
- phase: "confirmed",
47
- statusJson: d,
48
- l1TransactionId: i ?? e.l1TransactionId,
49
- bundleId: l.bundleId ?? e.bundleId,
50
- updatedAt: Date.now()
51
- }).where(c(r.id, e.id));
52
- continue;
53
- }
54
- await u.update(r).set({
55
- statusJson: d,
56
- updatedAt: Date.now()
57
- }).where(c(r.id, e.id));
58
- } catch (t) {
59
- l("tick error for job", e.id, t), await u.update(r).set({
60
- errorMessage: t instanceof Error ? t.message : String(t),
61
- updatedAt: Date.now()
62
- }).where(c(r.id, e.id));
63
- }
64
- }
65
- }
66
- //#endregion
67
- export { f as startArweaveL1FinalizeWorker };
68
-
69
- //# sourceMappingURL=worker-C07rPV2G.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"worker-C07rPV2G.js","names":[],"sources":["../src/services/arweaveL1Finalize/worker.ts"],"sourcesContent":["import {\n applyArweaveL1TransactionIdLocal,\n arweaveL1FinalizeJobs,\n BaseDb,\n getArweaveUploadStatus,\n isArweaveL1AnchoringComplete,\n queryArweaveGatewayTransactionWithFallback,\n} from '@seedprotocol/sdk'\nimport { eq } from 'drizzle-orm'\nimport { getPublishConfig } from '~/config'\nimport debug from 'debug'\n\nconst logger = debug('seedProtocol:arweaveL1Finalize:worker')\n\nconst TICK_MS = 45_000\n\nlet intervalId: ReturnType<typeof setInterval> | null = null\n\nexport function startArweaveL1FinalizeWorker(): void {\n if (intervalId != null) return\n intervalId = setInterval(() => {\n void runArweaveL1FinalizeTick()\n }, TICK_MS)\n void runArweaveL1FinalizeTick()\n}\n\nexport function stopArweaveL1FinalizeWorker(): void {\n if (intervalId != null) {\n clearInterval(intervalId)\n intervalId = null\n }\n}\n\nasync function runArweaveL1FinalizeTick(): Promise<void> {\n let config: ReturnType<typeof getPublishConfig>\n try {\n config = getPublishConfig()\n } catch {\n return\n }\n if (!config.useArweaveBundler) return\n\n // initPublish may start this worker before Seed platformClassesInit configures BaseDb.\n if (!BaseDb.isAppDbReady()) return\n const db = BaseDb.getAppDb()\n if (!db) return\n\n const pending = await db\n .select()\n .from(arweaveL1FinalizeJobs)\n .where(eq(arweaveL1FinalizeJobs.phase, 'pending_l1'))\n .limit(25)\n\n if (pending.length === 0) return\n\n const uploadBase = config.arweaveUploadVerificationBaseUrl\n const graphqlUrl = config.arweaveGraphqlUrl\n\n for (const job of pending) {\n const dataItemId = job.dataItemId\n try {\n let l1TxId = job.l1TransactionId\n\n if (!l1TxId) {\n const gql = await queryArweaveGatewayTransactionWithFallback(graphqlUrl, dataItemId)\n const bundled = gql?.bundledInId ?? null\n if (bundled) {\n l1TxId = bundled\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n l1TransactionId: bundled,\n bundleId: bundled,\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n }\n }\n\n const status = await getArweaveUploadStatus(uploadBase, dataItemId)\n const statusStr = status ? JSON.stringify(status) : null\n\n if (status && isArweaveL1AnchoringComplete(status)) {\n const resolvedL1 =\n l1TxId ??\n status.bundleId ??\n status.turbo?.bundleId ??\n job.l1TransactionId ??\n null\n\n if (resolvedL1) {\n await applyArweaveL1TransactionIdLocal({\n seedLocalId: job.seedLocalId,\n versionLocalId: job.versionLocalId,\n dataItemId,\n l1TransactionId: resolvedL1,\n })\n }\n\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n phase: 'confirmed',\n statusJson: statusStr,\n l1TransactionId: resolvedL1 ?? job.l1TransactionId,\n bundleId: status.bundleId ?? job.bundleId,\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n continue\n }\n\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n statusJson: statusStr,\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n } catch (err) {\n logger('tick error for job', job.id, err)\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n errorMessage: err instanceof Error ? err.message : String(err),\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n }\n }\n}\n"],"mappings":";;;;;AAYA,IAAM,IAAS,EAAM,uCAAuC,GAEtD,IAAU,MAEZ,IAAoD;AAExD,SAAgB,IAAqC;CAC/C,MACJ,IAAa,kBAAkB;EAC7B,EAA8B;CAChC,GAAG,CAAO,GACV,EAA8B;AAChC;AASA,eAAe,IAA0C;CACvD,IAAI;CACJ,IAAI;EACF,IAAS,EAAiB;CAC5B,QAAQ;EACN;CACF;CAIA,IAHI,CAAC,EAAO,qBAGR,CAAC,EAAO,aAAa,GAAG;CAC5B,IAAM,IAAK,EAAO,SAAS;CAC3B,IAAI,CAAC,GAAI;CAET,IAAM,IAAU,MAAM,EACnB,OAAO,CAAC,CACR,KAAK,CAAqB,CAAC,CAC3B,MAAM,EAAG,EAAsB,OAAO,YAAY,CAAC,CAAC,CACpD,MAAM,EAAE;CAEX,IAAI,EAAQ,WAAW,GAAG;CAE1B,IAAM,IAAa,EAAO,kCACpB,IAAa,EAAO;CAE1B,KAAK,IAAM,KAAO,GAAS;EACzB,IAAM,IAAa,EAAI;EACvB,IAAI;GACF,IAAI,IAAS,EAAI;GAEjB,IAAI,CAAC,GAAQ;IAEX,IAAM,KAAU,MADE,EAA2C,GAAY,CAAU,EAAA,EAC9D,eAAe;IACpC,AAAI,MACF,IAAS,GACT,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;KACH,iBAAiB;KACjB,UAAU;KACV,WAAW,KAAK,IAAI;IACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;GAElD;GAEA,IAAM,IAAS,MAAM,EAAuB,GAAY,CAAU,GAC5D,IAAY,IAAS,KAAK,UAAU,CAAM,IAAI;GAEpD,IAAI,KAAU,EAA6B,CAAM,GAAG;IAClD,IAAM,IACJ,KACA,EAAO,YACP,EAAO,OAAO,YACd,EAAI,mBACJ;IAWF,AATI,KACF,MAAM,EAAiC;KACrC,aAAa,EAAI;KACjB,gBAAgB,EAAI;KACpB;KACA,iBAAiB;IACnB,CAAC,GAGH,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;KACH,OAAO;KACP,YAAY;KACZ,iBAAiB,KAAc,EAAI;KACnC,UAAU,EAAO,YAAY,EAAI;KACjC,WAAW,KAAK,IAAI;IACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;IAC9C;GACF;GAEA,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;IACH,YAAY;IACZ,WAAW,KAAK,IAAI;GACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;EAChD,SAAS,GAAK;GAEZ,AADA,EAAO,sBAAsB,EAAI,IAAI,CAAG,GACxC,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;IACH,cAAc,aAAe,QAAQ,EAAI,UAAU,OAAO,CAAG;IAC7D,WAAW,KAAK,IAAI;GACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;EAChD;CACF;AACF"}
@@ -1,69 +0,0 @@
1
- import { r as e } from "./config-CPBd5C_b.js";
2
- import { BaseDb as t, applyArweaveL1TransactionIdLocal as n, arweaveL1FinalizeJobs as r, getArweaveUploadStatus as i, isArweaveL1AnchoringComplete as a, queryArweaveGatewayTransactionWithFallback as o } from "@seedprotocol/sdk";
3
- import s from "debug";
4
- import { eq as c } from "drizzle-orm";
5
- //#region src/services/arweaveL1Finalize/worker.ts
6
- var l = s("seedProtocol:arweaveL1Finalize:worker"), u = 45e3, d = null;
7
- function f() {
8
- d ?? (d = setInterval(() => {
9
- p();
10
- }, u), p());
11
- }
12
- async function p() {
13
- let s;
14
- try {
15
- s = e();
16
- } catch {
17
- return;
18
- }
19
- if (!s.useArweaveBundler || !t.isAppDbReady()) return;
20
- let u = t.getAppDb();
21
- if (!u) return;
22
- let d = await u.select().from(r).where(c(r.phase, "pending_l1")).limit(25);
23
- if (d.length === 0) return;
24
- let f = s.arweaveUploadVerificationBaseUrl, p = s.arweaveGraphqlUrl;
25
- for (let e of d) {
26
- let t = e.dataItemId;
27
- try {
28
- let s = e.l1TransactionId;
29
- if (!s) {
30
- let n = (await o(p, t))?.bundledInId ?? null;
31
- n && (s = n, await u.update(r).set({
32
- l1TransactionId: n,
33
- bundleId: n,
34
- updatedAt: Date.now()
35
- }).where(c(r.id, e.id)));
36
- }
37
- let l = await i(f, t), d = l ? JSON.stringify(l) : null;
38
- if (l && a(l)) {
39
- let i = s ?? l.bundleId ?? l.turbo?.bundleId ?? e.l1TransactionId ?? null;
40
- i && await n({
41
- seedLocalId: e.seedLocalId,
42
- versionLocalId: e.versionLocalId,
43
- dataItemId: t,
44
- l1TransactionId: i
45
- }), await u.update(r).set({
46
- phase: "confirmed",
47
- statusJson: d,
48
- l1TransactionId: i ?? e.l1TransactionId,
49
- bundleId: l.bundleId ?? e.bundleId,
50
- updatedAt: Date.now()
51
- }).where(c(r.id, e.id));
52
- continue;
53
- }
54
- await u.update(r).set({
55
- statusJson: d,
56
- updatedAt: Date.now()
57
- }).where(c(r.id, e.id));
58
- } catch (t) {
59
- l("tick error for job", e.id, t), await u.update(r).set({
60
- errorMessage: t instanceof Error ? t.message : String(t),
61
- updatedAt: Date.now()
62
- }).where(c(r.id, e.id));
63
- }
64
- }
65
- }
66
- //#endregion
67
- export { f as startArweaveL1FinalizeWorker };
68
-
69
- //# sourceMappingURL=worker-C9Za_dlQ.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"worker-C9Za_dlQ.js","names":[],"sources":["../src/services/arweaveL1Finalize/worker.ts"],"sourcesContent":["import {\n applyArweaveL1TransactionIdLocal,\n arweaveL1FinalizeJobs,\n BaseDb,\n getArweaveUploadStatus,\n isArweaveL1AnchoringComplete,\n queryArweaveGatewayTransactionWithFallback,\n} from '@seedprotocol/sdk'\nimport { eq } from 'drizzle-orm'\nimport { getPublishConfig } from '~/config'\nimport debug from 'debug'\n\nconst logger = debug('seedProtocol:arweaveL1Finalize:worker')\n\nconst TICK_MS = 45_000\n\nlet intervalId: ReturnType<typeof setInterval> | null = null\n\nexport function startArweaveL1FinalizeWorker(): void {\n if (intervalId != null) return\n intervalId = setInterval(() => {\n void runArweaveL1FinalizeTick()\n }, TICK_MS)\n void runArweaveL1FinalizeTick()\n}\n\nexport function stopArweaveL1FinalizeWorker(): void {\n if (intervalId != null) {\n clearInterval(intervalId)\n intervalId = null\n }\n}\n\nasync function runArweaveL1FinalizeTick(): Promise<void> {\n let config: ReturnType<typeof getPublishConfig>\n try {\n config = getPublishConfig()\n } catch {\n return\n }\n if (!config.useArweaveBundler) return\n\n // initPublish may start this worker before Seed platformClassesInit configures BaseDb.\n if (!BaseDb.isAppDbReady()) return\n const db = BaseDb.getAppDb()\n if (!db) return\n\n const pending = await db\n .select()\n .from(arweaveL1FinalizeJobs)\n .where(eq(arweaveL1FinalizeJobs.phase, 'pending_l1'))\n .limit(25)\n\n if (pending.length === 0) return\n\n const uploadBase = config.arweaveUploadVerificationBaseUrl\n const graphqlUrl = config.arweaveGraphqlUrl\n\n for (const job of pending) {\n const dataItemId = job.dataItemId\n try {\n let l1TxId = job.l1TransactionId\n\n if (!l1TxId) {\n const gql = await queryArweaveGatewayTransactionWithFallback(graphqlUrl, dataItemId)\n const bundled = gql?.bundledInId ?? null\n if (bundled) {\n l1TxId = bundled\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n l1TransactionId: bundled,\n bundleId: bundled,\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n }\n }\n\n const status = await getArweaveUploadStatus(uploadBase, dataItemId)\n const statusStr = status ? JSON.stringify(status) : null\n\n if (status && isArweaveL1AnchoringComplete(status)) {\n const resolvedL1 =\n l1TxId ??\n status.bundleId ??\n status.turbo?.bundleId ??\n job.l1TransactionId ??\n null\n\n if (resolvedL1) {\n await applyArweaveL1TransactionIdLocal({\n seedLocalId: job.seedLocalId,\n versionLocalId: job.versionLocalId,\n dataItemId,\n l1TransactionId: resolvedL1,\n })\n }\n\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n phase: 'confirmed',\n statusJson: statusStr,\n l1TransactionId: resolvedL1 ?? job.l1TransactionId,\n bundleId: status.bundleId ?? job.bundleId,\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n continue\n }\n\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n statusJson: statusStr,\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n } catch (err) {\n logger('tick error for job', job.id, err)\n await db\n .update(arweaveL1FinalizeJobs)\n .set({\n errorMessage: err instanceof Error ? err.message : String(err),\n updatedAt: Date.now(),\n })\n .where(eq(arweaveL1FinalizeJobs.id, job.id!))\n }\n }\n}\n"],"mappings":";;;;;AAYA,IAAM,IAAS,EAAM,uCAAuC,GAEtD,IAAU,MAEZ,IAAoD;AAExD,SAAgB,IAAqC;CAC/C,MACJ,IAAa,kBAAkB;EAC7B,EAA8B;CAChC,GAAG,CAAO,GACV,EAA8B;AAChC;AASA,eAAe,IAA0C;CACvD,IAAI;CACJ,IAAI;EACF,IAAS,EAAiB;CAC5B,QAAQ;EACN;CACF;CAIA,IAHI,CAAC,EAAO,qBAGR,CAAC,EAAO,aAAa,GAAG;CAC5B,IAAM,IAAK,EAAO,SAAS;CAC3B,IAAI,CAAC,GAAI;CAET,IAAM,IAAU,MAAM,EACnB,OAAO,CAAC,CACR,KAAK,CAAqB,CAAC,CAC3B,MAAM,EAAG,EAAsB,OAAO,YAAY,CAAC,CAAC,CACpD,MAAM,EAAE;CAEX,IAAI,EAAQ,WAAW,GAAG;CAE1B,IAAM,IAAa,EAAO,kCACpB,IAAa,EAAO;CAE1B,KAAK,IAAM,KAAO,GAAS;EACzB,IAAM,IAAa,EAAI;EACvB,IAAI;GACF,IAAI,IAAS,EAAI;GAEjB,IAAI,CAAC,GAAQ;IAEX,IAAM,KAAU,MADE,EAA2C,GAAY,CAAU,EAAA,EAC9D,eAAe;IACpC,AAAI,MACF,IAAS,GACT,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;KACH,iBAAiB;KACjB,UAAU;KACV,WAAW,KAAK,IAAI;IACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;GAElD;GAEA,IAAM,IAAS,MAAM,EAAuB,GAAY,CAAU,GAC5D,IAAY,IAAS,KAAK,UAAU,CAAM,IAAI;GAEpD,IAAI,KAAU,EAA6B,CAAM,GAAG;IAClD,IAAM,IACJ,KACA,EAAO,YACP,EAAO,OAAO,YACd,EAAI,mBACJ;IAWF,AATI,KACF,MAAM,EAAiC;KACrC,aAAa,EAAI;KACjB,gBAAgB,EAAI;KACpB;KACA,iBAAiB;IACnB,CAAC,GAGH,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;KACH,OAAO;KACP,YAAY;KACZ,iBAAiB,KAAc,EAAI;KACnC,UAAU,EAAO,YAAY,EAAI;KACjC,WAAW,KAAK,IAAI;IACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;IAC9C;GACF;GAEA,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;IACH,YAAY;IACZ,WAAW,KAAK,IAAI;GACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;EAChD,SAAS,GAAK;GAEZ,AADA,EAAO,sBAAsB,EAAI,IAAI,CAAG,GACxC,MAAM,EACH,OAAO,CAAqB,CAAC,CAC7B,IAAI;IACH,cAAc,aAAe,QAAQ,EAAI,UAAU,OAAO,CAAG;IAC7D,WAAW,KAAK,IAAI;GACtB,CAAC,CAAC,CACD,MAAM,EAAG,EAAsB,IAAI,EAAI,EAAG,CAAC;EAChD;CACF;AACF"}