@panoptic-eng/sdk 1.0.37 → 1.0.39

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/dist/cow/index.d.ts +804 -6
  2. package/dist/cow/index.d.ts.map +1 -0
  3. package/dist/cow/index.js +5268 -5
  4. package/dist/cow/index.js.map +1 -0
  5. package/dist/{cow-aX6of9TS.js → cow-tRUtAUZy.js} +2 -3
  6. package/dist/deployments.d.ts +3 -2
  7. package/dist/deployments.d.ts.map +1 -1
  8. package/dist/deployments.js +4 -0
  9. package/dist/deployments.js.map +1 -1
  10. package/dist/{position-C8rkkKhi.js → getTrackedPositionIds-ms3W9dYB.js} +1085 -34
  11. package/dist/greeks-GysWXct-.js +1 -2
  12. package/dist/index.d.ts +5907 -39
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +12192 -2117
  15. package/dist/index.js.map +1 -1
  16. package/dist/{irm-DnM96-X4.js → irm-SPC2KxLA.js} +6 -3
  17. package/dist/panoptic/v2/greeks/index.d.ts +277 -3
  18. package/dist/panoptic/v2/greeks/index.d.ts.map +1 -0
  19. package/dist/panoptic/v2/greeks/index.js +620 -2
  20. package/dist/panoptic/v2/greeks/index.js.map +1 -0
  21. package/dist/panoptic/v2/index.d.ts +14633 -8
  22. package/dist/panoptic/v2/index.d.ts.map +1 -0
  23. package/dist/panoptic/v2/index.js +27875 -8
  24. package/dist/panoptic/v2/index.js.map +1 -0
  25. package/dist/panoptic/v2/react-public.d.ts +14797 -17
  26. package/dist/panoptic/v2/react-public.d.ts.map +1 -1
  27. package/dist/panoptic/v2/react-public.js +29503 -89
  28. package/dist/panoptic/v2/react-public.js.map +1 -1
  29. package/dist/{router-DcoU2KmV.js → router-BTfbaRfg.js} +2 -3
  30. package/dist/{router-CS86ptMu.js → router-mLWy0MD9.js} +3 -4
  31. package/dist/test/index.d.ts +1 -1
  32. package/dist/test/index.js +2 -2
  33. package/dist/transactionFees-C_Qx07mx.js +174 -0
  34. package/dist/uniswap/index.d.ts +813 -79
  35. package/dist/uniswap/index.d.ts.map +1 -1
  36. package/dist/uniswap/index.js +5884 -13
  37. package/dist/uniswap/index.js.map +1 -1
  38. package/dist/{v2-D0dEatKb.js → v2-DG7qG6di.js} +3266 -2675
  39. package/dist/vault-transaction-fees.d.ts +63 -0
  40. package/dist/vault-transaction-fees.d.ts.map +1 -0
  41. package/dist/vault-transaction-fees.js +175 -0
  42. package/dist/vault-transaction-fees.js.map +1 -0
  43. package/dist/{writes-AupZCK4M.js → writes-Xp9Wa8GQ.js} +325 -1292
  44. package/package.json +8 -3
  45. package/dist/cow/types.d.ts +0 -3
  46. package/dist/cow/types.js +0 -0
  47. package/dist/cow-aX6of9TS.js.map +0 -1
  48. package/dist/greeks-GysWXct-.js.map +0 -1
  49. package/dist/index-CURXeKNy.d.ts +0 -9706
  50. package/dist/index-CURXeKNy.d.ts.map +0 -1
  51. package/dist/index-Cp-nCeV2.d.ts +0 -276
  52. package/dist/index-Cp-nCeV2.d.ts.map +0 -1
  53. package/dist/index-Zvu-rJpV.d.ts +0 -261
  54. package/dist/index-Zvu-rJpV.d.ts.map +0 -1
  55. package/dist/irm-CmgC1Mqi.d.ts +0 -5694
  56. package/dist/irm-CmgC1Mqi.d.ts.map +0 -1
  57. package/dist/irm-DnM96-X4.js.map +0 -1
  58. package/dist/position-BqIgubs5.d.ts +0 -199
  59. package/dist/position-BqIgubs5.d.ts.map +0 -1
  60. package/dist/position-C8rkkKhi.js.map +0 -1
  61. package/dist/quote-BxQkPBRg.d.ts +0 -718
  62. package/dist/quote-BxQkPBRg.d.ts.map +0 -1
  63. package/dist/router-CS86ptMu.js.map +0 -1
  64. package/dist/router-DcoU2KmV.js.map +0 -1
  65. package/dist/simulation-zM6-YUaw.d.ts +0 -258
  66. package/dist/simulation-zM6-YUaw.d.ts.map +0 -1
  67. package/dist/tx-CbDQ58Io.d.ts +0 -367
  68. package/dist/tx-CbDQ58Io.d.ts.map +0 -1
  69. package/dist/types-BHdnurYr.d.ts +0 -128
  70. package/dist/types-BHdnurYr.d.ts.map +0 -1
  71. package/dist/types-D_jcYss-.d.ts +0 -248
  72. package/dist/types-D_jcYss-.d.ts.map +0 -1
  73. package/dist/v2-D0dEatKb.js.map +0 -1
  74. package/dist/writes-AupZCK4M.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { PanopticError, submitWrite } from "./position-C8rkkKhi.js";
