mario-core 2.9.161-level → 2.9.162-level

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.
@@ -12,9 +12,9 @@ export declare type User = {
12
12
  profileImageFileName: string;
13
13
  fullName: string;
14
14
  sourcedId: string;
15
- rosterUser: RosterStudent;
15
+ rosterUser: RosterUser;
16
16
  };
17
- export declare type RosterStudent = {
17
+ export declare type RosterUser = {
18
18
  sourcedId: string;
19
19
  username: string;
20
20
  status: string;
@@ -0,0 +1,8 @@
1
+ import { Option } from "../constants/types";
2
+ declare const useRosterUserSelector: (roles: string[], value?: string | undefined) => {
3
+ users: Option[];
4
+ isLoading: boolean;
5
+ user: Option | undefined;
6
+ handleInputChange: (value: string) => void;
7
+ };
8
+ export default useRosterUserSelector;
@@ -9,7 +9,7 @@ declare const useUserList: () => {
9
9
  changeFilters: (updatedFilters: any) => void;
10
10
  reDirectDetailPage: (id?: number | undefined) => void;
11
11
  swicthUser: (id: string) => Promise<void>;
12
- handleSyncRosterStudents: () => Promise<void>;
12
+ handleSyncRosterUsers: () => Promise<void>;
13
13
  rosterUserInfo: (record: any) => string;
14
14
  };
15
15
  export default useUserList;
@@ -0,0 +1,8 @@
1
+ import { FC } from "react";
2
+ interface Props {
3
+ onChange: (e: any) => void;
4
+ value?: string;
5
+ roles: string[];
6
+ }
7
+ declare const RosterUserSelector: FC<Props>;
8
+ export default RosterUserSelector;
package/dist/index.js CHANGED
@@ -7296,7 +7296,6 @@ var setUserList = toolkit.createAction("users/setUserList");
7296
7296
  var setStudentList = toolkit.createAction("users/setStudentList");
7297
7297
 
7298
7298
  var USER_URL$1 = BASE_URL + "/api/user";
7299
- var STUDENT_URL = BASE_URL + "/api/student";
7300
7299
  var CHANGE_PASSWORD = BASE_URL + "/api/Account/changePassword";
7301
7300
  var ACCOUNT_URL$1 = BASE_URL + "/api/account";
7302
7301
  var EDU_USER_URL = BASE_URL + "/api/User";
@@ -7338,16 +7337,16 @@ var forgotChangePassword = function forgotChangePassword(data) {
7338
7337
  var switchAccountUser = function switchAccountUser(id) {
7339
7338
  return api.post(EDU_USER_URL + "/switch-user/" + id);
7340
7339
  };
7341
- var getRosterStudentsApi = function getRosterStudentsApi(filter) {
7340
+ var getRosterUsersApi = function getRosterUsersApi(filter) {
7342
7341
  return api.get("" + ONE_ROSTER_USER_URL, {
7343
7342
  params: filter
7344
7343
  });
7345
7344
  };
7346
- var getRosterStudentBySourcedIdApi = function getRosterStudentBySourcedIdApi(sourcedId) {
7345
+ var getRosterUserBySourcedIdApi = function getRosterUserBySourcedIdApi(sourcedId) {
7347
7346
  return api.get(ONE_ROSTER_USER_URL + "/" + sourcedId);
7348
7347
  };
7349
- var syncRosterStudentsApi = function syncRosterStudentsApi() {
7350
- return api.put(STUDENT_URL + "/sync-students");
7348
+ var syncRosterUsersApi = function syncRosterUsersApi() {
7349
+ return api.put(EDU_USER_URL + "/sync-roster-user");
7351
7350
  };
7352
7351
 
7353
7352
  var UserOrder;
@@ -7558,7 +7557,7 @@ var useUserList = function useUserList() {
7558
7557
  }
7559
7558
  }, [dispatch, filters]);
7560
7559
 
7561
- var handleSyncRosterStudents = function handleSyncRosterStudents() {
7560
+ var handleSyncRosterUsers = function handleSyncRosterUsers() {
7562
7561
  try {
7563
7562
  var _temp7 = function _temp7() {
7564
7563
  dispatch(setLoading(false));
@@ -7567,17 +7566,17 @@ var useUserList = function useUserList() {
7567
7566
  dispatch(setLoading(true));
7568
7567
 
7569
7568
  var _temp8 = _catch(function () {
7570
- return Promise.resolve(syncRosterStudentsApi()).then(function (res) {
7569
+ return Promise.resolve(syncRosterUsersApi()).then(function (res) {
7571
7570
  if (res.data) {
7572
7571
  dispatch(setAlert({
7573
7572
  type: "success",
7574
- message: res.data + " student" + (res.data > 1 ? "s have" : " has") + " been synchronized"
7573
+ message: res.data + " user" + (res.data > 1 ? "s have" : " has") + " been synchronized"
7575
7574
  }));
7576
7575
  getData();
7577
7576
  } else {
7578
7577
  dispatch(setAlert({
7579
7578
  type: "success",
7580
- message: "Every student synchronized"
7579
+ message: "Users synchronized"
7581
7580
  }));
7582
7581
  }
7583
7582
  });
@@ -7777,7 +7776,7 @@ var useUserList = function useUserList() {
7777
7776
  changeFilters: changeFilters,
7778
7777
  reDirectDetailPage: reDirectDetailPage,
7779
7778
  swicthUser: swicthUser,
7780
- handleSyncRosterStudents: handleSyncRosterStudents,
7779
+ handleSyncRosterUsers: handleSyncRosterUsers,
7781
7780
  rosterUserInfo: rosterUserInfo
7782
7781
  };
7783
7782
  };
@@ -8359,7 +8358,7 @@ var useExportUsersCsv = function useExportUsersCsv() {
8359
8358
  var _user$rosterUser, _user$rosterUser2, _user$rosterUser3, _user$rosterUser4, _user$rosterUser5, _user$rosterUser6, _user$rosterUser7;
8360
8359
 
8361
8360
  var age = user.dateOfBirth !== DATE_MIN_VALUE ? dateFns.differenceInCalendarYears(moment().toDate(), moment.utc(user.dateOfBirth).local().toDate()) : "";
8362
- return escapeCell(user.firstName) + "," + escapeCell(user.lastName) + "," + escapeCell(user.email) + "," + escapeCell(user.phoneNumber) + "," + age + "," + escapeCell(user.roles.join(", ")) + "," + (user.isActive ? "Active" : "Inactive") + "," + utcToLocalTime(user === null || user === void 0 ? void 0 : user.createTime, "yyyy-MM-DD HH:mm") + "," + escapeCell(user.sourcedId) + "," + escapeCell((_user$rosterUser = user.rosterUser) === null || _user$rosterUser === void 0 ? void 0 : _user$rosterUser.status) + "," + escapeCell((_user$rosterUser2 = user.rosterUser) === null || _user$rosterUser2 === void 0 ? void 0 : _user$rosterUser2.familyName) + "," + escapeCell((_user$rosterUser3 = user.rosterUser) === null || _user$rosterUser3 === void 0 ? void 0 : _user$rosterUser3.middleName) + "," + escapeCell((_user$rosterUser4 = user.rosterUser) === null || _user$rosterUser4 === void 0 ? void 0 : _user$rosterUser4.givenName) + "," + escapeCell((_user$rosterUser5 = user.rosterUser) === null || _user$rosterUser5 === void 0 ? void 0 : _user$rosterUser5.email) + "," + escapeCell((_user$rosterUser6 = user.rosterUser) === null || _user$rosterUser6 === void 0 ? void 0 : _user$rosterUser6.role) + "," + escapeCell((_user$rosterUser7 = user.rosterUser) === null || _user$rosterUser7 === void 0 ? void 0 : _user$rosterUser7.grades);
8361
+ return escapeCell(user.firstName) + "," + escapeCell(user.lastName) + "," + escapeCell(user.email) + "," + escapeCell(user.phoneNumber) + "," + age + "," + escapeCell(user.roles.join(", ").replace("SecondaryTeacher", "SupportTeacher")) + "," + (user.isActive ? "Active" : "Inactive") + "," + utcToLocalTime(user === null || user === void 0 ? void 0 : user.createTime, "yyyy-MM-DD HH:mm") + "," + escapeCell(user.sourcedId) + "," + escapeCell((_user$rosterUser = user.rosterUser) === null || _user$rosterUser === void 0 ? void 0 : _user$rosterUser.status) + "," + escapeCell((_user$rosterUser2 = user.rosterUser) === null || _user$rosterUser2 === void 0 ? void 0 : _user$rosterUser2.familyName) + "," + escapeCell((_user$rosterUser3 = user.rosterUser) === null || _user$rosterUser3 === void 0 ? void 0 : _user$rosterUser3.middleName) + "," + escapeCell((_user$rosterUser4 = user.rosterUser) === null || _user$rosterUser4 === void 0 ? void 0 : _user$rosterUser4.givenName) + "," + escapeCell((_user$rosterUser5 = user.rosterUser) === null || _user$rosterUser5 === void 0 ? void 0 : _user$rosterUser5.email) + "," + escapeCell((_user$rosterUser6 = user.rosterUser) === null || _user$rosterUser6 === void 0 ? void 0 : _user$rosterUser6.role) + "," + escapeCell((_user$rosterUser7 = user.rosterUser) === null || _user$rosterUser7 === void 0 ? void 0 : _user$rosterUser7.grades);
8363
8362
  }).join('\n');
8364
8363
  return "" + CSV_PREFIX + headers + encodeURIComponent(content);
8365
8364
  };
@@ -8393,7 +8392,7 @@ var UserList = function UserList() {
8393
8392
  changeFilters = _useUserList.changeFilters,
8394
8393
  reDirectDetailPage = _useUserList.reDirectDetailPage,
8395
8394
  swicthUser = _useUserList.swicthUser,
8396
- handleSyncRosterStudents = _useUserList.handleSyncRosterStudents,
8395
+ handleSyncRosterUsers = _useUserList.handleSyncRosterUsers,
8397
8396
  rosterUserInfo = _useUserList.rosterUserInfo;
8398
8397
 
8399
8398
  var _useExportUsersCsv = useExportUsersCsv(),
@@ -8433,8 +8432,8 @@ var UserList = function UserList() {
8433
8432
  md: 12,
8434
8433
  className: "d-flex justify-content-end my-2"
8435
8434
  }, React__default.createElement(SyncButtonIcon, {
8436
- text: "Sync Roster students",
8437
- onClick: handleSyncRosterStudents
8435
+ text: "Sync Roster users",
8436
+ onClick: handleSyncRosterUsers
8438
8437
  }), React__default.createElement("button", {
8439
8438
  className: "btn btn-success d-flex align-items-center border-0 p-0 ml-2",
8440
8439
  style: buttonStyle$2,
@@ -8850,14 +8849,13 @@ var changePasswordSchema = yup.object({
8850
8849
 
8851
8850
  var defaultFilter = {
8852
8851
  currentPage: 1,
8853
- pageSize: 100,
8854
- role: "student"
8852
+ pageSize: 100
8855
8853
  };
8856
8854
 
8857
- var useStudentSelector = function useStudentSelector(value) {
8855
+ var useRosterUserSelector = function useRosterUserSelector(roles, value) {
8858
8856
  var _useState = React.useState([]),
8859
- students = _useState[0],
8860
- setStudents = _useState[1];
8857
+ users = _useState[0],
8858
+ setUsers = _useState[1];
8861
8859
 
8862
8860
  var _useState2 = React.useState(false),
8863
8861
  isLoading = _useState2[0],
@@ -8868,11 +8866,11 @@ var useStudentSelector = function useStudentSelector(value) {
8868
8866
  setFilter = _useState3[1];
8869
8867
 
8870
8868
  var _useState4 = React.useState(),
8871
- student = _useState4[0],
8872
- setStudent = _useState4[1];
8869
+ user = _useState4[0],
8870
+ setUser = _useState4[1];
8873
8871
 
8874
8872
  var dispatch = reactRedux.useDispatch();
8875
- var getRosterStudents = React.useCallback(function () {
8873
+ var getRosterUsers = React.useCallback(function () {
8876
8874
  try {
8877
8875
  var _temp3 = function _temp3() {
8878
8876
  setLoading(false);
@@ -8881,17 +8879,17 @@ var useStudentSelector = function useStudentSelector(value) {
8881
8879
  setLoading(true);
8882
8880
 
8883
8881
  var _temp4 = _catch(function () {
8884
- return Promise.resolve(getRosterStudentsApi(filter)).then(function (res) {
8882
+ return Promise.resolve(getRosterUsersApi(filter)).then(function (res) {
8885
8883
  var _res$data;
8886
8884
 
8887
- var students = ((_res$data = res.data) === null || _res$data === void 0 ? void 0 : _res$data.items) || [];
8888
- setStudents(mapStudentsToOptions(students));
8885
+ var users = ((_res$data = res.data) === null || _res$data === void 0 ? void 0 : _res$data.items) || [];
8886
+ setUsers(mapUsersToOptions(users));
8889
8887
  });
8890
8888
  }, function (err) {
8891
8889
  console.log("err:", err);
8892
8890
  dispatch(setAlert({
8893
8891
  type: "error",
8894
- message: "Cannot get roster students"
8892
+ message: "Cannot get roster users"
8895
8893
  }));
8896
8894
  });
8897
8895
 
@@ -8900,30 +8898,30 @@ var useStudentSelector = function useStudentSelector(value) {
8900
8898
  return Promise.reject(e);
8901
8899
  }
8902
8900
  }, [JSON.stringify(filter)]);
8903
- var getStudentBySourcedId = React.useCallback(function () {
8901
+ var getUserBySourcedId = React.useCallback(function () {
8904
8902
  try {
8905
8903
  var _temp7 = function _temp7() {
8906
8904
  setLoading(false);
8907
8905
  };
8908
8906
 
8909
8907
  if (!value) return Promise.resolve();
8910
- var v = students.find(function (i) {
8908
+ var v = users.find(function (i) {
8911
8909
  return i.value === value;
8912
8910
  });
8913
8911
 
8914
8912
  if (v) {
8915
- setStudent(v);
8913
+ setUser(v);
8916
8914
  return Promise.resolve();
8917
8915
  }
8918
8916
 
8919
8917
  setLoading(true);
8920
8918
 
8921
8919
  var _temp8 = _catch(function () {
8922
- return Promise.resolve(getRosterStudentBySourcedIdApi(value)).then(function (res) {
8923
- var student = res.data;
8924
- setStudent({
8925
- label: student.sourcedId + " - " + student.givenName + " - " + student.email,
8926
- value: student.sourcedId
8920
+ return Promise.resolve(getRosterUserBySourcedIdApi(value)).then(function (res) {
8921
+ var user = res.data;
8922
+ setUser({
8923
+ label: rosterUserInfo(user),
8924
+ value: user.sourcedId
8927
8925
  });
8928
8926
  });
8929
8927
  }, function (err) {
@@ -8936,8 +8934,8 @@ var useStudentSelector = function useStudentSelector(value) {
8936
8934
  }
8937
8935
  }, [value]);
8938
8936
 
8939
- var mapStudentsToOptions = function mapStudentsToOptions(students) {
8940
- return students.map(function (i) {
8937
+ var mapUsersToOptions = function mapUsersToOptions(users) {
8938
+ return users.map(function (i) {
8941
8939
  return {
8942
8940
  label: rosterUserInfo(i),
8943
8941
  value: i.sourcedId
@@ -8950,14 +8948,15 @@ var useStudentSelector = function useStudentSelector(value) {
8950
8948
  var givenName = rosterUser.givenName,
8951
8949
  middleName = rosterUser.middleName,
8952
8950
  familyName = rosterUser.familyName,
8953
- email = rosterUser.email;
8951
+ email = rosterUser.email,
8952
+ role = rosterUser.role;
8954
8953
  var names = [];
8955
8954
  !!givenName && names.push(givenName);
8956
8955
  !!middleName && names.push(middleName);
8957
8956
  !!familyName && names.push(familyName);
8958
8957
  !!names.length && result.push(names.join(" "));
8959
8958
  !!email && result.push(email);
8960
- return result.join(" - ");
8959
+ return "" + result.join(" - ") + (role ? " (" + role + ")" : '');
8961
8960
  };
8962
8961
 
8963
8962
  var handleInputChange = function handleInputChange(value) {
@@ -8968,37 +8967,45 @@ var useStudentSelector = function useStudentSelector(value) {
8968
8967
  });
8969
8968
  };
8970
8969
 
8970
+ var handleChangeFilter = React.useCallback(function (newFilter) {
8971
+ setFilter(_extends({}, filter, newFilter));
8972
+ }, [JSON.stringify(filter)]);
8971
8973
  React.useEffect(function () {
8972
- getRosterStudents();
8974
+ var _filter$roles;
8975
+
8976
+ !!((_filter$roles = filter.roles) !== null && _filter$roles !== void 0 && _filter$roles.length) && getRosterUsers();
8973
8977
  }, [JSON.stringify(filter)]);
8974
8978
  React.useEffect(function () {
8975
- getStudentBySourcedId();
8979
+ handleChangeFilter({
8980
+ roles: roles
8981
+ });
8982
+ }, [JSON.stringify(roles)]);
8983
+ React.useEffect(function () {
8984
+ getUserBySourcedId();
8976
8985
  }, [value]);
8977
8986
  return {
8978
- students: students,
8987
+ users: users,
8979
8988
  isLoading: isLoading,
8980
- student: student,
8989
+ user: user,
8981
8990
  handleInputChange: handleInputChange
8982
8991
  };
8983
8992
  };
8984
8993
 
8985
- var RosterStudentSelector = function RosterStudentSelector(_ref) {
8994
+ var RosterUserSelector = function RosterUserSelector(_ref) {
8986
8995
  var value = _ref.value,
8996
+ roles = _ref.roles,
8987
8997
  onChange = _ref.onChange;
8988
8998
 
8989
- var _useTranslation = reactI18next.useTranslation(),
8990
- t = _useTranslation.t;
8991
-
8992
- var _useStudentSelector = useStudentSelector(value),
8993
- students = _useStudentSelector.students,
8994
- isLoading = _useStudentSelector.isLoading,
8995
- student = _useStudentSelector.student,
8996
- handleInputChange = _useStudentSelector.handleInputChange;
8999
+ var _useRosterUserSelecto = useRosterUserSelector(roles, value),
9000
+ users = _useRosterUserSelecto.users,
9001
+ isLoading = _useRosterUserSelecto.isLoading,
9002
+ user = _useRosterUserSelecto.user,
9003
+ handleInputChange = _useRosterUserSelecto.handleInputChange;
8997
9004
 
8998
9005
  return React__default.createElement(CustomSelector, {
8999
- options: students,
9000
- value: student,
9001
- placeholder: t("Select student"),
9006
+ options: users,
9007
+ value: user,
9008
+ placeholder: "Select user",
9002
9009
  onChange: onChange,
9003
9010
  isLoading: isLoading,
9004
9011
  onInputChange: handleInputChange
@@ -9232,7 +9239,8 @@ var UserDetail = function UserDetail() {
9232
9239
  }
9233
9240
  })))))), !!id && React__default.createElement(reactstrap.Row, null, React__default.createElement(reactstrap.Col, {
9234
9241
  md: 6
9235
- }, values.roles.includes("Student") && React__default.createElement(reactstrap.FormGroup, null, React__default.createElement(reactstrap.Label, null, "Map student from Roster"), React__default.createElement(RosterStudentSelector, {
9242
+ }, (!values.roles.includes("Admin") || values.roles.length > 1) && !!values.roles.length && React__default.createElement(reactstrap.FormGroup, null, React__default.createElement(reactstrap.Label, null, "Map from Roster"), React__default.createElement(RosterUserSelector, {
9243
+ roles: values.roles,
9236
9244
  value: values.sourcedId,
9237
9245
  onChange: function onChange(e) {
9238
9246
  return setFieldValue("sourcedId", e.value);