@abtnode/ux 1.16.13-beta-90ded76f → 1.16.13-beta-ef672597
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/lib/{insights → analytics}/runtime.js +2 -2
- package/lib/{insights → analytics}/traffic.js +82 -17
- package/lib/blocklet/runtime-info.js +2 -2
- package/lib/blocklet/storage/disconnect.js +60 -54
- package/lib/blocklet/storage/preview-nft.js +60 -54
- package/lib/hooks/blocklet.js +25 -8
- package/lib/icons/empty-space-nft.svg +59 -0
- package/lib/locales/en.js +3 -4
- package/lib/locales/zh.js +3 -4
- package/lib/util/spaces.js +2 -1
- package/package.json +14 -13
- /package/lib/{insights → analytics}/card.js +0 -0
- /package/lib/{insights → analytics}/chart.js +0 -0
- /package/lib/{insights → analytics}/cpu.js +0 -0
- /package/lib/{insights → analytics}/disk.js +0 -0
- /package/lib/{insights → analytics}/memory.js +0 -0
|
@@ -150,7 +150,7 @@ function RuntimeInsight() {
|
|
|
150
150
|
fontWeight: 'bold'
|
|
151
151
|
},
|
|
152
152
|
mb: 2,
|
|
153
|
-
children: t('
|
|
153
|
+
children: t('analytics.trend')
|
|
154
154
|
}), blocklet.status === 'running' ? [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {
|
|
155
155
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_runtimeInfo.default, {
|
|
156
156
|
blocklet: blocklet,
|
|
@@ -160,7 +160,7 @@ function RuntimeInsight() {
|
|
|
160
160
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {
|
|
161
161
|
mt: 3,
|
|
162
162
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Datatable.default, {
|
|
163
|
-
title: t('
|
|
163
|
+
title: t('analytics.detail'),
|
|
164
164
|
className: "monitor-table",
|
|
165
165
|
locale: locale,
|
|
166
166
|
data: monitList,
|
|
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = TrafficInsights;
|
|
7
|
+
exports.getDefaultRanges = void 0;
|
|
7
8
|
var _react = require("react");
|
|
8
9
|
var _dayjs = _interopRequireDefault(require("@abtnode/util/lib/dayjs"));
|
|
9
10
|
var _nthArg = _interopRequireDefault(require("lodash/nthArg"));
|
|
@@ -16,13 +17,16 @@ var _CircularProgress = _interopRequireDefault(require("@mui/material/CircularPr
|
|
|
16
17
|
var _Grid = _interopRequireDefault(require("@mui/material/Grid"));
|
|
17
18
|
var _Typography = _interopRequireDefault(require("@mui/material/Typography"));
|
|
18
19
|
var _Button = _interopRequireDefault(require("@mui/material/Button"));
|
|
20
|
+
var _IconButton = _interopRequireDefault(require("@mui/material/IconButton"));
|
|
19
21
|
var _Popover = _interopRequireDefault(require("@mui/material/Popover"));
|
|
22
|
+
var _LaunchOutlined = _interopRequireDefault(require("@mui/icons-material/LaunchOutlined"));
|
|
20
23
|
var _muiDaterangePicker = require("mui-daterange-picker");
|
|
21
24
|
var _xDatePickers = require("@mui/x-date-pickers");
|
|
22
25
|
var _AdapterDayjs = require("@mui/x-date-pickers/AdapterDayjs");
|
|
23
26
|
var _LocalizationProvider = require("@mui/x-date-pickers/LocalizationProvider");
|
|
24
27
|
var _context = require("@arcblock/ux/lib/Locale/context");
|
|
25
28
|
var _constant = require("@abtnode/constant");
|
|
29
|
+
var _dateFns = require("date-fns");
|
|
26
30
|
var _util = require("../util");
|
|
27
31
|
var _node = require("../contexts/node");
|
|
28
32
|
var _chart = _interopRequireDefault(require("./chart"));
|
|
@@ -34,6 +38,44 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
|
|
|
34
38
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
35
39
|
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } /* eslint-disable react/prop-types */ /* eslint-disable react-hooks/exhaustive-deps */
|
|
36
40
|
const noop = (0, _nthArg.default)(0);
|
|
41
|
+
const getDefaultRanges = (date, locale) => [{
|
|
42
|
+
label: 'This Week',
|
|
43
|
+
startDate: (0, _dateFns.startOfWeek)(date, {
|
|
44
|
+
locale
|
|
45
|
+
}),
|
|
46
|
+
endDate: (0, _dateFns.endOfWeek)(date, {
|
|
47
|
+
locale
|
|
48
|
+
})
|
|
49
|
+
}, {
|
|
50
|
+
label: 'Last Week',
|
|
51
|
+
startDate: (0, _dateFns.startOfWeek)((0, _dateFns.addWeeks)(date, -1), {
|
|
52
|
+
locale
|
|
53
|
+
}),
|
|
54
|
+
endDate: (0, _dateFns.endOfWeek)((0, _dateFns.addWeeks)(date, -1), {
|
|
55
|
+
locale
|
|
56
|
+
})
|
|
57
|
+
}, {
|
|
58
|
+
label: 'Last 7 Days',
|
|
59
|
+
startDate: (0, _dateFns.addWeeks)(date, -1),
|
|
60
|
+
endDate: date
|
|
61
|
+
}, {
|
|
62
|
+
label: 'This Month',
|
|
63
|
+
startDate: (0, _dateFns.startOfMonth)(date),
|
|
64
|
+
endDate: (0, _dateFns.endOfMonth)(date)
|
|
65
|
+
}, {
|
|
66
|
+
label: 'Last Month',
|
|
67
|
+
startDate: (0, _dateFns.startOfMonth)((0, _dateFns.addMonths)(date, -1)),
|
|
68
|
+
endDate: (0, _dateFns.endOfMonth)((0, _dateFns.addMonths)(date, -1))
|
|
69
|
+
}, {
|
|
70
|
+
label: 'This Year',
|
|
71
|
+
startDate: (0, _dateFns.startOfYear)(date),
|
|
72
|
+
endDate: (0, _dateFns.endOfYear)(date)
|
|
73
|
+
}, {
|
|
74
|
+
label: 'Last Year',
|
|
75
|
+
startDate: (0, _dateFns.startOfYear)((0, _dateFns.addYears)(date, -1)),
|
|
76
|
+
endDate: (0, _dateFns.endOfYear)((0, _dateFns.addYears)(date, -1))
|
|
77
|
+
}];
|
|
78
|
+
exports.getDefaultRanges = getDefaultRanges;
|
|
37
79
|
function TrafficInsights(_ref) {
|
|
38
80
|
let {
|
|
39
81
|
client,
|
|
@@ -49,6 +91,7 @@ function TrafficInsights(_ref) {
|
|
|
49
91
|
locale
|
|
50
92
|
} = (0, _context.useLocaleContext)();
|
|
51
93
|
const [anchorEl, setAnchorEl] = (0, _react.useState)(null);
|
|
94
|
+
const [loaded, setLoaded] = (0, _react.useState)(false);
|
|
52
95
|
const [date, setDate] = (0, _react.useState)(maxDate);
|
|
53
96
|
const [dateRange, setDateRange] = (0, _react.useState)({
|
|
54
97
|
startDate: (0, _dayjs.default)().subtract(30, 'day').toDate(),
|
|
@@ -107,7 +150,7 @@ function TrafficInsights(_ref) {
|
|
|
107
150
|
};
|
|
108
151
|
const charts = Object.keys(metrics).map(key => ({
|
|
109
152
|
id: "".concat(key, "_chart"),
|
|
110
|
-
title: t("
|
|
153
|
+
title: t("analytics.traffic.".concat(key)),
|
|
111
154
|
current: list.length ? metrics[key](list[0][key]) : 0,
|
|
112
155
|
data: list.map(v => ({
|
|
113
156
|
date: v.date,
|
|
@@ -121,6 +164,18 @@ function TrafficInsights(_ref) {
|
|
|
121
164
|
|
|
122
165
|
// eslint-disable-next-line no-nested-ternary
|
|
123
166
|
const pathPrefix = inService ? _constant.WELLKNOWN_SERVICE_PATH_PREFIX : process.env.NODE_ENV === 'production' ? info.routing.adminPath : '';
|
|
167
|
+
const breakdownUrl = (0, _urlJoin.default)(window.location.origin, pathPrefix, "/api/analytics/traffic?date=".concat((0, _dayjs.default)(date).format('YYYY-MM-DD'), "&did=").concat(did));
|
|
168
|
+
const onRangeChange = range => {
|
|
169
|
+
setDateRange(range);
|
|
170
|
+
setAnchorEl(null);
|
|
171
|
+
};
|
|
172
|
+
const onDateChange = newDate => {
|
|
173
|
+
setDate(newDate.toDate());
|
|
174
|
+
setLoaded(false);
|
|
175
|
+
};
|
|
176
|
+
const onOpenBreakdown = () => {
|
|
177
|
+
window.open(breakdownUrl);
|
|
178
|
+
};
|
|
124
179
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
125
180
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {
|
|
126
181
|
component: "div",
|
|
@@ -132,7 +187,7 @@ function TrafficInsights(_ref) {
|
|
|
132
187
|
fontWeight: 'bold'
|
|
133
188
|
},
|
|
134
189
|
mb: 2,
|
|
135
|
-
children: [t('
|
|
190
|
+
children: [t('analytics.trend'), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {
|
|
136
191
|
onClick: onTriggerClick,
|
|
137
192
|
variant: "outlined",
|
|
138
193
|
size: "small",
|
|
@@ -143,7 +198,7 @@ function TrafficInsights(_ref) {
|
|
|
143
198
|
id: id,
|
|
144
199
|
open: open,
|
|
145
200
|
anchorEl: anchorEl,
|
|
146
|
-
onClose:
|
|
201
|
+
onClose: () => setAnchorEl(null),
|
|
147
202
|
anchorOrigin: {
|
|
148
203
|
vertical: 'bottom',
|
|
149
204
|
horizontal: 'left'
|
|
@@ -152,7 +207,8 @@ function TrafficInsights(_ref) {
|
|
|
152
207
|
open: true,
|
|
153
208
|
toggle: onTriggerClick,
|
|
154
209
|
maxDate: maxDate,
|
|
155
|
-
|
|
210
|
+
definedRanges: getDefaultRanges(date),
|
|
211
|
+
onChange: onRangeChange
|
|
156
212
|
})
|
|
157
213
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Grid.default, {
|
|
158
214
|
container: true,
|
|
@@ -176,25 +232,34 @@ function TrafficInsights(_ref) {
|
|
|
176
232
|
},
|
|
177
233
|
mt: 4,
|
|
178
234
|
mb: 1,
|
|
179
|
-
children: [t('
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
235
|
+
children: [t('analytics.detail'), /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
|
|
236
|
+
children: [loaded && /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {
|
|
237
|
+
onClick: onOpenBreakdown,
|
|
238
|
+
style: {
|
|
239
|
+
marginRight: 32
|
|
240
|
+
},
|
|
241
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_LaunchOutlined.default, {})
|
|
242
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_LocalizationProvider.LocalizationProvider, {
|
|
243
|
+
dateAdapter: _AdapterDayjs.AdapterDayjs,
|
|
244
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_xDatePickers.DatePicker, {
|
|
245
|
+
disableFuture: true,
|
|
246
|
+
format: "ll",
|
|
247
|
+
value: (0, _dayjs.default)(date),
|
|
248
|
+
onChange: onDateChange,
|
|
249
|
+
slotProps: {
|
|
250
|
+
textField: {
|
|
251
|
+
size: 'small'
|
|
252
|
+
}
|
|
189
253
|
}
|
|
190
|
-
}
|
|
191
|
-
})
|
|
254
|
+
})
|
|
255
|
+
})]
|
|
192
256
|
})]
|
|
193
257
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactIframe.default, {
|
|
194
|
-
url:
|
|
258
|
+
url: breakdownUrl,
|
|
195
259
|
width: "100%",
|
|
196
260
|
height: "100%",
|
|
197
261
|
frameBorder: 0,
|
|
262
|
+
onLoad: () => setLoaded(true),
|
|
198
263
|
styles: {
|
|
199
264
|
border: 0,
|
|
200
265
|
minHeight: '400vh'
|
|
@@ -8,8 +8,8 @@ var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
|
8
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
9
|
var _Typography = _interopRequireDefault(require("@mui/material/Typography"));
|
|
10
10
|
var _Grid = _interopRequireDefault(require("@mui/material/Grid"));
|
|
11
|
-
var _cpu = _interopRequireDefault(require("../
|
|
12
|
-
var _memory = _interopRequireDefault(require("../
|
|
11
|
+
var _cpu = _interopRequireDefault(require("../analytics/cpu"));
|
|
12
|
+
var _memory = _interopRequireDefault(require("../analytics/memory"));
|
|
13
13
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
14
14
|
var _templateObject;
|
|
15
15
|
const _excluded = ["blocklet", "cpuHistory", "memoryHistory"];
|