viem 2.56.8 → 2.57.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 (359) hide show
  1. package/CHANGELOG.md +78 -0
  2. package/README.md +0 -1
  3. package/_cjs/actions/index.js +5 -3
  4. package/_cjs/actions/index.js.map +1 -1
  5. package/_cjs/actions/public/getStorageValues.js +17 -0
  6. package/_cjs/actions/public/getStorageValues.js.map +1 -0
  7. package/_cjs/actions/public/simulateBlocks.js +2 -0
  8. package/_cjs/actions/public/simulateBlocks.js.map +1 -1
  9. package/_cjs/actions/public/waitForTransactionReceipt.js +12 -1
  10. package/_cjs/actions/public/waitForTransactionReceipt.js.map +1 -1
  11. package/_cjs/chains/definitions/blockdag.js +23 -0
  12. package/_cjs/chains/definitions/blockdag.js.map +1 -0
  13. package/_cjs/chains/definitions/candyChain.js +29 -0
  14. package/_cjs/chains/definitions/candyChain.js.map +1 -0
  15. package/_cjs/chains/definitions/creditCoin3Devnet.js +6 -0
  16. package/_cjs/chains/definitions/creditCoin3Devnet.js.map +1 -1
  17. package/_cjs/chains/definitions/creditCoin3Mainnet.js +6 -0
  18. package/_cjs/chains/definitions/creditCoin3Mainnet.js.map +1 -1
  19. package/_cjs/chains/definitions/creditCoin3Testnet.js +6 -0
  20. package/_cjs/chains/definitions/creditCoin3Testnet.js.map +1 -1
  21. package/_cjs/chains/definitions/kortana.js +23 -0
  22. package/_cjs/chains/definitions/kortana.js.map +1 -0
  23. package/_cjs/chains/definitions/rabbitChainTestnet.js +24 -0
  24. package/_cjs/chains/definitions/rabbitChainTestnet.js.map +1 -0
  25. package/_cjs/chains/index.js +22 -14
  26. package/_cjs/chains/index.js.map +1 -1
  27. package/_cjs/clients/createClientResolver.js +45 -0
  28. package/_cjs/clients/createClientResolver.js.map +1 -0
  29. package/_cjs/clients/decorators/public.js +2 -0
  30. package/_cjs/clients/decorators/public.js.map +1 -1
  31. package/_cjs/errors/version.js +1 -1
  32. package/_cjs/index.js +13 -9
  33. package/_cjs/index.js.map +1 -1
  34. package/_cjs/op-stack/actions/getGame.js +1 -1
  35. package/_cjs/op-stack/actions/getGame.js.map +1 -1
  36. package/_cjs/op-stack/actions/getGames.js +1 -1
  37. package/_cjs/op-stack/actions/getGames.js.map +1 -1
  38. package/_cjs/op-stack/actions/getTimeToNextGame.js +1 -1
  39. package/_cjs/op-stack/actions/getTimeToNextGame.js.map +1 -1
  40. package/_cjs/op-stack/actions/getTimeToNextL2Output.js +1 -1
  41. package/_cjs/op-stack/actions/getTimeToNextL2Output.js.map +1 -1
  42. package/_cjs/tempo/Abis.js +1211 -32
  43. package/_cjs/tempo/Abis.js.map +1 -1
  44. package/_cjs/tempo/Addresses.js +2 -1
  45. package/_cjs/tempo/Addresses.js.map +1 -1
  46. package/_cjs/tempo/Client.js +2 -10
  47. package/_cjs/tempo/Client.js.map +1 -1
  48. package/_cjs/tempo/Decorator.js +12 -0
  49. package/_cjs/tempo/Decorator.js.map +1 -1
  50. package/_cjs/tempo/ExecutionError.js +290 -0
  51. package/_cjs/tempo/ExecutionError.js.map +1 -0
  52. package/_cjs/tempo/Relay.js +88 -0
  53. package/_cjs/tempo/Relay.js.map +1 -0
  54. package/_cjs/tempo/Selectors.js +7 -4
  55. package/_cjs/tempo/Selectors.js.map +1 -1
  56. package/_cjs/tempo/Transaction.js.map +1 -1
  57. package/_cjs/tempo/Transport.js +21 -12
  58. package/_cjs/tempo/Transport.js.map +1 -1
  59. package/_cjs/tempo/actions/index.js +2 -1
  60. package/_cjs/tempo/actions/index.js.map +1 -1
  61. package/_cjs/tempo/actions/propAmm.js +349 -0
  62. package/_cjs/tempo/actions/propAmm.js.map +1 -0
  63. package/_cjs/tempo/chainConfig.js +3 -0
  64. package/_cjs/tempo/chainConfig.js.map +1 -1
  65. package/_cjs/tempo/index.js +3 -3
  66. package/_cjs/tempo/index.js.map +1 -1
  67. package/_cjs/tempo/internal/relay/cache.js +74 -0
  68. package/_cjs/tempo/internal/relay/cache.js.map +1 -0
  69. package/_cjs/tempo/internal/relay/deadline.js +35 -0
  70. package/_cjs/tempo/internal/relay/deadline.js.map +1 -0
  71. package/_cjs/tempo/internal/relay/error.js +102 -0
  72. package/_cjs/tempo/internal/relay/error.js.map +1 -0
  73. package/_cjs/tempo/internal/relay/feePayer.js +426 -0
  74. package/_cjs/tempo/internal/relay/feePayer.js.map +1 -0
  75. package/_cjs/tempo/internal/relay/feeToken.js +143 -0
  76. package/_cjs/tempo/internal/relay/feeToken.js.map +1 -0
  77. package/_cjs/tempo/{Multisig.js → internal/relay/multisig.js} +132 -122
  78. package/_cjs/tempo/internal/relay/multisig.js.map +1 -0
  79. package/_cjs/tempo/internal/relay/plugin.js +13 -0
  80. package/_cjs/tempo/internal/relay/plugin.js.map +1 -0
  81. package/_cjs/tempo/internal/relay/preflight.js +58 -0
  82. package/_cjs/tempo/internal/relay/preflight.js.map +1 -0
  83. package/_cjs/tempo/internal/relay/request.js +319 -0
  84. package/_cjs/tempo/internal/relay/request.js.map +1 -0
  85. package/_cjs/tempo/internal/relay/simulate.js +267 -0
  86. package/_cjs/tempo/internal/relay/simulate.js.map +1 -0
  87. package/_cjs/tempo/internal/relay/utils.js +174 -0
  88. package/_cjs/tempo/internal/relay/utils.js.map +1 -0
  89. package/_cjs/tempo/internal/relay/virtualAddress.js +78 -0
  90. package/_cjs/tempo/internal/relay/virtualAddress.js.map +1 -0
  91. package/_cjs/tempo/internal/relay.js +139 -0
  92. package/_cjs/tempo/internal/relay.js.map +1 -0
  93. package/_cjs/tempo/multisig/Config.js +0 -2
  94. package/_cjs/tempo/multisig/Config.js.map +1 -1
  95. package/_cjs/tempo/multisig/Operation.js +1 -2
  96. package/_cjs/tempo/multisig/Operation.js.map +1 -1
  97. package/_cjs/tokens/definitions/eurc.js +1 -0
  98. package/_cjs/tokens/definitions/eurc.js.map +1 -1
  99. package/_cjs/tokens/definitions/usdc.js +1 -0
  100. package/_cjs/tokens/definitions/usdc.js.map +1 -1
  101. package/_cjs/utils/siwe/parseSiweMessage.js +3 -3
  102. package/_cjs/utils/siwe/parseSiweMessage.js.map +1 -1
  103. package/_esm/actions/index.js +1 -0
  104. package/_esm/actions/index.js.map +1 -1
  105. package/_esm/actions/public/getStorageValues.js +39 -0
  106. package/_esm/actions/public/getStorageValues.js.map +1 -0
  107. package/_esm/actions/public/simulateBlocks.js +4 -0
  108. package/_esm/actions/public/simulateBlocks.js.map +1 -1
  109. package/_esm/actions/public/waitForTransactionReceipt.js +15 -1
  110. package/_esm/actions/public/waitForTransactionReceipt.js.map +1 -1
  111. package/_esm/chains/definitions/blockdag.js +20 -0
  112. package/_esm/chains/definitions/blockdag.js.map +1 -0
  113. package/_esm/chains/definitions/candyChain.js +26 -0
  114. package/_esm/chains/definitions/candyChain.js.map +1 -0
  115. package/_esm/chains/definitions/creditCoin3Devnet.js +6 -0
  116. package/_esm/chains/definitions/creditCoin3Devnet.js.map +1 -1
  117. package/_esm/chains/definitions/creditCoin3Mainnet.js +6 -0
  118. package/_esm/chains/definitions/creditCoin3Mainnet.js.map +1 -1
  119. package/_esm/chains/definitions/creditCoin3Testnet.js +6 -0
  120. package/_esm/chains/definitions/creditCoin3Testnet.js.map +1 -1
  121. package/_esm/chains/definitions/kortana.js +20 -0
  122. package/_esm/chains/definitions/kortana.js.map +1 -0
  123. package/_esm/chains/definitions/rabbitChainTestnet.js +21 -0
  124. package/_esm/chains/definitions/rabbitChainTestnet.js.map +1 -0
  125. package/_esm/chains/index.js +4 -0
  126. package/_esm/chains/index.js.map +1 -1
  127. package/_esm/clients/createClientResolver.js +64 -0
  128. package/_esm/clients/createClientResolver.js.map +1 -0
  129. package/_esm/clients/decorators/public.js +2 -0
  130. package/_esm/clients/decorators/public.js.map +1 -1
  131. package/_esm/errors/version.js +1 -1
  132. package/_esm/index.js +2 -0
  133. package/_esm/index.js.map +1 -1
  134. package/_esm/op-stack/actions/getGame.js +1 -1
  135. package/_esm/op-stack/actions/getGame.js.map +1 -1
  136. package/_esm/op-stack/actions/getGames.js +1 -1
  137. package/_esm/op-stack/actions/getGames.js.map +1 -1
  138. package/_esm/op-stack/actions/getTimeToNextGame.js +2 -2
  139. package/_esm/op-stack/actions/getTimeToNextGame.js.map +1 -1
  140. package/_esm/op-stack/actions/getTimeToNextL2Output.js +2 -2
  141. package/_esm/op-stack/actions/getTimeToNextL2Output.js.map +1 -1
  142. package/_esm/tempo/Abis.js +1214 -34
  143. package/_esm/tempo/Abis.js.map +1 -1
  144. package/_esm/tempo/Addresses.js +2 -0
  145. package/_esm/tempo/Addresses.js.map +1 -1
  146. package/_esm/tempo/Client.js +8 -14
  147. package/_esm/tempo/Client.js.map +1 -1
  148. package/_esm/tempo/Decorator.js +12 -0
  149. package/_esm/tempo/Decorator.js.map +1 -1
  150. package/_esm/tempo/ExecutionError.js +306 -0
  151. package/_esm/tempo/ExecutionError.js.map +1 -0
  152. package/_esm/tempo/Relay.js +170 -0
  153. package/_esm/tempo/Relay.js.map +1 -0
  154. package/_esm/tempo/Selectors.js +6 -3
  155. package/_esm/tempo/Selectors.js.map +1 -1
  156. package/_esm/tempo/Transaction.js.map +1 -1
  157. package/_esm/tempo/Transport.js +21 -46
  158. package/_esm/tempo/Transport.js.map +1 -1
  159. package/_esm/tempo/actions/index.js +1 -0
  160. package/_esm/tempo/actions/index.js.map +1 -1
  161. package/_esm/tempo/actions/propAmm.js +539 -0
  162. package/_esm/tempo/actions/propAmm.js.map +1 -0
  163. package/_esm/tempo/chainConfig.js +4 -0
  164. package/_esm/tempo/chainConfig.js.map +1 -1
  165. package/_esm/tempo/index.js +8 -3
  166. package/_esm/tempo/index.js.map +1 -1
  167. package/_esm/tempo/internal/relay/cache.js +72 -0
  168. package/_esm/tempo/internal/relay/cache.js.map +1 -0
  169. package/_esm/tempo/internal/relay/deadline.js +34 -0
  170. package/_esm/tempo/internal/relay/deadline.js.map +1 -0
  171. package/_esm/tempo/internal/relay/error.js +101 -0
  172. package/_esm/tempo/internal/relay/error.js.map +1 -0
  173. package/_esm/tempo/internal/relay/feePayer.js +442 -0
  174. package/_esm/tempo/internal/relay/feePayer.js.map +1 -0
  175. package/_esm/tempo/internal/relay/feeToken.js +143 -0
  176. package/_esm/tempo/internal/relay/feeToken.js.map +1 -0
  177. package/_esm/tempo/{Multisig.js → internal/relay/multisig.js} +133 -129
  178. package/_esm/tempo/internal/relay/multisig.js.map +1 -0
  179. package/_esm/tempo/internal/relay/plugin.js +10 -0
  180. package/_esm/tempo/internal/relay/plugin.js.map +1 -0
  181. package/_esm/tempo/internal/relay/preflight.js +57 -0
  182. package/_esm/tempo/internal/relay/preflight.js.map +1 -0
  183. package/_esm/tempo/internal/relay/request.js +321 -0
  184. package/_esm/tempo/internal/relay/request.js.map +1 -0
  185. package/_esm/tempo/internal/relay/simulate.js +277 -0
  186. package/_esm/tempo/internal/relay/simulate.js.map +1 -0
  187. package/_esm/tempo/internal/relay/utils.js +174 -0
  188. package/_esm/tempo/internal/relay/utils.js.map +1 -0
  189. package/_esm/tempo/internal/relay/virtualAddress.js +73 -0
  190. package/_esm/tempo/internal/relay/virtualAddress.js.map +1 -0
  191. package/_esm/tempo/internal/relay.js +138 -0
  192. package/_esm/tempo/internal/relay.js.map +1 -0
  193. package/_esm/tempo/multisig/Config.js +2 -1
  194. package/_esm/tempo/multisig/Config.js.map +1 -1
  195. package/_esm/tempo/multisig/Operation.js +1 -1
  196. package/_esm/tempo/multisig/Operation.js.map +1 -1
  197. package/_esm/tokens/definitions/eurc.js +1 -0
  198. package/_esm/tokens/definitions/eurc.js.map +1 -1
  199. package/_esm/tokens/definitions/usdc.js +1 -0
  200. package/_esm/tokens/definitions/usdc.js.map +1 -1
  201. package/_esm/utils/siwe/parseSiweMessage.js +3 -3
  202. package/_esm/utils/siwe/parseSiweMessage.js.map +1 -1
  203. package/_types/actions/index.d.ts +1 -0
  204. package/_types/actions/index.d.ts.map +1 -1
  205. package/_types/actions/public/getStorageValues.d.ts +59 -0
  206. package/_types/actions/public/getStorageValues.d.ts.map +1 -0
  207. package/_types/actions/public/simulateBlocks.d.ts +8 -0
  208. package/_types/actions/public/simulateBlocks.d.ts.map +1 -1
  209. package/_types/actions/public/waitForTransactionReceipt.d.ts.map +1 -1
  210. package/_types/chains/definitions/blockdag.d.ts +51 -0
  211. package/_types/chains/definitions/blockdag.d.ts.map +1 -0
  212. package/_types/chains/definitions/candyChain.d.ts +48 -0
  213. package/_types/chains/definitions/candyChain.d.ts.map +1 -0
  214. package/_types/chains/definitions/creditCoin3Devnet.d.ts +6 -9
  215. package/_types/chains/definitions/creditCoin3Devnet.d.ts.map +1 -1
  216. package/_types/chains/definitions/creditCoin3Mainnet.d.ts +6 -9
  217. package/_types/chains/definitions/creditCoin3Mainnet.d.ts.map +1 -1
  218. package/_types/chains/definitions/creditCoin3Testnet.d.ts +6 -9
  219. package/_types/chains/definitions/creditCoin3Testnet.d.ts.map +1 -1
  220. package/_types/chains/definitions/kortana.d.ts +51 -0
  221. package/_types/chains/definitions/kortana.d.ts.map +1 -0
  222. package/_types/chains/definitions/rabbitChainTestnet.d.ts +51 -0
  223. package/_types/chains/definitions/rabbitChainTestnet.d.ts.map +1 -0
  224. package/_types/chains/index.d.ts +4 -0
  225. package/_types/chains/index.d.ts.map +1 -1
  226. package/_types/clients/createClientResolver.d.ts +76 -0
  227. package/_types/clients/createClientResolver.d.ts.map +1 -0
  228. package/_types/clients/decorators/public.d.ts +11 -0
  229. package/_types/clients/decorators/public.d.ts.map +1 -1
  230. package/_types/errors/version.d.ts +1 -1
  231. package/_types/index.d.ts +3 -0
  232. package/_types/index.d.ts.map +1 -1
  233. package/_types/op-stack/actions/getGame.d.ts.map +1 -1
  234. package/_types/tempo/Abis.d.ts +14686 -9568
  235. package/_types/tempo/Abis.d.ts.map +1 -1
  236. package/_types/tempo/Addresses.d.ts +2 -0
  237. package/_types/tempo/Addresses.d.ts.map +1 -1
  238. package/_types/tempo/Capabilities.d.ts +7 -28
  239. package/_types/tempo/Capabilities.d.ts.map +1 -1
  240. package/_types/tempo/Client.d.ts +6 -15
  241. package/_types/tempo/Client.d.ts.map +1 -1
  242. package/_types/tempo/Decorator.d.ts +205 -1
  243. package/_types/tempo/Decorator.d.ts.map +1 -1
  244. package/_types/tempo/ExecutionError.d.ts +79 -0
  245. package/_types/tempo/ExecutionError.d.ts.map +1 -0
  246. package/_types/tempo/Relay.d.ts +302 -0
  247. package/_types/tempo/Relay.d.ts.map +1 -0
  248. package/_types/tempo/Selectors.d.ts +6 -3
  249. package/_types/tempo/Selectors.d.ts.map +1 -1
  250. package/_types/tempo/Transaction.d.ts +2 -1
  251. package/_types/tempo/Transaction.d.ts.map +1 -1
  252. package/_types/tempo/Transport.d.ts +15 -29
  253. package/_types/tempo/Transport.d.ts.map +1 -1
  254. package/_types/tempo/actions/earn.d.ts +621 -1
  255. package/_types/tempo/actions/earn.d.ts.map +1 -1
  256. package/_types/tempo/actions/index.d.ts +1 -0
  257. package/_types/tempo/actions/index.d.ts.map +1 -1
  258. package/_types/tempo/actions/propAmm.d.ts +2228 -0
  259. package/_types/tempo/actions/propAmm.d.ts.map +1 -0
  260. package/_types/tempo/chainConfig.d.ts.map +1 -1
  261. package/_types/tempo/index.d.ts +8 -3
  262. package/_types/tempo/index.d.ts.map +1 -1
  263. package/_types/tempo/internal/relay/cache.d.ts +9 -0
  264. package/_types/tempo/internal/relay/cache.d.ts.map +1 -0
  265. package/_types/tempo/internal/relay/deadline.d.ts +4 -0
  266. package/_types/tempo/internal/relay/deadline.d.ts.map +1 -0
  267. package/_types/tempo/internal/relay/error.d.ts +47 -0
  268. package/_types/tempo/internal/relay/error.d.ts.map +1 -0
  269. package/_types/tempo/internal/relay/feePayer.d.ts +70 -0
  270. package/_types/tempo/internal/relay/feePayer.d.ts.map +1 -0
  271. package/_types/tempo/internal/relay/feeToken.d.ts +38 -0
  272. package/_types/tempo/internal/relay/feeToken.d.ts.map +1 -0
  273. package/_types/tempo/internal/relay/multisig.d.ts +4 -0
  274. package/_types/tempo/internal/relay/multisig.d.ts.map +1 -0
  275. package/_types/tempo/internal/relay/plugin.d.ts +5 -0
  276. package/_types/tempo/internal/relay/plugin.d.ts.map +1 -0
  277. package/_types/tempo/internal/relay/preflight.d.ts +17 -0
  278. package/_types/tempo/internal/relay/preflight.d.ts.map +1 -0
  279. package/_types/tempo/internal/relay/request.d.ts +16 -0
  280. package/_types/tempo/internal/relay/request.d.ts.map +1 -0
  281. package/_types/tempo/internal/relay/simulate.d.ts +59 -0
  282. package/_types/tempo/internal/relay/simulate.d.ts.map +1 -0
  283. package/_types/tempo/internal/relay/utils.d.ts +294 -0
  284. package/_types/tempo/internal/relay/utils.d.ts.map +1 -0
  285. package/_types/tempo/internal/relay/virtualAddress.d.ts +9 -0
  286. package/_types/tempo/internal/relay/virtualAddress.d.ts.map +1 -0
  287. package/_types/tempo/internal/relay.d.ts +4 -0
  288. package/_types/tempo/internal/relay.d.ts.map +1 -0
  289. package/_types/tempo/multisig/Config.d.ts +0 -13
  290. package/_types/tempo/multisig/Config.d.ts.map +1 -1
  291. package/_types/tempo/multisig/Operation.d.ts +0 -5
  292. package/_types/tempo/multisig/Operation.d.ts.map +1 -1
  293. package/_types/tokens/definitions/eurc.d.ts +1 -0
  294. package/_types/tokens/definitions/eurc.d.ts.map +1 -1
  295. package/_types/tokens/definitions/usdc.d.ts +1 -0
  296. package/_types/tokens/definitions/usdc.d.ts.map +1 -1
  297. package/_types/tokens/sets.d.ts +3 -0
  298. package/_types/tokens/sets.d.ts.map +1 -1
  299. package/_types/types/eip1193.d.ts +20 -0
  300. package/_types/types/eip1193.d.ts.map +1 -1
  301. package/_types/utils/siwe/parseSiweMessage.d.ts.map +1 -1
  302. package/actions/index.ts +6 -0
  303. package/actions/public/getStorageValues.ts +93 -0
  304. package/actions/public/simulateBlocks.ts +13 -0
  305. package/actions/public/waitForTransactionReceipt.ts +16 -2
  306. package/chains/definitions/blockdag.ts +20 -0
  307. package/chains/definitions/candyChain.ts +26 -0
  308. package/chains/definitions/creditCoin3Devnet.ts +6 -0
  309. package/chains/definitions/creditCoin3Mainnet.ts +6 -0
  310. package/chains/definitions/creditCoin3Testnet.ts +6 -0
  311. package/chains/definitions/kortana.ts +20 -0
  312. package/chains/definitions/rabbitChainTestnet.ts +21 -0
  313. package/chains/index.ts +4 -0
  314. package/clients/createClientResolver.ts +191 -0
  315. package/clients/decorators/public.ts +18 -0
  316. package/errors/version.ts +1 -1
  317. package/index.ts +11 -0
  318. package/op-stack/actions/getGame.ts +3 -1
  319. package/op-stack/actions/getGames.ts +1 -1
  320. package/op-stack/actions/getTimeToNextGame.ts +2 -2
  321. package/op-stack/actions/getTimeToNextL2Output.ts +2 -2
  322. package/package.json +1 -1
  323. package/tempo/Abis.ts +1218 -34
  324. package/tempo/Addresses.ts +2 -0
  325. package/tempo/Capabilities.ts +7 -29
  326. package/tempo/Client.ts +8 -38
  327. package/tempo/Decorator.ts +239 -3
  328. package/tempo/ExecutionError.ts +418 -0
  329. package/tempo/Relay.ts +428 -0
  330. package/tempo/Selectors.ts +10 -4
  331. package/tempo/Transaction.ts +2 -1
  332. package/tempo/Transport.ts +69 -60
  333. package/tempo/actions/index.ts +1 -0
  334. package/tempo/actions/propAmm.ts +998 -0
  335. package/tempo/chainConfig.ts +4 -0
  336. package/tempo/index.ts +7 -3
  337. package/tempo/internal/relay/cache.ts +82 -0
  338. package/tempo/internal/relay/deadline.ts +45 -0
  339. package/tempo/internal/relay/error.ts +128 -0
  340. package/tempo/internal/relay/feePayer.ts +692 -0
  341. package/tempo/internal/relay/feeToken.ts +190 -0
  342. package/tempo/{Multisig.ts → internal/relay/multisig.ts} +162 -193
  343. package/tempo/internal/relay/plugin.ts +13 -0
  344. package/tempo/internal/relay/preflight.ts +81 -0
  345. package/tempo/internal/relay/request.ts +391 -0
  346. package/tempo/internal/relay/simulate.ts +367 -0
  347. package/tempo/internal/relay/utils.ts +202 -0
  348. package/tempo/internal/relay/virtualAddress.ts +95 -0
  349. package/tempo/internal/relay.ts +158 -0
  350. package/tempo/multisig/Config.ts +3 -2
  351. package/tempo/multisig/Operation.ts +1 -1
  352. package/tokens/definitions/eurc.ts +1 -0
  353. package/tokens/definitions/usdc.ts +1 -0
  354. package/types/eip1193.ts +20 -0
  355. package/utils/siwe/parseSiweMessage.ts +21 -13
  356. package/_cjs/tempo/Multisig.js.map +0 -1
  357. package/_esm/tempo/Multisig.js.map +0 -1
  358. package/_types/tempo/Multisig.d.ts +0 -37
  359. package/_types/tempo/Multisig.d.ts.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feePayer.js","sourceRoot":"","sources":["../../../../tempo/internal/relay/feePayer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,143 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.create = create;
