@moonwell-fi/moonwell-sdk 0.12.2 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/_cjs/actions/governance/getDelegates.js.map +1 -1
- package/_cjs/actions/governance/getUserVotingPowers.js +21 -6
- package/_cjs/actions/governance/getUserVotingPowers.js.map +1 -1
- package/_cjs/actions/morpho/user-rewards/common.js +77 -9
- package/_cjs/actions/morpho/user-rewards/common.js.map +1 -1
- package/_cjs/actions/morpho/user-rewards/getMorphoUserRewards.js +46 -10
- package/_cjs/actions/morpho/user-rewards/getMorphoUserRewards.js.map +1 -1
- package/_cjs/environments/definitions/ethereum/contracts.js +12 -0
- package/_cjs/environments/definitions/ethereum/contracts.js.map +1 -0
- package/_cjs/environments/definitions/ethereum/custom.js +18 -0
- package/_cjs/environments/definitions/ethereum/custom.js.map +1 -0
- package/_cjs/environments/definitions/ethereum/environment.js +9 -5
- package/_cjs/environments/definitions/ethereum/environment.js.map +1 -1
- package/_cjs/environments/definitions/ethereum/tokens.js +12 -0
- package/_cjs/environments/definitions/ethereum/tokens.js.map +1 -1
- package/_cjs/environments/definitions/governance.js +1 -1
- package/_cjs/environments/definitions/governance.js.map +1 -1
- package/_cjs/errors/version.js +1 -1
- package/_cjs/index.js +5 -1
- package/_cjs/index.js.map +1 -1
- package/_esm/actions/governance/getDelegates.js +2 -0
- package/_esm/actions/governance/getDelegates.js.map +1 -1
- package/_esm/actions/governance/getUserVotingPowers.js +24 -6
- package/_esm/actions/governance/getUserVotingPowers.js.map +1 -1
- package/_esm/actions/morpho/user-rewards/common.js +83 -9
- package/_esm/actions/morpho/user-rewards/common.js.map +1 -1
- package/_esm/actions/morpho/user-rewards/getMorphoUserRewards.js +51 -11
- package/_esm/actions/morpho/user-rewards/getMorphoUserRewards.js.map +1 -1
- package/_esm/environments/definitions/ethereum/contracts.js +10 -0
- package/_esm/environments/definitions/ethereum/contracts.js.map +1 -0
- package/_esm/environments/definitions/ethereum/custom.js +15 -0
- package/_esm/environments/definitions/ethereum/custom.js.map +1 -0
- package/_esm/environments/definitions/ethereum/environment.js +11 -5
- package/_esm/environments/definitions/ethereum/environment.js.map +1 -1
- package/_esm/environments/definitions/ethereum/tokens.js +12 -0
- package/_esm/environments/definitions/ethereum/tokens.js.map +1 -1
- package/_esm/environments/definitions/governance.js +2 -2
- package/_esm/environments/definitions/governance.js.map +1 -1
- package/_esm/errors/version.js +1 -1
- package/_esm/index.js +2 -0
- package/_esm/index.js.map +1 -1
- package/_types/actions/governance/getDelegates.d.ts.map +1 -1
- package/_types/actions/governance/getUserVotingPowers.d.ts.map +1 -1
- package/_types/actions/morpho/user-rewards/common.d.ts +23 -0
- package/_types/actions/morpho/user-rewards/common.d.ts.map +1 -1
- package/_types/actions/morpho/user-rewards/getMorphoUserRewards.d.ts +22 -0
- package/_types/actions/morpho/user-rewards/getMorphoUserRewards.d.ts.map +1 -1
- package/_types/client/createMoonwellClient.d.ts +62 -2
- package/_types/client/createMoonwellClient.d.ts.map +1 -1
- package/_types/environments/definitions/ethereum/contracts.d.ts +4 -0
- package/_types/environments/definitions/ethereum/contracts.d.ts.map +1 -0
- package/_types/environments/definitions/ethereum/custom.d.ts +18 -0
- package/_types/environments/definitions/ethereum/custom.d.ts.map +1 -0
- package/_types/environments/definitions/ethereum/environment.d.ts +52 -2
- package/_types/environments/definitions/ethereum/environment.d.ts.map +1 -1
- package/_types/environments/definitions/ethereum/tokens.d.ts +12 -0
- package/_types/environments/definitions/ethereum/tokens.d.ts.map +1 -1
- package/_types/environments/definitions/governance.d.ts.map +1 -1
- package/_types/environments/index.d.ts +34 -4
- package/_types/environments/index.d.ts.map +1 -1
- package/_types/errors/version.d.ts +1 -1
- package/_types/index.d.ts +2 -0
- package/_types/index.d.ts.map +1 -1
- package/actions/governance/getDelegates.ts +2 -0
- package/actions/governance/getUserVotingPowers.ts +30 -15
- package/actions/morpho/user-rewards/common.ts +81 -11
- package/actions/morpho/user-rewards/getMorphoUserRewards.ts +77 -12
- package/environments/definitions/ethereum/contracts.ts +10 -0
- package/environments/definitions/ethereum/custom.ts +15 -0
- package/environments/definitions/ethereum/environment.ts +15 -6
- package/environments/definitions/ethereum/tokens.ts +12 -0
- package/environments/definitions/governance.ts +2 -2
- package/errors/version.ts +1 -1
- package/index.ts +3 -0
- package/package.json +1 -1
|
@@ -1,6 +1,56 @@
|
|
|
1
|
-
import { mainnet as ethereum } from "viem/chains";
|
|
2
1
|
import { type Environment } from "../../types/config.js";
|
|
2
|
+
import { contracts } from "./contracts.js";
|
|
3
|
+
import { custom } from "./custom.js";
|
|
3
4
|
import { tokens } from "./tokens.js";
|
|
4
|
-
declare const
|
|
5
|
+
declare const ethereum: {
|
|
6
|
+
blockExplorers: {
|
|
7
|
+
readonly default: {
|
|
8
|
+
readonly name: "Etherscan";
|
|
9
|
+
readonly url: "https://etherscan.io";
|
|
10
|
+
readonly apiUrl: "https://api.etherscan.io/api";
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
blockTime: 12000;
|
|
14
|
+
contracts: {
|
|
15
|
+
readonly ensUniversalResolver: {
|
|
16
|
+
readonly address: "0xeeeeeeee14d718c2b47d9923deab1335e144eeee";
|
|
17
|
+
readonly blockCreated: 23085558;
|
|
18
|
+
};
|
|
19
|
+
readonly multicall3: {
|
|
20
|
+
readonly address: "0xca11bde05977b3631167028862be2a173976ca11";
|
|
21
|
+
readonly blockCreated: 14353601;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
ensTlds?: readonly string[] | undefined;
|
|
25
|
+
id: 1;
|
|
26
|
+
name: "Ethereum";
|
|
27
|
+
nativeCurrency: {
|
|
28
|
+
readonly name: "Ether";
|
|
29
|
+
readonly symbol: "ETH";
|
|
30
|
+
readonly decimals: 18;
|
|
31
|
+
};
|
|
32
|
+
experimental_preconfirmationTime?: number | undefined | undefined;
|
|
33
|
+
rpcUrls: {
|
|
34
|
+
readonly default: {
|
|
35
|
+
readonly http: readonly ["https://eth.merkle.io"];
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
sourceId?: number | undefined | undefined;
|
|
39
|
+
testnet: false;
|
|
40
|
+
custom?: Record<string, unknown> | undefined;
|
|
41
|
+
extendSchema?: Record<string, unknown> | undefined;
|
|
42
|
+
fees?: import("viem").ChainFees<undefined> | undefined;
|
|
43
|
+
prepareTransactionRequest?: ((args: import("viem").PrepareTransactionRequestParameters, options: {
|
|
44
|
+
phase: "beforeFillTransaction" | "beforeFillParameters" | "afterFillParameters";
|
|
45
|
+
}) => Promise<import("viem").PrepareTransactionRequestParameters>) | [fn: ((args: import("viem").PrepareTransactionRequestParameters, options: {
|
|
46
|
+
phase: "beforeFillTransaction" | "beforeFillParameters" | "afterFillParameters";
|
|
47
|
+
}) => Promise<import("viem").PrepareTransactionRequestParameters>) | undefined, options: {
|
|
48
|
+
runAt: readonly ("beforeFillTransaction" | "beforeFillParameters" | "afterFillParameters")[];
|
|
49
|
+
}] | undefined;
|
|
50
|
+
serializers?: import("viem").ChainSerializers<undefined, import("viem").TransactionSerializable<bigint, number>> | undefined;
|
|
51
|
+
verifyHash?: ((client: import("viem").Client, parameters: import("viem").VerifyHashActionParameters) => Promise<import("viem").VerifyHashActionReturnType>) | undefined;
|
|
52
|
+
readonly formatters?: undefined | undefined;
|
|
53
|
+
};
|
|
54
|
+
declare const createEnvironment: (rpcUrls?: string[], governanceIndexerUrl?: string, lunarIndexerUrl?: string) => Environment<typeof tokens, {}, {}, typeof contracts, typeof custom>;
|
|
5
55
|
export { createEnvironment, ethereum, tokens };
|
|
6
56
|
//# sourceMappingURL=environment.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../../../environments/definitions/ethereum/environment.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../../../environments/definitions/ethereum/environment.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,WAAW,EAEjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAIrC,QAAA,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAA8C,CAAC;AAE7D,QAAA,MAAM,iBAAiB,GACrB,UAAU,MAAM,EAAE,EAClB,uBAAuB,MAAM,EAC7B,kBAAkB,MAAM,KACvB,WAAW,CAAC,OAAO,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,SAAS,EAAE,OAAO,MAAM,CAwBM,CAAC;AAE5E,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC"}
|
|
@@ -11,5 +11,17 @@ export declare const tokens: {
|
|
|
11
11
|
readonly name: "USD Coin";
|
|
12
12
|
readonly symbol: "USDC";
|
|
13
13
|
};
|
|
14
|
+
readonly WELL: {
|
|
15
|
+
readonly address: "0xA88594D404727625A9437C3f886C7643872296AE";
|
|
16
|
+
readonly decimals: 18;
|
|
17
|
+
readonly name: "Moonwell";
|
|
18
|
+
readonly symbol: "WELL";
|
|
19
|
+
};
|
|
20
|
+
readonly stkWELL: {
|
|
21
|
+
readonly address: "0xb3a9E0DCf37658a48aa9f018C44f90378ddD4357";
|
|
22
|
+
readonly decimals: 18;
|
|
23
|
+
readonly name: "Moonwell Staked WELL";
|
|
24
|
+
readonly symbol: "stkWELL";
|
|
25
|
+
};
|
|
14
26
|
};
|
|
15
27
|
//# sourceMappingURL=tokens.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../../environments/definitions/ethereum/tokens.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,MAAM
|
|
1
|
+
{"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../../environments/definitions/ethereum/tokens.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;CAyBjB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"governance.d.ts","sourceRoot":"","sources":["../../../environments/definitions/governance.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,CAAC,KAAK,EAAE,MAAM,GAAG,mBAAmB,CAAC;CACtC;AAQD,eAAO,MAAM,sBAAsB;;;;;kBAKf,MAAM,EAAE;;;;;;;
|
|
1
|
+
{"version":3,"file":"governance.d.ts","sourceRoot":"","sources":["../../../environments/definitions/governance.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,CAAC,KAAK,EAAE,MAAM,GAAG,mBAAmB,CAAC;CACtC;AAQD,eAAO,MAAM,sBAAsB;;;;;kBAKf,MAAM,EAAE;;;;;;;kBAOqC,MAAM,EAAE;;;;;;;kBAOzC,MAAM,EAAE;;;CAGtC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,sBAAsB,CAAC"}
|
|
@@ -788,11 +788,10 @@ declare const supportedChains: {
|
|
|
788
788
|
};
|
|
789
789
|
};
|
|
790
790
|
sourceId?: number | undefined | undefined;
|
|
791
|
-
testnet
|
|
791
|
+
testnet: false;
|
|
792
792
|
custom?: Record<string, unknown> | undefined;
|
|
793
793
|
extendSchema?: Record<string, unknown> | undefined;
|
|
794
794
|
fees?: import("viem").ChainFees<undefined> | undefined;
|
|
795
|
-
formatters?: undefined;
|
|
796
795
|
prepareTransactionRequest?: ((args: import("viem").PrepareTransactionRequestParameters, options: {
|
|
797
796
|
phase: "beforeFillTransaction" | "beforeFillParameters" | "afterFillParameters";
|
|
798
797
|
}) => Promise<import("viem").PrepareTransactionRequestParameters>) | [fn: ((args: import("viem").PrepareTransactionRequestParameters, options: {
|
|
@@ -800,8 +799,9 @@ declare const supportedChains: {
|
|
|
800
799
|
}) => Promise<import("viem").PrepareTransactionRequestParameters>) | undefined, options: {
|
|
801
800
|
runAt: readonly ("beforeFillTransaction" | "beforeFillParameters" | "afterFillParameters")[];
|
|
802
801
|
}] | undefined;
|
|
803
|
-
serializers?: import("viem").ChainSerializers<undefined, import("viem").TransactionSerializable
|
|
802
|
+
serializers?: import("viem").ChainSerializers<undefined, import("viem").TransactionSerializable<bigint, number>> | undefined;
|
|
804
803
|
verifyHash?: ((client: import("viem").Client, parameters: import("viem").VerifyHashActionParameters) => Promise<import("viem").VerifyHashActionReturnType>) | undefined;
|
|
804
|
+
readonly formatters?: undefined | undefined;
|
|
805
805
|
};
|
|
806
806
|
avalanche: {
|
|
807
807
|
blockExplorers: {
|
|
@@ -2182,7 +2182,37 @@ export declare const publicEnvironments: {
|
|
|
2182
2182
|
readonly name: "USD Coin";
|
|
2183
2183
|
readonly symbol: "USDC";
|
|
2184
2184
|
};
|
|
2185
|
-
|
|
2185
|
+
readonly WELL: {
|
|
2186
|
+
readonly address: "0xA88594D404727625A9437C3f886C7643872296AE";
|
|
2187
|
+
readonly decimals: 18;
|
|
2188
|
+
readonly name: "Moonwell";
|
|
2189
|
+
readonly symbol: "WELL";
|
|
2190
|
+
};
|
|
2191
|
+
readonly stkWELL: {
|
|
2192
|
+
readonly address: "0xb3a9E0DCf37658a48aa9f018C44f90378ddD4357";
|
|
2193
|
+
readonly decimals: 18;
|
|
2194
|
+
readonly name: "Moonwell Staked WELL";
|
|
2195
|
+
readonly symbol: "stkWELL";
|
|
2196
|
+
};
|
|
2197
|
+
}, {}, {}, {
|
|
2198
|
+
readonly governanceToken: "WELL";
|
|
2199
|
+
}, {
|
|
2200
|
+
governance: {
|
|
2201
|
+
token: "WELL";
|
|
2202
|
+
chainIds: never[];
|
|
2203
|
+
};
|
|
2204
|
+
wormhole: {
|
|
2205
|
+
chainId: number;
|
|
2206
|
+
tokenBridge: {
|
|
2207
|
+
address: "0x3ee18B2214AFF97000D974cf647E654bB5f1d8A8";
|
|
2208
|
+
};
|
|
2209
|
+
};
|
|
2210
|
+
xWELL: {
|
|
2211
|
+
bridgeAdapter: {
|
|
2212
|
+
address: "0x734AbBCe07679C9A6B4Fe3bC16325e028fA6DbB7";
|
|
2213
|
+
};
|
|
2214
|
+
};
|
|
2215
|
+
}>;
|
|
2186
2216
|
avalanche: Environment<{
|
|
2187
2217
|
readonly AVAX: {
|
|
2188
2218
|
readonly address: "0x0000000000000000000000000000000000000000";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../environments/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../environments/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const version = "0.
|
|
1
|
+
export declare const version = "0.13.0";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/_types/index.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export { createMoonwellClient, type MoonwellClient, } from "./client/createMoonwellClient.js";
|
|
2
|
+
export { MerklApiError } from "./actions/morpho/user-rewards/common.js";
|
|
3
|
+
export { MorphoUserRewardsAggregateError } from "./actions/morpho/user-rewards/getMorphoUserRewards.js";
|
|
2
4
|
export type { MarketConfig, MorphoMarketConfig, TokenConfig, VaultConfig, } from "./environments/types/config.js";
|
|
3
5
|
export type { CirculatingSupplySnapshot } from "./types/circulatingSupply.js";
|
|
4
6
|
export type { Delegate } from "./types/delegate.js";
|
package/_types/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,KAAK,cAAc,GACpB,MAAM,kCAAkC,CAAC;AAE1C,YAAY,EACV,YAAY,EACZ,kBAAkB,EAClB,WAAW,EACX,WAAW,GACZ,MAAM,gCAAgC,CAAC;AACxC,YAAY,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAC9E,YAAY,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC9E,YAAY,EACV,YAAY,EACZ,sBAAsB,EACtB,kCAAkC,GACnC,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,YAAY,EACV,wBAAwB,EACxB,uBAAuB,EACvB,+BAA+B,GAChC,MAAM,+BAA+B,CAAC;AACvC,YAAY,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,YAAY,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAClF,YAAY,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,YAAY,EACV,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,uBAAuB,EACvB,aAAa,EACb,KAAK,QAAQ,GACd,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,YAAY,EACV,WAAW,EACX,eAAe,EACf,eAAe,GAChB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,YAAY,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,YAAY,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,YAAY,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,YAAY,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,KAAK,cAAc,GACpB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AACxE,OAAO,EAAE,+BAA+B,EAAE,MAAM,uDAAuD,CAAC;AAExG,YAAY,EACV,YAAY,EACZ,kBAAkB,EAClB,WAAW,EACX,WAAW,GACZ,MAAM,gCAAgC,CAAC;AACxC,YAAY,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAC9E,YAAY,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC9E,YAAY,EACV,YAAY,EACZ,sBAAsB,EACtB,kCAAkC,GACnC,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,YAAY,EACV,wBAAwB,EACxB,uBAAuB,EACvB,+BAA+B,GAChC,MAAM,+BAA+B,CAAC;AACvC,YAAY,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,YAAY,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAClF,YAAY,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,YAAY,EACV,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,uBAAuB,EACvB,aAAa,EACb,KAAK,QAAQ,GACd,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,YAAY,EACV,WAAW,EACX,eAAe,EACf,eAAe,GAChB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,YAAY,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,YAAY,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,YAAY,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,YAAY,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -28,6 +28,8 @@ export async function getDelegates(
|
|
|
28
28
|
const apiVoters = await fetchAllVoters(governanceEnvironment);
|
|
29
29
|
const forumProfiles = await getForumProfiles();
|
|
30
30
|
|
|
31
|
+
// TODO: include mainnet.id once Ethereum's views contract ships, to match
|
|
32
|
+
// WELL.chainIds in environments/definitions/governance.ts.
|
|
31
33
|
const targetChainIds = [moonbeam.id, base.id, optimism.id] as const;
|
|
32
34
|
const envs = Object.values(client.environments as Environment[]).filter(
|
|
33
35
|
(env) =>
|
|
@@ -9,6 +9,8 @@ import type { OptionalNetworkParameterType } from "../../common/types.js";
|
|
|
9
9
|
import type { Chain, GovernanceToken } from "../../environments/index.js";
|
|
10
10
|
import type { UserVotingPowers } from "../../types/userVotingPowers.js";
|
|
11
11
|
|
|
12
|
+
const warnedNoViewsEnvs = new Set<string>();
|
|
13
|
+
|
|
12
14
|
export type GetUserVotingPowersParameters<
|
|
13
15
|
environments,
|
|
14
16
|
network extends Chain | undefined,
|
|
@@ -49,14 +51,31 @@ export async function getUserVotingPowers<
|
|
|
49
51
|
|
|
50
52
|
const environments = getEnvironmentsFromArgs(client, args);
|
|
51
53
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
54
|
+
// A chain can hold a governance token without deploying a views contract
|
|
55
|
+
// (voting reads run on the hub). Skipping the no-views case here lets the
|
|
56
|
+
// read site below call views.read.getUserVotingPower directly.
|
|
57
|
+
const tokenEnvironments = environments.flatMap((env) => {
|
|
58
|
+
if (env.custom?.governance?.token !== governanceToken) {
|
|
59
|
+
return [];
|
|
60
|
+
}
|
|
61
|
+
const views = env.contracts.views;
|
|
62
|
+
if (views === undefined) {
|
|
63
|
+
const key = `${env.chainId}:${governanceToken}`;
|
|
64
|
+
if (!warnedNoViewsEnvs.has(key)) {
|
|
65
|
+
warnedNoViewsEnvs.add(key);
|
|
66
|
+
console.warn(
|
|
67
|
+
`[moonwell-sdk] getUserVotingPowers: skipping chainId=${env.chainId} for governanceToken=${governanceToken} — environment holds the token but has no views contract.`,
|
|
68
|
+
);
|
|
69
|
+
}
|
|
70
|
+
return [];
|
|
71
|
+
}
|
|
72
|
+
return [{ env, views }];
|
|
73
|
+
});
|
|
55
74
|
|
|
56
75
|
const perChainBlockNumbers =
|
|
57
76
|
snapshotTimestamp !== undefined
|
|
58
77
|
? await Promise.all(
|
|
59
|
-
tokenEnvironments.map((env) =>
|
|
78
|
+
tokenEnvironments.map(({ env }) =>
|
|
60
79
|
getBlockNumberAtTimestamp(
|
|
61
80
|
env.publicClient,
|
|
62
81
|
BigInt(snapshotTimestamp),
|
|
@@ -65,23 +84,19 @@ export async function getUserVotingPowers<
|
|
|
65
84
|
)
|
|
66
85
|
: undefined;
|
|
67
86
|
|
|
68
|
-
const
|
|
69
|
-
tokenEnvironments.map((
|
|
87
|
+
const resolvedVotingPowers = await Promise.all(
|
|
88
|
+
tokenEnvironments.map(async ({ env, views }, index) => {
|
|
70
89
|
const blockForChain = perChainBlockNumbers
|
|
71
90
|
? perChainBlockNumbers[index]
|
|
72
91
|
: blockNumber;
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
},
|
|
78
|
-
);
|
|
92
|
+
const votingPowers = await views.read.getUserVotingPower([userAddress], {
|
|
93
|
+
blockNumber: blockForChain,
|
|
94
|
+
});
|
|
95
|
+
return { env, votingPowers };
|
|
79
96
|
}),
|
|
80
97
|
);
|
|
81
98
|
|
|
82
|
-
return
|
|
83
|
-
const votingPowers = environmentsUserVotingPowers[index]!;
|
|
84
|
-
|
|
99
|
+
return resolvedVotingPowers.map(({ env: environment, votingPowers }) => {
|
|
85
100
|
return {
|
|
86
101
|
chainId: environment.chainId,
|
|
87
102
|
|
|
@@ -13,9 +13,44 @@ import {
|
|
|
13
13
|
import type { MorphoUserReward } from "../../../types/morphoUserReward.js";
|
|
14
14
|
import type { MorphoUserStakingReward } from "../../../types/morphoUserStakingReward.js";
|
|
15
15
|
|
|
16
|
+
/**
|
|
17
|
+
* Error thrown for any failure communicating with the Merkl API: non-ok HTTP
|
|
18
|
+
* responses, network rejections (fetch threw), and response-body parse errors.
|
|
19
|
+
*
|
|
20
|
+
* - HTTP failures populate `status` and `statusText`.
|
|
21
|
+
* - Network and parse failures leave `status`/`statusText` undefined and
|
|
22
|
+
* carry the original error via `cause`.
|
|
23
|
+
*/
|
|
24
|
+
export class MerklApiError extends Error {
|
|
25
|
+
readonly status: number | undefined;
|
|
26
|
+
readonly statusText: string | undefined;
|
|
27
|
+
readonly url: string;
|
|
28
|
+
readonly chainId: number;
|
|
29
|
+
|
|
30
|
+
constructor(params: {
|
|
31
|
+
message: string;
|
|
32
|
+
url: string;
|
|
33
|
+
chainId: number;
|
|
34
|
+
status?: number | undefined;
|
|
35
|
+
statusText?: string | undefined;
|
|
36
|
+
cause?: unknown;
|
|
37
|
+
}) {
|
|
38
|
+
super(
|
|
39
|
+
params.message,
|
|
40
|
+
params.cause !== undefined ? { cause: params.cause } : undefined,
|
|
41
|
+
);
|
|
42
|
+
this.name = "MerklApiError";
|
|
43
|
+
this.url = params.url;
|
|
44
|
+
this.chainId = params.chainId;
|
|
45
|
+
this.status = params.status;
|
|
46
|
+
this.statusText = params.statusText;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
16
50
|
export async function getUserMorphoRewardsData(params: {
|
|
17
51
|
environment: Environment;
|
|
18
52
|
account: `0x${string}`;
|
|
53
|
+
throwOnExternalApiError?: boolean;
|
|
19
54
|
}): Promise<MorphoUserReward[]> {
|
|
20
55
|
// The Morpho URD distributions endpoint (rewards.morpho.org) was
|
|
21
56
|
// deprecated and now 301-redirects to a SPA, so JSON parsing fails.
|
|
@@ -23,6 +58,7 @@ export async function getUserMorphoRewardsData(params: {
|
|
|
23
58
|
const merklRewards = await getMerklRewardsData(
|
|
24
59
|
params.environment,
|
|
25
60
|
params.account,
|
|
61
|
+
{ throwOnError: params.throwOnExternalApiError ?? false },
|
|
26
62
|
);
|
|
27
63
|
|
|
28
64
|
const isFullDeployment =
|
|
@@ -294,30 +330,64 @@ type MerklRewardsResponse = {
|
|
|
294
330
|
async function getMerklRewardsData(
|
|
295
331
|
environment: Environment,
|
|
296
332
|
account: Address,
|
|
333
|
+
options: { throwOnError: boolean } = { throwOnError: false },
|
|
297
334
|
): Promise<MerklRewardsResponse[]> {
|
|
335
|
+
const url = `https://api.merkl.xyz/v4/users/${account}/rewards?chainId=${environment.chainId}&test=false&breakdownPage=0&reloadChainId=${environment.chainId}`;
|
|
336
|
+
|
|
337
|
+
let response: Response;
|
|
298
338
|
try {
|
|
299
339
|
// Merkl campaigns always distribute rewards on the same chain as the
|
|
300
340
|
// opportunity, so environment.chainId is the only chain we need to query.
|
|
301
341
|
// The previous two-phase approach (fetch opportunities per vault → extract
|
|
302
342
|
// chain IDs → fetch rewards per chain) made N+1 HTTP calls to discover
|
|
303
343
|
// a chain ID we already know.
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
344
|
+
response = await fetch(url, { headers: MOONWELL_FETCH_JSON_HEADERS });
|
|
345
|
+
} catch (error) {
|
|
346
|
+
if (options.throwOnError) {
|
|
347
|
+
throw new MerklApiError({
|
|
348
|
+
message: `Merkl API network error for chain ${environment.chainId}`,
|
|
349
|
+
url,
|
|
350
|
+
chainId: environment.chainId,
|
|
351
|
+
cause: error,
|
|
352
|
+
});
|
|
353
|
+
}
|
|
354
|
+
console.error(
|
|
355
|
+
`[getMerklRewardsData:network] chain=${environment.chainId} url=${url}`,
|
|
356
|
+
error,
|
|
309
357
|
);
|
|
358
|
+
return [];
|
|
359
|
+
}
|
|
310
360
|
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
361
|
+
if (!response.ok) {
|
|
362
|
+
const message = `Merkl API request failed for chain ${environment.chainId}: ${response.status} ${response.statusText}`;
|
|
363
|
+
if (options.throwOnError) {
|
|
364
|
+
throw new MerklApiError({
|
|
365
|
+
message,
|
|
366
|
+
url,
|
|
367
|
+
chainId: environment.chainId,
|
|
368
|
+
status: response.status,
|
|
369
|
+
statusText: response.statusText,
|
|
370
|
+
});
|
|
316
371
|
}
|
|
372
|
+
console.warn(`${message} (url=${url})`);
|
|
373
|
+
return [];
|
|
374
|
+
}
|
|
317
375
|
|
|
376
|
+
try {
|
|
318
377
|
return (await response.json()) as MerklRewardsResponse[];
|
|
319
378
|
} catch (error) {
|
|
320
|
-
|
|
379
|
+
if (options.throwOnError) {
|
|
380
|
+
throw new MerklApiError({
|
|
381
|
+
message: `Merkl API response parse error for chain ${environment.chainId}`,
|
|
382
|
+
url,
|
|
383
|
+
chainId: environment.chainId,
|
|
384
|
+
cause: error,
|
|
385
|
+
});
|
|
386
|
+
}
|
|
387
|
+
console.error(
|
|
388
|
+
`[getMerklRewardsData:parse] chain=${environment.chainId} url=${url}`,
|
|
389
|
+
error,
|
|
390
|
+
);
|
|
321
391
|
return [];
|
|
322
392
|
}
|
|
323
393
|
}
|
|
@@ -4,13 +4,41 @@ import { getEnvironmentsFromArgs } from "../../../common/index.js";
|
|
|
4
4
|
import type { OptionalNetworkParameterType } from "../../../common/types.js";
|
|
5
5
|
import type { Chain } from "../../../environments/index.js";
|
|
6
6
|
import type { MorphoUserReward } from "../../../types/morphoUserReward.js";
|
|
7
|
-
import { getUserMorphoRewardsData } from "./common.js";
|
|
7
|
+
import { MerklApiError, getUserMorphoRewardsData } from "./common.js";
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* AggregateError thrown by `getMorphoUserRewards` when one or more chains
|
|
11
|
+
* fail and `throwOnExternalApiError` is `true`. The `rewards` property
|
|
12
|
+
* carries the rewards from any chains that succeeded so callers can still
|
|
13
|
+
* surface partial results alongside the per-chain failures in `errors`.
|
|
14
|
+
*/
|
|
15
|
+
export class MorphoUserRewardsAggregateError extends AggregateError {
|
|
16
|
+
readonly rewards: MorphoUserReward[];
|
|
17
|
+
|
|
18
|
+
constructor(errors: Error[], message: string, rewards: MorphoUserReward[]) {
|
|
19
|
+
super(errors, message);
|
|
20
|
+
this.name = "MorphoUserRewardsAggregateError";
|
|
21
|
+
this.rewards = rewards;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
8
24
|
|
|
9
25
|
export type GetMorphoUserRewardsParameters<
|
|
10
26
|
environments,
|
|
11
27
|
network extends Chain | undefined,
|
|
12
28
|
> = OptionalNetworkParameterType<environments, network> & {
|
|
13
29
|
userAddress: Address;
|
|
30
|
+
/**
|
|
31
|
+
* When true, errors from the external Merkl API are propagated to the
|
|
32
|
+
* caller instead of being swallowed and returning `[]`. Default `false`
|
|
33
|
+
* preserves the historical behavior for existing consumers.
|
|
34
|
+
*
|
|
35
|
+
* If multiple environments are queried and at least one fails while others
|
|
36
|
+
* succeed, this throws a `MorphoUserRewardsAggregateError` whose `errors`
|
|
37
|
+
* array contains the per-chain failures and whose `rewards` property
|
|
38
|
+
* carries the successful chains' rewards so the caller can still display
|
|
39
|
+
* partial results.
|
|
40
|
+
*/
|
|
41
|
+
throwOnExternalApiError?: boolean;
|
|
14
42
|
};
|
|
15
43
|
|
|
16
44
|
export type GetMorphoUserRewardsReturnType = Promise<MorphoUserReward[]>;
|
|
@@ -22,18 +50,55 @@ export async function getMorphoUserRewards<
|
|
|
22
50
|
client: MoonwellClient,
|
|
23
51
|
args: GetMorphoUserRewardsParameters<environments, Network>,
|
|
24
52
|
): GetMorphoUserRewardsReturnType {
|
|
25
|
-
const
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
53
|
+
const targetEnvironments = getEnvironmentsFromArgs(client, args).filter(
|
|
54
|
+
(environment) => environment.contracts.morphoViews !== undefined,
|
|
55
|
+
);
|
|
56
|
+
|
|
57
|
+
const settled = await Promise.allSettled(
|
|
58
|
+
targetEnvironments.map((environment) =>
|
|
59
|
+
getUserMorphoRewardsData({
|
|
60
|
+
environment,
|
|
61
|
+
account: args.userAddress,
|
|
62
|
+
...(args.throwOnExternalApiError !== undefined && {
|
|
63
|
+
throwOnExternalApiError: args.throwOnExternalApiError,
|
|
64
|
+
}),
|
|
35
65
|
}),
|
|
66
|
+
),
|
|
36
67
|
);
|
|
37
68
|
|
|
38
|
-
|
|
69
|
+
const fulfilled: MorphoUserReward[] = [];
|
|
70
|
+
const failures: Error[] = [];
|
|
71
|
+
const failedChainIds: number[] = [];
|
|
72
|
+
for (const [i, result] of settled.entries()) {
|
|
73
|
+
const environment = targetEnvironments[i];
|
|
74
|
+
if (result.status === "fulfilled") {
|
|
75
|
+
fulfilled.push(...result.value);
|
|
76
|
+
continue;
|
|
77
|
+
}
|
|
78
|
+
const reason = result.reason;
|
|
79
|
+
if (reason instanceof MerklApiError) {
|
|
80
|
+
failures.push(reason);
|
|
81
|
+
failedChainIds.push(reason.chainId);
|
|
82
|
+
continue;
|
|
83
|
+
}
|
|
84
|
+
const baseError =
|
|
85
|
+
reason instanceof Error ? reason : new Error(String(reason));
|
|
86
|
+
failures.push(
|
|
87
|
+
new Error(
|
|
88
|
+
`getMorphoUserRewards failed for chain ${environment.chainId}: ${baseError.message}`,
|
|
89
|
+
{ cause: baseError },
|
|
90
|
+
),
|
|
91
|
+
);
|
|
92
|
+
failedChainIds.push(environment.chainId);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
if (failures.length > 0 && args.throwOnExternalApiError === true) {
|
|
96
|
+
throw new MorphoUserRewardsAggregateError(
|
|
97
|
+
failures,
|
|
98
|
+
`getMorphoUserRewards failed for chains: ${failedChainIds.join(", ")}`,
|
|
99
|
+
fulfilled,
|
|
100
|
+
);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
return fulfilled;
|
|
39
104
|
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { createContractsConfig } from "../../types/config.js";
|
|
2
|
+
import { tokens } from "./tokens.js";
|
|
3
|
+
|
|
4
|
+
export const contracts = createContractsConfig({
|
|
5
|
+
tokens,
|
|
6
|
+
contracts: {
|
|
7
|
+
// `stakingToken` is intentionally omitted until Ethereum staking contracts ship.
|
|
8
|
+
governanceToken: "WELL",
|
|
9
|
+
},
|
|
10
|
+
});
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { createCustomConfig } from "../../types/config.js";
|
|
2
|
+
|
|
3
|
+
export const custom = createCustomConfig({
|
|
4
|
+
governance: {
|
|
5
|
+
token: "WELL",
|
|
6
|
+
chainIds: [],
|
|
7
|
+
},
|
|
8
|
+
wormhole: {
|
|
9
|
+
chainId: 2,
|
|
10
|
+
tokenBridge: { address: "0x3ee18B2214AFF97000D974cf647E654bB5f1d8A8" },
|
|
11
|
+
},
|
|
12
|
+
xWELL: {
|
|
13
|
+
bridgeAdapter: { address: "0x734AbBCe07679C9A6B4Fe3bC16325e028fA6DbB7" },
|
|
14
|
+
},
|
|
15
|
+
});
|
|
@@ -1,15 +1,22 @@
|
|
|
1
|
-
import { http, fallback } from "viem";
|
|
2
|
-
import { mainnet
|
|
1
|
+
import { http, defineChain, fallback } from "viem";
|
|
2
|
+
import { mainnet } from "viem/chains";
|
|
3
3
|
import {
|
|
4
4
|
type Environment,
|
|
5
5
|
createEnvironmentConfig,
|
|
6
6
|
} from "../../types/config.js";
|
|
7
|
+
import { contracts } from "./contracts.js";
|
|
8
|
+
import { custom } from "./custom.js";
|
|
7
9
|
import { tokens } from "./tokens.js";
|
|
8
10
|
|
|
11
|
+
// viem's `mainnet` chain leaves `testnet` undefined; consumers
|
|
12
|
+
// (e.g. the bridge modal) check `env.chain.testnet === false` strictly.
|
|
13
|
+
const ethereum = defineChain({ ...mainnet, testnet: false });
|
|
14
|
+
|
|
9
15
|
const createEnvironment = (
|
|
10
16
|
rpcUrls?: string[],
|
|
11
17
|
governanceIndexerUrl?: string,
|
|
12
|
-
|
|
18
|
+
lunarIndexerUrl?: string,
|
|
19
|
+
): Environment<typeof tokens, {}, {}, typeof contracts, typeof custom> =>
|
|
13
20
|
createEnvironmentConfig({
|
|
14
21
|
key: "ethereum",
|
|
15
22
|
name: "Ethereum",
|
|
@@ -25,12 +32,14 @@ const createEnvironment = (
|
|
|
25
32
|
governanceIndexerUrl:
|
|
26
33
|
governanceIndexerUrl ||
|
|
27
34
|
"https://lunar-services-worker.moonwell.workers.dev",
|
|
35
|
+
lunarIndexerUrl:
|
|
36
|
+
lunarIndexerUrl || "https://lunar-services-worker.moonwell.workers.dev",
|
|
28
37
|
tokens,
|
|
29
38
|
markets: {},
|
|
30
39
|
vaults: {},
|
|
31
40
|
morphoMarkets: {},
|
|
32
|
-
contracts
|
|
33
|
-
custom
|
|
34
|
-
}) as Environment<typeof tokens, {}, {},
|
|
41
|
+
contracts,
|
|
42
|
+
custom,
|
|
43
|
+
}) as Environment<typeof tokens, {}, {}, typeof contracts, typeof custom>;
|
|
35
44
|
|
|
36
45
|
export { createEnvironment, ethereum, tokens };
|
|
@@ -14,4 +14,16 @@ export const tokens = createTokenConfig({
|
|
|
14
14
|
name: "USD Coin",
|
|
15
15
|
symbol: "USDC",
|
|
16
16
|
},
|
|
17
|
+
WELL: {
|
|
18
|
+
address: "0xA88594D404727625A9437C3f886C7643872296AE",
|
|
19
|
+
decimals: 18,
|
|
20
|
+
name: "Moonwell",
|
|
21
|
+
symbol: "WELL",
|
|
22
|
+
},
|
|
23
|
+
stkWELL: {
|
|
24
|
+
address: "0xb3a9E0DCf37658a48aa9f018C44f90378ddD4357",
|
|
25
|
+
decimals: 18,
|
|
26
|
+
name: "Moonwell Staked WELL",
|
|
27
|
+
symbol: "stkWELL",
|
|
28
|
+
},
|
|
17
29
|
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { base, moonbeam, moonriver, optimism } from "viem/chains";
|
|
1
|
+
import { base, mainnet, moonbeam, moonriver, optimism } from "viem/chains";
|
|
2
2
|
|
|
3
3
|
export interface GovernanceTokenInfo {
|
|
4
4
|
id: string;
|
|
@@ -30,7 +30,7 @@ export const GovernanceTokensConfig = createGovernanceTokensConfig({
|
|
|
30
30
|
id: "WELL",
|
|
31
31
|
symbol: "WELL",
|
|
32
32
|
name: "WELL",
|
|
33
|
-
chainIds: [moonbeam.id, base.id, optimism.id] as number[],
|
|
33
|
+
chainIds: [moonbeam.id, base.id, optimism.id, mainnet.id] as number[],
|
|
34
34
|
testnet: false,
|
|
35
35
|
},
|
|
36
36
|
MFAM: {
|
package/errors/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const version = '0.
|
|
1
|
+
export const version = '0.13.0'
|