viem 2.8.18 → 2.9.1

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 (254) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/_cjs/chains/definitions/blast.js +5 -1
  3. package/_cjs/chains/definitions/blast.js.map +1 -1
  4. package/_cjs/chains/definitions/blastSepolia.js +2 -1
  5. package/_cjs/chains/definitions/blastSepolia.js.map +1 -1
  6. package/_cjs/chains/definitions/optimismSepolia.js +5 -0
  7. package/_cjs/chains/definitions/optimismSepolia.js.map +1 -1
  8. package/_cjs/chains/definitions/reyaNetwork.js +23 -0
  9. package/_cjs/chains/definitions/reyaNetwork.js.map +1 -0
  10. package/_cjs/chains/index.js +4 -2
  11. package/_cjs/chains/index.js.map +1 -1
  12. package/_cjs/chains/opStack/abis.js +1070 -1
  13. package/_cjs/chains/opStack/abis.js.map +1 -1
  14. package/_cjs/chains/opStack/actions/buildProveWithdrawal.js +3 -3
  15. package/_cjs/chains/opStack/actions/buildProveWithdrawal.js.map +1 -1
  16. package/_cjs/chains/opStack/actions/getGame.js +20 -0
  17. package/_cjs/chains/opStack/actions/getGame.js.map +1 -0
  18. package/_cjs/chains/opStack/actions/getGames.js +56 -0
  19. package/_cjs/chains/opStack/actions/getGames.js.map +1 -0
  20. package/_cjs/chains/opStack/actions/getL2Output.js +12 -0
  21. package/_cjs/chains/opStack/actions/getL2Output.js.map +1 -1
  22. package/_cjs/chains/opStack/actions/getPortalVersion.js +25 -0
  23. package/_cjs/chains/opStack/actions/getPortalVersion.js.map +1 -0
  24. package/_cjs/chains/opStack/actions/getTimeToFinalize.js +52 -26
  25. package/_cjs/chains/opStack/actions/getTimeToFinalize.js.map +1 -1
  26. package/_cjs/chains/opStack/actions/getTimeToNextGame.js +45 -0
  27. package/_cjs/chains/opStack/actions/getTimeToNextGame.js.map +1 -0
  28. package/_cjs/chains/opStack/actions/getTimeToProve.js +9 -1
  29. package/_cjs/chains/opStack/actions/getTimeToProve.js.map +1 -1
  30. package/_cjs/chains/opStack/actions/getWithdrawalStatus.js +79 -28
  31. package/_cjs/chains/opStack/actions/getWithdrawalStatus.js.map +1 -1
  32. package/_cjs/chains/opStack/actions/proveWithdrawal.js +1 -1
  33. package/_cjs/chains/opStack/actions/proveWithdrawal.js.map +1 -1
  34. package/_cjs/chains/opStack/actions/waitForNextGame.js +35 -0
  35. package/_cjs/chains/opStack/actions/waitForNextGame.js.map +1 -0
  36. package/_cjs/chains/opStack/actions/waitForNextL2Output.js.map +1 -1
  37. package/_cjs/chains/opStack/actions/waitToProve.js +34 -3
  38. package/_cjs/chains/opStack/actions/waitToProve.js.map +1 -1
  39. package/_cjs/chains/opStack/decorators/publicL1.js +10 -0
  40. package/_cjs/chains/opStack/decorators/publicL1.js.map +1 -1
  41. package/_cjs/chains/opStack/errors/withdrawal.js +13 -1
  42. package/_cjs/chains/opStack/errors/withdrawal.js.map +1 -1
  43. package/_cjs/chains/opStack/index.js +11 -1
  44. package/_cjs/chains/opStack/index.js.map +1 -1
  45. package/_cjs/chains/zksync/actions/deployContract.js +26 -0
  46. package/_cjs/chains/zksync/actions/deployContract.js.map +1 -0
  47. package/_cjs/chains/zksync/constants/abis.js +427 -0
  48. package/_cjs/chains/zksync/constants/abis.js.map +1 -0
  49. package/_cjs/chains/zksync/constants/address.js +5 -0
  50. package/_cjs/chains/zksync/constants/address.js.map +1 -0
  51. package/_cjs/chains/zksync/constants/contract.js +6 -0
  52. package/_cjs/chains/zksync/constants/contract.js.map +1 -0
  53. package/_cjs/chains/zksync/constants/number.js +6 -0
  54. package/_cjs/chains/zksync/constants/number.js.map +1 -0
  55. package/_cjs/chains/zksync/decorators/eip712.js +2 -0
  56. package/_cjs/chains/zksync/decorators/eip712.js.map +1 -1
  57. package/_cjs/chains/zksync/errors/bytecode.js +41 -0
  58. package/_cjs/chains/zksync/errors/bytecode.js.map +1 -0
  59. package/_cjs/chains/zksync/formatters.js +5 -1
  60. package/_cjs/chains/zksync/formatters.js.map +1 -1
  61. package/_cjs/chains/zksync/index.js +3 -1
  62. package/_cjs/chains/zksync/index.js.map +1 -1
  63. package/_cjs/chains/zksync/types/contract.js +3 -0
  64. package/_cjs/chains/zksync/types/contract.js.map +1 -0
  65. package/_cjs/chains/zksync/utils/abi/encodeDeployData.js +68 -0
  66. package/_cjs/chains/zksync/utils/abi/encodeDeployData.js.map +1 -0
  67. package/_cjs/chains/zksync/utils/getEip712Domain.js +4 -2
  68. package/_cjs/chains/zksync/utils/getEip712Domain.js.map +1 -1
  69. package/_cjs/chains/zksync/utils/hashBytecode.js +36 -0
  70. package/_cjs/chains/zksync/utils/hashBytecode.js.map +1 -0
  71. package/_cjs/errors/version.js +1 -1
  72. package/_cjs/errors/version.js.map +1 -1
  73. package/_esm/chains/definitions/blast.js +5 -1
  74. package/_esm/chains/definitions/blast.js.map +1 -1
  75. package/_esm/chains/definitions/blastSepolia.js +2 -1
  76. package/_esm/chains/definitions/blastSepolia.js.map +1 -1
  77. package/_esm/chains/definitions/optimismSepolia.js +5 -0
  78. package/_esm/chains/definitions/optimismSepolia.js.map +1 -1
  79. package/_esm/chains/definitions/reyaNetwork.js +20 -0
  80. package/_esm/chains/definitions/reyaNetwork.js.map +1 -0
  81. package/_esm/chains/index.js +1 -0
  82. package/_esm/chains/index.js.map +1 -1
  83. package/_esm/chains/opStack/abis.js +1069 -0
  84. package/_esm/chains/opStack/abis.js.map +1 -1
  85. package/_esm/chains/opStack/actions/buildProveWithdrawal.js +4 -3
  86. package/_esm/chains/opStack/actions/buildProveWithdrawal.js.map +1 -1
  87. package/_esm/chains/opStack/actions/getGame.js +40 -0
  88. package/_esm/chains/opStack/actions/getGame.js.map +1 -0
  89. package/_esm/chains/opStack/actions/getGames.js +75 -0
  90. package/_esm/chains/opStack/actions/getGames.js.map +1 -0
  91. package/_esm/chains/opStack/actions/getL2Output.js +12 -0
  92. package/_esm/chains/opStack/actions/getL2Output.js.map +1 -1
  93. package/_esm/chains/opStack/actions/getPortalVersion.js +48 -0
  94. package/_esm/chains/opStack/actions/getPortalVersion.js.map +1 -0
  95. package/_esm/chains/opStack/actions/getTimeToFinalize.js +54 -27
  96. package/_esm/chains/opStack/actions/getTimeToFinalize.js.map +1 -1
  97. package/_esm/chains/opStack/actions/getTimeToNextGame.js +71 -0
  98. package/_esm/chains/opStack/actions/getTimeToNextGame.js.map +1 -0
  99. package/_esm/chains/opStack/actions/getTimeToProve.js +10 -1
  100. package/_esm/chains/opStack/actions/getTimeToProve.js.map +1 -1
  101. package/_esm/chains/opStack/actions/getWithdrawalStatus.js +84 -32
  102. package/_esm/chains/opStack/actions/getWithdrawalStatus.js.map +1 -1
  103. package/_esm/chains/opStack/actions/proveWithdrawal.js +1 -1
  104. package/_esm/chains/opStack/actions/proveWithdrawal.js.map +1 -1
  105. package/_esm/chains/opStack/actions/waitForNextGame.js +61 -0
  106. package/_esm/chains/opStack/actions/waitForNextGame.js.map +1 -0
  107. package/_esm/chains/opStack/actions/waitForNextL2Output.js.map +1 -1
  108. package/_esm/chains/opStack/actions/waitToProve.js +35 -3
  109. package/_esm/chains/opStack/actions/waitToProve.js.map +1 -1
  110. package/_esm/chains/opStack/decorators/publicL1.js +10 -0
  111. package/_esm/chains/opStack/decorators/publicL1.js.map +1 -1
  112. package/_esm/chains/opStack/errors/withdrawal.js +11 -0
  113. package/_esm/chains/opStack/errors/withdrawal.js.map +1 -1
  114. package/_esm/chains/opStack/index.js +5 -0
  115. package/_esm/chains/opStack/index.js.map +1 -1
  116. package/_esm/chains/zksync/actions/deployContract.js +52 -0
  117. package/_esm/chains/zksync/actions/deployContract.js.map +1 -0
  118. package/_esm/chains/zksync/constants/abis.js +425 -0
  119. package/_esm/chains/zksync/constants/abis.js.map +1 -0
  120. package/_esm/chains/zksync/constants/address.js +2 -0
  121. package/_esm/chains/zksync/constants/address.js.map +1 -0
  122. package/_esm/chains/zksync/constants/contract.js +3 -0
  123. package/_esm/chains/zksync/constants/contract.js.map +1 -0
  124. package/_esm/chains/zksync/constants/number.js +3 -0
  125. package/_esm/chains/zksync/constants/number.js.map +1 -0
  126. package/_esm/chains/zksync/decorators/eip712.js +2 -0
  127. package/_esm/chains/zksync/decorators/eip712.js.map +1 -1
  128. package/_esm/chains/zksync/errors/bytecode.js +35 -0
  129. package/_esm/chains/zksync/errors/bytecode.js.map +1 -0
  130. package/_esm/chains/zksync/formatters.js +5 -1
  131. package/_esm/chains/zksync/formatters.js.map +1 -1
  132. package/_esm/chains/zksync/index.js +1 -0
  133. package/_esm/chains/zksync/index.js.map +1 -1
  134. package/_esm/chains/zksync/types/contract.js +2 -0
  135. package/_esm/chains/zksync/types/contract.js.map +1 -0
  136. package/_esm/chains/zksync/utils/abi/encodeDeployData.js +65 -0
  137. package/_esm/chains/zksync/utils/abi/encodeDeployData.js.map +1 -0
  138. package/_esm/chains/zksync/utils/getEip712Domain.js +4 -2
  139. package/_esm/chains/zksync/utils/getEip712Domain.js.map +1 -1
  140. package/_esm/chains/zksync/utils/hashBytecode.js +36 -0
  141. package/_esm/chains/zksync/utils/hashBytecode.js.map +1 -0
  142. package/_esm/errors/version.js +1 -1
  143. package/_esm/errors/version.js.map +1 -1
  144. package/_types/chains/definitions/blast.d.ts +1 -0
  145. package/_types/chains/definitions/blast.d.ts.map +1 -1
  146. package/_types/chains/definitions/blastSepolia.d.ts +2 -1
  147. package/_types/chains/definitions/blastSepolia.d.ts.map +1 -1
  148. package/_types/chains/definitions/optimismSepolia.d.ts +5 -0
  149. package/_types/chains/definitions/optimismSepolia.d.ts.map +1 -1
  150. package/_types/chains/definitions/reyaNetwork.d.ts +36 -0
  151. package/_types/chains/definitions/reyaNetwork.d.ts.map +1 -0
  152. package/_types/chains/index.d.ts +1 -0
  153. package/_types/chains/index.d.ts.map +1 -1
  154. package/_types/chains/opStack/abis.d.ts +824 -0
  155. package/_types/chains/opStack/abis.d.ts.map +1 -1
  156. package/_types/chains/opStack/actions/buildProveWithdrawal.d.ts +6 -2
  157. package/_types/chains/opStack/actions/buildProveWithdrawal.d.ts.map +1 -1
  158. package/_types/chains/opStack/actions/getGame.d.ts +57 -0
  159. package/_types/chains/opStack/actions/getGame.d.ts.map +1 -0
  160. package/_types/chains/opStack/actions/getGames.d.ts +48 -0
  161. package/_types/chains/opStack/actions/getGames.d.ts.map +1 -0
  162. package/_types/chains/opStack/actions/getL2Output.d.ts +8 -1
  163. package/_types/chains/opStack/actions/getL2Output.d.ts.map +1 -1
  164. package/_types/chains/opStack/actions/getPortalVersion.d.ts +46 -0
  165. package/_types/chains/opStack/actions/getPortalVersion.d.ts.map +1 -0
  166. package/_types/chains/opStack/actions/getTimeToFinalize.d.ts.map +1 -1
  167. package/_types/chains/opStack/actions/getTimeToNextGame.d.ts +61 -0
  168. package/_types/chains/opStack/actions/getTimeToNextGame.d.ts.map +1 -0
  169. package/_types/chains/opStack/actions/getTimeToProve.d.ts +6 -3
  170. package/_types/chains/opStack/actions/getTimeToProve.d.ts.map +1 -1
  171. package/_types/chains/opStack/actions/getWithdrawalStatus.d.ts +7 -1
  172. package/_types/chains/opStack/actions/getWithdrawalStatus.d.ts.map +1 -1
  173. package/_types/chains/opStack/actions/proveWithdrawal.d.ts +1 -1
  174. package/_types/chains/opStack/actions/proveWithdrawal.d.ts.map +1 -1
  175. package/_types/chains/opStack/actions/waitForNextGame.d.ts +60 -0
  176. package/_types/chains/opStack/actions/waitForNextGame.d.ts.map +1 -0
  177. package/_types/chains/opStack/actions/waitForNextL2Output.d.ts.map +1 -1
  178. package/_types/chains/opStack/actions/waitToProve.d.ts +10 -2
  179. package/_types/chains/opStack/actions/waitToProve.d.ts.map +1 -1
  180. package/_types/chains/opStack/decorators/publicL1.d.ts +129 -0
  181. package/_types/chains/opStack/decorators/publicL1.d.ts.map +1 -1
  182. package/_types/chains/opStack/errors/withdrawal.d.ts +7 -0
  183. package/_types/chains/opStack/errors/withdrawal.d.ts.map +1 -1
  184. package/_types/chains/opStack/index.d.ts +5 -0
  185. package/_types/chains/opStack/index.d.ts.map +1 -1
  186. package/_types/chains/opStack/types/chain.d.ts +1 -1
  187. package/_types/chains/opStack/types/chain.d.ts.map +1 -1
  188. package/_types/chains/opStack/types/withdrawal.d.ts +7 -0
  189. package/_types/chains/opStack/types/withdrawal.d.ts.map +1 -1
  190. package/_types/chains/zksync/actions/deployContract.d.ts +49 -0
  191. package/_types/chains/zksync/actions/deployContract.d.ts.map +1 -0
  192. package/_types/chains/zksync/constants/abis.d.ts +70 -0
  193. package/_types/chains/zksync/constants/abis.d.ts.map +1 -0
  194. package/_types/chains/zksync/constants/address.d.ts +2 -0
  195. package/_types/chains/zksync/constants/address.d.ts.map +1 -0
  196. package/_types/chains/zksync/constants/contract.d.ts +3 -0
  197. package/_types/chains/zksync/constants/contract.d.ts.map +1 -0
  198. package/_types/chains/zksync/constants/number.d.ts +2 -0
  199. package/_types/chains/zksync/constants/number.d.ts.map +1 -0
  200. package/_types/chains/zksync/decorators/eip712.d.ts +32 -0
  201. package/_types/chains/zksync/decorators/eip712.d.ts.map +1 -1
  202. package/_types/chains/zksync/errors/bytecode.d.ts +30 -0
  203. package/_types/chains/zksync/errors/bytecode.d.ts.map +1 -0
  204. package/_types/chains/zksync/formatters.d.ts.map +1 -1
  205. package/_types/chains/zksync/index.d.ts +1 -0
  206. package/_types/chains/zksync/index.d.ts.map +1 -1
  207. package/_types/chains/zksync/types/contract.d.ts +2 -0
  208. package/_types/chains/zksync/types/contract.d.ts.map +1 -0
  209. package/_types/chains/zksync/utils/abi/encodeDeployData.d.ts +13 -0
  210. package/_types/chains/zksync/utils/abi/encodeDeployData.d.ts.map +1 -0
  211. package/_types/chains/zksync/utils/getEip712Domain.d.ts.map +1 -1
  212. package/_types/chains/zksync/utils/hashBytecode.d.ts +3 -0
  213. package/_types/chains/zksync/utils/hashBytecode.d.ts.map +1 -0
  214. package/_types/errors/version.d.ts +1 -1
  215. package/_types/errors/version.d.ts.map +1 -1
  216. package/chains/definitions/blast.ts +5 -1
  217. package/chains/definitions/blastSepolia.ts +2 -1
  218. package/chains/definitions/optimismSepolia.ts +5 -0
  219. package/chains/definitions/reyaNetwork.ts +20 -0
  220. package/chains/index.ts +1 -0
  221. package/chains/opStack/abis.ts +1071 -0
  222. package/chains/opStack/actions/buildProveWithdrawal.ts +7 -6
  223. package/chains/opStack/actions/getGame.ts +99 -0
  224. package/chains/opStack/actions/getGames.ts +133 -0
  225. package/chains/opStack/actions/getL2Output.ts +44 -3
  226. package/chains/opStack/actions/getPortalVersion.ts +87 -0
  227. package/chains/opStack/actions/getTimeToFinalize.ts +64 -27
  228. package/chains/opStack/actions/getTimeToNextGame.ts +143 -0
  229. package/chains/opStack/actions/getTimeToProve.ts +43 -5
  230. package/chains/opStack/actions/getWithdrawalStatus.ts +130 -38
  231. package/chains/opStack/actions/proveWithdrawal.ts +3 -1
  232. package/chains/opStack/actions/waitForNextGame.ts +122 -0
  233. package/chains/opStack/actions/waitForNextL2Output.ts +5 -1
  234. package/chains/opStack/actions/waitToProve.ts +65 -7
  235. package/chains/opStack/decorators/publicL1.ts +164 -0
  236. package/chains/opStack/errors/withdrawal.ts +10 -0
  237. package/chains/opStack/index.ts +30 -0
  238. package/chains/opStack/types/chain.ts +4 -1
  239. package/chains/opStack/types/withdrawal.ts +8 -0
  240. package/chains/zksync/actions/deployContract.ts +100 -0
  241. package/chains/zksync/constants/abis.ts +424 -0
  242. package/chains/zksync/constants/address.ts +2 -0
  243. package/chains/zksync/constants/contract.ts +2 -0
  244. package/chains/zksync/constants/number.ts +3 -0
  245. package/chains/zksync/decorators/eip712.ts +47 -0
  246. package/chains/zksync/errors/bytecode.ts +46 -0
  247. package/chains/zksync/formatters.ts +7 -1
  248. package/chains/zksync/index.ts +6 -0
  249. package/chains/zksync/types/contract.ts +6 -0
  250. package/chains/zksync/utils/abi/encodeDeployData.ts +120 -0
  251. package/chains/zksync/utils/getEip712Domain.ts +4 -2
  252. package/chains/zksync/utils/hashBytecode.ts +48 -0
  253. package/errors/version.ts +1 -1
  254. package/package.json +1 -1
