@microcosmmoney/portal-react 3.13.0 → 3.13.1
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/main-portal/components/mining/MiningModal.js +1 -1
- package/dist/main-portal/components/providers/SolanaWalletProvider.js +1 -1
- package/dist/main-portal/components/resources/public-mining-modal.js +1 -1
- package/dist/main-portal/hooks/useAuth.js +3 -2
- package/dist/main-portal/lib/api/index.d.ts +2 -9
- package/dist/main-portal/lib/api/index.js +17 -210
- package/package.json +1 -1
- package/dist/main-portal/hooks/useMarketData.d.ts +0 -9
- package/dist/main-portal/hooks/useMarketData.js +0 -32
- package/dist/main-portal/hooks/usePriceHistory.d.ts +0 -9
- package/dist/main-portal/hooks/usePriceHistory.js +0 -36
- package/dist/main-portal/lib/analytics/hooks.d.ts +0 -139
- package/dist/main-portal/lib/analytics/hooks.js +0 -277
- package/dist/main-portal/lib/analytics/index.d.ts +0 -2
- package/dist/main-portal/lib/analytics/index.js +0 -19
- package/dist/main-portal/lib/analytics/types.d.ts +0 -611
- package/dist/main-portal/lib/analytics/types.js +0 -2
- package/dist/main-portal/lib/api/account.d.ts +0 -39
- package/dist/main-portal/lib/api/account.js +0 -86
- package/dist/main-portal/lib/api/admin.d.ts +0 -78
- package/dist/main-portal/lib/api/admin.js +0 -195
- package/dist/main-portal/lib/api/analytics.d.ts +0 -217
- package/dist/main-portal/lib/api/analytics.js +0 -55
- package/dist/main-portal/lib/api/dexscreener.d.ts +0 -126
- package/dist/main-portal/lib/api/dexscreener.js +0 -139
- package/dist/main-portal/lib/api/geckoterminal.d.ts +0 -10
- package/dist/main-portal/lib/api/geckoterminal.js +0 -43
- package/dist/main-portal/lib/api/mcc-holders.d.ts +0 -130
- package/dist/main-portal/lib/api/mcc-holders.js +0 -47
- package/dist/main-portal/lib/api/org-service-proxy.d.ts +0 -7
- package/dist/main-portal/lib/api/org-service-proxy.js +0 -55
- package/dist/main-portal/lib/api/strategies.d.ts +0 -101
- package/dist/main-portal/lib/api/strategies.js +0 -87
- package/dist/main-portal/lib/exchanges/config.d.ts +0 -34
- package/dist/main-portal/lib/exchanges/config.js +0 -185
- package/dist/main-portal/lib/exchanges/hooks/index.d.ts +0 -5
- package/dist/main-portal/lib/exchanges/hooks/index.js +0 -10
- package/dist/main-portal/lib/exchanges/hooks/useBinanceData.d.ts +0 -15
- package/dist/main-portal/lib/exchanges/hooks/useBinanceData.js +0 -216
- package/dist/main-portal/lib/exchanges/hooks/useBinanceDialogs.d.ts +0 -32
- package/dist/main-portal/lib/exchanges/hooks/useBinanceDialogs.js +0 -395
- package/dist/main-portal/lib/exchanges/hooks/useUserExchanges.d.ts +0 -15
- package/dist/main-portal/lib/exchanges/hooks/useUserExchanges.js +0 -51
- package/dist/main-portal/lib/exchanges/index.d.ts +0 -4
- package/dist/main-portal/lib/exchanges/index.js +0 -21
- package/dist/main-portal/lib/exchanges/types.d.ts +0 -102
- package/dist/main-portal/lib/exchanges/types.js +0 -2
- package/dist/main-portal/lib/exchanges/utils.d.ts +0 -1
- package/dist/main-portal/lib/exchanges/utils.js +0 -10
- package/dist/main-portal/lib/gcp-secrets.d.ts +0 -7
- package/dist/main-portal/lib/gcp-secrets.js +0 -45
- package/dist/main-portal/lib/mockWallet.d.ts +0 -130
- package/dist/main-portal/lib/mockWallet.js +0 -284
|
@@ -1,277 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// AI-generated · AI-managed · AI-maintained
|
|
3
|
-
'use client';
|
|
4
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
6
|
-
};
|
|
7
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
-
exports.usePnLAnalysis = usePnLAnalysis;
|
|
9
|
-
exports.useOrderSourceAnalysis = useOrderSourceAnalysis;
|
|
10
|
-
exports.useOrderPrefixStats = useOrderPrefixStats;
|
|
11
|
-
exports.useTradingStats = useTradingStats;
|
|
12
|
-
exports.useTradingVolume = useTradingVolume;
|
|
13
|
-
exports.useRiskMetrics = useRiskMetrics;
|
|
14
|
-
exports.useStrategyPerformance = useStrategyPerformance;
|
|
15
|
-
exports.useSymbolAnalysis = useSymbolAnalysis;
|
|
16
|
-
exports.useTimeAnalysis = useTimeAnalysis;
|
|
17
|
-
exports.useCapitalAnalysis = useCapitalAnalysis;
|
|
18
|
-
exports.useFeeAnalysis = useFeeAnalysis;
|
|
19
|
-
exports.useFundingFeeAnalysis = useFundingFeeAnalysis;
|
|
20
|
-
exports.useRealtimeSummary = useRealtimeSummary;
|
|
21
|
-
exports.useRealtimeBySymbol = useRealtimeBySymbol;
|
|
22
|
-
exports.useRecentTrades = useRecentTrades;
|
|
23
|
-
exports.formatAmount = formatAmount;
|
|
24
|
-
exports.formatPercent = formatPercent;
|
|
25
|
-
exports.getPnLColorClass = getPnLColorClass;
|
|
26
|
-
exports.dateRangeToDays = dateRangeToDays;
|
|
27
|
-
exports.dateRangeLabel = dateRangeLabel;
|
|
28
|
-
exports.useStrategiesStatus = useStrategiesStatus;
|
|
29
|
-
exports.useStrategyLiveStatus = useStrategyLiveStatus;
|
|
30
|
-
exports.useAddPositionHistory = useAddPositionHistory;
|
|
31
|
-
exports.useEnergyOrders = useEnergyOrders;
|
|
32
|
-
exports.getHedgeStateColor = getHedgeStateColor;
|
|
33
|
-
exports.getHedgeStateLabel = getHedgeStateLabel;
|
|
34
|
-
exports.useTodayMiningQuota = useTodayMiningQuota;
|
|
35
|
-
exports.useMiningSummary = useMiningSummary;
|
|
36
|
-
exports.useGlobalMiningStats = useGlobalMiningStats;
|
|
37
|
-
exports.formatMCC = formatMCC;
|
|
38
|
-
const swr_1 = __importDefault(require("swr"));
|
|
39
|
-
const api_service_1 = require("../api-service");
|
|
40
|
-
const fetcher = async (url) => {
|
|
41
|
-
return (0, api_service_1.fetchApi)(url);
|
|
42
|
-
};
|
|
43
|
-
const defaultConfig = {
|
|
44
|
-
refreshInterval: 60000,
|
|
45
|
-
revalidateOnFocus: true,
|
|
46
|
-
dedupingInterval: 10000,
|
|
47
|
-
errorRetryCount: 3,
|
|
48
|
-
};
|
|
49
|
-
function usePnLAnalysis(uid, days = 90, contractType = 'usdt', exchange) {
|
|
50
|
-
const params = new URLSearchParams({
|
|
51
|
-
days: days.toString(),
|
|
52
|
-
contract_type: contractType,
|
|
53
|
-
});
|
|
54
|
-
if (exchange && exchange !== 'all') {
|
|
55
|
-
params.append('exchange', exchange);
|
|
56
|
-
}
|
|
57
|
-
return (0, swr_1.default)(uid ? `/analytics/user/${uid}/pnl-analysis?${params}` : null, fetcher, defaultConfig);
|
|
58
|
-
}
|
|
59
|
-
function useOrderSourceAnalysis(uid, dateRange = 'today', symbol, exchange) {
|
|
60
|
-
const params = new URLSearchParams({ date: dateRange });
|
|
61
|
-
if (symbol)
|
|
62
|
-
params.append('symbol', symbol);
|
|
63
|
-
if (exchange && exchange !== 'all')
|
|
64
|
-
params.append('exchange', exchange);
|
|
65
|
-
return (0, swr_1.default)(uid ? `/analytics/user/${uid}/order-source-analysis?${params}` : null, fetcher, defaultConfig);
|
|
66
|
-
}
|
|
67
|
-
function useOrderPrefixStats(uid, dateRange = 'today', symbol, source) {
|
|
68
|
-
const params = new URLSearchParams({ date: dateRange });
|
|
69
|
-
if (symbol)
|
|
70
|
-
params.append('symbol', symbol);
|
|
71
|
-
if (source)
|
|
72
|
-
params.append('source', source);
|
|
73
|
-
return (0, swr_1.default)(uid ? `/analytics/user/${uid}/order-prefix-stats?${params}` : null, fetcher, defaultConfig);
|
|
74
|
-
}
|
|
75
|
-
function useTradingStats(uid, dateRange = '30d', exchange) {
|
|
76
|
-
const params = new URLSearchParams({ date: dateRange });
|
|
77
|
-
if (exchange && exchange !== 'all')
|
|
78
|
-
params.append('exchange', exchange);
|
|
79
|
-
return (0, swr_1.default)(uid ? `/analytics/user/${uid}/trading-stats?${params}` : null, fetcher, defaultConfig);
|
|
80
|
-
}
|
|
81
|
-
function useTradingVolume(uid) {
|
|
82
|
-
return (0, swr_1.default)(uid ? `/analytics/user/${uid}/trading-volume` : null, fetcher, {
|
|
83
|
-
...defaultConfig,
|
|
84
|
-
refreshInterval: 300000,
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
function useRiskMetrics(uid, dateRange = '30d', exchange) {
|
|
88
|
-
const params = new URLSearchParams({ date: dateRange });
|
|
89
|
-
if (exchange && exchange !== 'all')
|
|
90
|
-
params.append('exchange', exchange);
|
|
91
|
-
return (0, swr_1.default)(uid ? `/analytics/user/${uid}/risk-metrics?${params}` : null, fetcher, defaultConfig);
|
|
92
|
-
}
|
|
93
|
-
function useStrategyPerformance(uid, dateRange = '30d', exchange) {
|
|
94
|
-
const params = new URLSearchParams({ date: dateRange });
|
|
95
|
-
if (exchange && exchange !== 'all')
|
|
96
|
-
params.append('exchange', exchange);
|
|
97
|
-
return (0, swr_1.default)(uid ? `/analytics/user/${uid}/strategy-performance?${params}` : null, fetcher, defaultConfig);
|
|
98
|
-
}
|
|
99
|
-
function useSymbolAnalysis(uid, dateRange = '30d', exchange) {
|
|
100
|
-
const params = new URLSearchParams({ date: dateRange });
|
|
101
|
-
if (exchange && exchange !== 'all')
|
|
102
|
-
params.append('exchange', exchange);
|
|
103
|
-
return (0, swr_1.default)(uid ? `/analytics/user/${uid}/symbol-analysis?${params}` : null, fetcher, defaultConfig);
|
|
104
|
-
}
|
|
105
|
-
function useTimeAnalysis(uid, dateRange = '30d', exchange) {
|
|
106
|
-
const params = new URLSearchParams({ date: dateRange });
|
|
107
|
-
if (exchange && exchange !== 'all')
|
|
108
|
-
params.append('exchange', exchange);
|
|
109
|
-
return (0, swr_1.default)(uid ? `/analytics/user/${uid}/time-analysis?${params}` : null, fetcher, defaultConfig);
|
|
110
|
-
}
|
|
111
|
-
function useCapitalAnalysis(uid, dateRange = '30d', exchange) {
|
|
112
|
-
const params = new URLSearchParams({ date: dateRange });
|
|
113
|
-
if (exchange && exchange !== 'all')
|
|
114
|
-
params.append('exchange', exchange);
|
|
115
|
-
return (0, swr_1.default)(uid ? `/analytics/user/${uid}/capital-analysis?${params}` : null, fetcher, defaultConfig);
|
|
116
|
-
}
|
|
117
|
-
function useFeeAnalysis(uid, dateRange = '30d', exchange) {
|
|
118
|
-
const params = new URLSearchParams({ date: dateRange });
|
|
119
|
-
if (exchange && exchange !== 'all')
|
|
120
|
-
params.append('exchange', exchange);
|
|
121
|
-
return (0, swr_1.default)(uid ? `/analytics/user/${uid}/fee-analysis?${params}` : null, fetcher, defaultConfig);
|
|
122
|
-
}
|
|
123
|
-
function useFundingFeeAnalysis(uid, dateRange = '30d', exchange) {
|
|
124
|
-
const params = new URLSearchParams({ date: dateRange });
|
|
125
|
-
if (exchange && exchange !== 'all')
|
|
126
|
-
params.append('exchange', exchange);
|
|
127
|
-
return (0, swr_1.default)(uid ? `/analytics/user/${uid}/funding-fee-analysis?${params}` : null, fetcher, defaultConfig);
|
|
128
|
-
}
|
|
129
|
-
function useRealtimeSummary(uid, refreshInterval = 5000) {
|
|
130
|
-
return (0, swr_1.default)(uid ? `/analytics/user/${uid}/realtime-summary` : null, fetcher, {
|
|
131
|
-
...defaultConfig,
|
|
132
|
-
refreshInterval,
|
|
133
|
-
dedupingInterval: 2000,
|
|
134
|
-
});
|
|
135
|
-
}
|
|
136
|
-
function useRealtimeBySymbol(uid, symbols) {
|
|
137
|
-
const params = symbols ? `?symbols=${symbols.join(',')}` : '';
|
|
138
|
-
return (0, swr_1.default)(uid ? `/analytics/user/${uid}/realtime-by-symbol${params}` : null, fetcher, {
|
|
139
|
-
...defaultConfig,
|
|
140
|
-
refreshInterval: 10000,
|
|
141
|
-
});
|
|
142
|
-
}
|
|
143
|
-
function useRecentTrades(uid, limit = 20) {
|
|
144
|
-
return (0, swr_1.default)(uid ? `/analytics/user/${uid}/recent-trades?limit=${limit}` : null, fetcher, {
|
|
145
|
-
...defaultConfig,
|
|
146
|
-
refreshInterval: 5000,
|
|
147
|
-
});
|
|
148
|
-
}
|
|
149
|
-
function formatAmount(value, options) {
|
|
150
|
-
const { showSign = true, decimals = 2, currency = 'USD' } = options || {};
|
|
151
|
-
const formatted = Math.abs(value).toLocaleString('en-US', {
|
|
152
|
-
minimumFractionDigits: decimals,
|
|
153
|
-
maximumFractionDigits: decimals,
|
|
154
|
-
});
|
|
155
|
-
const sign = showSign ? (value >= 0 ? '+' : '-') : (value < 0 ? '-' : '');
|
|
156
|
-
return `${sign}${formatted} ${currency}`;
|
|
157
|
-
}
|
|
158
|
-
function formatPercent(value, options) {
|
|
159
|
-
const { showSign = true, decimals = 2 } = options || {};
|
|
160
|
-
const sign = showSign ? (value >= 0 ? '+' : '') : '';
|
|
161
|
-
return `${sign}${value.toFixed(decimals)}%`;
|
|
162
|
-
}
|
|
163
|
-
function getPnLColorClass(value) {
|
|
164
|
-
if (value > 0)
|
|
165
|
-
return 'text-green-500';
|
|
166
|
-
if (value < 0)
|
|
167
|
-
return 'text-red-500';
|
|
168
|
-
return 'text-muted-foreground';
|
|
169
|
-
}
|
|
170
|
-
function dateRangeToDays(range) {
|
|
171
|
-
switch (range) {
|
|
172
|
-
case 'today': return 1;
|
|
173
|
-
case '7d': return 7;
|
|
174
|
-
case '30d': return 30;
|
|
175
|
-
case 'all': return 365 * 5;
|
|
176
|
-
default: return 30;
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
function dateRangeLabel(range) {
|
|
180
|
-
switch (range) {
|
|
181
|
-
case 'today': return '今日';
|
|
182
|
-
case '7d': return '近7天';
|
|
183
|
-
case '30d': return '近30天';
|
|
184
|
-
case 'all': return '全部';
|
|
185
|
-
default: return range;
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
function useStrategiesStatus(uid, refreshInterval = 30000, exchange) {
|
|
189
|
-
const params = new URLSearchParams();
|
|
190
|
-
if (uid)
|
|
191
|
-
params.append('uid', uid);
|
|
192
|
-
if (exchange && exchange !== 'all')
|
|
193
|
-
params.append('exchange', exchange);
|
|
194
|
-
return (0, swr_1.default)(uid ? `/analytics/strategies/status?${params}` : null, fetcher, {
|
|
195
|
-
...defaultConfig,
|
|
196
|
-
refreshInterval,
|
|
197
|
-
});
|
|
198
|
-
}
|
|
199
|
-
function useStrategyLiveStatus(strategyId, uid, refreshInterval = 10000) {
|
|
200
|
-
const params = uid ? `?uid=${uid}` : '';
|
|
201
|
-
return (0, swr_1.default)(strategyId ? `/analytics/strategy/${strategyId}/live-status${params}` : null, fetcher, {
|
|
202
|
-
...defaultConfig,
|
|
203
|
-
refreshInterval,
|
|
204
|
-
});
|
|
205
|
-
}
|
|
206
|
-
function useAddPositionHistory(strategyId, uid, options) {
|
|
207
|
-
const { type = 'all', days = 90, limit = 100 } = options || {};
|
|
208
|
-
const params = new URLSearchParams({
|
|
209
|
-
uid: uid || '',
|
|
210
|
-
type,
|
|
211
|
-
days: days.toString(),
|
|
212
|
-
limit: limit.toString(),
|
|
213
|
-
});
|
|
214
|
-
return (0, swr_1.default)(strategyId && uid ? `/analytics/strategy/${strategyId}/add-position-history?${params}` : null, fetcher, defaultConfig);
|
|
215
|
-
}
|
|
216
|
-
function useEnergyOrders(strategyId, includeHistory = true, refreshInterval = 30000) {
|
|
217
|
-
return (0, swr_1.default)(strategyId ? `/analytics/strategy/${strategyId}/energy-orders${includeHistory ? '?include_history=true' : ''}` : null, fetcher, {
|
|
218
|
-
...defaultConfig,
|
|
219
|
-
refreshInterval,
|
|
220
|
-
});
|
|
221
|
-
}
|
|
222
|
-
function getHedgeStateColor(state) {
|
|
223
|
-
switch (state) {
|
|
224
|
-
case 'BALANCED':
|
|
225
|
-
return 'text-green-500';
|
|
226
|
-
case 'LONG_HEAVY':
|
|
227
|
-
case 'SHORT_HEAVY':
|
|
228
|
-
return 'text-yellow-500';
|
|
229
|
-
case 'EXTREME_LONG':
|
|
230
|
-
case 'EXTREME_SHORT':
|
|
231
|
-
return 'text-red-500';
|
|
232
|
-
default:
|
|
233
|
-
return 'text-muted-foreground';
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
function getHedgeStateLabel(state) {
|
|
237
|
-
switch (state) {
|
|
238
|
-
case 'BALANCED':
|
|
239
|
-
return '平衡';
|
|
240
|
-
case 'LONG_HEAVY':
|
|
241
|
-
return '多头偏重';
|
|
242
|
-
case 'SHORT_HEAVY':
|
|
243
|
-
return '空头偏重';
|
|
244
|
-
case 'EXTREME_LONG':
|
|
245
|
-
return '极度多头';
|
|
246
|
-
case 'EXTREME_SHORT':
|
|
247
|
-
return '极度空头';
|
|
248
|
-
default:
|
|
249
|
-
return state || '未知';
|
|
250
|
-
}
|
|
251
|
-
}
|
|
252
|
-
function useTodayMiningQuota(uid, refreshInterval = 30000) {
|
|
253
|
-
return (0, swr_1.default)(uid ? `/analytics/user/${uid}/mining/today` : null, fetcher, {
|
|
254
|
-
...defaultConfig,
|
|
255
|
-
refreshInterval,
|
|
256
|
-
});
|
|
257
|
-
}
|
|
258
|
-
function useMiningSummary(uid) {
|
|
259
|
-
return (0, swr_1.default)(uid ? `/analytics/user/${uid}/mining/summary` : null, fetcher, {
|
|
260
|
-
...defaultConfig,
|
|
261
|
-
refreshInterval: 60000,
|
|
262
|
-
});
|
|
263
|
-
}
|
|
264
|
-
function useGlobalMiningStats() {
|
|
265
|
-
return (0, swr_1.default)('/analytics/mining/global-stats', fetcher, {
|
|
266
|
-
...defaultConfig,
|
|
267
|
-
refreshInterval: 300000,
|
|
268
|
-
});
|
|
269
|
-
}
|
|
270
|
-
function formatMCC(value, options) {
|
|
271
|
-
const { decimals = 2, showSymbol = true } = options || {};
|
|
272
|
-
const formatted = value.toLocaleString('en-US', {
|
|
273
|
-
minimumFractionDigits: decimals,
|
|
274
|
-
maximumFractionDigits: decimals,
|
|
275
|
-
});
|
|
276
|
-
return showSymbol ? `${formatted} MCC` : formatted;
|
|
277
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
// AI-generated · AI-managed · AI-maintained
|
|
18
|
-
__exportStar(require("./types"), exports);
|
|
19
|
-
__exportStar(require("./hooks"), exports);
|