@eco-incorp/sauce 0.99.3 → 0.99.5

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 (1304) hide show
  1. package/README.md +105 -63
  2. package/actions/action-program.schema.json +1810 -0
  3. package/actions/dist/abis.d.ts +167 -0
  4. package/actions/dist/abis.d.ts.map +1 -0
  5. package/actions/dist/abis.js +215 -0
  6. package/actions/dist/compile.d.ts +15 -8
  7. package/actions/dist/compile.d.ts.map +1 -1
  8. package/actions/dist/compile.js +11 -33
  9. package/actions/dist/compose.d.ts +46 -0
  10. package/actions/dist/compose.d.ts.map +1 -0
  11. package/actions/dist/compose.js +118 -0
  12. package/actions/dist/emit.d.ts +0 -35
  13. package/actions/dist/emit.d.ts.map +1 -1
  14. package/actions/dist/emit.js +15 -46
  15. package/actions/dist/index.d.ts +11 -8
  16. package/actions/dist/index.d.ts.map +1 -1
  17. package/actions/dist/index.js +6 -4
  18. package/actions/dist/program.d.ts +23 -0
  19. package/actions/dist/program.d.ts.map +1 -0
  20. package/actions/dist/program.js +358 -0
  21. package/actions/dist/registry.d.ts +37 -0
  22. package/actions/dist/registry.d.ts.map +1 -0
  23. package/actions/dist/registry.js +36 -0
  24. package/actions/dist/schema.d.ts +6 -0
  25. package/actions/dist/schema.d.ts.map +1 -0
  26. package/actions/dist/schema.js +166 -0
  27. package/actions/dist/semantics.d.ts +18 -0
  28. package/actions/dist/semantics.d.ts.map +1 -0
  29. package/actions/dist/semantics.js +164 -0
  30. package/actions/dist/spec.d.ts +97 -0
  31. package/actions/dist/spec.d.ts.map +1 -0
  32. package/actions/dist/spec.js +323 -0
  33. package/actions/dist/split-swap.d.ts +35 -0
  34. package/actions/dist/split-swap.d.ts.map +1 -0
  35. package/actions/dist/split-swap.js +175 -0
  36. package/actions/dist/to-quote.d.ts +32 -56
  37. package/actions/dist/to-quote.d.ts.map +1 -1
  38. package/actions/dist/to-quote.js +134 -141
  39. package/actions/dist/to-sauce.d.ts +48 -32
  40. package/actions/dist/to-sauce.d.ts.map +1 -1
  41. package/actions/dist/to-sauce.js +691 -753
  42. package/actions/dist/types.d.ts +227 -335
  43. package/actions/dist/types.d.ts.map +1 -1
  44. package/actions/dist/types.js +12 -3
  45. package/dev-tools/README.md +9 -9
  46. package/dev-tools/artifacts/ISauceRouter.json +1 -1
  47. package/dev-tools/artifacts/Router.json +1 -1
  48. package/dev-tools/scripts/start-fork.sh +1 -1
  49. package/dev-tools/scripts/start-local.sh +5 -1
  50. package/dev-tools/src/svm-local.ts +23 -13
  51. package/docs/README.md +45 -34
  52. package/docs/api/README.md +37 -29
  53. package/docs/api/compiler.md +116 -55
  54. package/docs/api/coverage.md +99 -48
  55. package/docs/api/routes.md +51 -22
  56. package/docs/concepts/architecture.md +83 -116
  57. package/docs/concepts/saucescript.md +27 -23
  58. package/docs/examples/README.md +18 -10
  59. package/docs/examples/action-program.ts +75 -0
  60. package/docs/examples/cross-chain-cascade.sauce.ts +21 -0
  61. package/docs/examples/cross-chain-cascade.ts +43 -0
  62. package/docs/examples/cross-chain-intent.sauce.ts +23 -0
  63. package/docs/examples/cross-chain-intent.ts +49 -0
  64. package/docs/examples/first-intent.ts +7 -10
  65. package/docs/examples/protocol-approval.ts +3 -7
  66. package/docs/guides/actions.md +395 -0
  67. package/docs/guides/builders-and-actions.md +31 -37
  68. package/docs/guides/compiling.md +97 -98
  69. package/docs/guides/intents.md +242 -24
  70. package/docs/guides/nested-intents.md +165 -5
  71. package/docs/guides/protocols-and-tokens.md +15 -7
  72. package/docs/guides/quick-start.md +51 -22
  73. package/docs/guides/solana.md +38 -39
  74. package/docs/guides/verification.md +70 -31
  75. package/package.json +7 -2
  76. package/sdk/dist/artifacts/ISauceRouter.json +1 -1
  77. package/sdk/dist/artifacts/Router.json +1 -1
  78. package/sdk/dist/artifacts/V12Deployments.json +23 -22
  79. package/sdk/dist/artifacts/V12EngineGate.json +2 -2
  80. package/sdk/dist/artifacts/V12Kitchen.json +1 -1
  81. package/sdk/dist/artifacts/V12Pot.json +1 -1
  82. package/sdk/dist/artifacts/V12RuntimeBytecode.json +1 -1
  83. package/sdk/dist/artifacts/svm/engine-devnet.so +0 -0
  84. package/sdk/dist/artifacts/svm/engine-mainnet.so +0 -0
  85. package/sdk/dist/artifacts/svm/engine-wire-devnet.json +6 -0
  86. package/sdk/dist/artifacts/svm/engine-wire-mainnet.json +6 -0
  87. package/sdk/dist/bytes.d.ts +10 -0
  88. package/sdk/dist/bytes.d.ts.map +1 -0
  89. package/sdk/dist/bytes.js +31 -0
  90. package/sdk/dist/bytes.js.map +1 -0
  91. package/sdk/dist/chains/canonical.d.ts +7 -1
  92. package/sdk/dist/chains/canonical.d.ts.map +1 -1
  93. package/sdk/dist/chains/canonical.js +6 -2
  94. package/sdk/dist/chains/canonical.js.map +1 -1
  95. package/sdk/dist/chains/index.d.ts +16 -2
  96. package/sdk/dist/chains/index.d.ts.map +1 -1
  97. package/sdk/dist/chains/index.js +51 -34
  98. package/sdk/dist/chains/index.js.map +1 -1
  99. package/sdk/dist/compact-arguments.d.ts +4 -1
  100. package/sdk/dist/compact-arguments.d.ts.map +1 -1
  101. package/sdk/dist/compact-arguments.js +25 -4
  102. package/sdk/dist/compact-arguments.js.map +1 -1
  103. package/sdk/dist/compiler.d.ts +13 -1
  104. package/sdk/dist/compiler.d.ts.map +1 -1
  105. package/sdk/dist/compiler.js +5 -6
  106. package/sdk/dist/compiler.js.map +1 -1
  107. package/sdk/dist/core/types.d.ts +18 -2
  108. package/sdk/dist/core/types.d.ts.map +1 -1
  109. package/sdk/dist/deployments/pot.d.ts +39 -0
  110. package/sdk/dist/deployments/pot.d.ts.map +1 -0
  111. package/sdk/dist/deployments/pot.js +48 -0
  112. package/sdk/dist/deployments/pot.js.map +1 -0
  113. package/sdk/dist/deployments/v12-addresses.d.ts +1 -4
  114. package/sdk/dist/deployments/v12-addresses.d.ts.map +1 -1
  115. package/sdk/dist/deployments/v12-addresses.js +7 -21
  116. package/sdk/dist/deployments/v12-addresses.js.map +1 -1
  117. package/sdk/dist/deposit/index.d.ts +5 -5
  118. package/sdk/dist/deposit/index.d.ts.map +1 -1
  119. package/sdk/dist/deposit/index.js +1 -1
  120. package/sdk/dist/deposit/index.js.map +1 -1
  121. package/sdk/dist/deposit/params.d.ts +3 -2
  122. package/sdk/dist/deposit/params.d.ts.map +1 -1
  123. package/sdk/dist/deposit/params.js +40 -3
  124. package/sdk/dist/deposit/params.js.map +1 -1
  125. package/sdk/dist/deposit/source.d.ts +0 -19
  126. package/sdk/dist/deposit/source.d.ts.map +1 -1
  127. package/sdk/dist/deposit/source.js +17 -34
  128. package/sdk/dist/deposit/source.js.map +1 -1
  129. package/sdk/dist/descriptors/accessors.d.ts +2 -2
  130. package/sdk/dist/descriptors/accessors.d.ts.map +1 -1
  131. package/sdk/dist/descriptors/accessors.js +15 -4
  132. package/sdk/dist/descriptors/accessors.js.map +1 -1
  133. package/sdk/dist/descriptors/call.d.ts +8 -13
  134. package/sdk/dist/descriptors/call.d.ts.map +1 -1
  135. package/sdk/dist/descriptors/call.js +7 -19
  136. package/sdk/dist/descriptors/call.js.map +1 -1
  137. package/sdk/dist/descriptors/derive.d.ts +1 -1
  138. package/sdk/dist/descriptors/derive.d.ts.map +1 -1
  139. package/sdk/dist/descriptors/derive.js +1 -1
  140. package/sdk/dist/descriptors/derive.js.map +1 -1
  141. package/sdk/dist/descriptors/index.d.ts +1 -1
  142. package/sdk/dist/descriptors/index.d.ts.map +1 -1
  143. package/sdk/dist/descriptors/index.js +1 -1
  144. package/sdk/dist/descriptors/index.js.map +1 -1
  145. package/sdk/dist/descriptors/links.d.ts +3 -12
  146. package/sdk/dist/descriptors/links.d.ts.map +1 -1
  147. package/sdk/dist/descriptors/links.js +2 -32
  148. package/sdk/dist/descriptors/links.js.map +1 -1
  149. package/sdk/dist/descriptors/query.d.ts +7 -3
  150. package/sdk/dist/descriptors/query.d.ts.map +1 -1
  151. package/sdk/dist/descriptors/query.js +9 -5
  152. package/sdk/dist/descriptors/query.js.map +1 -1
  153. package/sdk/dist/descriptors/registry.d.ts.map +1 -1
  154. package/sdk/dist/descriptors/registry.js +1 -0
  155. package/sdk/dist/descriptors/registry.js.map +1 -1
  156. package/sdk/dist/embedded/recipes.d.ts +3 -0
  157. package/sdk/dist/embedded/recipes.d.ts.map +1 -0
  158. package/sdk/dist/embedded/recipes.js +15 -0
  159. package/sdk/dist/embedded/recipes.js.map +1 -0
  160. package/sdk/dist/embedded/resolve.d.ts +27 -0
  161. package/sdk/dist/embedded/resolve.d.ts.map +1 -0
  162. package/sdk/dist/embedded/resolve.js +99 -0
  163. package/sdk/dist/embedded/resolve.js.map +1 -0
  164. package/sdk/dist/embedded/skills.generated.d.ts +3 -0
  165. package/sdk/dist/embedded/skills.generated.d.ts.map +1 -0
  166. package/sdk/dist/embedded/skills.generated.js +141 -0
  167. package/sdk/dist/embedded/skills.generated.js.map +1 -0
  168. package/sdk/dist/embedded/sources.generated.d.ts +7 -0
  169. package/sdk/dist/embedded/sources.generated.d.ts.map +1 -0
  170. package/sdk/dist/embedded/sources.generated.js +231 -0
  171. package/sdk/dist/embedded/sources.generated.js.map +1 -0
  172. package/sdk/dist/evm/execution-fee.d.ts +30 -0
  173. package/sdk/dist/evm/execution-fee.d.ts.map +1 -0
  174. package/sdk/dist/evm/execution-fee.js +33 -0
  175. package/sdk/dist/evm/execution-fee.js.map +1 -0
  176. package/sdk/dist/index.d.ts +7 -2
  177. package/sdk/dist/index.d.ts.map +1 -1
  178. package/sdk/dist/index.js +16 -10
  179. package/sdk/dist/index.js.map +1 -1
  180. package/sdk/dist/plugin/index.d.ts +1 -1
  181. package/sdk/dist/plugin/index.d.ts.map +1 -1
  182. package/sdk/dist/plugin/index.js +5 -22
  183. package/sdk/dist/plugin/index.js.map +1 -1
  184. package/sdk/dist/protocols/aave-v4/abis.d.ts +201 -0
  185. package/sdk/dist/protocols/aave-v4/abis.d.ts.map +1 -0
  186. package/sdk/dist/protocols/aave-v4/abis.js +139 -0
  187. package/sdk/dist/protocols/aave-v4/abis.js.map +1 -0
  188. package/sdk/dist/protocols/aave-v4/addresses.d.ts +3 -0
  189. package/sdk/dist/protocols/aave-v4/addresses.d.ts.map +1 -0
  190. package/sdk/dist/protocols/aave-v4/addresses.js +65 -0
  191. package/sdk/dist/protocols/aave-v4/addresses.js.map +1 -0
  192. package/sdk/dist/protocols/aave-v4/functions.d.ts +5 -0
  193. package/sdk/dist/protocols/aave-v4/functions.d.ts.map +1 -0
  194. package/sdk/dist/protocols/aave-v4/functions.js +37 -0
  195. package/sdk/dist/protocols/aave-v4/functions.js.map +1 -0
  196. package/sdk/dist/protocols/aave-v4/index.d.ts +5 -0
  197. package/sdk/dist/protocols/aave-v4/index.d.ts.map +1 -0
  198. package/sdk/dist/protocols/aave-v4/index.js +5 -0
  199. package/sdk/dist/protocols/aave-v4/index.js.map +1 -0
  200. package/sdk/dist/protocols/aave-v4/info.d.ts +3 -0
  201. package/sdk/dist/protocols/aave-v4/info.d.ts.map +1 -0
  202. package/sdk/dist/protocols/aave-v4/info.js +12 -0
  203. package/sdk/dist/protocols/aave-v4/info.js.map +1 -0
  204. package/sdk/dist/protocols/across/abis.d.ts +24 -12
  205. package/sdk/dist/protocols/across/abis.d.ts.map +1 -1
  206. package/sdk/dist/protocols/across/abis.js +16 -8
  207. package/sdk/dist/protocols/across/abis.js.map +1 -1
  208. package/sdk/dist/protocols/across/addresses.d.ts.map +1 -1
  209. package/sdk/dist/protocols/across/addresses.js +10 -0
  210. package/sdk/dist/protocols/across/addresses.js.map +1 -1
  211. package/sdk/dist/protocols/across/functions.d.ts +1 -1
  212. package/sdk/dist/protocols/across/functions.d.ts.map +1 -1
  213. package/sdk/dist/protocols/across/functions.js +2 -2
  214. package/sdk/dist/protocols/aerodrome-slipstream/abis.d.ts +112 -0
  215. package/sdk/dist/protocols/aerodrome-slipstream/abis.d.ts.map +1 -0
  216. package/sdk/dist/protocols/aerodrome-slipstream/abis.js +73 -0
  217. package/sdk/dist/protocols/aerodrome-slipstream/abis.js.map +1 -0
  218. package/sdk/dist/protocols/aerodrome-slipstream/addresses.d.ts +3 -0
  219. package/sdk/dist/protocols/aerodrome-slipstream/addresses.d.ts.map +1 -0
  220. package/sdk/dist/protocols/aerodrome-slipstream/addresses.js +39 -0
  221. package/sdk/dist/protocols/aerodrome-slipstream/addresses.js.map +1 -0
  222. package/sdk/dist/protocols/aerodrome-slipstream/functions.d.ts +2 -0
  223. package/sdk/dist/protocols/aerodrome-slipstream/functions.d.ts.map +1 -0
  224. package/sdk/dist/protocols/aerodrome-slipstream/functions.js +9 -0
  225. package/sdk/dist/protocols/aerodrome-slipstream/functions.js.map +1 -0
  226. package/sdk/dist/protocols/aerodrome-slipstream/index.d.ts +5 -0
  227. package/sdk/dist/protocols/aerodrome-slipstream/index.d.ts.map +1 -0
  228. package/sdk/dist/protocols/aerodrome-slipstream/index.js +5 -0
  229. package/sdk/dist/protocols/aerodrome-slipstream/index.js.map +1 -0
  230. package/sdk/dist/protocols/aerodrome-slipstream/info.d.ts +3 -0
  231. package/sdk/dist/protocols/aerodrome-slipstream/info.d.ts.map +1 -0
  232. package/sdk/dist/protocols/aerodrome-slipstream/info.js +12 -0
  233. package/sdk/dist/protocols/aerodrome-slipstream/info.js.map +1 -0
  234. package/sdk/dist/protocols/aevo/abis.d.ts +17 -2
  235. package/sdk/dist/protocols/aevo/abis.d.ts.map +1 -1
  236. package/sdk/dist/protocols/aevo/abis.js +10 -2
  237. package/sdk/dist/protocols/aevo/abis.js.map +1 -1
  238. package/sdk/dist/protocols/aevo/functions.d.ts +1 -1
  239. package/sdk/dist/protocols/aevo/functions.d.ts.map +1 -1
  240. package/sdk/dist/protocols/aevo/functions.js +2 -2
  241. package/sdk/dist/protocols/alchemix/abis.d.ts +1 -1
  242. package/sdk/dist/protocols/alchemix/abis.js +1 -1
  243. package/sdk/dist/protocols/alchemix/abis.js.map +1 -1
  244. package/sdk/dist/protocols/ambient/abis.d.ts +2 -2
  245. package/sdk/dist/protocols/ambient/abis.d.ts.map +1 -1
  246. package/sdk/dist/protocols/ambient/abis.js +3 -2
  247. package/sdk/dist/protocols/ambient/abis.js.map +1 -1
  248. package/sdk/dist/protocols/ambient/addresses.d.ts.map +1 -1
  249. package/sdk/dist/protocols/ambient/addresses.js +2 -1
  250. package/sdk/dist/protocols/ambient/addresses.js.map +1 -1
  251. package/sdk/dist/protocols/arrakis/abis.d.ts +4 -13
  252. package/sdk/dist/protocols/arrakis/abis.d.ts.map +1 -1
  253. package/sdk/dist/protocols/arrakis/abis.js +2 -11
  254. package/sdk/dist/protocols/arrakis/abis.js.map +1 -1
  255. package/sdk/dist/protocols/arrakis/functions.d.ts +1 -1
  256. package/sdk/dist/protocols/arrakis/functions.d.ts.map +1 -1
  257. package/sdk/dist/protocols/arrakis/functions.js +2 -1
  258. package/sdk/dist/protocols/arrakis/functions.js.map +1 -1
  259. package/sdk/dist/protocols/axelar/abis.d.ts +1 -1
  260. package/sdk/dist/protocols/axelar/abis.js +1 -1
  261. package/sdk/dist/protocols/balancer-v2/abis.d.ts +7 -7
  262. package/sdk/dist/protocols/balancer-v2/abis.js +7 -7
  263. package/sdk/dist/protocols/balancer-v2/abis.js.map +1 -1
  264. package/sdk/dist/protocols/cbeth/abis.d.ts +7 -1
  265. package/sdk/dist/protocols/cbeth/abis.d.ts.map +1 -1
  266. package/sdk/dist/protocols/cbeth/abis.js +6 -2
  267. package/sdk/dist/protocols/cbeth/abis.js.map +1 -1
  268. package/sdk/dist/protocols/cctp/abis.d.ts +1 -4
  269. package/sdk/dist/protocols/cctp/abis.d.ts.map +1 -1
  270. package/sdk/dist/protocols/cctp/abis.js +3 -1
  271. package/sdk/dist/protocols/cctp/abis.js.map +1 -1
  272. package/sdk/dist/protocols/cctp/addresses.d.ts.map +1 -1
  273. package/sdk/dist/protocols/cctp/addresses.js +3 -0
  274. package/sdk/dist/protocols/cctp/addresses.js.map +1 -1
  275. package/sdk/dist/protocols/chainlink/abis.d.ts +6 -6
  276. package/sdk/dist/protocols/chainlink/abis.js +6 -6
  277. package/sdk/dist/protocols/chainlink/abis.js.map +1 -1
  278. package/sdk/dist/protocols/chainlink/addresses.d.ts.map +1 -1
  279. package/sdk/dist/protocols/chainlink/addresses.js +10 -0
  280. package/sdk/dist/protocols/chainlink/addresses.js.map +1 -1
  281. package/sdk/dist/protocols/chainlink-ccip/abis.d.ts +1 -1
  282. package/sdk/dist/protocols/chainlink-ccip/abis.js +1 -1
  283. package/sdk/dist/protocols/chainlink-ccip/addresses.d.ts.map +1 -1
  284. package/sdk/dist/protocols/chainlink-ccip/addresses.js +9 -0
  285. package/sdk/dist/protocols/chainlink-ccip/addresses.js.map +1 -1
  286. package/sdk/dist/protocols/circle-gateway/abis.d.ts +114 -0
  287. package/sdk/dist/protocols/circle-gateway/abis.d.ts.map +1 -0
  288. package/sdk/dist/protocols/circle-gateway/abis.js +86 -0
  289. package/sdk/dist/protocols/circle-gateway/abis.js.map +1 -0
  290. package/sdk/dist/protocols/circle-gateway/addresses.d.ts +3 -0
  291. package/sdk/dist/protocols/circle-gateway/addresses.d.ts.map +1 -0
  292. package/sdk/dist/protocols/circle-gateway/addresses.js +37 -0
  293. package/sdk/dist/protocols/circle-gateway/addresses.js.map +1 -0
  294. package/sdk/dist/protocols/circle-gateway/functions.d.ts +4 -0
  295. package/sdk/dist/protocols/circle-gateway/functions.d.ts.map +1 -0
  296. package/sdk/dist/protocols/circle-gateway/functions.js +27 -0
  297. package/sdk/dist/protocols/circle-gateway/functions.js.map +1 -0
  298. package/sdk/dist/protocols/circle-gateway/index.d.ts +5 -0
  299. package/sdk/dist/protocols/circle-gateway/index.d.ts.map +1 -0
  300. package/sdk/dist/protocols/circle-gateway/index.js +5 -0
  301. package/sdk/dist/protocols/circle-gateway/index.js.map +1 -0
  302. package/sdk/dist/protocols/circle-gateway/info.d.ts +3 -0
  303. package/sdk/dist/protocols/circle-gateway/info.d.ts.map +1 -0
  304. package/sdk/dist/protocols/circle-gateway/info.js +12 -0
  305. package/sdk/dist/protocols/circle-gateway/info.js.map +1 -0
  306. package/sdk/dist/protocols/compound-v2/abis.d.ts +2 -2
  307. package/sdk/dist/protocols/compound-v2/abis.js +2 -2
  308. package/sdk/dist/protocols/compound-v2/abis.js.map +1 -1
  309. package/sdk/dist/protocols/connext/abis.d.ts +46 -6
  310. package/sdk/dist/protocols/connext/abis.d.ts.map +1 -1
  311. package/sdk/dist/protocols/connext/abis.js +27 -5
  312. package/sdk/dist/protocols/connext/abis.js.map +1 -1
  313. package/sdk/dist/protocols/connext/addresses.d.ts.map +1 -1
  314. package/sdk/dist/protocols/connext/addresses.js +1 -7
  315. package/sdk/dist/protocols/connext/addresses.js.map +1 -1
  316. package/sdk/dist/protocols/connext/functions.d.ts +1 -1
  317. package/sdk/dist/protocols/connext/functions.d.ts.map +1 -1
  318. package/sdk/dist/protocols/connext/functions.js +3 -2
  319. package/sdk/dist/protocols/connext/functions.js.map +1 -1
  320. package/sdk/dist/protocols/curve/abis.d.ts +119 -7
  321. package/sdk/dist/protocols/curve/abis.d.ts.map +1 -1
  322. package/sdk/dist/protocols/curve/abis.js +90 -7
  323. package/sdk/dist/protocols/curve/abis.js.map +1 -1
  324. package/sdk/dist/protocols/debridge/abis.d.ts +7 -7
  325. package/sdk/dist/protocols/debridge/abis.js +5 -5
  326. package/sdk/dist/protocols/debridge/abis.js.map +1 -1
  327. package/sdk/dist/protocols/debridge/addresses.d.ts.map +1 -1
  328. package/sdk/dist/protocols/debridge/addresses.js +11 -0
  329. package/sdk/dist/protocols/debridge/addresses.js.map +1 -1
  330. package/sdk/dist/protocols/eco-routes/abis.d.ts +463 -0
  331. package/sdk/dist/protocols/eco-routes/abis.d.ts.map +1 -0
  332. package/sdk/dist/protocols/eco-routes/abis.js +632 -0
  333. package/sdk/dist/protocols/eco-routes/abis.js.map +1 -0
  334. package/sdk/dist/protocols/eco-routes/addresses.d.ts +9 -0
  335. package/sdk/dist/protocols/eco-routes/addresses.d.ts.map +1 -0
  336. package/sdk/dist/protocols/eco-routes/addresses.generated.d.ts +585 -0
  337. package/sdk/dist/protocols/eco-routes/addresses.generated.d.ts.map +1 -0
  338. package/sdk/dist/protocols/eco-routes/addresses.generated.js +590 -0
  339. package/sdk/dist/protocols/eco-routes/addresses.generated.js.map +1 -0
  340. package/sdk/dist/protocols/eco-routes/addresses.js +21 -0
  341. package/sdk/dist/protocols/eco-routes/addresses.js.map +1 -0
  342. package/sdk/dist/protocols/eco-routes/functions.d.ts +12 -0
  343. package/sdk/dist/protocols/eco-routes/functions.d.ts.map +1 -0
  344. package/sdk/dist/protocols/eco-routes/functions.js +45 -0
  345. package/sdk/dist/protocols/eco-routes/functions.js.map +1 -0
  346. package/sdk/dist/protocols/eco-routes/index.d.ts +6 -0
  347. package/sdk/dist/protocols/eco-routes/index.d.ts.map +1 -0
  348. package/sdk/dist/protocols/eco-routes/index.js +6 -0
  349. package/sdk/dist/protocols/eco-routes/index.js.map +1 -0
  350. package/sdk/dist/protocols/eco-routes/info.d.ts +3 -0
  351. package/sdk/dist/protocols/eco-routes/info.d.ts.map +1 -0
  352. package/sdk/dist/protocols/eco-routes/info.js +12 -0
  353. package/sdk/dist/protocols/eco-routes/info.js.map +1 -0
  354. package/sdk/dist/protocols/eco-routes/lookup.d.ts +82 -0
  355. package/sdk/dist/protocols/eco-routes/lookup.d.ts.map +1 -0
  356. package/sdk/dist/protocols/eco-routes/lookup.js +148 -0
  357. package/sdk/dist/protocols/eco-routes/lookup.js.map +1 -0
  358. package/sdk/dist/protocols/eigenlayer/abis.d.ts +4 -4
  359. package/sdk/dist/protocols/eigenlayer/abis.d.ts.map +1 -1
  360. package/sdk/dist/protocols/eigenlayer/abis.js +5 -4
  361. package/sdk/dist/protocols/eigenlayer/abis.js.map +1 -1
  362. package/sdk/dist/protocols/ens/abis.d.ts +4 -4
  363. package/sdk/dist/protocols/ens/abis.js +4 -4
  364. package/sdk/dist/protocols/etherfi/abis.d.ts +1 -1
  365. package/sdk/dist/protocols/etherfi/abis.d.ts.map +1 -1
  366. package/sdk/dist/protocols/etherfi/abis.js +2 -1
  367. package/sdk/dist/protocols/etherfi/abis.js.map +1 -1
  368. package/sdk/dist/protocols/euler-v2/abis.d.ts +2 -2
  369. package/sdk/dist/protocols/euler-v2/abis.js +2 -2
  370. package/sdk/dist/protocols/euler-v2/abis.js.map +1 -1
  371. package/sdk/dist/protocols/fluid/abis.d.ts +47 -26
  372. package/sdk/dist/protocols/fluid/abis.d.ts.map +1 -1
  373. package/sdk/dist/protocols/fluid/abis.js +39 -18
  374. package/sdk/dist/protocols/fluid/abis.js.map +1 -1
  375. package/sdk/dist/protocols/fluid/functions.d.ts +4 -4
  376. package/sdk/dist/protocols/fluid/functions.d.ts.map +1 -1
  377. package/sdk/dist/protocols/fluid/functions.js +18 -16
  378. package/sdk/dist/protocols/fluid/functions.js.map +1 -1
  379. package/sdk/dist/protocols/gains-network/abis.d.ts +44 -35
  380. package/sdk/dist/protocols/gains-network/abis.d.ts.map +1 -1
  381. package/sdk/dist/protocols/gains-network/abis.js +26 -21
  382. package/sdk/dist/protocols/gains-network/abis.js.map +1 -1
  383. package/sdk/dist/protocols/gains-network/functions.d.ts +3 -3
  384. package/sdk/dist/protocols/gains-network/functions.d.ts.map +1 -1
  385. package/sdk/dist/protocols/gains-network/functions.js +6 -6
  386. package/sdk/dist/protocols/gamma/abis.d.ts +43 -0
  387. package/sdk/dist/protocols/gamma/abis.d.ts.map +1 -1
  388. package/sdk/dist/protocols/gamma/abis.js +30 -0
  389. package/sdk/dist/protocols/gamma/abis.js.map +1 -1
  390. package/sdk/dist/protocols/gamma/addresses.d.ts.map +1 -1
  391. package/sdk/dist/protocols/gamma/addresses.js +2 -7
  392. package/sdk/dist/protocols/gamma/addresses.js.map +1 -1
  393. package/sdk/dist/protocols/gamma/functions.d.ts +1 -0
  394. package/sdk/dist/protocols/gamma/functions.d.ts.map +1 -1
  395. package/sdk/dist/protocols/gamma/functions.js +9 -0
  396. package/sdk/dist/protocols/gamma/functions.js.map +1 -1
  397. package/sdk/dist/protocols/gelato/abis.d.ts +2 -2
  398. package/sdk/dist/protocols/gelato/abis.js +2 -2
  399. package/sdk/dist/protocols/gmx-v1/abis.d.ts +15 -3
  400. package/sdk/dist/protocols/gmx-v1/abis.d.ts.map +1 -1
  401. package/sdk/dist/protocols/gmx-v1/abis.js +5 -3
  402. package/sdk/dist/protocols/gmx-v1/abis.js.map +1 -1
  403. package/sdk/dist/protocols/gmx-v1/functions.d.ts +2 -2
  404. package/sdk/dist/protocols/gmx-v1/functions.d.ts.map +1 -1
  405. package/sdk/dist/protocols/gmx-v1/functions.js +2 -2
  406. package/sdk/dist/protocols/gmx-v2/abis.d.ts +11 -5
  407. package/sdk/dist/protocols/gmx-v2/abis.d.ts.map +1 -1
  408. package/sdk/dist/protocols/gmx-v2/abis.js +7 -4
  409. package/sdk/dist/protocols/gmx-v2/abis.js.map +1 -1
  410. package/sdk/dist/protocols/gmx-v2/addresses.d.ts.map +1 -1
  411. package/sdk/dist/protocols/gmx-v2/addresses.js +3 -1
  412. package/sdk/dist/protocols/gmx-v2/addresses.js.map +1 -1
  413. package/sdk/dist/protocols/gmx-v2/functions.d.ts +1 -1
  414. package/sdk/dist/protocols/gmx-v2/functions.d.ts.map +1 -1
  415. package/sdk/dist/protocols/gmx-v2/functions.js +4 -2
  416. package/sdk/dist/protocols/gmx-v2/functions.js.map +1 -1
  417. package/sdk/dist/protocols/harvest/abis.d.ts +8 -2
  418. package/sdk/dist/protocols/harvest/abis.d.ts.map +1 -1
  419. package/sdk/dist/protocols/harvest/abis.js +2 -2
  420. package/sdk/dist/protocols/harvest/abis.js.map +1 -1
  421. package/sdk/dist/protocols/hegic/abis.d.ts +5 -2
  422. package/sdk/dist/protocols/hegic/abis.d.ts.map +1 -1
  423. package/sdk/dist/protocols/hegic/abis.js +7 -2
  424. package/sdk/dist/protocols/hegic/abis.js.map +1 -1
  425. package/sdk/dist/protocols/hegic/addresses.d.ts.map +1 -1
  426. package/sdk/dist/protocols/hegic/addresses.js +1 -0
  427. package/sdk/dist/protocols/hegic/addresses.js.map +1 -1
  428. package/sdk/dist/protocols/hegic/functions.d.ts +1 -1
  429. package/sdk/dist/protocols/hegic/functions.d.ts.map +1 -1
  430. package/sdk/dist/protocols/hegic/functions.js +3 -3
  431. package/sdk/dist/protocols/hop/addresses.d.ts.map +1 -1
  432. package/sdk/dist/protocols/hop/addresses.js +5 -2
  433. package/sdk/dist/protocols/hop/addresses.js.map +1 -1
  434. package/sdk/dist/protocols/hyperlane/abis.d.ts +5 -5
  435. package/sdk/dist/protocols/hyperlane/abis.js +5 -5
  436. package/sdk/dist/protocols/hyperlane/abis.js.map +1 -1
  437. package/sdk/dist/protocols/hyperlane/addresses.d.ts.map +1 -1
  438. package/sdk/dist/protocols/hyperlane/addresses.js +9 -0
  439. package/sdk/dist/protocols/hyperlane/addresses.js.map +1 -1
  440. package/sdk/dist/protocols/index.d.ts +1 -0
  441. package/sdk/dist/protocols/index.d.ts.map +1 -1
  442. package/sdk/dist/protocols/index.js +13 -0
  443. package/sdk/dist/protocols/index.js.map +1 -1
  444. package/sdk/dist/protocols/kim/abis.d.ts +7 -20
  445. package/sdk/dist/protocols/kim/abis.d.ts.map +1 -1
  446. package/sdk/dist/protocols/kim/abis.js +6 -12
  447. package/sdk/dist/protocols/kim/abis.js.map +1 -1
  448. package/sdk/dist/protocols/kim/functions.d.ts +1 -1
  449. package/sdk/dist/protocols/kim/functions.d.ts.map +1 -1
  450. package/sdk/dist/protocols/kim/functions.js +3 -2
  451. package/sdk/dist/protocols/kim/functions.js.map +1 -1
  452. package/sdk/dist/protocols/kyberswap/abis.d.ts +41 -16
  453. package/sdk/dist/protocols/kyberswap/abis.d.ts.map +1 -1
  454. package/sdk/dist/protocols/kyberswap/abis.js +21 -8
  455. package/sdk/dist/protocols/kyberswap/abis.js.map +1 -1
  456. package/sdk/dist/protocols/kyberswap/addresses.d.ts.map +1 -1
  457. package/sdk/dist/protocols/kyberswap/addresses.js +12 -2
  458. package/sdk/dist/protocols/kyberswap/addresses.js.map +1 -1
  459. package/sdk/dist/protocols/kyberswap-aggregator/addresses.d.ts.map +1 -1
  460. package/sdk/dist/protocols/kyberswap-aggregator/addresses.js +12 -1
  461. package/sdk/dist/protocols/kyberswap-aggregator/addresses.js.map +1 -1
  462. package/sdk/dist/protocols/layerbank/abis.d.ts +81 -24
  463. package/sdk/dist/protocols/layerbank/abis.d.ts.map +1 -1
  464. package/sdk/dist/protocols/layerbank/abis.js +69 -17
  465. package/sdk/dist/protocols/layerbank/abis.js.map +1 -1
  466. package/sdk/dist/protocols/layerbank/addresses.d.ts.map +1 -1
  467. package/sdk/dist/protocols/layerbank/addresses.js +3 -1
  468. package/sdk/dist/protocols/layerbank/addresses.js.map +1 -1
  469. package/sdk/dist/protocols/layerbank/functions.d.ts +4 -4
  470. package/sdk/dist/protocols/layerbank/functions.d.ts.map +1 -1
  471. package/sdk/dist/protocols/layerbank/functions.js +18 -16
  472. package/sdk/dist/protocols/layerbank/functions.js.map +1 -1
  473. package/sdk/dist/protocols/layerzero/abis.d.ts +3 -3
  474. package/sdk/dist/protocols/layerzero/abis.js +3 -3
  475. package/sdk/dist/protocols/layerzero/addresses.d.ts.map +1 -1
  476. package/sdk/dist/protocols/layerzero/addresses.js +11 -1
  477. package/sdk/dist/protocols/layerzero/addresses.js.map +1 -1
  478. package/sdk/dist/protocols/level-finance/abis.d.ts +6 -0
  479. package/sdk/dist/protocols/level-finance/abis.d.ts.map +1 -1
  480. package/sdk/dist/protocols/level-finance/abis.js +2 -0
  481. package/sdk/dist/protocols/level-finance/abis.js.map +1 -1
  482. package/sdk/dist/protocols/level-finance/functions.d.ts +2 -2
  483. package/sdk/dist/protocols/level-finance/functions.d.ts.map +1 -1
  484. package/sdk/dist/protocols/level-finance/functions.js +4 -4
  485. package/sdk/dist/protocols/lifi/abis.d.ts +41 -4
  486. package/sdk/dist/protocols/lifi/abis.d.ts.map +1 -1
  487. package/sdk/dist/protocols/lifi/abis.js +24 -4
  488. package/sdk/dist/protocols/lifi/abis.js.map +1 -1
  489. package/sdk/dist/protocols/lifi/addresses.d.ts.map +1 -1
  490. package/sdk/dist/protocols/lifi/addresses.js +9 -0
  491. package/sdk/dist/protocols/lifi/addresses.js.map +1 -1
  492. package/sdk/dist/protocols/lifi/functions.d.ts +1 -1
  493. package/sdk/dist/protocols/lifi/functions.d.ts.map +1 -1
  494. package/sdk/dist/protocols/lifi/functions.js +5 -2
  495. package/sdk/dist/protocols/lifi/functions.js.map +1 -1
  496. package/sdk/dist/protocols/liquity-v1/abis.d.ts +6 -0
  497. package/sdk/dist/protocols/liquity-v1/abis.d.ts.map +1 -1
  498. package/sdk/dist/protocols/liquity-v1/abis.js +7 -1
  499. package/sdk/dist/protocols/liquity-v1/abis.js.map +1 -1
  500. package/sdk/dist/protocols/liquity-v1/functions.d.ts +1 -1
  501. package/sdk/dist/protocols/liquity-v1/functions.d.ts.map +1 -1
  502. package/sdk/dist/protocols/liquity-v1/functions.js +1 -1
  503. package/sdk/dist/protocols/mantle-meth/abis.d.ts +26 -25
  504. package/sdk/dist/protocols/mantle-meth/abis.d.ts.map +1 -1
  505. package/sdk/dist/protocols/mantle-meth/abis.js +22 -17
  506. package/sdk/dist/protocols/mantle-meth/abis.js.map +1 -1
  507. package/sdk/dist/protocols/mantle-meth/addresses.d.ts.map +1 -1
  508. package/sdk/dist/protocols/mantle-meth/addresses.js +3 -0
  509. package/sdk/dist/protocols/mantle-meth/addresses.js.map +1 -1
  510. package/sdk/dist/protocols/mantle-meth/functions.d.ts +1 -1
  511. package/sdk/dist/protocols/mantle-meth/functions.d.ts.map +1 -1
  512. package/sdk/dist/protocols/mantle-meth/functions.js +4 -4
  513. package/sdk/dist/protocols/maverick/abis.d.ts +9 -0
  514. package/sdk/dist/protocols/maverick/abis.d.ts.map +1 -1
  515. package/sdk/dist/protocols/maverick/abis.js +7 -1
  516. package/sdk/dist/protocols/maverick/abis.js.map +1 -1
  517. package/sdk/dist/protocols/morpho-blue/addresses.d.ts.map +1 -1
  518. package/sdk/dist/protocols/morpho-blue/addresses.js +10 -0
  519. package/sdk/dist/protocols/morpho-blue/addresses.js.map +1 -1
  520. package/sdk/dist/protocols/mux-protocol/abis.d.ts +87 -32
  521. package/sdk/dist/protocols/mux-protocol/abis.d.ts.map +1 -1
  522. package/sdk/dist/protocols/mux-protocol/abis.js +54 -21
  523. package/sdk/dist/protocols/mux-protocol/abis.js.map +1 -1
  524. package/sdk/dist/protocols/mux-protocol/functions.d.ts +2 -2
  525. package/sdk/dist/protocols/mux-protocol/functions.d.ts.map +1 -1
  526. package/sdk/dist/protocols/mux-protocol/functions.js +8 -8
  527. package/sdk/dist/protocols/olympus/abis.d.ts +5 -2
  528. package/sdk/dist/protocols/olympus/abis.d.ts.map +1 -1
  529. package/sdk/dist/protocols/olympus/abis.js +2 -2
  530. package/sdk/dist/protocols/olympus/abis.js.map +1 -1
  531. package/sdk/dist/protocols/oneinch/abis.d.ts +5 -5
  532. package/sdk/dist/protocols/oneinch/abis.d.ts.map +1 -1
  533. package/sdk/dist/protocols/oneinch/abis.js +5 -3
  534. package/sdk/dist/protocols/oneinch/abis.js.map +1 -1
  535. package/sdk/dist/protocols/oneinch/functions.d.ts +1 -1
  536. package/sdk/dist/protocols/oneinch/functions.d.ts.map +1 -1
  537. package/sdk/dist/protocols/oneinch/functions.js +2 -2
  538. package/sdk/dist/protocols/openocean/abis.d.ts +14 -1
  539. package/sdk/dist/protocols/openocean/abis.d.ts.map +1 -1
  540. package/sdk/dist/protocols/openocean/abis.js +11 -1
  541. package/sdk/dist/protocols/openocean/abis.js.map +1 -1
  542. package/sdk/dist/protocols/openocean/functions.d.ts +1 -1
  543. package/sdk/dist/protocols/openocean/functions.d.ts.map +1 -1
  544. package/sdk/dist/protocols/openocean/functions.js +1 -1
  545. package/sdk/dist/protocols/opyn/abis.d.ts +4 -1
  546. package/sdk/dist/protocols/opyn/abis.d.ts.map +1 -1
  547. package/sdk/dist/protocols/opyn/abis.js +1 -1
  548. package/sdk/dist/protocols/opyn/abis.js.map +1 -1
  549. package/sdk/dist/protocols/pancakeswap-v3/abis.d.ts +6 -6
  550. package/sdk/dist/protocols/pancakeswap-v3/abis.js +6 -6
  551. package/sdk/dist/protocols/pancakeswap-v3/abis.js.map +1 -1
  552. package/sdk/dist/protocols/paraswap/abis.d.ts +1 -1
  553. package/sdk/dist/protocols/paraswap/abis.js +1 -1
  554. package/sdk/dist/protocols/pendle/abis.d.ts +288 -6
  555. package/sdk/dist/protocols/pendle/abis.d.ts.map +1 -1
  556. package/sdk/dist/protocols/pendle/abis.js +160 -6
  557. package/sdk/dist/protocols/pendle/abis.js.map +1 -1
  558. package/sdk/dist/protocols/permit2/abis.d.ts +1 -1
  559. package/sdk/dist/protocols/permit2/abis.js +1 -1
  560. package/sdk/dist/protocols/permit2/addresses.d.ts.map +1 -1
  561. package/sdk/dist/protocols/permit2/addresses.js +9 -0
  562. package/sdk/dist/protocols/permit2/addresses.js.map +1 -1
  563. package/sdk/dist/protocols/perpetual-protocol/abis.d.ts +46 -38
  564. package/sdk/dist/protocols/perpetual-protocol/abis.d.ts.map +1 -1
  565. package/sdk/dist/protocols/perpetual-protocol/abis.js +27 -14
  566. package/sdk/dist/protocols/perpetual-protocol/abis.js.map +1 -1
  567. package/sdk/dist/protocols/premia/abis.d.ts +18 -17
  568. package/sdk/dist/protocols/premia/abis.d.ts.map +1 -1
  569. package/sdk/dist/protocols/premia/abis.js +20 -10
  570. package/sdk/dist/protocols/premia/abis.js.map +1 -1
  571. package/sdk/dist/protocols/premia/addresses.d.ts.map +1 -1
  572. package/sdk/dist/protocols/premia/addresses.js +3 -8
  573. package/sdk/dist/protocols/premia/addresses.js.map +1 -1
  574. package/sdk/dist/protocols/premia/functions.d.ts +2 -2
  575. package/sdk/dist/protocols/premia/functions.d.ts.map +1 -1
  576. package/sdk/dist/protocols/premia/functions.js +8 -8
  577. package/sdk/dist/protocols/pyth/abis.d.ts +3 -3
  578. package/sdk/dist/protocols/pyth/abis.d.ts.map +1 -1
  579. package/sdk/dist/protocols/pyth/abis.js +6 -3
  580. package/sdk/dist/protocols/pyth/abis.js.map +1 -1
  581. package/sdk/dist/protocols/reflexer/abis.d.ts +8 -5
  582. package/sdk/dist/protocols/reflexer/abis.d.ts.map +1 -1
  583. package/sdk/dist/protocols/reflexer/abis.js +10 -6
  584. package/sdk/dist/protocols/reflexer/abis.js.map +1 -1
  585. package/sdk/dist/protocols/renzo/abis.d.ts +1 -1
  586. package/sdk/dist/protocols/renzo/abis.js +1 -1
  587. package/sdk/dist/protocols/renzo/abis.js.map +1 -1
  588. package/sdk/dist/protocols/sablier/abis.d.ts +2 -2
  589. package/sdk/dist/protocols/sablier/abis.js +2 -2
  590. package/sdk/dist/protocols/safe/addresses.d.ts.map +1 -1
  591. package/sdk/dist/protocols/safe/addresses.js +10 -0
  592. package/sdk/dist/protocols/safe/addresses.js.map +1 -1
  593. package/sdk/dist/protocols/seaport/abis.d.ts +65 -5
  594. package/sdk/dist/protocols/seaport/abis.d.ts.map +1 -1
  595. package/sdk/dist/protocols/seaport/abis.js +41 -5
  596. package/sdk/dist/protocols/seaport/abis.js.map +1 -1
  597. package/sdk/dist/protocols/seaport/addresses.d.ts.map +1 -1
  598. package/sdk/dist/protocols/seaport/addresses.js +10 -0
  599. package/sdk/dist/protocols/seaport/addresses.js.map +1 -1
  600. package/sdk/dist/protocols/seaport/functions.d.ts +1 -1
  601. package/sdk/dist/protocols/seaport/functions.d.ts.map +1 -1
  602. package/sdk/dist/protocols/seaport/functions.js +1 -0
  603. package/sdk/dist/protocols/seaport/functions.js.map +1 -1
  604. package/sdk/dist/protocols/silo/abis.d.ts +3 -0
  605. package/sdk/dist/protocols/silo/abis.d.ts.map +1 -1
  606. package/sdk/dist/protocols/silo/abis.js +4 -1
  607. package/sdk/dist/protocols/silo/abis.js.map +1 -1
  608. package/sdk/dist/protocols/silo/addresses.d.ts.map +1 -1
  609. package/sdk/dist/protocols/silo/addresses.js +2 -1
  610. package/sdk/dist/protocols/silo/addresses.js.map +1 -1
  611. package/sdk/dist/protocols/silo/functions.d.ts +1 -1
  612. package/sdk/dist/protocols/silo/functions.d.ts.map +1 -1
  613. package/sdk/dist/protocols/silo/functions.js +2 -1
  614. package/sdk/dist/protocols/silo/functions.js.map +1 -1
  615. package/sdk/dist/protocols/socket/abis.d.ts +1 -13
  616. package/sdk/dist/protocols/socket/abis.d.ts.map +1 -1
  617. package/sdk/dist/protocols/socket/abis.js +3 -11
  618. package/sdk/dist/protocols/socket/abis.js.map +1 -1
  619. package/sdk/dist/protocols/socket/functions.d.ts +1 -1
  620. package/sdk/dist/protocols/socket/functions.d.ts.map +1 -1
  621. package/sdk/dist/protocols/socket/functions.js +1 -1
  622. package/sdk/dist/protocols/spookyswap/addresses.d.ts.map +1 -1
  623. package/sdk/dist/protocols/spookyswap/addresses.js +2 -1
  624. package/sdk/dist/protocols/spookyswap/addresses.js.map +1 -1
  625. package/sdk/dist/protocols/squid/abis.d.ts +33 -21
  626. package/sdk/dist/protocols/squid/abis.d.ts.map +1 -1
  627. package/sdk/dist/protocols/squid/abis.js +19 -13
  628. package/sdk/dist/protocols/squid/abis.js.map +1 -1
  629. package/sdk/dist/protocols/squid/functions.d.ts +1 -1
  630. package/sdk/dist/protocols/squid/functions.d.ts.map +1 -1
  631. package/sdk/dist/protocols/squid/functions.js +2 -2
  632. package/sdk/dist/protocols/stargate/abis.d.ts +23 -3
  633. package/sdk/dist/protocols/stargate/abis.d.ts.map +1 -1
  634. package/sdk/dist/protocols/stargate/abis.js +19 -3
  635. package/sdk/dist/protocols/stargate/abis.js.map +1 -1
  636. package/sdk/dist/protocols/superfluid/abis.d.ts +2 -2
  637. package/sdk/dist/protocols/superfluid/abis.js +2 -2
  638. package/sdk/dist/protocols/superfluid/abis.js.map +1 -1
  639. package/sdk/dist/protocols/sushiswap-v2/addresses.d.ts.map +1 -1
  640. package/sdk/dist/protocols/sushiswap-v2/addresses.js +2 -1
  641. package/sdk/dist/protocols/sushiswap-v2/addresses.js.map +1 -1
  642. package/sdk/dist/protocols/swell/abis.d.ts +2 -8
  643. package/sdk/dist/protocols/swell/abis.d.ts.map +1 -1
  644. package/sdk/dist/protocols/swell/abis.js +4 -2
  645. package/sdk/dist/protocols/swell/abis.js.map +1 -1
  646. package/sdk/dist/protocols/swell/functions.d.ts +2 -2
  647. package/sdk/dist/protocols/swell/functions.d.ts.map +1 -1
  648. package/sdk/dist/protocols/swell/functions.js +4 -2
  649. package/sdk/dist/protocols/swell/functions.js.map +1 -1
  650. package/sdk/dist/protocols/synapse/addresses.d.ts.map +1 -1
  651. package/sdk/dist/protocols/synapse/addresses.js +2 -1
  652. package/sdk/dist/protocols/synapse/addresses.js.map +1 -1
  653. package/sdk/dist/protocols/synthetix-v3/abis.d.ts +40 -5
  654. package/sdk/dist/protocols/synthetix-v3/abis.d.ts.map +1 -1
  655. package/sdk/dist/protocols/synthetix-v3/abis.js +27 -5
  656. package/sdk/dist/protocols/synthetix-v3/abis.js.map +1 -1
  657. package/sdk/dist/protocols/synthetix-v3/addresses.d.ts.map +1 -1
  658. package/sdk/dist/protocols/synthetix-v3/addresses.js +2 -1
  659. package/sdk/dist/protocols/synthetix-v3/addresses.js.map +1 -1
  660. package/sdk/dist/protocols/synthra-v3/abis.d.ts +347 -0
  661. package/sdk/dist/protocols/synthra-v3/abis.d.ts.map +1 -0
  662. package/sdk/dist/protocols/synthra-v3/abis.js +242 -0
  663. package/sdk/dist/protocols/synthra-v3/abis.js.map +1 -0
  664. package/sdk/dist/protocols/synthra-v3/addresses.d.ts +3 -0
  665. package/sdk/dist/protocols/synthra-v3/addresses.d.ts.map +1 -0
  666. package/sdk/dist/protocols/synthra-v3/addresses.js +16 -0
  667. package/sdk/dist/protocols/synthra-v3/addresses.js.map +1 -0
  668. package/sdk/dist/protocols/synthra-v3/functions.d.ts +2 -0
  669. package/sdk/dist/protocols/synthra-v3/functions.d.ts.map +1 -0
  670. package/sdk/dist/protocols/synthra-v3/functions.js +9 -0
  671. package/sdk/dist/protocols/synthra-v3/functions.js.map +1 -0
  672. package/sdk/dist/protocols/synthra-v3/index.d.ts +5 -0
  673. package/sdk/dist/protocols/synthra-v3/index.d.ts.map +1 -0
  674. package/sdk/dist/protocols/synthra-v3/index.js +5 -0
  675. package/sdk/dist/protocols/synthra-v3/index.js.map +1 -0
  676. package/sdk/dist/protocols/synthra-v3/info.d.ts +3 -0
  677. package/sdk/dist/protocols/synthra-v3/info.d.ts.map +1 -0
  678. package/sdk/dist/protocols/synthra-v3/info.js +11 -0
  679. package/sdk/dist/protocols/synthra-v3/info.js.map +1 -0
  680. package/sdk/dist/protocols/thales/abis.d.ts +53 -24
  681. package/sdk/dist/protocols/thales/abis.d.ts.map +1 -1
  682. package/sdk/dist/protocols/thales/abis.js +27 -11
  683. package/sdk/dist/protocols/thales/abis.js.map +1 -1
  684. package/sdk/dist/protocols/thales/functions.d.ts +2 -2
  685. package/sdk/dist/protocols/thales/functions.d.ts.map +1 -1
  686. package/sdk/dist/protocols/thales/functions.js +5 -6
  687. package/sdk/dist/protocols/thales/functions.js.map +1 -1
  688. package/sdk/dist/protocols/thruster/abis.d.ts +1 -1
  689. package/sdk/dist/protocols/thruster/abis.js +1 -1
  690. package/sdk/dist/protocols/trader-joe/abis.d.ts +3 -3
  691. package/sdk/dist/protocols/trader-joe/abis.js +2 -2
  692. package/sdk/dist/protocols/trader-joe/abis.js.map +1 -1
  693. package/sdk/dist/protocols/uniswap-v2/addresses.d.ts.map +1 -1
  694. package/sdk/dist/protocols/uniswap-v2/addresses.js +10 -0
  695. package/sdk/dist/protocols/uniswap-v2/addresses.js.map +1 -1
  696. package/sdk/dist/protocols/uniswap-v3/abis.d.ts +127 -8
  697. package/sdk/dist/protocols/uniswap-v3/abis.d.ts.map +1 -1
  698. package/sdk/dist/protocols/uniswap-v3/abis.js +90 -8
  699. package/sdk/dist/protocols/uniswap-v3/abis.js.map +1 -1
  700. package/sdk/dist/protocols/uniswap-v3/addresses.d.ts.map +1 -1
  701. package/sdk/dist/protocols/uniswap-v3/addresses.js +14 -0
  702. package/sdk/dist/protocols/uniswap-v3/addresses.js.map +1 -1
  703. package/sdk/dist/protocols/uniswap-v4/abis.d.ts +27 -15
  704. package/sdk/dist/protocols/uniswap-v4/abis.d.ts.map +1 -1
  705. package/sdk/dist/protocols/uniswap-v4/abis.js +25 -15
  706. package/sdk/dist/protocols/uniswap-v4/abis.js.map +1 -1
  707. package/sdk/dist/protocols/uniswap-v4/addresses.d.ts.map +1 -1
  708. package/sdk/dist/protocols/uniswap-v4/addresses.js +11 -0
  709. package/sdk/dist/protocols/uniswap-v4/addresses.js.map +1 -1
  710. package/sdk/dist/protocols/unitflow-v3/abis.d.ts +104 -0
  711. package/sdk/dist/protocols/unitflow-v3/abis.d.ts.map +1 -0
  712. package/sdk/dist/protocols/unitflow-v3/abis.js +70 -0
  713. package/sdk/dist/protocols/unitflow-v3/abis.js.map +1 -0
  714. package/sdk/dist/protocols/unitflow-v3/addresses.d.ts +3 -0
  715. package/sdk/dist/protocols/unitflow-v3/addresses.d.ts.map +1 -0
  716. package/sdk/dist/protocols/unitflow-v3/addresses.js +19 -0
  717. package/sdk/dist/protocols/unitflow-v3/addresses.js.map +1 -0
  718. package/sdk/dist/protocols/unitflow-v3/functions.d.ts +2 -0
  719. package/sdk/dist/protocols/unitflow-v3/functions.d.ts.map +1 -0
  720. package/sdk/dist/protocols/unitflow-v3/functions.js +9 -0
  721. package/sdk/dist/protocols/unitflow-v3/functions.js.map +1 -0
  722. package/sdk/dist/protocols/unitflow-v3/index.d.ts +5 -0
  723. package/sdk/dist/protocols/unitflow-v3/index.d.ts.map +1 -0
  724. package/sdk/dist/protocols/unitflow-v3/index.js +5 -0
  725. package/sdk/dist/protocols/unitflow-v3/index.js.map +1 -0
  726. package/sdk/dist/protocols/unitflow-v3/info.d.ts +3 -0
  727. package/sdk/dist/protocols/unitflow-v3/info.d.ts.map +1 -0
  728. package/sdk/dist/protocols/unitflow-v3/info.js +12 -0
  729. package/sdk/dist/protocols/unitflow-v3/info.js.map +1 -0
  730. package/sdk/dist/protocols/velodrome/addresses.d.ts.map +1 -1
  731. package/sdk/dist/protocols/velodrome/addresses.js +3 -1
  732. package/sdk/dist/protocols/velodrome/addresses.js.map +1 -1
  733. package/sdk/dist/protocols/venus/abis.d.ts +62 -1
  734. package/sdk/dist/protocols/venus/abis.d.ts.map +1 -1
  735. package/sdk/dist/protocols/venus/abis.js +48 -1
  736. package/sdk/dist/protocols/venus/abis.js.map +1 -1
  737. package/sdk/dist/protocols/vertex/abis.d.ts +16 -9
  738. package/sdk/dist/protocols/vertex/abis.d.ts.map +1 -1
  739. package/sdk/dist/protocols/vertex/abis.js +13 -4
  740. package/sdk/dist/protocols/vertex/abis.js.map +1 -1
  741. package/sdk/dist/protocols/wormhole/abis.d.ts +2 -2
  742. package/sdk/dist/protocols/wormhole/abis.js +2 -2
  743. package/sdk/dist/protocols/wormhole/addresses.d.ts.map +1 -1
  744. package/sdk/dist/protocols/wormhole/addresses.js +9 -0
  745. package/sdk/dist/protocols/wormhole/addresses.js.map +1 -1
  746. package/sdk/dist/protocols/zerolend/addresses.d.ts.map +1 -1
  747. package/sdk/dist/protocols/zerolend/addresses.js +2 -1
  748. package/sdk/dist/protocols/zerolend/addresses.js.map +1 -1
  749. package/sdk/dist/protocols/zerox/addresses.d.ts.map +1 -1
  750. package/sdk/dist/protocols/zerox/addresses.js +2 -1
  751. package/sdk/dist/protocols/zerox/addresses.js.map +1 -1
  752. package/sdk/dist/protocols/zksync-bridge/abis.d.ts +1 -1
  753. package/sdk/dist/protocols/zksync-bridge/abis.js +1 -1
  754. package/sdk/dist/recipes/cctp-transfer.d.ts +17 -6
  755. package/sdk/dist/recipes/cctp-transfer.d.ts.map +1 -1
  756. package/sdk/dist/recipes/cctp-transfer.js +7 -20
  757. package/sdk/dist/recipes/cctp-transfer.js.map +1 -1
  758. package/sdk/dist/recipes/index.d.ts +5 -15
  759. package/sdk/dist/recipes/index.d.ts.map +1 -1
  760. package/sdk/dist/recipes/index.js +19 -36
  761. package/sdk/dist/recipes/index.js.map +1 -1
  762. package/sdk/dist/recipes/settle.sauce.ts +15 -2
  763. package/sdk/dist/routes/chain-exports.generated.d.ts +97 -0
  764. package/sdk/dist/routes/chain-exports.generated.d.ts.map +1 -0
  765. package/sdk/dist/routes/chain-exports.generated.js +91 -0
  766. package/sdk/dist/routes/chain-exports.generated.js.map +1 -0
  767. package/sdk/dist/routes/compile-types.d.ts +3 -0
  768. package/sdk/dist/routes/compile-types.d.ts.map +1 -1
  769. package/sdk/dist/routes/composed.d.ts +13 -0
  770. package/sdk/dist/routes/composed.d.ts.map +1 -0
  771. package/sdk/dist/routes/composed.js +94 -0
  772. package/sdk/dist/routes/composed.js.map +1 -0
  773. package/sdk/dist/routes/encode.d.ts +6 -6
  774. package/sdk/dist/routes/globals.d.ts +19 -4
  775. package/sdk/dist/routes/globals.d.ts.map +1 -1
  776. package/sdk/dist/routes/globals.js +51 -85
  777. package/sdk/dist/routes/globals.js.map +1 -1
  778. package/sdk/dist/routes/index.d.ts +15 -6
  779. package/sdk/dist/routes/index.d.ts.map +1 -1
  780. package/sdk/dist/routes/index.js +17 -5
  781. package/sdk/dist/routes/index.js.map +1 -1
  782. package/sdk/dist/routes/intent-dsl.d.ts +60 -19
  783. package/sdk/dist/routes/intent-dsl.d.ts.map +1 -1
  784. package/sdk/dist/routes/intent-dsl.js +175 -67
  785. package/sdk/dist/routes/intent-dsl.js.map +1 -1
  786. package/sdk/dist/routes/intent-pot.d.ts +49 -0
  787. package/sdk/dist/routes/intent-pot.d.ts.map +1 -0
  788. package/sdk/dist/routes/intent-pot.js +46 -0
  789. package/sdk/dist/routes/intent-pot.js.map +1 -0
  790. package/sdk/dist/routes/intent-sugar.d.ts +97 -0
  791. package/sdk/dist/routes/intent-sugar.d.ts.map +1 -0
  792. package/sdk/dist/routes/intent-sugar.js +615 -0
  793. package/sdk/dist/routes/intent-sugar.js.map +1 -0
  794. package/sdk/dist/routes/nest-dynamic.d.ts +146 -0
  795. package/sdk/dist/routes/nest-dynamic.d.ts.map +1 -0
  796. package/sdk/dist/routes/nest-dynamic.js +308 -0
  797. package/sdk/dist/routes/nest-dynamic.js.map +1 -0
  798. package/sdk/dist/routes/nest.d.ts +16 -5
  799. package/sdk/dist/routes/nest.d.ts.map +1 -1
  800. package/sdk/dist/routes/nest.js +29 -10
  801. package/sdk/dist/routes/nest.js.map +1 -1
  802. package/sdk/dist/routes/portal.d.ts +7 -272
  803. package/sdk/dist/routes/portal.d.ts.map +1 -1
  804. package/sdk/dist/routes/portal.js +13 -92
  805. package/sdk/dist/routes/portal.js.map +1 -1
  806. package/sdk/dist/routes/protocol-rewrite.d.ts.map +1 -1
  807. package/sdk/dist/routes/protocol-rewrite.js +2 -0
  808. package/sdk/dist/routes/protocol-rewrite.js.map +1 -1
  809. package/sdk/dist/routes/rs-compile.d.ts +26 -15
  810. package/sdk/dist/routes/rs-compile.d.ts.map +1 -1
  811. package/sdk/dist/routes/rs-compile.js +57 -169
  812. package/sdk/dist/routes/rs-compile.js.map +1 -1
  813. package/sdk/dist/routes/sauce-route.d.ts +26 -1
  814. package/sdk/dist/routes/sauce-route.d.ts.map +1 -1
  815. package/sdk/dist/routes/sauce-route.js +109 -6
  816. package/sdk/dist/routes/sauce-route.js.map +1 -1
  817. package/sdk/dist/routes/source-globals.generated.d.ts +435 -20
  818. package/sdk/dist/routes/source-globals.generated.d.ts.map +1 -1
  819. package/sdk/dist/routes/template.d.ts +184 -0
  820. package/sdk/dist/routes/template.d.ts.map +1 -0
  821. package/sdk/dist/routes/template.js +338 -0
  822. package/sdk/dist/routes/template.js.map +1 -0
  823. package/sdk/dist/routes/token-registry.d.ts.map +1 -1
  824. package/sdk/dist/routes/token-registry.js +35 -0
  825. package/sdk/dist/routes/token-registry.js.map +1 -1
  826. package/sdk/dist/routes/token-rewrite.d.ts +1 -1
  827. package/sdk/dist/routes/token-rewrite.d.ts.map +1 -1
  828. package/sdk/dist/skills/loader.d.ts +2 -7
  829. package/sdk/dist/skills/loader.d.ts.map +1 -1
  830. package/sdk/dist/skills/loader.js +14 -25
  831. package/sdk/dist/skills/loader.js.map +1 -1
  832. package/sdk/dist/std/token/token.evm.js +56 -15
  833. package/sdk/dist/std/token/token.svm.js +24 -3
  834. package/sdk/dist/svm/accessors.d.ts +3 -3
  835. package/sdk/dist/svm/accessors.js +3 -3
  836. package/sdk/dist/svm/client.d.ts +1 -0
  837. package/sdk/dist/svm/client.d.ts.map +1 -1
  838. package/sdk/dist/svm/client.js +6 -0
  839. package/sdk/dist/svm/client.js.map +1 -1
  840. package/sdk/dist/svm/clusters.d.ts +6 -2
  841. package/sdk/dist/svm/clusters.d.ts.map +1 -1
  842. package/sdk/dist/svm/clusters.js +0 -2
  843. package/sdk/dist/svm/clusters.js.map +1 -1
  844. package/sdk/dist/svm/engine-artifacts.d.ts +24 -13
  845. package/sdk/dist/svm/engine-artifacts.d.ts.map +1 -1
  846. package/sdk/dist/svm/engine-artifacts.js +31 -26
  847. package/sdk/dist/svm/engine-artifacts.js.map +1 -1
  848. package/sdk/dist/svm/engine-public.d.ts.map +1 -1
  849. package/sdk/dist/svm/engine-public.js +2 -1
  850. package/sdk/dist/svm/engine-public.js.map +1 -1
  851. package/sdk/dist/svm/index.d.ts +0 -1
  852. package/sdk/dist/svm/index.d.ts.map +1 -1
  853. package/sdk/dist/svm/index.js +3 -1
  854. package/sdk/dist/svm/index.js.map +1 -1
  855. package/sdk/dist/svm/intent.d.ts.map +1 -1
  856. package/sdk/dist/svm/intent.js +4 -3
  857. package/sdk/dist/svm/intent.js.map +1 -1
  858. package/sdk/dist/svm/loader.d.ts.map +1 -1
  859. package/sdk/dist/svm/loader.js +2 -3
  860. package/sdk/dist/svm/loader.js.map +1 -1
  861. package/sdk/dist/svm/recipes/index.d.ts +57 -4
  862. package/sdk/dist/svm/recipes/index.d.ts.map +1 -1
  863. package/sdk/dist/svm/recipes/index.js +7 -9
  864. package/sdk/dist/svm/recipes/index.js.map +1 -1
  865. package/sdk/dist/svm/venues/alphaq/index.d.ts.map +1 -1
  866. package/sdk/dist/svm/venues/alphaq/index.js +4 -2
  867. package/sdk/dist/svm/venues/alphaq/index.js.map +1 -1
  868. package/sdk/dist/svm/venues/binaryfi/index.d.ts.map +1 -1
  869. package/sdk/dist/svm/venues/binaryfi/index.js +2 -1
  870. package/sdk/dist/svm/venues/binaryfi/index.js.map +1 -1
  871. package/sdk/dist/svm/venues/fluxbeam/index.d.ts.map +1 -1
  872. package/sdk/dist/svm/venues/fluxbeam/index.js +2 -7
  873. package/sdk/dist/svm/venues/fluxbeam/index.js.map +1 -1
  874. package/sdk/dist/svm/venues/jupiter-lend-earn/index.d.ts.map +1 -1
  875. package/sdk/dist/svm/venues/jupiter-lend-earn/index.js +2 -1
  876. package/sdk/dist/svm/venues/jupiter-lend-earn/index.js.map +1 -1
  877. package/sdk/dist/svm/venues/kipseli/index.d.ts.map +1 -1
  878. package/sdk/dist/svm/venues/kipseli/index.js +31 -14
  879. package/sdk/dist/svm/venues/kipseli/index.js.map +1 -1
  880. package/sdk/dist/svm/venues/mercurial/index.d.ts.map +1 -1
  881. package/sdk/dist/svm/venues/mercurial/index.js +2 -7
  882. package/sdk/dist/svm/venues/mercurial/index.js.map +1 -1
  883. package/sdk/dist/svm/venues/meteora-damm-v1-stable/index.d.ts.map +1 -1
  884. package/sdk/dist/svm/venues/meteora-damm-v1-stable/index.js +3 -2
  885. package/sdk/dist/svm/venues/meteora-damm-v1-stable/index.js.map +1 -1
  886. package/sdk/dist/svm/venues/mswap/index.d.ts.map +1 -1
  887. package/sdk/dist/svm/venues/mswap/index.js +2 -2
  888. package/sdk/dist/svm/venues/mswap/index.js.map +1 -1
  889. package/sdk/dist/svm/venues/orca-legacy-token-swap/index.d.ts.map +1 -1
  890. package/sdk/dist/svm/venues/orca-legacy-token-swap/index.js +2 -7
  891. package/sdk/dist/svm/venues/orca-legacy-token-swap/index.js.map +1 -1
  892. package/sdk/dist/svm/venues/saber-stableswap/index.d.ts.map +1 -1
  893. package/sdk/dist/svm/venues/saber-stableswap/index.js +2 -7
  894. package/sdk/dist/svm/venues/saber-stableswap/index.js.map +1 -1
  895. package/sdk/dist/svm/venues/sanctum-infinity/index.js +2 -2
  896. package/sdk/dist/svm/venues/sanctum-infinity/index.js.map +1 -1
  897. package/sdk/dist/svm/venues/sanctum-stake-pool/index.d.ts.map +1 -1
  898. package/sdk/dist/svm/venues/sanctum-stake-pool/index.js +2 -8
  899. package/sdk/dist/svm/venues/sanctum-stake-pool/index.js.map +1 -1
  900. package/sdk/dist/svm/venues/spl-token-swap-forks/index.d.ts.map +1 -1
  901. package/sdk/dist/svm/venues/spl-token-swap-forks/index.js +2 -7
  902. package/sdk/dist/svm/venues/spl-token-swap-forks/index.js.map +1 -1
  903. package/sdk/dist/svm/venues/stabble-common.d.ts.map +1 -1
  904. package/sdk/dist/svm/venues/stabble-common.js +3 -8
  905. package/sdk/dist/svm/venues/stabble-common.js.map +1 -1
  906. package/sdk/dist/svm/verify.d.ts.map +1 -1
  907. package/sdk/dist/svm/verify.js +1 -4
  908. package/sdk/dist/svm/verify.js.map +1 -1
  909. package/sdk/dist/swap/index.d.ts +4 -4
  910. package/sdk/dist/swap/index.d.ts.map +1 -1
  911. package/sdk/dist/swap/index.js +4 -4
  912. package/sdk/dist/swap/index.js.map +1 -1
  913. package/sdk/dist/swap/source.d.ts +0 -7
  914. package/sdk/dist/swap/source.d.ts.map +1 -1
  915. package/sdk/dist/swap/source.js +3 -11
  916. package/sdk/dist/swap/source.js.map +1 -1
  917. package/sdk/dist/token/api.d.ts +8 -9
  918. package/sdk/dist/token/api.d.ts.map +1 -1
  919. package/sdk/dist/token/api.js +4 -5
  920. package/sdk/dist/token/api.js.map +1 -1
  921. package/sdk/dist/token/evm.d.ts +5 -2
  922. package/sdk/dist/token/evm.d.ts.map +1 -1
  923. package/sdk/dist/token/evm.js +24 -13
  924. package/sdk/dist/token/evm.js.map +1 -1
  925. package/sdk/dist/token/index.d.ts +4 -4
  926. package/sdk/dist/token/index.js +4 -4
  927. package/sdk/dist/token/safe.d.ts +17 -0
  928. package/sdk/dist/token/safe.d.ts.map +1 -0
  929. package/sdk/dist/token/safe.js +211 -0
  930. package/sdk/dist/token/safe.js.map +1 -0
  931. package/sdk/dist/token/source.d.ts +0 -4
  932. package/sdk/dist/token/source.d.ts.map +1 -1
  933. package/sdk/dist/token/source.js +7 -10
  934. package/sdk/dist/token/source.js.map +1 -1
  935. package/sdk/dist/verify/decode.d.ts +6 -6
  936. package/sdk/dist/verify/decode.js +7 -7
  937. package/sdk/dist/verify/decode.js.map +1 -1
  938. package/sdk/dist/verify/index.js +2 -2
  939. package/sdk/dist/verify/intent.js +2 -2
  940. package/sdk/dist/verify/vectors.d.ts +1 -1
  941. package/sdk/dist/verify/vectors.d.ts.map +1 -1
  942. package/sdk/dist/verify/vectors.js +2 -2
  943. package/sdk/dist/verify/vectors.js.map +1 -1
  944. package/sdk/dist/verify/wire.d.ts +21 -4
  945. package/sdk/dist/verify/wire.d.ts.map +1 -1
  946. package/sdk/dist/verify/wire.js +21 -4
  947. package/sdk/dist/verify/wire.js.map +1 -1
  948. package/sdk/dist/wasm-compiler.d.ts +31 -0
  949. package/sdk/dist/wasm-compiler.d.ts.map +1 -0
  950. package/sdk/dist/wasm-compiler.js +52 -0
  951. package/sdk/dist/wasm-compiler.js.map +1 -0
  952. package/sdk/src/protocols/aave-v4/AaveV4HubABI.json +67 -0
  953. package/sdk/src/protocols/aave-v4/AaveV4SpokeABI.json +215 -0
  954. package/sdk/src/protocols/aave-v4/abis.ts +139 -0
  955. package/sdk/src/protocols/aave-v4/addresses.ts +66 -0
  956. package/sdk/src/protocols/aave-v4/functions.ts +39 -0
  957. package/sdk/src/protocols/aave-v4/index.ts +4 -0
  958. package/sdk/src/protocols/aave-v4/info.ts +14 -0
  959. package/sdk/src/protocols/across/AcrossHubPoolABI.json +2 -2
  960. package/sdk/src/protocols/across/AcrossSpokePoolABI.json +27 -11
  961. package/sdk/src/protocols/across/abis.ts +16 -8
  962. package/sdk/src/protocols/across/addresses.ts +10 -0
  963. package/sdk/src/protocols/across/functions.ts +2 -2
  964. package/sdk/src/protocols/aerodrome-slipstream/AeroMetarouterABI.json +24 -0
  965. package/sdk/src/protocols/aerodrome-slipstream/SlipstreamCLFactoryABI.json +58 -0
  966. package/sdk/src/protocols/aerodrome-slipstream/SlipstreamPositionManagerABI.json +77 -0
  967. package/sdk/src/protocols/aerodrome-slipstream/abis.ts +74 -0
  968. package/sdk/src/protocols/aerodrome-slipstream/addresses.ts +40 -0
  969. package/sdk/src/protocols/aerodrome-slipstream/functions.ts +8 -0
  970. package/sdk/src/protocols/aerodrome-slipstream/index.ts +4 -0
  971. package/sdk/src/protocols/aerodrome-slipstream/info.ts +14 -0
  972. package/sdk/src/protocols/aevo/DepositContractABI.json +23 -2
  973. package/sdk/src/protocols/aevo/abis.ts +10 -2
  974. package/sdk/src/protocols/aevo/functions.ts +2 -2
  975. package/sdk/src/protocols/alchemix/AlchemistABI.json +1 -1
  976. package/sdk/src/protocols/alchemix/abis.ts +1 -1
  977. package/sdk/src/protocols/ambient/CrocSwapDexABI.json +2 -2
  978. package/sdk/src/protocols/ambient/abis.ts +3 -2
  979. package/sdk/src/protocols/ambient/addresses.ts +2 -1
  980. package/sdk/src/protocols/arrakis/ArrakisRouterABI.json +5 -1
  981. package/sdk/src/protocols/arrakis/ArrakisVaultABI.json +0 -16
  982. package/sdk/src/protocols/arrakis/abis.ts +2 -11
  983. package/sdk/src/protocols/arrakis/functions.ts +2 -1
  984. package/sdk/src/protocols/axelar/AxelarITSABI.json +1 -1
  985. package/sdk/src/protocols/axelar/abis.ts +1 -1
  986. package/sdk/src/protocols/balancer-v2/BalancerV2VaultABI.json +7 -7
  987. package/sdk/src/protocols/balancer-v2/abis.ts +7 -7
  988. package/sdk/src/protocols/cbeth/CbETHABI.json +10 -1
  989. package/sdk/src/protocols/cbeth/abis.ts +6 -2
  990. package/sdk/src/protocols/cctp/TokenMessengerABI.json +30 -9
  991. package/sdk/src/protocols/cctp/abis.ts +3 -1
  992. package/sdk/src/protocols/cctp/addresses.ts +3 -0
  993. package/sdk/src/protocols/chainlink/AggregatorV3ABI.json +3 -3
  994. package/sdk/src/protocols/chainlink/FeedRegistryABI.json +3 -3
  995. package/sdk/src/protocols/chainlink/abis.ts +6 -6
  996. package/sdk/src/protocols/chainlink/addresses.ts +10 -0
  997. package/sdk/src/protocols/chainlink-ccip/CCIPRouterABI.json +1 -1
  998. package/sdk/src/protocols/chainlink-ccip/abis.ts +1 -1
  999. package/sdk/src/protocols/chainlink-ccip/addresses.ts +9 -0
  1000. package/sdk/src/protocols/circle-gateway/GatewayMinterABI.json +49 -0
  1001. package/sdk/src/protocols/circle-gateway/GatewayWalletABI.json +111 -0
  1002. package/sdk/src/protocols/circle-gateway/abis.ts +86 -0
  1003. package/sdk/src/protocols/circle-gateway/addresses.ts +39 -0
  1004. package/sdk/src/protocols/circle-gateway/functions.ts +28 -0
  1005. package/sdk/src/protocols/circle-gateway/index.ts +4 -0
  1006. package/sdk/src/protocols/circle-gateway/info.ts +14 -0
  1007. package/sdk/src/protocols/compound-v2/CErc20ABI.json +2 -2
  1008. package/sdk/src/protocols/compound-v2/abis.ts +2 -2
  1009. package/sdk/src/protocols/connext/EverclearSpokeABI.json +60 -6
  1010. package/sdk/src/protocols/connext/abis.ts +27 -5
  1011. package/sdk/src/protocols/connext/addresses.ts +1 -7
  1012. package/sdk/src/protocols/connext/functions.ts +3 -2
  1013. package/sdk/src/protocols/curve/CurveRouterNGABI.json +37 -0
  1014. package/sdk/src/protocols/curve/CurveStableSwapABI.json +7 -7
  1015. package/sdk/src/protocols/curve/CurveThreePoolABI.json +117 -0
  1016. package/sdk/src/protocols/curve/abis.ts +91 -7
  1017. package/sdk/src/protocols/debridge/DlnDestinationABI.json +7 -7
  1018. package/sdk/src/protocols/debridge/DlnSourceABI.json +1 -1
  1019. package/sdk/src/protocols/debridge/abis.ts +5 -5
  1020. package/sdk/src/protocols/debridge/addresses.ts +11 -0
  1021. package/sdk/src/protocols/eco-routes/abis.ts +633 -0
  1022. package/sdk/src/protocols/eco-routes/addresses.generated.ts +589 -0
  1023. package/sdk/src/protocols/eco-routes/addresses.ts +27 -0
  1024. package/sdk/src/protocols/eco-routes/functions.ts +45 -0
  1025. package/sdk/src/protocols/eco-routes/index.ts +5 -0
  1026. package/sdk/src/protocols/eco-routes/info.ts +14 -0
  1027. package/sdk/src/protocols/eco-routes/lookup.ts +215 -0
  1028. package/sdk/src/protocols/eigenlayer/DelegationManagerABI.json +2 -2
  1029. package/sdk/src/protocols/eigenlayer/StrategyManagerABI.json +2 -2
  1030. package/sdk/src/protocols/eigenlayer/abis.ts +5 -4
  1031. package/sdk/src/protocols/ens/ENSRegistryABI.json +4 -4
  1032. package/sdk/src/protocols/ens/abis.ts +4 -4
  1033. package/sdk/src/protocols/etherfi/WeETHABI.json +1 -1
  1034. package/sdk/src/protocols/etherfi/abis.ts +2 -1
  1035. package/sdk/src/protocols/euler-v2/EVCABI.json +2 -2
  1036. package/sdk/src/protocols/euler-v2/abis.ts +2 -2
  1037. package/sdk/src/protocols/fluid/FluidLendingABI.json +20 -37
  1038. package/sdk/src/protocols/fluid/FluidVaultABI.json +41 -0
  1039. package/sdk/src/protocols/fluid/abis.ts +41 -18
  1040. package/sdk/src/protocols/fluid/functions.ts +18 -16
  1041. package/sdk/src/protocols/gains-network/DiamondABI.json +49 -37
  1042. package/sdk/src/protocols/gains-network/abis.ts +26 -21
  1043. package/sdk/src/protocols/gains-network/functions.ts +6 -6
  1044. package/sdk/src/protocols/gamma/UniProxyLegacyABI.json +62 -0
  1045. package/sdk/src/protocols/gamma/abis.ts +31 -0
  1046. package/sdk/src/protocols/gamma/addresses.ts +2 -7
  1047. package/sdk/src/protocols/gamma/functions.ts +10 -0
  1048. package/sdk/src/protocols/gelato/GelatoAutomateABI.json +2 -2
  1049. package/sdk/src/protocols/gelato/abis.ts +2 -2
  1050. package/sdk/src/protocols/gmx-v1/PositionRouterABI.json +21 -3
  1051. package/sdk/src/protocols/gmx-v1/abis.ts +5 -3
  1052. package/sdk/src/protocols/gmx-v1/functions.ts +2 -2
  1053. package/sdk/src/protocols/gmx-v2/ExchangeRouterABI.json +13 -5
  1054. package/sdk/src/protocols/gmx-v2/abis.ts +7 -4
  1055. package/sdk/src/protocols/gmx-v2/addresses.ts +3 -1
  1056. package/sdk/src/protocols/gmx-v2/functions.ts +4 -2
  1057. package/sdk/src/protocols/harvest/VaultABI.json +12 -2
  1058. package/sdk/src/protocols/harvest/abis.ts +2 -2
  1059. package/sdk/src/protocols/hegic/HegicABI.json +6 -2
  1060. package/sdk/src/protocols/hegic/abis.ts +7 -2
  1061. package/sdk/src/protocols/hegic/addresses.ts +1 -0
  1062. package/sdk/src/protocols/hegic/functions.ts +3 -3
  1063. package/sdk/src/protocols/hop/addresses.ts +5 -2
  1064. package/sdk/src/protocols/hyperlane/HyperlaneMailboxABI.json +5 -5
  1065. package/sdk/src/protocols/hyperlane/abis.ts +5 -5
  1066. package/sdk/src/protocols/hyperlane/addresses.ts +9 -0
  1067. package/sdk/src/protocols/index.ts +13 -0
  1068. package/sdk/src/protocols/kim/KimRouterABI.json +8 -27
  1069. package/sdk/src/protocols/kim/abis.ts +6 -12
  1070. package/sdk/src/protocols/kim/functions.ts +3 -2
  1071. package/sdk/src/protocols/kyberswap/KyberSwapElasticRouterABI.json +1 -1
  1072. package/sdk/src/protocols/kyberswap/KyberSwapMetaAggregationRouterABI.json +52 -18
  1073. package/sdk/src/protocols/kyberswap/abis.ts +21 -8
  1074. package/sdk/src/protocols/kyberswap/addresses.ts +12 -2
  1075. package/sdk/src/protocols/kyberswap-aggregator/addresses.ts +12 -1
  1076. package/sdk/src/protocols/layerbank/LTokenABI.json +19 -29
  1077. package/sdk/src/protocols/layerbank/LayerBankCoreABI.json +87 -2
  1078. package/sdk/src/protocols/layerbank/abis.ts +69 -17
  1079. package/sdk/src/protocols/layerbank/addresses.ts +3 -1
  1080. package/sdk/src/protocols/layerbank/functions.ts +18 -16
  1081. package/sdk/src/protocols/layerzero/LayerZeroEndpointV2ABI.json +3 -3
  1082. package/sdk/src/protocols/layerzero/abis.ts +3 -3
  1083. package/sdk/src/protocols/layerzero/addresses.ts +11 -1
  1084. package/sdk/src/protocols/level-finance/LiquidityPoolABI.json +8 -0
  1085. package/sdk/src/protocols/level-finance/abis.ts +2 -0
  1086. package/sdk/src/protocols/level-finance/functions.ts +4 -4
  1087. package/sdk/src/protocols/lifi/LiFiDiamondABI.json +54 -4
  1088. package/sdk/src/protocols/lifi/abis.ts +24 -4
  1089. package/sdk/src/protocols/lifi/addresses.ts +9 -0
  1090. package/sdk/src/protocols/lifi/functions.ts +5 -2
  1091. package/sdk/src/protocols/liquity-v1/BorrowerOperationsABI.json +8 -0
  1092. package/sdk/src/protocols/liquity-v1/abis.ts +7 -1
  1093. package/sdk/src/protocols/liquity-v1/functions.ts +1 -1
  1094. package/sdk/src/protocols/mantle-meth/METHABI.json +0 -46
  1095. package/sdk/src/protocols/mantle-meth/METHStakingABI.json +50 -0
  1096. package/sdk/src/protocols/mantle-meth/abis.ts +23 -17
  1097. package/sdk/src/protocols/mantle-meth/addresses.ts +3 -0
  1098. package/sdk/src/protocols/mantle-meth/functions.ts +4 -4
  1099. package/sdk/src/protocols/maverick/MaverickV2FactoryABI.json +8 -0
  1100. package/sdk/src/protocols/maverick/MaverickV2RouterABI.json +4 -0
  1101. package/sdk/src/protocols/maverick/abis.ts +7 -1
  1102. package/sdk/src/protocols/morpho-blue/addresses.ts +10 -0
  1103. package/sdk/src/protocols/mux-protocol/LiquidityPoolABI.json +45 -11
  1104. package/sdk/src/protocols/mux-protocol/OrderBookABI.json +59 -17
  1105. package/sdk/src/protocols/mux-protocol/abis.ts +55 -22
  1106. package/sdk/src/protocols/mux-protocol/functions.ts +8 -8
  1107. package/sdk/src/protocols/olympus/StakingABI.json +8 -3
  1108. package/sdk/src/protocols/olympus/abis.ts +2 -2
  1109. package/sdk/src/protocols/oneinch/AggregationRouterV6ABI.json +5 -5
  1110. package/sdk/src/protocols/oneinch/abis.ts +5 -3
  1111. package/sdk/src/protocols/oneinch/functions.ts +2 -2
  1112. package/sdk/src/protocols/openocean/OpenOceanExchangeV2ABI.json +19 -1
  1113. package/sdk/src/protocols/openocean/abis.ts +11 -1
  1114. package/sdk/src/protocols/openocean/functions.ts +1 -1
  1115. package/sdk/src/protocols/opyn/ControllerABI.json +6 -1
  1116. package/sdk/src/protocols/opyn/abis.ts +1 -1
  1117. package/sdk/src/protocols/pancakeswap-v3/PancakeSwapV3FactoryABI.json +1 -1
  1118. package/sdk/src/protocols/pancakeswap-v3/PancakeSwapV3NFPMABI.json +3 -3
  1119. package/sdk/src/protocols/pancakeswap-v3/PancakeSwapV3SmartRouterABI.json +2 -2
  1120. package/sdk/src/protocols/pancakeswap-v3/abis.ts +6 -6
  1121. package/sdk/src/protocols/paraswap/AugustusV5ABI.json +1 -1
  1122. package/sdk/src/protocols/paraswap/abis.ts +1 -1
  1123. package/sdk/src/protocols/pendle/PendleRouterABI.json +392 -6
  1124. package/sdk/src/protocols/pendle/abis.ts +160 -6
  1125. package/sdk/src/protocols/permit2/Permit2ABI.json +1 -1
  1126. package/sdk/src/protocols/permit2/abis.ts +1 -1
  1127. package/sdk/src/protocols/permit2/addresses.ts +9 -0
  1128. package/sdk/src/protocols/perpetual-protocol/ClearingHouseABI.json +61 -49
  1129. package/sdk/src/protocols/perpetual-protocol/abis.ts +27 -14
  1130. package/sdk/src/protocols/premia/DiamondABI.json +24 -24
  1131. package/sdk/src/protocols/premia/abis.ts +20 -10
  1132. package/sdk/src/protocols/premia/addresses.ts +3 -8
  1133. package/sdk/src/protocols/premia/functions.ts +8 -8
  1134. package/sdk/src/protocols/pyth/PythOracleABI.json +3 -3
  1135. package/sdk/src/protocols/pyth/abis.ts +6 -3
  1136. package/sdk/src/protocols/reflexer/ETHJoinABI.json +5 -1
  1137. package/sdk/src/protocols/reflexer/SAFEEngineABI.json +4 -4
  1138. package/sdk/src/protocols/reflexer/abis.ts +10 -6
  1139. package/sdk/src/protocols/renzo/RestakeManagerABI.json +1 -1
  1140. package/sdk/src/protocols/renzo/abis.ts +1 -1
  1141. package/sdk/src/protocols/sablier/LockupLinearABI.json +2 -2
  1142. package/sdk/src/protocols/sablier/abis.ts +2 -2
  1143. package/sdk/src/protocols/safe/addresses.ts +10 -0
  1144. package/sdk/src/protocols/seaport/SeaportABI.json +87 -5
  1145. package/sdk/src/protocols/seaport/abis.ts +41 -5
  1146. package/sdk/src/protocols/seaport/addresses.ts +10 -0
  1147. package/sdk/src/protocols/seaport/functions.ts +1 -0
  1148. package/sdk/src/protocols/silo/SiloABI.json +4 -0
  1149. package/sdk/src/protocols/silo/abis.ts +4 -1
  1150. package/sdk/src/protocols/silo/addresses.ts +2 -1
  1151. package/sdk/src/protocols/silo/functions.ts +2 -1
  1152. package/sdk/src/protocols/socket/SocketGatewayABI.json +1 -17
  1153. package/sdk/src/protocols/socket/abis.ts +3 -11
  1154. package/sdk/src/protocols/socket/functions.ts +1 -1
  1155. package/sdk/src/protocols/spookyswap/addresses.ts +2 -1
  1156. package/sdk/src/protocols/squid/SquidRouterABI.json +42 -26
  1157. package/sdk/src/protocols/squid/abis.ts +19 -13
  1158. package/sdk/src/protocols/squid/functions.ts +2 -2
  1159. package/sdk/src/protocols/stargate/StargatePoolABI.json +31 -3
  1160. package/sdk/src/protocols/stargate/abis.ts +19 -3
  1161. package/sdk/src/protocols/superfluid/CFAForwarderABI.json +2 -2
  1162. package/sdk/src/protocols/superfluid/abis.ts +2 -2
  1163. package/sdk/src/protocols/sushiswap-v2/addresses.ts +2 -1
  1164. package/sdk/src/protocols/swell/RswETHABI.json +1 -6
  1165. package/sdk/src/protocols/swell/SwETHABI.json +1 -6
  1166. package/sdk/src/protocols/swell/abis.ts +4 -2
  1167. package/sdk/src/protocols/swell/functions.ts +4 -2
  1168. package/sdk/src/protocols/synapse/addresses.ts +2 -1
  1169. package/sdk/src/protocols/synthetix-v3/PerpsMarketProxyABI.json +54 -5
  1170. package/sdk/src/protocols/synthetix-v3/abis.ts +27 -5
  1171. package/sdk/src/protocols/synthetix-v3/addresses.ts +2 -1
  1172. package/sdk/src/protocols/synthra-v3/SynthraV3FactoryABI.json +54 -0
  1173. package/sdk/src/protocols/synthra-v3/SynthraV3NonfungiblePositionManagerABI.json +212 -0
  1174. package/sdk/src/protocols/synthra-v3/SynthraV3QuoterV2ABI.json +55 -0
  1175. package/sdk/src/protocols/synthra-v3/SynthraV3SwapRouter02ABI.json +168 -0
  1176. package/sdk/src/protocols/synthra-v3/abis.ts +244 -0
  1177. package/sdk/src/protocols/synthra-v3/addresses.ts +17 -0
  1178. package/sdk/src/protocols/synthra-v3/functions.ts +8 -0
  1179. package/sdk/src/protocols/synthra-v3/index.ts +4 -0
  1180. package/sdk/src/protocols/synthra-v3/info.ts +13 -0
  1181. package/sdk/src/protocols/thales/PositionalMarketABI.json +16 -0
  1182. package/sdk/src/protocols/thales/SpeedMarketsAMMABI.json +57 -22
  1183. package/sdk/src/protocols/thales/ThalesAMMABI.json +4 -11
  1184. package/sdk/src/protocols/thales/abis.ts +28 -11
  1185. package/sdk/src/protocols/thales/functions.ts +5 -6
  1186. package/sdk/src/protocols/thruster/ThrusterV3SwapRouterABI.json +1 -1
  1187. package/sdk/src/protocols/thruster/abis.ts +1 -1
  1188. package/sdk/src/protocols/trader-joe/LBRouterABI.json +3 -3
  1189. package/sdk/src/protocols/trader-joe/abis.ts +2 -2
  1190. package/sdk/src/protocols/uniswap-v2/addresses.ts +10 -0
  1191. package/sdk/src/protocols/uniswap-v3/UniswapV3FactoryABI.json +2 -2
  1192. package/sdk/src/protocols/uniswap-v3/UniswapV3NonfungiblePositionManagerABI.json +3 -3
  1193. package/sdk/src/protocols/uniswap-v3/UniswapV3QuoterV2ABI.json +1 -1
  1194. package/sdk/src/protocols/uniswap-v3/UniswapV3SwapRouter02ABI.json +168 -0
  1195. package/sdk/src/protocols/uniswap-v3/UniswapV3SwapRouterABI.json +2 -2
  1196. package/sdk/src/protocols/uniswap-v3/abis.ts +91 -8
  1197. package/sdk/src/protocols/uniswap-v3/addresses.ts +14 -0
  1198. package/sdk/src/protocols/uniswap-v4/UniswapV4PoolManagerABI.json +15 -15
  1199. package/sdk/src/protocols/uniswap-v4/UniswapV4UniversalRouterABI.json +16 -0
  1200. package/sdk/src/protocols/uniswap-v4/abis.ts +25 -15
  1201. package/sdk/src/protocols/uniswap-v4/addresses.ts +11 -0
  1202. package/sdk/src/protocols/unitflow-v3/UnitFlowV3FactoryABI.json +46 -0
  1203. package/sdk/src/protocols/unitflow-v3/UnitFlowV3QuoterABI.json +37 -0
  1204. package/sdk/src/protocols/unitflow-v3/UnitFlowV3RouterABI.json +67 -0
  1205. package/sdk/src/protocols/unitflow-v3/abis.ts +71 -0
  1206. package/sdk/src/protocols/unitflow-v3/addresses.ts +20 -0
  1207. package/sdk/src/protocols/unitflow-v3/functions.ts +8 -0
  1208. package/sdk/src/protocols/unitflow-v3/index.ts +4 -0
  1209. package/sdk/src/protocols/unitflow-v3/info.ts +14 -0
  1210. package/sdk/src/protocols/velodrome/addresses.ts +3 -1
  1211. package/sdk/src/protocols/venus/VBNBABI.json +86 -0
  1212. package/sdk/src/protocols/venus/VTokenABI.json +1 -1
  1213. package/sdk/src/protocols/venus/abis.ts +49 -1
  1214. package/sdk/src/protocols/vertex/ClearinghouseABI.json +20 -10
  1215. package/sdk/src/protocols/vertex/EndpointABI.json +1 -1
  1216. package/sdk/src/protocols/vertex/abis.ts +13 -4
  1217. package/sdk/src/protocols/wormhole/WormholeTokenBridgeABI.json +2 -2
  1218. package/sdk/src/protocols/wormhole/abis.ts +2 -2
  1219. package/sdk/src/protocols/wormhole/addresses.ts +9 -0
  1220. package/sdk/src/protocols/zerolend/addresses.ts +2 -1
  1221. package/sdk/src/protocols/zerox/addresses.ts +2 -1
  1222. package/sdk/src/protocols/zksync-bridge/ZkSyncDiamondProxyABI.json +1 -1
  1223. package/sdk/src/protocols/zksync-bridge/abis.ts +1 -1
  1224. package/sdk/src/skills/aave-v4.md +91 -0
  1225. package/sdk/src/skills/across.md +28 -10
  1226. package/sdk/src/skills/aerodrome-slipstream.md +57 -0
  1227. package/sdk/src/skills/aerodrome.md +1 -0
  1228. package/sdk/src/skills/aevo.md +12 -4
  1229. package/sdk/src/skills/ambient.md +2 -2
  1230. package/sdk/src/skills/arrakis.md +3 -3
  1231. package/sdk/src/skills/cbeth.md +2 -2
  1232. package/sdk/src/skills/chainlink-ccip.md +3 -2
  1233. package/sdk/src/skills/chainlink.md +1 -1
  1234. package/sdk/src/skills/circle-gateway.md +98 -0
  1235. package/sdk/src/skills/compound-v2.md +2 -2
  1236. package/sdk/src/skills/connext.md +8 -7
  1237. package/sdk/src/skills/curve.md +17 -2
  1238. package/sdk/src/skills/debridge.md +3 -2
  1239. package/sdk/src/skills/eigenlayer.md +1 -1
  1240. package/sdk/src/skills/etherfi.md +1 -1
  1241. package/sdk/src/skills/fluid.md +46 -39
  1242. package/sdk/src/skills/gains-network.md +13 -21
  1243. package/sdk/src/skills/gamma.md +12 -6
  1244. package/sdk/src/skills/gmx-v1.md +4 -2
  1245. package/sdk/src/skills/gmx-v2.md +6 -2
  1246. package/sdk/src/skills/harvest.md +2 -2
  1247. package/sdk/src/skills/hegic.md +9 -8
  1248. package/sdk/src/skills/hop.md +8 -8
  1249. package/sdk/src/skills/hyperlane.md +4 -3
  1250. package/sdk/src/skills/index.md +84 -77
  1251. package/sdk/src/skills/kim.md +11 -14
  1252. package/sdk/src/skills/kyberswap-aggregator.md +5 -3
  1253. package/sdk/src/skills/kyberswap.md +6 -6
  1254. package/sdk/src/skills/layerbank.md +41 -35
  1255. package/sdk/src/skills/layerzero.md +3 -2
  1256. package/sdk/src/skills/level-finance.md +6 -4
  1257. package/sdk/src/skills/lido.md +5 -5
  1258. package/sdk/src/skills/lifi.md +41 -23
  1259. package/sdk/src/skills/liquity-v1.md +6 -2
  1260. package/sdk/src/skills/loader.ts +15 -25
  1261. package/sdk/src/skills/mantle-meth.md +13 -5
  1262. package/sdk/src/skills/maverick.md +3 -3
  1263. package/sdk/src/skills/morpho-blue.md +1 -1
  1264. package/sdk/src/skills/mux-protocol.md +21 -17
  1265. package/sdk/src/skills/oneinch.md +4 -3
  1266. package/sdk/src/skills/openocean.md +2 -2
  1267. package/sdk/src/skills/opyn.md +1 -1
  1268. package/sdk/src/skills/permit2.md +1 -1
  1269. package/sdk/src/skills/perpetual-protocol.md +2 -2
  1270. package/sdk/src/skills/premia.md +21 -21
  1271. package/sdk/src/skills/reflexer.md +1 -1
  1272. package/sdk/src/skills/renzo.md +1 -1
  1273. package/sdk/src/skills/safe.md +1 -1
  1274. package/sdk/src/skills/seaport.md +3 -2
  1275. package/sdk/src/skills/silo.md +4 -3
  1276. package/sdk/src/skills/socket.md +4 -5
  1277. package/sdk/src/skills/spookyswap.md +2 -2
  1278. package/sdk/src/skills/squid.md +18 -10
  1279. package/sdk/src/skills/stargate.md +1 -1
  1280. package/sdk/src/skills/sushiswap-v2.md +1 -1
  1281. package/sdk/src/skills/swell.md +6 -4
  1282. package/sdk/src/skills/synapse.md +1 -1
  1283. package/sdk/src/skills/synthetix-v3.md +1 -1
  1284. package/sdk/src/skills/synthra-v3.md +57 -0
  1285. package/sdk/src/skills/thales.md +12 -10
  1286. package/sdk/src/skills/trader-joe.md +1 -1
  1287. package/sdk/src/skills/uniswap-v2.md +2 -1
  1288. package/sdk/src/skills/uniswap-v3.md +14 -4
  1289. package/sdk/src/skills/uniswap-v4.md +3 -1
  1290. package/sdk/src/skills/unitflow-v3.md +62 -0
  1291. package/sdk/src/skills/velodrome.md +2 -2
  1292. package/sdk/src/skills/venus.md +10 -2
  1293. package/sdk/src/skills/vertex.md +1 -1
  1294. package/sdk/src/skills/wormhole.md +1 -1
  1295. package/sdk/src/skills/zerolend.md +1 -1
  1296. package/sdk/src/skills/zerox.md +1 -1
  1297. package/sdk/src/skills/zksync-bridge.md +1 -1
  1298. package/actions/dist/megas-swap.d.ts +0 -97
  1299. package/actions/dist/megas-swap.d.ts.map +0 -1
  1300. package/actions/dist/megas-swap.js +0 -286
  1301. package/sdk/dist/routes/globals.generated.d.ts +0 -94
  1302. package/sdk/dist/routes/globals.generated.d.ts.map +0 -1
  1303. package/sdk/dist/routes/globals.generated.js +0 -2
  1304. package/sdk/dist/routes/globals.generated.js.map +0 -1
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Where a Sauce Pot lives, without asking a chain.
3
+ *
4
+ * A Pot is CREATE2 from the Kitchen, so its address is a pure function of its OWNER and a salt —
5
+ * `V12Deployments.json` ships the deployer and init-code hash that complete the formula, and
6
+ * `V12EngineGate.json` records the Kitchen the released engine will accept Pots from. Nothing here
7
+ * reads the network.
8
+ *
9
+ * DERIVING IS NOT DEPLOYING. The address exists as arithmetic the moment you know the owner; the
10
+ * contract exists once somebody has called the Kitchen's `deployPot`, a permissionless call per
11
+ * (owner, salt) that `sauceEvmDeployPotCall` encodes. Nothing the SDK builds makes that call: an
12
+ * intent's Pot must exist before it is fulfilled, and the solver deploys it (`routes/intent-pot.ts`).
13
+ */
14
+ import { encodeAbiParameters, getAddress, getCreate2Address, keccak256 } from "viem";
15
+ import gate from "../artifacts/V12EngineGate.json" with { type: "json" };
16
+ import { v12PotDerivation } from "./v12-addresses.js";
17
+ /**
18
+ * The salt of the one Pot every intent on a chain shares: zero.
19
+ *
20
+ * A Pot is fixed by its (owner, salt) pair, so this is not a namespace: whoever calls
21
+ * `Kitchen.deployPot(executor, 0)` creates this same Pot, owned by the Executor, and nobody can
22
+ * create a different one there. That sharing is the intent. The owner is the destination
23
+ * `Portal.executor()`, which every intent through that Portal already shares, and the solver
24
+ * deploys exactly this Pot, one per Portal, with salt zero. Deriving it here gives the SDK the
25
+ * solver's Pot rather than a second one that nothing funds or deploys.
26
+ *
27
+ * `test/deployments-pot.test.ts` pins the result against what the released Kitchen reports on-chain
28
+ * for the production Portal.
29
+ */
30
+ export const SAUCE_INTENT_POT_SALT = `0x${"00".repeat(32)}`;
31
+ /** The Kitchen the released engine accepts Pots from — the one its gate re-derives against. */
32
+ export const v12GateKitchen = () => getAddress(gate.kitchen);
33
+ /**
34
+ * `CREATE2(kitchen, keccak256(abi.encode(owner, salt)), initCodeHash)` — the formula
35
+ * `V12Deployments.json` records, applied.
36
+ *
37
+ * Chain-independent, like every CREATE2 address: the same owner and salt give the same Pot on every
38
+ * chain the Kitchen is deployed at that address on.
39
+ */
40
+ export function v12PredictPot(owner, salt = SAUCE_INTENT_POT_SALT, kitchen = v12GateKitchen()) {
41
+ const derivation = v12PotDerivation();
42
+ return getCreate2Address({
43
+ from: kitchen,
44
+ bytecodeHash: derivation.initCodeHash,
45
+ salt: keccak256(encodeAbiParameters([{ type: "address" }, { type: "bytes32" }], [getAddress(owner), salt])),
46
+ });
47
+ }
48
+ //# sourceMappingURL=pot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pot.js","sourceRoot":"","sources":["../../src/deployments/pot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,iBAAiB,EAAE,SAAS,EAAY,MAAM,MAAM,CAAC;AAE/F,OAAO,IAAI,MAAM,iCAAiC,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAQ,KAAK,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;AAEjE,+FAA+F;AAC/F,MAAM,CAAC,MAAM,cAAc,GAAG,GAAQ,EAAE,CAAC,UAAU,CAAE,IAA4B,CAAC,OAAO,CAAQ,CAAC;AAElG;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAC3B,KAAU,EACV,OAAY,qBAAqB,EACjC,UAAe,cAAc,EAAE;IAE/B,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC;IAEtC,OAAO,iBAAiB,CAAC;QACvB,IAAI,EAAE,OAAO;QACb,YAAY,EAAE,UAAU,CAAC,YAAmB;QAC5C,IAAI,EAAE,SAAS,CACb,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC,CAC3F;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -61,10 +61,7 @@ export interface V12DeployedAddresses {
61
61
  };