1
+ import { PanopticError, submitWrite } from "./getTrackedPositionIds-ms3W9dYB.js";
2
2
  import { erc20Abi, getAddress, keccak256, maxUint256, stringToHex, zeroAddress } from "viem";
3
3
 
4
4
  //#region src/cow/addresses.ts
@@ -1401,5 +1401,4 @@ function isXstockWrapper(chainId, address) {
1401
1401
  }
1402
1402
 
1403
1403
  //#endregion
1404
- export { APP_DATA_DOC, APP_DATA_HASH, COW_API_URLS, COW_CANCELLATION_TYPES, COW_NATIVE_ETH, COW_ORDER_TYPES, COW_SETTLEMENT, COW_VAULT_RELAYER, CowApiError, CowNativeTokenError, CowOrderTooSmallError, CowUnsupportedChainError, DEFAULT_VALID_FOR_SECONDS, XSTOCK_WRAPPERS, approveErc20ForCow, cancelCowOrder, checkCowApproval, cowDomain, findCowToken, getCowOrderStatus, getXstockUnderlying, getXstockWrapper, isCowSupportedChain, isXstockUnderlying, isXstockWrapper, pickBestVenue, quoteCowSwap, signAndSubmitCowOrder };
1405
- //# sourceMappingURL=cow-aX6of9TS.js.map
1404
+ export { APP_DATA_DOC, APP_DATA_HASH, COW_API_URLS, COW_CANCELLATION_TYPES, COW_NATIVE_ETH, COW_ORDER_TYPES, COW_SETTLEMENT, COW_VAULT_RELAYER, CowApiError, CowNativeTokenError, CowOrderTooSmallError, CowUnsupportedChainError, DEFAULT_VALID_FOR_SECONDS, XSTOCK_WRAPPERS, approveErc20ForCow, cancelCowOrder, checkCowApproval, cowDomain, findCowToken, getCowOrderStatus, getXstockUnderlying, getXstockWrapper, isCowSupportedChain, isXstockUnderlying, isXstockWrapper, pickBestVenue, quoteCowSwap, signAndSubmitCowOrder };
@@ -21,6 +21,7 @@ type HypoVaultManagerTurnkeySigners = {
21
21
  usdcPlpVaultManager: Address;
22
22
  };