@@ -6,10 +6,13 @@ const contract_js_1 = require("../../../errors/contract.js");
6
6
  const abis_js_1 = require("../abis.js");
7
7
  const withdrawal_js_1 = require("../errors/withdrawal.js");
8
8
  const getWithdrawals_js_1 = require("../utils/getWithdrawals.js");
9
+ const getGame_js_1 = require("./getGame.js");
9
10
  const getL2Output_js_1 = require("./getL2Output.js");
11
+ const getPortalVersion_js_1 = require("./getPortalVersion.js");
10
12
  const getTimeToFinalize_js_1 = require("./getTimeToFinalize.js");
11
13
  async function getWithdrawalStatus(client, parameters) {
12
- const { chain = client.chain, receipt, targetChain } = parameters;
14
+ const { chain = client.chain, gameLimit = 100, receipt, targetChain: targetChain_, } = parameters;
15
+ const targetChain = targetChain_;
13
16
  const portalAddress = (() => {
14
17
  if (parameters.portalAddress)
15
18
  return parameters.portalAddress;
@@ -22,50 +25,98 @@ async function getWithdrawalStatus(client, parameters) {
22
25
  throw new withdrawal_js_1.ReceiptContainsNoWithdrawalsError({
23
26
  hash: receipt.transactionHash,
24
27
  });
25
- const [outputResult, proveResult, finalizedResult, timeToFinalizeResult] = await Promise.allSettled([
26
- (0, getL2Output_js_1.getL2Output)(client, {
28
+ const portalVersion = await (0, getPortalVersion_js_1.getPortalVersion)(client, parameters);
29
+ if (portalVersion.major < 3) {
30
+ const [outputResult, proveResult, finalizedResult, timeToFinalizeResult] = await Promise.allSettled([
31
+ (0, getL2Output_js_1.getL2Output)(client, {
32
+ ...parameters,
33
+ l2BlockNumber: receipt.blockNumber,
34
+ }),
35
+ (0, readContract_js_1.readContract)(client, {
36
+ abi: abis_js_1.portalAbi,
37
+ address: portalAddress,
38
+ functionName: 'provenWithdrawals',
39
+ args: [withdrawal.withdrawalHash],
40
+ }),
41
+ (0, readContract_js_1.readContract)(client, {
42
+ abi: abis_js_1.portalAbi,
43
+ address: portalAddress,
44
+ functionName: 'finalizedWithdrawals',
45
+ args: [withdrawal.withdrawalHash],
46
+ }),
47
+ (0, getTimeToFinalize_js_1.getTimeToFinalize)(client, {
48
+ ...parameters,
49
+ withdrawalHash: withdrawal.withdrawalHash,
50
+ }),
51
+ ]);
52
+ if (outputResult.status === 'rejected') {
53
+ const error = outputResult.reason;
54
+ if (error.cause instanceof contract_js_1.ContractFunctionRevertedError &&
55
+ error.cause.data?.args?.[0] ===
56
+ 'L2OutputOracle: cannot get output for a block that has not been proposed')
57
+ return 'waiting-to-prove';
58
+ throw error;
59
+ }
60
+ if (proveResult.status === 'rejected')
61
+ throw proveResult.reason;
62
+ if (finalizedResult.status === 'rejected')
63
+ throw finalizedResult.reason;
64
+ if (timeToFinalizeResult.status === 'rejected')
65
+ throw timeToFinalizeResult.reason;
66
+ const [_, proveTimestamp] = proveResult.value;
67
+ if (!proveTimestamp)
68
+ return 'ready-to-prove';
69
+ const finalized = finalizedResult.value;
70
+ if (finalized)
71
+ return 'finalized';
72
+ const { seconds } = timeToFinalizeResult.value;
73
+ return seconds > 0 ? 'waiting-to-finalize' : 'ready-to-finalize';
74
+ }
75
+ const [disputeGameResult, checkWithdrawalResult, finalizedResult] = await Promise.allSettled([
76
+ (0, getGame_js_1.getGame)(client, {
27
77
  ...parameters,
28
78
  l2BlockNumber: receipt.blockNumber,
79
+ limit: gameLimit,
29
80
  }),
30
81
  (0, readContract_js_1.readContract)(client, {
31
- abi: abis_js_1.portalAbi,
82
+ abi: abis_js_1.portal2Abi,
32
83
  address: portalAddress,
33
- functionName: 'provenWithdrawals',
84
+ functionName: 'checkWithdrawal',
34
85
  args: [withdrawal.withdrawalHash],
35
86
  }),
36
87
  (0, readContract_js_1.readContract)(client, {
37
- abi: abis_js_1.portalAbi,
88
+ abi: abis_js_1.portal2Abi,
38
89
  address: portalAddress,
39
90
  functionName: 'finalizedWithdrawals',
40
91
  args: [withdrawal.withdrawalHash],
41
92
  }),
42
- (0, getTimeToFinalize_js_1.getTimeToFinalize)(client, {
43
- ...parameters,
44
- withdrawalHash: withdrawal.withdrawalHash,
45
- }),
46
93
  ]);
47
- if (outputResult.status === 'rejected') {
48
- const error = outputResult.reason;
49
- if (error.cause instanceof contract_js_1.ContractFunctionRevertedError &&
50
- error.cause.data?.args?.[0] ===
51
- 'L2OutputOracle: cannot get output for a block that has not been proposed')
94
+ if (finalizedResult.status === 'fulfilled' && finalizedResult.value)
95
+ return 'finalized';
96
+ if (disputeGameResult.status === 'rejected') {
97
+ const error = disputeGameResult.reason;
98
+ if (error.name === 'GameNotFoundError')
52
99
  return 'waiting-to-prove';
53
- throw error;
100
+ throw disputeGameResult.reason;
101
+ }
102
+ if (checkWithdrawalResult.status === 'rejected') {
103
+ const error = checkWithdrawalResult.reason;
104
+ if (error.cause instanceof contract_js_1.ContractFunctionRevertedError) {
105
+ const errorMessage = error.cause.data?.args?.[0];
106
+ if (errorMessage === 'OptimismPortal: withdrawal has not been proven yet')
107
+ return 'ready-to-prove';
108
+ if (errorMessage ===
109
+ 'OptimismPortal: proven withdrawal has not matured yet' ||
110
+ errorMessage ===
111
+ 'OptimismPortal: output proposal has not been finalized yet' ||
112
+ errorMessage === 'OptimismPortal: output proposal in air-gap')
113
+ return 'waiting-to-finalize';
114
+ }
115
+ throw checkWithdrawalResult.reason;
54
116
  }
55
- if (proveResult.status === 'rejected')
56
- throw proveResult.reason;
57
117
  if (finalizedResult.status === 'rejected')
58
118
  throw finalizedResult.reason;
59
- if (timeToFinalizeResult.status === 'rejected')
60
- throw timeToFinalizeResult.reason;
61
- const [_, proveTimestamp] = proveResult.value;
62
- if (!proveTimestamp)
63
- return 'ready-to-prove';
64
- const finalized = finalizedResult.value;
65
- if (finalized)
66
- return 'finalized';
67
- const { seconds } = timeToFinalizeResult.value;
68
- return seconds > 0 ? 'waiting-to-finalize' : 'ready-to-finalize';
119
+ return 'ready-to-finalize';
69
120
  }
70
121
  exports.getWithdrawalStatus = getWithdrawalStatus;
71
122
  //# sourceMappingURL=getWithdrawalStatus.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getWithdrawalStatus.js","sourceRoot":"","sources":["../../../../chains/opStack/actions/getWithdrawalStatus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getWithdrawalStatus.js","sourceRoot":"","sources":["../../../../chains/opStack/actions/getWithdrawalStatus.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ async function proveWithdrawal(client, parameters) {
13
13
  return targetChain.contracts.portal[chain.id].address;
14
14
  return Object.values(targetChain.contracts.portal)[0].address;
15
15
  })();
16
- const gas_ = typeof gas !== 'number' && gas !== null
16
+ const gas_ = typeof gas !== 'bigint' && gas !== null
17
17
  ? await (0, estimateProveWithdrawalGas_js_1.estimateProveWithdrawalGas)(client, parameters)
18
18
  : gas ?? undefined;
19
19
  return (0, writeContract_js_1.writeContract)(client, {
@@ -1 +1 @@
1
- {"version":3,"file":"proveWithdrawal.js","sourceRoot":"","sources":["../../../../chains/opStack/actions/proveWithdrawal.ts"],"names":[],"mappings":";;;AACA,+EAIiD;AAajD,wCAAsC;AAEtC,mFAIwC;AA+EjC,KAAK,UAAU,eAAe,CAKnC,MAAyC,EACzC,UAAoE;IAEpE,MAAM,EACJ,OAAO,EACP,KAAK,GAAG,MAAM,CAAC,KAAK,EACpB,GAAG,EACH,aAAa,EACb,YAAY,EACZ,oBAAoB,EACpB,KAAK,EACL,eAAe,EACf,WAAW,EACX,eAAe,EACf,UAAU,GACX,GAAG,UAAU,CAAA;IAEd,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE;QAC1B,IAAI,UAAU,CAAC,aAAa;YAAE,OAAO,UAAU,CAAC,aAAa,CAAA;QAC7D,IAAI,KAAK;YAAE,OAAO,WAAY,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAA;QACjE,OAAO,MAAM,CAAC,MAAM,CAAC,WAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;IAChE,CAAC,CAAC,EAAE,CAAA;IAEJ,MAAM,IAAI,GACR,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QACrC,CAAC,CAAC,MAAM,IAAA,0DAA0B,EAC9B,MAAM,EACN,UAAkD,CACnD;QACH,CAAC,CAAC,GAAG,IAAI,SAAS,CAAA;IAEtB,OAAO,IAAA,gCAAa,EAAC,MAAM,EAAE;QAC3B,OAAO,EAAE,OAAQ;QACjB,GAAG,EAAE,mBAAS;QACd,OAAO,EAAE,aAAa;QACtB,KAAK;QACL,YAAY,EAAE,4BAA4B;QAC1C,IAAI,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,eAAe,EAAE,eAAe,CAAC;QACnE,GAAG,EAAE,IAAI;QACT,YAAY;QACZ,oBAAoB;QACpB,KAAK;KACmC,CAAC,CAAA;AAC7C,CAAC;AAhDD,0CAgDC"}
1
+ {"version":3,"file":"proveWithdrawal.js","sourceRoot":"","sources":["../../../../chains/opStack/actions/proveWithdrawal.ts"],"names":[],"mappings":";;;AACA,+EAIiD;AAajD,wCAAsC;AAEtC,mFAIwC;AAiFjC,KAAK,UAAU,eAAe,CAKnC,MAAyC,EACzC,UAAoE;IAEpE,MAAM,EACJ,OAAO,EACP,KAAK,GAAG,MAAM,CAAC,KAAK,EACpB,GAAG,EACH,aAAa,EACb,YAAY,EACZ,oBAAoB,EACpB,KAAK,EACL,eAAe,EACf,WAAW,EACX,eAAe,EACf,UAAU,GACX,GAAG,UAAU,CAAA;IAEd,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE;QAC1B,IAAI,UAAU,CAAC,aAAa;YAAE,OAAO,UAAU,CAAC,aAAa,CAAA;QAC7D,IAAI,KAAK;YAAE,OAAO,WAAY,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAA;QACjE,OAAO,MAAM,CAAC,MAAM,CAAC,WAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;IAChE,CAAC,CAAC,EAAE,CAAA;IAEJ,MAAM,IAAI,GACR,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QACrC,CAAC,CAAC,MAAM,IAAA,0DAA0B,EAC9B,MAAM,EACN,UAAkD,CACnD;QACH,CAAC,CAAC,GAAG,IAAI,SAAS,CAAA;IAEtB,OAAO,IAAA,gCAAa,EAAC,MAAM,EAAE;QAC3B,OAAO,EAAE,OAAQ;QACjB,GAAG,EAAE,mBAAS;QACd,OAAO,EAAE,aAAa;QACtB,KAAK;QACL,YAAY,EAAE,4BAA4B;QAC1C,IAAI,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,eAAe,EAAE,eAAe,CAAC;QACnE,GAAG,EAAE,IAAI;QACT,YAAY;QACZ,oBAAoB;QACpB,KAAK;KACmC,CAAC,CAAA;AAC7C,CAAC;AAhDD,0CAgDC"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.waitForNextGame = void 0;
4
+ const poll_js_1 = require("../../../utils/poll.js");
5
+ const withdrawal_js_1 = require("../errors/withdrawal.js");
6
+ const getGame_js_1 = require("./getGame.js");
7
+ const getTimeToNextGame_js_1 = require("./getTimeToNextGame.js");
8
+ async function waitForNextGame(client, parameters) {
9
+ const { pollingInterval = client.pollingInterval } = parameters;
10
+ const { seconds } = await (0, getTimeToNextGame_js_1.getTimeToNextGame)(client, parameters);
11
+ return new Promise((resolve, reject) => {
12
+ (0, poll_js_1.poll)(async ({ unpoll }) => {
13
+ try {
14
+ const game = await (0, getGame_js_1.getGame)(client, {
15
+ ...parameters,
16
+ strategy: 'random',
17
+ });
18
+ unpoll();
19
+ resolve(game);
20
+ }
21
+ catch (e) {
22
+ const error = e;
23
+ if (!(error instanceof withdrawal_js_1.GameNotFoundError)) {
24
+ unpoll();
25
+ reject(e);
26
+ }
27
+ }
28
+ }, {
29
+ interval: pollingInterval,
30
+ initialWaitTime: async () => seconds * 1000,
31
+ });
32
+ });
33
+ }
34
+ exports.waitForNextGame = waitForNextGame;
35
+ //# sourceMappingURL=waitForNextGame.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"waitForNextGame.js","sourceRoot":"","sources":["../../../../chains/opStack/actions/waitForNextGame.ts"],"names":[],"mappings":";;;AASA,oDAA6C;AAC7C,2DAA2D;AAE3D,6CAIqB;AACrB,iEAI+B;AAgExB,KAAK,UAAU,eAAe,CAKnC,MAAyC,EACzC,UAA2D;IAE3D,MAAM,EAAE,eAAe,GAAG,MAAM,CAAC,eAAe,EAAE,GAAG,UAAU,CAAA;IAE/D,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAA,wCAAiB,EAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAE/D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAA,cAAI,EACF,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YACnB,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,IAAA,oBAAO,EAAC,MAAM,EAAE;oBACjC,GAAG,UAAU;oBACb,QAAQ,EAAE,QAAQ;iBACnB,CAAC,CAAA;gBACF,MAAM,EAAE,CAAA;gBACR,OAAO,CAAC,IAAI,CAAC,CAAA;YACf,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,MAAM,KAAK,GAAG,CAAqB,CAAA;gBACnC,IAAI,CAAC,CAAC,KAAK,YAAY,iCAAiB,CAAC,EAAE,CAAC;oBAC1C,MAAM,EAAE,CAAA;oBACR,MAAM,CAAC,CAAC,CAAC,CAAA;gBACX,CAAC;YACH,CAAC;QACH,CAAC,EACD;YACE,QAAQ,EAAE,eAAe;YACzB,eAAe,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO,GAAG,IAAI;SAC5C,CACF,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AApCD,0CAoCC"}
@@ -1 +1 @@
1
- {"version":3,"file":"waitForNextL2Output.js","sourceRoot":"","sources":["../../../../chains/opStack/actions/waitForNextL2Output.ts"],"names":[],"mappings":";;;AAEA,6DAA2E;AAQ3E,oDAA6C;AAE7C,qDAIyB;AACzB,yEAImC;AA0D5B,KAAK,UAAU,mBAAmB,CAKvC,MAAyC,EACzC,UAA+D;IAE/D,MAAM,EAAE,eAAe,GAAG,MAAM,CAAC,eAAe,EAAE,GAAG,UAAU,CAAA;IAE/D,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAA,gDAAqB,EAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAEnE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAA,cAAI,EACF,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YACnB,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAA,4BAAW,EAAC,MAAM,EAAE,UAAU,CAAC,CAAA;gBACpD,MAAM,EAAE,CAAA;gBACR,OAAO,CAAC,MAAM,CAAC,CAAA;YACjB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,MAAM,KAAK,GAAG,CAAyB,CAAA;gBACvC,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,YAAY,2CAA6B,CAAC,EAAE,CAAC;oBAC5D,MAAM,EAAE,CAAA;oBACR,MAAM,CAAC,CAAC,CAAC,CAAA;gBACX,CAAC;YACH,CAAC;QACH,CAAC,EACD;YACE,QAAQ,EAAE,eAAe;YACzB,eAAe,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO,GAAG,IAAI;SAC5C,CACF,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAjCD,kDAiCC"}
1
+ {"version":3,"file":"waitForNextL2Output.js","sourceRoot":"","sources":["../../../../chains/opStack/actions/waitForNextL2Output.ts"],"names":[],"mappings":";;;AAEA,6DAA2E;AAQ3E,oDAA6C;AAE7C,qDAKyB;AACzB,yEAImC;AA0D5B,KAAK,UAAU,mBAAmB,CAKvC,MAAyC,EACzC,UAA+D;IAE/D,MAAM,EAAE,eAAe,GAAG,MAAM,CAAC,eAAe,EAAE,GAAG,UAAU,CAAA;IAE/D,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAA,gDAAqB,EAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAEnE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAA,cAAI,EACF,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YACnB,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAA,4BAAW,EAC9B,MAAM,EACN,UAAmC,CACpC,CAAA;gBACD,MAAM,EAAE,CAAA;gBACR,OAAO,CAAC,MAAM,CAAC,CAAA;YACjB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,MAAM,KAAK,GAAG,CAAyB,CAAA;gBACvC,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,YAAY,2CAA6B,CAAC,EAAE,CAAC;oBAC5D,MAAM,EAAE,CAAA;oBACR,MAAM,CAAC,CAAC,CAAC,CAAA;gBACX,CAAC;YACH,CAAC;QACH,CAAC,EACD;YACE,QAAQ,EAAE,eAAe;YACzB,eAAe,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO,GAAG,IAAI;SAC5C,CACF,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AApCD,kDAoCC"}
@@ -3,19 +3,50 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.waitToProve = void 0;
4
4
  const withdrawal_js_1 = require("../errors/withdrawal.js");
5
5
  const getWithdrawals_js_1 = require("../utils/getWithdrawals.js");
6
+ const getPortalVersion_js_1 = require("./getPortalVersion.js");
7
+ const waitForNextGame_js_1 = require("./waitForNextGame.js");
6
8
  const waitForNextL2Output_js_1 = require("./waitForNextL2Output.js");
7
9
  async function waitToProve(client, parameters) {
8
- const { receipt } = parameters;
10
+ const { gameLimit, receipt } = parameters;
9
11
  const [withdrawal] = (0, getWithdrawals_js_1.getWithdrawals)(receipt);
10
12
  if (!withdrawal)
11
13
  throw new withdrawal_js_1.ReceiptContainsNoWithdrawalsError({
12
14
  hash: receipt.transactionHash,
13
15
  });
14
- const output = await (0, waitForNextL2Output_js_1.waitForNextL2Output)(client, {
16
+ const portalVersion = await (0, getPortalVersion_js_1.getPortalVersion)(client, parameters);
17
+ if (portalVersion.major < 3) {
18
+ const output = await (0, waitForNextL2Output_js_1.waitForNextL2Output)(client, {
19
+ ...parameters,
20
+ l2BlockNumber: receipt.blockNumber,
21
+ });
22
+ return {
23
+ game: {
24
+ extraData: '0x',
25
+ index: output.outputIndex,
26
+ l2BlockNumber: output.l2BlockNumber,
27
+ metadata: '0x',
28
+ rootClaim: output.outputRoot,
29
+ timestamp: output.timestamp,
30
+ },
31
+ output,
32
+ withdrawal,
33
+ };
34
+ }
35
+ const game = await (0, waitForNextGame_js_1.waitForNextGame)(client, {
15
36
  ...parameters,
37
+ limit: gameLimit,
16
38
  l2BlockNumber: receipt.blockNumber,
17
39
  });
18
- return { output, withdrawal };
40
+ return {
41
+ game,
42
+ output: {
43
+ l2BlockNumber: game.l2BlockNumber,
44
+ outputIndex: game.index,
45
+ outputRoot: game.rootClaim,
46
+ timestamp: game.timestamp,
47
+ },
48
+ withdrawal,
49
+ };
19
50
  }
20
51
  exports.waitToProve = waitToProve;
21
52
  //# sourceMappingURL=waitToProve.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"waitToProve.js","sourceRoot":"","sources":["../../../../chains/opStack/actions/waitToProve.ts"],"names":[],"mappings":";;;AAUA,2DAA2E;AAG3E,kEAGmC;AACnC,qEAIiC;AAsD1B,KAAK,UAAU,WAAW,CAK/B,MAAyC,EACzC,UAAuD;IAEvD,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,CAAA;IAE9B,MAAM,CAAC,UAAU,CAAC,GAAG,IAAA,kCAAc,EAAC,OAAO,CAAC,CAAA;IAE5C,IAAI,CAAC,UAAU;QACb,MAAM,IAAI,iDAAiC,CAAC;YAC1C,IAAI,EAAE,OAAO,CAAC,eAAe;SAC9B,CAAC,CAAA;IAEJ,MAAM,MAAM,GAAG,MAAM,IAAA,4CAAmB,EAAC,MAAM,EAAE;QAC/C,GAAG,UAAU;QACb,aAAa,EAAE,OAAO,CAAC,WAAW;KACnC,CAAC,CAAA;IAEF,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAA;AAC/B,CAAC;AAvBD,kCAuBC"}
1
+ {"version":3,"file":"waitToProve.js","sourceRoot":"","sources":["../../../../chains/opStack/actions/waitToProve.ts"],"names":[],"mappings":";;;AAWA,2DAA2E;AAG3E,kEAGmC;AACnC,+DAG8B;AAC9B,6DAI6B;AAC7B,qEAKiC;AAmE1B,KAAK,UAAU,WAAW,CAK/B,MAAyC,EACzC,UAAuD;IAEvD,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,UAAU,CAAA;IAEzC,MAAM,CAAC,UAAU,CAAC,GAAG,IAAA,kCAAc,EAAC,OAAO,CAAC,CAAA;IAE5C,IAAI,CAAC,UAAU;QACb,MAAM,IAAI,iDAAiC,CAAC;YAC1C,IAAI,EAAE,OAAO,CAAC,eAAe;SAC9B,CAAC,CAAA;IAEJ,MAAM,aAAa,GAAG,MAAM,IAAA,sCAAgB,EAC1C,MAAM,EACN,UAAwC,CACzC,CAAA;IAGD,IAAI,aAAa,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,MAAM,IAAA,4CAAmB,EAAC,MAAM,EAAE;YAC/C,GAAG,UAAU;YACb,aAAa,EAAE,OAAO,CAAC,WAAW;SACF,CAAC,CAAA;QACnC,OAAO;YACL,IAAI,EAAE;gBACJ,SAAS,EAAE,IAAI;gBACf,KAAK,EAAE,MAAM,CAAC,WAAW;gBACzB,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,QAAQ,EAAE,IAAI;gBACd,SAAS,EAAE,MAAM,CAAC,UAAU;gBAC5B,SAAS,EAAE,MAAM,CAAC,SAAS;aAC5B;YACD,MAAM;YACN,UAAU;SACX,CAAA;IACH,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,IAAA,oCAAe,EAAC,MAAM,EAAE;QACzC,GAAG,UAAU;QACb,KAAK,EAAE,SAAS;QAChB,aAAa,EAAE,OAAO,CAAC,WAAW;KACN,CAAC,CAAA;IAC/B,OAAO;QACL,IAAI;QACJ,MAAM,EAAE;YACN,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,WAAW,EAAE,IAAI,CAAC,KAAK;YACvB,UAAU,EAAE,IAAI,CAAC,SAAS;YAC1B,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B;QACD,UAAU;KACX,CAAA;AACH,CAAC;AAzDD,kCAyDC"}
@@ -5,11 +5,16 @@ const buildInitiateWithdrawal_js_1 = require("../actions/buildInitiateWithdrawal
5
5
  const estimateDepositTransactionGas_js_1 = require("../actions/estimateDepositTransactionGas.js");
6
6
  const estimateFinalizeWithdrawalGas_js_1 = require("../actions/estimateFinalizeWithdrawalGas.js");
7
7
  const estimateProveWithdrawalGas_js_1 = require("../actions/estimateProveWithdrawalGas.js");
8
+ const getGame_js_1 = require("../actions/getGame.js");
9
+ const getGames_js_1 = require("../actions/getGames.js");
8
10
  const getL2Output_js_1 = require("../actions/getL2Output.js");
11
+ const getPortalVersion_js_1 = require("../actions/getPortalVersion.js");
9
12
  const getTimeToFinalize_js_1 = require("../actions/getTimeToFinalize.js");
13
+ const getTimeToNextGame_js_1 = require("../actions/getTimeToNextGame.js");
10
14
  const getTimeToNextL2Output_js_1 = require("../actions/getTimeToNextL2Output.js");
11
15
  const getTimeToProve_js_1 = require("../actions/getTimeToProve.js");
12
16
  const getWithdrawalStatus_js_1 = require("../actions/getWithdrawalStatus.js");
17
+ const waitForNextGame_js_1 = require("../actions/waitForNextGame.js");
13
18
  const waitForNextL2Output_js_1 = require("../actions/waitForNextL2Output.js");
14
19
  const waitToFinalize_js_1 = require("../actions/waitToFinalize.js");
15
20
  const waitToProve_js_1 = require("../actions/waitToProve.js");
@@ -20,11 +25,16 @@ function publicActionsL1() {
20
25
  estimateDepositTransactionGas: (args) => (0, estimateDepositTransactionGas_js_1.estimateDepositTransactionGas)(client, args),
21
26
  estimateFinalizeWithdrawalGas: (args) => (0, estimateFinalizeWithdrawalGas_js_1.estimateFinalizeWithdrawalGas)(client, args),
22
27
  estimateProveWithdrawalGas: (args) => (0, estimateProveWithdrawalGas_js_1.estimateProveWithdrawalGas)(client, args),
28
+ getGame: (args) => (0, getGame_js_1.getGame)(client, args),
29
+ getGames: (args) => (0, getGames_js_1.getGames)(client, args),
23
30
  getL2Output: (args) => (0, getL2Output_js_1.getL2Output)(client, args),
31
+ getPortalVersion: (args) => (0, getPortalVersion_js_1.getPortalVersion)(client, args),
24
32
  getTimeToFinalize: (args) => (0, getTimeToFinalize_js_1.getTimeToFinalize)(client, args),
33
+ getTimeToNextGame: (args) => (0, getTimeToNextGame_js_1.getTimeToNextGame)(client, args),
25
34
  getTimeToNextL2Output: (args) => (0, getTimeToNextL2Output_js_1.getTimeToNextL2Output)(client, args),
26
35
  getTimeToProve: (args) => (0, getTimeToProve_js_1.getTimeToProve)(client, args),
27
36
  getWithdrawalStatus: (args) => (0, getWithdrawalStatus_js_1.getWithdrawalStatus)(client, args),
37
+ waitForNextGame: (args) => (0, waitForNextGame_js_1.waitForNextGame)(client, args),
28
38
  waitForNextL2Output: (args) => (0, waitForNextL2Output_js_1.waitForNextL2Output)(client, args),
29
39
  waitToFinalize: (args) => (0, waitToFinalize_js_1.waitToFinalize)(client, args),
30
40
  waitToProve: (args) => (0, waitToProve_js_1.waitToProve)(client, args),
@@ -1 +1 @@
1
- {"version":3,"file":"publicL1.js","sourceRoot":"","sources":["../../../../chains/opStack/decorators/publicL1.ts"],"names":[],"mappings":";;;AAKA,sFAI8C;AAC9C,kGAIoD;AACpD,kGAIoD;AACpD,4FAIiD;AACjD,8DAIkC;AAClC,0EAIwC;AACxC,kFAI4C;AAC5C,oEAIqC;AACrC,8EAI0C;AAC1C,8EAI0C;AAC1C,oEAIqC;AACrC,8DAIkC;AAsblC,SAAgB,eAAe;IAC7B,OAAO,CAKL,MAA4C,EACT,EAAE;QACrC,OAAO;YACL,uBAAuB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,oDAAuB,EAAC,MAAM,EAAE,IAAI,CAAC;YACxE,6BAA6B,EAAE,CAAC,IAAI,EAAE,EAAE,CACtC,IAAA,gEAA6B,EAAC,MAAM,EAAE,IAAI,CAAC;YAC7C,6BAA6B,EAAE,CAAC,IAAI,EAAE,EAAE,CACtC,IAAA,gEAA6B,EAAC,MAAM,EAAE,IAAI,CAAC;YAC7C,0BAA0B,EAAE,CAAC,IAAI,EAAE,EAAE,CACnC,IAAA,0DAA0B,EAAC,MAAM,EAAE,IAAI,CAAC;YAC1C,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,4BAAW,EAAC,MAAM,EAAE,IAAI,CAAC;YAChD,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,wCAAiB,EAAC,MAAM,EAAE,IAAI,CAAC;YAC5D,qBAAqB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,gDAAqB,EAAC,MAAM,EAAE,IAAI,CAAC;YACpE,cAAc,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,kCAAc,EAAC,MAAM,EAAE,IAAI,CAAC;YACtD,mBAAmB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,4CAAmB,EAAC,MAAM,EAAE,IAAI,CAAC;YAChE,mBAAmB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,4CAAmB,EAAC,MAAM,EAAE,IAAI,CAAC;YAChE,cAAc,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,kCAAc,EAAC,MAAM,EAAE,IAAI,CAAC;YACtD,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,4BAAW,EAAC,MAAM,EAAE,IAAI,CAAC;SACjD,CAAA;IACH,CAAC,CAAA;AACH,CAAC;AA1BD,0CA0BC"}
1
+ {"version":3,"file":"publicL1.js","sourceRoot":"","sources":["../../../../chains/opStack/decorators/publicL1.ts"],"names":[],"mappings":";;;AAKA,sFAI8C;AAC9C,kGAIoD;AACpD,kGAIoD;AACpD,4FAIiD;AACjD,sDAI8B;AAC9B,wDAI+B;AAC/B,8DAIkC;AAClC,wEAIuC;AACvC,0EAIwC;AACxC,0EAIwC;AACxC,kFAI4C;AAC5C,oEAIqC;AACrC,8EAI0C;AAC1C,sEAIsC;AACtC,8EAI0C;AAC1C,oEAIqC;AACrC,8DAIkC;AA4jBlC,SAAgB,eAAe;IAC7B,OAAO,CAKL,MAA4C,EACT,EAAE;QACrC,OAAO;YACL,uBAAuB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,oDAAuB,EAAC,MAAM,EAAE,IAAI,CAAC;YACxE,6BAA6B,EAAE,CAAC,IAAI,EAAE,EAAE,CACtC,IAAA,gEAA6B,EAAC,MAAM,EAAE,IAAI,CAAC;YAC7C,6BAA6B,EAAE,CAAC,IAAI,EAAE,EAAE,CACtC,IAAA,gEAA6B,EAAC,MAAM,EAAE,IAAI,CAAC;YAC7C,0BAA0B,EAAE,CAAC,IAAI,EAAE,EAAE,CACnC,IAAA,0DAA0B,EAAC,MAAM,EAAE,IAAI,CAAC;YAC1C,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,oBAAO,EAAC,MAAM,EAAE,IAAI,CAAC;YACxC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,sBAAQ,EAAC,MAAM,EAAE,IAAI,CAAC;YAC1C,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,4BAAW,EAAC,MAAM,EAAE,IAAI,CAAC;YAChD,gBAAgB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,sCAAgB,EAAC,MAAM,EAAE,IAAI,CAAC;YAC1D,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,wCAAiB,EAAC,MAAM,EAAE,IAAI,CAAC;YAC5D,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,wCAAiB,EAAC,MAAM,EAAE,IAAI,CAAC;YAC5D,qBAAqB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,gDAAqB,EAAC,MAAM,EAAE,IAAI,CAAC;YACpE,cAAc,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,kCAAc,EAAC,MAAM,EAAE,IAAI,CAAC;YACtD,mBAAmB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,4CAAmB,EAAC,MAAM,EAAE,IAAI,CAAC;YAChE,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,oCAAe,EAAC,MAAM,EAAE,IAAI,CAAC;YACxD,mBAAmB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,4CAAmB,EAAC,MAAM,EAAE,IAAI,CAAC;YAChE,cAAc,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,kCAAc,EAAC,MAAM,EAAE,IAAI,CAAC;YACtD,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,4BAAW,EAAC,MAAM,EAAE,IAAI,CAAC;SACjD,CAAA;IACH,CAAC,CAAA;AACH,CAAC;AA/BD,0CA+BC"}
@@ -1,7 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ReceiptContainsNoWithdrawalsError = void 0;
3
+ exports.ReceiptContainsNoWithdrawalsError = exports.GameNotFoundError = void 0;
4
4
  const base_js_1 = require("../../../errors/base.js");
5
+ class GameNotFoundError extends base_js_1.BaseError {
6
+ constructor() {
7
+ super('Dispute game not found.');
8
+ Object.defineProperty(this, "name", {
9
+ enumerable: true,
10
+ configurable: true,
11
+ writable: true,
12
+ value: 'GameNotFoundError'
13
+ });
14
+ }
15
+ }
16
+ exports.GameNotFoundError = GameNotFoundError;
5
17
  class ReceiptContainsNoWithdrawalsError extends base_js_1.BaseError {
6
18
  constructor({ hash }) {
7
19
  super(`The provided transaction receipt with hash "${hash}" contains no withdrawals.`);
@@ -1 +1 @@
1
- {"version":3,"file":"withdrawal.js","sourceRoot":"","sources":["../../../../chains/opStack/errors/withdrawal.ts"],"names":[],"mappings":";;;AAAA,qDAAmD;AAOnD,MAAa,iCAAkC,SAAQ,mBAAS;IAE9D,YAAY,EAAE,IAAI,EAAiB;QACjC,KAAK,CACH,+CAA+C,IAAI,4BAA4B,CAChF,CAAA;QAJM;;;;mBAAO,mCAAmC;WAAA;IAKnD,CAAC;CACF;AAPD,8EAOC"}
1
+ {"version":3,"file":"withdrawal.js","sourceRoot":"","sources":["../../../../chains/opStack/errors/withdrawal.ts"],"names":[],"mappings":";;;AAAA,qDAAmD;AAMnD,MAAa,iBAAkB,SAAQ,mBAAS;IAE9C;QACE,KAAK,CAAC,yBAAyB,CAAC,CAAA;QAFzB;;;;mBAAO,mBAAmB;WAAA;IAGnC,CAAC;CACF;AALD,8CAKC;AAMD,MAAa,iCAAkC,SAAQ,mBAAS;IAE9D,YAAY,EAAE,IAAI,EAAiB;QACjC,KAAK,CACH,+CAA+C,IAAI,4BAA4B,CAChF,CAAA;QAJM;;;;mBAAO,mCAAmC;WAAA;IAKnD,CAAC;CACF;AAPD,8EAOC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getWithdrawals = exports.getWithdrawalHashStorageSlot = exports.getSourceHash = exports.getL2TransactionHashes = exports.getL2TransactionHash = exports.opaqueDataToDepositData = exports.extractTransactionDepositedLogs = exports.extractWithdrawalMessageLogs = exports.serializers = exports.serializeTransaction = exports.parseTransaction = exports.walletActionsL2 = exports.walletActionsL1 = exports.publicActionsL2 = exports.publicActionsL1 = exports.chainConfig = exports.waitToProve = exports.waitToFinalize = exports.waitForNextL2Output = exports.proveWithdrawal = exports.initiateWithdrawal = exports.getWithdrawalStatus = exports.getTimeToProve = exports.getTimeToNextL2Output = exports.getTimeToFinalize = exports.getL2Output = exports.finalizeWithdrawal = exports.estimateTotalGas = exports.estimateTotalFee = exports.estimateL1Gas = exports.getL1BaseFee = exports.estimateL1Fee = exports.estimateContractTotalGas = exports.estimateContractTotalFee = exports.estimateContractL1Gas = exports.estimateContractL1Fee = exports.depositTransaction = exports.buildProveWithdrawal = exports.buildInitiateWithdrawal = exports.buildDepositTransaction = void 0;
3
+ exports.getWithdrawals = exports.getWithdrawalHashStorageSlot = exports.getSourceHash = exports.getL2TransactionHashes = exports.getL2TransactionHash = exports.opaqueDataToDepositData = exports.extractTransactionDepositedLogs = exports.extractWithdrawalMessageLogs = exports.serializers = exports.serializeTransaction = exports.parseTransaction = exports.walletActionsL2 = exports.walletActionsL1 = exports.publicActionsL2 = exports.publicActionsL1 = exports.chainConfig = exports.waitToProve = exports.waitToFinalize = exports.waitForNextL2Output = exports.waitForNextGame = exports.proveWithdrawal = exports.initiateWithdrawal = exports.getWithdrawalStatus = exports.getTimeToProve = exports.getTimeToNextL2Output = exports.getTimeToFinalize = exports.getTimeToNextGame = exports.getPortalVersion = exports.getL2Output = exports.finalizeWithdrawal = exports.estimateTotalGas = exports.estimateTotalFee = exports.estimateL1Gas = exports.getL1BaseFee = exports.getGames = exports.getGame = exports.estimateL1Fee = exports.estimateContractTotalGas = exports.estimateContractTotalFee = exports.estimateContractL1Gas = exports.estimateContractL1Fee = exports.depositTransaction = exports.buildProveWithdrawal = exports.buildInitiateWithdrawal = exports.buildDepositTransaction = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  var buildDepositTransaction_js_1 = require("./actions/buildDepositTransaction.js");
6
6
  Object.defineProperty(exports, "buildDepositTransaction", { enumerable: true, get: function () { return buildDepositTransaction_js_1.buildDepositTransaction; } });
@@ -20,6 +20,10 @@ var estimateContractTotalGas_js_1 = require("./actions/estimateContractTotalGas.
20
20
  Object.defineProperty(exports, "estimateContractTotalGas", { enumerable: true, get: function () { return estimateContractTotalGas_js_1.estimateContractTotalGas; } });
21
21
  var estimateL1Fee_js_1 = require("./actions/estimateL1Fee.js");
22
22
  Object.defineProperty(exports, "estimateL1Fee", { enumerable: true, get: function () { return estimateL1Fee_js_1.estimateL1Fee; } });
23
+ var getGame_js_1 = require("./actions/getGame.js");
24
+ Object.defineProperty(exports, "getGame", { enumerable: true, get: function () { return getGame_js_1.getGame; } });
25
+ var getGames_js_1 = require("./actions/getGames.js");
26
+ Object.defineProperty(exports, "getGames", { enumerable: true, get: function () { return getGames_js_1.getGames; } });
23
27
  var getL1BaseFee_js_1 = require("./actions/getL1BaseFee.js");
24
28
  Object.defineProperty(exports, "getL1BaseFee", { enumerable: true, get: function () { return getL1BaseFee_js_1.getL1BaseFee; } });
25
29
  var estimateL1Gas_js_1 = require("./actions/estimateL1Gas.js");
@@ -32,6 +36,10 @@ var finalizeWithdrawal_js_1 = require("./actions/finalizeWithdrawal.js");
32
36
  Object.defineProperty(exports, "finalizeWithdrawal", { enumerable: true, get: function () { return finalizeWithdrawal_js_1.finalizeWithdrawal; } });
33
37
  var getL2Output_js_1 = require("./actions/getL2Output.js");
34
38
  Object.defineProperty(exports, "getL2Output", { enumerable: true, get: function () { return getL2Output_js_1.getL2Output; } });
39
+ var getPortalVersion_js_1 = require("./actions/getPortalVersion.js");
40
+ Object.defineProperty(exports, "getPortalVersion", { enumerable: true, get: function () { return getPortalVersion_js_1.getPortalVersion; } });
41
+ var getTimeToNextGame_js_1 = require("./actions/getTimeToNextGame.js");
42
+ Object.defineProperty(exports, "getTimeToNextGame", { enumerable: true, get: function () { return getTimeToNextGame_js_1.getTimeToNextGame; } });
35
43
  var getTimeToFinalize_js_1 = require("./actions/getTimeToFinalize.js");
36
44
  Object.defineProperty(exports, "getTimeToFinalize", { enumerable: true, get: function () { return getTimeToFinalize_js_1.getTimeToFinalize; } });
37
45
  var getTimeToNextL2Output_js_1 = require("./actions/getTimeToNextL2Output.js");
@@ -44,6 +52,8 @@ var initiateWithdrawal_js_1 = require("./actions/initiateWithdrawal.js");
44
52
  Object.defineProperty(exports, "initiateWithdrawal", { enumerable: true, get: function () { return initiateWithdrawal_js_1.initiateWithdrawal; } });
45
53
  var proveWithdrawal_js_1 = require("./actions/proveWithdrawal.js");
46
54
  Object.defineProperty(exports, "proveWithdrawal", { enumerable: true, get: function () { return proveWithdrawal_js_1.proveWithdrawal; } });
55
+ var waitForNextGame_js_1 = require("./actions/waitForNextGame.js");
56
+ Object.defineProperty(exports, "waitForNextGame", { enumerable: true, get: function () { return waitForNextGame_js_1.waitForNextGame; } });
47
57
  var waitForNextL2Output_js_1 = require("./actions/waitForNextL2Output.js");
48
58
  Object.defineProperty(exports, "waitForNextL2Output", { enumerable: true, get: function () { return waitForNextL2Output_js_1.waitForNextL2Output; } });
49
59
  var waitToFinalize_js_1 = require("./actions/waitToFinalize.js");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../chains/opStack/index.ts"],"names":[],"mappings":";;;;AAAA,mFAK6C;AAJ3C,qIAAA,uBAAuB,OAAA;AAKzB,mFAK6C;AAJ3C,qIAAA,uBAAuB,OAAA;AAKzB,6EAK0C;AAJxC,+HAAA,oBAAoB,OAAA;AAKtB,yEAKwC;AAJtC,2HAAA,kBAAkB,OAAA;AAKpB,+EAK2C;AAJzC,iIAAA,qBAAqB,OAAA;AAKvB,+EAK2C;AAJzC,iIAAA,qBAAqB,OAAA;AAKvB,qFAK8C;AAJ5C,uIAAA,wBAAwB,OAAA;AAK1B,qFAK8C;AAJ5C,uIAAA,wBAAwB,OAAA;AAK1B,+DAKmC;AAJjC,iHAAA,aAAa,OAAA;AAKf,6DAKkC;AAJhC,+GAAA,YAAY,OAAA;AAKd,+DAKmC;AAJjC,iHAAA,aAAa,OAAA;AAKf,qEAKsC;AAJpC,uHAAA,gBAAgB,OAAA;AAKlB,qEAKsC;AAJpC,uHAAA,gBAAgB,OAAA;AAKlB,yEAKwC;AAJtC,2HAAA,kBAAkB,OAAA;AAKpB,2DAKiC;AAJ/B,6GAAA,WAAW,OAAA;AAKb,uEAKuC;AAJrC,yHAAA,iBAAiB,OAAA;AAKnB,+EAK2C;AAJzC,iIAAA,qBAAqB,OAAA;AAKvB,iEAKoC;AAJlC,mHAAA,cAAc,OAAA;AAKhB,2EAKyC;AAJvC,6HAAA,mBAAmB,OAAA;AAKrB,yEAKwC;AAJtC,2HAAA,kBAAkB,OAAA;AAKpB,mEAKqC;AAJnC,qHAAA,eAAe,OAAA;AAKjB,2EAKyC;AAJvC,6HAAA,mBAAmB,OAAA;AAKrB,iEAKoC;AAJlC,mHAAA,cAAc,OAAA;AAKhB,2DAKiC;AAJ/B,6GAAA,WAAW,OAAA;AAMb,mDAA8C;AAArC,6GAAA,WAAW,OAAA;AAEpB,sDAA2B;AAE3B,wDAAgF;AAAvE,8GAAA,eAAe,OAAA;AACxB,wDAAgF;AAAvE,8GAAA,eAAe,OAAA;AACxB,wDAAgF;AAAvE,8GAAA,eAAe,OAAA;AACxB,wDAAgF;AAAvE,8GAAA,eAAe,OAAA;AAExB,2CAIqB;AAHnB,8GAAA,gBAAgB,OAAA;AAKlB,mDAKyB;AAJvB,sHAAA,oBAAoB,OAAA;AACpB,6GAAA,WAAW,OAAA;AAsBb,2FAKgD;AAJ9C,+IAAA,4BAA4B,OAAA;AAM9B,iGAKmD;AAJjD,qJAAA,+BAA+B,OAAA;AAMjC,iFAK2C;AAJzC,qIAAA,uBAAuB,OAAA;AAMzB,2EAKwC;AAJtC,+HAAA,oBAAoB,OAAA;AAMtB,+EAK0C;AAJxC,mIAAA,sBAAsB,OAAA;AAMxB,6DAKiC;AAJ/B,iHAAA,aAAa,OAAA;AAMf,2FAKgD;AAJ9C,+IAAA,4BAA4B,OAAA;AAM9B,+DAKkC;AAJhC,mHAAA,cAAc,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../chains/opStack/index.ts"],"names":[],"mappings":";;;;AAAA,mFAK6C;AAJ3C,qIAAA,uBAAuB,OAAA;AAKzB,mFAK6C;AAJ3C,qIAAA,uBAAuB,OAAA;AAKzB,6EAK0C;AAJxC,+HAAA,oBAAoB,OAAA;AAKtB,yEAKwC;AAJtC,2HAAA,kBAAkB,OAAA;AAKpB,+EAK2C;AAJzC,iIAAA,qBAAqB,OAAA;AAKvB,+EAK2C;AAJzC,iIAAA,qBAAqB,OAAA;AAKvB,qFAK8C;AAJ5C,uIAAA,wBAAwB,OAAA;AAK1B,qFAK8C;AAJ5C,uIAAA,wBAAwB,OAAA;AAK1B,+DAKmC;AAJjC,iHAAA,aAAa,OAAA;AAKf,mDAK6B;AAJ3B,qGAAA,OAAO,OAAA;AAKT,qDAK8B;AAJ5B,uGAAA,QAAQ,OAAA;AAKV,6DAKkC;AAJhC,+GAAA,YAAY,OAAA;AAKd,+DAKmC;AAJjC,iHAAA,aAAa,OAAA;AAKf,qEAKsC;AAJpC,uHAAA,gBAAgB,OAAA;AAKlB,qEAKsC;AAJpC,uHAAA,gBAAgB,OAAA;AAKlB,yEAKwC;AAJtC,2HAAA,kBAAkB,OAAA;AAKpB,2DAKiC;AAJ/B,6GAAA,WAAW,OAAA;AAKb,qEAKsC;AAJpC,uHAAA,gBAAgB,OAAA;AAKlB,uEAKuC;AAJrC,yHAAA,iBAAiB,OAAA;AAKnB,uEAKuC;AAJrC,yHAAA,iBAAiB,OAAA;AAKnB,+EAK2C;AAJzC,iIAAA,qBAAqB,OAAA;AAKvB,iEAKoC;AAJlC,mHAAA,cAAc,OAAA;AAKhB,2EAKyC;AAJvC,6HAAA,mBAAmB,OAAA;AAKrB,yEAKwC;AAJtC,2HAAA,kBAAkB,OAAA;AAKpB,mEAKqC;AAJnC,qHAAA,eAAe,OAAA;AAKjB,mEAKqC;AAJnC,qHAAA,eAAe,OAAA;AAKjB,2EAKyC;AAJvC,6HAAA,mBAAmB,OAAA;AAKrB,iEAKoC;AAJlC,mHAAA,cAAc,OAAA;AAKhB,2DAKiC;AAJ/B,6GAAA,WAAW,OAAA;AAMb,mDAA8C;AAArC,6GAAA,WAAW,OAAA;AAEpB,sDAA2B;AAE3B,wDAAgF;AAAvE,8GAAA,eAAe,OAAA;AACxB,wDAAgF;AAAvE,8GAAA,eAAe,OAAA;AACxB,wDAAgF;AAAvE,8GAAA,eAAe,OAAA;AACxB,wDAAgF;AAAvE,8GAAA,eAAe,OAAA;AAExB,2CAIqB;AAHnB,8GAAA,gBAAgB,OAAA;AAKlB,mDAKyB;AAJvB,sHAAA,oBAAoB,OAAA;AACpB,6GAAA,WAAW,OAAA;AAsBb,2FAKgD;AAJ9C,+IAAA,4BAA4B,OAAA;AAM9B,iGAKmD;AAJjD,qJAAA,+BAA+B,OAAA;AAMjC,iFAK2C;AAJzC,qIAAA,uBAAuB,OAAA;AAMzB,2EAKwC;AAJtC,+HAAA,oBAAoB,OAAA;AAMtB,+EAK0C;AAJxC,mIAAA,sBAAsB,OAAA;AAMxB,6DAKiC;AAJ/B,iHAAA,aAAa,OAAA;AAMf,2FAKgD;AAJ9C,+IAAA,4BAA4B,OAAA;AAM9B,+DAKkC;AAJhC,mHAAA,cAAc,OAAA"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.deployContract = void 0;
4
+ const address_js_1 = require("../constants/address.js");
5
+ const encodeDeployData_js_1 = require("../utils/abi/encodeDeployData.js");
6
+ const sendEip712Transaction_js_1 = require("./sendEip712Transaction.js");
7
+ function deployContract(walletClient, parameters) {
8
+ const { abi, args, bytecode, deploymentType, salt, ...request } = parameters;
9
+ const data = (0, encodeDeployData_js_1.encodeDeployData)({
10
+ abi,
11
+ args,
12
+ bytecode,
13
+ deploymentType,
14
+ salt,
15
+ });
16
+ request.factoryDeps = request.factoryDeps || [];
17
+ if (!request.factoryDeps.includes(bytecode))
18
+ request.factoryDeps.push(bytecode);
19
+ return (0, sendEip712Transaction_js_1.sendEip712Transaction)(walletClient, {
20
+ ...request,
21
+ data,
22
+ to: address_js_1.contractDeployerAddress,
23
+ });
24
+ }
25
+ exports.deployContract = deployContract;
26
+ //# sourceMappingURL=deployContract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deployContract.js","sourceRoot":"","sources":["../../../../chains/zksync/actions/deployContract.ts"],"names":[],"mappings":";;;AASA,wDAAiE;AAGjE,0EAAmE;AACnE,yEAKmC;AA+CnC,SAAgB,cAAc,CAM5B,YAA+C,EAC/C,UAAwE;IAExE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,GAC7D,UAAsC,CAAA;IAExC,MAAM,IAAI,GAAG,IAAA,sCAAgB,EAAC;QAC5B,GAAG;QACH,IAAI;QACJ,QAAQ;QACR,cAAc;QACd,IAAI;KACL,CAAC,CAAA;IAGF,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAA;IAC/C,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACzC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAEpC,OAAO,IAAA,gDAAqB,EAAC,YAAY,EAAE;QACzC,GAAG,OAAO;QACV,IAAI;QACJ,EAAE,EAAE,oCAAuB;KAK5B,CAAC,CAAA;AACJ,CAAC;AAlCD,wCAkCC"}