@sonarwatch/portfolio-plugins 0.14.11 → 0.14.12
Sign up to get free protection for your applications and to get access to all the features.
- package/CHANGELOG.md +1636 -1632
- package/README.md +3 -3
- package/package.json +1 -1
- package/src/plugins/balancer/helpers/pools.js +21 -21
- package/src/plugins/cetus/types.d.ts +109 -0
- package/src/plugins/jupiter/exchange/constants.js +1 -1
- package/src/plugins/kriya/clmmsFetcher.d.ts +3 -0
- package/src/plugins/kriya/clmmsFetcher.js +81 -0
- package/src/plugins/kriya/clmmsFetcher.js.map +1 -0
- package/src/plugins/kriya/constants.d.ts +9 -4
- package/src/plugins/kriya/constants.js +48 -5
- package/src/plugins/kriya/constants.js.map +1 -1
- package/src/plugins/kriya/farmsFetcher.js.map +1 -1
- package/src/plugins/kriya/index.js +4 -0
- package/src/plugins/kriya/index.js.map +1 -1
- package/src/plugins/kriya/lpFetcher.d.ts +3 -0
- package/src/plugins/kriya/lpFetcher.js +80 -0
- package/src/plugins/kriya/lpFetcher.js.map +1 -0
- package/src/plugins/kriya/types/common.d.ts +46 -0
- package/src/plugins/kriya/types/common.js +9 -0
- package/src/plugins/kriya/types/common.js.map +1 -0
- package/src/plugins/kriya/types/farms.d.ts +55 -0
- package/src/plugins/kriya/{types.js → types/farms.js} +2 -1
- package/src/plugins/kriya/types/farms.js.map +1 -0
- package/src/plugins/kriya/types/pools.d.ts +131 -0
- package/src/plugins/kriya/types/pools.js +3 -0
- package/src/plugins/kriya/types/pools.js.map +1 -0
- package/src/plugins/kriya/{types.d.ts → types/vaults.d.ts} +104 -86
- package/src/plugins/kriya/types/vaults.js +3 -0
- package/src/plugins/kriya/types/vaults.js.map +1 -0
- package/src/plugins/kriya/vaultsFetcher.js +67 -59
- package/src/plugins/kriya/vaultsFetcher.js.map +1 -1
- package/src/plugins/kriya/vaultsJob.js +52 -16
- package/src/plugins/kriya/vaultsJob.js.map +1 -1
- package/src/plugins/native-stake/solana/solanaValidatorsJob.js +4 -0
- package/src/plugins/native-stake/solana/solanaValidatorsJob.js.map +1 -1
- package/src/plugins/native-stake/solana/types.d.ts +8 -0
- package/src/plugins/parcl/stakingFetcher.js +10 -24
- package/src/plugins/parcl/stakingFetcher.js.map +1 -1
- package/src/plugins/sushiswap/helpers.js +24 -24
- package/src/plugins/uniswap-v2/helpers.js +22 -22
- package/src/plugins/zeta/airdropFetcher.js +14 -14
- package/src/utils/elementbuilder/LiquidityBuilder.js +1 -1
- package/src/utils/elementbuilder/LiquidityBuilder.js.map +1 -1
- package/src/utils/sei/constants.js +8 -8
- package/src/utils/sei/getQueryBalanceByOwner.js +4 -4
- package/src/plugins/kriya/types.js.map +0 -1
@@ -1,4 +1,5 @@
|
|
1
1
|
"use strict";
|
2
|
+
// Farm
|
2
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
4
|
exports.PoolSource = exports.FarmSource = void 0;
|
4
5
|
var FarmSource;
|
@@ -13,4 +14,4 @@ var PoolSource;
|
|
13
14
|
PoolSource["DeepbookV2"] = "deepbook_v2";
|
14
15
|
PoolSource["Kriya"] = "kriya";
|
15
16
|
})(PoolSource || (exports.PoolSource = PoolSource = {}));
|
16
|
-
//# sourceMappingURL=
|
17
|
+
//# sourceMappingURL=farms.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"farms.js","sourceRoot":"","sources":["../../../../../../../packages/plugins/src/plugins/kriya/types/farms.ts"],"names":[],"mappings":";AAAA,OAAO;;;AA8BP,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,2BAAa,CAAA;IACb,wBAAU,CAAA;IACV,6BAAe,CAAA;AACjB,CAAC,EAJW,UAAU,0BAAV,UAAU,QAIrB;AAED,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,mCAAqB,CAAA;IACrB,wCAA0B,CAAA;IAC1B,6BAAe,CAAA;AACjB,CAAC,EAJW,UAAU,0BAAV,UAAU,QAIrB"}
|
@@ -0,0 +1,131 @@
|
|
1
|
+
import { ID } from '../../../utils/sui/structs/id';
|
2
|
+
import { TickIndex, Type } from './common';
|
3
|
+
export type Pool = {
|
4
|
+
id: ID;
|
5
|
+
is_deposit_enabled: boolean;
|
6
|
+
is_stable: boolean;
|
7
|
+
is_swap_enabled: boolean;
|
8
|
+
is_withdraw_enabled: boolean;
|
9
|
+
lp_fee_percent: string;
|
10
|
+
lsp_locked: string;
|
11
|
+
lsp_supply: LspSupply;
|
12
|
+
protocol_fee_percent: string;
|
13
|
+
protocol_fee_x: string;
|
14
|
+
protocol_fee_y: string;
|
15
|
+
scaleX: string;
|
16
|
+
scaleY: string;
|
17
|
+
token_x: string;
|
18
|
+
token_y: string;
|
19
|
+
};
|
20
|
+
export type ExtendedPool = Pool & {
|
21
|
+
token_x_mint: string;
|
22
|
+
token_y_mint: string;
|
23
|
+
};
|
24
|
+
export type LspSupply = {
|
25
|
+
fields: Fields;
|
26
|
+
type: string;
|
27
|
+
};
|
28
|
+
export type Fields = {
|
29
|
+
value: string;
|
30
|
+
};
|
31
|
+
export type LpTokenV2 = {
|
32
|
+
id: ID;
|
33
|
+
lsp: Lsp;
|
34
|
+
pool_id: string;
|
35
|
+
};
|
36
|
+
export type Lsp = {
|
37
|
+
fields: BalanceFields;
|
38
|
+
type: string;
|
39
|
+
};
|
40
|
+
export type BalanceFields = {
|
41
|
+
balance: string;
|
42
|
+
id: ID;
|
43
|
+
};
|
44
|
+
export type ClmmPosition = {
|
45
|
+
fee_growth_inside_x_last: string;
|
46
|
+
fee_growth_inside_y_last: string;
|
47
|
+
fee_rate: string;
|
48
|
+
id: ID;
|
49
|
+
liquidity: string;
|
50
|
+
owed_coin_x: string;
|
51
|
+
owed_coin_y: string;
|
52
|
+
pool_id: string;
|
53
|
+
reward_infos: PositionRewardInfo[];
|
54
|
+
tick_lower_index: TickIndex;
|
55
|
+
tick_upper_index: TickIndex;
|
56
|
+
type_x: Type;
|
57
|
+
type_y: Type;
|
58
|
+
};
|
59
|
+
export type PositionRewardInfo = {
|
60
|
+
fields: PositionRewardInfoFields;
|
61
|
+
type: string;
|
62
|
+
};
|
63
|
+
export type PositionRewardInfoFields = {
|
64
|
+
coins_owed_reward: string;
|
65
|
+
reward_growth_inside_last: string;
|
66
|
+
};
|
67
|
+
export type ClmmPool = {
|
68
|
+
fee_growth_global_x: string;
|
69
|
+
fee_growth_global_y: string;
|
70
|
+
flash_loan_fee_rate: string;
|
71
|
+
id: ID;
|
72
|
+
liquidity: string;
|
73
|
+
max_liquidity_per_tick: string;
|
74
|
+
observation_cardinality: string;
|
75
|
+
observation_cardinality_next: string;
|
76
|
+
observation_index: string;
|
77
|
+
observations: Observation[];
|
78
|
+
protocol_fee_share: string;
|
79
|
+
protocol_fee_x: string;
|
80
|
+
protocol_fee_y: string;
|
81
|
+
protocol_flash_loan_fee_share: string;
|
82
|
+
reserve_x: string;
|
83
|
+
reserve_y: string;
|
84
|
+
reward_infos: RewardInfo[];
|
85
|
+
sqrt_price: string;
|
86
|
+
swap_fee_rate: string;
|
87
|
+
tick_bitmap: Tick;
|
88
|
+
tick_index: TickIndex;
|
89
|
+
tick_spacing: number;
|
90
|
+
ticks: Tick;
|
91
|
+
type_x: Type;
|
92
|
+
type_y: Type;
|
93
|
+
};
|
94
|
+
export type RewardInfo = {
|
95
|
+
fields: RewardInfoFields;
|
96
|
+
type: string;
|
97
|
+
};
|
98
|
+
export type RewardInfoFields = {
|
99
|
+
ended_at_seconds: string;
|
100
|
+
last_update_time: string;
|
101
|
+
reward_coin_type: Type;
|
102
|
+
reward_growth_global: string;
|
103
|
+
reward_per_seconds: string;
|
104
|
+
total_reward: string;
|
105
|
+
total_reward_allocated: string;
|
106
|
+
};
|
107
|
+
export type Observation = {
|
108
|
+
fields: ObservationFields;
|
109
|
+
type: string;
|
110
|
+
};
|
111
|
+
export type ObservationFields = {
|
112
|
+
initialized: boolean;
|
113
|
+
seconds_per_liquidity_cumulative: string;
|
114
|
+
tick_cumulative: TickCumulative;
|
115
|
+
timestamp_s: string;
|
116
|
+
};
|
117
|
+
export type TickCumulative = {
|
118
|
+
fields: TickCumulativeFields;
|
119
|
+
type: string;
|
120
|
+
};
|
121
|
+
export type TickCumulativeFields = {
|
122
|
+
bits: string;
|
123
|
+
};
|
124
|
+
export type Tick = {
|
125
|
+
fields: TickBitmapFields;
|
126
|
+
type: string;
|
127
|
+
};
|
128
|
+
export type TickBitmapFields = {
|
129
|
+
id: ID;
|
130
|
+
size: string;
|
131
|
+
};
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"pools.js","sourceRoot":"","sources":["../../../../../../../packages/plugins/src/plugins/kriya/types/pools.ts"],"names":[],"mappings":""}
|
@@ -1,9 +1,5 @@
|
|
1
|
-
import { ID } from '
|
2
|
-
|
3
|
-
id: string;
|
4
|
-
underlyingPool: string;
|
5
|
-
tokenType: string;
|
6
|
-
};
|
1
|
+
import { ID } from '../../../utils/sui/structs/id';
|
2
|
+
import { RewardInfo, TickIndex, Type } from './common';
|
7
3
|
export type Vault = {
|
8
4
|
clmm_pool_id: string;
|
9
5
|
fee_a: string;
|
@@ -54,23 +50,16 @@ export type TotalSupply = {
|
|
54
50
|
export type TotalSupplyFields = {
|
55
51
|
value: string;
|
56
52
|
};
|
57
|
-
export type
|
58
|
-
id: string;
|
59
|
-
lowerTick: number;
|
60
|
-
upperTick: number;
|
61
|
-
liquidity: string;
|
62
|
-
totalSupply: string;
|
63
|
-
};
|
64
|
-
export type VaultPosition = {
|
53
|
+
export type VaultPositionCetus = {
|
65
54
|
id: ID;
|
66
55
|
name: number[];
|
67
|
-
value:
|
56
|
+
value: ValueCetus;
|
68
57
|
};
|
69
|
-
export type
|
70
|
-
fields:
|
58
|
+
export type ValueCetus = {
|
59
|
+
fields: PositionFieldsCetus;
|
71
60
|
type: string;
|
72
61
|
};
|
73
|
-
export type
|
62
|
+
export type PositionFieldsCetus = {
|
74
63
|
coin_type_a: CoinType;
|
75
64
|
coin_type_b: CoinType;
|
76
65
|
description: string;
|
@@ -79,8 +68,8 @@ export type ValueFields = {
|
|
79
68
|
liquidity: string;
|
80
69
|
name: string;
|
81
70
|
pool: string;
|
82
|
-
tick_lower_index:
|
83
|
-
tick_upper_index:
|
71
|
+
tick_lower_index: TickIndex;
|
72
|
+
tick_upper_index: TickIndex;
|
84
73
|
url: string;
|
85
74
|
};
|
86
75
|
export type CoinType = {
|
@@ -90,66 +79,65 @@ export type CoinType = {
|
|
90
79
|
export type CoinTypeAFields = {
|
91
80
|
name: string;
|
92
81
|
};
|
93
|
-
export type
|
94
|
-
|
82
|
+
export type VaultPositionKriya = {
|
83
|
+
id: ID;
|
84
|
+
name: number[];
|
85
|
+
value: ValueKriya;
|
86
|
+
};
|
87
|
+
export type ValueKriya = {
|
88
|
+
fields: PositionFieldsKriya;
|
95
89
|
type: string;
|
96
90
|
};
|
97
|
-
export type
|
98
|
-
|
91
|
+
export type PositionFieldsKriya = {
|
92
|
+
fee_growth_inside_x_last: string;
|
93
|
+
fee_growth_inside_y_last: string;
|
94
|
+
fee_rate: string;
|
95
|
+
id: ID;
|
96
|
+
liquidity: string;
|
97
|
+
owed_coin_x: string;
|
98
|
+
owed_coin_y: string;
|
99
|
+
pool_id: string;
|
100
|
+
reward_infos: RewardInfo[];
|
101
|
+
tick_lower_index: TickIndex;
|
102
|
+
tick_upper_index: TickIndex;
|
103
|
+
type_x: Type;
|
104
|
+
type_y: Type;
|
99
105
|
};
|
100
|
-
export type
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
106
|
+
export type LeverageVaultInfo = {
|
107
|
+
depositedA: string;
|
108
|
+
apr: string;
|
109
|
+
borrowedBUsd: string;
|
110
|
+
farmStakeReceiptType: string;
|
111
|
+
decimalA: string;
|
112
|
+
createdAt: string;
|
113
|
+
farmSource: string;
|
114
|
+
coinB: string;
|
115
|
+
decimalB: string;
|
116
|
+
tvl: string;
|
117
|
+
borrowedB: string;
|
118
|
+
targetLeverage: string;
|
119
|
+
vaultName: string;
|
120
|
+
depositedAUsd: string;
|
121
|
+
lpSupply: string;
|
122
|
+
vaultSource: string;
|
108
123
|
farmId: string;
|
124
|
+
fees: string;
|
125
|
+
coinA: string;
|
126
|
+
updatedAt: string;
|
127
|
+
id: string;
|
128
|
+
};
|
129
|
+
export type DynFieldPositionVault = {
|
130
|
+
name: Name;
|
131
|
+
bcsName: string;
|
132
|
+
type: string;
|
133
|
+
objectType: string;
|
109
134
|
objectId: string;
|
110
|
-
|
111
|
-
|
112
|
-
lpFeesPercent: string;
|
113
|
-
tokenYType: string;
|
114
|
-
data: string;
|
115
|
-
updatedAt: Date;
|
116
|
-
isStable: boolean;
|
117
|
-
tokenXType: string;
|
118
|
-
tokenYReserve: string;
|
119
|
-
tokenX: Token;
|
120
|
-
tokenY: Token;
|
121
|
-
tvl: number;
|
122
|
-
apy: number;
|
123
|
-
feeApy: number;
|
124
|
-
};
|
125
|
-
export declare enum FarmSource {
|
126
|
-
Buck = "buck",
|
127
|
-
Empty = "",
|
128
|
-
Kriya = "kriya"
|
129
|
-
}
|
130
|
-
export declare enum PoolSource {
|
131
|
-
Deepbook = "deepbook",
|
132
|
-
DeepbookV2 = "deepbook_v2",
|
133
|
-
Kriya = "kriya"
|
134
|
-
}
|
135
|
-
export type Token = {
|
136
|
-
coinType: string;
|
137
|
-
ticker: string;
|
138
|
-
tokenName: string;
|
139
|
-
updatedAt: Date;
|
140
|
-
createdAt: Date;
|
141
|
-
decimals: number;
|
142
|
-
iconUrl: string;
|
143
|
-
description: string;
|
144
|
-
price: string;
|
135
|
+
version: number;
|
136
|
+
digest: string;
|
145
137
|
};
|
146
|
-
export type
|
147
|
-
|
148
|
-
|
149
|
-
lock_until: string;
|
150
|
-
stake_amount: string;
|
151
|
-
stake_weight: string;
|
152
|
-
start_unit: string;
|
138
|
+
export type Name = {
|
139
|
+
type: string;
|
140
|
+
value: number[];
|
153
141
|
};
|
154
142
|
export type StakeReceiptWithPoints = {
|
155
143
|
farm_id: string;
|
@@ -178,26 +166,56 @@ export type StakeReceiptWithPoints = {
|
|
178
166
|
type: string;
|
179
167
|
};
|
180
168
|
};
|
181
|
-
export type
|
182
|
-
|
169
|
+
export type VaultReceipt = {
|
170
|
+
farm_id: string;
|
171
|
+
id: ID;
|
172
|
+
reward_infos: RewardInfos;
|
173
|
+
shares: string;
|
174
|
+
user_points_info: UserPointsInfo;
|
175
|
+
};
|
176
|
+
export type RewardInfos = {
|
177
|
+
fields: RewardInfosFields;
|
178
|
+
type: string;
|
179
|
+
};
|
180
|
+
export type RewardInfosFields = {
|
181
|
+
id: ID;
|
182
|
+
size: string;
|
183
|
+
};
|
184
|
+
export type UserPointsInfo = {
|
185
|
+
fields: UserPointsInfoFields;
|
186
|
+
type: string;
|
187
|
+
};
|
188
|
+
export type UserPointsInfoFields = {
|
189
|
+
claimed_points: string;
|
190
|
+
index: string;
|
191
|
+
updated_at: string;
|
192
|
+
};
|
193
|
+
export type VaultData = {
|
194
|
+
lpPriceHigh: string;
|
183
195
|
apr: string;
|
184
|
-
|
185
|
-
farmStakeReceiptType: string;
|
186
|
-
decimalA: string;
|
187
|
-
createdAt: string;
|
188
|
-
farmSource: string;
|
196
|
+
createdAt: Date;
|
189
197
|
coinB: string;
|
190
|
-
decimalB: string;
|
191
198
|
tvl: string;
|
192
|
-
borrowedB: string;
|
193
|
-
targetLeverage: string;
|
194
199
|
vaultName: string;
|
195
|
-
|
200
|
+
lastRebalance: string;
|
196
201
|
lpSupply: string;
|
197
202
|
vaultSource: string;
|
198
203
|
farmId: string;
|
199
204
|
fees: string;
|
200
205
|
coinA: string;
|
201
|
-
|
206
|
+
lpPriceLow: string;
|
207
|
+
updatedAt: Date;
|
208
|
+
currentLpPrice: string;
|
202
209
|
id: string;
|
210
|
+
rebalanceCap: string;
|
211
|
+
pool: Pool;
|
212
|
+
};
|
213
|
+
export type Pool = {
|
214
|
+
tokenYDecimals: number;
|
215
|
+
vaultCoinType: string;
|
216
|
+
vaultType: string;
|
217
|
+
tokenXType: string;
|
218
|
+
tokenYType: string;
|
219
|
+
poolId: string;
|
220
|
+
tokenXDecimals: number;
|
203
221
|
};
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"vaults.js","sourceRoot":"","sources":["../../../../../../../packages/plugins/src/plugins/kriya/types/vaults.ts"],"names":[],"mappings":""}
|
@@ -17,77 +17,85 @@ const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
17
17
|
const constants_1 = require("./constants");
|
18
18
|
const clients_1 = require("../../utils/clients");
|
19
19
|
const mulitpleGetBalances_1 = require("../../utils/sui/mulitpleGetBalances");
|
20
|
-
const constants_2 = require("../cetus/constants");
|
21
20
|
const tokenAmountFromLiquidity_1 = require("../../utils/clmm/tokenAmountFromLiquidity");
|
22
|
-
const
|
21
|
+
const ElementRegistry_1 = require("../../utils/elementbuilder/ElementRegistry");
|
22
|
+
const getOwnedObjects_1 = require("../../utils/sui/getOwnedObjects");
|
23
|
+
const MemoizedCache_1 = require("../../utils/misc/MemoizedCache");
|
24
|
+
const vaultsPositionInfoMemo = new MemoizedCache_1.MemoizedCache(constants_1.vaultsInfoKey, {
|
25
|
+
prefix: constants_1.platformId,
|
26
|
+
networkId: portfolio_core_1.NetworkId.sui,
|
27
|
+
});
|
23
28
|
const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* () {
|
29
|
+
var _a, _b;
|
24
30
|
const client = (0, clients_1.getClientSui)();
|
25
|
-
const
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
});
|
31
|
+
const [vaultsOldBalances, vaultBalances, vaultsPositionInfo] = yield Promise.all([
|
32
|
+
(0, mulitpleGetBalances_1.getMultipleBalances)(client, owner, constants_1.vaultsInfo.map((vault) => vault.tokenType)),
|
33
|
+
(0, getOwnedObjects_1.getOwnedObjects)(client, owner, {
|
34
|
+
filter: { StructType: constants_1.vaultStakeReceipt },
|
35
|
+
}),
|
36
|
+
vaultsPositionInfoMemo.getItem(cache),
|
37
|
+
]);
|
33
38
|
if (!vaultsPositionInfo)
|
34
39
|
return [];
|
35
|
-
const
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
const
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
40
|
+
const vaultsByCoinType = new Map();
|
41
|
+
vaultsPositionInfo.forEach((vault) => vaultsByCoinType.set(vault.coinType, vault));
|
42
|
+
const vaultsByFarmId = new Map();
|
43
|
+
vaultsPositionInfo.forEach((vault) => vaultsByFarmId.set(vault.farmId, vault));
|
44
|
+
const registry = new ElementRegistry_1.ElementRegistry(portfolio_core_1.NetworkId.sui, constants_1.platformId);
|
45
|
+
const liquidities = registry.addElementLiquidity({
|
46
|
+
name: 'Vaults',
|
47
|
+
label: 'LiquidityPool',
|
48
|
+
});
|
49
|
+
for (let i = 0; i < vaultsOldBalances.length; i++) {
|
50
|
+
const liquidity = liquidities.addLiquidity();
|
51
|
+
const balance = vaultsOldBalances[i];
|
52
|
+
if (balance.totalBalance === '0')
|
53
|
+
continue;
|
54
|
+
const vault = vaultsByCoinType.get(balance.coinType);
|
55
|
+
if (!vault)
|
45
56
|
continue;
|
46
57
|
const totalSupply = new bignumber_js_1.default(vault.totalSupply);
|
47
|
-
const { tokenAmountA, tokenAmountB } = (0, tokenAmountFromLiquidity_1.getTokenAmountsFromLiquidity)(new bignumber_js_1.default(vault.liquidity),
|
58
|
+
const { tokenAmountA, tokenAmountB } = (0, tokenAmountFromLiquidity_1.getTokenAmountsFromLiquidity)(new bignumber_js_1.default(vault.liquidity), vault.currentTickIndex, vault.lowerTick, vault.upperTick, false);
|
48
59
|
const shares = new bignumber_js_1.default(balance.totalBalance).dividedBy(totalSupply);
|
49
|
-
const
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
60
|
+
const amountA = tokenAmountA.times(shares);
|
61
|
+
const amountB = tokenAmountB.times(shares);
|
62
|
+
liquidity.addAsset({
|
63
|
+
address: vault.mintA,
|
64
|
+
amount: amountA,
|
65
|
+
});
|
66
|
+
liquidity.addAsset({
|
67
|
+
address: vault.mintB,
|
68
|
+
amount: amountB,
|
69
|
+
});
|
70
|
+
}
|
71
|
+
for (let i = 0; i < vaultBalances.length; i++) {
|
72
|
+
const liquidity = liquidities.addLiquidity();
|
73
|
+
const stakeReceipt = (_b = (_a = vaultBalances[i].data) === null || _a === void 0 ? void 0 : _a.content) === null || _b === void 0 ? void 0 : _b.fields;
|
74
|
+
if (!stakeReceipt || stakeReceipt.shares === '0')
|
54
75
|
continue;
|
55
|
-
const
|
56
|
-
|
57
|
-
.dividedBy(Math.pow(10, tokenPriceA.decimals));
|
58
|
-
const amountB = tokenAmountB
|
59
|
-
.times(shares)
|
60
|
-
.dividedBy(Math.pow(10, tokenPriceB.decimals));
|
61
|
-
if (amountA.isZero() && amountB.isZero())
|
76
|
+
const vault = vaultsByFarmId.get(stakeReceipt.farm_id);
|
77
|
+
if (!vault)
|
62
78
|
continue;
|
63
|
-
const
|
64
|
-
const
|
65
|
-
const
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
79
|
+
const totalSupply = new bignumber_js_1.default(vault.totalSupply);
|
80
|
+
const { tokenAmountA, tokenAmountB } = (0, tokenAmountFromLiquidity_1.getTokenAmountsFromLiquidity)(new bignumber_js_1.default(vault.liquidity), 600, vault.lowerTick, vault.upperTick, false);
|
81
|
+
const useApiData = tokenAmountA.isLessThan(0) || tokenAmountB.isLessThan(0);
|
82
|
+
const shares = new bignumber_js_1.default(stakeReceipt.shares).dividedBy(totalSupply);
|
83
|
+
const amountA = useApiData
|
84
|
+
? new bignumber_js_1.default(vault.amountA).times(shares)
|
85
|
+
: tokenAmountA.times(shares);
|
86
|
+
const amountB = useApiData
|
87
|
+
? new bignumber_js_1.default(vault.amountB).times(shares)
|
88
|
+
: tokenAmountB.times(shares);
|
89
|
+
liquidity.addAsset({
|
90
|
+
address: vault.mintA,
|
91
|
+
amount: amountA,
|
92
|
+
});
|
93
|
+
liquidity.addAsset({
|
94
|
+
address: vault.mintB,
|
95
|
+
amount: amountB,
|
74
96
|
});
|
75
97
|
}
|
76
|
-
|
77
|
-
return [];
|
78
|
-
return [
|
79
|
-
{
|
80
|
-
type: 'liquidity',
|
81
|
-
data: {
|
82
|
-
liquidities,
|
83
|
-
},
|
84
|
-
label: 'LiquidityPool',
|
85
|
-
networkId: portfolio_core_1.NetworkId.sui,
|
86
|
-
platformId: constants_1.platformId,
|
87
|
-
value: totalValue,
|
88
|
-
name: 'Vaults',
|
89
|
-
},
|
90
|
-
];
|
98
|
+
return registry.getElements(cache);
|
91
99
|
});
|
92
100
|
const fetcher = {
|
93
101
|
id: `${constants_1.platformId}-vaults`,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"vaultsFetcher.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/kriya/vaultsFetcher.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,+
|
1
|
+
{"version":3,"file":"vaultsFetcher.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/kriya/vaultsFetcher.ts"],"names":[],"mappings":"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"}
|