@magmamath/students-features 0.2.0 → 0.2.1

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.
Files changed (101) hide show
  1. package/dist/commonjs/features/chatbot/components/ChatControls/ChatControls.js +21 -5
  2. package/dist/commonjs/features/chatbot/components/ChatControls/ChatControls.js.map +1 -1
  3. package/dist/commonjs/features/feedback/components/EmptyComment/EmptyComment.js +2 -2
  4. package/dist/commonjs/features/feedback/components/EmptyComment/EmptyComment.js.map +1 -1
  5. package/dist/commonjs/features/feedback/components/TeacherFeedback.js +12 -5
  6. package/dist/commonjs/features/feedback/components/TeacherFeedback.js.map +1 -1
  7. package/dist/commonjs/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.js +65 -16
  8. package/dist/commonjs/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.js.map +1 -1
  9. package/dist/commonjs/features/feedback/components/TeacherFeedbackButton/colorSchemes.js +17 -0
  10. package/dist/commonjs/features/feedback/components/TeacherFeedbackButton/colorSchemes.js.map +1 -1
  11. package/dist/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherComment.js +7 -3
  12. package/dist/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherComment.js.map +1 -1
  13. package/dist/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.js +16 -5
  14. package/dist/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.js.map +1 -1
  15. package/dist/commonjs/features/feedback/components/UnreadMessagesBadge.js +3 -2
  16. package/dist/commonjs/features/feedback/components/UnreadMessagesBadge.js.map +1 -1
  17. package/dist/commonjs/features/feedback/constants.js +24 -5
  18. package/dist/commonjs/features/feedback/constants.js.map +1 -1
  19. package/dist/commonjs/features/feedback/index.js +11 -0
  20. package/dist/commonjs/features/feedback/index.js.map +1 -1
  21. package/dist/commonjs/features/feedback/model/teacherFeedback.model.js +97 -34
  22. package/dist/commonjs/features/feedback/model/teacherFeedback.model.js.map +1 -1
  23. package/dist/commonjs/features/feedback/types/teacherFeedback.types.js.map +1 -1
  24. package/dist/module/features/chatbot/components/ChatControls/ChatControls.js +22 -6
  25. package/dist/module/features/chatbot/components/ChatControls/ChatControls.js.map +1 -1
  26. package/dist/module/features/feedback/components/EmptyComment/EmptyComment.js +3 -3
  27. package/dist/module/features/feedback/components/EmptyComment/EmptyComment.js.map +1 -1
  28. package/dist/module/features/feedback/components/TeacherFeedback.js +12 -5
  29. package/dist/module/features/feedback/components/TeacherFeedback.js.map +1 -1
  30. package/dist/module/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.js +65 -16
  31. package/dist/module/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.js.map +1 -1
  32. package/dist/module/features/feedback/components/TeacherFeedbackButton/colorSchemes.js +17 -0
  33. package/dist/module/features/feedback/components/TeacherFeedbackButton/colorSchemes.js.map +1 -1
  34. package/dist/module/features/feedback/components/TeacherFeedbackComments/TeacherComment.js +8 -4
  35. package/dist/module/features/feedback/components/TeacherFeedbackComments/TeacherComment.js.map +1 -1
  36. package/dist/module/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.js +17 -6
  37. package/dist/module/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.js.map +1 -1
  38. package/dist/module/features/feedback/components/UnreadMessagesBadge.js +3 -2
  39. package/dist/module/features/feedback/components/UnreadMessagesBadge.js.map +1 -1
  40. package/dist/module/features/feedback/constants.js +23 -4
  41. package/dist/module/features/feedback/constants.js.map +1 -1
  42. package/dist/module/features/feedback/index.js +1 -0
  43. package/dist/module/features/feedback/index.js.map +1 -1
  44. package/dist/module/features/feedback/model/teacherFeedback.model.js +97 -34
  45. package/dist/module/features/feedback/model/teacherFeedback.model.js.map +1 -1
  46. package/dist/module/features/feedback/types/teacherFeedback.types.js.map +1 -1
  47. package/dist/typescript/commonjs/features/chatbot/components/ChatControls/ChatControls.d.ts.map +1 -1
  48. package/dist/typescript/commonjs/features/feedback/components/TeacherFeedback.d.ts +4 -1
  49. package/dist/typescript/commonjs/features/feedback/components/TeacherFeedback.d.ts.map +1 -1
  50. package/dist/typescript/commonjs/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.d.ts +4 -1
  51. package/dist/typescript/commonjs/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.d.ts.map +1 -1
  52. package/dist/typescript/commonjs/features/feedback/components/TeacherFeedbackButton/colorSchemes.d.ts +17 -0
  53. package/dist/typescript/commonjs/features/feedback/components/TeacherFeedbackButton/colorSchemes.d.ts.map +1 -1
  54. package/dist/typescript/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherComment.d.ts +2 -1
  55. package/dist/typescript/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherComment.d.ts.map +1 -1
  56. package/dist/typescript/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.d.ts +3 -1
  57. package/dist/typescript/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.d.ts.map +1 -1
  58. package/dist/typescript/commonjs/features/feedback/components/UnreadMessagesBadge.d.ts +3 -2
  59. package/dist/typescript/commonjs/features/feedback/components/UnreadMessagesBadge.d.ts.map +1 -1
  60. package/dist/typescript/commonjs/features/feedback/constants.d.ts +15 -3
  61. package/dist/typescript/commonjs/features/feedback/constants.d.ts.map +1 -1
  62. package/dist/typescript/commonjs/features/feedback/index.d.ts +1 -0
  63. package/dist/typescript/commonjs/features/feedback/index.d.ts.map +1 -1
  64. package/dist/typescript/commonjs/features/feedback/model/teacherFeedback.model.d.ts +6 -5
  65. package/dist/typescript/commonjs/features/feedback/model/teacherFeedback.model.d.ts.map +1 -1
  66. package/dist/typescript/commonjs/features/feedback/types/teacherFeedback.types.d.ts +6 -0
  67. package/dist/typescript/commonjs/features/feedback/types/teacherFeedback.types.d.ts.map +1 -1
  68. package/dist/typescript/module/features/chatbot/components/ChatControls/ChatControls.d.ts.map +1 -1
  69. package/dist/typescript/module/features/feedback/components/TeacherFeedback.d.ts +4 -1
  70. package/dist/typescript/module/features/feedback/components/TeacherFeedback.d.ts.map +1 -1
  71. package/dist/typescript/module/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.d.ts +4 -1
  72. package/dist/typescript/module/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.d.ts.map +1 -1
  73. package/dist/typescript/module/features/feedback/components/TeacherFeedbackButton/colorSchemes.d.ts +17 -0
  74. package/dist/typescript/module/features/feedback/components/TeacherFeedbackButton/colorSchemes.d.ts.map +1 -1
  75. package/dist/typescript/module/features/feedback/components/TeacherFeedbackComments/TeacherComment.d.ts +2 -1
  76. package/dist/typescript/module/features/feedback/components/TeacherFeedbackComments/TeacherComment.d.ts.map +1 -1
  77. package/dist/typescript/module/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.d.ts +3 -1
  78. package/dist/typescript/module/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.d.ts.map +1 -1
  79. package/dist/typescript/module/features/feedback/components/UnreadMessagesBadge.d.ts +3 -2
  80. package/dist/typescript/module/features/feedback/components/UnreadMessagesBadge.d.ts.map +1 -1
  81. package/dist/typescript/module/features/feedback/constants.d.ts +15 -3
  82. package/dist/typescript/module/features/feedback/constants.d.ts.map +1 -1
  83. package/dist/typescript/module/features/feedback/index.d.ts +1 -0
  84. package/dist/typescript/module/features/feedback/index.d.ts.map +1 -1
  85. package/dist/typescript/module/features/feedback/model/teacherFeedback.model.d.ts +6 -5
  86. package/dist/typescript/module/features/feedback/model/teacherFeedback.model.d.ts.map +1 -1
  87. package/dist/typescript/module/features/feedback/types/teacherFeedback.types.d.ts +6 -0
  88. package/dist/typescript/module/features/feedback/types/teacherFeedback.types.d.ts.map +1 -1
  89. package/package.json +4 -4
  90. package/src/features/chatbot/components/ChatControls/ChatControls.tsx +27 -4
  91. package/src/features/feedback/components/EmptyComment/EmptyComment.tsx +3 -3
  92. package/src/features/feedback/components/TeacherFeedback.tsx +10 -4
  93. package/src/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.tsx +71 -13
  94. package/src/features/feedback/components/TeacherFeedbackButton/colorSchemes.ts +17 -0
  95. package/src/features/feedback/components/TeacherFeedbackComments/TeacherComment.tsx +6 -5
  96. package/src/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.tsx +24 -4
  97. package/src/features/feedback/components/UnreadMessagesBadge.tsx +4 -3
  98. package/src/features/feedback/constants.ts +25 -5
  99. package/src/features/feedback/index.ts +1 -0
  100. package/src/features/feedback/model/teacherFeedback.model.ts +125 -47
  101. package/src/features/feedback/types/teacherFeedback.types.ts +5 -0