4
+ exports.getDefaultTokens = getDefaultTokens;
5
+ exports.resolveFeeToken = resolveFeeToken;
6
+ exports.resolveTokenMetadata = resolveTokenMetadata;
7
+ const ox_1 = require("ox");
8
+ const sets_js_1 = require("../../../tokens/sets.js");
9
+ const Actions = require("../../actions/index.js");
10
+ const Store = require("./cache.js");
11
+ const Preflight = require("./preflight.js");
12
+ const Utils = require("./utils.js");
13
+ const virtualAddress_js_1 = require("./virtualAddress.js");
14
+ function create() {
15
+ return {
16
+ async handleRequest(context, next) {
17
+ const { request } = context;
18
+ if (request.method !== 'eth_fillTransaction')
19
+ return next();
20
+ const parameters = request.params[0];
21
+ const transaction = Utils.normalizeFillTransactionRequest(parameters);
22
+ if (transaction.feeToken) {
23
+ context.request = {
24
+ ...request,
25
+ params: [
26
+ Utils.formatFillTransactionRequest(context.client, transaction),
27
+ ],
28
+ };
29
+ return next();
30
+ }
31
+ const tokens = await context.resolveTokens();
32
+ const candidates = [
33
+ ...tokens,
34
+ ...callTargetTokens(transaction).filter((token) => !tokens.some((candidate) => candidate.toLowerCase() === token.toLowerCase())),
35
+ ];
36
+ const resolved = transaction.feePayer
37
+ ? { feeToken: tokens[0], virtualAddresses: undefined }
38
+ : await resolveFeeToken(context.client, {
39
+ account: transaction.from,
40
+ feeToken: transaction.feeToken,
41
+ targets: (0, virtualAddress_js_1.getVirtualAddressTargets)((0, virtualAddress_js_1.extractCalls)(transaction)),
42
+ tokens: candidates,
43
+ });
44
+ const { feeToken, virtualAddresses } = resolved;
45
+ const selected = { ...transaction, ...(feeToken ? { feeToken } : {}) };
46
+ context.request = {
47
+ ...request,
48
+ params: [Utils.formatFillTransactionRequest(context.client, selected)],
49
+ };
50
+ await next();
51
+ const result = context.result;
52
+ context.result = {
53
+ ...result,
54
+ tx: {
55
+ ...result.tx,
56
+ ...(!result.tx.feeToken && feeToken ? { feeToken } : {}),
57
+ },
58
+ ...(virtualAddresses
59
+ ? { capabilities: { ...result.capabilities, virtualAddresses } }
60
+ : {}),
61
+ };
62
+ },
63
+ };
64
+ }
65
+ async function getDefaultTokens(chainId) {
66
+ return sets_js_1.tokens.tempo.flatMap((token) => {
67
+ const address = token.addresses[chainId];
68
+ return address ? [address] : [];
69
+ });
70
+ }
71
+ async function resolveFeeToken(client, options) {
72
+ const { feeToken, account, exclude, tokens } = options;
73
+ if (feeToken || !account)
74
+ return { feeToken, virtualAddresses: undefined };
75
+ const candidates = [
76
+ ...new Set(tokens?.map((token) => token.toLowerCase())),
77
+ ];
78
+ if (candidates.length > 100)
79
+ throw new ox_1.RpcResponse.InvalidParamsError({
80
+ message: 'Fee-token candidates exceed the limit of 100 tokens.',
81
+ });
82
+ const { preferredToken, preferredBalance, balances, virtualAddresses } = await Preflight.read(client, {
83
+ account,
84
+ tokens: candidates,
85
+ targets: options.targets,
86
+ });
87
+ const minimumBalance = options.minimumBalance ?? 1n;
88
+ if (preferredToken.toLowerCase() !== exclude?.toLowerCase() &&
89
+ preferredBalance >= minimumBalance)
90
+ return { feeToken: preferredToken, virtualAddresses };
91
+ let best;
92
+ for (const asset of balances) {
93
+ if (asset.balance < minimumBalance ||
94
+ asset.address.toLowerCase() === exclude?.toLowerCase())
95
+ continue;
96
+ if (!best || asset.balance > best.balance)
97
+ best = asset;
98
+ }
99
+ return { feeToken: best?.address, virtualAddresses };
100
+ }
101
+ function callTargetTokens(transaction) {
102
+ const calls = transaction.calls;
103
+ if (!calls)
104
+ return [];
105
+ const out = [];
106
+ const seen = new Set();
107
+ for (const c of calls) {
108
+ if (!c.to)
109
+ continue;
110
+ const lower = c.to.toLowerCase();
111
+ if (!lower.startsWith('0x20c0'))
112
+ continue;
113
+ if (seen.has(lower))
114
+ continue;
115
+ seen.add(lower);
116
+ out.push(c.to);
117
+ if (out.length > 100)
118
+ throw new ox_1.RpcResponse.InvalidParamsError({
119
+ message: 'Fee-token candidates exceed the limit of 100 tokens.',
120
+ });
121
+ }
122
+ return out;
123
+ }
124
+ async function resolveTokenMetadata(client, options) {
125
+ const { token, tokenMetadata, store } = options;
126
+ const meta = tokenMetadata?.[token] ?? tokenMetadata?.[token.toLowerCase()];
127
+ if (token.toLowerCase().startsWith('0x20c0') && meta)
128
+ return { decimals: 6, symbol: meta.symbol, name: meta.name };
129
+ const fetcher = () => Actions.token.getMetadata(client, { token });
130
+ const fallback = store
131
+ ? await Store.memoize(fetcher, {
132
+ key: `tokenMetadata:${client.chain?.id ?? 0}:${token.toLowerCase()}`,
133
+ store,
134
+ ttl: 24 * 60 * 60 * 1000,
135
+ })
136
+ : await fetcher();
137
+ return {
138
+ decimals: fallback.decimals ?? 6,
139
+ symbol: meta?.symbol || fallback.symbol,
140
+ name: meta?.name || fallback.name,
141
+ };
142
+ }
143
+ //# sourceMappingURL=feeToken.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feeToken.js","sourceRoot":"","sources":["../../../../tempo/internal/relay/feeToken.ts"],"names":[],"mappings":";;AAWA,wBA2DC;AAED,4CAOC;AAGD,0CAoCC;AAoCD,oDAyBC;AAlLD,2BAAgC;AAEhC,qDAA6D;AAC7D,kDAAiD;AAEjD,oCAAmC;AACnC,4CAA2C;AAC3C,oCAAmC;AACnC,2DAA4E;AAE5E,SAAgB,MAAM;IACpB,OAAO;QACL,KAAK,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI;YAC/B,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;YAC3B,IAAI,OAAO,CAAC,MAAM,KAAK,qBAAqB;gBAAE,OAAO,IAAI,EAAE,CAAA;YAC3D,MAAM,UAAU,GAAG,OAAO,CAAC,MAAO,CAAC,CAAC,CAA4B,CAAA;YAChE,MAAM,WAAW,GAAG,KAAK,CAAC,+BAA+B,CAAC,UAAU,CAAC,CAAA;YAErE,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC;gBACzB,OAAO,CAAC,OAAO,GAAG;oBAChB,GAAG,OAAO;oBACV,MAAM,EAAE;wBACN,KAAK,CAAC,4BAA4B,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC;qBAChE;iBACF,CAAA;gBACD,OAAO,IAAI,EAAE,CAAA;YACf,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,aAAa,EAAE,CAAA;YAC5C,MAAM,UAAU,GAAG;gBACjB,GAAG,MAAM;gBACT,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC,MAAM,CACrC,CAAC,KAAK,EAAE,EAAE,CACR,CAAC,MAAM,CAAC,IAAI,CACV,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,WAAW,EAAE,CAC/D,CACJ;aACF,CAAA;YAED,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ;gBACnC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,SAAS,EAAE;gBACtD,CAAC,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE;oBACpC,OAAO,EAAE,WAAW,CAAC,IAA2B;oBAChD,QAAQ,EAAE,WAAW,CAAC,QAA+B;oBACrD,OAAO,EAAE,IAAA,4CAAwB,EAAC,IAAA,gCAAY,EAAC,WAAW,CAAC,CAAC;oBAC5D,MAAM,EAAE,UAAU;iBACnB,CAAC,CAAA;YAEN,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,QAAQ,CAAA;YAC/C,MAAM,QAAQ,GAAG,EAAE,GAAG,WAAW,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAA;YACtE,OAAO,CAAC,OAAO,GAAG;gBAChB,GAAG,OAAO;gBACV,MAAM,EAAE,CAAC,KAAK,CAAC,4BAA4B,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;aACvE,CAAA;YACD,MAAM,IAAI,EAAE,CAAA;YACZ,MAAM,MAAM,GAAG,OAAO,CAAC,MAAiC,CAAA;YACxD,OAAO,CAAC,MAAM,GAAG;gBACf,GAAG,MAAM;gBAET,EAAE,EAAE;oBACF,GAAG,MAAM,CAAC,EAAE;oBACZ,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACzD;gBACD,GAAG,CAAC,gBAAgB;oBAClB,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,GAAG,MAAM,CAAC,YAAY,EAAE,gBAAgB,EAAE,EAAE;oBAChE,CAAC,CAAC,EAAE,CAAC;aACR,CAAA;QACH,CAAC;KACF,CAAA;AACH,CAAC;AAEM,KAAK,UAAU,gBAAgB,CACpC,OAAe;IAEf,OAAO,gBAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACvC,MAAM,OAAO,GAAI,KAAK,CAAC,SAAqC,CAAC,OAAO,CAAC,CAAA;QACrE,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IACjC,CAAC,CAAC,CAAA;AACJ,CAAC;AAGM,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,OAAgC;IAEhC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;IACtD,IAAI,QAAQ,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAA;IAC1E,MAAM,UAAU,GAAG;QACjB,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAa,CAAC,CAAC;KACnE,CAAA;IACD,IAAI,UAAU,CAAC,MAAM,GAAG,GAAG;QACzB,MAAM,IAAI,gBAAW,CAAC,kBAAkB,CAAC;YACvC,OAAO,EAAE,sDAAsD;SAChE,CAAC,CAAA;IACJ,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GACpE,MAAM,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE;QAC3B,OAAO;QACP,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC,CAAA;IACJ,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,EAAE,CAAA;IACnD,IACE,cAAc,CAAC,WAAW,EAAE,KAAK,OAAO,EAAE,WAAW,EAAE;QACvD,gBAAgB,IAAI,cAAc;QAElC,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,gBAAgB,EAAE,CAAA;IAEvD,IAAI,IAAuD,CAAA;IAC3D,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC7B,IACE,KAAK,CAAC,OAAO,GAAG,cAAc;YAC9B,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,OAAO,EAAE,WAAW,EAAE;YAEtD,SAAQ;QACV,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO;YAAE,IAAI,GAAG,KAAK,CAAA;IACzD,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAA;AACtD,CAAC;AAcD,SAAS,gBAAgB,CACvB,WAAoC;IAEpC,MAAM,KAAK,GAAG,WAAW,CAAC,KAAgD,CAAA;IAC1E,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAA;IACrB,MAAM,GAAG,GAAc,EAAE,CAAA;IACzB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,CAAC,CAAC,EAAE;YAAE,SAAQ;QACnB,MAAM,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,CAAA;QAChC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;YAAE,SAAQ;QACzC,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,SAAQ;QAC7B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACf,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QACd,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG;YAClB,MAAM,IAAI,gBAAW,CAAC,kBAAkB,CAAC;gBACvC,OAAO,EAAE,sDAAsD;aAChE,CAAC,CAAA;IACN,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAEM,KAAK,UAAU,oBAAoB,CACxC,MAAc,EACd,OAAqC;IAErC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,OAAO,CAAA;IAC/C,MAAM,IAAI,GACR,aAAa,EAAE,CAAC,KAAK,CAAC,IAAI,aAAa,EAAE,CAAC,KAAK,CAAC,WAAW,EAAa,CAAC,CAAA;IAE3E,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,IAAI;QAClD,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAA;IAG9D,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;IAClE,MAAM,QAAQ,GAAG,KAAK;QACpB,CAAC,CAAC,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE;YAC3B,GAAG,EAAE,iBAAiB,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE;YACpE,KAAK;YACL,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;SACzB,CAAC;QACJ,CAAC,CAAC,MAAM,OAAO,EAAE,CAAA;IACnB,OAAO;QACL,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,CAAC;QAChC,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,QAAQ,CAAC,MAAM;QACvC,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,QAAQ,CAAC,IAAI;KAClC,CAAA;AACH,CAAC"}
@@ -1,151 +1,161 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.handleRequest = handleRequest;
3
+ exports.create = create;
4
4
  const Address_ = require("ox/Address");
