@panoptic-eng/sdk 1.0.52 → 1.0.54

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.
@@ -11,14 +11,17 @@ type HypoVaultCoreAddresses = {
11
11
  type HypoVaultVaultAddresses = {
12
12
  wethPlpVault: Address;
13
13
  usdcPlpVault: Address;
14
+ usdgPlpVault?: Address;
14
15
  };
15
16
  type HypoVaultManagerAddresses = {
16
17
  wethPlpVaultManager: Address;
17
18
  usdcPlpVaultManager: Address;
19
+ usdgPlpVaultManager?: Address;
18
20
  };
19
21
  type HypoVaultManagerTurnkeySigners = {
20
22
  wethPlpVaultManager: Address;
21
23
  usdcPlpVaultManager: Address;
24
+ usdgPlpVaultManager?: Address;
22
25
  };
23
26
  type PanopticPoolAddresses = {
24
27
  version: 'v3' | 'v4';
@@ -47,6 +50,7 @@ type EthUsdc5BpsMarket = {
47
50
  tickSpacing: number;
48
51
  poolId: Hex;
49
52
  };
53
+ type SpyUsdgMarket = EthUsdc5BpsMarket;
50
54
  type InfrastructureAddresses = {
51
55
  uniswapV3Factory: Address;
52
56
  poolManager: Address;
@@ -87,6 +91,7 @@ type ChainDeployment = {
87
91
  markets: {
88
92
  ethUsdc5bps?: EthUsdc5BpsMarket;
89
93
  ethUsdc30bps?: EthUsdc5BpsMarket;
94
+ spyUsdg?: SpyUsdgMarket;
90
95
  };
91
96
  /** Off-venue SFPM swap venue for the hedger (optional; absent = feature unavailable). */
92
97
  sfpmSwap?: SfpmSwapMarket;
@@ -104,6 +109,7 @@ declare function getChainDeployment(chainId: number): ChainDeployment | undefine
104
109
  declare function requireChainDeployment(chainId: number): ChainDeployment;
105
110
  declare function isSupportedChain(chainId: number): boolean;
106
111
  declare function getEthUsdcMarket(deployment: ChainDeployment): EthUsdc5BpsMarket;
112
+ declare function getSpyUsdgMarket(deployment: ChainDeployment): SpyUsdgMarket;
107
113
  /** The off-venue SFPM swap venue for a chain, or undefined if not configured. */
108
114
  declare function getSfpmSwapMarket(deployment: ChainDeployment): SfpmSwapMarket | undefined;
109
115
  declare const MAINNET_DEPLOYMENT: ChainDeployment;
@@ -136,6 +142,7 @@ declare const ROBINHOOD_HYPOVAULT_MANAGER_TURNKEY_SIGNERS: HypoVaultManagerTurnk
136
142
  declare const ROBINHOOD_PANOPTIC_POOL_ADDRESSES: PanopticPoolAddresses;
137
143
  declare const ROBINHOOD_PANOPTIC_V2_ADDRESSES: PanopticV2Addresses;
138
144
  declare const ROBINHOOD_RISK_ENGINES: Address[];
145
+ declare const ROBINHOOD_SPY_USDG_MARKET: EthUsdc5BpsMarket;
139
146
 
140
147
  //#endregion
141
148
  //#region ../deployments/src/vaultDisplayNames.d.ts
@@ -156,5 +163,5 @@ declare function resolveVaultDisplayName({
156
163
  }: VaultDisplayNameResolverInput): string;
157
164
 
158
165
  //#endregion
159
- export { BASE_CHAIN_ID, BASE_DEPLOYMENT, BASE_ETH_USDC_5BPS_MARKET, BASE_HYPOVAULT_ADDRESSES, BASE_HYPOVAULT_CORE_ADDRESSES, BASE_HYPOVAULT_MANAGER_ADDRESSES, BASE_HYPOVAULT_MANAGER_TURNKEY_SIGNERS, BASE_PANOPTIC_POOL_ADDRESSES, BASE_PANOPTIC_V2_ADDRESSES, BASE_RISK_ENGINES, CHAIN_DEPLOYMENTS, ChainDeployment, EthUsdc5BpsMarket, HypoVaultCoreAddresses, HypoVaultManagerAddresses, HypoVaultManagerTurnkeySigners, HypoVaultVaultAddresses, InfrastructureAddresses, MAINNET_CHAIN_ID, MAINNET_DEPLOYMENT, MAINNET_ETH_USDC_5BPS_V3_PANOPTIC_POOL_ADDRESSES, MAINNET_PANOPTIC_V2_ADDRESSES, MAINNET_RISK_ENGINES, PanopticPoolAddresses, PanopticV2Addresses, ROBINHOOD_CHAIN_ID, ROBINHOOD_DEPLOYMENT, ROBINHOOD_HYPOVAULT_ADDRESSES, ROBINHOOD_HYPOVAULT_CORE_ADDRESSES, ROBINHOOD_HYPOVAULT_MANAGER_ADDRESSES, ROBINHOOD_HYPOVAULT_MANAGER_TURNKEY_SIGNERS, ROBINHOOD_PANOPTIC_POOL_ADDRESSES, ROBINHOOD_PANOPTIC_V2_ADDRESSES, ROBINHOOD_RISK_ENGINES, SEPOLIA_CHAIN_ID, SEPOLIA_DEPLOYMENT, SEPOLIA_ETH_USDC_5BPS_MARKET, SEPOLIA_HYPOVAULT_ADDRESSES, SEPOLIA_HYPOVAULT_CORE_ADDRESSES, SEPOLIA_HYPOVAULT_MANAGER_ADDRESSES, SEPOLIA_HYPOVAULT_MANAGER_TURNKEY_SIGNERS, SEPOLIA_PANOPTIC_POOL_ADDRESSES, SEPOLIA_PANOPTIC_V2_ADDRESSES, SEPOLIA_RISK_ENGINES, SfpmSwapMarket, VAULT_DISPLAY_NAMES_PER_CHAIN, VAULT_DISPLAY_NAME_RESOLVERS_PER_CHAIN, VaultDisplayNameResolver, VaultDisplayNameResolverInput, getChainDeployment, getEthUsdcMarket, getSfpmSwapMarket, isSupportedChain, requireChainDeployment, resolveVaultDisplayName };
166
+ export { BASE_CHAIN_ID, BASE_DEPLOYMENT, BASE_ETH_USDC_5BPS_MARKET, BASE_HYPOVAULT_ADDRESSES, BASE_HYPOVAULT_CORE_ADDRESSES, BASE_HYPOVAULT_MANAGER_ADDRESSES, BASE_HYPOVAULT_MANAGER_TURNKEY_SIGNERS, BASE_PANOPTIC_POOL_ADDRESSES, BASE_PANOPTIC_V2_ADDRESSES, BASE_RISK_ENGINES, CHAIN_DEPLOYMENTS, ChainDeployment, EthUsdc5BpsMarket, HypoVaultCoreAddresses, HypoVaultManagerAddresses, HypoVaultManagerTurnkeySigners, HypoVaultVaultAddresses, InfrastructureAddresses, MAINNET_CHAIN_ID, MAINNET_DEPLOYMENT, MAINNET_ETH_USDC_5BPS_V3_PANOPTIC_POOL_ADDRESSES, MAINNET_PANOPTIC_V2_ADDRESSES, MAINNET_RISK_ENGINES, PanopticPoolAddresses, PanopticV2Addresses, ROBINHOOD_CHAIN_ID, ROBINHOOD_DEPLOYMENT, ROBINHOOD_HYPOVAULT_ADDRESSES, ROBINHOOD_HYPOVAULT_CORE_ADDRESSES, ROBINHOOD_HYPOVAULT_MANAGER_ADDRESSES, ROBINHOOD_HYPOVAULT_MANAGER_TURNKEY_SIGNERS, ROBINHOOD_PANOPTIC_POOL_ADDRESSES, ROBINHOOD_PANOPTIC_V2_ADDRESSES, ROBINHOOD_RISK_ENGINES, ROBINHOOD_SPY_USDG_MARKET, SEPOLIA_CHAIN_ID, SEPOLIA_DEPLOYMENT, SEPOLIA_ETH_USDC_5BPS_MARKET, SEPOLIA_HYPOVAULT_ADDRESSES, SEPOLIA_HYPOVAULT_CORE_ADDRESSES, SEPOLIA_HYPOVAULT_MANAGER_ADDRESSES, SEPOLIA_HYPOVAULT_MANAGER_TURNKEY_SIGNERS, SEPOLIA_PANOPTIC_POOL_ADDRESSES, SEPOLIA_PANOPTIC_V2_ADDRESSES, SEPOLIA_RISK_ENGINES, SfpmSwapMarket, SpyUsdgMarket, VAULT_DISPLAY_NAMES_PER_CHAIN, VAULT_DISPLAY_NAME_RESOLVERS_PER_CHAIN, VaultDisplayNameResolver, VaultDisplayNameResolverInput, getChainDeployment, getEthUsdcMarket, getSfpmSwapMarket, getSpyUsdgMarket, isSupportedChain, requireChainDeployment, resolveVaultDisplayName };
160
167
  //# sourceMappingURL=deployments.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"deployments.d.ts","names":["Address","Hex","HypoVaultCoreAddresses","HypoVaultVaultAddresses","HypoVaultManagerAddresses","HypoVaultManagerTurnkeySigners","PanopticPoolAddresses","PanopticV2Addresses","EthUsdc5BpsMarket","InfrastructureAddresses","SfpmSwapMarket","ChainDeployment","Record","Readonly","MAINNET_CHAIN_ID","SEPOLIA_CHAIN_ID","BASE_CHAIN_ID","ROBINHOOD_CHAIN_ID","CHAIN_DEPLOYMENTS","getChainDeployment","requireChainDeployment","isSupportedChain","getEthUsdcMarket","getSfpmSwapMarket","MAINNET_DEPLOYMENT","MAINNET_ETH_USDC_5BPS_V3_PANOPTIC_POOL_ADDRESSES","MAINNET_PANOPTIC_V2_ADDRESSES","SEPOLIA_DEPLOYMENT","SEPOLIA_HYPOVAULT_CORE_ADDRESSES","SEPOLIA_HYPOVAULT_ADDRESSES","SEPOLIA_HYPOVAULT_MANAGER_ADDRESSES","SEPOLIA_HYPOVAULT_MANAGER_TURNKEY_SIGNERS","SEPOLIA_PANOPTIC_POOL_ADDRESSES","SEPOLIA_PANOPTIC_V2_ADDRESSES","BASE_DEPLOYMENT","BASE_HYPOVAULT_CORE_ADDRESSES","BASE_HYPOVAULT_ADDRESSES","BASE_HYPOVAULT_MANAGER_ADDRESSES","BASE_HYPOVAULT_MANAGER_TURNKEY_SIGNERS","BASE_PANOPTIC_POOL_ADDRESSES","BASE_PANOPTIC_V2_ADDRESSES","BASE_ETH_USDC_5BPS_MARKET","SEPOLIA_ETH_USDC_5BPS_MARKET","MAINNET_RISK_ENGINES","BASE_RISK_ENGINES","SEPOLIA_RISK_ENGINES","ROBINHOOD_DEPLOYMENT","ROBINHOOD_HYPOVAULT_CORE_ADDRESSES","ROBINHOOD_HYPOVAULT_ADDRESSES","ROBINHOOD_HYPOVAULT_MANAGER_ADDRESSES","ROBINHOOD_HYPOVAULT_MANAGER_TURNKEY_SIGNERS","ROBINHOOD_PANOPTIC_POOL_ADDRESSES","ROBINHOOD_PANOPTIC_V2_ADDRESSES","ROBINHOOD_RISK_ENGINES","Address","VaultDisplayNameResolverInput","VaultDisplayNameResolver","VAULT_DISPLAY_NAMES_PER_CHAIN","Record","VAULT_DISPLAY_NAME_RESOLVERS_PER_CHAIN","resolveVaultDisplayName","chainId","vaultAddress","underlyingSymbol","fallbackName"],"sources":["../../deployments/src/chainDeployments.d.ts","../../deployments/src/vaultDisplayNames.d.ts"],"sourcesContent":null,"mappings":"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"}
1
+ {"version":3,"file":"deployments.d.ts","names":["Address","Hex","HypoVaultCoreAddresses","HypoVaultVaultAddresses","HypoVaultManagerAddresses","HypoVaultManagerTurnkeySigners","PanopticPoolAddresses","PanopticV2Addresses","EthUsdc5BpsMarket","SpyUsdgMarket","InfrastructureAddresses","SfpmSwapMarket","ChainDeployment","Record","Readonly","MAINNET_CHAIN_ID","SEPOLIA_CHAIN_ID","BASE_CHAIN_ID","ROBINHOOD_CHAIN_ID","CHAIN_DEPLOYMENTS","getChainDeployment","requireChainDeployment","isSupportedChain","getEthUsdcMarket","getSpyUsdgMarket","getSfpmSwapMarket","MAINNET_DEPLOYMENT","MAINNET_ETH_USDC_5BPS_V3_PANOPTIC_POOL_ADDRESSES","MAINNET_PANOPTIC_V2_ADDRESSES","SEPOLIA_DEPLOYMENT","SEPOLIA_HYPOVAULT_CORE_ADDRESSES","SEPOLIA_HYPOVAULT_ADDRESSES","SEPOLIA_HYPOVAULT_MANAGER_ADDRESSES","SEPOLIA_HYPOVAULT_MANAGER_TURNKEY_SIGNERS","SEPOLIA_PANOPTIC_POOL_ADDRESSES","SEPOLIA_PANOPTIC_V2_ADDRESSES","BASE_DEPLOYMENT","BASE_HYPOVAULT_CORE_ADDRESSES","BASE_HYPOVAULT_ADDRESSES","BASE_HYPOVAULT_MANAGER_ADDRESSES","BASE_HYPOVAULT_MANAGER_TURNKEY_SIGNERS","BASE_PANOPTIC_POOL_ADDRESSES","BASE_PANOPTIC_V2_ADDRESSES","BASE_ETH_USDC_5BPS_MARKET","SEPOLIA_ETH_USDC_5BPS_MARKET","MAINNET_RISK_ENGINES","BASE_RISK_ENGINES","SEPOLIA_RISK_ENGINES","ROBINHOOD_DEPLOYMENT","ROBINHOOD_HYPOVAULT_CORE_ADDRESSES","ROBINHOOD_HYPOVAULT_ADDRESSES","ROBINHOOD_HYPOVAULT_MANAGER_ADDRESSES","ROBINHOOD_HYPOVAULT_MANAGER_TURNKEY_SIGNERS","ROBINHOOD_PANOPTIC_POOL_ADDRESSES","ROBINHOOD_PANOPTIC_V2_ADDRESSES","ROBINHOOD_RISK_ENGINES","ROBINHOOD_SPY_USDG_MARKET","Address","VaultDisplayNameResolverInput","VaultDisplayNameResolver","VAULT_DISPLAY_NAMES_PER_CHAIN","Record","VAULT_DISPLAY_NAME_RESOLVERS_PER_CHAIN","resolveVaultDisplayName","chainId","vaultAddress","underlyingSymbol","fallbackName"],"sources":["../../deployments/src/chainDeployments.d.ts","../../deployments/src/vaultDisplayNames.d.ts"],"sourcesContent":null,"mappings":"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"}
@@ -90,31 +90,34 @@ var _4663 = {
90
90
  },
91
91
  "hypovault": {
92
92
  "core": {
93
- "hypoVaultImplementation": "0x0000000000000000000000000000000000000000",
94
- "factory": "0x0000000000000000000000000000000000000000",
95
- "accountant": "0x0000000000000000000000000000000000000000",
96
- "rolesAuthority": "0x0000000000000000000000000000000000000000",
97
- "collateralTrackerDecoderAndSanitizer": "0x0000000000000000000000000000000000000000"
93
+ "hypoVaultImplementation": "0xF16714665955DBd0361D997eFc50fe391D96E8D0",
94
+ "factory": "0xd5049B2647de57141dE7F65E5124707B99A452A3",
95
+ "accountant": "0x9e345d862c41010F87D8E5A279e8D320D2831D36",
96
+ "rolesAuthority": "0xb952D345c413Ddb7850173422bAe4968e0330598",
97
+ "collateralTrackerDecoderAndSanitizer": "0xC87c45d2dbE5acb56013e2591427ECC84Fa251E6"
98
98
  },
99
99
  "vaults": {
100
100
  "wethPlpVault": "0x0000000000000000000000000000000000000000",
101
- "usdcPlpVault": "0x0000000000000000000000000000000000000000"
101
+ "usdcPlpVault": "0x0000000000000000000000000000000000000000",
102
+ "usdgPlpVault": "0x08B24123252Bd9c4DD473b6573D4cF67196FFC4B"
102
103
  },
103
104
  "managers": {
104
105
  "wethPlpVaultManager": "0x0000000000000000000000000000000000000000",
105
- "usdcPlpVaultManager": "0x0000000000000000000000000000000000000000"
106
+ "usdcPlpVaultManager": "0x0000000000000000000000000000000000000000",
107
+ "usdgPlpVaultManager": "0x67Edb096585efe88a9A1ee16c5857AB74Fc8EA87"
106
108
  },
107
109
  "turnkeySigners": {
108
110
  "wethPlpVaultManager": "0x0000000000000000000000000000000000000000",
109
- "usdcPlpVaultManager": "0x0000000000000000000000000000000000000000"
111
+ "usdcPlpVaultManager": "0x0000000000000000000000000000000000000000",
112
+ "usdgPlpVaultManager": "0x8FfA6DAB99f8afc64F61BeF83F0966eD6362f24F"
110
113
  }
111
114
  },
112
115
  "panoptic": {
113
116
  "pool": {
114
117
  "version": "v4",
115
- "panopticPool": "0x0000000000000000000000000000000000000000",
116
- "collateralTracker0": "0x0000000000000000000000000000000000000000",
117
- "collateralTracker1": "0x0000000000000000000000000000000000000000"
118
+ "panopticPool": "0x00000000989bcb6f24af4a1Ab2A6d6a31c98A58E",
119
+ "collateralTracker0": "0x49eaAC32A7CD4B8fB2209a12859a95E0b20aB0e5",
120
+ "collateralTracker1": "0x670C44a0FC35dbC410498e47A6290a1C3196d191"
118
121
  },
119
122
  "v2": {
120
123
  "semiFungiblePositionManagerV4": "0x00000000000005C3287f136Ef5AF56c68Ea6849f",
@@ -132,9 +135,15 @@ var _4663 = {
132
135
  }
133
136
  },
134
137
  "riskEngines": ["0x0000000000000E65545005B26207D7edFd031260", "0x0000000000000fe1e261f66ce2f44def4f5ae0cb"],
135
- "markets": {},
138
+ "markets": { "spyUsdg": {
139
+ "currency0": "0x117cc2133c37B721F49dE2A7a74833232B3B4C0C",
140
+ "currency1": "0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168",
141
+ "fee": 3e3,
142
+ "tickSpacing": 60,
143
+ "poolId": "0xfe2a80bb5618fd14984b92ca6d45bf5ba67443ddb1435e28b2e48df2fc1526cd"
144
+ } },
136
145
  "subgraphs": {
137
- "hypovault": "",
146
+ "hypovault": "https://api.goldsky.com/api/public/project_cl9gc21q105380hxuh8ks53k3/subgraphs/hypovault-subgraph-robinhood/prod/gn",
138
147
  "panoptic": "https://api.goldsky.com/api/public/project_cl9gc21q105380hxuh8ks53k3/subgraphs/panoptic-subgraph-robinhood/v2_prod/gn"
139
148
  }
140
149
  };
@@ -294,6 +303,11 @@ function getEthUsdcMarket(deployment) {
294
303
  if (market === void 0) throw new Error(`Missing ETH/USDC market for chainId ${deployment.chainId}`);
295
304
  return market;
296
305
  }
306
+ function getSpyUsdgMarket(deployment) {
307
+ const market = deployment.markets.spyUsdg;
308
+ if (market === void 0) throw new Error(`Missing SPY/USDG market for chainId ${deployment.chainId}`);
309
+ return market;
310
+ }
297
311
  /** The off-venue SFPM swap venue for a chain, or undefined if not configured. */
298
312
  function getSfpmSwapMarket(deployment) {
299
313
  return deployment.sfpmSwap;
@@ -328,6 +342,7 @@ const ROBINHOOD_HYPOVAULT_MANAGER_TURNKEY_SIGNERS = ROBINHOOD_DEPLOYMENT.hypovau
328
342
  const ROBINHOOD_PANOPTIC_POOL_ADDRESSES = ROBINHOOD_DEPLOYMENT.panoptic.pool;
329
343
  const ROBINHOOD_PANOPTIC_V2_ADDRESSES = ROBINHOOD_DEPLOYMENT.panoptic.v2;
330
344
  const ROBINHOOD_RISK_ENGINES = ROBINHOOD_DEPLOYMENT.riskEngines;
345
+ const ROBINHOOD_SPY_USDG_MARKET = getSpyUsdgMarket(ROBINHOOD_DEPLOYMENT);
331
346
 
332
347
  //#endregion
333
348
  //#region ../deployments/src/vaultDisplayNames.ts
@@ -341,6 +356,9 @@ const sepoliaDeployment = requireChainDeployment(SEPOLIA_CHAIN_ID);
341
356
  const sepoliaVaults = sepoliaDeployment.hypovault.vaults;
342
357
  const baseDeployment = requireChainDeployment(BASE_CHAIN_ID);
343
358
  const baseVaults = baseDeployment.hypovault.vaults;
359
+ const robinhoodDeployment = requireChainDeployment(ROBINHOOD_CHAIN_ID);
360
+ const robinhoodUsdgVault = robinhoodDeployment.hypovault.vaults.usdgPlpVault;
361
+ if (robinhoodUsdgVault === void 0) throw new Error("Missing Robinhood USDG PLP vault address");
344
362
  const VAULT_DISPLAY_NAMES_PER_CHAIN = {
345
363
  [MAINNET_CHAIN_ID]: {
346
364
  [mainnetVaults.wethPlpVault.toLowerCase()]: "PLP Vault",
@@ -355,7 +373,8 @@ const VAULT_DISPLAY_NAMES_PER_CHAIN = {
355
373
  [SEPOLIA_CHAIN_ID]: {
356
374
  [sepoliaVaults.wethPlpVault.toLowerCase()]: "PLP Vault",
357
375
  [sepoliaVaults.usdcPlpVault.toLowerCase()]: "Unicorn Vault"
358
- }
376
+ },
377
+ [ROBINHOOD_CHAIN_ID]: { [robinhoodUsdgVault.toLowerCase()]: "USDG PLP Vault" }
359
378
  };
360
379
  const VAULT_DISPLAY_NAME_RESOLVERS_PER_CHAIN = {
361
380
  [MAINNET_CHAIN_ID]: {
@@ -371,7 +390,8 @@ const VAULT_DISPLAY_NAME_RESOLVERS_PER_CHAIN = {
371
390
  [SEPOLIA_CHAIN_ID]: {
372
391
  [sepoliaVaults.wethPlpVault.toLowerCase()]: () => "PLP Vault",
373
392
  [sepoliaVaults.usdcPlpVault.toLowerCase()]: () => "Unicorn Vault"
374
- }
393
+ },
394
+ [ROBINHOOD_CHAIN_ID]: { [robinhoodUsdgVault.toLowerCase()]: () => "USDG PLP Vault" }
375
395
  };
376
396
  function resolveVaultDisplayName({ chainId, vaultAddress, underlyingSymbol, fallbackName }) {
377
397
  const vaultAddressLower = vaultAddress.toLowerCase();
@@ -389,5 +409,5 @@ function resolveVaultDisplayName({ chainId, vaultAddress, underlyingSymbol, fall
389
409
  }
390
410
 
391
411
  //#endregion
392
- export { BASE_CHAIN_ID, BASE_DEPLOYMENT, BASE_ETH_USDC_5BPS_MARKET, BASE_HYPOVAULT_ADDRESSES, BASE_HYPOVAULT_CORE_ADDRESSES, BASE_HYPOVAULT_MANAGER_ADDRESSES, BASE_HYPOVAULT_MANAGER_TURNKEY_SIGNERS, BASE_PANOPTIC_POOL_ADDRESSES, BASE_PANOPTIC_V2_ADDRESSES, BASE_RISK_ENGINES, CHAIN_DEPLOYMENTS, MAINNET_CHAIN_ID, MAINNET_DEPLOYMENT, MAINNET_ETH_USDC_5BPS_V3_PANOPTIC_POOL_ADDRESSES, MAINNET_PANOPTIC_V2_ADDRESSES, MAINNET_RISK_ENGINES, ROBINHOOD_CHAIN_ID, ROBINHOOD_DEPLOYMENT, ROBINHOOD_HYPOVAULT_ADDRESSES, ROBINHOOD_HYPOVAULT_CORE_ADDRESSES, ROBINHOOD_HYPOVAULT_MANAGER_ADDRESSES, ROBINHOOD_HYPOVAULT_MANAGER_TURNKEY_SIGNERS, ROBINHOOD_PANOPTIC_POOL_ADDRESSES, ROBINHOOD_PANOPTIC_V2_ADDRESSES, ROBINHOOD_RISK_ENGINES, SEPOLIA_CHAIN_ID, SEPOLIA_DEPLOYMENT, SEPOLIA_ETH_USDC_5BPS_MARKET, SEPOLIA_HYPOVAULT_ADDRESSES, SEPOLIA_HYPOVAULT_CORE_ADDRESSES, SEPOLIA_HYPOVAULT_MANAGER_ADDRESSES, SEPOLIA_HYPOVAULT_MANAGER_TURNKEY_SIGNERS, SEPOLIA_PANOPTIC_POOL_ADDRESSES, SEPOLIA_PANOPTIC_V2_ADDRESSES, SEPOLIA_RISK_ENGINES, VAULT_DISPLAY_NAMES_PER_CHAIN, VAULT_DISPLAY_NAME_RESOLVERS_PER_CHAIN, getChainDeployment, getEthUsdcMarket, getSfpmSwapMarket, isSupportedChain, requireChainDeployment, resolveVaultDisplayName };
412
+ export { BASE_CHAIN_ID, BASE_DEPLOYMENT, BASE_ETH_USDC_5BPS_MARKET, BASE_HYPOVAULT_ADDRESSES, BASE_HYPOVAULT_CORE_ADDRESSES, BASE_HYPOVAULT_MANAGER_ADDRESSES, BASE_HYPOVAULT_MANAGER_TURNKEY_SIGNERS, BASE_PANOPTIC_POOL_ADDRESSES, BASE_PANOPTIC_V2_ADDRESSES, BASE_RISK_ENGINES, CHAIN_DEPLOYMENTS, MAINNET_CHAIN_ID, MAINNET_DEPLOYMENT, MAINNET_ETH_USDC_5BPS_V3_PANOPTIC_POOL_ADDRESSES, MAINNET_PANOPTIC_V2_ADDRESSES, MAINNET_RISK_ENGINES, ROBINHOOD_CHAIN_ID, ROBINHOOD_DEPLOYMENT, ROBINHOOD_HYPOVAULT_ADDRESSES, ROBINHOOD_HYPOVAULT_CORE_ADDRESSES, ROBINHOOD_HYPOVAULT_MANAGER_ADDRESSES, ROBINHOOD_HYPOVAULT_MANAGER_TURNKEY_SIGNERS, ROBINHOOD_PANOPTIC_POOL_ADDRESSES, ROBINHOOD_PANOPTIC_V2_ADDRESSES, ROBINHOOD_RISK_ENGINES, ROBINHOOD_SPY_USDG_MARKET, SEPOLIA_CHAIN_ID, SEPOLIA_DEPLOYMENT, SEPOLIA_ETH_USDC_5BPS_MARKET, SEPOLIA_HYPOVAULT_ADDRESSES, SEPOLIA_HYPOVAULT_CORE_ADDRESSES, SEPOLIA_HYPOVAULT_MANAGER_ADDRESSES, SEPOLIA_HYPOVAULT_MANAGER_TURNKEY_SIGNERS, SEPOLIA_PANOPTIC_POOL_ADDRESSES, SEPOLIA_PANOPTIC_V2_ADDRESSES, SEPOLIA_RISK_ENGINES, VAULT_DISPLAY_NAMES_PER_CHAIN, VAULT_DISPLAY_NAME_RESOLVERS_PER_CHAIN, getChainDeployment, getEthUsdcMarket, getSfpmSwapMarket, getSpyUsdgMarket, isSupportedChain, requireChainDeployment, resolveVaultDisplayName };
393
413
  //# sourceMappingURL=deployments.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"deployments.js","names":["chainDeploymentsData","chainId: number","deployment: ChainDeployment","VAULT_DISPLAY_NAMES_PER_CHAIN: Record<number, Record<Address, string>>","VAULT_DISPLAY_NAME_RESOLVERS_PER_CHAIN: Record<\n number,\n Record<Address, VaultDisplayNameResolver>\n>"],"sources":["../../deployments/src/chainDeployments.data.json","../../deployments/src/chainDeployments.ts","../../deployments/src/vaultDisplayNames.ts"],"sourcesContent":["{\n \"1\": {\n \"chainId\": 1,\n \"infrastructure\": {\n \"uniswapV3Factory\": \"0x1F98431c8aD98523631AE4a59f267346ea31F984\",\n \"poolManager\": \"0x000000000004444c5dc75cB358380D2e3dE08A90\",\n \"stateView\": \"0x7ffe42c4a5deea5b0fec41c94c136cf115597227\"\n },\n \"hypovault\": {\n \"core\": {\n \"hypoVaultImplementation\": \"0xF16714665955DBd0361D997eFc50fe391D96E8D0\",\n \"factory\": \"0xd5049B2647de57141dE7F65E5124707B99A452A3\",\n \"accountant\": \"0x65aA902AE3135658587FFC36ED51B61c927114e1\",\n \"rolesAuthority\": \"0xb952D345c413Ddb7850173422bAe4968e0330598\",\n \"collateralTrackerDecoderAndSanitizer\": \"0xC87c45d2dbE5acb56013e2591427ECC84Fa251E6\"\n },\n \"vaults\": {\n \"wethPlpVault\": \"0xd4e2c720a760049cc4151bcf61e3a9348db9cd92\",\n \"usdcPlpVault\": \"0x236d0558f06cd60780b232d4Ec4c92d2cb7e4D18\"\n },\n \"managers\": {\n \"wethPlpVaultManager\": \"0xB6Fc48e658C9B1a7dbdFA51A5E153ab60BB2e04d\",\n \"usdcPlpVaultManager\": \"0x2ce65016366ef7320078e0758D58Cf1038bc7C4e\"\n },\n \"turnkeySigners\": {\n \"wethPlpVaultManager\": \"0x8FfA6DAB99f8afc64F61BeF83F0966eD6362f24F\",\n \"usdcPlpVaultManager\": \"0x3c1c79d0cfc316Ba959194c89696a8382d7d283b\"\n }\n },\n \"panoptic\": {\n \"pool\": {\n \"version\": \"v4\",\n \"panopticPool\": \"0x00000000563b70d704f4c6675a5f6ac989fbae13\",\n \"collateralTracker0\": \"0x1e46b0289B7E0F710E2Db8Ab87800dd782D624f7\",\n \"collateralTracker1\": \"0x12bF31955522BAC337D93e1bC0a39F68D8BDa216\"\n },\n \"additionalPools\": {\n \"ethUsdc5bpsV3\": {\n \"version\": \"v3\",\n \"panopticPool\": \"0x00000000009C7B687e833559e34503f64d7ed7c4\",\n \"collateralTracker0\": \"0x3CCdA7d5E841d6543D90BcEc20b36a724C184DE9\",\n \"collateralTracker1\": \"0x69E9f9e44E5F52237493b980dd7306198C64A4E4\"\n }\n },\n \"v2\": {\n \"semiFungiblePositionManagerV4\": \"0x00000000000005C3287f136Ef5AF56c68Ea6849f\",\n \"semiFungiblePositionManagerV3\": \"0x00000000000005E4693aDc8Ec0f12D686f728198\",\n \"builderFactory\": \"0x0000000000000a3D22E158417AA639D7F71b0FF7\",\n \"riskEngine\": \"0x0000000000000E65545005B26207D7edFd031260\",\n \"panopticPoolImplementation\": \"0x000000000000135429F0DaCaB61639Bf6a63EbbC\",\n \"collateralTrackerImplementation\": \"0x0000000000001d9c38CA405A2e04420865A08A33\",\n \"panopticFactoryV4\": \"0x0000000000000c51d0f8cf4bd9adE7191372a625\",\n \"panopticFactoryV3\": \"0x0000000000000aDC9A108591e718F2aee963a2a7\",\n \"panopticHelper\": \"0x0000000000000000000000000000000000000000\",\n \"panopticMath\": \"0x000000000000334bbd65C195581cf59ECf315932\",\n \"panopticQuery\": \"0x0000000000000e1aE9c66C1c3B0A547D23389C93\",\n \"interactionHelper\": \"0x00000000000041fe14Ce3c2392337CE501aE8328\"\n }\n },\n \"riskEngines\": [\n \"0x000000000000075e29cdaa9cb640a69e148ca7da\",\n \"0x0000000000000fe1e261f66ce2f44def4f5ae0cb\",\n \"0x0000000000000e673aECBDB5f5fE5DFAf4a8e9Ac\",\n \"0x0000000000000E65545005B26207D7edFd031260\"\n ],\n \"markets\": {\n \"ethUsdc30bps\": {\n \"currency0\": \"0x0000000000000000000000000000000000000000\",\n \"currency1\": \"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48\",\n \"fee\": 3000,\n \"tickSpacing\": 60,\n \"poolId\": \"0x3C08AE4977F78D\"\n }\n },\n \"subgraphs\": {\n \"hypovault\": \"https://api.goldsky.com/api/public/project_cl9gc21q105380hxuh8ks53k3/subgraphs/hypovault-subgraph-mainnet/prod/gn\",\n \"panoptic\": \"https://api.goldsky.com/api/public/project_cl9gc21q105380hxuh8ks53k3/subgraphs/panoptic-subgraph-mainnet/v2_prod/gn\"\n },\n \"sfpmSwap\": {\n \"version\": \"v3\",\n \"sfpm\": \"0x00000000000005E4693aDc8Ec0f12D686f728198\",\n \"poolAddress\": \"0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640\",\n \"poolId\": \"2824133844976349\",\n \"fee\": 500,\n \"weth\": \"0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2\"\n }\n },\n \"4663\": {\n \"chainId\": 4663,\n \"infrastructure\": {\n \"uniswapV3Factory\": \"0x1f7d7550b1b028f7571e69a784071f0205fd2efa\",\n \"poolManager\": \"0x8366a39cc670b4001a1121b8f6a443a643e40951\",\n \"stateView\": \"0xf3334192d15450cdd385c8b70e03f9a6bd9e673b\"\n },\n \"hypovault\": {\n \"core\": {\n \"hypoVaultImplementation\": \"0x0000000000000000000000000000000000000000\",\n \"factory\": \"0x0000000000000000000000000000000000000000\",\n \"accountant\": \"0x0000000000000000000000000000000000000000\",\n \"rolesAuthority\": \"0x0000000000000000000000000000000000000000\",\n \"collateralTrackerDecoderAndSanitizer\": \"0x0000000000000000000000000000000000000000\"\n },\n \"vaults\": {\n \"wethPlpVault\": \"0x0000000000000000000000000000000000000000\",\n \"usdcPlpVault\": \"0x0000000000000000000000000000000000000000\"\n },\n \"managers\": {\n \"wethPlpVaultManager\": \"0x0000000000000000000000000000000000000000\",\n \"usdcPlpVaultManager\": \"0x0000000000000000000000000000000000000000\"\n },\n \"turnkeySigners\": {\n \"wethPlpVaultManager\": \"0x0000000000000000000000000000000000000000\",\n \"usdcPlpVaultManager\": \"0x0000000000000000000000000000000000000000\"\n }\n },\n \"panoptic\": {\n \"pool\": {\n \"version\": \"v4\",\n \"panopticPool\": \"0x0000000000000000000000000000000000000000\",\n \"collateralTracker0\": \"0x0000000000000000000000000000000000000000\",\n \"collateralTracker1\": \"0x0000000000000000000000000000000000000000\"\n },\n \"v2\": {\n \"semiFungiblePositionManagerV4\": \"0x00000000000005C3287f136Ef5AF56c68Ea6849f\",\n \"semiFungiblePositionManagerV3\": \"0x00000000000005E4693aDc8Ec0f12D686f728198\",\n \"builderFactory\": \"0x0000000000000a3D22E158417AA639D7F71b0FF7\",\n \"riskEngine\": \"0x0000000000000E65545005B26207D7edFd031260\",\n \"panopticPoolImplementation\": \"0x000000000000135429F0DaCaB61639Bf6a63EbbC\",\n \"collateralTrackerImplementation\": \"0x0000000000001d9c38CA405A2e04420865A08A33\",\n \"panopticFactoryV4\": \"0x0000000000000c51d0f8cf4bd9adE7191372a625\",\n \"panopticFactoryV3\": \"0x0000000000000aDC9A108591e718F2aee963a2a7\",\n \"panopticHelper\": \"0x0000000000000000000000000000000000000000\",\n \"panopticMath\": \"0x000000000000334bbd65C195581cf59ECf315932\",\n \"panopticQuery\": \"0x0000000000000e1aE9c66C1c3B0A547D23389C93\",\n \"interactionHelper\": \"0x00000000000041fe14Ce3c2392337CE501aE8328\"\n }\n },\n \"riskEngines\": [\n \"0x0000000000000E65545005B26207D7edFd031260\",\n \"0x0000000000000fe1e261f66ce2f44def4f5ae0cb\"\n ],\n \"markets\": {},\n \"subgraphs\": {\n \"hypovault\": \"\",\n \"panoptic\": \"https://api.goldsky.com/api/public/project_cl9gc21q105380hxuh8ks53k3/subgraphs/panoptic-subgraph-robinhood/v2_prod/gn\"\n }\n },\n \"8453\": {\n \"chainId\": 8453,\n \"infrastructure\": {\n \"uniswapV3Factory\": \"0x33128a8fC17869897dcE68Ed026d694621f6FDfD\",\n \"poolManager\": \"0x498581fF718922c3f8e6A244956aF099B2652b2b\",\n \"stateView\": \"0xA3c0c9b65baD0b08107Aa264b0f3dB444b867A71\"\n },\n \"hypovault\": {\n \"core\": {\n \"hypoVaultImplementation\": \"0xec311aE06486ad44Ba782133b502A34aCE0f479E\",\n \"factory\": \"0x9bE53b169a41030f1710A9B82e9eA6413f14D12E\",\n \"accountant\": \"0x345cA3407942f9d175c9eA8B90e83A36F570f852\",\n \"rolesAuthority\": \"0x278D37CaBFFB4B72D2866E30fEFE08aef773E0B6\",\n \"collateralTrackerDecoderAndSanitizer\": \"0x4A290b3EC46cF320421Bb2aaee96d445de31CF0b\"\n },\n \"vaults\": {\n \"wethPlpVault\": \"0x41b7D0515d709A4Fd2CF27f9d141D0c2F8713D04\",\n \"usdcPlpVault\": \"0xb452af299c565D04B05E601efF2840e000C922f1\"\n },\n \"managers\": {\n \"wethPlpVaultManager\": \"0x2a4923456c79E9ebD10F5Bf5305a5C742bBc1D7C\",\n \"usdcPlpVaultManager\": \"0xdd6E2406a044582463CFE9F0C774870eAf4A310B\"\n },\n \"turnkeySigners\": {\n \"wethPlpVaultManager\": \"0x8FfA6DAB99f8afc64F61BeF83F0966eD6362f24F\",\n \"usdcPlpVaultManager\": \"0x3c1c79d0cfc316Ba959194c89696a8382d7d283b\"\n }\n },\n \"panoptic\": {\n \"pool\": {\n \"version\": \"v4\",\n \"panopticPool\": \"0xB50e8bb68f5855DA742f4579274902a20454174a\",\n \"collateralTracker0\": \"0x0d82b189c96EbB1f44A7207e6A9cfB1e490f2869\",\n \"collateralTracker1\": \"0x9ba1082Ab3cb9edEA988697A14BBe543A3dABEd2\"\n },\n \"v2\": {\n \"semiFungiblePositionManagerV4\": \"0x8dcAa08cF298F8b4830FAf56d47930981AdE33af\",\n \"semiFungiblePositionManagerV3\": \"0xFB1c06B491305d618bb8a7a368C6e50c001C153A\",\n \"builderFactory\": \"0x6d26E916a18d522f7DdA2a26d9E1645564ccDcA5\",\n \"riskEngine\": \"0x8bbce8b1eb64118cfe6c1eab0afe13b80ea41481\",\n \"panopticPoolImplementation\": \"0x5BA68a018fF149c38ec52D181Dd24aBabE9a07DB\",\n \"collateralTrackerImplementation\": \"0x34B3a4e4F14f292575ECe3EF67886C4598af459f\",\n \"panopticFactoryV4\": \"0x9ac0317fcd124aff0b5429beb8de17020bc45f9a\",\n \"panopticFactoryV3\": \"0x687f616d68c483a7223e6922f59aef7452e26c1d\",\n \"panopticHelper\": \"0x0000000000000000000000000000000000000000\",\n \"panopticMath\": \"0x6d21699192f5aF112C87e53b32ff846782afF407\",\n \"panopticQuery\": \"0xd2586E1bbdd1169F597F3A370117EdF7372A7350\",\n \"interactionHelper\": \"0x643d8DD5372FD6c71f8fAbCce4Eb8857704F3E15\"\n }\n },\n \"riskEngines\": [\n \"0x8bbce8b1eb64118cfe6c1eab0afe13b80ea41481\"\n ],\n \"markets\": {\n \"ethUsdc5bps\": {\n \"currency0\": \"0x0000000000000000000000000000000000000000\",\n \"currency1\": \"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913\",\n \"fee\": 500,\n \"tickSpacing\": 10,\n \"poolId\": \"0x96d4b53a38337a5733179751781178a2613306063c511b78cd02684739288c0a\"\n }\n },\n \"subgraphs\": {\n \"hypovault\": \"https://api.goldsky.com/api/public/project_cl9gc21q105380hxuh8ks53k3/subgraphs/hypovault-subgraph-base/prod/gn\",\n \"panoptic\": \"https://api.goldsky.com/api/public/project_cl9gc21q105380hxuh8ks53k3/subgraphs/panoptic-subgraph-base/v2_prod/gn\"\n }\n },\n \"11155111\": {\n \"chainId\": 11155111,\n \"infrastructure\": {\n \"uniswapV3Factory\": \"0x0227628f3F023bb0B980b67D528571c95c6DaC1c\",\n \"poolManager\": \"0xE03A1074c86CFeDd5C142C4F04F1a1536e203543\",\n \"stateView\": \"0xE1Dd9c3fA50EDB962E442f60DfBc432e24537E4C\"\n },\n \"hypovault\": {\n \"core\": {\n \"hypoVaultImplementation\": \"0xC5b415Db4087228Af817893769DC3a205160160B\",\n \"factory\": \"0x363a9d605ca45cBfF3b597350DeADb53cdC292c7\",\n \"accountant\": \"0x25BBef1DF262c24aa1AACD1F7eCeEcc1a7AD08ab\",\n \"rolesAuthority\": \"0x673BfafB4e2712215B422347c1571421B83E8A3d\",\n \"collateralTrackerDecoderAndSanitizer\": \"0xb899BE50BAF25BBB3A3ca3403256B3c703E5AB5d\"\n },\n \"vaults\": {\n \"wethPlpVault\": \"0xD58C4F9AEe5bBfcf28dC9a8d3D57b323fA6521b1\",\n \"usdcPlpVault\": \"0xdd7a8d6c6975488e801129bC84302d74e2361208\"\n },\n \"managers\": {\n \"wethPlpVaultManager\": \"0x95eC124FAAB70D7aE147c3BE0336E01a828AE2d5\",\n \"usdcPlpVaultManager\": \"0xFB5aa3e0b46F3859D90B14b52ffd287013b5Ec53\"\n },\n \"turnkeySigners\": {\n \"wethPlpVaultManager\": \"0x8FfA6DAB99f8afc64F61BeF83F0966eD6362f24F\",\n \"usdcPlpVaultManager\": \"0x3c1c79d0cfc316Ba959194c89696a8382d7d283b\"\n }\n },\n \"panoptic\": {\n \"pool\": {\n \"version\": \"v4\",\n \"panopticPool\": \"0x872b98C46b2062F663BEb2CC9D4cE046Da2a2918\",\n \"collateralTracker0\": \"0x09a60b78d06a03e5148faedd3bfee6f58b22012f\",\n \"collateralTracker1\": \"0x7365664c8101ff7e9422ae2b203822253c31e69c\"\n },\n \"v2\": {\n \"semiFungiblePositionManagerV3\": \"0x9DaD2C40107Db4B29a5450401BB7A28e6eA00e43\",\n \"semiFungiblePositionManagerV4\": \"0xD2615995A71644E122cC2FD7FeC2392b971220DE\",\n \"builderFactory\": \"0x55f3D2d9D065AA5Fcc11D94c55a6085849e8b6C3\",\n \"riskEngine\": \"0x1376aF5ca426B6B9fad6a712c21f6Cf58a94b93c\",\n \"panopticPoolImplementation\": \"0x969235B5830f13b58BB699305d9c70A8Cd3BD97C\",\n \"collateralTrackerImplementation\": \"0xafcd5F651Ae0403Ff668bb2dAc38BEa907a35Dba\",\n \"panopticFactoryV3\": \"0xd9FFCa53C0A6155001Ce8cbcAEfe89DB204690F1\",\n \"panopticFactoryV4\": \"0x8FCBb59b05779818D9BAD2686cc44B705603ce03\",\n \"panopticHelper\": \"0xfFEbB3A4ab793cB244209d4dA0Cb3e6B07133bd0\",\n \"panopticMath\": \"0x6d21699192f5aF112C87e53b32ff846782afF407\",\n \"panopticQuery\": \"0x74057945467Fb4eAE9193B46A60ae66a53f06A5b\",\n \"interactionHelper\": \"0x643d8DD5372FD6c71f8fAbCce4Eb8857704F3E15\"\n }\n },\n \"riskEngines\": [\n \"0x1376aF5ca426B6B9fad6a712c21f6Cf58a94b93c\"\n ],\n \"markets\": {\n \"ethUsdc5bps\": {\n \"currency0\": \"0x0000000000000000000000000000000000000000\",\n \"currency1\": \"0xFFFeD8254566B7F800f6D8CDb843ec75AE49B07A\",\n \"fee\": 500,\n \"tickSpacing\": 10,\n \"poolId\": \"0xba6673bcb27568a73a93dd23b20c8174fa16193cd90905be859144e8f13097a5\"\n }\n },\n \"subgraphs\": {\n \"hypovault\": \"https://api.goldsky.com/api/public/project_cl9gc21q105380hxuh8ks53k3/subgraphs/hypovault-subgraph-sepolia/prod/gn\",\n \"panoptic\": \"https://api.goldsky.com/api/public/project_cl9gc21q105380hxuh8ks53k3/subgraphs/panoptic-subgraph-sepolia/v2_prod/gn\"\n }\n }\n}\n","import type { Address, Hex } from 'viem'\n\nimport chainDeploymentsData from './chainDeployments.data.json'\n\nexport type HypoVaultCoreAddresses = {\n hypoVaultImplementation: Address\n factory: Address\n accountant: Address\n rolesAuthority: Address\n collateralTrackerDecoderAndSanitizer: Address\n}\n\nexport type HypoVaultVaultAddresses = {\n wethPlpVault: Address\n usdcPlpVault: Address\n}\n\nexport type HypoVaultManagerAddresses = {\n wethPlpVaultManager: Address\n usdcPlpVaultManager: Address\n}\n\nexport type HypoVaultManagerTurnkeySigners = {\n wethPlpVaultManager: Address\n usdcPlpVaultManager: Address\n}\n\nexport type PanopticPoolAddresses = {\n version: 'v3' | 'v4'\n panopticPool: Address\n collateralTracker0: Address\n collateralTracker1: Address\n}\n\nexport type PanopticV2Addresses = {\n semiFungiblePositionManagerV3: Address\n semiFungiblePositionManagerV4: Address\n builderFactory: Address\n riskEngine: Address\n panopticPoolImplementation: Address\n collateralTrackerImplementation: Address\n panopticFactoryV3: Address\n panopticFactoryV4: Address\n panopticHelper: Address\n panopticMath: Address\n panopticQuery: Address\n interactionHelper: Address\n}\n\nexport type EthUsdc5BpsMarket = {\n currency0: Address\n currency1: Address\n fee: number\n tickSpacing: number\n poolId: Hex\n}\n\nexport type InfrastructureAddresses = {\n uniswapV3Factory: Address\n poolManager: Address\n stateView: Address\n}\n\n/**\n * The off-venue swap venue: a cheaper Uniswap pool the hedger routes its\n * hedge-netting swap through via the SemiFungiblePositionManager, instead of the\n * options pool's own (pricier) pool. `sfpm` is the SFPM the pool is registered on\n * and `poolId` is its registered uint64 id. `weth` bridges native-ETH collateral\n * (the v3 pool trades WETH).\n */\nexport type SfpmSwapMarket = {\n version: 'v3' | 'v4'\n sfpm: Address\n poolAddress: Address\n poolId: string\n fee: number\n weth: Address\n}\n\nexport type ChainDeployment = {\n chainId: number\n infrastructure: InfrastructureAddresses\n hypovault: {\n core: HypoVaultCoreAddresses\n vaults: HypoVaultVaultAddresses\n managers: HypoVaultManagerAddresses\n turnkeySigners: HypoVaultManagerTurnkeySigners\n }\n panoptic: {\n pool: PanopticPoolAddresses\n additionalPools?: Readonly<\n Record<string, PanopticPoolAddresses> & {\n ethUsdc5bpsV3?: PanopticPoolAddresses\n }\n >\n v2: PanopticV2Addresses\n }\n // Keep this whitelist current as new RiskEngines are deployed, otherwise UI subgraph queries\n // that filter by risk engine will stop surfacing markets for the new deployments.\n riskEngines: Address[]\n markets: {\n ethUsdc5bps?: EthUsdc5BpsMarket\n ethUsdc30bps?: EthUsdc5BpsMarket\n }\n /** Off-venue SFPM swap venue for the hedger (optional; absent = feature unavailable). */\n sfpmSwap?: SfpmSwapMarket\n subgraphs: {\n hypovault: string\n panoptic?: string\n }\n}\n\nexport const MAINNET_CHAIN_ID = 1\nexport const SEPOLIA_CHAIN_ID = 11155111\nexport const BASE_CHAIN_ID = 8453\nexport const ROBINHOOD_CHAIN_ID = 4663\n\nexport const CHAIN_DEPLOYMENTS = chainDeploymentsData as Readonly<Record<number, ChainDeployment>>\n\nexport function getChainDeployment(chainId: number): ChainDeployment | undefined {\n return CHAIN_DEPLOYMENTS[chainId]\n}\n\nexport function requireChainDeployment(chainId: number): ChainDeployment {\n const deployment = getChainDeployment(chainId)\n if (deployment === undefined) {\n throw new Error(`Unsupported chain deployment for chainId ${chainId}`)\n }\n return deployment\n}\n\nexport function isSupportedChain(chainId: number): boolean {\n return getChainDeployment(chainId) !== undefined\n}\n\nexport function getEthUsdcMarket(deployment: ChainDeployment): EthUsdc5BpsMarket {\n const market = deployment.markets.ethUsdc5bps ?? deployment.markets.ethUsdc30bps\n if (market === undefined) {\n throw new Error(`Missing ETH/USDC market for chainId ${deployment.chainId}`)\n }\n return market\n}\n\n\n/** The off-venue SFPM swap venue for a chain, or undefined if not configured. */\nexport function getSfpmSwapMarket(deployment: ChainDeployment): SfpmSwapMarket | undefined {\n return deployment.sfpmSwap\n}\n\nexport const MAINNET_DEPLOYMENT = CHAIN_DEPLOYMENTS[MAINNET_CHAIN_ID]\nexport const MAINNET_ETH_USDC_5BPS_V3_PANOPTIC_POOL_ADDRESSES =\n MAINNET_DEPLOYMENT.panoptic.additionalPools?.ethUsdc5bpsV3\nexport const MAINNET_PANOPTIC_V2_ADDRESSES = MAINNET_DEPLOYMENT.panoptic.v2\nexport const SEPOLIA_DEPLOYMENT = CHAIN_DEPLOYMENTS[SEPOLIA_CHAIN_ID]\nexport const SEPOLIA_HYPOVAULT_CORE_ADDRESSES = SEPOLIA_DEPLOYMENT.hypovault.core\nexport const SEPOLIA_HYPOVAULT_ADDRESSES = SEPOLIA_DEPLOYMENT.hypovault.vaults\nexport const SEPOLIA_HYPOVAULT_MANAGER_ADDRESSES = SEPOLIA_DEPLOYMENT.hypovault.managers\nexport const SEPOLIA_HYPOVAULT_MANAGER_TURNKEY_SIGNERS = SEPOLIA_DEPLOYMENT.hypovault.turnkeySigners\nexport const SEPOLIA_PANOPTIC_POOL_ADDRESSES = SEPOLIA_DEPLOYMENT.panoptic.pool\nexport const SEPOLIA_PANOPTIC_V2_ADDRESSES = SEPOLIA_DEPLOYMENT.panoptic.v2\nexport const BASE_DEPLOYMENT = CHAIN_DEPLOYMENTS[BASE_CHAIN_ID]\nexport const BASE_HYPOVAULT_CORE_ADDRESSES = BASE_DEPLOYMENT.hypovault.core\nexport const BASE_HYPOVAULT_ADDRESSES = BASE_DEPLOYMENT.hypovault.vaults\nexport const BASE_HYPOVAULT_MANAGER_ADDRESSES = BASE_DEPLOYMENT.hypovault.managers\nexport const BASE_HYPOVAULT_MANAGER_TURNKEY_SIGNERS = BASE_DEPLOYMENT.hypovault.turnkeySigners\nexport const BASE_PANOPTIC_POOL_ADDRESSES = BASE_DEPLOYMENT.panoptic.pool\nexport const BASE_PANOPTIC_V2_ADDRESSES = BASE_DEPLOYMENT.panoptic.v2\nexport const BASE_ETH_USDC_5BPS_MARKET = getEthUsdcMarket(BASE_DEPLOYMENT)\nexport const SEPOLIA_ETH_USDC_5BPS_MARKET = getEthUsdcMarket(SEPOLIA_DEPLOYMENT)\n\nexport const MAINNET_RISK_ENGINES = MAINNET_DEPLOYMENT.riskEngines\nexport const BASE_RISK_ENGINES = BASE_DEPLOYMENT.riskEngines\nexport const SEPOLIA_RISK_ENGINES = SEPOLIA_DEPLOYMENT.riskEngines\n\nexport const ROBINHOOD_DEPLOYMENT = CHAIN_DEPLOYMENTS[ROBINHOOD_CHAIN_ID]\nexport const ROBINHOOD_HYPOVAULT_CORE_ADDRESSES = ROBINHOOD_DEPLOYMENT.hypovault.core\nexport const ROBINHOOD_HYPOVAULT_ADDRESSES = ROBINHOOD_DEPLOYMENT.hypovault.vaults\nexport const ROBINHOOD_HYPOVAULT_MANAGER_ADDRESSES = ROBINHOOD_DEPLOYMENT.hypovault.managers\nexport const ROBINHOOD_HYPOVAULT_MANAGER_TURNKEY_SIGNERS = ROBINHOOD_DEPLOYMENT.hypovault.turnkeySigners\nexport const ROBINHOOD_PANOPTIC_POOL_ADDRESSES = ROBINHOOD_DEPLOYMENT.panoptic.pool\nexport const ROBINHOOD_PANOPTIC_V2_ADDRESSES = ROBINHOOD_DEPLOYMENT.panoptic.v2\nexport const ROBINHOOD_RISK_ENGINES = ROBINHOOD_DEPLOYMENT.riskEngines\n","import type { Address } from 'viem'\n\nimport {\n BASE_CHAIN_ID,\n MAINNET_CHAIN_ID,\n requireChainDeployment,\n SEPOLIA_CHAIN_ID,\n} from './chainDeployments'\n\nconst mainnetDeployment = requireChainDeployment(MAINNET_CHAIN_ID)\nconst mainnetVaults = mainnetDeployment.hypovault.vaults\nconst legacyMainnetVaults = {\n wethPlpVault: '0x779a2aa634A004b3a3f3b322083744869BBC6D66',\n usdcPlpVault: '0x963Fe9c93bc353602656ee4051A75114bA74d6c5',\n} as const satisfies Record<string, Address>\nconst sepoliaDeployment = requireChainDeployment(SEPOLIA_CHAIN_ID)\nconst sepoliaVaults = sepoliaDeployment.hypovault.vaults\nconst baseDeployment = requireChainDeployment(BASE_CHAIN_ID)\nconst baseVaults = baseDeployment.hypovault.vaults\n\nexport type VaultDisplayNameResolverInput = {\n chainId: number\n vaultAddress: string\n underlyingSymbol?: string | null\n fallbackName?: string | null\n}\n\nexport type VaultDisplayNameResolver = (input: VaultDisplayNameResolverInput) => string\n\nexport const VAULT_DISPLAY_NAMES_PER_CHAIN: Record<number, Record<Address, string>> = {\n [MAINNET_CHAIN_ID]: {\n [mainnetVaults.wethPlpVault.toLowerCase() as Address]: 'PLP Vault',\n [mainnetVaults.usdcPlpVault.toLowerCase() as Address]: 'Unicorn Vault',\n [legacyMainnetVaults.wethPlpVault.toLowerCase() as Address]: 'PLP Vault',\n [legacyMainnetVaults.usdcPlpVault.toLowerCase() as Address]: 'Unicorn Vault',\n },\n [BASE_CHAIN_ID]: {\n [baseVaults.wethPlpVault.toLowerCase() as Address]: 'PLP Vault',\n [baseVaults.usdcPlpVault.toLowerCase() as Address]: 'Unicorn Vault',\n },\n [SEPOLIA_CHAIN_ID]: {\n [sepoliaVaults.wethPlpVault.toLowerCase() as Address]: 'PLP Vault',\n [sepoliaVaults.usdcPlpVault.toLowerCase() as Address]: 'Unicorn Vault',\n },\n}\n\nexport const VAULT_DISPLAY_NAME_RESOLVERS_PER_CHAIN: Record<\n number,\n Record<Address, VaultDisplayNameResolver>\n> = {\n [MAINNET_CHAIN_ID]: {\n [mainnetVaults.wethPlpVault.toLowerCase() as Address]: () => 'PLP Vault',\n [mainnetVaults.usdcPlpVault.toLowerCase() as Address]: () => 'Unicorn Vault',\n [legacyMainnetVaults.wethPlpVault.toLowerCase() as Address]: () => 'PLP Vault',\n [legacyMainnetVaults.usdcPlpVault.toLowerCase() as Address]: () => 'Unicorn Vault',\n },\n [BASE_CHAIN_ID]: {\n [baseVaults.wethPlpVault.toLowerCase() as Address]: () => 'PLP Vault',\n [baseVaults.usdcPlpVault.toLowerCase() as Address]: () => 'Unicorn Vault',\n },\n [SEPOLIA_CHAIN_ID]: {\n [sepoliaVaults.wethPlpVault.toLowerCase() as Address]: () => 'PLP Vault',\n [sepoliaVaults.usdcPlpVault.toLowerCase() as Address]: () => 'Unicorn Vault',\n },\n}\n\nexport function resolveVaultDisplayName({\n chainId,\n vaultAddress,\n underlyingSymbol,\n fallbackName,\n}: VaultDisplayNameResolverInput): string {\n const vaultAddressLower = vaultAddress.toLowerCase() as Address\n const resolver = VAULT_DISPLAY_NAME_RESOLVERS_PER_CHAIN[chainId]?.[vaultAddressLower]\n if (resolver !== undefined) {\n return resolver({\n chainId,\n vaultAddress: vaultAddressLower,\n underlyingSymbol,\n fallbackName,\n })\n }\n\n const staticName = VAULT_DISPLAY_NAMES_PER_CHAIN[chainId]?.[vaultAddressLower]\n if (staticName !== undefined) {\n return staticName\n }\n\n if (fallbackName !== undefined && fallbackName !== null) {\n return fallbackName\n }\n\n return 'Vault'\n}\n"],"mappings":";SACO;CACH,WAAW;CACX,kBAAkB;EAChB,oBAAoB;EACpB,eAAe;EACf,aAAa;CACd;CACD,aAAa;EACX,QAAQ;GACN,2BAA2B;GAC3B,WAAW;GACX,cAAc;GACd,kBAAkB;GAClB,wCAAwC;EACzC;EACD,UAAU;GACR,gBAAgB;GAChB,gBAAgB;EACjB;EACD,YAAY;GACV,uBAAuB;GACvB,uBAAuB;EACxB;EACD,kBAAkB;GAChB,uBAAuB;GACvB,uBAAuB;EACxB;CACF;CACD,YAAY;EACV,QAAQ;GACN,WAAW;GACX,gBAAgB;GAChB,sBAAsB;GACtB,sBAAsB;EACvB;EACD,mBAAmB,EACjB,iBAAiB;GACf,WAAW;GACX,gBAAgB;GAChB,sBAAsB;GACtB,sBAAsB;EACvB,EACF;EACD,MAAM;GACJ,iCAAiC;GACjC,iCAAiC;GACjC,kBAAkB;GAClB,cAAc;GACd,8BAA8B;GAC9B,mCAAmC;GACnC,qBAAqB;GACrB,qBAAqB;GACrB,kBAAkB;GAClB,gBAAgB;GAChB,iBAAiB;GACjB,qBAAqB;EACtB;CACF;CACD,eAAe;EACb;EACA;EACA;EACA;CACD;CACD,WAAW,EACT,gBAAgB;EACd,aAAa;EACb,aAAa;EACb,OAAO;EACP,eAAe;EACf,UAAU;CACX,EACF;CACD,aAAa;EACX,aAAa;EACb,YAAY;CACb;CACD,YAAY;EACV,WAAW;EACX,QAAQ;EACR,eAAe;EACf,UAAU;EACV,OAAO;EACP,QAAQ;CACT;AACF;YACO;CACN,WAAW;CACX,kBAAkB;EAChB,oBAAoB;EACpB,eAAe;EACf,aAAa;CACd;CACD,aAAa;EACX,QAAQ;GACN,2BAA2B;GAC3B,WAAW;GACX,cAAc;GACd,kBAAkB;GAClB,wCAAwC;EACzC;EACD,UAAU;GACR,gBAAgB;GAChB,gBAAgB;EACjB;EACD,YAAY;GACV,uBAAuB;GACvB,uBAAuB;EACxB;EACD,kBAAkB;GAChB,uBAAuB;GACvB,uBAAuB;EACxB;CACF;CACD,YAAY;EACV,QAAQ;GACN,WAAW;GACX,gBAAgB;GAChB,sBAAsB;GACtB,sBAAsB;EACvB;EACD,MAAM;GACJ,iCAAiC;GACjC,iCAAiC;GACjC,kBAAkB;GAClB,cAAc;GACd,8BAA8B;GAC9B,mCAAmC;GACnC,qBAAqB;GACrB,qBAAqB;GACrB,kBAAkB;GAClB,gBAAgB;GAChB,iBAAiB;GACjB,qBAAqB;EACtB;CACF;CACD,eAAe,CACb,8CACA,4CACD;CACD,WAAW,CAAE;CACb,aAAa;EACX,aAAa;EACb,YAAY;CACb;AACF;YACO;CACN,WAAW;CACX,kBAAkB;EAChB,oBAAoB;EACpB,eAAe;EACf,aAAa;CACd;CACD,aAAa;EACX,QAAQ;GACN,2BAA2B;GAC3B,WAAW;GACX,cAAc;GACd,kBAAkB;GAClB,wCAAwC;EACzC;EACD,UAAU;GACR,gBAAgB;GAChB,gBAAgB;EACjB;EACD,YAAY;GACV,uBAAuB;GACvB,uBAAuB;EACxB;EACD,kBAAkB;GAChB,uBAAuB;GACvB,uBAAuB;EACxB;CACF;CACD,YAAY;EACV,QAAQ;GACN,WAAW;GACX,gBAAgB;GAChB,sBAAsB;GACtB,sBAAsB;EACvB;EACD,MAAM;GACJ,iCAAiC;GACjC,iCAAiC;GACjC,kBAAkB;GAClB,cAAc;GACd,8BAA8B;GAC9B,mCAAmC;GACnC,qBAAqB;GACrB,qBAAqB;GACrB,kBAAkB;GAClB,gBAAgB;GAChB,iBAAiB;GACjB,qBAAqB;EACtB;CACF;CACD,eAAe,CACb,4CACD;CACD,WAAW,EACT,eAAe;EACb,aAAa;EACb,aAAa;EACb,OAAO;EACP,eAAe;EACf,UAAU;CACX,EACF;CACD,aAAa;EACX,aAAa;EACb,YAAY;CACb;AACF;gBACW;CACV,WAAW;CACX,kBAAkB;EAChB,oBAAoB;EACpB,eAAe;EACf,aAAa;CACd;CACD,aAAa;EACX,QAAQ;GACN,2BAA2B;GAC3B,WAAW;GACX,cAAc;GACd,kBAAkB;GAClB,wCAAwC;EACzC;EACD,UAAU;GACR,gBAAgB;GAChB,gBAAgB;EACjB;EACD,YAAY;GACV,uBAAuB;GACvB,uBAAuB;EACxB;EACD,kBAAkB;GAChB,uBAAuB;GACvB,uBAAuB;EACxB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"}
1
+ {"version":3,"file":"deployments.js","names":["chainDeploymentsData","chainId: number","deployment: ChainDeployment","VAULT_DISPLAY_NAMES_PER_CHAIN: Record<number, Record<Address, string>>","VAULT_DISPLAY_NAME_RESOLVERS_PER_CHAIN: Record<\n number,\n Record<Address, VaultDisplayNameResolver>\n>"],"sources":["../../deployments/src/chainDeployments.data.json","../../deployments/src/chainDeployments.ts","../../deployments/src/vaultDisplayNames.ts"],"sourcesContent":["{\n \"1\": {\n \"chainId\": 1,\n \"infrastructure\": {\n \"uniswapV3Factory\": \"0x1F98431c8aD98523631AE4a59f267346ea31F984\",\n \"poolManager\": \"0x000000000004444c5dc75cB358380D2e3dE08A90\",\n \"stateView\": \"0x7ffe42c4a5deea5b0fec41c94c136cf115597227\"\n },\n \"hypovault\": {\n \"core\": {\n \"hypoVaultImplementation\": \"0xF16714665955DBd0361D997eFc50fe391D96E8D0\",\n \"factory\": \"0xd5049B2647de57141dE7F65E5124707B99A452A3\",\n \"accountant\": \"0x65aA902AE3135658587FFC36ED51B61c927114e1\",\n \"rolesAuthority\": \"0xb952D345c413Ddb7850173422bAe4968e0330598\",\n \"collateralTrackerDecoderAndSanitizer\": \"0xC87c45d2dbE5acb56013e2591427ECC84Fa251E6\"\n },\n \"vaults\": {\n \"wethPlpVault\": \"0xd4e2c720a760049cc4151bcf61e3a9348db9cd92\",\n \"usdcPlpVault\": \"0x236d0558f06cd60780b232d4Ec4c92d2cb7e4D18\"\n },\n \"managers\": {\n \"wethPlpVaultManager\": \"0xB6Fc48e658C9B1a7dbdFA51A5E153ab60BB2e04d\",\n \"usdcPlpVaultManager\": \"0x2ce65016366ef7320078e0758D58Cf1038bc7C4e\"\n },\n \"turnkeySigners\": {\n \"wethPlpVaultManager\": \"0x8FfA6DAB99f8afc64F61BeF83F0966eD6362f24F\",\n \"usdcPlpVaultManager\": \"0x3c1c79d0cfc316Ba959194c89696a8382d7d283b\"\n }\n },\n \"panoptic\": {\n \"pool\": {\n \"version\": \"v4\",\n \"panopticPool\": \"0x00000000563b70d704f4c6675a5f6ac989fbae13\",\n \"collateralTracker0\": \"0x1e46b0289B7E0F710E2Db8Ab87800dd782D624f7\",\n \"collateralTracker1\": \"0x12bF31955522BAC337D93e1bC0a39F68D8BDa216\"\n },\n \"additionalPools\": {\n \"ethUsdc5bpsV3\": {\n \"version\": \"v3\",\n \"panopticPool\": \"0x00000000009C7B687e833559e34503f64d7ed7c4\",\n \"collateralTracker0\": \"0x3CCdA7d5E841d6543D90BcEc20b36a724C184DE9\",\n \"collateralTracker1\": \"0x69E9f9e44E5F52237493b980dd7306198C64A4E4\"\n }\n },\n \"v2\": {\n \"semiFungiblePositionManagerV4\": \"0x00000000000005C3287f136Ef5AF56c68Ea6849f\",\n \"semiFungiblePositionManagerV3\": \"0x00000000000005E4693aDc8Ec0f12D686f728198\",\n \"builderFactory\": \"0x0000000000000a3D22E158417AA639D7F71b0FF7\",\n \"riskEngine\": \"0x0000000000000E65545005B26207D7edFd031260\",\n \"panopticPoolImplementation\": \"0x000000000000135429F0DaCaB61639Bf6a63EbbC\",\n \"collateralTrackerImplementation\": \"0x0000000000001d9c38CA405A2e04420865A08A33\",\n \"panopticFactoryV4\": \"0x0000000000000c51d0f8cf4bd9adE7191372a625\",\n \"panopticFactoryV3\": \"0x0000000000000aDC9A108591e718F2aee963a2a7\",\n \"panopticHelper\": \"0x0000000000000000000000000000000000000000\",\n \"panopticMath\": \"0x000000000000334bbd65C195581cf59ECf315932\",\n \"panopticQuery\": \"0x0000000000000e1aE9c66C1c3B0A547D23389C93\",\n \"interactionHelper\": \"0x00000000000041fe14Ce3c2392337CE501aE8328\"\n }\n },\n \"riskEngines\": [\n \"0x000000000000075e29cdaa9cb640a69e148ca7da\",\n \"0x0000000000000fe1e261f66ce2f44def4f5ae0cb\",\n \"0x0000000000000e673aECBDB5f5fE5DFAf4a8e9Ac\",\n \"0x0000000000000E65545005B26207D7edFd031260\"\n ],\n \"markets\": {\n \"ethUsdc30bps\": {\n \"currency0\": \"0x0000000000000000000000000000000000000000\",\n \"currency1\": \"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48\",\n \"fee\": 3000,\n \"tickSpacing\": 60,\n \"poolId\": \"0x3C08AE4977F78D\"\n }\n },\n \"subgraphs\": {\n \"hypovault\": \"https://api.goldsky.com/api/public/project_cl9gc21q105380hxuh8ks53k3/subgraphs/hypovault-subgraph-mainnet/prod/gn\",\n \"panoptic\": \"https://api.goldsky.com/api/public/project_cl9gc21q105380hxuh8ks53k3/subgraphs/panoptic-subgraph-mainnet/v2_prod/gn\"\n },\n \"sfpmSwap\": {\n \"version\": \"v3\",\n \"sfpm\": \"0x00000000000005E4693aDc8Ec0f12D686f728198\",\n \"poolAddress\": \"0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640\",\n \"poolId\": \"2824133844976349\",\n \"fee\": 500,\n \"weth\": \"0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2\"\n }\n },\n \"4663\": {\n \"chainId\": 4663,\n \"infrastructure\": {\n \"uniswapV3Factory\": \"0x1f7d7550b1b028f7571e69a784071f0205fd2efa\",\n \"poolManager\": \"0x8366a39cc670b4001a1121b8f6a443a643e40951\",\n \"stateView\": \"0xf3334192d15450cdd385c8b70e03f9a6bd9e673b\"\n },\n \"hypovault\": {\n \"core\": {\n \"hypoVaultImplementation\": \"0xF16714665955DBd0361D997eFc50fe391D96E8D0\",\n \"factory\": \"0xd5049B2647de57141dE7F65E5124707B99A452A3\",\n \"accountant\": \"0x9e345d862c41010F87D8E5A279e8D320D2831D36\",\n \"rolesAuthority\": \"0xb952D345c413Ddb7850173422bAe4968e0330598\",\n \"collateralTrackerDecoderAndSanitizer\": \"0xC87c45d2dbE5acb56013e2591427ECC84Fa251E6\"\n },\n \"vaults\": {\n \"wethPlpVault\": \"0x0000000000000000000000000000000000000000\",\n \"usdcPlpVault\": \"0x0000000000000000000000000000000000000000\",\n \"usdgPlpVault\": \"0x08B24123252Bd9c4DD473b6573D4cF67196FFC4B\"\n },\n \"managers\": {\n \"wethPlpVaultManager\": \"0x0000000000000000000000000000000000000000\",\n \"usdcPlpVaultManager\": \"0x0000000000000000000000000000000000000000\",\n \"usdgPlpVaultManager\": \"0x67Edb096585efe88a9A1ee16c5857AB74Fc8EA87\"\n },\n \"turnkeySigners\": {\n \"wethPlpVaultManager\": \"0x0000000000000000000000000000000000000000\",\n \"usdcPlpVaultManager\": \"0x0000000000000000000000000000000000000000\",\n \"usdgPlpVaultManager\": \"0x8FfA6DAB99f8afc64F61BeF83F0966eD6362f24F\"\n }\n },\n \"panoptic\": {\n \"pool\": {\n \"version\": \"v4\",\n \"panopticPool\": \"0x00000000989bcb6f24af4a1Ab2A6d6a31c98A58E\",\n \"collateralTracker0\": \"0x49eaAC32A7CD4B8fB2209a12859a95E0b20aB0e5\",\n \"collateralTracker1\": \"0x670C44a0FC35dbC410498e47A6290a1C3196d191\"\n },\n \"v2\": {\n \"semiFungiblePositionManagerV4\": \"0x00000000000005C3287f136Ef5AF56c68Ea6849f\",\n \"semiFungiblePositionManagerV3\": \"0x00000000000005E4693aDc8Ec0f12D686f728198\",\n \"builderFactory\": \"0x0000000000000a3D22E158417AA639D7F71b0FF7\",\n \"riskEngine\": \"0x0000000000000E65545005B26207D7edFd031260\",\n \"panopticPoolImplementation\": \"0x000000000000135429F0DaCaB61639Bf6a63EbbC\",\n \"collateralTrackerImplementation\": \"0x0000000000001d9c38CA405A2e04420865A08A33\",\n \"panopticFactoryV4\": \"0x0000000000000c51d0f8cf4bd9adE7191372a625\",\n \"panopticFactoryV3\": \"0x0000000000000aDC9A108591e718F2aee963a2a7\",\n \"panopticHelper\": \"0x0000000000000000000000000000000000000000\",\n \"panopticMath\": \"0x000000000000334bbd65C195581cf59ECf315932\",\n \"panopticQuery\": \"0x0000000000000e1aE9c66C1c3B0A547D23389C93\",\n \"interactionHelper\": \"0x00000000000041fe14Ce3c2392337CE501aE8328\"\n }\n },\n \"riskEngines\": [\n \"0x0000000000000E65545005B26207D7edFd031260\",\n \"0x0000000000000fe1e261f66ce2f44def4f5ae0cb\"\n ],\n \"markets\": {\n \"spyUsdg\": {\n \"currency0\": \"0x117cc2133c37B721F49dE2A7a74833232B3B4C0C\",\n \"currency1\": \"0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168\",\n \"fee\": 3000,\n \"tickSpacing\": 60,\n \"poolId\": \"0xfe2a80bb5618fd14984b92ca6d45bf5ba67443ddb1435e28b2e48df2fc1526cd\"\n }\n },\n \"subgraphs\": {\n \"hypovault\": \"https://api.goldsky.com/api/public/project_cl9gc21q105380hxuh8ks53k3/subgraphs/hypovault-subgraph-robinhood/prod/gn\",\n \"panoptic\": \"https://api.goldsky.com/api/public/project_cl9gc21q105380hxuh8ks53k3/subgraphs/panoptic-subgraph-robinhood/v2_prod/gn\"\n }\n },\n \"8453\": {\n \"chainId\": 8453,\n \"infrastructure\": {\n \"uniswapV3Factory\": \"0x33128a8fC17869897dcE68Ed026d694621f6FDfD\",\n \"poolManager\": \"0x498581fF718922c3f8e6A244956aF099B2652b2b\",\n \"stateView\": \"0xA3c0c9b65baD0b08107Aa264b0f3dB444b867A71\"\n },\n \"hypovault\": {\n \"core\": {\n \"hypoVaultImplementation\": \"0xec311aE06486ad44Ba782133b502A34aCE0f479E\",\n \"factory\": \"0x9bE53b169a41030f1710A9B82e9eA6413f14D12E\",\n \"accountant\": \"0x345cA3407942f9d175c9eA8B90e83A36F570f852\",\n \"rolesAuthority\": \"0x278D37CaBFFB4B72D2866E30fEFE08aef773E0B6\",\n \"collateralTrackerDecoderAndSanitizer\": \"0x4A290b3EC46cF320421Bb2aaee96d445de31CF0b\"\n },\n \"vaults\": {\n \"wethPlpVault\": \"0x41b7D0515d709A4Fd2CF27f9d141D0c2F8713D04\",\n \"usdcPlpVault\": \"0xb452af299c565D04B05E601efF2840e000C922f1\"\n },\n \"managers\": {\n \"wethPlpVaultManager\": \"0x2a4923456c79E9ebD10F5Bf5305a5C742bBc1D7C\",\n \"usdcPlpVaultManager\": \"0xdd6E2406a044582463CFE9F0C774870eAf4A310B\"\n },\n \"turnkeySigners\": {\n \"wethPlpVaultManager\": \"0x8FfA6DAB99f8afc64F61BeF83F0966eD6362f24F\",\n \"usdcPlpVaultManager\": \"0x3c1c79d0cfc316Ba959194c89696a8382d7d283b\"\n }\n },\n \"panoptic\": {\n \"pool\": {\n \"version\": \"v4\",\n \"panopticPool\": \"0xB50e8bb68f5855DA742f4579274902a20454174a\",\n \"collateralTracker0\": \"0x0d82b189c96EbB1f44A7207e6A9cfB1e490f2869\",\n \"collateralTracker1\": \"0x9ba1082Ab3cb9edEA988697A14BBe543A3dABEd2\"\n },\n \"v2\": {\n \"semiFungiblePositionManagerV4\": \"0x8dcAa08cF298F8b4830FAf56d47930981AdE33af\",\n \"semiFungiblePositionManagerV3\": \"0xFB1c06B491305d618bb8a7a368C6e50c001C153A\",\n \"builderFactory\": \"0x6d26E916a18d522f7DdA2a26d9E1645564ccDcA5\",\n \"riskEngine\": \"0x8bbce8b1eb64118cfe6c1eab0afe13b80ea41481\",\n \"panopticPoolImplementation\": \"0x5BA68a018fF149c38ec52D181Dd24aBabE9a07DB\",\n \"collateralTrackerImplementation\": \"0x34B3a4e4F14f292575ECe3EF67886C4598af459f\",\n \"panopticFactoryV4\": \"0x9ac0317fcd124aff0b5429beb8de17020bc45f9a\",\n \"panopticFactoryV3\": \"0x687f616d68c483a7223e6922f59aef7452e26c1d\",\n \"panopticHelper\": \"0x0000000000000000000000000000000000000000\",\n \"panopticMath\": \"0x6d21699192f5aF112C87e53b32ff846782afF407\",\n \"panopticQuery\": \"0xd2586E1bbdd1169F597F3A370117EdF7372A7350\",\n \"interactionHelper\": \"0x643d8DD5372FD6c71f8fAbCce4Eb8857704F3E15\"\n }\n },\n \"riskEngines\": [\n \"0x8bbce8b1eb64118cfe6c1eab0afe13b80ea41481\"\n ],\n \"markets\": {\n \"ethUsdc5bps\": {\n \"currency0\": \"0x0000000000000000000000000000000000000000\",\n \"currency1\": \"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913\",\n \"fee\": 500,\n \"tickSpacing\": 10,\n \"poolId\": \"0x96d4b53a38337a5733179751781178a2613306063c511b78cd02684739288c0a\"\n }\n },\n \"subgraphs\": {\n \"hypovault\": \"https://api.goldsky.com/api/public/project_cl9gc21q105380hxuh8ks53k3/subgraphs/hypovault-subgraph-base/prod/gn\",\n \"panoptic\": \"https://api.goldsky.com/api/public/project_cl9gc21q105380hxuh8ks53k3/subgraphs/panoptic-subgraph-base/v2_prod/gn\"\n }\n },\n \"11155111\": {\n \"chainId\": 11155111,\n \"infrastructure\": {\n \"uniswapV3Factory\": \"0x0227628f3F023bb0B980b67D528571c95c6DaC1c\",\n \"poolManager\": \"0xE03A1074c86CFeDd5C142C4F04F1a1536e203543\",\n \"stateView\": \"0xE1Dd9c3fA50EDB962E442f60DfBc432e24537E4C\"\n },\n \"hypovault\": {\n \"core\": {\n \"hypoVaultImplementation\": \"0xC5b415Db4087228Af817893769DC3a205160160B\",\n \"factory\": \"0x363a9d605ca45cBfF3b597350DeADb53cdC292c7\",\n \"accountant\": \"0x25BBef1DF262c24aa1AACD1F7eCeEcc1a7AD08ab\",\n \"rolesAuthority\": \"0x673BfafB4e2712215B422347c1571421B83E8A3d\",\n \"collateralTrackerDecoderAndSanitizer\": \"0xb899BE50BAF25BBB3A3ca3403256B3c703E5AB5d\"\n },\n \"vaults\": {\n \"wethPlpVault\": \"0xD58C4F9AEe5bBfcf28dC9a8d3D57b323fA6521b1\",\n \"usdcPlpVault\": \"0xdd7a8d6c6975488e801129bC84302d74e2361208\"\n },\n \"managers\": {\n \"wethPlpVaultManager\": \"0x95eC124FAAB70D7aE147c3BE0336E01a828AE2d5\",\n \"usdcPlpVaultManager\": \"0xFB5aa3e0b46F3859D90B14b52ffd287013b5Ec53\"\n },\n \"turnkeySigners\": {\n \"wethPlpVaultManager\": \"0x8FfA6DAB99f8afc64F61BeF83F0966eD6362f24F\",\n \"usdcPlpVaultManager\": \"0x3c1c79d0cfc316Ba959194c89696a8382d7d283b\"\n }\n },\n \"panoptic\": {\n \"pool\": {\n \"version\": \"v4\",\n \"panopticPool\": \"0x872b98C46b2062F663BEb2CC9D4cE046Da2a2918\",\n \"collateralTracker0\": \"0x09a60b78d06a03e5148faedd3bfee6f58b22012f\",\n \"collateralTracker1\": \"0x7365664c8101ff7e9422ae2b203822253c31e69c\"\n },\n \"v2\": {\n \"semiFungiblePositionManagerV3\": \"0x9DaD2C40107Db4B29a5450401BB7A28e6eA00e43\",\n \"semiFungiblePositionManagerV4\": \"0xD2615995A71644E122cC2FD7FeC2392b971220DE\",\n \"builderFactory\": \"0x55f3D2d9D065AA5Fcc11D94c55a6085849e8b6C3\",\n \"riskEngine\": \"0x1376aF5ca426B6B9fad6a712c21f6Cf58a94b93c\",\n \"panopticPoolImplementation\": \"0x969235B5830f13b58BB699305d9c70A8Cd3BD97C\",\n \"collateralTrackerImplementation\": \"0xafcd5F651Ae0403Ff668bb2dAc38BEa907a35Dba\",\n \"panopticFactoryV3\": \"0xd9FFCa53C0A6155001Ce8cbcAEfe89DB204690F1\",\n \"panopticFactoryV4\": \"0x8FCBb59b05779818D9BAD2686cc44B705603ce03\",\n \"panopticHelper\": \"0xfFEbB3A4ab793cB244209d4dA0Cb3e6B07133bd0\",\n \"panopticMath\": \"0x6d21699192f5aF112C87e53b32ff846782afF407\",\n \"panopticQuery\": \"0x74057945467Fb4eAE9193B46A60ae66a53f06A5b\",\n \"interactionHelper\": \"0x643d8DD5372FD6c71f8fAbCce4Eb8857704F3E15\"\n }\n },\n \"riskEngines\": [\n \"0x1376aF5ca426B6B9fad6a712c21f6Cf58a94b93c\"\n ],\n \"markets\": {\n \"ethUsdc5bps\": {\n \"currency0\": \"0x0000000000000000000000000000000000000000\",\n \"currency1\": \"0xFFFeD8254566B7F800f6D8CDb843ec75AE49B07A\",\n \"fee\": 500,\n \"tickSpacing\": 10,\n \"poolId\": \"0xba6673bcb27568a73a93dd23b20c8174fa16193cd90905be859144e8f13097a5\"\n }\n },\n \"subgraphs\": {\n \"hypovault\": \"https://api.goldsky.com/api/public/project_cl9gc21q105380hxuh8ks53k3/subgraphs/hypovault-subgraph-sepolia/prod/gn\",\n \"panoptic\": \"https://api.goldsky.com/api/public/project_cl9gc21q105380hxuh8ks53k3/subgraphs/panoptic-subgraph-sepolia/v2_prod/gn\"\n }\n }\n}\n","import type { Address, Hex } from 'viem'\n\nimport chainDeploymentsData from './chainDeployments.data.json'\n\nexport type HypoVaultCoreAddresses = {\n hypoVaultImplementation: Address\n factory: Address\n accountant: Address\n rolesAuthority: Address\n collateralTrackerDecoderAndSanitizer: Address\n}\n\nexport type HypoVaultVaultAddresses = {\n wethPlpVault: Address\n usdcPlpVault: Address\n usdgPlpVault?: Address\n}\n\nexport type HypoVaultManagerAddresses = {\n wethPlpVaultManager: Address\n usdcPlpVaultManager: Address\n usdgPlpVaultManager?: Address\n}\n\nexport type HypoVaultManagerTurnkeySigners = {\n wethPlpVaultManager: Address\n usdcPlpVaultManager: Address\n usdgPlpVaultManager?: Address\n}\n\nexport type PanopticPoolAddresses = {\n version: 'v3' | 'v4'\n panopticPool: Address\n collateralTracker0: Address\n collateralTracker1: Address\n}\n\nexport type PanopticV2Addresses = {\n semiFungiblePositionManagerV3: Address\n semiFungiblePositionManagerV4: Address\n builderFactory: Address\n riskEngine: Address\n panopticPoolImplementation: Address\n collateralTrackerImplementation: Address\n panopticFactoryV3: Address\n panopticFactoryV4: Address\n panopticHelper: Address\n panopticMath: Address\n panopticQuery: Address\n interactionHelper: Address\n}\n\nexport type EthUsdc5BpsMarket = {\n currency0: Address\n currency1: Address\n fee: number\n tickSpacing: number\n poolId: Hex\n}\n\nexport type SpyUsdgMarket = EthUsdc5BpsMarket\n\nexport type InfrastructureAddresses = {\n uniswapV3Factory: Address\n poolManager: Address\n stateView: Address\n}\n\n/**\n * The off-venue swap venue: a cheaper Uniswap pool the hedger routes its\n * hedge-netting swap through via the SemiFungiblePositionManager, instead of the\n * options pool's own (pricier) pool. `sfpm` is the SFPM the pool is registered on\n * and `poolId` is its registered uint64 id. `weth` bridges native-ETH collateral\n * (the v3 pool trades WETH).\n */\nexport type SfpmSwapMarket = {\n version: 'v3' | 'v4'\n sfpm: Address\n poolAddress: Address\n poolId: string\n fee: number\n weth: Address\n}\n\nexport type ChainDeployment = {\n chainId: number\n infrastructure: InfrastructureAddresses\n hypovault: {\n core: HypoVaultCoreAddresses\n vaults: HypoVaultVaultAddresses\n managers: HypoVaultManagerAddresses\n turnkeySigners: HypoVaultManagerTurnkeySigners\n }\n panoptic: {\n pool: PanopticPoolAddresses\n additionalPools?: Readonly<\n Record<string, PanopticPoolAddresses> & {\n ethUsdc5bpsV3?: PanopticPoolAddresses\n }\n >\n v2: PanopticV2Addresses\n }\n // Keep this whitelist current as new RiskEngines are deployed, otherwise UI subgraph queries\n // that filter by risk engine will stop surfacing markets for the new deployments.\n riskEngines: Address[]\n markets: {\n ethUsdc5bps?: EthUsdc5BpsMarket\n ethUsdc30bps?: EthUsdc5BpsMarket\n spyUsdg?: SpyUsdgMarket\n }\n /** Off-venue SFPM swap venue for the hedger (optional; absent = feature unavailable). */\n sfpmSwap?: SfpmSwapMarket\n subgraphs: {\n hypovault: string\n panoptic?: string\n }\n}\n\nexport const MAINNET_CHAIN_ID = 1\nexport const SEPOLIA_CHAIN_ID = 11155111\nexport const BASE_CHAIN_ID = 8453\nexport const ROBINHOOD_CHAIN_ID = 4663\n\nexport const CHAIN_DEPLOYMENTS = chainDeploymentsData as Readonly<Record<number, ChainDeployment>>\n\nexport function getChainDeployment(chainId: number): ChainDeployment | undefined {\n return CHAIN_DEPLOYMENTS[chainId]\n}\n\nexport function requireChainDeployment(chainId: number): ChainDeployment {\n const deployment = getChainDeployment(chainId)\n if (deployment === undefined) {\n throw new Error(`Unsupported chain deployment for chainId ${chainId}`)\n }\n return deployment\n}\n\nexport function isSupportedChain(chainId: number): boolean {\n return getChainDeployment(chainId) !== undefined\n}\n\nexport function getEthUsdcMarket(deployment: ChainDeployment): EthUsdc5BpsMarket {\n const market = deployment.markets.ethUsdc5bps ?? deployment.markets.ethUsdc30bps\n if (market === undefined) {\n throw new Error(`Missing ETH/USDC market for chainId ${deployment.chainId}`)\n }\n return market\n}\n\nexport function getSpyUsdgMarket(deployment: ChainDeployment): SpyUsdgMarket {\n const market = deployment.markets.spyUsdg\n if (market === undefined) {\n throw new Error(`Missing SPY/USDG market for chainId ${deployment.chainId}`)\n }\n return market\n}\n\n\n/** The off-venue SFPM swap venue for a chain, or undefined if not configured. */\nexport function getSfpmSwapMarket(deployment: ChainDeployment): SfpmSwapMarket | undefined {\n return deployment.sfpmSwap\n}\n\nexport const MAINNET_DEPLOYMENT = CHAIN_DEPLOYMENTS[MAINNET_CHAIN_ID]\nexport const MAINNET_ETH_USDC_5BPS_V3_PANOPTIC_POOL_ADDRESSES =\n MAINNET_DEPLOYMENT.panoptic.additionalPools?.ethUsdc5bpsV3\nexport const MAINNET_PANOPTIC_V2_ADDRESSES = MAINNET_DEPLOYMENT.panoptic.v2\nexport const SEPOLIA_DEPLOYMENT = CHAIN_DEPLOYMENTS[SEPOLIA_CHAIN_ID]\nexport const SEPOLIA_HYPOVAULT_CORE_ADDRESSES = SEPOLIA_DEPLOYMENT.hypovault.core\nexport const SEPOLIA_HYPOVAULT_ADDRESSES = SEPOLIA_DEPLOYMENT.hypovault.vaults\nexport const SEPOLIA_HYPOVAULT_MANAGER_ADDRESSES = SEPOLIA_DEPLOYMENT.hypovault.managers\nexport const SEPOLIA_HYPOVAULT_MANAGER_TURNKEY_SIGNERS = SEPOLIA_DEPLOYMENT.hypovault.turnkeySigners\nexport const SEPOLIA_PANOPTIC_POOL_ADDRESSES = SEPOLIA_DEPLOYMENT.panoptic.pool\nexport const SEPOLIA_PANOPTIC_V2_ADDRESSES = SEPOLIA_DEPLOYMENT.panoptic.v2\nexport const BASE_DEPLOYMENT = CHAIN_DEPLOYMENTS[BASE_CHAIN_ID]\nexport const BASE_HYPOVAULT_CORE_ADDRESSES = BASE_DEPLOYMENT.hypovault.core\nexport const BASE_HYPOVAULT_ADDRESSES = BASE_DEPLOYMENT.hypovault.vaults\nexport const BASE_HYPOVAULT_MANAGER_ADDRESSES = BASE_DEPLOYMENT.hypovault.managers\nexport const BASE_HYPOVAULT_MANAGER_TURNKEY_SIGNERS = BASE_DEPLOYMENT.hypovault.turnkeySigners\nexport const BASE_PANOPTIC_POOL_ADDRESSES = BASE_DEPLOYMENT.panoptic.pool\nexport const BASE_PANOPTIC_V2_ADDRESSES = BASE_DEPLOYMENT.panoptic.v2\nexport const BASE_ETH_USDC_5BPS_MARKET = getEthUsdcMarket(BASE_DEPLOYMENT)\nexport const SEPOLIA_ETH_USDC_5BPS_MARKET = getEthUsdcMarket(SEPOLIA_DEPLOYMENT)\n\nexport const MAINNET_RISK_ENGINES = MAINNET_DEPLOYMENT.riskEngines\nexport const BASE_RISK_ENGINES = BASE_DEPLOYMENT.riskEngines\nexport const SEPOLIA_RISK_ENGINES = SEPOLIA_DEPLOYMENT.riskEngines\n\nexport const ROBINHOOD_DEPLOYMENT = CHAIN_DEPLOYMENTS[ROBINHOOD_CHAIN_ID]\nexport const ROBINHOOD_HYPOVAULT_CORE_ADDRESSES = ROBINHOOD_DEPLOYMENT.hypovault.core\nexport const ROBINHOOD_HYPOVAULT_ADDRESSES = ROBINHOOD_DEPLOYMENT.hypovault.vaults\nexport const ROBINHOOD_HYPOVAULT_MANAGER_ADDRESSES = ROBINHOOD_DEPLOYMENT.hypovault.managers\nexport const ROBINHOOD_HYPOVAULT_MANAGER_TURNKEY_SIGNERS = ROBINHOOD_DEPLOYMENT.hypovault.turnkeySigners\nexport const ROBINHOOD_PANOPTIC_POOL_ADDRESSES = ROBINHOOD_DEPLOYMENT.panoptic.pool\nexport const ROBINHOOD_PANOPTIC_V2_ADDRESSES = ROBINHOOD_DEPLOYMENT.panoptic.v2\nexport const ROBINHOOD_RISK_ENGINES = ROBINHOOD_DEPLOYMENT.riskEngines\nexport const ROBINHOOD_SPY_USDG_MARKET = getSpyUsdgMarket(ROBINHOOD_DEPLOYMENT)\n","import type { Address } from 'viem'\n\nimport {\n BASE_CHAIN_ID,\n MAINNET_CHAIN_ID,\n requireChainDeployment,\n ROBINHOOD_CHAIN_ID,\n SEPOLIA_CHAIN_ID,\n} from './chainDeployments'\n\nconst mainnetDeployment = requireChainDeployment(MAINNET_CHAIN_ID)\nconst mainnetVaults = mainnetDeployment.hypovault.vaults\nconst legacyMainnetVaults = {\n wethPlpVault: '0x779a2aa634A004b3a3f3b322083744869BBC6D66',\n usdcPlpVault: '0x963Fe9c93bc353602656ee4051A75114bA74d6c5',\n} as const satisfies Record<string, Address>\nconst sepoliaDeployment = requireChainDeployment(SEPOLIA_CHAIN_ID)\nconst sepoliaVaults = sepoliaDeployment.hypovault.vaults\nconst baseDeployment = requireChainDeployment(BASE_CHAIN_ID)\nconst baseVaults = baseDeployment.hypovault.vaults\nconst robinhoodDeployment = requireChainDeployment(ROBINHOOD_CHAIN_ID)\nconst robinhoodUsdgVault = robinhoodDeployment.hypovault.vaults.usdgPlpVault\n\nif (robinhoodUsdgVault === undefined) {\n throw new Error('Missing Robinhood USDG PLP vault address')\n}\n\nexport type VaultDisplayNameResolverInput = {\n chainId: number\n vaultAddress: string\n underlyingSymbol?: string | null\n fallbackName?: string | null\n}\n\nexport type VaultDisplayNameResolver = (input: VaultDisplayNameResolverInput) => string\n\nexport const VAULT_DISPLAY_NAMES_PER_CHAIN: Record<number, Record<Address, string>> = {\n [MAINNET_CHAIN_ID]: {\n [mainnetVaults.wethPlpVault.toLowerCase() as Address]: 'PLP Vault',\n [mainnetVaults.usdcPlpVault.toLowerCase() as Address]: 'Unicorn Vault',\n [legacyMainnetVaults.wethPlpVault.toLowerCase() as Address]: 'PLP Vault',\n [legacyMainnetVaults.usdcPlpVault.toLowerCase() as Address]: 'Unicorn Vault',\n },\n [BASE_CHAIN_ID]: {\n [baseVaults.wethPlpVault.toLowerCase() as Address]: 'PLP Vault',\n [baseVaults.usdcPlpVault.toLowerCase() as Address]: 'Unicorn Vault',\n },\n [SEPOLIA_CHAIN_ID]: {\n [sepoliaVaults.wethPlpVault.toLowerCase() as Address]: 'PLP Vault',\n [sepoliaVaults.usdcPlpVault.toLowerCase() as Address]: 'Unicorn Vault',\n },\n [ROBINHOOD_CHAIN_ID]: {\n [robinhoodUsdgVault.toLowerCase() as Address]: 'USDG PLP Vault',\n },\n}\n\nexport const VAULT_DISPLAY_NAME_RESOLVERS_PER_CHAIN: Record<\n number,\n Record<Address, VaultDisplayNameResolver>\n> = {\n [MAINNET_CHAIN_ID]: {\n [mainnetVaults.wethPlpVault.toLowerCase() as Address]: () => 'PLP Vault',\n [mainnetVaults.usdcPlpVault.toLowerCase() as Address]: () => 'Unicorn Vault',\n [legacyMainnetVaults.wethPlpVault.toLowerCase() as Address]: () => 'PLP Vault',\n [legacyMainnetVaults.usdcPlpVault.toLowerCase() as Address]: () => 'Unicorn Vault',\n },\n [BASE_CHAIN_ID]: {\n [baseVaults.wethPlpVault.toLowerCase() as Address]: () => 'PLP Vault',\n [baseVaults.usdcPlpVault.toLowerCase() as Address]: () => 'Unicorn Vault',\n },\n [SEPOLIA_CHAIN_ID]: {\n [sepoliaVaults.wethPlpVault.toLowerCase() as Address]: () => 'PLP Vault',\n [sepoliaVaults.usdcPlpVault.toLowerCase() as Address]: () => 'Unicorn Vault',\n },\n [ROBINHOOD_CHAIN_ID]: {\n [robinhoodUsdgVault.toLowerCase() as Address]: () => 'USDG PLP Vault',\n },\n}\n\nexport function resolveVaultDisplayName({\n chainId,\n vaultAddress,\n underlyingSymbol,\n fallbackName,\n}: VaultDisplayNameResolverInput): string {\n const vaultAddressLower = vaultAddress.toLowerCase() as Address\n const resolver = VAULT_DISPLAY_NAME_RESOLVERS_PER_CHAIN[chainId]?.[vaultAddressLower]\n if (resolver !== undefined) {\n return resolver({\n chainId,\n vaultAddress: vaultAddressLower,\n underlyingSymbol,\n fallbackName,\n })\n }\n\n const staticName = VAULT_DISPLAY_NAMES_PER_CHAIN[chainId]?.[vaultAddressLower]\n if (staticName !== undefined) {\n return staticName\n }\n\n if (fallbackName !== undefined && fallbackName !== null) {\n return fallbackName\n }\n\n return 'Vault'\n}\n"],"mappings":";SACO;CACH,WAAW;CACX,kBAAkB;EAChB,oBAAoB;EACpB,eAAe;EACf,aAAa;CACd;CACD,aAAa;EACX,QAAQ;GACN,2BAA2B;GAC3B,WAAW;GACX,cAAc;GACd,kBAAkB;GAClB,wCAAwC;EACzC;EACD,UAAU;GACR,gBAAgB;GAChB,gBAAgB;EACjB;EACD,YAAY;GACV,uBAAuB;GACvB,uBAAuB;EACxB;EACD,kBAAkB;GAChB,uBAAuB;GACvB,uBAAuB;EACxB;CACF;CACD,YAAY;EACV,QAAQ;GACN,WAAW;GACX,gBAAgB;GAChB,sBAAsB;GACtB,sBAAsB;EACvB;EACD,mBAAmB,EACjB,iBAAiB;GACf,WAAW;GACX,gBAAgB;GAChB,sBAAsB;GACtB,sBAAsB;EACvB,EACF;EACD,MAAM;GACJ,iCAAiC;GACjC,iCAAiC;GACjC,kBAAkB;GAClB,cAAc;GACd,8BAA8B;GAC9B,mCAAmC;GACnC,qBAAqB;GACrB,qBAAqB;GACrB,kBAAkB;GAClB,gBAAgB;GAChB,iBAAiB;GACjB,qBAAqB;EACtB;CACF;CACD,eAAe;EACb;EACA;EACA;EACA;CACD;CACD,WAAW,EACT,gBAAgB;EACd,aAAa;EACb,aAAa;EACb,OAAO;EACP,eAAe;EACf,UAAU;CACX,EACF;CACD,aAAa;EACX,aAAa;EACb,YAAY;CACb;CACD,YAAY;EACV,WAAW;EACX,QAAQ;EACR,eAAe;EACf,UAAU;EACV,OAAO;EACP,QAAQ;CACT;AACF;YACO;CACN,WAAW;CACX,kBAAkB;EAChB,oBAAoB;EACpB,eAAe;EACf,aAAa;CACd;CACD,aAAa;EACX,QAAQ;GACN,2BAA2B;GAC3B,WAAW;GACX,cAAc;GACd,kBAAkB;GAClB,wCAAwC;EACzC;EACD,UAAU;GACR,gBAAgB;GAChB,gBAAgB;GAChB,gBAAgB;EACjB;EACD,YAAY;GACV,uBAAuB;GACvB,uBAAuB;GACvB,uBAAuB;EACxB;EACD,kBAAkB;GAChB,uBAAuB;GACvB,uBAAuB;GACvB,uBAAuB;EACxB;CACF;CACD,YAAY;EACV,QAAQ;GACN,WAAW;GACX,gBAAgB;GAChB,sBAAsB;GACtB,sBAAsB;EACvB;EACD,MAAM;GACJ,iCAAiC;GACjC,iCAAiC;GACjC,kBAAkB;GAClB,cAAc;GACd,8BAA8B;GAC9B,mCAAmC;GACnC,qBAAqB;GACrB,qBAAqB;GACrB,kBAAkB;GAClB,gBAAgB;GAChB,iBAAiB;GACjB,qBAAqB;EACtB;CACF;CACD,eAAe,CACb,8CACA,4CACD;CACD,WAAW,EACT,WAAW;EACT,aAAa;EACb,aAAa;EACb,OAAO;EACP,eAAe;EACf,UAAU;CACX,EACF;CACD,aAAa;EACX,aAAa;EACb,YAAY;CACb;AACF;YACO;CACN,WAAW;CACX,kBAAkB;EAChB,oBAAoB;EACpB,eAAe;EACf,aAAa;CACd;CACD,aAAa;EACX,QAAQ;GACN,2BAA2B;GAC3B,WAAW;GACX,cAAc;GACd,kBAAkB;GAClB,wCAAwC;EACzC;EACD,UAAU;GACR,gBAAgB;GAChB,gBAAgB;EACjB;EACD,YAAY;GACV,uBAAuB;GACvB,uBAAuB;EACxB;EACD,kBAAkB;GAChB,uBAAuB;GACvB,uBAAuB;EACxB;CACF;CACD,YAAY;EACV,QAAQ;GACN,WAAW;GACX,gBAAgB;GAChB,sBAAsB;GACtB,sBAAsB;EACvB;EACD,MAAM;GACJ,iCAAiC;GACjC,iCAAiC;GACjC,kBAAkB;GAClB,cAAc;GACd,8BAA8B;GAC9B,mCAAmC;GACnC,qBAAqB;GACrB,qBAAqB;GACrB,kBAAkB;GAClB,gBAAgB;GAChB,iBAAiB;GACjB,qBAAqB;EACtB;CACF;CACD,eAAe,CACb,4CACD;CACD,WAAW,EACT,eAAe;EACb,aAAa;EACb,aAAa;EACb,OAAO;EACP,eAAe;EACf,UAAU;CACX,EACF;CACD,aAAa;EACX,aAAa;EACb,YAAY;CACb;AACF;gBACW;CACV,WAAW;CACX,kBAAkB;EAChB,oBAAoB;EACpB,eAAe;EACf,aAAa;CACd;CACD,aAAa;EACX,QAAQ;GACN,2BAA2B;GAC3B,WAAW;GACX,cAAc;GACd,kBAAkB;GAClB,wCAAwC;EACzC;EACD,UAAU;GACR,gBAAgB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"}