mario-education 2.4.514-feedback → 2.4.515-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 +73 -20
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +73 -20
- package/dist/index.modern.js.map +1 -1
- package/package.json +4 -3
package/dist/index.js
CHANGED
|
@@ -10,6 +10,7 @@ var formik = require('formik');
|
|
|
10
10
|
var yup = require('yup');
|
|
11
11
|
var reactRouterDom = require('react-router-dom');
|
|
12
12
|
var ai = require('react-icons/ai');
|
|
13
|
+
var Papa = _interopDefault(require('papaparse'));
|
|
13
14
|
var DatePicker = _interopDefault(require('react-datepicker'));
|
|
14
15
|
var format = _interopDefault(require('date-fns/format'));
|
|
15
16
|
var react = require('@ag-grid-community/react');
|
|
@@ -6018,9 +6019,7 @@ var importStudentByTeacher = function importStudentByTeacher(teacherId, formData
|
|
|
6018
6019
|
return marioCore.apiUpload.post(CSV_FILE_TEACHER + "/adminImportStudentByTeacherId/" + teacherId, formData);
|
|
6019
6020
|
};
|
|
6020
6021
|
var importUsersCSV = function importUsersCSV(formData) {
|
|
6021
|
-
return marioCore.apiUpload.post(CSV_FILE_TEACHER + "/adminImport", formData
|
|
6022
|
-
timeout: 400000
|
|
6023
|
-
});
|
|
6022
|
+
return marioCore.apiUpload.post(CSV_FILE_TEACHER + "/adminImport", formData);
|
|
6024
6023
|
};
|
|
6025
6024
|
var downloadTemplateFileUser = function downloadTemplateFileUser() {
|
|
6026
6025
|
return marioCore.api.get(CSV_FILE_TEACHER + "/download-template-file-user");
|
|
@@ -6137,7 +6136,10 @@ var useCSVImport = function useCSVImport() {
|
|
|
6137
6136
|
|
|
6138
6137
|
var upload = React.useCallback(function (file) {
|
|
6139
6138
|
try {
|
|
6140
|
-
var
|
|
6139
|
+
var _exit2 = false;
|
|
6140
|
+
|
|
6141
|
+
var _temp12 = function _temp12(_result2) {
|
|
6142
|
+
if (_exit2) return _result2;
|
|
6141
6143
|
dispatch(marioCore.setLoading(false));
|
|
6142
6144
|
var inputId = document.getElementById(id);
|
|
6143
6145
|
var input = document.getElementById('import-student');
|
|
@@ -6150,8 +6152,9 @@ var useCSVImport = function useCSVImport() {
|
|
|
6150
6152
|
if (!type || !file) return Promise.resolve();
|
|
6151
6153
|
dispatch(marioCore.setLoading(true));
|
|
6152
6154
|
|
|
6153
|
-
var
|
|
6154
|
-
function
|
|
6155
|
+
var _temp13 = _catch(function () {
|
|
6156
|
+
function _temp9(_result) {
|
|
6157
|
+
if (_exit2) return _result;
|
|
6155
6158
|
dispatch(marioCore.setAlert({
|
|
6156
6159
|
type: "success",
|
|
6157
6160
|
message: "Import CSV successfully"
|
|
@@ -6161,29 +6164,79 @@ var useCSVImport = function useCSVImport() {
|
|
|
6161
6164
|
var formData = new FormData();
|
|
6162
6165
|
formData.append("file", file, file.name);
|
|
6163
6166
|
|
|
6164
|
-
var
|
|
6167
|
+
var _temp8 = function () {
|
|
6165
6168
|
if (type == CSVType.AllUser) {
|
|
6166
|
-
return Promise.resolve(
|
|
6169
|
+
return Promise.resolve(file.text()).then(function (fileTextRaw) {
|
|
6170
|
+
var fileText = fileTextRaw.trim();
|
|
6171
|
+
var headerIndex = 0;
|
|
6172
|
+
var rows = fileText.split("\n").map(function (row) {
|
|
6173
|
+
return row.trim();
|
|
6174
|
+
});
|
|
6175
|
+
|
|
6176
|
+
for (var _i = 0; _i < rows.length; _i++) {
|
|
6177
|
+
var cols = rows[_i].split(",");
|
|
6178
|
+
|
|
6179
|
+
if (cols.includes("FirstName")) {
|
|
6180
|
+
headerIndex = _i;
|
|
6181
|
+
return;
|
|
6182
|
+
}
|
|
6183
|
+
}
|
|
6184
|
+
|
|
6185
|
+
if (headerIndex === 0) {
|
|
6186
|
+
throw new Error("Invalid CSV: Missing header row.");
|
|
6187
|
+
}
|
|
6188
|
+
|
|
6189
|
+
fileText = rows.slice(headerIndex).join("\n");
|
|
6190
|
+
var parsedData = Papa.parse(fileText, {
|
|
6191
|
+
header: true,
|
|
6192
|
+
skipEmptyLines: true
|
|
6193
|
+
});
|
|
6194
|
+
var header = parsedData.meta.fields;
|
|
6195
|
+
console.log("📌 CSV Header:", header);
|
|
6196
|
+
var dataRows = parsedData.data;
|
|
6197
|
+
var chunkSize = 20;
|
|
6198
|
+
var chunks = [];
|
|
6199
|
+
|
|
6200
|
+
for (var _i2 = 0; _i2 < dataRows.length; _i2 += chunkSize) {
|
|
6201
|
+
var chunkData = dataRows.slice(_i2, _i2 + chunkSize);
|
|
6202
|
+
var csvChunk = Papa.unparse({
|
|
6203
|
+
fields: header,
|
|
6204
|
+
data: chunkData
|
|
6205
|
+
});
|
|
6206
|
+
chunks.push(csvChunk);
|
|
6207
|
+
}
|
|
6208
|
+
|
|
6209
|
+
var _temp5 = _forTo(chunks, function (i) {
|
|
6210
|
+
var blob = new Blob([chunks[i]], {
|
|
6211
|
+
type: "text/csv"
|
|
6212
|
+
});
|
|
6213
|
+
var formData = new FormData();
|
|
6214
|
+
formData.append("file", blob, "students_chunk" + (i + 1) + ".csv");
|
|
6215
|
+
return Promise.resolve(importUsersCSV(formData)).then(function () {});
|
|
6216
|
+
});
|
|
6217
|
+
|
|
6218
|
+
if (_temp5 && _temp5.then) return _temp5.then(function () {});
|
|
6219
|
+
});
|
|
6167
6220
|
} else {
|
|
6168
|
-
var
|
|
6221
|
+
var _temp14 = function () {
|
|
6169
6222
|
if (isCheckDomainIBS) {
|
|
6170
|
-
var
|
|
6223
|
+
var _temp15 = function () {
|
|
6171
6224
|
if (type == CSVType.ClassReflection) {
|
|
6172
6225
|
return Promise.resolve(importClassReflectionCSV(formData)).then(function () {});
|
|
6173
6226
|
}
|
|
6174
6227
|
}();
|
|
6175
6228
|
|
|
6176
|
-
if (
|
|
6229
|
+
if (_temp15 && _temp15.then) return _temp15.then(function () {});
|
|
6177
6230
|
} else {
|
|
6178
6231
|
return Promise.resolve(importCSV(formData, type.toString())).then(function () {});
|
|
6179
6232
|
}
|
|
6180
6233
|
}();
|
|
6181
6234
|
|
|
6182
|
-
if (
|
|
6235
|
+
if (_temp14 && _temp14.then) return _temp14.then(function () {});
|
|
6183
6236
|
}
|
|
6184
6237
|
}();
|
|
6185
6238
|
|
|
6186
|
-
return
|
|
6239
|
+
return _temp8 && _temp8.then ? _temp8.then(_temp9) : _temp9(_temp8);
|
|
6187
6240
|
}, function (err) {
|
|
6188
6241
|
var _err$response, _err$response$data;
|
|
6189
6242
|
|
|
@@ -6193,7 +6246,7 @@ var useCSVImport = function useCSVImport() {
|
|
|
6193
6246
|
}));
|
|
6194
6247
|
});
|
|
6195
6248
|
|
|
6196
|
-
return Promise.resolve(
|
|
6249
|
+
return Promise.resolve(_temp13 && _temp13.then ? _temp13.then(_temp12) : _temp12(_temp13));
|
|
6197
6250
|
} catch (e) {
|
|
6198
6251
|
return Promise.reject(e);
|
|
6199
6252
|
}
|
|
@@ -6201,7 +6254,7 @@ var useCSVImport = function useCSVImport() {
|
|
|
6201
6254
|
|
|
6202
6255
|
var uploadByTeacherId = function uploadByTeacherId(file) {
|
|
6203
6256
|
try {
|
|
6204
|
-
var
|
|
6257
|
+
var _temp18 = function _temp18() {
|
|
6205
6258
|
dispatch(marioCore.setLoading(false));
|
|
6206
6259
|
var input = document.getElementById('teacherSelector');
|
|
6207
6260
|
input && (input.value = "");
|
|
@@ -6218,7 +6271,7 @@ var useCSVImport = function useCSVImport() {
|
|
|
6218
6271
|
if (!type || !file) return Promise.resolve();
|
|
6219
6272
|
dispatch(marioCore.setLoading(true));
|
|
6220
6273
|
|
|
6221
|
-
var
|
|
6274
|
+
var _temp19 = _catch(function () {
|
|
6222
6275
|
var formData = new FormData();
|
|
6223
6276
|
formData.append("file", file, file.name);
|
|
6224
6277
|
return Promise.resolve(importStudentByTeacher(defaultTeacher, formData)).then(function () {
|
|
@@ -6236,7 +6289,7 @@ var useCSVImport = function useCSVImport() {
|
|
|
6236
6289
|
}));
|
|
6237
6290
|
});
|
|
6238
6291
|
|
|
6239
|
-
return Promise.resolve(
|
|
6292
|
+
return Promise.resolve(_temp19 && _temp19.then ? _temp19.then(_temp18) : _temp18(_temp19));
|
|
6240
6293
|
} catch (e) {
|
|
6241
6294
|
return Promise.reject(e);
|
|
6242
6295
|
}
|
|
@@ -6244,7 +6297,7 @@ var useCSVImport = function useCSVImport() {
|
|
|
6244
6297
|
|
|
6245
6298
|
var onConfirm = function onConfirm(values) {
|
|
6246
6299
|
try {
|
|
6247
|
-
var
|
|
6300
|
+
var _temp22 = function _temp22() {
|
|
6248
6301
|
dispatch(marioCore.setLoading(false));
|
|
6249
6302
|
var input = document.getElementById(id);
|
|
6250
6303
|
input && (input.value = "");
|
|
@@ -6253,7 +6306,7 @@ var useCSVImport = function useCSVImport() {
|
|
|
6253
6306
|
if (!dataFile || !dataFile) return Promise.resolve();
|
|
6254
6307
|
dispatch(marioCore.setLoading(true));
|
|
6255
6308
|
|
|
6256
|
-
var
|
|
6309
|
+
var _temp23 = _catch(function () {
|
|
6257
6310
|
var formData = new FormData();
|
|
6258
6311
|
formData.append("file", dataFile, dataFile.name);
|
|
6259
6312
|
formData.append("teacherName", values.teacherName);
|
|
@@ -6277,7 +6330,7 @@ var useCSVImport = function useCSVImport() {
|
|
|
6277
6330
|
}));
|
|
6278
6331
|
});
|
|
6279
6332
|
|
|
6280
|
-
return Promise.resolve(
|
|
6333
|
+
return Promise.resolve(_temp23 && _temp23.then ? _temp23.then(_temp22) : _temp22(_temp23));
|
|
6281
6334
|
} catch (e) {
|
|
6282
6335
|
return Promise.reject(e);
|
|
6283
6336
|
}
|