mario-core 2.7.5 → 2.7.9

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.
@@ -1585,7 +1585,14 @@ var TheHeader = function TheHeader() {
1585
1585
  className: styles["header-logo"]
1586
1586
  })), React.createElement(CHeaderNav, {
1587
1587
  className: "pr-3"
1588
- }, !isDistrict && React.createElement(NotificationButton, null), React.createElement(TheHeaderDropdown, null)));
1588
+ }, React.createElement("a", {
1589
+ className: "mr-3",
1590
+ style: {
1591
+ color: '#000'
1592
+ },
1593
+ href: 'https://marioframework.com/mario-for-me-privacy-policy/',
1594
+ target: "blank"
1595
+ }, "Privacy Policy"), !isDistrict && React.createElement(NotificationButton, null), React.createElement(TheHeaderDropdown, null)));
1589
1596
  };
1590
1597
 
1591
1598
  var TITLE$3 = "Not found";
@@ -4053,6 +4060,7 @@ var setUserList = createAction("users/setUserList");
4053
4060
  var setStudentList = createAction("users/setStudentList");
4054
4061
 
4055
4062
  var USER_URL = BASE_URL + "/api/user";
4063
+ var CHANGE_PASSWORD = BASE_URL + "/api/Account/changePassword";
4056
4064
  var get$5 = function get(filter) {
4057
4065
  return api.get("" + USER_URL, {
4058
4066
  params: filter
@@ -4070,6 +4078,9 @@ var update$3 = function update(data) {
4070
4078
  var remove$3 = function remove(id) {
4071
4079
  return api["delete"](USER_URL + "/" + id);
4072
4080
  };
4081
+ var changePassword = function changePassword(formData) {
4082
+ return api.post(CHANGE_PASSWORD, formData);
4083
+ };
4073
4084
 
4074
4085
  var USER_URL$1 = "/admin/user";
4075
4086
  var CREATE_USER_URL = "/admin/create-user";
@@ -4517,7 +4528,7 @@ var useUserDetail = function useUserDetail(id) {
4517
4528
  }
4518
4529
  }, [id]);
4519
4530
  var backToList = useCallback(function (user) {
4520
- !!user ? history.push(USER_LIST_URL + ("?query=" + user)) : history.push(USER_LIST_URL);
4531
+ !!user && typeof user === "string" ? history.push(USER_LIST_URL + ("?query=" + user)) : history.push(USER_LIST_URL);
4521
4532
  }, []);
4522
4533
  var confirmData = useCallback(function (data) {
4523
4534
  try {
@@ -4574,6 +4585,37 @@ var useUserDetail = function useUserDetail(id) {
4574
4585
  return Promise.reject(e);
4575
4586
  }
4576
4587
  }, [id, file]);
4588
+
4589
+ var confirmChangePassword = function confirmChangePassword(data) {
4590
+ try {
4591
+ var _temp13 = function _temp13() {
4592
+ dispatch(setLoading(false));
4593
+ };
4594
+
4595
+ dispatch(setLoading(true));
4596
+
4597
+ var _temp14 = _catch(function () {
4598
+ return Promise.resolve(changePassword(data)).then(function () {
4599
+ dispatch(setAlert({
4600
+ type: "success",
4601
+ message: "Change password successfully"
4602
+ }));
4603
+ });
4604
+ }, function (e) {
4605
+ var _e$response, _e$response$data;
4606
+
4607
+ dispatch(setAlert({
4608
+ type: "danger",
4609
+ message: ((_e$response = e.response) === null || _e$response === void 0 ? void 0 : (_e$response$data = _e$response.data) === null || _e$response$data === void 0 ? void 0 : _e$response$data.title) || e.message
4610
+ }));
4611
+ });
4612
+
4613
+ return Promise.resolve(_temp14 && _temp14.then ? _temp14.then(_temp13) : _temp13(_temp14));
4614
+ } catch (e) {
4615
+ return Promise.reject(e);
4616
+ }
4617
+ };
4618
+
4577
4619
  return {
4578
4620
  userDetail: userDetail,
4579
4621
  backToList: backToList,
@@ -4582,7 +4624,8 @@ var useUserDetail = function useUserDetail(id) {
4582
4624
  setFile: setFile,
4583
4625
  edited: edited,
4584
4626
  setEdited: setEdited,
4585
- setEditedTrue: setEditedTrue
4627
+ setEditedTrue: setEditedTrue,
4628
+ confirmChangePassword: confirmChangePassword
4586
4629
  };
4587
4630
  };
4588
4631
 
@@ -4594,8 +4637,15 @@ var userSchema = object({
4594
4637
  roles: array().of(string()).min(1, "Role is required")
4595
4638
  });
4596
4639
 
4640
+ var changePasswordSchema = object({
4641
+ oldPassword: string().required("Current password is required"),
4642
+ newPassword: string().required("New password is required"),
4643
+ confirmedNewPassword: string().required("Confirm password is required")
4644
+ });
4645
+
4597
4646
  var CREATE_USER = "Create user";
4598
4647
  var EDIT_USER_HEADER = "Edit user";
4648
+ var CHANGE_PASSWORD$1 = "Change password";
4599
4649
  var ROLES = {
4600
4650
  ADMIN: "Admin",
4601
4651
  TEACHER: "Teacher",
@@ -4608,6 +4658,10 @@ var UserDetail = function UserDetail() {
4608
4658
  var _useParams = useParams(),
4609
4659
  id = _useParams.id;
4610
4660
 
4661
+ var user = useSelector(function (state) {
4662
+ return state.common.user;
4663
+ });
4664
+
4611
4665
  var _useUserDetail = useUserDetail(id),
4612
4666
  userDetail = _useUserDetail.userDetail,
4613
4667
  backToList = _useUserDetail.backToList,
@@ -4616,8 +4670,14 @@ var UserDetail = function UserDetail() {
4616
4670
  setFile = _useUserDetail.setFile,
4617
4671
  edited = _useUserDetail.edited,
4618
4672
  setEdited = _useUserDetail.setEdited,
4619
- setEditedTrue = _useUserDetail.setEditedTrue;
4673
+ setEditedTrue = _useUserDetail.setEditedTrue,
4674
+ confirmChangePassword = _useUserDetail.confirmChangePassword;
4620
4675
 
4676
+ var initialValueForm = {
4677
+ oldPassword: "",
4678
+ newPassword: "",
4679
+ confirmedNewPassword: ""
4680
+ };
4621
4681
  var header = !!id ? EDIT_USER_HEADER : CREATE_USER;
4622
4682
  var confirmText = !!id ? "Update" : "Create";
4623
4683
 
@@ -4823,7 +4883,82 @@ var UserDetail = function UserDetail() {
4823
4883
  style: {
4824
4884
  maxWidth: "100%"
4825
4885
  }
4826
- }))))), React.createElement(DetailActionButtons, {
4886
+ }))))), user.id === id ? React.createElement("div", null, React.createElement("h5", {
4887
+ className: "mt-3"
4888
+ }, CHANGE_PASSWORD$1), React.createElement(Formik, {
4889
+ initialValues: initialValueForm,
4890
+ enableReinitialize: true,
4891
+ validationSchema: changePasswordSchema,
4892
+ onSubmit: function onSubmit(values) {
4893
+ confirmChangePassword(values);
4894
+ }
4895
+ }, function (formProps) {
4896
+ var values = formProps.values,
4897
+ touched = formProps.touched,
4898
+ errors = formProps.errors,
4899
+ handleChange = formProps.handleChange,
4900
+ handleSubmit = formProps.handleSubmit;
4901
+ return React.createElement(Row, {
4902
+ className: "pt-2 pb-5"
4903
+ }, React.createElement(Col, {
4904
+ md: 7
4905
+ }, React.createElement(FormGroup, null, React.createElement(RequiredLabel$1, {
4906
+ text: "Current password"
4907
+ }), React.createElement(Input, {
4908
+ name: "oldPassword",
4909
+ type: "password",
4910
+ value: values.oldPassword,
4911
+ onChange: function onChange(e) {
4912
+ handleChange(e);
4913
+ setEditedTrue();
4914
+ },
4915
+ onBlur: handleBlur("subject"),
4916
+ placeholder: "Current password"
4917
+ }), touched.oldPassword && errors.oldPassword && React.createElement(ErrorHandler, {
4918
+ text: errors.oldPassword
4919
+ }))), React.createElement(Col, {
4920
+ md: 7
4921
+ }, React.createElement(FormGroup, null, React.createElement(RequiredLabel$1, {
4922
+ text: "New password"
4923
+ }), React.createElement(Input, {
4924
+ name: "newPassword",
4925
+ type: "password",
4926
+ value: values.newPassword,
4927
+ onChange: function onChange(e) {
4928
+ handleChange(e);
4929
+ setEditedTrue();
4930
+ },
4931
+ onBlur: handleBlur("subject"),
4932
+ placeholder: "New password"
4933
+ }), touched.newPassword && errors.newPassword && React.createElement(ErrorHandler, {
4934
+ text: errors.newPassword
4935
+ }))), React.createElement(Col, {
4936
+ md: 7
4937
+ }, React.createElement(FormGroup, null, React.createElement(RequiredLabel$1, {
4938
+ text: "Confirm password"
4939
+ }), React.createElement(Input, {
4940
+ name: "confirmedNewPassword",
4941
+ type: "password",
4942
+ value: values.confirmedNewPassword,
4943
+ onChange: function onChange(e) {
4944
+ handleChange(e);
4945
+ setEditedTrue();
4946
+ },
4947
+ onBlur: handleBlur("subject"),
4948
+ placeholder: "Confirm password"
4949
+ }), touched.confirmedNewPassword && errors.confirmedNewPassword && React.createElement(ErrorHandler, {
4950
+ text: errors.confirmedNewPassword
4951
+ }))), React.createElement(Col, {
4952
+ md: 12
4953
+ }, React.createElement(Button, {
4954
+ color: "primary",
4955
+ size: "sm",
4956
+ className: "px-4 pl-1 mr-2 ml-3",
4957
+ onClick: function onClick() {
4958
+ return handleSubmit();
4959
+ }
4960
+ }, "Save")));
4961
+ })) : null, React.createElement(DetailActionButtons, {
4827
4962
  confirmText: confirmText,
4828
4963
  onConfirm: handleSubmit,
4829
4964
  onCancel: backToList