5
5
  const Hash = require("ox/Hash");
6
6
  const Hex = require("ox/Hex");
7
7
  const RpcResponse = require("ox/RpcResponse");
8
8
  const tempo_1 = require("ox/tempo");
9
- const getBlockNumber_js_1 = require("../actions/public/getBlockNumber.js");
10
- const createClient_js_1 = require("../clients/createClient.js");
11
- const custom_js_1 = require("../clients/transports/custom.js");
12
- const decodeFunctionData_js_1 = require("../utils/abi/decodeFunctionData.js");
13
- const isAddressEqual_js_1 = require("../utils/address/isAddressEqual.js");
14
- const Abis = require("./Abis.js");
15
- const Addresses = require("./Addresses.js");
16
- const multisig_js_1 = require("./actions/multisig.js");
17
- const ConfigStore = require("./multisig/Config.js");
18
- const OperationStore = require("./multisig/Operation.js");
19
- const Transaction = require("./Transaction.js");
9
+ const getBlockNumber_js_1 = require("../../../actions/public/getBlockNumber.js");
10
+ const createClient_js_1 = require("../../../clients/createClient.js");
11
+ const custom_js_1 = require("../../../clients/transports/custom.js");
12
+ const decodeFunctionData_js_1 = require("../../../utils/abi/decodeFunctionData.js");
13
+ const isAddressEqual_js_1 = require("../../../utils/address/isAddressEqual.js");
14
+ const Abis = require("../../Abis.js");
15
+ const Addresses = require("../../Addresses.js");
16
+ const multisig_js_1 = require("../../actions/multisig.js");
17
+ const ConfigStore = require("../../multisig/Config.js");
18
+ const OperationStore = require("../../multisig/Operation.js");
19
+ const Transaction = require("../../Transaction.js");
20
+ const Plugin = require("./plugin.js");
20
21
  const submissionTtl = 30_000;
