mario-education 2.4.271-release → 2.4.273-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.
@@ -10,5 +10,7 @@ declare const useRevertUser: () => {
10
10
  setUserTo: import("react").Dispatch<import("react").SetStateAction<Student | null>>;
11
11
  handelMergeDataUser: () => Promise<void>;
12
12
  handelResetAcademicYear: () => Promise<void>;
13
+ upload: (file: any) => Promise<void>;
14
+ isLoading: any;
13
15
  };
14
16
  export default useRevertUser;
package/dist/index.js CHANGED
@@ -15372,7 +15372,18 @@ var QuestionDetail = function QuestionDetail() {
15372
15372
  }, React__default.createElement(reactstrap.Row, null, React__default.createElement(reactstrap.Col, {
15373
15373
  md: 12,
15374
15374
  className: "mb-1"
15375
- }, React__default.createElement(reactstrap.Row, null, [marioCore.QUESTION_TYPES.EMOTIONAL, marioCore.QUESTION_TYPES.LEARNING_STRATEGY, marioCore.QUESTION_TYPES.RATING, marioCore.QUESTION_TYPES.SUMMARIZE, marioCore.QUESTION_TYPES.TEXT_INPUT].includes(values.type) && parseInt(type) == TYPE_QUESTION.OneToOne && React__default.createElement(reactstrap.Col, {
15375
+ }, React__default.createElement(reactstrap.Row, null, parseInt(type) == TYPE_QUESTION.Default && React__default.createElement(reactstrap.Col, {
15376
+ md: 12
15377
+ }, React__default.createElement(reactstrap.CustomInput, {
15378
+ type: "checkbox",
15379
+ id: "question-default-before-session-checkbox",
15380
+ label: t("Is Mandatory"),
15381
+ checked: values.isMandatory,
15382
+ onChange: function onChange() {
15383
+ setFieldValue("isMandatory", !values.isMandatory);
15384
+ setEditedTrue();
15385
+ }
15386
+ })), [marioCore.QUESTION_TYPES.EMOTIONAL, marioCore.QUESTION_TYPES.LEARNING_STRATEGY, marioCore.QUESTION_TYPES.RATING, marioCore.QUESTION_TYPES.SUMMARIZE, marioCore.QUESTION_TYPES.TEXT_INPUT].includes(values.type) && parseInt(type) == TYPE_QUESTION.OneToOne && React__default.createElement(reactstrap.Col, {
15376
15387
  md: 12
15377
15388
  }, React__default.createElement(reactstrap.CustomInput, {
15378
15389
  type: "checkbox",
@@ -44836,22 +44847,28 @@ var useDashboard$1 = function useDashboard() {
44836
44847
  studentUserId: option === null || option === void 0 ? void 0 : option.id
44837
44848
  }));
44838
44849
  return;
44850
+ } else {
44851
+ setGenderOfStudent("");
44852
+ setStudentDefault(undefined);
44853
+ setFilter(_extends({}, filter, {
44854
+ grade: [],
44855
+ studentId: undefined,
44856
+ studentUserId: ""
44857
+ }));
44858
+ return;
44839
44859
  }
44840
-
44841
- setGenderOfStudent("");
44842
- setStudentDefault(undefined);
44843
- setFilter(_extends({}, filter, {
44844
- grade: [],
44845
- studentId: undefined,
44846
- studentUserId: ""
44847
- }));
44848
- return;
44849
44860
  };
44850
44861
 
44851
44862
  var handleSaveGradeFilter = function handleSaveGradeFilter(grades) {
44852
- setFilter(_extends({}, filter, {
44853
- grade: grades
44854
- }));
44863
+ var filterGrades = grades.filter(function (g) {
44864
+ return g !== null;
44865
+ });
44866
+
44867
+ if (filterGrades && filterGrades.length > 0) {
44868
+ setFilter(_extends({}, filter, {
44869
+ grade: grades
44870
+ }));
44871
+ }
44855
44872
  };
44856
44873
 
44857
44874
  var onChangeFilters = function onChangeFilters(filterSelect) {
@@ -45035,7 +45052,7 @@ var useDashboard$1 = function useDashboard() {
45035
45052
  getDashboardFlags();
45036
45053
  }, [JSON.stringify(filter)]);
45037
45054
  React.useEffect(function () {
45038
- !!filter.studentUserId && callApiByStudentUserId(getGrades, handleSaveGradeFilter, filter.studentUserId, []);
45055
+ filter.studentUserId && callApiByStudentUserId(getGrades, handleSaveGradeFilter, filter.studentUserId, []);
45039
45056
  }, [filter.studentUserId]);
45040
45057
  return {
45041
45058
  setFilter: setFilter,
@@ -51056,6 +51073,14 @@ var MultiChoiceComponent = function MultiChoiceComponent(_ref) {
51056
51073
  }, correctQuestionAnswer.join("; "))))));
