mario-core 2.9.405-feedback → 2.9.407-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.
package/dist/index.js CHANGED
@@ -49584,8 +49584,8 @@ var importClassReflectionCSV$1 = function importClassReflectionCSV(formData) {
49584
49584
  var importStudentByTeacher$1 = function importStudentByTeacher(teacherId, formData) {
49585
49585
  return apiUpload.post(CSV_FILE_TEACHER$1 + "/adminImportStudentByTeacherId/" + teacherId, formData);
49586
49586
  };
49587
- var importUsersCSV$1 = function importUsersCSV(formData) {
49588
- return apiUpload.post(CSV_FILE_TEACHER$1 + "/adminImport", formData);
49587
+ var importChunkFileUsers = function importChunkFileUsers(data) {
49588
+ return api.post(CSV_FILE_TEACHER$1 + "/adminImportChunkUser", data);
49589
49589
  };
49590
49590
  var downloadTemplateFileUser$1 = function downloadTemplateFileUser() {
49591
49591
  return api.get(CSV_FILE_TEACHER$1 + "/download-template-file-user");
@@ -49608,11 +49608,6 @@ var isbButtons = [{
49608
49608
  backgroundColor: "#0abde3",
49609
49609
  type: CSVType$1.AllUser
49610
49610
  }];
49611
- var othersButtons = [{
49612
- text: "import_class_reflection",
49613
- backgroundColor: "#e74c3c",
49614
- type: CSVType$1.ClassReflection
49615
- }];
49616
49611
  var title$5 = "CSV Import";
49617
49612
  var id$1 = "csvupload";
49618
49613
  var initClassReflect$1 = {
@@ -49648,8 +49643,7 @@ var useCSVImportTab = function useCSVImportTab() {
49648
49643
  studentDataFile = _useState5[0],
49649
49644
  setStudentDataFile = _useState5[1];
49650
49645
 
49651
- var domainName = window.location.hostname;
49652
- var isCheckDomainIBS = domainName.includes('isb') || domainName.includes('stage');
49646
+ var isCheckDomainIBS = true;
49653
49647
 
49654
49648
  var _useState6 = React.useState(0),
49655
49649
  defaultTeacher = _useState6[0],
@@ -49662,7 +49656,7 @@ var useCSVImportTab = function useCSVImportTab() {
49662
49656
  React.useEffect(function () {
49663
49657
  document.title = title$5;
49664
49658
  }, []);
49665
- var buttons = isCheckDomainIBS ? isbButtons : othersButtons;
49659
+ var buttons = isbButtons ;
49666
49660
 
49667
49661
  var downloadTemplateUser = function downloadTemplateUser() {
49668
49662
  try {
@@ -49752,25 +49746,48 @@ var useCSVImportTab = function useCSVImportTab() {
49752
49746
  });
49753
49747
  var header = parsedData.meta.fields;
49754
49748
  var dataRows = parsedData.data;
49755
- var chunkSize = 20;
49749
+ var chunkSize = 10;
49756
49750
  var chunks = [];
49757
49751
 
49758
49752
  for (var _i = 0; _i < dataRows.length; _i += chunkSize) {
49759
49753
  var chunkData = dataRows.slice(_i, _i + chunkSize);
49760
- var csvChunk = Papa.unparse({
49761
- fields: header != null ? header : [],
49762
- data: chunkData
49754
+ var valuesOnly = chunkData.map(function (row) {
49755
+ return Object.values(row).map(function (v) {
49756
+ return (v != null ? v : "").toString().trim();
49757
+ });
49763
49758
  });
49764
- chunks.push(csvChunk);
49759
+ console.log({
49760
+ valuesOnly: valuesOnly
49761
+ });
49762
+ console.log({
49763
+ chunkData: chunkData
49764
+ });
49765
+
49766
+ if (header) {
49767
+ valuesOnly.unshift(header);
49768
+ }
49769
+
49770
+ console.log({
49771
+ valuesOnly: valuesOnly
49772
+ });
49773
+ chunks.push(valuesOnly);
49765
49774
  }
49766
49775
 
49776
+ console.log({
49777
+ chunks: chunks
49778
+ });
49779
+ console.log({
49780
+ header: header
49781
+ });
49782
+
49767
49783
  var _temp5 = _forTo(chunks, function (i) {
49768
- var blob = new Blob([chunks[i]], {
49769
- type: "text/csv"
49784
+ return Promise.resolve(importChunkFileUsers({
49785
+ chunks: chunks[i]
49786
+ })).then(function () {
49787
+ return Promise.resolve(new Promise(function (res) {
49788
+ return setTimeout(res, 500);
49789
+ })).then(function () {});
49770
49790
  });
49771
- var formData = new FormData();
49772
- formData.append("file", blob, "students_chunk" + (i + 1) + ".csv");
49773
- return Promise.resolve(importUsersCSV$1(formData)).then(function () {});
49774
49791
  });
49775
49792
 
49776
49793
  if (_temp5 && _temp5.then) return _temp5.then(function () {});
@@ -49798,6 +49815,7 @@ var useCSVImportTab = function useCSVImportTab() {
49798
49815
  }, function (err) {
49799
49816
  var _err$response, _err$response$data;
49800
49817
 
49818
+ console.error("❌ Upload failed", err);
49801
49819
  dispatch(setAlert({
49802
49820
  type: "danger",
49803
49821
  message: ((_err$response = err.response) === null || _err$response === void 0 ? void 0 : (_err$response$data = _err$response.data) === null || _err$response$data === void 0 ? void 0 : _err$response$data.title) || err.message
@@ -49975,7 +49993,6 @@ var CSVImport = function CSVImport() {
49975
49993
  setArrStudent = _useCSVImportTab.setArrStudent,
49976
49994
  buttons = _useCSVImportTab.buttons,
49977
49995
  upload = _useCSVImportTab.upload,
49978
- isCheckDomainIBS = _useCSVImportTab.isCheckDomainIBS,
49979
49996
  downloadTemplateUser = _useCSVImportTab.downloadTemplateUser;
49980
49997
 
49981
49998
  var _useTranslation = reactI18next.useTranslation(),
@@ -49983,7 +50000,7 @@ var CSVImport = function CSVImport() {
49983
50000
 
49984
50001
  return React__default.createElement("div", {
49985
50002
  className: "animated fadeIn pt-3"
49986
- }, isCheckDomainIBS ? React__default.createElement(React__default.Fragment, null, React__default.createElement(reactstrap.Input, {
50003
+ }, React__default.createElement(React__default.Fragment, null, React__default.createElement(reactstrap.Input, {
49987
50004
  className: "d-none",
49988
50005
  type: "file",
49989
50006
  id: "import-user",
@@ -50091,67 +50108,7 @@ var CSVImport = function CSVImport() {
50091
50108
  }
50092
50109
  });
50093
50110
  })))));
50094
- }))) : React__default.createElement(React__default.Fragment, null, React__default.createElement(reactstrap.Row, null, React__default.createElement(reactstrap.Col, {
50095
- md: 12,
50096
- className: "mt-2 mb-2 text-left"
50097
- }, React__default.createElement(reactstrap.Button, {
50098
- role: "button",
50099
- color: "primary",
50100
- onClick: function onClick() {
50101
- return downloadTemplateUser();
50102
- }
50103
- }, React__default.createElement("p", {
50104
- className: "d-flex align-items-center mb-0"
50105
- }, t("download_template"), " ", React__default.createElement(ai.AiOutlineDownload, {
50106
- size: 20,
50107
- className: "ml-2"
50108
- })))), React__default.createElement(reactstrap.Col, {
50109
- md: 6,
50110
- className: "mb-3"
50111
- }, React__default.createElement(reactstrap.Input, {
50112
- id: "import-user",
50113
- className: "d-none",
50114
- type: "file",
50115
- onChange: function onChange(e) {
50116
- return upload(e.target.files[0]);
50117
- },
50118
- accept: "text/csv"
50119
- }), React__default.createElement(RequiredLabel$1, {
50120
- text: t("import_users")
50121
- }), React__default.createElement(UploadCSVButton, {
50122
- key: "import-users",
50123
- htmlFor: 'import-user',
50124
- text: t("import_users"),
50125
- isDisabled: isLoading,
50126
- backgroundColor: "#0abde3",
50127
- onClick: function onClick() {
50128
- setType(CSVType.AllUser);
50129
- }
50130
- })), React__default.createElement(reactstrap.Col, {
50131
- md: 6,
50132
- className: "mb-3"
50133
- }, React__default.createElement(reactstrap.Input, {
50134
- className: "d-none",
50135
- type: "file",
50136
- id: id,
50137
- onChange: function onChange(e) {
50138
- return upload(e.target.files[0]);
50139
- },
50140
- accept: "text/csv"
50141
- }), buttons.map(function (button) {
50142
- return React__default.createElement(React__default.Fragment, null, React__default.createElement(RequiredLabel$1, {
50143
- text: t(button.text)
50144
- }), React__default.createElement(UploadCSVButton, {
50145
- key: button.text,
50146
- htmlFor: id,
50147
- text: t(button.text),
50148
- isDisabled: isLoading,
50149
- backgroundColor: button.backgroundColor,
50150
- onClick: function onClick() {
50151
- return setType(button.type);
50152
- }
50153
- }));
50154
- })))));
50111
+ }))) );
50155
50112
  };
50156
50113
 
50157
50114
  var tabs = [{