@magmamath/students-features 0.2.2 → 0.2.4
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/commonjs/features/chatbot/constants.js +21 -12
- package/dist/commonjs/features/chatbot/constants.js.map +1 -1
- package/dist/commonjs/features/chatbot/model/api.js +21 -1
- package/dist/commonjs/features/chatbot/model/api.js.map +1 -1
- package/dist/commonjs/features/feedback/assets/icons/MessageBubbleIcon.js.map +1 -0
- package/dist/commonjs/features/feedback/assets/icons/XCloseIcon.js.map +1 -0
- package/dist/commonjs/features/feedback/components/{EmptyComment/EmptyComment.js → EmptyComment.js} +3 -3
- package/dist/commonjs/features/feedback/components/EmptyComment.js.map +1 -0
- package/dist/commonjs/features/feedback/components/{ListCardCommentsCount/ListCardCommentsCount.js → ListCardCommentsCount.js} +2 -2
- package/dist/commonjs/features/feedback/components/ListCardCommentsCount.js.map +1 -0
- package/dist/commonjs/features/feedback/components/TeacherFeedback.js +8 -8
- package/dist/commonjs/features/feedback/components/TeacherFeedback.js.map +1 -1
- package/dist/commonjs/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.js +2 -2
- package/dist/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherComment.js +3 -3
- package/dist/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherComment.js.map +1 -1
- package/dist/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.js +1 -1
- package/dist/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.js.map +1 -1
- package/dist/commonjs/features/feedback/components/index.js +1 -1
- package/dist/commonjs/features/feedback/constants.js +1 -18
- package/dist/commonjs/features/feedback/constants.js.map +1 -1
- package/dist/commonjs/features/feedback/helpers.js +22 -64
- package/dist/commonjs/features/feedback/helpers.js.map +1 -1
- package/dist/commonjs/features/feedback/index.js +8 -8
- package/dist/commonjs/features/feedback/index.js.map +1 -1
- package/dist/commonjs/features/feedback/model/api.js +15 -0
- package/dist/commonjs/features/feedback/model/api.js.map +1 -0
- package/dist/commonjs/features/feedback/model/comments.js +88 -0
- package/dist/commonjs/features/feedback/model/comments.js.map +1 -0
- package/dist/commonjs/features/feedback/model/model.js +104 -0
- package/dist/commonjs/features/feedback/model/model.js.map +1 -0
- package/dist/commonjs/features/feedback/model/sockets.js +25 -0
- package/dist/commonjs/features/feedback/model/sockets.js.map +1 -0
- package/dist/commonjs/features/feedback/types.js +12 -0
- package/dist/commonjs/features/feedback/types.js.map +1 -0
- package/dist/commonjs/lib/helpers/helpers.js +24 -1
- package/dist/commonjs/lib/helpers/helpers.js.map +1 -1
- package/dist/commonjs/shared/translation/constants.js +42 -1
- package/dist/commonjs/shared/translation/constants.js.map +1 -1
- package/dist/module/features/chatbot/constants.js +20 -11
- package/dist/module/features/chatbot/constants.js.map +1 -1
- package/dist/module/features/chatbot/model/api.js +21 -1
- package/dist/module/features/chatbot/model/api.js.map +1 -1
- package/dist/module/features/feedback/assets/icons/MessageBubbleIcon.js.map +1 -0
- package/dist/module/features/feedback/assets/icons/XCloseIcon.js.map +1 -0
- package/dist/module/features/feedback/components/{EmptyComment/EmptyComment.js → EmptyComment.js} +3 -3
- package/dist/module/features/feedback/components/EmptyComment.js.map +1 -0
- package/dist/module/features/feedback/components/{ListCardCommentsCount/ListCardCommentsCount.js → ListCardCommentsCount.js} +2 -2
- package/dist/module/features/feedback/components/ListCardCommentsCount.js.map +1 -0
- package/dist/module/features/feedback/components/TeacherFeedback.js +8 -8
- package/dist/module/features/feedback/components/TeacherFeedback.js.map +1 -1
- package/dist/module/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.js +2 -2
- package/dist/module/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.js.map +1 -1
- package/dist/module/features/feedback/components/TeacherFeedbackComments/TeacherComment.js +3 -3
- package/dist/module/features/feedback/components/TeacherFeedbackComments/TeacherComment.js.map +1 -1
- package/dist/module/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.js +1 -1
- package/dist/module/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.js.map +1 -1
- package/dist/module/features/feedback/components/index.js +1 -1
- package/dist/module/features/feedback/components/index.js.map +1 -1
- package/dist/module/features/feedback/constants.js +0 -16
- package/dist/module/features/feedback/constants.js.map +1 -1
- package/dist/module/features/feedback/helpers.js +20 -62
- package/dist/module/features/feedback/helpers.js.map +1 -1
- package/dist/module/features/feedback/index.js +2 -2
- package/dist/module/features/feedback/index.js.map +1 -1
- package/dist/module/features/feedback/model/api.js +10 -0
- package/dist/module/features/feedback/model/api.js.map +1 -0
- package/dist/module/features/feedback/model/comments.js +83 -0
- package/dist/module/features/feedback/model/comments.js.map +1 -0
- package/dist/module/features/feedback/model/model.js +99 -0
- package/dist/module/features/feedback/model/model.js.map +1 -0
- package/dist/module/features/feedback/model/sockets.js +20 -0
- package/dist/module/features/feedback/model/sockets.js.map +1 -0
- package/dist/module/features/feedback/types.js +8 -0
- package/dist/module/features/feedback/types.js.map +1 -0
- package/dist/module/lib/helpers/helpers.js +22 -0
- package/dist/module/lib/helpers/helpers.js.map +1 -1
- package/dist/module/shared/translation/constants.js +41 -0
- package/dist/module/shared/translation/constants.js.map +1 -1
- package/dist/typescript/commonjs/features/chatbot/constants.d.ts +6 -0
- package/dist/typescript/commonjs/features/chatbot/constants.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/chatbot/model/api.d.ts +1 -0
- package/dist/typescript/commonjs/features/chatbot/model/api.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/feedback/assets/icons/MessageBubbleIcon.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/feedback/assets/icons/XCloseIcon.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/feedback/components/{EmptyComment/EmptyComment.d.ts → EmptyComment.d.ts} +1 -1
- package/dist/typescript/commonjs/features/feedback/components/EmptyComment.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/feedback/components/ListCardCommentsCount.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/feedback/components/TeacherFeedback.d.ts +6 -2
- package/dist/typescript/commonjs/features/feedback/components/TeacherFeedback.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherComment.d.ts +2 -2
- package/dist/typescript/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherComment.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.d.ts +3 -2
- package/dist/typescript/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/feedback/components/index.d.ts +1 -1
- package/dist/typescript/commonjs/features/feedback/components/index.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/feedback/constants.d.ts +0 -14
- package/dist/typescript/commonjs/features/feedback/constants.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/feedback/helpers.d.ts +9 -2
- package/dist/typescript/commonjs/features/feedback/helpers.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/feedback/index.d.ts +2 -2
- package/dist/typescript/commonjs/features/feedback/index.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/feedback/model/api.d.ts +9 -0
- package/dist/typescript/commonjs/features/feedback/model/api.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/feedback/model/comments.d.ts +16 -0
- package/dist/typescript/commonjs/features/feedback/model/comments.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/feedback/model/model.d.ts +27 -0
- package/dist/typescript/commonjs/features/feedback/model/model.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/feedback/model/sockets.d.ts +10 -0
- package/dist/typescript/commonjs/features/feedback/model/sockets.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/feedback/types.d.ts +40 -0
- package/dist/typescript/commonjs/features/feedback/types.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/helpers/helpers.d.ts +2 -0
- package/dist/typescript/commonjs/lib/helpers/helpers.d.ts.map +1 -1
- package/dist/typescript/commonjs/shared/translation/constants.d.ts +41 -0
- package/dist/typescript/commonjs/shared/translation/constants.d.ts.map +1 -1
- package/dist/typescript/module/features/chatbot/constants.d.ts +6 -0
- package/dist/typescript/module/features/chatbot/constants.d.ts.map +1 -1
- package/dist/typescript/module/features/chatbot/model/api.d.ts +1 -0
- package/dist/typescript/module/features/chatbot/model/api.d.ts.map +1 -1
- package/dist/typescript/module/features/feedback/assets/icons/MessageBubbleIcon.d.ts.map +1 -0
- package/dist/typescript/module/features/feedback/assets/icons/XCloseIcon.d.ts.map +1 -0
- package/dist/typescript/module/features/feedback/components/{EmptyComment/EmptyComment.d.ts → EmptyComment.d.ts} +1 -1
- package/dist/typescript/module/features/feedback/components/EmptyComment.d.ts.map +1 -0
- package/dist/typescript/module/features/feedback/components/ListCardCommentsCount.d.ts.map +1 -0
- package/dist/typescript/module/features/feedback/components/TeacherFeedback.d.ts +6 -2
- package/dist/typescript/module/features/feedback/components/TeacherFeedback.d.ts.map +1 -1
- package/dist/typescript/module/features/feedback/components/TeacherFeedbackComments/TeacherComment.d.ts +2 -2
- package/dist/typescript/module/features/feedback/components/TeacherFeedbackComments/TeacherComment.d.ts.map +1 -1
- package/dist/typescript/module/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.d.ts +3 -2
- package/dist/typescript/module/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.d.ts.map +1 -1
- package/dist/typescript/module/features/feedback/components/index.d.ts +1 -1
- package/dist/typescript/module/features/feedback/components/index.d.ts.map +1 -1
- package/dist/typescript/module/features/feedback/constants.d.ts +0 -14
- package/dist/typescript/module/features/feedback/constants.d.ts.map +1 -1
- package/dist/typescript/module/features/feedback/helpers.d.ts +9 -2
- package/dist/typescript/module/features/feedback/helpers.d.ts.map +1 -1
- package/dist/typescript/module/features/feedback/index.d.ts +2 -2
- package/dist/typescript/module/features/feedback/index.d.ts.map +1 -1
- package/dist/typescript/module/features/feedback/model/api.d.ts +9 -0
- package/dist/typescript/module/features/feedback/model/api.d.ts.map +1 -0
- package/dist/typescript/module/features/feedback/model/comments.d.ts +16 -0
- package/dist/typescript/module/features/feedback/model/comments.d.ts.map +1 -0
- package/dist/typescript/module/features/feedback/model/model.d.ts +27 -0
- package/dist/typescript/module/features/feedback/model/model.d.ts.map +1 -0
- package/dist/typescript/module/features/feedback/model/sockets.d.ts +10 -0
- package/dist/typescript/module/features/feedback/model/sockets.d.ts.map +1 -0
- package/dist/typescript/module/features/feedback/types.d.ts +40 -0
- package/dist/typescript/module/features/feedback/types.d.ts.map +1 -0
- package/dist/typescript/module/lib/helpers/helpers.d.ts +2 -0
- package/dist/typescript/module/lib/helpers/helpers.d.ts.map +1 -1
- package/dist/typescript/module/shared/translation/constants.d.ts +41 -0
- package/dist/typescript/module/shared/translation/constants.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/features/chatbot/constants.ts +30 -22
- package/src/features/chatbot/model/api.ts +47 -17
- package/src/features/feedback/components/{EmptyComment/EmptyComment.tsx → EmptyComment.tsx} +3 -3
- package/src/features/feedback/components/{ListCardCommentsCount/ListCardCommentsCount.tsx → ListCardCommentsCount.tsx} +2 -2
- package/src/features/feedback/components/TeacherFeedback.tsx +21 -11
- package/src/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.tsx +2 -2
- package/src/features/feedback/components/TeacherFeedbackComments/TeacherComment.tsx +10 -4
- package/src/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.tsx +4 -3
- package/src/features/feedback/components/index.ts +1 -1
- package/src/features/feedback/constants.ts +2 -18
- package/src/features/feedback/helpers.ts +27 -60
- package/src/features/feedback/index.ts +2 -2
- package/src/features/feedback/model/api.ts +13 -0
- package/src/features/feedback/model/comments.ts +82 -0
- package/src/features/feedback/model/model.ts +102 -0
- package/src/features/feedback/model/sockets.ts +22 -0
- package/src/features/feedback/types.ts +42 -0
- package/src/lib/helpers/helpers.ts +26 -0
- package/src/shared/translation/constants.ts +45 -3
- package/dist/commonjs/features/feedback/components/EmptyComment/EmptyComment.js.map +0 -1
- package/dist/commonjs/features/feedback/components/ListCardCommentsCount/ListCardCommentsCount.js.map +0 -1
- package/dist/commonjs/features/feedback/components/icons/MessageBubbleIcon.js.map +0 -1
- package/dist/commonjs/features/feedback/components/icons/XCloseIcon.js.map +0 -1
- package/dist/commonjs/features/feedback/model/teacherFeedback.model.js +0 -215
- package/dist/commonjs/features/feedback/model/teacherFeedback.model.js.map +0 -1
- package/dist/commonjs/features/feedback/types/teacherFeedback.types.js +0 -18
- package/dist/commonjs/features/feedback/types/teacherFeedback.types.js.map +0 -1
- package/dist/module/features/feedback/components/EmptyComment/EmptyComment.js.map +0 -1
- package/dist/module/features/feedback/components/ListCardCommentsCount/ListCardCommentsCount.js.map +0 -1
- package/dist/module/features/feedback/components/icons/MessageBubbleIcon.js.map +0 -1
- package/dist/module/features/feedback/components/icons/XCloseIcon.js.map +0 -1
- package/dist/module/features/feedback/model/teacherFeedback.model.js +0 -210
- package/dist/module/features/feedback/model/teacherFeedback.model.js.map +0 -1
- package/dist/module/features/feedback/types/teacherFeedback.types.js +0 -14
- package/dist/module/features/feedback/types/teacherFeedback.types.js.map +0 -1
- package/dist/typescript/commonjs/features/feedback/components/EmptyComment/EmptyComment.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/feedback/components/ListCardCommentsCount/ListCardCommentsCount.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/feedback/components/icons/MessageBubbleIcon.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/feedback/components/icons/XCloseIcon.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/feedback/model/teacherFeedback.model.d.ts +0 -45
- package/dist/typescript/commonjs/features/feedback/model/teacherFeedback.model.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/feedback/types/teacherFeedback.types.d.ts +0 -33
- package/dist/typescript/commonjs/features/feedback/types/teacherFeedback.types.d.ts.map +0 -1
- package/dist/typescript/module/features/feedback/components/EmptyComment/EmptyComment.d.ts.map +0 -1
- package/dist/typescript/module/features/feedback/components/ListCardCommentsCount/ListCardCommentsCount.d.ts.map +0 -1
- package/dist/typescript/module/features/feedback/components/icons/MessageBubbleIcon.d.ts.map +0 -1
- package/dist/typescript/module/features/feedback/components/icons/XCloseIcon.d.ts.map +0 -1
- package/dist/typescript/module/features/feedback/model/teacherFeedback.model.d.ts +0 -45
- package/dist/typescript/module/features/feedback/model/teacherFeedback.model.d.ts.map +0 -1
- package/dist/typescript/module/features/feedback/types/teacherFeedback.types.d.ts +0 -33
- package/dist/typescript/module/features/feedback/types/teacherFeedback.types.d.ts.map +0 -1
- package/src/features/feedback/model/teacherFeedback.model.ts +0 -255
- package/src/features/feedback/types/teacherFeedback.types.ts +0 -32
- /package/dist/commonjs/features/feedback/{components → assets}/icons/MessageBubbleIcon.js +0 -0
- /package/dist/commonjs/features/feedback/{components → assets}/icons/XCloseIcon.js +0 -0
- /package/dist/module/features/feedback/{components → assets}/icons/MessageBubbleIcon.js +0 -0
- /package/dist/module/features/feedback/{components → assets}/icons/XCloseIcon.js +0 -0
- /package/dist/typescript/commonjs/features/feedback/{components → assets}/icons/MessageBubbleIcon.d.ts +0 -0
- /package/dist/typescript/commonjs/features/feedback/{components → assets}/icons/XCloseIcon.d.ts +0 -0
- /package/dist/typescript/commonjs/features/feedback/components/{ListCardCommentsCount/ListCardCommentsCount.d.ts → ListCardCommentsCount.d.ts} +0 -0
- /package/dist/typescript/module/features/feedback/{components → assets}/icons/MessageBubbleIcon.d.ts +0 -0
- /package/dist/typescript/module/features/feedback/{components → assets}/icons/XCloseIcon.d.ts +0 -0
- /package/dist/typescript/module/features/feedback/components/{ListCardCommentsCount/ListCardCommentsCount.d.ts → ListCardCommentsCount.d.ts} +0 -0
- /package/src/features/feedback/{components → assets}/icons/MessageBubbleIcon.tsx +0 -0
- /package/src/features/feedback/{components → assets}/icons/XCloseIcon.tsx +0 -0
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.TeacherComments = void 0;
|
|
7
|
+
var _effector = require("effector");
|
|
8
|
+
class TeacherComments {
|
|
9
|
+
setAllCommentsRead = (0, _effector.createEvent)();
|
|
10
|
+
addComment = (0, _effector.createEvent)();
|
|
11
|
+
deleteComment = (0, _effector.createEvent)();
|
|
12
|
+
setData = (0, _effector.createEvent)();
|
|
13
|
+
$data = (0, _effector.restore)(this.setData, null).on(this.setAllCommentsRead, (state, {
|
|
14
|
+
assignmentId,
|
|
15
|
+
problemId
|
|
16
|
+
}) => this.update({
|
|
17
|
+
state,
|
|
18
|
+
assignmentId,
|
|
19
|
+
problemId,
|
|
20
|
+
fn: data => ({
|
|
21
|
+
comments: data.comments.map(comment => ({
|
|
22
|
+
...comment,
|
|
23
|
+
isRead: true
|
|
24
|
+
})),
|
|
25
|
+
unreadMessagesCount: 0
|
|
26
|
+
})
|
|
27
|
+
})).on(this.addComment, (state, {
|
|
28
|
+
assignmentId,
|
|
29
|
+
problemId,
|
|
30
|
+
comment,
|
|
31
|
+
isRead
|
|
32
|
+
}) => this.update({
|
|
33
|
+
state,
|
|
34
|
+
assignmentId,
|
|
35
|
+
problemId,
|
|
36
|
+
fn: data => ({
|
|
37
|
+
comments: [...data.comments, comment],
|
|
38
|
+
unreadMessagesCount: isRead ? data.unreadMessagesCount : data.unreadMessagesCount + 1
|
|
39
|
+
})
|
|
40
|
+
})).on(this.deleteComment, (state, {
|
|
41
|
+
assignmentId,
|
|
42
|
+
problemId,
|
|
43
|
+
commentId
|
|
44
|
+
}) => this.update({
|
|
45
|
+
state,
|
|
46
|
+
assignmentId,
|
|
47
|
+
problemId,
|
|
48
|
+
fn: data => {
|
|
49
|
+
const commentToDelete = data.comments.find(({
|
|
50
|
+
_id
|
|
51
|
+
}) => _id === commentId);
|
|
52
|
+
if (!commentToDelete) return data;
|
|
53
|
+
return {
|
|
54
|
+
comments: data.comments.filter(({
|
|
55
|
+
_id
|
|
56
|
+
}) => _id !== commentId),
|
|
57
|
+
unreadMessagesCount: commentToDelete.isRead ? data.unreadMessagesCount : data.unreadMessagesCount - 1
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
}));
|
|
61
|
+
constructor() {
|
|
62
|
+
(0, _effector.sample)({
|
|
63
|
+
clock: this.deleteComment
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
update({
|
|
67
|
+
state,
|
|
68
|
+
assignmentId,
|
|
69
|
+
problemId,
|
|
70
|
+
fn
|
|
71
|
+
}) {
|
|
72
|
+
if (!state) return state;
|
|
73
|
+
const updatedState = new Map(state);
|
|
74
|
+
const assignmentMap = updatedState.get(assignmentId) || {};
|
|
75
|
+
const currentData = assignmentMap[problemId];
|
|
76
|
+
const updatedData = fn(currentData);
|
|
77
|
+
if (updatedData === undefined) {
|
|
78
|
+
delete assignmentMap[problemId];
|
|
79
|
+
if (Object.keys(assignmentMap).length === 0) updatedState.delete(assignmentId);
|
|
80
|
+
return updatedState;
|
|
81
|
+
}
|
|
82
|
+
assignmentMap[problemId] = updatedData;
|
|
83
|
+
updatedState.set(assignmentId, assignmentMap);
|
|
84
|
+
return updatedState;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
exports.TeacherComments = TeacherComments;
|
|
88
|
+
//# sourceMappingURL=comments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_effector","require","TeacherComments","setAllCommentsRead","createEvent","addComment","deleteComment","setData","$data","restore","on","state","assignmentId","problemId","update","fn","data","comments","map","comment","isRead","unreadMessagesCount","commentId","commentToDelete","find","_id","filter","constructor","sample","clock","updatedState","Map","assignmentMap","get","currentData","updatedData","undefined","Object","keys","length","delete","set","exports"],"sourceRoot":"../../../../../src","sources":["features/feedback/model/comments.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.TeacherFeedbackModel = void 0;
|
|
7
|
+
var _effector = require("effector");
|
|
8
|
+
var _api = require("./api.js");
|
|
9
|
+
var _sockets = require("./sockets.js");
|
|
10
|
+
var _comments = require("./comments.js");
|
|
11
|
+
var _helpers = require("../helpers.js");
|
|
12
|
+
class TeacherFeedbackModel {
|
|
13
|
+
setIsOpen = (0, _effector.createEvent)();
|
|
14
|
+
$isOpen = (0, _effector.restore)(this.setIsOpen, false);
|
|
15
|
+
constructor({
|
|
16
|
+
api,
|
|
17
|
+
socket,
|
|
18
|
+
credits
|
|
19
|
+
}) {
|
|
20
|
+
this.api = new _api.TeacherFeedbackAPI(api);
|
|
21
|
+
this.sockets = new _sockets.TeacherFeedbackSockets(socket);
|
|
22
|
+
this.comments = new _comments.TeacherComments();
|
|
23
|
+
(0, _effector.sample)({
|
|
24
|
+
clock: credits.$problemId,
|
|
25
|
+
fn: () => false,
|
|
26
|
+
target: this.setIsOpen
|
|
27
|
+
});
|
|
28
|
+
(0, _effector.sample)({
|
|
29
|
+
clock: this.setIsOpen,
|
|
30
|
+
source: {
|
|
31
|
+
data: this.comments.$data,
|
|
32
|
+
assignmentId: credits.$assignmentId,
|
|
33
|
+
problemId: credits.$problemId
|
|
34
|
+
},
|
|
35
|
+
filter: (source, isOpen) => {
|
|
36
|
+
const comments = (0, _helpers.findCommentsByCredits)(source);
|
|
37
|
+
const hasUnreadComments = comments.some(({
|
|
38
|
+
isRead
|
|
39
|
+
}) => !isRead);
|
|
40
|
+
return isOpen && hasUnreadComments;
|
|
41
|
+
},
|
|
42
|
+
fn: source => {
|
|
43
|
+
const comments = (0, _helpers.findCommentsByCredits)(source);
|
|
44
|
+
return {
|
|
45
|
+
ids: comments.map(({
|
|
46
|
+
_id
|
|
47
|
+
}) => _id)
|
|
48
|
+
};
|
|
49
|
+
},
|
|
50
|
+
target: this.api.updateCommentStatusSeenFx
|
|
51
|
+
});
|
|
52
|
+
(0, _effector.sample)({
|
|
53
|
+
clock: this.api.updateCommentStatusSeenFx.pending,
|
|
54
|
+
source: {
|
|
55
|
+
assignmentId: credits.$assignmentId,
|
|
56
|
+
problemId: credits.$problemId
|
|
57
|
+
},
|
|
58
|
+
target: this.comments.setAllCommentsRead
|
|
59
|
+
});
|
|
60
|
+
(0, _effector.sample)({
|
|
61
|
+
clock: this.api.getCommentsFx.done,
|
|
62
|
+
fn: ({
|
|
63
|
+
params,
|
|
64
|
+
result
|
|
65
|
+
}) => (0, _helpers.generateCommentsMap)(params.id, result),
|
|
66
|
+
target: this.comments.setData
|
|
67
|
+
});
|
|
68
|
+
(0, _effector.sample)({
|
|
69
|
+
clock: this.sockets.commentDeleted,
|
|
70
|
+
source: {
|
|
71
|
+
assignmentId: credits.$assignmentId
|
|
72
|
+
},
|
|
73
|
+
fn: ({
|
|
74
|
+
assignmentId
|
|
75
|
+
}, comment) => ({
|
|
76
|
+
assignmentId,
|
|
77
|
+
problemId: comment.problemId,
|
|
78
|
+
commentId: comment._id
|
|
79
|
+
}),
|
|
80
|
+
target: this.comments.deleteComment
|
|
81
|
+
});
|
|
82
|
+
(0, _effector.sample)({
|
|
83
|
+
clock: this.sockets.commentAdded,
|
|
84
|
+
source: {
|
|
85
|
+
assignmentId: credits.$assignmentId,
|
|
86
|
+
problemId: credits.$problemId,
|
|
87
|
+
isOpen: this.$isOpen
|
|
88
|
+
},
|
|
89
|
+
fn: ({
|
|
90
|
+
assignmentId,
|
|
91
|
+
problemId,
|
|
92
|
+
isOpen
|
|
93
|
+
}, comment) => ({
|
|
94
|
+
assignmentId,
|
|
95
|
+
problemId,
|
|
96
|
+
comment,
|
|
97
|
+
isRead: isOpen && comment.problemId === problemId
|
|
98
|
+
}),
|
|
99
|
+
target: this.comments.addComment
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
exports.TeacherFeedbackModel = TeacherFeedbackModel;
|
|
104
|
+
//# sourceMappingURL=model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_effector","require","_api","_sockets","_comments","_helpers","TeacherFeedbackModel","setIsOpen","createEvent","$isOpen","restore","constructor","api","socket","credits","TeacherFeedbackAPI","sockets","TeacherFeedbackSockets","comments","TeacherComments","sample","clock","$problemId","fn","target","source","data","$data","assignmentId","$assignmentId","problemId","filter","isOpen","findCommentsByCredits","hasUnreadComments","some","isRead","ids","map","_id","updateCommentStatusSeenFx","pending","setAllCommentsRead","getCommentsFx","done","params","result","generateCommentsMap","id","setData","commentDeleted","comment","commentId","deleteComment","commentAdded","addComment","exports"],"sourceRoot":"../../../../../src","sources":["features/feedback/model/model.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.TeacherFeedbackSockets = void 0;
|
|
7
|
+
var _effector = require("effector");
|
|
8
|
+
var _types = require("../types.js");
|
|
9
|
+
class TeacherFeedbackSockets {
|
|
10
|
+
commentAdded = (0, _effector.createEvent)();
|
|
11
|
+
commentDeleted = (0, _effector.createEvent)();
|
|
12
|
+
constructor(socket) {
|
|
13
|
+
this.socket = socket;
|
|
14
|
+
}
|
|
15
|
+
connect() {
|
|
16
|
+
this.socket.on(_types.FeedbackSocketEvents.COMMENT_ADDED, this.commentAdded);
|
|
17
|
+
this.socket.on(_types.FeedbackSocketEvents.COMMENT_DELETED, this.commentDeleted);
|
|
18
|
+
}
|
|
19
|
+
off() {
|
|
20
|
+
this.socket.off(_types.FeedbackSocketEvents.COMMENT_ADDED, this.commentAdded);
|
|
21
|
+
this.socket.off(_types.FeedbackSocketEvents.COMMENT_DELETED, this.commentDeleted);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
exports.TeacherFeedbackSockets = TeacherFeedbackSockets;
|
|
25
|
+
//# sourceMappingURL=sockets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_effector","require","_types","TeacherFeedbackSockets","commentAdded","createEvent","commentDeleted","constructor","socket","connect","on","FeedbackSocketEvents","COMMENT_ADDED","COMMENT_DELETED","off","exports"],"sourceRoot":"../../../../../src","sources":["features/feedback/model/sockets.ts"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEO,MAAME,sBAAsB,CAAC;EAElBC,YAAY,GAAG,IAAAC,qBAAW,EAAiB,CAAC;EAC5CC,cAAc,GAAG,IAAAD,qBAAW,EAAiB,CAAC;EAE9DE,WAAWA,CAACC,MAAW,EAAE;IACvB,IAAI,CAACA,MAAM,GAAGA,MAAM;EACtB;EAEAC,OAAOA,CAAA,EAAG;IACR,IAAI,CAACD,MAAM,CAACE,EAAE,CAACC,2BAAoB,CAACC,aAAa,EAAE,IAAI,CAACR,YAAY,CAAC;IACrE,IAAI,CAACI,MAAM,CAACE,EAAE,CAACC,2BAAoB,CAACE,eAAe,EAAE,IAAI,CAACP,cAAc,CAAC;EAC3E;EAEAQ,GAAGA,CAAA,EAAG;IACJ,IAAI,CAACN,MAAM,CAACM,GAAG,CAACH,2BAAoB,CAACC,aAAa,EAAE,IAAI,CAACR,YAAY,CAAC;IACtE,IAAI,CAACI,MAAM,CAACM,GAAG,CAACH,2BAAoB,CAACE,eAAe,EAAE,IAAI,CAACP,cAAc,CAAC;EAC5E;AACF;AAACS,OAAA,CAAAZ,sBAAA,GAAAA,sBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.FeedbackSocketEvents = void 0;
|
|
7
|
+
let FeedbackSocketEvents = exports.FeedbackSocketEvents = /*#__PURE__*/function (FeedbackSocketEvents) {
|
|
8
|
+
FeedbackSocketEvents["COMMENT_ADDED"] = "exerciseCommentCreated";
|
|
9
|
+
FeedbackSocketEvents["COMMENT_DELETED"] = "exerciseCommentDeleted";
|
|
10
|
+
return FeedbackSocketEvents;
|
|
11
|
+
}({});
|
|
12
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["FeedbackSocketEvents","exports"],"sourceRoot":"../../../../src","sources":["features/feedback/types.ts"],"mappings":";;;;;;IAsCYA,oBAAoB,GAAAC,OAAA,CAAAD,oBAAA,0BAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA","ignoreList":[]}
|
|
@@ -3,7 +3,30 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.generateRandomId = void 0;
|
|
6
|
+
exports.getRelativeTimeText = exports.generateRandomId = void 0;
|
|
7
|
+
var _constants = require("../../shared/translation/constants.js");
|
|
8
|
+
var _studentsFeatures = require("@magmamath/students-features");
|
|
7
9
|
const generateRandomId = () => Date.now().toString(36) + Math.random().toString(36).substring(2);
|
|
8
10
|
exports.generateRandomId = generateRandomId;
|
|
11
|
+
const getRelativeTimeText = (date, lang) => {
|
|
12
|
+
const t = _constants.RELATIVE_TIME_LABELS[lang] || _constants.RELATIVE_TIME_LABELS[_studentsFeatures.Locale.EN];
|
|
13
|
+
const timeBufferMs = 2000; // adds 2 seconds time buffer because when used with sockets, it displayed -1 seconds ago, instead of 1 second ago.
|
|
14
|
+
|
|
15
|
+
const now = new Date().getTime();
|
|
16
|
+
const targetDate = new Date(date).getTime() - timeBufferMs;
|
|
17
|
+
const diffTime = now - targetDate;
|
|
18
|
+
const seconds = Math.floor(diffTime / 1000);
|
|
19
|
+
const minutes = Math.floor(seconds / 60);
|
|
20
|
+
const hours = Math.floor(minutes / 60);
|
|
21
|
+
const days = Math.floor(hours / 24);
|
|
22
|
+
const months = Math.floor(days / 30);
|
|
23
|
+
const years = Math.floor(days / 365);
|
|
24
|
+
if (seconds < 60) return t.justNow;
|
|
25
|
+
if (minutes < 60) return `${minutes} ${minutes === 1 ? t.minuteAgo : t.minutesAgo}`;
|
|
26
|
+
if (hours < 24) return `${hours} ${hours === 1 ? t.hourAgo : t.hoursAgo}`;
|
|
27
|
+
if (days < 30) return `${days} ${days === 1 ? t.dayAgo : t.daysAgo}`;
|
|
28
|
+
if (months < 12) return `${months} ${months === 1 ? t.monthAgo : t.monthsAgo}`;
|
|
29
|
+
return `${years} ${years === 1 ? t.yearAgo : t.yearsAgo}`;
|
|
30
|
+
};
|
|
31
|
+
exports.getRelativeTimeText = getRelativeTimeText;
|
|
9
32
|
//# sourceMappingURL=helpers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["generateRandomId","Date","now","toString","Math","random","substring","exports"],"sourceRoot":"../../../../src","sources":["lib/helpers/helpers.ts"],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"names":["_constants","require","_studentsFeatures","generateRandomId","Date","now","toString","Math","random","substring","exports","getRelativeTimeText","date","lang","t","RELATIVE_TIME_LABELS","Locale","EN","timeBufferMs","getTime","targetDate","diffTime","seconds","floor","minutes","hours","days","months","years","justNow","minuteAgo","minutesAgo","hourAgo","hoursAgo","dayAgo","daysAgo","monthAgo","monthsAgo","yearAgo","yearsAgo"],"sourceRoot":"../../../../src","sources":["lib/helpers/helpers.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAD,OAAA;AAEO,MAAME,gBAAgB,GAAGA,CAAA,KAC9BC,IAAI,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC,EAAE,CAAC,GAAGC,IAAI,CAACC,MAAM,CAAC,CAAC,CAACF,QAAQ,CAAC,EAAE,CAAC,CAACG,SAAS,CAAC,CAAC,CAAC;AAAAC,OAAA,CAAAP,gBAAA,GAAAA,gBAAA;AAE5D,MAAMQ,mBAAmB,GAAGA,CAACC,IAAU,EAAEC,IAAY,KAAK;EAC/D,MAAMC,CAAC,GAAGC,+BAAoB,CAACF,IAAI,CAAC,IAAIE,+BAAoB,CAACC,wBAAM,CAACC,EAAE,CAAC;EACvE,MAAMC,YAAY,GAAG,IAAI,EAAC;;EAE1B,MAAMb,GAAG,GAAG,IAAID,IAAI,CAAC,CAAC,CAACe,OAAO,CAAC,CAAC;EAChC,MAAMC,UAAU,GAAG,IAAIhB,IAAI,CAACQ,IAAI,CAAC,CAACO,OAAO,CAAC,CAAC,GAAGD,YAAY;EAC1D,MAAMG,QAAQ,GAAGhB,GAAG,GAAGe,UAAU;EAEjC,MAAME,OAAO,GAAGf,IAAI,CAACgB,KAAK,CAACF,QAAQ,GAAG,IAAI,CAAC;EAC3C,MAAMG,OAAO,GAAGjB,IAAI,CAACgB,KAAK,CAACD,OAAO,GAAG,EAAE,CAAC;EACxC,MAAMG,KAAK,GAAGlB,IAAI,CAACgB,KAAK,CAACC,OAAO,GAAG,EAAE,CAAC;EACtC,MAAME,IAAI,GAAGnB,IAAI,CAACgB,KAAK,CAACE,KAAK,GAAG,EAAE,CAAC;EACnC,MAAME,MAAM,GAAGpB,IAAI,CAACgB,KAAK,CAACG,IAAI,GAAG,EAAE,CAAC;EACpC,MAAME,KAAK,GAAGrB,IAAI,CAACgB,KAAK,CAACG,IAAI,GAAG,GAAG,CAAC;EAEpC,IAAIJ,OAAO,GAAG,EAAE,EAAE,OAAOR,CAAC,CAACe,OAAO;EAClC,IAAIL,OAAO,GAAG,EAAE,EAAE,OAAO,GAAGA,OAAO,IAAIA,OAAO,KAAK,CAAC,GAAGV,CAAC,CAACgB,SAAS,GAAGhB,CAAC,CAACiB,UAAU,EAAE;EACnF,IAAIN,KAAK,GAAG,EAAE,EAAE,OAAO,GAAGA,KAAK,IAAIA,KAAK,KAAK,CAAC,GAAGX,CAAC,CAACkB,OAAO,GAAGlB,CAAC,CAACmB,QAAQ,EAAE;EACzE,IAAIP,IAAI,GAAG,EAAE,EAAE,OAAO,GAAGA,IAAI,IAAIA,IAAI,KAAK,CAAC,GAAGZ,CAAC,CAACoB,MAAM,GAAGpB,CAAC,CAACqB,OAAO,EAAE;EACpE,IAAIR,MAAM,GAAG,EAAE,EAAE,OAAO,GAAGA,MAAM,IAAIA,MAAM,KAAK,CAAC,GAAGb,CAAC,CAACsB,QAAQ,GAAGtB,CAAC,CAACuB,SAAS,EAAE;EAC9E,OAAO,GAAGT,KAAK,IAAIA,KAAK,KAAK,CAAC,GAAGd,CAAC,CAACwB,OAAO,GAAGxB,CAAC,CAACyB,QAAQ,EAAE;AAC3D,CAAC;AAAA7B,OAAA,CAAAC,mBAAA,GAAAA,mBAAA","ignoreList":[]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.LOCALIZATION_CONFIGS = void 0;
|
|
6
|
+
exports.RELATIVE_TIME_LABELS = exports.LOCALIZATION_CONFIGS = void 0;
|
|
7
7
|
var _types = require("./types.js");
|
|
8
8
|
var _en = _interopRequireDefault(require("../../lib/localization/en.json"));
|
|
9
9
|
var _gb = _interopRequireDefault(require("../../lib/localization/gb.json"));
|
|
@@ -14,4 +14,45 @@ const LOCALIZATION_CONFIGS = exports.LOCALIZATION_CONFIGS = {
|
|
|
14
14
|
[_types.Locale.GB]: _gb.default,
|
|
15
15
|
[_types.Locale.SW]: _sw.default
|
|
16
16
|
};
|
|
17
|
+
const RELATIVE_TIME_LABELS = exports.RELATIVE_TIME_LABELS = {
|
|
18
|
+
[_types.Locale.EN]: {
|
|
19
|
+
justNow: 'just now',
|
|
20
|
+
minuteAgo: 'minute ago',
|
|
21
|
+
minutesAgo: 'minutes ago',
|
|
22
|
+
hourAgo: 'hour ago',
|
|
23
|
+
hoursAgo: 'hours ago',
|
|
24
|
+
dayAgo: 'day ago',
|
|
25
|
+
daysAgo: 'days ago',
|
|
26
|
+
monthAgo: 'month ago',
|
|
27
|
+
monthsAgo: 'months ago',
|
|
28
|
+
yearAgo: 'year ago',
|
|
29
|
+
yearsAgo: 'years ago'
|
|
30
|
+
},
|
|
31
|
+
[_types.Locale.SW]: {
|
|
32
|
+
justNow: 'alldeles nyss',
|
|
33
|
+
minuteAgo: 'minut sedan',
|
|
34
|
+
minutesAgo: 'minuter sedan',
|
|
35
|
+
hourAgo: 'timme sedan',
|
|
36
|
+
hoursAgo: 'timmar sedan',
|
|
37
|
+
dayAgo: 'dag sedan',
|
|
38
|
+
daysAgo: 'dagar sedan',
|
|
39
|
+
monthAgo: 'månad sedan',
|
|
40
|
+
monthsAgo: 'månader sedan',
|
|
41
|
+
yearAgo: 'år sedan',
|
|
42
|
+
yearsAgo: 'år sedan'
|
|
43
|
+
},
|
|
44
|
+
[_types.Locale.GB]: {
|
|
45
|
+
justNow: 'just now',
|
|
46
|
+
minuteAgo: 'minute ago',
|
|
47
|
+
minutesAgo: 'minutes ago',
|
|
48
|
+
hourAgo: 'hour ago',
|
|
49
|
+
hoursAgo: 'hours ago',
|
|
50
|
+
dayAgo: 'day ago',
|
|
51
|
+
daysAgo: 'days ago',
|
|
52
|
+
monthAgo: 'month ago',
|
|
53
|
+
monthsAgo: 'months ago',
|
|
54
|
+
yearAgo: 'year ago',
|
|
55
|
+
yearsAgo: 'years ago'
|
|
56
|
+
}
|
|
57
|
+
};
|
|
17
58
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_types","require","_en","_interopRequireDefault","_gb","_sw","e","__esModule","default","LOCALIZATION_CONFIGS","exports","Locale","EN","GB","SW"],"sourceRoot":"../../../../src","sources":["shared/translation/constants.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,GAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,GAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,GAAA,GAAAF,sBAAA,CAAAF,OAAA;AAA+C,SAAAE,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAExC,MAAMG,oBAAoB,GAAAC,OAAA,CAAAD,oBAAA,GAAG;
|
|
1
|
+
{"version":3,"names":["_types","require","_en","_interopRequireDefault","_gb","_sw","e","__esModule","default","LOCALIZATION_CONFIGS","exports","Locale","EN","GB","SW","RELATIVE_TIME_LABELS","justNow","minuteAgo","minutesAgo","hourAgo","hoursAgo","dayAgo","daysAgo","monthAgo","monthsAgo","yearAgo","yearsAgo"],"sourceRoot":"../../../../src","sources":["shared/translation/constants.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,GAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,GAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,GAAA,GAAAF,sBAAA,CAAAF,OAAA;AAA+C,SAAAE,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAExC,MAAMG,oBAAoB,GAAAC,OAAA,CAAAD,oBAAA,GAAG;EAClC,CAACE,aAAM,CAACC,EAAE,GAAGA,WAAE;EACf,CAACD,aAAM,CAACE,EAAE,GAAGA,WAAE;EACf,CAACF,aAAM,CAACG,EAAE,GAAGA;AACf,CAAC;AAEM,MAAMC,oBAAoB,GAAAL,OAAA,CAAAK,oBAAA,GAAG;EAClC,CAACJ,aAAM,CAACC,EAAE,GAAG;IACXI,OAAO,EAAE,UAAU;IACnBC,SAAS,EAAE,YAAY;IACvBC,UAAU,EAAE,aAAa;IACzBC,OAAO,EAAE,UAAU;IACnBC,QAAQ,EAAE,WAAW;IACrBC,MAAM,EAAE,SAAS;IACjBC,OAAO,EAAE,UAAU;IACnBC,QAAQ,EAAE,WAAW;IACrBC,SAAS,EAAE,YAAY;IACvBC,OAAO,EAAE,UAAU;IACnBC,QAAQ,EAAE;EACZ,CAAC;EACD,CAACf,aAAM,CAACG,EAAE,GAAG;IACXE,OAAO,EAAE,eAAe;IACxBC,SAAS,EAAE,aAAa;IACxBC,UAAU,EAAE,eAAe;IAC3BC,OAAO,EAAE,aAAa;IACtBC,QAAQ,EAAE,cAAc;IACxBC,MAAM,EAAE,WAAW;IACnBC,OAAO,EAAE,aAAa;IACtBC,QAAQ,EAAE,aAAa;IACvBC,SAAS,EAAE,eAAe;IAC1BC,OAAO,EAAE,UAAU;IACnBC,QAAQ,EAAE;EACZ,CAAC;EACD,CAACf,aAAM,CAACE,EAAE,GAAG;IACXG,OAAO,EAAE,UAAU;IACnBC,SAAS,EAAE,YAAY;IACvBC,UAAU,EAAE,aAAa;IACzBC,OAAO,EAAE,UAAU;IACnBC,QAAQ,EAAE,WAAW;IACrBC,MAAM,EAAE,SAAS;IACjBC,OAAO,EAAE,UAAU;IACnBC,QAAQ,EAAE,WAAW;IACrBC,SAAS,EAAE,YAAY;IACvBC,OAAO,EAAE,UAAU;IACnBC,QAAQ,EAAE;EACZ;AACF,CAAC","ignoreList":[]}
|
|
@@ -10,18 +10,27 @@ export const DEFAULT_VOICE = {
|
|
|
10
10
|
languageCode: 'en-US',
|
|
11
11
|
name: 'en-US-Wavenet-C'
|
|
12
12
|
};
|
|
13
|
-
export const TEXT_TO_SPEECH_CONFIG = Platform.
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
export const TEXT_TO_SPEECH_CONFIG = Platform.select({
|
|
14
|
+
ios: {
|
|
15
|
+
audioConfig: {
|
|
16
|
+
audioEncoding: 'MP3',
|
|
17
|
+
pitch: 0.8,
|
|
18
|
+
speakingRate: 0.8
|
|
19
|
+
},
|
|
20
|
+
voice: {
|
|
21
|
+
languageCode: 'en-US',
|
|
22
|
+
name: 'en-US-Wavenet-C'
|
|
23
|
+
}
|
|
18
24
|
},
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
25
|
+
default: {
|
|
26
|
+
audioConfig: AUDIO_CONFIG,
|
|
27
|
+
voice: DEFAULT_VOICE
|
|
22
28
|
}
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
|
|
29
|
+
});
|
|
30
|
+
export const KATEX_REPLACEMENTS = {
|
|
31
|
+
'\\$': '__KATEX_DOLLAR_SYMBOL__'
|
|
32
|
+
};
|
|
33
|
+
export const KATEX_REPLACEMENTS_REVERSE = {
|
|
34
|
+
__KATEX_DOLLAR_SYMBOL__: '$'
|
|
26
35
|
};
|
|
27
36
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Platform","AUDIO_CONFIG","audioEncoding","pitch","speakingRate","DEFAULT_VOICE","languageCode","name","TEXT_TO_SPEECH_CONFIG","
|
|
1
|
+
{"version":3,"names":["Platform","AUDIO_CONFIG","audioEncoding","pitch","speakingRate","DEFAULT_VOICE","languageCode","name","TEXT_TO_SPEECH_CONFIG","select","ios","audioConfig","voice","default","KATEX_REPLACEMENTS","KATEX_REPLACEMENTS_REVERSE","__KATEX_DOLLAR_SYMBOL__"],"sourceRoot":"../../../../src","sources":["features/chatbot/constants.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,cAAc;AAEvC,OAAO,MAAMC,YAAY,GAAG;EAC1BC,aAAa,EAAE,UAAU;EACzBC,KAAK,EAAE,CAAC;EACRC,YAAY,EAAE;AAChB,CAAC;AAED,OAAO,MAAMC,aAAa,GAAG;EAC3BC,YAAY,EAAE,OAAO;EACrBC,IAAI,EAAE;AACR,CAAC;AAED,OAAO,MAAMC,qBAAqB,GAAGR,QAAQ,CAACS,MAAM,CAAC;EACnDC,GAAG,EAAE;IACHC,WAAW,EAAE;MACXT,aAAa,EAAE,KAAK;MACpBC,KAAK,EAAE,GAAG;MACVC,YAAY,EAAE;IAChB,CAAC;IACDQ,KAAK,EAAE;MACLN,YAAY,EAAE,OAAO;MACrBC,IAAI,EAAE;IACR;EACF,CAAC;EACDM,OAAO,EAAE;IACPF,WAAW,EAAEV,YAAY;IACzBW,KAAK,EAAEP;EACT;AACF,CAAC,CAAC;AAEF,OAAO,MAAMS,kBAAkB,GAAG;EAChC,KAAK,EAAE;AACT,CAAU;AAEV,OAAO,MAAMC,0BAA0B,GAAG;EACxCC,uBAAuB,EAAE;AAC3B,CAAU","ignoreList":[]}
|
|
@@ -2,11 +2,31 @@
|
|
|
2
2
|
|
|
3
3
|
import { createEffect } from 'effector';
|
|
4
4
|
import { createControllerEffect } from "../../../lib/effector/index.js";
|
|
5
|
+
import { KATEX_REPLACEMENTS, KATEX_REPLACEMENTS_REVERSE } from "../constants.js";
|
|
5
6
|
export class ChatbotAPI {
|
|
7
|
+
replaceKatexSyntax(texts, reverse = false) {
|
|
8
|
+
const replacements = reverse ? Object.entries(KATEX_REPLACEMENTS_REVERSE) : Object.entries(KATEX_REPLACEMENTS);
|
|
9
|
+
return texts.map(text => replacements.reduce((newText, [pattern, placeholder]) => newText.replace(new RegExp(pattern, 'g'), placeholder), text));
|
|
10
|
+
}
|
|
6
11
|
constructor(api) {
|
|
7
12
|
this.postMessageFx = createControllerEffect(api.postMessage);
|
|
8
13
|
this.getAlternativesFx = createEffect(api.getAlternatives);
|
|
9
|
-
this.translateTextFx = createEffect(
|
|
14
|
+
this.translateTextFx = createEffect(async payload => {
|
|
15
|
+
const response = await api.postTranslateText({
|
|
16
|
+
...payload,
|
|
17
|
+
text: this.replaceKatexSyntax(payload.text)
|
|
18
|
+
});
|
|
19
|
+
return {
|
|
20
|
+
...response,
|
|
21
|
+
data: {
|
|
22
|
+
...response.data,
|
|
23
|
+
translations: response.data.translations.map(translation => ({
|
|
24
|
+
...translation,
|
|
25
|
+
translatedText: this.replaceKatexSyntax([translation.translatedText], true)[0]
|
|
26
|
+
}))
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
});
|
|
10
30
|
this.textToSpeechTextFx = createEffect(api.postTextToSpeech);
|
|
11
31
|
}
|
|
12
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createEffect","createControllerEffect","ChatbotAPI","constructor","api","postMessageFx","postMessage","getAlternativesFx","getAlternatives","translateTextFx","postTranslateText","textToSpeechTextFx","postTextToSpeech"],"sourceRoot":"../../../../../src","sources":["features/chatbot/model/api.ts"],"mappings":";;AAAA,SAASA,YAAY,QAAgB,UAAU;AAE/C,SAASC,sBAAsB,QAAQ,gCAAuB;
|
|
1
|
+
{"version":3,"names":["createEffect","createControllerEffect","KATEX_REPLACEMENTS","KATEX_REPLACEMENTS_REVERSE","ChatbotAPI","replaceKatexSyntax","texts","reverse","replacements","Object","entries","map","text","reduce","newText","pattern","placeholder","replace","RegExp","constructor","api","postMessageFx","postMessage","getAlternativesFx","getAlternatives","translateTextFx","payload","response","postTranslateText","data","translations","translation","translatedText","textToSpeechTextFx","postTextToSpeech"],"sourceRoot":"../../../../../src","sources":["features/chatbot/model/api.ts"],"mappings":";;AAAA,SAASA,YAAY,QAAgB,UAAU;AAE/C,SAASC,sBAAsB,QAAQ,gCAAuB;AAY9D,SAASC,kBAAkB,EAAEC,0BAA0B,QAAQ,iBAAc;AAE7E,OAAO,MAAMC,UAAU,CAAC;EAMdC,kBAAkBA,CAACC,KAAe,EAAEC,OAAO,GAAG,KAAK,EAAE;IAC3D,MAAMC,YAAY,GAAGD,OAAO,GACxBE,MAAM,CAACC,OAAO,CAACP,0BAA0B,CAAC,GAC1CM,MAAM,CAACC,OAAO,CAACR,kBAAkB,CAAC;IAEtC,OAAOI,KAAK,CAACK,GAAG,CAACC,IAAI,IACnBJ,YAAY,CAACK,MAAM,CACjB,CAACC,OAAO,EAAE,CAACC,OAAO,EAAEC,WAAW,CAAC,KAAKF,OAAO,CAACG,OAAO,CAAC,IAAIC,MAAM,CAACH,OAAO,EAAE,GAAG,CAAC,EAAEC,WAAW,CAAC,EAC3FJ,IACF,CACF,CAAC;EACH;EAEAO,WAAWA,CAACC,GAA6B,EAAE;IACzC,IAAI,CAACC,aAAa,GAAGpB,sBAAsB,CAACmB,GAAG,CAACE,WAAW,CAAC;IAC5D,IAAI,CAACC,iBAAiB,GAAGvB,YAAY,CAACoB,GAAG,CAACI,eAAe,CAAC;IAC1D,IAAI,CAACC,eAAe,GAAGzB,YAAY,CAAC,MAAO0B,OAA+B,IAAK;MAC7E,MAAMC,QAAQ,GAAG,MAAMP,GAAG,CAACQ,iBAAiB,CAAC;QAC3C,GAAGF,OAAO;QACVd,IAAI,EAAE,IAAI,CAACP,kBAAkB,CAACqB,OAAO,CAACd,IAAI;MAC5C,CAAC,CAAC;MAEF,OAAO;QACL,GAAGe,QAAQ;QACXE,IAAI,EAAE;UACJ,GAAGF,QAAQ,CAACE,IAAI;UAChBC,YAAY,EAAEH,QAAQ,CAACE,IAAI,CAACC,YAAY,CAACnB,GAAG,CAACoB,WAAW,KAAK;YAC3D,GAAGA,WAAW;YACdC,cAAc,EAAE,IAAI,CAAC3B,kBAAkB,CAAC,CAAC0B,WAAW,CAACC,cAAc,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;UAC/E,CAAC,CAAC;QACJ;MACF,CAAC;IACH,CAAC,CAAC;IACF,IAAI,CAACC,kBAAkB,GAAGjC,YAAY,CAACoB,GAAG,CAACc,gBAAgB,CAAC;EAC9D;AACF","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","Svg","Path","COLORS","jsx","_jsx","MessageBubbleIcon","size","color","NEUTRAL_1","width","height","viewBox","fill","children","d","stroke","strokeWidth","strokeLinejoin"],"sourceRoot":"../../../../../../src","sources":["features/feedback/assets/icons/MessageBubbleIcon.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,GAAG,IAAIC,IAAI,QAAQ,kBAAkB;AAC5C,SAAoBC,MAAM,QAAQ,4BAA4B;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAE9D,OAAO,MAAMC,iBAAiB,GAAGA,CAAC;EAAEC,IAAI,GAAG,EAAE;EAAEC,KAAK,GAAGL,MAAM,CAACM;AAAqB,CAAC,KAAK;EACvF,oBACEJ,IAAA,CAACJ,GAAG;IAACS,KAAK,EAAEH,IAAK;IAACI,MAAM,EAAEJ,IAAK;IAACK,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAAAC,QAAA,eAC7DT,IAAA,CAACH,IAAI;MACHa,CAAC,EAAC,+SAA+S;MACjTC,MAAM,EAAER,KAAM;MACdS,WAAW,EAAC,GAAG;MACfC,cAAc,EAAC;IAAO,CACvB;EAAC,CACC,CAAC;AAEV,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","Svg","Path","COLORS","jsx","_jsx","XCloseIcon","size","color","NEUTRAL_9","width","height","viewBox","fill","children","d"],"sourceRoot":"../../../../../../src","sources":["features/feedback/assets/icons/XCloseIcon.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,GAAG,IAAIC,IAAI,QAAQ,kBAAkB;AAC5C,SAAoBC,MAAM,QAAQ,4BAA4B;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAE9D,OAAO,MAAMC,UAAU,GAAGA,CAAC;EAAEC,IAAI,GAAG,EAAE;EAAEC,KAAK,GAAGL,MAAM,CAACM;AAAqB,CAAC,KAAK;EAChF,oBACEJ,IAAA,CAACJ,GAAG;IAACS,KAAK,EAAEH,IAAK;IAACI,MAAM,EAAEJ,IAAK;IAACK,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAAAC,QAAA,eAC7DT,IAAA,CAACH,IAAI;MACHa,CAAC,EAAC,ufAAuf;MACzfF,IAAI,EAAEL;IAAM,CACb;EAAC,CACC,CAAC;AAEV,CAAC","ignoreList":[]}
|
package/dist/module/features/feedback/components/{EmptyComment/EmptyComment.js → EmptyComment.js}
RENAMED
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
import React from 'react';
|
|
4
4
|
import { StyleSheet, Text, View } from 'react-native';
|
|
5
5
|
import { COLORS } from '@magmamath/react-native-ui';
|
|
6
|
-
import { BUENOS_AIRES_FONT, NO_COMMENTS_SWE, NO_COMMENTS_ENG } from "
|
|
7
|
-
import { Locale } from "
|
|
6
|
+
import { BUENOS_AIRES_FONT, NO_COMMENTS_SWE, NO_COMMENTS_ENG } from "../constants.js";
|
|
7
|
+
import { Locale } from "../../../shared/translation/types.js";
|
|
8
8
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
9
9
|
export const EmptyComment = ({
|
|
10
10
|
locale
|
|
@@ -13,7 +13,7 @@ export const EmptyComment = ({
|
|
|
13
13
|
style: styles.container,
|
|
14
14
|
children: /*#__PURE__*/_jsx(Text, {
|
|
15
15
|
style: styles.text,
|
|
16
|
-
children: locale === Locale.
|
|
16
|
+
children: locale === Locale.SW ? NO_COMMENTS_SWE : NO_COMMENTS_ENG
|
|
17
17
|
})
|
|
18
18
|
});
|
|
19
19
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","StyleSheet","Text","View","COLORS","BUENOS_AIRES_FONT","NO_COMMENTS_SWE","NO_COMMENTS_ENG","Locale","jsx","_jsx","EmptyComment","locale","style","styles","container","children","text","SW","create","padding","gap","borderTopLeftRadius","borderTopRightRadius","borderBottomRightRadius","shadowColor","NEUTRAL_10","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","backgroundColor","NEUTRAL_3","alignItems","justifyContent","fontSize","fontFamily","fontWeight","color","NEUTRAL_7","lineHeight"],"sourceRoot":"../../../../../src","sources":["features/feedback/components/EmptyComment.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,EAAEC,IAAI,EAAEC,IAAI,QAAQ,cAAc;AACrD,SAASC,MAAM,QAAQ,4BAA4B;AACnD,SAASC,iBAAiB,EAAEC,eAAe,EAAEC,eAAe,QAAQ,iBAAc;AAClF,SAASC,MAAM,QAAQ,sCAAmC;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAM1D,OAAO,MAAMC,YAAY,GAAGA,CAAC;EAAEC;AAA0B,CAAC,KAAK;EAC7D,oBACEF,IAAA,CAACP,IAAI;IAACU,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,eAC5BN,IAAA,CAACR,IAAI;MAACW,KAAK,EAAEC,MAAM,CAACG,IAAK;MAAAD,QAAA,EAAEJ,MAAM,KAAKJ,MAAM,CAACU,EAAE,GAAGZ,eAAe,GAAGC;IAAe,CAAO;EAAC,CACvF,CAAC;AAEX,CAAC;AAED,MAAMO,MAAM,GAAGb,UAAU,CAACkB,MAAM,CAAC;EAC/BJ,SAAS,EAAE;IACTK,OAAO,EAAE,CAAC;IACVC,GAAG,EAAE,EAAE;IACPC,mBAAmB,EAAE,CAAC;IACtBC,oBAAoB,EAAE,CAAC;IACvBC,uBAAuB,EAAE,CAAC;IAC1BC,WAAW,EAAErB,MAAM,CAACsB,UAAU;IAC9BC,YAAY,EAAE;MAAEC,KAAK,EAAE,CAAC;MAAEC,MAAM,EAAE;IAAE,CAAC;IACrCC,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE,CAAC;IACfC,SAAS,EAAE,CAAC;IACZC,eAAe,EAAE7B,MAAM,CAAC8B,SAAS;IACjCC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB,CAAC;EACDnB,IAAI,EAAE;IACJoB,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAEjC,iBAAiB;IAC7BkC,UAAU,EAAE,KAAK;IACjBC,KAAK,EAAEpC,MAAM,CAACqC,SAAS;IACvBrB,OAAO,EAAE,CAAC;IACVsB,UAAU,EAAE;EACd;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
import React from 'react';
|
|
4
4
|
import { Text, View, StyleSheet } from 'react-native';
|
|
5
|
-
import { MessageBubbleIcon } from "../icons/MessageBubbleIcon.js";
|
|
5
|
+
import { MessageBubbleIcon } from "../assets/icons/MessageBubbleIcon.js";
|
|
6
6
|
import { COLORS } from '@magmamath/react-native-ui';
|
|
7
|
-
import { BUENOS_AIRES_FONT } from "
|
|
7
|
+
import { BUENOS_AIRES_FONT } from "../constants.js";
|
|
8
8
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
9
|
export const ListCardCommentsCount = ({
|
|
10
10
|
count
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","Text","View","StyleSheet","MessageBubbleIcon","COLORS","BUENOS_AIRES_FONT","jsx","_jsx","jsxs","_jsxs","ListCardCommentsCount","count","style","styles","container","children","size","color","NEUTRAL_7","text","create","width","flexDirection","alignItems","gap","fontSize","fontFamily","fontWeight"],"sourceRoot":"../../../../../src","sources":["features/feedback/components/ListCardCommentsCount.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,IAAI,EAAEC,UAAU,QAAQ,cAAc;AACrD,SAASC,iBAAiB,QAAQ,sCAAmC;AACrE,SAASC,MAAM,QAAQ,4BAA4B;AACnD,SAASC,iBAAiB,QAAQ,iBAAc;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAMhD,OAAO,MAAMC,qBAAqB,GAAGA,CAAC;EAAEC;AAAkC,CAAC,KAAK;EAC9E,oBACEF,KAAA,CAACR,IAAI;IAACW,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,gBAC5BR,IAAA,CAACJ,iBAAiB;MAACa,IAAI,EAAE,EAAG;MAACC,KAAK,EAAEb,MAAM,CAACc;IAAU,CAAE,CAAC,eACxDX,IAAA,CAACP,IAAI;MAACY,KAAK,EAAEC,MAAM,CAACM,IAAK;MAAAJ,QAAA,EAAEJ;IAAK,CAAO,CAAC;EAAA,CACpC,CAAC;AAEX,CAAC;AAED,MAAME,MAAM,GAAGX,UAAU,CAACkB,MAAM,CAAC;EAC/BN,SAAS,EAAE;IACTO,KAAK,EAAE,EAAE;IACTC,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAE;EACP,CAAC;EACDL,IAAI,EAAE;IACJM,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAErB,iBAAiB;IAC7BY,KAAK,EAAEb,MAAM,CAACc,SAAS;IACvBS,UAAU,EAAE;EACd;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -10,16 +10,16 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
10
10
|
export const TeacherFeedback = ({
|
|
11
11
|
model,
|
|
12
12
|
mode,
|
|
13
|
+
assignmentId,
|
|
14
|
+
problemId,
|
|
15
|
+
locale,
|
|
13
16
|
isExam = false
|
|
14
17
|
}) => {
|
|
15
|
-
const isOpen = useUnit(model.$
|
|
16
|
-
const
|
|
17
|
-
const problemId = useUnit(model.$currentProblemId);
|
|
18
|
-
const locale = useUnit(model.$locale);
|
|
19
|
-
const isLoading = useUnit(model.getCommentsByAssignmentIdFx.pending);
|
|
18
|
+
const isOpen = useUnit(model.$isOpen);
|
|
19
|
+
const isLoading = useUnit(model.api.getCommentsFx.pending);
|
|
20
20
|
const teacherFeedback = useStoreMap({
|
|
21
|
-
store: model.$
|
|
22
|
-
fn: (feedback, [assignmentId, problemId]) => feedback
|
|
21
|
+
store: model.comments.$data,
|
|
22
|
+
fn: (feedback, [assignmentId, problemId]) => feedback?.get(assignmentId)?.[problemId] ?? null,
|
|
23
23
|
keys: [assignmentId, problemId]
|
|
24
24
|
});
|
|
25
25
|
if (!problemId || !teacherFeedback) return null;
|
|
@@ -30,7 +30,7 @@ export const TeacherFeedback = ({
|
|
|
30
30
|
locale: locale,
|
|
31
31
|
mode: mode
|
|
32
32
|
}), /*#__PURE__*/_jsx(TeacherFeedbackButton, {
|
|
33
|
-
onPress: () => model.
|
|
33
|
+
onPress: () => model.setIsOpen(!isOpen),
|
|
34
34
|
unreadCommentsCount: teacherFeedback.unreadMessagesCount,
|
|
35
35
|
isOpen: isOpen,
|
|
36
36
|
isLoading: isLoading,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useStoreMap","useUnit","View","StyleSheet","TeacherFeedbackButton","TeacherFeedbackComments","FeedbackButtonColors","FeedbackButtonSize","FeedbackMode","jsx","_jsx","jsxs","_jsxs","TeacherFeedback","model","mode","
|
|
1
|
+
{"version":3,"names":["React","useStoreMap","useUnit","View","StyleSheet","TeacherFeedbackButton","TeacherFeedbackComments","FeedbackButtonColors","FeedbackButtonSize","FeedbackMode","jsx","_jsx","jsxs","_jsxs","TeacherFeedback","model","mode","assignmentId","problemId","locale","isExam","isOpen","$isOpen","isLoading","api","getCommentsFx","pending","teacherFeedback","store","comments","$data","fn","feedback","get","keys","style","styles","container","children","onPress","setIsOpen","unreadCommentsCount","unreadMessagesCount","size","NORMAL","SMALL","LARGE","color","PURPLE","BLUE","create","alignItems","gap"],"sourceRoot":"../../../../../src","sources":["features/feedback/components/TeacherFeedback.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,WAAW,EAAEC,OAAO,QAAQ,gBAAgB;AACrD,SAASC,IAAI,EAAEC,UAAU,QAAQ,cAAc;AAC/C,SAASC,qBAAqB,QAAQ,kDAA+C;AACrF,SAASC,uBAAuB,QAAQ,sDAAmD;AAC3F,SAASC,oBAAoB,EAAEC,kBAAkB,EAAEC,YAAY,QAAQ,iBAAc;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAarF,OAAO,MAAMC,eAAe,GAAGA,CAAC;EAC9BC,KAAK;EACLC,IAAI;EACJC,YAAY;EACZC,SAAS;EACTC,MAAM;EACNC,MAAM,GAAG;AACW,CAAC,KAAK;EAC1B,MAAMC,MAAM,GAAGnB,OAAO,CAACa,KAAK,CAACO,OAAO,CAAC;EACrC,MAAMC,SAAS,GAAGrB,OAAO,CAACa,KAAK,CAACS,GAAG,CAACC,aAAa,CAACC,OAAO,CAAC;EAC1D,MAAMC,eAAe,GAAG1B,WAAW,CAAC;IAClC2B,KAAK,EAAEb,KAAK,CAACc,QAAQ,CAACC,KAAK;IAC3BC,EAAE,EAAEA,CAACC,QAAQ,EAAE,CAACf,YAAY,EAAEC,SAAS,CAAC,KAAKc,QAAQ,EAAEC,GAAG,CAAChB,YAAY,CAAC,GAAGC,SAAS,CAAC,IAAI,IAAI;IAC7FgB,IAAI,EAAE,CAACjB,YAAY,EAAEC,SAAS;EAChC,CAAC,CAAC;EAEF,IAAI,CAACA,SAAS,IAAI,CAACS,eAAe,EAAE,OAAO,IAAI;EAE/C,oBACEd,KAAA,CAACV,IAAI;IAACgC,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,GAC3BjB,MAAM,iBACLV,IAAA,CAACL,uBAAuB;MAACuB,QAAQ,EAAEF,eAAe,CAACE,QAAS;MAACV,MAAM,EAAEA,MAAO;MAACH,IAAI,EAAEA;IAAK,CAAE,CAC3F,eACDL,IAAA,CAACN,qBAAqB;MACpBkC,OAAO,EAAEA,CAAA,KAAMxB,KAAK,CAACyB,SAAS,CAAC,CAACnB,MAAM,CAAE;MACxCoB,mBAAmB,EAAEd,eAAe,CAACe,mBAAoB;MACzDrB,MAAM,EAAEA,MAAO;MACfE,SAAS,EAAEA,SAAU;MACrBoB,IAAI,EAAE3B,IAAI,KAAKP,YAAY,CAACmC,MAAM,GAAGpC,kBAAkB,CAACqC,KAAK,GAAGrC,kBAAkB,CAACsC,KAAM;MACzFC,KAAK,EAAE3B,MAAM,GAAGb,oBAAoB,CAACyC,MAAM,GAAGzC,oBAAoB,CAAC0C;IAAK,CACzE,CAAC;EAAA,CACE,CAAC;AAEX,CAAC;AAED,MAAMb,MAAM,GAAGhC,UAAU,CAAC8C,MAAM,CAAC;EAC/Bb,SAAS,EAAE;IACTc,UAAU,EAAE,UAAU;IACtBC,GAAG,EAAE;EACP;AACF,CAAC,CAAC","ignoreList":[]}
|
package/dist/module/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.js
CHANGED
|
@@ -4,8 +4,8 @@ import React from 'react';
|
|
|
4
4
|
import { StyleSheet, View } from 'react-native';
|
|
5
5
|
import { Button, COLORS } from '@magmamath/react-native-ui';
|
|
6
6
|
import { UnreadMessagesBadge } from "../UnreadMessagesBadge.js";
|
|
7
|
-
import { MessageBubbleIcon } from "
|
|
8
|
-
import { XCloseIcon } from "
|
|
7
|
+
import { MessageBubbleIcon } from "../../assets/icons/MessageBubbleIcon.js";
|
|
8
|
+
import { XCloseIcon } from "../../assets/icons/XCloseIcon.js";
|
|
9
9
|
import { COLOR_SCHEMES } from "./colorSchemes.js";
|
|
10
10
|
import { FeedbackButtonColors, FeedbackButtonSize, TEACHER_FEEDBACK_BUTTON_ID } from "../../constants.js";
|
|
11
11
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
package/dist/module/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","StyleSheet","View","Button","COLORS","UnreadMessagesBadge","MessageBubbleIcon","XCloseIcon","COLOR_SCHEMES","FeedbackButtonColors","FeedbackButtonSize","TEACHER_FEEDBACK_BUTTON_ID","jsx","_jsx","jsxs","_jsxs","ICON_SIZES","LARGE","SMALL","TeacherFeedbackButton","isOpen","onPress","unreadCommentsCount","isLoading","size","color","BLUE","isLarge","isPurpleColor","PURPLE","id","variant","disabled","style","container","styles","containerLarge","button","borderColor","NEUTRAL_5","customColorScheme","GREY","icon","PURPLE_6","BLUE_6","iconContainer","children","NEUTRAL_1","NEUTRAL_9","badgeContainerLarge","badgeContainer","badgeContent","textStyle","textLarge","badgeLarge","create","width","height","borderWidth","buttonLarge","position","top","right","fontSize","lineHeight","textAlign","alignItems","justifyContent","borderRadius"],"sourceRoot":"../../../../../../src","sources":["features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC/C,SAASC,MAAM,EAAEC,MAAM,QAAQ,4BAA4B;AAC3D,SAASC,mBAAmB,QAAQ,2BAAwB;AAC5D,SAASC,iBAAiB,QAAQ
|
|
1
|
+
{"version":3,"names":["React","StyleSheet","View","Button","COLORS","UnreadMessagesBadge","MessageBubbleIcon","XCloseIcon","COLOR_SCHEMES","FeedbackButtonColors","FeedbackButtonSize","TEACHER_FEEDBACK_BUTTON_ID","jsx","_jsx","jsxs","_jsxs","ICON_SIZES","LARGE","SMALL","TeacherFeedbackButton","isOpen","onPress","unreadCommentsCount","isLoading","size","color","BLUE","isLarge","isPurpleColor","PURPLE","id","variant","disabled","style","container","styles","containerLarge","button","borderColor","NEUTRAL_5","customColorScheme","GREY","icon","PURPLE_6","BLUE_6","iconContainer","children","NEUTRAL_1","NEUTRAL_9","badgeContainerLarge","badgeContainer","badgeContent","textStyle","textLarge","badgeLarge","create","width","height","borderWidth","buttonLarge","position","top","right","fontSize","lineHeight","textAlign","alignItems","justifyContent","borderRadius"],"sourceRoot":"../../../../../../src","sources":["features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC/C,SAASC,MAAM,EAAEC,MAAM,QAAQ,4BAA4B;AAC3D,SAASC,mBAAmB,QAAQ,2BAAwB;AAC5D,SAASC,iBAAiB,QAAQ,yCAAsC;AACxE,SAASC,UAAU,QAAQ,kCAA+B;AAC1D,SAASC,aAAa,QAAQ,mBAAgB;AAC9C,SACEC,oBAAoB,EACpBC,kBAAkB,EAClBC,0BAA0B,QACrB,oBAAiB;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAExB,MAAMC,UAAU,GAAG;EACjB,CAACN,kBAAkB,CAACO,KAAK,GAAG,EAAE;EAC9B,CAACP,kBAAkB,CAACQ,KAAK,GAAG;AAC9B,CAAC;AAWD,OAAO,MAAMC,qBAAqB,GAAGA,CAAC;EACpCC,MAAM;EACNC,OAAO;EACPC,mBAAmB;EACnBC,SAAS;EACTC,IAAI,GAAGd,kBAAkB,CAACO,KAAK;EAC/BQ,KAAK,GAAGhB,oBAAoB,CAACiB;AACH,CAAC,KAAK;EAChC,MAAMC,OAAO,GAAGH,IAAI,KAAKd,kBAAkB,CAACO,KAAK;EACjD,MAAMW,aAAa,GAAGH,KAAK,KAAKhB,oBAAoB,CAACoB,MAAM;EAE3D,IAAIT,MAAM,EAAE;IACV,oBACEP,IAAA,CAACV,MAAM;MACL2B,EAAE,EAAEnB,0BAA2B;MAC/BU,OAAO,EAAEA,OAAQ;MACjBG,IAAI,EAAC,OAAO;MACZO,OAAO,EAAC,SAAS;MACjBC,QAAQ,EAAET,SAAU;MACpBA,SAAS,EAAEA,SAAU;MACrBU,KAAK,EAAE;QACLC,SAAS,EAAEP,OAAO,GAAGQ,MAAM,CAACC,cAAc,GAAGD,MAAM,CAACD,SAAS;QAC7DG,MAAM,EAAE,CAACF,MAAM,CAACE,MAAM,EAAE;UAAEC,WAAW,EAAElC,MAAM,CAACmC;QAAU,CAAC,EAAEJ,MAAM,CAACX,IAAI,CAAC;MACzE,CAAE;MACFgB,iBAAiB,EAAEhC,aAAa,CAACiC,IAAK;MACtCC,IAAI,eAAE7B,IAAA,CAACN,UAAU;QAACiB,IAAI,EAAER,UAAU,CAACQ,IAAI;MAAE,CAAE;IAAE,CAC9C,CAAC;EAEN;EAEA,oBACEX,IAAA,CAACV,MAAM;IACL2B,EAAE,EAAEnB,0BAA2B;IAC/BU,OAAO,EAAEA,OAAQ;IACjBG,IAAI,EAAC,OAAO;IACZO,OAAO,EAAC,SAAS;IACjBC,QAAQ,EAAET,SAAU;IACpBA,SAAS,EAAEA,SAAU;IACrBU,KAAK,EAAE;MACLC,SAAS,EAAEP,OAAO,GAAGQ,MAAM,CAACC,cAAc,GAAGD,MAAM,CAACD,SAAS;MAC7DG,MAAM,EAAE,CACNF,MAAM,CAACE,MAAM,EACb;QACEC,WAAW,EAAE,CAAC,CAAChB,mBAAmB,GAC9BM,aAAa,GACXxB,MAAM,CAACuC,QAAQ,GACfvC,MAAM,CAACwC,MAAM,GACfxC,MAAM,CAACmC;MACb,CAAC,EACDJ,MAAM,CAACX,IAAI,CAAC;IAEhB,CAAE;IACFgB,iBAAiB,EACf,CAAC,CAAClB,mBAAmB,GACjBM,aAAa,GACXpB,aAAa,CAACqB,MAAM,GACpBrB,aAAa,CAACkB,IAAI,GACpBlB,aAAa,CAACiC,IACnB;IACDC,IAAI,eACF3B,KAAA,CAACb,IAAI;MAAC+B,KAAK,EAAEE,MAAM,CAACU,aAAc;MAAAC,QAAA,gBAChCjC,IAAA,CAACP,iBAAiB;QAChBmB,KAAK,EAAE,CAAC,CAACH,mBAAmB,GAAGlB,MAAM,CAAC2C,SAAS,GAAG3C,MAAM,CAAC4C,SAAU;QACnExB,IAAI,EAAER,UAAU,CAACQ,IAAI;MAAE,CACxB,CAAC,EACD,CAAC,CAACF,mBAAmB,iBACpBT,IAAA,CAACX,IAAI;QAAC+B,KAAK,EAAEN,OAAO,GAAGQ,MAAM,CAACc,mBAAmB,GAAGd,MAAM,CAACe,cAAe;QAAAJ,QAAA,eACxEjC,IAAA,CAACR,mBAAmB;UAClB8C,YAAY,EAAE7B,mBAAoB;UAClC8B,SAAS,EAAEzB,OAAO,IAAIQ,MAAM,CAACkB,SAAU;UACvCpB,KAAK,EAAEN,OAAO,IAAIQ,MAAM,CAACmB;QAAW,CACrC;MAAC,CACE,CACP;IAAA,CACG;EACP,CACF,CAAC;AAEN,CAAC;AAED,MAAMnB,MAAM,GAAGlC,UAAU,CAACsD,MAAM,CAAC;EAC/BrB,SAAS,EAAE;IACTsB,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE;EACV,CAAC;EACDrB,cAAc,EAAE;IACdoB,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE;EACV,CAAC;EACD,CAAC/C,kBAAkB,CAACQ,KAAK,GAAG;IAC1BsC,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE;EACV,CAAC;EACD,CAAC/C,kBAAkB,CAACO,KAAK,GAAG;IAC1BuC,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE;EACV,CAAC;EACDpB,MAAM,EAAE;IACNqB,WAAW,EAAE;EACf,CAAC;EACDC,WAAW,EAAE;IACXH,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE,EAAE;IACVC,WAAW,EAAE;EACf,CAAC;EACDb,aAAa,EAAE;IACbe,QAAQ,EAAE;EACZ,CAAC;EACDX,mBAAmB,EAAE;IACnBW,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE,CAAC,EAAE;IACRC,KAAK,EAAE,CAAC;EACV,CAAC;EACDZ,cAAc,EAAE;IACdU,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE,CAAC,EAAE;IACRC,KAAK,EAAE,CAAC;EACV,CAAC;EACDT,SAAS,EAAE;IACTU,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,CAAC;IACbC,SAAS,EAAE,QAAQ;IACnBC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB,CAAC;EACDb,UAAU,EAAE;IACVE,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE,EAAE;IACVW,YAAY,EAAE;EAChB;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
import React from 'react';
|
|
4
4
|
import { View, Text, StyleSheet } from 'react-native';
|
|
5
5
|
import { COLORS } from '@magmamath/react-native-ui';
|
|
6
|
-
import { getRelativeTime } from "../../helpers.js";
|
|
7
6
|
import { BUENOS_AIRES_FONT } from "../../constants.js";
|
|
8
|
-
import {
|
|
7
|
+
import { getRelativeTimeText } from "../../../../lib/helpers/helpers.js";
|
|
8
|
+
import { Locale } from '@magmamath/students-features';
|
|
9
9
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
10
10
|
export const TeacherComment = ({
|
|
11
11
|
content,
|
|
@@ -29,7 +29,7 @@ export const TeacherComment = ({
|
|
|
29
29
|
}), /*#__PURE__*/_jsx(Text, {
|
|
30
30
|
style: styles.dateAdded,
|
|
31
31
|
numberOfLines: 1,
|
|
32
|
-
children:
|
|
32
|
+
children: getRelativeTimeText(createdAt, locale ?? Locale.EN)
|
|
33
33
|
})]
|
|
34
34
|
}), /*#__PURE__*/_jsx(View, {
|
|
35
35
|
style: styles.container,
|