touchstudy-core 0.1.169 → 0.1.171
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
@@ -1532,6 +1532,8 @@ var admin_to_admin = "관리자에서 관리자에게";
|
|
1532
1532
|
var teacher_to_admin = "교사에서 관리자에게";
|
1533
1533
|
var admin_to_teachers = "관리자에서 교사들에게";
|
1534
1534
|
var teacher_to_teachers = "교사에서 교사들에게";
|
1535
|
+
var student_required = "학생은 필수입니다";
|
1536
|
+
var teachers_required = "교사가 필요합니다";
|
1535
1537
|
var lang_ko = {
|
1536
1538
|
problem_solving: problem_solving,
|
1537
1539
|
my_story: my_story,
|
@@ -2699,7 +2701,9 @@ var lang_ko = {
|
|
2699
2701
|
admin_to_admin: admin_to_admin,
|
2700
2702
|
teacher_to_admin: teacher_to_admin,
|
2701
2703
|
admin_to_teachers: admin_to_teachers,
|
2702
|
-
teacher_to_teachers: teacher_to_teachers
|
2704
|
+
teacher_to_teachers: teacher_to_teachers,
|
2705
|
+
student_required: student_required,
|
2706
|
+
teachers_required: teachers_required
|
2703
2707
|
};
|
2704
2708
|
|
2705
2709
|
var problem_solving$1 = "Problem Solving";
|
@@ -3890,6 +3894,8 @@ var admin_to_admin$1 = "Admin to admin";
|
|
3890
3894
|
var teacher_to_admin$1 = "Teacher to admin";
|
3891
3895
|
var admin_to_teachers$1 = "Admin to teachers";
|
3892
3896
|
var teacher_to_teachers$1 = "Teacher to teachers";
|
3897
|
+
var student_required$1 = "Student is required";
|
3898
|
+
var teachers_required$1 = "Teachers are required";
|
3893
3899
|
var lang_en = {
|
3894
3900
|
problem_solving: problem_solving$1,
|
3895
3901
|
my_story: my_story$1,
|
@@ -5059,7 +5065,9 @@ var lang_en = {
|
|
5059
5065
|
admin_to_admin: admin_to_admin$1,
|
5060
5066
|
teacher_to_admin: teacher_to_admin$1,
|
5061
5067
|
admin_to_teachers: admin_to_teachers$1,
|
5062
|
-
teacher_to_teachers: teacher_to_teachers$1
|
5068
|
+
teacher_to_teachers: teacher_to_teachers$1,
|
5069
|
+
student_required: student_required$1,
|
5070
|
+
teachers_required: teachers_required$1
|
5063
5071
|
};
|
5064
5072
|
|
5065
5073
|
i18n__default.use(reactI18next.initReactI18next).init({
|
@@ -6456,6 +6464,28 @@ var formatPhoneNumber = function formatPhoneNumber(phoneNumberString) {
|
|
6456
6464
|
return phoneNumberString;
|
6457
6465
|
};
|
6458
6466
|
|
6467
|
+
var cleanRichText = function cleanRichText(html, fontSize) {
|
6468
|
+
if (fontSize === void 0) {
|
6469
|
+
fontSize = "1rem";
|
6470
|
+
}
|
6471
|
+
var container = document.createElement('div');
|
6472
|
+
container.innerHTML = html;
|
6473
|
+
var tagsToRemove = ['script', 'style', 'img', 'video', 'audio', 'iframe', 'canvas', 'object', 'embed', 'table'];
|
6474
|
+
tagsToRemove.forEach(function (tag) {
|
6475
|
+
container.querySelectorAll(tag).forEach(function (el) {
|
6476
|
+
return el.remove();
|
6477
|
+
});
|
6478
|
+
});
|
6479
|
+
var textTags = ['p', 'div', 'section', 'article', 'blockquote', 'pre', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'address', 'aside', 'span', 'a', 'strong', 'b', 'em', 'i', 'u', 'small', 'abbr', 'cite', 'code', 'mark', 'sub', 'sup', 'time', 'kbd', 'samp', 'var', 'q', 'dfn', 'br', 'label', 'legend', 'summary', 'dt', 'dd', 'caption', 'figcaption', 'title'];
|
6480
|
+
container.querySelectorAll('*').forEach(function (el) {
|
6481
|
+
if (textTags.includes(el.tagName)) {
|
6482
|
+
el.style.fontSize = fontSize;
|
6483
|
+
el.style.lineHeight = "1";
|
6484
|
+
}
|
6485
|
+
});
|
6486
|
+
return container.innerHTML;
|
6487
|
+
};
|
6488
|
+
|
6459
6489
|
var getLocalDayOfWeek = function getLocalDayOfWeek(utcDateTime, dayOfWeek) {
|
6460
6490
|
var currentDayOfWeek = moment.utc(utcDateTime).weekday();
|
6461
6491
|
var diff = dayOfWeek - currentDayOfWeek;
|
@@ -15760,15 +15790,18 @@ var NoteItem = function NoteItem(_ref) {
|
|
15760
15790
|
var handleItemClick = function handleItemClick() {
|
15761
15791
|
onItemClick === null || onItemClick === void 0 ? void 0 : onItemClick(data);
|
15762
15792
|
};
|
15793
|
+
var cleanedRichText = React.useMemo(function () {
|
15794
|
+
return cleanRichText(data.content);
|
15795
|
+
}, [data.content]);
|
15763
15796
|
React.useEffect(function () {
|
15764
15797
|
onLoad === null || onLoad === void 0 ? void 0 : onLoad();
|
15765
|
-
}, []);
|
15798
|
+
}, [cleanedRichText, JSON.stringify(data)]);
|
15766
15799
|
React.useEffect(function () {
|
15767
15800
|
if (window.MathJax) {
|
15768
15801
|
var _window$MathJax;
|
15769
15802
|
(_window$MathJax = window.MathJax) === null || _window$MathJax === void 0 ? void 0 : _window$MathJax.typeset();
|
15770
15803
|
}
|
15771
|
-
}, [
|
15804
|
+
}, [cleanedRichText]);
|
15772
15805
|
return React__default.createElement(material.Box, Object.assign({}, NoteItemStyles.root, {
|
15773
15806
|
onClick: handleItemClick,
|
15774
15807
|
sx: {
|
@@ -15800,7 +15833,7 @@ var NoteItem = function NoteItem(_ref) {
|
|
15800
15833
|
overflow: "hidden"
|
15801
15834
|
},
|
15802
15835
|
dangerouslySetInnerHTML: {
|
15803
|
-
__html:
|
15836
|
+
__html: cleanedRichText
|
15804
15837
|
}
|
15805
15838
|
}))), React__default.createElement(material.Box, null, (isAdmin || data.isOwned) && React__default.createElement(material.ClickAwayListener, {
|
15806
15839
|
onClickAway: onClose
|
@@ -15913,6 +15946,9 @@ var NoteItemList = function NoteItemList(_ref) {
|
|
15913
15946
|
onView(data);
|
15914
15947
|
};
|
15915
15948
|
var disabled = !data.isOwned && (!isAdminUser || data.type == undefined || data.type == exports.NoteType.TeacherToAllAdmin || data.type == exports.NoteType.TeacherToTeachers);
|
15949
|
+
var cleanedRichText = React.useMemo(function () {
|
15950
|
+
return cleanRichText(data.content);
|
15951
|
+
}, [data.content]);
|
15916
15952
|
React.useEffect(function () {
|
15917
15953
|
if (window.MathJax) {
|
15918
15954
|
var _window$MathJax;
|
@@ -15947,7 +15983,7 @@ var NoteItemList = function NoteItemList(_ref) {
|
|
15947
15983
|
overflow: "hidden"
|
15948
15984
|
},
|
15949
15985
|
dangerouslySetInnerHTML: {
|
15950
|
-
__html:
|
15986
|
+
__html: cleanedRichText
|
15951
15987
|
}
|
15952
15988
|
})), React__default.createElement(TableCell, {
|
15953
15989
|
className: "text-nowrap"
|
@@ -16424,9 +16460,14 @@ var GeneralNoteDialog = function GeneralNoteDialog(_ref) {
|
|
16424
16460
|
var field = _ref3.field;
|
16425
16461
|
return React__default.createElement(StudentSelector, {
|
16426
16462
|
value: field.value,
|
16427
|
-
onChange: function
|
16428
|
-
|
16429
|
-
|
16463
|
+
onChange: function (val) {
|
16464
|
+
try {
|
16465
|
+
return Promise.resolve(setFieldValue("studentId", val === null || val === void 0 ? void 0 : val.value)).then(function () {
|
16466
|
+
return Promise.resolve(setFieldValue("student", val)).then(function () {});
|
16467
|
+
});
|
16468
|
+
} catch (e) {
|
16469
|
+
return Promise.reject(e);
|
16470
|
+
}
|
16430
16471
|
},
|
16431
16472
|
isMulti: false
|
16432
16473
|
});
|
@@ -16437,7 +16478,7 @@ var GeneralNoteDialog = function GeneralNoteDialog(_ref) {
|
|
16437
16478
|
lineHeight: "11.93px",
|
16438
16479
|
mt: 1,
|
16439
16480
|
color: "#F34B4B"
|
16440
|
-
}, errors.studentId)), (type === exports.NoteType.AdminToAllAdmin || type === exports.NoteType.AdminToAllTeacher) && React__default.createElement(material.FormControl, {
|
16481
|
+
}, t(errors.studentId))), (type === exports.NoteType.AdminToAllAdmin || type === exports.NoteType.AdminToAllTeacher) && React__default.createElement(material.FormControl, {
|
16441
16482
|
className: "w-100"
|
16442
16483
|
}, React__default.createElement(material.FormLabel, {
|
16443
16484
|
className: "fw-medium",
|
@@ -16474,12 +16515,17 @@ var GeneralNoteDialog = function GeneralNoteDialog(_ref) {
|
|
16474
16515
|
var field = _ref4.field;
|
16475
16516
|
return React__default.createElement(TeacherSelector$1, {
|
16476
16517
|
value: field.value,
|
16477
|
-
onChange: function
|
16478
|
-
|
16479
|
-
|
16480
|
-
return i
|
16481
|
-
|
16482
|
-
|
16518
|
+
onChange: function (val) {
|
16519
|
+
try {
|
16520
|
+
var _val$map, _val$map2;
|
16521
|
+
return Promise.resolve(setFieldValue("userIds", (_val$map = val === null || val === void 0 ? void 0 : (_val$map2 = val.map) === null || _val$map2 === void 0 ? void 0 : _val$map2.call(val, function (i) {
|
16522
|
+
return i.value;
|
16523
|
+
})) != null ? _val$map : [])).then(function () {
|
16524
|
+
return Promise.resolve(setFieldValue("users", val != null ? val : [])).then(function () {});
|
16525
|
+
});
|
16526
|
+
} catch (e) {
|
16527
|
+
return Promise.reject(e);
|
16528
|
+
}
|
16483
16529
|
},
|
16484
16530
|
isDisabled: !!selectedNote,
|
16485
16531
|
exceptMe: true,
|
@@ -16493,7 +16539,7 @@ var GeneralNoteDialog = function GeneralNoteDialog(_ref) {
|
|
16493
16539
|
lineHeight: "11.93px",
|
16494
16540
|
mt: 1,
|
16495
16541
|
color: "#F34B4B"
|
16496
|
-
}, errors.userIds)), React__default.createElement(material.Stack, null, React__default.createElement("label", {
|
16542
|
+
}, t(errors.userIds))), React__default.createElement(material.Stack, null, React__default.createElement("label", {
|
16497
16543
|
htmlFor: "content-question",
|
16498
16544
|
className: styles["form-label"] + " " + styles$5["form-label-dialog"]
|
16499
16545
|
}, t("incorrect_answer_note_contents")), React__default.createElement(material.Box, {
|
@@ -16524,7 +16570,7 @@ var GeneralNoteDialog = function GeneralNoteDialog(_ref) {
|
|
16524
16570
|
lineHeight: "11.93px",
|
16525
16571
|
mt: 1,
|
16526
16572
|
color: "#F34B4B"
|
16527
|
-
}, errors.content), React__default.createElement(material.Box, {
|
16573
|
+
}, t(errors.content)), React__default.createElement(material.Box, {
|
16528
16574
|
marginBottom: "4px"
|
16529
16575
|
})))), React__default.createElement(DialogActions, {
|
16530
16576
|
sx: {
|
@@ -16789,7 +16835,8 @@ var NoteList = function NoteList(_ref) {
|
|
16789
16835
|
open: openConfirmNote,
|
16790
16836
|
toggle: handleCloseConfirmStudentNoteDialog,
|
16791
16837
|
onConfirm: handleSaveStudentNote,
|
16792
|
-
text: t("are_you_sure_to_create_student_parent_note")
|
16838
|
+
text: t("are_you_sure_to_create_student_parent_note"),
|
16839
|
+
zIndex: 1300
|
16793
16840
|
}), React__default.createElement(ConfirmDeleteDialog, {
|
16794
16841
|
open: openDeleteNoteDialog,
|
16795
16842
|
toggle: handleCloseDeleteDialog,
|
@@ -17649,7 +17696,7 @@ var ExamResultItem = function ExamResultItem(_ref) {
|
|
17649
17696
|
};
|
17650
17697
|
React.useEffect(function () {
|
17651
17698
|
onLoad === null || onLoad === void 0 ? void 0 : onLoad();
|
17652
|
-
}, []);
|
17699
|
+
}, [JSON.stringify(data)]);
|
17653
17700
|
var examTime = React.useMemo(function () {
|
17654
17701
|
return utcToLocalTime(data.startTime, "HH:mm") + " ~ " + utcToLocalTime(data.endTime, "HH:mm");
|
17655
17702
|
}, [data.startTime, data.endTime]);
|
@@ -23210,7 +23257,7 @@ var TextbookResultItem = function TextbookResultItem(_ref) {
|
|
23210
23257
|
};
|
23211
23258
|
React.useEffect(function () {
|
23212
23259
|
onLoad === null || onLoad === void 0 ? void 0 : onLoad();
|
23213
|
-
}, []);
|
23260
|
+
}, [JSON.stringify(data)]);
|
23214
23261
|
return React__default.createElement(material.Stack, {
|
23215
23262
|
height: "100%",
|
23216
23263
|
direction: "column",
|
@@ -26156,7 +26203,7 @@ var CourseAttendanceItem = function CourseAttendanceItem(_ref) {
|
|
26156
26203
|
var lastAttendance = timAgo(data.lastAttendanceDate, t);
|
26157
26204
|
React.useEffect(function () {
|
26158
26205
|
onLoad === null || onLoad === void 0 ? void 0 : onLoad();
|
26159
|
-
}, []);
|
26206
|
+
}, [JSON.stringify(data)]);
|
26160
26207
|
return React__default.createElement(material.Stack, {
|
26161
26208
|
direction: "column",
|
26162
26209
|
px: 2,
|
@@ -39095,10 +39142,19 @@ var AnnouncementItem = function AnnouncementItem(_ref) {
|
|
39095
39142
|
onLoad = _ref.onLoad;
|
39096
39143
|
var _useTranslation = reactI18next.useTranslation(),
|
39097
39144
|
t = _useTranslation.t;
|
39145
|
+
var announcementData = convertAnnouncementData(t, role, data);
|
39146
|
+
var cleanedRichText = React.useMemo(function () {
|
39147
|
+
return cleanRichText(announcementData.content);
|
39148
|
+
}, [announcementData.content]);
|
39149
|
+
React.useEffect(function () {
|
39150
|
+
if (window.MathJax) {
|
39151
|
+
var _window$MathJax;
|
39152
|
+
(_window$MathJax = window.MathJax) === null || _window$MathJax === void 0 ? void 0 : _window$MathJax.typeset();
|
39153
|
+
}
|
39154
|
+
}, [cleanedRichText]);
|
39098
39155
|
React.useEffect(function () {
|
39099
39156
|
onLoad();
|
39100
|
-
}, []);
|
39101
|
-
var announcementData = convertAnnouncementData(t, role, data);
|
39157
|
+
}, [cleanedRichText, data.createdAt, announcementData.action, announcementData.name]);
|
39102
39158
|
return React__default.createElement(React.Fragment, null, renderLink(React__default.createElement(material.ListItemButton, {
|
39103
39159
|
sx: _extends({
|
39104
39160
|
py: 1.5,
|
@@ -39121,14 +39177,18 @@ var AnnouncementItem = function AnnouncementItem(_ref) {
|
|
39121
39177
|
sx: {
|
39122
39178
|
marginBlock: 0
|
39123
39179
|
},
|
39124
|
-
primary: React__default.createElement(material.
|
39180
|
+
primary: React__default.createElement(material.Box, null, React__default.createElement(material.Typography, {
|
39125
39181
|
fontWeight: 600,
|
39126
39182
|
display: "inline-block"
|
39127
39183
|
}, announcementData.name), announcementData.action && React__default.createElement(material.Typography, {
|
39128
39184
|
display: "inline-block",
|
39129
39185
|
px: "4px"
|
39130
|
-
}, announcementData.action + ":"), React__default.createElement(material.
|
39186
|
+
}, announcementData.action + ":"), React__default.createElement(material.Box, {
|
39131
39187
|
display: "inline-block",
|
39188
|
+
sx: {
|
39189
|
+
verticalAlign: "middle"
|
39190
|
+
}
|
39191
|
+
}, React__default.createElement(material.Box, {
|
39132
39192
|
sx: {
|
39133
39193
|
display: "-webkit-box",
|
39134
39194
|
lineClamp: 2,
|
@@ -39138,9 +39198,9 @@ var AnnouncementItem = function AnnouncementItem(_ref) {
|
|
39138
39198
|
overflow: "hidden"
|
39139
39199
|
},
|
39140
39200
|
dangerouslySetInnerHTML: {
|
39141
|
-
__html:
|
39201
|
+
__html: cleanedRichText
|
39142
39202
|
}
|
39143
|
-
})),
|
39203
|
+
}))),
|
39144
39204
|
secondary: React__default.createElement(material.Typography, {
|
39145
39205
|
variant: "caption",
|
39146
39206
|
sx: {
|
@@ -40697,6 +40757,7 @@ exports.VirtualTableView = VirtualTableView;
|
|
40697
40757
|
exports.api = api;
|
40698
40758
|
exports.apiUpload = apiUpload;
|
40699
40759
|
exports.canAccessRoute = canAccess;
|
40760
|
+
exports.cleanRichText = cleanRichText;
|
40700
40761
|
exports.convertHHMMSStoSeconds = convertHHMMSStoSeconds;
|
40701
40762
|
exports.createRecentUserActionListApi = createRecentUserActionListApi;
|
40702
40763
|
exports.diffFromNow = diffFromNow;
|