@magmamath/students-features 1.2.0 → 1.2.1-rc.10

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 (398) hide show
  1. package/dist/commonjs/features/chatbot/components/ChatInput/ChatInput.js +2 -1
  2. package/dist/commonjs/features/chatbot/components/ChatInput/ChatInput.js.map +1 -1
  3. package/dist/commonjs/features/chatbot/components/ChatMessage/MessageContent.js +2 -1
  4. package/dist/commonjs/features/chatbot/components/ChatMessage/MessageContent.js.map +1 -1
  5. package/dist/commonjs/features/endOfAssignment/components/AssessmentScoreCard/AssessmentScoreCard.js +1 -1
  6. package/dist/commonjs/features/endOfAssignment/components/AssessmentScoreCard/AssessmentScoreCard.js.map +1 -1
  7. package/dist/commonjs/features/pmProgress/PmProgress.js +62 -0
  8. package/dist/commonjs/features/pmProgress/PmProgress.js.map +1 -0
  9. package/dist/commonjs/features/pmProgress/components/chart/chart.helpers.js +22 -0
  10. package/dist/commonjs/features/pmProgress/components/chart/chart.helpers.js.map +1 -0
  11. package/dist/commonjs/features/pmProgress/components/chart/chart.types.js +2 -0
  12. package/dist/commonjs/features/pmProgress/components/chart/chart.types.js.map +1 -0
  13. package/dist/commonjs/features/pmProgress/components/chart/components/PracticeProgressPieChart.js +44 -0
  14. package/dist/commonjs/features/pmProgress/components/chart/components/PracticeProgressPieChart.js.map +1 -0
  15. package/dist/commonjs/features/pmProgress/components/chart/components/SlicesClipPaths.js +26 -0
  16. package/dist/commonjs/features/pmProgress/components/chart/components/SlicesClipPaths.js.map +1 -0
  17. package/dist/commonjs/features/pmProgress/components/chart/components/SlicesPaths.js +69 -0
  18. package/dist/commonjs/features/pmProgress/components/chart/components/SlicesPaths.js.map +1 -0
  19. package/dist/commonjs/features/pmProgress/components/chart/components/layers/SliceArcPattern.js +38 -0
  20. package/dist/commonjs/features/pmProgress/components/chart/components/layers/SliceArcPattern.js.map +1 -0
  21. package/dist/commonjs/features/pmProgress/components/chart/components/layers/SliceBackgroundColor.js +21 -0
  22. package/dist/commonjs/features/pmProgress/components/chart/components/layers/SliceBackgroundColor.js.map +1 -0
  23. package/dist/commonjs/features/pmProgress/components/chart/components/layers/SliceFillColor.js +82 -0
  24. package/dist/commonjs/features/pmProgress/components/chart/components/layers/SliceFillColor.js.map +1 -0
  25. package/dist/commonjs/features/pmProgress/components/chart/model/ArcPatternGenerator.js +49 -0
  26. package/dist/commonjs/features/pmProgress/components/chart/model/ArcPatternGenerator.js.map +1 -0
  27. package/dist/commonjs/features/pmProgress/components/chart/model/PieChartManager.js +25 -0
  28. package/dist/commonjs/features/pmProgress/components/chart/model/PieChartManager.js.map +1 -0
  29. package/dist/commonjs/features/pmProgress/components/chart/model/SliceHighlight.js +20 -0
  30. package/dist/commonjs/features/pmProgress/components/chart/model/SliceHighlight.js.map +1 -0
  31. package/dist/commonjs/features/pmProgress/components/chart/model/SliceShapeGenerator.js +79 -0
  32. package/dist/commonjs/features/pmProgress/components/chart/model/SliceShapeGenerator.js.map +1 -0
  33. package/dist/commonjs/features/pmProgress/components/header/PmProgressHeader.js +199 -0
  34. package/dist/commonjs/features/pmProgress/components/header/PmProgressHeader.js.map +1 -0
  35. package/dist/commonjs/features/pmProgress/components/insights/PmInsights.js +71 -0
  36. package/dist/commonjs/features/pmProgress/components/insights/PmInsights.js.map +1 -0
  37. package/dist/commonjs/features/pmProgress/components/insights/PmTimeframeStats.js +95 -0
  38. package/dist/commonjs/features/pmProgress/components/insights/PmTimeframeStats.js.map +1 -0
  39. package/dist/commonjs/features/pmProgress/components/insights/StatsCard.js +71 -0
  40. package/dist/commonjs/features/pmProgress/components/insights/StatsCard.js.map +1 -0
  41. package/dist/commonjs/features/pmProgress/components/list/Fluency.js +70 -0
  42. package/dist/commonjs/features/pmProgress/components/list/Fluency.js.map +1 -0
  43. package/dist/commonjs/features/pmProgress/components/list/ListCard.js +187 -0
  44. package/dist/commonjs/features/pmProgress/components/list/ListCard.js.map +1 -0
  45. package/dist/commonjs/features/pmProgress/components/list/ListItem.js +119 -0
  46. package/dist/commonjs/features/pmProgress/components/list/ListItem.js.map +1 -0
  47. package/dist/commonjs/features/pmProgress/components/list/PmDomainList.js +86 -0
  48. package/dist/commonjs/features/pmProgress/components/list/PmDomainList.js.map +1 -0
  49. package/dist/commonjs/features/pmProgress/components/recs/PmTeacherRecs.js +118 -0
  50. package/dist/commonjs/features/pmProgress/components/recs/PmTeacherRecs.js.map +1 -0
  51. package/dist/commonjs/features/pmProgress/context/PmProgressContext.js +18 -0
  52. package/dist/commonjs/features/pmProgress/context/PmProgressContext.js.map +1 -0
  53. package/dist/commonjs/features/pmProgress/index.js +36 -0
  54. package/dist/commonjs/features/pmProgress/index.js.map +1 -0
  55. package/dist/commonjs/features/pmProgress/model/PmInsightsModel.js +22 -0
  56. package/dist/commonjs/features/pmProgress/model/PmInsightsModel.js.map +1 -0
  57. package/dist/commonjs/features/pmProgress/model/PmProgressApi.js +18 -0
  58. package/dist/commonjs/features/pmProgress/model/PmProgressApi.js.map +1 -0
  59. package/dist/commonjs/features/pmProgress/model/PmProgressModel.js +45 -0
  60. package/dist/commonjs/features/pmProgress/model/PmProgressModel.js.map +1 -0
  61. package/dist/commonjs/features/pmProgress/model/PmRecommendationsModel.js +47 -0
  62. package/dist/commonjs/features/pmProgress/model/PmRecommendationsModel.js.map +1 -0
  63. package/dist/commonjs/features/pmProgress/model/PmSolvingFlowModel.js +79 -0
  64. package/dist/commonjs/features/pmProgress/model/PmSolvingFlowModel.js.map +1 -0
  65. package/dist/commonjs/features/pmProgress/model/PmTreeModel.js +148 -0
  66. package/dist/commonjs/features/pmProgress/model/PmTreeModel.js.map +1 -0
  67. package/dist/commonjs/features/pmProgress/shared/pmProgress.constants.js +33 -0
  68. package/dist/commonjs/features/pmProgress/shared/pmProgress.constants.js.map +1 -0
  69. package/dist/commonjs/features/pmProgress/shared/pmProgress.helpers.js +193 -0
  70. package/dist/commonjs/features/pmProgress/shared/pmProgress.helpers.js.map +1 -0
  71. package/dist/commonjs/features/pmProgress/shared/pmProgress.types.js +12 -0
  72. package/dist/commonjs/features/pmProgress/shared/pmProgress.types.js.map +1 -0
  73. package/dist/commonjs/index.js +15 -3
  74. package/dist/commonjs/index.js.map +1 -1
  75. package/dist/commonjs/shared/icons/PentagonIcon.js +32 -0
  76. package/dist/commonjs/shared/icons/PentagonIcon.js.map +1 -0
  77. package/dist/commonjs/shared/icons/SketchArrowRight.js +33 -0
  78. package/dist/commonjs/shared/icons/SketchArrowRight.js.map +1 -0
  79. package/dist/commonjs/shared/icons/SliceDiamondIcon.js +32 -0
  80. package/dist/commonjs/shared/icons/SliceDiamondIcon.js.map +1 -0
  81. package/dist/commonjs/shared/icons/StarIcon.js +32 -0
  82. package/dist/commonjs/shared/icons/StarIcon.js.map +1 -0
  83. package/dist/commonjs/shared/icons/TimerIcon.js +35 -0
  84. package/dist/commonjs/shared/icons/TimerIcon.js.map +1 -0
  85. package/dist/commonjs/shared/translation/localization/ca.json +19 -0
  86. package/dist/commonjs/shared/translation/localization/de.json +19 -0
  87. package/dist/commonjs/shared/translation/localization/en.json +19 -0
  88. package/dist/commonjs/shared/translation/localization/gb.json +19 -0
  89. package/dist/commonjs/shared/translation/localization/sct.json +19 -0
  90. package/dist/commonjs/shared/translation/localization/sw.json +19 -0
  91. package/dist/module/features/chatbot/components/ChatInput/ChatInput.js +2 -1
  92. package/dist/module/features/chatbot/components/ChatInput/ChatInput.js.map +1 -1
  93. package/dist/module/features/chatbot/components/ChatMessage/MessageContent.js +2 -1
  94. package/dist/module/features/chatbot/components/ChatMessage/MessageContent.js.map +1 -1
  95. package/dist/module/features/endOfAssignment/components/AssessmentScoreCard/AssessmentScoreCard.js +2 -2
  96. package/dist/module/features/endOfAssignment/components/AssessmentScoreCard/AssessmentScoreCard.js.map +1 -1
  97. package/dist/module/features/pmProgress/PmProgress.js +56 -0
  98. package/dist/module/features/pmProgress/PmProgress.js.map +1 -0
  99. package/dist/module/features/pmProgress/components/chart/chart.helpers.js +15 -0
  100. package/dist/module/features/pmProgress/components/chart/chart.helpers.js.map +1 -0
  101. package/dist/module/features/pmProgress/components/chart/chart.types.js +2 -0
  102. package/dist/module/features/pmProgress/components/chart/chart.types.js.map +1 -0
  103. package/dist/module/features/pmProgress/components/chart/components/PracticeProgressPieChart.js +38 -0
  104. package/dist/module/features/pmProgress/components/chart/components/PracticeProgressPieChart.js.map +1 -0
  105. package/dist/module/features/pmProgress/components/chart/components/SlicesClipPaths.js +20 -0
  106. package/dist/module/features/pmProgress/components/chart/components/SlicesClipPaths.js.map +1 -0
  107. package/dist/module/features/pmProgress/components/chart/components/SlicesPaths.js +63 -0
  108. package/dist/module/features/pmProgress/components/chart/components/SlicesPaths.js.map +1 -0
  109. package/dist/module/features/pmProgress/components/chart/components/layers/SliceArcPattern.js +32 -0
  110. package/dist/module/features/pmProgress/components/chart/components/layers/SliceArcPattern.js.map +1 -0
  111. package/dist/module/features/pmProgress/components/chart/components/layers/SliceBackgroundColor.js +15 -0
  112. package/dist/module/features/pmProgress/components/chart/components/layers/SliceBackgroundColor.js.map +1 -0
  113. package/dist/module/features/pmProgress/components/chart/components/layers/SliceFillColor.js +76 -0
  114. package/dist/module/features/pmProgress/components/chart/components/layers/SliceFillColor.js.map +1 -0
  115. package/dist/module/features/pmProgress/components/chart/model/ArcPatternGenerator.js +44 -0
  116. package/dist/module/features/pmProgress/components/chart/model/ArcPatternGenerator.js.map +1 -0
  117. package/dist/module/features/pmProgress/components/chart/model/PieChartManager.js +20 -0
  118. package/dist/module/features/pmProgress/components/chart/model/PieChartManager.js.map +1 -0
  119. package/dist/module/features/pmProgress/components/chart/model/SliceHighlight.js +15 -0
  120. package/dist/module/features/pmProgress/components/chart/model/SliceHighlight.js.map +1 -0
  121. package/dist/module/features/pmProgress/components/chart/model/SliceShapeGenerator.js +74 -0
  122. package/dist/module/features/pmProgress/components/chart/model/SliceShapeGenerator.js.map +1 -0
  123. package/dist/module/features/pmProgress/components/header/PmProgressHeader.js +192 -0
  124. package/dist/module/features/pmProgress/components/header/PmProgressHeader.js.map +1 -0
  125. package/dist/module/features/pmProgress/components/insights/PmInsights.js +64 -0
  126. package/dist/module/features/pmProgress/components/insights/PmInsights.js.map +1 -0
  127. package/dist/module/features/pmProgress/components/insights/PmTimeframeStats.js +90 -0
  128. package/dist/module/features/pmProgress/components/insights/PmTimeframeStats.js.map +1 -0
  129. package/dist/module/features/pmProgress/components/insights/StatsCard.js +65 -0
  130. package/dist/module/features/pmProgress/components/insights/StatsCard.js.map +1 -0
  131. package/dist/module/features/pmProgress/components/list/Fluency.js +64 -0
  132. package/dist/module/features/pmProgress/components/list/Fluency.js.map +1 -0
  133. package/dist/module/features/pmProgress/components/list/ListCard.js +180 -0
  134. package/dist/module/features/pmProgress/components/list/ListCard.js.map +1 -0
  135. package/dist/module/features/pmProgress/components/list/ListItem.js +112 -0
  136. package/dist/module/features/pmProgress/components/list/ListItem.js.map +1 -0
  137. package/dist/module/features/pmProgress/components/list/PmDomainList.js +80 -0
  138. package/dist/module/features/pmProgress/components/list/PmDomainList.js.map +1 -0
  139. package/dist/module/features/pmProgress/components/recs/PmTeacherRecs.js +112 -0
  140. package/dist/module/features/pmProgress/components/recs/PmTeacherRecs.js.map +1 -0
  141. package/dist/module/features/pmProgress/context/PmProgressContext.js +13 -0
  142. package/dist/module/features/pmProgress/context/PmProgressContext.js.map +1 -0
  143. package/dist/module/features/pmProgress/index.js +9 -0
  144. package/dist/module/features/pmProgress/index.js.map +1 -0
  145. package/dist/module/features/pmProgress/model/PmInsightsModel.js +17 -0
  146. package/dist/module/features/pmProgress/model/PmInsightsModel.js.map +1 -0
  147. package/dist/module/features/pmProgress/model/PmProgressApi.js +13 -0
  148. package/dist/module/features/pmProgress/model/PmProgressApi.js.map +1 -0
  149. package/dist/module/features/pmProgress/model/PmProgressModel.js +40 -0
  150. package/dist/module/features/pmProgress/model/PmProgressModel.js.map +1 -0
  151. package/dist/module/features/pmProgress/model/PmRecommendationsModel.js +42 -0
  152. package/dist/module/features/pmProgress/model/PmRecommendationsModel.js.map +1 -0
  153. package/dist/module/features/pmProgress/model/PmSolvingFlowModel.js +74 -0
  154. package/dist/module/features/pmProgress/model/PmSolvingFlowModel.js.map +1 -0
  155. package/dist/module/features/pmProgress/model/PmTreeModel.js +143 -0
  156. package/dist/module/features/pmProgress/model/PmTreeModel.js.map +1 -0
  157. package/dist/module/features/pmProgress/shared/pmProgress.constants.js +30 -0
  158. package/dist/module/features/pmProgress/shared/pmProgress.constants.js.map +1 -0
  159. package/dist/module/features/pmProgress/shared/pmProgress.helpers.js +177 -0
  160. package/dist/module/features/pmProgress/shared/pmProgress.helpers.js.map +1 -0
  161. package/dist/module/features/pmProgress/shared/pmProgress.types.js +10 -0
  162. package/dist/module/features/pmProgress/shared/pmProgress.types.js.map +1 -0
  163. package/dist/module/index.js +1 -0
  164. package/dist/module/index.js.map +1 -1
  165. package/dist/module/shared/icons/PentagonIcon.js +24 -0
  166. package/dist/module/shared/icons/PentagonIcon.js.map +1 -0
  167. package/dist/module/shared/icons/SketchArrowRight.js +25 -0
  168. package/dist/module/shared/icons/SketchArrowRight.js.map +1 -0
  169. package/dist/module/shared/icons/SliceDiamondIcon.js +24 -0
  170. package/dist/module/shared/icons/SliceDiamondIcon.js.map +1 -0
  171. package/dist/module/shared/icons/StarIcon.js +24 -0
  172. package/dist/module/shared/icons/StarIcon.js.map +1 -0
  173. package/dist/module/shared/icons/TimerIcon.js +27 -0
  174. package/dist/module/shared/icons/TimerIcon.js.map +1 -0
  175. package/dist/module/shared/translation/localization/ca.json +19 -0
  176. package/dist/module/shared/translation/localization/de.json +19 -0
  177. package/dist/module/shared/translation/localization/en.json +19 -0
  178. package/dist/module/shared/translation/localization/gb.json +19 -0
  179. package/dist/module/shared/translation/localization/sct.json +19 -0
  180. package/dist/module/shared/translation/localization/sw.json +19 -0
  181. package/dist/typescript/commonjs/features/chatbot/components/ChatInput/ChatInput.d.ts.map +1 -1
  182. package/dist/typescript/commonjs/features/chatbot/components/ChatMessage/MessageContent.d.ts.map +1 -1
  183. package/dist/typescript/commonjs/features/pmProgress/PmProgress.d.ts +9 -0
  184. package/dist/typescript/commonjs/features/pmProgress/PmProgress.d.ts.map +1 -0
  185. package/dist/typescript/commonjs/features/pmProgress/components/chart/chart.helpers.d.ts +4 -0
  186. package/dist/typescript/commonjs/features/pmProgress/components/chart/chart.helpers.d.ts.map +1 -0
  187. package/dist/typescript/commonjs/features/pmProgress/components/chart/chart.types.d.ts +36 -0
  188. package/dist/typescript/commonjs/features/pmProgress/components/chart/chart.types.d.ts.map +1 -0
  189. package/dist/typescript/commonjs/features/pmProgress/components/chart/components/PracticeProgressPieChart.d.ts +9 -0
  190. package/dist/typescript/commonjs/features/pmProgress/components/chart/components/PracticeProgressPieChart.d.ts.map +1 -0
  191. package/dist/typescript/commonjs/features/pmProgress/components/chart/components/SlicesClipPaths.d.ts +10 -0
  192. package/dist/typescript/commonjs/features/pmProgress/components/chart/components/SlicesClipPaths.d.ts.map +1 -0
  193. package/dist/typescript/commonjs/features/pmProgress/components/chart/components/SlicesPaths.d.ts +11 -0
  194. package/dist/typescript/commonjs/features/pmProgress/components/chart/components/SlicesPaths.d.ts.map +1 -0
  195. package/dist/typescript/commonjs/features/pmProgress/components/chart/components/layers/SliceArcPattern.d.ts +12 -0
  196. package/dist/typescript/commonjs/features/pmProgress/components/chart/components/layers/SliceArcPattern.d.ts.map +1 -0
  197. package/dist/typescript/commonjs/features/pmProgress/components/chart/components/layers/SliceBackgroundColor.d.ts +8 -0
  198. package/dist/typescript/commonjs/features/pmProgress/components/chart/components/layers/SliceBackgroundColor.d.ts.map +1 -0
  199. package/dist/typescript/commonjs/features/pmProgress/components/chart/components/layers/SliceFillColor.d.ts +14 -0
  200. package/dist/typescript/commonjs/features/pmProgress/components/chart/components/layers/SliceFillColor.d.ts.map +1 -0
  201. package/dist/typescript/commonjs/features/pmProgress/components/chart/model/ArcPatternGenerator.d.ts +12 -0
  202. package/dist/typescript/commonjs/features/pmProgress/components/chart/model/ArcPatternGenerator.d.ts.map +1 -0
  203. package/dist/typescript/commonjs/features/pmProgress/components/chart/model/PieChartManager.d.ts +16 -0
  204. package/dist/typescript/commonjs/features/pmProgress/components/chart/model/PieChartManager.d.ts.map +1 -0
  205. package/dist/typescript/commonjs/features/pmProgress/components/chart/model/SliceHighlight.d.ts +10 -0
  206. package/dist/typescript/commonjs/features/pmProgress/components/chart/model/SliceHighlight.d.ts.map +1 -0
  207. package/dist/typescript/commonjs/features/pmProgress/components/chart/model/SliceShapeGenerator.d.ts +17 -0
  208. package/dist/typescript/commonjs/features/pmProgress/components/chart/model/SliceShapeGenerator.d.ts.map +1 -0
  209. package/dist/typescript/commonjs/features/pmProgress/components/header/PmProgressHeader.d.ts +3 -0
  210. package/dist/typescript/commonjs/features/pmProgress/components/header/PmProgressHeader.d.ts.map +1 -0
  211. package/dist/typescript/commonjs/features/pmProgress/components/insights/PmInsights.d.ts +3 -0
  212. package/dist/typescript/commonjs/features/pmProgress/components/insights/PmInsights.d.ts.map +1 -0
  213. package/dist/typescript/commonjs/features/pmProgress/components/insights/PmTimeframeStats.d.ts +3 -0
  214. package/dist/typescript/commonjs/features/pmProgress/components/insights/PmTimeframeStats.d.ts.map +1 -0
  215. package/dist/typescript/commonjs/features/pmProgress/components/insights/StatsCard.d.ts +10 -0
  216. package/dist/typescript/commonjs/features/pmProgress/components/insights/StatsCard.d.ts.map +1 -0
  217. package/dist/typescript/commonjs/features/pmProgress/components/list/Fluency.d.ts +8 -0
  218. package/dist/typescript/commonjs/features/pmProgress/components/list/Fluency.d.ts.map +1 -0
  219. package/dist/typescript/commonjs/features/pmProgress/components/list/ListCard.d.ts +26 -0
  220. package/dist/typescript/commonjs/features/pmProgress/components/list/ListCard.d.ts.map +1 -0
  221. package/dist/typescript/commonjs/features/pmProgress/components/list/ListItem.d.ts +10 -0
  222. package/dist/typescript/commonjs/features/pmProgress/components/list/ListItem.d.ts.map +1 -0
  223. package/dist/typescript/commonjs/features/pmProgress/components/list/PmDomainList.d.ts +3 -0
  224. package/dist/typescript/commonjs/features/pmProgress/components/list/PmDomainList.d.ts.map +1 -0
  225. package/dist/typescript/commonjs/features/pmProgress/components/recs/PmTeacherRecs.d.ts +3 -0
  226. package/dist/typescript/commonjs/features/pmProgress/components/recs/PmTeacherRecs.d.ts.map +1 -0
  227. package/dist/typescript/commonjs/features/pmProgress/context/PmProgressContext.d.ts +12 -0
  228. package/dist/typescript/commonjs/features/pmProgress/context/PmProgressContext.d.ts.map +1 -0
  229. package/dist/typescript/commonjs/features/pmProgress/index.d.ts +4 -0
  230. package/dist/typescript/commonjs/features/pmProgress/index.d.ts.map +1 -0
  231. package/dist/typescript/commonjs/features/pmProgress/model/PmInsightsModel.d.ts +14 -0
  232. package/dist/typescript/commonjs/features/pmProgress/model/PmInsightsModel.d.ts.map +1 -0
  233. package/dist/typescript/commonjs/features/pmProgress/model/PmProgressApi.d.ts +17 -0
  234. package/dist/typescript/commonjs/features/pmProgress/model/PmProgressApi.d.ts.map +1 -0
  235. package/dist/typescript/commonjs/features/pmProgress/model/PmProgressModel.d.ts +21 -0
  236. package/dist/typescript/commonjs/features/pmProgress/model/PmProgressModel.d.ts.map +1 -0
  237. package/dist/typescript/commonjs/features/pmProgress/model/PmRecommendationsModel.d.ts +102 -0
  238. package/dist/typescript/commonjs/features/pmProgress/model/PmRecommendationsModel.d.ts.map +1 -0
  239. package/dist/typescript/commonjs/features/pmProgress/model/PmSolvingFlowModel.d.ts +19 -0
  240. package/dist/typescript/commonjs/features/pmProgress/model/PmSolvingFlowModel.d.ts.map +1 -0
  241. package/dist/typescript/commonjs/features/pmProgress/model/PmTreeModel.d.ts +24 -0
  242. package/dist/typescript/commonjs/features/pmProgress/model/PmTreeModel.d.ts.map +1 -0
  243. package/dist/typescript/commonjs/features/pmProgress/shared/pmProgress.constants.d.ts +23 -0
  244. package/dist/typescript/commonjs/features/pmProgress/shared/pmProgress.constants.d.ts.map +1 -0
  245. package/dist/typescript/commonjs/features/pmProgress/shared/pmProgress.helpers.d.ts +59 -0
  246. package/dist/typescript/commonjs/features/pmProgress/shared/pmProgress.helpers.d.ts.map +1 -0
  247. package/dist/typescript/commonjs/features/pmProgress/shared/pmProgress.types.d.ts +185 -0
  248. package/dist/typescript/commonjs/features/pmProgress/shared/pmProgress.types.d.ts.map +1 -0
  249. package/dist/typescript/commonjs/index.d.ts +1 -0
  250. package/dist/typescript/commonjs/index.d.ts.map +1 -1
  251. package/dist/typescript/commonjs/shared/icons/PentagonIcon.d.ts +4 -0
  252. package/dist/typescript/commonjs/shared/icons/PentagonIcon.d.ts.map +1 -0
  253. package/dist/typescript/commonjs/shared/icons/SketchArrowRight.d.ts +4 -0
  254. package/dist/typescript/commonjs/shared/icons/SketchArrowRight.d.ts.map +1 -0
  255. package/dist/typescript/commonjs/shared/icons/SliceDiamondIcon.d.ts +4 -0
  256. package/dist/typescript/commonjs/shared/icons/SliceDiamondIcon.d.ts.map +1 -0
  257. package/dist/typescript/commonjs/shared/icons/StarIcon.d.ts +4 -0
  258. package/dist/typescript/commonjs/shared/icons/StarIcon.d.ts.map +1 -0
  259. package/dist/typescript/commonjs/shared/icons/TimerIcon.d.ts +4 -0
  260. package/dist/typescript/commonjs/shared/icons/TimerIcon.d.ts.map +1 -0
  261. package/dist/typescript/commonjs/shared/translation/constants.d.ts +114 -0
  262. package/dist/typescript/commonjs/shared/translation/constants.d.ts.map +1 -1
  263. package/dist/typescript/commonjs/shared/translation/model.d.ts +38 -0
  264. package/dist/typescript/commonjs/shared/translation/model.d.ts.map +1 -1
  265. package/dist/typescript/module/features/chatbot/components/ChatInput/ChatInput.d.ts.map +1 -1
  266. package/dist/typescript/module/features/chatbot/components/ChatMessage/MessageContent.d.ts.map +1 -1
  267. package/dist/typescript/module/features/pmProgress/PmProgress.d.ts +9 -0
  268. package/dist/typescript/module/features/pmProgress/PmProgress.d.ts.map +1 -0
  269. package/dist/typescript/module/features/pmProgress/components/chart/chart.helpers.d.ts +4 -0
  270. package/dist/typescript/module/features/pmProgress/components/chart/chart.helpers.d.ts.map +1 -0
  271. package/dist/typescript/module/features/pmProgress/components/chart/chart.types.d.ts +36 -0
  272. package/dist/typescript/module/features/pmProgress/components/chart/chart.types.d.ts.map +1 -0
  273. package/dist/typescript/module/features/pmProgress/components/chart/components/PracticeProgressPieChart.d.ts +9 -0
  274. package/dist/typescript/module/features/pmProgress/components/chart/components/PracticeProgressPieChart.d.ts.map +1 -0
  275. package/dist/typescript/module/features/pmProgress/components/chart/components/SlicesClipPaths.d.ts +10 -0
  276. package/dist/typescript/module/features/pmProgress/components/chart/components/SlicesClipPaths.d.ts.map +1 -0
  277. package/dist/typescript/module/features/pmProgress/components/chart/components/SlicesPaths.d.ts +11 -0
  278. package/dist/typescript/module/features/pmProgress/components/chart/components/SlicesPaths.d.ts.map +1 -0
  279. package/dist/typescript/module/features/pmProgress/components/chart/components/layers/SliceArcPattern.d.ts +12 -0
  280. package/dist/typescript/module/features/pmProgress/components/chart/components/layers/SliceArcPattern.d.ts.map +1 -0
  281. package/dist/typescript/module/features/pmProgress/components/chart/components/layers/SliceBackgroundColor.d.ts +8 -0
  282. package/dist/typescript/module/features/pmProgress/components/chart/components/layers/SliceBackgroundColor.d.ts.map +1 -0
  283. package/dist/typescript/module/features/pmProgress/components/chart/components/layers/SliceFillColor.d.ts +14 -0
  284. package/dist/typescript/module/features/pmProgress/components/chart/components/layers/SliceFillColor.d.ts.map +1 -0
  285. package/dist/typescript/module/features/pmProgress/components/chart/model/ArcPatternGenerator.d.ts +12 -0
  286. package/dist/typescript/module/features/pmProgress/components/chart/model/ArcPatternGenerator.d.ts.map +1 -0
  287. package/dist/typescript/module/features/pmProgress/components/chart/model/PieChartManager.d.ts +16 -0
  288. package/dist/typescript/module/features/pmProgress/components/chart/model/PieChartManager.d.ts.map +1 -0
  289. package/dist/typescript/module/features/pmProgress/components/chart/model/SliceHighlight.d.ts +10 -0
  290. package/dist/typescript/module/features/pmProgress/components/chart/model/SliceHighlight.d.ts.map +1 -0
  291. package/dist/typescript/module/features/pmProgress/components/chart/model/SliceShapeGenerator.d.ts +17 -0
  292. package/dist/typescript/module/features/pmProgress/components/chart/model/SliceShapeGenerator.d.ts.map +1 -0
  293. package/dist/typescript/module/features/pmProgress/components/header/PmProgressHeader.d.ts +3 -0
  294. package/dist/typescript/module/features/pmProgress/components/header/PmProgressHeader.d.ts.map +1 -0
  295. package/dist/typescript/module/features/pmProgress/components/insights/PmInsights.d.ts +3 -0
  296. package/dist/typescript/module/features/pmProgress/components/insights/PmInsights.d.ts.map +1 -0
  297. package/dist/typescript/module/features/pmProgress/components/insights/PmTimeframeStats.d.ts +3 -0
  298. package/dist/typescript/module/features/pmProgress/components/insights/PmTimeframeStats.d.ts.map +1 -0
  299. package/dist/typescript/module/features/pmProgress/components/insights/StatsCard.d.ts +10 -0
  300. package/dist/typescript/module/features/pmProgress/components/insights/StatsCard.d.ts.map +1 -0
  301. package/dist/typescript/module/features/pmProgress/components/list/Fluency.d.ts +8 -0
  302. package/dist/typescript/module/features/pmProgress/components/list/Fluency.d.ts.map +1 -0
  303. package/dist/typescript/module/features/pmProgress/components/list/ListCard.d.ts +26 -0
  304. package/dist/typescript/module/features/pmProgress/components/list/ListCard.d.ts.map +1 -0
  305. package/dist/typescript/module/features/pmProgress/components/list/ListItem.d.ts +10 -0
  306. package/dist/typescript/module/features/pmProgress/components/list/ListItem.d.ts.map +1 -0
  307. package/dist/typescript/module/features/pmProgress/components/list/PmDomainList.d.ts +3 -0
  308. package/dist/typescript/module/features/pmProgress/components/list/PmDomainList.d.ts.map +1 -0
  309. package/dist/typescript/module/features/pmProgress/components/recs/PmTeacherRecs.d.ts +3 -0
  310. package/dist/typescript/module/features/pmProgress/components/recs/PmTeacherRecs.d.ts.map +1 -0
  311. package/dist/typescript/module/features/pmProgress/context/PmProgressContext.d.ts +12 -0
  312. package/dist/typescript/module/features/pmProgress/context/PmProgressContext.d.ts.map +1 -0
  313. package/dist/typescript/module/features/pmProgress/index.d.ts +4 -0
  314. package/dist/typescript/module/features/pmProgress/index.d.ts.map +1 -0
  315. package/dist/typescript/module/features/pmProgress/model/PmInsightsModel.d.ts +14 -0
  316. package/dist/typescript/module/features/pmProgress/model/PmInsightsModel.d.ts.map +1 -0
  317. package/dist/typescript/module/features/pmProgress/model/PmProgressApi.d.ts +17 -0
  318. package/dist/typescript/module/features/pmProgress/model/PmProgressApi.d.ts.map +1 -0
  319. package/dist/typescript/module/features/pmProgress/model/PmProgressModel.d.ts +21 -0
  320. package/dist/typescript/module/features/pmProgress/model/PmProgressModel.d.ts.map +1 -0
  321. package/dist/typescript/module/features/pmProgress/model/PmRecommendationsModel.d.ts +102 -0
  322. package/dist/typescript/module/features/pmProgress/model/PmRecommendationsModel.d.ts.map +1 -0
  323. package/dist/typescript/module/features/pmProgress/model/PmSolvingFlowModel.d.ts +19 -0
  324. package/dist/typescript/module/features/pmProgress/model/PmSolvingFlowModel.d.ts.map +1 -0
  325. package/dist/typescript/module/features/pmProgress/model/PmTreeModel.d.ts +24 -0
  326. package/dist/typescript/module/features/pmProgress/model/PmTreeModel.d.ts.map +1 -0
  327. package/dist/typescript/module/features/pmProgress/shared/pmProgress.constants.d.ts +23 -0
  328. package/dist/typescript/module/features/pmProgress/shared/pmProgress.constants.d.ts.map +1 -0
  329. package/dist/typescript/module/features/pmProgress/shared/pmProgress.helpers.d.ts +59 -0
  330. package/dist/typescript/module/features/pmProgress/shared/pmProgress.helpers.d.ts.map +1 -0
  331. package/dist/typescript/module/features/pmProgress/shared/pmProgress.types.d.ts +185 -0
  332. package/dist/typescript/module/features/pmProgress/shared/pmProgress.types.d.ts.map +1 -0
  333. package/dist/typescript/module/index.d.ts +1 -0
  334. package/dist/typescript/module/index.d.ts.map +1 -1
  335. package/dist/typescript/module/shared/icons/PentagonIcon.d.ts +4 -0
  336. package/dist/typescript/module/shared/icons/PentagonIcon.d.ts.map +1 -0
  337. package/dist/typescript/module/shared/icons/SketchArrowRight.d.ts +4 -0
  338. package/dist/typescript/module/shared/icons/SketchArrowRight.d.ts.map +1 -0
  339. package/dist/typescript/module/shared/icons/SliceDiamondIcon.d.ts +4 -0
  340. package/dist/typescript/module/shared/icons/SliceDiamondIcon.d.ts.map +1 -0
  341. package/dist/typescript/module/shared/icons/StarIcon.d.ts +4 -0
  342. package/dist/typescript/module/shared/icons/StarIcon.d.ts.map +1 -0
  343. package/dist/typescript/module/shared/icons/TimerIcon.d.ts +4 -0
  344. package/dist/typescript/module/shared/icons/TimerIcon.d.ts.map +1 -0
  345. package/dist/typescript/module/shared/translation/constants.d.ts +114 -0
  346. package/dist/typescript/module/shared/translation/constants.d.ts.map +1 -1
  347. package/dist/typescript/module/shared/translation/model.d.ts +38 -0
  348. package/dist/typescript/module/shared/translation/model.d.ts.map +1 -1
  349. package/package.json +13 -2
  350. package/src/features/chatbot/components/ChatInput/ChatInput.tsx +2 -1
  351. package/src/features/chatbot/components/ChatMessage/MessageContent.tsx +2 -1
  352. package/src/features/endOfAssignment/components/AssessmentScoreCard/AssessmentScoreCard.tsx +2 -2
  353. package/src/features/pmProgress/PmProgress.tsx +52 -0
  354. package/src/features/pmProgress/__tests__/.keep +0 -0
  355. package/src/features/pmProgress/components/chart/chart.helpers.ts +14 -0
  356. package/src/features/pmProgress/components/chart/chart.types.ts +37 -0
  357. package/src/features/pmProgress/components/chart/components/PracticeProgressPieChart.tsx +32 -0
  358. package/src/features/pmProgress/components/chart/components/SlicesClipPaths.tsx +22 -0
  359. package/src/features/pmProgress/components/chart/components/SlicesPaths.tsx +75 -0
  360. package/src/features/pmProgress/components/chart/components/layers/SliceArcPattern.tsx +44 -0
  361. package/src/features/pmProgress/components/chart/components/layers/SliceBackgroundColor.tsx +11 -0
  362. package/src/features/pmProgress/components/chart/components/layers/SliceFillColor.tsx +88 -0
  363. package/src/features/pmProgress/components/chart/model/ArcPatternGenerator.ts +48 -0
  364. package/src/features/pmProgress/components/chart/model/PieChartManager.ts +20 -0
  365. package/src/features/pmProgress/components/chart/model/SliceHighlight.ts +17 -0
  366. package/src/features/pmProgress/components/chart/model/SliceShapeGenerator.ts +90 -0
  367. package/src/features/pmProgress/components/header/PmProgressHeader.tsx +187 -0
  368. package/src/features/pmProgress/components/insights/PmInsights.tsx +60 -0
  369. package/src/features/pmProgress/components/insights/PmTimeframeStats.tsx +85 -0
  370. package/src/features/pmProgress/components/insights/StatsCard.tsx +53 -0
  371. package/src/features/pmProgress/components/list/Fluency.tsx +59 -0
  372. package/src/features/pmProgress/components/list/ListCard.tsx +216 -0
  373. package/src/features/pmProgress/components/list/ListItem.tsx +132 -0
  374. package/src/features/pmProgress/components/list/PmDomainList.tsx +66 -0
  375. package/src/features/pmProgress/components/recs/PmTeacherRecs.tsx +108 -0
  376. package/src/features/pmProgress/context/PmProgressContext.tsx +23 -0
  377. package/src/features/pmProgress/index.ts +6 -0
  378. package/src/features/pmProgress/model/PmInsightsModel.ts +23 -0
  379. package/src/features/pmProgress/model/PmProgressApi.ts +34 -0
  380. package/src/features/pmProgress/model/PmProgressModel.ts +50 -0
  381. package/src/features/pmProgress/model/PmRecommendationsModel.ts +47 -0
  382. package/src/features/pmProgress/model/PmSolvingFlowModel.ts +105 -0
  383. package/src/features/pmProgress/model/PmTreeModel.ts +148 -0
  384. package/src/features/pmProgress/shared/pmProgress.constants.ts +73 -0
  385. package/src/features/pmProgress/shared/pmProgress.helpers.ts +239 -0
  386. package/src/features/pmProgress/shared/pmProgress.types.ts +207 -0
  387. package/src/index.ts +1 -0
  388. package/src/shared/icons/PentagonIcon.tsx +17 -0
  389. package/src/shared/icons/SketchArrowRight.tsx +18 -0
  390. package/src/shared/icons/SliceDiamondIcon.tsx +16 -0
  391. package/src/shared/icons/StarIcon.tsx +17 -0
  392. package/src/shared/icons/TimerIcon.tsx +21 -0
  393. package/src/shared/translation/localization/ca.json +19 -0
  394. package/src/shared/translation/localization/de.json +19 -0
  395. package/src/shared/translation/localization/en.json +19 -0
  396. package/src/shared/translation/localization/gb.json +19 -0
  397. package/src/shared/translation/localization/sct.json +19 -0
  398. package/src/shared/translation/localization/sw.json +19 -0
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.PieChartManager = void 0;
7
+ var _SliceShapeGenerator = require("./SliceShapeGenerator.js");
8
+ var _ArcPatternGenerator = require("./ArcPatternGenerator.js");
9
+ var _SliceHighlight = require("./SliceHighlight.js");
10
+ class PieChartManager {
11
+ constructor(config) {
12
+ this.config = config;
13
+ this.shape = new _SliceShapeGenerator.SliceShapeGenerator(config);
14
+ this.pattern = new _ArcPatternGenerator.OuterArcPatternGenerator(config);
15
+ this.highlight = new _SliceHighlight.SliceHighlight(config);
16
+ }
17
+ getCenter() {
18
+ return {
19
+ x: this.config.size / 2,
20
+ y: this.config.size / 2
21
+ };
22
+ }
23
+ }
24
+ exports.PieChartManager = PieChartManager;
25
+ //# sourceMappingURL=PieChartManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_SliceShapeGenerator","require","_ArcPatternGenerator","_SliceHighlight","PieChartManager","constructor","config","shape","SliceShapeGenerator","pattern","OuterArcPatternGenerator","highlight","SliceHighlight","getCenter","x","size","y","exports"],"sourceRoot":"../../../../../../../src","sources":["features/pmProgress/components/chart/model/PieChartManager.ts"],"mappings":";;;;;;AAAA,IAAAA,oBAAA,GAAAC,OAAA;AACA,IAAAC,oBAAA,GAAAD,OAAA;AACA,IAAAE,eAAA,GAAAF,OAAA;AAGO,MAAMG,eAAe,CAAC;EAK3BC,WAAWA,CAAiBC,MAA6B,EAAE;IAAA,KAA/BA,MAA6B,GAA7BA,MAA6B;IACvD,IAAI,CAACC,KAAK,GAAG,IAAIC,wCAAmB,CAACF,MAAM,CAAC;IAC5C,IAAI,CAACG,OAAO,GAAG,IAAIC,6CAAwB,CAACJ,MAAM,CAAC;IACnD,IAAI,CAACK,SAAS,GAAG,IAAIC,8BAAc,CAACN,MAAM,CAAC;EAC7C;EAEOO,SAASA,CAAA,EAAG;IACjB,OAAO;MAAEC,CAAC,EAAE,IAAI,CAACR,MAAM,CAACS,IAAI,GAAG,CAAC;MAAEC,CAAC,EAAE,IAAI,CAACV,MAAM,CAACS,IAAI,GAAG;IAAE,CAAC;EAC7D;AACF;AAACE,OAAA,CAAAb,eAAA,GAAAA,eAAA","ignoreList":[]}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.SliceHighlight = void 0;
7
+ var _effector = require("effector");
8
+ class SliceHighlight {
9
+ set = (0, _effector.createEvent)();
10
+ reset = (0, _effector.createEvent)();
11
+ $highlightedIndex = (0, _effector.createStore)(null).on(this.set, (_, index) => index).reset(this.reset);
12
+ constructor(config) {
13
+ this.config = config;
14
+ }
15
+ getTranslateY(isHighlighted) {
16
+ return isHighlighted ? -this.config.pressOffset : 0;
17
+ }
18
+ }
19
+ exports.SliceHighlight = SliceHighlight;
20
+ //# sourceMappingURL=SliceHighlight.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_effector","require","SliceHighlight","set","createEvent","reset","$highlightedIndex","createStore","on","_","index","constructor","config","getTranslateY","isHighlighted","pressOffset","exports"],"sourceRoot":"../../../../../../../src","sources":["features/pmProgress/components/chart/model/SliceHighlight.ts"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAGO,MAAMC,cAAc,CAAC;EACVC,GAAG,GAAG,IAAAC,qBAAW,EAAS,CAAC;EAC3BC,KAAK,GAAG,IAAAD,qBAAW,EAAC,CAAC;EAErBE,iBAAiB,GAAG,IAAAC,qBAAW,EAAgB,IAAI,CAAC,CACjEC,EAAE,CAAC,IAAI,CAACL,GAAG,EAAE,CAACM,CAAC,EAAEC,KAAK,KAAKA,KAAK,CAAC,CACjCL,KAAK,CAAC,IAAI,CAACA,KAAK,CAAC;EAEpBM,WAAWA,CAAkBC,MAA6B,EAAE;IAAA,KAA/BA,MAA6B,GAA7BA,MAA6B;EAAG;EAEtDC,aAAaA,CAACC,aAAsB,EAAU;IACnD,OAAOA,aAAa,GAAG,CAAC,IAAI,CAACF,MAAM,CAACG,WAAW,GAAG,CAAC;EACrD;AACF;AAACC,OAAA,CAAAd,cAAA,GAAAA,cAAA","ignoreList":[]}
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.SliceShapeGenerator = void 0;
7
+ var _d3Shape = require("d3-shape");
8
+ class SliceShapeGenerator {
9
+ innerRadius = 0;
10
+ d3Pie = (0, _d3Shape.pie)().value(({
11
+ value
12
+ }) => value).sort(null);
13
+ constructor(config) {
14
+ this.config = config;
15
+ }
16
+ generateSlices(data) {
17
+ this.innerRadius = this.getInnerRadius(data.length);
18
+ return this.d3Pie(data).map((datum, index) => ({
19
+ index,
20
+ startAngle: datum.startAngle,
21
+ endAngle: datum.endAngle,
22
+ fillPercent: datum.data.fillPercent ?? 0,
23
+ backgroundColor: datum.data.backgroundColor ?? this.config.colors.background,
24
+ fillColor: datum.data.fillColor,
25
+ borderColor: datum.data.borderColor,
26
+ data: datum.data
27
+ }));
28
+ }
29
+ generateSlicePath(slice) {
30
+ return this.buildArc(slice, this.config.outerRadius, this.getCornerRadius(100));
31
+ }
32
+ generateFillPath(slice) {
33
+ const fillRadius = this.getFillRadius(slice);
34
+ const cornerRadius = this.getCornerRadius(slice.fillPercent);
35
+
36
+ // Build with innerRadius 0 so d3 only rounds the outer corners.
37
+ // The slice clip path will cut the inner edge to the correct boundary.
38
+ return (0, _d3Shape.arc)().outerRadius(fillRadius).innerRadius(0).cornerRadius(cornerRadius).padAngle(this.padAngle).padRadius(this.config.outerRadius)({
39
+ startAngle: slice.startAngle,
40
+ endAngle: slice.endAngle,
41
+ innerRadius: 0,
42
+ outerRadius: fillRadius
43
+ });
44
+ }
45
+ generateFillBorderPath(slice) {
46
+ const fillRadius = this.getFillRadius(slice);
47
+ const cornerRadius = this.getCornerRadius(slice.fillPercent);
48
+ return this.buildArc(slice, fillRadius, cornerRadius);
49
+ }
50
+ getFillRadius(slice) {
51
+ return this.innerRadius + (this.config.outerRadius - this.innerRadius) * (slice.fillPercent / 100);
52
+ }
53
+ getInnerRadius(sliceCount) {
54
+ const {
55
+ innerRadius
56
+ } = this.config;
57
+ return typeof innerRadius === 'function' ? innerRadius(sliceCount) : innerRadius;
58
+ }
59
+ getCornerRadius(fillPercent) {
60
+ const {
61
+ cornerRadius
62
+ } = this.config;
63
+ return typeof cornerRadius === 'function' ? cornerRadius(fillPercent) : cornerRadius;
64
+ }
65
+ get padAngle() {
66
+ return this.config.gapBetweenSlices / this.config.outerRadius;
67
+ }
68
+ buildArc(slice, outerRadius, cornerRadius) {
69
+ const innerRadius = this.innerRadius;
70
+ return (0, _d3Shape.arc)().outerRadius(outerRadius).innerRadius(innerRadius).cornerRadius(cornerRadius).padAngle(this.padAngle).padRadius(this.config.outerRadius)({
71
+ startAngle: slice.startAngle,
72
+ endAngle: slice.endAngle,
73
+ innerRadius,
74
+ outerRadius
75
+ });
76
+ }
77
+ }
78
+ exports.SliceShapeGenerator = SliceShapeGenerator;
79
+ //# sourceMappingURL=SliceShapeGenerator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_d3Shape","require","SliceShapeGenerator","innerRadius","d3Pie","pie","value","sort","constructor","config","generateSlices","data","getInnerRadius","length","map","datum","index","startAngle","endAngle","fillPercent","backgroundColor","colors","background","fillColor","borderColor","generateSlicePath","slice","buildArc","outerRadius","getCornerRadius","generateFillPath","fillRadius","getFillRadius","cornerRadius","arc","padAngle","padRadius","generateFillBorderPath","sliceCount","gapBetweenSlices","exports"],"sourceRoot":"../../../../../../../src","sources":["features/pmProgress/components/chart/model/SliceShapeGenerator.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,199 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.PmProgressHeader = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _reactNativePortalize = require("react-native-portalize");
10
+ var _reactNativeUi = require("@magmamath/react-native-ui");
11
+ var _SketchArrowRight = require("../../../../shared/icons/SketchArrowRight.js");
12
+ var _SliceDiamondIcon = require("../../../../shared/icons/SliceDiamondIcon.js");
13
+ var _index = require("../../../../shared/translation/index.js");
14
+ var _effectorReact = require("effector-react");
15
+ var _PmProgressContext = require("../../context/PmProgressContext.js");
16
+ var _pmProgressHelpers = require("../../shared/pmProgress.helpers.js");
17
+ var _pmProgressConstants = require("../../shared/pmProgress.constants.js");
18
+ var _jsxRuntime = require("react/jsx-runtime");
19
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
20
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
21
+ const PmProgressHeader = () => {
22
+ const t = (0, _index.useText)();
23
+ const {
24
+ model,
25
+ onStartPress
26
+ } = (0, _PmProgressContext.usePmProgress)();
27
+ const [isDropdownOpen, setIsDropdownOpen] = (0, _react.useState)(false);
28
+ const grade = (0, _effectorReact.useUnit)(model.tree.$grade);
29
+ const grades = (0, _effectorReact.useStoreMap)(model.tree.$grades, grades => grades.map(grade => ({
30
+ key: grade.value,
31
+ title: grade.name,
32
+ disabled: grade.isLocked
33
+ })));
34
+ const nextUp = (0, _effectorReact.useStoreMap)(model.tree.$domains, domains => domains.find(domain => {
35
+ const isFluency = (0, _pmProgressHelpers.isFluencyDomain)(domain.title);
36
+ const isCompleted = domain.skillsCount.achieved === domain.skillsCount.total;
37
+ return !isFluency && !isCompleted;
38
+ }));
39
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
40
+ style: styles.container,
41
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
42
+ style: styles.title,
43
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Typography, {
44
+ variant: _reactNativeUi.HeadingVariants.H2,
45
+ style: styles.dark,
46
+ children: t('pmProgress.title')
47
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Dropdown, {
48
+ isOpen: isDropdownOpen,
49
+ Portal: _reactNativePortalize.Portal,
50
+ onDismiss: () => setIsDropdownOpen(false),
51
+ anchor: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeUi.Button, {
52
+ variant: _reactNativeUi.ButtonVariant.TERTIARY,
53
+ onPress: () => setIsDropdownOpen(prev => !prev),
54
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeUi.Typography, {
55
+ variant: _reactNativeUi.HeadingVariants.H8,
56
+ style: styles.dark,
57
+ children: [t('pmProgress.grade'), " ", grade]
58
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
59
+ style: styles.caret,
60
+ children: isDropdownOpen ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.CaretUpIcon, {
61
+ color: _reactNativeUi.COLORS.NEUTRAL_9
62
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.CaretDownIcon, {
63
+ color: _reactNativeUi.COLORS.NEUTRAL_9
64
+ })
65
+ })]
66
+ }),
67
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Menu, {
68
+ style: styles.menu,
69
+ items: grades,
70
+ onItemPress: item => model.tree.setGrade(item.key)
71
+ })
72
+ })]
73
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
74
+ style: styles.nextUp,
75
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
76
+ style: styles.content,
77
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
78
+ style: styles.subtitle,
79
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Typography, {
80
+ variant: _reactNativeUi.HeadingVariants.H2,
81
+ style: styles.dark,
82
+ children: t('pmProgress.nextUp')
83
+ })
84
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
85
+ style: [styles.row, styles.tilted],
86
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Typography, {
87
+ variant: _reactNativeUi.HeadingVariants.H7,
88
+ style: styles.muted,
89
+ children: nextUp?.title
90
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
91
+ style: styles.diamond,
92
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SliceDiamondIcon.SliceDiamondIcon, {
93
+ color: nextUp?.color
94
+ })
95
+ })]
96
+ })]
97
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
98
+ style: styles.arrow,
99
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SketchArrowRight.SketchArrowRight, {})
100
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Button, {
101
+ onPress: async () => {
102
+ const skill = await model.solving.start({
103
+ type: _pmProgressConstants.SolvingFlow.MAGMA
104
+ });
105
+
106
+ // @ts-ignore
107
+ onStartPress?.(skill);
108
+ },
109
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.PlayIcon, {
110
+ size: 16,
111
+ color: _reactNativeUi.COLORS.NEUTRAL_1
112
+ }),
113
+ variant: _reactNativeUi.ButtonVariant.PRIMARY,
114
+ size: _reactNativeUi.ButtonSize.LARGE,
115
+ colorScheme: _reactNativeUi.ButtonColor.YELLOW,
116
+ raiseLevel: 6,
117
+ style: {
118
+ container: styles.startButton
119
+ },
120
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Typography, {
121
+ variant: _reactNativeUi.HeadingVariants.H6,
122
+ style: styles.startButtonText,
123
+ children: t('pmProgress.startButton')
124
+ })
125
+ })]
126
+ })]
127
+ });
128
+ };
129
+ exports.PmProgressHeader = PmProgressHeader;
130
+ const styles = _reactNative.StyleSheet.create({
131
+ container: {
132
+ flexDirection: 'row',
133
+ justifyContent: 'space-between',
134
+ alignItems: 'center',
135
+ marginBottom: _reactNativeUi.SPACING[400]
136
+ },
137
+ title: {
138
+ flexDirection: 'row',
139
+ alignItems: 'center',
140
+ gap: _reactNativeUi.SPACING[200]
141
+ },
142
+ dark: {
143
+ color: _reactNativeUi.COLORS.NEUTRAL_9
144
+ },
145
+ caret: {
146
+ marginLeft: _reactNativeUi.SPACING[100]
147
+ },
148
+ menu: {
149
+ top: _reactNativeUi.SPACING[100],
150
+ minWidth: 110
151
+ },
152
+ nextUp: {
153
+ flexDirection: 'row',
154
+ alignItems: 'center',
155
+ gap: _reactNativeUi.SPACING[400]
156
+ },
157
+ content: {
158
+ alignItems: 'center',
159
+ gap: _reactNativeUi.SPACING[100]
160
+ },
161
+ subtitle: {
162
+ transform: [{
163
+ rotate: '355deg'
164
+ }],
165
+ marginRight: _reactNativeUi.SPACING[300]
166
+ },
167
+ tilted: {
168
+ transform: [{
169
+ rotate: '355deg'
170
+ }]
171
+ },
172
+ row: {
173
+ flexDirection: 'row',
174
+ gap: _reactNativeUi.SPACING[100]
175
+ },
176
+ muted: {
177
+ color: _reactNativeUi.COLORS.NEUTRAL_8
178
+ },
179
+ diamond: {
180
+ bottom: 10,
181
+ transform: [{
182
+ rotate: '5deg'
183
+ }]
184
+ },
185
+ arrow: {
186
+ transform: [{
187
+ rotate: '358deg'
188
+ }]
189
+ },
190
+ startButton: {
191
+ minWidth: 145
192
+ },
193
+ startButtonText: {
194
+ fontWeight: '700',
195
+ textTransform: 'uppercase',
196
+ color: _reactNativeUi.COLORS.NEUTRAL_1
197
+ }
198
+ });
199
+ //# sourceMappingURL=PmProgressHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativePortalize","_reactNativeUi","_SketchArrowRight","_SliceDiamondIcon","_index","_effectorReact","_PmProgressContext","_pmProgressHelpers","_pmProgressConstants","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","PmProgressHeader","useText","model","onStartPress","usePmProgress","isDropdownOpen","setIsDropdownOpen","useState","grade","useUnit","tree","$grade","grades","useStoreMap","$grades","map","key","value","title","name","disabled","isLocked","nextUp","$domains","domains","find","domain","isFluency","isFluencyDomain","isCompleted","skillsCount","achieved","total","jsxs","View","style","styles","container","children","jsx","Typography","variant","HeadingVariants","H2","dark","Dropdown","isOpen","Portal","onDismiss","anchor","Button","ButtonVariant","TERTIARY","onPress","prev","H8","caret","CaretUpIcon","color","COLORS","NEUTRAL_9","CaretDownIcon","Menu","menu","items","onItemPress","item","setGrade","content","subtitle","row","tilted","H7","muted","diamond","SliceDiamondIcon","arrow","SketchArrowRight","skill","solving","start","type","SolvingFlow","MAGMA","icon","PlayIcon","size","NEUTRAL_1","PRIMARY","ButtonSize","LARGE","colorScheme","ButtonColor","YELLOW","raiseLevel","startButton","H6","startButtonText","exports","StyleSheet","create","flexDirection","justifyContent","alignItems","marginBottom","SPACING","gap","marginLeft","top","minWidth","transform","rotate","marginRight","NEUTRAL_8","bottom","fontWeight","textTransform"],"sourceRoot":"../../../../../../src","sources":["features/pmProgress/components/header/PmProgressHeader.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.PmInsights = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _reactNativeUi = require("@magmamath/react-native-ui");
10
+ var _effectorReact = require("effector-react");
11
+ var _PracticeProgressPieChart = require("../chart/components/PracticeProgressPieChart.js");
12
+ var _PmTimeframeStats = require("./PmTimeframeStats.js");
13
+ var _PmProgressContext = require("../../context/PmProgressContext.js");
14
+ var _pmProgressHelpers = require("../../shared/pmProgress.helpers.js");
15
+ var _pmProgressConstants = require("../../shared/pmProgress.constants.js");
16
+ var _jsxRuntime = require("react/jsx-runtime");
17
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
18
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
19
+ const PmInsights = () => {
20
+ const {
21
+ model
22
+ } = (0, _PmProgressContext.usePmProgress)();
23
+ const [chartSize, setChartSize] = (0, _react.useState)(0);
24
+ const chartData = (0, _effectorReact.useStoreMap)(model.tree.$domains, domains => domains.map(domain => ({
25
+ value: 1,
26
+ fillPercent: Math.round(domain.scorePercentage),
27
+ fillColor: domain.color,
28
+ borderColor: domain.borderColor,
29
+ backgroundColor: domain.backgroundColor
30
+ })));
31
+ const chartConfig = (0, _react.useMemo)(() => {
32
+ const size = Math.max(0, chartSize - _reactNativeUi.SPACING[400]);
33
+ return (0, _pmProgressHelpers.createChartConfig)(size);
34
+ }, [chartSize]);
35
+ const measureLayout = event => {
36
+ const height = event.nativeEvent.layout.height;
37
+ const size = height - _pmProgressConstants.STATS_MAX_HEIGHT - _reactNativeUi.SPACING[800];
38
+ setChartSize(size);
39
+ };
40
+ if (!chartData) return null;
41
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
42
+ style: styles.container,
43
+ onLayout: measureLayout,
44
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
45
+ style: [styles.chart, {
46
+ width: chartSize,
47
+ height: chartSize
48
+ }],
49
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PracticeProgressPieChart.PracticeProgressPieChart, {
50
+ data: chartData,
51
+ config: chartConfig
52
+ })
53
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_PmTimeframeStats.PmTimeframeStats, {})]
54
+ });
55
+ };
56
+ exports.PmInsights = PmInsights;
57
+ const styles = _reactNative.StyleSheet.create({
58
+ container: {
59
+ height: '100%'
60
+ },
61
+ chart: {
62
+ alignItems: 'center',
63
+ justifyContent: 'center',
64
+ backgroundColor: _reactNativeUi.COLORS.NEUTRAL_1,
65
+ borderRadius: _reactNativeUi.BORDER_RADIUS[250],
66
+ padding: _reactNativeUi.SPACING[400],
67
+ marginBottom: _reactNativeUi.SPACING[400],
68
+ marginTop: _reactNativeUi.SPACING[400]
69
+ }
70
+ });
71
+ //# sourceMappingURL=PmInsights.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeUi","_effectorReact","_PracticeProgressPieChart","_PmTimeframeStats","_PmProgressContext","_pmProgressHelpers","_pmProgressConstants","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","PmInsights","model","usePmProgress","chartSize","setChartSize","useState","chartData","useStoreMap","tree","$domains","domains","map","domain","value","fillPercent","Math","round","scorePercentage","fillColor","color","borderColor","backgroundColor","chartConfig","useMemo","size","max","SPACING","createChartConfig","measureLayout","event","height","nativeEvent","layout","STATS_MAX_HEIGHT","jsxs","View","style","styles","container","onLayout","children","jsx","chart","width","PracticeProgressPieChart","data","config","PmTimeframeStats","exports","StyleSheet","create","alignItems","justifyContent","COLORS","NEUTRAL_1","borderRadius","BORDER_RADIUS","padding","marginBottom","marginTop"],"sourceRoot":"../../../../../../src","sources":["features/pmProgress/components/insights/PmInsights.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.PmTimeframeStats = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _reactNativeUi = require("@magmamath/react-native-ui");
10
+ var _StatsCard = require("./StatsCard.js");
11
+ var _StarIcon = require("../../../../shared/icons/StarIcon.js");
12
+ var _TimerIcon = require("../../../../shared/icons/TimerIcon.js");
13
+ var _index = require("../../../../shared/translation/index.js");
14
+ var _effectorReact = require("effector-react");
15
+ var _pmProgressHelpers = require("../../shared/pmProgress.helpers.js");
16
+ var _pmProgressConstants = require("../../shared/pmProgress.constants.js");
17
+ var _PmProgressContext = require("../../context/PmProgressContext.js");
18
+ var _jsxRuntime = require("react/jsx-runtime");
19
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
20
+ const PmTimeframeStats = () => {
21
+ const t = (0, _index.useText)();
22
+ const {
23
+ model
24
+ } = (0, _PmProgressContext.usePmProgress)();
25
+ const timeframe = (0, _effectorReact.useUnit)(model.insights.$timeframe);
26
+ const insights = (0, _effectorReact.useUnit)(model.insights.$insights);
27
+ const OPTIONS = [{
28
+ key: _pmProgressConstants.InsightsTimeframe.WEEK,
29
+ title: t('pmProgress.thisWeek')
30
+ }, {
31
+ key: _pmProgressConstants.InsightsTimeframe.LAST_WEEK,
32
+ title: t('pmProgress.lastWeek')
33
+ }, {
34
+ key: _pmProgressConstants.InsightsTimeframe.ALL,
35
+ title: t('pmProgress.allTime')
36
+ }];
37
+ if (!insights) return null;
38
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
39
+ style: styles.container,
40
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
41
+ style: styles.content,
42
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
43
+ style: styles.cards,
44
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_StatsCard.StatsCard, {
45
+ value: insights.numberOfStars,
46
+ label: t('pmProgress.stars'),
47
+ color: _reactNativeUi.COLORS.PRIMARY_YELLOW,
48
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_StarIcon.StarIcon, {})
49
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_StatsCard.StatsCard, {
50
+ value: (0, _pmProgressHelpers.formatTime)(insights.timeInPracticeMs),
51
+ label: t('pmProgress.time'),
52
+ color: _reactNativeUi.COLORS.PRIMARY_PURPLE,
53
+ icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TimerIcon.TimerIcon, {})
54
+ })]
55
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.SelectGroup, {
56
+ color: _reactNativeUi.SelectOptionColor.GREY,
57
+ options: OPTIONS,
58
+ selectedOptions: OPTIONS.filter(({
59
+ key
60
+ }) => key === timeframe),
61
+ onOptionChange: ({
62
+ key
63
+ }) => model.insights.setTimeframe(key)
64
+ })]
65
+ })
66
+ });
67
+ };
68
+ exports.PmTimeframeStats = PmTimeframeStats;
69
+ const styles = _reactNative.StyleSheet.create({
70
+ container: {
71
+ maxHeight: _pmProgressConstants.STATS_MAX_HEIGHT,
72
+ height: '100%',
73
+ padding: _reactNativeUi.SPACING[200],
74
+ backgroundColor: _reactNativeUi.COLORS.NEUTRAL_1,
75
+ borderRadius: _reactNativeUi.BORDER_RADIUS[300],
76
+ shadowColor: _reactNativeUi.COLORS.NEUTRAL_9,
77
+ shadowOffset: {
78
+ width: 0,
79
+ height: 1
80
+ },
81
+ shadowOpacity: 0.1,
82
+ shadowRadius: 3,
83
+ elevation: 2
84
+ },
85
+ content: {
86
+ gap: _reactNativeUi.SPACING[100],
87
+ marginBottom: 4
88
+ },
89
+ cards: {
90
+ flexDirection: 'row',
91
+ justifyContent: 'space-between',
92
+ gap: _reactNativeUi.SPACING[300]
93
+ }
94
+ });
95
+ //# sourceMappingURL=PmTimeframeStats.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeUi","_StatsCard","_StarIcon","_TimerIcon","_index","_effectorReact","_pmProgressHelpers","_pmProgressConstants","_PmProgressContext","_jsxRuntime","e","__esModule","default","PmTimeframeStats","t","useText","model","usePmProgress","timeframe","useUnit","insights","$timeframe","$insights","OPTIONS","key","InsightsTimeframe","WEEK","title","LAST_WEEK","ALL","jsx","View","style","styles","container","children","jsxs","content","cards","StatsCard","value","numberOfStars","label","color","COLORS","PRIMARY_YELLOW","icon","StarIcon","formatTime","timeInPracticeMs","PRIMARY_PURPLE","TimerIcon","SelectGroup","SelectOptionColor","GREY","options","selectedOptions","filter","onOptionChange","setTimeframe","exports","StyleSheet","create","maxHeight","STATS_MAX_HEIGHT","height","padding","SPACING","backgroundColor","NEUTRAL_1","borderRadius","BORDER_RADIUS","shadowColor","NEUTRAL_9","shadowOffset","width","shadowOpacity","shadowRadius","elevation","gap","marginBottom","flexDirection","justifyContent"],"sourceRoot":"../../../../../../src","sources":["features/pmProgress/components/insights/PmTimeframeStats.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.StatsCard = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _reactNativeUi = require("@magmamath/react-native-ui");
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ const StatsCard = ({
13
+ value,
14
+ label,
15
+ color,
16
+ icon
17
+ }) => {
18
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
19
+ style: [styles.card, {
20
+ borderColor: color
21
+ }],
22
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
23
+ style: [styles.iconContainer, {
24
+ backgroundColor: color
25
+ }],
26
+ children: icon
27
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
28
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
29
+ style: [styles.value, {
30
+ color
31
+ }],
32
+ children: value
33
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
34
+ style: styles.label,
35
+ children: label
36
+ })]
37
+ })]
38
+ });
39
+ };
40
+ exports.StatsCard = StatsCard;
41
+ const styles = _reactNative.StyleSheet.create({
42
+ card: {
43
+ flex: 1,
44
+ height: 65,
45
+ alignItems: 'center',
46
+ flexDirection: 'row',
47
+ borderRadius: 12,
48
+ borderWidth: 4,
49
+ padding: 8,
50
+ gap: 8
51
+ },
52
+ iconContainer: {
53
+ width: 42,
54
+ height: 42,
55
+ alignItems: 'center',
56
+ justifyContent: 'center',
57
+ borderRadius: 100
58
+ },
59
+ value: {
60
+ fontSize: 32,
61
+ fontWeight: '700',
62
+ fontFamily: _reactNativeUi.FONT_FAMILY.buenosAires
63
+ },
64
+ label: {
65
+ color: _reactNativeUi.COLORS.NEUTRAL_8,
66
+ fontSize: 12,
67
+ fontFamily: _reactNativeUi.FONT_FAMILY.buenosAires,
68
+ top: -6
69
+ }
70
+ });
71
+ //# sourceMappingURL=StatsCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeUi","_jsxRuntime","e","__esModule","default","StatsCard","value","label","color","icon","jsxs","View","style","styles","card","borderColor","children","jsx","iconContainer","backgroundColor","Text","exports","StyleSheet","create","flex","height","alignItems","flexDirection","borderRadius","borderWidth","padding","gap","width","justifyContent","fontSize","fontWeight","fontFamily","FONT_FAMILY","buenosAires","COLORS","NEUTRAL_8","top"],"sourceRoot":"../../../../../../src","sources":["features/pmProgress/components/insights/StatsCard.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AAAgE,IAAAG,WAAA,GAAAH,OAAA;AAAA,SAAAD,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AASzD,MAAMG,SAAS,GAAGA,CAAC;EAAEC,KAAK;EAAEC,KAAK;EAAEC,KAAK;EAAEC;AAAqB,CAAC,KAAK;EAC1E,oBACE,IAAAR,WAAA,CAAAS,IAAA,EAACX,YAAA,CAAAY,IAAI;IAACC,KAAK,EAAE,CAACC,MAAM,CAACC,IAAI,EAAE;MAAEC,WAAW,EAAEP;IAAM,CAAC,CAAE;IAAAQ,QAAA,gBACjD,IAAAf,WAAA,CAAAgB,GAAA,EAAClB,YAAA,CAAAY,IAAI;MAACC,KAAK,EAAE,CAACC,MAAM,CAACK,aAAa,EAAE;QAAEC,eAAe,EAAEX;MAAM,CAAC,CAAE;MAAAQ,QAAA,EAAEP;IAAI,CAAO,CAAC,eAC9E,IAAAR,WAAA,CAAAS,IAAA,EAACX,YAAA,CAAAY,IAAI;MAAAK,QAAA,gBACH,IAAAf,WAAA,CAAAgB,GAAA,EAAClB,YAAA,CAAAqB,IAAI;QAACR,KAAK,EAAE,CAACC,MAAM,CAACP,KAAK,EAAE;UAAEE;QAAM,CAAC,CAAE;QAAAQ,QAAA,EAAEV;MAAK,CAAO,CAAC,eACtD,IAAAL,WAAA,CAAAgB,GAAA,EAAClB,YAAA,CAAAqB,IAAI;QAACR,KAAK,EAAEC,MAAM,CAACN,KAAM;QAAAS,QAAA,EAAET;MAAK,CAAO,CAAC;IAAA,CACrC,CAAC;EAAA,CACH,CAAC;AAEX,CAAC;AAAAc,OAAA,CAAAhB,SAAA,GAAAA,SAAA;AAED,MAAMQ,MAAM,GAAGS,uBAAU,CAACC,MAAM,CAAC;EAC/BT,IAAI,EAAE;IACJU,IAAI,EAAE,CAAC;IACPC,MAAM,EAAE,EAAE;IACVC,UAAU,EAAE,QAAQ;IACpBC,aAAa,EAAE,KAAK;IACpBC,YAAY,EAAE,EAAE;IAChBC,WAAW,EAAE,CAAC;IACdC,OAAO,EAAE,CAAC;IACVC,GAAG,EAAE;EACP,CAAC;EACDb,aAAa,EAAE;IACbc,KAAK,EAAE,EAAE;IACTP,MAAM,EAAE,EAAE;IACVC,UAAU,EAAE,QAAQ;IACpBO,cAAc,EAAE,QAAQ;IACxBL,YAAY,EAAE;EAChB,CAAC;EACDtB,KAAK,EAAE;IACL4B,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBC,UAAU,EAAEC,0BAAW,CAACC;EAC1B,CAAC;EACD/B,KAAK,EAAE;IACLC,KAAK,EAAE+B,qBAAM,CAACC,SAAS;IACvBN,QAAQ,EAAE,EAAE;IACZE,UAAU,EAAEC,0BAAW,CAACC,WAAW;IACnCG,GAAG,EAAE,CAAC;EACR;AACF,CAAC,CAAC","ignoreList":[]}