mario-education 2.4.566-feedback → 2.4.568-feedback

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.
@@ -2,8 +2,7 @@ import 'react-phone-number-input/style.css';
2
2
  interface IProps {
3
3
  dataProfile: any;
4
4
  updateProfile: any;
5
- currentUser: any;
6
5
  goBack: any;
7
6
  }
8
- declare const Profile: ({ dataProfile, updateProfile, currentUser, goBack }: IProps) => JSX.Element;
7
+ declare const Profile: ({ dataProfile, updateProfile, goBack }: IProps) => JSX.Element;
9
8
  export default Profile;
@@ -19,6 +19,13 @@ export declare type Teacher = {
19
19
  id: string;
20
20
  email: string;
21
21
  };
22
+ export declare type IUserRoleDataCheck = {
23
+ isHasTeacherData: boolean;
24
+ isHasEduTeacherData: boolean;
25
+ isHasAssistantData: boolean;
26
+ isHasCounselorData: boolean;
27
+ isHasSecondaryTeacherData: boolean;
28
+ };
22
29
  export declare const rolesSelect: string[];
23
30
  export declare const ROLES: {
24
31
  ADMIN: string;
@@ -41,4 +48,5 @@ export declare const statusCheck: {
41
48
  label: string;
42
49
  }[];
43
50
  export declare const gradeLevels: string[];
51
+ export declare const SPECIAL_ROLE: string[];
44
52
  export {};
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { IOptions, TypeControl } from "../configs/constants";
2
+ import { IOptions, IUserRoleDataCheck, TypeControl } from "../configs/constants";
3
3
  declare type UserDetail = {
4
4
  id?: string;
5
5
  firstName: string;
@@ -40,5 +40,6 @@ declare const useUserDetail: (id?: string | undefined) => {
40
40
  getFile: () => void;
41
41
  checkHasTeacher: boolean;
42
42
  setCheckHasTeacher: import("react").Dispatch<import("react").SetStateAction<boolean>>;
43
+ userHasData: IUserRoleDataCheck;
43
44
  };
44
45
  export default useUserDetail;
@@ -1,4 +1,5 @@
1
1
  import 'react-phone-number-input/style.css';
2
+ import { IUserRoleDataCheck } from '../configs/constants';
2
3
  interface IProps {
3
4
  userDetail: any;
4
5
  confirmData: any;
@@ -9,6 +10,7 @@ interface IProps {
9
10
  currentRoles: string[];
10
11
  checkHasTeacher: boolean;
11
12
  setCheckHasTeacher: (value: boolean) => void;
13
+ userHasData: IUserRoleDataCheck;
12
14
  }
13
- declare const Profile: ({ userDetail, confirmData, goBack, teacherOptions, id, handleDisableRoles, currentRoles, checkHasTeacher, setCheckHasTeacher }: IProps) => JSX.Element;
15
+ declare const Profile: ({ userDetail, confirmData, goBack, teacherOptions, id, checkHasTeacher, setCheckHasTeacher, userHasData, currentRoles }: IProps) => JSX.Element;
14
16
  export default Profile;
package/dist/index.js CHANGED
@@ -76235,7 +76235,10 @@ var HeaderSideBar = function HeaderSideBar(_ref) {
76235
76235
  className: classes.menuItem
76236
76236
  }, React__default.createElement(LanguageDropdown, null)), !isReadOnly && React__default.createElement(core$1.MenuItem, {
76237
76237
  className: classes.menuItem,
76238
- onClick: openProfile
76238
+ onClick: function onClick() {
76239
+ openProfile();
76240
+ handleClose();
76241
+ }
76239
76242
  }, React__default.createElement("img", {
76240
76243
  className: classes.menuIcon,
76241
76244
  src: "/images/profile-icon.png"
@@ -80522,9 +80525,6 @@ var UPLOAD_FILE_URL = marioCore.BASE_URL + "/api/file";
80522
80525
  var SYSTEM_PROFILE = UPLOAD_FILE_URL + "/system/profile";
80523
80526
  var CHANGE_PASSWORD = marioCore.BASE_URL + "/api/Account/changePassword";
80524
80527
  var USER = marioCore.BASE_URL + "/api/User";
80525
- var getProfileTeacher = function getProfileTeacher() {
80526
- return marioCore.api.get(TEACHER_PROFILE + "/current");
80527
- };
80528
80528
  var updateProfileTeacher = function updateProfileTeacher(data) {
80529
80529
  return marioCore.api.put(TEACHER_PROFILE + "/current", data);
80530
80530
  };
@@ -80583,6 +80583,37 @@ var InitialData = {
80583
80583
  address: ''
80584
80584
  };
80585
80585
 
80586
+ var USER_URL$5 = marioCore.BASE_URL + "/api/user";
80587
+ var USER_EDU_URL$1 = marioCore.BASE_URL + "/api/User";
80588
+ var CHANGE_PASSWORD$1 = marioCore.BASE_URL + "/api/Account/changePassword";
80589
+ var ACCOUNT_URL$1 = marioCore.BASE_URL + "/api/account";
80590
+ var getById$q = function getById(id) {
80591
+ return marioCore.api.get(USER_URL$5 + "/" + id);
80592
+ };
80593
+ var getByIdUser = function getByIdUser(id) {
80594
+ return marioCore.api.get(USER_EDU_URL$1 + "/detail-user/" + id);
80595
+ };
80596
+ var create$o = function create(data) {
80597
+ return marioCore.api.post("" + USER_URL$5, data);
80598
+ };
80599
+ var update$q = function update(data) {
80600
+ return marioCore.api.put(USER_URL$5 + "/" + data.id, data);
80601
+ };
80602
+ var changePassword = function changePassword(formData) {
80603
+ return marioCore.api.post(CHANGE_PASSWORD$1, formData);
80604
+ };
80605
+ var forgotChangePassword = function forgotChangePassword(data) {
80606
+ return marioCore.api.post(ACCOUNT_URL$1 + "/forgotchangepassword", data);
80607
+ };
80608
+ var getTeachers = function getTeachers(filters) {
80609
+ return marioCore.api.get(USER_URL$5 + "/all/teacher", {
80610
+ params: filters
80611
+ });
80612
+ };
80613
+ var userRoleHasDataApi = function userRoleHasDataApi(userId) {
80614
+ return marioCore.api.get(marioCore.BASE_URL + "/api/user/check-role-data/" + userId);
80615
+ };
80616
+
80586
80617
  var useProfile = function useProfile() {
80587
80618
  var _useTranslation = marioCore.useTranslation(),
80588
80619
  t = _useTranslation.t;
@@ -80614,7 +80645,7 @@ var useProfile = function useProfile() {
80614
80645
  dispatch(marioCore.setLoading(true));
80615
80646
 
80616
80647
  var _temp4 = _catch(function () {
80617
- return Promise.resolve(getProfileTeacher()).then(function (res) {
80648
+ return Promise.resolve(getByIdUser(currentUser === null || currentUser === void 0 ? void 0 : currentUser.id)).then(function (res) {
80618
80649
  var _res$data;
80619
80650
 
80620
80651
  setDataProfile(res.data);
@@ -80798,7 +80829,6 @@ var DoneCheckInIcon = function DoneCheckInIcon(_ref) {
80798
80829
  var Profile = function Profile(_ref) {
80799
80830
  var dataProfile = _ref.dataProfile,
80800
80831
  updateProfile = _ref.updateProfile,
80801
- currentUser = _ref.currentUser,
80802
80832
  goBack = _ref.goBack;
80803
80833
 
80804
80834
  var _useTranslation = marioCore.useTranslation(),
@@ -80816,8 +80846,6 @@ var Profile = function Profile(_ref) {
80816
80846
  },
80817
80847
  validationSchema: schema$l
80818
80848
  }, function (formikProps) {
80819
- var _currentUser$userRole;
80820
-
80821
80849
  var values = formikProps.values,
80822
80850
  setFieldValue = formikProps.setFieldValue,
80823
80851
  handleSubmit = formikProps.handleSubmit,
@@ -80899,18 +80927,18 @@ var Profile = function Profile(_ref) {
80899
80927
  }))), React__default.createElement("div", {
80900
80928
  className: myProfile['edit-profile-container__form--field'] + " " + myProfile['edit-profile-container__form--width-70']
80901
80929
  }, React__default.createElement("p", null, " ", t("role")), React__default.createElement(core$1.Select, {
80930
+ multiple: true,
80931
+ disabled: true,
80932
+ name: "roles",
80902
80933
  variant: "outlined",
80903
- value: !!(values !== null && values !== void 0 && values.teacherRole) && (values === null || values === void 0 ? void 0 : values.teacherRole),
80904
- onChange: function onChange(e) {
80905
- return setFieldValue("teacherRole", e.target.value);
80934
+ value: (values === null || values === void 0 ? void 0 : values.roles) || [],
80935
+ renderValue: function renderValue(selected) {
80936
+ return selected.map(function (r) {
80937
+ return r;
80938
+ }).join(', ');
80906
80939
  },
80907
80940
  className: "" + myProfile["profile-value"]
80908
- }, currentUser === null || currentUser === void 0 ? void 0 : (_currentUser$userRole = currentUser.userRoles) === null || _currentUser$userRole === void 0 ? void 0 : _currentUser$userRole.map(function (role) {
80909
- return React__default.createElement(core$1.MenuItem, {
80910
- key: role,
80911
- value: role
80912
- }, role);
80913
- })))), React__default.createElement("div", {
80941
+ }))), React__default.createElement("div", {
80914
80942
  className: myProfile['edit-profile-container__form--row']
80915
80943
  }, React__default.createElement("div", {
80916
80944
  className: myProfile['edit-profile-container__form--field'] + " " + myProfile['edit-profile-container__form--width-50']
@@ -81213,7 +81241,6 @@ var MyProfile = function MyProfile() {
81213
81241
  var componentByControl = [{
81214
81242
  value: TypeControl.Info,
81215
81243
  component: React__default.createElement(Profile, {
81216
- currentUser: currentUser,
81217
81244
  dataProfile: dataProfile,
81218
81245
  updateProfile: updateProfile,
81219
81246
  goBack: goBack
@@ -81345,6 +81372,7 @@ var statusCheck = [{
81345
81372
  label: 'Inactive'
81346
81373
  }];
81347
81374
  var gradeLevels = ["K", "G", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13"];
81375
+ var SPECIAL_ROLE = ['Student'];
81348
81376
 
81349
81377
  var schema$n = yup.object({
81350
81378
  firstName: yup.string().required("First name is required"),
@@ -81359,14 +81387,15 @@ var Profile$1 = function Profile(_ref) {
81359
81387
  goBack = _ref.goBack,
81360
81388
  teacherOptions = _ref.teacherOptions,
81361
81389
  id = _ref.id,
81362
- handleDisableRoles = _ref.handleDisableRoles,
81363
- currentRoles = _ref.currentRoles,
81364
81390
  checkHasTeacher = _ref.checkHasTeacher,
81365
- setCheckHasTeacher = _ref.setCheckHasTeacher;
81391
+ setCheckHasTeacher = _ref.setCheckHasTeacher,
81392
+ userHasData = _ref.userHasData,
81393
+ currentRoles = _ref.currentRoles;
81366
81394
 
81367
81395
  var _useTranslation = marioCore.useTranslation(),
81368
81396
  t = _useTranslation.t;
81369
81397
 
81398
+ var roleClickRef = React.useRef(null);
81370
81399
  return React__default.createElement("div", {
81371
81400
  className: myProfile$1['edit-profile-container']
81372
81401
  }, React__default.createElement("div", {
@@ -81394,6 +81423,34 @@ var Profile$1 = function Profile(_ref) {
81394
81423
  });
81395
81424
  }
81396
81425
 
81426
+ var handleChange = function handleChange(e) {
81427
+ var selectedValues = e.target.value;
81428
+ var clickedRole = roleClickRef.current;
81429
+
81430
+ if (!!id && (userHasData.isHasTeacherData && clickedRole === 'Teacher' || userHasData.isHasAssistantData && clickedRole === 'Assistant' || userHasData.isHasCounselorData && clickedRole === 'Counselor' || userHasData.isHasSecondaryTeacherData && clickedRole === 'SecondaryTeacher' || clickedRole === 'Student' && (userHasData.isHasAssistantData || userHasData.isHasCounselorData || userHasData.isHasSecondaryTeacherData || userHasData.isHasTeacherData))) {
81431
+ alert('Please switch data before removing the role');
81432
+ } else {
81433
+ var hasSpecialRole = selectedValues.some(function (role) {
81434
+ return SPECIAL_ROLE.includes(role);
81435
+ });
81436
+
81437
+ if (hasSpecialRole) {
81438
+ if (clickedRole && !values.roles.includes(clickedRole)) {
81439
+ setFieldValue('roles', [clickedRole]);
81440
+ } else {
81441
+ var specialRole = selectedValues.find(function (role) {
81442
+ return SPECIAL_ROLE.includes(role);
81443
+ });
81444
+ setFieldValue('roles', specialRole ? [specialRole] : []);
81445
+ }
81446
+ } else {
81447
+ setFieldValue('roles', selectedValues);
81448
+ }
81449
+
81450
+ roleClickRef.current = null;
81451
+ }
81452
+ };
81453
+
81397
81454
  return React__default.createElement("div", {
81398
81455
  className: myProfile$1['edit-profile-container__form']
81399
81456
  }, React__default.createElement("div", {
@@ -81456,36 +81513,18 @@ var Profile$1 = function Profile(_ref) {
81456
81513
  return r;
81457
81514
  }).join(', ');
81458
81515
  },
81459
- onChange: function onChange(e) {
81460
- var SPECIAL = ['Student', 'General ED teacher'];
81461
- var current = values.roles || [];
81462
- var clicked = e.target.value[e.target.value.length - 1];
81463
- var next;
81464
-
81465
- if (SPECIAL.includes(clicked)) {
81466
- next = [clicked];
81467
- } else {
81468
- var withoutSpecial = current.filter(function (x) {
81469
- return !SPECIAL.includes(x);
81470
- });
81471
-
81472
- if (withoutSpecial.includes(clicked)) {
81473
- next = withoutSpecial.filter(function (x) {
81474
- return x !== clicked;
81475
- });
81476
- } else {
81477
- next = [].concat(withoutSpecial, [clicked]);
81478
- }
81479
- }
81480
-
81481
- setFieldValue('roles', next);
81482
- },
81516
+ onChange: handleChange,
81483
81517
  className: "" + myProfile$1["profile-value"]
81484
81518
  }, rolesSelect === null || rolesSelect === void 0 ? void 0 : rolesSelect.map(function (role) {
81485
81519
  return React__default.createElement(core$1.MenuItem, {
81486
81520
  key: role,
81487
81521
  value: role,
81488
- disabled: !!id ? currentRoles.concat(["Student", "Parent", "General ED teacher"]).includes(role) || currentRoles.every(handleDisableRoles) : ["Parent"].includes(role)
81522
+ disabled: !!id ? (currentRoles || []).some(function (r) {
81523
+ return ['Student', 'Parent', 'General ED teacher'].includes(r);
81524
+ }) || ["Parent"].includes(role) : ["Parent"].includes(role),
81525
+ onClick: function onClick() {
81526
+ roleClickRef.current = role;
81527
+ }
81489
81528
  }, React__default.createElement(core$1.Checkbox, {
81490
81529
  checked: values === null || values === void 0 ? void 0 : values.roles.includes(role)
81491
81530
  }), React__default.createElement(core$1.ListItemText, {
@@ -81747,34 +81786,6 @@ var ChangePassword$1 = function ChangePassword(_ref) {
81747
81786
  }));
81748
81787
  };
81749
81788
 
81750
- var USER_URL$5 = marioCore.BASE_URL + "/api/user";
81751
- var USER_EDU_URL$1 = marioCore.BASE_URL + "/api/User";
81752
- var CHANGE_PASSWORD$1 = marioCore.BASE_URL + "/api/Account/changePassword";
81753
- var ACCOUNT_URL$1 = marioCore.BASE_URL + "/api/account";
81754
- var getById$q = function getById(id) {
81755
- return marioCore.api.get(USER_URL$5 + "/" + id);
81756
- };
81757
- var getByIdUser = function getByIdUser(id) {
81758
- return marioCore.api.get(USER_EDU_URL$1 + "/detail-user/" + id);
81759
- };
81760
- var create$o = function create(data) {
81761
- return marioCore.api.post("" + USER_URL$5, data);
81762
- };
81763
- var update$q = function update(data) {
81764
- return marioCore.api.put(USER_URL$5 + "/" + data.id, data);
81765
- };
81766
- var changePassword = function changePassword(formData) {
81767
- return marioCore.api.post(CHANGE_PASSWORD$1, formData);
81768
- };
81769
- var forgotChangePassword = function forgotChangePassword(data) {
81770
- return marioCore.api.post(ACCOUNT_URL$1 + "/forgotchangepassword", data);
81771
- };
81772
- var getTeachers = function getTeachers(filters) {
81773
- return marioCore.api.get(USER_URL$5 + "/all/teacher", {
81774
- params: filters
81775
- });
81776
- };
81777
-
81778
81789
  var initValue$v = {
81779
81790
  id: "",
81780
81791
  firstName: "",
@@ -81837,6 +81848,16 @@ var useUserDetail = function useUserDetail(id) {
81837
81848
  checkHasTeacher = _useState8[0],
81838
81849
  setCheckHasTeacher = _useState8[1];
81839
81850
 
81851
+ var _useState9 = React.useState({
81852
+ isHasAssistantData: false,
81853
+ isHasCounselorData: false,
81854
+ isHasEduTeacherData: false,
81855
+ isHasSecondaryTeacherData: false,
81856
+ isHasTeacherData: false
81857
+ }),
81858
+ userHasData = _useState9[0],
81859
+ setUserHasData = _useState9[1];
81860
+
81840
81861
  var setEditedTrue = function setEditedTrue() {
81841
81862
  try {
81842
81863
  localStorage.setItem(window.location.href, "true");
@@ -81868,7 +81889,11 @@ var useUserDetail = function useUserDetail(id) {
81868
81889
  if (!!localStorage.getItem(window.location.href)) localStorage.removeItem(window.location.href);
81869
81890
  }, []);
81870
81891
  React.useEffect(function () {
81871
- !!id && getData();
81892
+ if (!!id) {
81893
+ getData();
81894
+ getUserRoleHasData();
81895
+ }
81896
+
81872
81897
  !id && getDataTeachers();
81873
81898
  }, [id]);
81874
81899
  var getData = React.useCallback(function () {
@@ -81885,7 +81910,9 @@ var useUserDetail = function useUserDetail(id) {
81885
81910
 
81886
81911
  setUserDetail(_extends({}, res.data, {
81887
81912
  dateOfBirth: dateFns.format(new Date(res.data.dateOfBirth), marioCore.DATE_FORMAT),
81888
- roles: res.data.roles.includes("EduTeacher") ? [ROLES.EDUTEACHER] : res.data.roles,
81913
+ roles: res.data.roles.includes("EduTeacher") ? [].concat(res.data.roles.filter(function (r) {
81914
+ return r !== 'EduTeacher';
81915
+ }), [ROLES.EDUTEACHER]) : res.data.roles,
81889
81916
  currentGradeLevel: res.data.gradeLevel
81890
81917
  }));
81891
81918
  setCurrentRoles((_res$data$roles = res === null || res === void 0 ? void 0 : (_res$data = res.data) === null || _res$data === void 0 ? void 0 : _res$data.roles) != null ? _res$data$roles : []);
@@ -81905,6 +81932,32 @@ var useUserDetail = function useUserDetail(id) {
81905
81932
  return Promise.reject(e);
81906
81933
  }
81907
81934
  }, [id]);
81935
+ var getUserRoleHasData = React.useCallback(function () {
81936
+ try {
81937
+ var _temp7 = function _temp7() {
81938
+ dispatch(marioCore.setLoading(false));
81939
+ };
81940
+
81941
+ dispatch(marioCore.setLoading(true));
81942
+
81943
+ var _temp8 = _catch(function () {
81944
+ return Promise.resolve(userRoleHasDataApi(id)).then(function (res) {
81945
+ setUserHasData(res.data);
81946
+ });
81947
+ }, function (err) {
81948
+ var _err$response2, _err$response2$data;
81949
+
81950
+ dispatch(marioCore.setAlert({
81951
+ type: "danger",
81952
+ message: ((_err$response2 = err.response) === null || _err$response2 === void 0 ? void 0 : (_err$response2$data = _err$response2.data) === null || _err$response2$data === void 0 ? void 0 : _err$response2$data.title) || err.message
81953
+ }));
81954
+ });
81955
+
81956
+ return Promise.resolve(_temp8 && _temp8.then ? _temp8.then(_temp7) : _temp7(_temp8));
81957
+ } catch (e) {
81958
+ return Promise.reject(e);
81959
+ }
81960
+ }, [id]);
81908
81961
  var backToList = React.useCallback(function (user) {
81909
81962
  !!user && typeof user === "string" ? history.push(USER_LIST_URL + ("?query=" + user)) : history.push(USER_LIST_URL);
81910
81963
  }, []);
@@ -81915,7 +81968,7 @@ var useUserDetail = function useUserDetail(id) {
81915
81968
 
81916
81969
  var confirmData = React.useCallback(function (data) {
81917
81970
  try {
81918
- var _temp7 = function _temp7() {
81971
+ var _temp11 = function _temp11() {
81919
81972
  dispatch(marioCore.setLoading(false));
81920
81973
  };
81921
81974
 
@@ -81926,7 +81979,7 @@ var useUserDetail = function useUserDetail(id) {
81926
81979
 
81927
81980
  dispatch(marioCore.setLoading(true));
81928
81981
 
81929
- var _temp8 = _catch(function () {
81982
+ var _temp12 = _catch(function () {
81930
81983
  var next = !!id ? update$q : create$o;
81931
81984
  !id && delete data.id;
81932
81985
  data.teacherUserId = data.roles.includes(ROLES.STUDENT) ? data.teacherUserId : [];
@@ -81959,15 +82012,15 @@ var useUserDetail = function useUserDetail(id) {
81959
82012
  }));
81960
82013
  });
81961
82014
  }, function (err) {
81962
- var _err$response2, _err$response2$data;
82015
+ var _err$response3, _err$response3$data;
81963
82016
 
81964
82017
  dispatch(marioCore.setAlert({
81965
82018
  type: "danger",
81966
- message: ((_err$response2 = err.response) === null || _err$response2 === void 0 ? void 0 : (_err$response2$data = _err$response2.data) === null || _err$response2$data === void 0 ? void 0 : _err$response2$data.title) || err.message
82019
+ message: ((_err$response3 = err.response) === null || _err$response3 === void 0 ? void 0 : (_err$response3$data = _err$response3.data) === null || _err$response3$data === void 0 ? void 0 : _err$response3$data.title) || err.message
81967
82020
  }));
81968
82021
  });
81969
82022
 
81970
- return Promise.resolve(_temp8 && _temp8.then ? _temp8.then(_temp7) : _temp7(_temp8));
82023
+ return Promise.resolve(_temp12 && _temp12.then ? _temp12.then(_temp11) : _temp11(_temp12));
81971
82024
  } catch (e) {
81972
82025
  return Promise.reject(e);
81973
82026
  }
@@ -81975,13 +82028,13 @@ var useUserDetail = function useUserDetail(id) {
81975
82028
 
81976
82029
  var confirmChangePassword = function confirmChangePassword(data) {
81977
82030
  try {
81978
- var _temp11 = function _temp11() {
82031
+ var _temp15 = function _temp15() {
81979
82032
  dispatch(marioCore.setLoading(false));
81980
82033
  };
81981
82034
 
81982
82035
  dispatch(marioCore.setLoading(true));
81983
82036
 
81984
- var _temp12 = _catch(function () {
82037
+ var _temp16 = _catch(function () {
81985
82038
  return Promise.resolve(changePassword(data)).then(function () {
81986
82039
  dispatch(marioCore.setAlert({
81987
82040
  type: "success",
@@ -81997,7 +82050,7 @@ var useUserDetail = function useUserDetail(id) {
81997
82050
  }));
81998
82051
  });
81999
82052
 
82000
- return Promise.resolve(_temp12 && _temp12.then ? _temp12.then(_temp11) : _temp11(_temp12));
82053
+ return Promise.resolve(_temp16 && _temp16.then ? _temp16.then(_temp15) : _temp15(_temp16));
82001
82054
  } catch (e) {
82002
82055
  return Promise.reject(e);
82003
82056
  }
@@ -82005,13 +82058,13 @@ var useUserDetail = function useUserDetail(id) {
82005
82058
 
82006
82059
  var forgotPasswordRequest = React.useCallback(function (data) {
82007
82060
  try {
82008
- var _temp15 = function _temp15() {
82061
+ var _temp19 = function _temp19() {
82009
82062
  dispatch(marioCore.setLoading(false));
82010
82063
  };
82011
82064
 
82012
82065
  dispatch(marioCore.setLoading(true));
82013
82066
 
82014
- var _temp16 = _catch(function () {
82067
+ var _temp20 = _catch(function () {
82015
82068
  return Promise.resolve(forgotChangePassword(data)).then(function () {
82016
82069
  dispatch(marioCore.setAlert({
82017
82070
  type: "success",
@@ -82019,15 +82072,15 @@ var useUserDetail = function useUserDetail(id) {
82019
82072
  }));
82020
82073
  });
82021
82074
  }, function (err) {
82022
- var _err$response3, _err$response3$data;
82075
+ var _err$response4, _err$response4$data;
82023
82076
 
82024
82077
  dispatch(marioCore.setAlert({
82025
82078
  type: "danger",
82026
- message: ((_err$response3 = err.response) === null || _err$response3 === void 0 ? void 0 : (_err$response3$data = _err$response3.data) === null || _err$response3$data === void 0 ? void 0 : _err$response3$data.title) || err.message || "Error occured"
82079
+ message: ((_err$response4 = err.response) === null || _err$response4 === void 0 ? void 0 : (_err$response4$data = _err$response4.data) === null || _err$response4$data === void 0 ? void 0 : _err$response4$data.title) || err.message || "Error occured"
82027
82080
  }));
82028
82081
  });
82029
82082
 
82030
- return Promise.resolve(_temp16 && _temp16.then ? _temp16.then(_temp15) : _temp15(_temp16));
82083
+ return Promise.resolve(_temp20 && _temp20.then ? _temp20.then(_temp19) : _temp19(_temp20));
82031
82084
  } catch (e) {
82032
82085
  return Promise.reject(e);
82033
82086
  }
@@ -82035,7 +82088,7 @@ var useUserDetail = function useUserDetail(id) {
82035
82088
 
82036
82089
  var getDataTeachers = function getDataTeachers() {
82037
82090
  try {
82038
- var _temp18 = _catch(function () {
82091
+ var _temp22 = _catch(function () {
82039
82092
  return Promise.resolve(getTeachers({
82040
82093
  sortBy: "Email"
82041
82094
  })).then(function (res) {
@@ -82049,15 +82102,15 @@ var useUserDetail = function useUserDetail(id) {
82049
82102
  })) || []);
82050
82103
  });
82051
82104
  }, function (err) {
82052
- var _err$response4, _err$response4$data;
82105
+ var _err$response5, _err$response5$data;
82053
82106
 
82054
82107
  dispatch(marioCore.setAlert({
82055
82108
  type: "danger",
82056
- message: ((_err$response4 = err.response) === null || _err$response4 === void 0 ? void 0 : (_err$response4$data = _err$response4.data) === null || _err$response4$data === void 0 ? void 0 : _err$response4$data.title) || err.message
82109
+ message: ((_err$response5 = err.response) === null || _err$response5 === void 0 ? void 0 : (_err$response5$data = _err$response5.data) === null || _err$response5$data === void 0 ? void 0 : _err$response5$data.title) || err.message
82057
82110
  }));
82058
82111
  });
82059
82112
 
82060
- return Promise.resolve(_temp18 && _temp18.then ? _temp18.then(function () {}) : void 0);
82113
+ return Promise.resolve(_temp22 && _temp22.then ? _temp22.then(function () {}) : void 0);
82061
82114
  } catch (e) {
82062
82115
  return Promise.reject(e);
82063
82116
  }
@@ -82065,9 +82118,9 @@ var useUserDetail = function useUserDetail(id) {
82065
82118
 
82066
82119
  var MAX_FILE_SIZE = 20097152;
82067
82120
 
82068
- var _useState9 = React.useState(""),
82069
- imagePreviewUrl = _useState9[0],
82070
- setImagePreviewUrl = _useState9[1];
82121
+ var _useState10 = React.useState(""),
82122
+ imagePreviewUrl = _useState10[0],
82123
+ setImagePreviewUrl = _useState10[1];
82071
82124
 
82072
82125
  var handleImageChange = function handleImageChange(e) {
82073
82126
  e.preventDefault();
@@ -82086,7 +82139,7 @@ var useUserDetail = function useUserDetail(id) {
82086
82139
  try {
82087
82140
  setImagePreviewUrl(reader.result);
82088
82141
 
82089
- var _temp21 = function () {
82142
+ var _temp25 = function () {
82090
82143
  if (!!newFile) {
82091
82144
  var formData = new FormData();
82092
82145
  var name = newFile.name;
@@ -82096,7 +82149,7 @@ var useUserDetail = function useUserDetail(id) {
82096
82149
 
82097
82150
  var imageUrl = res === null || res === void 0 ? void 0 : (_res$data4 = res.data) === null || _res$data4 === void 0 ? void 0 : _res$data4.key;
82098
82151
 
82099
- var _temp19 = function () {
82152
+ var _temp23 = function () {
82100
82153
  if (!!id) {
82101
82154
  return Promise.resolve(updateAvatarByAdminApi(userDetail.id || '', imageUrl)).then(function () {});
82102
82155
  } else {
@@ -82104,12 +82157,12 @@ var useUserDetail = function useUserDetail(id) {
82104
82157
  }
82105
82158
  }();
82106
82159
 
82107
- if (_temp19 && _temp19.then) return _temp19.then(function () {});
82160
+ if (_temp23 && _temp23.then) return _temp23.then(function () {});
82108
82161
  });
82109
82162
  }
82110
82163
  }();
82111
82164
 
82112
- return Promise.resolve(_temp21 && _temp21.then ? _temp21.then(function () {}) : void 0);
82165
+ return Promise.resolve(_temp25 && _temp25.then ? _temp25.then(function () {}) : void 0);
82113
82166
  } catch (e) {
82114
82167
  return Promise.reject(e);
82115
82168
  }
@@ -82164,7 +82217,8 @@ var useUserDetail = function useUserDetail(id) {
82164
82217
  handleDeleteAvatar: handleDeleteAvatar,
82165
82218
  getFile: getFile,
82166
82219
  checkHasTeacher: checkHasTeacher,
82167
- setCheckHasTeacher: setCheckHasTeacher
82220
+ setCheckHasTeacher: setCheckHasTeacher,
82221
+ userHasData: userHasData
82168
82222
  };
82169
82223
  };
82170
82224
 
@@ -82193,7 +82247,8 @@ var UserProfileManagement = function UserProfileManagement() {
82193
82247
  currentRoles = _useUserDetail.currentRoles,
82194
82248
  handleDisableRoles = _useUserDetail.handleDisableRoles,
82195
82249
  checkHasTeacher = _useUserDetail.checkHasTeacher,
82196
- setCheckHasTeacher = _useUserDetail.setCheckHasTeacher;
82250
+ setCheckHasTeacher = _useUserDetail.setCheckHasTeacher,
82251
+ userHasData = _useUserDetail.userHasData;
82197
82252
 
82198
82253
  var componentByControl = [{
82199
82254
  value: TypeControl$1.Info,
@@ -82206,7 +82261,8 @@ var UserProfileManagement = function UserProfileManagement() {
82206
82261
  currentRoles: currentRoles,
82207
82262
  handleDisableRoles: handleDisableRoles,
82208
82263
  checkHasTeacher: checkHasTeacher,
82209
- setCheckHasTeacher: setCheckHasTeacher
82264
+ setCheckHasTeacher: setCheckHasTeacher,
82265
+ userHasData: userHasData
82210
82266
  })
82211
82267
  }, {
82212
82268
  value: TypeControl$1.ChangePassword,
@@ -82240,7 +82296,7 @@ var UserProfileManagement = function UserProfileManagement() {
82240
82296
  accept: "image/*"
82241
82297
  }), React__default.createElement("img", {
82242
82298
  src: !!imageSrc ? imageSrc : marioCore.getStaticFileUrl(DEFAULT_USER_AVATAR$6),
82243
- alt: imageSrc,
82299
+ alt: 'avatar',
82244
82300
  className: "" + myProfile$1["image-user-container__image"]
82245
82301
  }), React__default.createElement(reactstrap.Label, {
82246
82302
  htmlFor: "uploadFile",