21
22
  const pollingInterval = 100;
22
- function handleRequest(next, parameters) {
23
- if (!parameters.store.compareAndSet)
23
+ function create(options) {
24
+ if (!options.store.compareAndSet)
24
25
  throw new RpcResponse.InvalidParamsError({
25
26
  message: 'Multisig coordination requires a store with atomic `compareAndSet`.',
26
27
  });
27
- return async (request, requestOptions_) => {
28
- const requestOptions = await resolveRequestOptions({
29
- request,
30
- requestOptions: requestOptions_,
31
- store: parameters.store,
32
- });
33
- const client = (0, createClient_js_1.createClient)({
34
- transport: (0, custom_js_1.custom)({
35
- request: ({ method, params }, options) => next({ method, params }, { ...requestOptions, ...options }),
36
- }),
37
- });
38
- if (request.method === 'multisig_getConfig') {
39
- const value = request.params?.[0];
40
- const address = value && typeof value === 'object' && 'address' in value
41
- ? value.address
42
- : undefined;
43
- if (typeof address !== 'string' ||
44
- !Address_.validate(address) ||
45
- Hex.toBigInt(address) === 0n)
46
- throw new RpcResponse.InvalidParamsError({
47
- message: 'Expected a multisig account address.',
48
- });
49
- const blockNumber = await (0, getBlockNumber_js_1.getBlockNumber)(client, { cacheTime: 0 });
50
- const commitment = await (0, multisig_js_1.getConfigCommitment)(client, {
51
- account: address,
52
- blockNumber,
28
+ return Plugin.multisig({
29
+ async handleRequest(context, forward) {
30
+ const { request, options: requestOptions_ } = context;
31
+ const requestOptions = await resolveRequestOptions({
32
+ request,
33
+ requestOptions: requestOptions_,
34
+ store: options.store,
53
35
  });
54
- const config = await ConfigStore.read(parameters.store, {
55
- address,
56
- commitment,
36
+ context.options = requestOptions ?? {};
37
+ const next = async (request, options) => {
38
+ return context
39
+ .getClient(options?.chainId)
40
+ .request(request, options);
41
+ };
42
+ const client = (0, createClient_js_1.createClient)({
43
+ transport: (0, custom_js_1.custom)({
44
+ request: (request, options) => next(request, { ...requestOptions, ...options }),
45
+ }, { retryCount: 0 }),
57
46
  });
58
- if (!config)
59
- return null;
60
- return tempo_1.MultisigConfig.toRpc(config);
61
- }
62
- if (request.method === 'multisig_getOperation') {
63
- const hash = request.params?.[0];
64
- if (typeof hash !== 'string' || !Hash.validate(hash))
65
- throw new RpcResponse.InvalidParamsError({
66
- message: 'Expected a multisig operation hash.',
47
+ if (request.method === 'multisig_getConfig') {
48
+ const value = request.params?.[0];
49
+ const address = value && typeof value === 'object' && 'address' in value
50
+ ? value.address
51
+ : undefined;
52
+ if (typeof address !== 'string' ||
53
+ !Address_.validate(address) ||
54
+ Hex.toBigInt(address) === 0n)
55
+ throw new RpcResponse.InvalidParamsError({
56
+ message: 'Expected a multisig account address.',
57
+ });
58
+ const blockNumber = await (0, getBlockNumber_js_1.getBlockNumber)(client, { cacheTime: 0 });
59
+ const commitment = await (0, multisig_js_1.getConfigCommitment)(client, {
60
+ account: address,
61
+ blockNumber,
67
62
  });
68
- const operation = await OperationStore.read(parameters.store, hash);
69
- return operation ? tempo_1.MultisigOperation.toRpc(operation) : null;
70
- }
71
- if (request.method === 'multisig_approveKeyAuthorization')
72
- return await approveKeyAuthorization({
73
- client,
74
- request,
75
- store: parameters.store,
76
- });
77
- if (request.method === 'eth_getTransactionByHash' ||
78
- request.method === 'eth_getTransactionReceipt') {
79
- const hash = request.params?.[0];
80
- if (typeof hash !== 'string' || !Hash.validate(hash))
81
- return await next(request, requestOptions);
82
- const operation = await OperationStore.read(parameters.store, hash);
83
- if (!operation || operation.type !== 'transaction')
84
- return await next(request, requestOptions);
85
- if (request.method === 'eth_getTransactionReceipt') {
86
- if (operation.status === 'pending')
63
+ const config = await ConfigStore.read(options.store, {
64
+ address,
65
+ commitment,
66
+ });
67
+ if (!config)
87
68
  return null;
88
- const transactionHash = await getSubmittedTransactionHash(parameters.store, operation);
69
+ return tempo_1.MultisigConfig.toRpc(config);
70
+ }
71
+ if (request.method === 'multisig_getOperation') {
72
+ const hash = request.params?.[0];
73
+ if (typeof hash !== 'string' || !Hash.validate(hash))
74
+ throw new RpcResponse.InvalidParamsError({
75
+ message: 'Expected a multisig operation hash.',
76
+ });
77
+ const operation = await OperationStore.read(options.store, hash);
78
+ return operation ? tempo_1.MultisigOperation.toRpc(operation) : null;
79
+ }
80
+ if (request.method === 'multisig_approveKeyAuthorization')
81
+ return await approveKeyAuthorization({
82
+ client,
83
+ request,
84
+ store: options.store,
85
+ });
86
+ if (request.method === 'eth_getTransactionByHash' ||
87
+ request.method === 'eth_getTransactionReceipt') {
88
+ const hash = request.params?.[0];
89
+ if (typeof hash !== 'string' || !Hash.validate(hash))
90
+ return forward();
91
+ const operation = await OperationStore.read(options.store, hash);
92
+ if (!operation || operation.type !== 'transaction')
93
+ return forward();
94
+ if (request.method === 'eth_getTransactionReceipt') {
95
+ if (operation.status === 'pending')
96
+ return null;
97
+ const transactionHash = await getSubmittedTransactionHash(options.store, operation);
98
+ if (!transactionHash)
99
+ return null;
100
+ const receipt = await next({
101
+ ...request,
102
+ params: [transactionHash],
103
+ }, requestOptions);
104
+ if (!receipt || typeof receipt !== 'object')
105
+ return receipt;
106
+ const success = operation.status === 'submitting'
107
+ ? await completeSubmission(options.store, operation, transactionHash)
108
+ : operation;
109
+ return {
110
+ ...receipt,
111
+ multisig: tempo_1.MultisigOperation.toRpc(success),
112
+ };
113
+ }
114
+ if (operation.status === 'pending')
115
+ return await toTransaction(client, operation);
116
+ const transactionHash = await getSubmittedTransactionHash(options.store, operation);
89
117
  if (!transactionHash)
90
- return null;
91
- const receipt = await next({
118
+ return await toTransaction(client, operation);
119
+ const transaction = await next({
92
120
  ...request,
93
121
  params: [transactionHash],
94
122
  }, requestOptions);
95
- if (!receipt || typeof receipt !== 'object')
96
- return receipt;
123
+ if (!transaction || typeof transaction !== 'object')
124
+ return await toTransaction(client, operation);
97
125
  const success = operation.status === 'submitting'
98
- ? await completeSubmission(parameters.store, operation, transactionHash)
126
+ ? await completeSubmission(options.store, operation, transactionHash)
99
127
  : operation;
100
128
  return {
101
- ...receipt,
129
+ ...transaction,
102
130
  multisig: tempo_1.MultisigOperation.toRpc(success),
103
131
  };
104
132
  }
105
- if (operation.status === 'pending')
106
- return await toTransaction(client, operation);
107
- const transactionHash = await getSubmittedTransactionHash(parameters.store, operation);
108
- if (!transactionHash)
109
- return await toTransaction(client, operation);
110
- const transaction = await next({
111
- ...request,
112
- params: [transactionHash],
113
- }, requestOptions);
114
- if (!transaction || typeof transaction !== 'object')
115
- return await toTransaction(client, operation);
116
- const success = operation.status === 'submitting'
117
- ? await completeSubmission(parameters.store, operation, transactionHash)
118
- : operation;
119
- return {
120
- ...transaction,
121
- multisig: tempo_1.MultisigOperation.toRpc(success),
122
- };
123
- }
124
- if (request.method !== 'eth_sendRawTransaction' &&
125
- request.method !== 'eth_sendRawTransactionSync' &&
126
- request.method !== 'multisig_approveRawTransaction' &&
127
- request.method !== 'multisig_approveRawTransactionSync')
128
- return await next(request, requestOptions);
129
- const standard = request.method === 'eth_sendRawTransaction' ||
130
- request.method === 'eth_sendRawTransactionSync';
131
- const serialized = request.params?.[0];
132
- if (!isSerializedTempoTransaction(serialized)) {
133
- if (standard)
134
- return await next(request, requestOptions);
135
- throw new RpcResponse.InvalidParamsError({
136
- message: 'Expected a serialized Tempo multisig transaction.',
133
+ if (request.method !== 'eth_sendRawTransaction' &&
134
+ request.method !== 'eth_sendRawTransactionSync' &&
135
+ request.method !== 'multisig_approveRawTransaction' &&
136
+ request.method !== 'multisig_approveRawTransactionSync')
137
+ return forward();
138
+ const standard = request.method === 'eth_sendRawTransaction' ||
139
+ request.method === 'eth_sendRawTransactionSync';
140
+ const serialized = request.params?.[0];
141
+ if (!isSerializedTempoTransaction(serialized)) {
142
+ if (standard)
143
+ return forward();
144
+ throw new RpcResponse.InvalidParamsError({
145
+ message: 'Expected a serialized Tempo multisig transaction.',
146
+ });
147
+ }
148
+ return await submit({
149
+ client,
150
+ method: request.method,
151
+ next,
152
+ request,
153
+ requestOptions,
154
+ serialized,
155
+ store: options.store,
137
156
  });
138
- }
139
- return await submit({
140
- client,
141
- method: request.method,
142
- next,
143
- request,
144
- requestOptions,
145
- serialized,
146
- store: parameters.store,
147
- });
148
- };
157
+ },
158
+ });
149
159
  }
150
160
  async function submit(options) {
151
161
  const transaction = (() => {
@@ -997,4 +1007,4 @@ function isSerializedTempoTransaction(value) {
997
1007
  return (typeof value === 'string' &&
998
1008
  (value.startsWith('0x76') || value.startsWith('0x78')));
999
1009
  }
1000
- //# sourceMappingURL=Multisig.js.map
1010
+ //# sourceMappingURL=multisig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multisig.js","sourceRoot":"","sources":["../../../../tempo/internal/relay/multisig.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.multisig = multisig;
4
+ exports.isMultisig = isMultisig;
5
+ const multisigPlugins = new WeakSet();
6
+ function multisig(plugin) {
7
+ multisigPlugins.add(plugin);
8
+ return plugin;
9
+ }
10
+ function isMultisig(plugin) {
11
+ return multisigPlugins.has(plugin);
12
+ }
13
+ //# sourceMappingURL=plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../../tempo/internal/relay/plugin.ts"],"names":[],"mappings":";;AAKA,4BAGC;AAED,gCAEC;AAVD,MAAM,eAAe,GAAG,IAAI,OAAO,EAAgB,CAAA;AAGnD,SAAgB,QAAQ,CAAC,MAAoB;IAC3C,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IAC3B,OAAO,MAAmC,CAAA;AAC5C,CAAC;AAED,SAAgB,UAAU,CAAC,MAAoB;IAC7C,OAAO,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AACpC,CAAC"}