defi-dash-sdk 0.1.3 → 0.1.4
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/LICENSE +7 -0
- package/README.md +199 -97
- package/dist/__tests__/deleverageEstimate.unit.test.d.ts +10 -0
- package/dist/__tests__/deleverageEstimate.unit.test.d.ts.map +1 -0
- package/dist/__tests__/deleverageEstimate.unit.test.js +116 -0
- package/dist/__tests__/deleverageEstimate.unit.test.js.map +1 -0
- package/dist/__tests__/findBestLeverageRoute.test.d.ts +12 -0
- package/dist/__tests__/findBestLeverageRoute.test.d.ts.map +1 -0
- package/dist/__tests__/findBestLeverageRoute.test.js +177 -0
- package/dist/__tests__/findBestLeverageRoute.test.js.map +1 -0
- package/dist/__tests__/getAssetApy.test.d.ts +2 -0
- package/dist/__tests__/getAssetApy.test.d.ts.map +1 -0
- package/dist/__tests__/getAssetApy.test.js +133 -0
- package/dist/__tests__/getAssetApy.test.js.map +1 -0
- package/dist/__tests__/getAssetRiskParams.test.d.ts +11 -0
- package/dist/__tests__/getAssetRiskParams.test.d.ts.map +1 -0
- package/dist/__tests__/getAssetRiskParams.test.js +183 -0
- package/dist/__tests__/getAssetRiskParams.test.js.map +1 -0
- package/dist/__tests__/internal.getAssetApy.test.d.ts +2 -0
- package/dist/__tests__/internal.getAssetApy.test.d.ts.map +1 -0
- package/dist/__tests__/internal.getAssetApy.test.js +140 -0
- package/dist/__tests__/internal.getAssetApy.test.js.map +1 -0
- package/dist/__tests__/internal.getAssetRiskParams.test.d.ts +22 -0
- package/dist/__tests__/internal.getAssetRiskParams.test.d.ts.map +1 -0
- package/dist/__tests__/internal.getAssetRiskParams.test.js +194 -0
- package/dist/__tests__/internal.getAssetRiskParams.test.js.map +1 -0
- package/dist/__tests__/internal.getPosition.test.d.ts +22 -0
- package/dist/__tests__/internal.getPosition.test.d.ts.map +1 -0
- package/dist/__tests__/internal.getPosition.test.js +153 -0
- package/dist/__tests__/internal.getPosition.test.js.map +1 -0
- package/dist/__tests__/leveragePreview.unit.test.d.ts +10 -0
- package/dist/__tests__/leveragePreview.unit.test.d.ts.map +1 -0
- package/dist/__tests__/leveragePreview.unit.test.js +168 -0
- package/dist/__tests__/leveragePreview.unit.test.js.map +1 -0
- package/dist/__tests__/leverageRoute.unit.test.d.ts +10 -0
- package/dist/__tests__/leverageRoute.unit.test.d.ts.map +1 -0
- package/dist/__tests__/leverageRoute.unit.test.js +159 -0
- package/dist/__tests__/leverageRoute.unit.test.js.map +1 -0
- package/dist/__tests__/previewLeverage.test.d.ts +13 -0
- package/dist/__tests__/previewLeverage.test.d.ts.map +1 -0
- package/dist/__tests__/previewLeverage.test.js +217 -0
- package/dist/__tests__/previewLeverage.test.js.map +1 -0
- package/dist/__tests__/sdk.bestRoute.test.d.ts +22 -0
- package/dist/__tests__/sdk.bestRoute.test.d.ts.map +1 -0
- package/dist/__tests__/sdk.bestRoute.test.js +186 -0
- package/dist/__tests__/sdk.bestRoute.test.js.map +1 -0
- package/dist/__tests__/sdk.bestRoute.unit.test.d.ts +16 -0
- package/dist/__tests__/sdk.bestRoute.unit.test.d.ts.map +1 -0
- package/dist/__tests__/sdk.bestRoute.unit.test.js +165 -0
- package/dist/__tests__/sdk.bestRoute.unit.test.js.map +1 -0
- package/dist/__tests__/sdk.deleverage.test.d.ts +21 -0
- package/dist/__tests__/sdk.deleverage.test.d.ts.map +1 -0
- package/dist/__tests__/sdk.deleverage.test.js +130 -0
- package/dist/__tests__/sdk.deleverage.test.js.map +1 -0
- package/dist/__tests__/sdk.deleverage.unit.test.d.ts +21 -0
- package/dist/__tests__/sdk.deleverage.unit.test.d.ts.map +1 -0
- package/dist/__tests__/sdk.deleverage.unit.test.js +141 -0
- package/dist/__tests__/sdk.deleverage.unit.test.js.map +1 -0
- package/dist/__tests__/sdk.leverage.test.d.ts +19 -0
- package/dist/__tests__/sdk.leverage.test.d.ts.map +1 -0
- package/dist/__tests__/sdk.leverage.test.js +188 -0
- package/dist/__tests__/sdk.leverage.test.js.map +1 -0
- package/dist/__tests__/sdk.portfolio.test.d.ts +17 -0
- package/dist/__tests__/sdk.portfolio.test.d.ts.map +1 -0
- package/dist/__tests__/sdk.portfolio.test.js +162 -0
- package/dist/__tests__/sdk.portfolio.test.js.map +1 -0
- package/dist/__tests__/sdk.position.test.d.ts +16 -0
- package/dist/__tests__/sdk.position.test.d.ts.map +1 -0
- package/dist/__tests__/sdk.position.test.js +193 -0
- package/dist/__tests__/sdk.position.test.js.map +1 -0
- package/dist/__tests__/sdk.preview.test.d.ts +23 -0
- package/dist/__tests__/sdk.preview.test.d.ts.map +1 -0
- package/dist/__tests__/sdk.preview.test.js +226 -0
- package/dist/__tests__/sdk.preview.test.js.map +1 -0
- package/dist/__tests__/sdk.preview.unit.test.d.ts +18 -0
- package/dist/__tests__/sdk.preview.unit.test.d.ts.map +1 -0
- package/dist/__tests__/sdk.preview.unit.test.js +175 -0
- package/dist/__tests__/sdk.preview.unit.test.js.map +1 -0
- package/dist/__tests__/utils.normalizeCoinType.test.d.ts +7 -0
- package/dist/__tests__/utils.normalizeCoinType.test.d.ts.map +1 -0
- package/dist/__tests__/utils.normalizeCoinType.test.js +42 -0
- package/dist/__tests__/utils.normalizeCoinType.test.js.map +1 -0
- package/dist/index.d.ts +19 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +24 -40
- package/dist/index.js.map +1 -1
- package/dist/protocols/base-adapter.d.ts +42 -75
- package/dist/protocols/base-adapter.d.ts.map +1 -1
- package/dist/protocols/base-adapter.js +34 -77
- package/dist/protocols/base-adapter.js.map +1 -1
- package/dist/protocols/navi/adapter.d.ts +22 -2
- package/dist/protocols/navi/adapter.d.ts.map +1 -1
- package/dist/protocols/navi/adapter.js +145 -11
- package/dist/protocols/navi/adapter.js.map +1 -1
- package/dist/protocols/scallop/adapter.d.ts +26 -6
- package/dist/protocols/scallop/adapter.d.ts.map +1 -1
- package/dist/protocols/scallop/adapter.js +206 -43
- package/dist/protocols/scallop/adapter.js.map +1 -1
- package/dist/protocols/scallop/flash-loan.d.ts +18 -3
- package/dist/protocols/scallop/flash-loan.d.ts.map +1 -1
- package/dist/protocols/scallop/flash-loan.js +79 -20
- package/dist/protocols/scallop/flash-loan.js.map +1 -1
- package/dist/protocols/scallop/types.d.ts.map +1 -1
- package/dist/protocols/scallop/types.js +4 -1
- package/dist/protocols/scallop/types.js.map +1 -1
- package/dist/protocols/suilend/adapter.d.ts +19 -1
- package/dist/protocols/suilend/adapter.d.ts.map +1 -1
- package/dist/protocols/suilend/adapter.js +196 -51
- package/dist/protocols/suilend/adapter.js.map +1 -1
- package/dist/sdk.d.ts +107 -148
- package/dist/sdk.d.ts.map +1 -1
- package/dist/sdk.js +171 -523
- package/dist/sdk.js.map +1 -1
- package/dist/strategies/common.d.ts +42 -0
- package/dist/strategies/common.d.ts.map +1 -0
- package/dist/strategies/common.js +81 -0
- package/dist/strategies/common.js.map +1 -0
- package/dist/strategies/deleverage.d.ts.map +1 -1
- package/dist/strategies/deleverage.js +44 -62
- package/dist/strategies/deleverage.js.map +1 -1
- package/dist/strategies/index.d.ts +9 -1
- package/dist/strategies/index.d.ts.map +1 -1
- package/dist/strategies/index.js +11 -2
- package/dist/strategies/index.js.map +1 -1
- package/dist/strategies/leverage-preview.d.ts +27 -0
- package/dist/strategies/leverage-preview.d.ts.map +1 -0
- package/dist/strategies/leverage-preview.js +120 -0
- package/dist/strategies/leverage-preview.js.map +1 -0
- package/dist/strategies/leverage-route.d.ts +29 -0
- package/dist/strategies/leverage-route.d.ts.map +1 -0
- package/dist/strategies/leverage-route.js +112 -0
- package/dist/strategies/leverage-route.js.map +1 -0
- package/dist/strategies/leverage.d.ts +4 -44
- package/dist/strategies/leverage.d.ts.map +1 -1
- package/dist/strategies/leverage.js +43 -112
- package/dist/strategies/leverage.js.map +1 -1
- package/dist/strategies/scallop-leverage.d.ts +34 -0
- package/dist/strategies/scallop-leverage.d.ts.map +1 -0
- package/dist/strategies/scallop-leverage.js +143 -0
- package/dist/strategies/scallop-leverage.js.map +1 -0
- package/dist/types/config.d.ts +0 -7
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/constants.d.ts +8 -0
- package/dist/types/constants.d.ts.map +1 -1
- package/dist/types/constants.js +9 -1
- package/dist/types/constants.js.map +1 -1
- package/dist/types/index.d.ts +3 -3
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +2 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/position.d.ts +7 -3
- package/dist/types/position.d.ts.map +1 -1
- package/dist/types/protocol.d.ts +101 -0
- package/dist/types/protocol.d.ts.map +1 -1
- package/dist/types/strategy.d.ts +82 -38
- package/dist/types/strategy.d.ts.map +1 -1
- package/dist/utils/calculations.d.ts +10 -137
- package/dist/utils/calculations.d.ts.map +1 -1
- package/dist/utils/calculations.js +11 -162
- package/dist/utils/calculations.js.map +1 -1
- package/dist/utils/coin.d.ts +16 -7
- package/dist/utils/coin.d.ts.map +1 -1
- package/dist/utils/coin.js +32 -25
- package/dist/utils/coin.js.map +1 -1
- package/dist/utils/errors.d.ts +0 -18
- package/dist/utils/errors.d.ts.map +1 -1
- package/dist/utils/errors.js +2 -40
- package/dist/utils/errors.js.map +1 -1
- package/dist/utils/execution.d.ts +38 -0
- package/dist/utils/execution.d.ts.map +1 -0
- package/dist/utils/execution.js +110 -0
- package/dist/utils/execution.js.map +1 -0
- package/dist/utils/gas.d.ts +0 -37
- package/dist/utils/gas.d.ts.map +1 -1
- package/dist/utils/gas.js +2 -60
- package/dist/utils/gas.js.map +1 -1
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -1
- package/dist/utils/index.js.map +1 -1
- package/package.json +15 -45
|
@@ -2,120 +2,77 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Base Protocol Adapter
|
|
4
4
|
*
|
|
5
|
-
* Abstract base class
|
|
6
|
-
*
|
|
5
|
+
* Abstract base class for all lending protocol adapters.
|
|
6
|
+
* Implements ILendingProtocol to enforce compile-time method checks.
|
|
7
|
+
*
|
|
8
|
+
* Any class extending this MUST implement all abstract methods,
|
|
9
|
+
* otherwise TypeScript will produce a build error:
|
|
10
|
+
* "Non-abstract class 'XxxAdapter' does not implement inherited abstract member 'methodName'"
|
|
11
|
+
*
|
|
12
|
+
* This is the TypeScript equivalent of Go's interface compliance pattern:
|
|
13
|
+
* var _ ILendingProtocol = (*MyAdapter)(nil)
|
|
7
14
|
*/
|
|
8
15
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
16
|
exports.BaseProtocolAdapter = void 0;
|
|
10
17
|
const utils_1 = require("../utils");
|
|
11
18
|
/**
|
|
12
|
-
* Abstract base class for protocol adapters
|
|
19
|
+
* Abstract base class for protocol adapters.
|
|
13
20
|
*
|
|
14
|
-
* Provides common
|
|
15
|
-
*
|
|
16
|
-
* - Coin type normalization
|
|
17
|
-
* - Initialization tracking
|
|
21
|
+
* Provides common utilities (SuiClient management, coin normalization).
|
|
22
|
+
* All ILendingProtocol methods are declared abstract — subclasses MUST implement them.
|
|
18
23
|
*
|
|
19
24
|
* @example
|
|
20
25
|
* ```typescript
|
|
21
|
-
* class
|
|
22
|
-
* readonly name = "
|
|
26
|
+
* export class NewProtocolAdapter extends BaseProtocolAdapter {
|
|
27
|
+
* readonly name = "new-protocol";
|
|
23
28
|
* readonly consumesRepaymentCoin = false;
|
|
24
29
|
*
|
|
25
|
-
* async initialize(
|
|
26
|
-
* await super.initialize(
|
|
27
|
-
* //
|
|
30
|
+
* async initialize(suiClient: SuiClient): Promise<void> {
|
|
31
|
+
* await super.initialize(suiClient);
|
|
32
|
+
* // protocol-specific init
|
|
28
33
|
* }
|
|
29
34
|
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
* }
|
|
35
|
+
* // All abstract methods must be implemented:
|
|
36
|
+
* async getPosition(userAddress: string) { ... }
|
|
37
|
+
* async deposit(tx, coin, coinType, userAddress) { ... }
|
|
38
|
+
* async withdraw(tx, coinType, amount, userAddress) { ... }
|
|
39
|
+
* async borrow(tx, coinType, amount, userAddress) { ... }
|
|
40
|
+
* async repay(tx, coinType, coin, userAddress) { ... }
|
|
41
|
+
* async refreshOracles(tx, coinTypes, userAddress) { ... }
|
|
42
|
+
* async getAccountPortfolio(address) { ... }
|
|
43
|
+
* async getAssetRiskParams(coinType) { ... }
|
|
44
|
+
* async getAssetApy(coinType) { ... }
|
|
34
45
|
* }
|
|
35
46
|
* ```
|
|
36
47
|
*/
|
|
37
48
|
class BaseProtocolAdapter {
|
|
38
49
|
constructor() {
|
|
39
|
-
/**
|
|
40
|
-
* Initialization status
|
|
41
|
-
*/
|
|
42
50
|
this.initialized = false;
|
|
43
51
|
}
|
|
44
|
-
|
|
45
|
-
* Initialize the protocol adapter
|
|
46
|
-
*
|
|
47
|
-
* @param suiClient - Sui blockchain client
|
|
48
|
-
*/
|
|
52
|
+
// ── Base implementation ──────────────────────────────────────────────────
|
|
49
53
|
async initialize(suiClient) {
|
|
50
54
|
this.suiClient = suiClient;
|
|
51
55
|
this.initialized = true;
|
|
52
56
|
}
|
|
53
57
|
/**
|
|
54
|
-
*
|
|
55
|
-
*
|
|
56
|
-
* @throws Error if not initialized
|
|
58
|
+
* Optional: clear pending state between transactions.
|
|
59
|
+
* Override in subclass if needed (e.g., Scallop obligation tracking).
|
|
57
60
|
*/
|
|
61
|
+
clearPendingState() {
|
|
62
|
+
// no-op by default
|
|
63
|
+
}
|
|
64
|
+
// ── Protected utilities ──────────────────────────────────────────────────
|
|
58
65
|
ensureInitialized() {
|
|
59
66
|
if (!this.initialized) {
|
|
60
67
|
throw new Error(`${this.name} adapter not initialized`);
|
|
61
68
|
}
|
|
62
69
|
}
|
|
63
|
-
/**
|
|
64
|
-
* Normalize coin type to standard format
|
|
65
|
-
*
|
|
66
|
-
* Utility method for consistent coin type handling.
|
|
67
|
-
*
|
|
68
|
-
* @param coinType - Raw coin type string
|
|
69
|
-
* @returns Normalized coin type with padded address
|
|
70
|
-
*
|
|
71
|
-
* @example
|
|
72
|
-
* ```typescript
|
|
73
|
-
* const normalized = this.normalizeCoin("0x2::sui::SUI");
|
|
74
|
-
* // "0x0000...0002::sui::SUI"
|
|
75
|
-
* ```
|
|
76
|
-
*/
|
|
77
70
|
normalizeCoin(coinType) {
|
|
78
71
|
return (0, utils_1.normalizeCoinType)(coinType);
|
|
79
72
|
}
|
|
80
|
-
/**
|
|
81
|
-
* Get object by ID with error handling
|
|
82
|
-
*
|
|
83
|
-
* @param objectId - Object ID to fetch
|
|
84
|
-
* @returns Object data or null if not found
|
|
85
|
-
*/
|
|
86
|
-
async getObject(objectId) {
|
|
87
|
-
try {
|
|
88
|
-
const response = await this.suiClient.getObject({
|
|
89
|
-
id: objectId,
|
|
90
|
-
options: {
|
|
91
|
-
showContent: true,
|
|
92
|
-
showType: true,
|
|
93
|
-
},
|
|
94
|
-
});
|
|
95
|
-
return response.data;
|
|
96
|
-
}
|
|
97
|
-
catch (error) {
|
|
98
|
-
console.error(`Failed to fetch object ${objectId}:`, error);
|
|
99
|
-
return null;
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
/**
|
|
103
|
-
* Format amount from raw units to human-readable
|
|
104
|
-
*
|
|
105
|
-
* @param amount - Raw amount (bigint)
|
|
106
|
-
* @param decimals - Token decimals
|
|
107
|
-
* @returns Human-readable number
|
|
108
|
-
*/
|
|
109
73
|
formatAmount(amount, decimals) {
|
|
110
74
|
return Number(amount) / Math.pow(10, decimals);
|
|
111
75
|
}
|
|
112
|
-
/**
|
|
113
|
-
* Parse amount from human-readable to raw units
|
|
114
|
-
*
|
|
115
|
-
* @param amount - Human-readable amount (number or string)
|
|
116
|
-
* @param decimals - Token decimals
|
|
117
|
-
* @returns Raw amount as bigint
|
|
118
|
-
*/
|
|
119
76
|
parseAmount(amount, decimals) {
|
|
120
77
|
const value = typeof amount === "string" ? parseFloat(amount) : amount;
|
|
121
78
|
return BigInt(Math.floor(value * Math.pow(10, decimals)));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-adapter.js","sourceRoot":"","sources":["../../src/protocols/base-adapter.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"base-adapter.js","sourceRoot":"","sources":["../../src/protocols/base-adapter.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;;;AAWH,oCAA6C;AAE7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAsB,mBAAmB;IAAzC;QAEY,gBAAW,GAAG,KAAK,CAAC;IAuFhC,CAAC;IAnCC,4EAA4E;IAE5E,KAAK,CAAC,UAAU,CAAC,SAAoB;QACnC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACH,iBAAiB;QACf,mBAAmB;IACrB,CAAC;IAED,4EAA4E;IAElE,iBAAiB;QACzB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,0BAA0B,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAES,aAAa,CAAC,QAAgB;QACtC,OAAO,IAAA,yBAAiB,EAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAES,YAAY,CAAC,MAAc,EAAE,QAAgB;QACrD,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IACjD,CAAC;IAES,WAAW,CAAC,MAAuB,EAAE,QAAgB;QAC7D,MAAM,KAAK,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACvE,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC5D,CAAC;CACF;AAzFD,kDAyFC"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { Transaction } from "@mysten/sui/transactions";
|
|
7
7
|
import { SuiClient } from "@mysten/sui/client";
|
|
8
|
-
import { ILendingProtocol, PositionInfo, AccountPortfolio } from "../../types";
|
|
8
|
+
import { ILendingProtocol, PositionInfo, AssetRiskParams, AssetApy, AccountPortfolio } from "../../types";
|
|
9
9
|
/**
|
|
10
10
|
* Navi lending protocol adapter
|
|
11
11
|
*/
|
|
@@ -25,10 +25,30 @@ export declare class NaviAdapter implements ILendingProtocol {
|
|
|
25
25
|
withdraw(tx: Transaction, coinType: string, amount: string, userAddress: string): Promise<any>;
|
|
26
26
|
borrow(tx: Transaction, coinType: string, amount: string, userAddress: string, skipOracle?: boolean): Promise<any>;
|
|
27
27
|
repay(tx: Transaction, coinType: string, coin: any, userAddress: string): Promise<void>;
|
|
28
|
-
refreshOracles(tx: Transaction, coinTypes: string[],
|
|
28
|
+
refreshOracles(tx: Transaction, coinTypes: string[], _userAddress: string): Promise<void>;
|
|
29
29
|
/**
|
|
30
30
|
* Get aggregated portfolio
|
|
31
31
|
*/
|
|
32
32
|
getAccountPortfolio(address: string): Promise<AccountPortfolio>;
|
|
33
|
+
/**
|
|
34
|
+
* Get asset risk parameters for leverage calculations
|
|
35
|
+
*
|
|
36
|
+
* Navi uses:
|
|
37
|
+
* - ltv: Loan-to-Value ratio (RAY format, 10^27)
|
|
38
|
+
* - liquidation_threshold: Liquidation threshold from pool config
|
|
39
|
+
* - liquidation_bonus: Liquidation bonus from pool config
|
|
40
|
+
*/
|
|
41
|
+
getAssetRiskParams(coinType: string): Promise<AssetRiskParams>;
|
|
42
|
+
/**
|
|
43
|
+
* Get current supply/borrow APY for an asset.
|
|
44
|
+
*
|
|
45
|
+
* Navi's Pool object (from getPools) already contains:
|
|
46
|
+
* - currentBorrowRate: raw per-second borrow rate
|
|
47
|
+
* - currentSupplyRate: raw per-second supply rate
|
|
48
|
+
* - supplyIncentiveApyInfo.apy / borrowIncentiveApyInfo.apy: incentive APY (as a string percent)
|
|
49
|
+
*
|
|
50
|
+
* We convert raw per-second rates to per-year APR then add incentive APY.
|
|
51
|
+
*/
|
|
52
|
+
getAssetApy(coinType: string): Promise<AssetApy>;
|
|
33
53
|
}
|
|
34
54
|
//# sourceMappingURL=adapter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/protocols/navi/adapter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAY/C,OAAO,EACL,gBAAgB,EAChB,YAAY,
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/protocols/navi/adapter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAY/C,OAAO,EACL,gBAAgB,EAChB,YAAY,EAEZ,eAAe,EACf,QAAQ,EAER,gBAAgB,EAGjB,MAAM,aAAa,CAAC;AAQrB;;GAEG;AACH,qBAAa,WAAY,YAAW,gBAAgB;IAClD,QAAQ,CAAC,IAAI,UAAU;IACvB,QAAQ,CAAC,qBAAqB,QAAQ;IACtC,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,WAAW,CAAS;IAEtB,UAAU,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAerD,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,OAAO;IAQf,OAAO,CAAC,YAAY;IAOd,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IA6E9D,OAAO,CACX,EAAE,EAAE,WAAW,EACf,IAAI,EAAE,GAAG,EACT,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC;IAcV,QAAQ,CACZ,EAAE,EAAE,WAAW,EACf,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,GAAG,CAAC;IAkBT,MAAM,CACV,EAAE,EAAE,WAAW,EACf,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,UAAU,UAAQ,GACjB,OAAO,CAAC,GAAG,CAAC;IAeT,KAAK,CACT,EAAE,EAAE,WAAW,EACf,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,GAAG,EACT,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC;IAaV,cAAc,CAClB,EAAE,EAAE,WAAW,EACf,SAAS,EAAE,MAAM,EAAE,EACnB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;IAmBhB;;OAEG;IACG,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA2HrE;;;;;;;OAOG;IACG,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAqEpE;;;;;;;;;OASG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;CA+CvD"}
|
|
@@ -59,9 +59,9 @@ class NaviAdapter {
|
|
|
59
59
|
const activePositions = lendingState.filter((p) => BigInt(p.supplyBalance) > 0 || BigInt(p.borrowBalance) > 0);
|
|
60
60
|
if (activePositions.length === 0)
|
|
61
61
|
return null;
|
|
62
|
-
//
|
|
63
|
-
|
|
64
|
-
|
|
62
|
+
// Build all supply and borrow positions
|
|
63
|
+
const supplies = [];
|
|
64
|
+
const allBorrows = [];
|
|
65
65
|
for (const pos of activePositions) {
|
|
66
66
|
const poolCoinType = (0, utils_1.normalizeCoinType)(pos.pool.coinType);
|
|
67
67
|
const reserve = (0, constants_1.getReserveByCoinType)(poolCoinType);
|
|
@@ -70,31 +70,37 @@ class NaviAdapter {
|
|
|
70
70
|
if (BigInt(pos.supplyBalance) > 0) {
|
|
71
71
|
const amount = BigInt(pos.supplyBalance);
|
|
72
72
|
const price = await (0, sdk_ts_1.getTokenPrice)(poolCoinType);
|
|
73
|
-
|
|
73
|
+
supplies.push({
|
|
74
74
|
amount,
|
|
75
75
|
symbol,
|
|
76
76
|
coinType: poolCoinType,
|
|
77
77
|
decimals: NAVI_BALANCE_DECIMALS, // Navi uses 9 decimals internally
|
|
78
78
|
valueUsd: (Number(amount) / Math.pow(10, NAVI_BALANCE_DECIMALS)) * price,
|
|
79
|
-
};
|
|
79
|
+
});
|
|
80
80
|
}
|
|
81
81
|
if (BigInt(pos.borrowBalance) > 0) {
|
|
82
82
|
const rawAmount = BigInt(pos.borrowBalance);
|
|
83
83
|
// Convert from Navi's 9 decimal precision to native decimals
|
|
84
84
|
const amount = rawAmount / BigInt(10 ** (NAVI_BALANCE_DECIMALS - decimals));
|
|
85
85
|
const price = await (0, sdk_ts_1.getTokenPrice)(poolCoinType);
|
|
86
|
-
|
|
86
|
+
allBorrows.push({
|
|
87
87
|
amount,
|
|
88
88
|
symbol,
|
|
89
89
|
coinType: poolCoinType,
|
|
90
90
|
decimals,
|
|
91
91
|
valueUsd: (Number(amount) / Math.pow(10, decimals)) * price,
|
|
92
|
-
};
|
|
92
|
+
});
|
|
93
93
|
}
|
|
94
94
|
}
|
|
95
|
+
// Primary = largest by USD value
|
|
96
|
+
const collateral = [...supplies].sort((a, b) => b.valueUsd - a.valueUsd)[0] ?? null;
|
|
95
97
|
if (!collateral)
|
|
96
98
|
return null;
|
|
97
|
-
const
|
|
99
|
+
const debt = allBorrows.length > 0
|
|
100
|
+
? [...allBorrows].sort((a, b) => b.valueUsd - a.valueUsd)[0]
|
|
101
|
+
: null;
|
|
102
|
+
const totalSupplyUsd = supplies.reduce((s, p) => s + p.valueUsd, 0);
|
|
103
|
+
const totalDebtUsd = allBorrows.reduce((s, p) => s + p.valueUsd, 0);
|
|
98
104
|
return {
|
|
99
105
|
collateral,
|
|
100
106
|
debt: debt || {
|
|
@@ -104,7 +110,9 @@ class NaviAdapter {
|
|
|
104
110
|
decimals: 6,
|
|
105
111
|
valueUsd: 0,
|
|
106
112
|
},
|
|
107
|
-
|
|
113
|
+
supplies,
|
|
114
|
+
borrows: allBorrows,
|
|
115
|
+
netValueUsd: totalSupplyUsd - totalDebtUsd,
|
|
108
116
|
};
|
|
109
117
|
}
|
|
110
118
|
async deposit(tx, coin, coinType, userAddress) {
|
|
@@ -148,9 +156,12 @@ class NaviAdapter {
|
|
|
148
156
|
env: "prod",
|
|
149
157
|
});
|
|
150
158
|
}
|
|
151
|
-
async refreshOracles(tx, coinTypes,
|
|
159
|
+
async refreshOracles(tx, coinTypes, _userAddress) {
|
|
152
160
|
this.ensureInitialized();
|
|
153
|
-
|
|
161
|
+
// Navi's calculator::calculate_value requires ALL pool oracles to be fresh,
|
|
162
|
+
// not just the assets being operated on. Refresh all available feeds to avoid
|
|
163
|
+
// abort 1502 during withdraw/borrow health factor checks.
|
|
164
|
+
const feedsToUpdate = this.priceFeeds.length > 0 ? this.priceFeeds : coinTypes
|
|
154
165
|
.map((ct) => this.getPriceFeed(ct))
|
|
155
166
|
.filter(Boolean);
|
|
156
167
|
if (feedsToUpdate.length > 0) {
|
|
@@ -258,6 +269,129 @@ class NaviAdapter {
|
|
|
258
269
|
totalAnnualNetEarningsUsd,
|
|
259
270
|
};
|
|
260
271
|
}
|
|
272
|
+
/**
|
|
273
|
+
* Get asset risk parameters for leverage calculations
|
|
274
|
+
*
|
|
275
|
+
* Navi uses:
|
|
276
|
+
* - ltv: Loan-to-Value ratio (RAY format, 10^27)
|
|
277
|
+
* - liquidation_threshold: Liquidation threshold from pool config
|
|
278
|
+
* - liquidation_bonus: Liquidation bonus from pool config
|
|
279
|
+
*/
|
|
280
|
+
async getAssetRiskParams(coinType) {
|
|
281
|
+
this.ensureInitialized();
|
|
282
|
+
const pool = this.getPool(coinType);
|
|
283
|
+
if (!pool) {
|
|
284
|
+
// Fallback to conservative defaults
|
|
285
|
+
return {
|
|
286
|
+
ltv: 0.5,
|
|
287
|
+
liquidationThreshold: 0.6,
|
|
288
|
+
liquidationBonus: 0.05,
|
|
289
|
+
maxMultiplier: 2.0,
|
|
290
|
+
};
|
|
291
|
+
}
|
|
292
|
+
// Navi stores ltv as a string/number that may be in RAY format (10^27) or percentage
|
|
293
|
+
// Common values: 650000000000000000000000000 (65% in RAY) or 0.65 or 65
|
|
294
|
+
let ltv = 0.5;
|
|
295
|
+
if (pool.ltv) {
|
|
296
|
+
const ltvValue = parseFloat(pool.ltv.toString());
|
|
297
|
+
// If value is very large (RAY format: 10^27), normalize
|
|
298
|
+
if (ltvValue > 1e20) {
|
|
299
|
+
ltv = ltvValue / 1e27;
|
|
300
|
+
}
|
|
301
|
+
else if (ltvValue > 1) {
|
|
302
|
+
// Percentage format (e.g., 65 = 65%)
|
|
303
|
+
ltv = ltvValue / 100;
|
|
304
|
+
}
|
|
305
|
+
else {
|
|
306
|
+
// Already 0-1 format
|
|
307
|
+
ltv = ltvValue;
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
// Parse liquidation threshold similarly
|
|
311
|
+
let liquidationThreshold = 0.7;
|
|
312
|
+
if (pool.liquidationThreshold) {
|
|
313
|
+
const thresholdValue = parseFloat(pool.liquidationThreshold.toString());
|
|
314
|
+
if (thresholdValue > 1e20) {
|
|
315
|
+
liquidationThreshold = thresholdValue / 1e27;
|
|
316
|
+
}
|
|
317
|
+
else if (thresholdValue > 1) {
|
|
318
|
+
liquidationThreshold = thresholdValue / 100;
|
|
319
|
+
}
|
|
320
|
+
else {
|
|
321
|
+
liquidationThreshold = thresholdValue;
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
// Parse liquidation bonus
|
|
325
|
+
let liquidationBonus = 0.05;
|
|
326
|
+
if (pool.liquidationBonus) {
|
|
327
|
+
const bonusValue = parseFloat(pool.liquidationBonus.toString());
|
|
328
|
+
if (bonusValue > 1e20) {
|
|
329
|
+
liquidationBonus = bonusValue / 1e27;
|
|
330
|
+
}
|
|
331
|
+
else if (bonusValue > 1) {
|
|
332
|
+
liquidationBonus = bonusValue / 100;
|
|
333
|
+
}
|
|
334
|
+
else {
|
|
335
|
+
liquidationBonus = bonusValue;
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
// Calculate max multiplier: 1 / (1 - ltv)
|
|
339
|
+
const maxMultiplier = ltv > 0 && ltv < 1 ? 1 / (1 - ltv) : 1;
|
|
340
|
+
return {
|
|
341
|
+
ltv,
|
|
342
|
+
liquidationThreshold,
|
|
343
|
+
liquidationBonus,
|
|
344
|
+
maxMultiplier,
|
|
345
|
+
};
|
|
346
|
+
}
|
|
347
|
+
/**
|
|
348
|
+
* Get current supply/borrow APY for an asset.
|
|
349
|
+
*
|
|
350
|
+
* Navi's Pool object (from getPools) already contains:
|
|
351
|
+
* - currentBorrowRate: raw per-second borrow rate
|
|
352
|
+
* - currentSupplyRate: raw per-second supply rate
|
|
353
|
+
* - supplyIncentiveApyInfo.apy / borrowIncentiveApyInfo.apy: incentive APY (as a string percent)
|
|
354
|
+
*
|
|
355
|
+
* We convert raw per-second rates to per-year APR then add incentive APY.
|
|
356
|
+
*/
|
|
357
|
+
async getAssetApy(coinType) {
|
|
358
|
+
this.ensureInitialized();
|
|
359
|
+
const pool = this.getPool(coinType);
|
|
360
|
+
if (!pool) {
|
|
361
|
+
throw new Error(`Navi: pool not found for ${(0, utils_1.normalizeCoinType)(coinType)}`);
|
|
362
|
+
}
|
|
363
|
+
// Navi's Pool (from getPools) already exposes pre-computed APY info:
|
|
364
|
+
// supplyIncentiveApyInfo.apy = effective supply APY (% string, e.g. "2.96")
|
|
365
|
+
// supplyIncentiveApyInfo.vaultApr = base supply APR before incentives
|
|
366
|
+
// borrowIncentiveApyInfo.vaultApr = gross borrow cost (% string)
|
|
367
|
+
// borrowIncentiveApyInfo.apy = net borrow APY after borrow incentives
|
|
368
|
+
//
|
|
369
|
+
// We use vaultApr as the base supply APY and borrowIncentiveApyInfo.vaultApr
|
|
370
|
+
// as the borrow APY (gross cost to borrower).
|
|
371
|
+
// Reward APY = supplyIncentiveApyInfo.apy - supplyIncentiveApyInfo.vaultApr
|
|
372
|
+
// (difference attributable to staking yield, vault rewards, etc.)
|
|
373
|
+
const supplyInfo = pool.supplyIncentiveApyInfo ?? {};
|
|
374
|
+
const borrowInfo = pool.borrowIncentiveApyInfo ?? {};
|
|
375
|
+
// Base supply APR (e.g., "2.96" → 0.0296)
|
|
376
|
+
const baseSupplyApr = parseFloat(supplyInfo.vaultApr ?? "0") / 100;
|
|
377
|
+
// Total effective supply APY including staking/vault rewards
|
|
378
|
+
const totalSupplyApy = parseFloat(supplyInfo.apy ?? "0") / 100;
|
|
379
|
+
// Extra reward beyond base (staking yield etc.)
|
|
380
|
+
const rewardApy = Math.max(0, totalSupplyApy - baseSupplyApr);
|
|
381
|
+
// Gross borrow APR (what borrowers pay before incentives)
|
|
382
|
+
const grossBorrowApr = parseFloat(borrowInfo.vaultApr ?? "0") / 100;
|
|
383
|
+
// Net effective borrow cost after borrow incentive rebates
|
|
384
|
+
// borrowInfo.apy = grossBorrowApr - boostedApr (rebate from NAVX/reward tokens)
|
|
385
|
+
const netBorrowApy = parseFloat(borrowInfo.apy ?? borrowInfo.vaultApr ?? "0") / 100;
|
|
386
|
+
const borrowRewardApy = Math.max(0, grossBorrowApr - netBorrowApy);
|
|
387
|
+
return {
|
|
388
|
+
supplyApy: baseSupplyApr,
|
|
389
|
+
rewardApy,
|
|
390
|
+
totalSupplyApy,
|
|
391
|
+
borrowApy: netBorrowApy,
|
|
392
|
+
borrowRewardApy,
|
|
393
|
+
};
|
|
394
|
+
}
|
|
261
395
|
}
|
|
262
396
|
exports.NaviAdapter = NaviAdapter;
|
|
263
397
|
//# sourceMappingURL=adapter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/protocols/navi/adapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/protocols/navi/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,11 +11,11 @@
|
|
|
11
11
|
* - Staked obligations are "locked" and cannot perform borrow/withdraw operations
|
|
12
12
|
* - This adapter automatically unstakes/restakes obligations when needed
|
|
13
13
|
*/
|
|
14
|
-
import { Transaction } from
|
|
15
|
-
import { SuiClient } from
|
|
16
|
-
import { Scallop, ScallopQuery } from
|
|
17
|
-
import { ILendingProtocol, PositionInfo, AccountPortfolio } from
|
|
18
|
-
import { SCALLOP_COIN_TYPE_MAP, type ScallopCoreAddresses, type ScallopBorrowIncentiveAddresses, type ScallopVeScaAddresses } from
|
|
14
|
+
import { Transaction } from "@mysten/sui/transactions";
|
|
15
|
+
import { SuiClient } from "@mysten/sui/client";
|
|
16
|
+
import { Scallop, ScallopQuery } from "@scallop-io/sui-scallop-sdk";
|
|
17
|
+
import { ILendingProtocol, PositionInfo, AssetRiskParams, AssetApy, AccountPortfolio } from "../../types";
|
|
18
|
+
import { SCALLOP_COIN_TYPE_MAP, type ScallopCoreAddresses, type ScallopBorrowIncentiveAddresses, type ScallopVeScaAddresses } from "./types";
|
|
19
19
|
export { SCALLOP_COIN_TYPE_MAP };
|
|
20
20
|
/**
|
|
21
21
|
* Scallop lending protocol adapter
|
|
@@ -167,7 +167,7 @@ export declare class ScallopAdapter implements ILendingProtocol {
|
|
|
167
167
|
* @param userAddress - User's address
|
|
168
168
|
*/
|
|
169
169
|
repay(tx: Transaction, coinType: string, coin: any, userAddress: string): Promise<void>;
|
|
170
|
-
refreshOracles(
|
|
170
|
+
refreshOracles(tx: Transaction, coinTypes: string[], _userAddress: string): Promise<void>;
|
|
171
171
|
/**
|
|
172
172
|
* Get all obligations for a user with their locked status
|
|
173
173
|
*
|
|
@@ -272,6 +272,26 @@ export declare class ScallopAdapter implements ILendingProtocol {
|
|
|
272
272
|
* Get the SuiClient instance (for external use)
|
|
273
273
|
*/
|
|
274
274
|
getSuiClient(): SuiClient;
|
|
275
|
+
/**
|
|
276
|
+
* Get asset risk parameters for leverage calculations
|
|
277
|
+
*
|
|
278
|
+
* Queries on-chain risk_models table directly from the Scallop Market object,
|
|
279
|
+
* bypassing the SDK's buggy queryMarket() (isLayerZeroAsset crash).
|
|
280
|
+
*
|
|
281
|
+
* On-chain layout:
|
|
282
|
+
* Market → risk_models (Table) → [TypeName key] → RiskModel
|
|
283
|
+
* RiskModel fields are FixedPoint32 (u64 / 2^32 → 0-1 decimal)
|
|
284
|
+
*/
|
|
285
|
+
getAssetRiskParams(coinType: string): Promise<AssetRiskParams>;
|
|
286
|
+
/**
|
|
287
|
+
* Get current supply/borrow APY for an asset.
|
|
288
|
+
*
|
|
289
|
+
* Uses Scallop's queryMarket() which returns pool data including:
|
|
290
|
+
* - supplyApr / supplyApy: computed from the interest rate model
|
|
291
|
+
* - borrowApr / borrowApy: current borrow rate
|
|
292
|
+
* - spool reward APY is included when available from query
|
|
293
|
+
*/
|
|
294
|
+
getAssetApy(coinType: string): Promise<AssetApy>;
|
|
275
295
|
}
|
|
276
296
|
export type { ScallopCoreAddresses, ScallopBorrowIncentiveAddresses, ScallopVeScaAddresses, };
|
|
277
297
|
//# sourceMappingURL=adapter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/protocols/scallop/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EACL,gBAAgB,EAChB,YAAY,
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/protocols/scallop/adapter.ts"],"names":[],"mappings":"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"}
|