62
62
  };
63
63
  }
64
- /**
65
- * The assembled release-address record. Read lazily and memoized, so importing this module never
66
- * throws — only calling it without a synced artifact does, with a remedy in the message.
67
- */
64
+ /** The assembled release-address record. */
68
65
  export declare function v12DeployedAddresses(): V12DeployedAddresses;
69
66
  /** Legacy EVM Kitchen version. Engine versions are in `v12DeployedAddresses().releases`. */
70
67
  export declare const v12DeployedVersion: () => string;
@@ -1 +1 @@
1
- {"version":3,"file":"v12-addresses.d.ts","sourceRoot":"","sources":["../../src/deployments/v12-addresses.ts"],"names":[],"mappings":"AAmBA,oGAAoG;AACpG,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,2GAA2G;AAC3G,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,iDAAiD;AACjD,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,2FAA2F;AAC3F,MAAM,WAAW,oBAAoB;IACnC,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAC;IAChB,2EAA2E;IAC3E,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CACd,SAAS,GAAG,aAAa,GAAG,SAAS,GAAG,aAAa,EACrD;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CACpC,CAAC;IACF,GAAG,EAAE;QACH,gBAAgB,EAAE,IAAI,CAAC;QACvB,oEAAoE;QACpE,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE;YACT,iEAAiE;YACjE,MAAM,EAAE,iBAAiB,CAAC;YAC1B,4DAA4D;YAC5D,MAAM,EAAE,iBAAiB,CAAC;YAC1B,gEAAgE;YAChE,OAAO,EAAE,iBAAiB,CAAC;YAC3B,mDAAmD;YACnD,qBAAqB,EAAE,iBAAiB,CAAC;SAC1C,CAAC;QACF,GAAG,EAAE,gBAAgB,CAAC;KACvB,CAAC;IACF,GAAG,EAAE;QACH,kBAAkB,EAAE,IAAI,CAAC;QACzB,QAAQ,EAAE;YACR,8EAA8E;YAC9E,MAAM,EAAE,gBAAgB,CAAC;YACzB,sDAAsD;YACtD,OAAO,EAAE,gBAAgB,CAAC;SAC3B,CAAC;KACH,CAAC;CACH;AAWD;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,oBAAoB,CAU3D;AAED,4FAA4F;AAC5F,eAAO,MAAM,kBAAkB,QAAO,MAAwC,CAAC;AAE/E,4DAA4D;AAC5D,eAAO,MAAM,gBAAgB,QAAO,MAA6D,CAAC;AAElG,sCAAsC;AACtC,eAAO,MAAM,gBAAgB,QAAO,MAA6D,CAAC;AAElG,sFAAsF;AACtF,eAAO,MAAM,iBAAiB,QAAO,MAA8D,CAAC;AAEpG,yEAAyE;AACzE,eAAO,MAAM,+BAA+B,QAAO,MACiB,CAAC;AAErE,mFAAmF;AACnF,eAAO,MAAM,gBAAgB,QAAO,gBAAkD,CAAC;AAEvF,yFAAyF;AACzF,eAAO,MAAM,qBAAqB,QAAO,MACa,CAAC;AAEvD,iEAAiE;AACjE,eAAO,MAAM,sBAAsB,QAAO,MACa,CAAC"}
1
+ {"version":3,"file":"v12-addresses.d.ts","sourceRoot":"","sources":["../../src/deployments/v12-addresses.ts"],"names":[],"mappings":"AAiBA,oGAAoG;AACpG,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,2GAA2G;AAC3G,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,iDAAiD;AACjD,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,2FAA2F;AAC3F,MAAM,WAAW,oBAAoB;IACnC,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAC;IAChB,2EAA2E;IAC3E,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CACd,SAAS,GAAG,aAAa,GAAG,SAAS,GAAG,aAAa,EACrD;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CACpC,CAAC;IACF,GAAG,EAAE;QACH,gBAAgB,EAAE,IAAI,CAAC;QACvB,oEAAoE;QACpE,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE;YACT,iEAAiE;YACjE,MAAM,EAAE,iBAAiB,CAAC;YAC1B,4DAA4D;YAC5D,MAAM,EAAE,iBAAiB,CAAC;YAC1B,gEAAgE;YAChE,OAAO,EAAE,iBAAiB,CAAC;YAC3B,mDAAmD;YACnD,qBAAqB,EAAE,iBAAiB,CAAC;SAC1C,CAAC;QACF,GAAG,EAAE,gBAAgB,CAAC;KACvB,CAAC;IACF,GAAG,EAAE;QACH,kBAAkB,EAAE,IAAI,CAAC;QACzB,QAAQ,EAAE;YACR,8EAA8E;YAC9E,MAAM,EAAE,gBAAgB,CAAC;YACzB,sDAAsD;YACtD,OAAO,EAAE,gBAAgB,CAAC;SAC3B,CAAC;KACH,CAAC;CACH;AAED,4CAA4C;AAC5C,wBAAgB,oBAAoB,IAAI,oBAAoB,CAE3D;AAED,4FAA4F;AAC5F,eAAO,MAAM,kBAAkB,QAAO,MAAwC,CAAC;AAE/E,4DAA4D;AAC5D,eAAO,MAAM,gBAAgB,QAAO,MAA6D,CAAC;AAElG,sCAAsC;AACtC,eAAO,MAAM,gBAAgB,QAAO,MAA6D,CAAC;AAElG,sFAAsF;AACtF,eAAO,MAAM,iBAAiB,QAAO,MAA8D,CAAC;AAEpG,yEAAyE;AACzE,eAAO,MAAM,+BAA+B,QAAO,MACiB,CAAC;AAErE,mFAAmF;AACnF,eAAO,MAAM,gBAAgB,QAAO,gBAAkD,CAAC;AAEvF,yFAAyF;AACzF,eAAO,MAAM,qBAAqB,QAAO,MACa,CAAC;AAEvD,iEAAiE;AACjE,eAAO,MAAM,sBAAsB,QAAO,MACa,CAAC"}
@@ -2,10 +2,10 @@
2
2
  * The deterministic addresses of the pinned Sauce v12 releases.
