@magmamath/students-features 0.2.9 → 0.2.11

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 (163) hide show
  1. package/dist/commonjs/features/feedback/components/EmptyComment.js +4 -5
  2. package/dist/commonjs/features/feedback/components/EmptyComment.js.map +1 -1
  3. package/dist/commonjs/features/feedback/components/ListCardCommentsCount.js +1 -1
  4. package/dist/commonjs/features/feedback/components/TeacherFeedback.js +5 -6
  5. package/dist/commonjs/features/feedback/components/TeacherFeedback.js.map +1 -1
  6. package/dist/commonjs/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.js +32 -9
  7. package/dist/commonjs/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.js.map +1 -1
  8. package/dist/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherComment.js +1 -3
  9. package/dist/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherComment.js.map +1 -1
  10. package/dist/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.js +1 -8
  11. package/dist/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.js.map +1 -1
  12. package/dist/commonjs/features/feedback/constants.js +11 -3
  13. package/dist/commonjs/features/feedback/constants.js.map +1 -1
  14. package/dist/commonjs/features/feedback/helpers.js +24 -0
  15. package/dist/commonjs/features/feedback/helpers.js.map +1 -1
  16. package/dist/commonjs/features/feedback/model/api.js.map +1 -1
  17. package/dist/commonjs/features/feedback/model/comments.js +17 -33
  18. package/dist/commonjs/features/feedback/model/comments.js.map +1 -1
  19. package/dist/commonjs/features/feedback/model/model.js +5 -3
  20. package/dist/commonjs/features/feedback/model/model.js.map +1 -1
  21. package/dist/commonjs/features/feedback/types.js.map +1 -1
  22. package/dist/commonjs/lib/helpers/helpers.js +20 -16
  23. package/dist/commonjs/lib/helpers/helpers.js.map +1 -1
  24. package/dist/commonjs/lib/localization/en.json +12 -0
  25. package/dist/commonjs/lib/localization/gb.json +12 -0
  26. package/dist/commonjs/lib/localization/sw.json +12 -0
  27. package/dist/commonjs/shared/icons/MessageBubbleIcon.js.map +1 -0
  28. package/dist/commonjs/shared/icons/XCloseIcon.js.map +1 -0
  29. package/dist/commonjs/shared/translation/constants.js +1 -42
  30. package/dist/commonjs/shared/translation/constants.js.map +1 -1
  31. package/dist/commonjs/shared/translation/helpers.js.map +1 -1
  32. package/dist/commonjs/shared/translation/types.js.map +1 -1
  33. package/dist/module/features/feedback/components/EmptyComment.js +5 -6
  34. package/dist/module/features/feedback/components/EmptyComment.js.map +1 -1
  35. package/dist/module/features/feedback/components/ListCardCommentsCount.js +1 -1
  36. package/dist/module/features/feedback/components/ListCardCommentsCount.js.map +1 -1
  37. package/dist/module/features/feedback/components/TeacherFeedback.js +6 -7
  38. package/dist/module/features/feedback/components/TeacherFeedback.js.map +1 -1
  39. package/dist/module/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.js +32 -9
  40. package/dist/module/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.js.map +1 -1
  41. package/dist/module/features/feedback/components/TeacherFeedbackComments/TeacherComment.js +1 -3
  42. package/dist/module/features/feedback/components/TeacherFeedbackComments/TeacherComment.js.map +1 -1
  43. package/dist/module/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.js +2 -9
  44. package/dist/module/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.js.map +1 -1
  45. package/dist/module/features/feedback/constants.js +10 -2
  46. package/dist/module/features/feedback/constants.js.map +1 -1
  47. package/dist/module/features/feedback/helpers.js +23 -0
  48. package/dist/module/features/feedback/helpers.js.map +1 -1
  49. package/dist/module/features/feedback/model/api.js.map +1 -1
  50. package/dist/module/features/feedback/model/comments.js +14 -30
  51. package/dist/module/features/feedback/model/comments.js.map +1 -1
  52. package/dist/module/features/feedback/model/model.js +6 -4
  53. package/dist/module/features/feedback/model/model.js.map +1 -1
  54. package/dist/module/features/feedback/types.js.map +1 -1
  55. package/dist/module/lib/helpers/helpers.js +20 -16
  56. package/dist/module/lib/helpers/helpers.js.map +1 -1
  57. package/dist/module/lib/localization/en.json +12 -0
  58. package/dist/module/lib/localization/gb.json +12 -0
  59. package/dist/module/lib/localization/sw.json +12 -0
  60. package/dist/module/shared/icons/MessageBubbleIcon.js.map +1 -0
  61. package/dist/module/shared/icons/XCloseIcon.js.map +1 -0
  62. package/dist/module/shared/translation/constants.js +0 -41
  63. package/dist/module/shared/translation/constants.js.map +1 -1
  64. package/dist/module/shared/translation/helpers.js.map +1 -1
  65. package/dist/module/shared/translation/types.js.map +1 -1
  66. package/dist/typescript/commonjs/features/feedback/components/EmptyComment.d.ts +1 -6
  67. package/dist/typescript/commonjs/features/feedback/components/EmptyComment.d.ts.map +1 -1
  68. package/dist/typescript/commonjs/features/feedback/components/TeacherFeedback.d.ts +5 -5
  69. package/dist/typescript/commonjs/features/feedback/components/TeacherFeedback.d.ts.map +1 -1
  70. package/dist/typescript/commonjs/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.d.ts.map +1 -1
  71. package/dist/typescript/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherComment.d.ts +2 -4
  72. package/dist/typescript/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherComment.d.ts.map +1 -1
  73. package/dist/typescript/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.d.ts +2 -4
  74. package/dist/typescript/commonjs/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.d.ts.map +1 -1
  75. package/dist/typescript/commonjs/features/feedback/constants.d.ts +2 -2
  76. package/dist/typescript/commonjs/features/feedback/constants.d.ts.map +1 -1
  77. package/dist/typescript/commonjs/features/feedback/helpers.d.ts +10 -1
  78. package/dist/typescript/commonjs/features/feedback/helpers.d.ts.map +1 -1
  79. package/dist/typescript/commonjs/features/feedback/model/api.d.ts +6 -2
  80. package/dist/typescript/commonjs/features/feedback/model/api.d.ts.map +1 -1
  81. package/dist/typescript/commonjs/features/feedback/model/comments.d.ts +10 -12
  82. package/dist/typescript/commonjs/features/feedback/model/comments.d.ts.map +1 -1
  83. package/dist/typescript/commonjs/features/feedback/model/model.d.ts +4 -7
  84. package/dist/typescript/commonjs/features/feedback/model/model.d.ts.map +1 -1
  85. package/dist/typescript/commonjs/features/feedback/types.d.ts +8 -1
  86. package/dist/typescript/commonjs/features/feedback/types.d.ts.map +1 -1
  87. package/dist/typescript/commonjs/lib/helpers/helpers.d.ts +1 -2
  88. package/dist/typescript/commonjs/lib/helpers/helpers.d.ts.map +1 -1
  89. package/dist/typescript/commonjs/shared/icons/MessageBubbleIcon.d.ts.map +1 -0
  90. package/dist/typescript/commonjs/shared/icons/XCloseIcon.d.ts.map +1 -0
  91. package/dist/typescript/commonjs/shared/translation/constants.d.ts +38 -40
  92. package/dist/typescript/commonjs/shared/translation/constants.d.ts.map +1 -1
  93. package/dist/typescript/commonjs/shared/translation/helpers.d.ts.map +1 -1
  94. package/dist/typescript/commonjs/shared/translation/types.d.ts +4 -1
  95. package/dist/typescript/commonjs/shared/translation/types.d.ts.map +1 -1
  96. package/dist/typescript/module/features/feedback/components/EmptyComment.d.ts +1 -6
  97. package/dist/typescript/module/features/feedback/components/EmptyComment.d.ts.map +1 -1
  98. package/dist/typescript/module/features/feedback/components/TeacherFeedback.d.ts +5 -5
  99. package/dist/typescript/module/features/feedback/components/TeacherFeedback.d.ts.map +1 -1
  100. package/dist/typescript/module/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.d.ts.map +1 -1
  101. package/dist/typescript/module/features/feedback/components/TeacherFeedbackComments/TeacherComment.d.ts +2 -4
  102. package/dist/typescript/module/features/feedback/components/TeacherFeedbackComments/TeacherComment.d.ts.map +1 -1
  103. package/dist/typescript/module/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.d.ts +2 -4
  104. package/dist/typescript/module/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.d.ts.map +1 -1
  105. package/dist/typescript/module/features/feedback/constants.d.ts +2 -2
  106. package/dist/typescript/module/features/feedback/constants.d.ts.map +1 -1
  107. package/dist/typescript/module/features/feedback/helpers.d.ts +10 -1
  108. package/dist/typescript/module/features/feedback/helpers.d.ts.map +1 -1
  109. package/dist/typescript/module/features/feedback/model/api.d.ts +6 -2
  110. package/dist/typescript/module/features/feedback/model/api.d.ts.map +1 -1
  111. package/dist/typescript/module/features/feedback/model/comments.d.ts +10 -12
  112. package/dist/typescript/module/features/feedback/model/comments.d.ts.map +1 -1
  113. package/dist/typescript/module/features/feedback/model/model.d.ts +4 -7
  114. package/dist/typescript/module/features/feedback/model/model.d.ts.map +1 -1
  115. package/dist/typescript/module/features/feedback/types.d.ts +8 -1
  116. package/dist/typescript/module/features/feedback/types.d.ts.map +1 -1
  117. package/dist/typescript/module/lib/helpers/helpers.d.ts +1 -2
  118. package/dist/typescript/module/lib/helpers/helpers.d.ts.map +1 -1
  119. package/dist/typescript/module/shared/icons/MessageBubbleIcon.d.ts.map +1 -0
  120. package/dist/typescript/module/shared/icons/XCloseIcon.d.ts.map +1 -0
  121. package/dist/typescript/module/shared/translation/constants.d.ts +38 -40
  122. package/dist/typescript/module/shared/translation/constants.d.ts.map +1 -1
  123. package/dist/typescript/module/shared/translation/helpers.d.ts.map +1 -1
  124. package/dist/typescript/module/shared/translation/types.d.ts +4 -1
  125. package/dist/typescript/module/shared/translation/types.d.ts.map +1 -1
  126. package/package.json +1 -1
  127. package/src/features/feedback/components/EmptyComment.tsx +5 -8
  128. package/src/features/feedback/components/ListCardCommentsCount.tsx +1 -1
  129. package/src/features/feedback/components/TeacherFeedback.tsx +7 -8
  130. package/src/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.tsx +30 -16
  131. package/src/features/feedback/components/TeacherFeedbackComments/TeacherComment.tsx +3 -5
  132. package/src/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.tsx +2 -10
  133. package/src/features/feedback/constants.ts +12 -3
  134. package/src/features/feedback/helpers.ts +31 -0
  135. package/src/features/feedback/model/api.ts +6 -2
  136. package/src/features/feedback/model/comments.ts +17 -39
  137. package/src/features/feedback/model/model.ts +8 -11
  138. package/src/features/feedback/types.ts +7 -1
  139. package/src/lib/helpers/helpers.ts +24 -16
  140. package/src/lib/localization/en.json +12 -0
  141. package/src/lib/localization/gb.json +12 -0
  142. package/src/lib/localization/sw.json +12 -0
  143. package/src/shared/translation/constants.ts +0 -42
  144. package/src/shared/translation/helpers.ts +17 -17
  145. package/src/shared/translation/types.ts +12 -4
  146. package/dist/commonjs/features/feedback/assets/icons/MessageBubbleIcon.js.map +0 -1
  147. package/dist/commonjs/features/feedback/assets/icons/XCloseIcon.js.map +0 -1
  148. package/dist/module/features/feedback/assets/icons/MessageBubbleIcon.js.map +0 -1
  149. package/dist/module/features/feedback/assets/icons/XCloseIcon.js.map +0 -1
  150. package/dist/typescript/commonjs/features/feedback/assets/icons/MessageBubbleIcon.d.ts.map +0 -1
  151. package/dist/typescript/commonjs/features/feedback/assets/icons/XCloseIcon.d.ts.map +0 -1
  152. package/dist/typescript/module/features/feedback/assets/icons/MessageBubbleIcon.d.ts.map +0 -1
  153. package/dist/typescript/module/features/feedback/assets/icons/XCloseIcon.d.ts.map +0 -1
  154. /package/dist/commonjs/{features/feedback/assets → shared}/icons/MessageBubbleIcon.js +0 -0
  155. /package/dist/commonjs/{features/feedback/assets → shared}/icons/XCloseIcon.js +0 -0
  156. /package/dist/module/{features/feedback/assets → shared}/icons/MessageBubbleIcon.js +0 -0
  157. /package/dist/module/{features/feedback/assets → shared}/icons/XCloseIcon.js +0 -0
  158. /package/dist/typescript/commonjs/{features/feedback/assets → shared}/icons/MessageBubbleIcon.d.ts +0 -0
  159. /package/dist/typescript/commonjs/{features/feedback/assets → shared}/icons/XCloseIcon.d.ts +0 -0
  160. /package/dist/typescript/module/{features/feedback/assets → shared}/icons/MessageBubbleIcon.d.ts +0 -0
  161. /package/dist/typescript/module/{features/feedback/assets → shared}/icons/XCloseIcon.d.ts +0 -0
  162. /package/src/{features/feedback/assets → shared}/icons/MessageBubbleIcon.tsx +0 -0
  163. /package/src/{features/feedback/assets → shared}/icons/XCloseIcon.tsx +0 -0
