viem 2.50.4 → 2.51.0

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 (197) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/_cjs/actions/index.js +5 -3
  3. package/_cjs/actions/index.js.map +1 -1
  4. package/_cjs/actions/public/createAccessList.js +3 -0
  5. package/_cjs/actions/public/createAccessList.js.map +1 -1
  6. package/_cjs/actions/public/getBlockReceipts.js +19 -0
  7. package/_cjs/actions/public/getBlockReceipts.js.map +1 -0
  8. package/_cjs/actions/wallet/prepareTransactionRequest.js.map +1 -1
  9. package/_cjs/chains/definitions/somnia.js +7 -0
  10. package/_cjs/chains/definitions/somnia.js.map +1 -1
  11. package/_cjs/chains/definitions/somniaTestnet.js +3 -2
  12. package/_cjs/chains/definitions/somniaTestnet.js.map +1 -1
  13. package/_cjs/clients/decorators/public.js +2 -0
  14. package/_cjs/clients/decorators/public.js.map +1 -1
  15. package/_cjs/errors/version.js +1 -1
  16. package/_cjs/index.js.map +1 -1
  17. package/_cjs/op-stack/actions/buildProveWithdrawal.js +10 -2
  18. package/_cjs/op-stack/actions/buildProveWithdrawal.js.map +1 -1
  19. package/_cjs/op-stack/actions/getGame.js.map +1 -1
  20. package/_cjs/op-stack/actions/getGames.js +3 -1
  21. package/_cjs/op-stack/actions/getGames.js.map +1 -1
  22. package/_cjs/op-stack/actions/getTimeToProve.js +3 -3
  23. package/_cjs/op-stack/actions/getTimeToProve.js.map +1 -1
  24. package/_cjs/op-stack/actions/getWithdrawalStatus.js +1 -1
  25. package/_cjs/op-stack/actions/getWithdrawalStatus.js.map +1 -1
  26. package/_cjs/op-stack/actions/waitToProve.js +4 -3
  27. package/_cjs/op-stack/actions/waitToProve.js.map +1 -1
  28. package/_cjs/op-stack/gameTypes.js +9 -0
  29. package/_cjs/op-stack/gameTypes.js.map +1 -0
  30. package/_cjs/op-stack/index.js +7 -1
  31. package/_cjs/op-stack/index.js.map +1 -1
  32. package/_cjs/op-stack/utils/getL2BlockNumberAtTimestamp.js +29 -0
  33. package/_cjs/op-stack/utils/getL2BlockNumberAtTimestamp.js.map +1 -0
  34. package/_cjs/tempo/Abis.js +477 -11
  35. package/_cjs/tempo/Abis.js.map +1 -1
  36. package/_cjs/tempo/Account.js +27 -1
  37. package/_cjs/tempo/Account.js.map +1 -1
  38. package/_cjs/tempo/Decorator.js +17 -0
  39. package/_cjs/tempo/Decorator.js.map +1 -1
  40. package/_cjs/tempo/Transaction.js +10 -2
  41. package/_cjs/tempo/Transaction.js.map +1 -1
  42. package/_cjs/tempo/actions/channel.js +377 -0
  43. package/_cjs/tempo/actions/channel.js.map +1 -0
  44. package/_cjs/tempo/actions/index.js +2 -1
  45. package/_cjs/tempo/actions/index.js.map +1 -1
  46. package/_cjs/tempo/actions/token.js +57 -27
  47. package/_cjs/tempo/actions/token.js.map +1 -1
  48. package/_cjs/tempo/index.js +2 -1
  49. package/_cjs/tempo/index.js.map +1 -1
  50. package/_cjs/utils/formatters/transactionRequest.js.map +1 -1
  51. package/_cjs/utils/index.js.map +1 -1
  52. package/_esm/actions/index.js +1 -0
  53. package/_esm/actions/index.js.map +1 -1
  54. package/_esm/actions/public/createAccessList.js +3 -0
  55. package/_esm/actions/public/createAccessList.js.map +1 -1
  56. package/_esm/actions/public/getBlockReceipts.js +39 -0
  57. package/_esm/actions/public/getBlockReceipts.js.map +1 -0
  58. package/_esm/actions/wallet/prepareTransactionRequest.js.map +1 -1
  59. package/_esm/chains/definitions/somnia.js +7 -0
  60. package/_esm/chains/definitions/somnia.js.map +1 -1
  61. package/_esm/chains/definitions/somniaTestnet.js +3 -2
  62. package/_esm/chains/definitions/somniaTestnet.js.map +1 -1
  63. package/_esm/clients/decorators/public.js +2 -0
  64. package/_esm/clients/decorators/public.js.map +1 -1
  65. package/_esm/errors/version.js +1 -1
  66. package/_esm/index.js.map +1 -1
  67. package/_esm/op-stack/actions/buildProveWithdrawal.js +10 -2
  68. package/_esm/op-stack/actions/buildProveWithdrawal.js.map +1 -1
  69. package/_esm/op-stack/actions/getGame.js.map +1 -1
  70. package/_esm/op-stack/actions/getGames.js +3 -1
  71. package/_esm/op-stack/actions/getGames.js.map +1 -1
  72. package/_esm/op-stack/actions/getTimeToProve.js +3 -3
  73. package/_esm/op-stack/actions/getTimeToProve.js.map +1 -1
  74. package/_esm/op-stack/actions/getWithdrawalStatus.js +1 -1
  75. package/_esm/op-stack/actions/getWithdrawalStatus.js.map +1 -1
  76. package/_esm/op-stack/actions/waitToProve.js +4 -3
  77. package/_esm/op-stack/actions/waitToProve.js.map +1 -1
  78. package/_esm/op-stack/gameTypes.js +9 -0
  79. package/_esm/op-stack/gameTypes.js.map +1 -0
  80. package/_esm/op-stack/index.js +2 -0
  81. package/_esm/op-stack/index.js.map +1 -1
  82. package/_esm/op-stack/utils/getL2BlockNumberAtTimestamp.js +33 -0
  83. package/_esm/op-stack/utils/getL2BlockNumberAtTimestamp.js.map +1 -0
  84. package/_esm/tempo/Abis.js +476 -10
  85. package/_esm/tempo/Abis.js.map +1 -1
  86. package/_esm/tempo/Account.js +27 -2
  87. package/_esm/tempo/Account.js.map +1 -1
  88. package/_esm/tempo/Decorator.js +17 -0
  89. package/_esm/tempo/Decorator.js.map +1 -1
  90. package/_esm/tempo/Transaction.js +16 -11
  91. package/_esm/tempo/Transaction.js.map +1 -1
  92. package/_esm/tempo/actions/channel.js +736 -0
  93. package/_esm/tempo/actions/channel.js.map +1 -0
  94. package/_esm/tempo/actions/index.js +1 -0
  95. package/_esm/tempo/actions/index.js.map +1 -1
  96. package/_esm/tempo/actions/token.js +61 -28
  97. package/_esm/tempo/actions/token.js.map +1 -1
  98. package/_esm/tempo/index.js +1 -1
  99. package/_esm/tempo/index.js.map +1 -1
  100. package/_esm/utils/formatters/transactionRequest.js.map +1 -1
  101. package/_esm/utils/index.js.map +1 -1
  102. package/_types/actions/index.d.ts +1 -0
  103. package/_types/actions/index.d.ts.map +1 -1
  104. package/_types/actions/public/createAccessList.d.ts +2 -1
  105. package/_types/actions/public/createAccessList.d.ts.map +1 -1
  106. package/_types/actions/public/getBlockReceipts.d.ts +53 -0
  107. package/_types/actions/public/getBlockReceipts.d.ts.map +1 -0
  108. package/_types/actions/wallet/prepareTransactionRequest.d.ts +4 -5
  109. package/_types/actions/wallet/prepareTransactionRequest.d.ts.map +1 -1
  110. package/_types/chains/definitions/somnia.d.ts +7 -10
  111. package/_types/chains/definitions/somnia.d.ts.map +1 -1
  112. package/_types/chains/definitions/somniaTestnet.d.ts +3 -3
  113. package/_types/chains/definitions/somniaTestnet.d.ts.map +1 -1
  114. package/_types/clients/decorators/public.d.ts +23 -0
  115. package/_types/clients/decorators/public.d.ts.map +1 -1
  116. package/_types/errors/version.d.ts +1 -1
  117. package/_types/index.d.ts +2 -1
  118. package/_types/index.d.ts.map +1 -1
  119. package/_types/op-stack/actions/buildProveWithdrawal.d.ts +2 -1
  120. package/_types/op-stack/actions/buildProveWithdrawal.d.ts.map +1 -1
  121. package/_types/op-stack/actions/getGame.d.ts +7 -0
  122. package/_types/op-stack/actions/getGame.d.ts.map +1 -1
  123. package/_types/op-stack/actions/getGames.d.ts +7 -0
  124. package/_types/op-stack/actions/getGames.d.ts.map +1 -1
  125. package/_types/op-stack/actions/getTimeToProve.d.ts +4 -0
  126. package/_types/op-stack/actions/getTimeToProve.d.ts.map +1 -1
  127. package/_types/op-stack/actions/getWithdrawalStatus.d.ts +4 -0
  128. package/_types/op-stack/actions/getWithdrawalStatus.d.ts.map +1 -1
  129. package/_types/op-stack/actions/waitToProve.d.ts +4 -0
  130. package/_types/op-stack/actions/waitToProve.d.ts.map +1 -1
  131. package/_types/op-stack/gameTypes.d.ts +7 -0
  132. package/_types/op-stack/gameTypes.d.ts.map +1 -0
  133. package/_types/op-stack/index.d.ts +2 -0
  134. package/_types/op-stack/index.d.ts.map +1 -1
  135. package/_types/op-stack/utils/getL2BlockNumberAtTimestamp.d.ts +21 -0
  136. package/_types/op-stack/utils/getL2BlockNumberAtTimestamp.d.ts.map +1 -0
  137. package/_types/tempo/Abis.d.ts +3784 -2271
  138. package/_types/tempo/Abis.d.ts.map +1 -1
  139. package/_types/tempo/Account.d.ts +32 -1
  140. package/_types/tempo/Account.d.ts.map +1 -1
  141. package/_types/tempo/Decorator.d.ts +246 -1
  142. package/_types/tempo/Decorator.d.ts.map +1 -1
  143. package/_types/tempo/Transaction.d.ts.map +1 -1
  144. package/_types/tempo/actions/accessKey.d.ts +339 -0
  145. package/_types/tempo/actions/accessKey.d.ts.map +1 -1
  146. package/_types/tempo/actions/channel.d.ts +4390 -0
  147. package/_types/tempo/actions/channel.d.ts.map +1 -0
  148. package/_types/tempo/actions/dex.d.ts +140 -0
  149. package/_types/tempo/actions/dex.d.ts.map +1 -1
  150. package/_types/tempo/actions/fee.d.ts +0 -48
  151. package/_types/tempo/actions/fee.d.ts.map +1 -1
  152. package/_types/tempo/actions/index.d.ts +1 -0
  153. package/_types/tempo/actions/index.d.ts.map +1 -1
  154. package/_types/tempo/actions/reward.d.ts +74 -18
  155. package/_types/tempo/actions/reward.d.ts.map +1 -1
  156. package/_types/tempo/actions/token.d.ts +629 -141
  157. package/_types/tempo/actions/token.d.ts.map +1 -1
  158. package/_types/tempo/actions/virtualAddress.d.ts +11 -0
  159. package/_types/tempo/actions/virtualAddress.d.ts.map +1 -1
  160. package/_types/tempo/index.d.ts +1 -1
  161. package/_types/tempo/index.d.ts.map +1 -1
  162. package/_types/types/eip1193.d.ts +13 -0
  163. package/_types/types/eip1193.d.ts.map +1 -1
  164. package/_types/utils/formatters/transactionRequest.d.ts +6 -1
  165. package/_types/utils/formatters/transactionRequest.d.ts.map +1 -1
  166. package/_types/utils/index.d.ts +1 -1
  167. package/_types/utils/index.d.ts.map +1 -1
  168. package/actions/index.ts +6 -0
  169. package/actions/public/createAccessList.ts +4 -0
  170. package/actions/public/getBlockReceipts.ts +101 -0
  171. package/actions/wallet/prepareTransactionRequest.ts +7 -10
  172. package/chains/definitions/somnia.ts +7 -0
  173. package/chains/definitions/somniaTestnet.ts +3 -2
  174. package/clients/decorators/public.ts +30 -0
  175. package/errors/version.ts +1 -1
  176. package/index.ts +6 -0
  177. package/op-stack/actions/buildProveWithdrawal.ts +17 -2
  178. package/op-stack/actions/getGame.ts +7 -0
  179. package/op-stack/actions/getGames.ts +10 -1
  180. package/op-stack/actions/getTimeToProve.ts +7 -3
  181. package/op-stack/actions/getWithdrawalStatus.ts +6 -1
  182. package/op-stack/actions/waitToProve.ts +8 -3
  183. package/op-stack/gameTypes.ts +9 -0
  184. package/op-stack/index.ts +7 -1
  185. package/op-stack/utils/getL2BlockNumberAtTimestamp.ts +57 -0
  186. package/package.json +2 -2
  187. package/tempo/Abis.ts +477 -10
  188. package/tempo/Account.ts +67 -2
  189. package/tempo/Decorator.ts +299 -1
  190. package/tempo/Transaction.ts +18 -11
  191. package/tempo/actions/channel.ts +1197 -0
  192. package/tempo/actions/index.ts +1 -0
  193. package/tempo/actions/token.ts +85 -26
  194. package/tempo/index.ts +1 -0
  195. package/types/eip1193.ts +13 -0
  196. package/utils/formatters/transactionRequest.ts +13 -1
  197. package/utils/index.ts +1 -0