3
3
  *
4
4
  * `sync-engine-artifacts` assembles these from the `addresses.json` each of the four v12 releases
5
- * publishes and writes `artifacts/V12Deployments.json` next to this module — `dist/artifacts` in an
6
- * installed package, `src/artifacts` in a from-source tree — which `files: ["sdk/dist"]` carries into
7
- * the tarball. It is read at runtime (like `svm/engine-artifacts.ts` reads the `.so`), not imported,
8
- * so a clean `tsc` never depends on a file the sync produces.
5
+ * publishes and writes `artifacts/V12Deployments.json` — `dist/artifacts` in an installed package,
6
+ * `src/artifacts` in a from-source tree — which `files: ["sdk/dist"]` carries into the tarball. It is
7
+ * a JSON import, like `pot.ts`'s `V12EngineGate.json`, so no filesystem is read at run time and a
8
+ * bundler inlines it; from a source checkout, run the sync before `tsc`.
9
9
  *
10
10
  * These are the deterministic addresses — CREATE3 on EVM, a fixed/derived keypair on SVM — so they are
11
11
  * `chainIndependent` / `clusterIndependent`: one address set, the same everywhere it is deployed. They
@@ -13,24 +13,10 @@
13
13
  * are deployed; check code/programs on the target chain before use. These supersede the legacy
