phx-react 1.3.1533 → 1.3.1535
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/cjs/components/FormTarget/PHXFormTarget.d.ts +3 -0
- package/dist/cjs/components/FormTarget/PHXFormTarget.js +237 -0
- package/dist/cjs/components/FormTarget/PHXFormTarget.js.map +1 -0
- package/dist/cjs/components/FormTarget/components/divider/divider.d.ts +6 -0
- package/dist/cjs/components/FormTarget/components/divider/divider.js +11 -0
- package/dist/cjs/components/FormTarget/components/divider/divider.js.map +1 -0
- package/dist/cjs/components/FormTarget/components/index.d.ts +1 -0
- package/dist/cjs/components/FormTarget/components/index.js +5 -0
- package/dist/cjs/components/FormTarget/components/index.js.map +1 -0
- package/dist/cjs/components/FormTarget/components/modal-search-user/modal-search-user.d.ts +13 -0
- package/dist/cjs/components/FormTarget/components/modal-search-user/modal-search-user.js +166 -0
- package/dist/cjs/components/FormTarget/components/modal-search-user/modal-search-user.js.map +1 -0
- package/dist/cjs/components/FormTarget/components/radio-group-select.d.ts +17 -0
- package/dist/cjs/components/FormTarget/components/radio-group-select.js +46 -0
- package/dist/cjs/components/FormTarget/components/radio-group-select.js.map +1 -0
- package/dist/cjs/components/FormTarget/components/table-custom-list.d.ts +11 -0
- package/dist/cjs/components/FormTarget/components/table-custom-list.js +175 -0
- package/dist/cjs/components/FormTarget/components/table-custom-list.js.map +1 -0
- package/dist/cjs/components/FormTarget/config.d.ts +70 -0
- package/dist/cjs/components/FormTarget/config.js +90 -0
- package/dist/cjs/components/FormTarget/config.js.map +1 -0
- package/dist/cjs/components/FormTarget/constant.d.ts +37 -0
- package/dist/cjs/components/FormTarget/constant.js +45 -0
- package/dist/cjs/components/FormTarget/constant.js.map +1 -0
- package/dist/cjs/components/FormTarget/graphql/mutation.d.ts +3 -0
- package/dist/cjs/components/FormTarget/graphql/mutation.js +7 -0
- package/dist/cjs/components/FormTarget/graphql/mutation.js.map +1 -0
- package/dist/cjs/components/FormTarget/graphql/query.d.ts +7 -0
- package/dist/cjs/components/FormTarget/graphql/query.js +51 -0
- package/dist/cjs/components/FormTarget/graphql/query.js.map +1 -0
- package/dist/cjs/components/FormTarget/hooks/index.d.ts +2 -0
- package/dist/cjs/components/FormTarget/hooks/index.js +6 -0
- package/dist/cjs/components/FormTarget/hooks/index.js.map +1 -0
- package/dist/cjs/components/FormTarget/hooks/use-get-data-select.d.ts +7 -0
- package/dist/cjs/components/FormTarget/hooks/use-get-data-select.js +65 -0
- package/dist/cjs/components/FormTarget/hooks/use-get-data-select.js.map +1 -0
- package/dist/cjs/components/FormTarget/hooks/use-target-select.d.ts +19 -0
- package/dist/cjs/components/FormTarget/hooks/use-target-select.js +191 -0
- package/dist/cjs/components/FormTarget/hooks/use-target-select.js.map +1 -0
- package/dist/cjs/components/FormTarget/index.d.ts +6 -0
- package/dist/cjs/components/FormTarget/index.js +10 -0
- package/dist/cjs/components/FormTarget/index.js.map +1 -0
- package/dist/cjs/components/FormTarget/type/target.d.ts +161 -0
- package/dist/cjs/components/FormTarget/type/target.js +3 -0
- package/dist/cjs/components/FormTarget/type/target.js.map +1 -0
- package/dist/cjs/components/FormTarget/ultis/get-filter-error-message.d.ts +2 -0
- package/dist/cjs/components/FormTarget/ultis/get-filter-error-message.js +22 -0
- package/dist/cjs/components/FormTarget/ultis/get-filter-error-message.js.map +1 -0
- package/dist/cjs/components/FormTarget/ultis/get-object-type.d.ts +2 -0
- package/dist/cjs/components/FormTarget/ultis/get-object-type.js +15 -0
- package/dist/cjs/components/FormTarget/ultis/get-object-type.js.map +1 -0
- package/dist/cjs/components/FormTarget/ultis/get-role-name-by-target.d.ts +2 -0
- package/dist/cjs/components/FormTarget/ultis/get-role-name-by-target.js +23 -0
- package/dist/cjs/components/FormTarget/ultis/get-role-name-by-target.js.map +1 -0
- package/dist/cjs/components/FormTarget/ultis/get-title-by-relationship-code.d.ts +1 -0
- package/dist/cjs/components/FormTarget/ultis/get-title-by-relationship-code.js +16 -0
- package/dist/cjs/components/FormTarget/ultis/get-title-by-relationship-code.js.map +1 -0
- package/dist/cjs/components/FormTarget/ultis/target-group-resolver.d.ts +8 -0
- package/dist/cjs/components/FormTarget/ultis/target-group-resolver.js +60 -0
- package/dist/cjs/components/FormTarget/ultis/target-group-resolver.js.map +1 -0
- package/dist/cjs/components/FormTarget/ultis/tranform-target-user.d.ts +9 -0
- package/dist/cjs/components/FormTarget/ultis/tranform-target-user.js +91 -0
- package/dist/cjs/components/FormTarget/ultis/tranform-target-user.js.map +1 -0
- package/dist/cjs/index.d.ts +1 -0
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/components/FormTarget/PHXFormTarget.d.ts +3 -0
- package/dist/esm/components/FormTarget/PHXFormTarget.js +233 -0
- package/dist/esm/components/FormTarget/PHXFormTarget.js.map +1 -0
- package/dist/esm/components/FormTarget/components/divider/divider.d.ts +6 -0
- package/dist/esm/components/FormTarget/components/divider/divider.js +6 -0
- package/dist/esm/components/FormTarget/components/divider/divider.js.map +1 -0
- package/dist/esm/components/FormTarget/components/index.d.ts +1 -0
- package/dist/esm/components/FormTarget/components/index.js +2 -0
- package/dist/esm/components/FormTarget/components/index.js.map +1 -0
- package/dist/esm/components/FormTarget/components/modal-search-user/modal-search-user.d.ts +13 -0
- package/dist/esm/components/FormTarget/components/modal-search-user/modal-search-user.js +163 -0
- package/dist/esm/components/FormTarget/components/modal-search-user/modal-search-user.js.map +1 -0
- package/dist/esm/components/FormTarget/components/radio-group-select.d.ts +17 -0
- package/dist/esm/components/FormTarget/components/radio-group-select.js +42 -0
- package/dist/esm/components/FormTarget/components/radio-group-select.js.map +1 -0
- package/dist/esm/components/FormTarget/components/table-custom-list.d.ts +11 -0
- package/dist/esm/components/FormTarget/components/table-custom-list.js +172 -0
- package/dist/esm/components/FormTarget/components/table-custom-list.js.map +1 -0
- package/dist/esm/components/FormTarget/config.d.ts +70 -0
- package/dist/esm/components/FormTarget/config.js +87 -0
- package/dist/esm/components/FormTarget/config.js.map +1 -0
- package/dist/esm/components/FormTarget/constant.d.ts +37 -0
- package/dist/esm/components/FormTarget/constant.js +42 -0
- package/dist/esm/components/FormTarget/constant.js.map +1 -0
- package/dist/esm/components/FormTarget/graphql/mutation.d.ts +3 -0
- package/dist/esm/components/FormTarget/graphql/mutation.js +4 -0
- package/dist/esm/components/FormTarget/graphql/mutation.js.map +1 -0
- package/dist/esm/components/FormTarget/graphql/query.d.ts +7 -0
- package/dist/esm/components/FormTarget/graphql/query.js +47 -0
- package/dist/esm/components/FormTarget/graphql/query.js.map +1 -0
- package/dist/esm/components/FormTarget/hooks/index.d.ts +2 -0
- package/dist/esm/components/FormTarget/hooks/index.js +3 -0
- package/dist/esm/components/FormTarget/hooks/index.js.map +1 -0
- package/dist/esm/components/FormTarget/hooks/use-get-data-select.d.ts +7 -0
- package/dist/esm/components/FormTarget/hooks/use-get-data-select.js +61 -0
- package/dist/esm/components/FormTarget/hooks/use-get-data-select.js.map +1 -0
- package/dist/esm/components/FormTarget/hooks/use-target-select.d.ts +19 -0
- package/dist/esm/components/FormTarget/hooks/use-target-select.js +187 -0
- package/dist/esm/components/FormTarget/hooks/use-target-select.js.map +1 -0
- package/dist/esm/components/FormTarget/index.d.ts +6 -0
- package/dist/esm/components/FormTarget/index.js +7 -0
- package/dist/esm/components/FormTarget/index.js.map +1 -0
- package/dist/esm/components/FormTarget/type/target.d.ts +161 -0
- package/dist/esm/components/FormTarget/type/target.js +2 -0
- package/dist/esm/components/FormTarget/type/target.js.map +1 -0
- package/dist/esm/components/FormTarget/ultis/get-filter-error-message.d.ts +2 -0
- package/dist/esm/components/FormTarget/ultis/get-filter-error-message.js +18 -0
- package/dist/esm/components/FormTarget/ultis/get-filter-error-message.js.map +1 -0
- package/dist/esm/components/FormTarget/ultis/get-object-type.d.ts +2 -0
- package/dist/esm/components/FormTarget/ultis/get-object-type.js +11 -0
- package/dist/esm/components/FormTarget/ultis/get-object-type.js.map +1 -0
- package/dist/esm/components/FormTarget/ultis/get-role-name-by-target.d.ts +2 -0
- package/dist/esm/components/FormTarget/ultis/get-role-name-by-target.js +19 -0
- package/dist/esm/components/FormTarget/ultis/get-role-name-by-target.js.map +1 -0
- package/dist/esm/components/FormTarget/ultis/get-title-by-relationship-code.d.ts +1 -0
- package/dist/esm/components/FormTarget/ultis/get-title-by-relationship-code.js +12 -0
- package/dist/esm/components/FormTarget/ultis/get-title-by-relationship-code.js.map +1 -0
- package/dist/esm/components/FormTarget/ultis/target-group-resolver.d.ts +8 -0
- package/dist/esm/components/FormTarget/ultis/target-group-resolver.js +57 -0
- package/dist/esm/components/FormTarget/ultis/target-group-resolver.js.map +1 -0
- package/dist/esm/components/FormTarget/ultis/tranform-target-user.d.ts +9 -0
- package/dist/esm/components/FormTarget/ultis/tranform-target-user.js +86 -0
- package/dist/esm/components/FormTarget/ultis/tranform-target-user.js.map +1 -0
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
import { __awaiter, __generator, __spreadArray } from "tslib";
|
|
2
|
+
import { useEffect, useState } from 'react';
|
|
3
|
+
import { OPTION_FILTER_ALL } from '../../constant';
|
|
4
|
+
import { queryListUserBuilder } from '../../graphql/query';
|
|
5
|
+
import { getRoleNameByTarget } from '../../ultis/get-role-name-by-target';
|
|
6
|
+
import { transformTargetUser } from '../../ultis/tranform-target-user';
|
|
7
|
+
import PHXFuncGetLoggedInfo from '../../../Func/getLoginInfo';
|
|
8
|
+
import PHXUseDebounce from '../../../Func/useDebounce';
|
|
9
|
+
import { PHXModal } from '../../../Modal';
|
|
10
|
+
import { PHXResourceList } from '../../../ResourceList';
|
|
11
|
+
import React from 'react';
|
|
12
|
+
import { PHXClientQueryV3 } from '../../../Func/GRPC/PHXGrpcClientV3';
|
|
13
|
+
export default function ModalSearchUser(_a) {
|
|
14
|
+
var _this = this;
|
|
15
|
+
var defaultSelected = _a.defaultSelected, handleAddList = _a.handleAddList, onHide = _a.onHide, schoolYearId = _a.schoolYearId, show = _a.show, target = _a.target;
|
|
16
|
+
var _b = useState([]), listUser = _b[0], setListUser = _b[1];
|
|
17
|
+
var _c = useState(0), currPage = _c[0], setCurrPage = _c[1];
|
|
18
|
+
var userInfo = PHXFuncGetLoggedInfo();
|
|
19
|
+
var _d = useState(''), searchKeyword = _d[0], setSearchKeyword = _d[1];
|
|
20
|
+
var _e = useState(false), searching = _e[0], setSearching = _e[1];
|
|
21
|
+
var _f = useState(false), loadingInit = _f[0], setLoadingInit = _f[1];
|
|
22
|
+
var _g = useState({
|
|
23
|
+
gradeId: OPTION_FILTER_ALL.id,
|
|
24
|
+
educationalLevelId: OPTION_FILTER_ALL.id,
|
|
25
|
+
classroomId: OPTION_FILTER_ALL.id,
|
|
26
|
+
}), filterSelected = _g[0], setFilterSelected = _g[1];
|
|
27
|
+
var _h = useState(false), isAllData = _h[0], setIsAllData = _h[1];
|
|
28
|
+
var _j = useState([]), dataSelected = _j[0], setDataSelected = _j[1];
|
|
29
|
+
var debounceSearchValue = PHXUseDebounce(searchKeyword, 300);
|
|
30
|
+
var getUser = function () { return __awaiter(_this, void 0, void 0, function () {
|
|
31
|
+
var limit, offset, query, users, targetData, isAllDataResult, formatedUsers_1, e_1;
|
|
32
|
+
return __generator(this, function (_a) {
|
|
33
|
+
switch (_a.label) {
|
|
34
|
+
case 0:
|
|
35
|
+
if (isAllData || searching)
|
|
36
|
+
return [2 /*return*/];
|
|
37
|
+
setSearching(true);
|
|
38
|
+
_a.label = 1;
|
|
39
|
+
case 1:
|
|
40
|
+
_a.trys.push([1, 3, 4, 5]);
|
|
41
|
+
limit = 10;
|
|
42
|
+
offset = currPage * limit;
|
|
43
|
+
query = queryListUserBuilder({
|
|
44
|
+
target: target,
|
|
45
|
+
schoolYearId: schoolYearId,
|
|
46
|
+
schoolId: userInfo === null || userInfo === void 0 ? void 0 : userInfo.school_id,
|
|
47
|
+
condition: filterSelected,
|
|
48
|
+
});
|
|
49
|
+
return [4 /*yield*/, PHXClientQueryV3({
|
|
50
|
+
query: query,
|
|
51
|
+
variables: {
|
|
52
|
+
roleCode: target,
|
|
53
|
+
limit: limit,
|
|
54
|
+
offset: offset,
|
|
55
|
+
searchKeyword: "%".concat(debounceSearchValue, "%"),
|
|
56
|
+
schoolId: userInfo === null || userInfo === void 0 ? void 0 : userInfo.school_id,
|
|
57
|
+
},
|
|
58
|
+
})];
|
|
59
|
+
case 2:
|
|
60
|
+
users = (_a.sent()).data.users;
|
|
61
|
+
targetData = users;
|
|
62
|
+
isAllDataResult = targetData.length < limit;
|
|
63
|
+
setIsAllData(isAllDataResult);
|
|
64
|
+
formatedUsers_1 = transformTargetUser(targetData, target);
|
|
65
|
+
if (currPage === 0) {
|
|
66
|
+
setListUser(formatedUsers_1);
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
setListUser(function (pre) { return __spreadArray(__spreadArray([], pre, true), formatedUsers_1, true); });
|
|
70
|
+
}
|
|
71
|
+
return [3 /*break*/, 5];
|
|
72
|
+
case 3:
|
|
73
|
+
e_1 = _a.sent();
|
|
74
|
+
console.error(e_1);
|
|
75
|
+
return [3 /*break*/, 5];
|
|
76
|
+
case 4:
|
|
77
|
+
setSearching(false);
|
|
78
|
+
return [7 /*endfinally*/];
|
|
79
|
+
case 5: return [2 /*return*/];
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
}); };
|
|
83
|
+
var getDataInitial = function () { return __awaiter(_this, void 0, void 0, function () {
|
|
84
|
+
var error_1;
|
|
85
|
+
return __generator(this, function (_a) {
|
|
86
|
+
switch (_a.label) {
|
|
87
|
+
case 0:
|
|
88
|
+
_a.trys.push([0, 2, 3, 4]);
|
|
89
|
+
setLoadingInit(true);
|
|
90
|
+
return [4 /*yield*/, getUser()];
|
|
91
|
+
case 1:
|
|
92
|
+
_a.sent();
|
|
93
|
+
return [3 /*break*/, 4];
|
|
94
|
+
case 2:
|
|
95
|
+
error_1 = _a.sent();
|
|
96
|
+
console.error(error_1);
|
|
97
|
+
return [3 /*break*/, 4];
|
|
98
|
+
case 3:
|
|
99
|
+
setLoadingInit(false);
|
|
100
|
+
return [7 /*endfinally*/];
|
|
101
|
+
case 4: return [2 /*return*/];
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
}); };
|
|
105
|
+
var handleReset = function () {
|
|
106
|
+
setListUser([]);
|
|
107
|
+
setIsAllData(false);
|
|
108
|
+
setDataSelected([]);
|
|
109
|
+
setCurrPage(0);
|
|
110
|
+
setSearchKeyword('');
|
|
111
|
+
setFilterSelected({
|
|
112
|
+
gradeId: OPTION_FILTER_ALL.id,
|
|
113
|
+
educationalLevelId: OPTION_FILTER_ALL.id,
|
|
114
|
+
classroomId: OPTION_FILTER_ALL.id,
|
|
115
|
+
});
|
|
116
|
+
};
|
|
117
|
+
function onHandleHide() {
|
|
118
|
+
onHide();
|
|
119
|
+
handleReset();
|
|
120
|
+
}
|
|
121
|
+
var handleSubmit = function () {
|
|
122
|
+
if (dataSelected.length === 0)
|
|
123
|
+
return;
|
|
124
|
+
var listDelete = defaultSelected.filter(function (item) { return !dataSelected.some(function (selected) { return selected.id === item.id; }); });
|
|
125
|
+
var formattedData = dataSelected.map(function (item) { return ({
|
|
126
|
+
id: item.id,
|
|
127
|
+
code: item.code,
|
|
128
|
+
email: item.email,
|
|
129
|
+
phone: item.phone,
|
|
130
|
+
name: item.full_name,
|
|
131
|
+
full_name: item.full_name,
|
|
132
|
+
parents: item.parents || [],
|
|
133
|
+
educational_level: item.educational_level,
|
|
134
|
+
classroom: item.classroom,
|
|
135
|
+
grade: item.grade,
|
|
136
|
+
}); });
|
|
137
|
+
handleAddList(formattedData, listDelete);
|
|
138
|
+
onHide();
|
|
139
|
+
};
|
|
140
|
+
useEffect(function () {
|
|
141
|
+
getUser();
|
|
142
|
+
}, [currPage, debounceSearchValue, JSON.stringify(filterSelected)]);
|
|
143
|
+
useEffect(function () {
|
|
144
|
+
if (currPage !== 0 && show) {
|
|
145
|
+
setCurrPage(0);
|
|
146
|
+
}
|
|
147
|
+
handleReset();
|
|
148
|
+
getDataInitial();
|
|
149
|
+
setDataSelected(defaultSelected || []);
|
|
150
|
+
}, [show]);
|
|
151
|
+
return (React.createElement(React.Fragment, null,
|
|
152
|
+
React.createElement(PHXModal, { closeButton: true, inCard: false, onHide: onHandleHide, onSubmit: handleSubmit, primaryActionText: 'Th\u00EAm m\u1EDBi', show: show, size: 'large', title: "Th\u00EAm m\u1EDBi ".concat(getRoleNameByTarget(target)) },
|
|
153
|
+
React.createElement(PHXResourceList, { bulkActions: true, bulkActionsContent: 'Ch\u1EC9nh s\u1EEDa', getKeyword: function (keyword) {
|
|
154
|
+
setSearchKeyword(keyword);
|
|
155
|
+
setCurrPage(0);
|
|
156
|
+
setIsAllData(false);
|
|
157
|
+
}, heightList: 330, hiddenBulkActionMarkup: true, list: listUser, loading: loadingInit, onScrollBottom: function () {
|
|
158
|
+
if (!searching) {
|
|
159
|
+
setCurrPage(function (pre) { return pre + 1; });
|
|
160
|
+
}
|
|
161
|
+
}, onSelectedItemsChange: function (data) { return setDataSelected(data); }, paging: searching, searchResult: true, selectedItems: dataSelected }))));
|
|
162
|
+
}
|
|
163
|
+
//# sourceMappingURL=modal-search-user.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"modal-search-user.js","sourceRoot":"","sources":["../../../../../../src/components/FormTarget/components/modal-search-user/modal-search-user.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { ERoleCode } from '../constant';
|
|
3
|
+
import { FilterItem, ISelectOptions, ITargetSelectedData, TFilterBy } from '../type/target';
|
|
4
|
+
interface ICheckboxProps {
|
|
5
|
+
handleChangeFilter(target: ERoleCode, checked: boolean, data: FilterItem): void;
|
|
6
|
+
listRadio: Array<{
|
|
7
|
+
title: string;
|
|
8
|
+
value: TFilterBy;
|
|
9
|
+
}>;
|
|
10
|
+
listTargetSelected: Array<ITargetSelectedData>;
|
|
11
|
+
schoolYearId: number;
|
|
12
|
+
selectOptions: ISelectOptions;
|
|
13
|
+
errors?: Record<string, any>;
|
|
14
|
+
target: ERoleCode;
|
|
15
|
+
}
|
|
16
|
+
export declare function CheckboxGroup({ errors, handleChangeFilter, listRadio, listTargetSelected, schoolYearId, selectOptions, target, }: ICheckboxProps): React.JSX.Element;
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { ERoleCode, FILTER_BY } from '../constant';
|
|
3
|
+
import TableCustomList from './table-custom-list';
|
|
4
|
+
import { PHXBannerWithCard } from '../../BannerWithCard/BannerWithCard';
|
|
5
|
+
import { PHXCombobox } from '../../Combobox';
|
|
6
|
+
import { PHXCheckbox } from '../../Checkbox';
|
|
7
|
+
export function CheckboxGroup(_a) {
|
|
8
|
+
var errors = _a.errors, handleChangeFilter = _a.handleChangeFilter, listRadio = _a.listRadio, listTargetSelected = _a.listTargetSelected, schoolYearId = _a.schoolYearId, selectOptions = _a.selectOptions, target = _a.target;
|
|
9
|
+
var current = listTargetSelected.find(function (i) { return i.target === target; });
|
|
10
|
+
var filters = (current === null || current === void 0 ? void 0 : current.filter) || [];
|
|
11
|
+
var isAllChecked = filters.some(function (f) { return f.filterBy === FILTER_BY.ALL; });
|
|
12
|
+
return (React.createElement("div", { className: 'ml-7 space-y-2' }, listRadio.map(function (radio, index) {
|
|
13
|
+
var _a, _b, _c, _d, _e, _f;
|
|
14
|
+
var title = radio.title, value = radio.value;
|
|
15
|
+
var existing = filters.find(function (f) { return f.filterBy === value; });
|
|
16
|
+
var isChecked = !!existing;
|
|
17
|
+
var isHaveCombobox = isChecked && value !== FILTER_BY.CUSTOM_LIST && target !== ERoleCode.STAFF && value !== FILTER_BY.ALL;
|
|
18
|
+
var haveError = !!((_b = (_a = errors === null || errors === void 0 ? void 0 : errors[index]) === null || _a === void 0 ? void 0 : _a.filterValues) === null || _b === void 0 ? void 0 : _b.message);
|
|
19
|
+
return (React.createElement("div", { key: value, className: 'space-y-2' },
|
|
20
|
+
React.createElement(PHXCheckbox, { checked: isChecked, disabled: isAllChecked && value !== FILTER_BY.ALL, error: haveError, id: "".concat(target, "-").concat(value), onChange: function (val) {
|
|
21
|
+
handleChangeFilter(target, val.target.checked, {
|
|
22
|
+
filterBy: value,
|
|
23
|
+
filterValues: [],
|
|
24
|
+
});
|
|
25
|
+
}, title: title }),
|
|
26
|
+
value === FILTER_BY.CUSTOM_LIST && isChecked && (React.createElement("div", null,
|
|
27
|
+
haveError && (React.createElement(PHXBannerWithCard, { className: 'mb-3 ml-6', description: (_d = (_c = errors === null || errors === void 0 ? void 0 : errors[index]) === null || _c === void 0 ? void 0 : _c.filterValues) === null || _d === void 0 ? void 0 : _d.message, hideCloseButton: true, show: true, type: 'danger' })),
|
|
28
|
+
React.createElement(TableCustomList, { defaultData: (existing === null || existing === void 0 ? void 0 : existing.filterValues) || [], handleChange: function (data) {
|
|
29
|
+
handleChangeFilter(target, true, {
|
|
30
|
+
filterBy: value,
|
|
31
|
+
filterValues: data,
|
|
32
|
+
});
|
|
33
|
+
}, schoolYearId: schoolYearId, target: target }))),
|
|
34
|
+
isHaveCombobox && (React.createElement(PHXCombobox, { className: 'ml-6', defaultValue: (existing === null || existing === void 0 ? void 0 : existing.filterValues) || [], error: haveError, errorMessageCustom: (_f = (_e = errors === null || errors === void 0 ? void 0 : errors[index]) === null || _e === void 0 ? void 0 : _e.filterValues) === null || _f === void 0 ? void 0 : _f.message, errorType: 'custom-message', listOptions: selectOptions[value] || [], onChange: function (selected) {
|
|
35
|
+
return handleChangeFilter(target, true, {
|
|
36
|
+
filterBy: value,
|
|
37
|
+
filterValues: selected,
|
|
38
|
+
});
|
|
39
|
+
}, placeholder: 'L\u1EF1a ch\u1ECDn', selectFieldPosition: target === ERoleCode.DEPARTMENT ? 'top' : 'bottom' }))));
|
|
40
|
+
})));
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=radio-group-select.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"radio-group-select.js","sourceRoot":"","sources":["../../../../../src/components/FormTarget/components/radio-group-select.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { ERoleCode } from '../constant';
|
|
3
|
+
import { IFilterValueItem } from '../type/target';
|
|
4
|
+
interface IProps {
|
|
5
|
+
target: ERoleCode;
|
|
6
|
+
handleChange(data: Array<IFilterValueItem>): void;
|
|
7
|
+
defaultData: Array<IFilterValueItem>;
|
|
8
|
+
schoolYearId: number;
|
|
9
|
+
}
|
|
10
|
+
export default function TableCustomList({ defaultData, handleChange, schoolYearId, target }: IProps): React.JSX.Element;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import { __assign, __spreadArray } from "tslib";
|
|
2
|
+
import React, { useEffect, useState } from 'react';
|
|
3
|
+
import { ERoleCode, TEXT_UNDEFINED } from '../constant';
|
|
4
|
+
import { getRoleNameByTarget } from '../ultis/get-role-name-by-target';
|
|
5
|
+
import { getTitleByRelationshipCode } from '../ultis/get-title-by-relationship-code';
|
|
6
|
+
import ModalSearchUser from './modal-search-user/modal-search-user';
|
|
7
|
+
import { PHXDropdown } from '../../Dropdown';
|
|
8
|
+
import { PHXDescriptionListInTooltip } from '../../DescriptionListInTooltip';
|
|
9
|
+
import { PHXButton } from '../../Button';
|
|
10
|
+
import { PHXModal } from '../../Modal';
|
|
11
|
+
import { PHXTableStatic } from '../../TableStatic';
|
|
12
|
+
export default function TableCustomList(_a) {
|
|
13
|
+
var _b, _c;
|
|
14
|
+
var defaultData = _a.defaultData, handleChange = _a.handleChange, schoolYearId = _a.schoolYearId, target = _a.target;
|
|
15
|
+
var _d = useState(defaultData || []), listSelected = _d[0], setListSelected = _d[1];
|
|
16
|
+
var _e = useState(Date.now().toString()), syncSelectedRowsKey = _e[0], setSyncSelectedRowsKey = _e[1];
|
|
17
|
+
var _f = useState(false), showModalSearch = _f[0], setShowModalSearch = _f[1];
|
|
18
|
+
var _g = useState([]), rowSelected = _g[0], setRowSelected = _g[1];
|
|
19
|
+
var _h = useState({
|
|
20
|
+
deleteData: {
|
|
21
|
+
ids: [],
|
|
22
|
+
name: '',
|
|
23
|
+
},
|
|
24
|
+
show: false,
|
|
25
|
+
}), modalDelete = _h[0], setModalDelete = _h[1];
|
|
26
|
+
var _j = useState({
|
|
27
|
+
searchKeyword: '',
|
|
28
|
+
}), filterValues = _j[0], setFilterValues = _j[1];
|
|
29
|
+
var roleName = getRoleNameByTarget(target);
|
|
30
|
+
var defaultHeader = ['Số điện thoại', 'Email', 'Thao tác'];
|
|
31
|
+
var headerTable = (_b = {},
|
|
32
|
+
_b[ERoleCode.TEACHER] = __spreadArray(['Giáo viên', 'Mã giáo viên'], defaultHeader, true),
|
|
33
|
+
_b[ERoleCode.STAFF] = __spreadArray(['Nhân viên', 'Mã nhân viên'], defaultHeader, true),
|
|
34
|
+
_b[ERoleCode.STUDENT] = ['Học sinh', 'Mã học sinh', 'Cấp học', 'Khối học', 'Lớp học', 'Người thân', 'Thao tác'],
|
|
35
|
+
_b[ERoleCode.DEPARTMENT] = ['Phòng ban', 'Mã phòng ban', 'Thao tác'],
|
|
36
|
+
_b);
|
|
37
|
+
var defaultBody = ['phone', 'email', 'actions'];
|
|
38
|
+
var bodyTable = (_c = {},
|
|
39
|
+
_c[ERoleCode.TEACHER] = __spreadArray(['name', 'code'], defaultBody, true),
|
|
40
|
+
_c[ERoleCode.STAFF] = __spreadArray(['name', 'code'], defaultBody, true),
|
|
41
|
+
_c[ERoleCode.STUDENT] = ['name', 'code', 'educational_level', 'grade', 'classroom', 'parents', 'actions'],
|
|
42
|
+
_c[ERoleCode.DEPARTMENT] = __spreadArray(['Phòng ban', 'Mã phòng ban'], defaultHeader, true),
|
|
43
|
+
_c);
|
|
44
|
+
var baseThComponent = {
|
|
45
|
+
actions: function (_value, itemBody) { return (React.createElement(PHXDropdown, { options: [
|
|
46
|
+
{
|
|
47
|
+
// @ts-ignore
|
|
48
|
+
content: React.createElement("p", { className: 'text-[#8E1F0B]' },
|
|
49
|
+
"Xo\u00E1 ",
|
|
50
|
+
roleName),
|
|
51
|
+
destructive: true,
|
|
52
|
+
id: 0,
|
|
53
|
+
onClick: function () {
|
|
54
|
+
setModalDelete({
|
|
55
|
+
show: true,
|
|
56
|
+
deleteData: {
|
|
57
|
+
ids: [itemBody.id],
|
|
58
|
+
name: itemBody.name,
|
|
59
|
+
},
|
|
60
|
+
});
|
|
61
|
+
},
|
|
62
|
+
},
|
|
63
|
+
], type: 'ellipsis-icon' })); },
|
|
64
|
+
};
|
|
65
|
+
var thComponent = __assign(__assign({}, baseThComponent), (target === ERoleCode.STUDENT && {
|
|
66
|
+
parents: function (value) { return (React.createElement("div", null,
|
|
67
|
+
React.createElement(PHXDescriptionListInTooltip, { items: value.map(function (parent) { return ({
|
|
68
|
+
title: getTitleByRelationshipCode(parent === null || parent === void 0 ? void 0 : parent.relationship_code),
|
|
69
|
+
description: parent.full_name,
|
|
70
|
+
}); }), tooltipClassName: 'max-w-none w-auto min-w-[150px]', trigger: React.createElement("div", { className: 'max-w-52 truncate' }, Array.isArray(value) && value.length > 0
|
|
71
|
+
? value.map(function (parent) { return "".concat(parent.full_name); }).join(', ')
|
|
72
|
+
: TEXT_UNDEFINED) }))); },
|
|
73
|
+
}));
|
|
74
|
+
var handleAddList = function (data, listDelete) {
|
|
75
|
+
var mergedData = __spreadArray(__spreadArray([], data, true), listSelected, true).filter(function (item) { return !listDelete.some(function (deleteItem) { return deleteItem.id === item.id; }); });
|
|
76
|
+
var unique = Array.from(new Map(mergedData.map(function (item) { return [item.id, item]; })).values());
|
|
77
|
+
setSyncSelectedRowsKey(Date.now().toString());
|
|
78
|
+
setListSelected(unique);
|
|
79
|
+
setFilterValues({
|
|
80
|
+
searchKeyword: '',
|
|
81
|
+
});
|
|
82
|
+
handleChange(unique);
|
|
83
|
+
};
|
|
84
|
+
var openModalSearch = function () {
|
|
85
|
+
setListSelected(defaultData || []);
|
|
86
|
+
setShowModalSearch(true);
|
|
87
|
+
};
|
|
88
|
+
var hideModalSearch = function () {
|
|
89
|
+
setShowModalSearch(false);
|
|
90
|
+
};
|
|
91
|
+
var handleDelete = function () {
|
|
92
|
+
if (modalDelete.deleteData.ids.length === 0)
|
|
93
|
+
return;
|
|
94
|
+
setSyncSelectedRowsKey(Date.now().toString());
|
|
95
|
+
var filteredData = listSelected.filter(function (item) { return !modalDelete.deleteData.ids.includes(item.id); });
|
|
96
|
+
var remainingSelected = rowSelected.filter(function (item) { return !modalDelete.deleteData.ids.includes(item.id); });
|
|
97
|
+
setListSelected(filteredData);
|
|
98
|
+
setRowSelected(remainingSelected);
|
|
99
|
+
handleChange(filteredData);
|
|
100
|
+
onHideModalDelete();
|
|
101
|
+
};
|
|
102
|
+
var getFilteredListData = function () {
|
|
103
|
+
var searchKeyword = filterValues.searchKeyword;
|
|
104
|
+
var filteredData = listSelected.filter(function (user) {
|
|
105
|
+
return user.code.toLowerCase().includes(searchKeyword.toLowerCase()) ||
|
|
106
|
+
user.name.toLowerCase().includes(searchKeyword.toLowerCase());
|
|
107
|
+
});
|
|
108
|
+
return filteredData;
|
|
109
|
+
};
|
|
110
|
+
function onHideModalDelete() {
|
|
111
|
+
setModalDelete({
|
|
112
|
+
deleteData: {
|
|
113
|
+
ids: [],
|
|
114
|
+
name: '',
|
|
115
|
+
},
|
|
116
|
+
show: false,
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
useEffect(function () {
|
|
120
|
+
setListSelected(defaultData || []);
|
|
121
|
+
}, [JSON.stringify(defaultData)]);
|
|
122
|
+
return (React.createElement("div", null,
|
|
123
|
+
React.createElement("div", { className: 'ml-6 flex items-center justify-between' },
|
|
124
|
+
React.createElement("p", { className: ' text-xs font-semibold' },
|
|
125
|
+
"Danh s\u00E1ch ",
|
|
126
|
+
roleName,
|
|
127
|
+
" \u0111\u00E3 ch\u1ECDn (",
|
|
128
|
+
defaultData.length,
|
|
129
|
+
")"),
|
|
130
|
+
React.createElement(PHXButton, { className: 'text-xs font-medium', onClick: function () { return openModalSearch(); }, plain: true }, "Th\u00EAm m\u1EDBi"),
|
|
131
|
+
React.createElement(ModalSearchUser, { defaultSelected: listSelected, handleAddList: handleAddList, onHide: hideModalSearch, schoolYearId: schoolYearId, show: showModalSearch, target: target })),
|
|
132
|
+
React.createElement(PHXModal, { key: 'deleteModal', dangerActionText: 'X\u00E1c nh\u1EADn', dangerSubmit: true, hiddenSubmit: true, inCard: false, onDangerClick: handleDelete, onHide: onHideModalDelete, show: modalDelete.show, title: "X\u00E1c nh\u1EADn xo\u00E1 ".concat(roleName, " ") },
|
|
133
|
+
React.createElement("p", { className: 'text-xs text-gray-500' },
|
|
134
|
+
"B\u1EA1n ch\u1EAFc ch\u1EAFn mu\u1ED1n xo\u00E1",
|
|
135
|
+
' ',
|
|
136
|
+
modalDelete.deleteData.ids.length > 1 ? (React.createElement("span", { className: 'font-bold' },
|
|
137
|
+
modalDelete.deleteData.ids.length,
|
|
138
|
+
" ",
|
|
139
|
+
roleName)) : (roleName),
|
|
140
|
+
' ',
|
|
141
|
+
React.createElement("span", { className: 'font-bold' }, modalDelete.deleteData.name),
|
|
142
|
+
" \u0111\u00E3 ch\u1ECDn? Thao t\u00E1c n\u00E0y kh\u00F4ng th\u1EC3 ho\u00E0n t\u00E1c.")),
|
|
143
|
+
React.createElement("div", { className: 'ml-6' },
|
|
144
|
+
React.createElement(PHXTableStatic, { bodyData: getFilteredListData(), bulkAction: {
|
|
145
|
+
enable: true,
|
|
146
|
+
buttons: [
|
|
147
|
+
{
|
|
148
|
+
id: 1,
|
|
149
|
+
text: React.createElement("p", { className: 'text-xs font-medium text-red-700' },
|
|
150
|
+
"Xo\u00E1 ",
|
|
151
|
+
roleName),
|
|
152
|
+
onClick: function (selectedRows) {
|
|
153
|
+
setRowSelected(selectedRows);
|
|
154
|
+
setModalDelete({
|
|
155
|
+
show: true,
|
|
156
|
+
deleteData: {
|
|
157
|
+
name: '',
|
|
158
|
+
ids: selectedRows.map(function (item) { return Number(item.id); }),
|
|
159
|
+
},
|
|
160
|
+
});
|
|
161
|
+
},
|
|
162
|
+
type: 'secondary',
|
|
163
|
+
},
|
|
164
|
+
],
|
|
165
|
+
}, isPagination: true, name: target, rowNumber: 10, search: {
|
|
166
|
+
enable: true,
|
|
167
|
+
onSearchChange: function (keyword) { return setFilterValues(function (pre) { return (__assign(__assign({}, pre), { searchKeyword: keyword })); }); },
|
|
168
|
+
loading: false,
|
|
169
|
+
setLoading: function () { return null; },
|
|
170
|
+
}, selectedRows: rowSelected, syncSelectedRowsKey: syncSelectedRowsKey, thBody: bodyTable[target], thComponent: thComponent, thHeader: headerTable[target] }))));
|
|
171
|
+
}
|
|
172
|
+
//# sourceMappingURL=table-custom-list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table-custom-list.js","sourceRoot":"","sources":["../../../../../src/components/FormTarget/components/table-custom-list.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { ERoleCode, ENotifyWith } from './constant';
|
|
2
|
+
export declare const TARGET_CONFIGS: ({
|
|
3
|
+
title: string;
|
|
4
|
+
value: ERoleCode;
|
|
5
|
+
description: string;
|
|
6
|
+
notifyWith: {
|
|
7
|
+
title: string;
|
|
8
|
+
description: string;
|
|
9
|
+
value: ENotifyWith;
|
|
10
|
+
};
|
|
11
|
+
listRadio: ({
|
|
12
|
+
title: string;
|
|
13
|
+
value: "EDUCATIONAL_LEVEL";
|
|
14
|
+
} | {
|
|
15
|
+
title: string;
|
|
16
|
+
value: "GRADE";
|
|
17
|
+
} | {
|
|
18
|
+
title: string;
|
|
19
|
+
value: "CLASSROOM";
|
|
20
|
+
} | {
|
|
21
|
+
title: string;
|
|
22
|
+
value: "CUSTOM_LIST";
|
|
23
|
+
})[];
|
|
24
|
+
} | {
|
|
25
|
+
title: string;
|
|
26
|
+
value: ERoleCode;
|
|
27
|
+
notifyWith: {
|
|
28
|
+
title: string;
|
|
29
|
+
description: string;
|
|
30
|
+
value: ENotifyWith;
|
|
31
|
+
};
|
|
32
|
+
listRadio: ({
|
|
33
|
+
title: string;
|
|
34
|
+
value: "EDUCATIONAL_LEVEL";
|
|
35
|
+
} | {
|
|
36
|
+
title: string;
|
|
37
|
+
value: "GRADE";
|
|
38
|
+
} | {
|
|
39
|
+
title: string;
|
|
40
|
+
value: "CLASSROOM";
|
|
41
|
+
} | {
|
|
42
|
+
title: string;
|
|
43
|
+
value: "CUSTOM_LIST";
|
|
44
|
+
})[];
|
|
45
|
+
description?: undefined;
|
|
46
|
+
} | {
|
|
47
|
+
title: string;
|
|
48
|
+
value: ERoleCode;
|
|
49
|
+
listRadio: ({
|
|
50
|
+
title: string;
|
|
51
|
+
value: "ALL";
|
|
52
|
+
} | {
|
|
53
|
+
title: string;
|
|
54
|
+
value: "CUSTOM_LIST";
|
|
55
|
+
})[];
|
|
56
|
+
description?: undefined;
|
|
57
|
+
notifyWith?: undefined;
|
|
58
|
+
} | {
|
|
59
|
+
title: string;
|
|
60
|
+
value: ERoleCode;
|
|
61
|
+
listRadio: ({
|
|
62
|
+
title: string;
|
|
63
|
+
value: "ALL";
|
|
64
|
+
} | {
|
|
65
|
+
title: string;
|
|
66
|
+
value: "DEPARTMENT";
|
|
67
|
+
})[];
|
|
68
|
+
description?: undefined;
|
|
69
|
+
notifyWith?: undefined;
|
|
70
|
+
})[];
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { ERoleCode, FILTER_BY, ENotifyWith } from './constant';
|
|
2
|
+
export var TARGET_CONFIGS = [
|
|
3
|
+
{
|
|
4
|
+
title: 'Theo phụ huynh',
|
|
5
|
+
value: ERoleCode.STUDENT,
|
|
6
|
+
description: 'Danh sách phụ huynh nhận thông báo được lấy theo danh sách học sinh đã chọn.',
|
|
7
|
+
notifyWith: {
|
|
8
|
+
title: 'Giáo viên chủ nhiệm sẽ nhận được thông báo',
|
|
9
|
+
description: 'Ngoài gửi thông báo tới phụ huynh, hệ thống đồng thời gửi thông báo đến giáo viên chủ nhiệm của các lớp có học sinh đã chọn.',
|
|
10
|
+
value: ENotifyWith.GVCN,
|
|
11
|
+
},
|
|
12
|
+
listRadio: [
|
|
13
|
+
{
|
|
14
|
+
title: 'Theo cấp học',
|
|
15
|
+
value: FILTER_BY.EDUCATIONAL_LEVEL,
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
title: 'Theo khối học',
|
|
19
|
+
value: FILTER_BY.GRADE,
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
title: 'Theo lớp học',
|
|
23
|
+
value: FILTER_BY.CLASSROOM,
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
title: 'Theo danh sách tuỳ chọn',
|
|
27
|
+
value: FILTER_BY.CUSTOM_LIST,
|
|
28
|
+
},
|
|
29
|
+
],
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
title: 'Theo giáo viên chủ nhiệm',
|
|
33
|
+
value: ERoleCode.TEACHER,
|
|
34
|
+
notifyWith: {
|
|
35
|
+
title: 'Giáo viên bộ môn sẽ nhận được thông báo',
|
|
36
|
+
description: 'Ngoài gửi thông báo tới giáo viên chủ nhiệm, hệ thống đồng thời gửi thông báo đến giáo viên bộ môn',
|
|
37
|
+
value: ENotifyWith.GVBM,
|
|
38
|
+
},
|
|
39
|
+
listRadio: [
|
|
40
|
+
{
|
|
41
|
+
title: 'Theo cấp học',
|
|
42
|
+
value: FILTER_BY.EDUCATIONAL_LEVEL,
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
title: 'Theo khối học',
|
|
46
|
+
value: FILTER_BY.GRADE,
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
title: 'Theo lớp học',
|
|
50
|
+
value: FILTER_BY.CLASSROOM,
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
title: 'Theo danh sách tuỳ chọn',
|
|
54
|
+
value: FILTER_BY.CUSTOM_LIST,
|
|
55
|
+
},
|
|
56
|
+
],
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
title: 'Theo nhân viên',
|
|
60
|
+
value: ERoleCode.STAFF,
|
|
61
|
+
listRadio: [
|
|
62
|
+
{
|
|
63
|
+
title: 'Tất cả cán bộ nhân viên',
|
|
64
|
+
value: FILTER_BY.ALL,
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
title: 'Theo danh sách tuỳ chọn',
|
|
68
|
+
value: FILTER_BY.CUSTOM_LIST,
|
|
69
|
+
},
|
|
70
|
+
],
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
title: 'Theo phòng ban',
|
|
74
|
+
value: ERoleCode.DEPARTMENT,
|
|
75
|
+
listRadio: [
|
|
76
|
+
{
|
|
77
|
+
title: 'Tất cả phòng ban',
|
|
78
|
+
value: FILTER_BY.ALL,
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
title: 'Theo từng phòng ban',
|
|
82
|
+
value: FILTER_BY.DEPARTMENT,
|
|
83
|
+
},
|
|
84
|
+
],
|
|
85
|
+
},
|
|
86
|
+
];
|
|
87
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/components/FormTarget/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE9D,MAAM,CAAC,IAAM,cAAc,GAAG;IAC5B;QACE,KAAK,EAAE,gBAAgB;QACvB,KAAK,EAAE,SAAS,CAAC,OAAO;QACxB,WAAW,EAAE,8EAA8E;QAC3F,UAAU,EAAE;YACV,KAAK,EAAE,4CAA4C;YACnD,WAAW,EACT,8HAA8H;YAChI,KAAK,EAAE,WAAW,CAAC,IAAI;SACxB;QACD,SAAS,EAAE;YACT;gBACE,KAAK,EAAE,cAAc;gBACrB,KAAK,EAAE,SAAS,CAAC,iBAAiB;aACnC;YACD;gBACE,KAAK,EAAE,eAAe;gBACtB,KAAK,EAAE,SAAS,CAAC,KAAK;aACvB;YACD;gBACE,KAAK,EAAE,cAAc;gBACrB,KAAK,EAAE,SAAS,CAAC,SAAS;aAC3B;YACD;gBACE,KAAK,EAAE,yBAAyB;gBAChC,KAAK,EAAE,SAAS,CAAC,WAAW;aAC7B;SACF;KACF;IACD;QACE,KAAK,EAAE,0BAA0B;QACjC,KAAK,EAAE,SAAS,CAAC,OAAO;QACxB,UAAU,EAAE;YACV,KAAK,EAAE,yCAAyC;YAChD,WAAW,EAAE,oGAAoG;YACjH,KAAK,EAAE,WAAW,CAAC,IAAI;SACxB;QACD,SAAS,EAAE;YACT;gBACE,KAAK,EAAE,cAAc;gBACrB,KAAK,EAAE,SAAS,CAAC,iBAAiB;aACnC;YACD;gBACE,KAAK,EAAE,eAAe;gBACtB,KAAK,EAAE,SAAS,CAAC,KAAK;aACvB;YACD;gBACE,KAAK,EAAE,cAAc;gBACrB,KAAK,EAAE,SAAS,CAAC,SAAS;aAC3B;YACD;gBACE,KAAK,EAAE,yBAAyB;gBAChC,KAAK,EAAE,SAAS,CAAC,WAAW;aAC7B;SACF;KACF;IACD;QACE,KAAK,EAAE,gBAAgB;QACvB,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,SAAS,EAAE;YACT;gBACE,KAAK,EAAE,yBAAyB;gBAChC,KAAK,EAAE,SAAS,CAAC,GAAG;aACrB;YACD;gBACE,KAAK,EAAE,yBAAyB;gBAChC,KAAK,EAAE,SAAS,CAAC,WAAW;aAC7B;SACF;KACF;IACD;QACE,KAAK,EAAE,gBAAgB;QACvB,KAAK,EAAE,SAAS,CAAC,UAAU;QAC3B,SAAS,EAAE;YACT;gBACE,KAAK,EAAE,kBAAkB;gBACzB,KAAK,EAAE,SAAS,CAAC,GAAG;aACrB;YACD;gBACE,KAAK,EAAE,qBAAqB;gBAC5B,KAAK,EAAE,SAAS,CAAC,UAAU;aAC5B;SACF;KACF;CACF,CAAA"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export declare enum ENotifyWith {
|
|
2
|
+
GVCN = "GVCN",
|
|
3
|
+
GVBM = "GVBM"
|
|
4
|
+
}
|
|
5
|
+
export declare const OPTION_FILTER_ALL: {
|
|
6
|
+
id: number;
|
|
7
|
+
name: string;
|
|
8
|
+
code: string;
|
|
9
|
+
};
|
|
10
|
+
export declare enum ERoleCode {
|
|
11
|
+
TEACHER = "GV",
|
|
12
|
+
STUDENT = "SV",
|
|
13
|
+
STAFF = "NV",
|
|
14
|
+
DEPARTMENT = "DEPARTMENT"
|
|
15
|
+
}
|
|
16
|
+
export declare enum EObjectType {
|
|
17
|
+
TEACHER = "TEACHER",
|
|
18
|
+
STUDENT = "STUDENT",
|
|
19
|
+
STAFF = "STAFF",
|
|
20
|
+
DEPARTMENT = "DEPARTMENT"
|
|
21
|
+
}
|
|
22
|
+
export declare const FILTER_BY: {
|
|
23
|
+
readonly ALL: "ALL";
|
|
24
|
+
readonly EDUCATIONAL_LEVEL: "EDUCATIONAL_LEVEL";
|
|
25
|
+
readonly GRADE: "GRADE";
|
|
26
|
+
readonly CLASSROOM: "CLASSROOM";
|
|
27
|
+
readonly DEPARTMENT: "DEPARTMENT";
|
|
28
|
+
readonly CUSTOM_LIST: "CUSTOM_LIST";
|
|
29
|
+
};
|
|
30
|
+
export declare const VALIDATE_REQUIRED_INPUT = "Tr\u01B0\u1EDDng n\u00E0y kh\u00F4ng \u0111\u01B0\u1EE3c \u0111\u1EC3 tr\u1ED1ng";
|
|
31
|
+
export declare const DEFAULT_NOTIFY_WITH_BY_TARGET: {
|
|
32
|
+
SV: ENotifyWith;
|
|
33
|
+
GV: undefined;
|
|
34
|
+
NV: undefined;
|
|
35
|
+
DEPARTMENT: undefined;
|
|
36
|
+
};
|
|
37
|
+
export declare const TEXT_UNDEFINED = "--";
|