@kodiak-finance/orderly-vaults 2.7.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/README.md +277 -0
- package/dist/index.d.mts +278 -0
- package/dist/index.d.ts +278 -0
- package/dist/index.js +26 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +17 -0
- package/dist/index.mjs.map +1 -0
- package/dist/styles.css +1 -0
- package/package.json +50 -0
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
import * as react from 'react';
|
|
2
|
+
import { FC } from 'react';
|
|
3
|
+
import * as zustand from 'zustand';
|
|
4
|
+
|
|
5
|
+
interface VaultSupportedChain {
|
|
6
|
+
chain_id: string;
|
|
7
|
+
chain_name: string;
|
|
8
|
+
}
|
|
9
|
+
type VaultTimeRange = "24h" | "7d" | "30d" | "all_time";
|
|
10
|
+
interface VaultInfo {
|
|
11
|
+
vault_id: string;
|
|
12
|
+
vault_address: string;
|
|
13
|
+
vault_type: string;
|
|
14
|
+
performance_fee_rate: number;
|
|
15
|
+
supported_chains: VaultSupportedChain[];
|
|
16
|
+
tvl: number;
|
|
17
|
+
apr30_d: number;
|
|
18
|
+
vault_lifetime_net_pnl: number;
|
|
19
|
+
lp_counts: number;
|
|
20
|
+
min_deposit_amount: number;
|
|
21
|
+
min_withdrawal_amount: number;
|
|
22
|
+
total_main_shares: number;
|
|
23
|
+
est_main_share_price: number;
|
|
24
|
+
gate_threshold_pct: number;
|
|
25
|
+
gate_triggered: boolean;
|
|
26
|
+
lock_duration: number;
|
|
27
|
+
broker_id: string;
|
|
28
|
+
"30d_apr": number;
|
|
29
|
+
"30d_apy": number;
|
|
30
|
+
}
|
|
31
|
+
interface VaultLpPerformance {
|
|
32
|
+
time_range: VaultTimeRange;
|
|
33
|
+
tvl_max_drawdown: number;
|
|
34
|
+
incremental_net_pnl: number;
|
|
35
|
+
pnl_max_drawdown: number;
|
|
36
|
+
}
|
|
37
|
+
interface VaultLpInfo {
|
|
38
|
+
vault_id: string;
|
|
39
|
+
lp_nav: number;
|
|
40
|
+
lp_tvl: number;
|
|
41
|
+
total_main_shares: number;
|
|
42
|
+
available_main_shares: number;
|
|
43
|
+
potential_pnl: number;
|
|
44
|
+
}
|
|
45
|
+
interface VaultOperation {
|
|
46
|
+
type: OperationType;
|
|
47
|
+
vault_id: string;
|
|
48
|
+
amount_change: number;
|
|
49
|
+
created_time: string;
|
|
50
|
+
status: string;
|
|
51
|
+
}
|
|
52
|
+
declare enum RoleType {
|
|
53
|
+
LP = "lp",
|
|
54
|
+
SP = "sp"
|
|
55
|
+
}
|
|
56
|
+
declare enum OperationType {
|
|
57
|
+
DEPOSIT = "deposit",
|
|
58
|
+
WITHDRAWAL = "withdrawal"
|
|
59
|
+
}
|
|
60
|
+
type VaultsPageConfig = {
|
|
61
|
+
headerImage?: React.ReactNode;
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
type VaultsPageProps = {
|
|
65
|
+
className?: string;
|
|
66
|
+
config?: VaultsPageConfig;
|
|
67
|
+
};
|
|
68
|
+
declare const VaultsPage: FC<VaultsPageProps>;
|
|
69
|
+
|
|
70
|
+
interface VaultInfoResponse {
|
|
71
|
+
rows: VaultInfo[];
|
|
72
|
+
}
|
|
73
|
+
interface VaultLpPerformanceResponse {
|
|
74
|
+
rows: VaultLpPerformance[];
|
|
75
|
+
}
|
|
76
|
+
interface VaultLpInfoResponse {
|
|
77
|
+
rows: VaultLpInfo[];
|
|
78
|
+
}
|
|
79
|
+
interface VaultPerformanceParams {
|
|
80
|
+
vault_id: string;
|
|
81
|
+
time_range?: VaultTimeRange;
|
|
82
|
+
}
|
|
83
|
+
interface VaultLpInfoParams {
|
|
84
|
+
vault_id: string;
|
|
85
|
+
wallet_address: string;
|
|
86
|
+
}
|
|
87
|
+
interface VaultOperationMessage {
|
|
88
|
+
payloadType: string;
|
|
89
|
+
nonce: string;
|
|
90
|
+
receiver: string;
|
|
91
|
+
amount: string;
|
|
92
|
+
vaultId: string;
|
|
93
|
+
token: string;
|
|
94
|
+
dexBrokerId: string;
|
|
95
|
+
chainId?: string;
|
|
96
|
+
chainType?: string;
|
|
97
|
+
}
|
|
98
|
+
type VaultOperationRequest = {
|
|
99
|
+
message: VaultOperationMessage;
|
|
100
|
+
signature: string;
|
|
101
|
+
userAddress: string;
|
|
102
|
+
verifyingContract: string;
|
|
103
|
+
};
|
|
104
|
+
/**
|
|
105
|
+
* Get vault information
|
|
106
|
+
* @param baseUrl - The base URL for the API endpoints
|
|
107
|
+
* @returns Promise<VaultInfoResponse> - Array of vault information
|
|
108
|
+
*/
|
|
109
|
+
declare function getVaultInfo(baseUrl: string): Promise<VaultInfoResponse>;
|
|
110
|
+
/**
|
|
111
|
+
* Get vault LP performance data
|
|
112
|
+
* @param baseUrl - The base URL for the API endpoints
|
|
113
|
+
* @param params - Parameters including vault_id and time_range
|
|
114
|
+
* @returns Promise<VaultLpPerformanceResponse> - Array of vault LP performance data
|
|
115
|
+
*/
|
|
116
|
+
declare function getVaultLpPerformance(baseUrl: string, params: VaultPerformanceParams): Promise<VaultLpPerformanceResponse>;
|
|
117
|
+
/**
|
|
118
|
+
* Get vault LP information
|
|
119
|
+
* @param baseUrl - The base URL for the API endpoints
|
|
120
|
+
* @param params - Parameters including vault_id and wallet_address
|
|
121
|
+
* @returns Promise<VaultLpInfoResponse> - Array of vault LP information
|
|
122
|
+
*/
|
|
123
|
+
declare function getVaultLpInfo(baseUrl: string, params: VaultLpInfoParams): Promise<VaultLpInfoResponse>;
|
|
124
|
+
|
|
125
|
+
interface VaultsState {
|
|
126
|
+
baseUrl: string;
|
|
127
|
+
vaultInfo: {
|
|
128
|
+
data: VaultInfo[];
|
|
129
|
+
loading: boolean;
|
|
130
|
+
error: string | null;
|
|
131
|
+
lastUpdated: number | null;
|
|
132
|
+
};
|
|
133
|
+
vaultLpPerformance: {
|
|
134
|
+
data: Record<string, VaultLpPerformance[]>;
|
|
135
|
+
loading: boolean;
|
|
136
|
+
error: string | null;
|
|
137
|
+
lastUpdated: number | null;
|
|
138
|
+
params: VaultPerformanceParams | null;
|
|
139
|
+
};
|
|
140
|
+
vaultLpInfo: {
|
|
141
|
+
data: Record<string, VaultLpInfo[]>;
|
|
142
|
+
loading: boolean;
|
|
143
|
+
error: string | null;
|
|
144
|
+
lastUpdated: number | null;
|
|
145
|
+
params: VaultLpInfoParams | null;
|
|
146
|
+
};
|
|
147
|
+
vaultsPageConfig: VaultsPageConfig | null;
|
|
148
|
+
setBaseUrl: (baseUrl: string) => void;
|
|
149
|
+
fetchVaultInfo: (baseUrl?: string) => Promise<void>;
|
|
150
|
+
refreshVaultInfo: () => Promise<void>;
|
|
151
|
+
fetchVaultLpPerformance: (params: VaultPerformanceParams, baseUrl?: string) => Promise<void>;
|
|
152
|
+
refreshVaultLpPerformance: () => Promise<void>;
|
|
153
|
+
fetchVaultLpInfo: (params: VaultLpInfoParams, baseUrl?: string) => Promise<void>;
|
|
154
|
+
refreshVaultLpInfo: () => Promise<void>;
|
|
155
|
+
setVaultsPageConfig: (config: VaultsPageConfig) => void;
|
|
156
|
+
}
|
|
157
|
+
declare const useVaultsStore: zustand.UseBoundStore<zustand.StoreApi<VaultsState>>;
|
|
158
|
+
declare const useVaultInfoState: () => {
|
|
159
|
+
data: VaultInfo[];
|
|
160
|
+
loading: boolean;
|
|
161
|
+
error: string | null;
|
|
162
|
+
lastUpdated: number | null;
|
|
163
|
+
};
|
|
164
|
+
declare const useVaultLpPerformanceState: () => {
|
|
165
|
+
data: Record<string, VaultLpPerformance[]>;
|
|
166
|
+
loading: boolean;
|
|
167
|
+
error: string | null;
|
|
168
|
+
lastUpdated: number | null;
|
|
169
|
+
params: VaultPerformanceParams | null;
|
|
170
|
+
};
|
|
171
|
+
declare const useVaultLpInfoState: () => {
|
|
172
|
+
data: Record<string, VaultLpInfo[]>;
|
|
173
|
+
loading: boolean;
|
|
174
|
+
error: string | null;
|
|
175
|
+
lastUpdated: number | null;
|
|
176
|
+
params: VaultLpInfoParams | null;
|
|
177
|
+
};
|
|
178
|
+
declare const useVaultInfoActions: () => {
|
|
179
|
+
fetchVaultInfo: (baseUrl?: string) => Promise<void>;
|
|
180
|
+
refreshVaultInfo: () => Promise<void>;
|
|
181
|
+
};
|
|
182
|
+
declare const useVaultLpPerformanceActions: () => {
|
|
183
|
+
fetchVaultLpPerformance: (params: VaultPerformanceParams, baseUrl?: string) => Promise<void>;
|
|
184
|
+
refreshVaultLpPerformance: () => Promise<void>;
|
|
185
|
+
};
|
|
186
|
+
declare const useVaultLpInfoActions: () => {
|
|
187
|
+
fetchVaultLpInfo: (params: VaultLpInfoParams, baseUrl?: string) => Promise<void>;
|
|
188
|
+
refreshVaultLpInfo: () => Promise<void>;
|
|
189
|
+
};
|
|
190
|
+
declare const useVaultLpPerformanceById: (vaultId: string) => VaultLpPerformance[];
|
|
191
|
+
declare const useVaultLpInfoById: (vaultId: string) => VaultLpInfo[];
|
|
192
|
+
declare const useVaultLpPerformanceIds: () => string[];
|
|
193
|
+
declare const useVaultLpInfoIds: () => string[];
|
|
194
|
+
declare const useVaultLpPerformanceArray: () => VaultLpPerformance[];
|
|
195
|
+
declare const useVaultLpInfoArray: () => VaultLpInfo[];
|
|
196
|
+
|
|
197
|
+
declare const AllVaultsWidget: FC;
|
|
198
|
+
|
|
199
|
+
declare const AllVaultsDesktop: FC<{
|
|
200
|
+
vaults: VaultInfo[];
|
|
201
|
+
}>;
|
|
202
|
+
|
|
203
|
+
type VaultCardWidgetProps = {
|
|
204
|
+
vault: VaultInfo;
|
|
205
|
+
};
|
|
206
|
+
declare const VaultCardWidget: FC<VaultCardWidgetProps>;
|
|
207
|
+
|
|
208
|
+
declare const useVaultCardScript: (vault: VaultInfo) => {
|
|
209
|
+
title: string;
|
|
210
|
+
description: string;
|
|
211
|
+
icon: string;
|
|
212
|
+
vaultInfo: VaultInfo;
|
|
213
|
+
lpInfo: {
|
|
214
|
+
deposits: string;
|
|
215
|
+
earnings: string;
|
|
216
|
+
} | {
|
|
217
|
+
deposits: number;
|
|
218
|
+
earnings: number;
|
|
219
|
+
};
|
|
220
|
+
isEVMConnected: boolean;
|
|
221
|
+
isSOLConnected: boolean;
|
|
222
|
+
openDepositAndWithdraw: (activeTab: "deposit" | "withdraw") => void;
|
|
223
|
+
availableBalance: number;
|
|
224
|
+
openVaultWebsite: () => void;
|
|
225
|
+
isWrongNetwork: boolean;
|
|
226
|
+
};
|
|
227
|
+
type VaultCardScript = ReturnType<typeof useVaultCardScript>;
|
|
228
|
+
|
|
229
|
+
declare const VaultCard: FC<VaultCardScript>;
|
|
230
|
+
|
|
231
|
+
declare const ORDERLY_ICON = "https://oss.orderly.network/static/symbol_logo/ORDER.png";
|
|
232
|
+
declare const ORDERLY_VAULT_TITLE = "Orderly OmniVault";
|
|
233
|
+
declare const ORDERLY_VAULT_DESCRIPTION = "Earn passive yields effortlessly, no trading expertise required. OmniVault deploys market-making strategies, taking on liquidations, and accrue platform fees.";
|
|
234
|
+
|
|
235
|
+
declare const VaultsHeaderWidget: FC;
|
|
236
|
+
|
|
237
|
+
declare const useVaultsHeaderScript: () => {
|
|
238
|
+
supportVaults: VaultSupportedChain[];
|
|
239
|
+
headerImage: react.ReactNode;
|
|
240
|
+
brokerName: string;
|
|
241
|
+
};
|
|
242
|
+
type VaultsHeaderScript = ReturnType<typeof useVaultsHeaderScript>;
|
|
243
|
+
|
|
244
|
+
declare const VaultsHeaderDesktop: FC<VaultsHeaderScript>;
|
|
245
|
+
|
|
246
|
+
declare const VaultsIntroductionWidget: FC;
|
|
247
|
+
|
|
248
|
+
declare const VaultDepositAndWithdrawWithDialogId = "VaultDepositAndWithdrawWithDialogId";
|
|
249
|
+
declare const VaultDepositAndWithdrawWithSheetId = "VaultDepositAndWithdrawWithSheetId";
|
|
250
|
+
type VaultDepositAndWithdrawProps = {
|
|
251
|
+
activeTab?: "deposit" | "withdraw";
|
|
252
|
+
close?: () => void;
|
|
253
|
+
vaultId: string;
|
|
254
|
+
};
|
|
255
|
+
declare const VaultDepositAndWithdraw: FC<VaultDepositAndWithdrawProps>;
|
|
256
|
+
|
|
257
|
+
type VaultDepositWidgetProps = {
|
|
258
|
+
vaultId: string;
|
|
259
|
+
};
|
|
260
|
+
|
|
261
|
+
declare const VaultDepositWidget: FC<VaultDepositWidgetProps>;
|
|
262
|
+
|
|
263
|
+
type VaultWithdrawWidgetProps = {
|
|
264
|
+
vaultId: string;
|
|
265
|
+
};
|
|
266
|
+
declare const VaultWithdrawWidget: FC<VaultWithdrawWidgetProps>;
|
|
267
|
+
|
|
268
|
+
type LatestDepositWidgetProps = {
|
|
269
|
+
vaultId: string;
|
|
270
|
+
};
|
|
271
|
+
declare const LatestDepositWidget: FC<LatestDepositWidgetProps>;
|
|
272
|
+
|
|
273
|
+
type LatestWithdrawWidgetProps = {
|
|
274
|
+
vaultId: string;
|
|
275
|
+
};
|
|
276
|
+
declare const LatestWithdrawWidget: FC<LatestWithdrawWidgetProps>;
|
|
277
|
+
|
|
278
|
+
export { AllVaultsDesktop, AllVaultsWidget, LatestDepositWidget, type LatestDepositWidgetProps, LatestWithdrawWidget, type LatestWithdrawWidgetProps, ORDERLY_ICON, ORDERLY_VAULT_DESCRIPTION, ORDERLY_VAULT_TITLE, OperationType, RoleType, VaultCard, type VaultCardScript, VaultCardWidget, type VaultCardWidgetProps, VaultDepositAndWithdraw, type VaultDepositAndWithdrawProps, VaultDepositAndWithdrawWithDialogId, VaultDepositAndWithdrawWithSheetId, VaultDepositWidget, type VaultInfo, type VaultInfoResponse, type VaultLpInfo, type VaultLpInfoParams, type VaultLpInfoResponse, type VaultLpPerformance, type VaultLpPerformanceResponse, type VaultOperation, type VaultOperationMessage, type VaultOperationRequest, type VaultPerformanceParams, type VaultSupportedChain, type VaultTimeRange, VaultWithdrawWidget, type VaultWithdrawWidgetProps, VaultsHeaderDesktop, type VaultsHeaderScript, VaultsHeaderWidget, VaultsIntroductionWidget, VaultsPage, type VaultsPageConfig, type VaultsPageProps, getVaultInfo, getVaultLpInfo, getVaultLpPerformance, useVaultCardScript, useVaultInfoActions, useVaultInfoState, useVaultLpInfoActions, useVaultLpInfoArray, useVaultLpInfoById, useVaultLpInfoIds, useVaultLpInfoState, useVaultLpPerformanceActions, useVaultLpPerformanceArray, useVaultLpPerformanceById, useVaultLpPerformanceIds, useVaultLpPerformanceState, useVaultsHeaderScript, useVaultsStore };
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var Q = require('react');
|
|
4
|
+
var orderlyHooks = require('@kodiak-finance/orderly-hooks');
|
|
5
|
+
var zustand = require('zustand');
|
|
6
|
+
var orderlyI18n = require('@kodiak-finance/orderly-i18n');
|
|
7
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
8
|
+
var ramda = require('ramda');
|
|
9
|
+
var orderlyUi = require('@kodiak-finance/orderly-ui');
|
|
10
|
+
var orderlyTypes = require('@kodiak-finance/orderly-types');
|
|
11
|
+
var orderlyUtils = require('@kodiak-finance/orderly-utils');
|
|
12
|
+
var orderlyUiTransfer = require('@kodiak-finance/orderly-ui-transfer');
|
|
13
|
+
var orderlyUiConnector = require('@kodiak-finance/orderly-ui-connector');
|
|
14
|
+
|
|
15
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
16
|
+
|
|
17
|
+
var Q__default = /*#__PURE__*/_interopDefault(Q);
|
|
18
|
+
|
|
19
|
+
var So=Object.defineProperty;var n=(t,o)=>()=>(t&&(o=t(t=0)),o);var pt=(t,o)=>{for(var e in o)So(t,e,{get:o[e],enumerable:true});};var ee,oe,ct=n(()=>{ee={prod:"https://api-sv.orderly.org",staging:"https://testnet-api-sv.orderly.org",qa:"https://qa-api-sv-aliyun.orderly.org",dev:"https://dev-api-sv.orderly.org"},oe={prod:"https://app.orderly.network",staging:"https://staging-app.orderly.network",qa:"https://qa-app.orderly.network",dev:"https://dev-app.orderly.network"};});function X(){let t=orderlyHooks.useGetEnv();return Q.useMemo(()=>ee[t],[t])}var dt=n(()=>{ct();});function _o(t){let o=Ro(t),e=new URLSearchParams;return Object.entries(o).forEach(([r,a])=>{a!=null&&e.append(r,String(a));}),e.toString()}function Ro(t){let o={};return Object.entries(t).forEach(([e,r])=>{r!=null&&(typeof r=="string"||typeof r=="number"||typeof r=="boolean"?o[e]=r:typeof r=="object"&&r!==null&&Object.entries(r).forEach(([s,i])=>{i!=null&&(typeof i=="string"||typeof i=="number"||typeof i=="boolean")&&(o[s]=i);}));}),o}function Wo(t,o){if(!o||Object.keys(o).length===0)return t;let e=_o(o);if(!e)return t;let r=t.includes("?")?"&":"?";return `${t}${r}${e}`}var O,mt,Do,Z,re=n(()=>{O=class extends Error{constructor(e,r,a,s){super(e);this.code=r;this.status=a;this.response=s;this.name="VaultsApiError";}};mt=class{constructor(){this.requestInterceptors=[];this.responseInterceptors=[];this.defaultConfig={timeout:1e4,retry:3,retryDelay:1e3,validateStatus:o=>o>=200&&o<300,headers:{"Content-Type":"application/json"}};}addRequestInterceptor(o){this.requestInterceptors.push(o);}addResponseInterceptor(o){this.responseInterceptors.push(o);}createTimeoutController(o){let e=new AbortController;return setTimeout(()=>e.abort(),o),e}mergeHeaders(o={},e={}){return {...o,...e}}sleep(o){return new Promise(e=>setTimeout(e,o))}async request(o,e={}){let a={...this.defaultConfig,...e,headers:this.mergeHeaders(this.defaultConfig.headers,e.headers)};for(let S of this.requestInterceptors)a=await S(a);let s=o;typeof o=="string"&&!o.startsWith("http")&&a.baseURL&&(s=`${a.baseURL}${o.startsWith("/")?"":"/"}${o}`),a.params&&(s=typeof s=="string"?Wo(s,a.params):s);let i;a.timeout&&a.timeout>0&&(i=this.createTimeoutController(a.timeout),a.signal=i.signal);let{retry:u=0,retryDelay:m=1e3,validateStatus:h,params:l,baseURL:v,timeout:P,data:f,method:I,...C}=a,x={...C,method:I};f!==void 0&&(x.body=typeof f=="string"?f:JSON.stringify(f));let p;for(let S=0;S<=u;S++)try{let b=await fetch(s,x);if(!h(b.status)){let L=b.statusText,te;try{let lt=await b.json();L=lt.message||lt.code||L,te=lt.code;}catch{}throw new O(L,te,b.status,b)}let J;try{J=await b.json();}catch{throw new O("Invalid JSON response","PARSE_ERROR",b.status,b)}let V=J;for(let L of this.responseInterceptors)V=await L(b,V);if(typeof V=="object"&&V!==null&&"success"in V){let L=V;if(L.success)return L.data;throw new O(L.message||"API request failed",L.code,b.status,b)}return V}catch(b){if(p=b instanceof Error?b:new Error(String(b)),b instanceof O||b?.name==="AbortError"||S===u)throw p;S<u&&await this.sleep(m);}finally{i?.abort();}throw p}async get(o,e={}){return this.request(o,{...e,method:"GET"})}async post(o,e={}){return this.request(o,{...e,method:"POST"})}async put(o,e={}){return this.request(o,{...e,method:"PUT"})}async delete(o,e={}){return this.request(o,{...e,method:"DELETE"})}async patch(o,e={}){return this.request(o,{...e,method:"PATCH"})}},Do=new mt,Z=Do;});async function ae(t){return Z.get("/v1/public/strategy_vault/vault/info",{baseURL:t})}async function ie(t,o){return Z.get("/v1/public/strategy_vault/vault/performance",{params:o,baseURL:t})}async function se(t,o){return Z.get("/v1/public/strategy_vault/lp/info",{params:o,baseURL:t})}var ft=n(()=>{re();});exports.useVaultsStore = void 0;exports.useVaultInfoState = void 0;exports.useVaultLpPerformanceState = void 0;exports.useVaultLpInfoState = void 0;exports.useVaultInfoActions = void 0;exports.useVaultLpPerformanceActions = void 0;exports.useVaultLpInfoActions = void 0;exports.useVaultLpPerformanceById = void 0;exports.useVaultLpInfoById = void 0;exports.useVaultLpPerformanceIds = void 0;exports.useVaultLpInfoIds = void 0;exports.useVaultLpPerformanceArray = void 0;exports.useVaultLpInfoArray = void 0;var $=n(()=>{ft();exports.useVaultsStore=zustand.create((t,o)=>({baseUrl:"",vaultInfo:{data:[],loading:false,error:null,lastUpdated:null},vaultLpPerformance:{data:{},loading:false,error:null,lastUpdated:null,params:null},vaultLpInfo:{data:{},loading:false,error:null,lastUpdated:null,params:null},vaultsPageConfig:null,setBaseUrl:e=>{t({baseUrl:e});},fetchVaultInfo:async e=>{let r=o(),a=e||r.baseUrl;if(!a){t(s=>({vaultInfo:{...s.vaultInfo,error:"Base URL is required"}}));return}t(s=>({baseUrl:e||s.baseUrl,vaultInfo:{...s.vaultInfo,loading:true,error:null}}));try{let s=await ae(a);t(i=>({vaultInfo:{...i.vaultInfo,data:s.rows,loading:!1,error:null,lastUpdated:Date.now()}}));}catch(s){t(i=>({vaultInfo:{...i.vaultInfo,loading:false,error:s instanceof Error?s.message:"Failed to fetch vault info"}}));}},refreshVaultInfo:async()=>{let e=o();e.vaultInfo.lastUpdated&&e.baseUrl&&await e.fetchVaultInfo();},fetchVaultLpPerformance:async(e,r)=>{let a=o(),s=r||a.baseUrl;if(!s){t(i=>({vaultLpPerformance:{...i.vaultLpPerformance,error:"Base URL is required"}}));return}t(i=>({baseUrl:r||i.baseUrl,vaultLpPerformance:{...i.vaultLpPerformance,loading:true,error:null,params:e}}));try{let i=await ie(s,e);t(u=>({vaultLpPerformance:{...u.vaultLpPerformance,data:{...u.vaultLpPerformance.data,[e.vault_id]:i.rows},loading:!1,error:null,lastUpdated:Date.now()}}));}catch(i){t(u=>({vaultLpPerformance:{...u.vaultLpPerformance,loading:false,error:i instanceof Error?i.message:"Failed to fetch vault LP performance"}}));}},refreshVaultLpPerformance:async()=>{let e=o();e.vaultLpPerformance.lastUpdated&&e.vaultLpPerformance.params&&e.baseUrl&&await e.fetchVaultLpPerformance(e.vaultLpPerformance.params);},fetchVaultLpInfo:async(e,r)=>{let a=o(),s=r||a.baseUrl;if(!s){t(i=>({vaultLpInfo:{...i.vaultLpInfo,error:"Base URL is required"}}));return}t(i=>({baseUrl:r||i.baseUrl,vaultLpInfo:{...i.vaultLpInfo,loading:true,error:null,params:e}}));try{let i=await se(s,e);t(u=>({vaultLpInfo:{...u.vaultLpInfo,data:{...u.vaultLpInfo.data,[e.vault_id]:i.rows},loading:!1,error:null,lastUpdated:Date.now()}}));}catch(i){t(u=>({vaultLpInfo:{...u.vaultLpInfo,loading:false,error:i instanceof Error?i.message:"Failed to fetch vault LP info"}}));}},refreshVaultLpInfo:async()=>{let e=o();e.vaultLpInfo.lastUpdated&&e.vaultLpInfo.params&&e.baseUrl&&await e.fetchVaultLpInfo(e.vaultLpInfo.params);},setVaultsPageConfig:e=>{t({vaultsPageConfig:e});}})),exports.useVaultInfoState=()=>exports.useVaultsStore(t=>t.vaultInfo),exports.useVaultLpPerformanceState=()=>exports.useVaultsStore(t=>t.vaultLpPerformance),exports.useVaultLpInfoState=()=>exports.useVaultsStore(t=>t.vaultLpInfo),exports.useVaultInfoActions=()=>exports.useVaultsStore(t=>({fetchVaultInfo:t.fetchVaultInfo,refreshVaultInfo:t.refreshVaultInfo})),exports.useVaultLpPerformanceActions=()=>exports.useVaultsStore(t=>({fetchVaultLpPerformance:t.fetchVaultLpPerformance,refreshVaultLpPerformance:t.refreshVaultLpPerformance})),exports.useVaultLpInfoActions=()=>exports.useVaultsStore(t=>({fetchVaultLpInfo:t.fetchVaultLpInfo,refreshVaultLpInfo:t.refreshVaultLpInfo})),exports.useVaultLpPerformanceById=t=>exports.useVaultsStore(o=>o.vaultLpPerformance.data[t]),exports.useVaultLpInfoById=t=>exports.useVaultsStore(o=>o.vaultLpInfo.data[t]),exports.useVaultLpPerformanceIds=()=>exports.useVaultsStore(t=>Object.keys(t.vaultLpPerformance.data)),exports.useVaultLpInfoIds=()=>exports.useVaultsStore(t=>Object.keys(t.vaultLpInfo.data)),exports.useVaultLpPerformanceArray=()=>exports.useVaultsStore(t=>Object.values(t.vaultLpPerformance.data).flat()),exports.useVaultLpInfoArray=()=>exports.useVaultsStore(t=>Object.values(t.vaultLpInfo.data).flat());});var F=n(()=>{$();});exports.VaultsHeaderDesktop = void 0;var ht=n(()=>{exports.VaultsHeaderDesktop=t=>{let{supportVaults:o,headerImage:e,brokerName:r}=t,{t:a}=orderlyI18n.useTranslation(),s=Q.useMemo(()=>jsxRuntime.jsx("div",{className:"oui-flex oui-items-center",children:o.map((u,m)=>jsxRuntime.jsx("img",{src:`https://oss.orderly.network/static/network_logo/${u.chain_id}.png`,alt:u.chain_id,className:"oui-relative oui-size-5",style:{marginLeft:m>0?"-4px":"0",zIndex:o.length-m}},u.chain_id))}),[o]),i=Q.useMemo(()=>typeof e=="string"?jsxRuntime.jsx("img",{src:e,alt:"header",className:"oui-bg-contain oui-bg-center oui-bg-no-repeat"}):e,[e]);return jsxRuntime.jsxs("div",{className:"oui-flex oui-items-center oui-justify-between",children:[jsxRuntime.jsxs("div",{className:"oui-flex oui-max-w-[726px] oui-flex-col",children:[jsxRuntime.jsxs("div",{className:"oui-flex oui-items-center oui-gap-1 oui-text-[18px] oui-font-normal oui-text-base-contrast-54",children:[a("vaults.availableOn")," ",s]}),jsxRuntime.jsx("div",{className:"oui-mb-6 oui-mt-8 oui-text-5xl oui-font-bold oui-leading-[44px] oui-text-base-contrast",children:a("vaults.header.title")}),jsxRuntime.jsx("div",{className:"oui-text-xl oui-font-normal oui-text-base-contrast-54",children:a("vaults.header.description",{brokerName:r})})]}),jsxRuntime.jsx("div",{className:"oui-h-[238px] oui-w-[360px]",children:i})]})};});var de,me=n(()=>{de=t=>{let{supportVaults:o,headerImage:e}=t,{t:r}=orderlyI18n.useTranslation(),a=orderlyHooks.useConfig("brokerName"),s=Q.useMemo(()=>jsxRuntime.jsx("div",{className:"oui-flex oui-items-center",children:o.map((u,m)=>jsxRuntime.jsx("img",{src:`https://oss.orderly.network/static/network_logo/${u.chain_id}.png`,alt:u.chain_id,className:"oui-relative oui-size-[18px]",style:{marginLeft:m>0?"-4px":"0",zIndex:o.length-m}},u.chain_id))}),[o]),i=Q.useMemo(()=>typeof e=="string"?jsxRuntime.jsx("img",{src:e,alt:"header",className:"oui-bg-contain oui-bg-center oui-bg-no-repeat"}):e,[e]);return jsxRuntime.jsxs("div",{className:"oui-relative",children:[jsxRuntime.jsxs("div",{className:"oui-flex oui-flex-col",children:[jsxRuntime.jsxs("div",{className:"oui-flex oui-items-center oui-gap-1 oui-text-2xs oui-font-semibold oui-text-base-contrast-54",children:[r("vaults.availableOn")," ",s]}),jsxRuntime.jsx("div",{className:"oui-mb-4 oui-mt-6 oui-min-h-[56px] oui-max-w-[calc(100%-187px)] oui-text-xl oui-font-bold oui-text-base-contrast",children:r("vaults.header.title")}),jsxRuntime.jsx("div",{className:"oui-max-w-[450px] oui-text-2xs oui-font-normal oui-text-base-contrast-54",children:r("vaults.header.description",{brokerName:a})})]}),jsxRuntime.jsx("div",{className:"oui-absolute -oui-right-3 -oui-top-4 oui-h-[124px] oui-w-[187px]",children:i})]})};});exports.useVaultsHeaderScript = void 0;var yt=n(()=>{F();exports.useVaultsHeaderScript=()=>{let{vaultInfo:t,vaultsPageConfig:o}=exports.useVaultsStore(),e=orderlyHooks.useConfig("brokerName");return {supportVaults:Q.useMemo(()=>{let a=[];return t.data.forEach(s=>{a.push(...s.supported_chains);}),ramda.uniqBy(s=>s.chain_id,a)},[t.data]),headerImage:o?.headerImage,brokerName:e}};});exports.VaultsHeaderWidget = void 0;var ge=n(()=>{ht();me();yt();exports.VaultsHeaderWidget=()=>{let t=exports.useVaultsHeaderScript(),{isMobile:o}=orderlyUi.useScreen();return o?jsxRuntime.jsx(de,{...t}):jsxRuntime.jsx(exports.VaultsHeaderDesktop,{...t})};});var ve={};pt(ve,{VaultsHeaderDesktop:()=>exports.VaultsHeaderDesktop,VaultsHeaderWidget:()=>exports.VaultsHeaderWidget,useVaultsHeaderScript:()=>exports.useVaultsHeaderScript});var It=n(()=>{ge();ht();yt();});var xe,Vt,ye=n(()=>{xe=t=>{let{t:o}=orderlyI18n.useTranslation(),{isMobile:e}=orderlyUi.useScreen(),{vaultsInfo:r}=t;return jsxRuntime.jsxs("div",{className:orderlyUi.cn("oui-flex oui-items-center ","oui-via-21.6% oui-via-83.23% oui-bg-gradient-to-r oui-from-[rgba(var(--oui-gradient-neutral-end)/1)] oui-to-[rgba(var(--oui-gradient-neutral-start)/1)]",e?"oui-gap-3 oui-rounded-xl oui-p-3":"oui-gap-6 oui-rounded-2xl oui-p-6"),children:[jsxRuntime.jsx(Vt,{title:o("vaults.introduction.tvl"),value:r.tvl,textProps:{currency:"$"},isMobile:e}),jsxRuntime.jsx(orderlyUi.Divider,{direction:"vertical",className:orderlyUi.cn("oui-bg-white/[0.12]",e?"oui-h-[44px]":"oui-h-[64px]")}),jsxRuntime.jsx(Vt,{title:o("common.vaults"),value:r.vaultsCount,isMobile:e}),jsxRuntime.jsx(orderlyUi.Divider,{direction:"vertical",className:orderlyUi.cn("oui-bg-white/[0.12]",e?"oui-h-[44px]":"oui-h-[64px]")}),jsxRuntime.jsx(Vt,{title:o("vaults.introduction.depositors"),value:r.lpCount,isMobile:e})]})},Vt=t=>{let{title:o,value:e,textProps:r,isMobile:a}=t;return jsxRuntime.jsxs("div",{className:orderlyUi.cn("oui-flex oui-flex-1 oui-flex-col oui-items-center ",a?"oui-gap-0.5":"oui-gap-3"),children:[jsxRuntime.jsx("div",{className:orderlyUi.cn("oui-font-normal oui-text-base-contrast-54",a?"oui-text-2xs":"oui-text-base"),children:o}),jsxRuntime.jsx(orderlyUi.Text.numeral,{className:orderlyUi.cn("oui-font-semibold",a?"oui-text-base":"oui-text-xl"),dp:0,...r,children:e})]})};});var Ie,Ve=n(()=>{F();Ie=()=>{let{vaultInfo:t}=exports.useVaultsStore();return {vaultsInfo:Q.useMemo(()=>{let e=t.data.reduce((a,s)=>a+s.tvl,0),r=t.data.reduce((a,s)=>a+s.lp_counts,0);return {tvl:e,lpCount:r,vaultsCount:t.data.length}},[t.data])}};});exports.VaultsIntroductionWidget = void 0;var we=n(()=>{ye();Ve();exports.VaultsIntroductionWidget=()=>{let t=Ie();return jsxRuntime.jsx(xe,{...t})};});var Pe={};pt(Pe,{VaultsIntroductionWidget:()=>exports.VaultsIntroductionWidget});var wt=n(()=>{we();});exports.RoleType = void 0;exports.OperationType = void 0;var T=n(()=>{exports.RoleType=(e=>(e.LP="lp",e.SP="sp",e))(exports.RoleType||{}),exports.OperationType=(e=>(e.DEPOSIT="deposit",e.WITHDRAWAL="withdrawal",e))(exports.OperationType||{});});var Le,Se=n(()=>{Le={prod:{vaultProtocol:"0x70Fe7d65Ac7c1a1732f64d2E6fC0E33622D0C991",vaultCrossChainManager:"0x58c9747ccAAE56182C7d9c814F5eaca395D8c93B",vaultPvLedger:"0xB7E792f0da9104A27288421583748215AefFFd78",vaultId:"0xa3426a1cef4052c056fced18099be899d93f1427d13b9a1df1806b91fad3d0c2",spAddress:"0x8bAA309D93FFFB54A64444FD98E10d92D4d9Eb22"},staging:{vaultProtocol:"0x6B6059259B4096ea6420Eb5e08a22214d2303aE9",vaultCrossChainManager:"0x510dD61a988797114A9a51b0d228E894037BD9cb",vaultPvLedger:"0x20AFe57C75D1C548A9Da265fBFC5416c43783589",vaultId:"0x95514fb145354f07bb889f711e856481b5ed52fce52200148aa834b3b29544c8",spAddress:"0xbddfd22ef902a4898147a1ca5b985d03c62a8c41"},qa:{vaultProtocol:"0xF5b12d5F1db6DAB8C7c0561152b5e4bb8fD5eb38",vaultCrossChainManager:"0xB8a3245407571804b4db5219cBe8D9F2EA1828DE",vaultPvLedger:"0x15c9B5705CaCB4eb140dfd7a8c651E18027e5146",vaultId:"0x4812cbb88f4025372a3e2acd10d02b5f680d7d1fe78091f6cfde80122c861099",spAddress:"0xbddfd22ef902a4898147a1ca5b985d03c62a8c41"},dev:{vaultProtocol:"0xA292E1126703F804FBD5671F034c7226538C54C7",vaultCrossChainManager:"0x7568ACC147Af12b02713143C3177D7e89C28A9A6",vaultPvLedger:"0x2a5909498d85650744dD5CF964F2136962e5AE6E",vaultId:"0x4812cbb88f4025372a3e2acd10d02b5f680d7d1fe78091f6cfde80122c861099",spAddress:"0xbddfd22ef902a4898147a1ca5b985d03c62a8c41"}};});var Ce,Te=n(()=>{T();Ce=(t,o)=>t==="deposit"&&o==="lp"?0:t==="withdrawal"&&o==="lp"?1:t==="deposit"&&o==="sp"?2:t==="withdrawal"&&o==="sp"?3:1;});var q,tt=n(()=>{q=t=>{let{type:o,vaultId:e}=t,{data:r,mutate:a}=orderlyHooks.usePrivateQuery(`/v1/account_sv_transaction_history?type=${o}&vault_id=${e}&size=1`,{formatter:i=>i?.rows||orderlyTypes.EMPTY_LIST,revalidateOnFocus:false});return {latestOperation:Q.useMemo(()=>r?.[0],[r]),refetch:a}};});var et,Lt=n(()=>{Se();T();Te();tt();et=t=>{let{account:o,state:e}=orderlyHooks.useAccount(),r=orderlyHooks.useGetEnv(),{track:a}=orderlyHooks.useTrack(),s=Q.useMemo(()=>Le[r].vaultPvLedger,[r]),[i]=orderlyHooks.useMutation("/v1/sv_operation_request"),{refetch:u}=q({type:t.type,vaultId:t.vaultId}),m=Q.useMemo(()=>e?.accountId!==e?.mainAccountId,[e?.accountId,e?.mainAccountId]);return {handleOperation:async({amount:l,vaultId:v})=>{if(e.accountId!==e.mainAccountId){orderlyUi.toast.error("Please switch to the main account to perform this operation.");return}if(t.type==="deposit"&&new orderlyUtils.Decimal(l).lt(10)){orderlyUi.toast.error("Deposit amount is less than the minimum 10 USDC.");return}let f={payloadType:Ce(t.type,"lp"),amount:new orderlyUtils.Decimal(Number(l)).mul(10**6).toString(),vaultId:v,token:"USDC",domain:{name:"Orderly",version:"1",chainId:e.connectWallet?.chainId,verifyingContract:s}},{message:I,signatured:C}=await o.generateDexRequest(f);try{let x=await i({message:{...I,chainId:e.connectWallet?.chainId},signature:C,userAddress:e.address,verifyingContract:s});if(!x.success){t.type==="deposit"?a(orderlyTypes.TrackerEventName.vaultDepositFailed,{msg:x.message}):a(orderlyTypes.TrackerEventName.vaultWithdrawFailed,{msg:x.message}),orderlyUi.toast.error(x.message);return}await u(),t.type==="deposit"?a(orderlyTypes.TrackerEventName.vaultDepositSuccess,{quantity:l,vaultId:v}):a(orderlyTypes.TrackerEventName.vaultWithdrawSuccess,{quantity:l,vaultId:v}),orderlyUi.toast.success(`${t.type} successful`);}catch(x){let p=x instanceof Error?x.message:String(x);t.type==="deposit"?a(orderlyTypes.TrackerEventName.vaultDepositFailed,{msg:p}):a(orderlyTypes.TrackerEventName.vaultWithdrawFailed,{msg:p}),orderlyUi.toast.error(p);}},disabledOperation:m}};});var We,De=n(()=>{$();T();Lt();We=t=>{let{vaultId:o}=t,[e,r]=Q.useState(""),{vaultInfo:a}=exports.useVaultsStore(),{handleOperation:s,disabledOperation:i}=et({type:"deposit",vaultId:o}),{holding:u}=orderlyHooks.useCollateral(),{t:m}=orderlyI18n.useTranslation(),h=a.data[0]?.min_deposit_amount||0,l=orderlyHooks.useMaxWithdrawal("USDC"),v=Q.useMemo(()=>u?.find(V=>V.token==="USDC")?.holding||0,[u]),P=Q.useMemo(()=>Math.min(l,v),[l,v]),f=Q.useMemo(()=>a.data.find(L=>L.vault_id===o)?.est_main_share_price,[a.data,o]),I=Q.useMemo(()=>!f||!e?"-":new orderlyUtils.Decimal(e).div(f).toString(),[e,f]),C=async()=>{!I||I==="-"||(await s({amount:e,vaultId:o}),r(""));},x=orderlyHooks.useTokenInfo("USDC"),p=Q.useMemo(()=>({...x,display_name:x?.token,symbol:x?.token}),[x]),S=V=>{if(V&&new orderlyUtils.Decimal(V).gt(P)){r(P.toString());return}r(V);},b=Q.useMemo(()=>!e||e==="0"||i||!!e&&new orderlyUtils.Decimal(e).lt(h),[e,i]),J=Q.useMemo(()=>e&&new orderlyUtils.Decimal(e).lt(h)?{hintMessage:m("vaults.operation.error.minDeposit",{amount:h}),status:"error"}:{hintMessage:"",status:""},[e,m,l,v]);return {quantity:e,onQuantityChange:S,sourceToken:p,maxQuantity:P,sharePrice:f,shares:I,handleDeposit:C,vaultId:o,disabledDeposit:b,disabledOperation:i,inputHint:J}};});var Ne,Ae=n(()=>{T();tt();Ne=({vaultId:t})=>{let{latestOperation:o}=q({type:"deposit",vaultId:t});return {latestOperation:o}};});var rt,St=n(()=>{rt=t=>t==="completed"?"success":t==="rejected"||t==="failed"?"danger":"primary";});var Ue,Ee=n(()=>{St();Ue=t=>{let{latestOperation:o}=t,{t:e}=orderlyI18n.useTranslation();return o?jsxRuntime.jsxs("div",{className:"oui-mt-3 oui-flex oui-flex-col oui-gap-2",children:[jsxRuntime.jsx("div",{className:"oui-text-xs oui-font-normal oui-text-base-contrast-54",children:e("vaults.deposit.latestDeposit")}),jsxRuntime.jsx("div",{className:"oui-h-[44px] oui-rounded-lg oui-border oui-border-white/[0.12] oui-p-3",children:jsxRuntime.jsxs("div",{className:"oui-flex oui-items-center",children:[jsxRuntime.jsx("div",{className:orderlyUi.cn("oui-mr-1 oui-size-1 oui-rounded-full",o.status==="completed"&&"oui-bg-success",o.status==="rejected"&&"oui-bg-danger",o.status==="failed"&&"oui-bg-danger",(o.status==="pending"||o.status==="new")&&"oui-bg-primary")}),jsxRuntime.jsx(orderlyUi.Text,{color:rt(o.status),className:"oui-text-xs oui-font-normal",children:o.status.slice(0,1).toUpperCase()+o.status.slice(1)}),jsxRuntime.jsx(orderlyUi.TokenIcon,{name:"USDC",className:"oui-ml-auto oui-mr-1 oui-size-4"}),jsxRuntime.jsx(orderlyUi.Text.numeral,{className:"oui-text-sm oui-font-semibold oui-text-base-contrast-80",children:o.amount_change})]})})]}):null};});exports.LatestDepositWidget = void 0;var Ct=n(()=>{Ae();Ee();exports.LatestDepositWidget=t=>{let{vaultId:o}=t,e=Ne({vaultId:o});return jsxRuntime.jsx(Ue,{...e})};});var qe,Me=n(()=>{Ct();qe=t=>{let{quantity:o,onQuantityChange:e,sourceToken:r,maxQuantity:a,shares:s,handleDeposit:i,vaultId:u,disabledDeposit:m,disabledOperation:h,inputHint:l}=t,{t:v}=orderlyI18n.useTranslation();return jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx(orderlyUiTransfer.BrokerWallet,{}),jsxRuntime.jsx(orderlyUi.Box,{mt:3,mb:1,children:jsxRuntime.jsx(orderlyUiTransfer.QuantityInput,{value:o,onValueChange:e,token:{...r,precision:6},testId:"oui-testid-vault-deposit-dialog-quantity-input",hintMessage:l.hintMessage,status:l.status})}),jsxRuntime.jsx(orderlyUiTransfer.AvailableQuantity,{maxQuantity:a?.toString()||"0",onClick:()=>{e(a?.toString()||"0");}}),jsxRuntime.jsxs(orderlyUi.Box,{mt:5,mb:1,className:"oui-flex oui-items-center oui-justify-between oui-text-sm oui-font-semibold oui-text-base-contrast-54",children:[jsxRuntime.jsx("div",{children:v("vaults.deposit.estShares")}),jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:6,padding:false,suffix:jsxRuntime.jsx("span",{className:"oui-ml-1 oui-text-base-contrast-54",children:v("vaults.deposit.shares")}),children:s})]}),jsxRuntime.jsxs(orderlyUi.Box,{mb:5,className:"oui-flex oui-items-center oui-justify-between oui-text-sm oui-font-semibold oui-text-base-contrast-54",children:[jsxRuntime.jsx("div",{children:v("vaults.deposit.lockupDuration")}),jsxRuntime.jsx(orderlyUi.Text.numeral,{suffix:jsxRuntime.jsx("span",{className:"oui-ml-1 oui-text-base-contrast-54",children:"hrs"}),children:"48"})]}),h&&jsxRuntime.jsx("div",{className:"oui-mt-3 oui-text-center",children:jsxRuntime.jsx(orderlyUi.Text,{color:"warning",className:"oui-text-sm oui-font-semibold",children:v("vaults.operation.error.switchAccount")})}),jsxRuntime.jsx(orderlyUi.Button,{fullWidth:true,color:"primary",disabled:m,className:"oui-mt-3",onClick:i,children:v("common.deposit")}),jsxRuntime.jsx(exports.LatestDepositWidget,{vaultId:u})]})};});exports.VaultDepositWidget = void 0;var He=n(()=>{De();Me();exports.VaultDepositWidget=t=>{let{vaultId:o}=t,e=We({vaultId:o});return jsxRuntime.jsx(qe,{...e})};});var Wt=n(()=>{He();});var ze,Qe=n(()=>{F();T();Lt();ze=t=>{let{vaultId:o}=t,[e,r]=Q.useState(""),{handleOperation:a,disabledOperation:s}=et({type:"withdrawal",vaultId:o}),i=exports.useVaultLpInfoById(o),{vaultInfo:u}=exports.useVaultsStore(),{t:m}=orderlyI18n.useTranslation(),h=Q.useMemo(()=>u.data.find(S=>S.vault_id===o)?.est_main_share_price||0,[u.data,o]),l=i?.[0]?.available_main_shares||0,v=Q.useMemo(()=>!e||!h?"-":new orderlyUtils.Decimal(e).mul(h).toString(),[e,h]),P=async()=>{await a({amount:e,vaultId:o});},f=p=>{p&&new orderlyUtils.Decimal(p).gt(l)?r(l.toString()):r(p);},I=Q.useMemo(()=>!e||!u.data[0]?.est_main_share_price||!u.data[0]?.min_withdrawal_amount||e===l.toString()?false:new orderlyUtils.Decimal(e).mul(u.data[0]?.est_main_share_price).lt(u.data[0]?.min_withdrawal_amount),[e,u,l]),C=Q.useMemo(()=>!e||e==="0"||s||!!e&&I,[e,s]),x=Q.useMemo(()=>e&&I?{hintMessage:m("vaults.operation.error.minWithdrawal",{amount:u.data[0]?.min_withdrawal_amount}),status:"error"}:{hintMessage:"",status:""},[e,m]);return {quantity:e,onQuantityChange:f,maxQuantity:l,handleWithdraw:P,vaultId:o,sharePrice:h,receivingAmount:v,disabledWithdraw:C,disabledOperation:s,inputHint:x}};});var $e,Ge=n(()=>{T();tt();$e=({vaultId:t})=>{let{latestOperation:o}=q({type:"withdrawal",vaultId:t});return {latestOperation:o}};});var Nt,Ye,At,Ir,at,Ot=n(()=>{Nt=()=>jsxRuntime.jsx("div",{className:"oui-size-2 oui-rounded-full oui-bg-white/[0.54]"}),Ye=()=>jsxRuntime.jsx("div",{className:"oui-h-px oui-flex-1 oui-bg-white/[0.2]"}),At=({children:t,className:o})=>jsxRuntime.jsx("div",{className:orderlyUi.cn("oui-flex-1 oui-text-2xs oui-font-normal oui-text-base-contrast-80",o),children:t}),Ir=()=>{let{t}=orderlyI18n.useTranslation();return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{className:"oui-flex oui-items-center",children:[jsxRuntime.jsx(Nt,{}),jsxRuntime.jsx("div",{className:"oui-flex-1",children:jsxRuntime.jsx(Ye,{})}),jsxRuntime.jsx(Nt,{}),jsxRuntime.jsx("div",{className:"oui-flex-1",children:jsxRuntime.jsx(Ye,{})}),jsxRuntime.jsx(Nt,{})]}),jsxRuntime.jsxs("div",{className:"oui-mt-1 oui-flex oui-justify-between",children:[jsxRuntime.jsx(At,{children:t("vaults.withdraw.process.initiate")}),jsxRuntime.jsx(At,{className:"oui-text-center",children:t("vaults.withdraw.process.vaultProcess")}),jsxRuntime.jsx(At,{className:"oui-text-right",children:t("vaults.withdraw.process.transferred")})]})]})},at=()=>{let{t}=orderlyI18n.useTranslation();return jsxRuntime.jsxs("div",{className:"oui-flex oui-flex-col oui-gap-2 oui-rounded-xl oui-border oui-border-white/[0.12] oui-p-3",children:[jsxRuntime.jsxs("div",{className:"oui-flex oui-items-center oui-justify-between oui-text-sm oui-font-semibold oui-text-base-contrast-54",children:[jsxRuntime.jsx("div",{children:t("vaults.withdraw.process.withdrawProcess")}),jsxRuntime.jsx(orderlyUi.Text,{color:"primary",children:t("vaults.withdraw.process.upTo")})]}),jsxRuntime.jsx(Ir,{})]})};});var Ze,je=n(()=>{St();Ot();Ze=t=>{let{latestOperation:o}=t,{t:e}=orderlyI18n.useTranslation();return o?jsxRuntime.jsxs("div",{className:"oui-mt-3 oui-flex oui-flex-col oui-gap-2",children:[jsxRuntime.jsx("div",{className:"oui-text-xs oui-font-normal oui-text-base-contrast-54",children:e("vaults.withdraw.latestWithdraw")}),jsxRuntime.jsx("div",{className:"oui-h-[44px] oui-rounded-lg oui-border oui-border-white/[0.12] oui-p-3",children:jsxRuntime.jsxs("div",{className:"oui-flex oui-items-center",children:[jsxRuntime.jsx("div",{className:orderlyUi.cn("oui-mr-1 oui-size-1 oui-rounded-full",o.status==="completed"&&"oui-bg-success",o.status==="rejected"&&"oui-bg-danger",o.status==="failed"&&"oui-bg-danger",(o.status==="pending"||o.status==="new")&&"oui-bg-primary")}),jsxRuntime.jsx(orderlyUi.Text,{color:rt(o.status),className:"oui-text-xs oui-font-normal",children:o.status.slice(0,1).toUpperCase()+o.status.slice(1)}),jsxRuntime.jsx(orderlyUi.TokenIcon,{name:"USDC",className:"oui-ml-auto oui-mr-1 oui-size-4"}),jsxRuntime.jsx(orderlyUi.Text.numeral,{className:"oui-text-sm oui-font-semibold oui-text-base-contrast-80",children:o.amount_change||"-"})]})})]}):jsxRuntime.jsx(at,{})};});exports.LatestWithdrawWidget = void 0;var eo=n(()=>{Ge();je();exports.LatestWithdrawWidget=t=>{let{vaultId:o}=t,e=$e({vaultId:o});return jsxRuntime.jsx(Ze,{...e})};});var Ft=n(()=>{eo();});var ao,it,io,Or,Fr,so=n(()=>{Ft();Ot();ao=t=>{let{quantity:o,onQuantityChange:e,maxQuantity:r,handleWithdraw:a,vaultId:s,sharePrice:i,receivingAmount:u,disabledWithdraw:m,disabledOperation:h,inputHint:l}=t,{isMobile:v}=orderlyUi.useScreen(),P=()=>{orderlyUi.modal.show(v?Fr:Or,{quantity:o,receivingAmount:u,handleWithdraw:a});},{t:f}=orderlyI18n.useTranslation();return jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx(orderlyUiTransfer.BrokerWallet,{}),jsxRuntime.jsx(orderlyUi.Box,{mt:3,mb:1,children:jsxRuntime.jsx(orderlyUiTransfer.QuantityInput,{value:o,onValueChange:e,token:{display_name:"Shares",precision:6},testId:"oui-testid-vault-withdraw-dialog-quantity-input",hintMessage:l.hintMessage,status:l.status})}),jsxRuntime.jsx(orderlyUiTransfer.AvailableQuantity,{maxQuantity:r,onClick:()=>{e(r.toString());}}),jsxRuntime.jsx(it,{label:f("vaults.withdraw.estPricePerShare"),currency:"$",value:i||"-",className:"oui-mb-1 oui-mt-5"}),jsxRuntime.jsx(it,{label:f("vaults.withdraw.estReceivingAmount"),value:u,suffix:jsxRuntime.jsx("span",{className:"oui-ml-1 oui-text-base-contrast-36",children:"USDC"}),className:"oui-mb-5"}),h&&jsxRuntime.jsx("div",{className:"oui-mt-3 oui-text-center",children:jsxRuntime.jsx(orderlyUi.Text,{color:"warning",className:"oui-text-sm oui-font-semibold",children:f("vaults.operation.error.switchAccount")})}),jsxRuntime.jsx(orderlyUi.Button,{fullWidth:true,color:"primary",disabled:m,className:"oui-mt-3",onClick:P,children:f("common.withdraw")}),jsxRuntime.jsx("div",{className:"oui-mt-3",children:jsxRuntime.jsx(exports.LatestWithdrawWidget,{vaultId:s})})]})},it=({label:t,value:o,suffix:e,currency:r,className:a})=>jsxRuntime.jsxs("div",{className:orderlyUi.cn("oui-flex oui-items-center oui-justify-between oui-text-sm oui-font-semibold oui-text-base-contrast-54",a),children:[jsxRuntime.jsx("div",{children:t}),jsxRuntime.jsx(orderlyUi.Text.numeral,{currency:r,className:"oui-text-base-contrast",suffix:e,children:o})]}),io=t=>{let{quantity:o,receivingAmount:e,handleWithdraw:r,hide:a}=t,{t:s}=orderlyI18n.useTranslation();return jsxRuntime.jsxs("div",{className:"oui-flex oui-flex-col",children:[jsxRuntime.jsx(it,{label:s("vaults.withdraw.dialog.withdrawalAmount"),value:o,suffix:jsxRuntime.jsx("span",{className:"oui-ml-1 oui-text-base-contrast-36",children:"Shares"})}),jsxRuntime.jsx(it,{label:s("vaults.withdraw.dialog.estimatedReceiving"),value:e,suffix:jsxRuntime.jsx("span",{className:"oui-ml-1 oui-text-base-contrast-36",children:"USDC"}),className:"oui-mt-1"}),jsxRuntime.jsx(orderlyUi.Text,{color:"warning",className:"oui-my-5 oui-text-sm oui-font-semibold",children:s("vaults.withdraw.dialog.note")}),jsxRuntime.jsx(at,{}),jsxRuntime.jsx(orderlyUi.Button,{fullWidth:true,color:"primary",className:"oui-mt-5",onClick:async()=>{await r(),a?.();},children:s("vaults.withdraw.dialog.initiateWithdrawal")})]})},Or=orderlyUi.modal.create(({quantity:t,receivingAmount:o,handleWithdraw:e})=>{let{visible:r,hide:a,onOpenChange:s}=orderlyUi.useModal(),{t:i}=orderlyI18n.useTranslation();return jsxRuntime.jsx(orderlyUi.SimpleDialog,{title:i("vaults.withdraw.dialog.title"),open:r,onOpenChange:s,children:jsxRuntime.jsx(io,{quantity:t,receivingAmount:o,handleWithdraw:e,hide:a})})}),Fr=orderlyUi.modal.create(({quantity:t,receivingAmount:o,handleWithdraw:e})=>{let{visible:r,hide:a,onOpenChange:s}=orderlyUi.useModal(),{t:i}=orderlyI18n.useTranslation();return jsxRuntime.jsx(orderlyUi.SimpleSheet,{title:i("vaults.withdraw.dialog.title"),open:r,onOpenChange:s,children:jsxRuntime.jsx(io,{quantity:t,receivingAmount:o,handleWithdraw:e,hide:a})})});});exports.VaultWithdrawWidget = void 0;var uo=n(()=>{Qe();so();exports.VaultWithdrawWidget=t=>{let{vaultId:o}=t,e=ze({vaultId:o});return jsxRuntime.jsx(ao,{...e})};});var qt=n(()=>{uo();});exports.VaultDepositAndWithdrawWithDialogId = void 0;exports.VaultDepositAndWithdrawWithSheetId = void 0;exports.VaultDepositAndWithdraw = void 0;var Ht=n(()=>{Wt();qt();exports.VaultDepositAndWithdrawWithDialogId="VaultDepositAndWithdrawWithDialogId",exports.VaultDepositAndWithdrawWithSheetId="VaultDepositAndWithdrawWithSheetId",exports.VaultDepositAndWithdraw=t=>{let[o,e]=Q.useState(t.activeTab||"deposit"),{vaultId:r}=t,{t:a}=orderlyI18n.useTranslation();return jsxRuntime.jsxs(orderlyUi.Tabs,{value:o,onValueChange:e,variant:"contained",size:"lg",classNames:{tabsList:"oui-px-0",tabsContent:"oui-pt-5"},children:[jsxRuntime.jsx(orderlyUi.TabPanel,{title:a("common.deposit"),icon:jsxRuntime.jsx(orderlyUi.ArrowDownSquareFillIcon,{}),value:"deposit",children:jsxRuntime.jsx(exports.VaultDepositWidget,{vaultId:r})}),jsxRuntime.jsx(orderlyUi.TabPanel,{title:a("common.withdraw"),icon:jsxRuntime.jsx(orderlyUi.ArrowUpSquareFillIcon,{}),value:"withdraw",children:jsxRuntime.jsx(exports.VaultWithdrawWidget,{vaultId:r})})]})};orderlyUi.registerSimpleDialog(exports.VaultDepositAndWithdrawWithDialogId,exports.VaultDepositAndWithdraw,{size:"md",classNames:{content:"oui-border oui-border-line-6"}});orderlyUi.registerSimpleSheet(exports.VaultDepositAndWithdrawWithSheetId,exports.VaultDepositAndWithdraw);});exports.ORDERLY_ICON = void 0;exports.ORDERLY_VAULT_TITLE = void 0;exports.ORDERLY_VAULT_DESCRIPTION = void 0;var zt=n(()=>{exports.ORDERLY_ICON="https://oss.orderly.network/static/symbol_logo/ORDER.png",exports.ORDERLY_VAULT_TITLE="Orderly OmniVault",exports.ORDERLY_VAULT_DESCRIPTION="Earn passive yields effortlessly, no trading expertise required. OmniVault deploys market-making strategies, taking on liquidations, and accrue platform fees.";});exports.useVaultCardScript = void 0;var Qt=n(()=>{ct();dt();$();Ht();zt();exports.useVaultCardScript=t=>{let{t:o}=orderlyI18n.useTranslation(),e=exports.useVaultLpInfoById(t.vault_id),{fetchVaultLpInfo:r}=exports.useVaultsStore(),a=orderlyHooks.useGetEnv(),{isMobile:s}=orderlyUi.useScreen(),{state:i}=orderlyHooks.useAccount(),u=X(),{holding:m}=orderlyHooks.useCollateral(),h=Q.useMemo(()=>m?.find(p=>p.token==="USDC")?.holding||0,[m]);Q.useEffect(()=>{!i.address||!u||!t.vault_id||r({vault_id:t.vault_id,wallet_address:i.address},u);},[t.vault_id,i.address,u]);let l=Q.useMemo(()=>h,[h]),v=Q.useMemo(()=>{let p=e?.[0];return p?{deposits:p.lp_tvl-p.potential_pnl,earnings:p.potential_pnl}:{deposits:"--",earnings:"--"}},[e]),P=Q.useMemo(()=>i.chainNamespace==="EVM",[i.chainNamespace]),f=Q.useMemo(()=>i.chainNamespace==="SOL",[i.chainNamespace]),I=Q.useMemo(()=>i.chainNamespace!=="EVM"&&i.chainNamespace!=="SOL"&&i.accountId!==i.mainAccountId,[i.chainNamespace,i.accountId,i.mainAccountId]),C=p=>{orderlyUi.modal.show(s?exports.VaultDepositAndWithdrawWithSheetId:exports.VaultDepositAndWithdrawWithDialogId,{activeTab:p,vaultId:t.vault_id});},x=()=>{let p=oe[a];window.open(`${p}/vaults`,"_blank");};return {title:o("vaults.card.orderly.title"),description:o("vaults.card.orderly.description"),icon:exports.ORDERLY_ICON,vaultInfo:t,lpInfo:v,isEVMConnected:P,isSOLConnected:f,openDepositAndWithdraw:C,availableBalance:l,openVaultWebsite:x,isWrongNetwork:I}};});exports.VaultCard = void 0;var fo,Gt,ra,Kt=n(()=>{exports.VaultCard=t=>{let{title:o,vaultInfo:e,lpInfo:r,description:a,isEVMConnected:s,isSOLConnected:i,openDepositAndWithdraw:u,availableBalance:m,openVaultWebsite:h}=t,{t:l}=orderlyI18n.useTranslation(),{isMobile:v}=orderlyUi.useScreen(),P=Q.useMemo(()=>jsxRuntime.jsx("div",{className:"oui-flex oui-items-center",children:e.supported_chains.map((f,I)=>jsxRuntime.jsx("img",{src:`https://oss.orderly.network/static/network_logo/${f.chain_id}.png`,alt:f.chain_id,className:orderlyUi.cn("oui-relative",v?"oui-size-[18px]":"oui-size-5"),style:{marginLeft:I>0?"-4px":"0",zIndex:e.supported_chains.length-I}},f.chain_id))}),[e.supported_chains]);return jsxRuntime.jsxs("div",{className:"oui-relative oui-h-[388px] oui-overflow-hidden oui-rounded-2xl oui-border oui-border-solid oui-border-white/[0.12] oui-bg-base-9",children:[jsxRuntime.jsx("div",{style:{position:"absolute",top:0,right:0,width:"100%",height:"180px",backdropFilter:"blur(2px)",zIndex:1,background:"linear-gradient(180deg, rgba(44, 5, 69, 0.80) 0%, rgba(19, 21, 25, 0.80) 63.46%, #131519 100%)"}}),jsxRuntime.jsx("img",{src:"/vaults/orderly_vault_card_bg.png",alt:"",style:{position:"absolute",top:0,right:0,width:"100%",height:"180px",zIndex:0}}),jsxRuntime.jsxs("div",{className:"oui-absolute oui-left-0 oui-top-0 oui-z-20 oui-flex oui-flex-col oui-gap-3 oui-p-6",children:[jsxRuntime.jsxs("div",{className:"oui-flex oui-items-center oui-gap-2",children:[jsxRuntime.jsx("img",{src:"https://oss.orderly.network/static/symbol_logo/ORDER.png",alt:"",className:"oui-size-8"}),jsxRuntime.jsx("div",{className:"oui-text-[18px] oui-font-semibold oui-text-white",children:o}),P,jsxRuntime.jsx("div",{className:"oui-z-50 oui-ml-auto oui-cursor-pointer",onClick:h,children:jsxRuntime.jsx(orderlyUi.ArrowRightUpSquareFillIcon,{color:"white",width:18,height:18,viewBox:"0 0 18 18"})})]}),jsxRuntime.jsx("div",{className:"oui-text-2xs oui-font-normal oui-leading-[18px] oui-text-base-contrast-54",children:a}),jsxRuntime.jsxs("div",{className:"oui-flex oui-items-center oui-gap-2",children:[jsxRuntime.jsx(fo,{label:l("vaults.card.tvl"),value:e.tvl,textProps:{currency:"$",dp:0,type:"numeral"}}),jsxRuntime.jsx(fo,{label:l("vaults.card.apy"),value:(e["30d_apy"]*100).toFixed(2)+"%",textProps:{color:"brand",type:"gradient"}})]}),jsxRuntime.jsxs("div",{className:"oui-mt-3 oui-flex oui-flex-col oui-items-center oui-gap-2 oui-rounded-lg oui-bg-white/[0.06] oui-p-3",children:[jsxRuntime.jsx(Gt,{label:l("vaults.card.myDeposits"),value:r.deposits}),jsxRuntime.jsx(Gt,{label:l("vaults.card.myEarnings"),value:r.earnings})]}),jsxRuntime.jsx(Gt,{label:l("vaults.card.accountBalance"),value:m}),jsxRuntime.jsx(ra,{isEVMConnected:s,isSOLConnected:i,openDepositAndWithdraw:u})]})]})},fo=t=>{let{label:o,value:e,textProps:r}=t;return jsxRuntime.jsxs("div",{className:orderlyUi.cn("oui-flex oui-flex-1 oui-flex-col oui-items-center oui-justify-center oui-px-3 oui-py-2","oui-rounded-lg oui-border oui-border-solid oui-border-white/[0.12]"),children:[jsxRuntime.jsx("div",{className:"oui-text-2xs oui-font-normal oui-leading-[18px] oui-text-base-contrast-54",children:o}),r.type==="gradient"?jsxRuntime.jsx(orderlyUi.Text.gradient,{className:"oui-text-base oui-font-semibold",...r,children:e}):jsxRuntime.jsx(orderlyUi.Text.numeral,{className:"oui-text-base oui-font-semibold",...r,children:e})]})},Gt=t=>{let{label:o,value:e,textProps:r}=t;return jsxRuntime.jsxs("div",{className:"oui-flex oui-w-full oui-items-center oui-justify-between oui-text-2xs oui-font-normal",children:[jsxRuntime.jsx("div",{className:"oui-text-base-contrast-54",children:o}),jsxRuntime.jsx(orderlyUi.Text.numeral,{className:"oui-text-base-contrast-80",...r,dp:2,suffix:jsxRuntime.jsx("span",{className:"oui-ml-1 oui-text-base-contrast-36",children:"USDC"}),children:e})]})},ra=t=>{let{isEVMConnected:o,isSOLConnected:e,openDepositAndWithdraw:r}=t,{t:a}=orderlyI18n.useTranslation();return jsxRuntime.jsx(orderlyUiConnector.AuthGuard,{buttonProps:{size:"md",fullWidth:true},children:o||e?jsxRuntime.jsxs("div",{className:"oui-flex oui-items-center oui-gap-2",children:[jsxRuntime.jsx(orderlyUi.Button,{className:"oui-flex-1",size:"md",onClick:()=>r("deposit"),children:a("common.deposit")}),jsxRuntime.jsx(orderlyUi.Button,{className:"oui-flex-1",size:"md",color:"secondary",onClick:()=>r("withdraw"),children:a("common.withdraw")})]}):jsxRuntime.jsx(orderlyUi.Button,{size:"md",color:"warning",children:a("connector.wrongNetwork")})})};});exports.VaultCardWidget = void 0;var xo=n(()=>{Qt();Kt();exports.VaultCardWidget=t=>{let{vault:o}=t,e=exports.useVaultCardScript(o);return jsxRuntime.jsx(exports.VaultCard,{...e})};});var ut=n(()=>{xo();Qt();Kt();zt();});exports.AllVaultsDesktop = void 0;var Zt=n(()=>{ut();exports.AllVaultsDesktop=t=>{let{vaults:o}=t,{t:e}=orderlyI18n.useTranslation();return jsxRuntime.jsxs("div",{className:"oui-flex oui-flex-col oui-gap-6",children:[jsxRuntime.jsx("div",{className:"oui-text-xl oui-font-normal oui-text-base-contrast",children:e("vaults.allVaults")}),jsxRuntime.jsx("div",{className:"oui-grid oui-grid-cols-3 oui-gap-4 min-[1024px]:oui-grid-cols-3",children:o.map(r=>jsxRuntime.jsx(exports.VaultCardWidget,{vault:r},r.vault_id))})]})};});var yo,Io=n(()=>{ut();yo=t=>{let{vaults:o}=t;return jsxRuntime.jsx("div",{className:"oui-flex oui-flex-col oui-gap-3",children:o.map(e=>jsxRuntime.jsx(exports.VaultCardWidget,{vault:e},e.vault_id))})};});exports.AllVaultsWidget = void 0;var wo=n(()=>{$();Zt();Io();exports.AllVaultsWidget=()=>{let{data:t}=exports.useVaultInfoState(),{isMobile:o}=orderlyUi.useScreen();return o?jsxRuntime.jsx(yo,{vaults:t}):jsxRuntime.jsx(exports.AllVaultsDesktop,{vaults:t})};});var Po={};pt(Po,{AllVaultsDesktop:()=>exports.AllVaultsDesktop,AllVaultsWidget:()=>exports.AllVaultsWidget});var jt=n(()=>{wo();Zt();});dt();F();var le=t=>{let o=X(),{fetchVaultInfo:e,setVaultsPageConfig:r}=exports.useVaultsStore();return Q.useEffect(()=>{t.config&&r(t.config);},[t.config]),Q.useEffect(()=>{o&&e(o);},[o]),jsxRuntime.jsx("div",{children:t.children})};var pa=Q__default.default.lazy(()=>Promise.resolve().then(()=>(It(),ve)).then(t=>({default:t.VaultsHeaderWidget}))),ca=Q__default.default.lazy(()=>Promise.resolve().then(()=>(wt(),Pe)).then(t=>({default:t.VaultsIntroductionWidget}))),da=Q__default.default.lazy(()=>Promise.resolve().then(()=>(jt(),Po)).then(t=>({default:t.AllVaultsWidget}))),hu=t=>{let{isMobile:o}=orderlyUi.useScreen();return jsxRuntime.jsx(le,{...t,children:jsxRuntime.jsx("div",{className:orderlyUi.cn("oui-relative oui-min-h-screen ","oui-bg-base-10",o?"oui-px-3 oui-py-6":"oui-px-6 oui-py-12",t?.className),children:jsxRuntime.jsxs("div",{id:"vaults-content",className:orderlyUi.cn("oui-mx-auto oui-flex oui-max-w-[1200px] oui-flex-col",o?"oui-gap-6":"oui-gap-12"),children:[jsxRuntime.jsx(Q__default.default.Suspense,{fallback:null,children:jsxRuntime.jsx(pa,{})}),jsxRuntime.jsx(Q__default.default.Suspense,{fallback:null,children:jsxRuntime.jsx(ca,{})}),jsxRuntime.jsx(Q__default.default.Suspense,{fallback:null,children:jsxRuntime.jsx(da,{})})]})})})};T();ft();F();jt();ut();It();wt();Ht();Wt();qt();Ct();Ft();
|
|
20
|
+
|
|
21
|
+
exports.VaultsPage = hu;
|
|
22
|
+
exports.getVaultInfo = ae;
|
|
23
|
+
exports.getVaultLpInfo = se;
|
|
24
|
+
exports.getVaultLpPerformance = ie;
|
|
25
|
+
//# sourceMappingURL=out.js.map
|
|
26
|
+
//# sourceMappingURL=index.js.map
|