@orderly.network/portfolio 2.8.6 → 2.8.7
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/dist/index.js +913 -670
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +774 -531
- package/dist/index.mjs.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +18 -18
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var React12 = require('react');
|
|
4
4
|
var jsxRuntime = require('react/jsx-runtime');
|
|
5
5
|
var hooks = require('@orderly.network/hooks');
|
|
6
6
|
var reactApp = require('@orderly.network/react-app');
|
|
@@ -23,7 +23,7 @@ var perp = require('@orderly.network/perp');
|
|
|
23
23
|
|
|
24
24
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
25
25
|
|
|
26
|
-
var
|
|
26
|
+
var React12__default = /*#__PURE__*/_interopDefault(React12);
|
|
27
27
|
var pick__default = /*#__PURE__*/_interopDefault(pick);
|
|
28
28
|
|
|
29
29
|
var __defProp = Object.defineProperty;
|
|
@@ -38,16 +38,16 @@ var __export = (target, all) => {
|
|
|
38
38
|
var LayoutContext, useLayoutContext, LayoutProvider;
|
|
39
39
|
var init_context = __esm({
|
|
40
40
|
"src/layout/context.tsx"() {
|
|
41
|
-
LayoutContext =
|
|
41
|
+
LayoutContext = React12.createContext({
|
|
42
42
|
sideOpen: true
|
|
43
43
|
});
|
|
44
44
|
useLayoutContext = () => {
|
|
45
|
-
return
|
|
45
|
+
return React12.useContext(LayoutContext);
|
|
46
46
|
};
|
|
47
47
|
LayoutProvider = (props) => {
|
|
48
48
|
const { routerAdapter, children } = props;
|
|
49
|
-
const [sideOpen, setSideOpen] =
|
|
50
|
-
const memoizedValue =
|
|
49
|
+
const [sideOpen, setSideOpen] = React12.useState(true);
|
|
50
|
+
const memoizedValue = React12.useMemo(
|
|
51
51
|
() => ({
|
|
52
52
|
sideOpen,
|
|
53
53
|
onSideOpenChange: setSideOpen,
|
|
@@ -73,19 +73,19 @@ var init_assets_script = __esm({
|
|
|
73
73
|
const { isMobile } = ui.useScreen();
|
|
74
74
|
const handleDomId = isMobile ? uiTransfer.DepositAndWithdrawWithSheetId : uiTransfer.DepositAndWithdrawWithDialogId;
|
|
75
75
|
const subAccounts = state.subAccounts ?? [];
|
|
76
|
-
const canTrade =
|
|
76
|
+
const canTrade = React12.useMemo(() => {
|
|
77
77
|
return !wrongNetwork && !disabledConnect && (state.status === types.AccountStatusEnum.EnableTrading || state.status === types.AccountStatusEnum.EnableTradingWithoutConnected);
|
|
78
78
|
}, [state.status, wrongNetwork, disabledConnect]);
|
|
79
79
|
const onLeverageEdit = () => {
|
|
80
80
|
ui.modal.show(uiLeverage.LeverageWidgetWithDialogId);
|
|
81
81
|
};
|
|
82
|
-
const onDeposit =
|
|
82
|
+
const onDeposit = React12.useCallback(() => {
|
|
83
83
|
ui.modal.show(handleDomId, { activeTab: "deposit" });
|
|
84
84
|
}, [handleDomId]);
|
|
85
|
-
const onWithdraw =
|
|
85
|
+
const onWithdraw = React12.useCallback(() => {
|
|
86
86
|
ui.modal.show(handleDomId, { activeTab: "withdraw" });
|
|
87
87
|
}, []);
|
|
88
|
-
const onTransfer =
|
|
88
|
+
const onTransfer = React12.useCallback(() => {
|
|
89
89
|
if (isMobile) {
|
|
90
90
|
ui.modal.show(uiTransfer.TransferSheetId);
|
|
91
91
|
} else {
|
|
@@ -315,7 +315,7 @@ var useHistoryDataGroupScript;
|
|
|
315
315
|
var init_historyDataGroup_script = __esm({
|
|
316
316
|
"src/pages/overview/historyDataGroup/historyDataGroup.script.ts"() {
|
|
317
317
|
useHistoryDataGroupScript = () => {
|
|
318
|
-
const [active, setActive] =
|
|
318
|
+
const [active, setActive] = React12.useState("deposit");
|
|
319
319
|
return {
|
|
320
320
|
active,
|
|
321
321
|
onTabChange: setActive
|
|
@@ -334,7 +334,7 @@ var init_column = __esm({
|
|
|
334
334
|
e.stopPropagation();
|
|
335
335
|
ui.toast.success(t("common.copy.copied"));
|
|
336
336
|
};
|
|
337
|
-
const columns =
|
|
337
|
+
const columns = React12.useMemo(() => {
|
|
338
338
|
const txIdColumn = {
|
|
339
339
|
title: t("common.txId"),
|
|
340
340
|
dataIndex: "tx_id",
|
|
@@ -455,18 +455,18 @@ var init_assetHistory_script = __esm({
|
|
|
455
455
|
useAssetHistoryScript = (options) => {
|
|
456
456
|
const { side } = options;
|
|
457
457
|
const isDeposit = side === types.AssetHistorySideEnum.DEPOSIT;
|
|
458
|
-
const [today] =
|
|
458
|
+
const [today] = React12.useState(() => {
|
|
459
459
|
const d = /* @__PURE__ */ new Date();
|
|
460
460
|
return new Date(dateFns.getYear(d), dateFns.getMonth(d), dateFns.getDate(d), 0, 0, 0);
|
|
461
461
|
});
|
|
462
462
|
const tokensInfo = hooks.useAppStore((state) => state.tokensInfo);
|
|
463
|
-
const [target, setTarget] =
|
|
464
|
-
const [dateRange, setDateRange] =
|
|
463
|
+
const [target, setTarget] = React12.useState("Web3Wallet" /* Web3Wallet */);
|
|
464
|
+
const [dateRange, setDateRange] = React12.useState([
|
|
465
465
|
utils.subtractDaysFromCurrentDate(90, today),
|
|
466
466
|
today
|
|
467
467
|
]);
|
|
468
468
|
const { page, pageSize, setPage, parsePagination } = ui.usePagination();
|
|
469
|
-
const { startTime, endTime } =
|
|
469
|
+
const { startTime, endTime } = React12.useMemo(() => {
|
|
470
470
|
const startTime2 = dateRange[0].getTime();
|
|
471
471
|
const endTime2 = dateFns.set(dateRange[1], {
|
|
472
472
|
hours: 23,
|
|
@@ -505,23 +505,23 @@ var init_assetHistory_script = __esm({
|
|
|
505
505
|
setPage(1);
|
|
506
506
|
}
|
|
507
507
|
};
|
|
508
|
-
const isLoading =
|
|
508
|
+
const isLoading = React12.useMemo(() => {
|
|
509
509
|
if (target === "Web3Wallet" /* Web3Wallet */) {
|
|
510
510
|
return assetLoading;
|
|
511
511
|
}
|
|
512
512
|
return transferLoading;
|
|
513
513
|
}, [target, assetLoading, transferLoading]);
|
|
514
|
-
const meta =
|
|
514
|
+
const meta = React12.useMemo(() => {
|
|
515
515
|
if (target === "Web3Wallet" /* Web3Wallet */) {
|
|
516
516
|
return assetMeta;
|
|
517
517
|
}
|
|
518
518
|
return transferMeta;
|
|
519
519
|
}, [target, assetMeta, transferMeta]);
|
|
520
|
-
const pagination =
|
|
520
|
+
const pagination = React12.useMemo(
|
|
521
521
|
() => parsePagination(meta),
|
|
522
522
|
[parsePagination, meta]
|
|
523
523
|
);
|
|
524
|
-
const dataSource2 =
|
|
524
|
+
const dataSource2 = React12.useMemo(() => {
|
|
525
525
|
return (target === "Web3Wallet" /* Web3Wallet */ ? assetData : transferData).map(
|
|
526
526
|
(item) => {
|
|
527
527
|
const findToken = tokensInfo?.find(({ token }) => token === item.token);
|
|
@@ -532,7 +532,7 @@ var init_assetHistory_script = __esm({
|
|
|
532
532
|
}
|
|
533
533
|
);
|
|
534
534
|
}, [target, assetData, transferData, tokensInfo]);
|
|
535
|
-
const onDeposit =
|
|
535
|
+
const onDeposit = React12.useCallback(() => {
|
|
536
536
|
ui.modal.show(uiTransfer.DepositAndWithdrawWithSheetId, { activeTab: "deposit" });
|
|
537
537
|
}, []);
|
|
538
538
|
const isWeb3Wallet = target === "Web3Wallet" /* Web3Wallet */;
|
|
@@ -568,7 +568,7 @@ var init_assetHistory_ui = __esm({
|
|
|
568
568
|
isWeb3Wallet: props.isWeb3Wallet
|
|
569
569
|
});
|
|
570
570
|
const { t } = i18n.useTranslation();
|
|
571
|
-
const options =
|
|
571
|
+
const options = React12.useMemo(() => {
|
|
572
572
|
return [
|
|
573
573
|
{ label: t("common.web3Wallet"), value: "Web3Wallet" /* Web3Wallet */ },
|
|
574
574
|
{ label: t("common.accountId"), value: "AccountId" /* AccountId */ }
|
|
@@ -635,7 +635,7 @@ var init_assetHistory_ui_mobile = __esm({
|
|
|
635
635
|
} = props;
|
|
636
636
|
const { dateRange, target } = queryParameter;
|
|
637
637
|
const { t } = i18n.useTranslation();
|
|
638
|
-
const options =
|
|
638
|
+
const options = React12.useMemo(() => {
|
|
639
639
|
return [
|
|
640
640
|
{ label: t("common.web3Wallet"), value: "Web3Wallet" /* Web3Wallet */ },
|
|
641
641
|
{ label: t("common.accountId"), value: "AccountId" /* AccountId */ }
|
|
@@ -852,7 +852,7 @@ var init_column2 = __esm({
|
|
|
852
852
|
"src/pages/overview/funding/column.tsx"() {
|
|
853
853
|
useFundingHistoryColumns = () => {
|
|
854
854
|
const { t } = i18n.useTranslation();
|
|
855
|
-
const columns =
|
|
855
|
+
const columns = React12.useMemo(() => {
|
|
856
856
|
return [
|
|
857
857
|
{
|
|
858
858
|
title: t("common.symbol"),
|
|
@@ -928,7 +928,7 @@ var init_fundingHistory_ui = __esm({
|
|
|
928
928
|
const symbols = hooks.useSymbolsInfo();
|
|
929
929
|
const { symbol, dateRange } = queryParameter;
|
|
930
930
|
const { t } = i18n.useTranslation();
|
|
931
|
-
const options =
|
|
931
|
+
const options = React12.useMemo(() => {
|
|
932
932
|
return [
|
|
933
933
|
{
|
|
934
934
|
label: t("common.all"),
|
|
@@ -1091,6 +1091,21 @@ var init_fundingHistory_ui_mobile = __esm({
|
|
|
1091
1091
|
}
|
|
1092
1092
|
);
|
|
1093
1093
|
};
|
|
1094
|
+
const options = React12.useMemo(() => {
|
|
1095
|
+
return [
|
|
1096
|
+
{
|
|
1097
|
+
label: t("common.all"),
|
|
1098
|
+
value: "All"
|
|
1099
|
+
},
|
|
1100
|
+
...Object.keys(symbols).map((symbol2) => {
|
|
1101
|
+
const s = symbol2.split("_")[1];
|
|
1102
|
+
return {
|
|
1103
|
+
label: s,
|
|
1104
|
+
value: symbol2
|
|
1105
|
+
};
|
|
1106
|
+
})
|
|
1107
|
+
];
|
|
1108
|
+
}, [t, symbols]);
|
|
1094
1109
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
1095
1110
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1096
1111
|
ui.DataFilter,
|
|
@@ -1100,25 +1115,11 @@ var init_fundingHistory_ui_mobile = __esm({
|
|
|
1100
1115
|
type: "select",
|
|
1101
1116
|
name: "symbol",
|
|
1102
1117
|
isCombine: true,
|
|
1103
|
-
options
|
|
1104
|
-
{
|
|
1105
|
-
label: "All",
|
|
1106
|
-
value: "All"
|
|
1107
|
-
},
|
|
1108
|
-
...Object.keys(symbols).map((symbol2) => {
|
|
1109
|
-
const s = symbol2.split("_")[1];
|
|
1110
|
-
return {
|
|
1111
|
-
label: s,
|
|
1112
|
-
value: symbol2
|
|
1113
|
-
};
|
|
1114
|
-
})
|
|
1115
|
-
],
|
|
1118
|
+
options,
|
|
1116
1119
|
value: symbol,
|
|
1117
1120
|
valueFormatter: (value) => {
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
}
|
|
1121
|
-
return value.split("_")[1];
|
|
1121
|
+
const option = options.find((item) => item.value === value);
|
|
1122
|
+
return option?.label || value;
|
|
1122
1123
|
}
|
|
1123
1124
|
},
|
|
1124
1125
|
{
|
|
@@ -1156,15 +1157,15 @@ var init_useDataSource_script = __esm({
|
|
|
1156
1157
|
"src/pages/overview/funding/useDataSource.script.ts"() {
|
|
1157
1158
|
init_date();
|
|
1158
1159
|
useFundingHistoryHook = () => {
|
|
1159
|
-
const [today] =
|
|
1160
|
+
const [today] = React12.useState(() => {
|
|
1160
1161
|
const d = /* @__PURE__ */ new Date();
|
|
1161
1162
|
return new Date(dateFns.getYear(d), dateFns.getMonth(d), dateFns.getDate(d), 0, 0, 0);
|
|
1162
1163
|
});
|
|
1163
|
-
const [dateRange, setDateRange] =
|
|
1164
|
+
const [dateRange, setDateRange] = React12.useState([
|
|
1164
1165
|
utils.subtractDaysFromCurrentDate(90, today),
|
|
1165
1166
|
today
|
|
1166
1167
|
]);
|
|
1167
|
-
const [symbol, setSymbol] =
|
|
1168
|
+
const [symbol, setSymbol] = React12.useState("All");
|
|
1168
1169
|
const { page, pageSize, setPage, parsePagination } = ui.usePagination();
|
|
1169
1170
|
const [data, { isLoading, meta, isValidating }] = hooks.useFundingFeeHistory(
|
|
1170
1171
|
{
|
|
@@ -1196,7 +1197,7 @@ var init_useDataSource_script = __esm({
|
|
|
1196
1197
|
setPage(1);
|
|
1197
1198
|
}
|
|
1198
1199
|
};
|
|
1199
|
-
const pagination =
|
|
1200
|
+
const pagination = React12.useMemo(
|
|
1200
1201
|
() => parsePagination(meta),
|
|
1201
1202
|
[parsePagination, meta]
|
|
1202
1203
|
);
|
|
@@ -1255,7 +1256,7 @@ var init_column3 = __esm({
|
|
|
1255
1256
|
"src/pages/overview/distribution/column.tsx"() {
|
|
1256
1257
|
useColumns = () => {
|
|
1257
1258
|
const { t } = i18n.useTranslation();
|
|
1258
|
-
const columns =
|
|
1259
|
+
const columns = React12.useMemo(() => {
|
|
1259
1260
|
return [
|
|
1260
1261
|
{
|
|
1261
1262
|
title: t("common.token"),
|
|
@@ -1330,7 +1331,7 @@ var init_distribution_ui = __esm({
|
|
|
1330
1331
|
const columns = useColumns();
|
|
1331
1332
|
const { type, dateRange } = queryParameter;
|
|
1332
1333
|
const { t } = i18n.useTranslation();
|
|
1333
|
-
const TYPES =
|
|
1334
|
+
const TYPES = React12.useMemo(() => {
|
|
1334
1335
|
return [
|
|
1335
1336
|
{ label: t("common.all"), value: "All" },
|
|
1336
1337
|
{
|
|
@@ -1397,7 +1398,7 @@ var init_distribution_ui_mobile = __esm({
|
|
|
1397
1398
|
const { dataSource: dataSource2, queryParameter, onFilter, isLoading, pagination } = props;
|
|
1398
1399
|
const { type, dateRange } = queryParameter;
|
|
1399
1400
|
const { t } = i18n.useTranslation();
|
|
1400
|
-
const TYPES =
|
|
1401
|
+
const TYPES = React12.useMemo(() => {
|
|
1401
1402
|
return [
|
|
1402
1403
|
{ label: t("common.all"), value: "All" },
|
|
1403
1404
|
{
|
|
@@ -1530,15 +1531,15 @@ var init_useDataSource_script2 = __esm({
|
|
|
1530
1531
|
"src/pages/overview/distribution/useDataSource.script.ts"() {
|
|
1531
1532
|
init_date();
|
|
1532
1533
|
useDistributionHistoryHook = () => {
|
|
1533
|
-
const [today] =
|
|
1534
|
+
const [today] = React12.useState(() => {
|
|
1534
1535
|
const d = /* @__PURE__ */ new Date();
|
|
1535
1536
|
return new Date(dateFns.getYear(d), dateFns.getMonth(d), dateFns.getDate(d), 0, 0, 0);
|
|
1536
1537
|
});
|
|
1537
|
-
const [dateRange, setDateRange] =
|
|
1538
|
+
const [dateRange, setDateRange] = React12.useState([
|
|
1538
1539
|
utils.subtractDaysFromCurrentDate(90, today),
|
|
1539
1540
|
today
|
|
1540
1541
|
]);
|
|
1541
|
-
const [type, setType] =
|
|
1542
|
+
const [type, setType] = React12.useState("All");
|
|
1542
1543
|
const { page, pageSize, setPage, parsePagination } = ui.usePagination();
|
|
1543
1544
|
const [data, { isLoading, meta, isValidating }] = hooks.useDistributionHistory({
|
|
1544
1545
|
// dataRange: dateRange.map((date) => date.getTime()),
|
|
@@ -1565,7 +1566,7 @@ var init_useDataSource_script2 = __esm({
|
|
|
1565
1566
|
setPage(1);
|
|
1566
1567
|
}
|
|
1567
1568
|
};
|
|
1568
|
-
const pagination =
|
|
1569
|
+
const pagination = React12.useMemo(
|
|
1569
1570
|
() => parsePagination(meta),
|
|
1570
1571
|
[parsePagination, meta]
|
|
1571
1572
|
);
|
|
@@ -1615,6 +1616,202 @@ var init_distribution = __esm({
|
|
|
1615
1616
|
init_distribution_ui();
|
|
1616
1617
|
}
|
|
1617
1618
|
});
|
|
1619
|
+
var TransferHistoryMobileUI;
|
|
1620
|
+
var init_transfer_mobile_ui = __esm({
|
|
1621
|
+
"src/pages/overview/TransferHistory/transfer.mobile.ui.tsx"() {
|
|
1622
|
+
TransferHistoryMobileUI = (props) => {
|
|
1623
|
+
const {
|
|
1624
|
+
dataSource: dataSource2,
|
|
1625
|
+
queryParameter,
|
|
1626
|
+
state,
|
|
1627
|
+
isMainAccount,
|
|
1628
|
+
isLoading,
|
|
1629
|
+
selectedAccount,
|
|
1630
|
+
onFilter,
|
|
1631
|
+
pagination
|
|
1632
|
+
} = props;
|
|
1633
|
+
const { side, dateRange } = queryParameter;
|
|
1634
|
+
const { t } = i18n.useTranslation();
|
|
1635
|
+
const ALL_ACCOUNTS = {
|
|
1636
|
+
label: t("common.allAccount"),
|
|
1637
|
+
value: "All accounts" /* ALL */
|
|
1638
|
+
};
|
|
1639
|
+
const MAIN_ACCOUNT = {
|
|
1640
|
+
label: t("common.mainAccount"),
|
|
1641
|
+
value: "Main accounts" /* MAIN */
|
|
1642
|
+
};
|
|
1643
|
+
const subAccounts = state.subAccounts ?? [];
|
|
1644
|
+
const memoizedOptions = React12.useMemo(() => {
|
|
1645
|
+
if (Array.isArray(subAccounts) && subAccounts.length) {
|
|
1646
|
+
return [
|
|
1647
|
+
ALL_ACCOUNTS,
|
|
1648
|
+
MAIN_ACCOUNT,
|
|
1649
|
+
...subAccounts.map((value) => ({
|
|
1650
|
+
value: value.id,
|
|
1651
|
+
label: value?.description || ui.formatAddress(value?.id)
|
|
1652
|
+
}))
|
|
1653
|
+
];
|
|
1654
|
+
}
|
|
1655
|
+
return [ALL_ACCOUNTS, MAIN_ACCOUNT];
|
|
1656
|
+
}, [subAccounts]);
|
|
1657
|
+
const loadMore = () => {
|
|
1658
|
+
if (dataSource2 && dataSource2.length < (pagination?.count || 0)) {
|
|
1659
|
+
pagination?.onPageSizeChange?.(pagination?.pageSize + 50);
|
|
1660
|
+
}
|
|
1661
|
+
};
|
|
1662
|
+
const onCopy = () => {
|
|
1663
|
+
ui.toast.success(t("common.copy.copied"));
|
|
1664
|
+
};
|
|
1665
|
+
const renderHistoryItem = (item) => {
|
|
1666
|
+
const isFromMainAccount = item.from_account_id === state.mainAccountId;
|
|
1667
|
+
const isToMainAccount = item.to_account_id === state.mainAccountId;
|
|
1668
|
+
const fromSubAccount = subAccounts.find(
|
|
1669
|
+
(acc) => acc.id === item.from_account_id
|
|
1670
|
+
);
|
|
1671
|
+
const toSubAccount = subAccounts.find(
|
|
1672
|
+
(acc) => acc.id === item.to_account_id
|
|
1673
|
+
);
|
|
1674
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1675
|
+
ui.Flex,
|
|
1676
|
+
{
|
|
1677
|
+
p: 2,
|
|
1678
|
+
direction: "column",
|
|
1679
|
+
gapY: 2,
|
|
1680
|
+
className: "oui-rounded-xl oui-bg-base-9 oui-font-semibold",
|
|
1681
|
+
children: [
|
|
1682
|
+
/* @__PURE__ */ jsxRuntime.jsxs(ui.Flex, { direction: "row", justify: "between", width: "100%", children: [
|
|
1683
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1684
|
+
ui.Text.formatted,
|
|
1685
|
+
{
|
|
1686
|
+
rule: "date",
|
|
1687
|
+
className: "oui-text-base-contrast-36 oui-text-2xs",
|
|
1688
|
+
children: item.updated_time
|
|
1689
|
+
}
|
|
1690
|
+
),
|
|
1691
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.Text, { size: "sm", className: "oui-text-base-contrast-80", children: utils.capitalizeString(item.status) })
|
|
1692
|
+
] }),
|
|
1693
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "oui-w-full oui-h-[1px] oui-bg-base-6" }),
|
|
1694
|
+
/* @__PURE__ */ jsxRuntime.jsxs(ui.Flex, { direction: "row", justify: "between", width: "100%", children: [
|
|
1695
|
+
/* @__PURE__ */ jsxRuntime.jsxs(ui.Flex, { direction: "column", itemAlign: "start", children: [
|
|
1696
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.Text, { className: "oui-text-base-contrast-36 oui-text-2xs", children: t("common.token") }),
|
|
1697
|
+
/* @__PURE__ */ jsxRuntime.jsxs(ui.Flex, { direction: "row", itemAlign: "center", gap: 1, children: [
|
|
1698
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.TokenIcon, { name: item.token, size: "2xs" }),
|
|
1699
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.Text, { size: "xs", className: "oui-text-base-contrast-80", children: item.token })
|
|
1700
|
+
] })
|
|
1701
|
+
] }),
|
|
1702
|
+
/* @__PURE__ */ jsxRuntime.jsxs(ui.Flex, { direction: "column", itemAlign: "end", children: [
|
|
1703
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.Text, { className: "oui-text-base-contrast-36 oui-text-2xs", children: t("common.amount") }),
|
|
1704
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1705
|
+
ui.Text.numeral,
|
|
1706
|
+
{
|
|
1707
|
+
dp: 6,
|
|
1708
|
+
className: "oui-text-base-contrast-80 oui-text-xs",
|
|
1709
|
+
children: item.amount
|
|
1710
|
+
}
|
|
1711
|
+
)
|
|
1712
|
+
] })
|
|
1713
|
+
] }),
|
|
1714
|
+
/* @__PURE__ */ jsxRuntime.jsxs(ui.Flex, { direction: "row", justify: "between", width: "100%", children: [
|
|
1715
|
+
/* @__PURE__ */ jsxRuntime.jsxs(ui.Flex, { direction: "column", gap: 1, children: [
|
|
1716
|
+
/* @__PURE__ */ jsxRuntime.jsxs(ui.Text, { className: "oui-text-base-contrast-36 oui-text-2xs", children: [
|
|
1717
|
+
t("transfer.internalTransfer.from"),
|
|
1718
|
+
" (",
|
|
1719
|
+
t("common.accountId"),
|
|
1720
|
+
")"
|
|
1721
|
+
] }),
|
|
1722
|
+
/* @__PURE__ */ jsxRuntime.jsxs(ui.Flex, { direction: "column", gap: 1, itemAlign: "start", children: [
|
|
1723
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.Flex, { direction: "row", itemAlign: "center", gap: 1, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1724
|
+
ui.Text.formatted,
|
|
1725
|
+
{
|
|
1726
|
+
rule: "address",
|
|
1727
|
+
copyable: true,
|
|
1728
|
+
onCopy,
|
|
1729
|
+
className: "oui-text-base-contrast-80 oui-text-xs",
|
|
1730
|
+
children: item.from_account_id
|
|
1731
|
+
}
|
|
1732
|
+
) }),
|
|
1733
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.Badge, { color: "neutral", size: "xs", children: isFromMainAccount ? t("common.mainAccount") : fromSubAccount?.description || t("common.subAccount") })
|
|
1734
|
+
] })
|
|
1735
|
+
] }),
|
|
1736
|
+
/* @__PURE__ */ jsxRuntime.jsxs(ui.Flex, { direction: "column", itemAlign: "end", gap: 1, children: [
|
|
1737
|
+
/* @__PURE__ */ jsxRuntime.jsxs(ui.Text, { className: "oui-text-base-contrast-36 oui-text-2xs", children: [
|
|
1738
|
+
t("transfer.internalTransfer.to"),
|
|
1739
|
+
" (",
|
|
1740
|
+
t("common.accountId"),
|
|
1741
|
+
")"
|
|
1742
|
+
] }),
|
|
1743
|
+
/* @__PURE__ */ jsxRuntime.jsxs(ui.Flex, { direction: "column", itemAlign: "end", gap: 1, children: [
|
|
1744
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.Flex, { direction: "row", itemAlign: "center", gap: 1, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1745
|
+
ui.Text.formatted,
|
|
1746
|
+
{
|
|
1747
|
+
rule: "address",
|
|
1748
|
+
copyable: true,
|
|
1749
|
+
onCopy,
|
|
1750
|
+
className: "oui-text-base-contrast-80 oui-text-xs",
|
|
1751
|
+
children: item.to_account_id
|
|
1752
|
+
}
|
|
1753
|
+
) }),
|
|
1754
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.Badge, { color: "neutral", size: "xs", children: isToMainAccount ? t("common.mainAccount") : toSubAccount?.description || t("common.subAccount") })
|
|
1755
|
+
] })
|
|
1756
|
+
] })
|
|
1757
|
+
] })
|
|
1758
|
+
]
|
|
1759
|
+
}
|
|
1760
|
+
);
|
|
1761
|
+
};
|
|
1762
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
1763
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "oui-px-3", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1764
|
+
ui.DataFilter,
|
|
1765
|
+
{
|
|
1766
|
+
onFilter,
|
|
1767
|
+
items: immer.produce(
|
|
1768
|
+
[
|
|
1769
|
+
{
|
|
1770
|
+
type: "select",
|
|
1771
|
+
name: "side",
|
|
1772
|
+
value: side,
|
|
1773
|
+
options: [
|
|
1774
|
+
{ value: "OUT", label: t("common.outflow") },
|
|
1775
|
+
{ value: "IN", label: t("common.inflow") }
|
|
1776
|
+
]
|
|
1777
|
+
},
|
|
1778
|
+
{
|
|
1779
|
+
type: "range",
|
|
1780
|
+
name: "dateRange",
|
|
1781
|
+
value: {
|
|
1782
|
+
from: dateRange[0],
|
|
1783
|
+
to: dateRange[1]
|
|
1784
|
+
}
|
|
1785
|
+
}
|
|
1786
|
+
],
|
|
1787
|
+
(draft) => {
|
|
1788
|
+
if (isMainAccount) {
|
|
1789
|
+
draft.unshift({
|
|
1790
|
+
type: "select",
|
|
1791
|
+
name: "account",
|
|
1792
|
+
value: selectedAccount,
|
|
1793
|
+
options: memoizedOptions
|
|
1794
|
+
});
|
|
1795
|
+
}
|
|
1796
|
+
}
|
|
1797
|
+
)
|
|
1798
|
+
}
|
|
1799
|
+
) }),
|
|
1800
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1801
|
+
ui.ListView,
|
|
1802
|
+
{
|
|
1803
|
+
dataSource: dataSource2,
|
|
1804
|
+
renderItem: renderHistoryItem,
|
|
1805
|
+
contentClassName: "!oui-space-y-1",
|
|
1806
|
+
loadMore,
|
|
1807
|
+
isLoading,
|
|
1808
|
+
className: "oui-px-1"
|
|
1809
|
+
}
|
|
1810
|
+
)
|
|
1811
|
+
] });
|
|
1812
|
+
};
|
|
1813
|
+
}
|
|
1814
|
+
});
|
|
1618
1815
|
var useColumns2;
|
|
1619
1816
|
var init_column4 = __esm({
|
|
1620
1817
|
"src/pages/overview/TransferHistory/column.tsx"() {
|
|
@@ -1625,7 +1822,7 @@ var init_column4 = __esm({
|
|
|
1625
1822
|
};
|
|
1626
1823
|
const { state } = hooks.useAccount();
|
|
1627
1824
|
const sub = state.subAccounts ?? [];
|
|
1628
|
-
const columns =
|
|
1825
|
+
const columns = React12__default.default.useMemo(() => {
|
|
1629
1826
|
return [
|
|
1630
1827
|
{
|
|
1631
1828
|
title: t("common.token"),
|
|
@@ -1645,7 +1842,7 @@ var init_column4 = __esm({
|
|
|
1645
1842
|
rule: "date"
|
|
1646
1843
|
},
|
|
1647
1844
|
{
|
|
1648
|
-
title: `${t("transfer.internalTransfer.from")} (
|
|
1845
|
+
title: `${t("transfer.internalTransfer.from")} (${t("common.accountId")})`,
|
|
1649
1846
|
dataIndex: "from_account_id",
|
|
1650
1847
|
render(val) {
|
|
1651
1848
|
const isMainAccount = val === state.mainAccountId;
|
|
@@ -1657,7 +1854,7 @@ var init_column4 = __esm({
|
|
|
1657
1854
|
}
|
|
1658
1855
|
},
|
|
1659
1856
|
{
|
|
1660
|
-
title: `${t("transfer.internalTransfer.to")} (
|
|
1857
|
+
title: `${t("transfer.internalTransfer.to")} (${t("common.accountId")})`,
|
|
1661
1858
|
dataIndex: "to_account_id",
|
|
1662
1859
|
render(val) {
|
|
1663
1860
|
const isMainAccount = val === state.mainAccountId;
|
|
@@ -1712,7 +1909,7 @@ var init_transfer_ui = __esm({
|
|
|
1712
1909
|
value: "Main accounts" /* MAIN */
|
|
1713
1910
|
};
|
|
1714
1911
|
const subAccounts = state.subAccounts ?? [];
|
|
1715
|
-
const memoizedOptions =
|
|
1912
|
+
const memoizedOptions = React12.useMemo(() => {
|
|
1716
1913
|
if (Array.isArray(subAccounts) && subAccounts.length) {
|
|
1717
1914
|
return [
|
|
1718
1915
|
ALL_ACCOUNTS,
|
|
@@ -1738,8 +1935,8 @@ var init_transfer_ui = __esm({
|
|
|
1738
1935
|
name: "side",
|
|
1739
1936
|
value: side,
|
|
1740
1937
|
options: [
|
|
1741
|
-
{ value: "OUT", label: "
|
|
1742
|
-
{ value: "IN", label: "
|
|
1938
|
+
{ value: "OUT", label: t("common.outflow") },
|
|
1939
|
+
{ value: "IN", label: t("common.inflow") }
|
|
1743
1940
|
]
|
|
1744
1941
|
},
|
|
1745
1942
|
{
|
|
@@ -1787,18 +1984,18 @@ var init_useDataSource_script3 = __esm({
|
|
|
1787
1984
|
init_date();
|
|
1788
1985
|
init_transfer_ui();
|
|
1789
1986
|
useTransferHistoryHook = () => {
|
|
1790
|
-
const today =
|
|
1987
|
+
const today = React12__default.default.useMemo(() => {
|
|
1791
1988
|
const date = /* @__PURE__ */ new Date();
|
|
1792
1989
|
return new Date(dateFns.getYear(date), dateFns.getMonth(date), dateFns.getDate(date), 0, 0, 0);
|
|
1793
1990
|
}, []);
|
|
1794
|
-
const [dateRange, setDateRange] =
|
|
1991
|
+
const [dateRange, setDateRange] = React12__default.default.useState([
|
|
1795
1992
|
utils.subtractDaysFromCurrentDate(90, today),
|
|
1796
1993
|
today
|
|
1797
1994
|
]);
|
|
1798
1995
|
const { page, pageSize, setPage, parsePagination } = ui.usePagination();
|
|
1799
1996
|
const { state } = hooks.useAccount();
|
|
1800
|
-
const [selectedAccount, setAccount] =
|
|
1801
|
-
const [side, setSide] =
|
|
1997
|
+
const [selectedAccount, setAccount] = React12__default.default.useState("All accounts" /* ALL */);
|
|
1998
|
+
const [side, setSide] = React12__default.default.useState("OUT");
|
|
1802
1999
|
const [data, { isLoading, meta }] = hooks.useTransferHistory({
|
|
1803
2000
|
dataRange: [
|
|
1804
2001
|
dateRange[0]?.getTime(),
|
|
@@ -1814,7 +2011,7 @@ var init_useDataSource_script3 = __esm({
|
|
|
1814
2011
|
page,
|
|
1815
2012
|
main_sub_only: true
|
|
1816
2013
|
});
|
|
1817
|
-
const filteredData =
|
|
2014
|
+
const filteredData = React12__default.default.useMemo(() => {
|
|
1818
2015
|
return data.filter((item) => {
|
|
1819
2016
|
if (!selectedAccount || selectedAccount === "All accounts" /* ALL */) {
|
|
1820
2017
|
return true;
|
|
@@ -1826,7 +2023,7 @@ var init_useDataSource_script3 = __esm({
|
|
|
1826
2023
|
}
|
|
1827
2024
|
});
|
|
1828
2025
|
}, [data, selectedAccount]);
|
|
1829
|
-
const onAccountFilter =
|
|
2026
|
+
const onAccountFilter = React12__default.default.useCallback(
|
|
1830
2027
|
(filter) => {
|
|
1831
2028
|
if (filter.name === "account") {
|
|
1832
2029
|
setAccount(filter.value);
|
|
@@ -1841,7 +2038,7 @@ var init_useDataSource_script3 = __esm({
|
|
|
1841
2038
|
},
|
|
1842
2039
|
[setPage]
|
|
1843
2040
|
);
|
|
1844
|
-
const pagination =
|
|
2041
|
+
const pagination = React12__default.default.useMemo(
|
|
1845
2042
|
() => parsePagination(meta),
|
|
1846
2043
|
[parsePagination, meta]
|
|
1847
2044
|
);
|
|
@@ -1863,11 +2060,16 @@ var init_useDataSource_script3 = __esm({
|
|
|
1863
2060
|
var TransferHistoryWidget;
|
|
1864
2061
|
var init_transfer_widget = __esm({
|
|
1865
2062
|
"src/pages/overview/TransferHistory/transfer.widget.tsx"() {
|
|
2063
|
+
init_transfer_mobile_ui();
|
|
1866
2064
|
init_transfer_ui();
|
|
1867
2065
|
init_useDataSource_script3();
|
|
1868
2066
|
TransferHistoryWidget = () => {
|
|
1869
2067
|
const state = useTransferHistoryHook();
|
|
1870
2068
|
const accountState = hooks.useAccount();
|
|
2069
|
+
const { isMobile } = ui.useScreen();
|
|
2070
|
+
if (isMobile) {
|
|
2071
|
+
return /* @__PURE__ */ jsxRuntime.jsx(TransferHistoryMobileUI, { ...state, ...accountState });
|
|
2072
|
+
}
|
|
1871
2073
|
return /* @__PURE__ */ jsxRuntime.jsx(TransferHistoryUI, { ...state, ...accountState });
|
|
1872
2074
|
};
|
|
1873
2075
|
}
|
|
@@ -1885,423 +2087,32 @@ var init_TransferHistory = __esm({
|
|
|
1885
2087
|
init_transfer_ui();
|
|
1886
2088
|
}
|
|
1887
2089
|
});
|
|
1888
|
-
var
|
|
1889
|
-
var
|
|
1890
|
-
"src/
|
|
1891
|
-
|
|
2090
|
+
var EMPTY_HOLDING, useAccountsData;
|
|
2091
|
+
var init_useAccountsData = __esm({
|
|
2092
|
+
"src/hooks/useAccountsData.ts"() {
|
|
2093
|
+
EMPTY_HOLDING = {
|
|
2094
|
+
token: "USDC",
|
|
2095
|
+
holding: 0,
|
|
2096
|
+
frozen: 0
|
|
2097
|
+
};
|
|
2098
|
+
useAccountsData = () => {
|
|
1892
2099
|
const { t } = i18n.useTranslation();
|
|
1893
|
-
const
|
|
1894
|
-
|
|
1895
|
-
|
|
1896
|
-
|
|
1897
|
-
|
|
1898
|
-
|
|
1899
|
-
|
|
1900
|
-
|
|
1901
|
-
|
|
1902
|
-
|
|
1903
|
-
|
|
1904
|
-
}
|
|
1905
|
-
|
|
1906
|
-
|
|
1907
|
-
render(val) {
|
|
1908
|
-
if (val === "deposit") {
|
|
1909
|
-
return t("common.deposit");
|
|
1910
|
-
}
|
|
1911
|
-
if (val === "withdrawal") {
|
|
1912
|
-
return t("common.withdraw");
|
|
1913
|
-
}
|
|
1914
|
-
return null;
|
|
1915
|
-
}
|
|
1916
|
-
},
|
|
1917
|
-
{
|
|
1918
|
-
title: t("portfolio.overview.vaultName"),
|
|
1919
|
-
dataIndex: "vaultName"
|
|
1920
|
-
},
|
|
1921
|
-
{
|
|
1922
|
-
title: t("common.token"),
|
|
1923
|
-
dataIndex: "token",
|
|
1924
|
-
render(val) {
|
|
1925
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(ui.Flex, { justify: "start", itemAlign: "center", gap: 2, children: [
|
|
1926
|
-
/* @__PURE__ */ jsxRuntime.jsx(ui.TokenIcon, { name: val }),
|
|
1927
|
-
val
|
|
1928
|
-
] });
|
|
1929
|
-
}
|
|
1930
|
-
},
|
|
1931
|
-
{
|
|
1932
|
-
title: t("common.time"),
|
|
1933
|
-
dataIndex: "created_time",
|
|
1934
|
-
rule: "date"
|
|
1935
|
-
},
|
|
1936
|
-
{
|
|
1937
|
-
title: t("common.status"),
|
|
1938
|
-
dataIndex: "status",
|
|
1939
|
-
render(val) {
|
|
1940
|
-
return utils.capitalizeString(val);
|
|
1941
|
-
}
|
|
1942
|
-
},
|
|
1943
|
-
{
|
|
1944
|
-
title: t("common.amount"),
|
|
1945
|
-
dataIndex: "amount_change",
|
|
1946
|
-
render(val) {
|
|
1947
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1948
|
-
ui.Text.numeral,
|
|
1949
|
-
{
|
|
1950
|
-
showIdentifier: true,
|
|
1951
|
-
className: ui.cn(
|
|
1952
|
-
"oui-select-none",
|
|
1953
|
-
val >= 0 ? "oui-text-success" : "oui-text-danger"
|
|
1954
|
-
),
|
|
1955
|
-
children: val
|
|
1956
|
-
}
|
|
1957
|
-
);
|
|
2100
|
+
const { state, isMainAccount } = hooks.useAccount();
|
|
2101
|
+
const { holding = [] } = hooks.useCollateral();
|
|
2102
|
+
const subAccounts = state.subAccounts ?? [];
|
|
2103
|
+
return React12.useMemo(() => {
|
|
2104
|
+
return immer.produce(subAccounts, (draft) => {
|
|
2105
|
+
for (const sub of draft) {
|
|
2106
|
+
sub.account_id = sub.id;
|
|
2107
|
+
if (Array.isArray(sub.holding) && sub.holding.length) {
|
|
2108
|
+
sub.children = sub.holding.map((item) => ({
|
|
2109
|
+
...item,
|
|
2110
|
+
account_id: sub.id
|
|
2111
|
+
}));
|
|
2112
|
+
} else {
|
|
2113
|
+
sub.children = [{ ...EMPTY_HOLDING, account_id: sub.id }];
|
|
1958
2114
|
}
|
|
1959
|
-
|
|
1960
|
-
];
|
|
1961
|
-
}, [t]);
|
|
1962
|
-
return columns;
|
|
1963
|
-
};
|
|
1964
|
-
}
|
|
1965
|
-
});
|
|
1966
|
-
var VaultsHistoryUI;
|
|
1967
|
-
var init_transfer_ui2 = __esm({
|
|
1968
|
-
"src/pages/overview/VaultsHistory/transfer.ui.tsx"() {
|
|
1969
|
-
init_column5();
|
|
1970
|
-
VaultsHistoryUI = (props) => {
|
|
1971
|
-
const { dataSource: dataSource2, dateRange, isLoading, onFilter } = props;
|
|
1972
|
-
const columns = useColumns3();
|
|
1973
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
1974
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1975
|
-
ui.DataFilter,
|
|
1976
|
-
{
|
|
1977
|
-
onFilter,
|
|
1978
|
-
items: [
|
|
1979
|
-
{
|
|
1980
|
-
type: "range",
|
|
1981
|
-
name: "dateRange",
|
|
1982
|
-
value: {
|
|
1983
|
-
from: dateRange[0],
|
|
1984
|
-
to: dateRange[1]
|
|
1985
|
-
}
|
|
1986
|
-
}
|
|
1987
|
-
]
|
|
1988
|
-
}
|
|
1989
|
-
),
|
|
1990
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1991
|
-
uiConnector.AuthGuardDataTable,
|
|
1992
|
-
{
|
|
1993
|
-
bordered: true,
|
|
1994
|
-
columns,
|
|
1995
|
-
dataSource: dataSource2,
|
|
1996
|
-
loading: isLoading,
|
|
1997
|
-
className: "oui-font-semibold",
|
|
1998
|
-
classNames: { root: "oui-h-[calc(100%_-_49px)]" },
|
|
1999
|
-
pagination: props.pagination,
|
|
2000
|
-
generatedRowKey: (row) => row.id
|
|
2001
|
-
}
|
|
2002
|
-
)
|
|
2003
|
-
] });
|
|
2004
|
-
};
|
|
2005
|
-
}
|
|
2006
|
-
});
|
|
2007
|
-
var useVaultsHistoryHook;
|
|
2008
|
-
var init_useDataSource_script4 = __esm({
|
|
2009
|
-
"src/pages/overview/VaultsHistory/useDataSource.script.ts"() {
|
|
2010
|
-
init_date();
|
|
2011
|
-
useVaultsHistoryHook = () => {
|
|
2012
|
-
const today = React7__default.default.useMemo(() => {
|
|
2013
|
-
const date = /* @__PURE__ */ new Date();
|
|
2014
|
-
return new Date(dateFns.getYear(date), dateFns.getMonth(date), dateFns.getDate(date), 0, 0, 0);
|
|
2015
|
-
}, []);
|
|
2016
|
-
const [dateRange, setDateRange] = React7__default.default.useState([
|
|
2017
|
-
utils.subtractDaysFromCurrentDate(90, today),
|
|
2018
|
-
today
|
|
2019
|
-
]);
|
|
2020
|
-
const { page, pageSize, setPage, parsePagination } = ui.usePagination();
|
|
2021
|
-
const [data, { isLoading, meta }] = hooks.useVaultsHistory({
|
|
2022
|
-
dataRange: [
|
|
2023
|
-
dateRange[0]?.getTime(),
|
|
2024
|
-
dateFns.set(dateRange[1], {
|
|
2025
|
-
hours: 23,
|
|
2026
|
-
minutes: 59,
|
|
2027
|
-
seconds: 59,
|
|
2028
|
-
milliseconds: 0
|
|
2029
|
-
})?.getTime()
|
|
2030
|
-
],
|
|
2031
|
-
size: pageSize,
|
|
2032
|
-
page
|
|
2033
|
-
});
|
|
2034
|
-
const dataSource2 = React7__default.default.useMemo(() => {
|
|
2035
|
-
if (!Array.isArray(data) || !data.length) {
|
|
2036
|
-
return [];
|
|
2037
|
-
}
|
|
2038
|
-
return data.map((item) => ({
|
|
2039
|
-
...item,
|
|
2040
|
-
token: "USDC",
|
|
2041
|
-
// need to hard code for now
|
|
2042
|
-
vaultName: "Orderly OmniVault",
|
|
2043
|
-
amount_change: item.type === "withdrawal" ? -item.amount_change : item.amount_change
|
|
2044
|
-
}));
|
|
2045
|
-
}, [data]);
|
|
2046
|
-
const onDateRangeFilter = React7__default.default.useCallback(
|
|
2047
|
-
(filter) => {
|
|
2048
|
-
if (filter.name === "dateRange") {
|
|
2049
|
-
setDateRange(parseDateRangeForFilter(filter.value));
|
|
2050
|
-
}
|
|
2051
|
-
setPage(1);
|
|
2052
|
-
},
|
|
2053
|
-
[setPage]
|
|
2054
|
-
);
|
|
2055
|
-
const pagination = React7__default.default.useMemo(
|
|
2056
|
-
() => parsePagination(meta),
|
|
2057
|
-
[parsePagination, meta]
|
|
2058
|
-
);
|
|
2059
|
-
return {
|
|
2060
|
-
dataSource: dataSource2,
|
|
2061
|
-
isLoading,
|
|
2062
|
-
dateRange,
|
|
2063
|
-
onFilter: onDateRangeFilter,
|
|
2064
|
-
pagination
|
|
2065
|
-
};
|
|
2066
|
-
};
|
|
2067
|
-
}
|
|
2068
|
-
});
|
|
2069
|
-
var VaultsHistoryMobile;
|
|
2070
|
-
var init_vaults_ui_mobile = __esm({
|
|
2071
|
-
"src/pages/overview/VaultsHistory/vaults.ui.mobile.tsx"() {
|
|
2072
|
-
VaultsHistoryMobile = (props) => {
|
|
2073
|
-
const { dateRange, onFilter, dataSource: dataSource2, isLoading, pagination } = props;
|
|
2074
|
-
const { t } = i18n.useTranslation();
|
|
2075
|
-
const loadMore = () => {
|
|
2076
|
-
if (dataSource2.length < (pagination?.count || 0)) {
|
|
2077
|
-
pagination?.onPageSizeChange?.(pagination?.pageSize + 50);
|
|
2078
|
-
}
|
|
2079
|
-
};
|
|
2080
|
-
const renderHistoryItem = (item) => {
|
|
2081
|
-
const typeColor = item.type === "deposit" ? "buy" : "sell";
|
|
2082
|
-
const typeText = item.type === "deposit" ? t("common.deposit") : t("common.withdraw");
|
|
2083
|
-
const amountText = item.amount_change ? Math.abs(item.amount_change) : "-";
|
|
2084
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "oui-flex oui-flex-col oui-rounded-xl oui-bg-base-9 oui-p-2 oui-font-semibold", children: [
|
|
2085
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "oui-flex oui-items-center oui-justify-between oui-text-sm oui-text-base-contrast-80", children: [
|
|
2086
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { children: item.vaultName }),
|
|
2087
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { children: item.status?.slice(0, 1).toUpperCase() + item.status?.slice(1) })
|
|
2088
|
-
] }),
|
|
2089
|
-
/* @__PURE__ */ jsxRuntime.jsx(ui.Text.formatted, { rule: "date", intensity: 36, size: "2xs", children: item.created_time }),
|
|
2090
|
-
/* @__PURE__ */ jsxRuntime.jsx(ui.Divider, { className: "oui-my-2" }),
|
|
2091
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "oui-flex oui-items-center [&>div]:oui-flex-1 [&>div]:oui-text-2xs [&>div]:oui-text-base-contrast-36", children: [
|
|
2092
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
2093
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { children: t("common.token") }),
|
|
2094
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "oui-flex oui-items-center oui-gap-1 oui-text-xs oui-text-base-contrast-80", children: [
|
|
2095
|
-
/* @__PURE__ */ jsxRuntime.jsx(ui.TokenIcon, { name: "USDC", size: "2xs" }),
|
|
2096
|
-
/* @__PURE__ */ jsxRuntime.jsx(ui.Text, { children: "USDC" })
|
|
2097
|
-
] })
|
|
2098
|
-
] }),
|
|
2099
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
2100
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { children: t("common.type") }),
|
|
2101
|
-
/* @__PURE__ */ jsxRuntime.jsx(ui.Text, { color: typeColor, className: "oui-text-xs", children: typeText })
|
|
2102
|
-
] }),
|
|
2103
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "oui-text-right", children: [
|
|
2104
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { children: t("common.amount") }),
|
|
2105
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "oui-text-xs oui-text-base-contrast-80", children: amountText })
|
|
2106
|
-
] })
|
|
2107
|
-
] })
|
|
2108
|
-
] });
|
|
2109
|
-
};
|
|
2110
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
2111
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2112
|
-
ui.DataFilter,
|
|
2113
|
-
{
|
|
2114
|
-
items: [
|
|
2115
|
-
{
|
|
2116
|
-
type: "range",
|
|
2117
|
-
name: "dateRange",
|
|
2118
|
-
value: {
|
|
2119
|
-
from: dateRange[0],
|
|
2120
|
-
to: dateRange[1]
|
|
2121
|
-
}
|
|
2122
|
-
}
|
|
2123
|
-
],
|
|
2124
|
-
onFilter: (value) => {
|
|
2125
|
-
onFilter(value);
|
|
2126
|
-
},
|
|
2127
|
-
className: "oui-sticky oui-top-[44px] oui-z-10 oui-border-none oui-bg-base-10 oui-px-3 oui-py-2"
|
|
2128
|
-
}
|
|
2129
|
-
),
|
|
2130
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2131
|
-
ui.ListView,
|
|
2132
|
-
{
|
|
2133
|
-
dataSource: dataSource2,
|
|
2134
|
-
renderItem: renderHistoryItem,
|
|
2135
|
-
contentClassName: "!oui-space-y-1",
|
|
2136
|
-
loadMore,
|
|
2137
|
-
isLoading,
|
|
2138
|
-
className: "oui-px-1"
|
|
2139
|
-
}
|
|
2140
|
-
)
|
|
2141
|
-
] });
|
|
2142
|
-
};
|
|
2143
|
-
}
|
|
2144
|
-
});
|
|
2145
|
-
var VaultsHistoryWidget;
|
|
2146
|
-
var init_transfer_widget2 = __esm({
|
|
2147
|
-
"src/pages/overview/VaultsHistory/transfer.widget.tsx"() {
|
|
2148
|
-
init_transfer_ui2();
|
|
2149
|
-
init_useDataSource_script4();
|
|
2150
|
-
init_vaults_ui_mobile();
|
|
2151
|
-
VaultsHistoryWidget = () => {
|
|
2152
|
-
const state = useVaultsHistoryHook();
|
|
2153
|
-
const { isMobile } = ui.useScreen();
|
|
2154
|
-
if (isMobile) {
|
|
2155
|
-
return /* @__PURE__ */ jsxRuntime.jsx(VaultsHistoryMobile, { ...state });
|
|
2156
|
-
}
|
|
2157
|
-
return /* @__PURE__ */ jsxRuntime.jsx(VaultsHistoryUI, { ...state });
|
|
2158
|
-
};
|
|
2159
|
-
}
|
|
2160
|
-
});
|
|
2161
|
-
|
|
2162
|
-
// src/pages/overview/VaultsHistory/index.tsx
|
|
2163
|
-
var VaultsHistory_exports = {};
|
|
2164
|
-
__export(VaultsHistory_exports, {
|
|
2165
|
-
VaultsHistoryUI: () => VaultsHistoryUI,
|
|
2166
|
-
VaultsHistoryWidget: () => VaultsHistoryWidget
|
|
2167
|
-
});
|
|
2168
|
-
var init_VaultsHistory = __esm({
|
|
2169
|
-
"src/pages/overview/VaultsHistory/index.tsx"() {
|
|
2170
|
-
init_transfer_widget2();
|
|
2171
|
-
init_transfer_ui2();
|
|
2172
|
-
}
|
|
2173
|
-
});
|
|
2174
|
-
var LazyAssetHistoryWidget, LazyFundingHistoryWidget, LazyDistributionHistoryWidget, LazyTransferHistoryWidget, LazyVaultsHistoryWidget, HistoryDataGroupDesktop;
|
|
2175
|
-
var init_historyDataGroup_ui_desktop = __esm({
|
|
2176
|
-
"src/pages/overview/historyDataGroup/historyDataGroup.ui.desktop.tsx"() {
|
|
2177
|
-
LazyAssetHistoryWidget = React7__default.default.lazy(
|
|
2178
|
-
() => Promise.resolve().then(() => (init_assetHistory(), assetHistory_exports)).then((mod) => {
|
|
2179
|
-
return { default: mod.AssetHistoryWidget };
|
|
2180
|
-
})
|
|
2181
|
-
);
|
|
2182
|
-
LazyFundingHistoryWidget = React7__default.default.lazy(
|
|
2183
|
-
() => Promise.resolve().then(() => (init_funding(), funding_exports)).then((mod) => {
|
|
2184
|
-
return { default: mod.FundingHistoryWidget };
|
|
2185
|
-
})
|
|
2186
|
-
);
|
|
2187
|
-
LazyDistributionHistoryWidget = React7__default.default.lazy(
|
|
2188
|
-
() => Promise.resolve().then(() => (init_distribution(), distribution_exports)).then((mod) => {
|
|
2189
|
-
return { default: mod.DistributionHistoryWidget };
|
|
2190
|
-
})
|
|
2191
|
-
);
|
|
2192
|
-
LazyTransferHistoryWidget = React7__default.default.lazy(
|
|
2193
|
-
() => Promise.resolve().then(() => (init_TransferHistory(), TransferHistory_exports)).then((mod) => {
|
|
2194
|
-
return { default: mod.TransferHistoryWidget };
|
|
2195
|
-
})
|
|
2196
|
-
);
|
|
2197
|
-
LazyVaultsHistoryWidget = React7__default.default.lazy(
|
|
2198
|
-
() => Promise.resolve().then(() => (init_VaultsHistory(), VaultsHistory_exports)).then((mod) => {
|
|
2199
|
-
return { default: mod.VaultsHistoryWidget };
|
|
2200
|
-
})
|
|
2201
|
-
);
|
|
2202
|
-
HistoryDataGroupDesktop = (props) => {
|
|
2203
|
-
const { active = "deposit", onTabChange } = props;
|
|
2204
|
-
const { t } = i18n.useTranslation();
|
|
2205
|
-
const { isMainAccount } = hooks.useAccount();
|
|
2206
|
-
React7.useEffect(() => {
|
|
2207
|
-
if (active === "vaults" && !isMainAccount) {
|
|
2208
|
-
onTabChange("deposit");
|
|
2209
|
-
}
|
|
2210
|
-
}, [active, isMainAccount]);
|
|
2211
|
-
return /* @__PURE__ */ jsxRuntime.jsx(ui.Card, { children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2212
|
-
ui.Tabs,
|
|
2213
|
-
{
|
|
2214
|
-
value: active,
|
|
2215
|
-
onValueChange: onTabChange,
|
|
2216
|
-
variant: "contained",
|
|
2217
|
-
size: "xl",
|
|
2218
|
-
children: [
|
|
2219
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2220
|
-
ui.TabPanel,
|
|
2221
|
-
{
|
|
2222
|
-
title: t("common.deposits"),
|
|
2223
|
-
icon: /* @__PURE__ */ jsxRuntime.jsx(ui.ArrowDownSquareFillIcon, {}),
|
|
2224
|
-
value: "deposit",
|
|
2225
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(React7__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyAssetHistoryWidget, { side: types.AssetHistorySideEnum.DEPOSIT }) })
|
|
2226
|
-
}
|
|
2227
|
-
),
|
|
2228
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2229
|
-
ui.TabPanel,
|
|
2230
|
-
{
|
|
2231
|
-
title: t("common.withdrawals"),
|
|
2232
|
-
icon: /* @__PURE__ */ jsxRuntime.jsx(ui.ArrowUpSquareFillIcon, {}),
|
|
2233
|
-
value: "withdraw",
|
|
2234
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(React7__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyAssetHistoryWidget, { side: types.AssetHistorySideEnum.WITHDRAW }) })
|
|
2235
|
-
}
|
|
2236
|
-
),
|
|
2237
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2238
|
-
ui.TabPanel,
|
|
2239
|
-
{
|
|
2240
|
-
title: t("common.funding"),
|
|
2241
|
-
icon: /* @__PURE__ */ jsxRuntime.jsx(ui.FeeTierIcon, {}),
|
|
2242
|
-
value: "funding",
|
|
2243
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(React7__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyFundingHistoryWidget, {}) })
|
|
2244
|
-
}
|
|
2245
|
-
),
|
|
2246
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2247
|
-
ui.TabPanel,
|
|
2248
|
-
{
|
|
2249
|
-
title: t("portfolio.overview.distribution"),
|
|
2250
|
-
icon: /* @__PURE__ */ jsxRuntime.jsx(ui.ServerFillIcon, {}),
|
|
2251
|
-
value: "distribution",
|
|
2252
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(React7__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyDistributionHistoryWidget, {}) })
|
|
2253
|
-
}
|
|
2254
|
-
),
|
|
2255
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2256
|
-
ui.TabPanel,
|
|
2257
|
-
{
|
|
2258
|
-
title: t("portfolio.overview.transferHistory"),
|
|
2259
|
-
icon: /* @__PURE__ */ jsxRuntime.jsx(ui.ArrowLeftRightSquareFill, {}),
|
|
2260
|
-
value: "transfer",
|
|
2261
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(React7__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyTransferHistoryWidget, {}) })
|
|
2262
|
-
}
|
|
2263
|
-
),
|
|
2264
|
-
isMainAccount && /* @__PURE__ */ jsxRuntime.jsx(
|
|
2265
|
-
ui.TabPanel,
|
|
2266
|
-
{
|
|
2267
|
-
value: "vaults",
|
|
2268
|
-
icon: /* @__PURE__ */ jsxRuntime.jsx(ui.VaultsIcon, {}),
|
|
2269
|
-
title: t("portfolio.overview.vaults"),
|
|
2270
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(React7__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyVaultsHistoryWidget, {}) })
|
|
2271
|
-
}
|
|
2272
|
-
)
|
|
2273
|
-
]
|
|
2274
|
-
}
|
|
2275
|
-
) });
|
|
2276
|
-
};
|
|
2277
|
-
}
|
|
2278
|
-
});
|
|
2279
|
-
var EMPTY_HOLDING, useAccountsData;
|
|
2280
|
-
var init_useAccountsData = __esm({
|
|
2281
|
-
"src/hooks/useAccountsData.ts"() {
|
|
2282
|
-
EMPTY_HOLDING = {
|
|
2283
|
-
token: "USDC",
|
|
2284
|
-
holding: 0,
|
|
2285
|
-
frozen: 0
|
|
2286
|
-
};
|
|
2287
|
-
useAccountsData = () => {
|
|
2288
|
-
const { t } = i18n.useTranslation();
|
|
2289
|
-
const { state, isMainAccount } = hooks.useAccount();
|
|
2290
|
-
const { holding = [] } = hooks.useCollateral();
|
|
2291
|
-
const subAccounts = state.subAccounts ?? [];
|
|
2292
|
-
return React7.useMemo(() => {
|
|
2293
|
-
return immer.produce(subAccounts, (draft) => {
|
|
2294
|
-
for (const sub of draft) {
|
|
2295
|
-
sub.account_id = sub.id;
|
|
2296
|
-
if (Array.isArray(sub.holding) && sub.holding.length) {
|
|
2297
|
-
sub.children = sub.holding.map((item) => ({
|
|
2298
|
-
...item,
|
|
2299
|
-
account_id: sub.id
|
|
2300
|
-
}));
|
|
2301
|
-
} else {
|
|
2302
|
-
sub.children = [{ ...EMPTY_HOLDING, account_id: sub.id }];
|
|
2303
|
-
}
|
|
2304
|
-
Reflect.deleteProperty(sub, "holding");
|
|
2115
|
+
Reflect.deleteProperty(sub, "holding");
|
|
2305
2116
|
}
|
|
2306
2117
|
if (isMainAccount) {
|
|
2307
2118
|
draft.unshift({
|
|
@@ -2353,15 +2164,15 @@ var init_useAssetTotalValue = __esm({
|
|
|
2353
2164
|
const { getIndexPrice } = hooks.useIndexPricesStream();
|
|
2354
2165
|
const allAccounts = useAccountsData();
|
|
2355
2166
|
const subAccounts = state.subAccounts ?? [];
|
|
2356
|
-
const mainTotalValue =
|
|
2167
|
+
const mainTotalValue = React12.useMemo(
|
|
2357
2168
|
() => calculateTotalHolding(holding, getIndexPrice),
|
|
2358
2169
|
[holding, getIndexPrice]
|
|
2359
2170
|
);
|
|
2360
|
-
const subTotalValue =
|
|
2171
|
+
const subTotalValue = React12.useMemo(
|
|
2361
2172
|
() => calculateTotalHolding(subAccounts, getIndexPrice),
|
|
2362
2173
|
[subAccounts, getIndexPrice]
|
|
2363
2174
|
);
|
|
2364
|
-
const totalValue =
|
|
2175
|
+
const totalValue = React12.useMemo(() => {
|
|
2365
2176
|
if (isMainAccount) {
|
|
2366
2177
|
return mainTotalValue.plus(subTotalValue).toNumber();
|
|
2367
2178
|
} else {
|
|
@@ -2386,7 +2197,7 @@ var init_useAssetTotalValue = __esm({
|
|
|
2386
2197
|
var LazyConvertHistoryWidget, TotalValueInfo, DepositAndWithdrawButton, DataFilterSection, AssetsDataTable, AssetsTable;
|
|
2387
2198
|
var init_assets_ui_desktop = __esm({
|
|
2388
2199
|
"src/pages/assets/assetsPage/assets.ui.desktop.tsx"() {
|
|
2389
|
-
LazyConvertHistoryWidget =
|
|
2200
|
+
LazyConvertHistoryWidget = React12__default.default.lazy(
|
|
2390
2201
|
() => Promise.resolve().then(() => (init_convert_widget(), convert_widget_exports)).then((mod) => {
|
|
2391
2202
|
return { default: mod.ConvertHistoryWidget };
|
|
2392
2203
|
})
|
|
@@ -2502,10 +2313,10 @@ var init_assets_ui_desktop = __esm({
|
|
|
2502
2313
|
label: t("common.allAssets", "All assets"),
|
|
2503
2314
|
value: "all"
|
|
2504
2315
|
};
|
|
2505
|
-
const subAccounts =
|
|
2316
|
+
const subAccounts = React12.useMemo(() => {
|
|
2506
2317
|
return state.subAccounts ?? [];
|
|
2507
2318
|
}, [state.subAccounts]);
|
|
2508
|
-
const memoizedOptions =
|
|
2319
|
+
const memoizedOptions = React12.useMemo(() => {
|
|
2509
2320
|
if (Array.isArray(subAccounts) && subAccounts.length) {
|
|
2510
2321
|
return [
|
|
2511
2322
|
ALL_ACCOUNTS,
|
|
@@ -2518,7 +2329,7 @@ var init_assets_ui_desktop = __esm({
|
|
|
2518
2329
|
}
|
|
2519
2330
|
return [ALL_ACCOUNTS, MAIN_ACCOUNT];
|
|
2520
2331
|
}, [ALL_ACCOUNTS, MAIN_ACCOUNT, subAccounts]);
|
|
2521
|
-
const memoizedAssetOptions =
|
|
2332
|
+
const memoizedAssetOptions = React12.useMemo(() => {
|
|
2522
2333
|
return [ALL_ASSETS, ...assetsOptions];
|
|
2523
2334
|
}, [ALL_ASSETS, assetsOptions]);
|
|
2524
2335
|
if (!isMainAccount) {
|
|
@@ -2690,7 +2501,19 @@ var init_assets_ui_desktop = __esm({
|
|
|
2690
2501
|
value: "convertHistory",
|
|
2691
2502
|
className: "oui-rounded-xl oui-bg-base-9 oui-px-6",
|
|
2692
2503
|
title: t("portfolio.overview.tab.convert.history"),
|
|
2693
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2504
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2505
|
+
ui.Flex,
|
|
2506
|
+
{
|
|
2507
|
+
direction: "column",
|
|
2508
|
+
mt: 4,
|
|
2509
|
+
itemAlign: "center",
|
|
2510
|
+
className: "oui-w-full",
|
|
2511
|
+
children: [
|
|
2512
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.Divider, { className: "oui-w-full oui-border-b oui-border-line-4 oui-pt-6" }),
|
|
2513
|
+
/* @__PURE__ */ jsxRuntime.jsx(LazyConvertHistoryWidget, {})
|
|
2514
|
+
]
|
|
2515
|
+
}
|
|
2516
|
+
) })
|
|
2694
2517
|
}
|
|
2695
2518
|
)
|
|
2696
2519
|
]
|
|
@@ -2712,10 +2535,10 @@ var init_useAssetsAccountFilter = __esm({
|
|
|
2712
2535
|
init_assets_ui_desktop();
|
|
2713
2536
|
useAssetsAccountFilter = (data) => {
|
|
2714
2537
|
const { state, isMainAccount } = hooks.useAccount();
|
|
2715
|
-
const [selectedAccount, setSelectedAccount] =
|
|
2538
|
+
const [selectedAccount, setSelectedAccount] = React12__default.default.useState(
|
|
2716
2539
|
"All accounts" /* ALL */
|
|
2717
2540
|
);
|
|
2718
|
-
const filteredData =
|
|
2541
|
+
const filteredData = React12.useMemo(() => {
|
|
2719
2542
|
return data.filter((item) => {
|
|
2720
2543
|
if (isMainAccount) {
|
|
2721
2544
|
if (!selectedAccount || selectedAccount === "All accounts" /* ALL */) {
|
|
@@ -2731,7 +2554,7 @@ var init_useAssetsAccountFilter = __esm({
|
|
|
2731
2554
|
}
|
|
2732
2555
|
});
|
|
2733
2556
|
}, [data, selectedAccount, isMainAccount, state]);
|
|
2734
|
-
const onAccountFilter =
|
|
2557
|
+
const onAccountFilter = React12__default.default.useCallback(
|
|
2735
2558
|
(filter) => {
|
|
2736
2559
|
const { name, value } = filter;
|
|
2737
2560
|
if (name === "account") {
|
|
@@ -2749,11 +2572,11 @@ var init_useAssetsAccountFilter = __esm({
|
|
|
2749
2572
|
};
|
|
2750
2573
|
useAssetsMultiFilter = (data) => {
|
|
2751
2574
|
const { state, isMainAccount } = hooks.useAccount();
|
|
2752
|
-
const [selectedAccount, setSelectedAccount] =
|
|
2575
|
+
const [selectedAccount, setSelectedAccount] = React12__default.default.useState(
|
|
2753
2576
|
"All accounts" /* ALL */
|
|
2754
2577
|
);
|
|
2755
|
-
const [selectedAsset, setSelectedAsset] =
|
|
2756
|
-
const filteredData =
|
|
2578
|
+
const [selectedAsset, setSelectedAsset] = React12__default.default.useState("all");
|
|
2579
|
+
const filteredData = React12.useMemo(() => {
|
|
2757
2580
|
let accountFiltered = data;
|
|
2758
2581
|
if (isMainAccount) {
|
|
2759
2582
|
if (selectedAccount && selectedAccount !== "All accounts" /* ALL */) {
|
|
@@ -2785,7 +2608,7 @@ var init_useAssetsAccountFilter = __esm({
|
|
|
2785
2608
|
}
|
|
2786
2609
|
return accountFiltered;
|
|
2787
2610
|
}, [data, selectedAccount, selectedAsset, isMainAccount, state]);
|
|
2788
|
-
const onFilter =
|
|
2611
|
+
const onFilter = React12__default.default.useCallback(
|
|
2789
2612
|
(filter) => {
|
|
2790
2613
|
const { name, value } = filter;
|
|
2791
2614
|
if (name === "account") {
|
|
@@ -2823,6 +2646,7 @@ var init_convert_script = __esm({
|
|
|
2823
2646
|
init_hooks();
|
|
2824
2647
|
init_date();
|
|
2825
2648
|
useConvertScript = () => {
|
|
2649
|
+
const { t } = i18n.useTranslation();
|
|
2826
2650
|
const { isMainAccount, state } = hooks.useAccount();
|
|
2827
2651
|
const { holding = [] } = hooks.useCollateral();
|
|
2828
2652
|
const { data: indexPrices } = hooks.useIndexPricesStream();
|
|
@@ -2834,24 +2658,24 @@ var init_convert_script = __esm({
|
|
|
2834
2658
|
const allAccounts = useAccountsData();
|
|
2835
2659
|
const tokensInfo = hooks.useAppStore((state2) => state2.tokensInfo);
|
|
2836
2660
|
const { selectedAccount, onAccountFilter } = useAssetsAccountFilter(allAccounts);
|
|
2837
|
-
const [today] =
|
|
2661
|
+
const [today] = React12.useState(() => {
|
|
2838
2662
|
const d = /* @__PURE__ */ new Date();
|
|
2839
2663
|
return new Date(dateFns.getYear(d), dateFns.getMonth(d), dateFns.getDate(d), 0, 0, 0);
|
|
2840
2664
|
});
|
|
2841
|
-
const [dateRange, setDateRange] =
|
|
2665
|
+
const [dateRange, setDateRange] = React12.useState([
|
|
2842
2666
|
utils.subtractDaysFromCurrentDate(90, today),
|
|
2843
2667
|
today
|
|
2844
2668
|
]);
|
|
2845
|
-
const [statusFilter, setStatusFilter] =
|
|
2846
|
-
const [convertedAssetFilter, setConvertedAssetFilter] =
|
|
2847
|
-
const convertedAssetOptions =
|
|
2669
|
+
const [statusFilter, setStatusFilter] = React12.useState("all");
|
|
2670
|
+
const [convertedAssetFilter, setConvertedAssetFilter] = React12.useState("all");
|
|
2671
|
+
const convertedAssetOptions = React12.useMemo(() => {
|
|
2848
2672
|
const assetOptions = tokensInfo?.map((item) => ({
|
|
2849
2673
|
value: item.token,
|
|
2850
2674
|
label: item.token
|
|
2851
2675
|
})) || [];
|
|
2852
|
-
return [{ label: "
|
|
2853
|
-
}, [tokensInfo]);
|
|
2854
|
-
const onFilter =
|
|
2676
|
+
return [{ label: t("common.allAssets"), value: "all" }, ...assetOptions];
|
|
2677
|
+
}, [tokensInfo, t]);
|
|
2678
|
+
const onFilter = React12__default.default.useCallback(
|
|
2855
2679
|
(filter) => {
|
|
2856
2680
|
const { name, value } = filter;
|
|
2857
2681
|
if (name === "account") {
|
|
@@ -2871,7 +2695,7 @@ var init_convert_script = __esm({
|
|
|
2871
2695
|
},
|
|
2872
2696
|
[onAccountFilter, setPage]
|
|
2873
2697
|
);
|
|
2874
|
-
const queryUrl =
|
|
2698
|
+
const queryUrl = React12__default.default.useMemo(() => {
|
|
2875
2699
|
const params = new URLSearchParams();
|
|
2876
2700
|
params.set("page", page.toString());
|
|
2877
2701
|
params.set("size", pageSize.toString());
|
|
@@ -2903,7 +2727,7 @@ var init_convert_script = __esm({
|
|
|
2903
2727
|
return data2;
|
|
2904
2728
|
}
|
|
2905
2729
|
});
|
|
2906
|
-
const pagination =
|
|
2730
|
+
const pagination = React12.useMemo(() => {
|
|
2907
2731
|
if (data?.meta) {
|
|
2908
2732
|
return parsePagination(data.meta);
|
|
2909
2733
|
}
|
|
@@ -2915,7 +2739,7 @@ var init_convert_script = __esm({
|
|
|
2915
2739
|
}
|
|
2916
2740
|
};
|
|
2917
2741
|
}, [data?.meta, parsePagination, page, pageSize, setPage]);
|
|
2918
|
-
const summary =
|
|
2742
|
+
const summary = React12.useMemo(() => {
|
|
2919
2743
|
const dataRows = data?.rows || [];
|
|
2920
2744
|
const totalConversions = dataRows.length;
|
|
2921
2745
|
const totalUSDCReceived = dataRows.reduce(
|
|
@@ -2967,10 +2791,10 @@ var init_convert_column = __esm({
|
|
|
2967
2791
|
convertedAssets
|
|
2968
2792
|
}) => {
|
|
2969
2793
|
const { t } = i18n.useTranslation();
|
|
2970
|
-
const assets =
|
|
2794
|
+
const assets = React12.useMemo(() => {
|
|
2971
2795
|
return Object.keys(convertedAssets);
|
|
2972
2796
|
}, [convertedAssets]);
|
|
2973
|
-
const tooltipContent =
|
|
2797
|
+
const tooltipContent = React12.useMemo(() => {
|
|
2974
2798
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2975
2799
|
ui.Flex,
|
|
2976
2800
|
{
|
|
@@ -3038,7 +2862,7 @@ var init_convert_column = __esm({
|
|
|
3038
2862
|
e.stopPropagation();
|
|
3039
2863
|
ui.toast.success(t("common.copy.copied"));
|
|
3040
2864
|
};
|
|
3041
|
-
const columns =
|
|
2865
|
+
const columns = React12__default.default.useMemo(() => {
|
|
3042
2866
|
return [
|
|
3043
2867
|
{
|
|
3044
2868
|
title: t("portfolio.overview.column.convert.convertedAsset"),
|
|
@@ -3135,7 +2959,7 @@ var init_convert_column = __esm({
|
|
|
3135
2959
|
e.stopPropagation();
|
|
3136
2960
|
ui.toast.success(t("common.copy.copied"));
|
|
3137
2961
|
};
|
|
3138
|
-
const columns =
|
|
2962
|
+
const columns = React12__default.default.useMemo(() => {
|
|
3139
2963
|
return [
|
|
3140
2964
|
{
|
|
3141
2965
|
title: t("portfolio.overview.column.convert.convertedAsset"),
|
|
@@ -3227,24 +3051,10 @@ var init_convert_column = __esm({
|
|
|
3227
3051
|
};
|
|
3228
3052
|
}
|
|
3229
3053
|
});
|
|
3230
|
-
var
|
|
3054
|
+
var ConvertDetailsModal, ConvertDesktopUI;
|
|
3231
3055
|
var init_convert_ui_desktop = __esm({
|
|
3232
3056
|
"src/pages/assets/convertPage/convert.ui.desktop.tsx"() {
|
|
3233
3057
|
init_convert_column();
|
|
3234
|
-
CONVERT_STATUS_OPTIONS = [
|
|
3235
|
-
{
|
|
3236
|
-
label: "All status",
|
|
3237
|
-
value: "all"
|
|
3238
|
-
},
|
|
3239
|
-
{
|
|
3240
|
-
label: "Completed",
|
|
3241
|
-
value: "completed"
|
|
3242
|
-
},
|
|
3243
|
-
{
|
|
3244
|
-
label: "Pending",
|
|
3245
|
-
value: "pending"
|
|
3246
|
-
}
|
|
3247
|
-
];
|
|
3248
3058
|
ConvertDetailsModal = ui.modal.create((props) => {
|
|
3249
3059
|
const { t } = i18n.useTranslation();
|
|
3250
3060
|
const { visible, onOpenChange } = ui.useModal();
|
|
@@ -3272,7 +3082,7 @@ var init_convert_ui_desktop = __esm({
|
|
|
3272
3082
|
className: "oui-w-full",
|
|
3273
3083
|
classNames: {
|
|
3274
3084
|
header: "oui-h-10",
|
|
3275
|
-
root: "oui-bg-base-8 oui-max-h-[60vh] oui-overflow-y-scroll"
|
|
3085
|
+
root: "oui-bg-base-8 oui-max-h-[60vh] oui-overflow-y-scroll oui-custom-scrollbar"
|
|
3276
3086
|
},
|
|
3277
3087
|
onRow: () => ({
|
|
3278
3088
|
className: "oui-h-[40px]"
|
|
@@ -3286,6 +3096,7 @@ var init_convert_ui_desktop = __esm({
|
|
|
3286
3096
|
ConvertDesktopUI = ({
|
|
3287
3097
|
convertState
|
|
3288
3098
|
}) => {
|
|
3099
|
+
const { t } = i18n.useTranslation();
|
|
3289
3100
|
const handleDetailsClick = (convertId) => {
|
|
3290
3101
|
const record = convertState.dataSource.find(
|
|
3291
3102
|
(item) => item.convert_id === convertId
|
|
@@ -3308,7 +3119,15 @@ var init_convert_ui_desktop = __esm({
|
|
|
3308
3119
|
onFilter,
|
|
3309
3120
|
convertedAssetOptions
|
|
3310
3121
|
} = convertState;
|
|
3311
|
-
const
|
|
3122
|
+
const statusOptions = React12.useMemo(
|
|
3123
|
+
() => [
|
|
3124
|
+
{ label: t("common.status.all"), value: "all" },
|
|
3125
|
+
{ label: t("orders.status.completed"), value: "completed" },
|
|
3126
|
+
{ label: t("orders.status.pending"), value: "pending" }
|
|
3127
|
+
],
|
|
3128
|
+
[t]
|
|
3129
|
+
);
|
|
3130
|
+
const dataFilter = React12.useMemo(() => {
|
|
3312
3131
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3313
3132
|
ui.DataFilter,
|
|
3314
3133
|
{
|
|
@@ -3331,7 +3150,7 @@ var init_convert_ui_desktop = __esm({
|
|
|
3331
3150
|
type: "select",
|
|
3332
3151
|
name: "status",
|
|
3333
3152
|
value: statusFilter,
|
|
3334
|
-
options:
|
|
3153
|
+
options: statusOptions
|
|
3335
3154
|
},
|
|
3336
3155
|
{
|
|
3337
3156
|
type: "range",
|
|
@@ -3349,24 +3168,23 @@ var init_convert_ui_desktop = __esm({
|
|
|
3349
3168
|
statusFilter,
|
|
3350
3169
|
dateRange,
|
|
3351
3170
|
onFilter,
|
|
3352
|
-
convertedAssetOptions
|
|
3171
|
+
convertedAssetOptions,
|
|
3172
|
+
statusOptions
|
|
3353
3173
|
]);
|
|
3354
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3355
|
-
|
|
3356
|
-
/* @__PURE__ */ jsxRuntime.jsx(ui.Flex, { direction: "row", className: "oui-w-full", children: dataFilter }),
|
|
3174
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
3175
|
+
dataFilter,
|
|
3357
3176
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3358
3177
|
uiConnector.AuthGuardDataTable,
|
|
3359
3178
|
{
|
|
3179
|
+
bordered: true,
|
|
3360
3180
|
columns,
|
|
3361
3181
|
dataSource: convertState.dataSource,
|
|
3362
3182
|
loading: convertState.isLoading,
|
|
3363
|
-
bordered: true,
|
|
3364
3183
|
pagination: convertState.pagination,
|
|
3365
3184
|
manualPagination: true,
|
|
3366
3185
|
className: "oui-mt-4 oui-w-full",
|
|
3367
3186
|
classNames: {
|
|
3368
|
-
root: "oui-h-[calc(
|
|
3369
|
-
header: "oui-h-12"
|
|
3187
|
+
root: "oui-h-[calc(100%_-_49px)]"
|
|
3370
3188
|
},
|
|
3371
3189
|
onRow: () => ({
|
|
3372
3190
|
className: "oui-h-[48px] oui-cursor-pointer"
|
|
@@ -3384,7 +3202,6 @@ var ConvertMobileUI, ConvertMobileField, ConvertMobileItem, ConverHistoryItemDet
|
|
|
3384
3202
|
var init_convert_ui_mobile = __esm({
|
|
3385
3203
|
"src/pages/assets/convertPage/convert.ui.mobile.tsx"() {
|
|
3386
3204
|
init_convert_column();
|
|
3387
|
-
init_convert_ui_desktop();
|
|
3388
3205
|
ConvertMobileUI = ({
|
|
3389
3206
|
convertState
|
|
3390
3207
|
}) => {
|
|
@@ -3396,7 +3213,15 @@ var init_convert_ui_mobile = __esm({
|
|
|
3396
3213
|
onFilter,
|
|
3397
3214
|
convertedAssetOptions
|
|
3398
3215
|
} = convertState;
|
|
3399
|
-
const
|
|
3216
|
+
const statusOptions = React12.useMemo(
|
|
3217
|
+
() => [
|
|
3218
|
+
{ label: t("common.status.all"), value: "all" },
|
|
3219
|
+
{ label: t("orders.status.completed"), value: "completed" },
|
|
3220
|
+
{ label: t("orders.status.pending"), value: "pending" }
|
|
3221
|
+
],
|
|
3222
|
+
[t]
|
|
3223
|
+
);
|
|
3224
|
+
const dataFilter = React12.useMemo(() => {
|
|
3400
3225
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3401
3226
|
ui.DataFilter,
|
|
3402
3227
|
{
|
|
@@ -3422,7 +3247,7 @@ var init_convert_ui_mobile = __esm({
|
|
|
3422
3247
|
type: "picker",
|
|
3423
3248
|
name: "status",
|
|
3424
3249
|
value: statusFilter,
|
|
3425
|
-
options:
|
|
3250
|
+
options: statusOptions,
|
|
3426
3251
|
className: "oui-whitespace-nowrap"
|
|
3427
3252
|
},
|
|
3428
3253
|
{
|
|
@@ -3441,7 +3266,8 @@ var init_convert_ui_mobile = __esm({
|
|
|
3441
3266
|
statusFilter,
|
|
3442
3267
|
dateRange,
|
|
3443
3268
|
onFilter,
|
|
3444
|
-
convertedAssetOptions
|
|
3269
|
+
convertedAssetOptions,
|
|
3270
|
+
statusOptions
|
|
3445
3271
|
]);
|
|
3446
3272
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "oui-flex oui-flex-col oui-gap-1 oui-px-3", children: [
|
|
3447
3273
|
/* @__PURE__ */ jsxRuntime.jsx(ui.ScrollIndicator, { className: "oui-pr-5", children: /* @__PURE__ */ jsxRuntime.jsx(ui.Flex, { direction: "row", children: dataFilter }) }),
|
|
@@ -3628,32 +3454,436 @@ var init_convert_ui_mobile = __esm({
|
|
|
3628
3454
|
] })) })
|
|
3629
3455
|
}
|
|
3630
3456
|
);
|
|
3631
|
-
});
|
|
3457
|
+
});
|
|
3458
|
+
}
|
|
3459
|
+
});
|
|
3460
|
+
|
|
3461
|
+
// src/pages/assets/convertPage/convert.widget.tsx
|
|
3462
|
+
var convert_widget_exports = {};
|
|
3463
|
+
__export(convert_widget_exports, {
|
|
3464
|
+
ConvertHistoryWidget: () => ConvertHistoryWidget
|
|
3465
|
+
});
|
|
3466
|
+
var ConvertHistoryWidget;
|
|
3467
|
+
var init_convert_widget = __esm({
|
|
3468
|
+
"src/pages/assets/convertPage/convert.widget.tsx"() {
|
|
3469
|
+
init_convert_script();
|
|
3470
|
+
init_convert_ui_desktop();
|
|
3471
|
+
init_convert_ui_mobile();
|
|
3472
|
+
ConvertHistoryWidget = () => {
|
|
3473
|
+
const convertState = useConvertScript();
|
|
3474
|
+
const { isMobile } = ui.useScreen();
|
|
3475
|
+
if (isMobile) {
|
|
3476
|
+
return /* @__PURE__ */ jsxRuntime.jsx(ConvertMobileUI, { convertState });
|
|
3477
|
+
}
|
|
3478
|
+
return /* @__PURE__ */ jsxRuntime.jsx(ConvertDesktopUI, { convertState });
|
|
3479
|
+
};
|
|
3480
|
+
}
|
|
3481
|
+
});
|
|
3482
|
+
var useColumns3;
|
|
3483
|
+
var init_column5 = __esm({
|
|
3484
|
+
"src/pages/overview/VaultsHistory/column.tsx"() {
|
|
3485
|
+
useColumns3 = () => {
|
|
3486
|
+
const { t } = i18n.useTranslation();
|
|
3487
|
+
const columns = React12__default.default.useMemo(() => {
|
|
3488
|
+
return [
|
|
3489
|
+
{
|
|
3490
|
+
title: t("common.type"),
|
|
3491
|
+
dataIndex: "type",
|
|
3492
|
+
className: (record) => {
|
|
3493
|
+
if (record?.type === "deposit") {
|
|
3494
|
+
return "oui-text-success";
|
|
3495
|
+
}
|
|
3496
|
+
if (record?.type === "withdrawal") {
|
|
3497
|
+
return "oui-text-danger";
|
|
3498
|
+
}
|
|
3499
|
+
return "";
|
|
3500
|
+
},
|
|
3501
|
+
render(val) {
|
|
3502
|
+
if (val === "deposit") {
|
|
3503
|
+
return t("common.deposit");
|
|
3504
|
+
}
|
|
3505
|
+
if (val === "withdrawal") {
|
|
3506
|
+
return t("common.withdraw");
|
|
3507
|
+
}
|
|
3508
|
+
return null;
|
|
3509
|
+
}
|
|
3510
|
+
},
|
|
3511
|
+
{
|
|
3512
|
+
title: t("portfolio.overview.vaultName"),
|
|
3513
|
+
dataIndex: "vaultName"
|
|
3514
|
+
},
|
|
3515
|
+
{
|
|
3516
|
+
title: t("common.token"),
|
|
3517
|
+
dataIndex: "token",
|
|
3518
|
+
render(val) {
|
|
3519
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(ui.Flex, { justify: "start", itemAlign: "center", gap: 2, children: [
|
|
3520
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.TokenIcon, { name: val }),
|
|
3521
|
+
val
|
|
3522
|
+
] });
|
|
3523
|
+
}
|
|
3524
|
+
},
|
|
3525
|
+
{
|
|
3526
|
+
title: t("common.time"),
|
|
3527
|
+
dataIndex: "created_time",
|
|
3528
|
+
rule: "date"
|
|
3529
|
+
},
|
|
3530
|
+
{
|
|
3531
|
+
title: t("common.status"),
|
|
3532
|
+
dataIndex: "status",
|
|
3533
|
+
render(val) {
|
|
3534
|
+
return utils.capitalizeString(val);
|
|
3535
|
+
}
|
|
3536
|
+
},
|
|
3537
|
+
{
|
|
3538
|
+
title: t("common.amount"),
|
|
3539
|
+
dataIndex: "amount_change",
|
|
3540
|
+
render(val) {
|
|
3541
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3542
|
+
ui.Text.numeral,
|
|
3543
|
+
{
|
|
3544
|
+
showIdentifier: true,
|
|
3545
|
+
className: ui.cn(
|
|
3546
|
+
"oui-select-none",
|
|
3547
|
+
val >= 0 ? "oui-text-success" : "oui-text-danger"
|
|
3548
|
+
),
|
|
3549
|
+
children: val
|
|
3550
|
+
}
|
|
3551
|
+
);
|
|
3552
|
+
}
|
|
3553
|
+
}
|
|
3554
|
+
];
|
|
3555
|
+
}, [t]);
|
|
3556
|
+
return columns;
|
|
3557
|
+
};
|
|
3558
|
+
}
|
|
3559
|
+
});
|
|
3560
|
+
var VaultsHistoryUI;
|
|
3561
|
+
var init_transfer_ui2 = __esm({
|
|
3562
|
+
"src/pages/overview/VaultsHistory/transfer.ui.tsx"() {
|
|
3563
|
+
init_column5();
|
|
3564
|
+
VaultsHistoryUI = (props) => {
|
|
3565
|
+
const { dataSource: dataSource2, dateRange, isLoading, onFilter } = props;
|
|
3566
|
+
const columns = useColumns3();
|
|
3567
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
3568
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3569
|
+
ui.DataFilter,
|
|
3570
|
+
{
|
|
3571
|
+
onFilter,
|
|
3572
|
+
items: [
|
|
3573
|
+
{
|
|
3574
|
+
type: "range",
|
|
3575
|
+
name: "dateRange",
|
|
3576
|
+
value: {
|
|
3577
|
+
from: dateRange[0],
|
|
3578
|
+
to: dateRange[1]
|
|
3579
|
+
}
|
|
3580
|
+
}
|
|
3581
|
+
]
|
|
3582
|
+
}
|
|
3583
|
+
),
|
|
3584
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3585
|
+
uiConnector.AuthGuardDataTable,
|
|
3586
|
+
{
|
|
3587
|
+
bordered: true,
|
|
3588
|
+
columns,
|
|
3589
|
+
dataSource: dataSource2,
|
|
3590
|
+
loading: isLoading,
|
|
3591
|
+
className: "oui-font-semibold",
|
|
3592
|
+
classNames: { root: "oui-h-[calc(100%_-_49px)]" },
|
|
3593
|
+
pagination: props.pagination,
|
|
3594
|
+
generatedRowKey: (row) => row.id
|
|
3595
|
+
}
|
|
3596
|
+
)
|
|
3597
|
+
] });
|
|
3598
|
+
};
|
|
3599
|
+
}
|
|
3600
|
+
});
|
|
3601
|
+
var useVaultsHistoryHook;
|
|
3602
|
+
var init_useDataSource_script4 = __esm({
|
|
3603
|
+
"src/pages/overview/VaultsHistory/useDataSource.script.ts"() {
|
|
3604
|
+
init_date();
|
|
3605
|
+
useVaultsHistoryHook = () => {
|
|
3606
|
+
const today = React12__default.default.useMemo(() => {
|
|
3607
|
+
const date = /* @__PURE__ */ new Date();
|
|
3608
|
+
return new Date(dateFns.getYear(date), dateFns.getMonth(date), dateFns.getDate(date), 0, 0, 0);
|
|
3609
|
+
}, []);
|
|
3610
|
+
const [dateRange, setDateRange] = React12__default.default.useState([
|
|
3611
|
+
utils.subtractDaysFromCurrentDate(90, today),
|
|
3612
|
+
today
|
|
3613
|
+
]);
|
|
3614
|
+
const { page, pageSize, setPage, parsePagination } = ui.usePagination();
|
|
3615
|
+
const [data, { isLoading, meta }] = hooks.useVaultsHistory({
|
|
3616
|
+
dataRange: [
|
|
3617
|
+
dateRange[0]?.getTime(),
|
|
3618
|
+
dateFns.set(dateRange[1], {
|
|
3619
|
+
hours: 23,
|
|
3620
|
+
minutes: 59,
|
|
3621
|
+
seconds: 59,
|
|
3622
|
+
milliseconds: 0
|
|
3623
|
+
})?.getTime()
|
|
3624
|
+
],
|
|
3625
|
+
size: pageSize,
|
|
3626
|
+
page
|
|
3627
|
+
});
|
|
3628
|
+
const dataSource2 = React12__default.default.useMemo(() => {
|
|
3629
|
+
if (!Array.isArray(data) || !data.length) {
|
|
3630
|
+
return [];
|
|
3631
|
+
}
|
|
3632
|
+
return data.map((item) => ({
|
|
3633
|
+
...item,
|
|
3634
|
+
token: "USDC",
|
|
3635
|
+
// need to hard code for now
|
|
3636
|
+
vaultName: "Orderly OmniVault",
|
|
3637
|
+
amount_change: item.type === "withdrawal" ? -item.amount_change : item.amount_change
|
|
3638
|
+
}));
|
|
3639
|
+
}, [data]);
|
|
3640
|
+
const onDateRangeFilter = React12__default.default.useCallback(
|
|
3641
|
+
(filter) => {
|
|
3642
|
+
if (filter.name === "dateRange") {
|
|
3643
|
+
setDateRange(parseDateRangeForFilter(filter.value));
|
|
3644
|
+
}
|
|
3645
|
+
setPage(1);
|
|
3646
|
+
},
|
|
3647
|
+
[setPage]
|
|
3648
|
+
);
|
|
3649
|
+
const pagination = React12__default.default.useMemo(
|
|
3650
|
+
() => parsePagination(meta),
|
|
3651
|
+
[parsePagination, meta]
|
|
3652
|
+
);
|
|
3653
|
+
return {
|
|
3654
|
+
dataSource: dataSource2,
|
|
3655
|
+
isLoading,
|
|
3656
|
+
dateRange,
|
|
3657
|
+
onFilter: onDateRangeFilter,
|
|
3658
|
+
pagination
|
|
3659
|
+
};
|
|
3660
|
+
};
|
|
3632
3661
|
}
|
|
3633
3662
|
});
|
|
3634
|
-
|
|
3635
|
-
|
|
3636
|
-
|
|
3637
|
-
|
|
3638
|
-
|
|
3663
|
+
var VaultsHistoryMobile;
|
|
3664
|
+
var init_vaults_ui_mobile = __esm({
|
|
3665
|
+
"src/pages/overview/VaultsHistory/vaults.ui.mobile.tsx"() {
|
|
3666
|
+
VaultsHistoryMobile = (props) => {
|
|
3667
|
+
const { dateRange, onFilter, dataSource: dataSource2, isLoading, pagination } = props;
|
|
3668
|
+
const { t } = i18n.useTranslation();
|
|
3669
|
+
const loadMore = () => {
|
|
3670
|
+
if (dataSource2.length < (pagination?.count || 0)) {
|
|
3671
|
+
pagination?.onPageSizeChange?.(pagination?.pageSize + 50);
|
|
3672
|
+
}
|
|
3673
|
+
};
|
|
3674
|
+
const renderHistoryItem = (item) => {
|
|
3675
|
+
const typeColor = item.type === "deposit" ? "buy" : "sell";
|
|
3676
|
+
const typeText = item.type === "deposit" ? t("common.deposit") : t("common.withdraw");
|
|
3677
|
+
const amountText = item.amount_change ? Math.abs(item.amount_change) : "-";
|
|
3678
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "oui-flex oui-flex-col oui-rounded-xl oui-bg-base-9 oui-p-2 oui-font-semibold", children: [
|
|
3679
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "oui-flex oui-items-center oui-justify-between oui-text-sm oui-text-base-contrast-80", children: [
|
|
3680
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { children: item.vaultName }),
|
|
3681
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { children: item.status?.slice(0, 1).toUpperCase() + item.status?.slice(1) })
|
|
3682
|
+
] }),
|
|
3683
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.Text.formatted, { rule: "date", intensity: 36, size: "2xs", children: item.created_time }),
|
|
3684
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.Divider, { className: "oui-my-2" }),
|
|
3685
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "oui-flex oui-items-center [&>div]:oui-flex-1 [&>div]:oui-text-2xs [&>div]:oui-text-base-contrast-36", children: [
|
|
3686
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
3687
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { children: t("common.token") }),
|
|
3688
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "oui-flex oui-items-center oui-gap-1 oui-text-xs oui-text-base-contrast-80", children: [
|
|
3689
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.TokenIcon, { name: "USDC", size: "2xs" }),
|
|
3690
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.Text, { children: "USDC" })
|
|
3691
|
+
] })
|
|
3692
|
+
] }),
|
|
3693
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
3694
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { children: t("common.type") }),
|
|
3695
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.Text, { color: typeColor, className: "oui-text-xs", children: typeText })
|
|
3696
|
+
] }),
|
|
3697
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "oui-text-right", children: [
|
|
3698
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { children: t("common.amount") }),
|
|
3699
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "oui-text-xs oui-text-base-contrast-80", children: amountText })
|
|
3700
|
+
] })
|
|
3701
|
+
] })
|
|
3702
|
+
] });
|
|
3703
|
+
};
|
|
3704
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
3705
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3706
|
+
ui.DataFilter,
|
|
3707
|
+
{
|
|
3708
|
+
items: [
|
|
3709
|
+
{
|
|
3710
|
+
type: "range",
|
|
3711
|
+
name: "dateRange",
|
|
3712
|
+
value: {
|
|
3713
|
+
from: dateRange[0],
|
|
3714
|
+
to: dateRange[1]
|
|
3715
|
+
}
|
|
3716
|
+
}
|
|
3717
|
+
],
|
|
3718
|
+
onFilter: (value) => {
|
|
3719
|
+
onFilter(value);
|
|
3720
|
+
},
|
|
3721
|
+
className: "oui-sticky oui-top-[44px] oui-z-10 oui-border-none oui-bg-base-10 oui-px-3 oui-py-2"
|
|
3722
|
+
}
|
|
3723
|
+
),
|
|
3724
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3725
|
+
ui.ListView,
|
|
3726
|
+
{
|
|
3727
|
+
dataSource: dataSource2,
|
|
3728
|
+
renderItem: renderHistoryItem,
|
|
3729
|
+
contentClassName: "!oui-space-y-1",
|
|
3730
|
+
loadMore,
|
|
3731
|
+
isLoading,
|
|
3732
|
+
className: "oui-px-1"
|
|
3733
|
+
}
|
|
3734
|
+
)
|
|
3735
|
+
] });
|
|
3736
|
+
};
|
|
3737
|
+
}
|
|
3639
3738
|
});
|
|
3640
|
-
var
|
|
3641
|
-
var
|
|
3642
|
-
"src/pages/
|
|
3643
|
-
|
|
3644
|
-
|
|
3645
|
-
|
|
3646
|
-
|
|
3647
|
-
const
|
|
3739
|
+
var VaultsHistoryWidget;
|
|
3740
|
+
var init_transfer_widget2 = __esm({
|
|
3741
|
+
"src/pages/overview/VaultsHistory/transfer.widget.tsx"() {
|
|
3742
|
+
init_transfer_ui2();
|
|
3743
|
+
init_useDataSource_script4();
|
|
3744
|
+
init_vaults_ui_mobile();
|
|
3745
|
+
VaultsHistoryWidget = () => {
|
|
3746
|
+
const state = useVaultsHistoryHook();
|
|
3648
3747
|
const { isMobile } = ui.useScreen();
|
|
3649
3748
|
if (isMobile) {
|
|
3650
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3749
|
+
return /* @__PURE__ */ jsxRuntime.jsx(VaultsHistoryMobile, { ...state });
|
|
3651
3750
|
}
|
|
3652
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3751
|
+
return /* @__PURE__ */ jsxRuntime.jsx(VaultsHistoryUI, { ...state });
|
|
3752
|
+
};
|
|
3753
|
+
}
|
|
3754
|
+
});
|
|
3755
|
+
|
|
3756
|
+
// src/pages/overview/VaultsHistory/index.tsx
|
|
3757
|
+
var VaultsHistory_exports = {};
|
|
3758
|
+
__export(VaultsHistory_exports, {
|
|
3759
|
+
VaultsHistoryUI: () => VaultsHistoryUI,
|
|
3760
|
+
VaultsHistoryWidget: () => VaultsHistoryWidget
|
|
3761
|
+
});
|
|
3762
|
+
var init_VaultsHistory = __esm({
|
|
3763
|
+
"src/pages/overview/VaultsHistory/index.tsx"() {
|
|
3764
|
+
init_transfer_widget2();
|
|
3765
|
+
init_transfer_ui2();
|
|
3766
|
+
}
|
|
3767
|
+
});
|
|
3768
|
+
var LazyAssetHistoryWidget, LazyFundingHistoryWidget, LazyDistributionHistoryWidget, LazyTransferHistoryWidget, LazyConvertHistoryWidget2, LazyVaultsHistoryWidget, HistoryDataGroupDesktop;
|
|
3769
|
+
var init_historyDataGroup_ui_desktop = __esm({
|
|
3770
|
+
"src/pages/overview/historyDataGroup/historyDataGroup.ui.desktop.tsx"() {
|
|
3771
|
+
LazyAssetHistoryWidget = React12__default.default.lazy(
|
|
3772
|
+
() => Promise.resolve().then(() => (init_assetHistory(), assetHistory_exports)).then((mod) => {
|
|
3773
|
+
return { default: mod.AssetHistoryWidget };
|
|
3774
|
+
})
|
|
3775
|
+
);
|
|
3776
|
+
LazyFundingHistoryWidget = React12__default.default.lazy(
|
|
3777
|
+
() => Promise.resolve().then(() => (init_funding(), funding_exports)).then((mod) => {
|
|
3778
|
+
return { default: mod.FundingHistoryWidget };
|
|
3779
|
+
})
|
|
3780
|
+
);
|
|
3781
|
+
LazyDistributionHistoryWidget = React12__default.default.lazy(
|
|
3782
|
+
() => Promise.resolve().then(() => (init_distribution(), distribution_exports)).then((mod) => {
|
|
3783
|
+
return { default: mod.DistributionHistoryWidget };
|
|
3784
|
+
})
|
|
3785
|
+
);
|
|
3786
|
+
LazyTransferHistoryWidget = React12__default.default.lazy(
|
|
3787
|
+
() => Promise.resolve().then(() => (init_TransferHistory(), TransferHistory_exports)).then((mod) => {
|
|
3788
|
+
return { default: mod.TransferHistoryWidget };
|
|
3789
|
+
})
|
|
3790
|
+
);
|
|
3791
|
+
LazyConvertHistoryWidget2 = React12__default.default.lazy(
|
|
3792
|
+
() => Promise.resolve().then(() => (init_convert_widget(), convert_widget_exports)).then((mod) => {
|
|
3793
|
+
return { default: mod.ConvertHistoryWidget };
|
|
3794
|
+
})
|
|
3795
|
+
);
|
|
3796
|
+
LazyVaultsHistoryWidget = React12__default.default.lazy(
|
|
3797
|
+
() => Promise.resolve().then(() => (init_VaultsHistory(), VaultsHistory_exports)).then((mod) => {
|
|
3798
|
+
return { default: mod.VaultsHistoryWidget };
|
|
3799
|
+
})
|
|
3800
|
+
);
|
|
3801
|
+
HistoryDataGroupDesktop = (props) => {
|
|
3802
|
+
const { active = "deposit", onTabChange } = props;
|
|
3803
|
+
const { t } = i18n.useTranslation();
|
|
3804
|
+
const { isMainAccount } = hooks.useAccount();
|
|
3805
|
+
React12.useEffect(() => {
|
|
3806
|
+
if (active === "vaults" && !isMainAccount) {
|
|
3807
|
+
onTabChange("deposit");
|
|
3808
|
+
}
|
|
3809
|
+
}, [active, isMainAccount]);
|
|
3810
|
+
return /* @__PURE__ */ jsxRuntime.jsx(ui.Card, { children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3811
|
+
ui.Tabs,
|
|
3812
|
+
{
|
|
3813
|
+
value: active,
|
|
3814
|
+
onValueChange: onTabChange,
|
|
3815
|
+
variant: "contained",
|
|
3816
|
+
size: "xl",
|
|
3817
|
+
children: [
|
|
3818
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3819
|
+
ui.TabPanel,
|
|
3820
|
+
{
|
|
3821
|
+
title: t("common.deposits"),
|
|
3822
|
+
icon: /* @__PURE__ */ jsxRuntime.jsx(ui.ArrowDownSquareFillIcon, {}),
|
|
3823
|
+
value: "deposit",
|
|
3824
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyAssetHistoryWidget, { side: types.AssetHistorySideEnum.DEPOSIT }) })
|
|
3825
|
+
}
|
|
3826
|
+
),
|
|
3827
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3828
|
+
ui.TabPanel,
|
|
3829
|
+
{
|
|
3830
|
+
title: t("common.withdrawals"),
|
|
3831
|
+
icon: /* @__PURE__ */ jsxRuntime.jsx(ui.ArrowUpSquareFillIcon, {}),
|
|
3832
|
+
value: "withdraw",
|
|
3833
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyAssetHistoryWidget, { side: types.AssetHistorySideEnum.WITHDRAW }) })
|
|
3834
|
+
}
|
|
3835
|
+
),
|
|
3836
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3837
|
+
ui.TabPanel,
|
|
3838
|
+
{
|
|
3839
|
+
title: t("common.funding"),
|
|
3840
|
+
icon: /* @__PURE__ */ jsxRuntime.jsx(ui.FeeTierIcon, {}),
|
|
3841
|
+
value: "funding",
|
|
3842
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyFundingHistoryWidget, {}) })
|
|
3843
|
+
}
|
|
3844
|
+
),
|
|
3845
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3846
|
+
ui.TabPanel,
|
|
3847
|
+
{
|
|
3848
|
+
title: t("portfolio.overview.distribution"),
|
|
3849
|
+
icon: /* @__PURE__ */ jsxRuntime.jsx(ui.ServerFillIcon, {}),
|
|
3850
|
+
value: "distribution",
|
|
3851
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyDistributionHistoryWidget, {}) })
|
|
3852
|
+
}
|
|
3853
|
+
),
|
|
3854
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3855
|
+
ui.TabPanel,
|
|
3856
|
+
{
|
|
3857
|
+
title: t("portfolio.overview.transferHistory"),
|
|
3858
|
+
icon: /* @__PURE__ */ jsxRuntime.jsx(ui.ArrowLeftRightSquareFill, {}),
|
|
3859
|
+
value: "transfer",
|
|
3860
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyTransferHistoryWidget, {}) })
|
|
3861
|
+
}
|
|
3862
|
+
),
|
|
3863
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3864
|
+
ui.TabPanel,
|
|
3865
|
+
{
|
|
3866
|
+
title: t("portfolio.overview.tab.convert.history"),
|
|
3867
|
+
value: "convert",
|
|
3868
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyConvertHistoryWidget2, {}) })
|
|
3869
|
+
}
|
|
3870
|
+
),
|
|
3871
|
+
isMainAccount && /* @__PURE__ */ jsxRuntime.jsx(
|
|
3872
|
+
ui.TabPanel,
|
|
3873
|
+
{
|
|
3874
|
+
value: "vaults",
|
|
3875
|
+
icon: /* @__PURE__ */ jsxRuntime.jsx(ui.VaultsIcon, {}),
|
|
3876
|
+
title: t("portfolio.overview.vaults"),
|
|
3877
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyVaultsHistoryWidget, {}) })
|
|
3878
|
+
}
|
|
3879
|
+
)
|
|
3880
|
+
]
|
|
3881
|
+
}
|
|
3882
|
+
) });
|
|
3653
3883
|
};
|
|
3654
3884
|
}
|
|
3655
3885
|
});
|
|
3656
|
-
var HistoryDataGroupMobile;
|
|
3886
|
+
var LazyTransferHistoryWidget2, HistoryDataGroupMobile;
|
|
3657
3887
|
var init_historyDataGroup_ui_mobile = __esm({
|
|
3658
3888
|
"src/pages/overview/historyDataGroup/historyDataGroup.ui.mobile.tsx"() {
|
|
3659
3889
|
init_convert_widget();
|
|
@@ -3661,6 +3891,11 @@ var init_historyDataGroup_ui_mobile = __esm({
|
|
|
3661
3891
|
init_assetHistory();
|
|
3662
3892
|
init_distribution();
|
|
3663
3893
|
init_funding();
|
|
3894
|
+
LazyTransferHistoryWidget2 = React12__default.default.lazy(
|
|
3895
|
+
() => Promise.resolve().then(() => (init_TransferHistory(), TransferHistory_exports)).then((mod) => {
|
|
3896
|
+
return { default: mod.TransferHistoryWidget };
|
|
3897
|
+
})
|
|
3898
|
+
);
|
|
3664
3899
|
HistoryDataGroupMobile = (props) => {
|
|
3665
3900
|
const { active = "deposit", onTabChange } = props;
|
|
3666
3901
|
const { t } = i18n.useTranslation();
|
|
@@ -3688,6 +3923,14 @@ var init_historyDataGroup_ui_mobile = __esm({
|
|
|
3688
3923
|
children: /* @__PURE__ */ jsxRuntime.jsx(DistributionHistoryWidget, {})
|
|
3689
3924
|
}
|
|
3690
3925
|
),
|
|
3926
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3927
|
+
ui.TabPanel,
|
|
3928
|
+
{
|
|
3929
|
+
title: t("portfolio.overview.transferHistory"),
|
|
3930
|
+
value: "transfer",
|
|
3931
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyTransferHistoryWidget2, {}) })
|
|
3932
|
+
}
|
|
3933
|
+
),
|
|
3691
3934
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3692
3935
|
ui.TabPanel,
|
|
3693
3936
|
{
|
|
@@ -3733,11 +3976,11 @@ var init_historyDataGroup = __esm({
|
|
|
3733
3976
|
var OverviewContext, useOverviewContext;
|
|
3734
3977
|
var init_overviewContext = __esm({
|
|
3735
3978
|
"src/pages/overview/provider/overviewContext.tsx"() {
|
|
3736
|
-
OverviewContext =
|
|
3979
|
+
OverviewContext = React12.createContext(
|
|
3737
3980
|
{}
|
|
3738
3981
|
);
|
|
3739
3982
|
useOverviewContext = () => {
|
|
3740
|
-
return
|
|
3983
|
+
return React12.useContext(OverviewContext);
|
|
3741
3984
|
};
|
|
3742
3985
|
}
|
|
3743
3986
|
});
|
|
@@ -3756,7 +3999,7 @@ var init_assetsChart_script = __esm({
|
|
|
3756
3999
|
{ account_value: 500 }
|
|
3757
4000
|
)
|
|
3758
4001
|
});
|
|
3759
|
-
const _data =
|
|
4002
|
+
const _data = React12.useMemo(() => {
|
|
3760
4003
|
if (filteredData?.length) {
|
|
3761
4004
|
return filteredData;
|
|
3762
4005
|
}
|
|
@@ -3790,7 +4033,7 @@ var init_useAssetHistory = __esm({
|
|
|
3790
4033
|
return PeriodType2;
|
|
3791
4034
|
})(PeriodType || {});
|
|
3792
4035
|
useAssetsHistoryData = (localKey2, options) => {
|
|
3793
|
-
const [today] =
|
|
4036
|
+
const [today] = React12.useState(() => /* @__PURE__ */ new Date());
|
|
3794
4037
|
const { getIndexPrice } = hooks.useIndexPricesStream();
|
|
3795
4038
|
const { t } = i18n.useTranslation();
|
|
3796
4039
|
const { isRealtime = false } = options || {};
|
|
@@ -3799,7 +4042,7 @@ var init_useAssetHistory = __esm({
|
|
|
3799
4042
|
localKey2,
|
|
3800
4043
|
"7D" /* WEEK */
|
|
3801
4044
|
);
|
|
3802
|
-
const convertToUSDCAndOperate =
|
|
4045
|
+
const convertToUSDCAndOperate = React12.useCallback(
|
|
3803
4046
|
(inputs) => {
|
|
3804
4047
|
const { token, amount, value, op = "sub" } = inputs;
|
|
3805
4048
|
if (token.toUpperCase() === "USDC") {
|
|
@@ -3815,7 +4058,7 @@ var init_useAssetHistory = __esm({
|
|
|
3815
4058
|
},
|
|
3816
4059
|
[getIndexPrice]
|
|
3817
4060
|
);
|
|
3818
|
-
const periodLabel =
|
|
4061
|
+
const periodLabel = React12.useMemo(() => {
|
|
3819
4062
|
return {
|
|
3820
4063
|
["7D" /* WEEK */]: t("common.select.7d"),
|
|
3821
4064
|
["30D" /* MONTH */]: t("common.select.30d"),
|
|
@@ -3833,7 +4076,7 @@ var init_useAssetHistory = __esm({
|
|
|
3833
4076
|
return dateFns.subDays(today, 10);
|
|
3834
4077
|
}
|
|
3835
4078
|
};
|
|
3836
|
-
const periodValue =
|
|
4079
|
+
const periodValue = React12.useMemo(() => {
|
|
3837
4080
|
switch (period) {
|
|
3838
4081
|
case "7D" /* WEEK */:
|
|
3839
4082
|
return 7;
|
|
@@ -3845,13 +4088,13 @@ var init_useAssetHistory = __esm({
|
|
|
3845
4088
|
return 7;
|
|
3846
4089
|
}
|
|
3847
4090
|
}, [period]);
|
|
3848
|
-
const [startDate, setStartDate] =
|
|
3849
|
-
const endDate =
|
|
4091
|
+
const [startDate, setStartDate] = React12.useState(getStartDate(period));
|
|
4092
|
+
const endDate = React12.useMemo(() => {
|
|
3850
4093
|
const end = new Date(today);
|
|
3851
4094
|
end.setHours(23, 59, 59, 999);
|
|
3852
4095
|
return end;
|
|
3853
4096
|
}, [today]);
|
|
3854
|
-
const totalDeposit =
|
|
4097
|
+
const totalDeposit = React12.useRef(utils.zero);
|
|
3855
4098
|
const { data: transferOutHistory, mutate: mutateTransferOut } = hooks.usePrivateQuery(
|
|
3856
4099
|
`/v1/internal_transfer_history?page=1&size=200&side=OUT&start_t=${startDate.getTime()}&end_t=${endDate.getTime()}`,
|
|
3857
4100
|
{
|
|
@@ -3873,8 +4116,8 @@ var init_useAssetHistory = __esm({
|
|
|
3873
4116
|
ignoreAggregation: true
|
|
3874
4117
|
}
|
|
3875
4118
|
);
|
|
3876
|
-
const lastBalanceEventRef =
|
|
3877
|
-
const refreshTransferHistory =
|
|
4119
|
+
const lastBalanceEventRef = React12.useRef(0);
|
|
4120
|
+
const refreshTransferHistory = React12.useCallback(() => {
|
|
3878
4121
|
const now = Date.now();
|
|
3879
4122
|
if (now - lastBalanceEventRef.current < 15e3) {
|
|
3880
4123
|
return;
|
|
@@ -3899,7 +4142,7 @@ var init_useAssetHistory = __esm({
|
|
|
3899
4142
|
endTime: endDate.getTime(),
|
|
3900
4143
|
pageSize: 200
|
|
3901
4144
|
});
|
|
3902
|
-
const totalDepositForROI =
|
|
4145
|
+
const totalDepositForROI = React12.useMemo(() => {
|
|
3903
4146
|
return allDepositHistory?.filter((item) => item.trans_status === "COMPLETED").reduce((acc, item) => {
|
|
3904
4147
|
return acc.add(
|
|
3905
4148
|
// item.amount
|
|
@@ -3912,7 +4155,7 @@ var init_useAssetHistory = __esm({
|
|
|
3912
4155
|
);
|
|
3913
4156
|
}, utils.zero);
|
|
3914
4157
|
}, [allDepositHistory, convertToUSDCAndOperate]);
|
|
3915
|
-
const totalTransferInForROI =
|
|
4158
|
+
const totalTransferInForROI = React12.useMemo(() => {
|
|
3916
4159
|
if (!Array.isArray(transferInHistory)) {
|
|
3917
4160
|
return utils.zero;
|
|
3918
4161
|
}
|
|
@@ -3931,10 +4174,10 @@ var init_useAssetHistory = __esm({
|
|
|
3931
4174
|
setStartDate(getStartDate(value));
|
|
3932
4175
|
setPeriod(value);
|
|
3933
4176
|
};
|
|
3934
|
-
const lastItem =
|
|
4177
|
+
const lastItem = React12.useMemo(() => {
|
|
3935
4178
|
return data.length > 0 ? data[data.length - 1] : null;
|
|
3936
4179
|
}, [data]);
|
|
3937
|
-
const totalTransferIn =
|
|
4180
|
+
const totalTransferIn = React12.useMemo(() => {
|
|
3938
4181
|
if (!Array.isArray(transferInHistory)) {
|
|
3939
4182
|
return null;
|
|
3940
4183
|
}
|
|
@@ -3955,7 +4198,7 @@ var init_useAssetHistory = __esm({
|
|
|
3955
4198
|
);
|
|
3956
4199
|
}, utils.zero);
|
|
3957
4200
|
}, [transferInHistory, lastItem, convertToUSDCAndOperate]);
|
|
3958
|
-
const totalTransferOut =
|
|
4201
|
+
const totalTransferOut = React12.useMemo(() => {
|
|
3959
4202
|
if (!Array.isArray(transferOutHistory)) {
|
|
3960
4203
|
return null;
|
|
3961
4204
|
}
|
|
@@ -4054,7 +4297,7 @@ var init_useAssetHistory = __esm({
|
|
|
4054
4297
|
const _data = !realtime ? data2 : mergeData(data2, totalValue2, totalTransferIn2, totalTransferOut2);
|
|
4055
4298
|
return _data.slice(Math.max(0, _data.length - periodValue));
|
|
4056
4299
|
};
|
|
4057
|
-
const calculatedData =
|
|
4300
|
+
const calculatedData = React12.useMemo(() => {
|
|
4058
4301
|
if (totalValue === null) {
|
|
4059
4302
|
return [];
|
|
4060
4303
|
}
|
|
@@ -4079,7 +4322,7 @@ var init_useAssetHistory = __esm({
|
|
|
4079
4322
|
totalTransferIn,
|
|
4080
4323
|
totalTransferOut
|
|
4081
4324
|
]);
|
|
4082
|
-
const aggregateValue =
|
|
4325
|
+
const aggregateValue = React12.useMemo(() => {
|
|
4083
4326
|
let vol = utils.zero;
|
|
4084
4327
|
let pnl = utils.zero;
|
|
4085
4328
|
let roi = utils.zero;
|
|
@@ -4148,7 +4391,7 @@ var init_periodHeader = __esm({
|
|
|
4148
4391
|
init_useAssetHistory();
|
|
4149
4392
|
PeriodTitle = (props) => {
|
|
4150
4393
|
const { t } = i18n.useTranslation();
|
|
4151
|
-
const periodLabel =
|
|
4394
|
+
const periodLabel = React12.useMemo(() => {
|
|
4152
4395
|
return {
|
|
4153
4396
|
["7D" /* WEEK */]: t("common.select.7d"),
|
|
4154
4397
|
["30D" /* MONTH */]: t("common.select.30d"),
|
|
@@ -4176,7 +4419,7 @@ var init_periodHeader = __esm({
|
|
|
4176
4419
|
var LazyPeriodTitle, AssetsChart;
|
|
4177
4420
|
var init_assetsChart_ui = __esm({
|
|
4178
4421
|
"src/pages/overview/assetChart/assetsChart.ui.tsx"() {
|
|
4179
|
-
LazyPeriodTitle =
|
|
4422
|
+
LazyPeriodTitle = React12__default.default.lazy(
|
|
4180
4423
|
() => Promise.resolve().then(() => (init_periodHeader(), periodHeader_exports)).then((mod) => {
|
|
4181
4424
|
return { default: mod.PeriodTitle };
|
|
4182
4425
|
})
|
|
@@ -4187,7 +4430,7 @@ var init_assetsChart_ui = __esm({
|
|
|
4187
4430
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
4188
4431
|
ui.Card,
|
|
4189
4432
|
{
|
|
4190
|
-
title: /* @__PURE__ */ jsxRuntime.jsx(
|
|
4433
|
+
title: /* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
4191
4434
|
LazyPeriodTitle,
|
|
4192
4435
|
{
|
|
4193
4436
|
onPeriodChange,
|
|
@@ -4198,7 +4441,7 @@ var init_assetsChart_ui = __esm({
|
|
|
4198
4441
|
) }),
|
|
4199
4442
|
id: "portfolio-overview-assets-chart",
|
|
4200
4443
|
classNames: { content: "oui-h-[168px] oui-pb-0" },
|
|
4201
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
4444
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(chart.AssetAreaChart, { data, invisible: props.invisible }) })
|
|
4202
4445
|
}
|
|
4203
4446
|
);
|
|
4204
4447
|
};
|
|
@@ -4233,7 +4476,7 @@ var init_assetChart = __esm({
|
|
|
4233
4476
|
var LazyPeriodTitle2, PerformanceUI, LabelWithHint, PerformancePnL, CumulativePnlChart;
|
|
4234
4477
|
var init_performance_ui = __esm({
|
|
4235
4478
|
"src/pages/overview/performance/performance.ui.tsx"() {
|
|
4236
|
-
LazyPeriodTitle2 =
|
|
4479
|
+
LazyPeriodTitle2 = React12__default.default.lazy(
|
|
4237
4480
|
() => Promise.resolve().then(() => (init_periodHeader(), periodHeader_exports)).then((mod) => {
|
|
4238
4481
|
return { default: mod.PeriodTitle };
|
|
4239
4482
|
})
|
|
@@ -4253,7 +4496,7 @@ var init_performance_ui = __esm({
|
|
|
4253
4496
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
4254
4497
|
ui.Card,
|
|
4255
4498
|
{
|
|
4256
|
-
title: /* @__PURE__ */ jsxRuntime.jsx(
|
|
4499
|
+
title: /* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
4257
4500
|
LazyPeriodTitle2,
|
|
4258
4501
|
{
|
|
4259
4502
|
onPeriodChange,
|
|
@@ -4456,7 +4699,7 @@ var init_performance_script = __esm({
|
|
|
4456
4699
|
{ account_value: 500, pnl: 500 }
|
|
4457
4700
|
)
|
|
4458
4701
|
});
|
|
4459
|
-
const _data =
|
|
4702
|
+
const _data = React12.useMemo(() => {
|
|
4460
4703
|
if (filteredData?.length) {
|
|
4461
4704
|
return filteredData;
|
|
4462
4705
|
}
|
|
@@ -4505,8 +4748,8 @@ var init_performance = __esm({
|
|
|
4505
4748
|
var EffectiveFee;
|
|
4506
4749
|
var init_effectiveFee = __esm({
|
|
4507
4750
|
"src/pages/feeTier/icons/effectiveFee.tsx"() {
|
|
4508
|
-
EffectiveFee =
|
|
4509
|
-
const linearId =
|
|
4751
|
+
EffectiveFee = React12__default.default.forwardRef((props, ref) => {
|
|
4752
|
+
const linearId = React12.useId();
|
|
4510
4753
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
4511
4754
|
"svg",
|
|
4512
4755
|
{
|
|
@@ -4809,7 +5052,7 @@ var init_feeTierHeader = __esm({
|
|
|
4809
5052
|
)
|
|
4810
5053
|
}
|
|
4811
5054
|
];
|
|
4812
|
-
const mergedData =
|
|
5055
|
+
const mergedData = React12.useMemo(() => {
|
|
4813
5056
|
if (typeof headerDataAdapter === "function") {
|
|
4814
5057
|
return headerDataAdapter(items);
|
|
4815
5058
|
}
|
|
@@ -4826,11 +5069,11 @@ var init_feeTierHeader = __esm({
|
|
|
4826
5069
|
direction: "column",
|
|
4827
5070
|
gap: 2,
|
|
4828
5071
|
itemAlign: "stretch",
|
|
4829
|
-
children: mergedData.map((item, index) => /* @__PURE__ */
|
|
5072
|
+
children: mergedData.map((item, index) => /* @__PURE__ */ React12.createElement(MobileHeaderItem, { ...item, key: `mobile-item-${index}` }))
|
|
4830
5073
|
}
|
|
4831
5074
|
);
|
|
4832
5075
|
}
|
|
4833
|
-
return /* @__PURE__ */ jsxRuntime.jsx(ui.Flex, { className: "", direction: "row", gapX: 4, my: 4, itemAlign: "stretch", children: mergedData.map((item, index) => /* @__PURE__ */
|
|
5076
|
+
return /* @__PURE__ */ jsxRuntime.jsx(ui.Flex, { className: "", direction: "row", gapX: 4, my: 4, itemAlign: "stretch", children: mergedData.map((item, index) => /* @__PURE__ */ React12.createElement(DesktopHeaderItem, { ...item, key: `desktop-item-${index}` })) });
|
|
4834
5077
|
};
|
|
4835
5078
|
}
|
|
4836
5079
|
});
|
|
@@ -4842,9 +5085,9 @@ var init_apiManager_script = __esm({
|
|
|
4842
5085
|
"src/pages/api/apiManager.script.tsx"() {
|
|
4843
5086
|
useApiManagerScript = (props) => {
|
|
4844
5087
|
const { filterTags, keyStatus } = props ?? {};
|
|
4845
|
-
const [showCreateDialog, setShowCreateDialog] =
|
|
4846
|
-
const [showCreatedDialog, setShowCreatedDialog] =
|
|
4847
|
-
const [generateKey, setGenerateKey] =
|
|
5088
|
+
const [showCreateDialog, setShowCreateDialog] = React12.useState(false);
|
|
5089
|
+
const [showCreatedDialog, setShowCreatedDialog] = React12.useState(false);
|
|
5090
|
+
const [generateKey, setGenerateKey] = React12.useState();
|
|
4848
5091
|
const { wrongNetwork, disabledConnect } = reactApp.useAppContext();
|
|
4849
5092
|
const { state, account: account2 } = hooks.useAccount();
|
|
4850
5093
|
const { t } = i18n.useTranslation();
|
|
@@ -4863,8 +5106,8 @@ var init_apiManager_script = __esm({
|
|
|
4863
5106
|
] = hooks.useApiKeyManager({
|
|
4864
5107
|
keyInfo: { key_status: keyStatus }
|
|
4865
5108
|
});
|
|
4866
|
-
const [curPubKey, setCurPubKey] =
|
|
4867
|
-
|
|
5109
|
+
const [curPubKey, setCurPubKey] = React12.useState(void 0);
|
|
5110
|
+
React12.useEffect(() => {
|
|
4868
5111
|
account2.keyStore.getOrderlyKey()?.getPublicKey().then((pubKey) => {
|
|
4869
5112
|
setCurPubKey(pubKey);
|
|
4870
5113
|
});
|
|
@@ -4972,7 +5215,7 @@ var init_apiManager_script = __esm({
|
|
|
4972
5215
|
};
|
|
4973
5216
|
const onCopyApiSecretKey = () => ui.toast.success(t("portfolio.apiKey.secretKey.copied"));
|
|
4974
5217
|
const onCopyIP = () => ui.toast.success(t("portfolio.apiKey.column.restrictedIP.copy"));
|
|
4975
|
-
const keyList =
|
|
5218
|
+
const keyList = React12.useMemo(() => {
|
|
4976
5219
|
return keys?.filter((e) => {
|
|
4977
5220
|
const filterTag = filterTags ? filterTags?.includes(e.tag) : true;
|
|
4978
5221
|
const filterCurKey = curPubKey ? !e.orderly_key.includes(curPubKey) : true;
|
|
@@ -5032,12 +5275,12 @@ var CreateAPIKeyDialog, Checkbox;
|
|
|
5032
5275
|
var init_createApiKey = __esm({
|
|
5033
5276
|
"src/pages/api/dialog/createApiKey.tsx"() {
|
|
5034
5277
|
CreateAPIKeyDialog = (props) => {
|
|
5035
|
-
const [ipText, setIpText] =
|
|
5036
|
-
const [read, setRead] =
|
|
5037
|
-
const [trade, setTrade] =
|
|
5038
|
-
const [hint, setHint] =
|
|
5278
|
+
const [ipText, setIpText] = React12.useState("");
|
|
5279
|
+
const [read, setRead] = React12.useState(true);
|
|
5280
|
+
const [trade, setTrade] = React12.useState(true);
|
|
5281
|
+
const [hint, setHint] = React12.useState("");
|
|
5039
5282
|
const { t } = i18n.useTranslation();
|
|
5040
|
-
|
|
5283
|
+
React12.useEffect(() => {
|
|
5041
5284
|
if (!props.showCreateDialog) {
|
|
5042
5285
|
setIpText("");
|
|
5043
5286
|
setRead(true);
|
|
@@ -5045,7 +5288,7 @@ var init_createApiKey = __esm({
|
|
|
5045
5288
|
setHint("");
|
|
5046
5289
|
}
|
|
5047
5290
|
}, [props.showCreateDialog]);
|
|
5048
|
-
|
|
5291
|
+
React12.useEffect(() => {
|
|
5049
5292
|
if (ipText.length === 0)
|
|
5050
5293
|
setHint("");
|
|
5051
5294
|
}, [ipText]);
|
|
@@ -5436,18 +5679,18 @@ var init_editApiKey = __esm({
|
|
|
5436
5679
|
init_createApiKey();
|
|
5437
5680
|
EditAPIKeyDialog = (props) => {
|
|
5438
5681
|
const { item, open, setOpen, onUpdate } = props;
|
|
5439
|
-
const [ipText, setIpText] =
|
|
5440
|
-
const [read, setRead] =
|
|
5441
|
-
const [trade, setTrade] =
|
|
5442
|
-
const [hint, setHint] =
|
|
5682
|
+
const [ipText, setIpText] = React12.useState(item.ip_restriction_list?.join(","));
|
|
5683
|
+
const [read, setRead] = React12.useState(true);
|
|
5684
|
+
const [trade, setTrade] = React12.useState(true);
|
|
5685
|
+
const [hint, setHint] = React12.useState("");
|
|
5443
5686
|
const { t } = i18n.useTranslation();
|
|
5444
|
-
|
|
5687
|
+
React12.useEffect(() => {
|
|
5445
5688
|
setIpText(item.ip_restriction_list.join(","));
|
|
5446
5689
|
const scope = item.scope?.toLocaleLowerCase() || "";
|
|
5447
5690
|
setRead(scope.includes("read"));
|
|
5448
5691
|
setTrade(scope.includes("trading"));
|
|
5449
5692
|
}, [item]);
|
|
5450
|
-
|
|
5693
|
+
React12.useEffect(() => {
|
|
5451
5694
|
if (ipText.length === 0)
|
|
5452
5695
|
setHint("");
|
|
5453
5696
|
}, [ipText]);
|
|
@@ -5574,22 +5817,22 @@ var LazyCreateAPIKeyDialog, LazyCreatedAPIKeyDialog, LazyDeleteAPIKeyDialog, Laz
|
|
|
5574
5817
|
var init_apiManager_ui = __esm({
|
|
5575
5818
|
"src/pages/api/apiManager.ui.tsx"() {
|
|
5576
5819
|
init_apiManager_script();
|
|
5577
|
-
LazyCreateAPIKeyDialog =
|
|
5820
|
+
LazyCreateAPIKeyDialog = React12__default.default.lazy(
|
|
5578
5821
|
() => Promise.resolve().then(() => (init_createApiKey(), createApiKey_exports)).then((mod) => {
|
|
5579
5822
|
return { default: mod.CreateAPIKeyDialog };
|
|
5580
5823
|
})
|
|
5581
5824
|
);
|
|
5582
|
-
LazyCreatedAPIKeyDialog =
|
|
5825
|
+
LazyCreatedAPIKeyDialog = React12__default.default.lazy(
|
|
5583
5826
|
() => Promise.resolve().then(() => (init_createdApiKey(), createdApiKey_exports)).then((mod) => {
|
|
5584
5827
|
return { default: mod.CreatedAPIKeyDialog };
|
|
5585
5828
|
})
|
|
5586
5829
|
);
|
|
5587
|
-
LazyDeleteAPIKeyDialog =
|
|
5830
|
+
LazyDeleteAPIKeyDialog = React12__default.default.lazy(
|
|
5588
5831
|
() => Promise.resolve().then(() => (init_deleteApiKey(), deleteApiKey_exports)).then((mod) => {
|
|
5589
5832
|
return { default: mod.DeleteAPIKeyDialog };
|
|
5590
5833
|
})
|
|
5591
5834
|
);
|
|
5592
|
-
LazyEditAPIKeyDialog =
|
|
5835
|
+
LazyEditAPIKeyDialog = React12__default.default.lazy(
|
|
5593
5836
|
() => Promise.resolve().then(() => (init_editApiKey(), editApiKey_exports)).then((mod) => {
|
|
5594
5837
|
return { default: mod.EditAPIKeyDialog };
|
|
5595
5838
|
})
|
|
@@ -5618,8 +5861,8 @@ var init_apiManager_ui = __esm({
|
|
|
5618
5861
|
),
|
|
5619
5862
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
5620
5863
|
/* @__PURE__ */ jsxRuntime.jsx(KeyList, { ...props }),
|
|
5621
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5622
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5864
|
+
/* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyCreateAPIKeyDialog, { ...props }) }),
|
|
5865
|
+
/* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyCreatedAPIKeyDialog, { ...props }) })
|
|
5623
5866
|
] })
|
|
5624
5867
|
]
|
|
5625
5868
|
}
|
|
@@ -5841,7 +6084,7 @@ var init_apiManager_ui = __esm({
|
|
|
5841
6084
|
};
|
|
5842
6085
|
EditButton = (props) => {
|
|
5843
6086
|
const { item, onUpdate, verifyIP } = props;
|
|
5844
|
-
const [open, setOpen] =
|
|
6087
|
+
const [open, setOpen] = React12.useState(false);
|
|
5845
6088
|
const { t } = i18n.useTranslation();
|
|
5846
6089
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
5847
6090
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -5858,7 +6101,7 @@ var init_apiManager_ui = __esm({
|
|
|
5858
6101
|
children: t("common.edit")
|
|
5859
6102
|
}
|
|
5860
6103
|
),
|
|
5861
|
-
open && /* @__PURE__ */ jsxRuntime.jsx(
|
|
6104
|
+
open && /* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
5862
6105
|
LazyEditAPIKeyDialog,
|
|
5863
6106
|
{
|
|
5864
6107
|
item,
|
|
@@ -5872,7 +6115,7 @@ var init_apiManager_ui = __esm({
|
|
|
5872
6115
|
};
|
|
5873
6116
|
DeleteButton = (props) => {
|
|
5874
6117
|
const { item, onDelete } = props;
|
|
5875
|
-
const [open, setOpen] =
|
|
6118
|
+
const [open, setOpen] = React12.useState(false);
|
|
5876
6119
|
const { t } = i18n.useTranslation();
|
|
5877
6120
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
5878
6121
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -5889,7 +6132,7 @@ var init_apiManager_ui = __esm({
|
|
|
5889
6132
|
children: t("common.delete")
|
|
5890
6133
|
}
|
|
5891
6134
|
),
|
|
5892
|
-
open && /* @__PURE__ */ jsxRuntime.jsx(
|
|
6135
|
+
open && /* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
5893
6136
|
LazyDeleteAPIKeyDialog,
|
|
5894
6137
|
{
|
|
5895
6138
|
item,
|
|
@@ -5915,16 +6158,16 @@ var PortfolioLeftSidebarPath = /* @__PURE__ */ ((PortfolioLeftSidebarPath2) => {
|
|
|
5915
6158
|
})(PortfolioLeftSidebarPath || {});
|
|
5916
6159
|
var usePortfolioLayoutScript = (props) => {
|
|
5917
6160
|
const { routerAdapter } = uiScaffold.useScaffoldContext();
|
|
5918
|
-
const [current, setCurrent] =
|
|
6161
|
+
const [current, setCurrent] = React12.useState(
|
|
5919
6162
|
props.current ?? routerAdapter?.currentPath ?? "/portfolio"
|
|
5920
6163
|
);
|
|
5921
6164
|
const { t } = i18n.useTranslation();
|
|
5922
|
-
|
|
6165
|
+
React12.useEffect(() => {
|
|
5923
6166
|
if (props.current || routerAdapter?.currentPath) {
|
|
5924
6167
|
setCurrent(props.current || routerAdapter?.currentPath || "/portfolio");
|
|
5925
6168
|
}
|
|
5926
6169
|
}, [props.current, routerAdapter?.currentPath]);
|
|
5927
|
-
const items =
|
|
6170
|
+
const items = React12.useMemo(() => {
|
|
5928
6171
|
return [
|
|
5929
6172
|
{
|
|
5930
6173
|
name: t("common.overview"),
|
|
@@ -6404,12 +6647,12 @@ var useRewardsData = ({ type = hooks.TWType.normal }) => {
|
|
|
6404
6647
|
);
|
|
6405
6648
|
const epochList = hooks.useEpochInfo(type);
|
|
6406
6649
|
const brokerId = hooks.useConfig("brokerId");
|
|
6407
|
-
const brokerName =
|
|
6650
|
+
const brokerName = React12.useMemo(() => {
|
|
6408
6651
|
return brokers?.[brokerId];
|
|
6409
6652
|
}, [brokerId, brokers]);
|
|
6410
|
-
const lastStete =
|
|
6411
|
-
const timerRef =
|
|
6412
|
-
|
|
6653
|
+
const lastStete = React12.useRef(types.AccountStatusEnum.NotConnected);
|
|
6654
|
+
const timerRef = React12.useRef(null);
|
|
6655
|
+
React12.useEffect(() => {
|
|
6413
6656
|
if (lastStete.current !== state.status) {
|
|
6414
6657
|
lastStete.current = state.status;
|
|
6415
6658
|
timerRef.current = setTimeout(() => {
|
|
@@ -6460,7 +6703,7 @@ var OverviewProvider = (props) => {
|
|
|
6460
6703
|
const { type, children } = props;
|
|
6461
6704
|
const state = useAssetsHistoryData(localKey, { isRealtime: true });
|
|
6462
6705
|
const rewardsData = useRewardsData({ type });
|
|
6463
|
-
const memoizedValue =
|
|
6706
|
+
const memoizedValue = React12.useMemo(() => {
|
|
6464
6707
|
return {
|
|
6465
6708
|
...state,
|
|
6466
6709
|
type,
|
|
@@ -6525,7 +6768,7 @@ var usePortfolioChartsState = () => {
|
|
|
6525
6768
|
ORDERLY_ASSETS_VISIBLE_KEY,
|
|
6526
6769
|
true
|
|
6527
6770
|
);
|
|
6528
|
-
const onPerformanceClick =
|
|
6771
|
+
const onPerformanceClick = React12.useCallback(() => {
|
|
6529
6772
|
return ui.modal.show(PerformanceMobileSheetId);
|
|
6530
6773
|
}, []);
|
|
6531
6774
|
return {
|
|
@@ -6539,7 +6782,7 @@ var usePortfolioChartsState = () => {
|
|
|
6539
6782
|
var PortfolioChartsMobileUI = (props) => {
|
|
6540
6783
|
const { data, invisible, unrealPnL, unrealROI, visible, onPerformanceClick } = props;
|
|
6541
6784
|
const { t } = i18n.useTranslation();
|
|
6542
|
-
const colorId =
|
|
6785
|
+
const colorId = React12.useId();
|
|
6543
6786
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
6544
6787
|
ui.Flex,
|
|
6545
6788
|
{
|
|
@@ -6664,7 +6907,7 @@ var useCurrentStatus = () => {
|
|
|
6664
6907
|
textClass: ""
|
|
6665
6908
|
}
|
|
6666
6909
|
};
|
|
6667
|
-
return
|
|
6910
|
+
return React12.useMemo(() => {
|
|
6668
6911
|
if (disabledConnect) {
|
|
6669
6912
|
return statusText.connectWallet;
|
|
6670
6913
|
}
|
|
@@ -6752,7 +6995,7 @@ var ShowAccount = () => {
|
|
|
6752
6995
|
navigator.clipboard.writeText(state.address ?? "");
|
|
6753
6996
|
ui.toast.success(t("common.copy.copied"));
|
|
6754
6997
|
};
|
|
6755
|
-
const currentNamespace =
|
|
6998
|
+
const currentNamespace = React12.useMemo(() => {
|
|
6756
6999
|
if (namespace) {
|
|
6757
7000
|
return namespace;
|
|
6758
7001
|
}
|
|
@@ -6761,7 +7004,7 @@ var ShowAccount = () => {
|
|
|
6761
7004
|
}
|
|
6762
7005
|
return null;
|
|
6763
7006
|
}, [namespace, state.status]);
|
|
6764
|
-
const leftNode =
|
|
7007
|
+
const leftNode = React12.useMemo(() => {
|
|
6765
7008
|
if (!state.address) {
|
|
6766
7009
|
return;
|
|
6767
7010
|
}
|
|
@@ -6786,7 +7029,7 @@ var ShowAccount = () => {
|
|
|
6786
7029
|
)
|
|
6787
7030
|
] });
|
|
6788
7031
|
}, [state.address]);
|
|
6789
|
-
const rightNode =
|
|
7032
|
+
const rightNode = React12.useMemo(() => {
|
|
6790
7033
|
if (currentNamespace === types.ChainNamespace.evm) {
|
|
6791
7034
|
return /* @__PURE__ */ jsxRuntime.jsx(EVMChains, {});
|
|
6792
7035
|
}
|
|
@@ -6801,7 +7044,7 @@ var ShowAccount = () => {
|
|
|
6801
7044
|
"Solana"
|
|
6802
7045
|
] });
|
|
6803
7046
|
}, [currentNamespace]);
|
|
6804
|
-
const bgClass =
|
|
7047
|
+
const bgClass = React12.useMemo(() => {
|
|
6805
7048
|
let bg = "";
|
|
6806
7049
|
if (currentNamespace == types.ChainNamespace.evm) {
|
|
6807
7050
|
bg = "oui-bg-[linear-gradient(15deg,#283BEE_-11%,transparent_30%,transparent_77%,#A53411_100%)]";
|
|
@@ -6828,7 +7071,7 @@ var AccountStatusMobile = () => {
|
|
|
6828
7071
|
const { state } = hooks.useAccount();
|
|
6829
7072
|
const { wrongNetwork } = reactApp.useAppContext();
|
|
6830
7073
|
const { description, rootClass } = useCurrentStatus();
|
|
6831
|
-
const alreadyShowAccount =
|
|
7074
|
+
const alreadyShowAccount = React12.useMemo(() => {
|
|
6832
7075
|
if (state.status === types.AccountStatusEnum.EnableTradingWithoutConnected) {
|
|
6833
7076
|
return true;
|
|
6834
7077
|
}
|
|
@@ -7025,7 +7268,7 @@ var PortfolioHandleMobile = (props) => {
|
|
|
7025
7268
|
var PortfolioValueMobile = (props) => {
|
|
7026
7269
|
const { t } = i18n.useTranslation();
|
|
7027
7270
|
const { state } = hooks.useAccount();
|
|
7028
|
-
const currentNamespace =
|
|
7271
|
+
const currentNamespace = React12.useMemo(() => {
|
|
7029
7272
|
if (props.namespace) {
|
|
7030
7273
|
return props.namespace;
|
|
7031
7274
|
}
|
|
@@ -7316,22 +7559,22 @@ var MobileOverview = (props) => {
|
|
|
7316
7559
|
)
|
|
7317
7560
|
] });
|
|
7318
7561
|
};
|
|
7319
|
-
var LazyAssetWidget =
|
|
7562
|
+
var LazyAssetWidget = React12__default.default.lazy(
|
|
7320
7563
|
() => Promise.resolve().then(() => (init_assets(), assets_exports)).then((mod) => {
|
|
7321
7564
|
return { default: mod.AssetWidget };
|
|
7322
7565
|
})
|
|
7323
7566
|
);
|
|
7324
|
-
var LazyAssetsChartWidget =
|
|
7567
|
+
var LazyAssetsChartWidget = React12__default.default.lazy(
|
|
7325
7568
|
() => Promise.resolve().then(() => (init_assetChart(), assetChart_exports)).then((mod) => {
|
|
7326
7569
|
return { default: mod.AssetsChartWidget };
|
|
7327
7570
|
})
|
|
7328
7571
|
);
|
|
7329
|
-
var LazyPerformanceWidget =
|
|
7572
|
+
var LazyPerformanceWidget = React12__default.default.lazy(
|
|
7330
7573
|
() => Promise.resolve().then(() => (init_performance(), performance_exports)).then((mod) => {
|
|
7331
7574
|
return { default: mod.PerformanceWidget };
|
|
7332
7575
|
})
|
|
7333
7576
|
);
|
|
7334
|
-
var LazyHistoryDataGroupWidget =
|
|
7577
|
+
var LazyHistoryDataGroupWidget = React12__default.default.lazy(
|
|
7335
7578
|
() => Promise.resolve().then(() => (init_historyDataGroup(), historyDataGroup_exports)).then((mod) => {
|
|
7336
7579
|
return { default: mod.HistoryDataGroupWidget };
|
|
7337
7580
|
})
|
|
@@ -7345,10 +7588,10 @@ var OverviewPage = (props) => {
|
|
|
7345
7588
|
hideTraderCard: props.hideTraderCard
|
|
7346
7589
|
}
|
|
7347
7590
|
) : /* @__PURE__ */ jsxRuntime.jsxs(ui.Grid, { cols: 2, gap: 4, children: [
|
|
7348
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7349
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7350
|
-
/* @__PURE__ */ jsxRuntime.jsx(ui.Grid.span, { colSpan: 2, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
7351
|
-
/* @__PURE__ */ jsxRuntime.jsx(ui.Grid.span, { colSpan: 2, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
7591
|
+
/* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyAssetWidget, {}) }),
|
|
7592
|
+
/* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyAssetsChartWidget, {}) }),
|
|
7593
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.Grid.span, { colSpan: 2, children: /* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyPerformanceWidget, {}) }) }),
|
|
7594
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.Grid.span, { colSpan: 2, children: /* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(LazyHistoryDataGroupWidget, {}) }) })
|
|
7352
7595
|
] }) });
|
|
7353
7596
|
};
|
|
7354
7597
|
|
|
@@ -7358,7 +7601,7 @@ __export(feeTier_exports, {
|
|
|
7358
7601
|
FeeTierPage: () => FeeTierPage,
|
|
7359
7602
|
useFeeTierScript: () => useFeeTierScript
|
|
7360
7603
|
});
|
|
7361
|
-
var LazyFeeTierHeader =
|
|
7604
|
+
var LazyFeeTierHeader = React12__default.default.lazy(
|
|
7362
7605
|
() => Promise.resolve().then(() => (init_feeTierHeader(), feeTierHeader_exports)).then((mod) => {
|
|
7363
7606
|
return { default: mod.FeeTierHeader };
|
|
7364
7607
|
})
|
|
@@ -7366,7 +7609,7 @@ var LazyFeeTierHeader = React7__default.default.lazy(
|
|
|
7366
7609
|
var FeeTierTable = (props) => {
|
|
7367
7610
|
const { isMobile } = ui.useScreen();
|
|
7368
7611
|
const { tier, columns, dataSource: dataSource2, onRow, onCell } = props;
|
|
7369
|
-
const internalOnRow =
|
|
7612
|
+
const internalOnRow = React12.useCallback(
|
|
7370
7613
|
(record, index) => {
|
|
7371
7614
|
const config = typeof onRow === "function" ? onRow(record, index) : { normal: void 0, active: void 0 };
|
|
7372
7615
|
const active = tier !== void 0 && tier !== null && tier === index + 1;
|
|
@@ -7388,7 +7631,7 @@ var FeeTierTable = (props) => {
|
|
|
7388
7631
|
},
|
|
7389
7632
|
[tier, onRow]
|
|
7390
7633
|
);
|
|
7391
|
-
const internalOnCell =
|
|
7634
|
+
const internalOnCell = React12.useCallback(
|
|
7392
7635
|
(column, record, index) => {
|
|
7393
7636
|
const config = typeof onCell === "function" ? onCell(column, record, index) : { normal: void 0, active: void 0 };
|
|
7394
7637
|
const active = tier !== void 0 && tier !== null && tier === index + 1;
|
|
@@ -7464,7 +7707,7 @@ var FeeTier = (props) => {
|
|
|
7464
7707
|
},
|
|
7465
7708
|
children: [
|
|
7466
7709
|
!isMobile && /* @__PURE__ */ jsxRuntime.jsx(ui.Divider, {}),
|
|
7467
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7710
|
+
/* @__PURE__ */ jsxRuntime.jsx(React12__default.default.Suspense, { fallback: null, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
7468
7711
|
LazyFeeTierHeader,
|
|
7469
7712
|
{
|
|
7470
7713
|
vol,
|
|
@@ -7499,7 +7742,7 @@ var textStyle = {
|
|
|
7499
7742
|
};
|
|
7500
7743
|
var useFeeTierColumns = () => {
|
|
7501
7744
|
const { t } = i18n.useTranslation();
|
|
7502
|
-
return
|
|
7745
|
+
return React12.useMemo(() => {
|
|
7503
7746
|
return [
|
|
7504
7747
|
{
|
|
7505
7748
|
title: t("portfolio.feeTier.column.tier"),
|
|
@@ -7621,15 +7864,15 @@ var findCurrentTier = (feeList, data) => {
|
|
|
7621
7864
|
};
|
|
7622
7865
|
var useFeeTierScript = (options) => {
|
|
7623
7866
|
const { dataAdapter, headerDataAdapter, onRow, onCell } = options || {};
|
|
7624
|
-
const [tier, setTier] =
|
|
7867
|
+
const [tier, setTier] = React12.useState();
|
|
7625
7868
|
const { data, isLoading } = hooks.useAccountInfo();
|
|
7626
7869
|
const { state } = hooks.useAccount();
|
|
7627
7870
|
const cols = useFeeTierColumns();
|
|
7628
7871
|
const { data: volumeStatistics } = hooks.usePrivateQuery("/v1/volume/user/stats");
|
|
7629
|
-
const { columns, dataSource: dataSource2 } =
|
|
7872
|
+
const { columns, dataSource: dataSource2 } = React12.useMemo(() => {
|
|
7630
7873
|
return typeof dataAdapter === "function" ? dataAdapter(cols, dataSource, { tier }) : { columns: cols, dataSource };
|
|
7631
7874
|
}, [dataAdapter, cols, tier]);
|
|
7632
|
-
|
|
7875
|
+
React12.useEffect(() => {
|
|
7633
7876
|
if (!data || isLoading) {
|
|
7634
7877
|
return;
|
|
7635
7878
|
}
|
|
@@ -7661,12 +7904,12 @@ __export(page_exports, {
|
|
|
7661
7904
|
});
|
|
7662
7905
|
init_assets_ui_desktop();
|
|
7663
7906
|
var PositionsPage = (props) => {
|
|
7664
|
-
const [tab, setTab] =
|
|
7907
|
+
const [tab, setTab] = React12.useState("Positions" /* positions */);
|
|
7665
7908
|
const { t } = i18n.useTranslation();
|
|
7666
7909
|
const { state, isMainAccount } = hooks.useAccount();
|
|
7667
7910
|
const subAccounts = state.subAccounts ?? [];
|
|
7668
|
-
const [selectedAccount, setAccount] =
|
|
7669
|
-
const onAccountFilter =
|
|
7911
|
+
const [selectedAccount, setAccount] = React12__default.default.useState("All accounts" /* ALL */);
|
|
7912
|
+
const onAccountFilter = React12__default.default.useCallback(
|
|
7670
7913
|
(filter) => {
|
|
7671
7914
|
const { name, value } = filter;
|
|
7672
7915
|
if (name === "account") {
|
|
@@ -7683,7 +7926,7 @@ var PositionsPage = (props) => {
|
|
|
7683
7926
|
label: t("common.mainAccount"),
|
|
7684
7927
|
value: "Main accounts" /* MAIN */
|
|
7685
7928
|
};
|
|
7686
|
-
const memoizedOptions =
|
|
7929
|
+
const memoizedOptions = React12.useMemo(() => {
|
|
7687
7930
|
if (Array.isArray(subAccounts) && subAccounts.length) {
|
|
7688
7931
|
return [
|
|
7689
7932
|
ALL_ACCOUNTS,
|
|
@@ -7796,7 +8039,7 @@ __export(page_exports2, {
|
|
|
7796
8039
|
var OrdersPage = (props) => {
|
|
7797
8040
|
const { sharePnLConfig } = props;
|
|
7798
8041
|
const { t } = i18n.useTranslation();
|
|
7799
|
-
const ordersRef =
|
|
8042
|
+
const ordersRef = React12.useRef(null);
|
|
7800
8043
|
const onDownload = () => {
|
|
7801
8044
|
ordersRef.current?.download?.();
|
|
7802
8045
|
};
|
|
@@ -7831,7 +8074,7 @@ var OrdersPage = (props) => {
|
|
|
7831
8074
|
}
|
|
7832
8075
|
);
|
|
7833
8076
|
};
|
|
7834
|
-
var TooltipIcon =
|
|
8077
|
+
var TooltipIcon = React12__default.default.forwardRef(
|
|
7835
8078
|
(props, ref) => {
|
|
7836
8079
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
7837
8080
|
"svg",
|
|
@@ -7879,13 +8122,13 @@ var useSettingScript = () => {
|
|
|
7879
8122
|
const { data, mutate: refresh } = hooks.useAccountInfo();
|
|
7880
8123
|
const { wrongNetwork, disabledConnect } = reactApp.useAppContext();
|
|
7881
8124
|
const [update, { isMutating }] = hooks.useMutation("/v1/client/maintenance_config");
|
|
7882
|
-
const [checked, setChecked] =
|
|
8125
|
+
const [checked, setChecked] = React12.useState(false);
|
|
7883
8126
|
const { notification } = hooks.useOrderlyContext();
|
|
7884
8127
|
const [soundAlert, setSoundAlert] = hooks.useLocalStorage(
|
|
7885
8128
|
ORDERLY_ORDER_SOUND_ALERT_KEY,
|
|
7886
8129
|
notification?.orderFilled?.defaultOpen ?? false
|
|
7887
8130
|
);
|
|
7888
|
-
|
|
8131
|
+
React12.useEffect(() => {
|
|
7889
8132
|
setChecked(data?.maintenance_cancel_orders || false);
|
|
7890
8133
|
}, [data]);
|
|
7891
8134
|
const updateCheckState = hooks.useDebouncedCallback((value) => {
|
|
@@ -7998,7 +8241,7 @@ var SettingDesktop = (props) => {
|
|
|
7998
8241
|
};
|
|
7999
8242
|
var SettingMobile = (props) => {
|
|
8000
8243
|
const { t } = i18n.useTranslation();
|
|
8001
|
-
const [open, setOpen] =
|
|
8244
|
+
const [open, setOpen] = React12.useState(false);
|
|
8002
8245
|
const onLanguageChange = () => {
|
|
8003
8246
|
setOpen(true);
|
|
8004
8247
|
};
|
|
@@ -8158,7 +8401,7 @@ var useAssetsColumns = (options) => {
|
|
|
8158
8401
|
const tokensInfo = hooks.useAppStore((state) => state.tokensInfo);
|
|
8159
8402
|
const { namespace } = hooks.useWalletConnector();
|
|
8160
8403
|
const { onTransfer, onConvert } = options;
|
|
8161
|
-
const columns =
|
|
8404
|
+
const columns = React12__default.default.useMemo(() => {
|
|
8162
8405
|
return [
|
|
8163
8406
|
{
|
|
8164
8407
|
title: t("portfolio.overview.column.token"),
|
|
@@ -8267,7 +8510,7 @@ var useAssetsScript = () => {
|
|
|
8267
8510
|
const { getIndexPrice } = hooks.useIndexPricesStream();
|
|
8268
8511
|
const tokensInfo = hooks.useAppStore((state2) => state2.tokensInfo);
|
|
8269
8512
|
const subAccounts = state.subAccounts ?? [];
|
|
8270
|
-
|
|
8513
|
+
React12.useEffect(() => {
|
|
8271
8514
|
if (holding.length > 0) {
|
|
8272
8515
|
subAccount.refresh();
|
|
8273
8516
|
}
|
|
@@ -8276,7 +8519,7 @@ var useAssetsScript = () => {
|
|
|
8276
8519
|
const toggleVisible = () => {
|
|
8277
8520
|
setVisible((visible2) => !visible2);
|
|
8278
8521
|
};
|
|
8279
|
-
const assetsOptions =
|
|
8522
|
+
const assetsOptions = React12.useMemo(() => {
|
|
8280
8523
|
return tokensInfo?.map((item) => ({
|
|
8281
8524
|
label: item.token,
|
|
8282
8525
|
value: item.token
|
|
@@ -8289,7 +8532,7 @@ var useAssetsScript = () => {
|
|
|
8289
8532
|
filteredData: filtered,
|
|
8290
8533
|
onFilter
|
|
8291
8534
|
} = useAssetsMultiFilter(allAccounts);
|
|
8292
|
-
const enhancedFiltered =
|
|
8535
|
+
const enhancedFiltered = React12.useMemo(() => {
|
|
8293
8536
|
return filtered.map((accountData) => {
|
|
8294
8537
|
const enhancedChildren = accountData.children?.map((holding2) => {
|
|
8295
8538
|
const tokenInfo = tokensInfo?.find(
|
|
@@ -8324,7 +8567,7 @@ var useAssetsScript = () => {
|
|
|
8324
8567
|
};
|
|
8325
8568
|
});
|
|
8326
8569
|
}, [filtered, getIndexPrice, tokensInfo]);
|
|
8327
|
-
const handleTransfer =
|
|
8570
|
+
const handleTransfer = React12.useCallback((accountId, token) => {
|
|
8328
8571
|
if (!accountId) {
|
|
8329
8572
|
return;
|
|
8330
8573
|
}
|
|
@@ -8344,7 +8587,7 @@ var useAssetsScript = () => {
|
|
|
8344
8587
|
onTransfer: showTransfer ? handleTransfer : void 0,
|
|
8345
8588
|
onConvert: handleConvert
|
|
8346
8589
|
});
|
|
8347
|
-
const openDepositAndWithdraw =
|
|
8590
|
+
const openDepositAndWithdraw = React12.useCallback(
|
|
8348
8591
|
(viewName) => {
|
|
8349
8592
|
ui.modal.show(uiTransfer.DepositAndWithdrawWithDialogId, {
|
|
8350
8593
|
activeTab: viewName
|
|
@@ -8352,10 +8595,10 @@ var useAssetsScript = () => {
|
|
|
8352
8595
|
},
|
|
8353
8596
|
[]
|
|
8354
8597
|
);
|
|
8355
|
-
const onDeposit =
|
|
8598
|
+
const onDeposit = React12.useCallback(() => {
|
|
8356
8599
|
openDepositAndWithdraw("deposit");
|
|
8357
8600
|
}, []);
|
|
8358
|
-
const onWithdraw =
|
|
8601
|
+
const onWithdraw = React12.useCallback(() => {
|
|
8359
8602
|
openDepositAndWithdraw("withdraw");
|
|
8360
8603
|
}, []);
|
|
8361
8604
|
const dataSource2 = reactApp.useDataTap(enhancedFiltered, {
|
|
@@ -8629,10 +8872,10 @@ var AssetsTableMobile = (props) => {
|
|
|
8629
8872
|
value: "Main accounts" /* MAIN */
|
|
8630
8873
|
};
|
|
8631
8874
|
const ALL_ASSETS = {
|
|
8632
|
-
label: "
|
|
8875
|
+
label: t("common.allAssets"),
|
|
8633
8876
|
value: "all"
|
|
8634
8877
|
};
|
|
8635
|
-
const memoizedOptions =
|
|
8878
|
+
const memoizedOptions = React12.useMemo(() => {
|
|
8636
8879
|
if (Array.isArray(subAccounts) && subAccounts.length) {
|
|
8637
8880
|
return [
|
|
8638
8881
|
ALL_ACCOUNTS,
|
|
@@ -8645,7 +8888,7 @@ var AssetsTableMobile = (props) => {
|
|
|
8645
8888
|
}
|
|
8646
8889
|
return [ALL_ACCOUNTS, MAIN_ACCOUNT];
|
|
8647
8890
|
}, [subAccounts]);
|
|
8648
|
-
const memoizedAssets =
|
|
8891
|
+
const memoizedAssets = React12.useMemo(() => {
|
|
8649
8892
|
return [ALL_ASSETS, ...assetsOptions];
|
|
8650
8893
|
}, [assetsOptions]);
|
|
8651
8894
|
if (!props.canTrade) {
|
|
@@ -8686,7 +8929,7 @@ var AssetsTableMobile = (props) => {
|
|
|
8686
8929
|
}
|
|
8687
8930
|
),
|
|
8688
8931
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "oui-flex oui-flex-col oui-gap-1", children: dataSource2?.map((assets, index) => {
|
|
8689
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
8932
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(React12__default.default.Fragment, { children: [
|
|
8690
8933
|
/* @__PURE__ */ jsxRuntime.jsx(AccountTag, { name: assets.description ?? "sub account" }),
|
|
8691
8934
|
Array.isArray(assets.children) && assets.children.map((child) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
8692
8935
|
AssetMobileItem,
|