23
23
  type PanopticPoolAddresses = {
24
+ version: 'v3' | 'v4';
24
25
  panopticPool: Address;
25
26
  collateralTracker0: Address;
26
27
  collateralTracker1: Address;
@@ -78,9 +79,9 @@ type ChainDeployment = {
78
79
  };
79
80
  panoptic: {
80
81
  pool: PanopticPoolAddresses;
81
- additionalPools?: {
82
+ additionalPools?: Readonly<Record<string, PanopticPoolAddresses> & {
82
83
  ethUsdc5bpsV3?: PanopticPoolAddresses;
83
- };
84
+ }>;
84
85
  v2: PanopticV2Addresses;
85
86
  };
86
87
  riskEngines: Address[];
@@ -1 +1 @@
1
- {"version":3,"file":"deployments.d.ts","names":["Address","Hex","HypoVaultCoreAddresses","HypoVaultVaultAddresses","HypoVaultManagerAddresses","HypoVaultManagerTurnkeySigners","PanopticPoolAddresses","PanopticV2Addresses","EthUsdc5BpsMarket","InfrastructureAddresses","SfpmSwapMarket","ChainDeployment","MAINNET_CHAIN_ID","SEPOLIA_CHAIN_ID","BASE_CHAIN_ID","CHAIN_DEPLOYMENTS","Record","Readonly","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","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","InfrastructureAddresses","SfpmSwapMarket","ChainDeployment","Record","Readonly","MAINNET_CHAIN_ID","SEPOLIA_CHAIN_ID","BASE_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","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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"}
@@ -29,11 +29,13 @@ var _1 = {
29
29
  },
30
30
  "panoptic": {
31
31
  "pool": {
32
+ "version": "v4",
32
33
  "panopticPool": "0x00000000563b70d704f4c6675a5f6ac989fbae13",
33
34
  "collateralTracker0": "0x1e46b0289B7E0F710E2Db8Ab87800dd782D624f7",
34
35
  "collateralTracker1": "0x12bF31955522BAC337D93e1bC0a39F68D8BDa216"
35
36
  },
36
37
  "additionalPools": { "ethUsdc5bpsV3": {
38
+ "version": "v3",
37
39
  "panopticPool": "0x00000000009C7B687e833559e34503f64d7ed7c4",
38
40
  "collateralTracker0": "0x3CCdA7d5E841d6543D90BcEc20b36a724C184DE9",
39
41
  "collateralTracker1": "0x69E9f9e44E5F52237493b980dd7306198C64A4E4"
@@ -108,6 +110,7 @@ var _8453 = {
108
110
  },
109
111
  "panoptic": {
110
112
  "pool": {
113
+ "version": "v4",
111
114
  "panopticPool": "0xB50e8bb68f5855DA742f4579274902a20454174a",
112
115
  "collateralTracker0": "0x0d82b189c96EbB1f44A7207e6A9cfB1e490f2869",
113
116
  "collateralTracker1": "0x9ba1082Ab3cb9edEA988697A14BBe543A3dABEd2"
@@ -170,6 +173,7 @@ var _11155111 = {
170
173
  },
171
174
  "panoptic": {
172
175
  "pool": {
176
+ "version": "v4",
173
177
  "panopticPool": "0x872b98C46b2062F663BEb2CC9D4cE046Da2a2918",
174
178
  "collateralTracker0": "0x09a60b78d06a03e5148faedd3bfee6f58b22012f",
175
179
  "collateralTracker1": "0x7365664c8101ff7e9422ae2b203822253c31e69c"
@@ -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 \"panopticPool\": \"0x00000000563b70d704f4c6675a5f6ac989fbae13\",\n \"collateralTracker0\": \"0x1e46b0289B7E0F710E2Db8Ab87800dd782D624f7\",\n \"collateralTracker1\": \"0x12bF31955522BAC337D93e1bC0a39F68D8BDa216\"\n },\n \"additionalPools\": {\n \"ethUsdc5bpsV3\": {\n \"panopticPool\": \"0x00000000009C7B687e833559e34503f64d7ed7c4\",\n \"collateralTracker0\": \"0x3CCdA7d5E841d6543D90BcEc20b36a724C184DE9\",\n \"collateralTracker1\": \"0x69E9f9e44E5F52237493b980dd7306198C64A4E4\"\n }\n },\n \"v2\": {\n \"semiFungiblePositionManagerV4\": \"0x000000000000047534b9E1D528ED997169865a64\",\n \"semiFungiblePositionManagerV3\": \"0x000000000000031d296bBA22f188472157eEb01f\",\n \"builderFactory\": \"0x00000000000008D41F2cd5bF144F61cEB3661F98\",\n \"riskEngine\": \"0x0000000000000e673aECBDB5f5fE5DFAf4a8e9Ac\",\n \"panopticPoolImplementation\": \"0x00000000000010bb6695dAAC60D0515c0A01a948\",\n \"collateralTrackerImplementation\": \"0x0000000000002038055dB8f2B2Fd356598935C51\",\n \"panopticFactoryV4\": \"0x0000000000000c51d0f8cf4bd9adE7191372a625\",\n \"panopticFactoryV3\": \"0x0000000000000aDC9A108591e718F2aee963a2a7\",\n \"panopticHelper\": \"0x0000000000000000000000000000000000000000\",\n \"panopticMath\": \"0x000000000000301F5BC0171C75967b8e78a92b10\",\n \"panopticQuery\": \"0x0000000000000e1aE9c66C1c3B0A547D23389C93\",\n \"interactionHelper\": \"0x00000000000040ae7CD505F4E0e3F34195D8c08C\"\n }\n },\n \"riskEngines\": [\n \"0x000000000000075e29cdaa9cb640a69e148ca7da\",\n \"0x0000000000000fe1e261f66ce2f44def4f5ae0cb\",\n \"0x0000000000000e673aECBDB5f5fE5DFAf4a8e9Ac\"\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 \"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 \"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 \"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 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 * (the CURRENT v3 SFPM on mainnet — distinct from the stale\n * `semiFungiblePositionManagerV3` field), and `poolId` is its registered uint64\n * id. `weth` bridges native-ETH collateral (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?: {\n ethUsdc5bpsV3?: PanopticPoolAddresses\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\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","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,gBAAgB;GAChB,sBAAsB;GACtB,sBAAsB;EACvB;EACD,mBAAmB,EACjB,iBAAiB;GACf,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;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,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;CACF;CACD,YAAY;EACV,QAAQ;GACN,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;oCAvNH;CACE;CAmFA;CAkEA;AAkED;;;;AC1GD,MAAa,mBAAmB;AAChC,MAAa,mBAAmB;AAChC,MAAa,gBAAgB;AAE7B,MAAa,oBAAoBA;AAEjC,SAAgB,mBAAmBC,SAA8C;AAC/E,QAAO,kBAAkB;AAC1B;AAED,SAAgB,uBAAuBA,SAAkC;CACvE,MAAM,aAAa,mBAAmB,QAAQ;AAC9C,KAAI,sBACF,OAAM,IAAI,OAAO,2CAA2C,QAAQ;AAEtE,QAAO;AACR;AAED,SAAgB,iBAAiBA,SAA0B;AACzD,QAAO,mBAAmB,QAAQ;AACnC;AAED,SAAgB,iBAAiBC,YAAgD;CAC/E,MAAM,SAAS,WAAW,QAAQ,eAAe,WAAW,QAAQ;AACpE,KAAI,kBACF,OAAM,IAAI,OAAO,sCAAsC,WAAW,QAAQ;AAE5E,QAAO;AACR;;AAID,SAAgB,kBAAkBA,YAAyD;AACzF,QAAO,WAAW;AACnB;AAED,MAAa,qBAAqB,kBAAkB;AACpD,MAAa,mDACX,mBAAmB,SAAS,iBAAiB;AAC/C,MAAa,gCAAgC,mBAAmB,SAAS;AACzE,MAAa,qBAAqB,kBAAkB;AACpD,MAAa,mCAAmC,mBAAmB,UAAU;AAC7E,MAAa,8BAA8B,mBAAmB,UAAU;AACxE,MAAa,sCAAsC,mBAAmB,UAAU;AAChF,MAAa,4CAA4C,mBAAmB,UAAU;AACtF,MAAa,kCAAkC,mBAAmB,SAAS;AAC3E,MAAa,gCAAgC,mBAAmB,SAAS;AACzE,MAAa,kBAAkB,kBAAkB;AACjD,MAAa,gCAAgC,gBAAgB,UAAU;AACvE,MAAa,2BAA2B,gBAAgB,UAAU;AAClE,MAAa,mCAAmC,gBAAgB,UAAU;AAC1E,MAAa,yCAAyC,gBAAgB,UAAU;AAChF,MAAa,+BAA+B,gBAAgB,SAAS;AACrE,MAAa,6BAA6B,gBAAgB,SAAS;AACnE,MAAa,4BAA4B,iBAAiB,gBAAgB;AAC1E,MAAa,+BAA+B,iBAAiB,mBAAmB;AAEhF,MAAa,uBAAuB,mBAAmB;AACvD,MAAa,oBAAoB,gBAAgB;AACjD,MAAa,uBAAuB,mBAAmB;;;;AChKvD,MAAM,oBAAoB,uBAAuB,iBAAiB;AAClE,MAAM,gBAAgB,kBAAkB,UAAU;AAClD,MAAM,sBAAsB;CAC1B,cAAc;CACd,cAAc;AACf;AACD,MAAM,oBAAoB,uBAAuB,iBAAiB;AAClE,MAAM,gBAAgB,kBAAkB,UAAU;AAClD,MAAM,iBAAiB,uBAAuB,cAAc;AAC5D,MAAM,aAAa,eAAe,UAAU;AAW5C,MAAaC,gCAAyE;EACnF,mBAAmB;GACjB,cAAc,aAAa,aAAa,GAAc;GACtD,cAAc,aAAa,aAAa,GAAc;GACtD,oBAAoB,aAAa,aAAa,GAAc;GAC5D,oBAAoB,aAAa,aAAa,GAAc;CAC9D;EACA,gBAAgB;GACd,WAAW,aAAa,aAAa,GAAc;GACnD,WAAW,aAAa,aAAa,GAAc;CACrD;EACA,mBAAmB;GACjB,cAAc,aAAa,aAAa,GAAc;GACtD,cAAc,aAAa,aAAa,GAAc;CACxD;AACF;AAED,MAAaC,yCAGT;EACD,mBAAmB;GACjB,cAAc,aAAa,aAAa,GAAc,MAAM;GAC5D,cAAc,aAAa,aAAa,GAAc,MAAM;GAC5D,oBAAoB,aAAa,aAAa,GAAc,MAAM;GAClE,oBAAoB,aAAa,aAAa,GAAc,MAAM;CACpE;EACA,gBAAgB;GACd,WAAW,aAAa,aAAa,GAAc,MAAM;GACzD,WAAW,aAAa,aAAa,GAAc,MAAM;CAC3D;EACA,mBAAmB;GACjB,cAAc,aAAa,aAAa,GAAc,MAAM;GAC5D,cAAc,aAAa,aAAa,GAAc,MAAM;CAC9D;AACF;AAED,SAAgB,wBAAwB,EACtC,SACA,cACA,kBACA,cAC8B,EAAU;CACxC,MAAM,oBAAoB,aAAa,aAAa;CACpD,MAAM,WAAW,uCAAuC,WAAW;AACnE,KAAI,oBACF,QAAO,SAAS;EACd;EACA,cAAc;EACd;EACA;CACD,EAAC;CAGJ,MAAM,aAAa,8BAA8B,WAAW;AAC5D,KAAI,sBACF,QAAO;AAGT,KAAI,2BAA8B,iBAAiB,KACjD,QAAO;AAGT,QAAO;AACR"}
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\": \"0x000000000000047534b9E1D528ED997169865a64\",\n \"semiFungiblePositionManagerV3\": \"0x000000000000031d296bBA22f188472157eEb01f\",\n \"builderFactory\": \"0x00000000000008D41F2cd5bF144F61cEB3661F98\",\n \"riskEngine\": \"0x0000000000000e673aECBDB5f5fE5DFAf4a8e9Ac\",\n \"panopticPoolImplementation\": \"0x00000000000010bb6695dAAC60D0515c0A01a948\",\n \"collateralTrackerImplementation\": \"0x0000000000002038055dB8f2B2Fd356598935C51\",\n \"panopticFactoryV4\": \"0x0000000000000c51d0f8cf4bd9adE7191372a625\",\n \"panopticFactoryV3\": \"0x0000000000000aDC9A108591e718F2aee963a2a7\",\n \"panopticHelper\": \"0x0000000000000000000000000000000000000000\",\n \"panopticMath\": \"0x000000000000301F5BC0171C75967b8e78a92b10\",\n \"panopticQuery\": \"0x0000000000000e1aE9c66C1c3B0A547D23389C93\",\n \"interactionHelper\": \"0x00000000000040ae7CD505F4E0e3F34195D8c08C\"\n }\n },\n \"riskEngines\": [\n \"0x000000000000075e29cdaa9cb640a69e148ca7da\",\n \"0x0000000000000fe1e261f66ce2f44def4f5ae0cb\",\n \"0x0000000000000e673aECBDB5f5fE5DFAf4a8e9Ac\"\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 \"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 * (the CURRENT v3 SFPM on mainnet — distinct from the stale\n * `semiFungiblePositionManagerV3` field), and `poolId` is its registered uint64\n * id. `weth` bridges native-ETH collateral (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\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","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;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,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;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;oCA3NH;CACE;CAqFA;CAmEA;AAmED;;;;AC3GD,MAAa,mBAAmB;AAChC,MAAa,mBAAmB;AAChC,MAAa,gBAAgB;AAE7B,MAAa,oBAAoBA;AAEjC,SAAgB,mBAAmBC,SAA8C;AAC/E,QAAO,kBAAkB;AAC1B;AAED,SAAgB,uBAAuBA,SAAkC;CACvE,MAAM,aAAa,mBAAmB,QAAQ;AAC9C,KAAI,sBACF,OAAM,IAAI,OAAO,2CAA2C,QAAQ;AAEtE,QAAO;AACR;AAED,SAAgB,iBAAiBA,SAA0B;AACzD,QAAO,mBAAmB,QAAQ;AACnC;AAED,SAAgB,iBAAiBC,YAAgD;CAC/E,MAAM,SAAS,WAAW,QAAQ,eAAe,WAAW,QAAQ;AACpE,KAAI,kBACF,OAAM,IAAI,OAAO,sCAAsC,WAAW,QAAQ;AAE5E,QAAO;AACR;;AAID,SAAgB,kBAAkBA,YAAyD;AACzF,QAAO,WAAW;AACnB;AAED,MAAa,qBAAqB,kBAAkB;AACpD,MAAa,mDACX,mBAAmB,SAAS,iBAAiB;AAC/C,MAAa,gCAAgC,mBAAmB,SAAS;AACzE,MAAa,qBAAqB,kBAAkB;AACpD,MAAa,mCAAmC,mBAAmB,UAAU;AAC7E,MAAa,8BAA8B,mBAAmB,UAAU;AACxE,MAAa,sCAAsC,mBAAmB,UAAU;AAChF,MAAa,4CAA4C,mBAAmB,UAAU;AACtF,MAAa,kCAAkC,mBAAmB,SAAS;AAC3E,MAAa,gCAAgC,mBAAmB,SAAS;AACzE,MAAa,kBAAkB,kBAAkB;AACjD,MAAa,gCAAgC,gBAAgB,UAAU;AACvE,MAAa,2BAA2B,gBAAgB,UAAU;AAClE,MAAa,mCAAmC,gBAAgB,UAAU;AAC1E,MAAa,yCAAyC,gBAAgB,UAAU;AAChF,MAAa,+BAA+B,gBAAgB,SAAS;AACrE,MAAa,6BAA6B,gBAAgB,SAAS;AACnE,MAAa,4BAA4B,iBAAiB,gBAAgB;AAC1E,MAAa,+BAA+B,iBAAiB,mBAAmB;AAEhF,MAAa,uBAAuB,mBAAmB;AACvD,MAAa,oBAAoB,gBAAgB;AACjD,MAAa,uBAAuB,mBAAmB;;;;ACnKvD,MAAM,oBAAoB,uBAAuB,iBAAiB;AAClE,MAAM,gBAAgB,kBAAkB,UAAU;AAClD,MAAM,sBAAsB;CAC1B,cAAc;CACd,cAAc;AACf;AACD,MAAM,oBAAoB,uBAAuB,iBAAiB;AAClE,MAAM,gBAAgB,kBAAkB,UAAU;AAClD,MAAM,iBAAiB,uBAAuB,cAAc;AAC5D,MAAM,aAAa,eAAe,UAAU;AAW5C,MAAaC,gCAAyE;EACnF,mBAAmB;GACjB,cAAc,aAAa,aAAa,GAAc;GACtD,cAAc,aAAa,aAAa,GAAc;GACtD,oBAAoB,aAAa,aAAa,GAAc;GAC5D,oBAAoB,aAAa,aAAa,GAAc;CAC9D;EACA,gBAAgB;GACd,WAAW,aAAa,aAAa,GAAc;GACnD,WAAW,aAAa,aAAa,GAAc;CACrD;EACA,mBAAmB;GACjB,cAAc,aAAa,aAAa,GAAc;GACtD,cAAc,aAAa,aAAa,GAAc;CACxD;AACF;AAED,MAAaC,yCAGT;EACD,mBAAmB;GACjB,cAAc,aAAa,aAAa,GAAc,MAAM;GAC5D,cAAc,aAAa,aAAa,GAAc,MAAM;GAC5D,oBAAoB,aAAa,aAAa,GAAc,MAAM;GAClE,oBAAoB,aAAa,aAAa,GAAc,MAAM;CACpE;EACA,gBAAgB;GACd,WAAW,aAAa,aAAa,GAAc,MAAM;GACzD,WAAW,aAAa,aAAa,GAAc,MAAM;CAC3D;EACA,mBAAmB;GACjB,cAAc,aAAa,aAAa,GAAc,MAAM;GAC5D,cAAc,aAAa,aAAa,GAAc,MAAM;CAC9D;AACF;AAED,SAAgB,wBAAwB,EACtC,SACA,cACA,kBACA,cAC8B,EAAU;CACxC,MAAM,oBAAoB,aAAa,aAAa;CACpD,MAAM,WAAW,uCAAuC,WAAW;AACnE,KAAI,oBACF,QAAO,SAAS;EACd;EACA,cAAc;EACd;EACA;CACD,EAAC;CAGJ,MAAM,aAAa,8BAA8B,WAAW;AAC5D,KAAI,sBACF,QAAO;AAGT,KAAI,2BAA8B,iBAAiB,KACjD,QAAO;AAGT,QAAO;AACR"}