@@ -25,6 +25,17 @@ Object.keys(_teacherFeedbackTypes).forEach(function (key) {
25
25
  }
26
26
  });
27
27
  });
28
+ var _constants = require("./constants.js");
29
+ Object.keys(_constants).forEach(function (key) {
30
+ if (key === "default" || key === "__esModule") return;
31
+ if (key in exports && exports[key] === _constants[key]) return;
32
+ Object.defineProperty(exports, key, {
33
+ enumerable: true,
34
+ get: function () {
35
+ return _constants[key];
36
+ }
37
+ });
38
+ });
28
39
  var _index = require("./components/index.js");
29
40
  Object.keys(_index).forEach(function (key) {
30
41
  if (key === "default" || key === "__esModule") return;
@@ -1 +1 @@
1
- {"version":3,"names":["_teacherFeedbackModel","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_teacherFeedbackTypes","_index"],"sourceRoot":"../../../../src","sources":["features/feedback/index.ts"],"mappings":";;;;;AAAA,IAAAA,qBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,qBAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,qBAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,qBAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,qBAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,qBAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,qBAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,qBAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,MAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,MAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,MAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,MAAA,CAAAN,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["_teacherFeedbackModel","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_teacherFeedbackTypes","_constants","_index"],"sourceRoot":"../../../../src","sources":["features/feedback/index.ts"],"mappings":";;;;;AAAA,IAAAA,qBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,qBAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,qBAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,qBAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,qBAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,qBAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,qBAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,qBAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,UAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,UAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,UAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,UAAA,CAAAN,GAAA;IAAA;EAAA;AAAA;AACA,IAAAO,MAAA,GAAAX,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAS,MAAA,EAAAR,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAO,MAAA,CAAAP,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAG,MAAA,CAAAP,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -21,8 +21,19 @@ class TeacherFeedbackModel {
21
21
  api,
22
22
  credits
23
23
  }) {
24
- this.getCommentsByAssignmentIdFx = (0, _effector.createEffect)(api.getCommentsByAssignmentId);
24
+ this.getCommentsByAssignmentIdFx = (0, _effector.createEffect)(async ({
25
+ id
26
+ }) => {
27
+ const response = await api.getCommentsByAssignmentId({
28
+ id
29
+ });
30
+ return {
31
+ data: response,
32
+ assignmentId: id
33
+ };
34
+ });
25
35
  this.updateCommentSeenFx = (0, _effector.createEffect)(api.updateCommentSeenStatus);
36
+ this.$assignmentId = credits.assignmentId;
26
37
  this.$currentProblemId = credits.problemId;
27
38
  this.$locale = credits.locale;
28
39
  (0, _effector.sample)({
@@ -32,53 +43,69 @@ class TeacherFeedbackModel {
32
43
  });
33
44
  (0, _effector.sample)({
34
45
  clock: this.sockets.onCreate,
35
- source: [this.$isOpened, this.$currentProblemId],
36
- filter: ([isOpen]) => isOpen,
37
- fn: ([_, currentProblemId], {
46
+ source: [this.$isOpened, this.$currentProblemId, this.$assignmentId],
47
+ filter: ([isOpen, currentProblemId], payload) => {
48
+ return isOpen && currentProblemId === payload.problemId;
49
+ },
50
+ fn: ([_, currentProblemId, assignmentId], {
38
51
  _id
39
52
  }) => ({
40
53
  currentProblemId,
54
+ assignmentId,
41
55
  ids: [_id]
42
56
  }),
43
57
  target: [this.setCommentsSeen, this.updateCommentSeenFx]
44
58
  });
45
59
  (0, _effector.sample)({
46
60
  clock: this.$isOpened,
47
- source: [this.$comments, this.$currentProblemId],
48
- filter: ([feedback, currentProblemId], isOpen) => {
49
- const comments = feedback.get(currentProblemId)?.comments ?? [];
61
+ source: [this.$comments, this.$currentProblemId, this.$assignmentId],
62
+ filter: ([feedback, currentProblemId, assignmentId], isOpen) => {
63
+ const assignmentComments = feedback.get(assignmentId) || {};
64
+ const comments = assignmentComments[currentProblemId]?.comments ?? [];
50
65
  const hasUnreadComments = comments.some(comment => !comment.isRead);
51
66
  return isOpen && hasUnreadComments;
52
67
  },
53
- fn: ([feedback, currentProblemId]) => {
54
- const comments = feedback.get(currentProblemId)?.comments ?? [];
68
+ fn: ([feedback, currentProblemId, assignmentId]) => {
69
+ const assignmentComments = feedback.get(assignmentId) || {};
70
+ const comments = assignmentComments[currentProblemId]?.comments ?? [];
55
71
  return {
56
72
  currentProblemId,
73
+ assignmentId,
57
74
  ids: comments.filter(comment => !comment.isRead).map(comment => comment._id)
58
75
  };
59
76
  },
60
77
  target: [this.setCommentsSeen, this.updateCommentSeenFx]
61
78
  });
62
- this.$isVisible.on(this.getCommentsByAssignmentIdFx.doneData, (_, payload) => {
63
- return Object.values(payload).some(problemFeedback => problemFeedback.comments?.length > 0);
79
+ this.$isVisible.on(this.getCommentsByAssignmentIdFx.doneData, (_, {
80
+ data
81
+ }) => {
82
+ return Object.values(data).some(problemFeedback => problemFeedback.comments?.length > 0);
64
83
  });
65
- this.$comments.on(this.getCommentsByAssignmentIdFx.doneData, (_, payload) => {
66
- const state = new Map();
84
+ this.$comments.on(this.getCommentsByAssignmentIdFx.doneData, (state, {
85
+ assignmentId,
86
+ data
87
+ }) => {
88
+ const problemsMap = {};
67
89
  for (const [problemId, {
68
90
  comments
69
- }] of Object.entries(payload)) {
91
+ }] of Object.entries(data)) {
70
92
  const unreadMessages = comments.filter(comment => !comment.isRead);
71
- state.set(problemId, {
93
+ problemsMap[problemId] = {
72
94
  comments,
73
95
  unreadMessagesCount: unreadMessages.length
74
- });
96
+ };
75
97
  }
76
- return state;
98
+ const updatedState = new Map(state);
99
+ updatedState.set(assignmentId, problemsMap);
100
+ return updatedState;
77
101
  }).on(this.setCommentsSeen, (state, {
78
102
  ids,
79
- currentProblemId
103
+ currentProblemId,
104
+ assignmentId
80
105
  }) => {
81
- const feedback = state.get(currentProblemId);
106
+ const assignmentComments = state.get(assignmentId);
107
+ if (!assignmentComments) return state;
108
+ const feedback = assignmentComments[currentProblemId];
82
109
  if (!feedback) return state;
83
110
  const updatedComments = feedback.comments.map(comment => ids.includes(comment._id) ? {
84
111
  ...comment,
@@ -89,11 +116,16 @@ class TeacherFeedbackModel {
89
116
  comments: updatedComments,
90
117
  unreadMessagesCount: 0
91
118
  };
119
+ const updatedAssignmentComments = {
120
+ ...assignmentComments,
121
+ [currentProblemId]: updatedFeedback
122
+ };
92
123
  const updatedState = new Map(state);
93
- updatedState.set(currentProblemId, updatedFeedback);
124
+ updatedState.set(assignmentId, updatedAssignmentComments);
94
125
  return updatedState;
95
126
  }).on(this.sockets.onCreate, (state, payload) => {
96
- const feedback = state.get(payload.problemId) ?? {
127
+ const assignmentComments = state.get(payload.exerciseId) || {};
128
+ const feedback = assignmentComments[payload.problemId] ?? {
97
129
  comments: [],
98
130
  unreadMessagesCount: 0
99
131
  };
@@ -102,41 +134,72 @@ class TeacherFeedbackModel {
102
134
  comments: [...feedback.comments, payload],
103
135
  unreadMessagesCount: feedback.unreadMessagesCount + 1
104
136
  };
137
+ const updatedAssignmentComments = {
138
+ ...assignmentComments,
139
+ [payload.problemId]: updatedFeedback
140
+ };
105
141
  const updatedState = new Map(state);
106
- updatedState.set(payload.problemId, updatedFeedback);
142
+ updatedState.set(payload.exerciseId, updatedAssignmentComments);
107
143
  return updatedState;
108
144
  }).on(this.sockets.onDeleted, (state, payload) => {
109
- const feedback = state.get(payload.problemId);
145
+ const assignmentId = this.$assignmentId.getState();
146
+ const assignmentComments = state.get(assignmentId);
147
+ if (!assignmentComments) return state;
148
+ const feedback = assignmentComments[payload.problemId];
110
149
  if (!feedback) return state;
111
150
  const isDeleteMessageUnread = feedback.comments.some(comment => comment._id === payload._id && !comment.isRead);
112
151
  const updatedFeedback = {
113
152
  comments: feedback.comments.filter(comment => comment._id !== payload._id),
114
153
  unreadMessagesCount: isDeleteMessageUnread ? feedback.unreadMessagesCount - 1 : feedback.unreadMessagesCount
115
154
  };
116
- const updatedState = new Map(state);
117
- const isOpen = this.$isOpened.getState();
118
155
  if (updatedFeedback.comments.length === 0) {
156
+ const updatedAssignmentComments = {
157
+ ...assignmentComments
158
+ };
159
+ const isOpen = this.$isOpened.getState();
119
160
  if (!isOpen) {
120
- updatedState.delete(payload.problemId);
121
- return updatedState;
161
+ delete updatedAssignmentComments[payload.problemId];
162
+ if (Object.keys(updatedAssignmentComments).length === 0) {
163
+ const updatedState = new Map(state);
164
+ updatedState.delete(assignmentId);
165
+ return updatedState;
166
+ }
122
167
  }
123
- const feedbackWithCustomMessage = {
124
- ...updatedFeedback
168
+ updatedAssignmentComments[payload.problemId] = {
169
+ ...updatedFeedback,
170
+ comments: [(0, _constants.getEmptyComment)(payload.problemId, this.$locale.getState())]
125
171
  };
126
- feedbackWithCustomMessage.comments = [(0, _constants.getEmptyComment)(payload.problemId, this.$locale.getState())];
127
- updatedState.set(payload.problemId, feedbackWithCustomMessage);
172
+ const updatedState = new Map(state);
173
+ updatedState.set(assignmentId, updatedAssignmentComments);
128
174
  return updatedState;
129
175
  }
130
- updatedState.set(payload.problemId, updatedFeedback);
176
+ const updatedAssignmentComments = {
177
+ ...assignmentComments,
178
+ [payload.problemId]: updatedFeedback
179
+ };
180
+ const updatedState = new Map(state);
181
+ updatedState.set(assignmentId, updatedAssignmentComments);
131
182
  return updatedState;
132
183
  }).on(this.setIsOpened, (state, isOpen) => {
133
184
  if (isOpen) return state;
185
+ const assignmentId = this.$assignmentId.getState();
134
186
  const problemId = this.$currentProblemId.getState();
135
- const feedback = state.get(problemId);
187
+ const assignmentComments = state.get(assignmentId);
188
+ if (!assignmentComments) return state;
189
+ const feedback = assignmentComments[problemId];
136
190
  if (!feedback) return state;
137
191
  if (feedback.comments.length === 1 && feedback.comments[0]._id === _constants.EMPTY_COMMENT_ID) {
192
+ const updatedAssignmentComments = {
193
+ ...assignmentComments
194
+ };
195
+ delete updatedAssignmentComments[problemId];
196
+ if (Object.keys(updatedAssignmentComments).length === 0) {
197
+ const updatedState = new Map(state);
198
+ updatedState.delete(assignmentId);
199
+ return updatedState;
200
+ }
138
201
  const updatedState = new Map(state);
139
- updatedState.delete(problemId);
202
+ updatedState.set(assignmentId, updatedAssignmentComments);
140
203
  return updatedState;
141
204
  }
142
205
  return state;
@@ -1 +1 @@
1
- {"version":3,"names":["_effector","require","_constants","TeacherFeedbackModel","setCommentsSeen","createEvent","$comments","createStore","Map","setIsOpened","$isOpened","restore","setIsVisible","$isVisible","sockets","onCreate","onDeleted","constructor","api","credits","getCommentsByAssignmentIdFx","createEffect","getCommentsByAssignmentId","updateCommentSeenFx","updateCommentSeenStatus","$currentProblemId","problemId","$locale","locale","sample","clock","fn","target","source","filter","isOpen","_","currentProblemId","_id","ids","feedback","comments","get","hasUnreadComments","some","comment","isRead","map","on","doneData","payload","Object","values","problemFeedback","length","state","entries","unreadMessages","set","unreadMessagesCount","updatedComments","includes","updatedFeedback","updatedState","isDeleteMessageUnread","getState","delete","feedbackWithCustomMessage","getEmptyComment","EMPTY_COMMENT_ID","exports"],"sourceRoot":"../../../../../src","sources":["features/feedback/model/teacherFeedback.model.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_effector","require","_constants","TeacherFeedbackModel","setCommentsSeen","createEvent","$comments","createStore","Map","setIsOpened","$isOpened","restore","setIsVisible","$isVisible","sockets","onCreate","onDeleted","constructor","api","credits","getCommentsByAssignmentIdFx","createEffect","id","response","getCommentsByAssignmentId","data","assignmentId","updateCommentSeenFx","updateCommentSeenStatus","$assignmentId","$currentProblemId","problemId","$locale","locale","sample","clock","fn","target","source","filter","isOpen","currentProblemId","payload","_","_id","ids","feedback","assignmentComments","get","comments","hasUnreadComments","some","comment","isRead","map","on","doneData","Object","values","problemFeedback","length","state","problemsMap","entries","unreadMessages","unreadMessagesCount","updatedState","set","updatedComments","includes","updatedFeedback","updatedAssignmentComments","exerciseId","getState","isDeleteMessageUnread","keys","delete","getEmptyComment","EMPTY_COMMENT_ID","exports"],"sourceRoot":"../../../../../src","sources":["features/feedback/model/teacherFeedback.model.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["Locale","exports","TeacherFeedbackSocketEvent"],"sourceRoot":"../../../../../src","sources":["features/feedback/types/teacherFeedback.types.ts"],"mappings":";;;;;;IAsBYA,MAAM,GAAAC,OAAA,CAAAD,MAAA,0BAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAAA,OAANA,MAAM;AAAA;AAAA,IAMNE,0BAA0B,GAAAD,OAAA,CAAAC,0BAAA,0BAA1BA,0BAA0B;EAA1BA,0BAA0B;EAA1BA,0BAA0B;EAAA,OAA1BA,0BAA0B;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["Locale","exports","TeacherFeedbackSocketEvent"],"sourceRoot":"../../../../../src","sources":["features/feedback/types/teacherFeedback.types.ts"],"mappings":";;;;;;IA2BYA,MAAM,GAAAC,OAAA,CAAAD,MAAA,0BAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAAA,OAANA,MAAM;AAAA;AAAA,IAMNE,0BAA0B,GAAAD,OAAA,CAAAC,0BAAA,0BAA1BA,0BAA0B;EAA1BA,0BAA0B;EAA1BA,0BAA0B;EAAA,OAA1BA,0BAA0B;AAAA","ignoreList":[]}
@@ -2,7 +2,7 @@
2
2
 
3
3
  import React from 'react';
4
4
  import { ActivityIndicator, Pressable, StyleSheet, View } from 'react-native';
5
- import { Button } from '@magmamath/react-native-ui';
5
+ import { Button, ButtonColor, ButtonSize, ButtonStates, ButtonVariant, COLORS } from '@magmamath/react-native-ui';
6
6
  import { useUnit } from 'effector-react';
7
7
  import { ChatbotIcon } from "../../../../shared/icons/ChatbotIcon.js";
8
8
  import { GlobeIcon } from "../../../../shared/icons/GlobeIcon.js";
@@ -37,12 +37,24 @@ export const ChatControls = ({
37
37
  }), /*#__PURE__*/_jsx(Button, {
38
38
  onPress: onPressClose,
39
39
  style: {
40
- container: styles.buttonClose,
41
- button: {
42
- backgroundColor: '#FFF'
43
- }
40
+ button: styles.buttonClose
44
41
  },
42
+ variant: ButtonVariant.PRIMARY,
43
+ size: ButtonSize.LARGE,
44
+ colorScheme: ButtonColor.GRAY,
45
45
  raiseLevel: 5,
46
+ customColorScheme: {
47
+ [ButtonStates.DEFAULT]: {
48
+ backgroundColor: '#FFF',
49
+ borderColor: COLORS.NEUTRAL_5,
50
+ raiseColor: COLORS.NEUTRAL_5
51
+ },
52
+ [ButtonStates.PRESSED]: {
53
+ backgroundColor: COLORS.NEUTRAL_4,
54
+ borderColor: COLORS.NEUTRAL_5,
55
+ raiseColor: COLORS.NEUTRAL_5
56
+ }
57
+ },
46
58
  children: /*#__PURE__*/_jsx(CloseIcon, {})
47
59
  })]
48
60
  });
@@ -67,7 +79,11 @@ const styles = StyleSheet.create({
67
79
  },
68
80
  buttonClose: {
69
81
  width: 50,
70
- height: 50
82
+ height: 50,
83
+ borderRadius: 50,
84
+ paddingHorizontal: 0,
85
+ borderWidth: 1.5,
86
+ borderColor: COLORS.NEUTRAL_5
71
87
  },
72
88
  buttonTranslate: {
73
89
  alignItems: 'center',
@@ -1 +1 @@
1
- {"version":3,"names":["React","ActivityIndicator","Pressable","StyleSheet","View","Button","useUnit","ChatbotIcon","GlobeIcon","CloseIcon","jsx","_jsx","jsxs","_jsxs","ChatControls","model","onPressTranslate","onPressChatIcon","onPressClose","isTranslationEnabled","ButtonWrapper","isOpen","$isOpen","isTranslated","translation","$isTranslated","isTranslationPending","translateBatchFx","pending","isHelpRequestPending","sendHelpRequestFx","backgroundColor","fillColor","style","styles","container","children","onPress","disabled","buttonTranslate","color","buttonClose","button","raiseLevel","create","alignItems","justifyContent","flexDirection","height","gap","width","borderRadius","borderWidth","borderColor","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation"],"sourceRoot":"../../../../../../src","sources":["features/chatbot/components/ChatControls/ChatControls.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","ActivityIndicator","Pressable","StyleSheet","View","Button","ButtonColor","ButtonSize","ButtonStates","ButtonVariant","COLORS","useUnit","ChatbotIcon","GlobeIcon","CloseIcon","jsx","_jsx","jsxs","_jsxs","ChatControls","model","onPressTranslate","onPressChatIcon","onPressClose","isTranslationEnabled","ButtonWrapper","isOpen","$isOpen","isTranslated","translation","$isTranslated","isTranslationPending","translateBatchFx","pending","isHelpRequestPending","sendHelpRequestFx","backgroundColor","fillColor","style","styles","container","children","onPress","disabled","buttonTranslate","color","button","buttonClose","variant","PRIMARY","size","LARGE","colorScheme","GRAY","raiseLevel","customColorScheme","DEFAULT","borderColor","NEUTRAL_5","raiseColor","PRESSED","NEUTRAL_4","create","alignItems","justifyContent","flexDirection","height","gap","width","borderRadius","paddingHorizontal","borderWidth","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation"],"sourceRoot":"../../../../../../src","sources":["features/chatbot/components/ChatControls/ChatControls.tsx"],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,7 @@
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 "../../constants.js";
6
+ import { BUENOS_AIRES_FONT, NO_COMMENTS_TRANSLATIONS } from "../../constants.js";
7
7
  import { Locale } from "../../types/teacherFeedback.types.js";
8
8
  import { jsx as _jsx } from "react/jsx-runtime";
9
9
  export const EmptyComment = ({
@@ -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.SV ? NO_COMMENTS_SWE : NO_COMMENTS_ENG
16
+ children: NO_COMMENTS_TRANSLATIONS[locale ?? Locale.US]
17
17
  })
18
18
  });
19
19
  };
@@ -24,7 +24,7 @@ const styles = StyleSheet.create({
24
24
  borderTopLeftRadius: 8,
25
25
  borderTopRightRadius: 8,
26
26
  borderBottomRightRadius: 8,
27
- shadowColor: COLORS.PRIMARY_SHADOW,
27
+ shadowColor: COLORS.NEUTRAL_10,
28
28
  shadowOffset: {
29
29
  width: 0,
30
30
  height: 1
@@ -1 +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","SV","create","padding","gap","borderTopLeftRadius","borderTopRightRadius","borderBottomRightRadius","shadowColor","PRIMARY_SHADOW","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/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,oBAAiB;AACrF,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,cAAc;IAClCC,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":[]}
1
+ {"version":3,"names":["React","StyleSheet","Text","View","COLORS","BUENOS_AIRES_FONT","NO_COMMENTS_TRANSLATIONS","Locale","jsx","_jsx","EmptyComment","locale","style","styles","container","children","text","US","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/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,wBAAwB,QAAQ,oBAAiB;AAC7E,SAASC,MAAM,QAAQ,sCAAmC;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAM1D,OAAO,MAAMC,YAAY,GAAGA,CAAC;EAAEC;AAA0B,CAAC,KAAK;EAC7D,oBACEF,IAAA,CAACN,IAAI;IAACS,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,eAC5BN,IAAA,CAACP,IAAI;MAACU,KAAK,EAAEC,MAAM,CAACG,IAAK;MAAAD,QAAA,EAAET,wBAAwB,CAACK,MAAM,IAAIJ,MAAM,CAACU,EAAE;IAAC,CAAO;EAAC,CAC5E,CAAC;AAEX,CAAC;AAED,MAAMJ,MAAM,GAAGZ,UAAU,CAACiB,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,EAAEpB,MAAM,CAACqB,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,EAAE5B,MAAM,CAAC6B,SAAS;IACjCC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB,CAAC;EACDnB,IAAI,EAAE;IACJoB,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAEhC,iBAAiB;IAC7BiC,UAAU,EAAE,KAAK;IACjBC,KAAK,EAAEnC,MAAM,CAACoC,SAAS;IACvBrB,OAAO,EAAE,CAAC;IACVsB,UAAU,EAAE;EACd;AACF,CAAC,CAAC","ignoreList":[]}
@@ -5,30 +5,37 @@ import { useStoreMap, useUnit } from 'effector-react';
5
5
  import { View, StyleSheet } from 'react-native';
6
6
  import { TeacherFeedbackButton } from "./TeacherFeedbackButton/TeacherFeedbackButton.js";
7
7
  import { TeacherFeedbackComments } from "./TeacherFeedbackComments/TeacherFeedbackComments.js";
8
+ import { FeedbackButtonColors, FeedbackButtonSize, FeedbackMode } from "../constants.js";
8
9
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
10
  export const TeacherFeedback = ({
10
- model
11
+ model,
12
+ mode,
13
+ isExam = false
11
14
  }) => {
12
15
  const isOpen = useUnit(model.$isOpened);
16
+ const assignmentId = useUnit(model.$assignmentId);
13
17
  const problemId = useUnit(model.$currentProblemId);
14
18
  const locale = useUnit(model.$locale);
15
19
  const isLoading = useUnit(model.getCommentsByAssignmentIdFx.pending);
16
20
  const teacherFeedback = useStoreMap({
17
21
  store: model.$comments,
18
- fn: (feedback, [problemId]) => feedback.get(problemId) ?? null,
19
- keys: [problemId]
22
+ fn: (feedback, [assignmentId, problemId]) => feedback.get(assignmentId)?.[problemId] ?? null,
23
+ keys: [assignmentId, problemId]
20
24
  });
21
25
  if (!problemId || !teacherFeedback) return null;
22
26
  return /*#__PURE__*/_jsxs(View, {
23
27
  style: styles.container,
24
28
  children: [isOpen && /*#__PURE__*/_jsx(TeacherFeedbackComments, {
25
29
  comments: teacherFeedback.comments,
26
- locale: locale
30
+ locale: locale,
31
+ mode: mode
27
32
  }), /*#__PURE__*/_jsx(TeacherFeedbackButton, {
28
33
  onPress: () => model.setIsOpened(!isOpen),
29
34
  unreadCommentsCount: teacherFeedback.unreadMessagesCount,
30
35
  isOpen: isOpen,
31
- isLoading: isLoading
36
+ isLoading: isLoading,
37
+ size: mode === FeedbackMode.NORMAL ? FeedbackButtonSize.SMALL : FeedbackButtonSize.LARGE,
38
+ color: isExam ? FeedbackButtonColors.PURPLE : FeedbackButtonColors.BLUE
32
39
  })]
33
40
  });
34
41
  };
@@ -1 +1 @@
1
- {"version":3,"names":["React","useStoreMap","useUnit","View","StyleSheet","TeacherFeedbackButton","TeacherFeedbackComments","jsx","_jsx","jsxs","_jsxs","TeacherFeedback","model","isOpen","$isOpened","problemId","$currentProblemId","locale","$locale","isLoading","getCommentsByAssignmentIdFx","pending","teacherFeedback","store","$comments","fn","feedback","get","keys","style","styles","container","children","comments","onPress","setIsOpened","unreadCommentsCount","unreadMessagesCount","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;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAO3F,OAAO,MAAMC,eAAe,GAAGA,CAAC;EAAEC;AAA4B,CAAC,KAAK;EAClE,MAAMC,MAAM,GAAGX,OAAO,CAACU,KAAK,CAACE,SAAS,CAAC;EACvC,MAAMC,SAAS,GAAGb,OAAO,CAACU,KAAK,CAACI,iBAAiB,CAAC;EAClD,MAAMC,MAAM,GAAGf,OAAO,CAACU,KAAK,CAACM,OAAO,CAAC;EACrC,MAAMC,SAAS,GAAGjB,OAAO,CAACU,KAAK,CAACQ,2BAA2B,CAACC,OAAO,CAAC;EACpE,MAAMC,eAAe,GAAGrB,WAAW,CAAC;IAClCsB,KAAK,EAAEX,KAAK,CAACY,SAAS;IACtBC,EAAE,EAAEA,CAACC,QAAQ,EAAE,CAACX,SAAS,CAAC,KAAKW,QAAQ,CAACC,GAAG,CAACZ,SAAS,CAAC,IAAI,IAAI;IAC9Da,IAAI,EAAE,CAACb,SAAS;EAClB,CAAC,CAAC;EAEF,IAAI,CAACA,SAAS,IAAI,CAACO,eAAe,EAAE,OAAO,IAAI;EAE/C,oBACEZ,KAAA,CAACP,IAAI;IAAC0B,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,GAC3BnB,MAAM,iBAAIL,IAAA,CAACF,uBAAuB;MAAC2B,QAAQ,EAAEX,eAAe,CAACW,QAAS;MAAChB,MAAM,EAAEA;IAAO,CAAE,CAAC,eAC1FT,IAAA,CAACH,qBAAqB;MACpB6B,OAAO,EAAEA,CAAA,KAAMtB,KAAK,CAACuB,WAAW,CAAC,CAACtB,MAAM,CAAE;MAC1CuB,mBAAmB,EAAEd,eAAe,CAACe,mBAAoB;MACzDxB,MAAM,EAAEA,MAAO;MACfM,SAAS,EAAEA;IAAU,CACtB,CAAC;EAAA,CACE,CAAC;AAEX,CAAC;AAED,MAAMW,MAAM,GAAG1B,UAAU,CAACkC,MAAM,CAAC;EAC/BP,SAAS,EAAE;IACTQ,UAAU,EAAE,UAAU;IACtBC,GAAG,EAAE;EACP;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","useStoreMap","useUnit","View","StyleSheet","TeacherFeedbackButton","TeacherFeedbackComments","FeedbackButtonColors","FeedbackButtonSize","FeedbackMode","jsx","_jsx","jsxs","_jsxs","TeacherFeedback","model","mode","isExam","isOpen","$isOpened","assignmentId","$assignmentId","problemId","$currentProblemId","locale","$locale","isLoading","getCommentsByAssignmentIdFx","pending","teacherFeedback","store","$comments","fn","feedback","get","keys","style","styles","container","children","comments","onPress","setIsOpened","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;AAE3F,SAASC,oBAAoB,EAAEC,kBAAkB,EAAEC,YAAY,QAAQ,iBAAc;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAQrF,OAAO,MAAMC,eAAe,GAAGA,CAAC;EAAEC,KAAK;EAAEC,IAAI;EAAEC,MAAM,GAAG;AAA4B,CAAC,KAAK;EACxF,MAAMC,MAAM,GAAGhB,OAAO,CAACa,KAAK,CAACI,SAAS,CAAC;EACvC,MAAMC,YAAY,GAAGlB,OAAO,CAACa,KAAK,CAACM,aAAa,CAAC;EACjD,MAAMC,SAAS,GAAGpB,OAAO,CAACa,KAAK,CAACQ,iBAAiB,CAAC;EAClD,MAAMC,MAAM,GAAGtB,OAAO,CAACa,KAAK,CAACU,OAAO,CAAC;EACrC,MAAMC,SAAS,GAAGxB,OAAO,CAACa,KAAK,CAACY,2BAA2B,CAACC,OAAO,CAAC;EACpE,MAAMC,eAAe,GAAG5B,WAAW,CAAC;IAClC6B,KAAK,EAAEf,KAAK,CAACgB,SAAS;IACtBC,EAAE,EAAEA,CAACC,QAAQ,EAAE,CAACb,YAAY,EAAEE,SAAS,CAAC,KAAKW,QAAQ,CAACC,GAAG,CAACd,YAAY,CAAC,GAAGE,SAAS,CAAC,IAAI,IAAI;IAC5Fa,IAAI,EAAE,CAACf,YAAY,EAAEE,SAAS;EAChC,CAAC,CAAC;EAEF,IAAI,CAACA,SAAS,IAAI,CAACO,eAAe,EAAE,OAAO,IAAI;EAE/C,oBACEhB,KAAA,CAACV,IAAI;IAACiC,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,GAC3BrB,MAAM,iBAAIP,IAAA,CAACL,uBAAuB;MAACkC,QAAQ,EAAEX,eAAe,CAACW,QAAS;MAAChB,MAAM,EAAEA,MAAO;MAACR,IAAI,EAAEA;IAAK,CAAE,CAAC,eACtGL,IAAA,CAACN,qBAAqB;MACpBoC,OAAO,EAAEA,CAAA,KAAM1B,KAAK,CAAC2B,WAAW,CAAC,CAACxB,MAAM,CAAE;MAC1CyB,mBAAmB,EAAEd,eAAe,CAACe,mBAAoB;MACzD1B,MAAM,EAAEA,MAAO;MACfQ,SAAS,EAAEA,SAAU;MACrBmB,IAAI,EAAE7B,IAAI,KAAKP,YAAY,CAACqC,MAAM,GAAGtC,kBAAkB,CAACuC,KAAK,GAAGvC,kBAAkB,CAACwC,KAAM;MACzFC,KAAK,EAAEhC,MAAM,GAAGV,oBAAoB,CAAC2C,MAAM,GAAG3C,oBAAoB,CAAC4C;IAAK,CACzE,CAAC;EAAA,CACE,CAAC;AAEX,CAAC;AAED,MAAMd,MAAM,GAAGjC,UAAU,CAACgD,MAAM,CAAC;EAC/Bd,SAAS,EAAE;IACTe,UAAU,EAAE,UAAU;IACtBC,GAAG,EAAE;EACP;AACF,CAAC,CAAC","ignoreList":[]}
@@ -7,73 +7,122 @@ import { UnreadMessagesBadge } from "../UnreadMessagesBadge.js";
7
7
  import { MessageBubbleIcon } from "../icons/MessageBubbleIcon.js";
8
8
  import { XCloseIcon } from "../icons/XCloseIcon.js";
9
9
  import { COLOR_SCHEMES } from "./colorSchemes.js";
10
+ import { FeedbackButtonColors, FeedbackButtonSize, TEACHER_FEEDBACK_BUTTON_ID } from "../../constants.js";
10
11
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
+ const ICON_SIZES = {
13
+ [FeedbackButtonSize.LARGE]: 37,
14
+ [FeedbackButtonSize.SMALL]: 26
15
+ };
11
16
  export const TeacherFeedbackButton = ({
12
17
  isOpen,
13
18
  onPress,
14
- unreadCommentsCount,
15
- isLoading
19
+ // unreadCommentsCount,
20
+ isLoading,
21
+ size = FeedbackButtonSize.LARGE,
22
+ color = FeedbackButtonColors.BLUE
16
23
  }) => {
24
+ const unreadCommentsCount = 5;
25
+ const isLarge = size === FeedbackButtonSize.LARGE;
26
+ const isPurpleColor = color === FeedbackButtonColors.PURPLE;
17
27
  if (isOpen) {
18
28
  return /*#__PURE__*/_jsx(Button, {
29
+ id: TEACHER_FEEDBACK_BUTTON_ID,
19
30
  onPress: onPress,
20
31
  size: "large",
21
32
  variant: "primary",
22
33
  disabled: isLoading,
23
34
  isLoading: isLoading,
24
35
  style: {
25
- container: styles.container,
36
+ container: isLarge ? styles.containerLarge : styles.container,
26
37
  button: [styles.button, {
27
38
  borderColor: COLORS.NEUTRAL_5
28
- }]
39
+ }, styles[size]]
29
40
  },
30
41
  customColorScheme: COLOR_SCHEMES.GREY,
31
- icon: /*#__PURE__*/_jsx(XCloseIcon, {})
32
- }, 'open');
42
+ icon: /*#__PURE__*/_jsx(XCloseIcon, {
43
+ size: ICON_SIZES[size]
44
+ })
45
+ });
33
46
  }
34
47
  return /*#__PURE__*/_jsx(Button, {
48
+ id: TEACHER_FEEDBACK_BUTTON_ID,
35
49
  onPress: onPress,
36
50
  size: "large",
37
51
  variant: "primary",
38
52
  disabled: isLoading,
39
53
  isLoading: isLoading,
40
54
  style: {
41
- container: styles.container,
55
+ container: isLarge ? styles.containerLarge : styles.container,
42
56
  button: [styles.button, {
43
- borderColor: !!unreadCommentsCount ? COLORS.BLUE_6 : COLORS.NEUTRAL_5
44
- }]
57
+ borderColor: !!unreadCommentsCount ? isPurpleColor ? COLORS.PURPLE_6 : COLORS.BLUE_6 : COLORS.NEUTRAL_5
58
+ }, styles[size]]
45
59
  },
46
- customColorScheme: !!unreadCommentsCount ? COLOR_SCHEMES.BLUE : COLOR_SCHEMES.GREY,
60
+ customColorScheme: !!unreadCommentsCount ? isPurpleColor ? COLOR_SCHEMES.PURPLE : COLOR_SCHEMES.BLUE : COLOR_SCHEMES.GREY,
47
61
  icon: /*#__PURE__*/_jsxs(View, {
48
62
  style: styles.iconContainer,
49
63
  children: [/*#__PURE__*/_jsx(MessageBubbleIcon, {
50
- color: !!unreadCommentsCount ? COLORS.NEUTRAL_1 : COLORS.NEUTRAL_9
64
+ color: !!unreadCommentsCount ? COLORS.NEUTRAL_1 : COLORS.NEUTRAL_9,
65
+ size: ICON_SIZES[size]
51
66
  }), !!unreadCommentsCount && /*#__PURE__*/_jsx(View, {
52
- style: styles.badgeContainer,
67
+ style: isLarge ? styles.badgeContainerLarge : styles.badgeContainer,
53
68
  children: /*#__PURE__*/_jsx(UnreadMessagesBadge, {
54
- badgeContent: unreadCommentsCount
69
+ badgeContent: unreadCommentsCount,
70
+ textStyle: isLarge && styles.textLarge,
71
+ style: isLarge && styles.badgeLarge
55
72
  })
56
73
  })]
57
74
  })
58
- }, 'closed');
75
+ });
59
76
  };
60
77
  const styles = StyleSheet.create({
61
78
  container: {
62
79
  width: 54,
63
80
  height: 54
64
81
  },
65
- button: {
82
+ containerLarge: {
83
+ width: 80,
84
+ height: 80
85
+ },
86
+ [FeedbackButtonSize.SMALL]: {
66
87
  width: 50,
67
- height: 50,
88
+ height: 50
89
+ },
90
+ [FeedbackButtonSize.LARGE]: {
91
+ width: 75,
92
+ height: 75
93
+ },
94
+ button: {
95
+ borderWidth: 2
96
+ },
97
+ buttonLarge: {
98
+ width: 75,
99
+ height: 75,
68
100
  borderWidth: 2
69
101
  },
70
102
  iconContainer: {
71
103
  position: 'relative'
72
104
  },
105
+ badgeContainerLarge: {
106
+ position: 'absolute',
107
+ top: -24,
108
+ right: -24
109
+ },
73
110
  badgeContainer: {
74
111
  position: 'absolute',
75
112
  top: -17,
76
113
  right: -17
114
+ },
115
+ textLarge: {
116
+ fontSize: 18,
117
+ lineHeight: 0,
118
+ textAlign: 'center',
119
+ alignItems: 'center',
120
+ justifyContent: 'center'
121
+ },
122
+ badgeLarge: {
123
+ width: 32,
124
+ height: 32,
125
+ borderRadius: 16
77
126
  }
78
127
  });
79
128
  //# sourceMappingURL=TeacherFeedbackButton.js.map