touchstudy-core 0.1.96 → 0.1.98
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/components/Buttons/ActionButtons.d.ts +1 -0
- package/dist/containers/Classes/components/StudentList.d.ts +1 -1
- package/dist/containers/Classes/hooks/useClassDetail.d.ts +1 -0
- package/dist/containers/Textbooks/components/TextbookShareDialog.d.ts +26 -0
- package/dist/containers/Textbooks/configs/types.d.ts +1 -0
- package/dist/containers/Textbooks/hooks/useTextbookShare.d.ts +5 -1
- package/dist/index.js +54 -53
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +54 -53
- package/dist/index.modern.js.map +1 -1
- package/package.json +1 -1
package/dist/index.modern.js
CHANGED
@@ -7441,8 +7441,10 @@ var useMessageList = function useMessageList(_ref) {
|
|
7441
7441
|
var _state$common, _state$common$user;
|
7442
7442
|
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
7443
|
});
|
7444
|
-
var
|
7445
|
-
var
|
7444
|
+
var isAdmin = roles === null || roles === void 0 ? void 0 : roles.includes(Role.Admin);
|
7445
|
+
var isTeacher = (roles === null || roles === void 0 ? void 0 : roles.includes(Role.Teacher)) && !isAdmin;
|
7446
|
+
var isStudent = !isTeacher && !isAdmin;
|
7447
|
+
var firstRef = useRef(true);
|
7446
7448
|
var getMessageList = function getMessageList(conversationId) {
|
7447
7449
|
try {
|
7448
7450
|
var _temp3 = function _temp3() {
|
@@ -7462,14 +7464,14 @@ var useMessageList = function useMessageList(_ref) {
|
|
7462
7464
|
});
|
7463
7465
|
});
|
7464
7466
|
var _temp = function () {
|
7465
|
-
if (
|
7467
|
+
if (firstRef.current && !isStudent) {
|
7466
7468
|
return Promise.resolve(createRecentUserActionListApi({
|
7467
7469
|
userId: (student === null || student === void 0 ? void 0 : student.id) || 0,
|
7468
7470
|
action: RecentUserAction$1.ViewedQNA,
|
7469
7471
|
data: "" + conversationId,
|
7470
|
-
isAdmin:
|
7472
|
+
isAdmin: false
|
7471
7473
|
})).then(function () {
|
7472
|
-
|
7474
|
+
firstRef.current = false;
|
7473
7475
|
});
|
7474
7476
|
}
|
7475
7477
|
}();
|
@@ -9744,7 +9746,8 @@ var ActionButtons = function ActionButtons(_ref) {
|
|
9744
9746
|
hideSave = _ref$hideSave === void 0 ? false : _ref$hideSave,
|
9745
9747
|
onBack = _ref.onBack,
|
9746
9748
|
onSave = _ref.onSave,
|
9747
|
-
onAltSave = _ref.onAltSave
|
9749
|
+
onAltSave = _ref.onAltSave,
|
9750
|
+
isReadonly = _ref.isReadonly;
|
9748
9751
|
return React__default.createElement(Stack, {
|
9749
9752
|
direction: "row",
|
9750
9753
|
spacing: 1,
|
@@ -9763,7 +9766,7 @@ var ActionButtons = function ActionButtons(_ref) {
|
|
9763
9766
|
size: 16
|
9764
9767
|
}),
|
9765
9768
|
onClick: onSave,
|
9766
|
-
disabled: saveDisabled
|
9769
|
+
disabled: saveDisabled || isReadonly
|
9767
9770
|
}, saveText), !!altSaveText && onAltSave && React__default.createElement(Button, {
|
9768
9771
|
variant: "contained",
|
9769
9772
|
color: "primary",
|
@@ -9791,6 +9794,7 @@ var TextbookActionButtons = function TextbookActionButtons(_ref) {
|
|
9791
9794
|
size: 14
|
9792
9795
|
}) : undefined,
|
9793
9796
|
saveText: t(!(textbook !== null && textbook !== void 0 && textbook.id) ? "create_and_continue" : isReadonly ? "update" : "update_textbook_title"),
|
9797
|
+
isReadonly: isReadonly,
|
9794
9798
|
hideSave: hideSave,
|
9795
9799
|
onSave: onSave
|
9796
9800
|
});
|
@@ -10706,7 +10710,7 @@ var TextbookViewDetail = function TextbookViewDetail(props) {
|
|
10706
10710
|
textbook: textbook,
|
10707
10711
|
onBack: handleGoToTextbookList,
|
10708
10712
|
onSave: handleCreateOrUpdateTextbook,
|
10709
|
-
hideSave: !isEditedTitle && !!id && !isReadonly || textbook.isCreatedByAdmin
|
10713
|
+
hideSave: !isEditedTitle && !!id && !isReadonly || textbook.isCreatedByAdmin || !!id && isReadonly
|
10710
10714
|
}))), React__default.createElement(Grid, {
|
10711
10715
|
item: true,
|
10712
10716
|
xs: 12,
|
@@ -10717,7 +10721,7 @@ var TextbookViewDetail = function TextbookViewDetail(props) {
|
|
10717
10721
|
onClick: function onClick() {
|
10718
10722
|
return handleOpenCreateExamDialog();
|
10719
10723
|
},
|
10720
|
-
disabled:
|
10724
|
+
disabled: !articlesSelected.length,
|
10721
10725
|
startIcon: React__default.createElement(FaPlus, {
|
10722
10726
|
size: 12
|
10723
10727
|
})
|
@@ -11298,7 +11302,9 @@ var getTeacherListApi = function getTeacherListApi(query) {
|
|
11298
11302
|
};
|
11299
11303
|
|
11300
11304
|
var useTextbookShare = function useTextbookShare(props) {
|
11301
|
-
var
|
11305
|
+
var _infoUser$roles;
|
11306
|
+
var getData = props.getData,
|
11307
|
+
role = props.role;
|
11302
11308
|
var _useList = useList(function (search) {
|
11303
11309
|
return getTeacherListApi(search);
|
11304
11310
|
}, DefaultTeacherQuery),
|
@@ -11338,6 +11344,8 @@ var useTextbookShare = function useTextbookShare(props) {
|
|
11338
11344
|
var _state$common;
|
11339
11345
|
return (state === null || state === void 0 ? void 0 : (_state$common = state.common) === null || _state$common === void 0 ? void 0 : _state$common.user) || {};
|
11340
11346
|
});
|
11347
|
+
var isAdmin = infoUser === null || infoUser === void 0 ? void 0 : (_infoUser$roles = infoUser.roles) === null || _infoUser$roles === void 0 ? void 0 : _infoUser$roles.includes(Role.Admin);
|
11348
|
+
var isAdminSite = role === Role.Admin;
|
11341
11349
|
useEffect(function () {
|
11342
11350
|
if (!isUpdate) {
|
11343
11351
|
filterTeacherNotShared(currentModel);
|
@@ -11424,12 +11432,8 @@ var useTextbookShare = function useTextbookShare(props) {
|
|
11424
11432
|
});
|
11425
11433
|
setShared(existsTeachers);
|
11426
11434
|
};
|
11427
|
-
var
|
11428
|
-
return !textbook.isShared || textbook.
|
11429
|
-
return item.trim();
|
11430
|
-
}).filter(function (item) {
|
11431
|
-
return item !== "";
|
11432
|
-
}).includes(infoUser.email || "");
|
11435
|
+
var handleDisable = function handleDisable(textbook) {
|
11436
|
+
return isAdmin && !isAdminSite || !isAdmin && (!textbook.isShared || textbook.createdBy.id != infoUser.id);
|
11433
11437
|
};
|
11434
11438
|
var handleShareTextbook = function handleShareTextbook(teacherIds, textbookId) {
|
11435
11439
|
try {
|
@@ -11506,18 +11510,16 @@ var useTextbookShare = function useTextbookShare(props) {
|
|
11506
11510
|
handleOpenUpdateShareDialog: handleOpenUpdateShareDialog,
|
11507
11511
|
isUpdate: isUpdate,
|
11508
11512
|
handleUpdateSharedTextbook: handleUpdateSharedTextbook,
|
11509
|
-
|
11510
|
-
|
11513
|
+
currentModel: currentModel,
|
11514
|
+
handleDisable: handleDisable,
|
11515
|
+
isAdmin: isAdmin,
|
11516
|
+
isAdminSite: isAdminSite
|
11511
11517
|
};
|
11512
11518
|
};
|
11513
11519
|
|
11514
11520
|
var TextbookList = function TextbookList(props) {
|
11515
11521
|
var _useTranslation = useTranslation(),
|
11516
11522
|
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
11523
|
var _useTextbookList = useTextbookList(props),
|
11522
11524
|
filter = _useTextbookList.filter,
|
11523
11525
|
textbooks = _useTextbookList.textbooks,
|
@@ -11560,8 +11562,10 @@ var TextbookList = function TextbookList(props) {
|
|
11560
11562
|
handleOpenUpdateShareDialog = _useTextbookShare.handleOpenUpdateShareDialog,
|
11561
11563
|
isUpdate = _useTextbookShare.isUpdate,
|
11562
11564
|
handleUpdateSharedTextbook = _useTextbookShare.handleUpdateSharedTextbook,
|
11563
|
-
|
11564
|
-
|
11565
|
+
currentModel = _useTextbookShare.currentModel,
|
11566
|
+
handleDisable = _useTextbookShare.handleDisable,
|
11567
|
+
isAdmin = _useTextbookShare.isAdmin,
|
11568
|
+
isAdminSite = _useTextbookShare.isAdminSite;
|
11565
11569
|
return React__default.createElement(LayoutList, {
|
11566
11570
|
title: t(TEXTBOOK_PAGE_TITLE)
|
11567
11571
|
}, React__default.createElement(Grid, {
|
@@ -11583,15 +11587,14 @@ var TextbookList = function TextbookList(props) {
|
|
11583
11587
|
justifyContent: "flex-end"
|
11584
11588
|
},
|
11585
11589
|
spacing: 2
|
11586
|
-
}, React__default.createElement(Button, {
|
11590
|
+
}, (!isAdmin || isAdminSite) && React__default.createElement(Button, {
|
11587
11591
|
startIcon: React__default.createElement(FaPlus, {
|
11588
11592
|
size: 12
|
11589
11593
|
}),
|
11590
11594
|
variant: "contained",
|
11591
11595
|
color: "primary",
|
11592
11596
|
onClick: handleCreateTextbook,
|
11593
|
-
|
11594
|
-
className: (!isAdmin ? "bg-success" : "bg-secondary") + " text-white"
|
11597
|
+
className: (isAdmin && !isAdminSite ? "bg-secondary" : "bg-success") + " text-white"
|
11595
11598
|
}, t("create_textbook")))), React__default.createElement(Grid, {
|
11596
11599
|
item: true,
|
11597
11600
|
xs: 12,
|
@@ -11613,11 +11616,11 @@ var TextbookList = function TextbookList(props) {
|
|
11613
11616
|
alignItems: "center"
|
11614
11617
|
}, React__default.createElement(IconButton, {
|
11615
11618
|
color: "default",
|
11616
|
-
className: (i
|
11619
|
+
className: (handleDisable(i) ? "bg-secondary" : "bg-warning") + " text-white",
|
11617
11620
|
onClick: function onClick() {
|
11618
11621
|
return handleUpdateTextbook(i.id);
|
11619
11622
|
},
|
11620
|
-
disabled:
|
11623
|
+
disabled: handleDisable(i)
|
11621
11624
|
}, React__default.createElement(FaPencil, {
|
11622
11625
|
size: 12
|
11623
11626
|
})), React__default.createElement(IconButton, {
|
@@ -11629,16 +11632,16 @@ var TextbookList = function TextbookList(props) {
|
|
11629
11632
|
}, React__default.createElement(FaEye, {
|
11630
11633
|
size: 12
|
11631
11634
|
})), React__default.createElement(IconButton, {
|
11632
|
-
disabled:
|
11633
|
-
className: (
|
11635
|
+
disabled: handleDisable(i) || isAdmin,
|
11636
|
+
className: (handleDisable(i) || isAdmin ? "bg-secondary" : "bg-info") + " text-white me-1",
|
11634
11637
|
onClick: function onClick() {
|
11635
11638
|
return handleOpenShareDialog(i);
|
11636
11639
|
}
|
11637
11640
|
}, React__default.createElement(FaShare, {
|
11638
11641
|
size: 12
|
11639
11642
|
})), React__default.createElement(IconButton, {
|
11640
|
-
disabled:
|
11641
|
-
className: (
|
11643
|
+
disabled: handleDisable(i) || isAdmin,
|
11644
|
+
className: (handleDisable(i) || isAdmin ? "bg-secondary" : "bg-success") + " text-white me-1",
|
11642
11645
|
onClick: function onClick() {
|
11643
11646
|
return handleOpenUpdateShareDialog(i);
|
11644
11647
|
}
|
@@ -11646,11 +11649,11 @@ var TextbookList = function TextbookList(props) {
|
|
11646
11649
|
size: 12
|
11647
11650
|
})), React__default.createElement(IconButton, {
|
11648
11651
|
color: "default",
|
11649
|
-
className: (i
|
11652
|
+
className: (handleDisable(i) ? "bg-secondary" : "bg-danger") + " text-white mr-1",
|
11650
11653
|
onClick: function onClick() {
|
11651
11654
|
return handleSelectDeleteTextbook(i);
|
11652
11655
|
},
|
11653
|
-
disabled:
|
11656
|
+
disabled: handleDisable(i)
|
11654
11657
|
}, React__default.createElement(FaTrash, {
|
11655
11658
|
size: 12
|
11656
11659
|
})))));
|
@@ -16948,7 +16951,6 @@ var singleLogo = function singleLogo(_ref) {
|
|
16948
16951
|
};
|
16949
16952
|
|
16950
16953
|
var Header = function Header(_ref) {
|
16951
|
-
var _user$roles;
|
16952
16954
|
var academyListRoute = _ref.academyListRoute,
|
16953
16955
|
homeRoute = _ref.homeRoute,
|
16954
16956
|
registerRoute = _ref.registerRoute,
|
@@ -16960,27 +16962,24 @@ var Header = function Header(_ref) {
|
|
16960
16962
|
t = _useTranslation.t;
|
16961
16963
|
var location = useLocation();
|
16962
16964
|
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
|
-
});
|
16965
|
+
var param = window.location.pathname;
|
16967
16966
|
var language = useSelector(function (state) {
|
16968
|
-
var _state$
|
16969
|
-
return state === null || state === void 0 ? void 0 : (_state$
|
16967
|
+
var _state$common;
|
16968
|
+
return state === null || state === void 0 ? void 0 : (_state$common = state.common) === null || _state$common === void 0 ? void 0 : _state$common.language;
|
16970
16969
|
});
|
16971
|
-
var
|
16970
|
+
var isTeacherSide = param.includes('teacher');
|
16972
16971
|
var isLargerThanXL = useMediaQuery(theme.breakpoints.up("xl"));
|
16973
16972
|
var academyDomain = useSelector(function (state) {
|
16974
|
-
var _state$
|
16975
|
-
return state === null || state === void 0 ? void 0 : (_state$
|
16973
|
+
var _state$common2, _state$common2$user;
|
16974
|
+
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
16975
|
});
|
16977
16976
|
var logo = useMemo(function () {
|
16978
|
-
if (
|
16977
|
+
if (isTeacherSide) {
|
16979
16978
|
return language === Language.en ? React__default.createElement(teacherFullLogoEn, null) : React__default.createElement(teacherFullLogoKo, null);
|
16980
16979
|
} else {
|
16981
16980
|
return language === Language.en ? React__default.createElement(studentFullLogoEn, null) : React__default.createElement(studentFullLogoKo, null);
|
16982
16981
|
}
|
16983
|
-
}, [
|
16982
|
+
}, [isTeacherSide, language]);
|
16984
16983
|
var pathname = location.pathname.toLowerCase();
|
16985
16984
|
return React__default.createElement(Stack, {
|
16986
16985
|
width: "100%",
|
@@ -19165,7 +19164,7 @@ var StudentList = function StudentList(_ref) {
|
|
19165
19164
|
selectedStudent = _ref.selectedStudent,
|
19166
19165
|
t = _ref.t,
|
19167
19166
|
textSearchRef = _ref.textSearchRef,
|
19168
|
-
|
19167
|
+
disabled = _ref.disabled,
|
19169
19168
|
handleOpenDeleteClassDialog = _ref.handleOpenDeleteClassDialog,
|
19170
19169
|
handleCloseConfirmDialog = _ref.handleCloseConfirmDialog,
|
19171
19170
|
handleSort = _ref.handleSort,
|
@@ -19225,7 +19224,7 @@ var StudentList = function StudentList(_ref) {
|
|
19225
19224
|
},
|
19226
19225
|
placeholder: t("search_for"),
|
19227
19226
|
onChange: handleChangeSearchText
|
19228
|
-
}))),
|
19227
|
+
}))), !disabled && React__default.createElement(Grid, {
|
19229
19228
|
item: true,
|
19230
19229
|
xs: 6,
|
19231
19230
|
className: "d-flex align-items-center"
|
@@ -19261,11 +19260,11 @@ var StudentList = function StudentList(_ref) {
|
|
19261
19260
|
className: "d-flex"
|
19262
19261
|
}, React__default.createElement(IconButton, {
|
19263
19262
|
color: "default",
|
19264
|
-
className: (
|
19263
|
+
className: (disabled ? "bg-secondary" : "bg-danger") + " text-white",
|
19265
19264
|
onClick: function onClick() {
|
19266
19265
|
return handleOpenDeleteClassDialog(i);
|
19267
19266
|
},
|
19268
|
-
disabled:
|
19267
|
+
disabled: disabled
|
19269
19268
|
}, React__default.createElement(FaTrashCan, {
|
19270
19269
|
size: 12
|
19271
19270
|
})))));
|
@@ -19990,6 +19989,7 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
19990
19989
|
var roles = (user === null || user === void 0 ? void 0 : user.roles) || [];
|
19991
19990
|
var isOneRoleExists = roles.length === 1;
|
19992
19991
|
var isAdmin = roles.includes(Role.Admin) && role === Role.Admin;
|
19992
|
+
var isTeacher = roles.includes(Role.Teacher) && !roles.includes(Role.Admin) && role === Role.Teacher;
|
19993
19993
|
var _useState = useState(),
|
19994
19994
|
course = _useState[0],
|
19995
19995
|
setCourse = _useState[1];
|
@@ -20412,6 +20412,7 @@ var useClassDetail = function useClassDetail(_ref) {
|
|
20412
20412
|
isAdmin: isAdmin,
|
20413
20413
|
paging: paging,
|
20414
20414
|
filter: filter,
|
20415
|
+
isTeacher: isTeacher,
|
20415
20416
|
listUserSelected: selected,
|
20416
20417
|
isSelected: isSelected,
|
20417
20418
|
textSearchRef: textSearchRef,
|
@@ -20794,6 +20795,7 @@ var ClassDetail = function ClassDetail(_ref) {
|
|
20794
20795
|
schema = _useClassDetail.schema,
|
20795
20796
|
paging = _useClassDetail.paging,
|
20796
20797
|
isAdmin = _useClassDetail.isAdmin,
|
20798
|
+
isTeacher = _useClassDetail.isTeacher,
|
20797
20799
|
filter = _useClassDetail.filter,
|
20798
20800
|
listUserSelected = _useClassDetail.listUserSelected,
|
20799
20801
|
userList = _useClassDetail.userList,
|
@@ -20810,7 +20812,6 @@ var ClassDetail = function ClassDetail(_ref) {
|
|
20810
20812
|
course = _useClassDetail.course,
|
20811
20813
|
classRequest = _useClassDetail.classRequest,
|
20812
20814
|
teacherOptions = _useClassDetail.teacherOptions,
|
20813
|
-
isOneRoleExists = _useClassDetail.isOneRoleExists,
|
20814
20815
|
studentListProps = _useClassDetail.studentListProps,
|
20815
20816
|
teacherListProps = _useClassDetail.teacherListProps,
|
20816
20817
|
lessonListProps = _useClassDetail.lessonListProps,
|
@@ -20898,7 +20899,7 @@ var ClassDetail = function ClassDetail(_ref) {
|
|
20898
20899
|
value: selected,
|
20899
20900
|
index: TabList$2[1].value
|
20900
20901
|
}, !!id && !Number.isNaN(+id) && selected === TabList$2[1].value && React__default.createElement(StudentList, Object.assign({
|
20901
|
-
|
20902
|
+
disabled: !isTeacher && !isAdmin,
|
20902
20903
|
onAdd: handleOpenSelectDialog
|
20903
20904
|
}, studentListProps))), React__default.createElement(CustomTabPanel, {
|
20904
20905
|
value: selected,
|