@sherwoodagent/cli 0.22.8 → 0.25.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chat-JYAJMP4D.js → chat-52PWNH7Y.js} +7 -7
- package/dist/{chunk-4YIE7GHL.js → chunk-66VFSLPS.js} +2 -2
- package/dist/{chunk-VO6DCRWV.js → chunk-7PCI3WHQ.js} +4 -4
- package/dist/{chunk-LVPBJ7MI.js → chunk-GWIW6DDG.js} +2 -2
- package/dist/{chunk-4Y6Y4SVH.js → chunk-JEVBC7DV.js} +4 -4
- package/dist/{chunk-G7JQRLQE.js → chunk-QBNWBWD3.js} +5 -5
- package/dist/{chunk-B42ZCCZ7.js → chunk-RGOTBJIN.js} +28 -3
- package/dist/chunk-RGOTBJIN.js.map +1 -0
- package/dist/{chunk-ASJTFFZH.js → chunk-SBVHGUQJ.js} +3 -3
- package/dist/{chunk-Y7LS6DEF.js → chunk-VQIFAXUY.js} +5 -5
- package/dist/{chunk-JR5K5WVR.js → chunk-ZPLUJT4V.js} +169 -13
- package/dist/chunk-ZPLUJT4V.js.map +1 -0
- package/dist/{client-SCIY6SUP.js → client-CWQFYZ5Z.js} +4 -4
- package/dist/{config-BGS5MX4D.js → config-YXZKPSZB.js} +8 -2
- package/dist/{eas-X5UIEM6D.js → eas-YZIHYQAI.js} +6 -6
- package/dist/{governor-ZKRSAHG4.js → governor-YPDAOT3S.js} +6 -6
- package/dist/index.js +741 -74
- package/dist/index.js.map +1 -1
- package/dist/{network-UTSOP7EF.js → network-QEMP3DSP.js} +3 -3
- package/dist/price-SWNEGWO4.js +156 -0
- package/dist/price-SWNEGWO4.js.map +1 -0
- package/dist/{research-EWH43HFN.js → research-PH77VSE4.js} +9 -9
- package/dist/research-ZX7T2ZIJ.js +14 -0
- package/dist/{session-XZNKLK3I.js → session-NMA4RLKC.js} +12 -12
- package/dist/{trade-VKSXEHWW.js → trade-N2A74UPX.js} +16 -16
- package/dist/{xmtp-XKHXATPQ.js → xmtp-YNOGIZ4G.js} +6 -6
- package/package.json +1 -1
- package/dist/chunk-B42ZCCZ7.js.map +0 -1
- package/dist/chunk-JR5K5WVR.js.map +0 -1
- package/dist/research-W3M3VZBD.js +0 -14
- /package/dist/{chat-JYAJMP4D.js.map → chat-52PWNH7Y.js.map} +0 -0
- /package/dist/{chunk-4YIE7GHL.js.map → chunk-66VFSLPS.js.map} +0 -0
- /package/dist/{chunk-VO6DCRWV.js.map → chunk-7PCI3WHQ.js.map} +0 -0
- /package/dist/{chunk-LVPBJ7MI.js.map → chunk-GWIW6DDG.js.map} +0 -0
- /package/dist/{chunk-4Y6Y4SVH.js.map → chunk-JEVBC7DV.js.map} +0 -0
- /package/dist/{chunk-G7JQRLQE.js.map → chunk-QBNWBWD3.js.map} +0 -0
- /package/dist/{chunk-ASJTFFZH.js.map → chunk-SBVHGUQJ.js.map} +0 -0
- /package/dist/{chunk-Y7LS6DEF.js.map → chunk-VQIFAXUY.js.map} +0 -0
- /package/dist/{client-SCIY6SUP.js.map → client-CWQFYZ5Z.js.map} +0 -0
- /package/dist/{config-BGS5MX4D.js.map → config-YXZKPSZB.js.map} +0 -0
- /package/dist/{eas-X5UIEM6D.js.map → eas-YZIHYQAI.js.map} +0 -0
- /package/dist/{governor-ZKRSAHG4.js.map → governor-YPDAOT3S.js.map} +0 -0
- /package/dist/{network-UTSOP7EF.js.map → network-QEMP3DSP.js.map} +0 -0
- /package/dist/{research-EWH43HFN.js.map → research-PH77VSE4.js.map} +0 -0
- /package/dist/{research-W3M3VZBD.js.map → research-ZX7T2ZIJ.js.map} +0 -0
- /package/dist/{session-XZNKLK3I.js.map → session-NMA4RLKC.js.map} +0 -0
- /package/dist/{trade-VKSXEHWW.js.map → trade-N2A74UPX.js.map} +0 -0
- /package/dist/{xmtp-XKHXATPQ.js.map → xmtp-YNOGIZ4G.js.map} +0 -0
|
@@ -2,23 +2,23 @@ import {
|
|
|
2
2
|
getTextRecord,
|
|
3
3
|
resolveSyndicate,
|
|
4
4
|
setTextRecord
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-QBNWBWD3.js";
|
|
6
|
+
import "./chunk-ZPLUJT4V.js";
|
|
7
7
|
import {
|
|
8
8
|
formatContractError,
|
|
9
9
|
getAccount
|
|
10
|
-
} from "./chunk-
|
|
11
|
-
import "./chunk-
|
|
10
|
+
} from "./chunk-SBVHGUQJ.js";
|
|
11
|
+
import "./chunk-GWIW6DDG.js";
|
|
12
12
|
import {
|
|
13
13
|
cacheGroupId,
|
|
14
14
|
getCachedGroupId
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-RGOTBJIN.js";
|
|
16
16
|
|
|
17
17
|
// src/commands/chat.ts
|
|
18
18
|
import chalk from "chalk";
|
|
19
19
|
import ora from "ora";
|
|
20
20
|
async function loadXmtp() {
|
|
21
|
-
return import("./xmtp-
|
|
21
|
+
return import("./xmtp-YNOGIZ4G.js");
|
|
22
22
|
}
|
|
23
23
|
function formatTimestamp(date) {
|
|
24
24
|
return `${date.getHours().toString().padStart(2, "0")}:${date.getMinutes().toString().padStart(2, "0")}`;
|
|
@@ -378,4 +378,4 @@ function registerChatCommands(program) {
|
|
|
378
378
|
export {
|
|
379
379
|
registerChatCommands
|
|
380
380
|
};
|
|
381
|
-
//# sourceMappingURL=chat-
|
|
381
|
+
//# sourceMappingURL=chat-52PWNH7Y.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getAccount
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-SBVHGUQJ.js";
|
|
4
4
|
|
|
5
5
|
// src/providers/research/messari.ts
|
|
6
6
|
import { base, baseSepolia } from "viem/chains";
|
|
@@ -445,4 +445,4 @@ export {
|
|
|
445
445
|
NansenProvider,
|
|
446
446
|
getResearchProvider
|
|
447
447
|
};
|
|
448
|
-
//# sourceMappingURL=chunk-
|
|
448
|
+
//# sourceMappingURL=chunk-66VFSLPS.js.map
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SHERWOOD,
|
|
3
3
|
SYNDICATE_GOVERNOR_ABI
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-ZPLUJT4V.js";
|
|
5
5
|
import {
|
|
6
6
|
getAccount,
|
|
7
7
|
getPublicClient,
|
|
8
8
|
waitForReceipt,
|
|
9
9
|
writeContractWithRetry
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-SBVHGUQJ.js";
|
|
11
11
|
import {
|
|
12
12
|
getChain
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-GWIW6DDG.js";
|
|
14
14
|
|
|
15
15
|
// src/lib/governor.ts
|
|
16
16
|
import { parseEventLogs } from "viem";
|
|
@@ -427,4 +427,4 @@ export {
|
|
|
427
427
|
vetoProposal,
|
|
428
428
|
setProtocolFeeBps
|
|
429
429
|
};
|
|
430
|
-
//# sourceMappingURL=chunk-
|
|
430
|
+
//# sourceMappingURL=chunk-7PCI3WHQ.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getConfigRpcUrl
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-RGOTBJIN.js";
|
|
4
4
|
|
|
5
5
|
// src/lib/network.ts
|
|
6
6
|
import { defineChain } from "viem";
|
|
@@ -104,4 +104,4 @@ export {
|
|
|
104
104
|
getExplorerUrl,
|
|
105
105
|
isTestnet
|
|
106
106
|
};
|
|
107
|
-
//# sourceMappingURL=chunk-
|
|
107
|
+
//# sourceMappingURL=chunk-GWIW6DDG.js.map
|
|
@@ -2,18 +2,18 @@ import {
|
|
|
2
2
|
EAS_ABI,
|
|
3
3
|
EAS_CONTRACTS,
|
|
4
4
|
EAS_SCHEMAS
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-ZPLUJT4V.js";
|
|
6
6
|
import {
|
|
7
7
|
getAccount,
|
|
8
8
|
getPublicClient,
|
|
9
9
|
waitForReceipt,
|
|
10
10
|
writeContractWithRetry
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-SBVHGUQJ.js";
|
|
12
12
|
import {
|
|
13
13
|
getChain,
|
|
14
14
|
getChainConfig,
|
|
15
15
|
getNetwork
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-GWIW6DDG.js";
|
|
17
17
|
|
|
18
18
|
// src/lib/eas.ts
|
|
19
19
|
import { encodeAbiParameters, parseAbiParameters, decodeAbiParameters } from "viem";
|
|
@@ -409,4 +409,4 @@ export {
|
|
|
409
409
|
queryApprovals,
|
|
410
410
|
queryJoinRequests
|
|
411
411
|
};
|
|
412
|
-
//# sourceMappingURL=chunk-
|
|
412
|
+
//# sourceMappingURL=chunk-JEVBC7DV.js.map
|
|
@@ -6,20 +6,20 @@ import {
|
|
|
6
6
|
SYNDICATE_FACTORY_ABI,
|
|
7
7
|
SYNDICATE_VAULT_ABI,
|
|
8
8
|
TOKENS
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-ZPLUJT4V.js";
|
|
10
10
|
import {
|
|
11
11
|
getAccount,
|
|
12
12
|
getPublicClient,
|
|
13
13
|
getWalletClient,
|
|
14
14
|
waitForReceipt,
|
|
15
15
|
writeContractWithRetry
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-SBVHGUQJ.js";
|
|
17
17
|
import {
|
|
18
18
|
getChain
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-GWIW6DDG.js";
|
|
20
20
|
import {
|
|
21
21
|
getChainContracts
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-RGOTBJIN.js";
|
|
23
23
|
|
|
24
24
|
// src/lib/vault.ts
|
|
25
25
|
import { formatUnits, parseEther } from "viem";
|
|
@@ -433,4 +433,4 @@ export {
|
|
|
433
433
|
setTextRecord,
|
|
434
434
|
getTextRecord
|
|
435
435
|
};
|
|
436
|
-
//# sourceMappingURL=chunk-
|
|
436
|
+
//# sourceMappingURL=chunk-QBNWBWD3.js.map
|
|
@@ -6,7 +6,9 @@ var CONFIG_DIR = path.join(os.homedir(), ".sherwood");
|
|
|
6
6
|
var CONFIG_PATH = path.join(CONFIG_DIR, "config.json");
|
|
7
7
|
function loadConfig() {
|
|
8
8
|
if (fs.existsSync(CONFIG_PATH)) {
|
|
9
|
-
|
|
9
|
+
const config = JSON.parse(fs.readFileSync(CONFIG_PATH, "utf-8"));
|
|
10
|
+
if (!config.groupCache) config.groupCache = {};
|
|
11
|
+
return config;
|
|
10
12
|
}
|
|
11
13
|
return { groupCache: {} };
|
|
12
14
|
}
|
|
@@ -132,6 +134,26 @@ function getPrimarySyndicate(chainId) {
|
|
|
132
134
|
}
|
|
133
135
|
return void 0;
|
|
134
136
|
}
|
|
137
|
+
function swapRouteKey(asset, token) {
|
|
138
|
+
return `${asset.toLowerCase()}\u2192${token.toLowerCase()}`;
|
|
139
|
+
}
|
|
140
|
+
function getCachedSwapRoute(chainId, asset, token) {
|
|
141
|
+
const config = loadConfig();
|
|
142
|
+
return config.swapRoutes?.[String(chainId)]?.[swapRouteKey(asset, token)];
|
|
143
|
+
}
|
|
144
|
+
function cacheSwapRoute(chainId, asset, token, route) {
|
|
145
|
+
const config = loadConfig();
|
|
146
|
+
const cid = String(chainId);
|
|
147
|
+
if (!config.swapRoutes) config.swapRoutes = {};
|
|
148
|
+
if (!config.swapRoutes[cid]) config.swapRoutes[cid] = {};
|
|
149
|
+
config.swapRoutes[cid][swapRouteKey(asset, token)] = route;
|
|
150
|
+
saveConfig(config);
|
|
151
|
+
}
|
|
152
|
+
function clearSwapRoutes(chainId) {
|
|
153
|
+
const config = loadConfig();
|
|
154
|
+
delete config.swapRoutes?.[String(chainId)];
|
|
155
|
+
saveConfig(config);
|
|
156
|
+
}
|
|
135
157
|
|
|
136
158
|
export {
|
|
137
159
|
loadConfig,
|
|
@@ -155,6 +177,9 @@ export {
|
|
|
155
177
|
addSyndicate,
|
|
156
178
|
getSyndicates,
|
|
157
179
|
setPrimarySyndicate,
|
|
158
|
-
getPrimarySyndicate
|
|
180
|
+
getPrimarySyndicate,
|
|
181
|
+
getCachedSwapRoute,
|
|
182
|
+
cacheSwapRoute,
|
|
183
|
+
clearSwapRoutes
|
|
159
184
|
};
|
|
160
|
-
//# sourceMappingURL=chunk-
|
|
185
|
+
//# sourceMappingURL=chunk-RGOTBJIN.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/lib/config.ts"],"sourcesContent":["/**\n * Local config management — ~/.sherwood/config.json\n *\n * Stores group ID cache, per-chain contract addresses, and wallet config.\n */\n\nimport fs from \"node:fs\";\nimport os from \"node:os\";\nimport path from \"node:path\";\n\nconst CONFIG_DIR = path.join(os.homedir(), \".sherwood\");\nconst CONFIG_PATH = path.join(CONFIG_DIR, \"config.json\");\n\n/** Per-chain user-specific addresses (stored by chainId). */\nexport interface ChainContracts {\n vault?: string; // user's default vault address\n}\n\n/** A syndicate the agent belongs to (creator or member). */\nexport interface SyndicateMembership {\n subdomain: string;\n vault: string;\n role: \"creator\" | \"agent\";\n}\n\nexport interface SherwoodConfig {\n dbEncryptionKey?: string; // legacy — no longer used, XMTP CLI manages its own DB\n privateKey?: string; // wallet private key (0x-prefixed)\n xmtpInboxId?: string;\n groupCache: Record<string, string>; // subdomain → XMTP group ID\n veniceApiKey?: string; // Venice AI inference API key\n agentId?: number; // ERC-8004 identity token ID\n contracts?: Record<string, ChainContracts>; // chainId → user addresses\n syndicates?: Record<string, SyndicateMembership[]>; // chainId → syndicate memberships\n primarySyndicate?: Record<string, string>; // chainId → subdomain of the active syndicate\n rpc?: Record<string, string>; // network name → custom RPC URL\n notifyTo?: string; // destination for cron summaries (Telegram chat ID, phone, etc.)\n uniswapApiKey?: string; // Uniswap Trading API key (from developers.uniswap.org)\n positions?: unknown[]; // open trade positions (typed in positions.ts)\n closedPositions?: unknown[]; // historical closed positions\n _xmtpMigrated?: boolean; // one-time flag: revoked stale installations from ~/.xmtp/ era\n /** Cached swap routes per chain: chainId → { tokenPair → SwapRoute } */\n swapRoutes?: Record<string, Record<string, SwapRoute>>;\n}\n\n/** Persisted swap route detected by the CLI during portfolio strategy proposal. */\nexport interface SwapRoute {\n mode: \"direct\" | \"multi-hop\";\n feeTier: number; // direct pool fee tier\n hop?: { via: string; feeIn: number; feeOut: number }; // multi-hop details\n detectedAt: number; // unix timestamp\n}\n\nexport function loadConfig(): SherwoodConfig {\n if (fs.existsSync(CONFIG_PATH)) {\n const config = JSON.parse(fs.readFileSync(CONFIG_PATH, \"utf-8\"));\n if (!config.groupCache) config.groupCache = {};\n return config;\n }\n\n return { groupCache: {} };\n}\n\nexport function saveConfig(config: SherwoodConfig): void {\n fs.mkdirSync(CONFIG_DIR, { recursive: true, mode: 0o700 });\n fs.writeFileSync(CONFIG_PATH, JSON.stringify(config, null, 2), { mode: 0o600 });\n}\n\nexport function cacheGroupId(subdomain: string, groupId: string): void {\n const config = loadConfig();\n config.groupCache[subdomain] = groupId;\n saveConfig(config);\n}\n\nexport function getCachedGroupId(subdomain: string): string | undefined {\n const config = loadConfig();\n return config.groupCache[subdomain];\n}\n\nexport function setVeniceApiKey(apiKey: string): void {\n const config = loadConfig();\n config.veniceApiKey = apiKey;\n saveConfig(config);\n}\n\nexport function getVeniceApiKey(): string | undefined {\n return loadConfig().veniceApiKey ?? process.env.VENICE_API_KEY;\n}\n\nexport function setAgentId(agentId: number): void {\n const config = loadConfig();\n config.agentId = agentId;\n saveConfig(config);\n}\n\nexport function getAgentId(): number | undefined {\n return loadConfig().agentId;\n}\n\nexport function setPrivateKey(key: string): void {\n const config = loadConfig();\n config.privateKey = key.startsWith(\"0x\") ? key : `0x${key}`;\n saveConfig(config);\n}\n\nexport function getPrivateKey(): string | undefined {\n return loadConfig().privateKey;\n}\n\n// ── Uniswap Trading API Key ──\n\nexport function setUniswapApiKey(apiKey: string): void {\n const config = loadConfig();\n config.uniswapApiKey = apiKey;\n saveConfig(config);\n}\n\nexport function getUniswapApiKey(): string | undefined {\n return loadConfig().uniswapApiKey ?? process.env.UNISWAP_API_KEY;\n}\n\n// ── Per-network RPC URLs ──\n\nexport function getConfigRpcUrl(network: string): string | undefined {\n return loadConfig().rpc?.[network];\n}\n\nexport function setConfigRpcUrl(network: string, url: string): void {\n const config = loadConfig();\n if (!config.rpc) config.rpc = {};\n config.rpc[network] = url;\n saveConfig(config);\n}\n\n// ── Per-chain contract addresses ──\n\nexport function getChainContracts(chainId: number): ChainContracts {\n const config = loadConfig();\n return config.contracts?.[String(chainId)] ?? {};\n}\n\nexport function getNotifyTo(): string | undefined {\n return loadConfig().notifyTo;\n}\n\nexport function setNotifyTo(id: string): void {\n const config = loadConfig();\n config.notifyTo = id;\n saveConfig(config);\n}\n\nexport function setChainContract(\n chainId: number,\n key: keyof ChainContracts,\n value: string,\n): void {\n const config = loadConfig();\n if (!config.contracts) config.contracts = {};\n const cid = String(chainId);\n if (!config.contracts[cid]) config.contracts[cid] = {};\n config.contracts[cid][key] = value;\n saveConfig(config);\n}\n\n// ── Syndicate Membership ──\n\n/**\n * Add (or update) a syndicate membership. Deduplicates by subdomain.\n * Automatically sets it as primary if it's the first syndicate on this chain.\n */\nexport function addSyndicate(\n chainId: number,\n membership: SyndicateMembership,\n): void {\n const config = loadConfig();\n const cid = String(chainId);\n if (!config.syndicates) config.syndicates = {};\n if (!config.syndicates[cid]) config.syndicates[cid] = [];\n\n // Upsert — replace existing entry with same subdomain\n const idx = config.syndicates[cid].findIndex(\n (s) => s.subdomain === membership.subdomain,\n );\n if (idx >= 0) {\n config.syndicates[cid][idx] = membership;\n } else {\n config.syndicates[cid].push(membership);\n }\n\n // Auto-set as primary if it's the first syndicate (or no primary set)\n if (!config.primarySyndicate) config.primarySyndicate = {};\n if (!config.primarySyndicate[cid]) {\n config.primarySyndicate[cid] = membership.subdomain;\n }\n\n saveConfig(config);\n}\n\n/** Get all syndicate memberships for a chain. */\nexport function getSyndicates(chainId: number): SyndicateMembership[] {\n const config = loadConfig();\n return config.syndicates?.[String(chainId)] ?? [];\n}\n\n/** Set which syndicate is the active/primary one for CLI commands. */\nexport function setPrimarySyndicate(\n chainId: number,\n subdomain: string,\n): void {\n const config = loadConfig();\n if (!config.primarySyndicate) config.primarySyndicate = {};\n config.primarySyndicate[String(chainId)] = subdomain;\n saveConfig(config);\n}\n\n/**\n * Get the primary syndicate for this chain.\n * Falls back to ChainContracts.vault for backwards compat with older configs.\n */\nexport function getPrimarySyndicate(\n chainId: number,\n): SyndicateMembership | undefined {\n const config = loadConfig();\n const cid = String(chainId);\n\n // Check new syndicates store first\n const primarySubdomain = config.primarySyndicate?.[cid];\n if (primarySubdomain && config.syndicates?.[cid]) {\n const found = config.syndicates[cid].find(\n (s) => s.subdomain === primarySubdomain,\n );\n if (found) return found;\n }\n\n // Backwards compat: if syndicates list has entries but no primary, use the first one\n if (config.syndicates?.[cid]?.length) {\n return config.syndicates[cid][0];\n }\n\n // Legacy fallback: config only has a vault address, no subdomain\n const vault = config.contracts?.[cid]?.vault;\n if (vault) {\n return { subdomain: \"\", vault, role: \"creator\" };\n }\n\n return undefined;\n}\n\n// ── Swap Route Cache ──\n\nfunction swapRouteKey(asset: string, token: string): string {\n return `${asset.toLowerCase()}→${token.toLowerCase()}`;\n}\n\n/** Get a cached swap route for a token pair on a chain. */\nexport function getCachedSwapRoute(chainId: number, asset: string, token: string): SwapRoute | undefined {\n const config = loadConfig();\n return config.swapRoutes?.[String(chainId)]?.[swapRouteKey(asset, token)];\n}\n\n/** Save a detected swap route to the config cache. */\nexport function cacheSwapRoute(chainId: number, asset: string, token: string, route: SwapRoute): void {\n const config = loadConfig();\n const cid = String(chainId);\n if (!config.swapRoutes) config.swapRoutes = {};\n if (!config.swapRoutes[cid]) config.swapRoutes[cid] = {};\n config.swapRoutes[cid][swapRouteKey(asset, token)] = route;\n saveConfig(config);\n}\n\n/** Clear all cached swap routes for a chain (e.g. after pool migration). */\nexport function clearSwapRoutes(chainId: number): void {\n const config = loadConfig();\n delete config.swapRoutes?.[String(chainId)];\n saveConfig(config);\n}\n"],"mappings":";AAMA,OAAO,QAAQ;AACf,OAAO,QAAQ;AACf,OAAO,UAAU;AAEjB,IAAM,aAAa,KAAK,KAAK,GAAG,QAAQ,GAAG,WAAW;AACtD,IAAM,cAAc,KAAK,KAAK,YAAY,aAAa;AA0ChD,SAAS,aAA6B;AAC3C,MAAI,GAAG,WAAW,WAAW,GAAG;AAC9B,UAAM,SAAS,KAAK,MAAM,GAAG,aAAa,aAAa,OAAO,CAAC;AAC/D,QAAI,CAAC,OAAO,WAAY,QAAO,aAAa,CAAC;AAC7C,WAAO;AAAA,EACT;AAEA,SAAO,EAAE,YAAY,CAAC,EAAE;AAC1B;AAEO,SAAS,WAAW,QAA8B;AACvD,KAAG,UAAU,YAAY,EAAE,WAAW,MAAM,MAAM,IAAM,CAAC;AACzD,KAAG,cAAc,aAAa,KAAK,UAAU,QAAQ,MAAM,CAAC,GAAG,EAAE,MAAM,IAAM,CAAC;AAChF;AAEO,SAAS,aAAa,WAAmB,SAAuB;AACrE,QAAM,SAAS,WAAW;AAC1B,SAAO,WAAW,SAAS,IAAI;AAC/B,aAAW,MAAM;AACnB;AAEO,SAAS,iBAAiB,WAAuC;AACtE,QAAM,SAAS,WAAW;AAC1B,SAAO,OAAO,WAAW,SAAS;AACpC;AAEO,SAAS,gBAAgB,QAAsB;AACpD,QAAM,SAAS,WAAW;AAC1B,SAAO,eAAe;AACtB,aAAW,MAAM;AACnB;AAEO,SAAS,kBAAsC;AACpD,SAAO,WAAW,EAAE,gBAAgB,QAAQ,IAAI;AAClD;AAEO,SAAS,WAAW,SAAuB;AAChD,QAAM,SAAS,WAAW;AAC1B,SAAO,UAAU;AACjB,aAAW,MAAM;AACnB;AAEO,SAAS,aAAiC;AAC/C,SAAO,WAAW,EAAE;AACtB;AAEO,SAAS,cAAc,KAAmB;AAC/C,QAAM,SAAS,WAAW;AAC1B,SAAO,aAAa,IAAI,WAAW,IAAI,IAAI,MAAM,KAAK,GAAG;AACzD,aAAW,MAAM;AACnB;AAEO,SAAS,gBAAoC;AAClD,SAAO,WAAW,EAAE;AACtB;AAIO,SAAS,iBAAiB,QAAsB;AACrD,QAAM,SAAS,WAAW;AAC1B,SAAO,gBAAgB;AACvB,aAAW,MAAM;AACnB;AAEO,SAAS,mBAAuC;AACrD,SAAO,WAAW,EAAE,iBAAiB,QAAQ,IAAI;AACnD;AAIO,SAAS,gBAAgB,SAAqC;AACnE,SAAO,WAAW,EAAE,MAAM,OAAO;AACnC;AAEO,SAAS,gBAAgB,SAAiB,KAAmB;AAClE,QAAM,SAAS,WAAW;AAC1B,MAAI,CAAC,OAAO,IAAK,QAAO,MAAM,CAAC;AAC/B,SAAO,IAAI,OAAO,IAAI;AACtB,aAAW,MAAM;AACnB;AAIO,SAAS,kBAAkB,SAAiC;AACjE,QAAM,SAAS,WAAW;AAC1B,SAAO,OAAO,YAAY,OAAO,OAAO,CAAC,KAAK,CAAC;AACjD;AAEO,SAAS,cAAkC;AAChD,SAAO,WAAW,EAAE;AACtB;AAEO,SAAS,YAAY,IAAkB;AAC5C,QAAM,SAAS,WAAW;AAC1B,SAAO,WAAW;AAClB,aAAW,MAAM;AACnB;AAEO,SAAS,iBACd,SACA,KACA,OACM;AACN,QAAM,SAAS,WAAW;AAC1B,MAAI,CAAC,OAAO,UAAW,QAAO,YAAY,CAAC;AAC3C,QAAM,MAAM,OAAO,OAAO;AAC1B,MAAI,CAAC,OAAO,UAAU,GAAG,EAAG,QAAO,UAAU,GAAG,IAAI,CAAC;AACrD,SAAO,UAAU,GAAG,EAAE,GAAG,IAAI;AAC7B,aAAW,MAAM;AACnB;AAQO,SAAS,aACd,SACA,YACM;AACN,QAAM,SAAS,WAAW;AAC1B,QAAM,MAAM,OAAO,OAAO;AAC1B,MAAI,CAAC,OAAO,WAAY,QAAO,aAAa,CAAC;AAC7C,MAAI,CAAC,OAAO,WAAW,GAAG,EAAG,QAAO,WAAW,GAAG,IAAI,CAAC;AAGvD,QAAM,MAAM,OAAO,WAAW,GAAG,EAAE;AAAA,IACjC,CAAC,MAAM,EAAE,cAAc,WAAW;AAAA,EACpC;AACA,MAAI,OAAO,GAAG;AACZ,WAAO,WAAW,GAAG,EAAE,GAAG,IAAI;AAAA,EAChC,OAAO;AACL,WAAO,WAAW,GAAG,EAAE,KAAK,UAAU;AAAA,EACxC;AAGA,MAAI,CAAC,OAAO,iBAAkB,QAAO,mBAAmB,CAAC;AACzD,MAAI,CAAC,OAAO,iBAAiB,GAAG,GAAG;AACjC,WAAO,iBAAiB,GAAG,IAAI,WAAW;AAAA,EAC5C;AAEA,aAAW,MAAM;AACnB;AAGO,SAAS,cAAc,SAAwC;AACpE,QAAM,SAAS,WAAW;AAC1B,SAAO,OAAO,aAAa,OAAO,OAAO,CAAC,KAAK,CAAC;AAClD;AAGO,SAAS,oBACd,SACA,WACM;AACN,QAAM,SAAS,WAAW;AAC1B,MAAI,CAAC,OAAO,iBAAkB,QAAO,mBAAmB,CAAC;AACzD,SAAO,iBAAiB,OAAO,OAAO,CAAC,IAAI;AAC3C,aAAW,MAAM;AACnB;AAMO,SAAS,oBACd,SACiC;AACjC,QAAM,SAAS,WAAW;AAC1B,QAAM,MAAM,OAAO,OAAO;AAG1B,QAAM,mBAAmB,OAAO,mBAAmB,GAAG;AACtD,MAAI,oBAAoB,OAAO,aAAa,GAAG,GAAG;AAChD,UAAM,QAAQ,OAAO,WAAW,GAAG,EAAE;AAAA,MACnC,CAAC,MAAM,EAAE,cAAc;AAAA,IACzB;AACA,QAAI,MAAO,QAAO;AAAA,EACpB;AAGA,MAAI,OAAO,aAAa,GAAG,GAAG,QAAQ;AACpC,WAAO,OAAO,WAAW,GAAG,EAAE,CAAC;AAAA,EACjC;AAGA,QAAM,QAAQ,OAAO,YAAY,GAAG,GAAG;AACvC,MAAI,OAAO;AACT,WAAO,EAAE,WAAW,IAAI,OAAO,MAAM,UAAU;AAAA,EACjD;AAEA,SAAO;AACT;AAIA,SAAS,aAAa,OAAe,OAAuB;AAC1D,SAAO,GAAG,MAAM,YAAY,CAAC,SAAI,MAAM,YAAY,CAAC;AACtD;AAGO,SAAS,mBAAmB,SAAiB,OAAe,OAAsC;AACvG,QAAM,SAAS,WAAW;AAC1B,SAAO,OAAO,aAAa,OAAO,OAAO,CAAC,IAAI,aAAa,OAAO,KAAK,CAAC;AAC1E;AAGO,SAAS,eAAe,SAAiB,OAAe,OAAe,OAAwB;AACpG,QAAM,SAAS,WAAW;AAC1B,QAAM,MAAM,OAAO,OAAO;AAC1B,MAAI,CAAC,OAAO,WAAY,QAAO,aAAa,CAAC;AAC7C,MAAI,CAAC,OAAO,WAAW,GAAG,EAAG,QAAO,WAAW,GAAG,IAAI,CAAC;AACvD,SAAO,WAAW,GAAG,EAAE,aAAa,OAAO,KAAK,CAAC,IAAI;AACrD,aAAW,MAAM;AACnB;AAGO,SAAS,gBAAgB,SAAuB;AACrD,QAAM,SAAS,WAAW;AAC1B,SAAO,OAAO,aAAa,OAAO,OAAO,CAAC;AAC1C,aAAW,MAAM;AACnB;","names":[]}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getChain,
|
|
3
3
|
getRpcUrl
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-GWIW6DDG.js";
|
|
5
5
|
import {
|
|
6
6
|
loadConfig
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-RGOTBJIN.js";
|
|
8
8
|
|
|
9
9
|
// src/lib/client.ts
|
|
10
10
|
import { createPublicClient, createWalletClient, http } from "viem";
|
|
@@ -482,4 +482,4 @@ export {
|
|
|
482
482
|
writeContractWithRetry,
|
|
483
483
|
waitForReceipt
|
|
484
484
|
};
|
|
485
|
-
//# sourceMappingURL=chunk-
|
|
485
|
+
//# sourceMappingURL=chunk-SBVHGUQJ.js.map
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import {
|
|
2
2
|
UNISWAP,
|
|
3
3
|
UNISWAP_QUOTER_V2_ABI
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-ZPLUJT4V.js";
|
|
5
5
|
import {
|
|
6
6
|
getAccount,
|
|
7
7
|
getPublicClient,
|
|
8
8
|
sendTxWithRetry,
|
|
9
9
|
waitForReceipt
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-SBVHGUQJ.js";
|
|
11
11
|
import {
|
|
12
12
|
getChain
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-GWIW6DDG.js";
|
|
14
14
|
import {
|
|
15
15
|
getUniswapApiKey,
|
|
16
16
|
getVeniceApiKey,
|
|
17
17
|
setVeniceApiKey
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-RGOTBJIN.js";
|
|
19
19
|
|
|
20
20
|
// src/providers/uniswap.ts
|
|
21
21
|
import { isAddress } from "viem";
|
|
@@ -449,4 +449,4 @@ export {
|
|
|
449
449
|
encodeSwapPath,
|
|
450
450
|
getMultiHopQuote
|
|
451
451
|
};
|
|
452
|
-
//# sourceMappingURL=chunk-
|
|
452
|
+
//# sourceMappingURL=chunk-VQIFAXUY.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getNetwork
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-GWIW6DDG.js";
|
|
4
4
|
|
|
5
5
|
// src/lib/addresses.ts
|
|
6
6
|
var ZERO = "0x0000000000000000000000000000000000000000";
|
|
@@ -26,7 +26,8 @@ var BASE_MOONWELL = {
|
|
|
26
26
|
};
|
|
27
27
|
var BASE_UNISWAP = {
|
|
28
28
|
SWAP_ROUTER: "0x2626664c2603336E57B271c5C0b26F421741e481",
|
|
29
|
-
QUOTER_V2: "0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a"
|
|
29
|
+
QUOTER_V2: "0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a",
|
|
30
|
+
SWAP_ADAPTER: "0x121AaC2B96Ec365e457fcCc1C2ED5a6142064069"
|
|
30
31
|
};
|
|
31
32
|
var BASE_SEPOLIA_TOKENS = {
|
|
32
33
|
USDC: "0x036CbD53842c5426634e7929541eC2318f3dCF7e",
|
|
@@ -52,18 +53,23 @@ var BASE_SEPOLIA_MOONWELL = {
|
|
|
52
53
|
var BASE_SEPOLIA_UNISWAP = {
|
|
53
54
|
SWAP_ROUTER: "0x94cC0AaC535CCDB3C01d6787D6413C739ae12bc4",
|
|
54
55
|
// Uniswap V3 SwapRouter02
|
|
55
|
-
QUOTER_V2: "0xC5290058841028F1614F3A6F0F5816cAd0df5E27"
|
|
56
|
+
QUOTER_V2: "0xC5290058841028F1614F3A6F0F5816cAd0df5E27",
|
|
56
57
|
// Uniswap V3 QuoterV2
|
|
58
|
+
SWAP_ADAPTER: ZERO
|
|
57
59
|
};
|
|
58
60
|
var ROBINHOOD_TESTNET_TOKENS = {
|
|
59
61
|
USDC: ZERO,
|
|
60
|
-
// no Circle USDC on Robinhood L2
|
|
61
62
|
WETH: "0x7943e237c7F95DA44E0301572D358911207852Fa",
|
|
62
63
|
cbETH: ZERO,
|
|
63
64
|
wstETH: ZERO,
|
|
64
65
|
cbBTC: ZERO,
|
|
65
66
|
DAI: ZERO,
|
|
66
|
-
AERO: ZERO
|
|
67
|
+
AERO: ZERO,
|
|
68
|
+
TSLA: "0xC9f9c86933092BbbfFF3CCb4b105A4A94bf3Bd4E",
|
|
69
|
+
AMZN: "0x5884aD2f920c162CFBbACc88C9C51AA75eC09E02",
|
|
70
|
+
PLTR: "0x1FBE1a0e43594b3455993B5dE5Fd0A7A266298d0",
|
|
71
|
+
NFLX: "0x3b8262A63d25f0477c4DDE23F83cfe22Cb768C93",
|
|
72
|
+
AMD: "0x71178BAc73cBeb415514eB542a8995b82669778d"
|
|
67
73
|
};
|
|
68
74
|
var ROBINHOOD_TESTNET_MOONWELL = {
|
|
69
75
|
COMPTROLLER: ZERO,
|
|
@@ -77,7 +83,20 @@ var ROBINHOOD_TESTNET_MOONWELL = {
|
|
|
77
83
|
};
|
|
78
84
|
var ROBINHOOD_TESTNET_UNISWAP = {
|
|
79
85
|
SWAP_ROUTER: ZERO,
|
|
80
|
-
QUOTER_V2: ZERO
|
|
86
|
+
QUOTER_V2: ZERO,
|
|
87
|
+
SWAP_ADAPTER: ZERO
|
|
88
|
+
};
|
|
89
|
+
var BASE_SYNTHRA = { ROUTER: ZERO, QUOTER: ZERO, FACTORY: ZERO };
|
|
90
|
+
var BASE_SEPOLIA_SYNTHRA = { ROUTER: ZERO, QUOTER: ZERO, FACTORY: ZERO };
|
|
91
|
+
var ROBINHOOD_TESTNET_SYNTHRA = {
|
|
92
|
+
ROUTER: "0x3Ce954107b1A675826B33bF23060Dd655e3758fE",
|
|
93
|
+
QUOTER: "0x231606c321A99DE81e28fE48B07a93F1ba49e713",
|
|
94
|
+
FACTORY: "0x911b4000D3422F482F4062a913885f7b035382Df"
|
|
95
|
+
};
|
|
96
|
+
var BASE_CHAINLINK = { VERIFIER_PROXY: "0xDE1A28D87Afd0f546505B28AB50410A5c3a7387a" };
|
|
97
|
+
var BASE_SEPOLIA_CHAINLINK = { VERIFIER_PROXY: ZERO };
|
|
98
|
+
var ROBINHOOD_TESTNET_CHAINLINK = {
|
|
99
|
+
VERIFIER_PROXY: "0x72790f9eB82db492a7DDb6d2af22A270Dcc3Db64"
|
|
81
100
|
};
|
|
82
101
|
var BASE_ENS = {
|
|
83
102
|
L2_REGISTRAR: "0x866996c808E6244216a3d0df15464FCF5d495394",
|
|
@@ -112,8 +131,8 @@ var BASE_SEPOLIA_SHERWOOD = {
|
|
|
112
131
|
GOVERNOR: "0xE5ecf2B06E3f3e298B632C0cf6575f9d9422F55E"
|
|
113
132
|
};
|
|
114
133
|
var ROBINHOOD_TESTNET_SHERWOOD = {
|
|
115
|
-
FACTORY: "
|
|
116
|
-
GOVERNOR: "
|
|
134
|
+
FACTORY: "0x6d026e2f5Ff0C34A01690EC46Cb601B8fF391985",
|
|
135
|
+
GOVERNOR: "0xd882056ba6b0aEd8908c541884B327121E2f2C9C"
|
|
117
136
|
};
|
|
118
137
|
var BASE_VENICE = {
|
|
119
138
|
VVV: "0xacfe6019ed1a7dc6f7b508c02d1b04ec88cc21bf",
|
|
@@ -148,21 +167,24 @@ var BASE_STRATEGY_TEMPLATES = {
|
|
|
148
167
|
AERODROME_LP: "0x1c61c740702690B86b874ab929A6F04A4Ec56C1c",
|
|
149
168
|
VENICE_INFERENCE: "0xd882056ba6b0aEd8908c541884B327121E2f2C9C",
|
|
150
169
|
WSTETH_MOONWELL: "0x6d026e2f5Ff0C34A01690EC46Cb601B8fF391985",
|
|
151
|
-
MAMO_YIELD: "0x5c98808Ce5e51767ba2d969F75312eEFF0b14a6A"
|
|
170
|
+
MAMO_YIELD: "0x5c98808Ce5e51767ba2d969F75312eEFF0b14a6A",
|
|
171
|
+
PORTFOLIO: "0x7865eEA4063c22d0F55FdD412D345495c7b73f64"
|
|
152
172
|
};
|
|
153
173
|
var BASE_SEPOLIA_STRATEGY_TEMPLATES = {
|
|
154
174
|
MOONWELL_SUPPLY: ZERO,
|
|
155
175
|
AERODROME_LP: ZERO,
|
|
156
176
|
VENICE_INFERENCE: ZERO,
|
|
157
177
|
WSTETH_MOONWELL: ZERO,
|
|
158
|
-
MAMO_YIELD: ZERO
|
|
178
|
+
MAMO_YIELD: ZERO,
|
|
179
|
+
PORTFOLIO: ZERO
|
|
159
180
|
};
|
|
160
181
|
var ROBINHOOD_TESTNET_STRATEGY_TEMPLATES = {
|
|
161
182
|
MOONWELL_SUPPLY: ZERO,
|
|
162
183
|
AERODROME_LP: ZERO,
|
|
163
184
|
VENICE_INFERENCE: ZERO,
|
|
164
185
|
WSTETH_MOONWELL: ZERO,
|
|
165
|
-
MAMO_YIELD: ZERO
|
|
186
|
+
MAMO_YIELD: ZERO,
|
|
187
|
+
PORTFOLIO: "0xAe981882923E0C76A7F10E7cAa3782023c0abd9B"
|
|
166
188
|
};
|
|
167
189
|
var BASE_EAS = {
|
|
168
190
|
EAS: "0x4200000000000000000000000000000000000021",
|
|
@@ -245,6 +267,16 @@ var STRATEGY_TEMPLATE_REGISTRY = {
|
|
|
245
267
|
"base-sepolia": BASE_SEPOLIA_STRATEGY_TEMPLATES,
|
|
246
268
|
"robinhood-testnet": ROBINHOOD_TESTNET_STRATEGY_TEMPLATES
|
|
247
269
|
};
|
|
270
|
+
var SYNTHRA_REGISTRY = {
|
|
271
|
+
base: BASE_SYNTHRA,
|
|
272
|
+
"base-sepolia": BASE_SEPOLIA_SYNTHRA,
|
|
273
|
+
"robinhood-testnet": ROBINHOOD_TESTNET_SYNTHRA
|
|
274
|
+
};
|
|
275
|
+
var CHAINLINK_REGISTRY = {
|
|
276
|
+
base: BASE_CHAINLINK,
|
|
277
|
+
"base-sepolia": BASE_SEPOLIA_CHAINLINK,
|
|
278
|
+
"robinhood-testnet": ROBINHOOD_TESTNET_CHAINLINK
|
|
279
|
+
};
|
|
248
280
|
var EAS_CONTRACT_REGISTRY = {
|
|
249
281
|
base: BASE_EAS,
|
|
250
282
|
"base-sepolia": BASE_SEPOLIA_EAS,
|
|
@@ -288,6 +320,12 @@ function EAS_CONTRACTS() {
|
|
|
288
320
|
function EAS_SCHEMAS() {
|
|
289
321
|
return EAS_SCHEMA_REGISTRY[getNetwork()];
|
|
290
322
|
}
|
|
323
|
+
function SYNTHRA() {
|
|
324
|
+
return SYNTHRA_REGISTRY[getNetwork()];
|
|
325
|
+
}
|
|
326
|
+
function CHAINLINK() {
|
|
327
|
+
return CHAINLINK_REGISTRY[getNetwork()];
|
|
328
|
+
}
|
|
291
329
|
|
|
292
330
|
// src/lib/abis.ts
|
|
293
331
|
var SYNDICATE_VAULT_ABI = [
|
|
@@ -1477,6 +1515,121 @@ var BASE_STRATEGY_ABI = [
|
|
|
1477
1515
|
outputs: [{ name: "", type: "uint8" }]
|
|
1478
1516
|
}
|
|
1479
1517
|
];
|
|
1518
|
+
var PORTFOLIO_STRATEGY_ABI = [
|
|
1519
|
+
// Inherited from BaseStrategy
|
|
1520
|
+
...BASE_STRATEGY_ABI,
|
|
1521
|
+
// Rebalancing
|
|
1522
|
+
{
|
|
1523
|
+
name: "rebalance",
|
|
1524
|
+
type: "function",
|
|
1525
|
+
stateMutability: "nonpayable",
|
|
1526
|
+
inputs: [],
|
|
1527
|
+
outputs: []
|
|
1528
|
+
},
|
|
1529
|
+
{
|
|
1530
|
+
name: "rebalanceDelta",
|
|
1531
|
+
type: "function",
|
|
1532
|
+
stateMutability: "nonpayable",
|
|
1533
|
+
inputs: [{ name: "priceReports", type: "bytes[]" }],
|
|
1534
|
+
outputs: []
|
|
1535
|
+
},
|
|
1536
|
+
// View functions
|
|
1537
|
+
{
|
|
1538
|
+
name: "getAllocations",
|
|
1539
|
+
type: "function",
|
|
1540
|
+
stateMutability: "view",
|
|
1541
|
+
inputs: [],
|
|
1542
|
+
outputs: [
|
|
1543
|
+
{
|
|
1544
|
+
name: "",
|
|
1545
|
+
type: "tuple[]",
|
|
1546
|
+
components: [
|
|
1547
|
+
{ name: "token", type: "address" },
|
|
1548
|
+
{ name: "targetWeightBps", type: "uint256" },
|
|
1549
|
+
{ name: "tokenAmount", type: "uint256" },
|
|
1550
|
+
{ name: "investedAmount", type: "uint256" }
|
|
1551
|
+
]
|
|
1552
|
+
}
|
|
1553
|
+
]
|
|
1554
|
+
},
|
|
1555
|
+
{
|
|
1556
|
+
name: "allocationCount",
|
|
1557
|
+
type: "function",
|
|
1558
|
+
stateMutability: "view",
|
|
1559
|
+
inputs: [],
|
|
1560
|
+
outputs: [{ name: "", type: "uint256" }]
|
|
1561
|
+
},
|
|
1562
|
+
{
|
|
1563
|
+
name: "asset",
|
|
1564
|
+
type: "function",
|
|
1565
|
+
stateMutability: "view",
|
|
1566
|
+
inputs: [],
|
|
1567
|
+
outputs: [{ name: "", type: "address" }]
|
|
1568
|
+
},
|
|
1569
|
+
{
|
|
1570
|
+
name: "totalAmount",
|
|
1571
|
+
type: "function",
|
|
1572
|
+
stateMutability: "view",
|
|
1573
|
+
inputs: [],
|
|
1574
|
+
outputs: [{ name: "", type: "uint256" }]
|
|
1575
|
+
},
|
|
1576
|
+
{
|
|
1577
|
+
name: "maxSlippageBps",
|
|
1578
|
+
type: "function",
|
|
1579
|
+
stateMutability: "view",
|
|
1580
|
+
inputs: [],
|
|
1581
|
+
outputs: [{ name: "", type: "uint256" }]
|
|
1582
|
+
},
|
|
1583
|
+
{
|
|
1584
|
+
name: "swapAdapter",
|
|
1585
|
+
type: "function",
|
|
1586
|
+
stateMutability: "view",
|
|
1587
|
+
inputs: [],
|
|
1588
|
+
outputs: [{ name: "", type: "address" }]
|
|
1589
|
+
},
|
|
1590
|
+
{
|
|
1591
|
+
name: "getSwapExtraData",
|
|
1592
|
+
type: "function",
|
|
1593
|
+
stateMutability: "view",
|
|
1594
|
+
inputs: [],
|
|
1595
|
+
outputs: [{ name: "", type: "bytes[]" }]
|
|
1596
|
+
},
|
|
1597
|
+
// Events
|
|
1598
|
+
{
|
|
1599
|
+
name: "WeightsUpdated",
|
|
1600
|
+
type: "event",
|
|
1601
|
+
inputs: [
|
|
1602
|
+
{ name: "tokens", type: "address[]", indexed: false },
|
|
1603
|
+
{ name: "oldWeights", type: "uint256[]", indexed: false },
|
|
1604
|
+
{ name: "newWeights", type: "uint256[]", indexed: false }
|
|
1605
|
+
]
|
|
1606
|
+
},
|
|
1607
|
+
{
|
|
1608
|
+
name: "Rebalanced",
|
|
1609
|
+
type: "event",
|
|
1610
|
+
inputs: [
|
|
1611
|
+
{ name: "tokens", type: "address[]", indexed: false },
|
|
1612
|
+
{ name: "oldWeights", type: "uint256[]", indexed: false },
|
|
1613
|
+
{ name: "newWeights", type: "uint256[]", indexed: false },
|
|
1614
|
+
{ name: "oldBalances", type: "uint256[]", indexed: false },
|
|
1615
|
+
{ name: "newBalances", type: "uint256[]", indexed: false },
|
|
1616
|
+
{ name: "totalAssetValue", type: "uint256", indexed: false }
|
|
1617
|
+
]
|
|
1618
|
+
},
|
|
1619
|
+
{
|
|
1620
|
+
name: "RebalancedDelta",
|
|
1621
|
+
type: "event",
|
|
1622
|
+
inputs: [
|
|
1623
|
+
{ name: "tokens", type: "address[]", indexed: false },
|
|
1624
|
+
{ name: "oldWeights", type: "uint256[]", indexed: false },
|
|
1625
|
+
{ name: "newWeights", type: "uint256[]", indexed: false },
|
|
1626
|
+
{ name: "oldBalances", type: "uint256[]", indexed: false },
|
|
1627
|
+
{ name: "newBalances", type: "uint256[]", indexed: false },
|
|
1628
|
+
{ name: "totalAssetValue", type: "uint256", indexed: false },
|
|
1629
|
+
{ name: "swapsExecuted", type: "uint256", indexed: false }
|
|
1630
|
+
]
|
|
1631
|
+
}
|
|
1632
|
+
];
|
|
1480
1633
|
|
|
1481
1634
|
export {
|
|
1482
1635
|
TOKENS,
|
|
@@ -1490,6 +1643,8 @@ export {
|
|
|
1490
1643
|
STRATEGY_TEMPLATES,
|
|
1491
1644
|
EAS_CONTRACTS,
|
|
1492
1645
|
EAS_SCHEMAS,
|
|
1646
|
+
SYNTHRA,
|
|
1647
|
+
CHAINLINK,
|
|
1493
1648
|
SYNDICATE_VAULT_ABI,
|
|
1494
1649
|
UNISWAP_QUOTER_V2_ABI,
|
|
1495
1650
|
SWAP_ROUTER_ABI,
|
|
@@ -1500,6 +1655,7 @@ export {
|
|
|
1500
1655
|
VENICE_STAKING_ABI,
|
|
1501
1656
|
EAS_ABI,
|
|
1502
1657
|
SYNDICATE_GOVERNOR_ABI,
|
|
1503
|
-
BASE_STRATEGY_ABI
|
|
1658
|
+
BASE_STRATEGY_ABI,
|
|
1659
|
+
PORTFOLIO_STRATEGY_ABI
|
|
1504
1660
|
};
|
|
1505
|
-
//# sourceMappingURL=chunk-
|
|
1661
|
+
//# sourceMappingURL=chunk-ZPLUJT4V.js.map
|