@@ -14,7 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.opaqueDataToDepositData = exports.getWithdrawals = exports.getWithdrawalHashStorageSlot = exports.getSourceHash = exports.getL2TransactionHashes = exports.getL2TransactionHash = exports.extractWithdrawalMessageLogs = exports.extractTransactionDepositedLogs = exports.serializeTransaction = exports.serializers = 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.getTimeToNextGame = exports.getTimeToFinalize = exports.getPortalVersion = exports.getL2Output = exports.getL1BaseFee = exports.getGames = exports.getGame = exports.finalizeWithdrawal = exports.estimateTotalGas = exports.estimateTotalFee = exports.estimateProveWithdrawalGas = exports.estimateOperatorFee = exports.estimateL1Gas = exports.estimateL1Fee = exports.estimateInitiateWithdrawalGas = exports.estimateFinalizeWithdrawalGas = exports.estimateDepositTransactionGas = exports.estimateContractTotalGas = exports.estimateContractTotalFee = exports.estimateContractL1Gas = exports.estimateContractL1Fee = exports.depositTransaction = exports.buildProveWithdrawal = exports.buildInitiateWithdrawal = exports.buildDepositTransaction = void 0;
17
+ exports.getSourceHash = exports.getL2TransactionHashes = exports.getL2TransactionHash = exports.getL2BlockNumberAtTimestamp = exports.extractWithdrawalMessageLogs = exports.extractTransactionDepositedLogs = exports.serializeTransaction = exports.serializers = exports.parseTransaction = exports.superGameTypes = exports.isSuperGameType = 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.getTimeToNextGame = exports.getTimeToFinalize = exports.getPortalVersion = exports.getL2Output = exports.getL1BaseFee = exports.getGames = exports.getGame = exports.finalizeWithdrawal = exports.estimateTotalGas = exports.estimateTotalFee = exports.estimateProveWithdrawalGas = exports.estimateOperatorFee = exports.estimateL1Gas = exports.estimateL1Fee = exports.estimateInitiateWithdrawalGas = exports.estimateFinalizeWithdrawalGas = exports.estimateDepositTransactionGas = exports.estimateContractTotalGas = exports.estimateContractTotalFee = exports.estimateContractL1Gas = exports.estimateContractL1Fee = exports.depositTransaction = exports.buildProveWithdrawal = exports.buildInitiateWithdrawal = exports.buildDepositTransaction = void 0;
18
+ exports.opaqueDataToDepositData = exports.getWithdrawals = exports.getWithdrawalHashStorageSlot = void 0;
18
19
  var buildDepositTransaction_js_1 = require("./actions/buildDepositTransaction.js");
