sevago-sso-fe 1.0.56 → 1.0.57
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/common/constant/apps.data.d.ts +19 -0
- package/dist/common/constant/hierarchical.constant.d.ts +8 -0
- package/dist/common/utils/index.d.ts +0 -2
- package/dist/common/utils/other/hierarchical.utils.d.ts +1 -0
- package/dist/components/app-grid/app-grid.component.d.ts +1 -3
- package/dist/components/elements/pagination/index.d.ts +1 -0
- package/dist/components/elements/pagination/pagination.element.d.ts +14 -0
- package/dist/components/elements/radio/index.d.ts +1 -0
- package/dist/components/elements/radio/radio-group.element.d.ts +16 -0
- package/dist/components/elements/switch/index.d.ts +2 -0
- package/dist/components/elements/switch/switch-content.element.d.ts +10 -0
- package/dist/components/elements/switch/switch.element.d.ts +7 -0
- package/dist/components/elements/tag/index.d.ts +2 -0
- package/dist/components/elements/tag/tag-on-click.element.d.ts +8 -0
- package/dist/components/elements/tag/tag.element.d.ts +18 -0
- package/dist/components/elements/text-field/index.d.ts +1 -0
- package/dist/components/elements/text-field/text-field-date.element.d.ts +0 -0
- package/dist/components/elements/text-field/text-field-label.element.d.ts +9 -0
- package/dist/components/elements/text-field/text-field-month-year.element.d.ts +0 -0
- package/dist/components/elements/text-field/text-field-number.element.d.ts +0 -0
- package/dist/components/elements/text-field/text-field-search-custom.element.d.ts +9 -0
- package/dist/components/elements/text-field/text-field-search.element.d.ts +9 -0
- package/dist/components/elements/text-field/text-field-select-search-object.element.d.ts +0 -0
- package/dist/components/elements/text-field/text-field-select-search.element.d.ts +0 -0
- package/dist/components/elements/text-field/text-field.element.d.ts +13 -0
- package/dist/components/elements/text-field/text-highlight.element.d.ts +3 -0
- package/dist/components/elements/tooltip/index.d.ts +2 -0
- package/dist/components/elements/tooltip/tooltip-on-click.element.d.ts +7 -0
- package/dist/components/elements/tooltip/tooltip-on-hover.element.d.ts +9 -0
- package/dist/components/elements/typography/typography-grid-info-row.component.d.ts +14 -0
- package/dist/components/elements/typography/typography-info-row.component.d.ts +11 -0
- package/dist/components/elements/typography/typography-info-user.component.d.ts +19 -0
- package/dist/components/elements/wrapper/index.d.ts +3 -0
- package/dist/components/elements/wrapper/wrapper-chart.element.d.ts +9 -0
- package/dist/components/elements/wrapper/wrapper-content.element.d.ts +18 -0
- package/dist/components/elements/wrapper/wrapper.element.d.ts +23 -0
- package/dist/components/sidebar/apps-sidebar.component.d.ts +2 -0
- package/dist/components/sidebar/system-monitor-sidebar.part.d.ts +2 -0
- package/dist/components/system-monitor/system-monitor.screen.d.ts +2 -0
- package/dist/index.cjs.js +159 -161
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +160 -162
- package/dist/index.esm.js.map +1 -1
- package/package.json +1 -1
- package/dist/common/utils/delay.utils.d.ts +0 -1
- package/dist/common/utils/string.utils.d.ts +0 -10
package/dist/index.cjs.js
CHANGED
|
@@ -89,6 +89,7 @@ const APP_GROUP_COLOR = {
|
|
|
89
89
|
]: "#EB6262"
|
|
90
90
|
};
|
|
91
91
|
const SSO = {
|
|
92
|
+
local: "http://localhost:6000",
|
|
92
93
|
develop: "https://dev.account.sevago.local",
|
|
93
94
|
staging: "https://sta.account.sevago.local",
|
|
94
95
|
production: "https://account.sevago.com.vn"
|
|
@@ -97,9 +98,10 @@ const APP_OBJ = {
|
|
|
97
98
|
// GREEN
|
|
98
99
|
E_HIRING: {
|
|
99
100
|
path: {
|
|
101
|
+
local: "http://localhost:6004/e-hiring",
|
|
100
102
|
develop: "https://dev.admin.office.sevago.local/e-hiring",
|
|
101
103
|
staging: "https://sta.admin.office.sevago.local/e-hiring",
|
|
102
|
-
production: "https://admin.office.sevago.
|
|
104
|
+
production: "https://admin.office.sevago.com.vn/e-hiring"
|
|
103
105
|
},
|
|
104
106
|
icon: sevagoEHiringIcon,
|
|
105
107
|
content: "Sevago - Tuyển dụng",
|
|
@@ -111,9 +113,10 @@ const APP_OBJ = {
|
|
|
111
113
|
},
|
|
112
114
|
HR: {
|
|
113
115
|
path: {
|
|
116
|
+
local: "http://localhost:6004/hr",
|
|
114
117
|
develop: "https://dev.admin.office.sevago.local/hr",
|
|
115
118
|
staging: "https://sta.admin.office.sevago.local/hr",
|
|
116
|
-
production: "https://admin.office.sevago.
|
|
119
|
+
production: "https://admin.office.sevago.com.vn/hr"
|
|
117
120
|
},
|
|
118
121
|
icon: sevagoHrmIcon,
|
|
119
122
|
content: "Sevago - Nhân sự",
|
|
@@ -125,9 +128,10 @@ const APP_OBJ = {
|
|
|
125
128
|
},
|
|
126
129
|
PAYROLL: {
|
|
127
130
|
path: {
|
|
131
|
+
local: "http://localhost:6004/payroll",
|
|
128
132
|
develop: "https://dev.admin.office.sevago.local/payroll",
|
|
129
133
|
staging: "https://sta.admin.office.sevago.local/payroll",
|
|
130
|
-
production: "https://admin.office.sevago.
|
|
134
|
+
production: "https://admin.office.sevago.com.vn/payroll"
|
|
131
135
|
},
|
|
132
136
|
icon: sevagoPayrollIcon,
|
|
133
137
|
content: "Sevago - Lương",
|
|
@@ -139,9 +143,10 @@ const APP_OBJ = {
|
|
|
139
143
|
},
|
|
140
144
|
ORG: {
|
|
141
145
|
path: {
|
|
146
|
+
local: "http://localhost:6004/org",
|
|
142
147
|
develop: "https://dev.admin.office.sevago.local/org",
|
|
143
148
|
staging: "https://sta.admin.office.sevago.local/org",
|
|
144
|
-
production: "https://admin.office.sevago.
|
|
149
|
+
production: "https://admin.office.sevago.com.vn/org"
|
|
145
150
|
},
|
|
146
151
|
icon: sevagoChartIcon,
|
|
147
152
|
content: "Sevago - Tổ chức",
|
|
@@ -153,9 +158,10 @@ const APP_OBJ = {
|
|
|
153
158
|
},
|
|
154
159
|
CHECKIN: {
|
|
155
160
|
path: {
|
|
161
|
+
local: "http://localhost:6004/checkin",
|
|
156
162
|
develop: "https://dev.admin.office.sevago.local/checkin",
|
|
157
163
|
staging: "https://sta.admin.office.sevago.local/checkin",
|
|
158
|
-
production: "https://admin.office.sevago.
|
|
164
|
+
production: "https://admin.office.sevago.com.vn/checkin"
|
|
159
165
|
},
|
|
160
166
|
icon: sevagoCheckinIcon,
|
|
161
167
|
content: "Sevago - Chấm công",
|
|
@@ -168,9 +174,10 @@ const APP_OBJ = {
|
|
|
168
174
|
// YELLOW
|
|
169
175
|
CHAT: {
|
|
170
176
|
path: {
|
|
177
|
+
local: "http://localhost:6004/chat",
|
|
171
178
|
develop: "https://dev.admin.office.sevago.local/chat",
|
|
172
179
|
staging: "https://sta.admin.office.sevago.local/chat",
|
|
173
|
-
production: "https://admin.office.sevago.
|
|
180
|
+
production: "https://admin.office.sevago.com.vn/chat"
|
|
174
181
|
},
|
|
175
182
|
// Chat
|
|
176
183
|
icon: sevagoMessageIcon,
|
|
@@ -183,9 +190,10 @@ const APP_OBJ = {
|
|
|
183
190
|
},
|
|
184
191
|
TRAINING: {
|
|
185
192
|
path: {
|
|
193
|
+
local: "http://localhost:6004/training",
|
|
186
194
|
develop: "https://dev.admin.office.sevago.local/training",
|
|
187
195
|
staging: "https://sta.admin.office.sevago.local/training",
|
|
188
|
-
production: "https://admin.office.sevago.
|
|
196
|
+
production: "https://admin.office.sevago.com.vn/training"
|
|
189
197
|
},
|
|
190
198
|
// Đào tạo
|
|
191
199
|
icon: sevagoTrainingIcon,
|
|
@@ -198,9 +206,10 @@ const APP_OBJ = {
|
|
|
198
206
|
},
|
|
199
207
|
FORM: {
|
|
200
208
|
path: {
|
|
209
|
+
local: "http://localhost:6004/form",
|
|
201
210
|
develop: "https://dev.admin.office.sevago.local/form",
|
|
202
211
|
staging: "https://sta.admin.office.sevago.local/form",
|
|
203
|
-
production: "https://admin.office.sevago.
|
|
212
|
+
production: "https://admin.office.sevago.com.vn/form"
|
|
204
213
|
},
|
|
205
214
|
// Mẫu
|
|
206
215
|
icon: sevagoFormIcon,
|
|
@@ -213,9 +222,10 @@ const APP_OBJ = {
|
|
|
213
222
|
},
|
|
214
223
|
INSIDE: {
|
|
215
224
|
path: {
|
|
225
|
+
local: "http://localhost:6004/inside",
|
|
216
226
|
develop: "https://dev.admin.office.sevago.local/inside",
|
|
217
227
|
staging: "https://sta.admin.office.sevago.local/inside",
|
|
218
|
-
production: "https://admin.office.sevago.
|
|
228
|
+
production: "https://admin.office.sevago.com.vn/inside"
|
|
219
229
|
},
|
|
220
230
|
// Truyền Thông và CSNV
|
|
221
231
|
icon: sevagoInsideIcon,
|
|
@@ -228,9 +238,10 @@ const APP_OBJ = {
|
|
|
228
238
|
},
|
|
229
239
|
BOOKING: {
|
|
230
240
|
path: {
|
|
241
|
+
local: "http://localhost:6004/booking",
|
|
231
242
|
develop: "https://dev.admin.office.sevago.local/booking",
|
|
232
243
|
staging: "https://sta.admin.office.sevago.local/booking",
|
|
233
|
-
production: "https://admin.office.sevago.
|
|
244
|
+
production: "https://admin.office.sevago.com.vn/booking"
|
|
234
245
|
},
|
|
235
246
|
icon: sevagoInsideIcon,
|
|
236
247
|
content: "Sevago - Booking",
|
|
@@ -243,9 +254,10 @@ const APP_OBJ = {
|
|
|
243
254
|
// BLUE
|
|
244
255
|
PROJECT: {
|
|
245
256
|
path: {
|
|
257
|
+
local: "http://localhost:6004/project",
|
|
246
258
|
develop: "https://dev.admin.office.sevago.local/project",
|
|
247
259
|
staging: "https://sta.admin.office.sevago.local/project",
|
|
248
|
-
production: "https://admin.office.sevago.
|
|
260
|
+
production: "https://admin.office.sevago.com.vn/project"
|
|
249
261
|
},
|
|
250
262
|
icon: sevagoProjectIcon,
|
|
251
263
|
content: "Sevago - Dự án",
|
|
@@ -257,9 +269,10 @@ const APP_OBJ = {
|
|
|
257
269
|
},
|
|
258
270
|
REQUEST: {
|
|
259
271
|
path: {
|
|
272
|
+
local: "http://localhost:6004/request",
|
|
260
273
|
develop: "https://dev.admin.office.sevago.local/request",
|
|
261
274
|
staging: "https://sta.admin.office.sevago.local/request",
|
|
262
|
-
production: "https://admin.office.sevago.
|
|
275
|
+
production: "https://admin.office.sevago.com.vn/request"
|
|
263
276
|
},
|
|
264
277
|
icon: sevagoRequestIcon,
|
|
265
278
|
content: "Sevago - Đề xuất",
|
|
@@ -271,9 +284,10 @@ const APP_OBJ = {
|
|
|
271
284
|
},
|
|
272
285
|
TRACKING: {
|
|
273
286
|
path: {
|
|
287
|
+
local: "http://localhost:6004/process",
|
|
274
288
|
develop: "https://dev.admin.office.sevago.local/process",
|
|
275
289
|
staging: "https://sta.admin.office.sevago.local/process",
|
|
276
|
-
production: "https://admin.office.sevago.
|
|
290
|
+
production: "https://admin.office.sevago.com.vn/process"
|
|
277
291
|
},
|
|
278
292
|
//
|
|
279
293
|
icon: sevagoIcon,
|
|
@@ -289,9 +303,10 @@ const APP_OBJ = {
|
|
|
289
303
|
},
|
|
290
304
|
PROCESS: {
|
|
291
305
|
path: {
|
|
306
|
+
local: "http://localhost:6004/workflow",
|
|
292
307
|
develop: "https://dev.admin.office.sevago.local/workflow",
|
|
293
308
|
staging: "https://sta.admin.office.sevago.local/workflow",
|
|
294
|
-
production: "https://admin.office.sevago.
|
|
309
|
+
production: "https://admin.office.sevago.com.vn/workflow"
|
|
295
310
|
},
|
|
296
311
|
// Quy trình
|
|
297
312
|
icon: sevagoIcon,
|
|
@@ -305,6 +320,7 @@ const APP_OBJ = {
|
|
|
305
320
|
// RED
|
|
306
321
|
FORMULA_PRICE: {
|
|
307
322
|
path: {
|
|
323
|
+
local: "http://localhost:6005",
|
|
308
324
|
develop: "https://dev.formula-price.sevago.local",
|
|
309
325
|
staging: "https://sta.formula-price.sevago.local",
|
|
310
326
|
production: "https://formula-price.sevago.local"
|
|
@@ -319,9 +335,10 @@ const APP_OBJ = {
|
|
|
319
335
|
},
|
|
320
336
|
E_CATALOGUE: {
|
|
321
337
|
path: {
|
|
338
|
+
local: "http://localhost:6002",
|
|
322
339
|
develop: "https://dev.admin.e-catalogue.sevago.local",
|
|
323
340
|
staging: "https://sta.admin.e-catalogue.sevago.local",
|
|
324
|
-
production: "https://admin.e-catalogue.sevago.
|
|
341
|
+
production: "https://admin.e-catalogue.sevago.com.vn"
|
|
325
342
|
},
|
|
326
343
|
// E-Catalogue
|
|
327
344
|
icon: sevagoIcon,
|
|
@@ -335,6 +352,7 @@ const APP_OBJ = {
|
|
|
335
352
|
// PINK
|
|
336
353
|
LANDING_PAGE: {
|
|
337
354
|
path: {
|
|
355
|
+
local: "http://localhost:6006",
|
|
338
356
|
develop: "https://dev.admin.landing-page.sevago.local",
|
|
339
357
|
staging: "https://sta.admin.landing-page.sevago.local",
|
|
340
358
|
production: "https://admin.landing-page.sevago.com.vn"
|
|
@@ -1427,54 +1445,6 @@ const getCurrentEnvironment = () => {
|
|
|
1427
1445
|
if (hostname.includes("sta.")) return "staging";
|
|
1428
1446
|
return "production";
|
|
1429
1447
|
};
|
|
1430
|
-
const throttle = (func, limit) => {
|
|
1431
|
-
let lastFunc;
|
|
1432
|
-
let lastRan;
|
|
1433
|
-
return (...args) => {
|
|
1434
|
-
if (!lastRan) {
|
|
1435
|
-
func(...args);
|
|
1436
|
-
lastRan = Date.now();
|
|
1437
|
-
} else {
|
|
1438
|
-
clearTimeout(lastFunc);
|
|
1439
|
-
lastFunc = setTimeout(() => {
|
|
1440
|
-
if (Date.now() - lastRan >= limit) {
|
|
1441
|
-
func(...args);
|
|
1442
|
-
lastRan = Date.now();
|
|
1443
|
-
}
|
|
1444
|
-
}, limit - (Date.now() - lastRan));
|
|
1445
|
-
}
|
|
1446
|
-
};
|
|
1447
|
-
};
|
|
1448
|
-
const stringToColor = (string) => {
|
|
1449
|
-
let hash = 0;
|
|
1450
|
-
let i;
|
|
1451
|
-
for (i = 0; i < string.length; i += 1) {
|
|
1452
|
-
hash = string.charCodeAt(i) + ((hash << 5) - hash);
|
|
1453
|
-
}
|
|
1454
|
-
let color2 = "#";
|
|
1455
|
-
for (i = 0; i < 3; i += 1) {
|
|
1456
|
-
const value = hash >> i * 8 & 255;
|
|
1457
|
-
color2 += `00${value.toString(16)}`.slice(-2);
|
|
1458
|
-
}
|
|
1459
|
-
return color2;
|
|
1460
|
-
};
|
|
1461
|
-
const lightenColor = (color2, percentage) => {
|
|
1462
|
-
const amt = Math.round(2.55 * percentage);
|
|
1463
|
-
const R = parseInt(color2.substring(1, 3), 16) + amt;
|
|
1464
|
-
const G = parseInt(color2.substring(3, 5), 16) + amt;
|
|
1465
|
-
const B = parseInt(color2.substring(5, 7), 16) + amt;
|
|
1466
|
-
return "#" + (16777216 + (R < 255 ? R < 0 ? 0 : R : 255) * 65536 + (G < 255 ? G < 0 ? 0 : G : 255) * 256 + (B < 255 ? B < 0 ? 0 : B : 255)).toString(16).slice(1);
|
|
1467
|
-
};
|
|
1468
|
-
const extractNumberAtStartString = (string) => {
|
|
1469
|
-
const match = string.match(/^\d+(\.\d+)?/);
|
|
1470
|
-
return match ? parseFloat(match[0]) : 0;
|
|
1471
|
-
};
|
|
1472
|
-
const stripHtml = (html) => {
|
|
1473
|
-
const tempDiv = document.createElement("div");
|
|
1474
|
-
tempDiv.innerHTML = html;
|
|
1475
|
-
return tempDiv.textContent || tempDiv.innerText || "";
|
|
1476
|
-
};
|
|
1477
|
-
const getErrorMessage = (e) => e?.message ?? "Đã xảy ra lỗi không xác định!";
|
|
1478
1448
|
function getDefaultExportFromCjs(x) {
|
|
1479
1449
|
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x;
|
|
1480
1450
|
}
|
|
@@ -14680,12 +14650,11 @@ const AppGrid = ({
|
|
|
14680
14650
|
rows = 3,
|
|
14681
14651
|
iconSize = 80,
|
|
14682
14652
|
iconRadius = 7,
|
|
14683
|
-
iconShadow = `0 ${PADDING_GAP_ITEM_SMALL} ${PADDING_GAP_LAYOUT} ${BORDER_COLOR_CARD}`,
|
|
14684
14653
|
gap: gap2 = PADDING_GAP_ITEM,
|
|
14685
14654
|
titleVariant = "subtitle1",
|
|
14686
14655
|
titleColor,
|
|
14687
14656
|
showPagination = true,
|
|
14688
|
-
|
|
14657
|
+
onClickApp
|
|
14689
14658
|
}) => {
|
|
14690
14659
|
const theme = useTheme();
|
|
14691
14660
|
const pageSize = Math.max(1, columns * Math.max(1, rows));
|
|
@@ -14697,12 +14666,6 @@ const AppGrid = ({
|
|
|
14697
14666
|
const start = page * pageSize;
|
|
14698
14667
|
const end = start + pageSize;
|
|
14699
14668
|
const visibleApps = totalPages > 1 ? apps.slice(start, end) : apps;
|
|
14700
|
-
const getPath2 = (url) => {
|
|
14701
|
-
if (url.startsWith("http")) {
|
|
14702
|
-
return new URL(url).pathname;
|
|
14703
|
-
}
|
|
14704
|
-
return url.startsWith("/") ? url : `/${url}`;
|
|
14705
|
-
};
|
|
14706
14669
|
return /* @__PURE__ */ jsxRuntime.jsxs(material.Box, { sx: { position: "relative" }, children: [
|
|
14707
14670
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
14708
14671
|
material.Box,
|
|
@@ -14713,79 +14676,51 @@ const AppGrid = ({
|
|
|
14713
14676
|
gap: gap2
|
|
14714
14677
|
},
|
|
14715
14678
|
children: visibleApps.map((app, index) => {
|
|
14716
|
-
|
|
14717
|
-
|
|
14718
|
-
Environment.PRODUCTION,
|
|
14719
|
-
Environment.STAGING,
|
|
14720
|
-
Environment.DEVELOP
|
|
14721
|
-
].map((e) => app.path?.[e]).find((url) => url) || "";
|
|
14722
|
-
const isEnvValid = Object.values(Environment).includes(
|
|
14723
|
-
env
|
|
14724
|
-
);
|
|
14725
|
-
const absoluteUrl = appUrl && typeof appUrl === "string" ? !isEnvValid ? `${window.location.origin}${getPath2(appUrl)}` : appUrl.startsWith("http") ? appUrl : `${window.location.origin}${getPath2(appUrl)}` : "#";
|
|
14726
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
14727
|
-
"a",
|
|
14679
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
14680
|
+
MotionBox,
|
|
14728
14681
|
{
|
|
14729
|
-
|
|
14730
|
-
|
|
14731
|
-
|
|
14732
|
-
|
|
14733
|
-
|
|
14734
|
-
|
|
14735
|
-
|
|
14736
|
-
|
|
14682
|
+
preset: "staggerItem",
|
|
14683
|
+
index,
|
|
14684
|
+
hover: true,
|
|
14685
|
+
sx: {
|
|
14686
|
+
cursor: "pointer",
|
|
14687
|
+
display: "flex",
|
|
14688
|
+
flex: 1,
|
|
14689
|
+
alignItems: "center",
|
|
14690
|
+
flexDirection: "column"
|
|
14737
14691
|
},
|
|
14738
|
-
|
|
14739
|
-
|
|
14740
|
-
|
|
14741
|
-
|
|
14742
|
-
|
|
14743
|
-
|
|
14744
|
-
|
|
14745
|
-
|
|
14746
|
-
|
|
14747
|
-
|
|
14748
|
-
|
|
14749
|
-
|
|
14750
|
-
|
|
14751
|
-
|
|
14752
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
14753
|
-
material.Box,
|
|
14754
|
-
{
|
|
14755
|
-
sx: {
|
|
14756
|
-
width: iconSize,
|
|
14757
|
-
height: iconSize,
|
|
14758
|
-
borderRadius: iconRadius,
|
|
14759
|
-
mb: 1.5,
|
|
14760
|
-
display: "flex",
|
|
14761
|
-
alignItems: "center",
|
|
14762
|
-
justifyContent: "center",
|
|
14763
|
-
background: app.color,
|
|
14764
|
-
boxShadow: appUrl === window.location.origin ? `0 0 0 1px ${theme.palette.primary.main}, ${iconShadow}` : iconShadow
|
|
14765
|
-
},
|
|
14766
|
-
children: typeof app.icon === "string" && app.icon && /* @__PURE__ */ jsxRuntime.jsx(
|
|
14767
|
-
ImageElement,
|
|
14768
|
-
{
|
|
14769
|
-
sx: { width: iconSize * 0.56, height: iconSize * 0.56 },
|
|
14770
|
-
url: app.icon,
|
|
14771
|
-
sizeType: ImageSizeType.SQUARE
|
|
14772
|
-
}
|
|
14773
|
-
)
|
|
14774
|
-
}
|
|
14775
|
-
),
|
|
14776
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
14777
|
-
material.Typography,
|
|
14692
|
+
onClick: () => onClickApp(app),
|
|
14693
|
+
children: [
|
|
14694
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
14695
|
+
StackRowAlignJustCenter,
|
|
14696
|
+
{
|
|
14697
|
+
sx: {
|
|
14698
|
+
width: iconSize,
|
|
14699
|
+
height: iconSize,
|
|
14700
|
+
borderRadius: iconRadius,
|
|
14701
|
+
mb: 1.5,
|
|
14702
|
+
background: app.color
|
|
14703
|
+
},
|
|
14704
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
14705
|
+
ImageElement,
|
|
14778
14706
|
{
|
|
14779
|
-
|
|
14780
|
-
|
|
14781
|
-
|
|
14707
|
+
sx: { width: iconSize * 0.56, height: iconSize * 0.56 },
|
|
14708
|
+
url: app.icon,
|
|
14709
|
+
sizeType: ImageSizeType.SQUARE
|
|
14782
14710
|
}
|
|
14783
14711
|
)
|
|
14784
|
-
|
|
14785
|
-
|
|
14786
|
-
|
|
14787
|
-
|
|
14788
|
-
|
|
14712
|
+
}
|
|
14713
|
+
),
|
|
14714
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
14715
|
+
material.Typography,
|
|
14716
|
+
{
|
|
14717
|
+
variant: titleVariant,
|
|
14718
|
+
sx: { color: titleColor ?? theme.palette.common.white },
|
|
14719
|
+
children: app.content
|
|
14720
|
+
}
|
|
14721
|
+
)
|
|
14722
|
+
]
|
|
14723
|
+
}
|
|
14789
14724
|
);
|
|
14790
14725
|
})
|
|
14791
14726
|
}
|
|
@@ -16073,14 +16008,11 @@ const TimeAgoComponent = ({
|
|
|
16073
16008
|
time: time2,
|
|
16074
16009
|
hasText
|
|
16075
16010
|
}) => {
|
|
16076
|
-
function getLimitLineCss2(arg0) {
|
|
16077
|
-
throw new Error("Function not implemented.");
|
|
16078
|
-
}
|
|
16079
16011
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
16080
16012
|
material.Typography,
|
|
16081
16013
|
{
|
|
16082
16014
|
variant: "caption",
|
|
16083
|
-
sx: { ...
|
|
16015
|
+
sx: { ...getLimitLineCss(1), color: "text.disabled", lineHeight: 1.2 },
|
|
16084
16016
|
children: (hasText ? "Cập nhật lúc " : "") + getTimeAgo(time2)
|
|
16085
16017
|
}
|
|
16086
16018
|
);
|
|
@@ -17012,21 +16944,90 @@ const RadioElement = ({
|
|
|
17012
16944
|
}
|
|
17013
16945
|
);
|
|
17014
16946
|
};
|
|
16947
|
+
const RadioGroupElement = ({
|
|
16948
|
+
name,
|
|
16949
|
+
direction = "row",
|
|
16950
|
+
label,
|
|
16951
|
+
disabled,
|
|
16952
|
+
iconLabel = "event_list",
|
|
16953
|
+
defaultValue,
|
|
16954
|
+
value,
|
|
16955
|
+
onChange,
|
|
16956
|
+
children,
|
|
16957
|
+
required = false,
|
|
16958
|
+
sx = {}
|
|
16959
|
+
}) => {
|
|
16960
|
+
const change = (event) => {
|
|
16961
|
+
onChange && onChange({ target: { name, value: event.target.value || void 0 } });
|
|
16962
|
+
};
|
|
16963
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
16964
|
+
material.FormControl,
|
|
16965
|
+
{
|
|
16966
|
+
disabled,
|
|
16967
|
+
sx: { gap: PADDING_GAP_ITEM },
|
|
16968
|
+
onChange: change,
|
|
16969
|
+
children: [
|
|
16970
|
+
label && /* @__PURE__ */ jsxRuntime.jsx(
|
|
16971
|
+
material.InputLabel,
|
|
16972
|
+
{
|
|
16973
|
+
shrink: true,
|
|
16974
|
+
required,
|
|
16975
|
+
sx: {
|
|
16976
|
+
transform: "translate(0px , -9px) scale(0.75)",
|
|
16977
|
+
zIndex: 2,
|
|
16978
|
+
display: "flex"
|
|
16979
|
+
},
|
|
16980
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(StackLabel, { children: [
|
|
16981
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
16982
|
+
IconElement,
|
|
16983
|
+
{
|
|
16984
|
+
icon: iconLabel,
|
|
16985
|
+
sx: { fontSize: TEXT_FIELD.FONT_SIZE_LABEL }
|
|
16986
|
+
}
|
|
16987
|
+
),
|
|
16988
|
+
label
|
|
16989
|
+
] })
|
|
16990
|
+
}
|
|
16991
|
+
),
|
|
16992
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
16993
|
+
material.RadioGroup,
|
|
16994
|
+
{
|
|
16995
|
+
name,
|
|
16996
|
+
defaultValue,
|
|
16997
|
+
value,
|
|
16998
|
+
sx: {
|
|
16999
|
+
flexDirection: direction,
|
|
17000
|
+
paddingTop: label ? "calc(8.5px + 1.5px)" : 0,
|
|
17001
|
+
// 8.5 lấy từ default theme không phải tự nhiên mà có
|
|
17002
|
+
gap: PADDING_GAP_LAYOUT,
|
|
17003
|
+
...sx
|
|
17004
|
+
},
|
|
17005
|
+
children
|
|
17006
|
+
}
|
|
17007
|
+
)
|
|
17008
|
+
]
|
|
17009
|
+
}
|
|
17010
|
+
);
|
|
17011
|
+
};
|
|
17015
17012
|
const AppsSidebar = ({
|
|
17016
17013
|
isOpen,
|
|
17017
17014
|
onClose,
|
|
17018
17015
|
position = "left",
|
|
17019
17016
|
blacklist = [],
|
|
17020
|
-
env
|
|
17017
|
+
env,
|
|
17018
|
+
onClickApp
|
|
17021
17019
|
}) => {
|
|
17022
17020
|
if (!isOpen) return null;
|
|
17023
17021
|
const theme = useTheme();
|
|
17024
|
-
const appsGroupObj = Object.values(APP_OBJ).reduce(
|
|
17025
|
-
|
|
17026
|
-
|
|
17027
|
-
|
|
17028
|
-
|
|
17029
|
-
|
|
17022
|
+
const appsGroupObj = Object.values(APP_OBJ).reduce(
|
|
17023
|
+
(r, e) => {
|
|
17024
|
+
if (blacklist.includes(e.path[env])) return r;
|
|
17025
|
+
if (r[e.group]) r[e.group].push(e);
|
|
17026
|
+
else r[e.group] = [e];
|
|
17027
|
+
return r;
|
|
17028
|
+
},
|
|
17029
|
+
{}
|
|
17030
|
+
);
|
|
17030
17031
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
17031
17032
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
17032
17033
|
material.Box,
|
|
@@ -17121,7 +17122,7 @@ const AppsSidebar = ({
|
|
|
17121
17122
|
captionVariant: "caption",
|
|
17122
17123
|
titleColor: theme.palette.grey[800],
|
|
17123
17124
|
captionColor: theme.palette.grey[600],
|
|
17124
|
-
|
|
17125
|
+
onClickApp
|
|
17125
17126
|
}
|
|
17126
17127
|
)
|
|
17127
17128
|
]
|
|
@@ -17133,7 +17134,7 @@ const AppsSidebar = ({
|
|
|
17133
17134
|
)
|
|
17134
17135
|
] });
|
|
17135
17136
|
};
|
|
17136
|
-
const SystemMonitorSidebarPart = ({ position, blacklist, env }) => {
|
|
17137
|
+
const SystemMonitorSidebarPart = ({ position, blacklist, env, onClickApp }) => {
|
|
17137
17138
|
const [open, setOpen] = React.useState(false);
|
|
17138
17139
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
17139
17140
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -17151,14 +17152,16 @@ const SystemMonitorSidebarPart = ({ position, blacklist, env }) => {
|
|
|
17151
17152
|
onClose: () => setOpen(false),
|
|
17152
17153
|
position,
|
|
17153
17154
|
blacklist,
|
|
17154
|
-
env
|
|
17155
|
+
env,
|
|
17156
|
+
onClickApp
|
|
17155
17157
|
}
|
|
17156
17158
|
)
|
|
17157
17159
|
] });
|
|
17158
17160
|
};
|
|
17159
17161
|
const SystemMonitorScreen = ({
|
|
17160
17162
|
blacklist,
|
|
17161
|
-
env
|
|
17163
|
+
env,
|
|
17164
|
+
onClickApp
|
|
17162
17165
|
}) => {
|
|
17163
17166
|
const theme = useTheme();
|
|
17164
17167
|
const [tab, setTab] = React.useState(AppGroup.ALL);
|
|
@@ -17225,7 +17228,7 @@ const SystemMonitorScreen = ({
|
|
|
17225
17228
|
iconSize: 80,
|
|
17226
17229
|
iconRadius: 7,
|
|
17227
17230
|
gap: PADDING_GAP_TAB,
|
|
17228
|
-
|
|
17231
|
+
onClickApp
|
|
17229
17232
|
}
|
|
17230
17233
|
) }, tab)
|
|
17231
17234
|
]
|
|
@@ -17283,6 +17286,7 @@ exports.OPACITY = OPACITY;
|
|
|
17283
17286
|
exports.OTHER = OTHER;
|
|
17284
17287
|
exports.OrderType = OrderType;
|
|
17285
17288
|
exports.RadioElement = RadioElement;
|
|
17289
|
+
exports.RadioGroupElement = RadioGroupElement;
|
|
17286
17290
|
exports.SIZE_EXTRA_LARGE = SIZE_EXTRA_LARGE;
|
|
17287
17291
|
exports.SSO = SSO;
|
|
17288
17292
|
exports.STYLE = style_constant;
|
|
@@ -17323,12 +17327,10 @@ exports.checkEmptyText = checkEmptyText;
|
|
|
17323
17327
|
exports.checkNowYear = checkNowYear;
|
|
17324
17328
|
exports.colorMap = colorMap;
|
|
17325
17329
|
exports.dark = dark$1;
|
|
17326
|
-
exports.extractNumberAtStartString = extractNumberAtStartString;
|
|
17327
17330
|
exports.getCurrentEnvironment = getCurrentEnvironment;
|
|
17328
17331
|
exports.getDate = getDate;
|
|
17329
17332
|
exports.getDateTime = getDateTime;
|
|
17330
17333
|
exports.getDayOffsetPx = getDayOffsetPx;
|
|
17331
|
-
exports.getErrorMessage = getErrorMessage;
|
|
17332
17334
|
exports.getLimitLineCss = getLimitLineCss;
|
|
17333
17335
|
exports.getMonthRangeForYear = getMonthRangeForYear;
|
|
17334
17336
|
exports.getTimeAgo = getTimeAgo;
|
|
@@ -17337,7 +17339,6 @@ exports.isDateString = isDateString;
|
|
|
17337
17339
|
exports.isEmpty = isEmpty;
|
|
17338
17340
|
exports.isSameDateTime = isSameDateTime;
|
|
17339
17341
|
exports.light = light$1;
|
|
17340
|
-
exports.lightenColor = lightenColor;
|
|
17341
17342
|
exports.phoneRegExp = phoneRegExp;
|
|
17342
17343
|
exports.sevagoChartIcon = sevagoChartIcon;
|
|
17343
17344
|
exports.sevagoCheckinIcon = sevagoCheckinIcon;
|
|
@@ -17351,8 +17352,5 @@ exports.sevagoPayrollIcon = sevagoPayrollIcon;
|
|
|
17351
17352
|
exports.sevagoProjectIcon = sevagoProjectIcon;
|
|
17352
17353
|
exports.sevagoRequestIcon = sevagoRequestIcon;
|
|
17353
17354
|
exports.sevagoTrainingIcon = sevagoTrainingIcon;
|
|
17354
|
-
exports.stringToColor = stringToColor;
|
|
17355
|
-
exports.stripHtml = stripHtml;
|
|
17356
|
-
exports.throttle = throttle;
|
|
17357
17355
|
exports.truncateText = truncateText;
|
|
17358
17356
|
//# sourceMappingURL=index.cjs.js.map
|