aq-fe-framework 0.2.3 → 0.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/aqModuleIdEnum-CRhuRqot.d.mts +9 -0
- package/dist/{chunk-MSZEQG5H.mjs → chunk-BDL36J6Y.mjs} +344 -251
- package/dist/{chunk-WW55EZ4B.mjs → chunk-CBZXSBNX.mjs} +3 -6
- package/dist/{chunk-ENA4TRWO.mjs → chunk-YMMUWZA3.mjs} +1 -57
- package/dist/components/index.mjs +3 -7
- package/dist/core/index.d.mts +2 -2
- package/dist/core/index.mjs +3 -7
- package/dist/hooks/index.d.mts +3 -3
- package/dist/hooks/index.mjs +1 -3
- package/dist/mantine.module-EDE7MA6Y.module.css +22 -0
- package/dist/modules-features/index.mjs +3 -7
- package/dist/shared/index.d.mts +221 -9
- package/dist/shared/index.mjs +286 -14
- package/dist/stores/index.d.mts +2 -17
- package/dist/stores/index.mjs +1 -4
- package/package.json +1 -17
- package/dist/build-object/index.d.mts +0 -33
- package/dist/build-object/index.mjs +0 -11
- package/dist/chunk-BTITP4TN.mjs +0 -21
- package/dist/chunk-NYAWQRB7.mjs +0 -29
- package/dist/chunk-S5NCYRRY.mjs +0 -105
- package/dist/chunk-VFTEXXA7.mjs +0 -28
- package/dist/const/index.d.mts +0 -36
- package/dist/const/index.mjs +0 -17
- package/dist/const_aqModuleId-DcJjCR3N.d.mts +0 -9
- package/dist/enum/index.d.mts +0 -20
- package/dist/enum/index.mjs +0 -11
- package/dist/zod-schemas/index.d.mts +0 -161
- package/dist/zod-schemas/index.mjs +0 -71
- package/dist/{CustomDataTableAPI-BVA06xYD.d.mts → CustomDataTableAPI-oGo4pFag.d.mts} +2 -2
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
createGenericStore as createGenericStore2,
|
|
3
|
-
useAppStore,
|
|
4
|
-
useStore_Permission,
|
|
5
|
-
useStore_ProjectInfo
|
|
6
|
-
} from "./chunk-WW55EZ4B.mjs";
|
|
7
1
|
import {
|
|
8
2
|
utils_converter_enumToSelectOptions,
|
|
9
3
|
utils_date_dateToDDMMYYYString,
|
|
@@ -22,27 +16,21 @@ import {
|
|
|
22
16
|
utils_mantineReactTable,
|
|
23
17
|
utils_text
|
|
24
18
|
} from "./chunk-G75DH6JW.mjs";
|
|
25
|
-
import {
|
|
26
|
-
createGenericStore
|
|
27
|
-
} from "./chunk-BTITP4TN.mjs";
|
|
28
|
-
import {
|
|
29
|
-
const_object_colors,
|
|
30
|
-
const_object_documentTypes
|
|
31
|
-
} from "./chunk-S5NCYRRY.mjs";
|
|
32
|
-
import {
|
|
33
|
-
enumLabel_gender,
|
|
34
|
-
enum_daysOfWeek
|
|
35
|
-
} from "./chunk-VFTEXXA7.mjs";
|
|
36
19
|
import {
|
|
37
20
|
baseAxios_default,
|
|
38
|
-
createBaseApi,
|
|
39
21
|
useConfig,
|
|
40
22
|
useEditableRows,
|
|
41
23
|
useExportData,
|
|
42
24
|
useMyReactMutation,
|
|
43
25
|
useMyReactQuery,
|
|
44
26
|
useQ_AQ_GetAQModule
|
|
45
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-YMMUWZA3.mjs";
|
|
28
|
+
import {
|
|
29
|
+
createGenericStore,
|
|
30
|
+
useAppStore,
|
|
31
|
+
useStore_Permission,
|
|
32
|
+
useStore_ProjectInfo
|
|
33
|
+
} from "./chunk-CBZXSBNX.mjs";
|
|
46
34
|
import {
|
|
47
35
|
__objRest,
|
|
48
36
|
__restKey,
|
|
@@ -50,7 +38,7 @@ import {
|
|
|
50
38
|
__spreadValues
|
|
51
39
|
} from "./chunk-JD6AELXS.mjs";
|
|
52
40
|
|
|
53
|
-
// src/lib/
|
|
41
|
+
// src/shared/lib/cn.ts
|
|
54
42
|
import { clsx } from "clsx";
|
|
55
43
|
import { twMerge } from "tailwind-merge";
|
|
56
44
|
function cn(...inputs) {
|
|
@@ -1207,6 +1195,27 @@ function MyHtmlWrapper(_a) {
|
|
|
1207
1195
|
) });
|
|
1208
1196
|
}
|
|
1209
1197
|
|
|
1198
|
+
// src/shared/consts/colorsObject.ts
|
|
1199
|
+
var colorsObject = {
|
|
1200
|
+
mantineBackgroundPrimary: "light-dark(var(--mantine-color-white), var(--mantine-color-dark))",
|
|
1201
|
+
mantineBackgroundSecondary: "light-dark(var(--mantine-color-gray-1), var(--mantine-color-dark-8))",
|
|
1202
|
+
mantineBackgroundTertiary: "light-dark(var(--mantine-color-gray-0), var(--mantine-color-dark-6))",
|
|
1203
|
+
mantineBackgroundBlueLight: "var(--mantine-color-blue-light)",
|
|
1204
|
+
mantineBackgroundBlue: "var(--mantine-color-blue)",
|
|
1205
|
+
mantineBackgroundTealLight: "var(--mantine-color-teal-light)"
|
|
1206
|
+
};
|
|
1207
|
+
|
|
1208
|
+
// src/shared/consts/genderEnum.ts
|
|
1209
|
+
var genderEnum = /* @__PURE__ */ ((genderEnum5) => {
|
|
1210
|
+
genderEnum5[genderEnum5["Male"] = 1] = "Male";
|
|
1211
|
+
genderEnum5[genderEnum5["Female"] = 2] = "Female";
|
|
1212
|
+
return genderEnum5;
|
|
1213
|
+
})(genderEnum || {});
|
|
1214
|
+
var genderLabel = {
|
|
1215
|
+
[1 /* Male */]: "Nam",
|
|
1216
|
+
[2 /* Female */]: "N\u1EEF"
|
|
1217
|
+
};
|
|
1218
|
+
|
|
1210
1219
|
// src/components/DataDisplay/DataTable/MyDataTable.tsx
|
|
1211
1220
|
import { Alert, Box, Center as Center3, Group as Group7, List, Portal, Text as Text5, useComputedColorScheme } from "@mantine/core";
|
|
1212
1221
|
import { IconBug } from "@tabler/icons-react";
|
|
@@ -1291,7 +1300,7 @@ function MyDataTable(_a) {
|
|
|
1291
1300
|
case "gender":
|
|
1292
1301
|
col.Cell = ({ cell }) => {
|
|
1293
1302
|
const value = cell.getValue();
|
|
1294
|
-
return
|
|
1303
|
+
return genderLabel[value];
|
|
1295
1304
|
};
|
|
1296
1305
|
if (!col.size) col.size = 100;
|
|
1297
1306
|
break;
|
|
@@ -1413,7 +1422,7 @@ function MyDataTable(_a) {
|
|
|
1413
1422
|
},
|
|
1414
1423
|
style: {
|
|
1415
1424
|
cursor: "pointer",
|
|
1416
|
-
backgroundColor: props.row.original.id == idSelectionOne ?
|
|
1425
|
+
backgroundColor: props.row.original.id == idSelectionOne ? colorsObject.mantineBackgroundTealLight : "transparent"
|
|
1417
1426
|
}
|
|
1418
1427
|
}), typeof rest.mantineTableBodyRowProps === "function" ? rest.mantineTableBodyRowProps(props) : rest.mantineTableBodyRowProps),
|
|
1419
1428
|
initialState: __spreadProps(__spreadValues(__spreadValues({
|
|
@@ -2587,8 +2596,8 @@ function MyTextInput(_a) {
|
|
|
2587
2596
|
import {
|
|
2588
2597
|
ActionIcon as ActionIcon11,
|
|
2589
2598
|
AppShell,
|
|
2590
|
-
Box as
|
|
2591
|
-
Group as
|
|
2599
|
+
Box as Box7,
|
|
2600
|
+
Group as Group29,
|
|
2592
2601
|
Image as Image4,
|
|
2593
2602
|
ScrollArea as ScrollArea4,
|
|
2594
2603
|
Space as Space6,
|
|
@@ -2646,7 +2655,7 @@ function RenderNavLinks({ items }) {
|
|
|
2646
2655
|
NavLink,
|
|
2647
2656
|
{
|
|
2648
2657
|
c: item.links ? "white" : void 0,
|
|
2649
|
-
bg: item.links ? "blue.9" : normalizePath(extractPathName) === normalizePath(item.link) ?
|
|
2658
|
+
bg: item.links ? "blue.9" : normalizePath(extractPathName) === normalizePath(item.link) ? colorsObject.mantineBackgroundBlueLight : void 0,
|
|
2650
2659
|
style: {
|
|
2651
2660
|
marginBottom: 4,
|
|
2652
2661
|
border: normalizePath(extractPathName) === normalizePath(item.link) ? "1px solid" : void 0,
|
|
@@ -2681,9 +2690,64 @@ function RenderNavLinks({ items }) {
|
|
|
2681
2690
|
)) });
|
|
2682
2691
|
}
|
|
2683
2692
|
|
|
2684
|
-
// src/
|
|
2693
|
+
// src/shared/lib/createBaseApi.ts
|
|
2694
|
+
function createBaseApi(baseUrl, axiosInstance) {
|
|
2695
|
+
return {
|
|
2696
|
+
get: ({
|
|
2697
|
+
params = "",
|
|
2698
|
+
id,
|
|
2699
|
+
paging
|
|
2700
|
+
} = {}) => {
|
|
2701
|
+
return axiosInstance.get(`${baseUrl}/get` + params, { params: __spreadProps(__spreadValues({}, paging), { id }) });
|
|
2702
|
+
},
|
|
2703
|
+
getAll: ({
|
|
2704
|
+
params = "",
|
|
2705
|
+
cols,
|
|
2706
|
+
paging
|
|
2707
|
+
} = {}) => {
|
|
2708
|
+
return axiosInstance.get(`${baseUrl}/GetAll` + params, {
|
|
2709
|
+
params: __spreadValues({
|
|
2710
|
+
cols: cols == null ? void 0 : cols.join(",")
|
|
2711
|
+
}, paging)
|
|
2712
|
+
});
|
|
2713
|
+
},
|
|
2714
|
+
create: (data) => {
|
|
2715
|
+
return axiosInstance.post(`${baseUrl}/create`, __spreadValues({}, data));
|
|
2716
|
+
},
|
|
2717
|
+
update: (data) => {
|
|
2718
|
+
return axiosInstance.post(`${baseUrl}/update`, data);
|
|
2719
|
+
},
|
|
2720
|
+
updateList: (data) => {
|
|
2721
|
+
return axiosInstance.post(`${baseUrl}/updateList`, data);
|
|
2722
|
+
},
|
|
2723
|
+
createOrUpdateList: (data) => {
|
|
2724
|
+
return axiosInstance.post(`${baseUrl}/createOrUpdateList`, data);
|
|
2725
|
+
},
|
|
2726
|
+
createList: (data) => {
|
|
2727
|
+
return axiosInstance.post(`${baseUrl}/createList`, data);
|
|
2728
|
+
},
|
|
2729
|
+
delete: (id) => {
|
|
2730
|
+
return axiosInstance.post(`${baseUrl}/delete`, { id });
|
|
2731
|
+
},
|
|
2732
|
+
//Theme delete list
|
|
2733
|
+
deleteList: (values) => {
|
|
2734
|
+
return axiosInstance.post(`${baseUrl}/deleteList`, values.map((item) => ({
|
|
2735
|
+
id: item.id,
|
|
2736
|
+
isEnabled: false
|
|
2737
|
+
})));
|
|
2738
|
+
},
|
|
2739
|
+
deleteListIds: (ids) => {
|
|
2740
|
+
return axiosInstance.post(`${baseUrl}/deleteList`, ids.map((id) => ({
|
|
2741
|
+
id,
|
|
2742
|
+
isEnabled: false
|
|
2743
|
+
})));
|
|
2744
|
+
}
|
|
2745
|
+
};
|
|
2746
|
+
}
|
|
2747
|
+
|
|
2748
|
+
// src/APIs/pageService.ts
|
|
2685
2749
|
var CONTROLLER = "/Page";
|
|
2686
|
-
var
|
|
2750
|
+
var pageService = __spreadValues({}, createBaseApi(CONTROLLER, baseAxios_default));
|
|
2687
2751
|
|
|
2688
2752
|
// src/core/button/CustomSwitchTheme.tsx
|
|
2689
2753
|
import { ActionIcon as ActionIcon9, useComputedColorScheme as useComputedColorScheme2, useMantineColorScheme as useMantineColorScheme2 } from "@mantine/core";
|
|
@@ -3108,7 +3172,7 @@ function FileImportConfigModal(_a) {
|
|
|
3108
3172
|
value: titleIndex,
|
|
3109
3173
|
onChange: setTitleIndex,
|
|
3110
3174
|
label: /* @__PURE__ */ jsxs27(Group15, { children: [
|
|
3111
|
-
/* @__PURE__ */ jsx49(IconCircleFilled, { size: 20, color:
|
|
3175
|
+
/* @__PURE__ */ jsx49(IconCircleFilled, { size: 20, color: colorsObject.mantineBackgroundTealLight }),
|
|
3112
3176
|
/* @__PURE__ */ jsx49(Text15, { children: "D\xF2ng ti\xEAu \u0111\u1EC1 b\u1EAFt \u0111\u1EA7u t\u1EEB" })
|
|
3113
3177
|
] }),
|
|
3114
3178
|
data: rawData.map((_, i) => (i + 1).toString()),
|
|
@@ -3122,7 +3186,7 @@ function FileImportConfigModal(_a) {
|
|
|
3122
3186
|
value: dataStartIndex,
|
|
3123
3187
|
onChange: setDataStartIndex,
|
|
3124
3188
|
label: /* @__PURE__ */ jsxs27(Group15, { children: [
|
|
3125
|
-
/* @__PURE__ */ jsx49(IconCircleFilled, { size: 20, color:
|
|
3189
|
+
/* @__PURE__ */ jsx49(IconCircleFilled, { size: 20, color: colorsObject.mantineBackgroundBlueLight }),
|
|
3126
3190
|
/* @__PURE__ */ jsx49(Text15, { children: "D\xF2ng d\u1EEF li\u1EC7u b\u1EAFt \u0111\u1EA7u t\u1EEB" })
|
|
3127
3191
|
] }),
|
|
3128
3192
|
data: rawData.map((_, i) => (i + 1).toString()).filter((i) => !titleIndex || parseInt(i) > parseInt(titleIndex)),
|
|
@@ -3138,7 +3202,7 @@ function FileImportConfigModal(_a) {
|
|
|
3138
3202
|
const isDataRow = dataStartIndex && row.index >= parseInt(dataStartIndex) - 1;
|
|
3139
3203
|
return {
|
|
3140
3204
|
style: {
|
|
3141
|
-
backgroundColor: isTitleRow ?
|
|
3205
|
+
backgroundColor: isTitleRow ? colorsObject.mantineBackgroundTealLight : isDataRow ? colorsObject.mantineBackgroundBlueLight : colorsObject.mantineBackgroundPrimary,
|
|
3142
3206
|
fontWeight: isTitleRow ? "bold" : isDataRow ? "500" : "normal"
|
|
3143
3207
|
}
|
|
3144
3208
|
};
|
|
@@ -3232,9 +3296,9 @@ function MyModalImport({
|
|
|
3232
3296
|
// src/modules-features/admin/core/academicYears/AcademicYearImport.tsx
|
|
3233
3297
|
import ExcelJS from "exceljs";
|
|
3234
3298
|
|
|
3235
|
-
// src/
|
|
3299
|
+
// src/APIs/academicYearService.ts
|
|
3236
3300
|
var CONTROLLER2 = "/academicYear";
|
|
3237
|
-
var
|
|
3301
|
+
var academicYearService = __spreadProps(__spreadValues({}, createBaseApi(CONTROLLER2, baseAxios_default)), {
|
|
3238
3302
|
academicGetAll: () => {
|
|
3239
3303
|
return baseAxios_default.get(`${CONTROLLER2}/AcademicGetAll`);
|
|
3240
3304
|
}
|
|
@@ -3254,7 +3318,7 @@ var config = [
|
|
|
3254
3318
|
];
|
|
3255
3319
|
function AcademicYearImport() {
|
|
3256
3320
|
const importMutation = useMyReactMutation({
|
|
3257
|
-
axiosFn: (body) =>
|
|
3321
|
+
axiosFn: (body) => academicYearService.createOrUpdateList(body),
|
|
3258
3322
|
mutationType: "import"
|
|
3259
3323
|
});
|
|
3260
3324
|
const stack = useModalsStack([]);
|
|
@@ -3400,7 +3464,7 @@ function AcademicYearsCreate() {
|
|
|
3400
3464
|
administrativeYearEnd: value.administrativeYearEnd ? toUTCISOStringPreserveDay(new Date(value.administrativeYearEnd)) : null
|
|
3401
3465
|
});
|
|
3402
3466
|
console.log("Create payload:", payload);
|
|
3403
|
-
|
|
3467
|
+
academicYearService.create(payload);
|
|
3404
3468
|
queryClient.invalidateQueries();
|
|
3405
3469
|
},
|
|
3406
3470
|
children: /* @__PURE__ */ jsxs30(Grid2, { children: [
|
|
@@ -3491,7 +3555,7 @@ function AcademicYearsDelete({ values }) {
|
|
|
3491
3555
|
{
|
|
3492
3556
|
contextData: values.code,
|
|
3493
3557
|
onSubmit: () => {
|
|
3494
|
-
return
|
|
3558
|
+
return academicYearService.delete(values.id);
|
|
3495
3559
|
}
|
|
3496
3560
|
}
|
|
3497
3561
|
);
|
|
@@ -3505,7 +3569,7 @@ function AcademicYearsDeleteList({ values }) {
|
|
|
3505
3569
|
{
|
|
3506
3570
|
contextData: values.map((item) => item.code).join(","),
|
|
3507
3571
|
onSubmit: () => {
|
|
3508
|
-
return
|
|
3572
|
+
return academicYearService.deleteList(values);
|
|
3509
3573
|
}
|
|
3510
3574
|
}
|
|
3511
3575
|
);
|
|
@@ -3626,7 +3690,7 @@ function AcademicYearsUpdate({
|
|
|
3626
3690
|
administrativeYearStart: value.administrativeYearStart ? toUTCISOStringPreserveDay(new Date(value.administrativeYearStart)) : null,
|
|
3627
3691
|
administrativeYearEnd: value.administrativeYearEnd ? toUTCISOStringPreserveDay(new Date(value.administrativeYearEnd)) : null
|
|
3628
3692
|
});
|
|
3629
|
-
return
|
|
3693
|
+
return academicYearService.update(formattedValues);
|
|
3630
3694
|
},
|
|
3631
3695
|
children: /* @__PURE__ */ jsxs31(Grid3, { children: [
|
|
3632
3696
|
/* @__PURE__ */ jsxs31(Grid3.Col, { span: { base: 12, md: 6 }, py: 0, children: [
|
|
@@ -3716,7 +3780,7 @@ import { Fragment as Fragment12, jsx as jsx56, jsxs as jsxs32 } from "react/jsx-
|
|
|
3716
3780
|
function AcademicYearsRead() {
|
|
3717
3781
|
const academicyearsQuery = useMyReactQuery({
|
|
3718
3782
|
queryKey: ["academicyearsQuery"],
|
|
3719
|
-
axiosFn: () =>
|
|
3783
|
+
axiosFn: () => academicYearService.academicGetAll(),
|
|
3720
3784
|
options: {
|
|
3721
3785
|
select: (data) => {
|
|
3722
3786
|
return data.filter((item) => item.id != 0);
|
|
@@ -3783,9 +3847,9 @@ function AcademicYearsRead() {
|
|
|
3783
3847
|
) });
|
|
3784
3848
|
}
|
|
3785
3849
|
|
|
3786
|
-
// src/
|
|
3850
|
+
// src/APIs/accountService.ts
|
|
3787
3851
|
var CONTROLLER3 = "/account";
|
|
3788
|
-
var
|
|
3852
|
+
var accountService = __spreadProps(__spreadValues({}, createBaseApi(CONTROLLER3, baseAxios_default)), {
|
|
3789
3853
|
signIn: (values) => {
|
|
3790
3854
|
return baseAxios_default.post(CONTROLLER3 + `/SignIn`, { values });
|
|
3791
3855
|
},
|
|
@@ -3840,7 +3904,7 @@ function AccessControl_AccountTable(_a) {
|
|
|
3840
3904
|
const [globalFilter, setGlobalFilter] = useState12("");
|
|
3841
3905
|
const query = useMyReactQuery({
|
|
3842
3906
|
queryKey: ["accounts", paggingState[0], globalFilter],
|
|
3843
|
-
axiosFn: () =>
|
|
3907
|
+
axiosFn: () => accountService.getAdminAccountForSetPermission({
|
|
3844
3908
|
paging: {
|
|
3845
3909
|
pageNumber: paggingState[0].pageIndex + 1,
|
|
3846
3910
|
pageSize: paggingState[0].pageSize
|
|
@@ -3902,9 +3966,9 @@ function AccessControl_AccountTable(_a) {
|
|
|
3902
3966
|
);
|
|
3903
3967
|
}
|
|
3904
3968
|
|
|
3905
|
-
// src/
|
|
3969
|
+
// src/APIs/roleService.ts
|
|
3906
3970
|
var CONTROLLER4 = "/role";
|
|
3907
|
-
var
|
|
3971
|
+
var roleService = __spreadProps(__spreadValues({}, createBaseApi(CONTROLLER4, baseAxios_default)), {
|
|
3908
3972
|
getAdminRole: (paging) => {
|
|
3909
3973
|
return baseAxios_default.get(CONTROLLER4 + `/GetAdminRole`, {
|
|
3910
3974
|
params: paging
|
|
@@ -3969,11 +4033,11 @@ function Permission_SaveMenuPermission({
|
|
|
3969
4033
|
const permissionStore = useStore_Permission();
|
|
3970
4034
|
const mutation = useMyReactMutation({
|
|
3971
4035
|
axiosFn: (values2) => {
|
|
3972
|
-
if (isUserPermission) return
|
|
4036
|
+
if (isUserPermission) return roleService.updateUserPermission({
|
|
3973
4037
|
pagePermissions: values2,
|
|
3974
4038
|
userId: roleOrUserId
|
|
3975
4039
|
});
|
|
3976
|
-
return
|
|
4040
|
+
return roleService.updateRolePermission({
|
|
3977
4041
|
pagePermissions: values2,
|
|
3978
4042
|
roleId: roleOrUserId
|
|
3979
4043
|
});
|
|
@@ -4088,7 +4152,7 @@ function CorePermissionCheck({ value = [], onChange, isLoading }) {
|
|
|
4088
4152
|
})
|
|
4089
4153
|
] }) }),
|
|
4090
4154
|
/* @__PURE__ */ jsx59(Table3.Tbody, { children: groupedMenus.map(([groupTitle, menus], gIdx) => /* @__PURE__ */ jsxs33(React2.Fragment, { children: [
|
|
4091
|
-
/* @__PURE__ */ jsx59(Table3.Tr, { bg:
|
|
4155
|
+
/* @__PURE__ */ jsx59(Table3.Tr, { bg: colorsObject.mantineBackgroundBlueLight, children: /* @__PURE__ */ jsx59(Table3.Td, { fw: "bold", fs: "italic", colSpan: 7, children: groupTitle }) }),
|
|
4092
4156
|
menus.map((menu, mIdx) => {
|
|
4093
4157
|
const menuIndex = value.indexOf(menu);
|
|
4094
4158
|
const isDuplicate = menu.id && duplicateIds.has(menu.id);
|
|
@@ -4128,8 +4192,8 @@ function Permission_ViewCheckMenuPermission({
|
|
|
4128
4192
|
const rolePermissionQuery = useMyReactQuery({
|
|
4129
4193
|
queryKey: ["rolePermissions", roleOrUserId],
|
|
4130
4194
|
axiosFn: () => {
|
|
4131
|
-
if (isUserPermission) return
|
|
4132
|
-
return
|
|
4195
|
+
if (isUserPermission) return roleService.getUserPermission({ userId: roleOrUserId });
|
|
4196
|
+
return roleService.getRolePermission({ roleId: roleOrUserId });
|
|
4133
4197
|
},
|
|
4134
4198
|
options: {
|
|
4135
4199
|
enabled: roleOrUserId != void 0,
|
|
@@ -4235,7 +4299,7 @@ function AccessControlLevelRoleTable(_a) {
|
|
|
4235
4299
|
var rest = __objRest(_a, []);
|
|
4236
4300
|
const adminRoleQuery = useMyReactQuery({
|
|
4237
4301
|
queryKey: ["roles"],
|
|
4238
|
-
axiosFn: () =>
|
|
4302
|
+
axiosFn: () => roleService.getAdminRole()
|
|
4239
4303
|
});
|
|
4240
4304
|
const columns = useMemo7(() => [
|
|
4241
4305
|
{
|
|
@@ -4311,9 +4375,9 @@ function Feat_accessControlLevel({ menuData }) {
|
|
|
4311
4375
|
] });
|
|
4312
4376
|
}
|
|
4313
4377
|
|
|
4314
|
-
// src/
|
|
4378
|
+
// src/APIs/departmentService.ts
|
|
4315
4379
|
var CONTROLLER5 = "/department";
|
|
4316
|
-
var
|
|
4380
|
+
var departmentService = __spreadProps(__spreadValues({}, createBaseApi(CONTROLLER5, baseAxios_default)), {
|
|
4317
4381
|
getWorkingUnit: () => {
|
|
4318
4382
|
return baseAxios_default.get(
|
|
4319
4383
|
CONTROLLER5 + `/GetWorkingUnit`
|
|
@@ -4349,7 +4413,7 @@ function AccountManagement_CreateUpdateUser({ values }) {
|
|
|
4349
4413
|
});
|
|
4350
4414
|
const workingUnit = useMyReactQuery({
|
|
4351
4415
|
queryKey: ["workingUnits"],
|
|
4352
|
-
axiosFn: () =>
|
|
4416
|
+
axiosFn: () => departmentService.getWorkingUnit()
|
|
4353
4417
|
});
|
|
4354
4418
|
useEffect15(() => {
|
|
4355
4419
|
if (!values) return;
|
|
@@ -4373,8 +4437,8 @@ function AccountManagement_CreateUpdateUser({ values }) {
|
|
|
4373
4437
|
isBlocked: accountStatus == "0" ? true : false,
|
|
4374
4438
|
aqModuleId: projectInfoStore.state.aqModuleId
|
|
4375
4439
|
});
|
|
4376
|
-
if (values) return
|
|
4377
|
-
return
|
|
4440
|
+
if (values) return accountService.update(finalValues);
|
|
4441
|
+
return accountService.create(finalValues);
|
|
4378
4442
|
},
|
|
4379
4443
|
children: [
|
|
4380
4444
|
/* @__PURE__ */ jsxs36(SimpleGrid, { cols: { base: 1, md: 2 }, children: [
|
|
@@ -4457,7 +4521,7 @@ function AccountManagement_ExportUsers({ data }) {
|
|
|
4457
4521
|
const isActive = useState16(false);
|
|
4458
4522
|
const userQuery = useMyReactQuery({
|
|
4459
4523
|
queryKey: ["accounts"],
|
|
4460
|
-
axiosFn: () =>
|
|
4524
|
+
axiosFn: () => accountService.getAdminAccount(),
|
|
4461
4525
|
options: {
|
|
4462
4526
|
enabled: isActive[0]
|
|
4463
4527
|
}
|
|
@@ -4538,10 +4602,10 @@ function AccountManagement_Import() {
|
|
|
4538
4602
|
const projectInfoStore = useStore_ProjectInfo();
|
|
4539
4603
|
const workingUnitQuery = useMyReactQuery({
|
|
4540
4604
|
queryKey: ["workingUnit"],
|
|
4541
|
-
axiosFn: () =>
|
|
4605
|
+
axiosFn: () => departmentService.getWorkingUnit()
|
|
4542
4606
|
});
|
|
4543
4607
|
const importMutation = useMyReactMutation({
|
|
4544
|
-
axiosFn: (values) =>
|
|
4608
|
+
axiosFn: (values) => accountService.createList(values),
|
|
4545
4609
|
mutationType: "import"
|
|
4546
4610
|
});
|
|
4547
4611
|
return /* @__PURE__ */ jsxs37(Fragment13, { children: [
|
|
@@ -4594,7 +4658,7 @@ function AccountManagement_SyncUserFormEdusoftnet() {
|
|
|
4594
4658
|
const discConfirm = useDisclosure10();
|
|
4595
4659
|
const mutation = useMyReactMutation({
|
|
4596
4660
|
axiosFn: () => {
|
|
4597
|
-
return
|
|
4661
|
+
return accountService.syncAQDataManager();
|
|
4598
4662
|
},
|
|
4599
4663
|
options: {
|
|
4600
4664
|
onSuccess: () => {
|
|
@@ -4627,7 +4691,7 @@ import { IconSearch as IconSearch3 } from "@tabler/icons-react";
|
|
|
4627
4691
|
import { useEffect as useEffect17, useMemo as useMemo8, useState as useState17 } from "react";
|
|
4628
4692
|
|
|
4629
4693
|
// src/modules-features/admin/core/accountManagement/useStore_AccountManagement.ts
|
|
4630
|
-
var useStore2 =
|
|
4694
|
+
var useStore2 = createGenericStore({
|
|
4631
4695
|
initialState: {}
|
|
4632
4696
|
});
|
|
4633
4697
|
function useStore_AccountManagement() {
|
|
@@ -4647,7 +4711,7 @@ function AccountManagement_ReadUser() {
|
|
|
4647
4711
|
const AllUserQuery = useMyReactQuery({
|
|
4648
4712
|
queryKey: ["AllUserQuery", paginationState[0].pageIndex + 1, paginationState[0].pageSize, globalFilter],
|
|
4649
4713
|
axiosFn: () => {
|
|
4650
|
-
return
|
|
4714
|
+
return accountService.getAdminAccount({
|
|
4651
4715
|
paging: {
|
|
4652
4716
|
pageNumber: paginationState[0].pageIndex + 1,
|
|
4653
4717
|
pageSize: paginationState[0].pageSize
|
|
@@ -4708,8 +4772,8 @@ function AccountManagement_ReadUser() {
|
|
|
4708
4772
|
CustomDataTableAPI,
|
|
4709
4773
|
{
|
|
4710
4774
|
query: AllUserQuery,
|
|
4711
|
-
deleteFn:
|
|
4712
|
-
deleteListFn:
|
|
4775
|
+
deleteFn: accountService.delete,
|
|
4776
|
+
deleteListFn: accountService.deleteListIds,
|
|
4713
4777
|
enableRowSelection: true,
|
|
4714
4778
|
enableFilters: false,
|
|
4715
4779
|
rowCount: AllUserQuery.dataCount,
|
|
@@ -4779,9 +4843,9 @@ function F_accountManagement({ isRequireSkillCenter = false }) {
|
|
|
4779
4843
|
return /* @__PURE__ */ jsx69(AccountManagement_ReadUser, {});
|
|
4780
4844
|
}
|
|
4781
4845
|
|
|
4782
|
-
// src/
|
|
4846
|
+
// src/APIs/codeFormulaService.ts
|
|
4783
4847
|
var CONTROLLER6 = "/CodeFormula";
|
|
4784
|
-
var
|
|
4848
|
+
var codeFormulaService = __spreadValues({}, createBaseApi(CONTROLLER6, baseAxios_default));
|
|
4785
4849
|
|
|
4786
4850
|
// src/modules-features/admin/core/CodeFormula/CodeFormulaCreate.tsx
|
|
4787
4851
|
import { Select as Select4 } from "@mantine/core";
|
|
@@ -4820,7 +4884,7 @@ function CodeFormulaCreate({
|
|
|
4820
4884
|
MyButtonCreate,
|
|
4821
4885
|
{
|
|
4822
4886
|
form,
|
|
4823
|
-
onSubmit: () =>
|
|
4887
|
+
onSubmit: () => codeFormulaService.create(__spreadProps(__spreadValues({}, form.values), {
|
|
4824
4888
|
isEnabled: true
|
|
4825
4889
|
})),
|
|
4826
4890
|
children: [
|
|
@@ -4904,7 +4968,7 @@ function CodeFormulaCreate({
|
|
|
4904
4968
|
// src/modules-features/admin/core/CodeFormula/CodeFormulaDelete.tsx
|
|
4905
4969
|
import { jsx as jsx71 } from "react/jsx-runtime";
|
|
4906
4970
|
function CodeFormulaDelete({ id, code }) {
|
|
4907
|
-
return /* @__PURE__ */ jsx71(MyActionIconDelete, { contextData: code, onSubmit: () =>
|
|
4971
|
+
return /* @__PURE__ */ jsx71(MyActionIconDelete, { contextData: code, onSubmit: () => codeFormulaService.delete(id) });
|
|
4908
4972
|
}
|
|
4909
4973
|
|
|
4910
4974
|
// src/modules-features/admin/core/CodeFormula/CodeFormulaDeleteList.tsx
|
|
@@ -4917,7 +4981,7 @@ function CodeFormulaDeleteList({ values }) {
|
|
|
4917
4981
|
disabled: values.length === 0
|
|
4918
4982
|
},
|
|
4919
4983
|
count: values.length,
|
|
4920
|
-
onSubmit: () =>
|
|
4984
|
+
onSubmit: () => codeFormulaService.deleteList(values)
|
|
4921
4985
|
}
|
|
4922
4986
|
);
|
|
4923
4987
|
}
|
|
@@ -4973,7 +5037,7 @@ function CodeFormulaUpdate({
|
|
|
4973
5037
|
length: form.values.length,
|
|
4974
5038
|
isNumberZeroUsed: form.values.isNumberZeroUsed
|
|
4975
5039
|
};
|
|
4976
|
-
return
|
|
5040
|
+
return codeFormulaService.update(body);
|
|
4977
5041
|
},
|
|
4978
5042
|
children: [
|
|
4979
5043
|
/* @__PURE__ */ jsx73(
|
|
@@ -5079,7 +5143,7 @@ function CodeFormulaRead({
|
|
|
5079
5143
|
});
|
|
5080
5144
|
const codeConfigQuery = useMyReactQuery({
|
|
5081
5145
|
queryKey: [`CodeFormulaRead`],
|
|
5082
|
-
axiosFn: async () =>
|
|
5146
|
+
axiosFn: async () => codeFormulaService.getAll()
|
|
5083
5147
|
});
|
|
5084
5148
|
const columns = useMemo9(() => {
|
|
5085
5149
|
const cols = [
|
|
@@ -5324,7 +5388,7 @@ function DepartmentCreateOrUpdateFeature({ mode, data }) {
|
|
|
5324
5388
|
});
|
|
5325
5389
|
const { data: units, isLoading, isError } = useMyReactQuery({
|
|
5326
5390
|
queryKey: ["UnitRead"],
|
|
5327
|
-
axiosFn: () =>
|
|
5391
|
+
axiosFn: () => departmentService.getAll()
|
|
5328
5392
|
});
|
|
5329
5393
|
useEffect20(() => {
|
|
5330
5394
|
if (isCreateMode) {
|
|
@@ -5373,11 +5437,11 @@ function DepartmentCreateOrUpdateFeature({ mode, data }) {
|
|
|
5373
5437
|
};
|
|
5374
5438
|
const handleSubmit = async () => {
|
|
5375
5439
|
if (isCreateMode) {
|
|
5376
|
-
return await
|
|
5440
|
+
return await departmentService.create(__spreadProps(__spreadValues({}, form.values), {
|
|
5377
5441
|
isWorkingUnit: form.values.isWorkingUnit
|
|
5378
5442
|
}));
|
|
5379
5443
|
} else {
|
|
5380
|
-
return await
|
|
5444
|
+
return await departmentService.update(__spreadProps(__spreadValues({}, form.values), {
|
|
5381
5445
|
isWorkingUnit: form.values.isWorkingUnit
|
|
5382
5446
|
}));
|
|
5383
5447
|
}
|
|
@@ -5428,7 +5492,7 @@ function DepartmentExport({ data }) {
|
|
|
5428
5492
|
const active = useState20(false);
|
|
5429
5493
|
const userQuery = useMyReactQuery({
|
|
5430
5494
|
queryKey: ["accounts"],
|
|
5431
|
-
axiosFn: () =>
|
|
5495
|
+
axiosFn: () => departmentService.getAll(),
|
|
5432
5496
|
options: {
|
|
5433
5497
|
enabled: active[0]
|
|
5434
5498
|
// không fetch tự động
|
|
@@ -5473,7 +5537,7 @@ import { useMemo as useMemo10 } from "react";
|
|
|
5473
5537
|
import { jsx as jsx78 } from "react/jsx-runtime";
|
|
5474
5538
|
function DepartmentDelete({ id }) {
|
|
5475
5539
|
return /* @__PURE__ */ jsx78(MyActionIconDelete, { onSubmit: async () => {
|
|
5476
|
-
return
|
|
5540
|
+
return departmentService.delete(id);
|
|
5477
5541
|
} });
|
|
5478
5542
|
}
|
|
5479
5543
|
|
|
@@ -5487,7 +5551,7 @@ function DepartmentDeleteList({
|
|
|
5487
5551
|
{
|
|
5488
5552
|
contextData: values.map((item) => item.code).join(","),
|
|
5489
5553
|
onSubmit: () => {
|
|
5490
|
-
return
|
|
5554
|
+
return departmentService.deleteList(values);
|
|
5491
5555
|
}
|
|
5492
5556
|
}
|
|
5493
5557
|
);
|
|
@@ -5530,7 +5594,7 @@ var type3 = {
|
|
|
5530
5594
|
function DepartmentFeature() {
|
|
5531
5595
|
const query = useMyReactQuery({
|
|
5532
5596
|
queryKey: ["UnitRead"],
|
|
5533
|
-
axiosFn: () =>
|
|
5597
|
+
axiosFn: () => departmentService.getAll()
|
|
5534
5598
|
});
|
|
5535
5599
|
const columns = useMemo10(() => [
|
|
5536
5600
|
{ header: "M\xE3 \u0111\u01A1n v\u1ECB", accessorKey: "code" },
|
|
@@ -5598,9 +5662,9 @@ function DepartmentFeature() {
|
|
|
5598
5662
|
// src/modules-features/admin/core/documentCategories/F_documentCategories.tsx
|
|
5599
5663
|
import { Tabs } from "@mantine/core";
|
|
5600
5664
|
|
|
5601
|
-
// src/
|
|
5665
|
+
// src/APIs/documentAttributeService.ts
|
|
5602
5666
|
var CONTROLLER7 = "/DocumentAttribute";
|
|
5603
|
-
var
|
|
5667
|
+
var documentAttributeService = __spreadProps(__spreadValues({}, createBaseApi(CONTROLLER7, baseAxios_default)), {
|
|
5604
5668
|
GetByType: (FormTypeId) => {
|
|
5605
5669
|
return baseAxios_default.get(
|
|
5606
5670
|
CONTROLLER7 + `/GetByType?documentType=${FormTypeId}`
|
|
@@ -5627,7 +5691,7 @@ function F_documentCategories_Create({ documentType }) {
|
|
|
5627
5691
|
name: (value) => value ? null : "Kh\xF4ng \u0111\u01B0\u1EE3c \u0111\u1EC3 tr\u1ED1ng"
|
|
5628
5692
|
}
|
|
5629
5693
|
});
|
|
5630
|
-
return /* @__PURE__ */ jsxs45(MyButtonCreate, { objectName: "Lo\u1EA1i v\u0103n b\u1EA3n", form, onSubmit: (values) =>
|
|
5694
|
+
return /* @__PURE__ */ jsxs45(MyButtonCreate, { objectName: "Lo\u1EA1i v\u0103n b\u1EA3n", form, onSubmit: (values) => documentAttributeService.create(values), children: [
|
|
5631
5695
|
/* @__PURE__ */ jsx82(MyTextInput, __spreadValues({ label: "M\xE3 lo\u1EA1i v\u0103n b\u1EA3n" }, form.getInputProps("code"))),
|
|
5632
5696
|
/* @__PURE__ */ jsx82(MyTextInput, __spreadValues({ label: "T\xEAn lo\u1EA1i v\u0103n b\u1EA3n" }, form.getInputProps("name")))
|
|
5633
5697
|
] });
|
|
@@ -5640,7 +5704,7 @@ function F_documentCategories_Delete({ id, context }) {
|
|
|
5640
5704
|
MyActionIconDelete,
|
|
5641
5705
|
{
|
|
5642
5706
|
contextData: context,
|
|
5643
|
-
onSubmit: () =>
|
|
5707
|
+
onSubmit: () => documentAttributeService.delete(id)
|
|
5644
5708
|
}
|
|
5645
5709
|
);
|
|
5646
5710
|
}
|
|
@@ -5656,7 +5720,7 @@ function F_documentCategories_Update({ values }) {
|
|
|
5656
5720
|
name: (value) => value ? null : "Kh\xF4ng \u0111\u01B0\u1EE3c \u0111\u1EC3 tr\u1ED1ng"
|
|
5657
5721
|
}
|
|
5658
5722
|
});
|
|
5659
|
-
return /* @__PURE__ */ jsxs46(MyActionIconUpdate, { form, onSubmit: async (values2) =>
|
|
5723
|
+
return /* @__PURE__ */ jsxs46(MyActionIconUpdate, { form, onSubmit: async (values2) => documentAttributeService.update(values2), children: [
|
|
5660
5724
|
/* @__PURE__ */ jsx84(MyTextInput2, __spreadValues({ readOnly: true, label: "M\xE3 lo\u1EA1i v\u0103n b\u1EA3n" }, form.getInputProps("code"))),
|
|
5661
5725
|
/* @__PURE__ */ jsx84(MyTextInput2, __spreadValues({ label: "T\xEAn lo\u1EA1i v\u0103n b\u1EA3n" }, form.getInputProps("name")))
|
|
5662
5726
|
] });
|
|
@@ -5667,7 +5731,7 @@ import { jsx as jsx85, jsxs as jsxs47 } from "react/jsx-runtime";
|
|
|
5667
5731
|
function F_documentCategories_Read({ documentType }) {
|
|
5668
5732
|
const documentAttributeQuery = useMyReactQuery({
|
|
5669
5733
|
queryKey: ["F_core18256_Read" + documentType],
|
|
5670
|
-
axiosFn: () =>
|
|
5734
|
+
axiosFn: () => documentAttributeService.GetByType(documentType)
|
|
5671
5735
|
});
|
|
5672
5736
|
const columns = useMemo11(
|
|
5673
5737
|
() => [
|
|
@@ -5724,7 +5788,7 @@ function F_documentCategories_Select(_a) {
|
|
|
5724
5788
|
var _a2, _b2;
|
|
5725
5789
|
const query = useMyReactQuery({
|
|
5726
5790
|
queryKey: [`/DocumentAttribute/GetByType?documentType=${documentTypeId}`],
|
|
5727
|
-
axiosFn: () =>
|
|
5791
|
+
axiosFn: () => documentAttributeService.GetByType(documentTypeId)
|
|
5728
5792
|
});
|
|
5729
5793
|
if (query.isLoading) return "Loading...";
|
|
5730
5794
|
const data = (_a2 = query.data) == null ? void 0 : _a2.map((item) => {
|
|
@@ -5747,9 +5811,9 @@ function F_documentCategories_Select(_a) {
|
|
|
5747
5811
|
);
|
|
5748
5812
|
}
|
|
5749
5813
|
|
|
5750
|
-
// src/
|
|
5814
|
+
// src/APIs/emailTemplateService.ts
|
|
5751
5815
|
var CONTROLLER8 = "/EmailTemplate";
|
|
5752
|
-
var
|
|
5816
|
+
var emailTemplateService = __spreadProps(__spreadValues({}, createBaseApi(`${CONTROLLER8}`, baseAxios_default)), {
|
|
5753
5817
|
GetEmailVariables: (typeNumber) => {
|
|
5754
5818
|
return baseAxios_default.get(
|
|
5755
5819
|
CONTROLLER8 + `/GetEmailVariables?type=${typeNumber}`
|
|
@@ -5792,7 +5856,7 @@ var config22 = [
|
|
|
5792
5856
|
];
|
|
5793
5857
|
function EmailTemplateButtonImport({ emailTemplateEnum }) {
|
|
5794
5858
|
const importMutation = useMyReactMutation({
|
|
5795
|
-
axiosFn: (body) =>
|
|
5859
|
+
axiosFn: (body) => emailTemplateService.createOrUpdateList(body),
|
|
5796
5860
|
mutationType: "import"
|
|
5797
5861
|
});
|
|
5798
5862
|
const stack = useModalsStack3([]);
|
|
@@ -5878,11 +5942,11 @@ function EmailTemplateCreateUpdateButton({ initValue, emailTemplateEnum }) {
|
|
|
5878
5942
|
});
|
|
5879
5943
|
const mailTemplateQuery = useMyReactQuery({
|
|
5880
5944
|
queryKey: ["mailTemplates_CreateUpdateButton"],
|
|
5881
|
-
axiosFn: () =>
|
|
5945
|
+
axiosFn: () => emailTemplateService.getAll()
|
|
5882
5946
|
});
|
|
5883
5947
|
const mailVariableQuery = useMyReactQuery({
|
|
5884
5948
|
queryKey: ["mailVariables"],
|
|
5885
|
-
axiosFn: () =>
|
|
5949
|
+
axiosFn: () => emailTemplateService.GetEmailVariables(form.values.type)
|
|
5886
5950
|
});
|
|
5887
5951
|
const columns = useMemo12(
|
|
5888
5952
|
() => [
|
|
@@ -5988,12 +6052,12 @@ function EmailTemplateCreateUpdateButton({ initValue, emailTemplateEnum }) {
|
|
|
5988
6052
|
}
|
|
5989
6053
|
try {
|
|
5990
6054
|
if (initValue) {
|
|
5991
|
-
return await
|
|
6055
|
+
return await emailTemplateService.update(values);
|
|
5992
6056
|
} else {
|
|
5993
6057
|
const codes = (mailTemplateQuery.data || []).filter((item) => item.code != null && item.code !== "").map((item) => parseInt(item.code, 10)).filter((num) => !isNaN(num));
|
|
5994
6058
|
const maxCode = codes.length > 0 ? Math.max(...codes) : 0;
|
|
5995
6059
|
const newCode = maxCode + 1;
|
|
5996
|
-
return await
|
|
6060
|
+
return await emailTemplateService.create(__spreadProps(__spreadValues({}, values), {
|
|
5997
6061
|
code: newCode.toString()
|
|
5998
6062
|
}));
|
|
5999
6063
|
}
|
|
@@ -6112,7 +6176,7 @@ function MailTemplateDeleteButton({ values }) {
|
|
|
6112
6176
|
{
|
|
6113
6177
|
contextData: values == null ? void 0 : values.name,
|
|
6114
6178
|
onSubmit: () => {
|
|
6115
|
-
return
|
|
6179
|
+
return emailTemplateService.delete(values.id);
|
|
6116
6180
|
}
|
|
6117
6181
|
}
|
|
6118
6182
|
);
|
|
@@ -6125,7 +6189,7 @@ function EmailTemplateDeleteListButton({ values }) {
|
|
|
6125
6189
|
MyButtonDeleteList,
|
|
6126
6190
|
{
|
|
6127
6191
|
count: values.length,
|
|
6128
|
-
onSubmit: () =>
|
|
6192
|
+
onSubmit: () => emailTemplateService.deleteList(values)
|
|
6129
6193
|
}
|
|
6130
6194
|
);
|
|
6131
6195
|
}
|
|
@@ -6161,14 +6225,14 @@ function EmailTemplateExport({ emailTemplateEnum, table }) {
|
|
|
6161
6225
|
}
|
|
6162
6226
|
|
|
6163
6227
|
// src/modules-features/admin/core/EmailTemplate/EmailTemplateTable.tsx
|
|
6164
|
-
import { Group as
|
|
6228
|
+
import { Group as Group21 } from "@mantine/core";
|
|
6165
6229
|
import { useMemo as useMemo13 } from "react";
|
|
6166
6230
|
import { Fragment as Fragment18, jsx as jsx93, jsxs as jsxs51 } from "react/jsx-runtime";
|
|
6167
6231
|
function EmailTemplateTable({ emailTemplateEnum }) {
|
|
6168
6232
|
const storePermission = useStore_Permission();
|
|
6169
6233
|
const mailTemplateQuery = useMyReactQuery({
|
|
6170
6234
|
queryKey: ["mailTemplates"],
|
|
6171
|
-
axiosFn: () =>
|
|
6235
|
+
axiosFn: () => emailTemplateService.getAll()
|
|
6172
6236
|
});
|
|
6173
6237
|
const columns = useMemo13(
|
|
6174
6238
|
() => [
|
|
@@ -6198,7 +6262,7 @@ function EmailTemplateTable({ emailTemplateEnum }) {
|
|
|
6198
6262
|
renderTopToolbarCustomActions: ({ table }) => {
|
|
6199
6263
|
var _a, _b, _c, _d;
|
|
6200
6264
|
const selectedRows = table.getSelectedRowModel().flatRows.map((item) => item.original) || [];
|
|
6201
|
-
return /* @__PURE__ */ jsxs51(
|
|
6265
|
+
return /* @__PURE__ */ jsxs51(Group21, { children: [
|
|
6202
6266
|
((_b = (_a = storePermission.state) == null ? void 0 : _a.currentPermissionPage) == null ? void 0 : _b.isCreate) && /* @__PURE__ */ jsxs51(Fragment18, { children: [
|
|
6203
6267
|
/* @__PURE__ */ jsx93(EmailTemplateCreateUpdateButton, { emailTemplateEnum }),
|
|
6204
6268
|
/* @__PURE__ */ jsx93(EmailTemplateButtonImport, { emailTemplateEnum })
|
|
@@ -6222,19 +6286,19 @@ function EmailTemplateTable({ emailTemplateEnum }) {
|
|
|
6222
6286
|
}
|
|
6223
6287
|
|
|
6224
6288
|
// src/components/Layouts/FlexEnd/MyFlexEnd.tsx
|
|
6225
|
-
import { Group as
|
|
6289
|
+
import { Group as Group22 } from "@mantine/core";
|
|
6226
6290
|
import { jsx as jsx94 } from "react/jsx-runtime";
|
|
6227
6291
|
function MyFlexEnd(_a) {
|
|
6228
6292
|
var _b = _a, { children } = _b, rest = __objRest(_b, ["children"]);
|
|
6229
|
-
return /* @__PURE__ */ jsx94(
|
|
6293
|
+
return /* @__PURE__ */ jsx94(Group22, __spreadProps(__spreadValues({ justify: "end", mt: "md" }, rest), { children }));
|
|
6230
6294
|
}
|
|
6231
6295
|
|
|
6232
6296
|
// src/modules-features/admin/core/formTemplateDocs/F_formTemplateDocs.tsx
|
|
6233
6297
|
import { Space as Space2 } from "@mantine/core";
|
|
6234
6298
|
|
|
6235
|
-
// src/
|
|
6299
|
+
// src/APIs/documentService.ts
|
|
6236
6300
|
var CONTROLLER9 = "/Document";
|
|
6237
|
-
var
|
|
6301
|
+
var documentService = __spreadProps(__spreadValues({}, createBaseApi(CONTROLLER9, baseAxios_default)), {
|
|
6238
6302
|
GetByDocumentAttribute: (documentType) => {
|
|
6239
6303
|
return baseAxios_default.get(
|
|
6240
6304
|
CONTROLLER9 + `/GetByDocumentAttribute?id=${documentType}`
|
|
@@ -6247,6 +6311,16 @@ var service_document = __spreadProps(__spreadValues({}, createBaseApi(CONTROLLER
|
|
|
6247
6311
|
}
|
|
6248
6312
|
});
|
|
6249
6313
|
|
|
6314
|
+
// src/shared/consts/documentTypesObject.ts
|
|
6315
|
+
var documentTypesObject = {
|
|
6316
|
+
Security: 1,
|
|
6317
|
+
Refinement: 2,
|
|
6318
|
+
Guideline: 3,
|
|
6319
|
+
Regulations: 4,
|
|
6320
|
+
Workflow: 5,
|
|
6321
|
+
Form: 6
|
|
6322
|
+
};
|
|
6323
|
+
|
|
6250
6324
|
// src/shared/features/DocTypeSelect.tsx
|
|
6251
6325
|
import { Select as Select7 } from "@mantine/core";
|
|
6252
6326
|
import { useQuery as useQuery2 } from "@tanstack/react-query";
|
|
@@ -6303,10 +6377,10 @@ function F_formTemplateDocs_Create({ FormTypeId }) {
|
|
|
6303
6377
|
form,
|
|
6304
6378
|
onSubmit: async (values) => {
|
|
6305
6379
|
const body = __spreadProps(__spreadValues({}, values), {
|
|
6306
|
-
DocumentType:
|
|
6380
|
+
DocumentType: documentTypesObject.Form,
|
|
6307
6381
|
fileDetail: await utils_file_fileToAQDocumentType(values.file)
|
|
6308
6382
|
});
|
|
6309
|
-
return
|
|
6383
|
+
return documentService.create(body);
|
|
6310
6384
|
},
|
|
6311
6385
|
children: [
|
|
6312
6386
|
/* @__PURE__ */ jsx96(
|
|
@@ -6371,7 +6445,7 @@ function F_formTemplateDocs_Delete({
|
|
|
6371
6445
|
MyActionIconDelete,
|
|
6372
6446
|
{
|
|
6373
6447
|
contextData,
|
|
6374
|
-
onSubmit: () =>
|
|
6448
|
+
onSubmit: () => documentService.delete(id)
|
|
6375
6449
|
}
|
|
6376
6450
|
);
|
|
6377
6451
|
}
|
|
@@ -6408,7 +6482,7 @@ function F_formTemplateDocs_Update({
|
|
|
6408
6482
|
const body = __spreadProps(__spreadValues({}, values2), {
|
|
6409
6483
|
fileDetail: await utils_file_fileToAQDocumentType(values2.file)
|
|
6410
6484
|
});
|
|
6411
|
-
return
|
|
6485
|
+
return documentService.update(body);
|
|
6412
6486
|
},
|
|
6413
6487
|
children: [
|
|
6414
6488
|
/* @__PURE__ */ jsx98(
|
|
@@ -6466,7 +6540,7 @@ function F_formTemplateDocs_Read({ FormTypeId }) {
|
|
|
6466
6540
|
const [openItems, setOpenItems] = useState21([]);
|
|
6467
6541
|
const documentAttributeQuery = useMyReactQuery({
|
|
6468
6542
|
queryKey: ["F_formTemplateDocs_Read" + FormTypeId],
|
|
6469
|
-
axiosFn: () =>
|
|
6543
|
+
axiosFn: () => documentAttributeService.GetByType(FormTypeId)
|
|
6470
6544
|
});
|
|
6471
6545
|
useEffect23(() => {
|
|
6472
6546
|
var _a2;
|
|
@@ -6488,7 +6562,7 @@ function F_formTemplateDocs_Read({ FormTypeId }) {
|
|
|
6488
6562
|
radius: "sm",
|
|
6489
6563
|
styles: {
|
|
6490
6564
|
item: {
|
|
6491
|
-
backgroundColor:
|
|
6565
|
+
backgroundColor: colorsObject.mantineBackgroundTertiary
|
|
6492
6566
|
}
|
|
6493
6567
|
},
|
|
6494
6568
|
value: openItems,
|
|
@@ -6513,7 +6587,7 @@ function SubRead({
|
|
|
6513
6587
|
}) {
|
|
6514
6588
|
const documentQuery = useMyReactQuery({
|
|
6515
6589
|
queryKey: ["SF2_3Read" + id],
|
|
6516
|
-
axiosFn: () =>
|
|
6590
|
+
axiosFn: () => documentService.GetByDocumentAttribute(id)
|
|
6517
6591
|
});
|
|
6518
6592
|
const columns = useMemo14(
|
|
6519
6593
|
() => [
|
|
@@ -6608,7 +6682,7 @@ var exportConfig3 = {
|
|
|
6608
6682
|
fieldName: "gender",
|
|
6609
6683
|
header: "Gi\u1EDBi t\xEDnh",
|
|
6610
6684
|
formatFunction: (value, row) => {
|
|
6611
|
-
return
|
|
6685
|
+
return genderLabel[row.gender];
|
|
6612
6686
|
}
|
|
6613
6687
|
},
|
|
6614
6688
|
{
|
|
@@ -6658,7 +6732,7 @@ function LecturerListSyncFromEdusoft() {
|
|
|
6658
6732
|
const disc = useDisclosure12();
|
|
6659
6733
|
const notificationState = useState22("");
|
|
6660
6734
|
const mutation = useMyReactMutation({
|
|
6661
|
-
axiosFn: () =>
|
|
6735
|
+
axiosFn: () => accountService.syncAQDataLecturer(),
|
|
6662
6736
|
options: {
|
|
6663
6737
|
onSuccess: (data) => {
|
|
6664
6738
|
notificationState[1](data);
|
|
@@ -6716,13 +6790,13 @@ function CustomThemeIconSquareCheck({ checked }) {
|
|
|
6716
6790
|
}
|
|
6717
6791
|
|
|
6718
6792
|
// src/modules-features/admin/core/lecturerList/LecturerListTable.tsx
|
|
6719
|
-
import { Group as
|
|
6793
|
+
import { Group as Group23 } from "@mantine/core";
|
|
6720
6794
|
import { useMemo as useMemo15 } from "react";
|
|
6721
6795
|
import { jsx as jsx104, jsxs as jsxs57 } from "react/jsx-runtime";
|
|
6722
6796
|
function LecturerListTable() {
|
|
6723
6797
|
const query = useMyReactQuery({
|
|
6724
6798
|
queryKey: ["lecturers"],
|
|
6725
|
-
axiosFn:
|
|
6799
|
+
axiosFn: accountService.getEdusoftNetAccount
|
|
6726
6800
|
});
|
|
6727
6801
|
const columns = useMemo15(() => [
|
|
6728
6802
|
{
|
|
@@ -6742,7 +6816,7 @@ function LecturerListTable() {
|
|
|
6742
6816
|
{
|
|
6743
6817
|
header: "Gi\u1EDBi t\xEDnh",
|
|
6744
6818
|
accessorKey: "gender",
|
|
6745
|
-
accessorFn: (row) =>
|
|
6819
|
+
accessorFn: (row) => genderLabel[row.gender]
|
|
6746
6820
|
},
|
|
6747
6821
|
{
|
|
6748
6822
|
header: "Ng\xE0y sinh",
|
|
@@ -6780,23 +6854,23 @@ function LecturerListTable() {
|
|
|
6780
6854
|
{
|
|
6781
6855
|
query,
|
|
6782
6856
|
enableRowSelection: true,
|
|
6783
|
-
renderTopToolbarCustomActions: ({ table }) => /* @__PURE__ */ jsxs57(
|
|
6857
|
+
renderTopToolbarCustomActions: ({ table }) => /* @__PURE__ */ jsxs57(Group23, { children: [
|
|
6784
6858
|
/* @__PURE__ */ jsx104(LecturerListSyncFromEdusoft, {}),
|
|
6785
6859
|
/* @__PURE__ */ jsx104(LecturerListExport, { table })
|
|
6786
6860
|
] }),
|
|
6787
6861
|
columns,
|
|
6788
|
-
deleteListFn:
|
|
6789
|
-
deleteFn:
|
|
6862
|
+
deleteListFn: accountService.deleteListIds,
|
|
6863
|
+
deleteFn: accountService.delete
|
|
6790
6864
|
}
|
|
6791
6865
|
);
|
|
6792
6866
|
}
|
|
6793
6867
|
|
|
6794
|
-
// src/
|
|
6868
|
+
// src/APIs/emailConfigService.ts
|
|
6795
6869
|
var CONTROLLER10 = "/EmailConfig";
|
|
6796
|
-
var
|
|
6870
|
+
var emailConfigService = __spreadValues({}, createBaseApi(CONTROLLER10, baseAxios_default));
|
|
6797
6871
|
|
|
6798
6872
|
// src/modules-features/admin/core/mailConfig/F_mailConfig_Read.tsx
|
|
6799
|
-
import { Center as
|
|
6873
|
+
import { Center as Center7 } from "@mantine/core";
|
|
6800
6874
|
import { useMemo as useMemo16 } from "react";
|
|
6801
6875
|
|
|
6802
6876
|
// src/modules-features/admin/core/mailConfig/F_mailConfig_CreateUpdate.tsx
|
|
@@ -6955,7 +7029,7 @@ import { jsx as jsx107, jsxs as jsxs59 } from "react/jsx-runtime";
|
|
|
6955
7029
|
function F_mailConfig_Read({ emailModule }) {
|
|
6956
7030
|
const mailConfigQuery = useMyReactQuery({
|
|
6957
7031
|
queryKey: ["mailConfigs"],
|
|
6958
|
-
axiosFn: () =>
|
|
7032
|
+
axiosFn: () => emailConfigService.getAll(),
|
|
6959
7033
|
mockData
|
|
6960
7034
|
});
|
|
6961
7035
|
const columns = useMemo16(() => [
|
|
@@ -6979,7 +7053,7 @@ function F_mailConfig_Read({ emailModule }) {
|
|
|
6979
7053
|
},
|
|
6980
7054
|
{
|
|
6981
7055
|
header: "SSL",
|
|
6982
|
-
accessorFn: (row) => /* @__PURE__ */ jsx107(
|
|
7056
|
+
accessorFn: (row) => /* @__PURE__ */ jsx107(Center7, { children: /* @__PURE__ */ jsx107(CustomThemeIconSquareCheck, { checked: row.isSslEnabled }) })
|
|
6983
7057
|
},
|
|
6984
7058
|
{
|
|
6985
7059
|
header: "Username",
|
|
@@ -7023,7 +7097,7 @@ import { jsx as jsx108 } from "react/jsx-runtime";
|
|
|
7023
7097
|
import { useEffect as useEffect26 } from "react";
|
|
7024
7098
|
|
|
7025
7099
|
// src/modules-features/admin/core/moduleConfig/F_moduleConfig_Form.tsx
|
|
7026
|
-
import { Center as
|
|
7100
|
+
import { Center as Center8, Grid as Grid7, Image as Image3, Paper as Paper9 } from "@mantine/core";
|
|
7027
7101
|
import { useForm as useForm14 } from "@mantine/form";
|
|
7028
7102
|
import { useEffect as useEffect25 } from "react";
|
|
7029
7103
|
|
|
@@ -7176,7 +7250,7 @@ function F_moduleConfig_Form() {
|
|
|
7176
7250
|
}
|
|
7177
7251
|
}
|
|
7178
7252
|
),
|
|
7179
|
-
/* @__PURE__ */ jsx110(Paper9, { w: "100%", children: /* @__PURE__ */ jsx110(
|
|
7253
|
+
/* @__PURE__ */ jsx110(Paper9, { w: "100%", children: /* @__PURE__ */ jsx110(Center8, { children: /* @__PURE__ */ jsx110(
|
|
7180
7254
|
Image3,
|
|
7181
7255
|
{
|
|
7182
7256
|
fit: "contain",
|
|
@@ -7202,7 +7276,7 @@ function F_moduleConfig_Form() {
|
|
|
7202
7276
|
}
|
|
7203
7277
|
}
|
|
7204
7278
|
),
|
|
7205
|
-
/* @__PURE__ */ jsx110(Paper9, { children: /* @__PURE__ */ jsx110(
|
|
7279
|
+
/* @__PURE__ */ jsx110(Paper9, { children: /* @__PURE__ */ jsx110(Center8, { children: /* @__PURE__ */ jsx110(
|
|
7206
7280
|
Image3,
|
|
7207
7281
|
{
|
|
7208
7282
|
fit: "contain",
|
|
@@ -7259,7 +7333,7 @@ function F_organizationPolicyDocs_Create({
|
|
|
7259
7333
|
DocumentType: RegulationsTypeId,
|
|
7260
7334
|
fileDetail: await utils_file_fileToAQDocumentType(values.file)
|
|
7261
7335
|
});
|
|
7262
|
-
return
|
|
7336
|
+
return documentService.create(body);
|
|
7263
7337
|
},
|
|
7264
7338
|
children: [
|
|
7265
7339
|
/* @__PURE__ */ jsx112(
|
|
@@ -7317,7 +7391,7 @@ import { useDisclosure as useDisclosure14 } from "@mantine/hooks";
|
|
|
7317
7391
|
import { useQuery as useQuery3 } from "@tanstack/react-query";
|
|
7318
7392
|
|
|
7319
7393
|
// src/core/button/MyButtonViewFile.tsx
|
|
7320
|
-
import { Button as Button14, Center as
|
|
7394
|
+
import { Button as Button14, Center as Center9, Loader, Text as Text19 } from "@mantine/core";
|
|
7321
7395
|
import { useDisclosure as useDisclosure13 } from "@mantine/hooks";
|
|
7322
7396
|
import { IconDownload as IconDownload3 } from "@tabler/icons-react";
|
|
7323
7397
|
import { useEffect as useEffect27, useState as useState23 } from "react";
|
|
@@ -7729,7 +7803,7 @@ function MyButtonViewFile(_a) {
|
|
|
7729
7803
|
label: file ? void 0 : "Kh\xF4ng c\xF3 file \u0111\u1EC3 hi\u1EC3n th\u1ECB"
|
|
7730
7804
|
}
|
|
7731
7805
|
}, rest.actionIconProps),
|
|
7732
|
-
children: loading ? /* @__PURE__ */ jsx116(
|
|
7806
|
+
children: loading ? /* @__PURE__ */ jsx116(Center9, { style: { width: "30rem", height: "30vh" }, children: /* @__PURE__ */ jsx116(Loader, { size: "lg" }) }) : file && isPreviewable(file.fileExtension) ? /* @__PURE__ */ jsx116(
|
|
7733
7807
|
"iframe",
|
|
7734
7808
|
{
|
|
7735
7809
|
src: previewUrl,
|
|
@@ -7790,7 +7864,7 @@ function F_organizationPolicyDocs_Delete({
|
|
|
7790
7864
|
MyActionIconDelete,
|
|
7791
7865
|
{
|
|
7792
7866
|
contextData,
|
|
7793
|
-
onSubmit: () =>
|
|
7867
|
+
onSubmit: () => documentService.delete(id)
|
|
7794
7868
|
}
|
|
7795
7869
|
);
|
|
7796
7870
|
}
|
|
@@ -7827,7 +7901,7 @@ function F_organizationPolicyDocs_Update({
|
|
|
7827
7901
|
const body = __spreadProps(__spreadValues({}, values2), {
|
|
7828
7902
|
fileDetail: await utils_file_fileToAQDocumentType(values2.file)
|
|
7829
7903
|
});
|
|
7830
|
-
return
|
|
7904
|
+
return documentService.update(body);
|
|
7831
7905
|
},
|
|
7832
7906
|
children: [
|
|
7833
7907
|
/* @__PURE__ */ jsx119(
|
|
@@ -7887,7 +7961,7 @@ function F_organizationPolicyDocs_Read({
|
|
|
7887
7961
|
const [openItems, setOpenItems] = useState24([]);
|
|
7888
7962
|
const documentAttributeQuery = useMyReactQuery({
|
|
7889
7963
|
queryKey: ["F_organizationPolicyDocs_Read", RegulationsTypeId],
|
|
7890
|
-
axiosFn: () =>
|
|
7964
|
+
axiosFn: () => documentAttributeService.GetByType(RegulationsTypeId)
|
|
7891
7965
|
});
|
|
7892
7966
|
useEffect28(() => {
|
|
7893
7967
|
var _a2;
|
|
@@ -7909,7 +7983,7 @@ function F_organizationPolicyDocs_Read({
|
|
|
7909
7983
|
radius: "sm",
|
|
7910
7984
|
styles: {
|
|
7911
7985
|
item: {
|
|
7912
|
-
backgroundColor:
|
|
7986
|
+
backgroundColor: colorsObject.mantineBackgroundTertiary
|
|
7913
7987
|
}
|
|
7914
7988
|
},
|
|
7915
7989
|
value: openItems,
|
|
@@ -7934,7 +8008,7 @@ function SubRead2({
|
|
|
7934
8008
|
}) {
|
|
7935
8009
|
const documentQuery = useMyReactQuery({
|
|
7936
8010
|
queryKey: ["SF2_3Read" + id],
|
|
7937
|
-
axiosFn: () =>
|
|
8011
|
+
axiosFn: () => documentService.GetByDocumentAttribute(id)
|
|
7938
8012
|
});
|
|
7939
8013
|
const columns = useMemo17(
|
|
7940
8014
|
() => [
|
|
@@ -8000,7 +8074,7 @@ function F_organizationPolicyDocs({ RegulationsTypeId }) {
|
|
|
8000
8074
|
}
|
|
8001
8075
|
|
|
8002
8076
|
// src/modules-features/admin/core/pageContent/PageContentTable.tsx
|
|
8003
|
-
import { Group as
|
|
8077
|
+
import { Group as Group24, TextInput as TextInput6 } from "@mantine/core";
|
|
8004
8078
|
import { useMemo as useMemo18 } from "react";
|
|
8005
8079
|
|
|
8006
8080
|
// src/modules-features/admin/core/pageContent/PageContentExport.tsx
|
|
@@ -8034,7 +8108,7 @@ function PageContentExport({ table }) {
|
|
|
8034
8108
|
import { jsx as jsx123 } from "react/jsx-runtime";
|
|
8035
8109
|
function PageContentSave({ values }) {
|
|
8036
8110
|
const mutation = useMyReactMutation({
|
|
8037
|
-
axiosFn: (mutateValue) =>
|
|
8111
|
+
axiosFn: (mutateValue) => pageService.updateList(mutateValue),
|
|
8038
8112
|
mutationType: "update"
|
|
8039
8113
|
});
|
|
8040
8114
|
return /* @__PURE__ */ jsx123(
|
|
@@ -8054,7 +8128,7 @@ import { jsx as jsx124, jsxs as jsxs67 } from "react/jsx-runtime";
|
|
|
8054
8128
|
function PageContentTable({ menuData }) {
|
|
8055
8129
|
const pageQuery = useMyReactQuery({
|
|
8056
8130
|
queryKey: ["pages"],
|
|
8057
|
-
axiosFn: () =>
|
|
8131
|
+
axiosFn: () => pageService.getAll(),
|
|
8058
8132
|
options: {
|
|
8059
8133
|
refetchOnWindowFocus: false
|
|
8060
8134
|
}
|
|
@@ -8148,7 +8222,7 @@ function PageContentTable({ menuData }) {
|
|
|
8148
8222
|
var _a;
|
|
8149
8223
|
return (_a = row.id) == null ? void 0 : _a.toString();
|
|
8150
8224
|
},
|
|
8151
|
-
renderTopToolbarCustomActions: ({ table }) => /* @__PURE__ */ jsxs67(
|
|
8225
|
+
renderTopToolbarCustomActions: ({ table }) => /* @__PURE__ */ jsxs67(Group24, { children: [
|
|
8152
8226
|
/* @__PURE__ */ jsx124(PageContentSave, { values: editedRows }),
|
|
8153
8227
|
/* @__PURE__ */ jsx124(PageContentExport, { table })
|
|
8154
8228
|
] })
|
|
@@ -8163,7 +8237,7 @@ function Feat_PageContentTable({ menuData }) {
|
|
|
8163
8237
|
}
|
|
8164
8238
|
|
|
8165
8239
|
// src/core/withAPI/CustomDataTableAPI.tsx
|
|
8166
|
-
import { Group as
|
|
8240
|
+
import { Group as Group25 } from "@mantine/core";
|
|
8167
8241
|
|
|
8168
8242
|
// src/core/button/MyButtonCreateUpdate/MyButtonCreateUpdate.tsx
|
|
8169
8243
|
import { Modal as Modal13, ScrollArea as ScrollArea3, Space as Space4, useMantineColorScheme as useMantineColorScheme5 } from "@mantine/core";
|
|
@@ -8172,11 +8246,11 @@ import { notifications as notifications4 } from "@mantine/notifications";
|
|
|
8172
8246
|
import { useEffect as useEffect29 } from "react";
|
|
8173
8247
|
|
|
8174
8248
|
// src/core/layout/MyFlexColumn.tsx
|
|
8175
|
-
import { Flex as
|
|
8249
|
+
import { Flex as Flex8 } from "@mantine/core";
|
|
8176
8250
|
import { jsx as jsx126 } from "react/jsx-runtime";
|
|
8177
8251
|
function MyFlexColumn2(_a) {
|
|
8178
8252
|
var _b = _a, { children } = _b, rest = __objRest(_b, ["children"]);
|
|
8179
|
-
return /* @__PURE__ */ jsx126(
|
|
8253
|
+
return /* @__PURE__ */ jsx126(Flex8, __spreadProps(__spreadValues({ direction: "column", gap: "md" }, rest), { children }));
|
|
8180
8254
|
}
|
|
8181
8255
|
|
|
8182
8256
|
// src/core/button/MyButtonCreateUpdate/MyButtonCreateUpdate.tsx
|
|
@@ -8378,7 +8452,7 @@ function CustomDataTableAPI(_a) {
|
|
|
8378
8452
|
}, rest), {
|
|
8379
8453
|
renderTopToolbarCustomActions: (props) => {
|
|
8380
8454
|
var _a2;
|
|
8381
|
-
return /* @__PURE__ */ jsxs69(
|
|
8455
|
+
return /* @__PURE__ */ jsxs69(Group25, { children: [
|
|
8382
8456
|
enableCreate !== false && buttonCreateUpdateProps && /* @__PURE__ */ jsx129(MyButtonCreateUpdate, __spreadProps(__spreadValues({}, buttonCreateUpdateProps), { children: renderCreateUpdateContent ? renderCreateUpdateContent(false) : buttonCreateUpdateProps.children })),
|
|
8383
8457
|
(_a2 = rest.renderTopToolbarCustomActions) == null ? void 0 : _a2.call(rest, props),
|
|
8384
8458
|
deleteListFn && /* @__PURE__ */ jsx129(CustomButtonDeleteListAPI, { deleteListFn, table: props.table })
|
|
@@ -8418,7 +8492,7 @@ import { useDisclosure as useDisclosure16 } from "@mantine/hooks";
|
|
|
8418
8492
|
import { useEffect as useEffect31, useState as useState26 } from "react";
|
|
8419
8493
|
|
|
8420
8494
|
// src/shared/features/Account/AccountTable.tsx
|
|
8421
|
-
import { Group as
|
|
8495
|
+
import { Group as Group26, TextInput as TextInput7 } from "@mantine/core";
|
|
8422
8496
|
import { useDebouncedValue as useDebouncedValue3 } from "@mantine/hooks";
|
|
8423
8497
|
import { IconSearch as IconSearch5 } from "@tabler/icons-react";
|
|
8424
8498
|
import { useEffect as useEffect30, useMemo as useMemo19, useState as useState25 } from "react";
|
|
@@ -8432,7 +8506,7 @@ function AccountTable(_a) {
|
|
|
8432
8506
|
const adminAccountQuery = useMyReactQuery({
|
|
8433
8507
|
queryKey: ["accounts", paginationState[0], globalFilter],
|
|
8434
8508
|
axiosFn: () => {
|
|
8435
|
-
return
|
|
8509
|
+
return accountService.getAdminAccount({
|
|
8436
8510
|
paging: {
|
|
8437
8511
|
pageNumber: paginationState[0].pageIndex + 1,
|
|
8438
8512
|
pageSize: paginationState[0].pageSize
|
|
@@ -8478,7 +8552,7 @@ function AccountTable(_a) {
|
|
|
8478
8552
|
columns,
|
|
8479
8553
|
renderTopToolbarCustomActions: (table) => {
|
|
8480
8554
|
var _a2;
|
|
8481
|
-
return /* @__PURE__ */ jsxs70(
|
|
8555
|
+
return /* @__PURE__ */ jsxs70(Group26, { children: [
|
|
8482
8556
|
(_a2 = rest == null ? void 0 : rest.renderTopToolbarCustomActions) == null ? void 0 : _a2.call(rest, table),
|
|
8483
8557
|
/* @__PURE__ */ jsx130(
|
|
8484
8558
|
TextInput7,
|
|
@@ -8552,12 +8626,12 @@ function RoleManagementUserByRoleTable({
|
|
|
8552
8626
|
const query = useMyReactQuery({
|
|
8553
8627
|
queryKey: ["users", "byRoleId", roleId],
|
|
8554
8628
|
axiosFn: () => {
|
|
8555
|
-
return
|
|
8629
|
+
return roleService.getUserByRole({ roleId });
|
|
8556
8630
|
}
|
|
8557
8631
|
});
|
|
8558
8632
|
const createMutation = useMyReactMutation({
|
|
8559
8633
|
axiosFn: async ({ userIds, roleId: roleId2 }) => {
|
|
8560
|
-
return
|
|
8634
|
+
return roleService.addUsers({ roleId: roleId2 }, userIds);
|
|
8561
8635
|
},
|
|
8562
8636
|
successNotification: "Th\xEAm th\xE0nh c\xF4ng"
|
|
8563
8637
|
});
|
|
@@ -8590,8 +8664,8 @@ function RoleManagementUserByRoleTable({
|
|
|
8590
8664
|
enableRowSelection: true,
|
|
8591
8665
|
columns,
|
|
8592
8666
|
query,
|
|
8593
|
-
deleteFn: (userId) =>
|
|
8594
|
-
deleteListFn: (userIds) =>
|
|
8667
|
+
deleteFn: (userId) => roleService.removeUsersFromRole({ roleId, userIds: [userId] }),
|
|
8668
|
+
deleteListFn: (userIds) => roleService.removeUsersFromRole({ roleId, userIds }),
|
|
8595
8669
|
renderTopToolbarCustomActions: () => {
|
|
8596
8670
|
var _a;
|
|
8597
8671
|
return /* @__PURE__ */ jsx132(
|
|
@@ -8633,8 +8707,8 @@ function RoleManagementCreateUpdate({ values }) {
|
|
|
8633
8707
|
},
|
|
8634
8708
|
form,
|
|
8635
8709
|
onSubmit: (formValues) => {
|
|
8636
|
-
if (isUpdate) return
|
|
8637
|
-
return
|
|
8710
|
+
if (isUpdate) return roleService.update(formValues);
|
|
8711
|
+
return roleService.create(formValues);
|
|
8638
8712
|
},
|
|
8639
8713
|
children: /* @__PURE__ */ jsx133(
|
|
8640
8714
|
CustomTabs,
|
|
@@ -8684,7 +8758,7 @@ import { jsx as jsx134 } from "react/jsx-runtime";
|
|
|
8684
8758
|
function RoleManagementTable() {
|
|
8685
8759
|
const query = useMyReactQuery({
|
|
8686
8760
|
queryKey: ["roles"],
|
|
8687
|
-
axiosFn: () =>
|
|
8761
|
+
axiosFn: () => roleService.getAdminRole()
|
|
8688
8762
|
});
|
|
8689
8763
|
const columns = useMemo21(() => [
|
|
8690
8764
|
{
|
|
@@ -8711,7 +8785,7 @@ function RoleManagementTable() {
|
|
|
8711
8785
|
{
|
|
8712
8786
|
query,
|
|
8713
8787
|
columns,
|
|
8714
|
-
deleteFn:
|
|
8788
|
+
deleteFn: roleService.delete,
|
|
8715
8789
|
renderTopToolbarCustomActions: () => /* @__PURE__ */ jsx134(RoleManagementCreateUpdate, {}),
|
|
8716
8790
|
renderRowActions: ({ row }) => /* @__PURE__ */ jsx134(RoleManagementCreateUpdate, { values: row.original })
|
|
8717
8791
|
}
|
|
@@ -8759,7 +8833,7 @@ function F_securityPolicyDocs_Create({ SecurityTypeId }) {
|
|
|
8759
8833
|
DocumentType: SecurityTypeId,
|
|
8760
8834
|
fileDetail: await utils_file_fileToAQDocumentType(values.file)
|
|
8761
8835
|
});
|
|
8762
|
-
return
|
|
8836
|
+
return documentService.create(body);
|
|
8763
8837
|
},
|
|
8764
8838
|
children: [
|
|
8765
8839
|
/* @__PURE__ */ jsx138(
|
|
@@ -8806,7 +8880,7 @@ function F_securityPolicyDocs_Delete({
|
|
|
8806
8880
|
MyActionIconDelete,
|
|
8807
8881
|
{
|
|
8808
8882
|
contextData,
|
|
8809
|
-
onSubmit: () =>
|
|
8883
|
+
onSubmit: () => documentService.delete(id)
|
|
8810
8884
|
}
|
|
8811
8885
|
);
|
|
8812
8886
|
}
|
|
@@ -8841,7 +8915,7 @@ function F_securityPolicyDocs_Update({ values }) {
|
|
|
8841
8915
|
const body = __spreadProps(__spreadValues({}, values2), {
|
|
8842
8916
|
fileDetail: await utils_file_fileToAQDocumentType(values2.file)
|
|
8843
8917
|
});
|
|
8844
|
-
return
|
|
8918
|
+
return documentService.update(body);
|
|
8845
8919
|
},
|
|
8846
8920
|
children: [
|
|
8847
8921
|
/* @__PURE__ */ jsx140(
|
|
@@ -8883,7 +8957,7 @@ import { jsx as jsx141, jsxs as jsxs75 } from "react/jsx-runtime";
|
|
|
8883
8957
|
function F_securityPolicyDocs_Read({ SecurityTypeId }) {
|
|
8884
8958
|
const query = useMyReactQuery({
|
|
8885
8959
|
queryKey: ["F_securityPolicyDocs_Read"],
|
|
8886
|
-
axiosFn: () =>
|
|
8960
|
+
axiosFn: () => documentService.GetByType(SecurityTypeId)
|
|
8887
8961
|
});
|
|
8888
8962
|
const columns = useMemo22(
|
|
8889
8963
|
() => [
|
|
@@ -8970,7 +9044,7 @@ function F_systemUpdateDocs_Create({
|
|
|
8970
9044
|
DocumentType: RefinementTypeId,
|
|
8971
9045
|
fileDetail: await utils_file_fileToAQDocumentType(values.file)
|
|
8972
9046
|
});
|
|
8973
|
-
return
|
|
9047
|
+
return documentService.create(body);
|
|
8974
9048
|
},
|
|
8975
9049
|
children: [
|
|
8976
9050
|
/* @__PURE__ */ jsx143(
|
|
@@ -9033,7 +9107,7 @@ function F_systemUpdateDocs_Delete({
|
|
|
9033
9107
|
MyActionIconDelete,
|
|
9034
9108
|
{
|
|
9035
9109
|
contextData,
|
|
9036
|
-
onSubmit: () =>
|
|
9110
|
+
onSubmit: () => documentService.delete(id)
|
|
9037
9111
|
}
|
|
9038
9112
|
);
|
|
9039
9113
|
}
|
|
@@ -9072,7 +9146,7 @@ function F_systemUpdateDocs_Update({ values }) {
|
|
|
9072
9146
|
const body = __spreadProps(__spreadValues({}, values2), {
|
|
9073
9147
|
fileDetail: await utils_file_fileToAQDocumentType(values2.file)
|
|
9074
9148
|
});
|
|
9075
|
-
return
|
|
9149
|
+
return documentService.update(body);
|
|
9076
9150
|
},
|
|
9077
9151
|
children: [
|
|
9078
9152
|
/* @__PURE__ */ jsx145(
|
|
@@ -9130,7 +9204,7 @@ import { jsx as jsx146, jsxs as jsxs78 } from "react/jsx-runtime";
|
|
|
9130
9204
|
function F_systemUpdateDocs({ RefinementTypeId }) {
|
|
9131
9205
|
const query = useMyReactQuery({
|
|
9132
9206
|
queryKey: ["F_systemUpdateDocs_Read"],
|
|
9133
|
-
axiosFn: () =>
|
|
9207
|
+
axiosFn: () => documentService.GetByType(RefinementTypeId)
|
|
9134
9208
|
});
|
|
9135
9209
|
const columns = useMemo23(
|
|
9136
9210
|
() => [
|
|
@@ -9209,7 +9283,7 @@ function F_userGuideDocs_Create({ GuidelineTypeId }) {
|
|
|
9209
9283
|
DocumentType: GuidelineTypeId,
|
|
9210
9284
|
fileDetail: await utils_file_fileToAQDocumentType(values.file)
|
|
9211
9285
|
});
|
|
9212
|
-
return
|
|
9286
|
+
return documentService.create(body);
|
|
9213
9287
|
},
|
|
9214
9288
|
children: [
|
|
9215
9289
|
/* @__PURE__ */ jsx147(
|
|
@@ -9249,7 +9323,7 @@ function F_userGuideDocs_Delete({
|
|
|
9249
9323
|
MyActionIconDelete,
|
|
9250
9324
|
{
|
|
9251
9325
|
contextData,
|
|
9252
|
-
onSubmit: () =>
|
|
9326
|
+
onSubmit: () => documentService.delete(id)
|
|
9253
9327
|
}
|
|
9254
9328
|
);
|
|
9255
9329
|
}
|
|
@@ -9282,7 +9356,7 @@ function F_userGuideDocs_Update({ values }) {
|
|
|
9282
9356
|
const body = __spreadProps(__spreadValues({}, values2), {
|
|
9283
9357
|
fileDetail: await utils_file_fileToAQDocumentType(values2.file)
|
|
9284
9358
|
});
|
|
9285
|
-
return
|
|
9359
|
+
return documentService.update(body);
|
|
9286
9360
|
},
|
|
9287
9361
|
children: [
|
|
9288
9362
|
/* @__PURE__ */ jsx149(
|
|
@@ -9318,7 +9392,7 @@ import { jsx as jsx150, jsxs as jsxs81 } from "react/jsx-runtime";
|
|
|
9318
9392
|
function F_userGuideDocs_Read({ GuidelineTypeId }) {
|
|
9319
9393
|
const query = useMyReactQuery({
|
|
9320
9394
|
queryKey: ["F_userGuideDocs_Read"],
|
|
9321
|
-
axiosFn: () =>
|
|
9395
|
+
axiosFn: () => documentService.GetByType(GuidelineTypeId)
|
|
9322
9396
|
});
|
|
9323
9397
|
const columns = useMemo24(
|
|
9324
9398
|
() => [
|
|
@@ -9398,7 +9472,7 @@ function F_workflowProcessDocs_Create({
|
|
|
9398
9472
|
DocumentType: WorkflowTypeId,
|
|
9399
9473
|
fileDetail: await utils_file_fileToAQDocumentType(values.file)
|
|
9400
9474
|
});
|
|
9401
|
-
return
|
|
9475
|
+
return documentService.create(body);
|
|
9402
9476
|
},
|
|
9403
9477
|
children: [
|
|
9404
9478
|
/* @__PURE__ */ jsx152(
|
|
@@ -9463,7 +9537,7 @@ function F_workflowProcessDocs_Delete({
|
|
|
9463
9537
|
MyActionIconDelete,
|
|
9464
9538
|
{
|
|
9465
9539
|
contextData,
|
|
9466
|
-
onSubmit: () =>
|
|
9540
|
+
onSubmit: () => documentService.delete(id)
|
|
9467
9541
|
}
|
|
9468
9542
|
);
|
|
9469
9543
|
}
|
|
@@ -9500,7 +9574,7 @@ function F_workflowProcessDocs_Update({
|
|
|
9500
9574
|
const body = __spreadProps(__spreadValues({}, values2), {
|
|
9501
9575
|
fileDetail: await utils_file_fileToAQDocumentType(values2.file)
|
|
9502
9576
|
});
|
|
9503
|
-
return
|
|
9577
|
+
return documentService.update(body);
|
|
9504
9578
|
},
|
|
9505
9579
|
children: [
|
|
9506
9580
|
/* @__PURE__ */ jsx154(
|
|
@@ -9560,7 +9634,7 @@ function F_workflowProcessDocs_Read({
|
|
|
9560
9634
|
const [openItems, setOpenItems] = useState28([]);
|
|
9561
9635
|
const documentAttributeQuery = useMyReactQuery({
|
|
9562
9636
|
queryKey: ["F_workflowProcessDocs_Read" + WorkflowTypeId],
|
|
9563
|
-
axiosFn: () =>
|
|
9637
|
+
axiosFn: () => documentAttributeService.GetByType(WorkflowTypeId)
|
|
9564
9638
|
});
|
|
9565
9639
|
useEffect33(() => {
|
|
9566
9640
|
var _a2;
|
|
@@ -9582,7 +9656,7 @@ function F_workflowProcessDocs_Read({
|
|
|
9582
9656
|
radius: "sm",
|
|
9583
9657
|
styles: {
|
|
9584
9658
|
item: {
|
|
9585
|
-
backgroundColor:
|
|
9659
|
+
backgroundColor: colorsObject.mantineBackgroundTertiary
|
|
9586
9660
|
}
|
|
9587
9661
|
},
|
|
9588
9662
|
value: openItems,
|
|
@@ -9607,7 +9681,7 @@ function SubRead3({
|
|
|
9607
9681
|
}) {
|
|
9608
9682
|
const documentQuery = useMyReactQuery({
|
|
9609
9683
|
queryKey: ["F_workflowProcessDocs_Read" + id],
|
|
9610
|
-
axiosFn: () =>
|
|
9684
|
+
axiosFn: () => documentService.GetByDocumentAttribute(id)
|
|
9611
9685
|
});
|
|
9612
9686
|
const columns = useMemo25(
|
|
9613
9687
|
() => [
|
|
@@ -9679,10 +9753,10 @@ import {
|
|
|
9679
9753
|
Anchor as Anchor2,
|
|
9680
9754
|
BackgroundImage,
|
|
9681
9755
|
Button as Button15,
|
|
9682
|
-
Center as
|
|
9756
|
+
Center as Center10,
|
|
9683
9757
|
Checkbox as Checkbox6,
|
|
9684
|
-
Flex as
|
|
9685
|
-
Group as
|
|
9758
|
+
Flex as Flex9,
|
|
9759
|
+
Group as Group27,
|
|
9686
9760
|
Paper as Paper10,
|
|
9687
9761
|
PasswordInput as PasswordInput3,
|
|
9688
9762
|
TextInput as TextInput9,
|
|
@@ -9803,8 +9877,8 @@ function Feat_Authenticate_Login({
|
|
|
9803
9877
|
{
|
|
9804
9878
|
src: `${siteUrl}${backgroundImage}`,
|
|
9805
9879
|
h: "100vh",
|
|
9806
|
-
children: /* @__PURE__ */ jsx157(
|
|
9807
|
-
header ? header : /* @__PURE__ */ jsx157(
|
|
9880
|
+
children: /* @__PURE__ */ jsx157(Center10, { h: "100vh", children: /* @__PURE__ */ jsxs86(Paper10, { withBorder: true, w: 400, m: "md", shadow: "md", p: 30, mt: 30, radius: "md", children: [
|
|
9881
|
+
header ? header : /* @__PURE__ */ jsx157(Flex9, { direction: "column", mb: "md", children: /* @__PURE__ */ jsx157(Title2, { ta: "center", fw: "900", children: "\u0110\u0103ng nh\u1EADp!" }) }),
|
|
9808
9882
|
/* @__PURE__ */ jsx157("form", { onSubmit: form.onSubmit(async (values) => handleSubmit(values.username, values.password)), children: /* @__PURE__ */ jsxs86(MyFlexColumn, { children: [
|
|
9809
9883
|
/* @__PURE__ */ jsx157(
|
|
9810
9884
|
TextInput9,
|
|
@@ -9822,7 +9896,7 @@ function Feat_Authenticate_Login({
|
|
|
9822
9896
|
withAsterisk: true
|
|
9823
9897
|
})
|
|
9824
9898
|
),
|
|
9825
|
-
/* @__PURE__ */ jsxs86(
|
|
9899
|
+
/* @__PURE__ */ jsxs86(Group27, { justify: "space-between", children: [
|
|
9826
9900
|
showSaveLogin && /* @__PURE__ */ jsx157(
|
|
9827
9901
|
Checkbox6,
|
|
9828
9902
|
{
|
|
@@ -9970,7 +10044,7 @@ function F_authenticate_SplashPage() {
|
|
|
9970
10044
|
}
|
|
9971
10045
|
|
|
9972
10046
|
// src/modules-features/authenticate/tokenExpired/Feat_TokenExpired.tsx
|
|
9973
|
-
import { Button as Button17, Card as Card2, CardSection, Center as
|
|
10047
|
+
import { Button as Button17, Card as Card2, CardSection, Center as Center11, Text as Text20, Title as Title3 } from "@mantine/core";
|
|
9974
10048
|
import { Clock, LogIn, Shield } from "lucide-react";
|
|
9975
10049
|
import { jsx as jsx161, jsxs as jsxs88 } from "react/jsx-runtime";
|
|
9976
10050
|
function Feat_TokenExpired({
|
|
@@ -9986,7 +10060,7 @@ function Feat_TokenExpired({
|
|
|
9986
10060
|
] }),
|
|
9987
10061
|
/* @__PURE__ */ jsxs88(Card2, { className: "relative backdrop-blur-sm bg-white/80 border-0 shadow-2xl shadow-blue-500/10 py-12 px-8 rounded-xl", children: [
|
|
9988
10062
|
/* @__PURE__ */ jsxs88(CardSection, { className: "text-center space-y-6 pb-8", children: [
|
|
9989
|
-
/* @__PURE__ */ jsx161("div", { className: "relative", children: /* @__PURE__ */ jsx161(
|
|
10063
|
+
/* @__PURE__ */ jsx161("div", { className: "relative", children: /* @__PURE__ */ jsx161(Center11, { children: /* @__PURE__ */ jsx161("div", { className: "w-20 h-20 bg-gradient-to-br from-orange-400 to-red-500 rounded-full flex items-center justify-center shadow-lg shadow-orange-500/25 animate-pulse", children: /* @__PURE__ */ jsx161(Clock, { className: "w-10 h-10 text-white" }) }) }) }),
|
|
9990
10064
|
/* @__PURE__ */ jsxs88("div", { className: "space-y-3", children: [
|
|
9991
10065
|
/* @__PURE__ */ jsx161(Title3, { className: "text-3xl font-bold bg-gradient-to-r from-gray-800 to-gray-600 bg-clip-text text-transparent", children: "Phi\xEAn \u0111\u0103ng nh\u1EADp \u0111\xE3 h\u1EBFt h\u1EA1n" }),
|
|
9992
10066
|
/* @__PURE__ */ jsxs88(Text20, { className: "text-gray-600 text-base leading-relaxed px-2", children: [
|
|
@@ -10042,14 +10116,14 @@ function SessionUserInfo() {
|
|
|
10042
10116
|
const authenticateStore = useStore_Authenticate();
|
|
10043
10117
|
const fullName = authenticateStore.state.fullName || null;
|
|
10044
10118
|
const code = authenticateStore.state.code || null;
|
|
10045
|
-
return /* @__PURE__ */ jsxs89(Card3, { bg:
|
|
10119
|
+
return /* @__PURE__ */ jsxs89(Card3, { bg: colorsObject.mantineBackgroundTealLight, children: [
|
|
10046
10120
|
/* @__PURE__ */ jsx162(MyLabelValueRow, { size: "sm", label: "T\xE0i kho\u1EA3n", value: code }),
|
|
10047
10121
|
/* @__PURE__ */ jsx162(MyLabelValueRow, { size: "sm", label: "H\u1ECD v\xE0 t\xEAn", value: fullName })
|
|
10048
10122
|
] });
|
|
10049
10123
|
}
|
|
10050
10124
|
|
|
10051
10125
|
// src/modules-features/basicAppShell/UserAvatarMenu.tsx
|
|
10052
|
-
import { Avatar, Divider, Group as
|
|
10126
|
+
import { Avatar, Divider, Group as Group28, Menu, Text as Text21 } from "@mantine/core";
|
|
10053
10127
|
import { useDisclosure as useDisclosure17 } from "@mantine/hooks";
|
|
10054
10128
|
import { KeyRound } from "lucide-react";
|
|
10055
10129
|
|
|
@@ -10061,7 +10135,7 @@ import { useForm as useForm27 } from "@mantine/form";
|
|
|
10061
10135
|
function useForgotPassword() {
|
|
10062
10136
|
const { state } = useStore_Authenticate();
|
|
10063
10137
|
const changePassWordMutation = useMyReactMutation({
|
|
10064
|
-
axiosFn: ({ currentPassWord, newPassWord }) =>
|
|
10138
|
+
axiosFn: ({ currentPassWord, newPassWord }) => accountService.changePassWord({
|
|
10065
10139
|
currentPassWord,
|
|
10066
10140
|
newPassWord,
|
|
10067
10141
|
userId: state.userId
|
|
@@ -10143,7 +10217,7 @@ function UserAvatarMenu() {
|
|
|
10143
10217
|
}
|
|
10144
10218
|
) }),
|
|
10145
10219
|
/* @__PURE__ */ jsxs91(Menu.Dropdown, { children: [
|
|
10146
|
-
/* @__PURE__ */ jsx164(Menu.Label, { children: /* @__PURE__ */ jsxs91(
|
|
10220
|
+
/* @__PURE__ */ jsx164(Menu.Label, { children: /* @__PURE__ */ jsxs91(Group28, { gap: "xs", children: [
|
|
10147
10221
|
/* @__PURE__ */ jsx164(Avatar, { size: "sm", radius: "xl", color: "green", children: avatarLabel }),
|
|
10148
10222
|
/* @__PURE__ */ jsxs91("div", { children: [
|
|
10149
10223
|
/* @__PURE__ */ jsx164(Text21, { fw: 500, size: "sm", children: fullName }),
|
|
@@ -10311,7 +10385,7 @@ function BasicAppShell({ children, menu, extraTopRight, title, logoutRedirect, i
|
|
|
10311
10385
|
const media = useMediaQuery("(min-width: 72em)");
|
|
10312
10386
|
const pageContentQuery = useMyReactQuery({
|
|
10313
10387
|
queryKey: ["pageContents"],
|
|
10314
|
-
axiosFn: () =>
|
|
10388
|
+
axiosFn: () => pageService.getAll()
|
|
10315
10389
|
});
|
|
10316
10390
|
const permissionStore = useStore_Permission();
|
|
10317
10391
|
const appShellStore = useStore_BasicAppShell();
|
|
@@ -10392,18 +10466,18 @@ function BasicAppShell({ children, menu, extraTopRight, title, logoutRedirect, i
|
|
|
10392
10466
|
}
|
|
10393
10467
|
}, [pathname, allChildItems, filteredMenu, readablePageIds, pageContentQuery.data]);
|
|
10394
10468
|
const canAccess = isDev || isAccessible || permissionStore.state.isSuperAdmin;
|
|
10395
|
-
const renderHeader = () => /* @__PURE__ */ jsx165(AppShell.Header, { children: media ? /* @__PURE__ */ jsxs92(
|
|
10396
|
-
/* @__PURE__ */ jsxs92(
|
|
10469
|
+
const renderHeader = () => /* @__PURE__ */ jsx165(AppShell.Header, { children: media ? /* @__PURE__ */ jsxs92(Group29, { h: "100%", px: "md", justify: "space-between", children: [
|
|
10470
|
+
/* @__PURE__ */ jsxs92(Group29, { h: "100%", children: [
|
|
10397
10471
|
/* @__PURE__ */ jsx165(Tooltip5, { label: appShellStore.state.opened ? "\u1EA8n thanh menu" : "Hi\u1EC7n thanh menu", children: /* @__PURE__ */ jsx165(ActionIcon11, { variant: "default", size: "lg", radius: "md", onClick: appShellStore.toggle, children: appShellStore.state.opened ? /* @__PURE__ */ jsx165(IconLayoutSidebarLeftExpand, {}) : /* @__PURE__ */ jsx165(IconLayoutSidebarLeftCollapse, {}) }) }),
|
|
10398
10472
|
/* @__PURE__ */ jsx165(Tooltip5, { label: "\u0110\xF3ng t\u1EA5t c\u1EA3 menu", children: /* @__PURE__ */ jsx165(ActionIcon11, { variant: "default", size: "lg", radius: "md", onClick: appShellStore.clearGroupMenuOpenId, children: /* @__PURE__ */ jsx165(IconLibraryMinus, {}) }) })
|
|
10399
10473
|
] }),
|
|
10400
|
-
/* @__PURE__ */ jsx165(Tooltip5, { label: title || `${appShellStore.state.moduleCode} - ${appShellStore.state.moduleName}`, children: /* @__PURE__ */ jsx165(
|
|
10401
|
-
/* @__PURE__ */ jsxs92(
|
|
10474
|
+
/* @__PURE__ */ jsx165(Tooltip5, { label: title || `${appShellStore.state.moduleCode} - ${appShellStore.state.moduleName}`, children: /* @__PURE__ */ jsx165(Group29, { style: { position: "absolute", left: "50%", transform: "translateX(-50%)" }, children: /* @__PURE__ */ jsx165(Text22, { c: "green", fw: "bold", size: "sm", children: title || `${appShellStore.state.moduleCode} - ${appShellStore.state.moduleName}` }) }) }),
|
|
10475
|
+
/* @__PURE__ */ jsxs92(Group29, { children: [
|
|
10402
10476
|
extraTopRight,
|
|
10403
10477
|
/* @__PURE__ */ jsx165(CustomSwitchTheme, {}),
|
|
10404
10478
|
/* @__PURE__ */ jsx165(UserAvatarMenu, {})
|
|
10405
10479
|
] })
|
|
10406
|
-
] }) : /* @__PURE__ */ jsxs92(
|
|
10480
|
+
] }) : /* @__PURE__ */ jsxs92(Group29, { h: "100%", px: "md", justify: "space-between", children: [
|
|
10407
10481
|
/* @__PURE__ */ jsx165(ActionIcon11, { variant: "default", size: "lg", radius: "md", onClick: appShellStore.toggle, children: appShellStore.state.opened ? /* @__PURE__ */ jsx165(IconLayoutSidebarLeftExpand, {}) : /* @__PURE__ */ jsx165(IconLayoutSidebarLeftCollapse, {}) }),
|
|
10408
10482
|
/* @__PURE__ */ jsx165(
|
|
10409
10483
|
Tooltip5,
|
|
@@ -10431,7 +10505,7 @@ function BasicAppShell({ children, menu, extraTopRight, title, logoutRedirect, i
|
|
|
10431
10505
|
)
|
|
10432
10506
|
}
|
|
10433
10507
|
),
|
|
10434
|
-
/* @__PURE__ */ jsxs92(
|
|
10508
|
+
/* @__PURE__ */ jsxs92(Group29, { children: [
|
|
10435
10509
|
extraTopRight,
|
|
10436
10510
|
/* @__PURE__ */ jsx165(CustomSwitchTheme, {}),
|
|
10437
10511
|
/* @__PURE__ */ jsx165(UserAvatarMenu, {})
|
|
@@ -10451,7 +10525,7 @@ function BasicAppShell({ children, menu, extraTopRight, title, logoutRedirect, i
|
|
|
10451
10525
|
/* @__PURE__ */ jsx165(SessionUserInfo, {}),
|
|
10452
10526
|
/* @__PURE__ */ jsx165(Space6, { m: 4 }),
|
|
10453
10527
|
/* @__PURE__ */ jsx165(Feat_Authenticate_Logout, { redirectURL: logoutRedirect }),
|
|
10454
|
-
/* @__PURE__ */ jsx165(
|
|
10528
|
+
/* @__PURE__ */ jsx165(Box7, { px: "md", children: /* @__PURE__ */ jsx165(
|
|
10455
10529
|
Image4,
|
|
10456
10530
|
{
|
|
10457
10531
|
fit: "contain",
|
|
@@ -10493,22 +10567,22 @@ function BasicAppShell({ children, menu, extraTopRight, title, logoutRedirect, i
|
|
|
10493
10567
|
}
|
|
10494
10568
|
|
|
10495
10569
|
// src/components/Layouts/Container/MyContainer.tsx
|
|
10496
|
-
import { Container, Flex as
|
|
10570
|
+
import { Container, Flex as Flex10 } from "@mantine/core";
|
|
10497
10571
|
import { jsx as jsx166 } from "react/jsx-runtime";
|
|
10498
10572
|
function MyContainer(_a) {
|
|
10499
10573
|
var _b = _a, { children } = _b, rest = __objRest(_b, ["children"]);
|
|
10500
|
-
return /* @__PURE__ */ jsx166(Container, __spreadProps(__spreadValues({ fluid: true }, rest), { children: /* @__PURE__ */ jsx166(
|
|
10574
|
+
return /* @__PURE__ */ jsx166(Container, __spreadProps(__spreadValues({ fluid: true }, rest), { children: /* @__PURE__ */ jsx166(Flex10, { direction: "column", children }) }));
|
|
10501
10575
|
}
|
|
10502
10576
|
|
|
10503
10577
|
// src/components/Layouts/HeaderMegaMenu/HeaderMegaMenu.tsx
|
|
10504
10578
|
import {
|
|
10505
|
-
Box as
|
|
10579
|
+
Box as Box8,
|
|
10506
10580
|
Burger,
|
|
10507
10581
|
Button as Button19,
|
|
10508
10582
|
Container as Container2,
|
|
10509
10583
|
Divider as Divider2,
|
|
10510
10584
|
Drawer,
|
|
10511
|
-
Group as
|
|
10585
|
+
Group as Group30,
|
|
10512
10586
|
Image as Image5,
|
|
10513
10587
|
ScrollArea as ScrollArea5,
|
|
10514
10588
|
Text as Text23,
|
|
@@ -10579,26 +10653,26 @@ function HeaderMegaMenu({ children, menus }) {
|
|
|
10579
10653
|
const [linksOpened, { toggle: toggleLinks }] = useDisclosure18(false);
|
|
10580
10654
|
const HeaderMegaMenuStore = useHeaderMegaMenuStore();
|
|
10581
10655
|
const theme = useMantineTheme();
|
|
10582
|
-
const links = mockdata.map((item) => /* @__PURE__ */ jsx167(UnstyledButton, { className: classes.subLink, children: /* @__PURE__ */ jsxs93(
|
|
10656
|
+
const links = mockdata.map((item) => /* @__PURE__ */ jsx167(UnstyledButton, { className: classes.subLink, children: /* @__PURE__ */ jsxs93(Group30, { wrap: "nowrap", align: "flex-start", children: [
|
|
10583
10657
|
/* @__PURE__ */ jsx167(ThemeIcon2, { size: 34, variant: "default", radius: "md", children: /* @__PURE__ */ jsx167(item.icon, { size: 22, color: theme.colors.blue[6] }) }),
|
|
10584
10658
|
/* @__PURE__ */ jsxs93("div", { children: [
|
|
10585
10659
|
/* @__PURE__ */ jsx167(Text23, { size: "sm", fw: 500, children: item.title }),
|
|
10586
10660
|
/* @__PURE__ */ jsx167(Text23, { size: "xs", c: "dimmed", children: item.description })
|
|
10587
10661
|
] })
|
|
10588
10662
|
] }) }, item.title));
|
|
10589
|
-
return /* @__PURE__ */ jsxs93(
|
|
10590
|
-
/* @__PURE__ */ jsx167("header", { className: classes.header, children: /* @__PURE__ */ jsxs93(
|
|
10591
|
-
/* @__PURE__ */ jsxs93(
|
|
10663
|
+
return /* @__PURE__ */ jsxs93(Box8, { children: [
|
|
10664
|
+
/* @__PURE__ */ jsx167("header", { className: classes.header, children: /* @__PURE__ */ jsxs93(Group30, { justify: "space-between", h: "100%", children: [
|
|
10665
|
+
/* @__PURE__ */ jsxs93(Group30, { children: [
|
|
10592
10666
|
/* @__PURE__ */ jsx167(Image5, { src: "/imgs/0/IMG0LogoAQTech.png", h: 30, alt: "", w: "auto" }),
|
|
10593
|
-
/* @__PURE__ */ jsx167(
|
|
10667
|
+
/* @__PURE__ */ jsx167(Group30, { h: "100%", gap: 5, visibleFrom: "sm", children: menus == null ? void 0 : menus.map((item, idx) => /* @__PURE__ */ jsx167(Button19, { component: Link4, href: item.href, variant: HeaderMegaMenuStore.state.name == item.label ? "light" : "subtle", onClick: () => HeaderMegaMenuStore.setState({ name: item.label }), children: item.label }, idx)) })
|
|
10594
10668
|
] }),
|
|
10595
|
-
/* @__PURE__ */ jsxs93(
|
|
10669
|
+
/* @__PURE__ */ jsxs93(Group30, { children: [
|
|
10596
10670
|
/* @__PURE__ */ jsx167(TextInput10, { placeholder: "T\xECm ki\u1EBFm", leftSection: /* @__PURE__ */ jsx167(IconSearch6, {}), radius: "xl", w: "250px" }),
|
|
10597
10671
|
/* @__PURE__ */ jsx167(CustomSwitchTheme, {})
|
|
10598
10672
|
] }),
|
|
10599
10673
|
/* @__PURE__ */ jsx167(Burger, { opened: drawerOpened, onClick: toggleDrawer, hiddenFrom: "sm" })
|
|
10600
10674
|
] }) }),
|
|
10601
|
-
/* @__PURE__ */ jsx167(Container2, { fluid: true, pt: "sm", pb: "md", bg:
|
|
10675
|
+
/* @__PURE__ */ jsx167(Container2, { fluid: true, pt: "sm", pb: "md", bg: colorsObject.mantineBackgroundSecondary, mih: "93vh", children }),
|
|
10602
10676
|
/* @__PURE__ */ jsx167(
|
|
10603
10677
|
Drawer,
|
|
10604
10678
|
{
|
|
@@ -10619,9 +10693,9 @@ function HeaderMegaMenu({ children, menus }) {
|
|
|
10619
10693
|
] });
|
|
10620
10694
|
}
|
|
10621
10695
|
|
|
10622
|
-
// src/
|
|
10696
|
+
// src/APIs/aqService.ts
|
|
10623
10697
|
var CONTROLLER11 = "/AQ";
|
|
10624
|
-
var
|
|
10698
|
+
var aqService = __spreadProps(__spreadValues({}, createBaseApi(CONTROLLER11, baseAxios_default)), {
|
|
10625
10699
|
getFile: (params) => {
|
|
10626
10700
|
return baseAxios_default.get(
|
|
10627
10701
|
CONTROLLER11 + `/GetFile`,
|
|
@@ -10631,7 +10705,7 @@ var service_aq = __spreadProps(__spreadValues({}, createBaseApi(CONTROLLER11, ba
|
|
|
10631
10705
|
});
|
|
10632
10706
|
|
|
10633
10707
|
// src/components/Layouts/PageContent/MyPageContent.tsx
|
|
10634
|
-
import { Breadcrumbs, Center as
|
|
10708
|
+
import { Breadcrumbs, Center as Center12, Container as Container3, Divider as Divider3, Flex as Flex11, Group as Group31, Stack as Stack11, Text as Text24, Title as Title4, Tooltip as Tooltip6 } from "@mantine/core";
|
|
10635
10709
|
import { useClipboard, useDisclosure as useDisclosure19 } from "@mantine/hooks";
|
|
10636
10710
|
import { notifications as notifications6 } from "@mantine/notifications";
|
|
10637
10711
|
import { IconBrandParsinta } from "@tabler/icons-react";
|
|
@@ -10662,8 +10736,8 @@ function getFinalLinkVieo(url) {
|
|
|
10662
10736
|
// src/components/Layouts/PageContent/MyPageContent.tsx
|
|
10663
10737
|
import { jsx as jsx168, jsxs as jsxs94 } from "react/jsx-runtime";
|
|
10664
10738
|
function PageTitle({ title, status, note }) {
|
|
10665
|
-
return /* @__PURE__ */ jsx168(
|
|
10666
|
-
/* @__PURE__ */ jsxs94(
|
|
10739
|
+
return /* @__PURE__ */ jsx168(Group31, { children: /* @__PURE__ */ jsxs94(MyFlexColumn, { gap: 0, children: [
|
|
10740
|
+
/* @__PURE__ */ jsxs94(Group31, { align: "center", children: [
|
|
10667
10741
|
/* @__PURE__ */ jsx168(Title4, { order: 3, children: title }),
|
|
10668
10742
|
status && getMenuStatusBadge(status)
|
|
10669
10743
|
] }),
|
|
@@ -10683,7 +10757,7 @@ function MyPageContent({
|
|
|
10683
10757
|
const query = useMyReactQuery({
|
|
10684
10758
|
queryKey: ["MyButtonViewPDF", basicAppShellStore.state.fileGuildePath],
|
|
10685
10759
|
axiosFn: async () => {
|
|
10686
|
-
return
|
|
10760
|
+
return aqService.getFile({ filePath: basicAppShellStore.state.fileGuildePath });
|
|
10687
10761
|
},
|
|
10688
10762
|
options: {
|
|
10689
10763
|
enabled: basicAppShellStore.state.fileGuildePath != void 0
|
|
@@ -10697,11 +10771,11 @@ function MyPageContent({
|
|
|
10697
10771
|
fileGuildDetailState[1](query.data);
|
|
10698
10772
|
}, [query.data]);
|
|
10699
10773
|
return /* @__PURE__ */ jsxs94(Container3, { p: 0, fluid: true, children: [
|
|
10700
|
-
/* @__PURE__ */ jsxs94(
|
|
10701
|
-
/* @__PURE__ */ jsxs94(
|
|
10774
|
+
/* @__PURE__ */ jsxs94(Group31, { justify: "space-between", children: [
|
|
10775
|
+
/* @__PURE__ */ jsxs94(Group31, { children: [
|
|
10702
10776
|
/* @__PURE__ */ jsx168(MyButtonRouterBack, {}),
|
|
10703
10777
|
/* @__PURE__ */ jsxs94(Stack11, { gap: 2, children: [
|
|
10704
|
-
/* @__PURE__ */ jsxs94(
|
|
10778
|
+
/* @__PURE__ */ jsxs94(Flex11, { align: "center", gap: "10", children: [
|
|
10705
10779
|
/* @__PURE__ */ jsx168(
|
|
10706
10780
|
PageTitle,
|
|
10707
10781
|
{
|
|
@@ -10727,7 +10801,7 @@ function MyPageContent({
|
|
|
10727
10801
|
label: "Xem video h\u01B0\u1EDBng d\u1EABn"
|
|
10728
10802
|
}
|
|
10729
10803
|
},
|
|
10730
|
-
children: /* @__PURE__ */ jsx168(
|
|
10804
|
+
children: /* @__PURE__ */ jsx168(Center12, { h: "67vh", p: "md", children: getFinalLinkVieo(basicAppShellStore.state.videoLink || "") == "" ? "\u0110\u01B0\u1EDDng d\u1EABn video kh\xF4ng h\u1EE3p l\u1EC7" : /* @__PURE__ */ jsx168(
|
|
10731
10805
|
"iframe",
|
|
10732
10806
|
{
|
|
10733
10807
|
width: "90%",
|
|
@@ -10763,7 +10837,7 @@ function MyPageContent({
|
|
|
10763
10837
|
] }),
|
|
10764
10838
|
leftTopBar
|
|
10765
10839
|
] }),
|
|
10766
|
-
/* @__PURE__ */ jsxs94(
|
|
10840
|
+
/* @__PURE__ */ jsxs94(Group31, { p: "md", children: [
|
|
10767
10841
|
rightTopBar,
|
|
10768
10842
|
/* @__PURE__ */ jsx168(Breadcrumbs, { style: { cursor: "pointer" }, separatorMargin: "7", onClick: () => {
|
|
10769
10843
|
var _a2;
|
|
@@ -10796,7 +10870,7 @@ function MyTab(_a) {
|
|
|
10796
10870
|
}
|
|
10797
10871
|
|
|
10798
10872
|
// src/components/RESTAPIComponents/DataTableSelect/MyDataTableSelect.tsx
|
|
10799
|
-
import { ActionIcon as ActionIcon12, Button as Button20, Fieldset as Fieldset3, Group as
|
|
10873
|
+
import { ActionIcon as ActionIcon12, Button as Button20, Fieldset as Fieldset3, Group as Group32, Modal as Modal15 } from "@mantine/core";
|
|
10800
10874
|
import { useDisclosure as useDisclosure20 } from "@mantine/hooks";
|
|
10801
10875
|
import { IconX as IconX4 } from "@tabler/icons-react";
|
|
10802
10876
|
import { jsx as jsx170, jsxs as jsxs96 } from "react/jsx-runtime";
|
|
@@ -10809,7 +10883,7 @@ function MyDataTableSelect(_a) {
|
|
|
10809
10883
|
MyDataTable,
|
|
10810
10884
|
__spreadValues({
|
|
10811
10885
|
renderTopToolbarCustomActions: ({ table }) => {
|
|
10812
|
-
return /* @__PURE__ */ jsxs96(
|
|
10886
|
+
return /* @__PURE__ */ jsxs96(Group32, { children: [
|
|
10813
10887
|
renderTopToolbarCustomActions && renderTopToolbarCustomActions({ table }),
|
|
10814
10888
|
/* @__PURE__ */ jsx170(Button20, { onClick: disc[1].open, children: selectButtonlabel || "Ch\u1ECDn t\u1EEB danh s\xE1ch" })
|
|
10815
10889
|
] });
|
|
@@ -10968,7 +11042,7 @@ function MySelect2(_a) {
|
|
|
10968
11042
|
disabled: isLoading || isError,
|
|
10969
11043
|
styles: (theme) => ({
|
|
10970
11044
|
input: rest.readOnly ? {
|
|
10971
|
-
backgroundColor:
|
|
11045
|
+
backgroundColor: colorsObject.mantineBackgroundTertiary,
|
|
10972
11046
|
fontWeight: 500,
|
|
10973
11047
|
cursor: "default",
|
|
10974
11048
|
borderColor: theme.colors.gray[4]
|
|
@@ -11128,7 +11202,7 @@ function CustomExtractFileDataModal(_a) {
|
|
|
11128
11202
|
const isDataRow = dataStartIndexState[0] && row.index >= parseInt(dataStartIndexState[0]) - 1;
|
|
11129
11203
|
return {
|
|
11130
11204
|
style: {
|
|
11131
|
-
backgroundColor: isTitleRow ?
|
|
11205
|
+
backgroundColor: isTitleRow ? colorsObject.mantineBackgroundTealLight : isDataRow ? colorsObject.mantineBackgroundBlueLight : colorsObject.mantineBackgroundPrimary,
|
|
11132
11206
|
fontWeight: isTitleRow ? "bold" : isDataRow ? "500" : "normal"
|
|
11133
11207
|
}
|
|
11134
11208
|
};
|
|
@@ -11173,15 +11247,15 @@ function CustomExtractFileDataModal(_a) {
|
|
|
11173
11247
|
}
|
|
11174
11248
|
|
|
11175
11249
|
// src/core/overlays/CustomMappingDataModal/CustomMappingFormatDataModal.tsx
|
|
11176
|
-
import { Button as Button22, Grid as Grid8, Group as
|
|
11250
|
+
import { Button as Button22, Grid as Grid8, Group as Group34, Modal as Modal17, Text as Text25, Tooltip as Tooltip7 } from "@mantine/core";
|
|
11177
11251
|
import { IconArrowBack as IconArrowBack2, IconArrowLeft, IconArrowRight as IconArrowRight2, IconPlus as IconPlus9, IconRowRemove as IconRowRemove2, IconRun as IconRun2 } from "@tabler/icons-react";
|
|
11178
11252
|
|
|
11179
11253
|
// src/core/layout/MyFlexEnd.tsx
|
|
11180
|
-
import { Group as
|
|
11254
|
+
import { Group as Group33 } from "@mantine/core";
|
|
11181
11255
|
import { jsx as jsx176 } from "react/jsx-runtime";
|
|
11182
11256
|
function MyFlexEnd2(_a) {
|
|
11183
11257
|
var _b = _a, { children } = _b, rest = __objRest(_b, ["children"]);
|
|
11184
|
-
return /* @__PURE__ */ jsx176(
|
|
11258
|
+
return /* @__PURE__ */ jsx176(Group33, __spreadProps(__spreadValues({ justify: "end", mt: "md" }, rest), { children }));
|
|
11185
11259
|
}
|
|
11186
11260
|
|
|
11187
11261
|
// src/core/overlays/CustomMappingDataModal/CustomMappingFormatDataModal.tsx
|
|
@@ -11434,7 +11508,7 @@ function CustomMappingFormatDataModal(_a) {
|
|
|
11434
11508
|
{
|
|
11435
11509
|
header: "M\xE3 field",
|
|
11436
11510
|
accessorKey: "key",
|
|
11437
|
-
accessorFn: (row) => /* @__PURE__ */ jsxs98(
|
|
11511
|
+
accessorFn: (row) => /* @__PURE__ */ jsxs98(Group34, { gap: 2, children: [
|
|
11438
11512
|
/* @__PURE__ */ jsx177(Text25, { children: row.key }),
|
|
11439
11513
|
row.isRequired && /* @__PURE__ */ jsx177(Text25, { c: "red", children: "*" }),
|
|
11440
11514
|
row.isUnique && /* @__PURE__ */ jsx177(Text25, { c: "red", children: "!" })
|
|
@@ -11977,7 +12051,7 @@ function MyDataTableSelectOne({
|
|
|
11977
12051
|
},
|
|
11978
12052
|
style: {
|
|
11979
12053
|
cursor: "pointer",
|
|
11980
|
-
backgroundColor: row.original.id == idSelection ?
|
|
12054
|
+
backgroundColor: row.original.id == idSelection ? colorsObject.mantineBackgroundTealLight : "transparent"
|
|
11981
12055
|
}
|
|
11982
12056
|
})
|
|
11983
12057
|
}
|
|
@@ -11985,7 +12059,7 @@ function MyDataTableSelectOne({
|
|
|
11985
12059
|
}
|
|
11986
12060
|
|
|
11987
12061
|
// src/core/dataDisplay/MyDataTableStagedChanges.tsx
|
|
11988
|
-
import { Group as
|
|
12062
|
+
import { Group as Group35, Stack as Stack13 } from "@mantine/core";
|
|
11989
12063
|
import { useDisclosure as useDisclosure22 } from "@mantine/hooks";
|
|
11990
12064
|
import { useEffect as useEffect41, useState as useState36 } from "react";
|
|
11991
12065
|
import { jsx as jsx185, jsxs as jsxs103 } from "react/jsx-runtime";
|
|
@@ -12065,7 +12139,7 @@ function MyDataTableStagedChanges(_a) {
|
|
|
12065
12139
|
renderTopToolbarCustomActions: ({ table }) => {
|
|
12066
12140
|
var _a2;
|
|
12067
12141
|
if (readOnly) return;
|
|
12068
|
-
return /* @__PURE__ */ jsxs103(
|
|
12142
|
+
return /* @__PURE__ */ jsxs103(Group35, { children: [
|
|
12069
12143
|
/* @__PURE__ */ jsx185(
|
|
12070
12144
|
MyButtonModal,
|
|
12071
12145
|
{
|
|
@@ -12098,22 +12172,22 @@ function MyDataTableStagedChanges(_a) {
|
|
|
12098
12172
|
}
|
|
12099
12173
|
|
|
12100
12174
|
// src/core/dataDisplay/MyFlexIconTitle.tsx
|
|
12101
|
-
import { Flex as
|
|
12175
|
+
import { Flex as Flex12, Text as Text27 } from "@mantine/core";
|
|
12102
12176
|
import { jsx as jsx186, jsxs as jsxs104 } from "react/jsx-runtime";
|
|
12103
12177
|
function MyFlexIconTitle(props) {
|
|
12104
|
-
return /* @__PURE__ */ jsxs104(
|
|
12178
|
+
return /* @__PURE__ */ jsxs104(Flex12, __spreadProps(__spreadValues({ direction: "row", align: "center", gap: "xs" }, props), { children: [
|
|
12105
12179
|
props.icon,
|
|
12106
12180
|
/* @__PURE__ */ jsx186(Text27, __spreadProps(__spreadValues({ size: "lg", fw: 700 }, props.textProps), { children: props == null ? void 0 : props.children }))
|
|
12107
12181
|
] }));
|
|
12108
12182
|
}
|
|
12109
12183
|
|
|
12110
12184
|
// src/core/dataDisplay/MyInfoBox.tsx
|
|
12111
|
-
import { Group as
|
|
12185
|
+
import { Group as Group36, Paper as Paper11, Stack as Stack14, Text as Text28 } from "@mantine/core";
|
|
12112
12186
|
import { jsx as jsx187, jsxs as jsxs105 } from "react/jsx-runtime";
|
|
12113
12187
|
function MyInfoBox({ title, data, paperProps }) {
|
|
12114
|
-
return /* @__PURE__ */ jsx187(Paper11, __spreadProps(__spreadValues({ withBorder: true, shadow: "xs", radius: "md", p: "md", bg:
|
|
12188
|
+
return /* @__PURE__ */ jsx187(Paper11, __spreadProps(__spreadValues({ withBorder: true, shadow: "xs", radius: "md", p: "md", bg: colorsObject.mantineBackgroundBlueLight }, paperProps), { children: /* @__PURE__ */ jsxs105(Stack14, { children: [
|
|
12115
12189
|
title && /* @__PURE__ */ jsx187(Text28, { fw: 600, size: "sm", children: title }),
|
|
12116
|
-
data.map((item, index) => /* @__PURE__ */ jsxs105(
|
|
12190
|
+
data.map((item, index) => /* @__PURE__ */ jsxs105(Group36, { justify: "space-between", children: [
|
|
12117
12191
|
/* @__PURE__ */ jsx187(Text28, { size: "sm", fw: 500, c: "dimmed", children: item.label }),
|
|
12118
12192
|
/* @__PURE__ */ jsx187(Text28, { size: "sm", fw: 500, children: item.value })
|
|
12119
12193
|
] }, index))
|
|
@@ -12121,7 +12195,7 @@ function MyInfoBox({ title, data, paperProps }) {
|
|
|
12121
12195
|
}
|
|
12122
12196
|
|
|
12123
12197
|
// src/core/dataDisplay/MyLabelValueRow.tsx
|
|
12124
|
-
import { Group as
|
|
12198
|
+
import { Group as Group37, Text as Text29 } from "@mantine/core";
|
|
12125
12199
|
import { jsx as jsx188, jsxs as jsxs106 } from "react/jsx-runtime";
|
|
12126
12200
|
function MyLabelValueRow({
|
|
12127
12201
|
label,
|
|
@@ -12131,7 +12205,7 @@ function MyLabelValueRow({
|
|
|
12131
12205
|
groupProps,
|
|
12132
12206
|
size
|
|
12133
12207
|
}) {
|
|
12134
|
-
return /* @__PURE__ */ jsxs106(
|
|
12208
|
+
return /* @__PURE__ */ jsxs106(Group37, __spreadProps(__spreadValues({ gap: 5, wrap: "nowrap", align: "center" }, groupProps), { children: [
|
|
12135
12209
|
/* @__PURE__ */ jsxs106(Text29, __spreadProps(__spreadValues({ fw: "bolder", size }, labelProps), { children: [
|
|
12136
12210
|
label,
|
|
12137
12211
|
":"
|
|
@@ -12141,7 +12215,7 @@ function MyLabelValueRow({
|
|
|
12141
12215
|
}
|
|
12142
12216
|
|
|
12143
12217
|
// src/core/dataDisplay/MyStatsCartd.tsx
|
|
12144
|
-
import { Box as
|
|
12218
|
+
import { Box as Box9, Card as Card4, ThemeIcon as ThemeIcon3 } from "@mantine/core";
|
|
12145
12219
|
import { jsx as jsx189, jsxs as jsxs107 } from "react/jsx-runtime";
|
|
12146
12220
|
function MyStatsCard({
|
|
12147
12221
|
title,
|
|
@@ -12153,7 +12227,7 @@ function MyStatsCard({
|
|
|
12153
12227
|
}) {
|
|
12154
12228
|
return /* @__PURE__ */ jsxs107(Card4, { children: [
|
|
12155
12229
|
/* @__PURE__ */ jsx189("div", { className: `absolute inset-0 bg-gradient-to-br ${color} opacity-5` }),
|
|
12156
|
-
/* @__PURE__ */ jsx189(
|
|
12230
|
+
/* @__PURE__ */ jsx189(Box9, { className: "p-6", children: /* @__PURE__ */ jsxs107("div", { className: "flex items-center justify-between", children: [
|
|
12157
12231
|
/* @__PURE__ */ jsxs107("div", { children: [
|
|
12158
12232
|
/* @__PURE__ */ jsx189("p", { className: "text-sm font-medium text-muted-foreground", children: title }),
|
|
12159
12233
|
/* @__PURE__ */ jsx189("p", { className: "text-3xl font-bold", children: value }),
|
|
@@ -12265,17 +12339,29 @@ function CustomSwitch(_a) {
|
|
|
12265
12339
|
);
|
|
12266
12340
|
}
|
|
12267
12341
|
|
|
12342
|
+
// src/shared/consts/daysOfWeekEnum.ts
|
|
12343
|
+
var daysOfWeekEnum = /* @__PURE__ */ ((daysOfWeekEnum2) => {
|
|
12344
|
+
daysOfWeekEnum2[daysOfWeekEnum2["Th\u1EE9 Hai"] = 1] = "Th\u1EE9 Hai";
|
|
12345
|
+
daysOfWeekEnum2[daysOfWeekEnum2["Th\u1EE9 Ba"] = 2] = "Th\u1EE9 Ba";
|
|
12346
|
+
daysOfWeekEnum2[daysOfWeekEnum2["Th\u1EE9 T\u01B0"] = 3] = "Th\u1EE9 T\u01B0";
|
|
12347
|
+
daysOfWeekEnum2[daysOfWeekEnum2["Th\u1EE9 N\u0103m"] = 4] = "Th\u1EE9 N\u0103m";
|
|
12348
|
+
daysOfWeekEnum2[daysOfWeekEnum2["Th\u1EE9 S\xE1u"] = 5] = "Th\u1EE9 S\xE1u";
|
|
12349
|
+
daysOfWeekEnum2[daysOfWeekEnum2["Th\u1EE9 B\u1EA3y"] = 6] = "Th\u1EE9 B\u1EA3y";
|
|
12350
|
+
daysOfWeekEnum2[daysOfWeekEnum2["Ch\u1EE7 Nh\u1EADt"] = 0] = "Ch\u1EE7 Nh\u1EADt";
|
|
12351
|
+
return daysOfWeekEnum2;
|
|
12352
|
+
})(daysOfWeekEnum || {});
|
|
12353
|
+
|
|
12268
12354
|
// src/core/input/MyDayOfWeekPicker.tsx
|
|
12269
|
-
import { Badge as Badge7, Group as
|
|
12355
|
+
import { Badge as Badge7, Group as Group38 } from "@mantine/core";
|
|
12270
12356
|
import { jsx as jsx195 } from "react/jsx-runtime";
|
|
12271
|
-
var days = Object.entries(
|
|
12357
|
+
var days = Object.entries(daysOfWeekEnum).filter(([key]) => isNaN(Number(key))).map(([label, value]) => ({ label, value }));
|
|
12272
12358
|
function MyDayOfWeekPicker({ value = [], onChange }) {
|
|
12273
12359
|
const toggle = (val) => {
|
|
12274
12360
|
if (!onChange) return;
|
|
12275
12361
|
const newValue = value.includes(val) ? value.filter((v) => v !== val) : [...value, val].sort((a, b) => a - b);
|
|
12276
12362
|
onChange(newValue);
|
|
12277
12363
|
};
|
|
12278
|
-
return /* @__PURE__ */ jsx195(MyFlexRow, { align: "center", children: /* @__PURE__ */ jsx195(
|
|
12364
|
+
return /* @__PURE__ */ jsx195(MyFlexRow, { align: "center", children: /* @__PURE__ */ jsx195(Group38, { gap: "xs", children: days.map((d) => /* @__PURE__ */ jsx195(
|
|
12279
12365
|
Badge7,
|
|
12280
12366
|
{
|
|
12281
12367
|
variant: value.includes(d.value) ? "filled" : "outline",
|
|
@@ -12531,7 +12617,7 @@ function MyTextInput2(_a) {
|
|
|
12531
12617
|
label,
|
|
12532
12618
|
styles: (theme) => ({
|
|
12533
12619
|
input: rest.readOnly ? {
|
|
12534
|
-
backgroundColor:
|
|
12620
|
+
backgroundColor: colorsObject.mantineBackgroundTertiary,
|
|
12535
12621
|
fontWeight: 500,
|
|
12536
12622
|
cursor: "default",
|
|
12537
12623
|
borderColor: theme.colors.gray[4]
|
|
@@ -12544,13 +12630,13 @@ function MyTextInput2(_a) {
|
|
|
12544
12630
|
// src/core/input/MyWeeklySessionSchedulerPicker.tsx
|
|
12545
12631
|
import {
|
|
12546
12632
|
Button as Button25,
|
|
12547
|
-
Center as
|
|
12633
|
+
Center as Center13,
|
|
12548
12634
|
Divider as Divider4,
|
|
12549
|
-
Group as
|
|
12635
|
+
Group as Group39,
|
|
12550
12636
|
NumberInput as NumberInput3,
|
|
12551
12637
|
Paper as Paper12,
|
|
12552
12638
|
ScrollArea as ScrollArea7,
|
|
12553
|
-
Text as
|
|
12639
|
+
Text as Text30
|
|
12554
12640
|
} from "@mantine/core";
|
|
12555
12641
|
import { IconPlus as IconPlus10, IconTrash as IconTrash8 } from "@tabler/icons-react";
|
|
12556
12642
|
import { useState as useState37 } from "react";
|
|
@@ -12584,9 +12670,9 @@ function MyWeeklySessionSchedulerPicker({
|
|
|
12584
12670
|
acc[curr.dayOfWeek].push(curr);
|
|
12585
12671
|
return acc;
|
|
12586
12672
|
}, {});
|
|
12587
|
-
const getLabel = (day) =>
|
|
12673
|
+
const getLabel = (day) => daysOfWeekEnum[day] || `Day ${day}`;
|
|
12588
12674
|
return /* @__PURE__ */ jsx200(Paper12, { w: "100%", p: "md", children: /* @__PURE__ */ jsxs109(MyFlexColumn, { children: [
|
|
12589
|
-
/* @__PURE__ */ jsx200(
|
|
12675
|
+
/* @__PURE__ */ jsx200(Center13, { children: /* @__PURE__ */ jsx200(
|
|
12590
12676
|
MyDayOfWeekPicker,
|
|
12591
12677
|
{
|
|
12592
12678
|
value: selectedDays,
|
|
@@ -12597,17 +12683,17 @@ function MyWeeklySessionSchedulerPicker({
|
|
|
12597
12683
|
}
|
|
12598
12684
|
) }),
|
|
12599
12685
|
/* @__PURE__ */ jsx200(Divider4, { my: "xs" }),
|
|
12600
|
-
/* @__PURE__ */ jsx200(
|
|
12686
|
+
/* @__PURE__ */ jsx200(Center13, { children: /* @__PURE__ */ jsx200(ScrollArea7.Autosize, { h: "40vh", children: /* @__PURE__ */ jsx200(MyFlexColumn, { w: { base: "100%", sm: "70%" }, children: selectedDays.map((dayOfWeek) => {
|
|
12601
12687
|
var _a;
|
|
12602
12688
|
return /* @__PURE__ */ jsxs109(
|
|
12603
12689
|
Paper12,
|
|
12604
12690
|
{
|
|
12605
12691
|
w: "100%",
|
|
12606
12692
|
p: "md",
|
|
12607
|
-
bg:
|
|
12693
|
+
bg: colorsObject.mantineBackgroundBlueLight,
|
|
12608
12694
|
children: [
|
|
12609
|
-
/* @__PURE__ */ jsxs109(
|
|
12610
|
-
/* @__PURE__ */ jsx200(
|
|
12695
|
+
/* @__PURE__ */ jsxs109(Group39, { gap: "apart", children: [
|
|
12696
|
+
/* @__PURE__ */ jsx200(Text30, { w: "70px", fw: 500, children: getLabel(dayOfWeek) }),
|
|
12611
12697
|
/* @__PURE__ */ jsx200(
|
|
12612
12698
|
Button25,
|
|
12613
12699
|
{
|
|
@@ -12624,7 +12710,7 @@ function MyWeeklySessionSchedulerPicker({
|
|
|
12624
12710
|
(v) => v === item
|
|
12625
12711
|
);
|
|
12626
12712
|
return /* @__PURE__ */ jsxs109(
|
|
12627
|
-
|
|
12713
|
+
Group39,
|
|
12628
12714
|
{
|
|
12629
12715
|
mt: "xs",
|
|
12630
12716
|
gap: "xs",
|
|
@@ -12688,7 +12774,7 @@ function MyWeeklySessionSchedulerPicker({
|
|
|
12688
12774
|
|
|
12689
12775
|
// src/core/layout/MyDroppablePlaceholder.tsx
|
|
12690
12776
|
import { useDroppable } from "@dnd-kit/core";
|
|
12691
|
-
import { Card as Card5, Text as
|
|
12777
|
+
import { Card as Card5, Text as Text31 } from "@mantine/core";
|
|
12692
12778
|
import { jsx as jsx201 } from "react/jsx-runtime";
|
|
12693
12779
|
function DroppablePlaceholder({ id }) {
|
|
12694
12780
|
const { setNodeRef } = useDroppable({
|
|
@@ -12702,13 +12788,13 @@ function DroppablePlaceholder({ id }) {
|
|
|
12702
12788
|
radius: "md",
|
|
12703
12789
|
p: "sm",
|
|
12704
12790
|
style: { opacity: 0.5, minHeight: 40 },
|
|
12705
|
-
children: /* @__PURE__ */ jsx201(
|
|
12791
|
+
children: /* @__PURE__ */ jsx201(Text31, { size: "sm", c: "dimmed", ta: "center", children: "K\xE9o item v\xE0o \u0111\xE2y" })
|
|
12706
12792
|
}
|
|
12707
12793
|
);
|
|
12708
12794
|
}
|
|
12709
12795
|
|
|
12710
12796
|
// src/core/navigation/CustomTabs/CustomTabs.tsx
|
|
12711
|
-
import { Paper as Paper13, Tabs as Tabs3, Text as
|
|
12797
|
+
import { Paper as Paper13, Tabs as Tabs3, Text as Text32, Tooltip as Tooltip9 } from "@mantine/core";
|
|
12712
12798
|
import classes2 from "./Customtabs.module-SL25XTZZ.module.css";
|
|
12713
12799
|
import { jsx as jsx202, jsxs as jsxs110 } from "react/jsx-runtime";
|
|
12714
12800
|
var tabColors = [
|
|
@@ -12720,7 +12806,7 @@ var tabColors = [
|
|
|
12720
12806
|
];
|
|
12721
12807
|
function CustomTabs(_a) {
|
|
12722
12808
|
var _b = _a, { tabs } = _b, rest = __objRest(_b, ["tabs"]);
|
|
12723
|
-
return /* @__PURE__ */ jsx202(Paper13, { bg:
|
|
12809
|
+
return /* @__PURE__ */ jsx202(Paper13, { bg: colorsObject.mantineBackgroundSecondary, children: /* @__PURE__ */ jsxs110(Tabs3, __spreadProps(__spreadValues({ defaultValue: tabs[0].label, color: "lime", variant: "outline", classNames: classes2 }, rest), { children: [
|
|
12724
12810
|
/* @__PURE__ */ jsx202(Tabs3.List, { children: tabs.map((item, index) => {
|
|
12725
12811
|
const _a2 = item, { toolTipProps } = _a2, tabProps = __objRest(_a2, ["toolTipProps"]);
|
|
12726
12812
|
if (toolTipProps) return /* @__PURE__ */ jsx202(Tooltip9, __spreadProps(__spreadValues({}, toolTipProps), { children: /* @__PURE__ */ jsx202(
|
|
@@ -12729,7 +12815,7 @@ function CustomTabs(_a) {
|
|
|
12729
12815
|
value: tabProps.label,
|
|
12730
12816
|
ref: tabProps.ref
|
|
12731
12817
|
}, tabProps), {
|
|
12732
|
-
children: /* @__PURE__ */ jsx202(
|
|
12818
|
+
children: /* @__PURE__ */ jsx202(Text32, { fw: "bold", children: tabProps.label })
|
|
12733
12819
|
})
|
|
12734
12820
|
) }), index);
|
|
12735
12821
|
return /* @__PURE__ */ jsx202(
|
|
@@ -12738,7 +12824,7 @@ function CustomTabs(_a) {
|
|
|
12738
12824
|
value: tabProps.label,
|
|
12739
12825
|
ref: tabProps.ref
|
|
12740
12826
|
}, tabProps), {
|
|
12741
|
-
children: /* @__PURE__ */ jsx202(
|
|
12827
|
+
children: /* @__PURE__ */ jsx202(Text32, { fw: "bold", children: tabProps.label })
|
|
12742
12828
|
}),
|
|
12743
12829
|
tabProps.label
|
|
12744
12830
|
);
|
|
@@ -12786,13 +12872,13 @@ function MyPrintContent({
|
|
|
12786
12872
|
}
|
|
12787
12873
|
|
|
12788
12874
|
// src/core/overlays/MyModalStackImport/Usecase/FileImportValidationDetailModal.tsx
|
|
12789
|
-
import { Modal as Modal21, Table as Table4, Text as
|
|
12875
|
+
import { Modal as Modal21, Table as Table4, Text as Text33 } from "@mantine/core";
|
|
12790
12876
|
import { jsx as jsx204, jsxs as jsxs112 } from "react/jsx-runtime";
|
|
12791
12877
|
|
|
12792
12878
|
// src/core/overlays/MyModalStackImport/Usecase/FileImportValidationModal.tsx
|
|
12793
12879
|
import {
|
|
12794
12880
|
Button as Button26,
|
|
12795
|
-
Group as
|
|
12881
|
+
Group as Group40,
|
|
12796
12882
|
Modal as Modal22,
|
|
12797
12883
|
Table as Table5
|
|
12798
12884
|
} from "@mantine/core";
|
|
@@ -12851,11 +12937,13 @@ function CustomSelectAPI(_a) {
|
|
|
12851
12937
|
}
|
|
12852
12938
|
|
|
12853
12939
|
export {
|
|
12940
|
+
cn,
|
|
12854
12941
|
MyBoxesCore,
|
|
12855
12942
|
Boxes,
|
|
12856
12943
|
MyCardioLoader,
|
|
12857
12944
|
MyBoxesBackground,
|
|
12858
12945
|
MyActionIcon,
|
|
12946
|
+
colorsObject,
|
|
12859
12947
|
MySelect2 as MySelect,
|
|
12860
12948
|
MyFlexEnd2 as MyFlexEnd,
|
|
12861
12949
|
CustomMappingDataModalUtils,
|
|
@@ -12872,6 +12960,8 @@ export {
|
|
|
12872
12960
|
CustomThemeIconSquareCheck,
|
|
12873
12961
|
MyCenterFull,
|
|
12874
12962
|
MyHtmlWrapper,
|
|
12963
|
+
genderEnum,
|
|
12964
|
+
genderLabel,
|
|
12875
12965
|
MyDataTable,
|
|
12876
12966
|
MyDataTableSelectOne,
|
|
12877
12967
|
MyDataTableStagedChanges,
|
|
@@ -12886,6 +12976,7 @@ export {
|
|
|
12886
12976
|
CustomPhoneNumberInput,
|
|
12887
12977
|
CustomSwitch,
|
|
12888
12978
|
MyFlexRow,
|
|
12979
|
+
daysOfWeekEnum,
|
|
12889
12980
|
MyDayOfWeekPicker,
|
|
12890
12981
|
MyFileInputPreview,
|
|
12891
12982
|
MyRichTextEditor,
|
|
@@ -12937,6 +13028,7 @@ export {
|
|
|
12937
13028
|
MyNumberInput,
|
|
12938
13029
|
MyTextArea,
|
|
12939
13030
|
MyTextEditor,
|
|
13031
|
+
createBaseApi,
|
|
12940
13032
|
AcademicYearsCreate,
|
|
12941
13033
|
AcademicYearsDelete,
|
|
12942
13034
|
AcademicYearsDeleteList,
|
|
@@ -12961,6 +13053,7 @@ export {
|
|
|
12961
13053
|
MailTemplateDeleteButton,
|
|
12962
13054
|
EmailTemplateTable,
|
|
12963
13055
|
MyFlexEnd as MyFlexEnd2,
|
|
13056
|
+
documentTypesObject,
|
|
12964
13057
|
DocTypeSelect,
|
|
12965
13058
|
F_formTemplateDocs_Create,
|
|
12966
13059
|
F_formTemplateDocs_Delete,
|