@nualang/nualang-ui-components 0.1.1140 → 0.1.1141
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.
|
@@ -33,14 +33,17 @@ function UploadVideo({
|
|
|
33
33
|
} = useStyles();
|
|
34
34
|
const [video, setVideo] = (0, _react.useState)();
|
|
35
35
|
const [errors, setErrors] = (0, _react.useState)([]);
|
|
36
|
+
const [isVideoSubmitting, setIsVideoSubmitting] = (0, _react.useState)(false);
|
|
36
37
|
const handleSubmit = async () => {
|
|
37
38
|
try {
|
|
39
|
+
setIsVideoSubmitting(true);
|
|
38
40
|
await onSubmit({
|
|
39
41
|
video
|
|
40
42
|
});
|
|
41
43
|
} catch (error) {
|
|
42
44
|
console.error(error);
|
|
43
45
|
}
|
|
46
|
+
setIsVideoSubmitting(false);
|
|
44
47
|
handleClose();
|
|
45
48
|
};
|
|
46
49
|
return /*#__PURE__*/_react.default.createElement(_ResponsiveDialog.default, {
|
|
@@ -52,7 +55,7 @@ function UploadVideo({
|
|
|
52
55
|
handleSubmit: handleSubmit,
|
|
53
56
|
submitText: t("add_video"),
|
|
54
57
|
dialogTitle: t("upload_video"),
|
|
55
|
-
isSubmitDisabled: !video || video.length === 0 || errors.length > 0
|
|
58
|
+
isSubmitDisabled: !video || video.length === 0 || errors.length > 0 || isVideoSubmitting
|
|
56
59
|
}, /*#__PURE__*/_react.default.createElement(_Box.default, null, /*#__PURE__*/_react.default.createElement(_VideoUploader.default, {
|
|
57
60
|
t: t,
|
|
58
61
|
file: video,
|
|
@@ -7,6 +7,7 @@ exports.default = void 0;
|
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _reactJoyride = _interopRequireWildcard(require("react-joyride"));
|
|
9
9
|
var _material = require("@mui/material");
|
|
10
|
+
var _colors = require("@mui/material/colors");
|
|
10
11
|
var _mui = require("tss-react/mui");
|
|
11
12
|
var _Check = _interopRequireDefault(require("@mui/icons-material/Check"));
|
|
12
13
|
var _Close = _interopRequireDefault(require("@mui/icons-material/Close"));
|
|
@@ -115,7 +116,6 @@ const useStyles = (0, _mui.makeStyles)()(theme => ({
|
|
|
115
116
|
margin: theme.spacing(1, 2, 1, 2),
|
|
116
117
|
borderRadius: theme.spacing(),
|
|
117
118
|
borderWidth: "2px",
|
|
118
|
-
borderColor: theme.palette.primary.main,
|
|
119
119
|
borderStyle: "solid",
|
|
120
120
|
textAlign: "center",
|
|
121
121
|
color: theme.palette.primary.main,
|
|
@@ -397,10 +397,21 @@ function Translator({
|
|
|
397
397
|
handleTranslationTourFinished();
|
|
398
398
|
}
|
|
399
399
|
};
|
|
400
|
+
const [incomplete, setIncomplete] = (0, _react.useState)(false);
|
|
401
|
+
const checkCompletionAndNotify = () => {
|
|
402
|
+
let correctCount = translationWords.filter((word, index) => (0, _index.removeAllSymbols)(word.text) === (0, _index.removeAllSymbols)(translationWordList[index])).length;
|
|
403
|
+
if (correctCount === translationWords.length && translationWords.length < translationWordList.length) {
|
|
404
|
+
setIncomplete(true);
|
|
405
|
+
}
|
|
406
|
+
};
|
|
400
407
|
(0, _react.useEffect)(() => {
|
|
401
408
|
setCheckAnswer(false);
|
|
402
409
|
setIsWordBankAttemptChanged(true);
|
|
410
|
+
setIncomplete(false);
|
|
403
411
|
}, [translationWords]);
|
|
412
|
+
(0, _react.useEffect)(() => {
|
|
413
|
+
checkAnswer && checkCompletionAndNotify();
|
|
414
|
+
}, [checkAnswer]);
|
|
404
415
|
(0, _react.useEffect)(() => {
|
|
405
416
|
if (open && !run && !localStorage.getItem(`translation-exercise-tour-completed`)) {
|
|
406
417
|
setJoyrideState(prevState => ({
|
|
@@ -658,7 +669,7 @@ function Translator({
|
|
|
658
669
|
}, /*#__PURE__*/_react.default.createElement(_reactBeautifulDnd.Droppable, {
|
|
659
670
|
droppableId: "translationWords",
|
|
660
671
|
direction: "horizontal"
|
|
661
|
-
}, provided => /*#__PURE__*/_react.default.createElement(_material.Grid, _extends({
|
|
672
|
+
}, provided => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_material.Grid, _extends({
|
|
662
673
|
container: true,
|
|
663
674
|
spacing: 1,
|
|
664
675
|
className: classes.wordsContainer,
|
|
@@ -666,7 +677,8 @@ function Translator({
|
|
|
666
677
|
}, provided.droppableProps, {
|
|
667
678
|
sx: {
|
|
668
679
|
display: "flex",
|
|
669
|
-
flexDirection: "row"
|
|
680
|
+
flexDirection: "row",
|
|
681
|
+
borderColor: incomplete ? _colors.red[800] : theme.palette.primary.main
|
|
670
682
|
}
|
|
671
683
|
}), translationWords.map((word, index) => /*#__PURE__*/_react.default.createElement(_reactBeautifulDnd.Draggable, {
|
|
672
684
|
key: word.id.toString(),
|
|
@@ -693,7 +705,21 @@ function Translator({
|
|
|
693
705
|
ref: setAnswerBoxRef(index),
|
|
694
706
|
checkAnswer: checkAnswer,
|
|
695
707
|
isDragging: snapshot.isDragging
|
|
696
|
-
})))), provided.placeholder)
|
|
708
|
+
})))), provided.placeholder), /*#__PURE__*/_react.default.createElement(_material.Box, {
|
|
709
|
+
sx: {
|
|
710
|
+
minHeight: '24px',
|
|
711
|
+
// Adjust this based on the Typography height
|
|
712
|
+
display: 'flex',
|
|
713
|
+
justifyContent: 'center',
|
|
714
|
+
alignItems: 'center',
|
|
715
|
+
textAlign: 'center'
|
|
716
|
+
}
|
|
717
|
+
}, incomplete && /*#__PURE__*/_react.default.createElement(_material.Typography, {
|
|
718
|
+
sx: {
|
|
719
|
+
color: _colors.red[800],
|
|
720
|
+
fontWeight: 'bold'
|
|
721
|
+
}
|
|
722
|
+
}, t("incomplete_translation")))))), /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement(_material.Box, {
|
|
697
723
|
component: "fieldset",
|
|
698
724
|
sx: {
|
|
699
725
|
borderWidth: 0
|
|
@@ -8,6 +8,8 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
8
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
9
|
var _material = require("@mui/material");
|
|
10
10
|
var _mui = require("tss-react/mui");
|
|
11
|
+
var _ProgressiveCardMedia = _interopRequireDefault(require("../../Misc/ProgressiveCardMedia"));
|
|
12
|
+
var _index = _interopRequireDefault(require("../../utils/placeholder-images/index"));
|
|
11
13
|
var _Course = _interopRequireDefault(require("../../Cards/Course"));
|
|
12
14
|
var _useListScroll = _interopRequireDefault(require("../../hooks/useListScroll"));
|
|
13
15
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -149,7 +149,9 @@ function OverflowMenu({
|
|
|
149
149
|
trackRecommendedEvent,
|
|
150
150
|
mainSiteUrl,
|
|
151
151
|
members,
|
|
152
|
-
handleOpenInviteDialog
|
|
152
|
+
handleOpenInviteDialog,
|
|
153
|
+
refreshClassroomCourses,
|
|
154
|
+
selectedCourses
|
|
153
155
|
}) {
|
|
154
156
|
const isMediumScreen = (0, _useMediaQuery.default)("(max-width:600px)");
|
|
155
157
|
const [isShareDrawerOpen, setIsShareDrawerOpen] = (0, _react.useState)(false);
|
|
@@ -185,7 +187,9 @@ function OverflowMenu({
|
|
|
185
187
|
onClick: joinClassroom
|
|
186
188
|
}, t("join_classroom")), !isCreator && isMember && /*#__PURE__*/_react.default.createElement(_material.MenuItem, {
|
|
187
189
|
onClick: leaveClassroom
|
|
188
|
-
}, t("leave_classroom")), isCreator && /*#__PURE__*/_react.default.createElement(_material.MenuItem, {
|
|
190
|
+
}, t("leave_classroom")), isCreator && selectedCourses.length > 0 && /*#__PURE__*/_react.default.createElement(_material.MenuItem, {
|
|
191
|
+
onClick: refreshClassroomCourses
|
|
192
|
+
}, t("refresh_courses")), isCreator && /*#__PURE__*/_react.default.createElement(_material.MenuItem, {
|
|
189
193
|
onClick: handleOpenCoursesModal
|
|
190
194
|
}, t("manage_courses")), isCreator && /*#__PURE__*/_react.default.createElement(_material.MenuItem, {
|
|
191
195
|
"data-cy": "delete-classroom",
|
|
@@ -285,6 +289,8 @@ function Classroom({
|
|
|
285
289
|
createdGame,
|
|
286
290
|
isNualangLiveEnabled,
|
|
287
291
|
handleCreateCourse,
|
|
292
|
+
refreshClassroomCourses,
|
|
293
|
+
selectedCourses,
|
|
288
294
|
...otherProps
|
|
289
295
|
}) {
|
|
290
296
|
const {
|
|
@@ -1048,7 +1054,9 @@ function Classroom({
|
|
|
1048
1054
|
mainSiteUrl: mainSiteUrl,
|
|
1049
1055
|
members: members,
|
|
1050
1056
|
handleOpenInviteDialog: handleOpenInviteDialog,
|
|
1051
|
-
handleOpenUpgradeSubscriptionModal: true
|
|
1057
|
+
handleOpenUpgradeSubscriptionModal: true,
|
|
1058
|
+
refreshClassroomCourses: refreshClassroomCourses,
|
|
1059
|
+
selectedCourses: selectedCourses
|
|
1052
1060
|
}), /*#__PURE__*/_react.default.createElement(_UpgradeSubscription.default, {
|
|
1053
1061
|
key: "UpgradeSubscription",
|
|
1054
1062
|
t: t,
|