51057
51074
  };
51058
51075
 
51076
+ var useStyles$3 = core$1.makeStyles({
51077
+ customAutocomplete: {
51078
+ '& .MuiFormControl-fullWidth': {
51079
+ width: '89%'
51080
+ }
51081
+ }
51082
+ });
51083
+
51059
51084
  var DropDownComponent = function DropDownComponent(_ref) {
51060
51085
  var questionItemName = _ref.questionItemName,
51061
51086
  questionId = _ref.questionId,
@@ -51063,10 +51088,10 @@ var DropDownComponent = function DropDownComponent(_ref) {
51063
51088
  isUserChangeSession = _ref.isUserChangeSession,
51064
51089
  onChangeQuestionAnswer = _ref.onChangeQuestionAnswer,
51065
51090
  questionAnswer = _ref.questionAnswer;
51091
+ var classes = useStyles$3();
51066
51092
  return React__default.createElement(lab.Autocomplete, {
51067
- fullWidth: true,
51068
51093
  id: "combo-box-demo",
51069
- className: "mt-1",
51094
+ className: "mt-1 ml-4 " + classes.customAutocomplete,
51070
51095
  disabled: !isUserChangeSession,
51071
51096
  options: (questionAnswer === null || questionAnswer === void 0 ? void 0 : questionAnswer.map(function (r) {
51072
51097
  return r.text;
@@ -76806,7 +76831,7 @@ var lodash = createCommonjsModule(function (module, exports) {
76806
76831
  }.call(commonjsGlobal));
76807
76832
  });
76808
76833
 
76809
- var useStyles$3 = core$1.makeStyles(function () {
76834
+ var useStyles$4 = core$1.makeStyles(function () {
76810
76835
  return {
76811
76836
  container: {
76812
76837
  position: "relative"
@@ -76899,7 +76924,7 @@ var InterventionSelector = function InterventionSelector(_ref) {
76899
76924
  var optionSelected = options.find(function (i) {
76900
76925
  return i.name === (value === null || value === void 0 ? void 0 : value.name);
76901
76926
  });
76902
- var classes = useStyles$3();
76927
+ var classes = useStyles$4();
76903
76928
 
76904
76929
  var handleToggleOpen = function handleToggleOpen() {
76905
76930
  setOpen(function (state) {
@@ -78613,7 +78638,7 @@ var usePreviewSurvey = function usePreviewSurvey() {
78613
78638
  };
78614
78639
  };
78615
78640
 
78616
- var useStyles$4 = core$1.makeStyles(function (theme) {
78641
+ var useStyles$5 = core$1.makeStyles(function (theme) {
78617
78642
  var _tabLabel;
78618
78643
 
78619
78644
  return {
@@ -78804,7 +78829,7 @@ var ShareSurveyDialog = function ShareSurveyDialog(_ref) {
78804
78829
  };
78805
78830
 
78806
78831
  var PreviewSurveyAdmin = function PreviewSurveyAdmin() {
78807
- var classes = useStyles$4();
78832
+ var classes = useStyles$5();
78808
78833
 
78809
78834
  var _usePreviewSurvey = usePreviewSurvey(),
78810
78835
  classFontSize = _usePreviewSurvey.classFontSize,
@@ -83095,7 +83120,7 @@ var TableSelectStudent = function TableSelectStudent(_ref) {
83095
83120
  }, t("no_data")))));
83096
83121
  };
83097
83122
 
83098
- var useStyles$5 = core$1.makeStyles(function () {
83123
+ var useStyles$6 = core$1.makeStyles(function () {
83099
83124
  return {
83100
83125
  root: {
83101
83126
  "& > *": {
@@ -83120,7 +83145,7 @@ var InputComponent = function InputComponent(_ref) {
83120
83145
  canSubmit = _ref.canSubmit,
83121
83146
  disabled = _ref.disabled,
83122
83147
  onChangeEvent = _ref.onChangeEvent;
83123
- var classes = useStyles$5();
83148
+ var classes = useStyles$6();
83124
83149
  return React__default.createElement("div", {
83125
83150
  className: styles["talk-conduct"]
83126
83151
  }, React__default.createElement("div", {
@@ -84736,6 +84761,7 @@ var CreateSurveyAdmin = function CreateSurveyAdmin() {
84736
84761
  };
84737
84762
 
84738
84763
  var USER_URL$4 = marioCore.BASE_URL + "/api/User";
84764
+ var EXCEL_FILE_URL = marioCore.BASE_URL + "/api/ExportDataUser";
84739
84765
  var revertUser = function revertUser(id) {
84740
84766
  return marioCore.api.put(USER_URL$4 + "/revert-user/" + id);
84741
84767
  };
@@ -84745,9 +84771,15 @@ var mergeData = function mergeData(fromId, toId) {
84745
84771
  var resetAcademicYear = function resetAcademicYear() {
84746
84772
  return marioCore.api.put(USER_URL$4 + "/reset-academic-year");
84747
84773
  };
84774
+ var importUserDataCSV = function importUserDataCSV(formData, studentUserId) {
84775
+ return marioCore.apiUpload.post(EXCEL_FILE_URL + "/" + studentUserId, formData);
84776
+ };
84748
84777
 
84749
84778
  var useRevertUser = function useRevertUser() {
84750
84779
  var dispatch = reactRedux.useDispatch();
84780
+ var isLoading = reactRedux.useSelector(function (state) {
84781
+ return state.common.isLoading;
84782
+ });
84751
84783
 
84752
84784
  var _useState = React.useState(null),
84753
84785
  user = _useState[0],
@@ -84843,6 +84875,38 @@ var useRevertUser = function useRevertUser() {
84843
84875
  }
84844
84876
  };
84845
84877
 
84878
+ var upload = React.useCallback(function (file) {
84879
+ try {
84880
+ var _temp10 = function _temp10() {
84881
+ dispatch(marioCore.setLoading(false));
84882
+ };
84883
+
84884
+ if (!file || !userTo) return Promise.resolve();
84885
+ dispatch(marioCore.setLoading(true));
84886
+
84887
+ var _temp11 = _catch(function () {
84888
+ var formData = new FormData();
84889
+ formData.append("file", file, file.name);
84890
+ return Promise.resolve(importUserDataCSV(formData, userTo === null || userTo === void 0 ? void 0 : userTo.id)).then(function () {
84891
+ dispatch(marioCore.setAlert({
84892
+ type: "success",
84893
+ message: "Import data successfully"
84894
+ }));
84895
+ });
84896
+ }, function (err) {
84897
+ var _err$response4, _err$response4$data;
84898
+
84899
+ dispatch(marioCore.setAlert({
84900
+ type: "danger",
84901
+ 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
84902
+ }));
84903
+ });
84904
+
84905
+ return Promise.resolve(_temp11 && _temp11.then ? _temp11.then(_temp10) : _temp10(_temp11));
84906
+ } catch (e) {
84907
+ return Promise.reject(e);
84908
+ }
84909
+ }, [userTo]);
84846
84910
  return {
84847
84911
  user: user,
84848
84912
  setUser: setUser,
@@ -84852,7 +84916,9 @@ var useRevertUser = function useRevertUser() {
84852
84916
  userTo: userTo,
84853
84917
  setUserTo: setUserTo,
84854
84918
  handelMergeDataUser: handelMergeDataUser,
84855
- handelResetAcademicYear: handelResetAcademicYear
84919
+ handelResetAcademicYear: handelResetAcademicYear,
84920
+ upload: upload,
84921
+ isLoading: isLoading
84856
84922
  };
84857
84923
  };
84858
84924
 
@@ -84865,6 +84931,8 @@ var RevertUser = function RevertUser() {
84865
84931
  setUserFrom = _useRevertUser.setUserFrom,
84866
84932
  userTo = _useRevertUser.userTo,
84867
84933
  setUserTo = _useRevertUser.setUserTo,
84934
+ upload = _useRevertUser.upload,
84935
+ isLoading = _useRevertUser.isLoading,
84868
84936
  handelMergeDataUser = _useRevertUser.handelMergeDataUser,
84869
84937
  handelResetAcademicYear = _useRevertUser.handelResetAcademicYear;
84870
84938
 
@@ -84912,7 +84980,24 @@ var RevertUser = function RevertUser() {
84912
84980
  onClick: function onClick() {
84913
84981
  return handelResetAcademicYear();
84914
84982
  }
84915
- }, "Reset academic year"))));
84983
+ }, "Reset academic year")), React__default.createElement(reactstrap.Row, null, React__default.createElement(reactstrap.Input, {
84984
+ id: "import-user",
84985
+ className: "d-none",
84986
+ type: "file",
84987
+ onChange: function onChange(e) {
84988
+ return upload(e.target.files[0]);
84989
+ },
84990
+ accept: "text/xlsx"
84991
+ }), React__default.createElement(marioCore.RequiredLabel, {
84992
+ text: "Import users"
84993
+ }), React__default.createElement(UploadCSVButton, {
84994
+ key: "import-users",
84995
+ htmlFor: "import-user",
84996
+ text: "Import data users",
84997
+ isDisabled: isLoading || !userTo,
84998
+ backgroundColor: "#0abde3",
84999
+ onClick: function onClick() {}
85000
+ }))));
84916
85001
  };
84917
85002
 
84918
85003
  var USER_URL$5 = marioCore.BASE_URL + "/api/User";