@eco-incorp/sauce 0.99.6 → 0.99.8
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.
- package/README.md +58 -16
- package/actions/action-program.schema.json +480 -379
- package/actions/dist/abis.d.ts +19 -18
- package/actions/dist/abis.d.ts.map +1 -1
- package/actions/dist/abis.js +29 -29
- package/actions/dist/compile.d.ts +4 -4
- package/actions/dist/compile.d.ts.map +1 -1
- package/actions/dist/compile.js +3 -1
- package/actions/dist/compose.d.ts +63 -6
- package/actions/dist/compose.d.ts.map +1 -1
- package/actions/dist/compose.js +100 -16
- package/actions/dist/index.d.ts +1 -1
- package/actions/dist/index.d.ts.map +1 -1
- package/actions/dist/names.d.ts +88 -0
- package/actions/dist/names.d.ts.map +1 -0
- package/actions/dist/names.js +334 -0
- package/actions/dist/program.d.ts.map +1 -1
- package/actions/dist/program.js +115 -5
- package/actions/dist/registry.d.ts +10 -8
- package/actions/dist/registry.d.ts.map +1 -1
- package/actions/dist/registry.js +10 -8
- package/actions/dist/schema.d.ts.map +1 -1
- package/actions/dist/schema.js +99 -12
- package/actions/dist/semantics.d.ts +12 -2
- package/actions/dist/semantics.d.ts.map +1 -1
- package/actions/dist/semantics.js +78 -8
- package/actions/dist/spec.d.ts +30 -0
- package/actions/dist/spec.d.ts.map +1 -1
- package/actions/dist/spec.js +151 -138
- package/actions/dist/split-swap.d.ts +10 -5
- package/actions/dist/split-swap.d.ts.map +1 -1
- package/actions/dist/split-swap.js +48 -7
- package/actions/dist/to-quote.d.ts +14 -5
- package/actions/dist/to-quote.d.ts.map +1 -1
- package/actions/dist/to-quote.js +210 -244
- package/actions/dist/to-sauce.d.ts +18 -4
- package/actions/dist/to-sauce.d.ts.map +1 -1
- package/actions/dist/to-sauce.js +232 -205
- package/actions/dist/types.d.ts +245 -147
- package/actions/dist/types.d.ts.map +1 -1
- package/actions/dist/types.js +4 -0
- package/docs/README.md +38 -0
- package/docs/api/README.md +37 -23
- package/docs/api/compiler.md +53 -12
- package/docs/api/contracts.md +105 -0
- package/docs/api/coverage.md +96 -57
- package/docs/api/router.md +238 -0
- package/docs/api/routes.md +31 -22
- package/docs/concepts/architecture.md +26 -3
- package/docs/concepts/saucescript.md +35 -55
- package/docs/examples/README.md +21 -14
- package/docs/examples/action-program.ts +51 -35
- package/docs/examples/cross-chain-cascade.sauce.ts +4 -0
- package/docs/examples/cross-chain-intent.sauce.ts +2 -1
- package/docs/examples/evm-execution.ts +2 -4
- package/docs/examples/first-intent.ts +7 -2
- package/docs/examples/pot-router.ts +19 -0
- package/docs/examples/registry-names.ts +52 -0
- package/docs/examples/router-route.sauce.ts +31 -0
- package/docs/examples/router-route.ts +72 -0
- package/docs/examples/router-swap.sauce.ts +16 -0
- package/docs/examples/router-swap.ts +47 -0
- package/docs/examples/venue-where-deployed.sauce.ts +14 -0
- package/docs/guides/actions.md +230 -120
- package/docs/guides/builders-and-actions.md +20 -14
- package/docs/guides/cli.md +1446 -0
- package/docs/guides/compiling.md +19 -7
- package/docs/guides/intents.md +228 -15
- package/docs/guides/mcp.md +540 -0
- package/docs/guides/nested-intents.md +21 -6
- package/docs/guides/protocols-and-tokens.md +218 -39
- package/docs/guides/quick-start.md +5 -0
- package/docs/guides/solana.md +199 -52
- package/docs/guides/verification.md +2 -2
- package/mcp/dist/config.js +78 -0
- package/mcp/dist/config.js.map +1 -0
- package/mcp/dist/entry.js +112 -0
- package/mcp/dist/entry.js.map +1 -0
- package/mcp/dist/files.js +64 -0
- package/mcp/dist/files.js.map +1 -0
- package/mcp/dist/guard.js +262 -0
- package/mcp/dist/guard.js.map +1 -0
- package/mcp/dist/http.js +111 -0
- package/mcp/dist/http.js.map +1 -0
- package/mcp/dist/intents.js +579 -0
- package/mcp/dist/intents.js.map +1 -0
- package/mcp/dist/prompts.js +153 -0
- package/mcp/dist/prompts.js.map +1 -0
- package/mcp/dist/reach.js +98 -0
- package/mcp/dist/reach.js.map +1 -0
- package/mcp/dist/resources.js +154 -0
- package/mcp/dist/resources.js.map +1 -0
- package/mcp/dist/sdk.js +34 -0
- package/mcp/dist/sdk.js.map +1 -0
- package/mcp/dist/server.js +119 -0
- package/mcp/dist/server.js.map +1 -0
- package/mcp/dist/setup.js +189 -0
- package/mcp/dist/setup.js.map +1 -0
- package/mcp/dist/skilltools.js +520 -0
- package/mcp/dist/skilltools.js.map +1 -0
- package/mcp/dist/terms.js +93 -0
- package/mcp/dist/terms.js.map +1 -0
- package/mcp/dist/tools.js +1499 -0
- package/mcp/dist/tools.js.map +1 -0
- package/mcp/dist/wallets.js +168 -0
- package/mcp/dist/wallets.js.map +1 -0
- package/package.json +18 -13
- package/sdk/dist/artifacts/V12Deployments.json +3 -1
- package/sdk/dist/artifacts/V12EngineGate.json +1 -2
- package/sdk/dist/artifacts/V12KitchenProxy.json +1 -0
- package/sdk/dist/chains/canonical.d.ts +15 -24
- package/sdk/dist/chains/canonical.d.ts.map +1 -1
- package/sdk/dist/chains/canonical.js +18 -29
- package/sdk/dist/chains/canonical.js.map +1 -1
- package/sdk/dist/cli/actions.d.ts +29 -0
- package/sdk/dist/cli/actions.d.ts.map +1 -0
- package/sdk/dist/cli/actions.js +122 -0
- package/sdk/dist/cli/actions.js.map +1 -0
- package/sdk/dist/cli/args.d.ts +118 -0
- package/sdk/dist/cli/args.d.ts.map +1 -0
- package/sdk/dist/cli/args.js +354 -0
- package/sdk/dist/cli/args.js.map +1 -0
- package/sdk/dist/cli/assume.d.ts +51 -0
- package/sdk/dist/cli/assume.d.ts.map +1 -0
- package/sdk/dist/cli/assume.js +207 -0
- package/sdk/dist/cli/assume.js.map +1 -0
- package/sdk/dist/cli/chain.d.ts +173 -0
- package/sdk/dist/cli/chain.d.ts.map +1 -0
- package/sdk/dist/cli/chain.js +462 -0
- package/sdk/dist/cli/chain.js.map +1 -0
- package/sdk/dist/cli/commands.d.ts +226 -0
- package/sdk/dist/cli/commands.d.ts.map +1 -0
- package/sdk/dist/cli/commands.js +637 -0
- package/sdk/dist/cli/commands.js.map +1 -0
- package/sdk/dist/cli/create.d.ts +70 -0
- package/sdk/dist/cli/create.d.ts.map +1 -0
- package/sdk/dist/cli/create.js +483 -0
- package/sdk/dist/cli/create.js.map +1 -0
- package/sdk/dist/cli/diagnostics.d.ts +12 -0
- package/sdk/dist/cli/diagnostics.d.ts.map +1 -0
- package/sdk/dist/cli/diagnostics.js +225 -0
- package/sdk/dist/cli/diagnostics.js.map +1 -0
- package/sdk/dist/cli/effects.d.ts +71 -0
- package/sdk/dist/cli/effects.d.ts.map +1 -0
- package/sdk/dist/cli/effects.js +279 -0
- package/sdk/dist/cli/effects.js.map +1 -0
- package/sdk/dist/cli/fill.d.ts +83 -0
- package/sdk/dist/cli/fill.d.ts.map +1 -0
- package/sdk/dist/cli/fill.js +734 -0
- package/sdk/dist/cli/fill.js.map +1 -0
- package/sdk/dist/cli/funding.d.ts +126 -0
- package/sdk/dist/cli/funding.d.ts.map +1 -0
- package/sdk/dist/cli/funding.js +514 -0
- package/sdk/dist/cli/funding.js.map +1 -0
- package/sdk/dist/cli/globals.d.ts +16 -0
- package/sdk/dist/cli/globals.d.ts.map +1 -0
- package/sdk/dist/cli/globals.js +219 -0
- package/sdk/dist/cli/globals.js.map +1 -0
- package/sdk/dist/cli/init.d.ts +34 -0
- package/sdk/dist/cli/init.d.ts.map +1 -0
- package/sdk/dist/cli/init.js +181 -0
- package/sdk/dist/cli/init.js.map +1 -0
- package/sdk/dist/cli/inputs.d.ts +72 -0
- package/sdk/dist/cli/inputs.d.ts.map +1 -0
- package/sdk/dist/cli/inputs.js +152 -0
- package/sdk/dist/cli/inputs.js.map +1 -0
- package/sdk/dist/cli/inspect.d.ts +48 -0
- package/sdk/dist/cli/inspect.d.ts.map +1 -0
- package/sdk/dist/cli/inspect.js +536 -0
- package/sdk/dist/cli/inspect.js.map +1 -0
- package/sdk/dist/cli/intent-commands.d.ts +71 -0
- package/sdk/dist/cli/intent-commands.d.ts.map +1 -0
- package/sdk/dist/cli/intent-commands.js +698 -0
- package/sdk/dist/cli/intent-commands.js.map +1 -0
- package/sdk/dist/cli/intent-svm.d.ts +15 -0
- package/sdk/dist/cli/intent-svm.d.ts.map +1 -0
- package/sdk/dist/cli/intent-svm.js +222 -0
- package/sdk/dist/cli/intent-svm.js.map +1 -0
- package/sdk/dist/cli/intents.d.ts +43 -0
- package/sdk/dist/cli/intents.d.ts.map +1 -0
- package/sdk/dist/cli/intents.js +89 -0
- package/sdk/dist/cli/intents.js.map +1 -0
- package/sdk/dist/cli/interactive.d.ts +11 -0
- package/sdk/dist/cli/interactive.d.ts.map +1 -0
- package/sdk/dist/cli/interactive.js +161 -0
- package/sdk/dist/cli/interactive.js.map +1 -0
- package/sdk/dist/cli/lifecycle-svm.d.ts +109 -0
- package/sdk/dist/cli/lifecycle-svm.d.ts.map +1 -0
- package/sdk/dist/cli/lifecycle-svm.js +299 -0
- package/sdk/dist/cli/lifecycle-svm.js.map +1 -0
- package/sdk/dist/cli/lifecycle.d.ts +439 -0
- package/sdk/dist/cli/lifecycle.d.ts.map +1 -0
- package/sdk/dist/cli/lifecycle.js +1721 -0
- package/sdk/dist/cli/lifecycle.js.map +1 -0
- package/sdk/dist/cli/main.d.ts +3 -0
- package/sdk/dist/cli/main.d.ts.map +1 -0
- package/sdk/dist/cli/main.js +8 -0
- package/sdk/dist/cli/main.js.map +1 -0
- package/sdk/dist/cli/mcp.d.ts +66 -0
- package/sdk/dist/cli/mcp.d.ts.map +1 -0
- package/sdk/dist/cli/mcp.js +169 -0
- package/sdk/dist/cli/mcp.js.map +1 -0
- package/sdk/dist/cli/password.d.ts +54 -0
- package/sdk/dist/cli/password.d.ts.map +1 -0
- package/sdk/dist/cli/password.js +148 -0
- package/sdk/dist/cli/password.js.map +1 -0
- package/sdk/dist/cli/policy.d.ts +130 -0
- package/sdk/dist/cli/policy.d.ts.map +1 -0
- package/sdk/dist/cli/policy.js +702 -0
- package/sdk/dist/cli/policy.js.map +1 -0
- package/sdk/dist/cli/pools.d.ts +140 -0
- package/sdk/dist/cli/pools.d.ts.map +1 -0
- package/sdk/dist/cli/pools.js +658 -0
- package/sdk/dist/cli/pools.js.map +1 -0
- package/sdk/dist/cli/price.d.ts +74 -0
- package/sdk/dist/cli/price.d.ts.map +1 -0
- package/sdk/dist/cli/price.js +321 -0
- package/sdk/dist/cli/price.js.map +1 -0
- package/sdk/dist/cli/prompt.d.ts +30 -0
- package/sdk/dist/cli/prompt.d.ts.map +1 -0
- package/sdk/dist/cli/prompt.js +53 -0
- package/sdk/dist/cli/prompt.js.map +1 -0
- package/sdk/dist/cli/publish.d.ts +48 -0
- package/sdk/dist/cli/publish.d.ts.map +1 -0
- package/sdk/dist/cli/publish.js +480 -0
- package/sdk/dist/cli/publish.js.map +1 -0
- package/sdk/dist/cli/receipt.d.ts +35 -0
- package/sdk/dist/cli/receipt.d.ts.map +1 -0
- package/sdk/dist/cli/receipt.js +63 -0
- package/sdk/dist/cli/receipt.js.map +1 -0
- package/sdk/dist/cli/rehearse.d.ts +80 -0
- package/sdk/dist/cli/rehearse.d.ts.map +1 -0
- package/sdk/dist/cli/rehearse.js +265 -0
- package/sdk/dist/cli/rehearse.js.map +1 -0
- package/sdk/dist/cli/report.d.ts +69 -0
- package/sdk/dist/cli/report.d.ts.map +1 -0
- package/sdk/dist/cli/report.js +206 -0
- package/sdk/dist/cli/report.js.map +1 -0
- package/sdk/dist/cli/returned.d.ts +16 -0
- package/sdk/dist/cli/returned.d.ts.map +1 -0
- package/sdk/dist/cli/returned.js +111 -0
- package/sdk/dist/cli/returned.js.map +1 -0
- package/sdk/dist/cli/run.d.ts +40 -0
- package/sdk/dist/cli/run.d.ts.map +1 -0
- package/sdk/dist/cli/run.js +3163 -0
- package/sdk/dist/cli/run.js.map +1 -0
- package/sdk/dist/cli/signer.d.ts +72 -0
- package/sdk/dist/cli/signer.d.ts.map +1 -0
- package/sdk/dist/cli/signer.js +243 -0
- package/sdk/dist/cli/signer.js.map +1 -0
- package/sdk/dist/cli/simulate.d.ts +11 -0
- package/sdk/dist/cli/simulate.d.ts.map +1 -0
- package/sdk/dist/cli/simulate.js +246 -0
- package/sdk/dist/cli/simulate.js.map +1 -0
- package/sdk/dist/cli/skills.d.ts +77 -0
- package/sdk/dist/cli/skills.d.ts.map +1 -0
- package/sdk/dist/cli/skills.js +527 -0
- package/sdk/dist/cli/skills.js.map +1 -0
- package/sdk/dist/cli/solana.d.ts +184 -0
- package/sdk/dist/cli/solana.d.ts.map +1 -0
- package/sdk/dist/cli/solana.js +1370 -0
- package/sdk/dist/cli/solana.js.map +1 -0
- package/sdk/dist/cli/store.d.ts +60 -0
- package/sdk/dist/cli/store.d.ts.map +1 -0
- package/sdk/dist/cli/store.js +196 -0
- package/sdk/dist/cli/store.js.map +1 -0
- package/sdk/dist/cli/support.d.ts +144 -0
- package/sdk/dist/cli/support.d.ts.map +1 -0
- package/sdk/dist/cli/support.js +217 -0
- package/sdk/dist/cli/support.js.map +1 -0
- package/sdk/dist/cli/svm-effects.d.ts +50 -0
- package/sdk/dist/cli/svm-effects.d.ts.map +1 -0
- package/sdk/dist/cli/svm-effects.js +196 -0
- package/sdk/dist/cli/svm-effects.js.map +1 -0
- package/sdk/dist/cli/terminal.d.ts +42 -0
- package/sdk/dist/cli/terminal.d.ts.map +1 -0
- package/sdk/dist/cli/terminal.js +136 -0
- package/sdk/dist/cli/terminal.js.map +1 -0
- package/sdk/dist/cli/verify.d.ts +32 -0
- package/sdk/dist/cli/verify.d.ts.map +1 -0
- package/sdk/dist/cli/verify.js +185 -0
- package/sdk/dist/cli/verify.js.map +1 -0
- package/sdk/dist/cli/wallet-commands.d.ts +59 -0
- package/sdk/dist/cli/wallet-commands.d.ts.map +1 -0
- package/sdk/dist/cli/wallet-commands.js +222 -0
- package/sdk/dist/cli/wallet-commands.js.map +1 -0
- package/sdk/dist/cli/wallet-send.d.ts +38 -0
- package/sdk/dist/cli/wallet-send.d.ts.map +1 -0
- package/sdk/dist/cli/wallet-send.js +303 -0
- package/sdk/dist/cli/wallet-send.js.map +1 -0
- package/sdk/dist/cli/wallets.d.ts +79 -0
- package/sdk/dist/cli/wallets.d.ts.map +1 -0
- package/sdk/dist/cli/wallets.js +297 -0
- package/sdk/dist/cli/wallets.js.map +1 -0
- package/sdk/dist/deployments/index.d.ts +4 -62
- package/sdk/dist/deployments/index.d.ts.map +1 -1
- package/sdk/dist/deployments/index.js +4 -84
- package/sdk/dist/deployments/index.js.map +1 -1
- package/sdk/dist/deployments/pot.d.ts +17 -7
- package/sdk/dist/deployments/pot.d.ts.map +1 -1
- package/sdk/dist/deployments/pot.js +25 -10
- package/sdk/dist/deployments/pot.js.map +1 -1
- package/sdk/dist/deployments/releases.d.ts +36 -0
- package/sdk/dist/deployments/releases.d.ts.map +1 -0
- package/sdk/dist/deployments/releases.js +61 -0
- package/sdk/dist/deployments/releases.js.map +1 -0
- package/sdk/dist/deployments/releases.json +76 -0
- package/sdk/dist/deployments/v12-addresses.d.ts +13 -0
- package/sdk/dist/deployments/v12-addresses.d.ts.map +1 -1
- package/sdk/dist/deployments/v12-addresses.js +16 -3
- package/sdk/dist/deployments/v12-addresses.js.map +1 -1
- package/sdk/dist/deposit/index.d.ts +6 -6
- package/sdk/dist/deposit/index.d.ts.map +1 -1
- package/sdk/dist/deposit/index.js +1 -1
- package/sdk/dist/deposit/index.js.map +1 -1
- package/sdk/dist/deposit/params.d.ts +4 -4
- package/sdk/dist/deposit/params.d.ts.map +1 -1
- package/sdk/dist/deposit/params.js +7 -4
- package/sdk/dist/deposit/params.js.map +1 -1
- package/sdk/dist/deposit/source.d.ts +3 -30
- package/sdk/dist/deposit/source.d.ts.map +1 -1
- package/sdk/dist/deposit/source.js +7 -83
- package/sdk/dist/deposit/source.js.map +1 -1
- package/sdk/dist/deposit/templates.d.ts +1 -2
- package/sdk/dist/deposit/templates.d.ts.map +1 -1
- package/sdk/dist/deposit/templates.js +10 -2
- package/sdk/dist/deposit/templates.js.map +1 -1
- package/sdk/dist/deposit/types.d.ts +14 -12
- package/sdk/dist/deposit/types.d.ts.map +1 -1
- package/sdk/dist/deposit/types.js +6 -0
- package/sdk/dist/deposit/types.js.map +1 -1
- package/sdk/dist/descriptors/accessors.d.ts +38 -35
- package/sdk/dist/descriptors/accessors.d.ts.map +1 -1
- package/sdk/dist/descriptors/accessors.js +16 -0
- package/sdk/dist/descriptors/accessors.js.map +1 -1
- package/sdk/dist/descriptors/call.d.ts +66 -14
- package/sdk/dist/descriptors/call.d.ts.map +1 -1
- package/sdk/dist/descriptors/call.js +94 -13
- package/sdk/dist/descriptors/call.js.map +1 -1
- package/sdk/dist/descriptors/contracts.generated.d.ts +3393 -0
- package/sdk/dist/descriptors/contracts.generated.d.ts.map +1 -0
- package/sdk/dist/descriptors/contracts.generated.js +728 -0
- package/sdk/dist/descriptors/contracts.generated.js.map +1 -0
- package/sdk/dist/descriptors/derive.d.ts +20 -11
- package/sdk/dist/descriptors/derive.d.ts.map +1 -1
- package/sdk/dist/descriptors/derive.js +68 -30
- package/sdk/dist/descriptors/derive.js.map +1 -1
- package/sdk/dist/descriptors/index.d.ts +6 -7
- package/sdk/dist/descriptors/index.d.ts.map +1 -1
- package/sdk/dist/descriptors/index.js +2 -2
- package/sdk/dist/descriptors/index.js.map +1 -1
- package/sdk/dist/descriptors/links.d.ts +23 -214
- package/sdk/dist/descriptors/links.d.ts.map +1 -1
- package/sdk/dist/descriptors/links.js +1 -232
- package/sdk/dist/descriptors/links.js.map +1 -1
- package/sdk/dist/descriptors/query.d.ts +1 -1
- package/sdk/dist/descriptors/query.d.ts.map +1 -1
- package/sdk/dist/descriptors/query.js +1 -1
- package/sdk/dist/descriptors/query.js.map +1 -1
- package/sdk/dist/descriptors/registry.d.ts +2 -5
- package/sdk/dist/descriptors/registry.d.ts.map +1 -1
- package/sdk/dist/descriptors/registry.js +11 -66
- package/sdk/dist/descriptors/registry.js.map +1 -1
- package/sdk/dist/embedded/resolve.d.ts +4 -4
- package/sdk/dist/embedded/resolve.d.ts.map +1 -1
- package/sdk/dist/embedded/resolve.js +12 -8
- package/sdk/dist/embedded/resolve.js.map +1 -1
- package/sdk/dist/embedded/skills.generated.d.ts +1 -1
- package/sdk/dist/embedded/skills.generated.d.ts.map +1 -1
- package/sdk/dist/embedded/skills.generated.js +137 -136
- package/sdk/dist/embedded/skills.generated.js.map +1 -1
- package/sdk/dist/embedded/sources.generated.d.ts.map +1 -1
- package/sdk/dist/embedded/sources.generated.js +40 -6
- package/sdk/dist/embedded/sources.generated.js.map +1 -1
- package/sdk/dist/evm/engine.d.ts +813 -10
- package/sdk/dist/evm/engine.d.ts.map +1 -1
- package/sdk/dist/evm/engine.js +127 -8
- package/sdk/dist/evm/engine.js.map +1 -1
- package/sdk/dist/index.d.ts +3 -2
- package/sdk/dist/index.d.ts.map +1 -1
- package/sdk/dist/index.js +6 -2
- package/sdk/dist/index.js.map +1 -1
- package/sdk/dist/price.d.ts +40 -0
- package/sdk/dist/price.d.ts.map +1 -0
- package/sdk/dist/price.js +101 -0
- package/sdk/dist/price.js.map +1 -0
- package/sdk/dist/protocols/aerodrome/abis.d.ts +76 -0
- package/sdk/dist/protocols/aerodrome/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/aerodrome/abis.js +61 -0
- package/sdk/dist/protocols/aerodrome/abis.js.map +1 -1
- package/sdk/dist/protocols/aerodrome-slipstream/abis.d.ts +70 -0
- package/sdk/dist/protocols/aerodrome-slipstream/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/aerodrome-slipstream/abis.js +54 -0
- package/sdk/dist/protocols/aerodrome-slipstream/abis.js.map +1 -1
- package/sdk/dist/protocols/camelot/abis.d.ts +178 -0
- package/sdk/dist/protocols/camelot/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/camelot/abis.js +139 -0
- package/sdk/dist/protocols/camelot/abis.js.map +1 -1
- package/sdk/dist/protocols/eco-routes/abis.d.ts +792 -50
- package/sdk/dist/protocols/eco-routes/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/eco-routes/abis.js +1058 -49
- package/sdk/dist/protocols/eco-routes/abis.js.map +1 -1
- package/sdk/dist/protocols/eco-routes/addresses.generated.d.ts +44 -61
- package/sdk/dist/protocols/eco-routes/addresses.generated.d.ts.map +1 -1
- package/sdk/dist/protocols/eco-routes/addresses.generated.js +45 -62
- package/sdk/dist/protocols/eco-routes/addresses.generated.js.map +1 -1
- package/sdk/dist/protocols/eco-routes/lookup.d.ts +10 -0
- package/sdk/dist/protocols/eco-routes/lookup.d.ts.map +1 -1
- package/sdk/dist/protocols/eco-routes/lookup.js +16 -0
- package/sdk/dist/protocols/eco-routes/lookup.js.map +1 -1
- package/sdk/dist/protocols/maverick/abis.d.ts +77 -0
- package/sdk/dist/protocols/maverick/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/maverick/abis.js +58 -0
- package/sdk/dist/protocols/maverick/abis.js.map +1 -1
- package/sdk/dist/protocols/maverick/addresses.d.ts.map +1 -1
- package/sdk/dist/protocols/maverick/addresses.js +4 -0
- package/sdk/dist/protocols/maverick/addresses.js.map +1 -1
- package/sdk/dist/protocols/pancakeswap-v2/abis.d.ts +52 -0
- package/sdk/dist/protocols/pancakeswap-v2/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/pancakeswap-v2/abis.js +43 -0
- package/sdk/dist/protocols/pancakeswap-v2/abis.js.map +1 -1
- package/sdk/dist/protocols/pancakeswap-v3/abis.d.ts +73 -0
- package/sdk/dist/protocols/pancakeswap-v3/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/pancakeswap-v3/abis.js +56 -0
- package/sdk/dist/protocols/pancakeswap-v3/abis.js.map +1 -1
- package/sdk/dist/protocols/permit2/abis.d.ts +113 -0
- package/sdk/dist/protocols/permit2/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/permit2/abis.js +63 -0
- package/sdk/dist/protocols/permit2/abis.js.map +1 -1
- package/sdk/dist/protocols/quickswap/abis.d.ts +148 -0
- package/sdk/dist/protocols/quickswap/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/quickswap/abis.js +119 -0
- package/sdk/dist/protocols/quickswap/abis.js.map +1 -1
- package/sdk/dist/protocols/sushiswap-v2/abis.d.ts +52 -0
- package/sdk/dist/protocols/sushiswap-v2/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/sushiswap-v2/abis.js +42 -0
- package/sdk/dist/protocols/sushiswap-v2/abis.js.map +1 -1
- package/sdk/dist/protocols/synthra-v3/abis.d.ts +73 -0
- package/sdk/dist/protocols/synthra-v3/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/synthra-v3/abis.js +55 -0
- package/sdk/dist/protocols/synthra-v3/abis.js.map +1 -1
- package/sdk/dist/protocols/trader-joe/abis.d.ts +133 -0
- package/sdk/dist/protocols/trader-joe/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/trader-joe/abis.js +101 -0
- package/sdk/dist/protocols/trader-joe/abis.js.map +1 -1
- package/sdk/dist/protocols/trader-joe/addresses.d.ts.map +1 -1
- package/sdk/dist/protocols/trader-joe/addresses.js +5 -0
- package/sdk/dist/protocols/trader-joe/addresses.js.map +1 -1
- package/sdk/dist/protocols/uniswap-v2/abis.d.ts +52 -0
- package/sdk/dist/protocols/uniswap-v2/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/uniswap-v2/abis.js +44 -0
- package/sdk/dist/protocols/uniswap-v2/abis.js.map +1 -1
- package/sdk/dist/protocols/uniswap-v3/abis.d.ts +73 -0
- package/sdk/dist/protocols/uniswap-v3/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/uniswap-v3/abis.js +55 -0
- package/sdk/dist/protocols/uniswap-v3/abis.js.map +1 -1
- package/sdk/dist/protocols/uniswap-v4/abis.d.ts +247 -0
- package/sdk/dist/protocols/uniswap-v4/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/uniswap-v4/abis.js +167 -0
- package/sdk/dist/protocols/uniswap-v4/abis.js.map +1 -1
- package/sdk/dist/protocols/uniswap-v4/addresses.d.ts.map +1 -1
- package/sdk/dist/protocols/uniswap-v4/addresses.js +50 -0
- package/sdk/dist/protocols/uniswap-v4/addresses.js.map +1 -1
- package/sdk/dist/protocols/unitflow-v3/abis.d.ts +73 -0
- package/sdk/dist/protocols/unitflow-v3/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/unitflow-v3/abis.js +56 -0
- package/sdk/dist/protocols/unitflow-v3/abis.js.map +1 -1
- package/sdk/dist/protocols/velodrome/abis.d.ts +76 -0
- package/sdk/dist/protocols/velodrome/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/velodrome/abis.js +61 -0
- package/sdk/dist/protocols/velodrome/abis.js.map +1 -1
- package/sdk/dist/recipes/cctp-split.sauce.ts +2 -2
- package/sdk/dist/recipes/plain-transfer.sauce.ts +2 -2
- package/sdk/dist/routes/accessor-index.d.ts +2 -2
- package/sdk/dist/routes/accessor-index.d.ts.map +1 -1
- package/sdk/dist/routes/accessor-index.js +4 -3
- package/sdk/dist/routes/accessor-index.js.map +1 -1
- package/sdk/dist/routes/ambient.d.ts +5 -0
- package/sdk/dist/routes/ambient.d.ts.map +1 -1
- package/sdk/dist/routes/ambient.js +20 -0
- package/sdk/dist/routes/ambient.js.map +1 -1
- package/sdk/dist/routes/ast-walk.d.ts +17 -3
- package/sdk/dist/routes/ast-walk.d.ts.map +1 -1
- package/sdk/dist/routes/ast-walk.js +24 -2
- package/sdk/dist/routes/ast-walk.js.map +1 -1
- package/sdk/dist/routes/available.d.ts +43 -0
- package/sdk/dist/routes/available.d.ts.map +1 -0
- package/sdk/dist/routes/available.js +230 -0
- package/sdk/dist/routes/available.js.map +1 -0
- package/sdk/dist/routes/builtins.generated.d.ts +180 -0
- package/sdk/dist/routes/builtins.generated.d.ts.map +1 -0
- package/sdk/dist/routes/builtins.generated.js +2 -0
- package/sdk/dist/routes/builtins.generated.js.map +1 -0
- package/sdk/dist/routes/chain-exports.generated.d.ts +13 -8
- package/sdk/dist/routes/chain-exports.generated.d.ts.map +1 -1
- package/sdk/dist/routes/chain-exports.generated.js.map +1 -1
- package/sdk/dist/routes/closure.d.ts.map +1 -1
- package/sdk/dist/routes/closure.js +13 -26
- package/sdk/dist/routes/closure.js.map +1 -1
- package/sdk/dist/routes/composed.d.ts.map +1 -1
- package/sdk/dist/routes/composed.js +20 -8
- package/sdk/dist/routes/composed.js.map +1 -1
- package/sdk/dist/routes/encode.d.ts +17 -0
- package/sdk/dist/routes/encode.d.ts.map +1 -1
- package/sdk/dist/routes/encode.js +14 -11
- package/sdk/dist/routes/encode.js.map +1 -1
- package/sdk/dist/routes/entry.d.ts +76 -0
- package/sdk/dist/routes/entry.d.ts.map +1 -0
- package/sdk/dist/routes/entry.js +478 -0
- package/sdk/dist/routes/entry.js.map +1 -0
- package/sdk/dist/routes/index.d.ts +19 -12
- package/sdk/dist/routes/index.d.ts.map +1 -1
- package/sdk/dist/routes/index.js +11 -8
- package/sdk/dist/routes/index.js.map +1 -1
- package/sdk/dist/routes/intent-body.d.ts +97 -0
- package/sdk/dist/routes/intent-body.d.ts.map +1 -0
- package/sdk/dist/routes/intent-body.js +441 -0
- package/sdk/dist/routes/intent-body.js.map +1 -0
- package/sdk/dist/routes/intent-dsl.d.ts +21 -6
- package/sdk/dist/routes/intent-dsl.d.ts.map +1 -1
- package/sdk/dist/routes/intent-dsl.js +34 -17
- package/sdk/dist/routes/intent-dsl.js.map +1 -1
- package/sdk/dist/routes/intent-sugar.d.ts +77 -4
- package/sdk/dist/routes/intent-sugar.d.ts.map +1 -1
- package/sdk/dist/routes/intent-sugar.js +318 -129
- package/sdk/dist/routes/intent-sugar.js.map +1 -1
- package/sdk/dist/routes/intent.d.ts +13 -1
- package/sdk/dist/routes/intent.d.ts.map +1 -1
- package/sdk/dist/routes/intent.js +37 -1
- package/sdk/dist/routes/intent.js.map +1 -1
- package/sdk/dist/routes/nest.d.ts +3 -2
- package/sdk/dist/routes/nest.d.ts.map +1 -1
- package/sdk/dist/routes/nest.js +5 -3
- package/sdk/dist/routes/nest.js.map +1 -1
- package/sdk/dist/routes/parse.d.ts +6 -0
- package/sdk/dist/routes/parse.d.ts.map +1 -0
- package/sdk/dist/routes/parse.js +39 -0
- package/sdk/dist/routes/parse.js.map +1 -0
- package/sdk/dist/routes/portal.d.ts +258 -4
- package/sdk/dist/routes/portal.d.ts.map +1 -1
- package/sdk/dist/routes/portal.js +588 -9
- package/sdk/dist/routes/portal.js.map +1 -1
- package/sdk/dist/routes/protocol-rewrite.d.ts +71 -1
- package/sdk/dist/routes/protocol-rewrite.d.ts.map +1 -1
- package/sdk/dist/routes/protocol-rewrite.js +178 -54
- package/sdk/dist/routes/protocol-rewrite.js.map +1 -1
- package/sdk/dist/routes/rs-compile.d.ts +25 -22
- package/sdk/dist/routes/rs-compile.d.ts.map +1 -1
- package/sdk/dist/routes/rs-compile.js +55 -49
- package/sdk/dist/routes/rs-compile.js.map +1 -1
- package/sdk/dist/routes/sauce-calls.d.ts +26 -12
- package/sdk/dist/routes/sauce-calls.d.ts.map +1 -1
- package/sdk/dist/routes/sauce-calls.js +16 -23
- package/sdk/dist/routes/sauce-calls.js.map +1 -1
- package/sdk/dist/routes/sauce-route.d.ts +74 -7
- package/sdk/dist/routes/sauce-route.d.ts.map +1 -1
- package/sdk/dist/routes/sauce-route.js +225 -75
- package/sdk/dist/routes/sauce-route.js.map +1 -1
- package/sdk/dist/routes/source-globals.d.ts +107 -0
- package/sdk/dist/routes/source-globals.d.ts.map +1 -0
- package/sdk/dist/routes/source-globals.generated.d.ts +5601 -933
- package/sdk/dist/routes/source-globals.generated.d.ts.map +1 -1
- package/sdk/dist/routes/source-globals.generated.js +3 -4
- package/sdk/dist/routes/source-globals.generated.js.map +1 -1
- package/sdk/dist/routes/source-globals.js +175 -0
- package/sdk/dist/routes/source-globals.js.map +1 -0
- package/sdk/dist/routes/stock-tokens.d.ts +89 -0
- package/sdk/dist/routes/stock-tokens.d.ts.map +1 -0
- package/sdk/dist/routes/stock-tokens.generated.d.ts +7 -0
- package/sdk/dist/routes/stock-tokens.generated.d.ts.map +1 -0
- package/sdk/dist/routes/stock-tokens.generated.js +3664 -0
- package/sdk/dist/routes/stock-tokens.generated.js.map +1 -0
- package/sdk/dist/routes/stock-tokens.js +89 -0
- package/sdk/dist/routes/stock-tokens.js.map +1 -0
- package/sdk/dist/routes/token-registry.d.ts +68 -8
- package/sdk/dist/routes/token-registry.d.ts.map +1 -1
- package/sdk/dist/routes/token-registry.js +218 -32
- package/sdk/dist/routes/token-registry.js.map +1 -1
- package/sdk/dist/routes/token-rewrite.d.ts +1 -1
- package/sdk/dist/routes/token-rewrite.d.ts.map +1 -1
- package/sdk/dist/routes/token-rewrite.js +5 -9
- package/sdk/dist/routes/token-rewrite.js.map +1 -1
- package/sdk/dist/routes/unknown-global.d.ts +32 -0
- package/sdk/dist/routes/unknown-global.d.ts.map +1 -0
- package/sdk/dist/routes/unknown-global.js +106 -0
- package/sdk/dist/routes/unknown-global.js.map +1 -0
- package/sdk/dist/routes/vault.d.ts +38 -8
- package/sdk/dist/routes/vault.d.ts.map +1 -1
- package/sdk/dist/routes/vault.js +47 -8
- package/sdk/dist/routes/vault.js.map +1 -1
- package/sdk/dist/sauce-script/builtins.d.ts +309 -0
- package/sdk/dist/sauce-script/declarations.d.ts +3 -0
- package/sdk/dist/sauce-script/declarations.d.ts.map +1 -0
- package/sdk/dist/sauce-script/declarations.js +229 -0
- package/sdk/dist/sauce-script/declarations.js.map +1 -0
- package/sdk/dist/sauce-script/index.d.ts +2714 -0
- package/sdk/dist/sauce-script/ts-plugin.cjs +85 -0
- package/sdk/dist/skills/loader.d.ts.map +1 -1
- package/sdk/dist/skills/loader.js +4 -3
- package/sdk/dist/skills/loader.js.map +1 -1
- package/sdk/dist/std/router/balancer-v2-vault.abi.json +78 -0
- package/sdk/dist/std/router/curve-cryptoswap.abi.json +29 -0
- package/sdk/dist/std/router/curve-stableswap.abi.json +29 -0
- package/sdk/dist/std/router/dodo-v2-pool.abi.json +39 -0
- package/sdk/dist/std/router/lb-pair.abi.json +55 -0
- package/sdk/dist/std/router/package.json +7 -0
- package/sdk/dist/std/router/router.evm.js +567 -0
- package/sdk/dist/std/router/sauce-router.abi.json +202 -0
- package/sdk/dist/std/router/uniswap-v2-pair.abi.json +49 -0
- package/sdk/dist/std/router/woo-pp-v2.abi.json +42 -0
- package/sdk/dist/std/token/permit2.abi.json +226 -0
- package/sdk/dist/std/token/token.evm.js +73 -0
- package/sdk/dist/std/token/token.svm.js +194 -41
- package/sdk/dist/svm/client.d.ts +62 -15
- package/sdk/dist/svm/client.d.ts.map +1 -1
- package/sdk/dist/svm/client.js +103 -42
- package/sdk/dist/svm/client.js.map +1 -1
- package/sdk/dist/svm/engine.d.ts +66 -5
- package/sdk/dist/svm/engine.d.ts.map +1 -1
- package/sdk/dist/svm/engine.js +73 -5
- package/sdk/dist/svm/engine.js.map +1 -1
- package/sdk/dist/svm/index.d.ts +2 -0
- package/sdk/dist/svm/index.d.ts.map +1 -1
- package/sdk/dist/svm/index.js +2 -0
- package/sdk/dist/svm/index.js.map +1 -1
- package/sdk/dist/svm/instructions.d.ts +72 -1
- package/sdk/dist/svm/instructions.d.ts.map +1 -1
- package/sdk/dist/svm/instructions.js +81 -2
- package/sdk/dist/svm/instructions.js.map +1 -1
- package/sdk/dist/svm/kitchen.d.ts +20 -1
- package/sdk/dist/svm/kitchen.d.ts.map +1 -1
- package/sdk/dist/svm/kitchen.js +47 -1
- package/sdk/dist/svm/kitchen.js.map +1 -1
- package/sdk/dist/svm/portal.d.ts +250 -0
- package/sdk/dist/svm/portal.d.ts.map +1 -0
- package/sdk/dist/svm/portal.js +462 -0
- package/sdk/dist/svm/portal.js.map +1 -0
- package/sdk/dist/svm/send.d.ts +18 -2
- package/sdk/dist/svm/send.d.ts.map +1 -1
- package/sdk/dist/svm/send.js +28 -3
- package/sdk/dist/svm/send.js.map +1 -1
- package/sdk/dist/svm/token-accounts.d.ts +49 -0
- package/sdk/dist/svm/token-accounts.d.ts.map +1 -0
- package/sdk/dist/svm/token-accounts.js +58 -0
- package/sdk/dist/svm/token-accounts.js.map +1 -0
- package/sdk/dist/svm/token-extensions.d.ts +18 -7
- package/sdk/dist/svm/token-extensions.d.ts.map +1 -1
- package/sdk/dist/svm/token-extensions.js +58 -5
- package/sdk/dist/svm/token-extensions.js.map +1 -1
- package/sdk/dist/token/evm.js +1 -1
- package/sdk/dist/token/index.d.ts +1 -1
- package/sdk/dist/token/index.js +1 -1
- package/sdk/dist/token/params.js +1 -1
- package/sdk/dist/token/source.js +3 -3
- package/sdk/dist/token/source.js.map +1 -1
- package/sdk/dist/token/types.d.ts +2 -2
- package/sdk/dist/token/types.js +2 -2
- package/sdk/src/protocols/aerodrome/AerodromePoolABI.json +105 -0
- package/sdk/src/protocols/aerodrome/abis.ts +62 -0
- package/sdk/src/protocols/aerodrome-slipstream/AerodromeSlipstreamPoolABI.json +96 -0
- package/sdk/src/protocols/aerodrome-slipstream/abis.ts +55 -0
- package/sdk/src/protocols/camelot/CamelotV2FactoryABI.json +25 -0
- package/sdk/src/protocols/camelot/CamelotV2PairABI.json +109 -0
- package/sdk/src/protocols/camelot/CamelotV3FactoryABI.json +25 -0
- package/sdk/src/protocols/camelot/CamelotV3PoolABI.json +92 -0
- package/sdk/src/protocols/camelot/abis.ts +143 -0
- package/sdk/src/protocols/eco-routes/PortalABI.json +1448 -0
- package/sdk/src/protocols/eco-routes/ProverABI.json +162 -0
- package/sdk/src/protocols/eco-routes/abis.ts +1060 -51
- package/sdk/src/protocols/eco-routes/addresses.generated.ts +45 -62
- package/sdk/src/protocols/eco-routes/lookup.ts +18 -0
- package/sdk/src/protocols/maverick/MaverickV2PoolABI.json +107 -0
- package/sdk/src/protocols/maverick/abis.ts +59 -0
- package/sdk/src/protocols/maverick/addresses.ts +4 -0
- package/sdk/src/protocols/pancakeswap-v2/PancakeSwapV2PairABI.json +72 -0
- package/sdk/src/protocols/pancakeswap-v2/abis.ts +44 -0
- package/sdk/src/protocols/pancakeswap-v3/PancakeSwapV3PoolABI.json +100 -0
- package/sdk/src/protocols/pancakeswap-v3/abis.ts +57 -0
- package/sdk/src/protocols/permit2/Permit2ABI.json +154 -0
- package/sdk/src/protocols/permit2/abis.ts +63 -0
- package/sdk/src/protocols/quickswap/QuickSwapV2FactoryABI.json +25 -0
- package/sdk/src/protocols/quickswap/QuickSwapV2PairABI.json +72 -0
- package/sdk/src/protocols/quickswap/QuickSwapV3FactoryABI.json +25 -0
- package/sdk/src/protocols/quickswap/QuickSwapV3PoolABI.json +88 -0
- package/sdk/src/protocols/quickswap/abis.ts +123 -0
- package/sdk/src/protocols/sushiswap-v2/SushiSwapV2PairABI.json +72 -0
- package/sdk/src/protocols/sushiswap-v2/abis.ts +43 -0
- package/sdk/src/protocols/synthra-v3/SynthraV3PoolABI.json +100 -0
- package/sdk/src/protocols/synthra-v3/abis.ts +56 -0
- package/sdk/src/protocols/trader-joe/LBPairABI.json +185 -0
- package/sdk/src/protocols/trader-joe/abis.ts +102 -0
- package/sdk/src/protocols/trader-joe/addresses.ts +5 -0
- package/sdk/src/protocols/uniswap-v2/UniswapV2PairABI.json +72 -0
- package/sdk/src/protocols/uniswap-v2/abis.ts +45 -0
- package/sdk/src/protocols/uniswap-v3/UniswapV3PoolABI.json +100 -0
- package/sdk/src/protocols/uniswap-v3/abis.ts +56 -0
- package/sdk/src/protocols/uniswap-v4/UniswapV4PoolManagerABI.json +38 -0
- package/sdk/src/protocols/uniswap-v4/UniswapV4StateViewABI.json +307 -0
- package/sdk/src/protocols/uniswap-v4/abis.ts +168 -0
- package/sdk/src/protocols/uniswap-v4/addresses.ts +50 -0
- package/sdk/src/protocols/unitflow-v3/UnitFlowV3PoolABI.json +100 -0
- package/sdk/src/protocols/unitflow-v3/abis.ts +57 -0
- package/sdk/src/protocols/velodrome/VelodromePoolABI.json +105 -0
- package/sdk/src/protocols/velodrome/abis.ts +62 -0
- package/skills/sauce-actions/SKILL.md +166 -0
- package/skills/sauce-actions/examples/swap-and-supply.json +24 -0
- package/skills/sauce-actions/examples/swap-by-key.json +15 -0
- package/skills/sauce-actions/references/actions.md +731 -0
- package/skills/sauce-chains/SKILL.md +137 -0
- package/skills/sauce-chains/examples/chains.sauce.ts +25 -0
- package/skills/sauce-chains/references/arbitrum.md +158 -0
- package/skills/sauce-chains/references/arc.md +107 -0
- package/skills/sauce-chains/references/aurora.md +33 -0
- package/skills/sauce-chains/references/avalanche.md +106 -0
- package/skills/sauce-chains/references/base-stocks.md +77 -0
- package/skills/sauce-chains/references/base.md +141 -0
- package/skills/sauce-chains/references/berachain.md +33 -0
- package/skills/sauce-chains/references/blast.md +60 -0
- package/skills/sauce-chains/references/boba.md +33 -0
- package/skills/sauce-chains/references/bsc.md +97 -0
- package/skills/sauce-chains/references/celo.md +57 -0
- package/skills/sauce-chains/references/core.md +33 -0
- package/skills/sauce-chains/references/cronos.md +33 -0
- package/skills/sauce-chains/references/ethereum-stocks.md +1741 -0
- package/skills/sauce-chains/references/ethereum.md +255 -0
- package/skills/sauce-chains/references/evmos.md +33 -0
- package/skills/sauce-chains/references/fantom.md +61 -0
- package/skills/sauce-chains/references/fuse.md +33 -0
- package/skills/sauce-chains/references/gnosis.md +57 -0
- package/skills/sauce-chains/references/index.md +58 -0
- package/skills/sauce-chains/references/ink.md +55 -0
- package/skills/sauce-chains/references/kava.md +33 -0
- package/skills/sauce-chains/references/klaytn.md +33 -0
- package/skills/sauce-chains/references/linea.md +65 -0
- package/skills/sauce-chains/references/manta.md +33 -0
- package/skills/sauce-chains/references/mantle.md +33 -0
- package/skills/sauce-chains/references/metis.md +54 -0
- package/skills/sauce-chains/references/mode.md +55 -0
- package/skills/sauce-chains/references/monad.md +79 -0
- package/skills/sauce-chains/references/moonbeam.md +33 -0
- package/skills/sauce-chains/references/opbnb.md +55 -0
- package/skills/sauce-chains/references/optimism.md +123 -0
- package/skills/sauce-chains/references/plasma.md +35 -0
- package/skills/sauce-chains/references/polygon.md +123 -0
- package/skills/sauce-chains/references/pulsechain.md +33 -0
- package/skills/sauce-chains/references/ronin.md +35 -0
- package/skills/sauce-chains/references/scroll.md +62 -0
- package/skills/sauce-chains/references/sei.md +55 -0
- package/skills/sauce-chains/references/solana-stocks.md +1812 -0
- package/skills/sauce-chains/references/solana.md +56 -0
- package/skills/sauce-chains/references/sonic.md +57 -0
- package/skills/sauce-chains/references/unichain.md +61 -0
- package/skills/sauce-chains/references/zetachain.md +33 -0
- package/skills/sauce-chains/references/zksync.md +59 -0
- package/skills/sauce-chains/references/zora.md +57 -0
- package/skills/sauce-cli/SKILL.md +366 -0
- package/skills/sauce-cli/examples/pay.sauce.ts +23 -0
- package/skills/sauce-cli/examples/split.sauce.ts +30 -0
- package/skills/sauce-distributed-swap/SKILL.md +392 -0
- package/skills/sauce-distributed-swap/examples/distributed-swap.mts +251 -0
- package/skills/sauce-distributed-swap/examples/distributed-swap.sauce.ts +115 -0
- package/skills/sauce-examples/SKILL.md +96 -0
- package/skills/sauce-globals/SKILL.md +213 -0
- package/skills/sauce-globals/examples/globals.mts +111 -0
- package/skills/sauce-globals/examples/globals.sauce.ts +47 -0
- package/skills/sauce-globals/references/chains.md +53 -0
- package/skills/sauce-globals/references/protocols.md +405 -0
- package/skills/sauce-globals/references/stocks.md +3635 -0
- package/skills/sauce-globals/references/tokens.md +53 -0
- package/skills/sauce-intents/SKILL.md +505 -0
- package/skills/sauce-intents/examples/cross-chain.sauce.ts +37 -0
- package/skills/sauce-intents/examples/fund-by-transfer.sauce.ts +54 -0
- package/skills/sauce-intents/examples/intents.mts +343 -0
- package/skills/sauce-intents/examples/swap-on-base.sauce.ts +135 -0
- package/skills/sauce-intents/references/portal.md +77 -0
- package/skills/sauce-overview/SKILL.md +161 -0
- package/skills/sauce-protocols/SKILL.md +118 -0
- package/skills/sauce-protocols/examples/protocols.mts +77 -0
- package/skills/sauce-protocols/examples/protocols.sauce.ts +27 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/aave-v2.md +35 -17
- package/skills/sauce-protocols/references/aave-v3.md +144 -0
- package/skills/sauce-protocols/references/aave-v4.md +50 -0
- package/skills/sauce-protocols/references/abracadabra.md +72 -0
- package/skills/sauce-protocols/references/across.md +73 -0
- package/skills/sauce-protocols/references/aerodrome-slipstream.md +50 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/aerodrome.md +43 -24
- package/skills/sauce-protocols/references/aevo.md +49 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/alchemix.md +10 -25
- package/{sdk/src/skills → skills/sauce-protocols/references}/ambient.md +14 -21
- package/{sdk/src/skills → skills/sauce-protocols/references}/arbitrum-bridge.md +11 -14
- package/{sdk/src/skills → skills/sauce-protocols/references}/arrakis.md +10 -26
- package/skills/sauce-protocols/references/axelar.md +56 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/balancer-v2.md +13 -29
- package/{sdk/src/skills → skills/sauce-protocols/references}/base-bridge.md +11 -16
- package/{sdk/src/skills → skills/sauce-protocols/references}/baseswap.md +12 -19
- package/{sdk/src/skills → skills/sauce-protocols/references}/beefy.md +10 -30
- package/{sdk/src/skills → skills/sauce-protocols/references}/benqi.md +11 -21
- package/{sdk/src/skills → skills/sauce-protocols/references}/camelot.md +13 -27
- package/{sdk/src/skills → skills/sauce-protocols/references}/cbeth.md +10 -22
- package/skills/sauce-protocols/references/cctp.md +47 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/celer.md +11 -18
- package/{sdk/src/skills → skills/sauce-protocols/references}/chainlink-ccip.md +11 -21
- package/skills/sauce-protocols/references/chainlink.md +47 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/circle-gateway.md +12 -38
- package/{sdk/src/skills → skills/sauce-protocols/references}/compound-v2.md +11 -25
- package/{sdk/src/skills → skills/sauce-protocols/references}/compound-v3.md +43 -27
- package/{sdk/src/skills → skills/sauce-protocols/references}/connext.md +11 -15
- package/{sdk/src/skills → skills/sauce-protocols/references}/convex.md +10 -28
- package/{sdk/src/skills → skills/sauce-protocols/references}/cowswap.md +12 -19
- package/{sdk/src/skills → skills/sauce-protocols/references}/crvusd.md +10 -19
- package/skills/sauce-protocols/references/curve.md +98 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/debridge.md +11 -33
- package/{sdk/src/skills → skills/sauce-protocols/references}/dodo.md +13 -18
- package/skills/sauce-protocols/references/eigenlayer.md +48 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/ens.md +10 -26
- package/{sdk/src/skills → skills/sauce-protocols/references}/erc20.md +10 -24
- package/{sdk/src/skills → skills/sauce-protocols/references}/erc3156.md +10 -13
- package/{sdk/src/skills → skills/sauce-protocols/references}/erc4626.md +11 -27
- package/{sdk/src/skills → skills/sauce-protocols/references}/ethena.md +10 -27
- package/{sdk/src/skills → skills/sauce-protocols/references}/etherfi.md +10 -32
- package/{sdk/src/skills → skills/sauce-protocols/references}/euler-v2.md +11 -21
- package/{sdk/src/skills → skills/sauce-protocols/references}/fenix.md +12 -18
- package/{sdk/src/skills → skills/sauce-protocols/references}/fluid.md +11 -20
- package/{sdk/src/skills → skills/sauce-protocols/references}/frax-ether.md +10 -26
- package/{sdk/src/skills → skills/sauce-protocols/references}/frax.md +10 -19
- package/{sdk/src/skills → skills/sauce-protocols/references}/gains-network.md +11 -28
- package/skills/sauce-protocols/references/gamma.md +57 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/gelato.md +12 -20
- package/{sdk/src/skills → skills/sauce-protocols/references}/gho.md +10 -19
- package/{sdk/src/skills → skills/sauce-protocols/references}/gmx-v1.md +12 -34
- package/{sdk/src/skills → skills/sauce-protocols/references}/gmx-v2.md +15 -28
- package/skills/sauce-protocols/references/harvest.md +41 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/hegic.md +10 -18
- package/{sdk/src/skills → skills/sauce-protocols/references}/hop.md +11 -21
- package/{sdk/src/skills → skills/sauce-protocols/references}/hyperlane.md +11 -21
- package/skills/sauce-protocols/references/index.md +355 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/instadapp.md +10 -18
- package/skills/sauce-protocols/references/kelp.md +46 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/kim.md +12 -18
- package/{sdk/src/skills → skills/sauce-protocols/references}/kyberswap-aggregator.md +12 -35
- package/skills/sauce-protocols/references/kyberswap.md +72 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/layerbank.md +11 -26
- package/{sdk/src/skills → skills/sauce-protocols/references}/layerzero.md +11 -25
- package/{sdk/src/skills → skills/sauce-protocols/references}/level-finance.md +10 -24
- package/{sdk/src/skills → skills/sauce-protocols/references}/lido.md +10 -28
- package/{sdk/src/skills → skills/sauce-protocols/references}/lifi.md +11 -25
- package/{sdk/src/skills → skills/sauce-protocols/references}/linea-bridge.md +11 -14
- package/{sdk/src/skills → skills/sauce-protocols/references}/liquity-v1.md +10 -21
- package/{sdk/src/skills → skills/sauce-protocols/references}/liquity-v2.md +10 -19
- package/{sdk/src/skills → skills/sauce-protocols/references}/lynex.md +12 -18
- package/skills/sauce-protocols/references/maker.md +57 -0
- package/skills/sauce-protocols/references/mantle-meth.md +43 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/maverick.md +13 -25
- package/{sdk/src/skills → skills/sauce-protocols/references}/moonwell.md +11 -21
- package/{sdk/src/skills → skills/sauce-protocols/references}/morpho-blue.md +44 -21
- package/{sdk/src/skills → skills/sauce-protocols/references}/mux-protocol.md +10 -30
- package/skills/sauce-protocols/references/olympus.md +39 -0
- package/skills/sauce-protocols/references/oneinch.md +81 -0
- package/skills/sauce-protocols/references/openocean.md +69 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/optimism-bridge.md +11 -16
- package/{sdk/src/skills → skills/sauce-protocols/references}/opyn.md +10 -21
- package/{sdk/src/skills → skills/sauce-protocols/references}/pancakeswap-v2.md +39 -41
- package/skills/sauce-protocols/references/pancakeswap-v3.md +72 -0
- package/skills/sauce-protocols/references/paraswap.md +39 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/pendle.md +47 -29
- package/skills/sauce-protocols/references/permit2.md +101 -0
- package/skills/sauce-protocols/references/perpetual-protocol.md +53 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/polygon-bridge.md +11 -17
- package/{sdk/src/skills → skills/sauce-protocols/references}/premia.md +10 -19
- package/{sdk/src/skills → skills/sauce-protocols/references}/puffer.md +10 -21
- package/skills/sauce-protocols/references/pyth.md +45 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/quickswap.md +13 -27
- package/{sdk/src/skills → skills/sauce-protocols/references}/radiant.md +11 -15
- package/{sdk/src/skills → skills/sauce-protocols/references}/ramses.md +12 -18
- package/skills/sauce-protocols/references/reflexer.md +52 -0
- package/skills/sauce-protocols/references/registry/aave-v2.md +43 -0
- package/skills/sauce-protocols/references/registry/aave-v3.md +62 -0
- package/skills/sauce-protocols/references/registry/aave-v4.md +80 -0
- package/skills/sauce-protocols/references/registry/abracadabra.md +54 -0
- package/skills/sauce-protocols/references/registry/across.md +57 -0
- package/skills/sauce-protocols/references/registry/aerodrome-slipstream.md +72 -0
- package/skills/sauce-protocols/references/registry/aerodrome.md +58 -0
- package/skills/sauce-protocols/references/registry/aevo.md +39 -0
- package/skills/sauce-protocols/references/registry/alchemix.md +46 -0
- package/skills/sauce-protocols/references/registry/ambient.md +40 -0
- package/skills/sauce-protocols/references/registry/arbitrum-bridge.md +40 -0
- package/skills/sauce-protocols/references/registry/arrakis.md +49 -0
- package/skills/sauce-protocols/references/registry/axelar.md +65 -0
- package/skills/sauce-protocols/references/registry/balancer-v2.md +50 -0
- package/skills/sauce-protocols/references/registry/base-bridge.md +42 -0
- package/skills/sauce-protocols/references/registry/baseswap.md +40 -0
- package/skills/sauce-protocols/references/registry/beefy.md +51 -0
- package/skills/sauce-protocols/references/registry/benqi.md +49 -0
- package/skills/sauce-protocols/references/registry/camelot.md +82 -0
- package/skills/sauce-protocols/references/registry/cbeth.md +43 -0
- package/skills/sauce-protocols/references/registry/cctp.md +48 -0
- package/skills/sauce-protocols/references/registry/celer.md +44 -0
- package/skills/sauce-protocols/references/registry/chainlink-ccip.md +45 -0
- package/skills/sauce-protocols/references/registry/chainlink.md +49 -0
- package/skills/sauce-protocols/references/registry/circle-gateway.md +70 -0
- package/skills/sauce-protocols/references/registry/compound-v2.md +53 -0
- package/skills/sauce-protocols/references/registry/compound-v3.md +52 -0
- package/skills/sauce-protocols/references/registry/connext.md +41 -0
- package/skills/sauce-protocols/references/registry/convex.md +51 -0
- package/skills/sauce-protocols/references/registry/cowswap.md +40 -0
- package/skills/sauce-protocols/references/registry/crvusd.md +40 -0
- package/skills/sauce-protocols/references/registry/curve.md +81 -0
- package/skills/sauce-protocols/references/registry/debridge.md +59 -0
- package/skills/sauce-protocols/references/registry/dodo.md +39 -0
- package/skills/sauce-protocols/references/registry/eco-routes.md +65 -0
- package/skills/sauce-protocols/references/registry/eigenlayer.md +58 -0
- package/skills/sauce-protocols/references/registry/ens.md +49 -0
- package/skills/sauce-protocols/references/registry/erc20.md +44 -0
- package/skills/sauce-protocols/references/registry/erc3156.md +38 -0
- package/skills/sauce-protocols/references/registry/erc4626.md +51 -0
- package/skills/sauce-protocols/references/registry/ethena.md +50 -0
- package/skills/sauce-protocols/references/registry/etherfi.md +57 -0
- package/skills/sauce-protocols/references/registry/euler-v2.md +49 -0
- package/skills/sauce-protocols/references/registry/fenix.md +39 -0
- package/skills/sauce-protocols/references/registry/fluid.md +48 -0
- package/skills/sauce-protocols/references/registry/frax-ether.md +49 -0
- package/skills/sauce-protocols/references/registry/frax.md +40 -0
- package/skills/sauce-protocols/references/registry/gains-network.md +43 -0
- package/skills/sauce-protocols/references/registry/gamma.md +56 -0
- package/skills/sauce-protocols/references/registry/gelato.md +45 -0
- package/skills/sauce-protocols/references/registry/gho.md +40 -0
- package/skills/sauce-protocols/references/registry/gmx-v1.md +59 -0
- package/skills/sauce-protocols/references/registry/gmx-v2.md +41 -0
- package/skills/sauce-protocols/references/registry/harvest.md +44 -0
- package/skills/sauce-protocols/references/registry/hegic.md +39 -0
- package/skills/sauce-protocols/references/registry/hop.md +49 -0
- package/skills/sauce-protocols/references/registry/hyperlane.md +48 -0
- package/skills/sauce-protocols/references/registry/instadapp.md +39 -0
- package/skills/sauce-protocols/references/registry/kelp.md +47 -0
- package/skills/sauce-protocols/references/registry/kim.md +39 -0
- package/skills/sauce-protocols/references/registry/kyberswap-aggregator.md +49 -0
- package/skills/sauce-protocols/references/registry/kyberswap.md +63 -0
- package/skills/sauce-protocols/references/registry/layerbank.md +54 -0
- package/skills/sauce-protocols/references/registry/layerzero.md +49 -0
- package/skills/sauce-protocols/references/registry/level-finance.md +41 -0
- package/skills/sauce-protocols/references/registry/lido.md +51 -0
- package/skills/sauce-protocols/references/registry/lifi.md +48 -0
- package/skills/sauce-protocols/references/registry/linea-bridge.md +40 -0
- package/skills/sauce-protocols/references/registry/liquity-v1.md +42 -0
- package/skills/sauce-protocols/references/registry/liquity-v2.md +40 -0
- package/skills/sauce-protocols/references/registry/lynex.md +39 -0
- package/skills/sauce-protocols/references/registry/maker.md +55 -0
- package/skills/sauce-protocols/references/registry/mantle-meth.md +48 -0
- package/skills/sauce-protocols/references/registry/maverick.md +60 -0
- package/skills/sauce-protocols/references/registry/moonwell.md +49 -0
- package/skills/sauce-protocols/references/registry/morpho-blue.md +47 -0
- package/skills/sauce-protocols/references/registry/mux-protocol.md +49 -0
- package/skills/sauce-protocols/references/registry/olympus.md +42 -0
- package/skills/sauce-protocols/references/registry/oneinch.md +45 -0
- package/skills/sauce-protocols/references/registry/openocean.md +44 -0
- package/skills/sauce-protocols/references/registry/optimism-bridge.md +42 -0
- package/skills/sauce-protocols/references/registry/opyn.md +42 -0
- package/skills/sauce-protocols/references/registry/pancakeswap-v2.md +71 -0
- package/skills/sauce-protocols/references/registry/pancakeswap-v3.md +76 -0
- package/skills/sauce-protocols/references/registry/paraswap.md +51 -0
- package/skills/sauce-protocols/references/registry/pendle.md +43 -0
- package/skills/sauce-protocols/references/registry/permit2.md +50 -0
- package/skills/sauce-protocols/references/registry/perpetual-protocol.md +49 -0
- package/skills/sauce-protocols/references/registry/polygon-bridge.md +43 -0
- package/skills/sauce-protocols/references/registry/premia.md +40 -0
- package/skills/sauce-protocols/references/registry/puffer.md +43 -0
- package/skills/sauce-protocols/references/registry/pyth.md +40 -0
- package/skills/sauce-protocols/references/registry/quickswap.md +80 -0
- package/skills/sauce-protocols/references/registry/radiant.md +41 -0
- package/skills/sauce-protocols/references/registry/ramses.md +39 -0
- package/skills/sauce-protocols/references/registry/reflexer.md +56 -0
- package/skills/sauce-protocols/references/registry/renzo.md +47 -0
- package/skills/sauce-protocols/references/registry/rocket-pool.md +49 -0
- package/skills/sauce-protocols/references/registry/sablier.md +40 -0
- package/skills/sauce-protocols/references/registry/safe.md +47 -0
- package/skills/sauce-protocols/references/registry/scroll-bridge.md +48 -0
- package/skills/sauce-protocols/references/registry/seamless.md +42 -0
- package/skills/sauce-protocols/references/registry/seaport.md +44 -0
- package/skills/sauce-protocols/references/registry/silo.md +48 -0
- package/skills/sauce-protocols/references/registry/socket.md +44 -0
- package/skills/sauce-protocols/references/registry/sommelier.md +43 -0
- package/skills/sauce-protocols/references/registry/spark.md +42 -0
- package/skills/sauce-protocols/references/registry/spookyswap.md +40 -0
- package/skills/sauce-protocols/references/registry/squid.md +45 -0
- package/skills/sauce-protocols/references/registry/stader.md +47 -0
- package/skills/sauce-protocols/references/registry/stargate.md +45 -0
- package/skills/sauce-protocols/references/registry/superfluid.md +49 -0
- package/skills/sauce-protocols/references/registry/sushiswap-v2.md +71 -0
- package/skills/sauce-protocols/references/registry/swell.md +49 -0
- package/skills/sauce-protocols/references/registry/synapse.md +46 -0
- package/skills/sauce-protocols/references/registry/syncswap.md +38 -0
- package/skills/sauce-protocols/references/registry/synthetix-v3.md +48 -0
- package/skills/sauce-protocols/references/registry/synthra-v3.md +77 -0
- package/skills/sauce-protocols/references/registry/thales.md +51 -0
- package/skills/sauce-protocols/references/registry/thena.md +39 -0
- package/skills/sauce-protocols/references/registry/thruster.md +38 -0
- package/skills/sauce-protocols/references/registry/tokemak.md +45 -0
- package/skills/sauce-protocols/references/registry/trader-joe.md +66 -0
- package/skills/sauce-protocols/references/registry/uniswap-v2.md +77 -0
- package/skills/sauce-protocols/references/registry/uniswap-v3.md +113 -0
- package/skills/sauce-protocols/references/registry/uniswap-v4.md +117 -0
- package/skills/sauce-protocols/references/registry/unitflow-v3.md +65 -0
- package/skills/sauce-protocols/references/registry/velodrome.md +58 -0
- package/skills/sauce-protocols/references/registry/venus.md +62 -0
- package/skills/sauce-protocols/references/registry/vertex.md +46 -0
- package/skills/sauce-protocols/references/registry/wormhole.md +59 -0
- package/skills/sauce-protocols/references/registry/yearn-v3.md +46 -0
- package/skills/sauce-protocols/references/registry/zerolend.md +41 -0
- package/skills/sauce-protocols/references/registry/zerox.md +44 -0
- package/skills/sauce-protocols/references/registry/zksync-bridge.md +40 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/renzo.md +10 -24
- package/{sdk/src/skills → skills/sauce-protocols/references}/rocket-pool.md +10 -26
- package/{sdk/src/skills → skills/sauce-protocols/references}/sablier.md +10 -27
- package/skills/sauce-protocols/references/safe.md +42 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/scroll-bridge.md +11 -20
- package/{sdk/src/skills → skills/sauce-protocols/references}/seamless.md +11 -16
- package/skills/sauce-protocols/references/seaport.md +38 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/silo.md +11 -20
- package/{sdk/src/skills → skills/sauce-protocols/references}/socket.md +11 -18
- package/skills/sauce-protocols/references/sommelier.md +40 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/spark.md +11 -16
- package/{sdk/src/skills → skills/sauce-protocols/references}/spookyswap.md +12 -19
- package/{sdk/src/skills → skills/sauce-protocols/references}/squid.md +11 -21
- package/skills/sauce-protocols/references/stader.md +39 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/stargate.md +11 -22
- package/{sdk/src/skills → skills/sauce-protocols/references}/superfluid.md +10 -28
- package/{sdk/src/skills → skills/sauce-protocols/references}/sushiswap-v2.md +38 -43
- package/skills/sauce-protocols/references/swell.md +49 -0
- package/skills/sauce-protocols/references/synapse.md +54 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/syncswap.md +12 -17
- package/{sdk/src/skills → skills/sauce-protocols/references}/synthetix-v3.md +10 -29
- package/skills/sauce-protocols/references/synthra-v3.md +63 -0
- package/skills/sauce-protocols/references/thales.md +58 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/thena.md +12 -18
- package/{sdk/src/skills → skills/sauce-protocols/references}/thruster.md +13 -18
- package/skills/sauce-protocols/references/tokemak.md +40 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/trader-joe.md +13 -26
- package/{sdk/src/skills → skills/sauce-protocols/references}/uniswap-v2.md +46 -44
- package/skills/sauce-protocols/references/uniswap-v3.md +188 -0
- package/skills/sauce-protocols/references/uniswap-v4.md +155 -0
- package/skills/sauce-protocols/references/unitflow-v3.md +63 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/velodrome.md +12 -24
- package/{sdk/src/skills → skills/sauce-protocols/references}/venus.md +12 -31
- package/skills/sauce-protocols/references/vertex.md +42 -0
- package/skills/sauce-protocols/references/wormhole.md +57 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/yearn-v3.md +10 -25
- package/{sdk/src/skills → skills/sauce-protocols/references}/zerolend.md +11 -15
- package/skills/sauce-protocols/references/zerox.md +39 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/zksync-bridge.md +11 -14
- package/skills/sauce-script/SKILL.md +407 -0
- package/skills/sauce-script/examples/IOracle.json +12 -0
- package/skills/sauce-script/examples/saucescript.mts +167 -0
- package/skills/sauce-script/examples/twap.sauce.ts +29 -0
- package/skills/sauce-script/references/builtins.json +823 -0
- package/skills/sauce-script/references/builtins.md +674 -0
- package/skills/sauce-solana/SKILL.md +324 -0
- package/skills/sauce-solana/examples/solana.mts +166 -0
- package/skills/sauce-solana/examples/solana.sauce.ts +45 -0
- package/skills/sauce-solana/examples/token-2022.sauce.ts +38 -0
- package/skills/sauce-swaps/SKILL.md +200 -0
- package/skills/sauce-swaps/examples/swap-leg.sauce.ts +50 -0
- package/skills/sauce-swaps/examples/swaps.mts +124 -0
- package/skills/sauce-typescript/SKILL.md +178 -0
- package/skills/sauce-typescript/examples/actions.mts +100 -0
- package/skills/sauce-typescript/examples/compiler.mts +69 -0
- package/skills/sauce-typescript/examples/cook.mts +65 -0
- package/skills/sauce-typescript/examples/verify.mts +104 -0
- package/dev-tools/README.md +0 -16
- package/dev-tools/artifacts/IERC20.json +0 -1
- package/dev-tools/artifacts/ISauceRouter.json +0 -1
- package/dev-tools/artifacts/IUniswapV3Pool.json +0 -1
- package/dev-tools/artifacts/Router.json +0 -1
- package/dev-tools/hardhat.config.cjs +0 -18
- package/dev-tools/sauce/js/add.js +0 -4
- package/dev-tools/sauce/js/call.js +0 -8
- package/dev-tools/sauce/js/erc20.js +0 -18
- package/dev-tools/sauce/js/example.js +0 -6
- package/dev-tools/sauce/js/fibonacci.js +0 -13
- package/dev-tools/sauce/ts/add.ts +0 -4
- package/dev-tools/sauce/ts/call.ts +0 -8
- package/dev-tools/sauce/ts/erc20.ts +0 -18
- package/dev-tools/sauce/ts/example.ts +0 -6
- package/dev-tools/sauce/ts/fibonacci.ts +0 -13
- package/dev-tools/sauce/ts/saucescript.d.ts +0 -1
- package/dev-tools/sauce/ts/tsconfig.json +0 -12
- package/dev-tools/scripts/deploy.ts +0 -107
- package/dev-tools/scripts/init.js +0 -132
- package/dev-tools/scripts/run.ts +0 -67
- package/dev-tools/scripts/start-fork.sh +0 -92
- package/dev-tools/scripts/start-local.sh +0 -120
- package/dev-tools/scripts/stop-local.sh +0 -40
- package/dev-tools/scripts/sync-artifacts.js +0 -46
- package/dev-tools/scripts/sync-price.ts +0 -58
- package/dev-tools/src/contracts.ts +0 -59
- package/dev-tools/src/runner.ts +0 -355
- package/dev-tools/src/svm-local.ts +0 -305
- package/dev-tools/src/sync-price.ts +0 -217
- package/sdk/dist/deployments/v12.generated.d.ts +0 -95
- package/sdk/dist/deployments/v12.generated.d.ts.map +0 -1
- package/sdk/dist/deployments/v12.generated.js +0 -50
- package/sdk/dist/deployments/v12.generated.js.map +0 -1
- package/sdk/dist/swap/index.d.ts +0 -29
- package/sdk/dist/swap/index.d.ts.map +0 -1
- package/sdk/dist/swap/index.js +0 -27
- package/sdk/dist/swap/index.js.map +0 -1
- package/sdk/dist/swap/params.d.ts +0 -29
- package/sdk/dist/swap/params.d.ts.map +0 -1
- package/sdk/dist/swap/params.js +0 -123
- package/sdk/dist/swap/params.js.map +0 -1
- package/sdk/dist/swap/source.d.ts +0 -30
- package/sdk/dist/swap/source.d.ts.map +0 -1
- package/sdk/dist/swap/source.js +0 -101
- package/sdk/dist/swap/source.js.map +0 -1
- package/sdk/dist/swap/types.d.ts +0 -160
- package/sdk/dist/swap/types.d.ts.map +0 -1
- package/sdk/dist/swap/types.js +0 -106
- package/sdk/dist/swap/types.js.map +0 -1
- package/sdk/src/skills/aave-v3.md +0 -134
- package/sdk/src/skills/aave-v4.md +0 -91
- package/sdk/src/skills/abracadabra.md +0 -93
- package/sdk/src/skills/across.md +0 -90
- package/sdk/src/skills/aerodrome-slipstream.md +0 -57
- package/sdk/src/skills/aevo.md +0 -58
- package/sdk/src/skills/axelar.md +0 -80
- package/sdk/src/skills/chainlink.md +0 -62
- package/sdk/src/skills/curve.md +0 -141
- package/sdk/src/skills/eigenlayer.md +0 -71
- package/sdk/src/skills/gamma.md +0 -79
- package/sdk/src/skills/harvest.md +0 -49
- package/sdk/src/skills/index.md +0 -299
- package/sdk/src/skills/kelp.md +0 -60
- package/sdk/src/skills/kyberswap.md +0 -100
- package/sdk/src/skills/loader.ts +0 -46
- package/sdk/src/skills/maker.md +0 -79
- package/sdk/src/skills/mantle-meth.md +0 -60
- package/sdk/src/skills/olympus.md +0 -46
- package/sdk/src/skills/oneinch.md +0 -64
- package/sdk/src/skills/openocean.md +0 -86
- package/sdk/src/skills/pancakeswap-v3.md +0 -104
- package/sdk/src/skills/paraswap.md +0 -67
- package/sdk/src/skills/permit2.md +0 -73
- package/sdk/src/skills/perpetual-protocol.md +0 -73
- package/sdk/src/skills/pyth.md +0 -58
- package/sdk/src/skills/reflexer.md +0 -73
- package/sdk/src/skills/safe.md +0 -56
- package/sdk/src/skills/seaport.md +0 -65
- package/sdk/src/skills/sommelier.md +0 -47
- package/sdk/src/skills/stader.md +0 -53
- package/sdk/src/skills/swell.md +0 -65
- package/sdk/src/skills/synapse.md +0 -63
- package/sdk/src/skills/synthra-v3.md +0 -57
- package/sdk/src/skills/thales.md +0 -74
- package/sdk/src/skills/tokemak.md +0 -48
- package/sdk/src/skills/uniswap-v3.md +0 -202
- package/sdk/src/skills/uniswap-v4.md +0 -125
- package/sdk/src/skills/unitflow-v3.md +0 -62
- package/sdk/src/skills/vertex.md +0 -55
- package/sdk/src/skills/wormhole.md +0 -76
- package/sdk/src/skills/zerox.md +0 -51
|
@@ -5,43 +5,93 @@ import { compileWithRs } from "./rs-compile.js";
|
|
|
5
5
|
import { rewriteTokenFactory, rewriteTokenMembers, tokenImportLines, } from "./token-rewrite.js";
|
|
6
6
|
import { resolveTokenMap } from "./token-registry.js";
|
|
7
7
|
import { rewriteProtocolAccessors } from "./protocol-rewrite.js";
|
|
8
|
+
import { rewriteAvailability } from "./available.js";
|
|
9
|
+
import { unknownGlobalError } from "./unknown-global.js";
|
|
8
10
|
import { pascalOfSlug } from "./accessors.js";
|
|
9
11
|
import { encodeCompactArguments } from "../compact-arguments.js";
|
|
10
12
|
import { v12KitchenAddress } from "../deployments/index.js";
|
|
13
|
+
import { chainAmbient, chainDefines, sharedChainDefines } from "./ambient.js";
|
|
11
14
|
import { denormalizeToEvm } from "./encode.js";
|
|
12
15
|
import { toUniversalAddress } from "./normalize.js";
|
|
13
16
|
import { childCaptureSentinel } from "./intent-sugar.js";
|
|
14
17
|
import { resolveIntentPot } from "./intent-pot.js";
|
|
15
18
|
import { CANONICAL_CHAINS } from "../chains/canonical.js";
|
|
16
19
|
import { ecoRoutesPortal, ecoRoutesProver, } from "../protocols/eco-routes/lookup.js";
|
|
17
|
-
import { rewriteIntentSugar } from "./intent-sugar.js";
|
|
18
|
-
|
|
19
|
-
* A source is treated as already containing an entry program whenever it
|
|
20
|
-
* contains a top-level-looking `function main(` anywhere not immediately preceded by a word
|
|
21
|
-
* character or `.` (so `foo.main(` or `xmain(` don't false-positive); anything else is wrapped as a
|
|
22
|
-
* `function main() { ... }` body.
|
|
23
|
-
*/
|
|
24
|
-
const MAIN_FN_RE = /(^|[^.\w])function\s+main\s*\(/;
|
|
25
|
-
export function wrapSauceBody(sauce) {
|
|
26
|
-
if (MAIN_FN_RE.test(sauce))
|
|
27
|
-
return sauce;
|
|
28
|
-
return `function main() {\n${sauce}\n}`;
|
|
29
|
-
}
|
|
20
|
+
import { rewriteIntentSugar, } from "./intent-sugar.js";
|
|
21
|
+
import { mainParams } from "./entry.js";
|
|
30
22
|
/** Accessor name -> chain, for every canonical chain. `Base(() => ...)` in a program opens an
|
|
31
23
|
* intent for exactly the chains `import { Base }` gives a caller, so the two cannot diverge. */
|
|
32
24
|
let chainAccessorCache;
|
|
33
|
-
function chainAccessorNames() {
|
|
25
|
+
export function chainAccessorNames() {
|
|
34
26
|
chainAccessorCache ??= new Map(CANONICAL_CHAINS.map((chain) => [pascalOfSlug(chain.slug), chain]));
|
|
35
27
|
return chainAccessorCache;
|
|
36
28
|
}
|
|
37
|
-
/**
|
|
38
|
-
*
|
|
39
|
-
|
|
29
|
+
/** What a nested level resolves its chain-scoped names with: its own chain's registry values and
|
|
30
|
+
* nothing a caller supplied for another chain. */
|
|
31
|
+
const NESTED_SCOPE = { chainDefines: (chain) => sharedChainDefines(chain) };
|
|
32
|
+
/**
|
|
33
|
+
* The options and scope a level on `destination` gets, when a program compiled for `enclosing`
|
|
34
|
+
* names it: an intent's body there, its delivery, and the program that body compiles to.
|
|
35
|
+
*
|
|
36
|
+
* NAMES ARE SCOPED PER CHAIN, the way protocol accessors already are (they fold in each chain's own
|
|
37
|
+
* literal address). A token symbol, `chainId` or a protocol define means the chain its part runs on.
|
|
38
|
+
* So everything the caller supplied under a chain-scoped name — a `defines` entry named like one of
|
|
39
|
+
* the enclosing chain's values or the destination's, and every `tokens` override — belongs to the
|
|
40
|
+
* program it was supplied for, and is dropped for the level on another chain. That level takes its
|
|
41
|
+
* own chain's values instead. What the caller named that no chain uses (`RECIPIENT`) holds at every
|
|
42
|
+
* depth.
|
|
43
|
+
*
|
|
44
|
+
* Name-based, not value-based: it does not matter whether a `USDC` define came from
|
|
45
|
+
* `chainDefines(base)` or was chosen by hand. It was a Base name in either case. This is what closes
|
|
46
|
+
* both ways Base's USDC reached an Arbitrum body: `openRoute` folding its chain's values into
|
|
47
|
+
* `defines`, and a direct caller passing them there itself.
|
|
48
|
+
*
|
|
49
|
+
* A level on the SAME chain keeps the enclosing options: its names are the ones they were given for.
|
|
50
|
+
*/
|
|
51
|
+
function levelOn(enclosing, destination, options, scope) {
|
|
52
|
+
if (destination.id === enclosing.id)
|
|
53
|
+
return { options, scope };
|
|
54
|
+
const chainScoped = new Set([
|
|
55
|
+
...Object.keys(scope.chainDefines?.(enclosing) ?? {}),
|
|
56
|
+
...Object.keys(definesOf(enclosing, options.tokens)),
|
|
57
|
+
...Object.keys(sharedChainDefines(destination)),
|
|
58
|
+
]);
|
|
59
|
+
const defines = options.defines === undefined
|
|
60
|
+
? undefined
|
|
61
|
+
: Object.fromEntries(Object.entries(options.defines).filter(([name]) => !chainScoped.has(name)));
|
|
62
|
+
return { options: { ...options, defines, tokens: undefined }, scope: NESTED_SCOPE };
|
|
63
|
+
}
|
|
64
|
+
/** A chain's defines with `tokens` over its registry's: the chain's own, built once, with none. */
|
|
65
|
+
function definesOf(chain, tokens) {
|
|
66
|
+
return tokens === undefined ? sharedChainDefines(chain) : chainDefines(chain, { tokens });
|
|
67
|
+
}
|
|
68
|
+
/** The chain's defines a compile starts from: its token map, then its scope's values, merged once
|
|
69
|
+
* for each pair of them. A chain's own map and values are one object each on every compile
|
|
70
|
+
* (`resolveTokenMap`, `sharedChainDefines`), so their merge is kept, by both. */
|
|
71
|
+
const baseDefinesCache = new WeakMap();
|
|
72
|
+
const NO_SCOPE = {};
|
|
73
|
+
function baseDefines(tokenMap, scoped) {
|
|
74
|
+
const byScope = baseDefinesCache.get(tokenMap) ?? new WeakMap();
|
|
75
|
+
baseDefinesCache.set(tokenMap, byScope);
|
|
76
|
+
let merged = byScope.get(scoped ?? NO_SCOPE);
|
|
77
|
+
if (merged === undefined) {
|
|
78
|
+
merged = Object.freeze({ ...Object.fromEntries(tokenMap), ...scoped });
|
|
79
|
+
byScope.set(scoped ?? NO_SCOPE, merged);
|
|
80
|
+
}
|
|
81
|
+
return merged;
|
|
82
|
+
}
|
|
83
|
+
/** Every name the program can read as a compile-time scalar on `chain`: the chain's token symbols,
|
|
84
|
+
* then its chain-scoped values when a scope supplies them, then the caller's own defines, with
|
|
85
|
+
* the caller winning — the same precedence the compiler applies. */
|
|
86
|
+
function compileTimeValues(chain, options, scope) {
|
|
40
87
|
const values = new Map();
|
|
41
88
|
for (const [symbol, address] of resolveTokenMap(chain, options.tokens)) {
|
|
42
89
|
values.set(symbol, address);
|
|
43
90
|
}
|
|
44
|
-
for (const [name, value] of Object.entries(
|
|
91
|
+
for (const [name, value] of Object.entries({
|
|
92
|
+
...scope.chainDefines?.(chain),
|
|
93
|
+
...options.defines,
|
|
94
|
+
})) {
|
|
45
95
|
if (typeof value === "bigint")
|
|
46
96
|
values.set(name, value);
|
|
47
97
|
else if (typeof value === "number")
|
|
@@ -55,16 +105,17 @@ function compileTimeValues(chain, options) {
|
|
|
55
105
|
* Compiles a closure body as a program for its own destination chain, and wraps it in the `cook`
|
|
56
106
|
* the child's route will call.
|
|
57
107
|
*
|
|
58
|
-
* RE-ENTERS
|
|
108
|
+
* RE-ENTERS the route compile, which is what makes this general rather than a special case: the
|
|
59
109
|
* child gets that chain's token and protocol rewrites, and the intent lowering runs again inside
|
|
60
|
-
* it, so an intent opened within an intent is lowered by the same code at every depth.
|
|
110
|
+
* it, so an intent opened within an intent is lowered by the same code at every depth. It is handed
|
|
111
|
+
* the options and scope `levelOn` gives its chain, so its chain-scoped names are its own chain's.
|
|
61
112
|
*
|
|
62
113
|
* Captured values arrive as compact-v1 entry arguments at a DECLARED width. Minimal encoding would
|
|
63
114
|
* move the payload's length with the values, leaving nothing at a fixed offset to splice; a
|
|
64
115
|
* declared width keeps exactly one encoding per value and a constant length, which is the property
|
|
65
116
|
* `compact-arguments.ts`'s `scalarWidth` exists for.
|
|
66
117
|
*/
|
|
67
|
-
function compileIntentChild(destination, childSource, captures, destinationPortal, options) {
|
|
118
|
+
function compileIntentChild(destination, childSource, captures, destinationPortal, options, scope) {
|
|
68
119
|
const intents = options.intents ?? {};
|
|
69
120
|
// DERIVED, not asked for. A Pot is CREATE2 from the Kitchen over its owner and a salt; the owner a
|
|
70
121
|
// route call must cook as is the Executor of the Portal this child's route RECORDS, itself that
|
|
@@ -79,7 +130,7 @@ function compileIntentChild(destination, childSource, captures, destinationPorta
|
|
|
79
130
|
`executes. Read it before building with \`destinationExecutionFee()\` from ` +
|
|
80
131
|
`\`@eco-incorp/sauce\`, or \`Kitchen.executionFee()\` at ${v12KitchenAddress()}.`);
|
|
81
132
|
}
|
|
82
|
-
const compiled =
|
|
133
|
+
const compiled = compileScopedRoute(destination, childSource, { pot, engine, value: intents.executionFee }, { ...options, compactArgs: captures.length > 0 }, scope);
|
|
83
134
|
let program = bytesToHex(compiled.compiled.bytecode[0]);
|
|
84
135
|
const captureSentinels = [];
|
|
85
136
|
if (captures.length > 0) {
|
|
@@ -111,11 +162,92 @@ function defaultTargetFor(kind) {
|
|
|
111
162
|
return kind === "svm" ? "svm" : "v12";
|
|
112
163
|
}
|
|
113
164
|
/**
|
|
114
|
-
* Compiles `sauce`
|
|
115
|
-
* {@link wrapSauceBody}) for `destination`'s `ChainKind`, and slots the result into exactly one
|
|
165
|
+
* Compiles `sauce` for `destination`'s `ChainKind`, and slots the result into exactly one
|
|
116
166
|
* `CallInput` via the existing `buildSauceEvmCall`/`buildSauceSvmCall` fork — never a new encoder.
|
|
167
|
+
*
|
|
168
|
+
* `sauce` is a SauceScript file: a module declaring `function main`, or a script whose top-level
|
|
169
|
+
* statements run as the entry. It reaches the compiler as written, apart from the SDK's rewrites.
|
|
170
|
+
* A value-returning or early-exiting program declares `main`, since a top-level `return` is not
|
|
171
|
+
* SauceScript.
|
|
117
172
|
*/
|
|
118
173
|
export function compileSauceRoute(destination, sauce, execution, options = {}) {
|
|
174
|
+
return compileScopedRoute(destination, sauce, execution, options, {});
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* {@link compileSauceRoute} with a {@link RouteScope} — `openRoute`'s entry, and every nested
|
|
178
|
+
* intent's. Not exported from the package.
|
|
179
|
+
*/
|
|
180
|
+
export function compileScopedRoute(destination, sauce, execution, options, scope) {
|
|
181
|
+
const { chain, compiled, source } = compileForChain(destination, sauce, options, scope);
|
|
182
|
+
const bytecodeHex = bytesToHex(compiled.bytecode[0]);
|
|
183
|
+
if (chain.kind === "svm") {
|
|
184
|
+
const svmExecution = execution;
|
|
185
|
+
if (svmExecution.code === undefined) {
|
|
186
|
+
throw new Error("compileSauceRoute: an svm route requires execution.code — a finalized code account this " +
|
|
187
|
+
"module did NOT stage. Stage it through the kitchen (create/grow/write/finalize) and pass " +
|
|
188
|
+
"the CODE account; see kitchen.ts. It must hold exactly the bytecode this call returns in " +
|
|
189
|
+
"`compiled.bytecode[0]`.");
|
|
190
|
+
}
|
|
191
|
+
// Passed through UNPINNED, and no route call can be otherwise: the released engine's
|
|
192
|
+
// `execute_from_account` has no payload to carry a pin. The kitchen's `cook_from_account` does
|
|
193
|
+
// enforce one, but the STAGING caller issues that — a different transaction, by the party that
|
|
194
|
+
// already controlled the bytes — so it is not a guarantee this call's consumer inherits.
|
|
195
|
+
const call = buildSauceSvmCall(svmExecution);
|
|
196
|
+
return { calls: [call], compiled, source };
|
|
197
|
+
}
|
|
198
|
+
const evmExecution = execution;
|
|
199
|
+
const call = buildSauceEvmCall({
|
|
200
|
+
pot: evmExecution.pot,
|
|
201
|
+
engine: evmExecution.engine,
|
|
202
|
+
program: bytecodeHex,
|
|
203
|
+
value: evmExecution.value,
|
|
204
|
+
});
|
|
205
|
+
return { calls: [call], compiled, source };
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Compiles a standalone program for `chain`: a program that runs directly on a Pot, rather than
|
|
209
|
+
* the destination half of an intent.
|
|
210
|
+
*
|
|
211
|
+
* It gets everything `openRoute` gives a route body except the intent around it: the chain's
|
|
212
|
+
* ambient bundle (`chainId`, protocol addresses and token symbols as compile-time values scoped to
|
|
213
|
+
* this chain, and the `@sauce/token` functions with no import), the token and protocol syntax, and
|
|
214
|
+
* intents the program itself opens (`Arbitrum(() => { ... }).reward({ ... })`, which take their deadline and
|
|
215
|
+
* creator from `options.intents`). So one source compiles, unchanged, for any chain whose names it
|
|
216
|
+
* uses. `main` may declare typed runtime parameters; `entryParams` reports them and
|
|
217
|
+
* `encodeEntryArguments` encodes values for them.
|
|
218
|
+
*/
|
|
219
|
+
export function compileSauceProgram(chain, sauce, options = {}) {
|
|
220
|
+
const resolved = requireChain(chain);
|
|
221
|
+
// The bundle `openRoute` compiles a route body with, in the same two halves. The ambient MODULES
|
|
222
|
+
// join the caller's. The chain-scoped NAMES travel as a scope for this program's chain, never in
|
|
223
|
+
// `defines`, so an intent the program opens on another chain gets that chain's own (`levelOn`),
|
|
224
|
+
// and `defines` stays exactly what the caller wrote.
|
|
225
|
+
const ambient = Array.from(new Set([...chainAmbient(resolved), ...(options.ambient ?? [])]));
|
|
226
|
+
const scope = {
|
|
227
|
+
chainDefines: (on) => definesOf(on, options.tokens),
|
|
228
|
+
};
|
|
229
|
+
const program = compileForChain(resolved, sauce, { ...options, ambient: ambient.length > 0 ? ambient : options.ambient }, scope);
|
|
230
|
+
const entryParams = mainParams(program.source).filter((param) => resolved.kind !== "svm" || !/^Account\b/.test(param.type));
|
|
231
|
+
return {
|
|
232
|
+
chain: resolved,
|
|
233
|
+
bytecode: program.compiled.bytecode[0],
|
|
234
|
+
entryEncoding: program.entryEncoding,
|
|
235
|
+
...(program.compiled.entrySchema === undefined
|
|
236
|
+
? {}
|
|
237
|
+
: { entrySchema: program.compiled.entrySchema }),
|
|
238
|
+
entryParams,
|
|
239
|
+
...(program.manifest === undefined ? {} : { manifest: program.manifest }),
|
|
240
|
+
intents: program.intents,
|
|
241
|
+
source: program.source,
|
|
242
|
+
};
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* The compile half of {@link compileSauceRoute} and {@link compileSauceProgram}: every rewrite and
|
|
246
|
+
* the compile, for `destination`, with no execution — no Pot, engine or staged code account,
|
|
247
|
+
* because the bytecode depends on none of them — and none of the chain's ambient bundle beyond what
|
|
248
|
+
* `scope` supplies, which `compileSauceRoute` deliberately leaves to its caller.
|
|
249
|
+
*/
|
|
250
|
+
function compileForChain(destination, sauce, options, scope) {
|
|
119
251
|
const chain = requireChain(destination);
|
|
120
252
|
const target = options.target ?? defaultTargetFor(chain.kind);
|
|
121
253
|
if (chain.kind === "svm" && target !== "svm") {
|
|
@@ -125,33 +257,55 @@ export function compileSauceRoute(destination, sauce, execution, options = {}) {
|
|
|
125
257
|
throw new Error(`compileSauceRoute: destination '${chain.slug}' is evm but options.target is 'svm'`);
|
|
126
258
|
}
|
|
127
259
|
// The registry-resolved token map (registry defaults + options.tokens overrides, per-key -- see
|
|
128
|
-
// token-registry.ts#resolveTokenMap). Computed unconditionally:
|
|
129
|
-
//
|
|
130
|
-
//
|
|
131
|
-
// "only options.tokens, if any" -- preserving the existing svm-throws-on-any-rewrite behavior.
|
|
260
|
+
// token-registry.ts#resolveTokenMap). Computed unconditionally: the registry may supply symbols
|
|
261
|
+
// with no caller options.tokens at all -- an evm chain's token addresses, an svm chain's mint keys.
|
|
262
|
+
// On svm they are values only: the token syntax below still throws there, by name.
|
|
132
263
|
const tokenMap = resolveTokenMap(chain, options.tokens);
|
|
133
|
-
|
|
134
|
-
//
|
|
135
|
-
|
|
136
|
-
//
|
|
137
|
-
//
|
|
264
|
+
// The source is the program, as written: a module with a `main`, or a script whose top-level
|
|
265
|
+
// statements are the entry. The compiler tells the two apart; nothing here has to.
|
|
266
|
+
let source = sauce;
|
|
267
|
+
// `available(...)` FIRST: it removes the branches that name a contract or token this chain lacks,
|
|
268
|
+
// before any other pass resolves a name in them (see available.ts). A closure body is left for its
|
|
269
|
+
// own chain's compile.
|
|
270
|
+
source = rewriteAvailability(source, chain, tokenMap).source;
|
|
271
|
+
// The intent sugar runs next, on the source as written but for decided `available(...)`
|
|
272
|
+
// branches. It reads `USDC` and `RECIPIENT` as compile-time values itself, so a token rewrite
|
|
273
|
+
// that had already turned `USDC.transfer(...)` into `__sauce_transfer(USDC, ...)` would leave it
|
|
274
|
+
// nothing it recognises. What it leaves behind is ordinary `evm.call` statements, which every
|
|
275
|
+
// later pass is free to walk over.
|
|
138
276
|
const sugar = rewriteIntentSugar(source, {
|
|
139
277
|
source: chain,
|
|
140
278
|
chains: chainAccessorNames(),
|
|
141
|
-
|
|
279
|
+
// This chain's values for this chain — the program's own names and the reward it funds — and
|
|
280
|
+
// each other chain's own for a body there: see `levelOn`.
|
|
281
|
+
definesFor: (destination) => {
|
|
282
|
+
const level = levelOn(chain, destination, options, scope);
|
|
283
|
+
return compileTimeValues(destination, level.options, level.scope);
|
|
284
|
+
},
|
|
142
285
|
portalOf: (destination) => ecoRoutesPortal(destination, options.intents),
|
|
143
286
|
proverFor: (from, to) => ecoRoutesProver(from, to, options.intents),
|
|
144
287
|
defaults: options.intents ?? {},
|
|
145
|
-
compileChild: (destination, childSource, captures, destinationPortal) =>
|
|
288
|
+
compileChild: (destination, childSource, captures, destinationPortal) => {
|
|
289
|
+
const level = levelOn(chain, destination, options, scope);
|
|
290
|
+
return compileIntentChild(destination, childSource, captures, destinationPortal, level.options, level.scope);
|
|
291
|
+
},
|
|
146
292
|
});
|
|
147
293
|
source = sugar.source;
|
|
148
294
|
let contracts = options.contracts;
|
|
149
295
|
// Seed the resolved token map into defines UNDERNEATH the caller's own options.defines -- closes
|
|
150
296
|
// a latent gap where a direct compileSauceRoute(..., { tokens }) call emitted a bare `USDC`
|
|
151
|
-
// token argument (the symbol, not a literal) with no `USDC` define at all.
|
|
152
|
-
// openRoute
|
|
153
|
-
//
|
|
154
|
-
const
|
|
297
|
+
// token argument (the symbol, not a literal) with no `USDC` define at all. Then THIS chain's
|
|
298
|
+
// scoped values, when `openRoute` supplied a scope (ambient.ts#chainDefines resolves the SAME
|
|
299
|
+
// registry, so the token symbols agree), and the caller's own defines over both.
|
|
300
|
+
const scoped = scope.chainDefines?.(chain);
|
|
301
|
+
// The chain's values are one frozen object for a chain's own map and scope (`baseDefines`), handed
|
|
302
|
+
// over as they are when the caller adds none, so the compile adapter converts them once.
|
|
303
|
+
const chainValues = tokenMap.size > 0 || scoped !== undefined ? baseDefines(tokenMap, scoped) : undefined;
|
|
304
|
+
const defines = chainValues === undefined
|
|
305
|
+
? options.defines
|
|
306
|
+
: options.defines === undefined || Object.keys(options.defines).length === 0
|
|
307
|
+
? chainValues
|
|
308
|
+
: { ...chainValues, ...options.defines };
|
|
155
309
|
// ORDER IS LOAD-BEARING: the token pass (member and balance syntax) runs BEFORE the protocol-accessor
|
|
156
310
|
// pass. The accessor pass's `self` sugar rewrites a bare `self` Identifier -> `ctx.self()`
|
|
157
311
|
// textually; if it ran first, `self.USDC` would become `ctx.self().USDC` and the balance
|
|
@@ -186,8 +340,10 @@ export function compileSauceRoute(destination, sauce, execution, options = {}) {
|
|
|
186
340
|
if (tokenRewrote) {
|
|
187
341
|
if (chain.kind === "svm") {
|
|
188
342
|
throw new Error(`compileSauceRoute: destination '${chain.slug}' is svm — the ERC20 token rewrite ` +
|
|
189
|
-
"(`Token(addr)` / `<Sym>.transfer(...)`) is EVM-only
|
|
190
|
-
"
|
|
343
|
+
"(`Token(addr)` / `<Sym>.transfer(...)` / `self.<Sym>`) is EVM-only. On svm a token " +
|
|
344
|
+
"symbol is the mint, a value for the @sauce/token functions with the accounts as " +
|
|
345
|
+
"Account parameters: `transfer(USDC, tokenProgram, source, dest, authority, amount)`, " +
|
|
346
|
+
"`balanceOf(USDC, account)`; or the SPL account-plan `Token` emitter (see token/api.ts).");
|
|
191
347
|
}
|
|
192
348
|
source = [...tokenImportLines({ writes, erc20 }), source].join("\n");
|
|
193
349
|
}
|
|
@@ -206,42 +362,36 @@ export function compileSauceRoute(destination, sauce, execution, options = {}) {
|
|
|
206
362
|
contracts = { ...contracts, ...rewrittenAccessors.contracts };
|
|
207
363
|
}
|
|
208
364
|
}
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
365
|
+
let rs;
|
|
366
|
+
try {
|
|
367
|
+
rs = compileWithRs({
|
|
368
|
+
source,
|
|
369
|
+
target,
|
|
370
|
+
resolve: options.resolve,
|
|
371
|
+
resolvePackage: options.resolvePackage,
|
|
372
|
+
defines,
|
|
373
|
+
...(chainValues === undefined ? {} : { baseDefines: chainValues }),
|
|
374
|
+
contracts,
|
|
375
|
+
ambient: options.ambient,
|
|
376
|
+
compactArgs: options.compactArgs,
|
|
377
|
+
});
|
|
378
|
+
}
|
|
379
|
+
catch (error) {
|
|
380
|
+
// A token or protocol name the chain does not have, reported as one rather than as the call
|
|
381
|
+
// the compiler could not lower. Asked only of a program the compiler refused.
|
|
382
|
+
throw (unknownGlobalError(source, chain, {
|
|
383
|
+
defines: Object.keys(defines ?? {}),
|
|
384
|
+
contracts: Object.keys(contracts ?? {}),
|
|
385
|
+
tokens: tokenMap.keys(),
|
|
386
|
+
}, error) ?? error);
|
|
387
|
+
}
|
|
388
|
+
const { manifest, entryEncoding, ...compiled } = rs;
|
|
219
389
|
if (compiled.bytecode.length === 0) {
|
|
220
390
|
throw new Error("compileSauceRoute: compile() produced zero bytecode segments");
|
|
221
391
|
}
|
|
222
|
-
const
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
throw new Error("compileSauceRoute: an svm route requires execution.code — a finalized code account this " +
|
|
227
|
-
"module did NOT stage. Stage it through the kitchen (create/grow/write/finalize) and pass " +
|
|
228
|
-
"the CODE account; see kitchen.ts. It must hold exactly the bytecode this call returns in " +
|
|
229
|
-
"`compiled.bytecode[0]`.");
|
|
230
|
-
}
|
|
231
|
-
// Passed through UNPINNED, and no route call can be otherwise: the released engine's
|
|
232
|
-
// `execute_from_account` has no payload to carry a pin. The kitchen's `cook_from_account` does
|
|
233
|
-
// enforce one, but the STAGING caller issues that — a different transaction, by the party that
|
|
234
|
-
// already controlled the bytes — so it is not a guarantee this call's consumer inherits.
|
|
235
|
-
const call = buildSauceSvmCall(svmExecution);
|
|
236
|
-
return { calls: [call], compiled, source };
|
|
237
|
-
}
|
|
238
|
-
const evmExecution = execution;
|
|
239
|
-
const call = buildSauceEvmCall({
|
|
240
|
-
pot: evmExecution.pot,
|
|
241
|
-
engine: evmExecution.engine,
|
|
242
|
-
program: bytecodeHex,
|
|
243
|
-
value: evmExecution.value,
|
|
244
|
-
});
|
|
245
|
-
return { calls: [call], compiled, source };
|
|
392
|
+
const { intents } = sugar;
|
|
393
|
+
return manifest === undefined
|
|
394
|
+
? { chain, compiled, source, entryEncoding, intents }
|
|
395
|
+
: { chain, compiled, source, entryEncoding, manifest, intents };
|
|
246
396
|
}
|
|
247
397
|
//# sourceMappingURL=sauce-route.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sauce-route.js","sourceRoot":"","sources":["../../src/routes/sauce-route.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sauce-route.js","sourceRoot":"","sources":["../../src/routes/sauce-route.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The names a SauceScript program compiled for one chain may use without declaring them — its
|
|
3
|
+
* token symbols, protocol namespaces, chain names, defines and ambient-module functions — listed
|
|
4
|
+
* from the same registries and resolvers the compile path reads, so a name listed here is one the
|
|
5
|
+
* compile accepts on that chain, and its address is the one the program gets.
|
|
6
|
+
*
|
|
7
|
+
* - **tokens**: `token-registry.ts`'s rows for the chain, the symbols `<Sym>.transfer(...)` and a
|
|
8
|
+
* bare `USDC` resolve. On Solana they are the cluster's mints: a bare `USDC` is the mint's 32-byte
|
|
9
|
+
* key, and the token syntax is EVM-only.
|
|
10
|
+
* - **protocols**: every `<Protocol>[.<Contract>]` reference the protocol-accessor rewrite resolves
|
|
11
|
+
* on the chain — through `resolveProtocolContract`, the rewrite's own resolver, not a copy of its
|
|
12
|
+
* rules — with each contract's address and vendored methods. A family alias (`Uniswap` for
|
|
13
|
+
* `UniswapV4`) lists the contracts it names unambiguously.
|
|
14
|
+
* - **chains**: the chain names a program opens an intent with (`Arbitrum(() => { … })`) or
|
|
15
|
+
* qualifies an accessor by (`Base.Uniswap.UniversalRouter`).
|
|
16
|
+
* - **defines**: `chainDefines(chain)`, verbatim — the scalars every program on the chain reads.
|
|
17
|
+
* - **modules**: `chainAmbient(chain)`'s modules and the functions each exports for the chain's
|
|
18
|
+
* target, read from the SDK's embedded copy of their source.
|
|
19
|
+
*
|
|
20
|
+
* `source-globals.generated.ts` declares the same names as TYPES, across every chain at once;
|
|
21
|
+
* this is the per-chain, runtime view. Reads nothing but in-memory registries, so it runs in a
|
|
22
|
+
* browser.
|
|
23
|
+
*/
|
|
24
|
+
import { type CanonicalChain, type ChainRef } from "../chains/canonical.js";
|
|
25
|
+
import type { StateMutability } from "../descriptors/types.js";
|
|
26
|
+
import type { StockToken } from "./token-registry.js";
|
|
27
|
+
export interface SourceToken {
|
|
28
|
+
readonly symbol: string;
|
|
29
|
+
/** The value the symbol is in a program: an EVM token's address, a Solana mint's 32-byte key. */
|
|
30
|
+
readonly address: `0x${string}`;
|
|
31
|
+
readonly decimals: number;
|
|
32
|
+
/** On Solana, the mint's base58 address. */
|
|
33
|
+
readonly mint?: string;
|
|
34
|
+
/** A tokenized stock's issuer, name and underlying ticker (`stock-tokens.ts`). */
|
|
35
|
+
readonly stock?: StockToken;
|
|
36
|
+
/** On Solana, the program that owns the mint, legacy SPL Token or Token-2022, in base58. */
|
|
37
|
+
readonly tokenProgram?: string;
|
|
38
|
+
}
|
|
39
|
+
export interface SourceMethod {
|
|
40
|
+
readonly name: string;
|
|
41
|
+
/** Canonical signature, e.g. `exactInputSingle((address,address,uint24,address,uint256,uint256,uint160))`. */
|
|
42
|
+
readonly signature: string;
|
|
43
|
+
/** The call as a program writes it, every parameter and struct field named:
|
|
44
|
+
* `exactInputSingle(params: { tokenIn: address, … }): (amountOut: uint256)`. */
|
|
45
|
+
readonly declaration: string;
|
|
46
|
+
readonly stateMutability: StateMutability;
|
|
47
|
+
}
|
|
48
|
+
export interface SourceContract {
|
|
49
|
+
readonly name: string;
|
|
50
|
+
readonly address: `0x${string}`;
|
|
51
|
+
/** The protocol slug the contract belongs to — another protocol's, under a family alias. */
|
|
52
|
+
readonly protocol: string;
|
|
53
|
+
/** True for the one contract a bare `<Protocol>.<method>(...)` calls. */
|
|
54
|
+
readonly default: boolean;
|
|
55
|
+
readonly methods: readonly SourceMethod[];
|
|
56
|
+
}
|
|
57
|
+
export interface SourceNamespace {
|
|
58
|
+
/** The name a program writes: `UniswapV4`, or a family alias such as `Uniswap`. */
|
|
59
|
+
readonly namespace: string;
|
|
60
|
+
readonly kind: "protocol" | "family";
|
|
61
|
+
/** The protocol slug (`uniswap-v4`); for a family, its members' slugs. */
|
|
62
|
+
readonly protocols: readonly string[];
|
|
63
|
+
/** The protocol's display name; for a family, its members' names joined. */
|
|
64
|
+
readonly name: string;
|
|
65
|
+
readonly contracts: readonly SourceContract[];
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* A contract the registry knows only by its ABI — an interface, with no fixed address — which a
|
|
69
|
+
* program binds to an address it gives: `Erc4626.Vault.at(vault).totalAssets()`.
|
|
70
|
+
*/
|
|
71
|
+
export interface SourceInterface {
|
|
72
|
+
/** The namespace a program writes: `Erc4626`. */
|
|
73
|
+
readonly namespace: string;
|
|
74
|
+
/** The contract: `Vault`. */
|
|
75
|
+
readonly name: string;
|
|
76
|
+
/** The protocol slug it belongs to. */
|
|
77
|
+
readonly protocol: string;
|
|
78
|
+
/** The protocol's display name. */
|
|
79
|
+
readonly protocolName: string;
|
|
80
|
+
readonly methods: readonly SourceMethod[];
|
|
81
|
+
}
|
|
82
|
+
export interface SourceChainName {
|
|
83
|
+
/** What a program writes: `Base`, `Arbitrum`. */
|
|
84
|
+
readonly key: string;
|
|
85
|
+
readonly slug: string;
|
|
86
|
+
readonly id: number;
|
|
87
|
+
readonly kind: CanonicalChain["kind"];
|
|
88
|
+
}
|
|
89
|
+
export interface SourceModule {
|
|
90
|
+
/** The import specifier, e.g. `@sauce/token`, though none is needed: it is ambient. */
|
|
91
|
+
readonly specifier: string;
|
|
92
|
+
/** Each exported function's signature as the module declares it for the chain's target. */
|
|
93
|
+
readonly functions: readonly string[];
|
|
94
|
+
}
|
|
95
|
+
export interface SourceGlobals {
|
|
96
|
+
readonly chain: SourceChainName;
|
|
97
|
+
readonly tokens: readonly SourceToken[];
|
|
98
|
+
readonly protocols: readonly SourceNamespace[];
|
|
99
|
+
/** The interfaces a program binds to an address of its own (EVM chains): the same on each. */
|
|
100
|
+
readonly interfaces: readonly SourceInterface[];
|
|
101
|
+
readonly chains: readonly SourceChainName[];
|
|
102
|
+
readonly defines: Readonly<Record<string, bigint | boolean | number>>;
|
|
103
|
+
readonly modules: readonly SourceModule[];
|
|
104
|
+
}
|
|
105
|
+
/** Every name a program compiled for `chain` may use without declaring it. */
|
|
106
|
+
export declare function sourceGlobals(chain: ChainRef): SourceGlobals;
|
|
107
|
+
//# sourceMappingURL=source-globals.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"source-globals.d.ts","sourceRoot":"","sources":["../../src/routes/source-globals.ts"],"names":[],"mappings":"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"}
|