19
20
  Object.defineProperty(exports, "buildDepositTransaction", { enumerable: true, get: function () { return buildDepositTransaction_js_1.buildDepositTransaction; } });
20
21
  var buildInitiateWithdrawal_js_1 = require("./actions/buildInitiateWithdrawal.js");
@@ -94,6 +95,9 @@ var walletL1_js_1 = require("./decorators/walletL1.js");
94
95
  Object.defineProperty(exports, "walletActionsL1", { enumerable: true, get: function () { return walletL1_js_1.walletActionsL1; } });
95
96
  var walletL2_js_1 = require("./decorators/walletL2.js");
96
97
  Object.defineProperty(exports, "walletActionsL2", { enumerable: true, get: function () { return walletL2_js_1.walletActionsL2; } });
98
+ var gameTypes_js_1 = require("./gameTypes.js");
99
+ Object.defineProperty(exports, "isSuperGameType", { enumerable: true, get: function () { return gameTypes_js_1.isSuperGameType; } });
100
+ Object.defineProperty(exports, "superGameTypes", { enumerable: true, get: function () { return gameTypes_js_1.superGameTypes; } });
97
101
  var parsers_js_1 = require("./parsers.js");
98
102
  Object.defineProperty(exports, "parseTransaction", { enumerable: true, get: function () { return parsers_js_1.parseTransaction; } });
