morpho-contracts-helper 0.0.16 → 0.0.18

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 (72) hide show
  1. package/contracts/MorphoMarketDataFetcher.sol +6 -3
  2. package/contracts/MorphoVaultV2DeployHelper.sol +184 -0
  3. package/dist/typechain-types/contracts/{MorphoMarketDataFetcher.sol/MorphoMarketDataFetcher.d.ts → MorphoMarketDataFetcher.d.ts} +7 -7
  4. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.d.ts.map +1 -0
  5. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.js.map +1 -0
  6. package/dist/typechain-types/contracts/MorphoVaultV2DeployHelper.d.ts +162 -0
  7. package/dist/typechain-types/contracts/MorphoVaultV2DeployHelper.d.ts.map +1 -0
  8. package/dist/typechain-types/contracts/{MorphoMarketDataFetcher.sol/IERC20Metadata.js → MorphoVaultV2DeployHelper.js} +1 -1
  9. package/dist/typechain-types/contracts/MorphoVaultV2DeployHelper.js.map +1 -0
  10. package/dist/typechain-types/contracts/index.d.ts +2 -2
  11. package/dist/typechain-types/contracts/index.d.ts.map +1 -1
  12. package/dist/typechain-types/factories/contracts/{MorphoMarketDataFetcher.sol/MorphoMarketDataFetcher__factory.d.ts → MorphoMarketDataFetcher__factory.d.ts} +13 -13
  13. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher__factory.d.ts.map +1 -0
  14. package/dist/typechain-types/factories/contracts/{MorphoMarketDataFetcher.sol/MorphoMarketDataFetcher__factory.js → MorphoMarketDataFetcher__factory.js} +11 -11
  15. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher__factory.js.map +1 -0
  16. package/dist/typechain-types/factories/contracts/MorphoVaultV2DeployHelper__factory.d.ts +198 -0
  17. package/dist/typechain-types/factories/contracts/MorphoVaultV2DeployHelper__factory.d.ts.map +1 -0
  18. package/dist/typechain-types/factories/contracts/MorphoVaultV2DeployHelper__factory.js +265 -0
  19. package/dist/typechain-types/factories/contracts/MorphoVaultV2DeployHelper__factory.js.map +1 -0
  20. package/dist/typechain-types/factories/contracts/index.d.ts +2 -1
  21. package/dist/typechain-types/factories/contracts/index.d.ts.map +1 -1
  22. package/dist/typechain-types/factories/contracts/index.js +5 -2
  23. package/dist/typechain-types/factories/contracts/index.js.map +1 -1
  24. package/dist/typechain-types/index.d.ts +6 -4
  25. package/dist/typechain-types/index.d.ts.map +1 -1
  26. package/dist/typechain-types/index.js +7 -5
  27. package/dist/typechain-types/index.js.map +1 -1
  28. package/package.json +1 -1
  29. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IChainlinkAggregator.d.ts +0 -60
  30. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IChainlinkAggregator.d.ts.map +0 -1
  31. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IChainlinkAggregator.js +0 -3
  32. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IChainlinkAggregator.js.map +0 -1
  33. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IERC20Metadata.d.ts +0 -48
  34. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IERC20Metadata.d.ts.map +0 -1
  35. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IERC20Metadata.js.map +0 -1
  36. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorpho.d.ts +0 -84
  37. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorpho.d.ts.map +0 -1
  38. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorpho.js +0 -3
  39. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorpho.js.map +0 -1
  40. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorphoChainlinkOracleV2.d.ts +0 -62
  41. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorphoChainlinkOracleV2.d.ts.map +0 -1
  42. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorphoChainlinkOracleV2.js +0 -3
  43. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorphoChainlinkOracleV2.js.map +0 -1
  44. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/MorphoMarketDataFetcher.d.ts.map +0 -1
  45. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/MorphoMarketDataFetcher.js.map +0 -1
  46. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/index.d.ts +0 -6
  47. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/index.d.ts.map +0 -1
  48. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/index.js +0 -3
  49. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/index.js.map +0 -1
  50. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IChainlinkAggregator__factory.d.ts +0 -44
  51. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IChainlinkAggregator__factory.d.ts.map +0 -1
  52. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IChainlinkAggregator__factory.js +0 -67
  53. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IChainlinkAggregator__factory.js.map +0 -1
  54. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IERC20Metadata__factory.d.ts +0 -56
  55. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IERC20Metadata__factory.d.ts.map +0 -1
  56. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IERC20Metadata__factory.js +0 -84
  57. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IERC20Metadata__factory.js.map +0 -1
  58. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IMorphoChainlinkOracleV2__factory.d.ts +0 -108
  59. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IMorphoChainlinkOracleV2__factory.d.ts.map +0 -1
  60. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IMorphoChainlinkOracleV2__factory.js +0 -151
  61. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IMorphoChainlinkOracleV2__factory.js.map +0 -1
  62. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IMorpho__factory.d.ts +0 -69
  63. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IMorpho__factory.d.ts.map +0 -1
  64. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IMorpho__factory.js +0 -101
  65. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IMorpho__factory.js.map +0 -1
  66. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/MorphoMarketDataFetcher__factory.d.ts.map +0 -1
  67. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/MorphoMarketDataFetcher__factory.js.map +0 -1
  68. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/index.d.ts +0 -6
  69. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/index.d.ts.map +0 -1
  70. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/index.js +0 -18
  71. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/index.js.map +0 -1
  72. /package/dist/typechain-types/contracts/{MorphoMarketDataFetcher.sol/MorphoMarketDataFetcher.js → MorphoMarketDataFetcher.js} +0 -0
@@ -97,7 +97,8 @@ contract MorphoMarketDataFetcher {
97
97
  }
98
98
 
