mario-core 2.9.193-release → 2.9.195-release

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.
@@ -5,6 +5,7 @@ interface Props {
5
5
  filters: UserFilter;
6
6
  fullName?: string;
7
7
  onChangeFilters?: (filter: UserFilter) => void;
8
+ isStudentFilter?: boolean;
8
9
  }
9
10
  declare const TableHeader: FC<Props>;
10
11
  export default TableHeader;
@@ -1,4 +1,4 @@
1
- import { StudentFilter, UserColumn, UserFilter, UserOrder } from "./types";
1
+ import { IStaffAssign, StudentFilter, UserColumn, UserFilter, UserOrder } from "./types";
2
2
  export declare const userOrders: {
3
3
  0: string;
4
4
  1: string;
@@ -18,3 +18,4 @@ export declare const DEFAULT_FILTER: UserFilter;
18
18
  export declare const DEFAULT_STUDENT_FILTER: StudentFilter;
19
19
  export declare const DEFAULT_FILTER_POPOVER: UserFilter;
20
20
  export declare const CSV_PREFIX = "data:text/csv;charset=utf-8,";
21
+ export declare const initialStaffBulk: IStaffAssign;
@@ -53,6 +53,7 @@ export declare type UserFilterField = {
53
53
  isDescending?: boolean;
54
54
  searchBy?: SearchBy;
55
55
  searchStringBy?: string;
56
+ isStudentFilter?: boolean;
56
57
  };
57
58
  export declare type UserColumn = {
58
59
  name: string;
@@ -61,6 +62,8 @@ export declare type UserColumn = {
61
62
  searchBy?: SearchBy;
62
63
  getOption?: (user: any, t?: any) => FilterOption;
63
64
  options?: FilterOption[];
65
+ onSelectAll?: Function;
66
+ isCheckAll?: boolean;
64
67
  };
65
68
  export declare type StudentAssign = {
66
69
  studentId: number;
@@ -84,6 +87,16 @@ export declare type StudentAssign = {
84
87
  mainTeacherEmail: string;
85
88
  mainTeacherId?: number;
86
89
  };
90
+ export interface IStaffAssign {
91
+ teacherId: string;
92
+ teacherEmail: string;
93
+ assistantId: string;
94
+ assistantEmail: string;
95
+ counselorId: string;
96
+ counselorEmail: string;
97
+ secondaryTeacherId: string;
98
+ secondaryTeacherEmail: string;
99
+ }
87
100
  export declare type Counselor = {
88
101
  id: string;
89
102
  counselorId: number;
@@ -1,5 +1,11 @@
1
+ import { IStaffAssign } from "../constants/types";
1
2
  declare const useAssignStudent: (teacherSelected?: object | undefined, assistantSelected?: object | undefined, counselorSelected?: object | undefined, secondaryTeacherSelected?: object | undefined, callback?: Function | undefined) => {
2
3
  handleAssignSingleStudent: (id: string) => void;
3
4
  handleAssignMultiStudent: (listUserIds: string[]) => void;
5
+ openModelBulk: boolean;
6
+ handleToggleModel: () => void;
7
+ handleChangeStaffBulk: (name: string, id: string) => void;
8
+ staffBulkAssign: IStaffAssign;
9
+ handleAssignStaffToStudents: (listUserIds: string[]) => void;
4
10
  };
5
11
  export default useAssignStudent;
@@ -10,5 +10,6 @@ declare const useAssignStudentList: () => {
10
10
  handleClickCheck: (e: any) => void;
11
11
  isCheckAll: boolean;
12
12
  isCheck: any;
13
+ fullName: string;
13
14
  };
14
15
  export default useAssignStudentList;
@@ -4,7 +4,7 @@ declare const useAssistantList: () => {
4
4
  selectedAssistants: object | undefined;
5
5
  assistantOptions: IOptions[];
6
6
  handleSelectAssistant: (assistantId: string, studentUserId: string) => void;
7
- handleCreateAssistantOption: (newAssistant: IOptions, studentUserId: string) => void;
7
+ handleCreateAssistantOption: (newAssistant: IOptions, studentUserId: string, isSelect?: boolean | undefined) => void;
8
8
  setSelectedAssistants: import("react").Dispatch<import("react").SetStateAction<object | undefined>>;
9
9
  };
10
10
  export default useAssistantList;
@@ -4,7 +4,7 @@ declare const useCounselorList: () => {
4
4
  selectedCounselors: object | undefined;
5
5
  counselorOptions: IOptions[];
6
6
  handleSelectCounselor: (counselorId: string, studentUserId: string) => void;
7
- handleCreateCounselorOption: (newCounselor: IOptions, studentUserId: string) => void;
7
+ handleCreateCounselorOption: (newCounselor: IOptions, studentUserId: string, isSelect?: boolean | undefined) => void;
8
8
  setSelectedCounselors: import("react").Dispatch<import("react").SetStateAction<object | undefined>>;
9
9
  };
10
10
  export default useCounselorList;
@@ -4,7 +4,7 @@ declare const useSecondaryTeacherList: () => {
4
4
  selectedSecondaryTeachers: object | undefined;
5
5
  secondaryTeacherOptions: IOptions[];
6
6
  handleSelectSecondaryTeacher: (secondaryTeacherId: string, studentUserId: string) => void;
7
- handleCreateSecondaryTeacherOption: (newSecondaryTeacher: IOptions, studentUserId: string) => void;
7
+ handleCreateSecondaryTeacherOption: (newSecondaryTeacher: IOptions, studentUserId: string, isSelect?: boolean | undefined) => void;
8
8
  setSelectedSecondaryTeachers: import("react").Dispatch<import("react").SetStateAction<object | undefined>>;
9
9
  };
10
10
  export default useSecondaryTeacherList;
@@ -2,6 +2,7 @@ import { SearchBy, UserFilter, UserFilterField, UserOrder } from "../constants/t
2
2
  interface Props {
3
3
  filters: UserFilter;
4
4
  onChangeFilters?: (filter: UserFilter) => void;
5
+ isStudentFilter?: boolean;
5
6
  }
6
7
  declare const useTableHeader: (props: Props) => {
7
8
  popoverFilters: UserFilterField;
@@ -4,7 +4,7 @@ declare const useTeacherList: () => {
4
4
  selectedTeachers: object | undefined;
5
5
  teacherOptions: IOptions[];
6
6
  handleSelectTeacher: (teacherId: string, studentUserId: string) => void;
7
- handleCreateTeacherOption: (newTeacher: IOptions, studentUserId: string) => void;
7
+ handleCreateTeacherOption: (newTeacher: IOptions, studentUserId: string, isSelectTeacher?: boolean | undefined) => void;
8
8
  setSelectedTeachers: import("react").Dispatch<import("react").SetStateAction<object | undefined>>;
9
9
  };
10
10
  export default useTeacherList;
package/dist/index.js CHANGED
@@ -26681,6 +26681,11 @@ var getFilterRosterUser = function getFilterRosterUser(filter) {
26681
26681
  params: filter
26682
26682
  });
26683
26683
  };
26684
+ var getStudentFilter = function getStudentFilter(filter) {
26685
+ return api.get(EDU_USER_URL + "/student-filters", {
26686
+ params: filter
26687
+ });
26688
+ };
26684
26689
  var getRosterUserExport = function getRosterUserExport(filter) {
26685
26690
  return api.get(MAPPING_ROSTER_USER_URL + "/export-csv", {
26686
26691
  params: filter
@@ -26869,6 +26874,16 @@ var DEFAULT_FILTER_POPOVER = {
26869
26874
  pageSize: 200
26870
26875
  };
26871
26876
  var CSV_PREFIX = "data:text/csv;charset=utf-8,";
26877
+ var initialStaffBulk = {
26878
+ assistantId: "",
26879
+ counselorId: "",
26880
+ secondaryTeacherId: "",
26881
+ teacherId: "",
26882
+ assistantEmail: "",
26883
+ counselorEmail: "",
26884
+ secondaryTeacherEmail: "",
26885
+ teacherEmail: ""
26886
+ };
26872
26887
 
26873
26888
  var useFilters$1 = function useFilters() {
26874
26889
  var _useState = React.useState(DEFAULT_FILTER$1),
@@ -27608,7 +27623,8 @@ var HeaderCell = function HeaderCell(_ref) {
27608
27623
 
27609
27624
  var useTableHeader = function useTableHeader(props) {
27610
27625
  var filters = props.filters,
27611
- onChangeFilters = props.onChangeFilters;
27626
+ onChangeFilters = props.onChangeFilters,
27627
+ isStudentFilter = props.isStudentFilter;
27612
27628
 
27613
27629
  var _useState = React.useState(),
27614
27630
  popoverId = _useState[0],
@@ -27629,7 +27645,7 @@ var useTableHeader = function useTableHeader(props) {
27629
27645
  var getData = React.useCallback(function () {
27630
27646
  try {
27631
27647
  var _temp2 = _catch(function () {
27632
- return Promise.resolve(getFilterRosterUser(popoverFilters)).then(function (res) {
27648
+ return Promise.resolve(isStudentFilter ? getStudentFilter(popoverFilters) : getFilterRosterUser(popoverFilters)).then(function (res) {
27633
27649
  var _res$data;
27634
27650
 
27635
27651
  var items = ((_res$data = res.data) === null || _res$data === void 0 ? void 0 : _res$data.items) || [];
@@ -27648,7 +27664,7 @@ var useTableHeader = function useTableHeader(props) {
27648
27664
  } catch (e) {
27649
27665
  return Promise.reject(e);
27650
27666
  }
27651
- }, [JSON.stringify(popoverFilters)]);
27667
+ }, [JSON.stringify(popoverFilters), isStudentFilter]);
27652
27668
  var handleFilterIcon = React.useCallback(function (id, searchBy, searchStringBy, sortBy) {
27653
27669
  setPopoverId(id);
27654
27670
  setPopoverFilters(_extends({}, popoverFilters, {
@@ -27677,7 +27693,7 @@ var useTableHeader = function useTableHeader(props) {
27677
27693
  }, [JSON.stringify(filters)]);
27678
27694
  React.useEffect(function () {
27679
27695
  popoverFilters.searchBy !== undefined && getData();
27680
- }, [JSON.stringify(popoverFilters)]);
27696
+ }, [JSON.stringify(popoverFilters), isStudentFilter]);
27681
27697
  return {
27682
27698
  popoverFilters: popoverFilters,
27683
27699
  popoverId: popoverId,
@@ -27692,11 +27708,13 @@ var useTableHeader = function useTableHeader(props) {
27692
27708
  var TableHeader = function TableHeader(_ref) {
27693
27709
  var headers = _ref.headers,
27694
27710
  filters = _ref.filters,
27695
- onChangeFilters = _ref.onChangeFilters;
27711
+ onChangeFilters = _ref.onChangeFilters,
27712
+ isStudentFilter = _ref.isStudentFilter;
27696
27713
 
27697
27714
  var _useTableHeader = useTableHeader({
27698
27715
  filters: filters,
27699
- onChangeFilters: onChangeFilters
27716
+ onChangeFilters: onChangeFilters,
27717
+ isStudentFilter: isStudentFilter
27700
27718
  }),
27701
27719
  popoverId = _useTableHeader.popoverId,
27702
27720
  users = _useTableHeader.users,
@@ -27706,7 +27724,9 @@ var TableHeader = function TableHeader(_ref) {
27706
27724
  handleChangeFilters = _useTableHeader.handleChangeFilters;
27707
27725
 
27708
27726
  return React__default.createElement("tr", null, headers.map(function (header) {
27709
- return React__default.createElement(HeaderCell, {
27727
+ var _header$isCheckAll;
27728
+
27729
+ return !header.onSelectAll ? React__default.createElement(HeaderCell, {
27710
27730
  users: users,
27711
27731
  data: header,
27712
27732
  key: header.name,
@@ -27718,7 +27738,17 @@ var TableHeader = function TableHeader(_ref) {
27718
27738
  onOpenFilter: handleFilterIcon,
27719
27739
  onChangeFilters: onChangeFilters,
27720
27740
  onOptionsChange: handleChangeFilters
27721
- });
27741
+ }) : React__default.createElement("th", {
27742
+ className: "align-middle text-center"
27743
+ }, React__default.createElement("input", {
27744
+ type: "checkbox",
27745
+ onChange: function onChange() {
27746
+ var _header$onSelectAll;
27747
+
27748
+ return (_header$onSelectAll = header.onSelectAll) === null || _header$onSelectAll === void 0 ? void 0 : _header$onSelectAll.call(header);
27749
+ },
27750
+ checked: (_header$isCheckAll = header.isCheckAll) != null ? _header$isCheckAll : false
27751
+ }));
27722
27752
  }));
27723
27753
  };
27724
27754
 
@@ -28060,6 +28090,8 @@ var useAssignStudentList = function useAssignStudentList() {
28060
28090
  isCheck = _useState5[0],
28061
28091
  setIsCheck = _useState5[1];
28062
28092
 
28093
+ var fullName = "";
28094
+
28063
28095
  var changeFilters = function changeFilters(updatedFilters) {
28064
28096
  var newFilters = _extends({}, filters, updatedFilters);
28065
28097
 
@@ -28153,6 +28185,11 @@ var useAssignStudentList = function useAssignStudentList() {
28153
28185
  React.useEffect(function () {
28154
28186
  document.title = "User | Assign student";
28155
28187
  }, []);
28188
+ React.useEffect(function () {
28189
+ changeFilters(_extends({}, filters, {
28190
+ searchString: fullName
28191
+ }));
28192
+ }, [fullName]);
28156
28193
  return {
28157
28194
  handelSort: handelSort,
28158
28195
  handleRetrievedData: handleRetrievedData,
@@ -28163,7 +28200,8 @@ var useAssignStudentList = function useAssignStudentList() {
28163
28200
  handleSelectAll: handleSelectAll,
28164
28201
  handleClickCheck: handleClickCheck,
28165
28202
  isCheckAll: isCheckAll,
28166
- isCheck: isCheck
28203
+ isCheck: isCheck,
28204
+ fullName: fullName
28167
28205
  };
28168
28206
  };
28169
28207
 
@@ -28214,11 +28252,14 @@ var useCounselorList = function useCounselorList() {
28214
28252
  });
28215
28253
  setSelectedCounselors(_extends({}, selectedCounselors, (_extends2 = {}, _extends2[studentUserId] = selectedCounselor, _extends2)));
28216
28254
  }, [JSON.stringify(selectedCounselors), JSON.stringify(counselorOptions)]);
28217
- var handleCreateCounselorOption = React.useCallback(function (newCounselor, studentUserId) {
28218
- var _extends3;
28219
-
28255
+ var handleCreateCounselorOption = React.useCallback(function (newCounselor, studentUserId, isSelect) {
28220
28256
  setCounselorOptions([].concat(counselorOptions, [newCounselor]));
28221
- setSelectedCounselors(_extends({}, selectedCounselors, (_extends3 = {}, _extends3[studentUserId] = newCounselor, _extends3)));
28257
+
28258
+ if (!!isSelect) {
28259
+ var _extends3;
28260
+
28261
+ setSelectedCounselors(_extends({}, selectedCounselors, (_extends3 = {}, _extends3[studentUserId] = newCounselor, _extends3)));
28262
+ }
28222
28263
  }, [JSON.stringify(counselorOptions), JSON.stringify(selectedCounselors)]);
28223
28264
  React.useEffect(function () {
28224
28265
  getDataCounselors();
@@ -28279,11 +28320,14 @@ var useAssistantList = function useAssistantList() {
28279
28320
  });
28280
28321
  setSelectedAssistants(_extends({}, selectedAssistants, (_extends2 = {}, _extends2[studentUserId] = selectedAssistant, _extends2)));
28281
28322
  }, [JSON.stringify(selectedAssistants), JSON.stringify(assistantOptions)]);
28282
- var handleCreateAssistantOption = React.useCallback(function (newAssistant, studentUserId) {
28283
- var _extends3;
28284
-
28323
+ var handleCreateAssistantOption = React.useCallback(function (newAssistant, studentUserId, isSelect) {
28285
28324
  setAssistantOptions([].concat(assistantOptions, [newAssistant]));
28286
- setSelectedAssistants(_extends({}, selectedAssistants, (_extends3 = {}, _extends3[studentUserId] = newAssistant, _extends3)));
28325
+
28326
+ if (!!isSelect) {
28327
+ var _extends3;
28328
+
28329
+ setSelectedAssistants(_extends({}, selectedAssistants, (_extends3 = {}, _extends3[studentUserId] = newAssistant, _extends3)));
28330
+ }
28287
28331
  }, [JSON.stringify(assistantOptions), JSON.stringify(selectedAssistants)]);
28288
28332
  React.useEffect(function () {
28289
28333
  getDataAssistants();
@@ -28344,11 +28388,14 @@ var useSecondaryTeacherList = function useSecondaryTeacherList() {
28344
28388
  });
28345
28389
  setSelectedSecondaryTeachers(_extends({}, selectedSecondaryTeachers, (_extends2 = {}, _extends2[studentUserId] = selectedSecondaryTeacher, _extends2)));
28346
28390
  }, [JSON.stringify(selectedSecondaryTeachers), JSON.stringify(secondaryTeacherOptions)]);
28347
- var handleCreateSecondaryTeacherOption = React.useCallback(function (newSecondaryTeacher, studentUserId) {
28348
- var _extends3;
28349
-
28391
+ var handleCreateSecondaryTeacherOption = React.useCallback(function (newSecondaryTeacher, studentUserId, isSelect) {
28350
28392
  setSecondaryTeacherOptions([].concat(secondaryTeacherOptions, [newSecondaryTeacher]));
28351
- setSelectedSecondaryTeachers(_extends({}, selectedSecondaryTeachers, (_extends3 = {}, _extends3[studentUserId] = newSecondaryTeacher, _extends3)));
28393
+
28394
+ if (!!isSelect) {
28395
+ var _extends3;
28396
+
28397
+ setSelectedSecondaryTeachers(_extends({}, selectedSecondaryTeachers, (_extends3 = {}, _extends3[studentUserId] = newSecondaryTeacher, _extends3)));
28398
+ }
28352
28399
  }, [JSON.stringify(secondaryTeacherOptions), JSON.stringify(selectedSecondaryTeachers)]);
28353
28400
  React.useEffect(function () {
28354
28401
  getDataSecondaryTeachers();
@@ -28411,11 +28458,14 @@ var useTeacherList = function useTeacherList() {
28411
28458
  });
28412
28459
  setSelectedTeachers(_extends({}, selectedTeachers, (_extends2 = {}, _extends2[studentUserId] = selectedTeacher, _extends2)));
28413
28460
  }, [JSON.stringify(selectedTeachers), JSON.stringify(teacherOptions)]);
28414
- var handleCreateTeacherOption = React.useCallback(function (newTeacher, studentUserId) {
28415
- var _extends3;
28416
-
28461
+ var handleCreateTeacherOption = React.useCallback(function (newTeacher, studentUserId, isSelectTeacher) {
28417
28462
  setTeacherOptions([].concat(teacherOptions, [newTeacher]));
28418
- setSelectedTeachers(_extends({}, selectedTeachers, (_extends3 = {}, _extends3[studentUserId] = newTeacher, _extends3)));
28463
+
28464
+ if (!!isSelectTeacher) {
28465
+ var _extends3;
28466
+
28467
+ setSelectedTeachers(_extends({}, selectedTeachers, (_extends3 = {}, _extends3[studentUserId] = newTeacher, _extends3)));
28468
+ }
28419
28469
  }, [JSON.stringify(teacherOptions), JSON.stringify(selectedTeachers)]);
28420
28470
  React.useEffect(function () {
28421
28471
  getDataTeachers();
@@ -28432,6 +28482,25 @@ var useTeacherList = function useTeacherList() {
28432
28482
  var useAssignStudent = function useAssignStudent(teacherSelected, assistantSelected, counselorSelected, secondaryTeacherSelected, callback) {
28433
28483
  var dispatch = reactRedux.useDispatch();
28434
28484
 
28485
+ var _useState = React.useState(false),
28486
+ openModelBulk = _useState[0],
28487
+ setOpenModelBulk = _useState[1];
28488
+
28489
+ var _useState2 = React.useState(initialStaffBulk),
28490
+ staffBulkAssign = _useState2[0],
28491
+ setStaffBulkAssign = _useState2[1];
28492
+
28493
+ var handleToggleModel = function handleToggleModel() {
28494
+ setOpenModelBulk(!openModelBulk);
28495
+ setStaffBulkAssign(_extends({}, initialStaffBulk));
28496
+ };
28497
+
28498
+ var handleChangeStaffBulk = function handleChangeStaffBulk(name, id) {
28499
+ var _extends2;
28500
+
28501
+ setStaffBulkAssign(_extends({}, staffBulkAssign, (_extends2 = {}, _extends2[name] = id, _extends2)));
28502
+ };
28503
+
28435
28504
  var assignStudents = function assignStudents(users) {
28436
28505
  try {
28437
28506
  var _temp3 = function _temp3() {
@@ -28561,9 +28630,40 @@ var useAssignStudent = function useAssignStudent(teacherSelected, assistantSelec
28561
28630
 
28562
28631
  assignStudents([studentRequest]);
28563
28632
  }, [JSON.stringify(teacherSelected), JSON.stringify(assistantSelected), JSON.stringify(counselorSelected), JSON.stringify(secondaryTeacherSelected)]);
28633
+ var handleAssignStaffToStudents = React.useCallback(function (listUserIds) {
28634
+ if (listUserIds.length === 0) {
28635
+ dispatch(setAlert({
28636
+ type: "danger",
28637
+ message: "Not found selected student."
28638
+ }));
28639
+ return;
28640
+ }
28641
+
28642
+ var users = listUserIds.map(function (i) {
28643
+ var value = {
28644
+ id: i,
28645
+ mainTeacherUserId: !!(staffBulkAssign !== null && staffBulkAssign !== void 0 && staffBulkAssign.teacherId) ? staffBulkAssign === null || staffBulkAssign === void 0 ? void 0 : staffBulkAssign.teacherId : undefined,
28646
+ mainTeacherEmail: !!(staffBulkAssign !== null && staffBulkAssign !== void 0 && staffBulkAssign.teacherEmail) ? staffBulkAssign === null || staffBulkAssign === void 0 ? void 0 : staffBulkAssign.teacherEmail : undefined,
28647
+ assistantUserId: !!(staffBulkAssign !== null && staffBulkAssign !== void 0 && staffBulkAssign.assistantId) ? staffBulkAssign === null || staffBulkAssign === void 0 ? void 0 : staffBulkAssign.assistantId : undefined,
28648
+ assistantEmail: !!(staffBulkAssign !== null && staffBulkAssign !== void 0 && staffBulkAssign.assistantEmail) ? staffBulkAssign === null || staffBulkAssign === void 0 ? void 0 : staffBulkAssign.assistantEmail : undefined,
28649
+ counselorUserId: !!(staffBulkAssign !== null && staffBulkAssign !== void 0 && staffBulkAssign.counselorId) ? staffBulkAssign === null || staffBulkAssign === void 0 ? void 0 : staffBulkAssign.counselorId : undefined,
28650
+ counselorEmail: !!(staffBulkAssign !== null && staffBulkAssign !== void 0 && staffBulkAssign.counselorEmail) ? staffBulkAssign === null || staffBulkAssign === void 0 ? void 0 : staffBulkAssign.counselorEmail : undefined,
28651
+ secondaryTeacherUserId: !!(staffBulkAssign !== null && staffBulkAssign !== void 0 && staffBulkAssign.secondaryTeacherId) ? staffBulkAssign === null || staffBulkAssign === void 0 ? void 0 : staffBulkAssign.secondaryTeacherId : undefined,
28652
+ secondaryTeacherEmail: !!(staffBulkAssign !== null && staffBulkAssign !== void 0 && staffBulkAssign.secondaryTeacherEmail) ? staffBulkAssign === null || staffBulkAssign === void 0 ? void 0 : staffBulkAssign.secondaryTeacherEmail : undefined
28653
+ };
28654
+ return value;
28655
+ });
28656
+ handleToggleModel();
28657
+ assignStudents([].concat(users));
28658
+ }, [JSON.stringify(staffBulkAssign)]);
28564
28659
  return {
28565
28660
  handleAssignSingleStudent: handleAssignSingleStudent,
28566
- handleAssignMultiStudent: handleAssignMultiStudent
28661
+ handleAssignMultiStudent: handleAssignMultiStudent,
28662
+ openModelBulk: openModelBulk,
28663
+ handleToggleModel: handleToggleModel,
28664
+ handleChangeStaffBulk: handleChangeStaffBulk,
28665
+ staffBulkAssign: staffBulkAssign,
28666
+ handleAssignStaffToStudents: handleAssignStaffToStudents
28567
28667
  };
28568
28668
  };
28569
28669
 
@@ -28608,7 +28708,7 @@ var AssignStudentList = function AssignStudentList() {
28608
28708
  handleClickCheck = _useAssignStudentList.handleClickCheck,
28609
28709
  handleSelectAll = _useAssignStudentList.handleSelectAll,
28610
28710
  changeFilters = _useAssignStudentList.changeFilters,
28611
- handelSort = _useAssignStudentList.handelSort,
28711
+ fullName = _useAssignStudentList.fullName,
28612
28712
  handleRetrievedData = _useAssignStudentList.handleRetrievedData;
28613
28713
 
28614
28714
  var handleResetData = function handleResetData() {
@@ -28621,8 +28721,56 @@ var AssignStudentList = function AssignStudentList() {
28621
28721
 
28622
28722
  var _useAssignStudent = useAssignStudent(selectedTeachers, selectedAssistants, selectedCounselors, selectedSecondaryTeachers, handleResetData),
28623
28723
  handleAssignSingleStudent = _useAssignStudent.handleAssignSingleStudent,
28624
- handleAssignMultiStudent = _useAssignStudent.handleAssignMultiStudent;
28625
-
28724
+ handleAssignMultiStudent = _useAssignStudent.handleAssignMultiStudent,
28725
+ openModelBulk = _useAssignStudent.openModelBulk,
28726
+ handleToggleModel = _useAssignStudent.handleToggleModel,
28727
+ staffBulkAssign = _useAssignStudent.staffBulkAssign,
28728
+ handleChangeStaffBulk = _useAssignStudent.handleChangeStaffBulk,
28729
+ handleAssignStaffToStudents = _useAssignStudent.handleAssignStaffToStudents;
28730
+
28731
+ var AssignStudentColumns = [{
28732
+ name: "",
28733
+ onSelectAll: handleSelectAll,
28734
+ isCheckAll: isCheckAll,
28735
+ className: "text-center"
28736
+ }, {
28737
+ name: "Student Name",
28738
+ sortBy: UserOrder.Name,
28739
+ searchBy: SearchBy.Name,
28740
+ className: "align-top",
28741
+ getOption: function getOption(user) {
28742
+ return {
28743
+ label: user || "empty",
28744
+ value: user
28745
+ };
28746
+ }
28747
+ }, {
28748
+ name: "Student Email",
28749
+ sortBy: UserOrder.Email,
28750
+ searchBy: SearchBy.Email,
28751
+ className: "align-top",
28752
+ getOption: function getOption(user) {
28753
+ return {
28754
+ label: user || "empty",
28755
+ value: user
28756
+ };
28757
+ }
28758
+ }, {
28759
+ name: "Teacher Email",
28760
+ className: "align-top"
28761
+ }, {
28762
+ name: "Assistant Email",
28763
+ className: "align-top"
28764
+ }, {
28765
+ name: "Counselor Email",
28766
+ className: "align-top"
28767
+ }, {
28768
+ name: "Support Teacher Email",
28769
+ className: "align-top"
28770
+ }, {
28771
+ name: "action",
28772
+ className: "text-center"
28773
+ }];
28626
28774
  return React__default.createElement("div", {
28627
28775
  className: "fadeIn animated"
28628
28776
  }, React__default.createElement("h5", {
@@ -28649,7 +28797,86 @@ var AssignStudentList = function AssignStudentList() {
28649
28797
  return handleAssignMultiStudent(isCheck);
28650
28798
  },
28651
28799
  color: "primary"
28652
- }, "Assign for Selected Students"))), React__default.createElement(reactstrap.Row, {
28800
+ }, "Assign for Selected Students"), React__default.createElement(reactstrap.Button, {
28801
+ className: "mx-2",
28802
+ onClick: function onClick() {
28803
+ return handleToggleModel();
28804
+ },
28805
+ color: "primary"
28806
+ }, "Assign Bulk"))), React__default.createElement(reactstrap.Modal, {
28807
+ centered: true,
28808
+ isOpen: openModelBulk,
28809
+ toggle: function toggle() {
28810
+ return handleToggleModel();
28811
+ }
28812
+ }, React__default.createElement(reactstrap.ModalHeader, null, "Assign Bulk Student"), React__default.createElement(reactstrap.ModalBody, null, React__default.createElement(TeacherSelector, {
28813
+ value: teacherOptions.find(function (r) {
28814
+ return r.value == staffBulkAssign.teacherId || r.label == staffBulkAssign.teacherEmail;
28815
+ }) || null,
28816
+ options: teacherOptions,
28817
+ onChange: function onChange(e) {
28818
+ return handleChangeStaffBulk("teacherId", e.value);
28819
+ },
28820
+ onCreateOption: function onCreateOption(value) {
28821
+ handleCreateTeacherOption(value, "");
28822
+ handleChangeStaffBulk("teacherEmail", value.label);
28823
+ },
28824
+ placeholder: t("select_teacher"),
28825
+ className: "flex-grow-1 mb-3"
28826
+ }), React__default.createElement(TeacherSelector, {
28827
+ value: assistantOptions.find(function (r) {
28828
+ return r.value == staffBulkAssign.assistantId || r.label == staffBulkAssign.assistantEmail;
28829
+ }) || null,
28830
+ options: assistantOptions,
28831
+ onChange: function onChange(e) {
28832
+ return handleChangeStaffBulk("assistantId", e.value);
28833
+ },
28834
+ onCreateOption: function onCreateOption(value) {
28835
+ handleCreateAssistantOption(value, "");
28836
+ handleChangeStaffBulk("assistantEmail", value.label);
28837
+ },
28838
+ placeholder: t("select_assistant"),
28839
+ className: "flex-grow-1 mb-3"
28840
+ }), React__default.createElement(TeacherSelector, {
28841
+ value: counselorOptions.find(function (r) {
28842
+ return r.value == staffBulkAssign.counselorId || r.label == staffBulkAssign.counselorEmail;
28843
+ }) || null,
28844
+ options: counselorOptions,
28845
+ onChange: function onChange(e) {
28846
+ return handleChangeStaffBulk("counselorId", e.value);
28847
+ },
28848
+ onCreateOption: function onCreateOption(value) {
28849
+ handleCreateCounselorOption(value, "");
28850
+ handleChangeStaffBulk("counselorEmail", value.label);
28851
+ },
28852
+ placeholder: t("select_counselor"),
28853
+ className: "flex-grow-1 mb-3"
28854
+ }), React__default.createElement(TeacherSelector, {
28855
+ value: secondaryTeacherOptions.find(function (r) {
28856
+ return r.value == staffBulkAssign.secondaryTeacherId || r.label == staffBulkAssign.secondaryTeacherEmail;
28857
+ }) || null,
28858
+ options: secondaryTeacherOptions,
28859
+ onChange: function onChange(e) {
28860
+ return handleChangeStaffBulk("secondaryTeacherId", e.value);
28861
+ },
28862
+ onCreateOption: function onCreateOption(value) {
28863
+ handleCreateSecondaryTeacherOption(value, "");
28864
+ handleChangeStaffBulk("secondaryTeacherEmail", value.label);
28865
+ },
28866
+ placeholder: t("select_support_teacher"),
28867
+ className: "flex-grow-1"
28868
+ })), React__default.createElement(reactstrap.ModalFooter, {
28869
+ className: "text-right"
28870
+ }, React__default.createElement(reactstrap.Button, {
28871
+ onClick: function onClick() {
28872
+ return handleToggleModel();
28873
+ }
28874
+ }, "Cancel"), React__default.createElement(reactstrap.Button, {
28875
+ color: "primary",
28876
+ onClick: function onClick() {
28877
+ return handleAssignStaffToStudents(isCheck);
28878
+ }
28879
+ }, "Assign"))), React__default.createElement(reactstrap.Row, {
28653
28880
  className: "mb-2"
28654
28881
  }, React__default.createElement(reactstrap.Col, {
28655
28882
  md: 12
@@ -28659,49 +28886,13 @@ var AssignStudentList = function AssignStudentList() {
28659
28886
  striped: true,
28660
28887
  responsive: true,
28661
28888
  size: "sm"
28662
- }, React__default.createElement("thead", null, React__default.createElement("tr", null, React__default.createElement("th", {
28663
- className: "align-middle text-center"
28664
- }, React__default.createElement("input", {
28665
- type: "checkbox",
28666
- onChange: handleSelectAll,
28667
- checked: isCheckAll
28668
- })), React__default.createElement("th", {
28669
- className: "align-top " + styles["pointer"],
28670
- onClick: function onClick() {
28671
- return handelSort(UserOrder.Name);
28672
- }
28673
- }, t("student_name"), filters.sortBy === UserOrder.Name && React__default.createElement(React__default.Fragment, null, filters.orderBy === "DESC" ? React__default.createElement(ai.AiOutlineSortDescending, {
28674
- className: "ml-1"
28675
- }) : React__default.createElement(ai.AiOutlineSortAscending, {
28676
- className: "ml-1"
28677
- }))), React__default.createElement("th", {
28678
- className: "align-top " + styles["pointer"],
28679
- onClick: function onClick() {
28680
- return handelSort(UserOrder.Email);
28681
- }
28682
- }, t("student_email"), filters.sortBy === UserOrder.Email && React__default.createElement(React__default.Fragment, null, filters.orderBy === "DESC" ? React__default.createElement(ai.AiOutlineSortDescending, {
28683
- className: "ml-1"
28684
- }) : React__default.createElement(ai.AiOutlineSortAscending, {
28685
- className: "ml-1"
28686
- }))), React__default.createElement("th", {
28687
- style: {
28688
- width: "15%"
28689
- }
28690
- }, t("teacher_email")), React__default.createElement("th", {
28691
- style: {
28692
- width: "15%"
28693
- }
28694
- }, "Assistant Email"), React__default.createElement("th", {
28695
- style: {
28696
- width: "15%"
28697
- }
28698
- }, "Counselor Email"), React__default.createElement("th", {
28699
- style: {
28700
- width: "15%"
28701
- }
28702
- }, "Support Teacher Email"), React__default.createElement("th", {
28703
- className: "align-top"
28704
- }, t("action")))), React__default.createElement("tbody", null, userList.map(function (item) {
28889
+ }, React__default.createElement("thead", null, React__default.createElement(TableHeader, {
28890
+ isStudentFilter: true,
28891
+ headers: AssignStudentColumns,
28892
+ filters: filters,
28893
+ fullName: fullName,
28894
+ onChangeFilters: changeFilters
28895
+ })), React__default.createElement("tbody", null, userList.map(function (item) {
28705
28896
  return React__default.createElement("tr", {
28706
28897
  key: item.id
28707
28898
  }, React__default.createElement("td", {
@@ -28728,7 +28919,7 @@ var AssignStudentList = function AssignStudentList() {
28728
28919
  return handleSelectTeacher(e.value, item.id);
28729
28920
  },
28730
28921
  onCreateOption: function onCreateOption(value) {
28731
- return handleCreateTeacherOption(value, item.id);
28922
+ return handleCreateTeacherOption(value, item.id, true);
28732
28923
  },
28733
28924
  placeholder: t("select_teacher"),
28734
28925
  className: "flex-grow-1 mr-2"
@@ -28745,7 +28936,7 @@ var AssignStudentList = function AssignStudentList() {
28745
28936
  return handleSelectAssistant(e.value, item.id);
28746
28937
  },
28747
28938
  onCreateOption: function onCreateOption(value) {
28748
- return handleCreateAssistantOption(value, item.id);
28939
+ return handleCreateAssistantOption(value, item.id, true);
28749
28940
  },
28750
28941
  placeholder: t("select_assistant"),
28751
28942
  className: "flex-grow-1 mr-2"
@@ -28762,7 +28953,7 @@ var AssignStudentList = function AssignStudentList() {
28762
28953
  return handleSelectCounselor(e.value, item.id);
28763
28954
  },
28764
28955
  onCreateOption: function onCreateOption(value) {
28765
- return handleCreateCounselorOption(value, item.id);
28956
+ return handleCreateCounselorOption(value, item.id, true);
28766
28957
  },
28767
28958
  placeholder: t("select_counselor"),
28768
28959
  className: "flex-grow-1 mr-2"
@@ -28779,7 +28970,7 @@ var AssignStudentList = function AssignStudentList() {
28779
28970
  return handleSelectSecondaryTeacher(e.value, item.id);
28780
28971
  },
28781
28972
  onCreateOption: function onCreateOption(value) {
28782
- return handleCreateSecondaryTeacherOption(value, item.id);
28973
+ return handleCreateSecondaryTeacherOption(value, item.id, true);
28783
28974
  },
28784
28975
  placeholder: t("select_support_teacher"),
28785
28976
  className: "flex-grow-1 mr-2"