99
103
  var serializers_js_1 = require("./serializers.js");
@@ -103,6 +107,8 @@ var extractTransactionDepositedLogs_js_1 = require("./utils/extractTransactionDe
103
107
  Object.defineProperty(exports, "extractTransactionDepositedLogs", { enumerable: true, get: function () { return extractTransactionDepositedLogs_js_1.extractTransactionDepositedLogs; } });
104
108
  var extractWithdrawalMessageLogs_js_1 = require("./utils/extractWithdrawalMessageLogs.js");
105
109
  Object.defineProperty(exports, "extractWithdrawalMessageLogs", { enumerable: true, get: function () { return extractWithdrawalMessageLogs_js_1.extractWithdrawalMessageLogs; } });
110
+ var getL2BlockNumberAtTimestamp_js_1 = require("./utils/getL2BlockNumberAtTimestamp.js");
111
+ Object.defineProperty(exports, "getL2BlockNumberAtTimestamp", { enumerable: true, get: function () { return getL2BlockNumberAtTimestamp_js_1.getL2BlockNumberAtTimestamp; } });
106
112
  var getL2TransactionHash_js_1 = require("./utils/getL2TransactionHash.js");
107
113
  Object.defineProperty(exports, "getL2TransactionHash", { enumerable: true, get: function () { return getL2TransactionHash_js_1.getL2TransactionHash; } });
108
114
  var getL2TransactionHashes_js_1 = require("./utils/getL2TransactionHashes.js");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../op-stack/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,mFAK6C;AAD3C,qIAAA,uBAAuB,OAAA;AAEzB,mFAK6C;AAD3C,qIAAA,uBAAuB,OAAA;AAEzB,6EAK0C;AADxC,+HAAA,oBAAoB,OAAA;AAEtB,yEAKwC;AADtC,2HAAA,kBAAkB,OAAA;AAEpB,+EAK2C;AADzC,iIAAA,qBAAqB,OAAA;AAEvB,+EAK2C;AADzC,iIAAA,qBAAqB,OAAA;AAEvB,qFAK8C;AAD5C,uIAAA,wBAAwB,OAAA;AAE1B,qFAK8C;AAD5C,uIAAA,wBAAwB,OAAA;AAE1B,+FAKmD;AADjD,iJAAA,6BAA6B,OAAA;AAE/B,+FAKmD;AADjD,iJAAA,6BAA6B,OAAA;AAE/B,+FAKmD;AADjD,iJAAA,6BAA6B,OAAA;AAE/B,+DAKmC;AADjC,iHAAA,aAAa,OAAA;AAEf,+DAKmC;AADjC,iHAAA,aAAa,OAAA;AAEf,2EAKyC;AADvC,6HAAA,mBAAmB,OAAA;AAErB,yFAKgD;AAD9C,2IAAA,0BAA0B,OAAA;AAE5B,qEAKsC;AADpC,uHAAA,gBAAgB,OAAA;AAElB,qEAKsC;AADpC,uHAAA,gBAAgB,OAAA;AAElB,yEAKwC;AADtC,2HAAA,kBAAkB,OAAA;AAEpB,mDAK6B;AAD3B,qGAAA,OAAO,OAAA;AAET,qDAK8B;AAD5B,uGAAA,QAAQ,OAAA;AAEV,6DAKkC;AADhC,+GAAA,YAAY,OAAA;AAEd,2DAKiC;AAD/B,6GAAA,WAAW,OAAA;AAEb,qEAKsC;AADpC,uHAAA,gBAAgB,OAAA;AAElB,uEAKuC;AADrC,yHAAA,iBAAiB,OAAA;AAEnB,uEAKuC;AADrC,yHAAA,iBAAiB,OAAA;AAEnB,+EAK2C;AADzC,iIAAA,qBAAqB,OAAA;AAEvB,iEAKoC;AADlC,mHAAA,cAAc,OAAA;AAEhB,2EAKyC;AADvC,6HAAA,mBAAmB,OAAA;AAErB,yEAKwC;AADtC,2HAAA,kBAAkB,OAAA;AAEpB,mEAKqC;AADnC,qHAAA,eAAe,OAAA;AAEjB,mEAKqC;AADnC,qHAAA,eAAe,OAAA;AAEjB,2EAKyC;AADvC,6HAAA,mBAAmB,OAAA;AAErB,iEAKoC;AADlC,mHAAA,cAAc,OAAA;AAEhB,2DAKiC;AAD/B,6GAAA,WAAW,OAAA;AAGb,mDAA8C;AAArC,6GAAA,WAAW,OAAA;AAEpB,8CAA2B;AAE3B,wDAGiC;AAD/B,8GAAA,eAAe,OAAA;AAEjB,wDAGiC;AAD/B,8GAAA,eAAe,OAAA;AAEjB,wDAGiC;AAD/B,8GAAA,eAAe,OAAA;AAEjB,wDAGiC;AAD/B,8GAAA,eAAe,OAAA;AAGjB,2CAIqB;AADnB,8GAAA,gBAAgB,OAAA;AAGlB,mDAKyB;AAFvB,6GAAA,WAAW,OAAA;AACX,sHAAA,oBAAoB,OAAA;AAmBtB,iGAKmD;AADjD,qJAAA,+BAA+B,OAAA;AAEjC,2FAKgD;AAD9C,+IAAA,4BAA4B,OAAA;AAE9B,2EAKwC;AADtC,+HAAA,oBAAoB,OAAA;AAEtB,+EAK0C;AADxC,mIAAA,sBAAsB,OAAA;AAExB,6DAKiC;AAD/B,iHAAA,aAAa,OAAA;AAEf,2FAKgD;AAD9C,+IAAA,4BAA4B,OAAA;AAE9B,+DAKkC;AADhC,mHAAA,cAAc,OAAA;AAEhB,iFAK2C;AADzC,qIAAA,uBAAuB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../op-stack/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,mFAK6C;AAD3C,qIAAA,uBAAuB,OAAA;AAEzB,mFAK6C;AAD3C,qIAAA,uBAAuB,OAAA;AAEzB,6EAK0C;AADxC,+HAAA,oBAAoB,OAAA;AAEtB,yEAKwC;AADtC,2HAAA,kBAAkB,OAAA;AAEpB,+EAK2C;AADzC,iIAAA,qBAAqB,OAAA;AAEvB,+EAK2C;AADzC,iIAAA,qBAAqB,OAAA;AAEvB,qFAK8C;AAD5C,uIAAA,wBAAwB,OAAA;AAE1B,qFAK8C;AAD5C,uIAAA,wBAAwB,OAAA;AAE1B,+FAKmD;AADjD,iJAAA,6BAA6B,OAAA;AAE/B,+FAKmD;AADjD,iJAAA,6BAA6B,OAAA;AAE/B,+FAKmD;AADjD,iJAAA,6BAA6B,OAAA;AAE/B,+DAKmC;AADjC,iHAAA,aAAa,OAAA;AAEf,+DAKmC;AADjC,iHAAA,aAAa,OAAA;AAEf,2EAKyC;AADvC,6HAAA,mBAAmB,OAAA;AAErB,yFAKgD;AAD9C,2IAAA,0BAA0B,OAAA;AAE5B,qEAKsC;AADpC,uHAAA,gBAAgB,OAAA;AAElB,qEAKsC;AADpC,uHAAA,gBAAgB,OAAA;AAElB,yEAKwC;AADtC,2HAAA,kBAAkB,OAAA;AAEpB,mDAK6B;AAD3B,qGAAA,OAAO,OAAA;AAET,qDAK8B;AAD5B,uGAAA,QAAQ,OAAA;AAEV,6DAKkC;AADhC,+GAAA,YAAY,OAAA;AAEd,2DAKiC;AAD/B,6GAAA,WAAW,OAAA;AAEb,qEAKsC;AADpC,uHAAA,gBAAgB,OAAA;AAElB,uEAKuC;AADrC,yHAAA,iBAAiB,OAAA;AAEnB,uEAKuC;AADrC,yHAAA,iBAAiB,OAAA;AAEnB,+EAK2C;AADzC,iIAAA,qBAAqB,OAAA;AAEvB,iEAKoC;AADlC,mHAAA,cAAc,OAAA;AAEhB,2EAKyC;AADvC,6HAAA,mBAAmB,OAAA;AAErB,yEAKwC;AADtC,2HAAA,kBAAkB,OAAA;AAEpB,mEAKqC;AADnC,qHAAA,eAAe,OAAA;AAEjB,mEAKqC;AADnC,qHAAA,eAAe,OAAA;AAEjB,2EAKyC;AADvC,6HAAA,mBAAmB,OAAA;AAErB,iEAKoC;AADlC,mHAAA,cAAc,OAAA;AAEhB,2DAKiC;AAD/B,6GAAA,WAAW,OAAA;AAGb,mDAA8C;AAArC,6GAAA,WAAW,OAAA;AAEpB,8CAA2B;AAC3B,wDAGiC;AAD/B,8GAAA,eAAe,OAAA;AAEjB,wDAGiC;AAD/B,8GAAA,eAAe,OAAA;AAEjB,wDAGiC;AAD/B,8GAAA,eAAe,OAAA;AAEjB,wDAGiC;AAD/B,8GAAA,eAAe,OAAA;AAEjB,+CAAgE;AAAvD,+GAAA,eAAe,OAAA;AAAE,8GAAA,cAAc,OAAA;AAExC,2CAIqB;AADnB,8GAAA,gBAAgB,OAAA;AAGlB,mDAKyB;AAFvB,6GAAA,WAAW,OAAA;AACX,sHAAA,oBAAoB,OAAA;AAmBtB,iGAKmD;AADjD,qJAAA,+BAA+B,OAAA;AAEjC,2FAKgD;AAD9C,+IAAA,4BAA4B,OAAA;AAE9B,yFAK+C;AAD7C,6IAAA,2BAA2B,OAAA;AAE7B,2EAKwC;AADtC,+HAAA,oBAAoB,OAAA;AAEtB,+EAK0C;AADxC,mIAAA,sBAAsB,OAAA;AAExB,6DAKiC;AAD/B,iHAAA,aAAa,OAAA;AAEf,2FAKgD;AAD9C,+IAAA,4BAA4B,OAAA;AAE9B,+DAKkC;AADhC,mHAAA,cAAc,OAAA;AAEhB,iFAK2C;AADzC,qIAAA,uBAAuB,OAAA"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getL2BlockNumberAtTimestamp = getL2BlockNumberAtTimestamp;
4
+ const getBlock_js_1 = require("../../actions/public/getBlock.js");
5
+ async function getL2BlockNumberAtTimestamp(client, parameters) {
6
+ const latest = await (0, getBlock_js_1.getBlock)(client);
7
+ if (latest.number === null)
8
+ throw new Error('Latest L2 block number is unavailable.');
9
+ if (latest.timestamp === undefined)
10
+ throw new Error('Latest L2 block timestamp is unavailable.');
11
+ if (latest.number === 0n)
12
+ throw new Error('Cannot derive L2 block time from genesis block.');
13
+ const parent = await (0, getBlock_js_1.getBlock)(client, { blockNumber: latest.number - 1n });
14
+ if (parent.timestamp === undefined)
15
+ throw new Error('Parent L2 block timestamp is unavailable.');
16
+ const blockTime = latest.timestamp - parent.timestamp;
17
+ if (blockTime === 0n)
18
+ throw new Error('L2 block time is zero.');
19
+ const timeDiff = latest.timestamp - parameters.timestamp;
20
+ if (timeDiff < 0n)
21
+ throw new Error('Timestamp is in the future relative to L2 head.');
22
+ if (timeDiff % blockTime !== 0n)
23
+ throw new Error('Timestamp does not align with the L2 block time.');
24
+ const blocksToLookBack = timeDiff / blockTime;
25
+ if (blocksToLookBack > latest.number)
26
+ throw new Error('Timestamp predates L2 genesis.');
27
+ return latest.number - blocksToLookBack;
28
+ }
29
+ //# sourceMappingURL=getL2BlockNumberAtTimestamp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getL2BlockNumberAtTimestamp.js","sourceRoot":"","sources":["../../../op-stack/utils/getL2BlockNumberAtTimestamp.ts"],"names":[],"mappings":";;AA0BA,kEA8BC;AAxDD,kEAGyC;AAuBlC,KAAK,UAAU,2BAA2B,CAC/C,MAAiE,EACjE,UAAiD;IAEjD,MAAM,MAAM,GAAG,MAAM,IAAA,sBAAQ,EAAC,MAAM,CAAC,CAAA;IACrC,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI;QACxB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;IAC3D,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS;QAChC,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;IAC9D,IAAI,MAAM,CAAC,MAAM,KAAK,EAAE;QACtB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;IAEpE,MAAM,MAAM,GAAG,MAAM,IAAA,sBAAQ,EAAC,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC,CAAA;IAC1E,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS;QAChC,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;IAE9D,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;IACrD,IAAI,SAAS,KAAK,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;IAE/D,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAA;IACxD,IAAI,QAAQ,GAAG,EAAE;QACf,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;IACpE,IAAI,QAAQ,GAAG,SAAS,KAAK,EAAE;QAC7B,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;IAErE,MAAM,gBAAgB,GAAG,QAAQ,GAAG,SAAS,CAAA;IAC7C,IAAI,gBAAgB,GAAG,MAAM,CAAC,MAAM;QAClC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;IAEnD,OAAO,MAAM,CAAC,MAAM,GAAG,gBAAgB,CAAA;AACzC,CAAC"}