curvance 4.0.3 → 4.1.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/README.md +595 -59
- package/dist/chains/arbitrum.d.ts.map +1 -1
- package/dist/chains/arbitrum.js +4 -2
- package/dist/chains/arbitrum.js.map +1 -1
- package/dist/chains/index.d.ts +4 -0
- package/dist/chains/index.d.ts.map +1 -1
- package/dist/chains/index.js +15 -0
- package/dist/chains/index.js.map +1 -1
- package/dist/chains/monad.d.ts.map +1 -1
- package/dist/chains/monad.js +4 -2
- package/dist/chains/monad.js.map +1 -1
- package/dist/chains/rpc.d.ts +57 -0
- package/dist/chains/rpc.d.ts.map +1 -0
- package/dist/chains/rpc.js +47 -0
- package/dist/chains/rpc.js.map +1 -0
- package/dist/classes/Api.d.ts +4 -3
- package/dist/classes/Api.d.ts.map +1 -1
- package/dist/classes/Api.js +7 -7
- package/dist/classes/Api.js.map +1 -1
- package/dist/classes/BorrowableCToken.d.ts +3 -2
- package/dist/classes/BorrowableCToken.d.ts.map +1 -1
- package/dist/classes/BorrowableCToken.js +6 -5
- package/dist/classes/BorrowableCToken.js.map +1 -1
- package/dist/classes/CToken.d.ts +11 -3
- package/dist/classes/CToken.d.ts.map +1 -1
- package/dist/classes/CToken.js +168 -116
- package/dist/classes/CToken.js.map +1 -1
- package/dist/classes/Calldata.d.ts +2 -2
- package/dist/classes/Calldata.d.ts.map +1 -1
- package/dist/classes/Calldata.js +2 -2
- package/dist/classes/Calldata.js.map +1 -1
- package/dist/classes/DexAggregators/IDexAgg.d.ts +2 -2
- package/dist/classes/DexAggregators/IDexAgg.d.ts.map +1 -1
- package/dist/classes/DexAggregators/Kuru.d.ts +2 -2
- package/dist/classes/DexAggregators/Kuru.d.ts.map +1 -1
- package/dist/classes/DexAggregators/Kuru.js +3 -4
- package/dist/classes/DexAggregators/Kuru.js.map +1 -1
- package/dist/classes/DexAggregators/KyberSwap.d.ts +2 -2
- package/dist/classes/DexAggregators/KyberSwap.d.ts.map +1 -1
- package/dist/classes/DexAggregators/KyberSwap.js +88 -9
- package/dist/classes/DexAggregators/KyberSwap.js.map +1 -1
- package/dist/classes/DexAggregators/MultiDexAgg.d.ts +2 -2
- package/dist/classes/DexAggregators/MultiDexAgg.d.ts.map +1 -1
- package/dist/classes/DexAggregators/MultiDexAgg.js +3 -3
- package/dist/classes/DexAggregators/MultiDexAgg.js.map +1 -1
- package/dist/classes/ERC20.d.ts +5 -3
- package/dist/classes/ERC20.d.ts.map +1 -1
- package/dist/classes/ERC20.js +20 -14
- package/dist/classes/ERC20.js.map +1 -1
- package/dist/classes/ERC4626.d.ts.map +1 -1
- package/dist/classes/ERC4626.js +3 -1
- package/dist/classes/ERC4626.js.map +1 -1
- package/dist/classes/Market.d.ts +13 -4
- package/dist/classes/Market.d.ts.map +1 -1
- package/dist/classes/Market.js +86 -28
- package/dist/classes/Market.js.map +1 -1
- package/dist/classes/NativeToken.d.ts +6 -3
- package/dist/classes/NativeToken.d.ts.map +1 -1
- package/dist/classes/NativeToken.js +11 -16
- package/dist/classes/NativeToken.js.map +1 -1
- package/dist/classes/OptimizerReader.d.ts +3 -3
- package/dist/classes/OptimizerReader.d.ts.map +1 -1
- package/dist/classes/OptimizerReader.js +1 -1
- package/dist/classes/OptimizerReader.js.map +1 -1
- package/dist/classes/OracleManager.d.ts +3 -3
- package/dist/classes/OracleManager.d.ts.map +1 -1
- package/dist/classes/OracleManager.js +1 -1
- package/dist/classes/OracleManager.js.map +1 -1
- package/dist/classes/PositionManager.d.ts +2 -2
- package/dist/classes/PositionManager.d.ts.map +1 -1
- package/dist/classes/PositionManager.js +4 -4
- package/dist/classes/PositionManager.js.map +1 -1
- package/dist/classes/ProtocolReader.d.ts +18 -4
- package/dist/classes/ProtocolReader.d.ts.map +1 -1
- package/dist/classes/ProtocolReader.js +177 -55
- package/dist/classes/ProtocolReader.js.map +1 -1
- package/dist/classes/Redstone.d.ts.map +1 -1
- package/dist/classes/Redstone.js +1 -2
- package/dist/classes/Redstone.js.map +1 -1
- package/dist/classes/Zapper.d.ts +4 -2
- package/dist/classes/Zapper.d.ts.map +1 -1
- package/dist/classes/Zapper.js +16 -14
- package/dist/classes/Zapper.js.map +1 -1
- package/dist/classes/index.d.ts +1 -1
- package/dist/classes/index.d.ts.map +1 -1
- package/dist/classes/index.js +6 -1
- package/dist/classes/index.js.map +1 -1
- package/dist/contracts/monad-mainnet.json +1 -1
- package/dist/feePolicy.d.ts +27 -1
- package/dist/feePolicy.d.ts.map +1 -1
- package/dist/feePolicy.js +10 -2
- package/dist/feePolicy.js.map +1 -1
- package/dist/helpers.d.ts +3 -1
- package/dist/helpers.d.ts.map +1 -1
- package/dist/helpers.js +34 -4
- package/dist/helpers.js.map +1 -1
- package/dist/integrations/snapshot.d.ts.map +1 -1
- package/dist/integrations/snapshot.js +4 -18
- package/dist/integrations/snapshot.js.map +1 -1
- package/dist/retry-provider.d.ts +81 -6
- package/dist/retry-provider.d.ts.map +1 -1
- package/dist/retry-provider.js +491 -37
- package/dist/retry-provider.js.map +1 -1
- package/dist/setup.d.ts +14 -3
- package/dist/setup.d.ts.map +1 -1
- package/dist/setup.js +56 -20
- package/dist/setup.js.map +1 -1
- package/dist/types.d.ts +2 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +3 -1
package/dist/feePolicy.js
CHANGED
|
@@ -1,10 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.NO_FEE_POLICY = exports.CURVANCE_DAO_FEE_RECEIVER = void 0;
|
|
3
|
+
exports.NO_FEE_POLICY = exports.CURVANCE_DAO_FEE_RECEIVER = exports.CURVANCE_FEE_BPS = void 0;
|
|
4
4
|
exports.flatFeePolicy = flatFeePolicy;
|
|
5
5
|
const chains_1 = require("./chains");
|
|
6
|
+
/** Fee BPS charged on all DEX swaps via KyberSwap's `feeAmount` parameter.
|
|
7
|
+
* Must match the on-chain KyberSwapChecker.FEE_BPS constant — if they
|
|
8
|
+
* diverge, every swap reverts (checker enforces exact match).
|
|
9
|
+
* To change the fee: update this constant AND redeploy the checker. */
|
|
10
|
+
exports.CURVANCE_FEE_BPS = 4n;
|
|
6
11
|
/** Curvance DAO fee receiver — same wallet used for protocol interest fees
|
|
7
|
-
* and existing Kuru aggregator referrer fees.
|
|
12
|
+
* and existing Kuru aggregator referrer fees. Must match
|
|
13
|
+
* centralRegistry.daoAddress() — the on-chain checker validates
|
|
14
|
+
* dynamically per-swap. If DAO permissions transfer on-chain without
|
|
15
|
+
* updating this constant, every swap reverts. */
|
|
8
16
|
exports.CURVANCE_DAO_FEE_RECEIVER = '0x0Acb7eF4D8733C719d60e0992B489b629bc55C02';
|
|
9
17
|
const NATIVE_ADDRESS = '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee';
|
|
10
18
|
/**
|
package/dist/feePolicy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feePolicy.js","sourceRoot":"","sources":["../src/feePolicy.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"feePolicy.js","sourceRoot":"","sources":["../src/feePolicy.ts"],"names":[],"mappings":";;;AAwLA,sCA2DC;AAhPD,qCAAwC;AAqHxC;;;wEAGwE;AAC3D,QAAA,gBAAgB,GAAG,EAAE,CAAC;AAEnC;;;;kDAIkD;AACrC,QAAA,yBAAyB,GAClC,4CAA4C,CAAC;AA0BjD,MAAM,cAAc,GAAG,4CAA4C,CAAC;AAEpE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,SAAgB,aAAa,CAAC,MAA2B;IACrD,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAExE,IAAI,GAAG,GAAG,EAAE,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,gDAAgD,GAAG,EAAE,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,GAAG,IAAI,MAAM,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,kDAAkD,GAAG,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;QAClC,IAAI,iBAAiB,GAAG,EAAE,IAAI,iBAAiB,IAAI,MAAM,EAAE,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,+DAA+D,iBAAiB,EAAE,CAAC,CAAC;QACxG,CAAC;IACL,CAAC;IAED,qEAAqE;IACrE,wEAAwE;IACxE,uCAAuC;IACvC,MAAM,QAAQ,GAAG,qBAAY,CAAC,KAAK,CAAC,CAAC;IACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,iCAAiC,KAAK,GAAG,CAAC,CAAC;IAC/D,CAAC;IACD,MAAM,kBAAkB,GAAG,QAAQ,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;IAEjE,OAAO;QACH,WAAW;QACX,SAAS,CAAC,GAAqB;YAC3B,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;YAE/C,+DAA+D;YAC/D,iEAAiE;YACjE,mEAAmE;YACnE,IAAI,OAAO,KAAK,QAAQ;gBAAE,OAAO,EAAE,CAAC;YAEpC,oEAAoE;YACpE,2DAA2D;YAC3D,iEAAiE;YACjE,sCAAsC;YACtC,IACI,CAAC,OAAO,KAAK,cAAc,IAAI,QAAQ,KAAK,kBAAkB,CAAC;gBAC/D,CAAC,OAAO,KAAK,kBAAkB,IAAI,QAAQ,KAAK,cAAc,CAAC,EACjE,CAAC;gBACC,OAAO,EAAE,CAAC;YACd,CAAC;YAED,oEAAoE;YACpE,iBAAiB;YACjB,IAAI,QAAQ,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;gBAC9C,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBACzC,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBAC3C,IAAI,OAAO,KAAK,QAAQ,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBAChD,OAAO,iBAAiB,CAAC;gBAC7B,CAAC;YACL,CAAC;YAED,OAAO,GAAG,CAAC;QACf,CAAC;KACJ,CAAC;AACN,CAAC;AAED;;;;;;;;;;;GAWG;AACU,QAAA,aAAa,GAAc,MAAM,CAAC,MAAM,CAAC;IAClD,WAAW,EAAE,iCAAyB;IACtC,SAAS,EAAE,GAAG,EAAE,CAAC,EAAE;CACtB,CAAC,CAAC"}
|
package/dist/helpers.d.ts
CHANGED
|
@@ -27,8 +27,10 @@ export declare function toDecimal(value: bigint, decimals: bigint): Decimal;
|
|
|
27
27
|
export declare function toBps(value: Percentage): bigint;
|
|
28
28
|
export declare function fromBpsToWad(value: bigint): bigint;
|
|
29
29
|
export declare function toBigInt(value: number | Decimal, decimals: bigint): bigint;
|
|
30
|
-
export declare function getChainConfig(): import("./chains").ChainConfig;
|
|
30
|
+
export declare function getChainConfig(chain?: ChainRpcPrefix): import("./chains").ChainConfig;
|
|
31
31
|
export declare function validateProviderAsSigner(provider: curvance_provider): curvance_signer;
|
|
32
|
+
export declare function requireSigner(signer: curvance_signer | null | undefined): curvance_signer;
|
|
33
|
+
export declare function requireAccount(account: address | null | undefined, signer?: curvance_signer | null | undefined): address;
|
|
32
34
|
export declare function contractSetup<I>(provider: curvance_provider, contractAddress: address, abi: any): Contract & I;
|
|
33
35
|
export declare function getContractAddresses(chain: ChainRpcPrefix): {
|
|
34
36
|
CentralRegistry: string;
|
package/dist/helpers.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAc,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACzF,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAQrC,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC;AAC3D,MAAM,MAAM,cAAc,GAAG,MAAM,OAAO,MAAM,CAAC;AAEjD,eAAO,MAAM,GAAG,QAAc,CAAC;AAC/B,eAAO,MAAM,WAAW,QAAc,CAAC;AACvC,eAAO,MAAM,GAAG,QAAe,CAAC;AAChC,eAAO,MAAM,OAAO,QAAe,CAAC;AACpC,eAAO,MAAM,GAAG,QAAe,CAAC;AAChC,eAAO,MAAM,WAAW,QAAe,CAAC;AACxC,eAAO,MAAM,oBAAoB,QAAe,CAAC;AACjD,eAAO,MAAM,WAAW,SAAmB,CAAC;AAE5C,eAAO,MAAM,gBAAgB,YAAc,CAAC;AAC5C,eAAO,MAAM,iBAAiB,WAAa,CAAC;AAC5C,eAAO,MAAM,gBAAgB,UAAW,CAAC;AACzC,eAAO,MAAM,eAAe,SAAU,CAAA;AAEtC,eAAO,MAAM,oBAAoB,OAAO,CAAC;AAEzC,eAAO,MAAM,WAAW,kFAAkF,CAAC;AAC3G,eAAO,MAAM,mBAAmB,SAAuB,CAAC;AACxD,eAAO,MAAM,aAAa,EAAmD,OAAO,CAAC;AACrF,eAAO,MAAM,cAAc,EAAmD,OAAO,CAAC;AACtF,eAAO,MAAM,WAAW,EAAW,KAAK,CAAC;AAEzC,wBAAgB,cAAc,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAavD;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAElE;AAED,wBAAgB,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAE/C;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE1E;AAED,wBAAgB,cAAc,
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
|
package/dist/helpers.js
CHANGED
|
@@ -11,6 +11,8 @@ exports.fromBpsToWad = fromBpsToWad;
|
|
|
11
11
|
exports.toBigInt = toBigInt;
|
|
12
12
|
exports.getChainConfig = getChainConfig;
|
|
13
13
|
exports.validateProviderAsSigner = validateProviderAsSigner;
|
|
14
|
+
exports.requireSigner = requireSigner;
|
|
15
|
+
exports.requireAccount = requireAccount;
|
|
14
16
|
exports.contractSetup = contractSetup;
|
|
15
17
|
exports.getContractAddresses = getContractAddresses;
|
|
16
18
|
exports.getNativeYield = getNativeYield;
|
|
@@ -72,8 +74,7 @@ function fromBpsToWad(value) {
|
|
|
72
74
|
function toBigInt(value, decimals) {
|
|
73
75
|
return FormatConverter_1.default.decimalToBigInt((0, decimal_js_1.Decimal)(value), decimals);
|
|
74
76
|
}
|
|
75
|
-
function getChainConfig() {
|
|
76
|
-
const chain = setup_1.setup_config.chain;
|
|
77
|
+
function getChainConfig(chain = setup_1.setup_config.chain) {
|
|
77
78
|
const config = chains_1.chain_config[chain];
|
|
78
79
|
if (!config) {
|
|
79
80
|
throw new Error(`No configuration found for chain ${chain}`);
|
|
@@ -87,6 +88,18 @@ function validateProviderAsSigner(provider) {
|
|
|
87
88
|
}
|
|
88
89
|
return provider;
|
|
89
90
|
}
|
|
91
|
+
function requireSigner(signer) {
|
|
92
|
+
if (!signer) {
|
|
93
|
+
throw new Error("Provider is not a signer, therefor this action is not available. Please connect a wallet to execute this action.");
|
|
94
|
+
}
|
|
95
|
+
return signer;
|
|
96
|
+
}
|
|
97
|
+
function requireAccount(account, signer = null) {
|
|
98
|
+
if (account) {
|
|
99
|
+
return account;
|
|
100
|
+
}
|
|
101
|
+
return requireSigner(signer).address;
|
|
102
|
+
}
|
|
90
103
|
function contractSetup(provider, contractAddress, abi) {
|
|
91
104
|
const contract = new ethers_1.Contract(contractAddress, abi, provider);
|
|
92
105
|
if (contract == undefined || contract == null) {
|
|
@@ -118,6 +131,19 @@ function calculateGasWithBuffer(estimatedGas, bufferPercent) {
|
|
|
118
131
|
function canEstimateGas(method) {
|
|
119
132
|
return typeof method?.estimateGas === 'function';
|
|
120
133
|
}
|
|
134
|
+
function supportsGasOverrides(contract, methodName) {
|
|
135
|
+
if (typeof methodName !== "string") {
|
|
136
|
+
return false;
|
|
137
|
+
}
|
|
138
|
+
try {
|
|
139
|
+
const fragment = contract?.interface?.getFunction(methodName);
|
|
140
|
+
const stateMutability = fragment?.stateMutability;
|
|
141
|
+
return stateMutability !== "view" && stateMutability !== "pure";
|
|
142
|
+
}
|
|
143
|
+
catch {
|
|
144
|
+
return false;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
121
147
|
/**
|
|
122
148
|
* Attempts to estimate gas and add buffer to transaction arguments
|
|
123
149
|
* @param method The contract method to estimate gas for
|
|
@@ -221,8 +247,12 @@ function contractWithGasBuffer(contract, bufferPercent = 10) {
|
|
|
221
247
|
// Return a wrapped version of the method
|
|
222
248
|
return async (...args) => {
|
|
223
249
|
try {
|
|
224
|
-
//
|
|
225
|
-
|
|
250
|
+
// Gas estimation is only useful on state-changing methods.
|
|
251
|
+
// Estimating read-only functions adds an unnecessary RPC round-trip
|
|
252
|
+
// and breaks fork tests when estimateGas is restricted or slow.
|
|
253
|
+
if (supportsGasOverrides(target, methodName)) {
|
|
254
|
+
await tryAddGasBuffer(originalMethod, args, bufferPercent);
|
|
255
|
+
}
|
|
226
256
|
// Call the original method with potentially modified args
|
|
227
257
|
return await originalMethod.apply(target, args);
|
|
228
258
|
}
|
package/dist/helpers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":";;;;;;AAoCA,wCAaC;AAED,8BAEC;AAED,sBAEC;AAED,oCAEC;AAED,4BAEC;AAED,
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../src/integrations/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAG3C,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAInC,MAAM,WAAW,gBAAgB;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,gBAAgB,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,cAAc,EAAE,CAAC;CAC7B;AAID;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,CAqC7D;AAED;;;;;;GAMG;AACH,wBAAsB,qBAAqB,CACvC,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GAChC,OAAO,CAAC,iBAAiB,CAAC,
|
|
1
|
+
{"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../src/integrations/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAG3C,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAInC,MAAM,WAAW,gBAAgB;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,gBAAgB,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,cAAc,EAAE,CAAC;CAC7B;AAID;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,CAqC7D;AAED;;;;;;GAMG;AACH,wBAAsB,qBAAqB,CACvC,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GAChC,OAAO,CAAC,iBAAiB,CAAC,CAwC5B"}
|
|
@@ -50,29 +50,15 @@ function snapshotMarket(market) {
|
|
|
50
50
|
*/
|
|
51
51
|
async function takePortfolioSnapshot(account, options) {
|
|
52
52
|
if (options?.refresh && setup_1.all_markets.length > 0) {
|
|
53
|
-
// Fetch all dynamic + user data in
|
|
54
|
-
// Each market's reload fetches ALL markets then filters — so we call
|
|
55
|
-
// once via the shared reader and distribute results ourselves.
|
|
53
|
+
// Fetch all dynamic + user data in 1 combined ProtocolReader call.
|
|
56
54
|
const reader = setup_1.all_markets[0].reader;
|
|
57
|
-
const
|
|
58
|
-
reader.getDynamicMarketData(),
|
|
59
|
-
reader.getUserData(account),
|
|
60
|
-
]);
|
|
55
|
+
const { dynamicMarket, userData } = await reader.getAllDynamicState(account);
|
|
61
56
|
for (const market of setup_1.all_markets) {
|
|
62
|
-
const dynamic =
|
|
57
|
+
const dynamic = dynamicMarket.find((m) => m.address === market.address);
|
|
63
58
|
const user = userData.markets.find((m) => m.address === market.address);
|
|
64
59
|
if (!dynamic || !user)
|
|
65
60
|
continue;
|
|
66
|
-
market.
|
|
67
|
-
market.cache.user = user;
|
|
68
|
-
for (const token of market.tokens) {
|
|
69
|
-
const dynToken = dynamic.tokens.find((t) => t.address === token.address);
|
|
70
|
-
const usrToken = user.tokens.find((t) => t.address === token.address);
|
|
71
|
-
if (dynToken)
|
|
72
|
-
token.cache = { ...token.cache, ...dynToken };
|
|
73
|
-
if (usrToken)
|
|
74
|
-
token.cache = { ...token.cache, ...usrToken };
|
|
75
|
-
}
|
|
61
|
+
market.applyState(dynamic, user);
|
|
76
62
|
}
|
|
77
63
|
}
|
|
78
64
|
const marketSnapshots = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../src/integrations/snapshot.ts"],"names":[],"mappings":";;AAmDA,wCAqCC;AASD,
|
|
1
|
+
{"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../src/integrations/snapshot.ts"],"names":[],"mappings":"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"}
|
package/dist/retry-provider.d.ts
CHANGED
|
@@ -1,21 +1,90 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { JsonRpcProvider } from "ethers";
|
|
2
|
+
import { curvance_provider, curvance_read_provider } from "./types";
|
|
2
3
|
export interface RetryConfig {
|
|
3
4
|
maxRetries: number;
|
|
4
5
|
baseDelay: number;
|
|
5
6
|
maxDelay: number;
|
|
6
7
|
backoffMultiplier: number;
|
|
8
|
+
timeoutMs: number;
|
|
9
|
+
fallbackCooldownMs: number;
|
|
10
|
+
rankSampleCount: number;
|
|
11
|
+
rankWeights: {
|
|
12
|
+
latency: number;
|
|
13
|
+
stability: number;
|
|
14
|
+
};
|
|
7
15
|
retryableErrors: string[];
|
|
8
16
|
onRetry?: (attempt: number, error: Error, delay: number) => void;
|
|
9
17
|
}
|
|
10
18
|
export declare const DEFAULT_RETRY_CONFIG: RetryConfig;
|
|
19
|
+
export interface RpcEndpointDebugState {
|
|
20
|
+
endpointId: string;
|
|
21
|
+
label: string;
|
|
22
|
+
role: 'primary' | 'fallback';
|
|
23
|
+
url: string | null;
|
|
24
|
+
attempts: number;
|
|
25
|
+
successes: number;
|
|
26
|
+
retryableFailures: number;
|
|
27
|
+
nonRetryableFailures: number;
|
|
28
|
+
timeoutFailures: number;
|
|
29
|
+
fallbackSelections: number;
|
|
30
|
+
recentSampleCount: number;
|
|
31
|
+
recentSuccessRate: number | null;
|
|
32
|
+
averageLatencyMs: number | null;
|
|
33
|
+
lastLatencyMs: number | null;
|
|
34
|
+
rankScore: number | null;
|
|
35
|
+
lastError: string | null;
|
|
36
|
+
lastAttemptAt: number | null;
|
|
37
|
+
lastSuccessAt: number | null;
|
|
38
|
+
lastFailureAt: number | null;
|
|
39
|
+
cooldownUntil: number | null;
|
|
40
|
+
}
|
|
41
|
+
export interface RpcDebugSnapshot {
|
|
42
|
+
updatedAt: number;
|
|
43
|
+
endpoints: RpcEndpointDebugState[];
|
|
44
|
+
}
|
|
45
|
+
type RpcDebugListener = (snapshot: RpcDebugSnapshot) => void;
|
|
46
|
+
export declare function getRpcDebugSnapshot(): RpcDebugSnapshot;
|
|
47
|
+
export declare function subscribeToRpcDebug(listener: RpcDebugListener): () => void;
|
|
48
|
+
export declare function resetRpcDebugState(): void;
|
|
11
49
|
declare class RetryableProvider {
|
|
12
50
|
private config;
|
|
13
|
-
|
|
51
|
+
private fallbackProviders;
|
|
52
|
+
private fallbackProviderStates;
|
|
53
|
+
private _fallbackActivated;
|
|
54
|
+
private primaryReadCooldownUntil;
|
|
55
|
+
constructor(config?: Partial<RetryConfig>, fallbackProviders?: JsonRpcProvider | JsonRpcProvider[] | null);
|
|
14
56
|
private sleep;
|
|
15
57
|
private calculateDelay;
|
|
58
|
+
private createProviderState;
|
|
59
|
+
private getRecentSamples;
|
|
60
|
+
private getProviderSuccessRate;
|
|
61
|
+
private getProviderAverageLatency;
|
|
62
|
+
private getProviderRankScore;
|
|
63
|
+
private publishDebugState;
|
|
64
|
+
private recordProviderSelection;
|
|
65
|
+
private recordProviderAttempt;
|
|
16
66
|
private isRetryableError;
|
|
67
|
+
private isReadFallbackActive;
|
|
68
|
+
private getFallbackProviderLabel;
|
|
69
|
+
private isProviderCoolingDown;
|
|
70
|
+
private compareFallbackProviders;
|
|
71
|
+
private getOrderedFallbackProviders;
|
|
72
|
+
private markFallbackFailure;
|
|
73
|
+
private markFallbackSuccess;
|
|
74
|
+
private getOrderedFallbackOps;
|
|
75
|
+
private executeWithTimeout;
|
|
76
|
+
private withReadTimeout;
|
|
17
77
|
private executeWithRetry;
|
|
18
|
-
|
|
78
|
+
/**
|
|
79
|
+
* Execute a read operation against the primary provider, falling back to
|
|
80
|
+
* the dedicated RPC providers if the primary exhausts all retries.
|
|
81
|
+
*
|
|
82
|
+
* Write operations (signing, sending transactions) never use the fallback
|
|
83
|
+
* because the fallback providers cannot sign.
|
|
84
|
+
*/
|
|
85
|
+
private executeFallbackChain;
|
|
86
|
+
private executeWithReadFallback;
|
|
87
|
+
wrapProvider(provider: curvance_read_provider): curvance_read_provider;
|
|
19
88
|
private isRpcMethod;
|
|
20
89
|
updateConfig(newConfig: Partial<RetryConfig>): void;
|
|
21
90
|
getConfig(): RetryConfig;
|
|
@@ -27,15 +96,21 @@ export declare function configureRetries(config?: Partial<RetryConfig>): void;
|
|
|
27
96
|
/**
|
|
28
97
|
* Create a provider with retry capabilities
|
|
29
98
|
*/
|
|
30
|
-
export declare function createRetryableProvider(provider:
|
|
99
|
+
export declare function createRetryableProvider(provider: curvance_read_provider, config?: Partial<RetryConfig>, readFallback?: JsonRpcProvider | JsonRpcProvider[] | null): curvance_read_provider;
|
|
31
100
|
/**
|
|
32
|
-
* Wrap a provider with the global retry configuration
|
|
101
|
+
* Wrap a provider with the global retry configuration.
|
|
102
|
+
*
|
|
103
|
+
* When `readFallback` is supplied, read-only RPC methods (eth_call,
|
|
104
|
+
* eth_getBalance, etc.) will fall through to the fallback providers after
|
|
105
|
+
* exhausting retries on the primary. Write/signing methods never use
|
|
106
|
+
* the fallback because only the primary (wallet) provider can sign.
|
|
33
107
|
*/
|
|
34
|
-
export declare function wrapProviderWithRetries(provider:
|
|
108
|
+
export declare function wrapProviderWithRetries(provider: curvance_read_provider, readFallback?: JsonRpcProvider | JsonRpcProvider[] | null): curvance_read_provider;
|
|
35
109
|
/**
|
|
36
110
|
* Utility function to check if a provider is already wrapped with retries
|
|
37
111
|
*/
|
|
38
112
|
export declare function isRetryableProvider(provider: curvance_provider): boolean;
|
|
113
|
+
export declare function isRetryableReadProvider(provider: curvance_read_provider): boolean;
|
|
39
114
|
/**
|
|
40
115
|
* Utility function to classify error types for debugging
|
|
41
116
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry-provider.d.ts","sourceRoot":"","sources":["../src/retry-provider.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"retry-provider.d.ts","sourceRoot":"","sources":["../src/retry-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAsBpE,MAAM,WAAW,WAAW;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE;QACT,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACpE;AAED,eAAO,MAAM,oBAAoB,EAAE,WAuDlC,CAAC;AAEF,MAAM,WAAW,qBAAqB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,SAAS,GAAG,UAAU,CAAC;IAC7B,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,gBAAgB;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,qBAAqB,EAAE,CAAC;CACtC;AAED,KAAK,gBAAgB,GAAG,CAAC,QAAQ,EAAE,gBAAgB,KAAK,IAAI,CAAC;AAgE7D,wBAAgB,mBAAmB,IAAI,gBAAgB,CAatD;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,MAAM,IAAI,CAM1E;AAED,wBAAgB,kBAAkB,IAAI,IAAI,CAGzC;AAED,cAAM,iBAAiB;IACnB,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,sBAAsB,CAAkB;IAChD,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,wBAAwB,CAAK;gBAGjC,MAAM,GAAE,OAAO,CAAC,WAAW,CAAM,EACjC,iBAAiB,GAAE,eAAe,GAAG,eAAe,EAAE,GAAG,IAAW;YAa1D,KAAK;IAInB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,mBAAmB;IAiC3B,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,sBAAsB;IAU9B,OAAO,CAAC,yBAAyB;IAYjC,OAAO,CAAC,oBAAoB;IAa5B,OAAO,CAAC,iBAAiB;IA0CzB,OAAO,CAAC,uBAAuB;IAS/B,OAAO,CAAC,qBAAqB;IAiE7B,OAAO,CAAC,gBAAgB;IAoDxB,OAAO,CAAC,oBAAoB;IAkB5B,OAAO,CAAC,wBAAwB;IAIhC,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,wBAAwB;IAiDhC,OAAO,CAAC,2BAA2B;IAInC,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,qBAAqB;YAmBf,kBAAkB;IA6BhC,OAAO,CAAC,eAAe;YAIT,gBAAgB;IAgD9B;;;;;;OAMG;YACW,oBAAoB;YAoCpB,uBAAuB;IAoCrC,YAAY,CAAC,QAAQ,EAAE,sBAAsB,GAAG,sBAAsB;IA8FtE,OAAO,CAAC,WAAW;IAOnB,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI;IAInD,SAAS,IAAI,WAAW;CAG3B;AAKD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,GAAE,OAAO,CAAC,WAAW,CAAM,GAAG,IAAI,CAMxE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACnC,QAAQ,EAAE,sBAAsB,EAChC,MAAM,GAAE,OAAO,CAAC,WAAW,CAAM,EACjC,YAAY,GAAE,eAAe,GAAG,eAAe,EAAE,GAAG,IAAW,GAChE,sBAAsB,CAGxB;AAYD;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACnC,QAAQ,EAAE,sBAAsB,EAChC,YAAY,GAAE,eAAe,GAAG,eAAe,EAAE,GAAG,IAAW,GAChE,sBAAsB,CAYxB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAExE;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,sBAAsB,GAAG,OAAO,CAEjF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,GAAG,GAAG;IACvC,IAAI,EAAE,UAAU,GAAG,SAAS,GAAG,KAAK,GAAG,YAAY,GAAG,SAAS,CAAC;IAChE,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACnB,CAiDA;AAGD,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
|