14
14
  * ADDRESSES — `v12.generated.ts` records the pre-`cook` stack, and its Kitchen/Router are not these.
15
15
  */
16
- import { existsSync, readFileSync } from "node:fs";
17
- import { dirname, resolve } from "node:path";
18
- import { fileURLToPath } from "node:url";
19
- const ARTIFACT = resolve(dirname(fileURLToPath(import.meta.url)), "..", "artifacts", "V12Deployments.json");
20
- let cached;
21
- /**
22
- * The assembled release-address record. Read lazily and memoized, so importing this module never
23
- * throws — only calling it without a synced artifact does, with a remedy in the message.
24
- */
16
+ import deployments from "../artifacts/V12Deployments.json" with { type: "json" };
17
+ /** The assembled release-address record. */
25
18
  export function v12DeployedAddresses() {
26
- if (cached !== undefined)
27
- return cached;
28
- if (!existsSync(ARTIFACT)) {
29
- throw new Error(`V12Deployments.json not found at ${ARTIFACT}. It ships in the published package; from a source ` +
30
- `checkout run \`pnpm --filter './sdk' sync-engine-artifacts\`.`);
31
- }
32
- cached = JSON.parse(readFileSync(ARTIFACT, "utf8"));
33
- return cached;
19
+ return deployments;
34
20
  }
