touchstudy-core 0.1.96 → 0.1.97
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/containers/Classes/components/StudentList.d.ts +1 -1
- package/dist/containers/Classes/hooks/useClassDetail.d.ts +2 -1
- package/dist/containers/Classes/hooks/useLessonClassList.d.ts +1 -1
- package/dist/containers/Textbooks/apiClient/textbookService.d.ts +1 -3
- package/dist/containers/Textbooks/configs/constants.d.ts +1 -12
- package/dist/containers/Textbooks/configs/types.d.ts +0 -25
- package/dist/containers/Textbooks/hooks/useTextbookList.d.ts +0 -1
- package/dist/index.d.ts +2 -4
- package/dist/index.js +39 -545
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +42 -545
- package/dist/index.modern.js.map +1 -1
- package/dist/utils/constants.d.ts +1 -2
- package/package.json +1 -1
package/dist/index.modern.js
CHANGED
@@ -9,7 +9,7 @@ import { useDispatch, useSelector } from 'react-redux';
|
|
9
9
|
import axios from 'axios';
|
10
10
|
import { useTranslation, initReactI18next } from 'react-i18next';
|
11
11
|
export { I18nextProvider, useTranslation } from 'react-i18next';
|
12
|
-
import { Paper, Card, Stack, Box, Typography, TextField, Button, Grid, Dialog, DialogTitle, IconButton, DialogContent, DialogActions, Pagination, styled, useTheme, useMediaQuery, MenuList, Tooltip, tooltipClasses, ClickAwayListener, CircularProgress, FormControl, RadioGroup, FormControlLabel, Radio, FormGroup, FormLabel, Checkbox, InputLabel, Container, Table, TableBody, TableRow, TableCell, TableHead, InputBase,
|
12
|
+
import { Paper, Card, Stack, Box, Typography, TextField, Button, Grid, Dialog, DialogTitle, IconButton, DialogContent, DialogActions, Pagination, styled, useTheme, useMediaQuery, MenuList, Tooltip, tooltipClasses, ClickAwayListener, CircularProgress, FormControl, RadioGroup, FormControlLabel, Radio, FormGroup, FormLabel, Checkbox, InputLabel, Container, Table, TableBody, TableRow, TableCell, TableHead, InputBase, List, ListItem, TableContainer, Chip } from '@mui/material';
|
13
13
|
import { blue } from '@mui/material/colors';
|
14
14
|
import { GoogleReCaptcha, GoogleReCaptchaProvider } from 'react-google-recaptcha-v3';
|
15
15
|
import { gapi } from 'gapi-script';
|
@@ -26,7 +26,7 @@ import MenuItem from '@mui/material/MenuItem';
|
|
26
26
|
import IconButton$1 from '@mui/material/IconButton';
|
27
27
|
import { GoArrowSwitch } from 'react-icons/go';
|
28
28
|
import Select, { components } from 'react-select';
|
29
|
-
import { FaCaretDown, FaTrash, FaPlus, FaSave, FaPencilAlt, FaPlusCircle, FaTimes, FaSortUp, FaSortDown, FaEye,
|
29
|
+
import { FaCaretDown, FaTrash, FaPlus, FaSave, FaPencilAlt, FaPlusCircle, FaTimes, FaSortUp, FaSortDown, FaEye, FaUpload } from 'react-icons/fa';
|
30
30
|
import { PiDotsNineLight } from 'react-icons/pi';
|
31
31
|
import { IoMdArrowBack } from 'react-icons/io';
|
32
32
|
import _ from 'lodash';
|
@@ -114,7 +114,6 @@ var Role;
|
|
114
114
|
Role["Teacher"] = "Teacher";
|
115
115
|
Role["Admin"] = "Admin";
|
116
116
|
Role["AcademyAdmin"] = "AcademyAdmin";
|
117
|
-
Role["AcademyAdminTeacher"] = "AcademyAdminTeacher";
|
118
117
|
})(Role || (Role = {}));
|
119
118
|
var Language;
|
120
119
|
(function (Language) {
|
@@ -2190,7 +2189,6 @@ var are_you_sure_you_want_to_delete_the_article = "정말로 기사를 삭제하
|
|
2190
2189
|
var yes = "예";
|
2191
2190
|
var no = "아니요";
|
2192
2191
|
var cancel = "취소";
|
2193
|
-
var remove = "제거하다";
|
2194
2192
|
var confirmation = "확인";
|
2195
2193
|
var student_name = "학생 이름";
|
2196
2194
|
var full_pool_time = "전체풀이시간";
|
@@ -2800,7 +2798,6 @@ var my_classes = "내 수업";
|
|
2800
2798
|
var choose = "선택하다";
|
2801
2799
|
var additional_duration = "진행중인 시험 시간 추가하기";
|
2802
2800
|
var enter_textbook_name_to_search = "검색할 교재명을 입력하세요";
|
2803
|
-
var enter_teacher_name_to_search = "선생님 이름을 입력하여 검색하세요";
|
2804
2801
|
var select_class_placeholder = "수업을 선택하세요...";
|
2805
2802
|
var user_name = "유저 이름";
|
2806
2803
|
var vulnerable_detail = "다른 학생들의 정답률은 높은데, 나는 정답을 맞추지 못한 문제들입니다.";
|
@@ -2917,8 +2914,6 @@ var view_records = "기록열람";
|
|
2917
2914
|
var delete_action = "삭제";
|
2918
2915
|
var edit_action = "수정";
|
2919
2916
|
var view_action = "열람";
|
2920
|
-
var update_shared_action = "업데이트 권한";
|
2921
|
-
var share_action = "공유하다";
|
2922
2917
|
var de_select = "선택 해제";
|
2923
2918
|
var select_output = "선택 출력";
|
2924
2919
|
var print_pdf = "PDF 인쇄";
|
@@ -2952,15 +2947,6 @@ var manage_users = "사용자 관리";
|
|
2952
2947
|
var manage_classes = "수업 관리";
|
2953
2948
|
var manage_notifications = "알림 관리";
|
2954
2949
|
var late = "늦은";
|
2955
|
-
var authority = "권한";
|
2956
|
-
var share_textbook = "교과서 공유하기";
|
2957
|
-
var notify_share_textbook = {
|
2958
|
-
share_success: "교과서를 성공적으로 공유했습니다!",
|
2959
|
-
share_fail: "교과서도 없고 선생님도 없어요!",
|
2960
|
-
update_success: "공유 교과서가 성공적으로 업데이트되었습니다!",
|
2961
|
-
update_fail: "업데이트 실패!"
|
2962
|
-
};
|
2963
|
-
var academyadminteacher = "아카데미 관리자/선생님";
|
2964
2950
|
var total_student = "총 학생 수";
|
2965
2951
|
var total_teacher = "총 교사 수";
|
2966
2952
|
var total_exam = "총 시험 수";
|
@@ -3018,7 +3004,6 @@ var lang_ko = {
|
|
3018
3004
|
yes: yes,
|
3019
3005
|
no: no,
|
3020
3006
|
cancel: cancel,
|
3021
|
-
remove: remove,
|
3022
3007
|
confirmation: confirmation,
|
3023
3008
|
student_name: student_name,
|
3024
3009
|
full_pool_time: full_pool_time,
|
@@ -3620,7 +3605,6 @@ var lang_ko = {
|
|
3620
3605
|
choose: choose,
|
3621
3606
|
additional_duration: additional_duration,
|
3622
3607
|
enter_textbook_name_to_search: enter_textbook_name_to_search,
|
3623
|
-
enter_teacher_name_to_search: enter_teacher_name_to_search,
|
3624
3608
|
"type_at_least_{number}_characters_to_search": "검색하려면 최소 {{ number }}자를 입력하세요",
|
3625
3609
|
select_class_placeholder: select_class_placeholder,
|
3626
3610
|
user_name: user_name,
|
@@ -3736,8 +3720,6 @@ var lang_ko = {
|
|
3736
3720
|
delete_action: delete_action,
|
3737
3721
|
edit_action: edit_action,
|
3738
3722
|
view_action: view_action,
|
3739
|
-
update_shared_action: update_shared_action,
|
3740
|
-
share_action: share_action,
|
3741
3723
|
de_select: de_select,
|
3742
3724
|
select_output: select_output,
|
3743
3725
|
print_pdf: print_pdf,
|
@@ -3771,10 +3753,6 @@ var lang_ko = {
|
|
3771
3753
|
manage_classes: manage_classes,
|
3772
3754
|
manage_notifications: manage_notifications,
|
3773
3755
|
late: late,
|
3774
|
-
authority: authority,
|
3775
|
-
share_textbook: share_textbook,
|
3776
|
-
notify_share_textbook: notify_share_textbook,
|
3777
|
-
academyadminteacher: academyadminteacher,
|
3778
3756
|
total_student: total_student,
|
3779
3757
|
total_teacher: total_teacher,
|
3780
3758
|
total_exam: total_exam,
|
@@ -3831,7 +3809,6 @@ var are_you_sure_you_want_to_delete_the_article$1 = "Are you sure you want to de
|
|
3831
3809
|
var yes$1 = "Yes";
|
3832
3810
|
var no$1 = "No";
|
3833
3811
|
var cancel$1 = "Cancel";
|
3834
|
-
var remove$1 = "Remove";
|
3835
3812
|
var confirmation$1 = "Confirmation";
|
3836
3813
|
var student_name$1 = "Student name";
|
3837
3814
|
var full_pool_time$1 = "Full pool time";
|
@@ -4094,7 +4071,6 @@ var parent_name$1 = "Parent name";
|
|
4094
4071
|
var users$1 = "Users";
|
4095
4072
|
var new_user$1 = "New user";
|
4096
4073
|
var academy_admin$1 = "Academy Admin";
|
4097
|
-
var academy_admin_teacher = "Academy Admin / Teacher";
|
4098
4074
|
var super_admin$1 = "Super Admin";
|
4099
4075
|
var switch_academy_admin$1 = "Switch Academy Admin";
|
4100
4076
|
var switch_academy$1 = "Switch Academy";
|
@@ -4443,7 +4419,6 @@ var my_classes$1 = "My Classes";
|
|
4443
4419
|
var choose$1 = "Choose";
|
4444
4420
|
var additional_duration$1 = "Additional duration";
|
4445
4421
|
var enter_textbook_name_to_search$1 = "Enter textbook name to search";
|
4446
|
-
var enter_teacher_name_to_search$1 = "Enter teacher name to search";
|
4447
4422
|
var select_class_placeholder$1 = "Select class...";
|
4448
4423
|
var user_name$1 = "User Name";
|
4449
4424
|
var vulnerable_detail$1 = "Other students had a high percentage of correct answers, but I could not answer these questions correctly.";
|
@@ -4560,8 +4535,6 @@ var view_records$1 = "View records";
|
|
4560
4535
|
var delete_action$1 = "Delete";
|
4561
4536
|
var edit_action$1 = "Edit";
|
4562
4537
|
var view_action$1 = "View";
|
4563
|
-
var share_action$1 = "Share";
|
4564
|
-
var update_shared_action$1 = "Update Authority";
|
4565
4538
|
var de_select$1 = "Deselect";
|
4566
4539
|
var select_output$1 = "Select";
|
4567
4540
|
var print_pdf$1 = "Print PDF";
|
@@ -4595,15 +4568,6 @@ var manage_users$1 = "Manage users";
|
|
4595
4568
|
var manage_classes$1 = "Manage classes";
|
4596
4569
|
var manage_notifications$1 = "Manage notifications";
|
4597
4570
|
var late$1 = "Late";
|
4598
|
-
var authority$1 = "Authority";
|
4599
|
-
var share_textbook$1 = "Share textbook";
|
4600
|
-
var notify_share_textbook$1 = {
|
4601
|
-
share_success: "Share textbook successfully!",
|
4602
|
-
share_fail: "Textbook or teacher not exists!",
|
4603
|
-
update_success: "Update shared textbook successfully!",
|
4604
|
-
update_fail: "Update fail!"
|
4605
|
-
};
|
4606
|
-
var academyadminteacher$1 = "AcademyAdmin / Teacher";
|
4607
4571
|
var total_student$1 = "Total Student";
|
4608
4572
|
var total_teacher$1 = "Total Teacher";
|
4609
4573
|
var total_exam$1 = "Total Exam";
|
@@ -4661,7 +4625,6 @@ var lang_en = {
|
|
4661
4625
|
yes: yes$1,
|
4662
4626
|
no: no$1,
|
4663
4627
|
cancel: cancel$1,
|
4664
|
-
remove: remove$1,
|
4665
4628
|
confirmation: confirmation$1,
|
4666
4629
|
student_name: student_name$1,
|
4667
4630
|
full_pool_time: full_pool_time$1,
|
@@ -4921,7 +4884,6 @@ var lang_en = {
|
|
4921
4884
|
users: users$1,
|
4922
4885
|
new_user: new_user$1,
|
4923
4886
|
academy_admin: academy_admin$1,
|
4924
|
-
academy_admin_teacher: academy_admin_teacher,
|
4925
4887
|
super_admin: super_admin$1,
|
4926
4888
|
switch_academy_admin: switch_academy_admin$1,
|
4927
4889
|
switch_academy: switch_academy$1,
|
@@ -5265,7 +5227,6 @@ var lang_en = {
|
|
5265
5227
|
choose: choose$1,
|
5266
5228
|
additional_duration: additional_duration$1,
|
5267
5229
|
enter_textbook_name_to_search: enter_textbook_name_to_search$1,
|
5268
|
-
enter_teacher_name_to_search: enter_teacher_name_to_search$1,
|
5269
5230
|
"type_at_least_{number}_characters_to_search": "Type at least {{ number }} characters to search",
|
5270
5231
|
select_class_placeholder: select_class_placeholder$1,
|
5271
5232
|
user_name: user_name$1,
|
@@ -5381,8 +5342,6 @@ var lang_en = {
|
|
5381
5342
|
delete_action: delete_action$1,
|
5382
5343
|
edit_action: edit_action$1,
|
5383
5344
|
view_action: view_action$1,
|
5384
|
-
share_action: share_action$1,
|
5385
|
-
update_shared_action: update_shared_action$1,
|
5386
5345
|
de_select: de_select$1,
|
5387
5346
|
select_output: select_output$1,
|
5388
5347
|
print_pdf: print_pdf$1,
|
@@ -5416,10 +5375,6 @@ var lang_en = {
|
|
5416
5375
|
manage_classes: manage_classes$1,
|
5417
5376
|
manage_notifications: manage_notifications$1,
|
5418
5377
|
late: late$1,
|
5419
|
-
authority: authority$1,
|
5420
|
-
share_textbook: share_textbook$1,
|
5421
|
-
notify_share_textbook: notify_share_textbook$1,
|
5422
|
-
academyadminteacher: academyadminteacher$1,
|
5423
5378
|
total_student: total_student$1,
|
5424
5379
|
total_teacher: total_teacher$1,
|
5425
5380
|
total_exam: total_exam$1,
|
@@ -7000,13 +6955,11 @@ var formatRole = function formatRole(roles, t) {
|
|
7000
6955
|
if (roles.includes(Role.AcademyAdmin)) return t("academy_admin");
|
7001
6956
|
if (roles.includes(Role.Teacher)) return t("teacher");
|
7002
6957
|
if (roles.includes(Role.Student)) return t("student");
|
7003
|
-
if (roles.includes(Role.AcademyAdminTeacher)) return t("academy_admin_teacher");
|
7004
6958
|
return "";
|
7005
6959
|
};
|
7006
6960
|
var getRole = function getRole(roles) {
|
7007
6961
|
if (roles.includes(Role.Admin)) return Role.Admin;
|
7008
6962
|
if (roles.includes(Role.AcademyAdmin)) return Role.AcademyAdmin;
|
7009
|
-
if (roles.includes(Role.AcademyAdminTeacher)) return Role.AcademyAdminTeacher;
|
7010
6963
|
if (roles.includes(Role.Teacher)) return Role.Teacher;
|
7011
6964
|
if (roles.includes(Role.Student)) return Role.Student;
|
7012
6965
|
return null;
|
@@ -7441,8 +7394,10 @@ var useMessageList = function useMessageList(_ref) {
|
|
7441
7394
|
var _state$common, _state$common$user;
|
7442
7395
|
return (state === null || state === void 0 ? void 0 : (_state$common = state.common) === null || _state$common === void 0 ? void 0 : (_state$common$user = _state$common.user) === null || _state$common$user === void 0 ? void 0 : _state$common$user.roles) || [];
|
7443
7396
|
});
|
7444
|
-
var
|
7445
|
-
var
|
7397
|
+
var isAdmin = roles === null || roles === void 0 ? void 0 : roles.includes(Role.Admin);
|
7398
|
+
var isTeacher = (roles === null || roles === void 0 ? void 0 : roles.includes(Role.Teacher)) && !isAdmin;
|
7399
|
+
var isStudent = !isTeacher && !isAdmin;
|
7400
|
+
var firstRef = useRef(true);
|
7446
7401
|
var getMessageList = function getMessageList(conversationId) {
|
7447
7402
|
try {
|
7448
7403
|
var _temp3 = function _temp3() {
|
@@ -7462,14 +7417,14 @@ var useMessageList = function useMessageList(_ref) {
|
|
7462
7417
|
});
|
7463
7418
|
});
|
7464
7419
|
var _temp = function () {
|
7465
|
-
if (
|
7420
|
+
if (firstRef.current && !isStudent) {
|
7466
7421
|
return Promise.resolve(createRecentUserActionListApi({
|
7467
7422
|
userId: (student === null || student === void 0 ? void 0 : student.id) || 0,
|
7468
7423
|
action: RecentUserAction$1.ViewedQNA,
|
7469
7424
|
data: "" + conversationId,
|
7470
|
-
isAdmin:
|
7425
|
+
isAdmin: false
|
7471
7426
|
})).then(function () {
|
7472
|
-
|
7427
|
+
firstRef.current = false;
|
7473
7428
|
});
|
7474
7429
|
}
|
7475
7430
|
}();
|
@@ -8613,12 +8568,6 @@ var updateTextbookApi = function updateTextbookApi(textbookId, data) {
|
|
8613
8568
|
var deleteTextbookApi = function deleteTextbookApi(textbookId) {
|
8614
8569
|
return api["delete"](TEXTBOOK_URL + "/" + textbookId);
|
8615
8570
|
};
|
8616
|
-
var shareTextbookApi = function shareTextbookApi(textbookId, data) {
|
8617
|
-
return api.post(TEXTBOOK_URL + "/" + textbookId + "/shared-textbook", data);
|
8618
|
-
};
|
8619
|
-
var updateSharedTextbookApi = function updateSharedTextbookApi(textbookId, data) {
|
8620
|
-
return api.put(TEXTBOOK_URL + "/" + textbookId + "/shared-textbook", data);
|
8621
|
-
};
|
8622
8571
|
|
8623
8572
|
var ExamStatus$1;
|
8624
8573
|
(function (ExamStatus) {
|
@@ -8672,13 +8621,6 @@ var TextbookSortBy;
|
|
8672
8621
|
TextbookSortBy["Title"] = "Name";
|
8673
8622
|
TextbookSortBy["SubjectName"] = "Subject.Name";
|
8674
8623
|
})(TextbookSortBy || (TextbookSortBy = {}));
|
8675
|
-
var TeacherSortBy;
|
8676
|
-
(function (TeacherSortBy) {
|
8677
|
-
TeacherSortBy["CreatedAt"] = "CreatedAt";
|
8678
|
-
TeacherSortBy["Name"] = "UserProfile.FullName";
|
8679
|
-
TeacherSortBy["Email"] = "Email";
|
8680
|
-
TeacherSortBy["PhoneNumber"] = "UserProfile.PhoneNumber";
|
8681
|
-
})(TeacherSortBy || (TeacherSortBy = {}));
|
8682
8624
|
var ExamType;
|
8683
8625
|
(function (ExamType) {
|
8684
8626
|
ExamType["Normal"] = "Normal";
|
@@ -8692,12 +8634,6 @@ var ExamStatus$2;
|
|
8692
8634
|
ExamStatus["Completed"] = "Completed";
|
8693
8635
|
})(ExamStatus$2 || (ExamStatus$2 = {}));
|
8694
8636
|
|
8695
|
-
var DefaultTeacherQuery = {
|
8696
|
-
currentPage: 1,
|
8697
|
-
pageSize: 50,
|
8698
|
-
sortColumnDirection: OrderType.DESC,
|
8699
|
-
sortColumnName: TeacherSortBy.Name
|
8700
|
-
};
|
8701
8637
|
var TEXTBOOK_HEADERS = [{
|
8702
8638
|
title: "#"
|
8703
8639
|
}, {
|
@@ -8712,26 +8648,7 @@ var TEXTBOOK_HEADERS = [{
|
|
8712
8648
|
}, {
|
8713
8649
|
title: "total_chapters"
|
8714
8650
|
}, {
|
8715
|
-
title: "
|
8716
|
-
}, {
|
8717
|
-
title: ["edit_action", "view_action", "share_action", "update_shared_action", "delete_action"]
|
8718
|
-
}];
|
8719
|
-
var TEACHER_ACADEMY_HEADERS = [{
|
8720
|
-
title: ""
|
8721
|
-
}, {
|
8722
|
-
title: "#"
|
8723
|
-
}, {
|
8724
|
-
title: "full_name",
|
8725
|
-
sortKey: TeacherSortBy.Name
|
8726
|
-
}, {
|
8727
|
-
title: "email",
|
8728
|
-
sortKey: TeacherSortBy.Email
|
8729
|
-
}, {
|
8730
|
-
title: "phone_number",
|
8731
|
-
sortKey: TeacherSortBy.PhoneNumber
|
8732
|
-
}, {
|
8733
|
-
title: "created_at",
|
8734
|
-
sortKey: TeacherSortBy.CreatedAt
|
8651
|
+
title: ["edit_action", "view_action", "delete_action"]
|
8735
8652
|
}];
|
8736
8653
|
var DEFAULT_ANSWER_COUNT = 5;
|
8737
8654
|
var DEFAULT_EXAM_REQUEST = {
|
@@ -8748,7 +8665,6 @@ var DEFAULT_EXAM_REQUEST = {
|
|
8748
8665
|
};
|
8749
8666
|
var TEXTBOOK_PAGE_TITLE = "textbooks";
|
8750
8667
|
var TEXT_BOOK_SEARCH_PLACEHOLDER = "enter_textbook_name_to_search";
|
8751
|
-
var TEACHER_SEARCH_PLACEHOLDER = "enter_teacher_name_to_search";
|
8752
8668
|
var TextbookDefaultQuery = {
|
8753
8669
|
pageSize: 12,
|
8754
8670
|
currentPage: 1,
|
@@ -11015,7 +10931,9 @@ var useTextbookList = function useTextbookList(props) {
|
|
11015
10931
|
});
|
11016
10932
|
};
|
11017
10933
|
var handleCreateTextbook = function handleCreateTextbook() {
|
11018
|
-
|
10934
|
+
navigate(textbookUrl + "/create", {
|
10935
|
+
replace: true
|
10936
|
+
});
|
11019
10937
|
};
|
11020
10938
|
var toggleConfirmDialog = function toggleConfirmDialog() {
|
11021
10939
|
handleChangeSelectedItem(undefined);
|
@@ -11050,7 +10968,6 @@ var useTextbookList = function useTextbookList(props) {
|
|
11050
10968
|
return {
|
11051
10969
|
filter: filter,
|
11052
10970
|
textSearchRef: textSearchRef,
|
11053
|
-
getData: getData,
|
11054
10971
|
paging: paging,
|
11055
10972
|
textbooks: textbooks,
|
11056
10973
|
selectedTextbook: selectedTextbook,
|
@@ -11172,361 +11089,17 @@ var SearchInput = function SearchInput(_ref) {
|
|
11172
11089
|
}));
|
11173
11090
|
};
|
11174
11091
|
|
11175
|
-
var ShareToTeacherDialog = function ShareToTeacherDialog(_ref) {
|
11176
|
-
var open = _ref.open,
|
11177
|
-
selectedShare = _ref.selectedShare,
|
11178
|
-
textSearchShareRef = _ref.textSearchShareRef,
|
11179
|
-
handleChangeSearchTextShare = _ref.handleChangeSearchTextShare,
|
11180
|
-
numSelectedShare = _ref.numSelectedShare,
|
11181
|
-
isCheckAllShare = _ref.isCheckAllShare,
|
11182
|
-
handleSelectAllClickShare = _ref.handleSelectAllClickShare,
|
11183
|
-
teachers = _ref.teachers,
|
11184
|
-
handleSortShare = _ref.handleSortShare,
|
11185
|
-
filterShare = _ref.filterShare,
|
11186
|
-
pagingShare = _ref.pagingShare,
|
11187
|
-
handleChangePageShare = _ref.handleChangePageShare,
|
11188
|
-
handleShareModel = _ref.handleShareModel,
|
11189
|
-
isSelectedShare = _ref.isSelectedShare,
|
11190
|
-
handleCloseShareDialog = _ref.handleCloseShareDialog,
|
11191
|
-
handleClickCheckboxShare = _ref.handleClickCheckboxShare,
|
11192
|
-
selectedTeacher = _ref.selectedTeacher,
|
11193
|
-
dataId = _ref.dataId,
|
11194
|
-
isUpdate = _ref.isUpdate;
|
11195
|
-
var _useTranslation = useTranslation(),
|
11196
|
-
t = _useTranslation.t;
|
11197
|
-
var theme = useTheme();
|
11198
|
-
return React__default.createElement(Dialog, {
|
11199
|
-
open: open,
|
11200
|
-
maxWidth: "md"
|
11201
|
-
}, React__default.createElement(DialogContent, {
|
11202
|
-
sx: {
|
11203
|
-
overflowY: "unset"
|
11204
|
-
}
|
11205
|
-
}, React__default.createElement(Grid, {
|
11206
|
-
container: true,
|
11207
|
-
spacing: 3,
|
11208
|
-
sx: {
|
11209
|
-
position: "relative",
|
11210
|
-
zIndex: 999999
|
11211
|
-
}
|
11212
|
-
}, selectedShare && React__default.createElement(Grid, {
|
11213
|
-
item: true,
|
11214
|
-
xs: 6,
|
11215
|
-
className: "d-flex mb-3"
|
11216
|
-
}, React__default.createElement(SearchInput, {
|
11217
|
-
placeholder: t(TEACHER_SEARCH_PLACEHOLDER),
|
11218
|
-
textSearchRef: textSearchShareRef,
|
11219
|
-
onChange: handleChangeSearchTextShare
|
11220
|
-
})), React__default.createElement(Grid, {
|
11221
|
-
item: true,
|
11222
|
-
xs: 12
|
11223
|
-
}, React__default.createElement(TableContainer, {
|
11224
|
-
sx: {
|
11225
|
-
maxHeight: "50vh"
|
11226
|
-
}
|
11227
|
-
}, React__default.createElement(Table, {
|
11228
|
-
stickyHeader: true
|
11229
|
-
}, React__default.createElement(TableHead, null, React__default.createElement(TableRow, null, selectedShare && React__default.createElement(TableCell, {
|
11230
|
-
padding: "checkbox"
|
11231
|
-
}, React__default.createElement(Checkbox, {
|
11232
|
-
color: "primary",
|
11233
|
-
checked: numSelectedShare > 0 && isCheckAllShare(teachers.length),
|
11234
|
-
onChange: handleSelectAllClickShare
|
11235
|
-
})), TEACHER_ACADEMY_HEADERS.map(function (i, index) {
|
11236
|
-
return selectedShare && index === 0 ? null : React__default.createElement(TableCell, {
|
11237
|
-
key: index,
|
11238
|
-
onClick: !!i.sortKey ? function () {
|
11239
|
-
return handleSortShare(i.sortKey);
|
11240
|
-
} : undefined,
|
11241
|
-
className: "" + (!!i.sortKey && "pointer")
|
11242
|
-
}, React__default.createElement("div", {
|
11243
|
-
className: "d-flex justify-content-between align-items-center text-nowrap"
|
11244
|
-
}, t(i.title), !!i.sortKey && selectedShare && React__default.createElement(SortIcon, {
|
11245
|
-
isAscending: filterShare.sortColumnName !== i.sortKey ? undefined : filterShare.sortColumnDirection === OrderType.ASC
|
11246
|
-
})));
|
11247
|
-
}))), React__default.createElement(TableBody, null, selectedTeacher ? React__default.createElement(TableRow, null, React__default.createElement(TableCell, null, selectedTeacher === null || selectedTeacher === void 0 ? void 0 : selectedTeacher.teacherName), React__default.createElement(TableCell, null, selectedTeacher === null || selectedTeacher === void 0 ? void 0 : selectedTeacher.teacherEmail), React__default.createElement(TableCell, null, selectedTeacher === null || selectedTeacher === void 0 ? void 0 : selectedTeacher.phoneNumber), React__default.createElement(TableCell, null, utcToLocalTime(selectedTeacher === null || selectedTeacher === void 0 ? void 0 : selectedTeacher.createdAt, t("date_time_format")))) : teachers.map(function (i, index) {
|
11248
|
-
var isItemSelected = isSelectedShare(i.id);
|
11249
|
-
return React__default.createElement(TableRow, {
|
11250
|
-
key: i.id
|
11251
|
-
}, React__default.createElement(TableCell, {
|
11252
|
-
padding: "checkbox"
|
11253
|
-
}, React__default.createElement(Checkbox, {
|
11254
|
-
onClick: function onClick() {
|
11255
|
-
return handleClickCheckboxShare(i.id);
|
11256
|
-
},
|
11257
|
-
color: "primary",
|
11258
|
-
checked: isItemSelected
|
11259
|
-
})), React__default.createElement(TableCell, null, (pagingShare.page - 1) * pagingShare.limit + index + 1), React__default.createElement(TableCell, null, i.teacherName), React__default.createElement(TableCell, null, i.teacherEmail), React__default.createElement(TableCell, null, i.phoneNumber), React__default.createElement(TableCell, null, utcToLocalTime(i.createdAt, t("date_time_format"))));
|
11260
|
-
}), !selectedShare && !teachers.length && React__default.createElement(TableRow, null, React__default.createElement(TableCell, {
|
11261
|
-
colSpan: 12,
|
11262
|
-
className: "text-center text-muted"
|
11263
|
-
}, t("no_data")))))), React__default.createElement("div", {
|
11264
|
-
className: "d-flex justify-content-end mt-4"
|
11265
|
-
}, !!pagingShare.totalPages && !selectedShare && React__default.createElement(Pagination, {
|
11266
|
-
count: pagingShare.totalPages,
|
11267
|
-
page: pagingShare.page,
|
11268
|
-
onChange: handleChangePageShare
|
11269
|
-
}))))), React__default.createElement(DialogActions, null, React__default.createElement(Stack, {
|
11270
|
-
direction: "row",
|
11271
|
-
spacing: 2,
|
11272
|
-
p: 2,
|
11273
|
-
pt: 0,
|
11274
|
-
justifyContent: "end"
|
11275
|
-
}, React__default.createElement(Button, {
|
11276
|
-
color: "primary",
|
11277
|
-
variant: "contained",
|
11278
|
-
type: "submit",
|
11279
|
-
disabled: selectedShare.length === 0 && numSelectedShare === 0,
|
11280
|
-
onClick: function onClick() {
|
11281
|
-
return handleShareModel(selectedShare, dataId);
|
11282
|
-
}
|
11283
|
-
}, !isUpdate ? t("submit") : t("remove")), React__default.createElement(Button, {
|
11284
|
-
sx: {
|
11285
|
-
bgcolor: theme.palette.grey[700]
|
11286
|
-
},
|
11287
|
-
color: "secondary",
|
11288
|
-
variant: "contained",
|
11289
|
-
onClick: handleCloseShareDialog
|
11290
|
-
}, t("cancel")))));
|
11291
|
-
};
|
11292
|
-
|
11293
|
-
var TEACHER_URL = BASE_URL + "/api/teacher";
|
11294
|
-
var getTeacherListApi = function getTeacherListApi(query) {
|
11295
|
-
return api.get("" + TEACHER_URL, {
|
11296
|
-
params: query
|
11297
|
-
});
|
11298
|
-
};
|
11299
|
-
|
11300
|
-
var useTextbookShare = function useTextbookShare(props) {
|
11301
|
-
var getData = props.getData;
|
11302
|
-
var _useList = useList(function (search) {
|
11303
|
-
return getTeacherListApi(search);
|
11304
|
-
}, DefaultTeacherQuery),
|
11305
|
-
filterShare = _useList.filter,
|
11306
|
-
textSearchShareRef = _useList.textSearchRef,
|
11307
|
-
pagingShare = _useList.paging,
|
11308
|
-
selectedTeacher = _useList.selectedItem,
|
11309
|
-
teachers = _useList.data,
|
11310
|
-
handleSortShare = _useList.handleSort,
|
11311
|
-
handleChangeSearchTextShare = _useList.handleChangeSearchText,
|
11312
|
-
handleChangePageShare = _useList.handleChangePage;
|
11313
|
-
var _useState = useState([]),
|
11314
|
-
selectedShare = _useState[0],
|
11315
|
-
setSelectedShare = _useState[1];
|
11316
|
-
var _useState2 = useState([]),
|
11317
|
-
notShared = _useState2[0],
|
11318
|
-
setNotShared = _useState2[1];
|
11319
|
-
var _useState3 = useState([]),
|
11320
|
-
shared = _useState3[0],
|
11321
|
-
setShared = _useState3[1];
|
11322
|
-
var _useState4 = useState(false),
|
11323
|
-
isUpdate = _useState4[0],
|
11324
|
-
setIsUpdate = _useState4[1];
|
11325
|
-
var _useState5 = useState(),
|
11326
|
-
currentModel = _useState5[0],
|
11327
|
-
setCurrentModel = _useState5[1];
|
11328
|
-
var isSelectedShare = function isSelectedShare(id) {
|
11329
|
-
return selectedShare.indexOf(id) !== -1;
|
11330
|
-
};
|
11331
|
-
var _useState6 = useState(false),
|
11332
|
-
openShareDialog = _useState6[0],
|
11333
|
-
setOpenShareDialog = _useState6[1];
|
11334
|
-
var _useTranslation = useTranslation(),
|
11335
|
-
t = _useTranslation.t;
|
11336
|
-
var dispatch = useDispatch();
|
11337
|
-
var infoUser = useSelector(function (state) {
|
11338
|
-
var _state$common;
|
11339
|
-
return (state === null || state === void 0 ? void 0 : (_state$common = state.common) === null || _state$common === void 0 ? void 0 : _state$common.user) || {};
|
11340
|
-
});
|
11341
|
-
useEffect(function () {
|
11342
|
-
if (!isUpdate) {
|
11343
|
-
filterTeacherNotShared(currentModel);
|
11344
|
-
} else {
|
11345
|
-
filterTeacherShared(currentModel);
|
11346
|
-
}
|
11347
|
-
}, [teachers, isUpdate]);
|
11348
|
-
var handleOpenShareDialog = function handleOpenShareDialog(textbook) {
|
11349
|
-
setIsUpdate(false);
|
11350
|
-
setOpenShareDialog(true);
|
11351
|
-
setCurrentModel(textbook);
|
11352
|
-
filterTeacherNotShared(textbook);
|
11353
|
-
};
|
11354
|
-
var filterTeacherNotShared = function filterTeacherNotShared(textbook) {
|
11355
|
-
var sharedTeacherTextbook = textbook === null || textbook === void 0 ? void 0 : textbook.sharedUsers;
|
11356
|
-
var teacherNotShared = teachers.filter(function (teacher) {
|
11357
|
-
return !(sharedTeacherTextbook !== null && sharedTeacherTextbook !== void 0 && sharedTeacherTextbook.includes(teacher.teacherEmail.trim().toUpperCase())) && teacher.teacherEmail.trim().toUpperCase() != (textbook === null || textbook === void 0 ? void 0 : textbook.createdBy.email.trim().toUpperCase());
|
11358
|
-
});
|
11359
|
-
setNotShared(teacherNotShared);
|
11360
|
-
};
|
11361
|
-
var filterTeacherShared = function filterTeacherShared(textbook) {
|
11362
|
-
var sharedTeacherTextbook = textbook === null || textbook === void 0 ? void 0 : textbook.sharedUsers;
|
11363
|
-
var teacherShared = teachers.filter(function (teacher) {
|
11364
|
-
return (sharedTeacherTextbook === null || sharedTeacherTextbook === void 0 ? void 0 : sharedTeacherTextbook.includes(teacher.teacherEmail.trim().toUpperCase())) && teacher.teacherEmail.trim().toUpperCase() != (textbook === null || textbook === void 0 ? void 0 : textbook.createdBy.email.trim().toUpperCase());
|
11365
|
-
});
|
11366
|
-
setShared(teacherShared);
|
11367
|
-
};
|
11368
|
-
var handleCloseShareDialog = function handleCloseShareDialog() {
|
11369
|
-
setOpenShareDialog(false);
|
11370
|
-
setSelectedShare([]);
|
11371
|
-
};
|
11372
|
-
var handleOpenUpdateShareDialog = function handleOpenUpdateShareDialog(textbook) {
|
11373
|
-
setIsUpdate(true);
|
11374
|
-
setOpenShareDialog(true);
|
11375
|
-
setCurrentModel(textbook);
|
11376
|
-
filterTeacherShared(textbook);
|
11377
|
-
};
|
11378
|
-
var handleSelectAllClickShare = function handleSelectAllClickShare(event) {
|
11379
|
-
var newSelected = isUpdate ? shared.map(function (n) {
|
11380
|
-
return n.id;
|
11381
|
-
}) : notShared.map(function (n) {
|
11382
|
-
return n.id;
|
11383
|
-
});
|
11384
|
-
if (event.target.checked) {
|
11385
|
-
setSelectedShare(function (prev) {
|
11386
|
-
return _.uniq([].concat(prev, newSelected));
|
11387
|
-
});
|
11388
|
-
return;
|
11389
|
-
}
|
11390
|
-
setSelectedShare(_.difference(selectedShare, newSelected));
|
11391
|
-
};
|
11392
|
-
var isCheckAllShare = function isCheckAllShare(userLength) {
|
11393
|
-
var newSelected = isUpdate ? shared.map(function (n) {
|
11394
|
-
return n.id;
|
11395
|
-
}) : notShared.map(function (n) {
|
11396
|
-
return n.id;
|
11397
|
-
});
|
11398
|
-
var checkLength = _.intersection(selectedShare, newSelected).length;
|
11399
|
-
return checkLength === userLength;
|
11400
|
-
};
|
11401
|
-
var handleClickCheckboxShare = function handleClickCheckboxShare(id) {
|
11402
|
-
var selectedIndex = selectedShare.indexOf(id);
|
11403
|
-
var newSelected = [];
|
11404
|
-
if (selectedIndex === -1) {
|
11405
|
-
newSelected = newSelected.concat(selectedShare, id);
|
11406
|
-
} else if (selectedIndex === 0) {
|
11407
|
-
newSelected = newSelected.concat(selectedShare.slice(1));
|
11408
|
-
} else if (selectedIndex === selectedShare.length - 1) {
|
11409
|
-
newSelected = newSelected.concat(selectedShare.slice(0, -1));
|
11410
|
-
} else if (selectedIndex > 0) {
|
11411
|
-
newSelected = newSelected.concat(selectedShare.slice(0, selectedIndex), selectedShare.slice(selectedIndex + 1));
|
11412
|
-
}
|
11413
|
-
setSelectedShare(newSelected);
|
11414
|
-
};
|
11415
|
-
var updateTeacherNotShared = function updateTeacherNotShared(teacherIds) {
|
11416
|
-
var removeTeachers = notShared.filter(function (teacher) {
|
11417
|
-
return !teacherIds.includes(teacher.id);
|
11418
|
-
});
|
11419
|
-
setNotShared(removeTeachers);
|
11420
|
-
};
|
11421
|
-
var updateTeacherShared = function updateTeacherShared(teacherIds) {
|
11422
|
-
var existsTeachers = shared.filter(function (teacher) {
|
11423
|
-
return !teacherIds.includes(teacher.id);
|
11424
|
-
});
|
11425
|
-
setShared(existsTeachers);
|
11426
|
-
};
|
11427
|
-
var handleDisableShare = function handleDisableShare(textbook) {
|
11428
|
-
return !textbook.isShared || textbook.sharedUsers.map(function (item) {
|
11429
|
-
return item.trim();
|
11430
|
-
}).filter(function (item) {
|
11431
|
-
return item !== "";
|
11432
|
-
}).includes(infoUser.email || "");
|
11433
|
-
};
|
11434
|
-
var handleShareTextbook = function handleShareTextbook(teacherIds, textbookId) {
|
11435
|
-
try {
|
11436
|
-
var _temp2 = function _temp2() {
|
11437
|
-
dispatch(setLoading(false));
|
11438
|
-
setSelectedShare([]);
|
11439
|
-
setOpenShareDialog(false);
|
11440
|
-
};
|
11441
|
-
dispatch(setLoading(true));
|
11442
|
-
var _temp = _catch(function () {
|
11443
|
-
return Promise.resolve(shareTextbookApi(textbookId, {
|
11444
|
-
teacherIds: teacherIds
|
11445
|
-
})).then(function () {
|
11446
|
-
updateTeacherNotShared(teacherIds);
|
11447
|
-
setSelectedShare([]);
|
11448
|
-
return Promise.resolve(getData(false)).then(function () {
|
11449
|
-
toast.success(t("notify_share_textbook.share_success"));
|
11450
|
-
});
|
11451
|
-
});
|
11452
|
-
}, function (error) {
|
11453
|
-
toast.error(getErrorMessage(t, error, t("notify_share_textbook.share_fail")));
|
11454
|
-
});
|
11455
|
-
return Promise.resolve(_temp && _temp.then ? _temp.then(_temp2) : _temp2(_temp));
|
11456
|
-
} catch (e) {
|
11457
|
-
return Promise.reject(e);
|
11458
|
-
}
|
11459
|
-
};
|
11460
|
-
var handleUpdateSharedTextbook = function handleUpdateSharedTextbook(teacherIds, textbookId) {
|
11461
|
-
try {
|
11462
|
-
var _temp4 = function _temp4() {
|
11463
|
-
dispatch(setLoading(false));
|
11464
|
-
setSelectedShare([]);
|
11465
|
-
setOpenShareDialog(false);
|
11466
|
-
};
|
11467
|
-
dispatch(setLoading(true));
|
11468
|
-
var _temp3 = _catch(function () {
|
11469
|
-
return Promise.resolve(updateSharedTextbookApi(textbookId, {
|
11470
|
-
teacherIds: teacherIds
|
11471
|
-
})).then(function () {
|
11472
|
-
updateTeacherShared(teacherIds);
|
11473
|
-
setSelectedShare([]);
|
11474
|
-
return Promise.resolve(getData(false)).then(function () {
|
11475
|
-
toast.success(t("notify_share_textbook.update_success"));
|
11476
|
-
});
|
11477
|
-
});
|
11478
|
-
}, function (error) {
|
11479
|
-
toast.error(getErrorMessage(t, error, t("notify_share_textbook.update_fail")));
|
11480
|
-
});
|
11481
|
-
return Promise.resolve(_temp3 && _temp3.then ? _temp3.then(_temp4) : _temp4(_temp3));
|
11482
|
-
} catch (e) {
|
11483
|
-
return Promise.reject(e);
|
11484
|
-
}
|
11485
|
-
};
|
11486
|
-
return {
|
11487
|
-
filterShare: filterShare,
|
11488
|
-
textSearchShareRef: textSearchShareRef,
|
11489
|
-
pagingShare: pagingShare,
|
11490
|
-
selectedShare: selectedShare,
|
11491
|
-
handleSortShare: handleSortShare,
|
11492
|
-
handleChangeSearchTextShare: handleChangeSearchTextShare,
|
11493
|
-
handleChangePageShare: handleChangePageShare,
|
11494
|
-
numSelectedShare: selectedShare.length,
|
11495
|
-
handleShareTextbook: handleShareTextbook,
|
11496
|
-
isSelectedShare: isSelectedShare,
|
11497
|
-
handleOpenShareDialog: handleOpenShareDialog,
|
11498
|
-
handleCloseShareDialog: handleCloseShareDialog,
|
11499
|
-
openShareDialog: openShareDialog,
|
11500
|
-
isCheckAllShare: isCheckAllShare,
|
11501
|
-
handleClickCheckboxShare: handleClickCheckboxShare,
|
11502
|
-
handleSelectAllClickShare: handleSelectAllClickShare,
|
11503
|
-
notShared: notShared,
|
11504
|
-
shared: shared,
|
11505
|
-
selectedTeacher: selectedTeacher,
|
11506
|
-
handleOpenUpdateShareDialog: handleOpenUpdateShareDialog,
|
11507
|
-
isUpdate: isUpdate,
|
11508
|
-
handleUpdateSharedTextbook: handleUpdateSharedTextbook,
|
11509
|
-
handleDisableShare: handleDisableShare,
|
11510
|
-
currentModel: currentModel
|
11511
|
-
};
|
11512
|
-
};
|
11513
|
-
|
11514
11092
|
var TextbookList = function TextbookList(props) {
|
11515
11093
|
var _useTranslation = useTranslation(),
|
11516
11094
|
t = _useTranslation.t;
|
11517
|
-
var isAdmin = useSelector(function (state) {
|
11518
|
-
var _state$common, _state$common$user, _state$common$user$ro;
|
11519
|
-
return state === null || state === void 0 ? void 0 : (_state$common = state.common) === null || _state$common === void 0 ? void 0 : (_state$common$user = _state$common.user) === null || _state$common$user === void 0 ? void 0 : (_state$common$user$ro = _state$common$user.roles) === null || _state$common$user$ro === void 0 ? void 0 : _state$common$user$ro.includes(Role.Admin);
|
11520
|
-
});
|
11521
11095
|
var _useTextbookList = useTextbookList(props),
|
11522
11096
|
filter = _useTextbookList.filter,
|
11523
11097
|
textbooks = _useTextbookList.textbooks,
|
11524
11098
|
paging = _useTextbookList.paging,
|
11525
|
-
getData = _useTextbookList.getData,
|
11526
11099
|
textSearchRef = _useTextbookList.textSearchRef,
|
11100
|
+
selectedTextbook = _useTextbookList.selectedTextbook,
|
11527
11101
|
handleChangeSearchText = _useTextbookList.handleChangeSearchText,
|
11528
11102
|
handleSort = _useTextbookList.handleSort,
|
11529
|
-
selectedTextbook = _useTextbookList.selectedTextbook,
|
11530
11103
|
handleChangePage = _useTextbookList.handleChangePage,
|
11531
11104
|
calcOrderNumber = _useTextbookList.calcOrderNumber,
|
11532
11105
|
handleViewTextbook = _useTextbookList.handleViewTextbook,
|
@@ -11535,33 +11108,6 @@ var TextbookList = function TextbookList(props) {
|
|
11535
11108
|
toggleConfirmDialog = _useTextbookList.toggleConfirmDialog,
|
11536
11109
|
handleDeleteTextbook = _useTextbookList.handleDeleteTextbook,
|
11537
11110
|
handleSelectDeleteTextbook = _useTextbookList.handleSelectDeleteTextbook;
|
11538
|
-
var _useTextbookShare = useTextbookShare(_extends({}, props, {
|
11539
|
-
getData: getData
|
11540
|
-
})),
|
11541
|
-
filterShare = _useTextbookShare.filterShare,
|
11542
|
-
textSearchShareRef = _useTextbookShare.textSearchShareRef,
|
11543
|
-
pagingShare = _useTextbookShare.pagingShare,
|
11544
|
-
selectedShare = _useTextbookShare.selectedShare,
|
11545
|
-
handleSortShare = _useTextbookShare.handleSortShare,
|
11546
|
-
handleChangeSearchTextShare = _useTextbookShare.handleChangeSearchTextShare,
|
11547
|
-
handleChangePageShare = _useTextbookShare.handleChangePageShare,
|
11548
|
-
numSelectedShare = _useTextbookShare.numSelectedShare,
|
11549
|
-
handleShareTextbook = _useTextbookShare.handleShareTextbook,
|
11550
|
-
isSelectedShare = _useTextbookShare.isSelectedShare,
|
11551
|
-
handleOpenShareDialog = _useTextbookShare.handleOpenShareDialog,
|
11552
|
-
handleCloseShareDialog = _useTextbookShare.handleCloseShareDialog,
|
11553
|
-
openShareDialog = _useTextbookShare.openShareDialog,
|
11554
|
-
isCheckAllShare = _useTextbookShare.isCheckAllShare,
|
11555
|
-
handleClickCheckboxShare = _useTextbookShare.handleClickCheckboxShare,
|
11556
|
-
handleSelectAllClickShare = _useTextbookShare.handleSelectAllClickShare,
|
11557
|
-
notShared = _useTextbookShare.notShared,
|
11558
|
-
shared = _useTextbookShare.shared,
|
11559
|
-
selectedTeacher = _useTextbookShare.selectedTeacher,
|
11560
|
-
handleOpenUpdateShareDialog = _useTextbookShare.handleOpenUpdateShareDialog,
|
11561
|
-
isUpdate = _useTextbookShare.isUpdate,
|
11562
|
-
handleUpdateSharedTextbook = _useTextbookShare.handleUpdateSharedTextbook,
|
11563
|
-
handleDisableShare = _useTextbookShare.handleDisableShare,
|
11564
|
-
currentModel = _useTextbookShare.currentModel;
|
11565
11111
|
return React__default.createElement(LayoutList, {
|
11566
11112
|
title: t(TEXTBOOK_PAGE_TITLE)
|
11567
11113
|
}, React__default.createElement(Grid, {
|
@@ -11577,21 +11123,14 @@ var TextbookList = function TextbookList(props) {
|
|
11577
11123
|
item: true,
|
11578
11124
|
xs: 6
|
11579
11125
|
}, React__default.createElement(Stack, {
|
11580
|
-
alignItems: "end"
|
11581
|
-
direction: "row",
|
11582
|
-
sx: {
|
11583
|
-
justifyContent: "flex-end"
|
11584
|
-
},
|
11585
|
-
spacing: 2
|
11126
|
+
alignItems: "end"
|
11586
11127
|
}, React__default.createElement(Button, {
|
11587
11128
|
startIcon: React__default.createElement(FaPlus, {
|
11588
11129
|
size: 12
|
11589
11130
|
}),
|
11590
11131
|
variant: "contained",
|
11591
11132
|
color: "primary",
|
11592
|
-
onClick: handleCreateTextbook
|
11593
|
-
disabled: isAdmin,
|
11594
|
-
className: (!isAdmin ? "bg-success" : "bg-secondary") + " text-white"
|
11133
|
+
onClick: handleCreateTextbook
|
11595
11134
|
}, t("create_textbook")))), React__default.createElement(Grid, {
|
11596
11135
|
item: true,
|
11597
11136
|
xs: 12,
|
@@ -11603,11 +11142,7 @@ var TextbookList = function TextbookList(props) {
|
|
11603
11142
|
}), React__default.createElement(TableBody, null, textbooks.map(function (i, index) {
|
11604
11143
|
return React__default.createElement(TableRow, {
|
11605
11144
|
key: i.id
|
11606
|
-
}, React__default.createElement(TableCell, null, calcOrderNumber(index)), React__default.createElement(TableCell, null, i.name), React__default.createElement(TableCell, null, i.subject.name), React__default.createElement(TableCell, null, utcToLocalTime(i.createdAt, t("date_format"))), React__default.createElement(TableCell, null, i.totalChapters), React__default.createElement(TableCell, null,
|
11607
|
-
return index > 2 ? null : index === 2 ? React__default.createElement("div", null, "(+", i.sharedUsers.length - 2, ")") : React__default.createElement("div", {
|
11608
|
-
key: index
|
11609
|
-
}, email.toLowerCase());
|
11610
|
-
})), React__default.createElement(TableCell, null, React__default.createElement(Stack, {
|
11145
|
+
}, React__default.createElement(TableCell, null, calcOrderNumber(index)), React__default.createElement(TableCell, null, i.name), React__default.createElement(TableCell, null, i.subject.name), React__default.createElement(TableCell, null, utcToLocalTime(i.createdAt, t("date_format"))), React__default.createElement(TableCell, null, i.totalChapters), React__default.createElement(TableCell, null, React__default.createElement(Stack, {
|
11611
11146
|
direction: "row",
|
11612
11147
|
spacing: 1,
|
11613
11148
|
alignItems: "center"
|
@@ -11628,25 +11163,9 @@ var TextbookList = function TextbookList(props) {
|
|
11628
11163
|
}
|
11629
11164
|
}, React__default.createElement(FaEye, {
|
11630
11165
|
size: 12
|
11631
|
-
})), React__default.createElement(IconButton, {
|
11632
|
-
disabled: handleDisableShare(i) || isAdmin,
|
11633
|
-
className: (handleDisableShare(i) || isAdmin ? "bg-secondary" : "bg-info") + " text-white me-1",
|
11634
|
-
onClick: function onClick() {
|
11635
|
-
return handleOpenShareDialog(i);
|
11636
|
-
}
|
11637
|
-
}, React__default.createElement(FaShare, {
|
11638
|
-
size: 12
|
11639
|
-
})), React__default.createElement(IconButton, {
|
11640
|
-
disabled: handleDisableShare(i) || isAdmin,
|
11641
|
-
className: (handleDisableShare(i) || isAdmin ? "bg-secondary" : "bg-success") + " text-white me-1",
|
11642
|
-
onClick: function onClick() {
|
11643
|
-
return handleOpenUpdateShareDialog(i);
|
11644
|
-
}
|
11645
|
-
}, React__default.createElement(FaExchangeAlt, {
|
11646
|
-
size: 12
|
11647
11166
|
})), React__default.createElement(IconButton, {
|
11648
11167
|
color: "default",
|
11649
|
-
className: (i.isCreatedByAdmin ? "bg-secondary" : "bg-danger") + " text-white
|
11168
|
+
className: (i.isCreatedByAdmin ? "bg-secondary" : "bg-danger") + " text-white",
|
11650
11169
|
onClick: function onClick() {
|
11651
11170
|
return handleSelectDeleteTextbook(i);
|
11652
11171
|
},
|
@@ -11667,26 +11186,6 @@ var TextbookList = function TextbookList(props) {
|
|
11667
11186
|
onConfirm: handleDeleteTextbook,
|
11668
11187
|
confirmText: selectedTextbook === null || selectedTextbook === void 0 ? void 0 : selectedTextbook.name,
|
11669
11188
|
isDelete: true
|
11670
|
-
}), !!currentModel && React__default.createElement(ShareToTeacherDialog, {
|
11671
|
-
open: openShareDialog,
|
11672
|
-
selectedShare: selectedShare,
|
11673
|
-
textSearchShareRef: textSearchShareRef,
|
11674
|
-
handleChangeSearchTextShare: handleChangeSearchTextShare,
|
11675
|
-
numSelectedShare: numSelectedShare,
|
11676
|
-
isCheckAllShare: isCheckAllShare,
|
11677
|
-
handleSelectAllClickShare: handleSelectAllClickShare,
|
11678
|
-
teachers: !isUpdate ? notShared : shared,
|
11679
|
-
filterShare: filterShare,
|
11680
|
-
pagingShare: pagingShare,
|
11681
|
-
handleSortShare: handleSortShare,
|
11682
|
-
handleChangePageShare: handleChangePageShare,
|
11683
|
-
handleShareModel: !isUpdate ? handleShareTextbook : handleUpdateSharedTextbook,
|
11684
|
-
isSelectedShare: isSelectedShare,
|
11685
|
-
handleCloseShareDialog: handleCloseShareDialog,
|
11686
|
-
handleClickCheckboxShare: handleClickCheckboxShare,
|
11687
|
-
selectedTeacher: selectedTeacher,
|
11688
|
-
dataId: currentModel.id,
|
11689
|
-
isUpdate: isUpdate
|
11690
11189
|
}));
|
11691
11190
|
};
|
11692
11191
|
|
@@ -16948,7 +16447,6 @@ var singleLogo = function singleLogo(_ref) {
|
|
16948
16447
|
};
|
16949
16448
|
|
16950
16449
|
var Header = function Header(_ref) {
|
16951
|
-
var _user$roles;
|
16952
16450
|
var academyListRoute = _ref.academyListRoute,
|
16953
16451
|
homeRoute = _ref.homeRoute,
|
16954
16452
|
registerRoute = _ref.registerRoute,
|
@@ -16960,27 +16458,24 @@ var Header = function Header(_ref) {
|
|
16960
16458
|
t = _useTranslation.t;
|
16961
16459
|
var location = useLocation();
|
16962
16460
|
var theme = useTheme();
|
16963
|
-
var
|
16964
|
-
var _state$common;
|
16965
|
-
return state === null || state === void 0 ? void 0 : (_state$common = state.common) === null || _state$common === void 0 ? void 0 : _state$common.user;
|
16966
|
-
});
|
16461
|
+
var param = window.location.pathname;
|
16967
16462
|
var language = useSelector(function (state) {
|
16968
|
-
var _state$
|
16969
|
-
return state === null || state === void 0 ? void 0 : (_state$
|
16463
|
+
var _state$common;
|
16464
|
+
return state === null || state === void 0 ? void 0 : (_state$common = state.common) === null || _state$common === void 0 ? void 0 : _state$common.language;
|
16970
16465
|
});
|
16971
|
-
var
|
16466
|
+
var isTeacherSide = param.includes('teacher');
|
16972
16467
|
var isLargerThanXL = useMediaQuery(theme.breakpoints.up("xl"));
|
16973
16468
|
var academyDomain = useSelector(function (state) {
|
16974
|
-
var _state$
|
16975
|
-
return state === null || state === void 0 ? void 0 : (_state$
|
16469
|
+
var _state$common2, _state$common2$user;
|
16470
|
+
return state === null || state === void 0 ? void 0 : (_state$common2 = state.common) === null || _state$common2 === void 0 ? void 0 : (_state$common2$user = _state$common2.user) === null || _state$common2$user === void 0 ? void 0 : _state$common2$user.academyDomain;
|
16976
16471
|
});
|
16977
16472
|
var logo = useMemo(function () {
|
16978
|
-
if (
|
16473
|
+
if (isTeacherSide) {
|
16979
16474
|
return language === Language.en ? React__default.createElement(teacherFullLogoEn, null) : React__default.createElement(teacherFullLogoKo, null);
|
16980
16475
|
} else {
|
16981
16476
|
return language === Language.en ? React__default.createElement(studentFullLogoEn, null) : React__default.createElement(studentFullLogoKo, null);
|
16982
16477
|
}
|
16983
|
-
}, [
|
16478
|
+
}, [isTeacherSide, language]);
|
16984
16479
|
var pathname = location.pathname.toLowerCase();
|
16985
16480
|
return React__default.createElement(Stack, {
|
16986
16481
|
width: "100%",
|
@@ -18171,11 +17666,11 @@ var DayOfWeek;
|
|
18171
17666
|
DayOfWeek[DayOfWeek["Friday"] = 5] = "Friday";
|
18172
17667
|
DayOfWeek[DayOfWeek["Saturday"] = 6] = "Saturday";
|
18173
17668
|
})(DayOfWeek || (DayOfWeek = {}));
|
18174
|
-
var TeacherSortBy
|
17669
|
+
var TeacherSortBy;
|
18175
17670
|
(function (TeacherSortBy) {
|
18176
17671
|
TeacherSortBy["Name"] = "UserProfile.FullName";
|
18177
17672
|
TeacherSortBy["Email"] = "UserProfile.Email";
|
18178
|
-
})(TeacherSortBy
|
17673
|
+
})(TeacherSortBy || (TeacherSortBy = {}));
|
18179
17674
|
var ClassStatus;
|
18180
17675
|
(function (ClassStatus) {
|
18181
17676
|
ClassStatus["Default"] = "Default";
|
@@ -18279,7 +17774,7 @@ var DefaultTeacherFilter = {
|
|
18279
17774
|
currentPage: 1,
|
18280
17775
|
pageSize: 50,
|
18281
17776
|
sortColumnDirection: OrderBy$2.DESC,
|
18282
|
-
sortColumnName: TeacherSortBy
|
17777
|
+
sortColumnName: TeacherSortBy.Name,
|
18283
17778
|
textSearch: ""
|
18284
17779
|
};
|
18285
17780
|
var DEFAULT_CLASS_REQUEST = {
|
@@ -19165,7 +18660,7 @@ var StudentList = function StudentList(_ref) {
|
|
19165
18660
|
selectedStudent = _ref.selectedStudent,
|
19166
18661
|
t = _ref.t,
|
19167
18662
|
textSearchRef = _ref.textSearchRef,
|
19168
|
-
|
18663
|
+
disabled = _ref.disabled,
|
19169
18664
|
handleOpenDeleteClassDialog = _ref.handleOpenDeleteClassDialog,
|
19170
18665
|
handleCloseConfirmDialog = _ref.handleCloseConfirmDialog,
|
19171
18666
|
handleSort = _ref.handleSort,
|
@@ -19225,7 +18720,7 @@ var StudentList = function StudentList(_ref) {
|
|
19225
18720
|
},
|
19226
18721
|
placeholder: t("search_for"),
|
19227
18722
|
onChange: handleChangeSearchText
|
19228
|
-
}))),
|
18723
|
+
}))), !disabled && React__default.createElement(Grid, {
|
19229
18724
|
item: true,
|
19230
18725
|
xs: 6,
|
19231
18726
|
className: "d-flex align-items-center"
|
@@ -19261,11 +18756,11 @@ var StudentList = function StudentList(_ref) {
|
|
19261
18756
|
className: "d-flex"
|
19262
18757
|
}, React__default.createElement(IconButton, {
|
19263
18758
|
color: "default",
|
19264
|
-
className: (
|
18759
|
+
className: (disabled ? "bg-secondary" : "bg-danger") + " text-white",
|
19265
18760
|
onClick: function onClick() {
|
19266
18761
|
return handleOpenDeleteClassDialog(i);
|
19267
18762
|
},
|
19268
|
-
disabled:
|
18763
|
+
disabled: disabled
|
19269
18764
|
}, React__default.createElement(FaTrashCan, {
|
19270
18765
|
size: 12
|
19271
18766
|
})))));
|
@@ -19927,9 +19422,9 @@ var useLessonClassList = function useLessonClassList(courseId) {
|
|
19927
19422
|
};
|
19928
19423
|
};
|
19929
19424
|
|
19930
|
-
var TEACHER_URL
|
19931
|
-
var getTeacherListApi
|
19932
|
-
return api.get("" + TEACHER_URL
|
19425
|
+
var TEACHER_URL = BASE_URL + "/api/teacher";
|
19426
|
+
var getTeacherListApi = function getTeacherListApi(query) {
|
19427
|
+
return api.get("" + TEACHER_URL, {
|
19933
19428
|
params: query
|
19934
19429
|
});
|
19935
19430
|
};
|
@@ -19950,7 +19445,7 @@ var useTeacherList = function useTeacherList() {
|
|
19950
19445
|
var getListTeacher = function getListTeacher() {
|
19951
19446
|
try {
|
19952
19447
|
var _temp = _catch(function () {
|
19953
|
-
return Promise.resolve(getTeacherListApi
|
19448
|
+
return Promise.resolve(getTeacherListApi(teacherFilter)).then(function (res) {
|
19954
19449
|
var _res$data;
|
19955
19450
|
setTeachers(((_res$data = res.data) === null || _res$data === void 0 ? void 0 : _res$data.items) || []);
|
19956
19451
|
});
|
@@ -19990,6 +19485,7 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
19990
19485
|
var roles = (user === null || user === void 0 ? void 0 : user.roles) || [];
|
19991
19486
|
var isOneRoleExists = roles.length === 1;
|
19992
19487
|
var isAdmin = roles.includes(Role.Admin) && role === Role.Admin;
|
19488
|
+
var isTeacher = roles.includes(Role.Teacher) && !roles.includes(Role.Admin) && role === Role.Teacher;
|
19993
19489
|
var _useState = useState(),
|
19994
19490
|
course = _useState[0],
|
19995
19491
|
setCourse = _useState[1];
|
@@ -20412,6 +19908,7 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
20412
19908
|
isAdmin: isAdmin,
|
20413
19909
|
paging: paging,
|
20414
19910
|
filter: filter,
|
19911
|
+
isTeacher: isTeacher,
|
20415
19912
|
listUserSelected: selected,
|
20416
19913
|
isSelected: isSelected,
|
20417
19914
|
textSearchRef: textSearchRef,
|
@@ -20794,6 +20291,7 @@ var ClassDetail = function ClassDetail(_ref) {
|
|
20794
20291
|
schema = _useClassDetail.schema,
|
20795
20292
|
paging = _useClassDetail.paging,
|
20796
20293
|
isAdmin = _useClassDetail.isAdmin,
|
20294
|
+
isTeacher = _useClassDetail.isTeacher,
|
20797
20295
|
filter = _useClassDetail.filter,
|
20798
20296
|
listUserSelected = _useClassDetail.listUserSelected,
|
20799
20297
|
userList = _useClassDetail.userList,
|
@@ -20810,7 +20308,6 @@ var ClassDetail = function ClassDetail(_ref) {
|
|
20810
20308
|
course = _useClassDetail.course,
|
20811
20309
|
classRequest = _useClassDetail.classRequest,
|
20812
20310
|
teacherOptions = _useClassDetail.teacherOptions,
|
20813
|
-
isOneRoleExists = _useClassDetail.isOneRoleExists,
|
20814
20311
|
studentListProps = _useClassDetail.studentListProps,
|
20815
20312
|
teacherListProps = _useClassDetail.teacherListProps,
|
20816
20313
|
lessonListProps = _useClassDetail.lessonListProps,
|
@@ -20898,7 +20395,7 @@ var ClassDetail = function ClassDetail(_ref) {
|
|
20898
20395
|
value: selected,
|
20899
20396
|
index: TabList$2[1].value
|
20900
20397
|
}, !!id && !Number.isNaN(+id) && selected === TabList$2[1].value && React__default.createElement(StudentList, Object.assign({
|
20901
|
-
|
20398
|
+
disabled: !isTeacher && !isAdmin,
|
20902
20399
|
onAdd: handleOpenSelectDialog
|
20903
20400
|
}, studentListProps))), React__default.createElement(CustomTabPanel, {
|
20904
20401
|
value: selected,
|
@@ -23157,5 +22654,5 @@ var ReleaseAlert = function ReleaseAlert() {
|
|
23157
22654
|
}
|
23158
22655
|
};
|
23159
22656
|
|
23160
|
-
export { ACADEMY_DOMAIN, ACCESS_TOKEN, AcademyHeaders, AcademyList, AnswerCountSelector, ArticleCategorySelector, ArticleGroupView, BASE_URL, ChatContainer, ChatItemType, types as ChatTypes, ClassDetail, ClassList, CommonDialog, ConfirmDialog, index$1 as CoreHooks, CustomAsyncSelect, CustomCreatable, CustomPagination, CustomSelect, CustomSelectOption, DATE_MIN_VALUE, DATE_TIME_MIN_VALUE, DEFAULT_PAGING_RESPONSE, DefaultErrorMessage, EXAM_CHANNEL, EXAM_STUDENT_CHANNEL, index as Enums, ExamDetailView, ExamEvent, ExamResultV2, Header, InputText, LANGUAGES, Language, LayoutContext, Loading, LoadingComponent, Login, LoginWithEmail, SignIn as LoginWithPassword, NotFound, NotificationDetail, NotificationList, PUSHER_CONFIG, PassCodeCheck, PrintExamResultView, PrintExamView2, QuestionCountSelector, RecentUserAction, ReleaseAlert, Role, SUPER_ADMIN_BASE_URL, ScoreSelector,
|
22657
|
+
export { ACADEMY_DOMAIN, ACCESS_TOKEN, AcademyHeaders, AcademyList, AnswerCountSelector, ArticleCategorySelector, ArticleGroupView, BASE_URL, ChatContainer, ChatItemType, types as ChatTypes, ClassDetail, ClassList, CommonDialog, ConfirmDialog, index$1 as CoreHooks, CustomAsyncSelect, CustomCreatable, CustomPagination, CustomSelect, CustomSelectOption, DATE_MIN_VALUE, DATE_TIME_MIN_VALUE, DEFAULT_PAGING_RESPONSE, DefaultErrorMessage, EXAM_CHANNEL, EXAM_STUDENT_CHANNEL, index as Enums, ExamDetailView, ExamEvent, ExamResultV2, Header, InputText, LANGUAGES, Language, LayoutContext, Loading, LoadingComponent, Login, LoginWithEmail, SignIn as LoginWithPassword, NotFound, NotificationDetail, NotificationList, PUSHER_CONFIG, PassCodeCheck, PrintExamResultView, PrintExamView2, QuestionCountSelector, RecentUserAction, ReleaseAlert, Role, SUPER_ADMIN_BASE_URL, ScoreSelector, SubjectSelector, index$2 as Textbook, TextbookViewDetail as TextbookDetail, TextbookList, TheAcademyDropdown, TheLanguageDropdown, index$3 as Types, UserList, api, apiUpload, canAccess as canAccessRoute, checkSuperUrl, createRecentUserActionListApi, diffFromNow, formatRole, formatTime, getAcademyDomain, getAccessToken, getErrorMessage, getOrdinalSuffix, getRecentUserActionListApi, getRole, i18n, minutesToTimeSpan, setAlert, setLanguage, setLoading, setReFetchUserAcademies, setReadyRegisterPusher, setUser, store, times as timeUtils, toISOString, useAutoAcademyDomain, useCategorySelect, useChatContainer, useCountDownTimer, useGoogleSignOut, useLanguage, useLoadMore, useLogin, usePusherConversation, useSubjectSelect, useSwitchAcademy, useVirtualizeList, utcToLocalTime };
|
23161
22658
|
//# sourceMappingURL=index.modern.js.map
|