99
99
  function getMarketDetails(
100
- bytes32 marketId
100
+ bytes32 marketId,
101
+ address user
101
102
  ) external view returns (MarketData memory data) {
102
103
 
103
104
  MarketParams memory params = IMorpho(morphoAddress).idToMarketParams(marketId);
@@ -109,8 +110,10 @@ contract MorphoMarketDataFetcher {
109
110
  try IERC20Metadata(params.loanToken).symbol() returns (string memory _sym) { data.loanToken.symbol = _sym; } catch {}
110
111
  try IERC20Metadata(params.loanToken).decimals() returns (uint8 _dec) { data.loanToken.decimals = _dec; } catch {}
111
112
 
112
- if (msg.sender != address(0) && morphoAddress != address(0)) {
113
- try IERC20Metadata(params.loanToken).allowance(msg.sender, morphoAddress) returns (uint256 _allow) { data.loanToken.userAllowance = _allow; } catch {}
113
+ if (user != address(0) && morphoAddress != address(0)) {
114
+ try IERC20Metadata(params.loanToken).allowance(user, morphoAddress) returns (uint256 _allow) {
115
+ data.loanToken.userAllowance = _allow;
116
+ } catch {}
114
117
  }
115
118
 
116
119
  data.collateralToken.tokenAddress = params.collateralToken;
@@ -0,0 +1,184 @@
1
+ // SPDX-License-Identifier: MIT
2
+ pragma solidity ^0.8.20;
3
+
4
+ // =============================================================================
5
+ // MorphoVaultV2DeployHelper
6
+ // =============================================================================
7
+
8
+ import {IVaultV2Factory} from "./external/morpho/interfaces/IVaultV2Factory.sol";
9
+ import {IVaultV2} from "./external/morpho/interfaces/IVaultV2.sol";
10
+ import {IERC20} from "./external/morpho/interfaces/IERC20.sol";
11
+ import {IERC4626} from "./external/morpho/interfaces/IERC4626.sol";
12
+ import {IMorphoMarketV1AdapterV2} from "./external/morpho/interfaces/IMorphoMarketV1AdapterV2.sol";
13
+ import {IMorphoMarketV1AdapterV2Factory} from "./external/morpho/interfaces/IMorphoMarketV1AdapterV2Factory.sol";
14
+
15
+ contract MorphoVaultV2DeployHelper {
16
+
17
+ address public immutable vaultV2FactoryAddress;
18
+ address public immutable adapterV2FactoryAddress;
19
+ address public immutable morphoRegistryAddress;
20
+
21
+ constructor(address _vaultV2FactoryAddress, address _adapterV2FactoryAddress, address _morphoRegistryAddress) {
22
+ vaultV2FactoryAddress = _vaultV2FactoryAddress;
23
+ adapterV2FactoryAddress = _adapterV2FactoryAddress;
24
+ morphoRegistryAddress = _morphoRegistryAddress;
25
+ }
26
+
27
+ struct DeployParams {
28
+ address asset;
29
+
30
+ string vaultName;
31
+ string vaultSymbol;
32
+
33
+ address finalOwner;
34
+ address finalCurator;
35
+ address allocator;
36
+ address sentinel;
37
+
38
+ uint256 vaultTimelockHigh;
39
+ uint256 vaultTimelockMid;
40
+ uint256 adapterTimelock;
41
+ }
42
+
43
+ struct DeployResult {
44
+ address vault;
45
+ address adapter;
46
+ }
47
+
48
+ function _deploy(DeployParams calldata p) internal returns (DeployResult memory result) {
49
+ bytes32 uniqueSalt = keccak256(abi.encodePacked(block.timestamp + gasleft()));
50
+
51
+ address vault = IVaultV2Factory(vaultV2FactoryAddress).createVaultV2(
52
+ address(this),
53
+ p.asset,
54
+ uniqueSalt
55
+ );
56
+
57
+ result.vault = vault;
58
+ IVaultV2 iVault2 = IVaultV2(vault);
59
+
60
+ if (bytes(p.vaultName).length > 0) {
61
+ iVault2.setName(p.vaultName);
62
+ }
63
+
64
+ if (bytes(p.vaultSymbol).length > 0) {
65
+ iVault2.setSymbol(p.vaultSymbol);
66
+ }
67
+
68
+ iVault2.setCurator(address(this));
69
+
70
+ address adapter = IMorphoMarketV1AdapterV2Factory(adapterV2FactoryAddress).createMorphoMarketV1AdapterV2(vault);
71
+ result.adapter = adapter;
72
+
73
+ iVault2.submit(abi.encodeCall(IVaultV2.setIsAllocator, (p.allocator, true)));
74
+ iVault2.submit(abi.encodeCall(IVaultV2.setAdapterRegistry, (morphoRegistryAddress)));
75
+
76
+ bytes memory adapterIdData = abi.encode("this", adapter);
77
+ iVault2.submit(abi.encodeCall(IVaultV2.addAdapter, (adapter)));
78
+ iVault2.submit(abi.encodeCall(IVaultV2.increaseAbsoluteCap, (adapterIdData, type(uint128).max)));
79
+ iVault2.submit(abi.encodeCall(IVaultV2.increaseRelativeCap, (adapterIdData, 1e18)));
80
+
81
+ iVault2.submit(abi.encodeCall(IVaultV2.abdicate, (IVaultV2.setAdapterRegistry.selector)));
82
+ iVault2.submit(abi.encodeCall(IVaultV2.abdicate, (IVaultV2.setReceiveSharesGate.selector)));
83
+ iVault2.submit(abi.encodeCall(IVaultV2.abdicate, (IVaultV2.setSendSharesGate.selector)));
84
+ iVault2.submit(abi.encodeCall(IVaultV2.abdicate, (IVaultV2.setReceiveAssetsGate.selector)));
85
+
86
+ iVault2.setAdapterRegistry(morphoRegistryAddress);
87
+ iVault2.setIsAllocator(p.allocator, true);
88
+ iVault2.addAdapter(adapter);
89
+
90
+ iVault2.increaseAbsoluteCap(adapterIdData, type(uint128).max);
91
+ iVault2.increaseRelativeCap(adapterIdData, 1e18);
92
+
93
+ iVault2.abdicate(IVaultV2.setAdapterRegistry.selector);
94
+ iVault2.abdicate(IVaultV2.setReceiveSharesGate.selector);
95
+ iVault2.abdicate(IVaultV2.setSendSharesGate.selector);
96
+ iVault2.abdicate(IVaultV2.setReceiveAssetsGate.selector);
97
+
98
+ _configureVaultTimelocks(vault, p.vaultTimelockHigh, p.vaultTimelockMid);
99
+ _configureAdapterTimelocks(adapter, p.adapterTimelock);
100
+
101
+ iVault2.setCurator(p.finalCurator);
102
+
103
+ if (p.sentinel != address(0)) {
104
+ iVault2.setIsSentinel(p.sentinel, true);
105
+ }
106
+
107
+ iVault2.setOwner(p.finalOwner);
108
+
109
+ emit VaultDeployed(vault, adapter, p.finalOwner, p.finalCurator, p.allocator);
110
+ }
111
+
112
+ function _configureVaultTimelocks(
113
+ address vault,
114
+ uint256 highDuration,
115
+ uint256 midDuration
116
+ ) internal {
117
+ IVaultV2 iVault = IVaultV2(vault);
118
+
119
+ bytes4[] memory selectors = new bytes4[](7);
120
+ selectors[0] = iVault.addAdapter.selector;
121
+ selectors[1] = iVault.increaseAbsoluteCap.selector;
122
+ selectors[2] = iVault.increaseRelativeCap.selector;
123
+ selectors[3] = iVault.setForceDeallocatePenalty.selector;
124
+
125
+ selectors[4] = iVault.abdicate.selector;
126
+ selectors[5] = iVault.removeAdapter.selector;
127
+ selectors[6] = iVault.increaseTimelock.selector;
128
+
129
+ for (uint256 i = 0; i < 4; i++) {
130
+ iVault.submit(abi.encodeCall(iVault.increaseTimelock, (selectors[i], midDuration)));
131
+ iVault.increaseTimelock(selectors[i], midDuration);
132
+ }
133
+
134
+ for (uint256 i = 4; i < selectors.length; i++) {
135
+ iVault.submit(abi.encodeCall(iVault.increaseTimelock, (selectors[i], highDuration)));
136
+ iVault.increaseTimelock(selectors[i], highDuration);
137
+ }
138
+
139
+ emit VaultTimelocksConfigured(vault, highDuration, midDuration);
140
+ }
141
+
142
+ function _configureAdapterTimelocks(
143
+ address adapter,
144
+ uint256 duration
145
+ ) internal {
146
+ IMorphoMarketV1AdapterV2 iAdapter = IMorphoMarketV1AdapterV2(adapter);
147
+
148
+ bytes4[] memory selectors = new bytes4[](4);
149
+ selectors[0] = IMorphoMarketV1AdapterV2.abdicate.selector;
150
+ selectors[1] = IMorphoMarketV1AdapterV2.setSkimRecipient.selector;
151
+ selectors[2] = IMorphoMarketV1AdapterV2.burnShares.selector;
152
+ selectors[3] = IMorphoMarketV1AdapterV2.increaseTimelock.selector;
153
+
154
+ for (uint256 i = 0; i < selectors.length; i++) {
155
+ iAdapter.submit(abi.encodeCall(iAdapter.increaseTimelock, (selectors[i], duration)));
156
+ iAdapter.increaseTimelock(selectors[i], duration);
157
+ }
158
+
159
+ emit AdapterTimelocksConfigured(adapter, duration);
160
+ }
161
+
162
+ function deploy(DeployParams calldata p) external returns (DeployResult memory result) {
163
+ result = _deploy(p);
164
+ }
165
+
166
+ event VaultDeployed(
167
+ address indexed vault,
168
+ address indexed adapter,
169
+ address finalOwner,
170
+ address finalCurator,
171
+ address allocator
172
+ );
173
+
174
+ event VaultTimelocksConfigured(
175
+ address indexed vault,
176
+ uint256 highDuration,
177
+ uint256 midDuration
178
+ );
179
+
180
+ event AdapterTimelocksConfigured(
181
+ address indexed adapter,
182
+ uint256 duration
183
+ );
184
+ }
@@ -1,5 +1,5 @@
1
1
  import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers";
2
- import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common";
2
+ import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../common";
3
3
  export type MarketParamsStruct = {
4
4
  loanToken: AddressLike;
5
5
  collateralToken: AddressLike;
@@ -63,11 +63,11 @@ export declare namespace MorphoMarketDataFetcher {
63
63
  baseFeed1: AddressLike;
64
64
  baseFeed2: AddressLike;
65
65
  baseVault: AddressLike;
66
- baseVaultConversionSample: AddressLike;
66
+ baseVaultConversionSample: BigNumberish;
67
67
  quoteFeed1: AddressLike;
68
68
  quoteFeed2: AddressLike;
69
69
  quoteVault: AddressLike;
70
- quoteVaultConversionSample: AddressLike;
70
+ quoteVaultConversionSample: BigNumberish;
71
71
  scaleFactor: BigNumberish;
72
72
  currentPrice: BigNumberish;
73
73
  baseFeed: MorphoMarketDataFetcher.MockOracleInfoStruct;
@@ -78,11 +78,11 @@ export declare namespace MorphoMarketDataFetcher {
78
78
  baseFeed1: string,
79
79
  baseFeed2: string,
80
80
  baseVault: string,
81
- baseVaultConversionSample: string,
81
+ baseVaultConversionSample: bigint,
82
82
  quoteFeed1: string,
83
83
  quoteFeed2: string,
84
84
  quoteVault: string,
85
- quoteVaultConversionSample: string,
85
+ quoteVaultConversionSample: bigint,
86
86
  scaleFactor: bigint,
87
87
  currentPrice: bigint,
88
88
  baseFeed: MorphoMarketDataFetcher.MockOracleInfoStructOutput,
@@ -92,11 +92,11 @@ export declare namespace MorphoMarketDataFetcher {
92
92
  baseFeed1: string;
93
93
  baseFeed2: string;
94
94
  baseVault: string;
95
- baseVaultConversionSample: string;
95
+ baseVaultConversionSample: bigint;
96
96
  quoteFeed1: string;
97
97
  quoteFeed2: string;
98
98
  quoteVault: string;
99
- quoteVaultConversionSample: string;
99
+ quoteVaultConversionSample: bigint;
100
100
  scaleFactor: bigint;
101
101
  currentPrice: bigint;
102
102
  baseFeed: MorphoMarketDataFetcher.MockOracleInfoStructOutput;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MorphoMarketDataFetcher.d.ts","sourceRoot":"","sources":["../../../typechain-types/contracts/MorphoMarketDataFetcher.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MorphoMarketDataFetcher.js","sourceRoot":"","sources":["../../../typechain-types/contracts/MorphoMarketDataFetcher.ts"],"names":[],"mappings":""}
@@ -0,0 +1,162 @@
1
+ import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers";
2
+ import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common";
3
+ export declare namespace MorphoVaultV2DeployHelper {
4
+ type DeployParamsStruct = {
5
+ asset: AddressLike;
6
+ vaultName: string;
7
+ vaultSymbol: string;
8
+ finalOwner: AddressLike;
9
+ finalCurator: AddressLike;
10
+ allocator: AddressLike;
11
+ sentinel: AddressLike;
12
+ vaultTimelockHigh: BigNumberish;
13
+ vaultTimelockMid: BigNumberish;
14
+ adapterTimelock: BigNumberish;
15
+ };
16
+ type DeployParamsStructOutput = [
17
+ asset: string,
18
+ vaultName: string,
19
+ vaultSymbol: string,
20
+ finalOwner: string,
21
+ finalCurator: string,
22
+ allocator: string,
23
+ sentinel: string,
24
+ vaultTimelockHigh: bigint,
25
+ vaultTimelockMid: bigint,
26
+ adapterTimelock: bigint
27
+ ] & {
28
+ asset: string;
29
+ vaultName: string;
30
+ vaultSymbol: string;
31
+ finalOwner: string;
32
+ finalCurator: string;
33
+ allocator: string;
34
+ sentinel: string;
35
+ vaultTimelockHigh: bigint;
36
+ vaultTimelockMid: bigint;
37
+ adapterTimelock: bigint;
38
+ };
39
+ type DeployResultStruct = {
40
+ vault: AddressLike;
41
+ adapter: AddressLike;
42
+ };
43
+ type DeployResultStructOutput = [vault: string, adapter: string] & {
44
+ vault: string;
45
+ adapter: string;
46
+ };
47
+ }
48
+ export interface MorphoVaultV2DeployHelperInterface extends Interface {
49
+ getFunction(nameOrSignature: "adapterV2FactoryAddress" | "deploy" | "morphoRegistryAddress" | "vaultV2FactoryAddress"): FunctionFragment;
50
+ getEvent(nameOrSignatureOrTopic: "AdapterTimelocksConfigured" | "VaultDeployed" | "VaultTimelocksConfigured"): EventFragment;
51
+ encodeFunctionData(functionFragment: "adapterV2FactoryAddress", values?: undefined): string;
52
+ encodeFunctionData(functionFragment: "deploy", values: [MorphoVaultV2DeployHelper.DeployParamsStruct]): string;
53
+ encodeFunctionData(functionFragment: "morphoRegistryAddress", values?: undefined): string;
54
+ encodeFunctionData(functionFragment: "vaultV2FactoryAddress", values?: undefined): string;
55
+ decodeFunctionResult(functionFragment: "adapterV2FactoryAddress", data: BytesLike): Result;
56
+ decodeFunctionResult(functionFragment: "deploy", data: BytesLike): Result;
57
+ decodeFunctionResult(functionFragment: "morphoRegistryAddress", data: BytesLike): Result;
58
+ decodeFunctionResult(functionFragment: "vaultV2FactoryAddress", data: BytesLike): Result;
59
+ }
60
+ export declare namespace AdapterTimelocksConfiguredEvent {
61
+ type InputTuple = [adapter: AddressLike, duration: BigNumberish];
62
+ type OutputTuple = [adapter: string, duration: bigint];
63
+ interface OutputObject {
64
+ adapter: string;
65
+ duration: bigint;
66
+ }
67
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
68
+ type Filter = TypedDeferredTopicFilter<Event>;
69
+ type Log = TypedEventLog<Event>;
70
+ type LogDescription = TypedLogDescription<Event>;
71
+ }
72
+ export declare namespace VaultDeployedEvent {
73
+ type InputTuple = [
74
+ vault: AddressLike,
75
+ adapter: AddressLike,
76
+ finalOwner: AddressLike,
77
+ finalCurator: AddressLike,
78
+ allocator: AddressLike
79
+ ];
80
+ type OutputTuple = [
81
+ vault: string,
82
+ adapter: string,
83
+ finalOwner: string,
84
+ finalCurator: string,
85
+ allocator: string
86
+ ];
87
+ interface OutputObject {
88
+ vault: string;
89
+ adapter: string;
90
+ finalOwner: string;
91
+ finalCurator: string;
92
+ allocator: string;
93
+ }
94
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
95
+ type Filter = TypedDeferredTopicFilter<Event>;
96
+ type Log = TypedEventLog<Event>;
97
+ type LogDescription = TypedLogDescription<Event>;
98
+ }
99
+ export declare namespace VaultTimelocksConfiguredEvent {
100
+ type InputTuple = [
101
+ vault: AddressLike,
102
+ highDuration: BigNumberish,
103
+ midDuration: BigNumberish
104
+ ];
105
+ type OutputTuple = [
106
+ vault: string,
107
+ highDuration: bigint,
108
+ midDuration: bigint
109
+ ];
110
+ interface OutputObject {
111
+ vault: string;
112
+ highDuration: bigint;
113
+ midDuration: bigint;
114
+ }
115
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
116
+ type Filter = TypedDeferredTopicFilter<Event>;
117
+ type Log = TypedEventLog<Event>;
118
+ type LogDescription = TypedLogDescription<Event>;
119
+ }
120
+ export interface MorphoVaultV2DeployHelper extends BaseContract {
121
+ connect(runner?: ContractRunner | null): MorphoVaultV2DeployHelper;
122
+ waitForDeployment(): Promise<this>;
123
+ interface: MorphoVaultV2DeployHelperInterface;
124
+ queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
125
+ queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
126
+ on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
127
+ on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
128
+ once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
129
+ once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
130
+ listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>;
131
+ listeners(eventName?: string): Promise<Array<Listener>>;
132
+ removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>;
133
+ adapterV2FactoryAddress: TypedContractMethod<[], [string], "view">;
134
+ deploy: TypedContractMethod<[
135
+ p: MorphoVaultV2DeployHelper.DeployParamsStruct
136
+ ], [
137
+ MorphoVaultV2DeployHelper.DeployResultStructOutput
138
+ ], "nonpayable">;
139
+ morphoRegistryAddress: TypedContractMethod<[], [string], "view">;
140
+ vaultV2FactoryAddress: TypedContractMethod<[], [string], "view">;
141
+ getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
142
+ getFunction(nameOrSignature: "adapterV2FactoryAddress"): TypedContractMethod<[], [string], "view">;
143
+ getFunction(nameOrSignature: "deploy"): TypedContractMethod<[
144
+ p: MorphoVaultV2DeployHelper.DeployParamsStruct
145
+ ], [
146
+ MorphoVaultV2DeployHelper.DeployResultStructOutput
147
+ ], "nonpayable">;
148
+ getFunction(nameOrSignature: "morphoRegistryAddress"): TypedContractMethod<[], [string], "view">;
149
+ getFunction(nameOrSignature: "vaultV2FactoryAddress"): TypedContractMethod<[], [string], "view">;
150
+ getEvent(key: "AdapterTimelocksConfigured"): TypedContractEvent<AdapterTimelocksConfiguredEvent.InputTuple, AdapterTimelocksConfiguredEvent.OutputTuple, AdapterTimelocksConfiguredEvent.OutputObject>;
151
+ getEvent(key: "VaultDeployed"): TypedContractEvent<VaultDeployedEvent.InputTuple, VaultDeployedEvent.OutputTuple, VaultDeployedEvent.OutputObject>;
152
+ getEvent(key: "VaultTimelocksConfigured"): TypedContractEvent<VaultTimelocksConfiguredEvent.InputTuple, VaultTimelocksConfiguredEvent.OutputTuple, VaultTimelocksConfiguredEvent.OutputObject>;
153
+ filters: {
154
+ "AdapterTimelocksConfigured(address,uint256)": TypedContractEvent<AdapterTimelocksConfiguredEvent.InputTuple, AdapterTimelocksConfiguredEvent.OutputTuple, AdapterTimelocksConfiguredEvent.OutputObject>;
155
+ AdapterTimelocksConfigured: TypedContractEvent<AdapterTimelocksConfiguredEvent.InputTuple, AdapterTimelocksConfiguredEvent.OutputTuple, AdapterTimelocksConfiguredEvent.OutputObject>;
156
+ "VaultDeployed(address,address,address,address,address)": TypedContractEvent<VaultDeployedEvent.InputTuple, VaultDeployedEvent.OutputTuple, VaultDeployedEvent.OutputObject>;
157
+ VaultDeployed: TypedContractEvent<VaultDeployedEvent.InputTuple, VaultDeployedEvent.OutputTuple, VaultDeployedEvent.OutputObject>;
158
+ "VaultTimelocksConfigured(address,uint256,uint256)": TypedContractEvent<VaultTimelocksConfiguredEvent.InputTuple, VaultTimelocksConfiguredEvent.OutputTuple, VaultTimelocksConfiguredEvent.OutputObject>;
159
+ VaultTimelocksConfigured: TypedContractEvent<VaultTimelocksConfiguredEvent.InputTuple, VaultTimelocksConfiguredEvent.OutputTuple, VaultTimelocksConfiguredEvent.OutputObject>;
160
+ };
161
+ }
162
+ //# sourceMappingURL=MorphoVaultV2DeployHelper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MorphoVaultV2DeployHelper.d.ts","sourceRoot":"","sources":["../../../typechain-types/contracts/MorphoVaultV2DeployHelper.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=IERC20Metadata.js.map
3
+ //# sourceMappingURL=MorphoVaultV2DeployHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MorphoVaultV2DeployHelper.js","sourceRoot":"","sources":["../../../typechain-types/contracts/MorphoVaultV2DeployHelper.ts"],"names":[],"mappings":""}
@@ -1,5 +1,3 @@
1
- import type * as morphoMarketDataFetcherSol from "./MorphoMarketDataFetcher.sol";
2
- export type { morphoMarketDataFetcherSol };
3
1
  import type * as oracleFactorySol from "./OracleFactory.sol";
4
2
  export type { oracleFactorySol };
5
3
  import type * as tokenFactorySol from "./TokenFactory.sol";
@@ -9,4 +7,6 @@ export type { external };
9
7
  import type * as vendor from "./vendor";
10
8
  export type { vendor };
11
9
  export type { DComp } from "./DComp";
10
+ export type { MorphoMarketDataFetcher } from "./MorphoMarketDataFetcher";
11
+ export type { MorphoVaultV2DeployHelper } from "./MorphoVaultV2DeployHelper";
12
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../typechain-types/contracts/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,0BAA0B,MAAM,+BAA+B,CAAC;AACjF,YAAY,EAAE,0BAA0B,EAAE,CAAC;AAC3C,OAAO,KAAK,KAAK,gBAAgB,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,gBAAgB,EAAE,CAAC;AACjC,OAAO,KAAK,KAAK,eAAe,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,eAAe,EAAE,CAAC;AAChC,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAC5C,YAAY,EAAE,QAAQ,EAAE,CAAC;AACzB,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC;AACvB,YAAY,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../typechain-types/contracts/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,gBAAgB,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,gBAAgB,EAAE,CAAC;AACjC,OAAO,KAAK,KAAK,eAAe,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,eAAe,EAAE,CAAC;AAChC,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAC5C,YAAY,EAAE,QAAQ,EAAE,CAAC;AACzB,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC;AACvB,YAAY,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,YAAY,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACzE,YAAY,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { ContractFactory, ContractTransactionResponse } from "ethers";
2
2
  import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers";
3
- import type { NonPayableOverrides } from "../../../common";
4
- import type { MorphoMarketDataFetcher, MorphoMarketDataFetcherInterface } from "../../../contracts/MorphoMarketDataFetcher.sol/MorphoMarketDataFetcher";
3
+ import type { NonPayableOverrides } from "../../common";
4
+ import type { MorphoMarketDataFetcher, MorphoMarketDataFetcherInterface } from "../../contracts/MorphoMarketDataFetcher";
5
5
  type MorphoMarketDataFetcherConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
6
6
  export declare class MorphoMarketDataFetcher__factory extends ContractFactory {
7
7
  constructor(...args: MorphoMarketDataFetcherConstructorParams);
@@ -14,7 +14,7 @@ export declare class MorphoMarketDataFetcher__factory extends ContractFactory {
14
14
  deploymentTransaction(): ContractTransactionResponse;
15
15
  }>;
16
16
  connect(runner: ContractRunner | null): MorphoMarketDataFetcher__factory;
17
- static readonly bytecode = "0x60a060405234801561001057600080fd5b506040516115e23803806115e283398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b6080516115366100ac6000396000818160690152818160c4015281816102ab015281816102fa01528181610d2a0152610d8501526115366000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063881268cb1461003b578063e183129814610064575b600080fd5b61004e610049366004610f4f565b6100a3565b60405161005b9190611064565b60405180910390f35b61008b7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161005b565b6100ab610e0e565b604051632c3c915760e01b8152600481018390526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632c3c91579060240160a060405180830381865afa158015610113573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061013791906112bb565b60608301819052805183516001600160a01b0391821690528151604080516306fdde0360e01b815290519394509116916306fdde03916004808201926000929091908290030181865afa9250505080156101b357506040513d6000823e601f3d908101601f191682016040526101b09190810190611346565b60015b156101bf578251602001525b80600001516001600160a01b03166395d89b416040518163ffffffff1660e01b8152600401600060405180830381865afa92505050801561022257506040513d6000823e601f3d908101601f1916820160405261021f9190810190611346565b60015b1561022e578251604001525b80600001516001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561028c575060408051601f3d908101601f19168201909252610289918101906113dc565b60015b1561029f57825160ff9091166060909101525b33158015906102d657507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031615155b15610372578051604051636eb1769f60e11b81523360048201526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660248301529091169063dd62ed3e90604401602060405180830381865afa925050508015610366575060408051601f3d908101601f1916820190925261036391810190611406565b60015b15610372578251608001525b80602001518260200151600001906001600160a01b031690816001600160a01b03168152505080602001516001600160a01b03166306fdde036040518163ffffffff1660e01b8152600401600060405180830381865afa9250505080156103fb57506040513d6000823e601f3d908101601f191682016040526103f89190810190611346565b60015b156104095760208084015101525b80602001516001600160a01b03166395d89b416040518163ffffffff1660e01b8152600401600060405180830381865afa92505050801561046c57506040513d6000823e601f3d908101601f191682016040526104699190810190611346565b60015b1561047b576020830151604001525b80602001516001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156104d9575060408051601f3d908101601f191682019092526104d6918101906113dc565b60015b156104ef57602083015160ff9091166060909101525b60408101516001600160a01b0316156109c05760408082018051848301516001600160a01b03918216905290518251631ea148e360e31b8152925191169163f50a47189160048083019260209291908290030181865afa925050508015610573575060408051601f3d908101601f191682019092526105709181019061141f565b60015b1561058f5760408301516001600160a01b039091166020909101525b80604001516001600160a01b031663dc53858c6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156105ed575060408051601f3d908101601f191682019092526105ea9181019061141f565b60015b15610607576040808401516001600160a01b039092169101525b80604001516001600160a01b031663eaa2d7b46040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610665575060408051601f3d908101601f191682019092526106629181019061141f565b60015b156106815760408301516001600160a01b039091166060909101525b80604001516001600160a01b031663054f7ac06040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156106df575060408051601f3d908101601f191682019092526106dc9181019061141f565b60015b156106fb5760408301516001600160a01b039091166080909101525b80604001516001600160a01b03166356095e116040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610759575060408051601f3d908101601f191682019092526107569181019061141f565b60015b156107755760408301516001600160a01b0390911660a0909101525b80604001516001600160a01b031663acfbd39e6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156107d3575060408051601f3d908101601f191682019092526107d09181019061141f565b60015b156107ef5760408301516001600160a01b0390911660c0909101525b80604001516001600160a01b0316632e6f20a66040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561084d575060408051601f3d908101601f1916820190925261084a9181019061141f565b60015b156108695760408301516001600160a01b0390911660e0909101525b80604001516001600160a01b031663461739d26040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156108c7575060408051601f3d908101601f191682019092526108c49181019061141f565b60015b156108e45760408301516001600160a01b03909116610100909101525b80604001516001600160a01b031663ce4b5bbe6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610942575060408051601f3d908101601f1916820190925261093f91810190611406565b60015b1561095257604083015161012001525b80604001516001600160a01b031663a035b1fe6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156109b0575060408051601f3d908101601f191682019092526109ad91810190611406565b60015b156109c057604083015161014001525b6040820151602001516001600160a01b031615610b765760408083018051602080820151610160909201516001600160a01b0392831690529151909101518251633fabe5a360e21b8152925191169163feaf968c9160048083019260a09291908290030181865afa925050508015610a55575060408051601f3d908101601f19168201909252610a5291810190611454565b60015b15610a7f5760008413610a69576000610a6b565b835b604088015161016001516020015250505050505b8160400151602001516001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610ae1575060408051601f3d908101601f19168201909252610ade918101906113dc565b60015b15610afc576040830151610160015160ff9091166060909101525b8160400151602001516001600160a01b03166395d89b416040518163ffffffff1660e01b8152600401600060405180830381865afa925050508015610b6357506040513d6000823e601f3d908101601f19168201604052610b609190810190611346565b60015b15610b7657604080840151610160015101525b604082015160a001516001600160a01b031615610d28576040808301805160a080820151610180909201516001600160a01b03928316905291518201518351633fabe5a360e21b8152935191169263feaf968c9260048083019391928290030181865afa925050508015610c07575060408051601f3d908101601f19168201909252610c0491810190611454565b60015b15610c315760008413610c1b576000610c1d565b835b604088015161018001516020015250505050505b816040015160a001516001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610c93575060408051601f3d908101601f19168201909252610c90918101906113dc565b60015b15610cae576040830151610180015160ff9091166060909101525b816040015160a001516001600160a01b03166395d89b416040518163ffffffff1660e01b8152600401600060405180830381865afa925050508015610d1557506040513d6000823e601f3d908101601f19168201604052610d129190810190611346565b60015b15610d2857604080840151610180015101525b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031615801590610d5f57508215155b15610e08576040516349e2903160e11b81526004810184905261dead60248201819052907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906393c5206290604401606060405180830381865afa925050508015610df0575060408051601f3d908101601f19168201909252610ded918101906114bd565b60015b15610e065750506001600160801b031660808401525b505b50919050565b6040518060a00160405280610e21610f14565b8152602001610e2e610f14565b8152602001610ed9604080516101a081018252600080825260208083018290528284018290526060808401839052608080850184905260a0850184905260c0850184905260e0850184905261010085018490526101208501849052610140850184905285518082018752848152808401859052808701839052808301859052610160860152855190810186528381529182018390529381018490529283015261018081019190915290565b81526040805160a081018252600080825260208281018290529282018190526060820181905260808201529101908152602001600081525090565b6040518060a0016040528060006001600160a01b031681526020016060815260200160608152602001600060ff168152602001600081525090565b600060208284031215610f6157600080fd5b5035919050565b60005b83811015610f83578181015183820152602001610f6b565b50506000910152565b60008151808452610fa4816020860160208601610f68565b601f01601f19169290920160200192915050565b60018060a01b0381511682526000602082015160a06020850152610fdf60a0850182610f8c565b905060408301518482036040860152610ff88282610f8c565b91505060ff6060840151166060850152608083015160808501528091505092915050565b60018060a01b03815116825260208101516020830152600060408201516080604085015261104d6080850182610f8c565b60609384015160ff16949093019390935250919050565b60208152600082516101206020840152611082610140840182610fb8565b90506020840151601f1984830301604085015261109f8282610fb8565b9150506040840151601f198483030160608501526110c68282516001600160a01b03169052565b60208101516110e060208401826001600160a01b03169052565b5060408101516110fb60408401826001600160a01b03169052565b50606081015161111660608401826001600160a01b03169052565b50608081015161113160808401826001600160a01b03169052565b5060a081015161114c60a08401826001600160a01b03169052565b5060c081015161116760c08401826001600160a01b03169052565b5060e081015161118260e08401826001600160a01b03169052565b5061010081015161119f6101008401826001600160a01b03169052565b506101208101516101208301526101408101516101408301526101608101516101a06101608401526111d56101a084018261101c565b905061018082015191508281036101808401526111f2818361101c565b925050506060840151611242608085018280516001600160a01b03908116835260208083015182169084015260408083015182169084015260608083015190911690830152608090810151910152565b5060808401516101208401528091505092915050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561129757611297611258565b604052919050565b80516001600160a01b03811681146112b657600080fd5b919050565b600060a08284031280156112ce57600080fd5b5060405160a0810167ffffffffffffffff811182821017156112f2576112f2611258565b6040526112fe8361129f565b815261130c6020840161129f565b602082015261131d6040840161129f565b604082015261132e6060840161129f565b60608201526080928301519281019290925250919050565b60006020828403121561135857600080fd5b815167ffffffffffffffff81111561136f57600080fd5b8201601f8101841361138057600080fd5b805167ffffffffffffffff81111561139a5761139a611258565b6113ad601f8201601f191660200161126e565b8181528560208385010111156113c257600080fd5b6113d3826020830160208601610f68565b95945050505050565b6000602082840312156113ee57600080fd5b815160ff811681146113ff57600080fd5b9392505050565b60006020828403121561141857600080fd5b5051919050565b60006020828403121561143157600080fd5b6113ff8261129f565b805169ffffffffffffffffffff811681146112b657600080fd5b600080600080600060a0868803121561146c57600080fd5b6114758661143a565b6020870151604088015160608901519297509095509350915061149a6080870161143a565b90509295509295909350565b80516001600160801b03811681146112b657600080fd5b6000806000606084860312156114d257600080fd5b6114db846114a6565b92506114e9602085016114a6565b91506114f7604085016114a6565b9050925092509256fea264697066735822122063839ef333c088d4cd36eafd43f98185d02e7137bd2a3ff3e271a9162a8c0cad64736f6c634300081b0033";
17
+ static readonly bytecode = "0x60a060405234801561001057600080fd5b506040516115da3803806115da83398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b60805161152e6100ac6000396000818160690152818160c4015281816102ab015281816102fa01528181610d100152610d6e015261152e6000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063881268cb1461003b578063e183129814610064575b600080fd5b61004e610049366004610f31565b6100a3565b60405161005b9190611046565b60405180910390f35b61008b7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161005b565b6100ab610df0565b604051632c3c915760e01b8152600481018390526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632c3c91579060240160a060405180830381865afa158015610113573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101379190611277565b60608301819052805183516001600160a01b0391821690528151604080516306fdde0360e01b815290519394509116916306fdde03916004808201926000929091908290030181865afa9250505080156101b357506040513d6000823e601f3d908101601f191682016040526101b0919081019061130a565b60015b156101bf578251602001525b80600001516001600160a01b03166395d89b416040518163ffffffff1660e01b8152600401600060405180830381865afa92505050801561022257506040513d6000823e601f3d908101601f1916820160405261021f919081019061130a565b60015b1561022e578251604001525b80600001516001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561028c575060408051601f3d908101601f19168201909252610289918101906113a0565b60015b1561029f57825160ff9091166060909101525b33158015906102d657507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031615155b15610372578051604051636eb1769f60e11b81523360048201526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660248301529091169063dd62ed3e90604401602060405180830381865afa925050508015610366575060408051601f3d908101601f19168201909252610363918101906113ca565b60015b15610372578251608001525b80602001518260200151600001906001600160a01b031690816001600160a01b03168152505080602001516001600160a01b03166306fdde036040518163ffffffff1660e01b8152600401600060405180830381865afa9250505080156103fb57506040513d6000823e601f3d908101601f191682016040526103f8919081019061130a565b60015b156104095760208084015101525b80602001516001600160a01b03166395d89b416040518163ffffffff1660e01b8152600401600060405180830381865afa92505050801561046c57506040513d6000823e601f3d908101601f19168201604052610469919081019061130a565b60015b1561047b576020830151604001525b80602001516001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156104d9575060408051601f3d908101601f191682019092526104d6918101906113a0565b60015b156104ef57602083015160ff9091166060909101525b60408101516001600160a01b0316156109a65760408082018051848301516001600160a01b03918216905290518251631ea148e360e31b8152925191169163f50a47189160048083019260209291908290030181865afa925050508015610573575060408051601f3d908101601f19168201909252610570918101906113e3565b60015b1561058f5760408301516001600160a01b039091166020909101525b80604001516001600160a01b031663dc53858c6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156105ed575060408051601f3d908101601f191682019092526105ea918101906113e3565b60015b15610607576040808401516001600160a01b039092169101525b80604001516001600160a01b031663eaa2d7b46040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610665575060408051601f3d908101601f19168201909252610662918101906113e3565b60015b156106815760408301516001600160a01b039091166060909101525b80604001516001600160a01b031663054f7ac06040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156106df575060408051601f3d908101601f191682019092526106dc918101906113ca565b60015b156106ee576040830151608001525b80604001516001600160a01b03166356095e116040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561074c575060408051601f3d908101601f19168201909252610749918101906113e3565b60015b156107685760408301516001600160a01b0390911660a0909101525b80604001516001600160a01b031663acfbd39e6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156107c6575060408051601f3d908101601f191682019092526107c3918101906113e3565b60015b156107e25760408301516001600160a01b0390911660c0909101525b80604001516001600160a01b0316632e6f20a66040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610840575060408051601f3d908101601f1916820190925261083d918101906113e3565b60015b1561085c5760408301516001600160a01b0390911660e0909101525b80604001516001600160a01b031663461739d26040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156108ba575060408051601f3d908101601f191682019092526108b7918101906113ca565b60015b156108ca57604083015161010001525b80604001516001600160a01b031663ce4b5bbe6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610928575060408051601f3d908101601f19168201909252610925918101906113ca565b60015b1561093857604083015161012001525b80604001516001600160a01b031663a035b1fe6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610996575060408051601f3d908101601f19168201909252610993918101906113ca565b60015b156109a657604083015161014001525b6040820151602001516001600160a01b031615610b5c5760408083018051602080820151610160909201516001600160a01b0392831690529151909101518251633fabe5a360e21b8152925191169163feaf968c9160048083019260a09291908290030181865afa925050508015610a3b575060408051601f3d908101601f19168201909252610a389181019061141f565b60015b15610a655760008413610a4f576000610a51565b835b604088015161016001516020015250505050505b8160400151602001516001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610ac7575060408051601f3d908101601f19168201909252610ac4918101906113a0565b60015b15610ae2576040830151610160015160ff9091166060909101525b8160400151602001516001600160a01b0316637284e4166040518163ffffffff1660e01b8152600401600060405180830381865afa925050508015610b4957506040513d6000823e601f3d908101601f19168201604052610b46919081019061130a565b60015b15610b5c57604080840151610160015101525b604082015160a001516001600160a01b031615610d0e576040808301805160a080820151610180909201516001600160a01b03928316905291518201518351633fabe5a360e21b8152935191169263feaf968c9260048083019391928290030181865afa925050508015610bed575060408051601f3d908101601f19168201909252610bea9181019061141f565b60015b15610c175760008413610c01576000610c03565b835b604088015161018001516020015250505050505b816040015160a001516001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610c79575060408051601f3d908101601f19168201909252610c76918101906113a0565b60015b15610c94576040830151610180015160ff9091166060909101525b816040015160a001516001600160a01b0316637284e4166040518163ffffffff1660e01b8152600401600060405180830381865afa925050508015610cfb57506040513d6000823e601f3d908101601f19168201604052610cf8919081019061130a565b60015b15610d0e57604080840151610180015101525b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031615801590610d4557508215155b15610dea576040516349e2903160e11b81526004810184905261dead60248201819052906000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906393c5206290604401606060405180830381865afa158015610dbd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610de19190611491565b51608085015250505b50919050565b6040518060a00160405280610e03610ef6565b8152602001610e10610ef6565b8152602001610ebb604080516101a081018252600080825260208083018290528284018290526060808401839052608080850184905260a0850184905260c0850184905260e0850184905261010085018490526101208501849052610140850184905285518082018752848152808401859052808701839052808301859052610160860152855190810186528381529182018390529381018490529283015261018081019190915290565b81526040805160a081018252600080825260208281018290529282018190526060820181905260808201529101908152602001600081525090565b6040518060a0016040528060006001600160a01b031681526020016060815260200160608152602001600060ff168152602001600081525090565b600060208284031215610f4357600080fd5b5035919050565b60005b83811015610f65578181015183820152602001610f4d565b50506000910152565b60008151808452610f86816020860160208601610f4a565b601f01601f19169290920160200192915050565b60018060a01b0381511682526000602082015160a06020850152610fc160a0850182610f6e565b905060408301518482036040860152610fda8282610f6e565b91505060ff6060840151166060850152608083015160808501528091505092915050565b60018060a01b03815116825260208101516020830152600060408201516080604085015261102f6080850182610f6e565b60609384015160ff16949093019390935250919050565b60208152600082516101206020840152611064610140840182610f9a565b90506020840151601f198483030160408501526110818282610f9a565b9150506040840151601f198483030160608501526110a88282516001600160a01b03169052565b60208101516110c260208401826001600160a01b03169052565b5060408101516110dd60408401826001600160a01b03169052565b5060608101516110f860608401826001600160a01b03169052565b506080810151608083015260a081015161111d60a08401826001600160a01b03169052565b5060c081015161113860c08401826001600160a01b03169052565b5060e081015161115360e08401826001600160a01b03169052565b506101008101516101008301526101208101516101208301526101408101516101408301526101608101516101a06101608401526111956101a0840182610ffe565b905061018082015191508281036101808401526111b28183610ffe565b925050506060840151611202608085018280516001600160a01b03908116835260208083015182169084015260408083015182169084015260608083015190911690830152608090810151910152565b5060808401516101208401528091505092915050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561125757611257611218565b604052919050565b6001600160a01b038116811461127457600080fd5b50565b600060a082840312801561128a57600080fd5b5060405160a0810167ffffffffffffffff811182821017156112ae576112ae611218565b60405282516112bc8161125f565b815260208301516112cc8161125f565b602082015260408301516112df8161125f565b604082015260608301516112f28161125f565b60608201526080928301519281019290925250919050565b60006020828403121561131c57600080fd5b815167ffffffffffffffff81111561133357600080fd5b8201601f8101841361134457600080fd5b805167ffffffffffffffff81111561135e5761135e611218565b611371601f8201601f191660200161122e565b81815285602083850101111561138657600080fd5b611397826020830160208601610f4a565b95945050505050565b6000602082840312156113b257600080fd5b815160ff811681146113c357600080fd5b9392505050565b6000602082840312156113dc57600080fd5b5051919050565b6000602082840312156113f557600080fd5b81516113c38161125f565b805169ffffffffffffffffffff8116811461141a57600080fd5b919050565b600080600080600060a0868803121561143757600080fd5b61144086611400565b6020870151604088015160608901519297509095509350915061146560808701611400565b90509295509295909350565b80516fffffffffffffffffffffffffffffffff8116811461141a57600080fd5b600060608284031280156114a457600080fd5b506040516060810167ffffffffffffffff811182821017156114c8576114c8611218565b604052825181526114db60208401611471565b60208201526114ec60408401611471565b6040820152939250505056fea264697066735822122002d3425b89c02f9e7be223b7253512a9671a416430486ef7eac944a00099090264736f6c634300081b0033";
18
18
  static readonly abi: readonly [{
19
19
  readonly inputs: readonly [{
20
20
  readonly internalType: "address";
@@ -87,37 +87,37 @@ export declare class MorphoMarketDataFetcher__factory extends ContractFactory {
87
87
  readonly name: "oracleAddress";
88
88
  readonly type: "address";
89
89
  }, {
90
- readonly internalType: "address";
90
+ readonly internalType: "contract AggregatorV3Interface";
91
91
  readonly name: "baseFeed1";
92
92
  readonly type: "address";
93
93
  }, {
94
- readonly internalType: "address";
94
+ readonly internalType: "contract AggregatorV3Interface";
95
95
  readonly name: "baseFeed2";
96
96
  readonly type: "address";
97
97
  }, {
98
- readonly internalType: "address";
98
+ readonly internalType: "contract IERC4626";
99
99
  readonly name: "baseVault";
100
100
  readonly type: "address";
101
101
  }, {
102
- readonly internalType: "address";
102
+ readonly internalType: "uint256";
103
103
  readonly name: "baseVaultConversionSample";
104
- readonly type: "address";
104
+ readonly type: "uint256";
105
105
  }, {
106
- readonly internalType: "address";
106
+ readonly internalType: "contract AggregatorV3Interface";
107
107
  readonly name: "quoteFeed1";
108
108
  readonly type: "address";
109
109
  }, {
110
- readonly internalType: "address";
110
+ readonly internalType: "contract AggregatorV3Interface";
111
111
  readonly name: "quoteFeed2";
112
112
  readonly type: "address";
113
113
  }, {
114
- readonly internalType: "address";
114
+ readonly internalType: "contract IERC4626";
115
115
  readonly name: "quoteVault";
116
116
  readonly type: "address";
117
117
  }, {
118
- readonly internalType: "address";
118
+ readonly internalType: "uint256";
119
119
  readonly name: "quoteVaultConversionSample";
120
- readonly type: "address";
120
+ readonly type: "uint256";
121
121
  }, {
122
122
  readonly internalType: "uint256";
123
123
  readonly name: "scaleFactor";
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MorphoMarketDataFetcher__factory.d.ts","sourceRoot":"","sources":["../../../../typechain-types/factories/contracts/MorphoMarketDataFetcher__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EACV,uBAAuB,EACvB,gCAAgC,EACjC,MAAM,yCAAyC,CAAC;AA8QjD,KAAK,wCAAwC,GACzC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,gCAAiC,SAAQ,eAAe;gBACvD,GAAG,IAAI,EAAE,wCAAwC;IAQpD,oBAAoB,CAC3B,cAAc,EAAE,WAAW,EAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,cAAc,EAAE,WAAW,EAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAEK,OAAO,CAC7D,uBAAuB,GAAG;QACxB,qBAAqB,IAAI,2BAA2B,CAAC;KACtD,CACF;IAEM,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,gCAAgC;IAInC,MAAM,CAAC,QAAQ,CAAC,QAAQ,47VAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gCAAgC;IAG1D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,uBAAuB;CAO3B"}