@@ -20,4 +20,27 @@ export function findCommentsByCredits({
20
20
  }) {
21
21
  return data?.get(assignmentId)?.[problemId]?.comments ?? [];
22
22
  }
23
+ export function updateCommentsState({
24
+ state,
25
+ assignmentId,
26
+ problemId,
27
+ fn
28
+ }) {
29
+ if (!state) return state;
30
+ const updatedState = new Map(state);
31
+ const assignmentMap = updatedState.get(assignmentId) || {};
32
+ const currentData = assignmentMap[problemId] || {
33
+ comments: [],
34
+ unreadMessagesCount: 0
35
+ };
36
+ const updatedData = fn(currentData);
37
+ if (updatedData === undefined) {
38
+ delete assignmentMap[problemId];
39
+ if (Object.keys(assignmentMap).length === 0) updatedState.delete(assignmentId);
40
+ return updatedState;
41
+ }
42
+ assignmentMap[problemId] = updatedData;
43
+ updatedState.set(assignmentId, assignmentMap);
44
+ return updatedState;
45
+ }
23
46
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["generateCommentsMap","assignmentId","data","problemsMap","Object","entries","reduce","acc","problemId","feedback","unreadMessages","comments","filter","isRead","unreadMessagesCount","length","Map","set","findCommentsByCredits","get"],"sourceRoot":"../../../../src","sources":["features/feedback/helpers.ts"],"mappings":";;AAEA,OAAO,SAASA,mBAAmBA,CAACC,YAAoB,EAAEC,IAAyB,EAAe;EAChG,MAAMC,WAAW,GAAGC,MAAM,CAACC,OAAO,CAACH,IAAI,CAAC,CAACI,MAAM,CAC7C,CAACC,GAAG,EAAE,CAACC,SAAS,EAAEC,QAAQ,CAAC,KAAK;IAC9B,MAAMC,cAAc,GAAGD,QAAQ,CAACE,QAAQ,CAACC,MAAM,CAAC,CAAC;MAAEC;IAAO,CAAC,KAAK,CAACA,MAAM,CAAC;IAExEN,GAAG,CAACC,SAAS,CAAC,GAAG;MACfG,QAAQ,EAAEF,QAAQ,CAACE,QAAQ;MAC3BG,mBAAmB,EAAEJ,cAAc,CAACK;IACtC,CAAC;IAED,OAAOR,GAAG;EACZ,CAAC,EACD,CAAC,CACH,CAAC;EAED,OAAO,IAAIS,GAAG,CAAC,CAAC,CAACC,GAAG,CAAChB,YAAY,EAAEE,WAAW,CAAC;AACjD;AAQA,OAAO,SAASe,qBAAqBA,CAAC;EACpChB,IAAI;EACJD,YAAY;EACZO;AAC0B,CAAC,EAAE;EAC7B,OAAON,IAAI,EAAEiB,GAAG,CAAClB,YAAY,CAAC,GAAGO,SAAS,CAAC,EAAEG,QAAQ,IAAI,EAAE;AAC7D","ignoreList":[]}
1
+ {"version":3,"names":["generateCommentsMap","assignmentId","data","problemsMap","Object","entries","reduce","acc","problemId","feedback","unreadMessages","comments","filter","isRead","unreadMessagesCount","length","Map","set","findCommentsByCredits","get","updateCommentsState","state","fn","updatedState","assignmentMap","currentData","updatedData","undefined","keys","delete"],"sourceRoot":"../../../../src","sources":["features/feedback/helpers.ts"],"mappings":";;AAEA,OAAO,SAASA,mBAAmBA,CAACC,YAAoB,EAAEC,IAAyB,EAAe;EAChG,MAAMC,WAAW,GAAGC,MAAM,CAACC,OAAO,CAACH,IAAI,CAAC,CAACI,MAAM,CAC7C,CAACC,GAAG,EAAE,CAACC,SAAS,EAAEC,QAAQ,CAAC,KAAK;IAC9B,MAAMC,cAAc,GAAGD,QAAQ,CAACE,QAAQ,CAACC,MAAM,CAAC,CAAC;MAAEC;IAAO,CAAC,KAAK,CAACA,MAAM,CAAC;IAExEN,GAAG,CAACC,SAAS,CAAC,GAAG;MACfG,QAAQ,EAAEF,QAAQ,CAACE,QAAQ;MAC3BG,mBAAmB,EAAEJ,cAAc,CAACK;IACtC,CAAC;IAED,OAAOR,GAAG;EACZ,CAAC,EACD,CAAC,CACH,CAAC;EAED,OAAO,IAAIS,GAAG,CAAC,CAAC,CAACC,GAAG,CAAChB,YAAY,EAAEE,WAAW,CAAC;AACjD;AAQA,OAAO,SAASe,qBAAqBA,CAAC;EACpChB,IAAI;EACJD,YAAY;EACZO;AAC0B,CAAC,EAAE;EAC7B,OAAON,IAAI,EAAEiB,GAAG,CAAClB,YAAY,CAAC,GAAGO,SAAS,CAAC,EAAEG,QAAQ,IAAI,EAAE;AAC7D;AASA,OAAO,SAASS,mBAAmBA,CAAC;EAClCC,KAAK;EACLpB,YAAY;EACZO,SAAS;EACTc;AACwB,CAAC,EAAE;EAC3B,IAAI,CAACD,KAAK,EAAE,OAAOA,KAAK;EAExB,MAAME,YAAY,GAAG,IAAIP,GAAG,CAACK,KAAK,CAAC;EACnC,MAAMG,aAAa,GAAGD,YAAY,CAACJ,GAAG,CAAClB,YAAY,CAAC,IAAI,CAAC,CAAC;EAC1D,MAAMwB,WAAW,GAAGD,aAAa,CAAChB,SAAS,CAAC,IAAI;IAAEG,QAAQ,EAAE,EAAE;IAAEG,mBAAmB,EAAE;EAAE,CAAC;EACxF,MAAMY,WAAW,GAAGJ,EAAE,CAACG,WAAW,CAAC;EAEnC,IAAIC,WAAW,KAAKC,SAAS,EAAE;IAC7B,OAAOH,aAAa,CAAChB,SAAS,CAAC;IAC/B,IAAIJ,MAAM,CAACwB,IAAI,CAACJ,aAAa,CAAC,CAACT,MAAM,KAAK,CAAC,EAAEQ,YAAY,CAACM,MAAM,CAAC5B,YAAY,CAAC;IAC9E,OAAOsB,YAAY;EACrB;EAEAC,aAAa,CAAChB,SAAS,CAAC,GAAGkB,WAAW;EACtCH,YAAY,CAACN,GAAG,CAAChB,YAAY,EAAEuB,aAAa,CAAC;EAC7C,OAAOD,YAAY;AACrB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["createEffect","TeacherFeedbackAPI","constructor","api","getCommentsFx","getComments","updateCommentStatusSeenFx","updateCommentStatusSeen"],"sourceRoot":"../../../../../src","sources":["features/feedback/model/api.ts"],"mappings":";;AAAA,SAASA,YAAY,QAAgB,UAAU;AAI/C,OAAO,MAAMC,kBAAkB,CAAC;EAI9BC,WAAWA,CAACC,GAAqC,EAAE;IACjD,IAAI,CAACC,aAAa,GAAGJ,YAAY,CAACG,GAAG,CAACE,WAAW,CAAC;IAClD,IAAI,CAACC,yBAAyB,GAAGN,YAAY,CAACG,GAAG,CAACI,uBAAuB,CAAC;EAC5E;AACF","ignoreList":[]}
1
+ {"version":3,"names":["createEffect","TeacherFeedbackAPI","constructor","api","getCommentsFx","getComments","updateCommentStatusSeenFx","updateCommentStatusSeen"],"sourceRoot":"../../../../../src","sources":["features/feedback/model/api.ts"],"mappings":";;AAAA,SAASA,YAAY,QAAgB,UAAU;AAQ/C,OAAO,MAAMC,kBAAkB,CAAC;EAI9BC,WAAWA,CAACC,GAA4B,EAAE;IACxC,IAAI,CAACC,aAAa,GAAGJ,YAAY,CAACG,GAAG,CAACE,WAAW,CAAC;IAClD,IAAI,CAACC,yBAAyB,GAAGN,YAAY,CAACG,GAAG,CAACI,uBAAuB,CAAC;EAC5E;AACF","ignoreList":[]}
@@ -1,7 +1,10 @@
1
1
  "use strict";
2
2
 
3
3
  import { createEvent, restore, sample } from 'effector';
4
- export class TeacherComments {
4
+ import { updateCommentsState } from "../helpers.js";
5
+ import { getText } from "../../../shared/translation/helpers.js";
6
+ import { EMPTY_COMMENT } from '@magmamath/students-features';
7
+ export class TeacherCommentsModel {
5
8
  setNoCommentsMessage = createEvent();
6
9
  setAllCommentsRead = createEvent();
7
10
  add = createEvent();
@@ -10,7 +13,7 @@ export class TeacherComments {
10
13
  $data = restore(this.setData, null).on(this.setAllCommentsRead, (state, {
11
14
  assignmentId,
12
15
  problemId
13
- }) => this.update({
16
+ }) => updateCommentsState({
14
17
  state,
15
18
  assignmentId,
16
19
  problemId,
@@ -26,7 +29,7 @@ export class TeacherComments {
26
29
  problemId,
27
30
  comment,
28
31
  isRead
29
- }) => this.update({
32
+ }) => updateCommentsState({
30
33
  state,
31
34
  assignmentId,
32
35
  problemId,
@@ -38,7 +41,7 @@ export class TeacherComments {
38
41
  assignmentId,
39
42
  problemId,
40
43
  commentId
41
- }) => this.update({
44
+ }) => updateCommentsState({
42
45
  state,
43
46
  assignmentId,
44
47
  problemId,
@@ -56,7 +59,7 @@ export class TeacherComments {
56
59
  unreadMessagesCount: commentToDelete.isRead ? data.unreadMessagesCount : data.unreadMessagesCount - 1
57
60
  };
58
61
  }
59
- })).on(this.setNoCommentsMessage, (state, noCommentsMessage) => this.update({
62
+ })).on(this.setNoCommentsMessage, (state, noCommentsMessage) => updateCommentsState({
60
63
  state,
61
64
  assignmentId: noCommentsMessage.exerciseId,
62
65
  problemId: noCommentsMessage.problemId,
@@ -65,7 +68,10 @@ export class TeacherComments {
65
68
  unreadMessagesCount: 0
66
69
  })
67
70
  }));
68
- constructor(api, $isOpen, EMPTY_COMMENT) {
71
+ constructor({
72
+ api,
73
+ $isOpen
74
+ }) {
69
75
  sample({
70
76
  clock: this.add,
71
77
  source: {
@@ -102,33 +108,11 @@ export class TeacherComments {
102
108
  }) => ({
103
109
  ...EMPTY_COMMENT,
104
110
  exerciseId: assignmentId,
105
- problemId
111
+ problemId,
112
+ content: getText('teacherFeedback.noComments')
106
113
  }),
107
114
  target: this.setNoCommentsMessage
108
115
  });
109
116
  }
110
- update({
111
- state,
112
- assignmentId,
113
- problemId,
114
- fn
115
- }) {
116
- if (!state) return state;
117
- const updatedState = new Map(state);
118
- const assignmentMap = updatedState.get(assignmentId) || {};
119
- const currentData = assignmentMap[problemId] || {
120
- comments: [],
121
- unreadMessagesCount: 0
122
- };
123
- const updatedData = fn(currentData);
124
- if (updatedData === undefined) {
125
- delete assignmentMap[problemId];
126
- if (Object.keys(assignmentMap).length === 0) updatedState.delete(assignmentId);
127
- return updatedState;
128
- }
129
- assignmentMap[problemId] = updatedData;
130
- updatedState.set(assignmentId, assignmentMap);
131
- return updatedState;
132
- }
133
117
  }
134
118
  //# sourceMappingURL=comments.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createEvent","restore","sample","TeacherComments","setNoCommentsMessage","setAllCommentsRead","add","delete","setData","$data","on","state","assignmentId","problemId","update","fn","data","comments","map","comment","isRead","unreadMessagesCount","commentId","commentToDelete","find","_id","filteredComments","filter","length","undefined","noCommentsMessage","exerciseId","constructor","api","$isOpen","EMPTY_COMMENT","clock","source","isOpen","_","ids","target","updateCommentStatusSeenFx","deletedMessage","hasNoMessages","get","updatedState","Map","assignmentMap","currentData","updatedData","Object","keys","set"],"sourceRoot":"../../../../../src","sources":["features/feedback/model/comments.ts"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,OAAO,EAAEC,MAAM,QAAe,UAAU;AAY9D,OAAO,MAAMC,eAAe,CAAC;EACVC,oBAAoB,GAAGJ,WAAW,CAAiB,CAAC;EACrDK,kBAAkB,GAAGL,WAAW,CAAU,CAAC;EAC3CM,GAAG,GAAGN,WAAW,CAAyD,CAAC;EAC3EO,MAAM,GAAGP,WAAW,CAAkC,CAAC;EAEvDQ,OAAO,GAAGR,WAAW,CAAc,CAAC;EACpCS,KAAK,GAAGR,OAAO,CAAqB,IAAI,CAACO,OAAO,EAAE,IAAI,CAAC,CACpEE,EAAE,CAAC,IAAI,CAACL,kBAAkB,EAAE,CAACM,KAAK,EAAE;IAAEC,YAAY;IAAEC;EAAU,CAAC,KAC9D,IAAI,CAACC,MAAM,CAAC;IACVH,KAAK;IACLC,YAAY;IACZC,SAAS;IACTE,EAAE,EAAEC,IAAI,KAAK;MACXC,QAAQ,EAAED,IAAI,CAACC,QAAQ,CAACC,GAAG,CAACC,OAAO,KAAK;QAAE,GAAGA,OAAO;QAAEC,MAAM,EAAE;MAAK,CAAC,CAAC,CAAC;MACtEC,mBAAmB,EAAE;IACvB,CAAC;EACH,CAAC,CACH,CAAC,CACAX,EAAE,CAAC,IAAI,CAACJ,GAAG,EAAE,CAACK,KAAK,EAAE;IAAEC,YAAY;IAAEC,SAAS;IAAEM,OAAO;IAAEC;EAAO,CAAC,KAChE,IAAI,CAACN,MAAM,CAAC;IACVH,KAAK;IACLC,YAAY;IACZC,SAAS;IACTE,EAAE,EAAEC,IAAI,KAAK;MACXC,QAAQ,EAAE,CAAC,GAAGD,IAAI,CAACC,QAAQ,EAAEE,OAAO,CAAC;MACrCE,mBAAmB,EAAED,MAAM,GAAGJ,IAAI,CAACK,mBAAmB,GAAGL,IAAI,CAACK,mBAAmB,GAAG;IACtF,CAAC;EACH,CAAC,CACH,CAAC,CACAX,EAAE,CAAC,IAAI,CAACH,MAAM,EAAE,CAACI,KAAK,EAAE;IAAEC,YAAY;IAAEC,SAAS;IAAES;EAAU,CAAC,KAC7D,IAAI,CAACR,MAAM,CAAC;IACVH,KAAK;IACLC,YAAY;IACZC,SAAS;IACTE,EAAE,EAAEC,IAAI,IAAI;MACV,MAAMO,eAAe,GAAGP,IAAI,CAACC,QAAQ,CAACO,IAAI,CAAC,CAAC;QAAEC;MAAI,CAAC,KAAKA,GAAG,KAAKH,SAAS,CAAC;MAC1E,IAAI,CAACC,eAAe,EAAE,OAAOP,IAAI;MAEjC,MAAMU,gBAAgB,GAAGV,IAAI,CAACC,QAAQ,CAACU,MAAM,CAAC,CAAC;QAAEF;MAAI,CAAC,KAAKA,GAAG,KAAKH,SAAS,CAAC;MAC7E,IAAI,CAACI,gBAAgB,CAACE,MAAM,EAAE,OAAOC,SAAS;MAE9C,OAAO;QACLZ,QAAQ,EAAES,gBAAgB;QAC1BL,mBAAmB,EAAEE,eAAe,CAACH,MAAM,GACvCJ,IAAI,CAACK,mBAAmB,GACxBL,IAAI,CAACK,mBAAmB,GAAG;MACjC,CAAC;IACH;EACF,CAAC,CACH,CAAC,CACAX,EAAE,CAAC,IAAI,CAACN,oBAAoB,EAAE,CAACO,KAAK,EAAEmB,iBAAiB,KACtD,IAAI,CAAChB,MAAM,CAAC;IACVH,KAAK;IACLC,YAAY,EAAEkB,iBAAiB,CAACC,UAAU;IAC1ClB,SAAS,EAAEiB,iBAAiB,CAACjB,SAAS;IACtCE,EAAE,EAAEA,CAAA,MAAO;MACTE,QAAQ,EAAE,CAACa,iBAAiB,CAAC;MAC7BT,mBAAmB,EAAE;IACvB,CAAC;EACH,CAAC,CACH,CAAC;EAEHW,WAAWA,CACTC,GAAuB,EACvBC,OAAuB,EACvBC,aAAqE,EACrE;IACAjC,MAAM,CAAC;MACLkC,KAAK,EAAE,IAAI,CAAC9B,GAAG;MACf+B,MAAM,EAAE;QAAEC,MAAM,EAAEJ;MAAQ,CAAC;MAC3BP,MAAM,EAAEA,CAAC;QAAEW;MAAO,CAAC,KAAKA,MAAM;MAC9BvB,EAAE,EAAEA,CAACwB,CAAC,EAAE;QAAEpB;MAAQ,CAAC,MAAM;QACvBqB,GAAG,EAAE,CAACrB,OAAO,CAACM,GAAG;MACnB,CAAC,CAAC;MACFgB,MAAM,EAAER,GAAG,CAACS;IACd,CAAC,CAAC;;IAEF;IACAxC,MAAM,CAAC;MACLkC,KAAK,EAAE,IAAI,CAAC7B,MAAM;MAClB8B,MAAM,EAAE;QAAEC,MAAM,EAAEJ,OAAO;QAAEvB,KAAK,EAAE,IAAI,CAACF;MAAM,CAAC;MAC9CkB,MAAM,EAAEA,CAAC;QAAEW,MAAM;QAAE3B;MAAM,CAAC,EAAEgC,cAAc,KAAK;QAC7C,MAAMC,aAAa,GAAG,CAACjC,KAAK,EAAEkC,GAAG,CAACF,cAAc,CAAC/B,YAAY,CAAC,GAAG+B,cAAc,CAAC9B,SAAS,CAAC,EACtFI,QAAQ,CAACW,MAAM;QACnB,OAAOU,MAAM,IAAIM,aAAa;MAChC,CAAC;MACD7B,EAAE,EAAEA,CAACwB,CAAC,EAAE;QAAE3B,YAAY;QAAEC;MAAU,CAAC,MAAM;QACvC,GAAGsB,aAAa;QAChBJ,UAAU,EAAEnB,YAAY;QACxBC;MACF,CAAC,CAAC;MACF4B,MAAM,EAAE,IAAI,CAACrC;IACf,CAAC,CAAC;EACJ;EAEQU,MAAMA,CAAC;IAAEH,KAAK;IAAEC,YAAY;IAAEC,SAAS;IAAEE;EAAgB,CAAC,EAAE;IAClE,IAAI,CAACJ,KAAK,EAAE,OAAOA,KAAK;IAExB,MAAMmC,YAAY,GAAG,IAAIC,GAAG,CAACpC,KAAK,CAAC;IACnC,MAAMqC,aAAa,GAAGF,YAAY,CAACD,GAAG,CAACjC,YAAY,CAAC,IAAI,CAAC,CAAC;IAC1D,MAAMqC,WAAW,GAAGD,aAAa,CAACnC,SAAS,CAAC,IAAI;MAAEI,QAAQ,EAAE,EAAE;MAAEI,mBAAmB,EAAE;IAAE,CAAC;IACxF,MAAM6B,WAAW,GAAGnC,EAAE,CAACkC,WAAW,CAAC;IAEnC,IAAIC,WAAW,KAAKrB,SAAS,EAAE;MAC7B,OAAOmB,aAAa,CAACnC,SAAS,CAAC;MAC/B,IAAIsC,MAAM,CAACC,IAAI,CAACJ,aAAa,CAAC,CAACpB,MAAM,KAAK,CAAC,EAAEkB,YAAY,CAACvC,MAAM,CAACK,YAAY,CAAC;MAC9E,OAAOkC,YAAY;IACrB;IAEAE,aAAa,CAACnC,SAAS,CAAC,GAAGqC,WAAW;IACtCJ,YAAY,CAACO,GAAG,CAACzC,YAAY,EAAEoC,aAAa,CAAC;IAC7C,OAAOF,YAAY;EACrB;AACF","ignoreList":[]}
1
+ {"version":3,"names":["createEvent","restore","sample","updateCommentsState","getText","EMPTY_COMMENT","TeacherCommentsModel","setNoCommentsMessage","setAllCommentsRead","add","delete","setData","$data","on","state","assignmentId","problemId","fn","data","comments","map","comment","isRead","unreadMessagesCount","commentId","commentToDelete","find","_id","filteredComments","filter","length","undefined","noCommentsMessage","exerciseId","constructor","api","$isOpen","clock","source","isOpen","_","ids","target","updateCommentStatusSeenFx","deletedMessage","hasNoMessages","get","content"],"sourceRoot":"../../../../../src","sources":["features/feedback/model/comments.ts"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,OAAO,EAAEC,MAAM,QAAe,UAAU;AAG9D,SAASC,mBAAmB,QAAQ,eAAY;AAChD,SAASC,OAAO,QAAQ,wCAAqC;AAC7D,SAASC,aAAa,QAAQ,8BAA8B;AAO5D,OAAO,MAAMC,oBAAoB,CAAC;EACfC,oBAAoB,GAAGP,WAAW,CAAiB,CAAC;EACrDQ,kBAAkB,GAAGR,WAAW,CAAU,CAAC;EAC3CS,GAAG,GAAGT,WAAW,CAAkB,CAAC;EACpCU,MAAM,GAAGV,WAAW,CAAqB,CAAC;EAE1CW,OAAO,GAAGX,WAAW,CAAc,CAAC;EACpCY,KAAK,GAAGX,OAAO,CAAqB,IAAI,CAACU,OAAO,EAAE,IAAI,CAAC,CACpEE,EAAE,CAAC,IAAI,CAACL,kBAAkB,EAAE,CAACM,KAAK,EAAE;IAAEC,YAAY;IAAEC;EAAU,CAAC,KAC9Db,mBAAmB,CAAC;IAClBW,KAAK;IACLC,YAAY;IACZC,SAAS;IACTC,EAAE,EAAEC,IAAI,KAAK;MACXC,QAAQ,EAAED,IAAI,CAACC,QAAQ,CAACC,GAAG,CAACC,OAAO,KAAK;QAAE,GAAGA,OAAO;QAAEC,MAAM,EAAE;MAAK,CAAC,CAAC,CAAC;MACtEC,mBAAmB,EAAE;IACvB,CAAC;EACH,CAAC,CACH,CAAC,CACAV,EAAE,CAAC,IAAI,CAACJ,GAAG,EAAE,CAACK,KAAK,EAAE;IAAEC,YAAY;IAAEC,SAAS;IAAEK,OAAO;IAAEC;EAAO,CAAC,KAChEnB,mBAAmB,CAAC;IAClBW,KAAK;IACLC,YAAY;IACZC,SAAS;IACTC,EAAE,EAAEC,IAAI,KAAK;MACXC,QAAQ,EAAE,CAAC,GAAGD,IAAI,CAACC,QAAQ,EAAEE,OAAO,CAAC;MACrCE,mBAAmB,EAAED,MAAM,GAAGJ,IAAI,CAACK,mBAAmB,GAAGL,IAAI,CAACK,mBAAmB,GAAG;IACtF,CAAC;EACH,CAAC,CACH,CAAC,CACAV,EAAE,CAAC,IAAI,CAACH,MAAM,EAAE,CAACI,KAAK,EAAE;IAAEC,YAAY;IAAEC,SAAS;IAAEQ;EAAU,CAAC,KAC7DrB,mBAAmB,CAAC;IAClBW,KAAK;IACLC,YAAY;IACZC,SAAS;IACTC,EAAE,EAAEC,IAAI,IAAI;MACV,MAAMO,eAAe,GAAGP,IAAI,CAACC,QAAQ,CAACO,IAAI,CAAC,CAAC;QAAEC;MAAI,CAAC,KAAKA,GAAG,KAAKH,SAAS,CAAC;MAC1E,IAAI,CAACC,eAAe,EAAE,OAAOP,IAAI;MAEjC,MAAMU,gBAAgB,GAAGV,IAAI,CAACC,QAAQ,CAACU,MAAM,CAAC,CAAC;QAAEF;MAAI,CAAC,KAAKA,GAAG,KAAKH,SAAS,CAAC;MAC7E,IAAI,CAACI,gBAAgB,CAACE,MAAM,EAAE,OAAOC,SAAS;MAE9C,OAAO;QACLZ,QAAQ,EAAES,gBAAgB;QAC1BL,mBAAmB,EAAEE,eAAe,CAACH,MAAM,GACvCJ,IAAI,CAACK,mBAAmB,GACxBL,IAAI,CAACK,mBAAmB,GAAG;MACjC,CAAC;IACH;EACF,CAAC,CACH,CAAC,CACAV,EAAE,CAAC,IAAI,CAACN,oBAAoB,EAAE,CAACO,KAAK,EAAEkB,iBAAiB,KACtD7B,mBAAmB,CAAC;IAClBW,KAAK;IACLC,YAAY,EAAEiB,iBAAiB,CAACC,UAAU;IAC1CjB,SAAS,EAAEgB,iBAAiB,CAAChB,SAAS;IACtCC,EAAE,EAAEA,CAAA,MAAO;MACTE,QAAQ,EAAE,CAACa,iBAAiB,CAAC;MAC7BT,mBAAmB,EAAE;IACvB,CAAC;EACH,CAAC,CACH,CAAC;EAEHW,WAAWA,CAAC;IAAEC,GAAG;IAAEC;EAAmC,CAAC,EAAE;IACvDlC,MAAM,CAAC;MACLmC,KAAK,EAAE,IAAI,CAAC5B,GAAG;MACf6B,MAAM,EAAE;QAAEC,MAAM,EAAEH;MAAQ,CAAC;MAC3BP,MAAM,EAAEA,CAAC;QAAEU;MAAO,CAAC,KAAKA,MAAM;MAC9BtB,EAAE,EAAEA,CAACuB,CAAC,EAAE;QAAEnB;MAAQ,CAAC,MAAM;QACvBoB,GAAG,EAAE,CAACpB,OAAO,CAACM,GAAG;MACnB,CAAC,CAAC;MACFe,MAAM,EAAEP,GAAG,CAACQ;IACd,CAAC,CAAC;;IAEF;IACAzC,MAAM,CAAC;MACLmC,KAAK,EAAE,IAAI,CAAC3B,MAAM;MAClB4B,MAAM,EAAE;QAAEC,MAAM,EAAEH,OAAO;QAAEtB,KAAK,EAAE,IAAI,CAACF;MAAM,CAAC;MAC9CiB,MAAM,EAAEA,CAAC;QAAEU,MAAM;QAAEzB;MAAM,CAAC,EAAE8B,cAAc,KAAK;QAC7C,MAAMC,aAAa,GAAG,CAAC/B,KAAK,EAAEgC,GAAG,CAACF,cAAc,CAAC7B,YAAY,CAAC,GAAG6B,cAAc,CAAC5B,SAAS,CAAC,EACtFG,QAAQ,CAACW,MAAM;QACnB,OAAOS,MAAM,IAAIM,aAAa;MAChC,CAAC;MACD5B,EAAE,EAAEA,CAACuB,CAAC,EAAE;QAAEzB,YAAY;QAAEC;MAAU,CAAC,MAAsB;QACvD,GAAGX,aAAa;QAChB4B,UAAU,EAAElB,YAAY;QACxBC,SAAS;QACT+B,OAAO,EAAE3C,OAAO,CAAC,4BAA4B;MAC/C,CAAC,CAAC;MACFsC,MAAM,EAAE,IAAI,CAACnC;IACf,CAAC,CAAC;EACJ;AACF","ignoreList":[]}
@@ -3,7 +3,7 @@
3
3
  import { createEvent, restore, sample } from 'effector';
4
4
  import { TeacherFeedbackAPI } from "./api.js";
5
5
  import { TeacherFeedbackSockets } from "./sockets.js";
6
- import { TeacherComments } from "./comments.js";
6
+ import { TeacherCommentsModel } from "./comments.js";
7
7
  import { findCommentsByCredits, generateCommentsMap } from "../helpers.js";
8
8
  import { EMPTY_COMMENT_ID } from "../constants.js";
9
9
  export class TeacherFeedbackModel {
@@ -14,12 +14,14 @@ export class TeacherFeedbackModel {
14
14
  constructor({
15
15
  api,
16
16
  socket,
17
- credits,
18
- defaults
17
+ credits
19
18
  }) {
20
19
  this.api = new TeacherFeedbackAPI(api);
21
20
  this.sockets = new TeacherFeedbackSockets(socket);
22
- this.comments = new TeacherComments(this.api, this.$isOpen, defaults.EMPTY_COMMENT);
21
+ this.comments = new TeacherCommentsModel({
22
+ api: this.api,
23
+ $isOpen: this.$isOpen
24
+ });
23
25
  sample({
24
26
  clock: credits.$problemId,
25
27
  fn: () => false,
@@ -1 +1 @@
1
- {"version":3,"names":["createEvent","restore","sample","TeacherFeedbackAPI","TeacherFeedbackSockets","TeacherComments","findCommentsByCredits","generateCommentsMap","EMPTY_COMMENT_ID","TeacherFeedbackModel","setIsOpen","$isOpen","setIsFeedbackIconDisplayed","$isFeedbackIconDisplayed","constructor","api","socket","credits","defaults","sockets","comments","EMPTY_COMMENT","clock","$problemId","fn","target","source","data","$data","assignmentId","$assignmentId","problemId","filter","isOpen","get","isOnlyNoCommentsMessage","length","_id","comment","commentId","delete","hasUnreadComments","some","isRead","ids","map","updateCommentStatusSeenFx","pending","setAllCommentsRead","getCommentsFx","done","params","result","id","setData","commentDeleted","commentAdded","add"],"sourceRoot":"../../../../../src","sources":["features/feedback/model/model.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createEvent","restore","sample","TeacherFeedbackAPI","TeacherFeedbackSockets","TeacherCommentsModel","findCommentsByCredits","generateCommentsMap","EMPTY_COMMENT_ID","TeacherFeedbackModel","setIsOpen","$isOpen","setIsFeedbackIconDisplayed","$isFeedbackIconDisplayed","constructor","api","socket","credits","sockets","comments","clock","$problemId","fn","target","source","data","$data","assignmentId","$assignmentId","problemId","filter","isOpen","get","isOnlyNoCommentsMessage","length","_id","comment","commentId","delete","hasUnreadComments","some","isRead","ids","map","updateCommentStatusSeenFx","pending","setAllCommentsRead","getCommentsFx","done","params","result","id","setData","commentDeleted","commentAdded","add"],"sourceRoot":"../../../../../src","sources":["features/feedback/model/model.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["FeedbackSocketEvents"],"sourceRoot":"../../../../src","sources":["features/feedback/types.ts"],"mappings":";;AA4CA,WAAYA,oBAAoB,0BAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["FeedbackSocketEvents"],"sourceRoot":"../../../../src","sources":["features/feedback/types.ts"],"mappings":";;AA+CA,WAAYA,oBAAoB,0BAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA","ignoreList":[]}
@@ -1,26 +1,30 @@
1
1
  "use strict";
2
2
 
3
- import { RELATIVE_TIME_LABELS } from "../../shared/translation/constants.js";
4
- import { Locale } from '@magmamath/students-features';
3
+ import { getText } from "../../shared/translation/helpers.js";
5
4
  export const generateRandomId = () => Date.now().toString(36) + Math.random().toString(36).substring(2);
6
- export const getRelativeTimeText = (date, lang) => {
7
- const t = RELATIVE_TIME_LABELS[lang] || RELATIVE_TIME_LABELS[Locale.EN];
5
+ const getYears = days => Math.floor(days / 365);
6
+ const getMonths = days => Math.floor(days / 30);
7
+ const getDays = hours => Math.floor(hours / 24);
8
+ const getHours = minutes => Math.floor(minutes / 60);
9
+ const getMinutes = seconds => Math.floor(seconds / 60);
10
+ const getSeconds = milliseconds => Math.floor(milliseconds / 1000);
11
+ export const getRelativeTimeText = date => {
8
12
  const timeBufferMs = 2000; // adds 2 seconds time buffer because when used with sockets, it displayed -1 seconds ago, instead of 1 second ago.
9
13
 
10
14
  const now = new Date().getTime();
11
15
  const targetDate = new Date(date).getTime() - timeBufferMs;
12
16
  const diffTime = now - targetDate;
13
- const seconds = Math.floor(diffTime / 1000);
14
- const minutes = Math.floor(seconds / 60);
15
- const hours = Math.floor(minutes / 60);
16
- const days = Math.floor(hours / 24);
17
- const months = Math.floor(days / 30);
18
- const years = Math.floor(days / 365);
19
- if (seconds < 60) return t.justNow;
20
- if (minutes < 60) return `${minutes} ${minutes === 1 ? t.minuteAgo : t.minutesAgo}`;
21
- if (hours < 24) return `${hours} ${hours === 1 ? t.hourAgo : t.hoursAgo}`;
22
- if (days < 30) return `${days} ${days === 1 ? t.dayAgo : t.daysAgo}`;
23
- if (months < 12) return `${months} ${months === 1 ? t.monthAgo : t.monthsAgo}`;
24
- return `${years} ${years === 1 ? t.yearAgo : t.yearsAgo}`;
17
+ const seconds = getSeconds(diffTime);
18
+ const minutes = getMinutes(seconds);
19
+ const hours = getHours(minutes);
20
+ const days = getDays(hours);
21
+ const months = getMonths(days);
22
+ const years = getYears(days);
23
+ if (seconds < 60) return getText('time.justNow');
24
+ if (minutes < 60) return `${minutes} ${minutes === 1 ? getText('time.minuteAgo') : getText('time.minutesAgo')}`;
25
+ if (hours < 24) return `${hours} ${hours === 1 ? getText('time.hourAgo') : getText('time.hoursAgo')}`;
26
+ if (days < 30) return `${days} ${days === 1 ? getText('time.dayAgo') : getText('time.daysAgo')}`;
27
+ if (months < 12) return `${months} ${months === 1 ? getText('time.monthAgo') : getText('time.monthsAgo')}`;
28
+ return `${years} ${years === 1 ? getText('time.yearAgo') : getText('time.yearsAgo')}`;
25
29
  };
26
30
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["RELATIVE_TIME_LABELS","Locale","generateRandomId","Date","now","toString","Math","random","substring","getRelativeTimeText","date","lang","t","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,SAASA,oBAAoB,QAAQ,uCAAoC;AACzE,SAASC,MAAM,QAAQ,8BAA8B;AAErD,OAAO,MAAMC,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;AAEnE,OAAO,MAAMC,mBAAmB,GAAGA,CAACC,IAAU,EAAEC,IAAY,KAAK;EAC/D,MAAMC,CAAC,GAAGZ,oBAAoB,CAACW,IAAI,CAAC,IAAIX,oBAAoB,CAACC,MAAM,CAACY,EAAE,CAAC;EACvE,MAAMC,YAAY,GAAG,IAAI,EAAC;;EAE1B,MAAMV,GAAG,GAAG,IAAID,IAAI,CAAC,CAAC,CAACY,OAAO,CAAC,CAAC;EAChC,MAAMC,UAAU,GAAG,IAAIb,IAAI,CAACO,IAAI,CAAC,CAACK,OAAO,CAAC,CAAC,GAAGD,YAAY;EAC1D,MAAMG,QAAQ,GAAGb,GAAG,GAAGY,UAAU;EAEjC,MAAME,OAAO,GAAGZ,IAAI,CAACa,KAAK,CAACF,QAAQ,GAAG,IAAI,CAAC;EAC3C,MAAMG,OAAO,GAAGd,IAAI,CAACa,KAAK,CAACD,OAAO,GAAG,EAAE,CAAC;EACxC,MAAMG,KAAK,GAAGf,IAAI,CAACa,KAAK,CAACC,OAAO,GAAG,EAAE,CAAC;EACtC,MAAME,IAAI,GAAGhB,IAAI,CAACa,KAAK,CAACE,KAAK,GAAG,EAAE,CAAC;EACnC,MAAME,MAAM,GAAGjB,IAAI,CAACa,KAAK,CAACG,IAAI,GAAG,EAAE,CAAC;EACpC,MAAME,KAAK,GAAGlB,IAAI,CAACa,KAAK,CAACG,IAAI,GAAG,GAAG,CAAC;EAEpC,IAAIJ,OAAO,GAAG,EAAE,EAAE,OAAON,CAAC,CAACa,OAAO;EAClC,IAAIL,OAAO,GAAG,EAAE,EAAE,OAAO,GAAGA,OAAO,IAAIA,OAAO,KAAK,CAAC,GAAGR,CAAC,CAACc,SAAS,GAAGd,CAAC,CAACe,UAAU,EAAE;EACnF,IAAIN,KAAK,GAAG,EAAE,EAAE,OAAO,GAAGA,KAAK,IAAIA,KAAK,KAAK,CAAC,GAAGT,CAAC,CAACgB,OAAO,GAAGhB,CAAC,CAACiB,QAAQ,EAAE;EACzE,IAAIP,IAAI,GAAG,EAAE,EAAE,OAAO,GAAGA,IAAI,IAAIA,IAAI,KAAK,CAAC,GAAGV,CAAC,CAACkB,MAAM,GAAGlB,CAAC,CAACmB,OAAO,EAAE;EACpE,IAAIR,MAAM,GAAG,EAAE,EAAE,OAAO,GAAGA,MAAM,IAAIA,MAAM,KAAK,CAAC,GAAGX,CAAC,CAACoB,QAAQ,GAAGpB,CAAC,CAACqB,SAAS,EAAE;EAC9E,OAAO,GAAGT,KAAK,IAAIA,KAAK,KAAK,CAAC,GAAGZ,CAAC,CAACsB,OAAO,GAAGtB,CAAC,CAACuB,QAAQ,EAAE;AAC3D,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["getText","generateRandomId","Date","now","toString","Math","random","substring","getYears","days","floor","getMonths","getDays","hours","getHours","minutes","getMinutes","seconds","getSeconds","milliseconds","getRelativeTimeText","date","timeBufferMs","getTime","targetDate","diffTime","months","years"],"sourceRoot":"../../../../src","sources":["lib/helpers/helpers.ts"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,qCAAkC;AAE1D,OAAO,MAAMC,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;AAEnE,MAAMC,QAAQ,GAAIC,IAAY,IAAKJ,IAAI,CAACK,KAAK,CAACD,IAAI,GAAG,GAAG,CAAC;AACzD,MAAME,SAAS,GAAIF,IAAY,IAAKJ,IAAI,CAACK,KAAK,CAACD,IAAI,GAAG,EAAE,CAAC;AACzD,MAAMG,OAAO,GAAIC,KAAa,IAAKR,IAAI,CAACK,KAAK,CAACG,KAAK,GAAG,EAAE,CAAC;AACzD,MAAMC,QAAQ,GAAIC,OAAe,IAAKV,IAAI,CAACK,KAAK,CAACK,OAAO,GAAG,EAAE,CAAC;AAC9D,MAAMC,UAAU,GAAIC,OAAe,IAAKZ,IAAI,CAACK,KAAK,CAACO,OAAO,GAAG,EAAE,CAAC;AAChE,MAAMC,UAAU,GAAIC,YAAoB,IAAKd,IAAI,CAACK,KAAK,CAACS,YAAY,GAAG,IAAI,CAAC;AAE5E,OAAO,MAAMC,mBAAmB,GAAIC,IAAU,IAAK;EACjD,MAAMC,YAAY,GAAG,IAAI,EAAC;;EAE1B,MAAMnB,GAAG,GAAG,IAAID,IAAI,CAAC,CAAC,CAACqB,OAAO,CAAC,CAAC;EAChC,MAAMC,UAAU,GAAG,IAAItB,IAAI,CAACmB,IAAI,CAAC,CAACE,OAAO,CAAC,CAAC,GAAGD,YAAY;EAC1D,MAAMG,QAAQ,GAAGtB,GAAG,GAAGqB,UAAU;EAEjC,MAAMP,OAAO,GAAGC,UAAU,CAACO,QAAQ,CAAC;EACpC,MAAMV,OAAO,GAAGC,UAAU,CAACC,OAAO,CAAC;EACnC,MAAMJ,KAAK,GAAGC,QAAQ,CAACC,OAAO,CAAC;EAC/B,MAAMN,IAAI,GAAGG,OAAO,CAACC,KAAK,CAAC;EAC3B,MAAMa,MAAM,GAAGf,SAAS,CAACF,IAAI,CAAC;EAC9B,MAAMkB,KAAK,GAAGnB,QAAQ,CAACC,IAAI,CAAC;EAE5B,IAAIQ,OAAO,GAAG,EAAE,EAAE,OAAOjB,OAAO,CAAC,cAAc,CAAC;EAChD,IAAIe,OAAO,GAAG,EAAE,EACd,OAAO,GAAGA,OAAO,IAAIA,OAAO,KAAK,CAAC,GAAGf,OAAO,CAAC,gBAAgB,CAAC,GAAGA,OAAO,CAAC,iBAAiB,CAAC,EAAE;EAC/F,IAAIa,KAAK,GAAG,EAAE,EACZ,OAAO,GAAGA,KAAK,IAAIA,KAAK,KAAK,CAAC,GAAGb,OAAO,CAAC,cAAc,CAAC,GAAGA,OAAO,CAAC,eAAe,CAAC,EAAE;EACvF,IAAIS,IAAI,GAAG,EAAE,EAAE,OAAO,GAAGA,IAAI,IAAIA,IAAI,KAAK,CAAC,GAAGT,OAAO,CAAC,aAAa,CAAC,GAAGA,OAAO,CAAC,cAAc,CAAC,EAAE;EAChG,IAAI0B,MAAM,GAAG,EAAE,EACb,OAAO,GAAGA,MAAM,IAAIA,MAAM,KAAK,CAAC,GAAG1B,OAAO,CAAC,eAAe,CAAC,GAAGA,OAAO,CAAC,gBAAgB,CAAC,EAAE;EAC3F,OAAO,GAAG2B,KAAK,IAAIA,KAAK,KAAK,CAAC,GAAG3B,OAAO,CAAC,cAAc,CAAC,GAAGA,OAAO,CAAC,eAAe,CAAC,EAAE;AACvF,CAAC","ignoreList":[]}
@@ -1,2 +1,14 @@
1
1
  {
2
+ "teacherFeedback.noComments": "No comments yet",
3
+ "time.justNow": "just now",
4
+ "time.minuteAgo": "minute ago",
5
+ "time.minutesAgo": "minutes ago",
6
+ "time.hourAgo": "hour ago",
7
+ "time.hoursAgo": "hours ago",
8
+ "time.dayAgo": "day ago",
9
+ "time.daysAgo": "days ago",
10
+ "time.monthAgo": "month ago",
11
+ "time.monthsAgo": "months ago",
12
+ "time.yearAgo": "year ago",
13
+ "time.yearsAgo": "years ago"
2
14
  }
@@ -1,2 +1,14 @@
1
1
  {
2
+ "teacherFeedback.noComments": "No comments yet",
3
+ "time.justNow": "just now",
4
+ "time.minuteAgo": "minute ago",
5
+ "time.minutesAgo": "minutes ago",
6
+ "time.hourAgo": "hour ago",
7
+ "time.hoursAgo": "hours ago",
8
+ "time.dayAgo": "day ago",
9
+ "time.daysAgo": "days ago",
10
+ "time.monthAgo": "month ago",
11
+ "time.monthsAgo": "months ago",
12
+ "time.yearAgo": "year ago",
13
+ "time.yearsAgo": "years ago"
2
14
  }
@@ -1,2 +1,14 @@
1
1
  {
2
+ "teacherFeedback.noComments": "Inga kommentarer än",
3
+ "time.justNow": "alldeles nyss",
4
+ "time.minuteAgo": "minut sedan",
5
+ "time.minutesAgo": "minuter sedan",
6
+ "time.hourAgo": "timme sedan",
7
+ "time.hoursAgo": "timmar sedan",
8
+ "time.dayAgo": "dag sedan",
9
+ "time.daysAgo": "dagar sedan",
10
+ "time.monthAgo": "månad sedan",
11
+ "time.monthsAgo": "månader sedan",
12
+ "time.yearAgo": "år sedan",
13
+ "time.yearsAgo": "år sedan"
2
14
  }
@@ -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":["shared/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":["shared/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":[]}
@@ -9,45 +9,4 @@ export const LOCALIZATION_CONFIGS = {
9
9
  [Locale.GB]: GB,
10
10
  [Locale.SW]: SW
11
11
  };
12
- export const RELATIVE_TIME_LABELS = {
13
- [Locale.EN]: {
14
- justNow: 'just now',
15
- minuteAgo: 'minute ago',
16
- minutesAgo: 'minutes ago',
17
- hourAgo: 'hour ago',
18
- hoursAgo: 'hours ago',
19
- dayAgo: 'day ago',
20
- daysAgo: 'days ago',
21
- monthAgo: 'month ago',
22
- monthsAgo: 'months ago',
23
- yearAgo: 'year ago',
24
- yearsAgo: 'years ago'
25
- },
26
- [Locale.SW]: {
27
- justNow: 'alldeles nyss',
28
- minuteAgo: 'minut sedan',
29
- minutesAgo: 'minuter sedan',
30
- hourAgo: 'timme sedan',
31
- hoursAgo: 'timmar sedan',
32
- dayAgo: 'dag sedan',
33
- daysAgo: 'dagar sedan',
34
- monthAgo: 'månad sedan',
35
- monthsAgo: 'månader sedan',
36
- yearAgo: 'år sedan',
37
- yearsAgo: 'år sedan'
38
- },
39
- [Locale.GB]: {
40
- justNow: 'just now',
41
- minuteAgo: 'minute ago',
42
- minutesAgo: 'minutes ago',
43
- hourAgo: 'hour ago',
44
- hoursAgo: 'hours ago',
45
- dayAgo: 'day ago',
46
- daysAgo: 'days ago',
47
- monthAgo: 'month ago',
48
- monthsAgo: 'months ago',
49
- yearAgo: 'year ago',
50
- yearsAgo: 'years ago'
51
- }
52
- };
53
12
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Locale","EN","GB","SW","LOCALIZATION_CONFIGS","RELATIVE_TIME_LABELS","justNow","minuteAgo","minutesAgo","hourAgo","hoursAgo","dayAgo","daysAgo","monthAgo","monthsAgo","yearAgo","yearsAgo"],"sourceRoot":"../../../../src","sources":["shared/translation/constants.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,YAAS;AAChC,OAAOC,EAAE,MAAM,gCAAgC;AAC/C,OAAOC,EAAE,MAAM,gCAAgC;AAC/C,OAAOC,EAAE,MAAM,gCAAgC;AAE/C,OAAO,MAAMC,oBAAoB,GAAG;EAClC,CAACJ,MAAM,CAACC,EAAE,GAAGA,EAAE;EACf,CAACD,MAAM,CAACE,EAAE,GAAGA,EAAE;EACf,CAACF,MAAM,CAACG,EAAE,GAAGA;AACf,CAAC;AAED,OAAO,MAAME,oBAAoB,GAAG;EAClC,CAACL,MAAM,CAACC,EAAE,GAAG;IACXK,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,CAAChB,MAAM,CAACG,EAAE,GAAG;IACXG,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,CAAChB,MAAM,CAACE,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;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Locale","EN","GB","SW","LOCALIZATION_CONFIGS"],"sourceRoot":"../../../../src","sources":["shared/translation/constants.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,YAAS;AAChC,OAAOC,EAAE,MAAM,gCAAgC;AAC/C,OAAOC,EAAE,MAAM,gCAAgC;AAC/C,OAAOC,EAAE,MAAM,gCAAgC;AAE/C,OAAO,MAAMC,oBAAoB,GAAG;EAClC,CAACJ,MAAM,CAACC,EAAE,GAAGA,EAAE;EACf,CAACD,MAAM,CAACE,EAAE,GAAGA,EAAE;EACf,CAACF,MAAM,CAACG,EAAE,GAAGA;AACf,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["$localization","setLocalization","getSubstitutedString","str","substitutions","substitutionsArray","Object","entries","result","length","forEach","key","value","replace","getText","args","config","getState","translation","setFeaturesLocalization","generator"],"sourceRoot":"../../../../src","sources":["shared/translation/helpers.ts"],"mappings":";;AACA,SAASA,aAAa,EAAEC,eAAe,QAAQ,YAAS;AAGxD,OAAO,MAAMC,oBAAoB,GAAGA,CAACC,GAAW,EAAEC,aAAqC,GAAG,CAAC,CAAC,KAAK;EAC7F,MAAMC,kBAAkB,GAAGC,MAAM,CAACC,OAAO,CAACH,aAAa,CAAC;EACxD,IAAII,MAAM,GAAGL,GAAG;EAEhB,IAAI,CAACE,kBAAkB,CAACI,MAAM,EAAE,OAAOD,MAAM;EAE7CH,kBAAkB,CAACK,OAAO,CAAC,CAAC,CAACC,GAAG,EAAEC,KAAK,CAAC,KAAK;IACzCJ,MAAM,GAAGA,MAAM,CAACK,OAAO,CAAC,KAAKF,GAAG,IAAI,EAAEC,KAAK,CAAC;EAChD,CAAC,CAAC;EAEF,OAAOJ,MAAM;AACjB,CAAC;AAED,OAAO,MAAMM,OAAgB,GAAGA,CAACH,GAAG,EAAEI,IAAI,GAAG,IAAI,KAAK;EAClD,MAAMC,MAAM,GAAGhB,aAAa,CAACiB,QAAQ,CAAC,CAAC;EAEvC,MAAMC,WAAW,GAAGF,MAAM,GAAGL,GAAG,CAAC;EAEjC,IAAIO,WAAW,IAAIH,IAAI,EAAE;IACrB,OAAOb,oBAAoB,CAACgB,WAAW,EAAEH,IAAI,CAAC;EAClD;EAEA,OAAOG,WAAW,IAAIP,GAAG;AAC7B,CAAC;AAED,OAAO,MAAMQ,uBAAuB,GAChCC,SAA6F,IAC5F;EACDnB,eAAe,CAACmB,SAAS,CAAC;AAC9B,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["$localization","setLocalization","getSubstitutedString","str","substitutions","substitutionsArray","Object","entries","result","length","forEach","key","value","replace","getText","args","config","getState","translation","setFeaturesLocalization","generator"],"sourceRoot":"../../../../src","sources":["shared/translation/helpers.ts"],"mappings":";;AACA,SAASA,aAAa,EAAEC,eAAe,QAAQ,YAAS;AAGxD,OAAO,MAAMC,oBAAoB,GAAGA,CAACC,GAAW,EAAEC,aAAqC,GAAG,CAAC,CAAC,KAAK;EAC/F,MAAMC,kBAAkB,GAAGC,MAAM,CAACC,OAAO,CAACH,aAAa,CAAC;EACxD,IAAII,MAAM,GAAGL,GAAG;EAEhB,IAAI,CAACE,kBAAkB,CAACI,MAAM,EAAE,OAAOD,MAAM;EAE7CH,kBAAkB,CAACK,OAAO,CAAC,CAAC,CAACC,GAAG,EAAEC,KAAK,CAAC,KAAK;IAC3CJ,MAAM,GAAGA,MAAM,CAACK,OAAO,CAAC,KAAKF,GAAG,IAAI,EAAEC,KAAK,CAAC;EAC9C,CAAC,CAAC;EAEF,OAAOJ,MAAM;AACf,CAAC;AAED,OAAO,MAAMM,OAAgB,GAAGA,CAACH,GAAoB,EAAEI,IAAI,GAAG,IAAI,KAAK;EACrE,MAAMC,MAAM,GAAGhB,aAAa,CAACiB,QAAQ,CAAC,CAAC;EAEvC,MAAMC,WAAW,GAAGF,MAAM,GAAGL,GAAG,CAAC;EAEjC,IAAIO,WAAW,IAAIH,IAAI,EAAE;IACvB,OAAOb,oBAAoB,CAACgB,WAAW,EAAEH,IAAI,CAAC;EAChD;EAEA,OAAOG,WAAW,IAAIP,GAAG;AAC3B,CAAC;AAED,OAAO,MAAMQ,uBAAuB,GAClCC,SAA6F,IAC1F;EACHnB,eAAe,CAACmB,SAAS,CAAC;AAC5B,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["Locale"],"sourceRoot":"../../../../src","sources":["shared/translation/types.ts"],"mappings":";;AAEA,WAAYA,MAAM,0BAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAAA,OAANA,MAAM;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["Locale"],"sourceRoot":"../../../../src","sources":["shared/translation/types.ts"],"mappings":";;AAUA,WAAYA,MAAM,0BAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAAA,OAANA,MAAM;AAAA","ignoreList":[]}
@@ -1,8 +1,3 @@
1
1
  import React from 'react';
2
- import { Locale } from '../../../shared/translation/types';
3
- type EmptyCommentProps = {
4
- locale: Locale | null;
5
- };
6
- export declare const EmptyComment: ({ locale }: EmptyCommentProps) => React.JSX.Element;
7
- export {};
2
+ export declare const EmptyComment: () => React.JSX.Element;
8
3
  //# sourceMappingURL=EmptyComment.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EmptyComment.d.ts","sourceRoot":"","sources":["../../../../../../src/features/feedback/components/EmptyComment.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAA;AAE1D,KAAK,iBAAiB,GAAG;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CACtB,CAAA;AAED,eAAO,MAAM,YAAY,eAAgB,iBAAiB,sBAMzD,CAAA"}
1
+ {"version":3,"file":"EmptyComment.d.ts","sourceRoot":"","sources":["../../../../../../src/features/feedback/components/EmptyComment.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAMzB,eAAO,MAAM,YAAY,yBAOxB,CAAA"}
@@ -1,15 +1,15 @@
1
1
  import React from 'react';
2
- import { FeedbackButtonColors, FeedbackMode } from '../constants';
2
+ import { FeedbackButtonColors, FeedbackButtonSize, FeedbackMode } from '../constants';
3
3
  import { TeacherFeedbackModel } from '../model/model';
4
- import { Locale } from '../../../shared/translation';
5
4
  type TeacherFeedbackProps = {
6
5
  model: TeacherFeedbackModel;
7
6
  mode: FeedbackMode;
8
- locale: Locale;
9
7
  assignmentId: string;
10
8
  problemId: string;
11
- color: FeedbackButtonColors;
9
+ color?: FeedbackButtonColors;
10
+ size?: FeedbackButtonSize;
11
+ heightOffset?: number;
12
12
  };
13
- export declare const TeacherFeedback: ({ model, mode, assignmentId, problemId, locale, color, }: TeacherFeedbackProps) => React.JSX.Element | null;
13
+ export declare const TeacherFeedback: ({ model, mode, assignmentId, problemId, color, size, heightOffset, }: TeacherFeedbackProps) => React.JSX.Element | null;
14
14
  export {};
15
15
  //# sourceMappingURL=TeacherFeedback.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TeacherFeedback.d.ts","sourceRoot":"","sources":["../../../../../../src/features/feedback/components/TeacherFeedback.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,OAAO,EAAE,oBAAoB,EAAsB,YAAY,EAAE,MAAM,cAAc,CAAA;AACrF,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAA;AAEpD,KAAK,oBAAoB,GAAG;IAC1B,KAAK,EAAE,oBAAoB,CAAA;IAC3B,IAAI,EAAE,YAAY,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,oBAAoB,CAAA;CAC5B,CAAA;AAED,eAAO,MAAM,eAAe,6DAOzB,oBAAoB,6BAgCtB,CAAA"}
1
+ {"version":3,"file":"TeacherFeedback.d.ts","sourceRoot":"","sources":["../../../../../../src/features/feedback/components/TeacherFeedback.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AACrF,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AAErD,KAAK,oBAAoB,GAAG;IAC1B,KAAK,EAAE,oBAAoB,CAAA;IAC3B,IAAI,EAAE,YAAY,CAAA;IAClB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,oBAAoB,CAAA;IAC5B,IAAI,CAAC,EAAE,kBAAkB,CAAA;IACzB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,eAAO,MAAM,eAAe,yEAQzB,oBAAoB,6BA8BtB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"TeacherFeedbackButton.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAEnB,MAAM,iBAAiB,CAAA;AAOxB,KAAK,0BAA0B,GAAG;IAChC,MAAM,EAAE,OAAO,CAAA;IACf,SAAS,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,IAAI,CAAC,EAAE,kBAAkB,CAAA;IACzB,KAAK,CAAC,EAAE,oBAAoB,CAAA;CAC7B,CAAA;AAED,eAAO,MAAM,qBAAqB,sEAO/B,0BAA0B,sBA6D5B,CAAA"}
1
+ {"version":3,"file":"TeacherFeedbackButton.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/feedback/components/TeacherFeedbackButton/TeacherFeedbackButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAEnB,MAAM,iBAAiB,CAAA;AA2BxB,KAAK,0BAA0B,GAAG;IAChC,MAAM,EAAE,OAAO,CAAA;IACf,SAAS,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,IAAI,CAAC,EAAE,kBAAkB,CAAA;IACzB,KAAK,CAAC,EAAE,oBAAoB,CAAA;CAC7B,CAAA;AAED,eAAO,MAAM,qBAAqB,sEAO/B,0BAA0B,sBAuD5B,CAAA"}
@@ -1,12 +1,10 @@
1
1
  import React from 'react';
2
2
  import { StyleProp, ViewStyle } from 'react-native';
3
3
  import { TeacherComment as TeacherCommentEntity } from '../../types';
4
- import { Locale } from '../../../../shared/translation/types';
5
4
  type TeacherCommentProps = {
6
5
  comment: TeacherCommentEntity;
7
- locale: Locale | null;
8
- style: StyleProp<ViewStyle>;
6
+ style?: StyleProp<ViewStyle>;
9
7
  };
10
- export declare const TeacherComment: ({ comment, locale, style }: TeacherCommentProps) => React.JSX.Element;
8
+ export declare const TeacherComment: ({ comment, style }: TeacherCommentProps) => React.JSX.Element;
11
9
  export {};
12
10
  //# sourceMappingURL=TeacherComment.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TeacherComment.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/feedback/components/TeacherFeedbackComments/TeacherComment.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAA0B,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAI3E,OAAO,EAAE,cAAc,IAAI,oBAAoB,EAAE,MAAM,aAAa,CAAA;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,sCAAsC,CAAA;AAE7D,KAAK,mBAAmB,GAAG;IACzB,OAAO,EAAE,oBAAoB,CAAA;IAC7B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,KAAK,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;CAC5B,CAAA;AAED,eAAO,MAAM,cAAc,+BAAgC,mBAAmB,sBAkB7E,CAAA"}
1
+ {"version":3,"file":"TeacherComment.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/feedback/components/TeacherFeedbackComments/TeacherComment.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAA0B,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAI3E,OAAO,EAAE,cAAc,IAAI,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAEpE,KAAK,mBAAmB,GAAG;IACzB,OAAO,EAAE,oBAAoB,CAAA;IAC7B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;CAC7B,CAAA;AAED,eAAO,MAAM,cAAc,uBAAwB,mBAAmB,sBAkBrE,CAAA"}
@@ -1,13 +1,11 @@
1
1
  import React from 'react';
2
2
  import { FeedbackMode } from '../../constants';
3
- import { Locale } from '../../../../shared/translation';
4
3
  import { TeacherComment as TeacherCommentEntity } from '../../types';
5
4
  type TeacherFeedbackCommentsProps = {
6
- comments: TeacherCommentEntity[] | null;
7
- locale: Locale | null;
5
+ comments: TeacherCommentEntity[];
8
6
  mode: FeedbackMode;
9
7
  maxHeightOffset: number;
10
8
  };
11
- export declare const TeacherFeedbackComments: ({ comments, locale, mode, maxHeightOffset, }: TeacherFeedbackCommentsProps) => React.JSX.Element | null;
9
+ export declare const TeacherFeedbackComments: ({ comments, maxHeightOffset, }: TeacherFeedbackCommentsProps) => React.JSX.Element;
12
10
  export {};
13
11
  //# sourceMappingURL=TeacherFeedbackComments.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TeacherFeedbackComments.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAA;AAIhD,OAAO,EAAoB,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAEhE,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAA;AACvD,OAAO,EAAE,cAAc,IAAI,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAQpE,KAAK,4BAA4B,GAAG;IAClC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,IAAI,CAAA;IACvC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,IAAI,EAAE,YAAY,CAAA;IAClB,eAAe,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,eAAO,MAAM,uBAAuB,iDAKjC,4BAA4B,6BAkC9B,CAAA"}
1
+ {"version":3,"file":"TeacherFeedbackComments.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/feedback/components/TeacherFeedbackComments/TeacherFeedbackComments.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAA;AAIhD,OAAO,EAAoB,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAEhE,OAAO,EAAE,cAAc,IAAI,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAQpE,KAAK,4BAA4B,GAAG;IAClC,QAAQ,EAAE,oBAAoB,EAAE,CAAA;IAChC,IAAI,EAAE,YAAY,CAAA;IAClB,eAAe,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,eAAO,MAAM,uBAAuB,mCAGjC,4BAA4B,sBA8B9B,CAAA"}
@@ -1,6 +1,5 @@
1
+ import { NoCommentsMessage } from './types';
1
2
  export declare const BUENOS_AIRES_FONT: string;
2
- export declare const NO_COMMENTS_ENG = "No comments yet";
3
- export declare const NO_COMMENTS_SWE = "Inga kommentarer \u00E4n";
4
3
  export declare const EMPTY_COMMENT_ID = "empty-comment";
5
4
  export declare const TEACHER_FEEDBACK_BUTTON_ID = "teacherFeedbackButton";
6
5
  export declare enum FeedbackButtonColors {
@@ -15,4 +14,5 @@ export declare enum FeedbackMode {
15
14
  SIMPLE = "SIMPLE",
16
15
  NORMAL = "NORMAL"
17
16
  }
17
+ export declare const EMPTY_COMMENT: NoCommentsMessage;
18
18
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/features/feedback/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB,QAC8C,CAAA;AAE5E,eAAO,MAAM,eAAe,oBAAoB,CAAA;AAChD,eAAO,MAAM,eAAe,6BAAwB,CAAA;AACpD,eAAO,MAAM,gBAAgB,kBAAkB,CAAA;AAE/C,eAAO,MAAM,0BAA0B,0BAA0B,CAAA;AAEjE,oBAAY,oBAAoB;IAC9B,IAAI,SAAS;IACb,MAAM,WAAW;CAClB;AAED,oBAAY,kBAAkB;IAC5B,KAAK,UAAU;IACf,KAAK,UAAU;CAChB;AAED,oBAAY,YAAY;IACtB,MAAM,WAAW;IACjB,MAAM,WAAW;CAClB"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/features/feedback/constants.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAE3C,eAAO,MAAM,iBAAiB,QAC8C,CAAA;AAE5E,eAAO,MAAM,gBAAgB,kBAAkB,CAAA;AAC/C,eAAO,MAAM,0BAA0B,0BAA0B,CAAA;AAEjE,oBAAY,oBAAoB;IAC9B,IAAI,SAAS;IACb,MAAM,WAAW;CAClB;AAED,oBAAY,kBAAkB;IAC5B,KAAK,UAAU;IACf,KAAK,UAAU;CAChB;AAED,oBAAY,YAAY;IACtB,MAAM,WAAW;IACjB,MAAM,WAAW;CAClB;AAED,eAAO,MAAM,aAAa,EAAE,iBASlB,CAAA"}
@@ -1,4 +1,4 @@
1
- import { CommentsMap, GetCommentsResponse } from './types';
1
+ import { CommentsMap, FeedbackEntity, GetCommentsResponse } from './types';
2
2
  export declare function generateCommentsMap(assignmentId: string, data: GetCommentsResponse): CommentsMap;
3
3
  type FindCommentsByCreditsProps = {
4
4
  data: CommentsMap | null;
@@ -6,5 +6,14 @@ type FindCommentsByCreditsProps = {
6
6
  problemId: string;
7
7
  };
8
8
  export declare function findCommentsByCredits({ data, assignmentId, problemId, }: FindCommentsByCreditsProps): import("./types").TeacherComment[];
9
+ type UpdateCommentsStateProps = {
10
+ state: CommentsMap | null;
11
+ assignmentId: string;
12
+ problemId: string;
13
+ fn: (data: FeedbackEntity) => FeedbackEntity | undefined;
14
+ };
15
+ export declare function updateCommentsState({ state, assignmentId, problemId, fn, }: UpdateCommentsStateProps): Map<string, {
16
+ [problemId: string]: FeedbackEntity;
17
+ }> | null;
9
18
  export {};
10
19
  //# sourceMappingURL=helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../../src/features/feedback/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAkB,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAE1E,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,GAAG,WAAW,CAgBhG;AAED,KAAK,0BAA0B,GAAG;IAChC,IAAI,EAAE,WAAW,GAAG,IAAI,CAAA;IACxB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,wBAAgB,qBAAqB,CAAC,EACpC,IAAI,EACJ,YAAY,EACZ,SAAS,GACV,EAAE,0BAA0B,sCAE5B"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../../src/features/feedback/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAE1E,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,GAAG,WAAW,CAgBhG;AAED,KAAK,0BAA0B,GAAG;IAChC,IAAI,EAAE,WAAW,GAAG,IAAI,CAAA;IACxB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,wBAAgB,qBAAqB,CAAC,EACpC,IAAI,EACJ,YAAY,EACZ,SAAS,GACV,EAAE,0BAA0B,sCAE5B;AAED,KAAK,wBAAwB,GAAG;IAC9B,KAAK,EAAE,WAAW,GAAG,IAAI,CAAA;IACzB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,EAAE,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,cAAc,GAAG,SAAS,CAAA;CACzD,CAAA;AAED,wBAAgB,mBAAmB,CAAC,EAClC,KAAK,EACL,YAAY,EACZ,SAAS,EACT,EAAE,GACH,EAAE,wBAAwB;;UAiB1B"}
@@ -1,9 +1,13 @@
1
1
  import { Effect } from 'effector';
2
- import { TeacherFeedbackModelProps } from './model';
3
2
  import { GetCommentsPayload, GetCommentsResponse, UpdateCommentStatusSeenPayload } from '../types';
3
+ type TeacherFeedbackAPIProps = {
4
+ getComments: (props: GetCommentsPayload) => Promise<GetCommentsResponse>;
5
+ updateCommentStatusSeen: (props: UpdateCommentStatusSeenPayload) => Promise<void>;
6
+ };
4
7
  export declare class TeacherFeedbackAPI {
5
8
  readonly getCommentsFx: Effect<GetCommentsPayload, GetCommentsResponse>;
6
9
  readonly updateCommentStatusSeenFx: Effect<UpdateCommentStatusSeenPayload, void>;
7
- constructor(api: TeacherFeedbackModelProps['api']);
10
+ constructor(api: TeacherFeedbackAPIProps);
8
11
  }
12
+ export {};
9
13
  //# sourceMappingURL=api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../../../src/features/feedback/model/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,MAAM,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AACnD,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,8BAA8B,EAAE,MAAM,UAAU,CAAA;AAElG,qBAAa,kBAAkB;IAC7B,SAAgB,aAAa,EAAE,MAAM,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAA;IAC9E,SAAgB,yBAAyB,EAAE,MAAM,CAAC,8BAA8B,EAAE,IAAI,CAAC,CAAA;gBAE3E,GAAG,EAAE,yBAAyB,CAAC,KAAK,CAAC;CAIlD"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../../../src/features/feedback/model/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,MAAM,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,8BAA8B,EAAE,MAAM,UAAU,CAAA;AAElG,KAAK,uBAAuB,GAAG;IAC7B,WAAW,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAA;IACxE,uBAAuB,EAAE,CAAC,KAAK,EAAE,8BAA8B,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAClF,CAAA;AAED,qBAAa,kBAAkB;IAC7B,SAAgB,aAAa,EAAE,MAAM,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAA;IAC9E,SAAgB,yBAAyB,EAAE,MAAM,CAAC,8BAA8B,EAAE,IAAI,CAAC,CAAA;gBAE3E,GAAG,EAAE,uBAAuB;CAIzC"}