35
21
  /** Legacy EVM Kitchen version. Engine versions are in `v12DeployedAddresses().releases`. */
36
22
  export const v12DeployedVersion = () => v12DeployedAddresses().version;
@@ -1 +1 @@
1
- {"version":3,"file":"v12-addresses.js","sourceRoot":"","sources":["../../src/deployments/v12-addresses.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAqEzC,MAAM,QAAQ,GAAG,OAAO,CACtB,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EACvC,IAAI,EACJ,WAAW,EACX,qBAAqB,CACtB,CAAC;AAEF,IAAI,MAAwC,CAAC;AAE7C;;;GAGG;AACH,MAAM,UAAU,oBAAoB;IAClC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACxC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACb,oCAAoC,QAAQ,qDAAqD;YAC/F,+DAA+D,CAClE,CAAC;IACJ,CAAC;IACD,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAyB,CAAC;IAC5E,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,4FAA4F;AAC5F,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAW,EAAE,CAAC,oBAAoB,EAAE,CAAC,OAAO,CAAC;AAE/E,4DAA4D;AAC5D,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAW,EAAE,CAAC,oBAAoB,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC;AAElG,sCAAsC;AACtC,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAW,EAAE,CAAC,oBAAoB,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC;AAElG,sFAAsF;AACtF,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAW,EAAE,CAAC,oBAAoB,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;AAEpG,yEAAyE;AACzE,MAAM,CAAC,MAAM,+BAA+B,GAAG,GAAW,EAAE,CAC1D,oBAAoB,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,qBAAqB,CAAC,OAAO,CAAC;AAErE,mFAAmF;AACnF,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAqB,EAAE,CAAC,oBAAoB,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC;AAEvF,yFAAyF;AACzF,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAW,EAAE,CAChD,oBAAoB,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;AAEvD,iEAAiE;AACjE,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAW,EAAE,CACjD,oBAAoB,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC"}
1
+ {"version":3,"file":"v12-addresses.js","sourceRoot":"","sources":["../../src/deployments/v12-addresses.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,WAAW,MAAM,kCAAkC,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAqEjF,4CAA4C;AAC5C,MAAM,UAAU,oBAAoB;IAClC,OAAO,WAAmC,CAAC;AAC7C,CAAC;AAED,4FAA4F;AAC5F,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAW,EAAE,CAAC,oBAAoB,EAAE,CAAC,OAAO,CAAC;AAE/E,4DAA4D;AAC5D,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAW,EAAE,CAAC,oBAAoB,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC;AAElG,sCAAsC;AACtC,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAW,EAAE,CAAC,oBAAoB,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC;AAElG,sFAAsF;AACtF,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAW,EAAE,CAAC,oBAAoB,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;AAEpG,yEAAyE;AACzE,MAAM,CAAC,MAAM,+BAA+B,GAAG,GAAW,EAAE,CAC1D,oBAAoB,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,qBAAqB,CAAC,OAAO,CAAC;AAErE,mFAAmF;AACnF,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAqB,EAAE,CAAC,oBAAoB,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC;AAEvF,yFAAyF;AACzF,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAW,EAAE,CAChD,oBAAoB,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;AAEvD,iEAAiE;AACjE,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAW,EAAE,CACjD,oBAAoB,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC"}
@@ -9,10 +9,10 @@
9
9
  * native-funded templates attach value with `evm.call(target, value, calldata)`. The executing Pot
10
10
  * must hold the assets. WETH wrapping and unwrapping use their raw selectors.
11
11
  *
12
- * Compile generated source with `routes.compileSauceRoute`, supplying both `pot` and `engine`
13
- * and `baseDirs: [...deposit.DEPOSIT_BASE_DIRS]`. The route compiler supplies a `void` annotation
14
- * for a falling-through entry. `swapThenDepositSource` combines swaps and deposits in one program;
15
- * compile that form with `deposit.COMPOSED_BASE_DIRS`.
12
+ * Compile generated source with `routes.compileSauceRoute`, supplying both `pot` and `engine`.
13
+ * The route compiler serves the protocol and ERC-20 ABIs the program imports, and supplies a `void`
14
+ * annotation for a falling-through entry. `swapThenDepositSource` combines swaps and deposits in
15
+ * one program, compiled the same way.
16
16
  *
17
17
  * Query `listDepositTemplates()` for supported protocol/action pairs. Templates include Aave and
18
18
  * Spark supply/withdrawal, Compound V3 supply, Euler/ERC-4626 deposits, Lido operations, and WETH
@@ -32,6 +32,6 @@ export type { Address, AddressInput, AmountInput, Hex, ApprovalPolicy, Beneficia
32
32
  export { DEPOSIT_TEMPLATES, depositTemplateFor, listDepositTemplates } from "./templates.js";
33
33
  export type { DepositKey } from "./templates.js";
34
34
  export { toDeposit } from "./params.js";
35
- export { depositCallStatement, depositImportLines, depositSource, swapThenDepositSource, DEPOSIT_BASE_DIRS, COMPOSED_BASE_DIRS, } from "./source.js";
35
+ export { depositCallStatement, depositImportLines, depositSource, swapThenDepositSource, } from "./source.js";
36
36
  export type { DepositSourceOptions, SwapThenDepositOptions } from "./source.js";
37
37
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/deposit/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,YAAY,EACV,OAAO,EACP,YAAY,EACZ,WAAW,EACX,GAAG,EACH,cAAc,EACd,kBAAkB,EAClB,WAAW,EACX,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,OAAO,EACP,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC7F,YAAY,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/deposit/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,YAAY,EACV,OAAO,EACP,YAAY,EACZ,WAAW,EACX,GAAG,EACH,cAAc,EACd,kBAAkB,EAClB,WAAW,EACX,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,OAAO,EACP,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC7F,YAAY,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC"}
@@ -1,4 +1,4 @@
1
1
  export { DEPOSIT_TEMPLATES, depositTemplateFor, listDepositTemplates } from "./templates.js";
2
2
  export { toDeposit } from "./params.js";
3
- export { depositCallStatement, depositImportLines, depositSource, swapThenDepositSource, DEPOSIT_BASE_DIRS, COMPOSED_BASE_DIRS, } from "./source.js";
3
+ export { depositCallStatement, depositImportLines, depositSource, swapThenDepositSource, } from "./source.js";
4
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/deposit/index.ts"],"names":[],"mappings":"AA8CA,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAG7F,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/deposit/index.ts"],"names":[],"mappings":"AA8CA,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAG7F,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,qBAAqB,GACtB,MAAM,aAAa,CAAC"}
@@ -14,8 +14,9 @@ import type { DepositSpec, NormalizedDeposit } from "./types.js";
14
14
  * `beneficiary` supplied to a `beneficiary: "unsupported"` template; `amount: "max"` on a template
15
15
  * with `allowsMaxAmount: false`; an unrecognized `extra` field name; an `amount` given as a `number`
16
16
  * that is not a safe integer (past 2^53-1 pass a bigint or a string, since the double has already
17
- * been rounded); and whatever the field's own `ExtraFieldSpec.normalize` throws for an out-of-range
18
- * extra value.
17
+ * been rounded); a `weth` template whose `target` is known not to be a WETH9 (a chain's native
18
+ * ERC-20, or a registry token on a chain with no canonical wrapped native — Arc); and whatever the field's
19
+ * own `ExtraFieldSpec.normalize` throws for an out-of-range extra value.
19
20
  */
20
21
  export declare function toDeposit(spec: DepositSpec | (Omit<DepositSpec, "amount"> & {
21
22
  amount: "balance" | "delta" | "max";
@@ -1 +1 @@
1
- {"version":3,"file":"params.d.ts","sourceRoot":"","sources":["../../src/deposit/params.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAkB,WAAW,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAajF;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,WAAW,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,GAAG;IAAE,MAAM,EAAE,SAAS,GAAG,OAAO,GAAG,KAAK,CAAA;CAAE,CAAC,GAC1F,iBAAiB,CAqEnB"}
1
+ {"version":3,"file":"params.d.ts","sourceRoot":"","sources":["../../src/deposit/params.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAkB,WAAW,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AA6CjF;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,WAAW,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,GAAG;IAAE,MAAM,EAAE,SAAS,GAAG,OAAO,GAAG,KAAK,CAAA;CAAE,CAAC,GAC1F,iBAAiB,CAuEnB"}
@@ -2,13 +2,46 @@
2
2
  * Normalization core for E4.2's universal deposit adapter — `toDeposit`. See
3
3
  * `sdk/src/deposit/index.ts` for the module overview.
4
4
  */
5
+ import { chains, getAllChainIds, nativeErc20 } from "../chains/index.js";
5
6
  import { toExactBigInt } from "../numeric.js";
7
+ import { TOKEN_REGISTRY } from "../routes/token-registry.js";
6
8
  import { depositTemplateFor } from "./templates.js";
7
9
  function toAddressBigint(value, _label) {
8
10
  if (typeof value === "bigint")
9
11
  return value;
10
12
  return BigInt(value);
11
13
  }
14
+ /**
15
+ * The WETH9 templates are chain-agnostic, so they cannot see which chain they run on, but they can
16
+ * see a target that is certainly not a WETH9. On a chain whose native coin is itself an ERC-20
17
+ * (Arc) there is no canonical wrapped native, and a `deposit()`/`withdraw()` sent to its native ERC-20
18
+ * (`0x3600…0000`) or to a registry token there — `WETH` included, which on Arc is bridged ETH —
19
+ * wraps nothing. Reject those by address instead of emitting the call.
20
+ *
21
+ * Built once from the static chain and token registries: address -> why it is not a WETH9.
22
+ */
23
+ const NOT_A_WRAPPER = (() => {
24
+ const reasons = new Map();
25
+ for (const chainId of getAllChainIds()) {
26
+ const erc20 = nativeErc20(chainId);
27
+ if (erc20 === undefined)
28
+ continue;
29
+ const { name, nativeCurrency } = chains[chainId];
30
+ const why = (what) => `${what} on ${name} (chain ${chainId}), which is not a WETH9. ${name} has no canonical ` +
31
+ `wrapped native: its native ${nativeCurrency.symbol} is already the ERC-20 at ` +
32
+ `${erc20.address}, so there is nothing to wrap or unwrap there`;
33
+ for (const row of TOKEN_REGISTRY[chainId] ?? [])
34
+ reasons.set(BigInt(row.address), why(row.symbol));
35
+ // Set last: the native ERC-20 is also a registry row (`USDC`), and this names it better.
36
+ reasons.set(BigInt(erc20.address), why(`the native ${nativeCurrency.symbol} ERC-20`));
37
+ }
38
+ return reasons;
39
+ })();
40
+ function rejectNonWrapperTarget(action, target) {
41
+ const reason = NOT_A_WRAPPER.get(target);
42
+ if (reason !== undefined)
43
+ throw new Error(`toDeposit: weth:${action} targets ${reason}`);
44
+ }
12
45
  function toBigIntStrict(value, label) {
13
46
  if (typeof value === "bigint")
14
47
  return value;
@@ -31,8 +64,9 @@ function toBigIntStrict(value, label) {
31
64
  * `beneficiary` supplied to a `beneficiary: "unsupported"` template; `amount: "max"` on a template
32
65
  * with `allowsMaxAmount: false`; an unrecognized `extra` field name; an `amount` given as a `number`
33
66
  * that is not a safe integer (past 2^53-1 pass a bigint or a string, since the double has already
34
- * been rounded); and whatever the field's own `ExtraFieldSpec.normalize` throws for an out-of-range
35
- * extra value.
67
+ * been rounded); a `weth` template whose `target` is known not to be a WETH9 (a chain's native
68
+ * ERC-20, or a registry token on a chain with no canonical wrapped native — Arc); and whatever the field's
69
+ * own `ExtraFieldSpec.normalize` throws for an out-of-range extra value.
36
70
  */
37
71
  export function toDeposit(spec) {
38
72
  const template = depositTemplateFor(spec.protocol, spec.action);
@@ -72,9 +106,12 @@ export function toDeposit(spec) {
72
106
  raw !== undefined ? fieldSpec.normalize(raw, `extra.${name}`) : fieldSpec.defaultValue;
73
107
  }
74
108
  const approvalPolicy = spec.approvalPolicy ?? "exact";
109
+ const target = toAddressBigint(spec.target, "target");
110
+ if (spec.protocol === "weth")
111
+ rejectNonWrapperTarget(spec.action, target);
75
112
  return {
76
113
  template,
77
- target: toAddressBigint(spec.target, "target"),
114
+ target,
78
115
  token: template.binding === null ? null : toAddressBigint(spec.token, "token"),
79
116
  amount,
80
117
  beneficiary: template.beneficiary === "unsupported"
@@ -1 +1 @@
1
- {"version":3,"file":"params.js","sourceRoot":"","sources":["../../src/deposit/params.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"params.js","sourceRoot":"","sources":["../../src/deposit/params.ts"],"names":[],"mappings":"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"}
@@ -1,24 +1,5 @@
1
1
  import type { SwapSourceSpec } from "../swap/types.js";
2
2
  import type { DepositSourceSpec } from "./types.js";
3
- /**
4
- * `baseDirs` for compiling a `depositSource`/`depositCallStatement` program. Two entries, because
5
- * (unlike `swap`, whose only import is the engine-vendored `ISauceRouter`) a deposit template's
6
- * import resolves against the SDK's PROTOCOL registry, which lives in `sdk/src/protocols`, not
7
- * `sdk/dist/artifacts`:
8
- *
9
- * 1. `join(__dirname, "..")` — the dist root, resolving `./artifacts/IERC20.json` (same artifact
10
- * `swap`'s `"balance"` path already uses).
11
- * 2. `join(__dirname, "..", "..", "src")` — the SHIPPED `sdk/src` tree (the root `package.json`
12
- * `files` list ships `sdk/src/protocols` verbatim — see `sdk/src/deposit/index.ts`'s packaging
13
- * note), resolving `./protocols/<slug>/<X>ABI.json`.
14
- *
15
- * In dev (this package's own `src/`), `__dirname` is `sdk/src/deposit`, so both entries land on
16
- * `sdk/src`, which already has both trees.
17
- */
18
- export declare const DEPOSIT_BASE_DIRS: readonly string[];
19
- /** `SWAP_BASE_DIRS` ∪ `DEPOSIT_BASE_DIRS`, de-duped — the `baseDirs` a `swapThenDepositSource`
20
- * program needs. */
21
- export declare const COMPOSED_BASE_DIRS: readonly string[];
22
3
  /**
23
4
  * One deposit's full statement block (any `"balance"` binding line, the approve line if
24
5
  * applicable, then the protocol call) for `spec` — for splicing into a larger, hand-written
@@ -1 +1 @@
1
- {"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../../src/deposit/source.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGvD,OAAO,KAAK,EAAe,iBAAiB,EAAqB,MAAM,YAAY,CAAC;AAKpF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,iBAAiB,EAAE,SAAS,MAAM,EAG9C,CAAC;AAEF;qBACqB;AACrB,eAAO,MAAM,kBAAkB,EAAE,SAAS,MAAM,EAE/C,CAAC;AA4DF;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,iBAAiB,EAAE,SAAS,SAAK,GAAG,MAAM,CASpF;AAED;;mGAEmG;AACnG,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,iBAAiB,GAAG,SAAS,iBAAiB,EAAE,GACtD,SAAS,MAAM,EAAE,CAqBnB;AAED,MAAM,WAAW,oBAAoB;IACnC,4BAA4B;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iGAAiG;IACjG,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7B;AASD;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,iBAAiB,GAAG,SAAS,iBAAiB,EAAE,EACtD,IAAI,GAAE,oBAAyB,GAC9B,MAAM,CASR;AAED,MAAM,WAAW,sBAAsB;IACrC,4BAA4B;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iGAAiG;IACjG,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,cAAc,GAAG,SAAS,cAAc,EAAE,EACjD,QAAQ,EAAE,iBAAiB,GAAG,SAAS,iBAAiB,EAAE,EAC1D,IAAI,GAAE,sBAA2B,GAChC,MAAM,CAwDR"}
1
+ {"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../../src/deposit/source.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAIvD,OAAO,KAAK,EAAe,iBAAiB,EAAqB,MAAM,YAAY,CAAC;AA0EpF;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,iBAAiB,EAAE,SAAS,SAAK,GAAG,MAAM,CASpF;AAED;;mGAEmG;AACnG,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,iBAAiB,GAAG,SAAS,iBAAiB,EAAE,GACtD,SAAS,MAAM,EAAE,CAqBnB;AAED,MAAM,WAAW,oBAAoB;IACnC,4BAA4B;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iGAAiG;IACjG,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7B;AASD;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,iBAAiB,GAAG,SAAS,iBAAiB,EAAE,EACtD,IAAI,GAAE,oBAAyB,GAC9B,MAAM,CASR;AAED,MAAM,WAAW,sBAAsB;IACrC,4BAA4B;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iGAAiG;IACjG,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,cAAc,GAAG,SAAS,cAAc,EAAE,EACjD,QAAQ,EAAE,iBAAiB,GAAG,SAAS,iBAAiB,EAAE,EAC1D,IAAI,GAAE,sBAA2B,GAChC,MAAM,CAwDR"}
@@ -2,39 +2,15 @@
2
2
  * SauceScript SOURCE emission for E4.2's universal deposit/stake/wrap adapter — pure string
3
3
  * templating over {@link toDeposit}'s normalized output. Imports NO compiler (same posture as
4
4
  * `sdk/src/swap/source.ts`). See `sdk/src/deposit/index.ts` for the module overview and
5
- * `sdk/src/swap/index.ts` for the E4.1 sibling this composes with.
5
+ * `sdk/src/swap/index.ts` for the E4.1 sibling this composes with. A template's
6
+ * `./protocols/<slug>/<Export>.json` import and the `./artifacts/IERC20.json` an approval needs are
7
+ * both served by the route compiler, so compiling one needs no resolver option.
6
8
  */
7
- import { dirname, join } from "node:path";
8
- import { fileURLToPath } from "node:url";
9
- import { SWAP_BASE_DIRS, swapCallStatement, swapImportLines } from "../swap/source.js";
9
+ import { swapCallStatement, swapImportLines } from "../swap/source.js";
10
+ import { safeApproveStatements } from "../token/safe.js";
10
11
  import { formatBigint } from "./format.js";
11
12
  import { toDeposit } from "./params.js";
12
- const __dirname = dirname(fileURLToPath(import.meta.url));
13
13
  const MAX_UINT256 = (1n << 256n) - 1n;
14
- /**
15
- * `baseDirs` for compiling a `depositSource`/`depositCallStatement` program. Two entries, because
16
- * (unlike `swap`, whose only import is the engine-vendored `ISauceRouter`) a deposit template's
17
- * import resolves against the SDK's PROTOCOL registry, which lives in `sdk/src/protocols`, not
18
- * `sdk/dist/artifacts`:
19
- *
20
- * 1. `join(__dirname, "..")` — the dist root, resolving `./artifacts/IERC20.json` (same artifact
21
- * `swap`'s `"balance"` path already uses).
22
- * 2. `join(__dirname, "..", "..", "src")` — the SHIPPED `sdk/src` tree (the root `package.json`
23
- * `files` list ships `sdk/src/protocols` verbatim — see `sdk/src/deposit/index.ts`'s packaging
24
- * note), resolving `./protocols/<slug>/<X>ABI.json`.
25
- *
26
- * In dev (this package's own `src/`), `__dirname` is `sdk/src/deposit`, so both entries land on
27
- * `sdk/src`, which already has both trees.
28
- */
29
- export const DEPOSIT_BASE_DIRS = [
30
- join(__dirname, ".."),
31
- join(__dirname, "..", "..", "src"),
32
- ];
33
- /** `SWAP_BASE_DIRS` ∪ `DEPOSIT_BASE_DIRS`, de-duped — the `baseDirs` a `swapThenDepositSource`
34
- * program needs. */
35
- export const COMPOSED_BASE_DIRS = [
36
- ...new Set([...SWAP_BASE_DIRS, ...DEPOSIT_BASE_DIRS]),
37
- ];
38
14
  const IERC20_IMPORT = `import { IERC20 } from "./artifacts/IERC20.json";`;
39
15
  function needsIerc20Import(d) {
40
16
  if (d.template.funding === "erc20-approve" && d.approvalPolicy !== "none")
@@ -51,14 +27,21 @@ function balanceExpression(deposit) {
51
27
  /** The approve line(s) for a normalized deposit whose amount has already resolved to `amountExpr`
52
28
  * (a literal or a bound identifier) — the ONE place `funding`/`approvalPolicy` is consulted, so no
53
29
  * template emits its own approve and none can forget one. */
54
- function approveLines(d, amountExpr) {
30
+ function approveLines(d, amountExpr, varSuffix = "") {
55
31
  if (d.template.funding !== "erc20-approve" || d.approvalPolicy === "none")
56
32
  return [];
57
33
  if (d.token === null)
58
34
  throw new Error("deposit: unreachable — erc20-approve template without a token");
59
- const approveAmount = d.approvalPolicy === "max" ? formatBigint(MAX_UINT256) : amountExpr;
35
+ // `SafeERC20`/`forceApprove` semantics, not `IERC20.at(t).approve(...)`: the vendored ABI's
36
+ // `bool` return is decoded even when discarded (which reverts on a no-return token like USDT),
37
+ // and skipping the decode alone would accept a `false` return as success. `token/safe.ts` also
38
+ // resets a non-zero allowance first, which USDT requires. A literal amount is passed as a
39
+ // literal so it folds into the calldata; anything else is a bound identifier.
40
+ const amount = /^\d+n$/.test(amountExpr)
41
+ ? { literal: BigInt(amountExpr.slice(0, -1)) }
42
+ : { local: amountExpr };
60
43
  return [
61
- `IERC20.at(${formatBigint(d.token)}).approve(${formatBigint(d.target)}, ${approveAmount});`,
44
+ ...safeApproveStatements(`dep${varSuffix}_`, formatBigint(d.token), { literal: d.target }, d.approvalPolicy === "max" ? { literal: MAX_UINT256 } : amount),
62
45
  ];
63
46
  }
64
47
  /** Resolves `d.amount` (a literal, or `"balance"`/`"max"`) into an amount EXPRESSION, plus any
@@ -96,7 +79,7 @@ export function depositCallStatement(spec, varSuffix = "") {
96
79
  const { pre, amountExpr } = resolveAmountExpr(normalized, varSuffix);
97
80
  const lines = [
98
81
  ...pre,
99
- ...approveLines(normalized, amountExpr),
82
+ ...approveLines(normalized, amountExpr, varSuffix),
100
83
  ...normalized.template.emit(normalized, amountExpr, varSuffix),
101
84
  ];
102
85
  return lines.join("\n");
@@ -205,7 +188,7 @@ export function swapThenDepositSource(swaps, deposits, opts = {}) {
205
188
  return depositCallStatement(d, String(i));
206
189
  const normalized = toDeposit({ ...d, amount: 0n });
207
190
  const lines = [
208
- ...approveLines(normalized, deltaExpr),
191
+ ...approveLines(normalized, deltaExpr, String(i)),
209
192
  ...normalized.template.emit(normalized, deltaExpr, String(i)),
210
193
  ];
211
194
  return lines.join("\n");
@@ -1 +1 @@
1
- {"version":3,"file":"source.js","sourceRoot":"","sources":["../../src/deposit/source.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"source.js","sourceRoot":"","sources":["../../src/deposit/source.ts"],"names":[],"mappings":"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"}
@@ -61,7 +61,7 @@ export type ChainContracts = {
61
61
  * `test/descriptors-accessors.test.ts`.
62
62
  */
63
63
  export declare function chainContracts(chainRef: ChainRef): ChainContracts;
64
- /** Import-based front door (option-b): `contracts.on('base').Uniswap.UniversalRouter.execute(...)`.
65
- * Escape hatch for `__ECO_ROUTES_NO_GLOBALS__` hosts and for the TS2451 own-`const Base` caveat. */
64
+ /** Chain-ref front door: `contracts.on('base').Uniswap.UniversalRouter.execute(...)` — for a
65
+ * caller resolving the chain at run time rather than importing the `Base` accessor. */
66
66
  export declare function on(chainRef: ChainRef): ChainContracts;
67
67
  //# sourceMappingURL=accessors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"accessors.d.ts","sourceRoot":"","sources":["../../src/descriptors/accessors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AACzC,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,QAAQ,EACb,KAAK,SAAS,EACf,MAAM,wBAAwB,CAAC;AAKhC,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACzF,OAAO,KAAK,EACV,eAAe,EACf,SAAS,EACT,cAAc,EACd,QAAQ,EACR,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB;;;;;;;;GAQG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,+GAA+G;IAC/G,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAClB,QAAQ,CAAC,OAAO,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAC9C,8HAA8H;IAC9H,EAAE,CAAC,OAAO,EAAE,OAAO,GAAG,gBAAgB,CAAC;IACvC,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;CACpC;AAED;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,CAAC,IAAI,YAAY,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG;QAC3C,QAAQ,EAAE,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,GAAG,gBAAgB;KACpD;CACF,GAAG;IACF,QAAQ,EAAE,CAAC,IAAI,SAAS,GAAG;QAAE,QAAQ,EAAE,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,GAAG,gBAAgB;KAAE;CACpF,CAAC;AAqFF;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ,GAAG,cAAc,CA4FjE;AAED;qGACqG;AACrG,wBAAgB,EAAE,CAAC,QAAQ,EAAE,QAAQ,GAAG,cAAc,CAErD"}
1
+ {"version":3,"file":"accessors.d.ts","sourceRoot":"","sources":["../../src/descriptors/accessors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AACzC,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,QAAQ,EACb,KAAK,SAAS,EACf,MAAM,wBAAwB,CAAC;AAKhC,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACzF,OAAO,KAAK,EACV,eAAe,EACf,SAAS,EACT,cAAc,EACd,QAAQ,EACR,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB;;;;;;;;GAQG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,+GAA+G;IAC/G,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAClB,QAAQ,CAAC,OAAO,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAC9C,8HAA8H;IAC9H,EAAE,CAAC,OAAO,EAAE,OAAO,GAAG,gBAAgB,CAAC;IACvC,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;CACpC;AAED;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,CAAC,IAAI,YAAY,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG;QAC3C,QAAQ,EAAE,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,GAAG,gBAAgB;KACpD;CACF,GAAG;IACF,QAAQ,EAAE,CAAC,IAAI,SAAS,GAAG;QAAE,QAAQ,EAAE,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,GAAG,gBAAgB;KAAE;CACpF,CAAC;AAmGF;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ,GAAG,cAAc,CA4FjE;AAED;wFACwF;AACxF,wBAAgB,EAAE,CAAC,QAAQ,EAAE,QAAQ,GAAG,cAAc,CAErD"}
@@ -1,7 +1,7 @@
1
1
  import { requireChain, } from "../chains/canonical.js";
2
2
  import { pascalOfSlug } from "../routes/builder.js";
3
3
  import { makeContractCall } from "./call.js";
4
- import { addressOn, requireContract } from "./query.js";
4
+ import { addressOn, methodOf, requireContract } from "./query.js";
5
5
  import { DESCRIPTORS } from "./registry.js";
6
6
  function buildAccessor(descriptor, chain, addressOverride) {
7
7
  const isInterface = descriptor.kind === "interface";
@@ -20,8 +20,19 @@ function buildAccessor(descriptor, chain, addressOverride) {
20
20
  return buildAccessor(descriptor, chain, newAddress);
21
21
  },
22
22
  };
23
+ // An overloaded name dispatches on argument count, so the call reports the overload it encodes.
24
+ // `descriptors-linkage.test.ts` holds every descriptor's overloads to distinct counts.
25
+ const byName = new Map();
23
26
  for (const method of descriptor.methods) {
24
- base[method.name] = (...args) => {
27
+ byName.set(method.name, [...(byName.get(method.name) ?? []), method]);
28
+ }
29
+ for (const [name, overloads] of byName) {
30
+ base[name] = (...args) => {
31
+ const method = overloads.length === 1 ? overloads[0] : methodOf(descriptor, name, args.length);
32
+ if (method === undefined) {
33
+ throw new Error(`${descriptor.protocol}.${descriptor.contract}.${name} takes ` +
34
+ `${overloads.map((candidate) => candidate.inputs.length).join(" or ")} arguments, got ${args.length}`);
35
+ }
25
36
  let address = resolvedAddress;
26
37
  if (address === undefined) {
27
38
  if (isInterface) {
@@ -168,8 +179,8 @@ export function chainContracts(chainRef) {
168
179
  }
169
180
  return out;
170
181
  }
171
- /** Import-based front door (option-b): `contracts.on('base').Uniswap.UniversalRouter.execute(...)`.
172
- * Escape hatch for `__ECO_ROUTES_NO_GLOBALS__` hosts and for the TS2451 own-`const Base` caveat. */
182
+ /** Chain-ref front door: `contracts.on('base').Uniswap.UniversalRouter.execute(...)` — for a
183
+ * caller resolving the chain at run time rather than importing the `Base` accessor. */
173
184
  export function on(chainRef) {
174
185
  return chainContracts(chainRef);
175
186
  }
@@ -1 +1 @@
1
- {"version":3,"file":"accessors.js","sourceRoot":"","sources":["../../src/descriptors/accessors.ts"],"names":[],"mappings":"AAaA,OAAO,EACL,YAAY,GAIb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAqB,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAgD5C,SAAS,aAAa,CACpB,UAA8B,EAC9B,KAAqB,EACrB,eAAyB;IAEzB,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,KAAK,WAAW,CAAC;IACpD,MAAM,eAAe,GACnB,eAAe,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;IAC9E,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,KAAK,SAAS,CAAC;IAE9F,MAAM,IAAI,GAA4B;QACpC,UAAU;QACV,KAAK;QACL,OAAO,EAAE,eAAe;QACxB,SAAS;QACT,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,QAAQ,EAAE,UAAU,CAAC,QAAQ;QAC7B,GAAG,EAAE,UAAU,CAAC,GAAG;QACnB,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,EAAE,CAAC,UAAmB;YACpB,OAAO,aAAa,CAAC,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;QACtD,CAAC;KACF,CAAC;IAEF,KAAK,MAAM,MAAM,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAe,EAAgB,EAAE;YACvD,IAAI,OAAO,GAAG,eAAe,CAAC;YAC9B,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,IAAI,WAAW,EAAE,CAAC;oBAChB,MAAM,IAAI,KAAK,CACb,GAAG,UAAU,CAAC,QAAQ,IAAI,UAAU,CAAC,QAAQ,uFAAuF,MAAM,CAAC,IAAI,OAAO,CACvJ,CAAC;gBACJ,CAAC;gBACD,iEAAiE;gBACjE,mCAAmC;gBACnC,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,EAAE,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;gBAClF,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;YAC7B,CAAC;YACD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CACb,GAAG,UAAU,CAAC,QAAQ,IAAI,UAAU,CAAC,QAAQ,6BAA6B,KAAK,CAAC,IAAI,GAAG,CACxF,CAAC;YACJ,CAAC;YACD,OAAO,gBAAgB,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QACpE,CAAC,CAAC;IACJ,CAAC;IAED,OAAO,IAAwB,CAAC;AAClC,CAAC;AAED,gGAAgG;AAChG,MAAM,cAAc,GAAuD,CAAC,GAAG,EAAE;IAC/E,MAAM,GAAG,GAAG,IAAI,GAAG,EAAgC,CAAC;IACpD,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QACjC,IAAI,IAAI;YAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;;YAClB,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC,CAAC,EAAE,CAAC;AAEL,MAAM,aAAa,GAAsB,CAAC,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC;AAEpE,2GAA2G;AAC3G,SAAS,UAAU,CAAC,IAAY;IAC9B,MAAM,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9B,CAAC;AAED,+EAA+E;AAC/E,MAAM,aAAa,GAA2C,CAAC,GAAG,EAAE;IAClE,MAAM,GAAG,GAAG,IAAI,GAAG,EAAoB,CAAC;IACxC,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,IAAI,KAAK,SAAS;YAAE,SAAS;QACjC,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QAC/B,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,IAAI;YAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;YACrB,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC,CAAC,EAAE,CAAC;AAEL;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAC,QAAkB;IAC/C,MAAM,KAAK,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IACrC,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAA4C,CAAC;IAEnF,SAAS,iBAAiB,CAAC,IAAY;QACrC,MAAM,MAAM,GAAG,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC;QACxC,MAAM,EAAE,GAAqC,EAAE,CAAC;QAChD,KAAK,MAAM,CAAC,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YAC/C,IAAI,IAAkC,CAAC;YACvC,MAAM,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE;gBACpC,UAAU,EAAE,IAAI;gBAChB,YAAY,EAAE,IAAI;gBAClB,GAAG;oBACD,IAAI,IAAI,KAAK,SAAS;wBAAE,IAAI,GAAG,aAAa,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;oBACvD,OAAO,IAAI,CAAC;gBACd,CAAC;aACF,CAAC,CAAC;QACL,CAAC;QACD,sBAAsB,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACrC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,SAAS,oBAAoB,CAC3B,SAAiB,EACjB,OAA0B;QAE1B,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAoB,CAAC;QACrD,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,KAAK,MAAM,CAAC,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC/C,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBAChD,IAAI,MAAM;oBAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;oBACzB,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QACD,MAAM,GAAG,GAA4B,EAAE,CAAC;QACxC,KAAK,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,gBAAgB,EAAE,CAAC;YACtD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxB,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC;gBACzB,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,YAAY,EAAE;oBACvC,UAAU,EAAE,IAAI;oBAChB,YAAY,EAAE,IAAI;oBAClB,GAAG,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC;iBAClD,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,YAAY,EAAE;oBACvC,UAAU,EAAE,IAAI;oBAChB,YAAY,EAAE,IAAI;oBAClB,GAAG;wBACD,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBACxF,MAAM,IAAI,KAAK,CACb,IAAI,YAAY,wBAAwB,SAAS,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,UAAU,EAAE,CAC/F,CAAC;oBACJ,CAAC;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,MAAM,GAAG,GAA4B,EAAE,CAAC;IAExC,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;QACjC,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,8CAA8C,GAAG,iBAAiB,IAAI,IAAI,CAAC,CAAC;QAC9F,CAAC;QACD,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE;YAC9B,UAAU,EAAE,IAAI;YAChB,YAAY,EAAE,IAAI;YAClB,GAAG,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC;SACnC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,aAAa,EAAE,CAAC;QACjD,IAAI,SAAS,IAAI,GAAG,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CACb,8BAA8B,SAAS,gDAAgD,CACxF,CAAC;QACJ,CAAC;QACD,IAAI,IAAyC,CAAC;QAC9C,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,SAAS,EAAE;YACpC,UAAU,EAAE,IAAI;YAChB,YAAY,EAAE,IAAI;YAClB,GAAG,EAAE,GAAG,EAAE;gBACR,IAAI,IAAI,KAAK,SAAS;oBAAE,IAAI,GAAG,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBACxE,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,OAAO,GAAgC,CAAC;AAC1C,CAAC;AAED;qGACqG;AACrG,MAAM,UAAU,EAAE,CAAC,QAAkB;IACnC,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"accessors.js","sourceRoot":"","sources":["../../src/descriptors/accessors.ts"],"names":[],"mappings":"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"}
@@ -6,22 +6,16 @@
6
6
  *
7
7
  * The `typeFidelity: "widened"` gate lives here, not in accessors.ts: every
8
8
  * production path (`data`, `encode`, `toCall`, `toSauceScript`) funnels
9
- * through `assertFidelity`, so a widened descriptor (three uniswap-v3
10
- * entries, uniswap-v4's PoolManager) can never silently hand out calldata
11
- * that will not hit the deployed contract — see links.ts's own caveats for
12
- * why each one is widened.
9
+ * through `assertFidelity`, so a descriptor marked widened can never silently
10
+ * hand out calldata that will not hit the deployed contract. No shipped
11
+ * descriptor is marked any more: the registry declares every contract's
12
+ * deployed types, and `test/registry-abi.test.ts` pins them to the deployed
13
+ * code. The gate and its `allowWidened` opt-out stay because they are public
14
+ * API.
13
15
  */
14
16
  import { type Address, type Hex } from "viem";
15
17
  import type { CanonicalChain } from "../chains/canonical.js";
16
18
  import type { ContractDescriptor, DescriptorMethod } from "./types.js";
17
- /**
18
- * `baseDirs` for compiling a `toSauceScript()` program — same two-entry
19
- * shape (dist root + shipped `sdk/src`) and rationale as
20
- * `deposit/source.ts`'s `DEPOSIT_BASE_DIRS`: a contract's `.json` import
21
- * resolves against the SDK's protocol registry, not the engine-vendored
22
- * `dist/artifacts`.
23
- */
24
- export declare const CONTRACT_BASE_DIRS: readonly string[];
25
19
  export interface EncodeOptions {
26
20
  /** Opts past the widened-selector refusal — see the module doc comment. */
27
21
  readonly allowWidened?: boolean;
@@ -49,11 +43,12 @@ export interface ContractCall {
49
43
  readonly data: Hex;
50
44
  readonly value: bigint;
51
45
  };
46
+ /** The call as SauceScript. Its `./protocols/<slug>/<Export>.json` import is one the route
47
+ * compiler serves, so `source` compiles with no resolver option. */
52
48
  toSauceScript(opts?: SauceScriptOptions): {
53
49
  readonly imports: readonly string[];
54
50
  readonly statement: string;
55
51
  readonly source: string;
56
- readonly baseDirs: readonly string[];
57
52
  };
58
53
  }
59
54
  export declare function makeContractCall(descriptor: ContractDescriptor, chain: CanonicalChain, address: Address, method: DescriptorMethod, args: readonly unknown[]): ContractCall;
@@ -1 +1 @@
1
- {"version":3,"file":"call.d.ts","sourceRoot":"","sources":["../../src/descriptors/call.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAsB,KAAK,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,MAAM,CAAC;AAIlE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAIvE;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,EAAE,SAAS,MAAM,EAG/C,CAAC;AAEF,MAAM,WAAW,aAAa;IAC5B,2EAA2E;IAC3E,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC,sBAAsB;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IACjC,+FAA+F;IAC/F,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,SAAS,OAAO,EAAE,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,uEAAuE;IACvE,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC;IACnB,MAAM,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG,GAAG,CAAC;IAClC,MAAM,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG;QAC5B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;QACzB,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC;QACnB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,aAAa,CAAC,IAAI,CAAC,EAAE,kBAAkB,GAAG;QACxC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;QACpC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;KACtC,CAAC;CACH;AA4DD,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,kBAAkB,EAC9B,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,SAAS,OAAO,EAAE,GACvB,YAAY,CAgDd"}
1
+ {"version":3,"file":"call.d.ts","sourceRoot":"","sources":["../../src/descriptors/call.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAsB,KAAK,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,MAAM,CAAC;AAElE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEvE,MAAM,WAAW,aAAa;IAC5B,2EAA2E;IAC3E,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC,sBAAsB;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IACjC,+FAA+F;IAC/F,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,SAAS,OAAO,EAAE,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,uEAAuE;IACvE,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC;IACnB,MAAM,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG,GAAG,CAAC;IAClC,MAAM,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG;QAC5B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;QACzB,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC;QACnB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;KACxB,CAAC;IACF;yEACqE;IACrE,aAAa,CAAC,IAAI,CAAC,EAAE,kBAAkB,GAAG;QACxC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;QACpC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;KACzB,CAAC;CACH;AA4DD,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,kBAAkB,EAC9B,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,SAAS,OAAO,EAAE,GACvB,YAAY,CAgDd"}