@magmamath/students-features 1.3.26-rc.3 → 1.3.26-rc.5

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 (453) hide show
  1. package/dist/commonjs/features/fluency/assets/FlameIcon.js +30 -0
  2. package/dist/commonjs/features/fluency/assets/FlameIcon.js.map +1 -0
  3. package/dist/commonjs/features/fluency/assets/{SpringIcon.js → FlashIcon.js} +15 -14
  4. package/dist/commonjs/features/fluency/assets/FlashIcon.js.map +1 -0
  5. package/dist/commonjs/features/fluency/assets/SnurrisnurrBg.js +231 -0
  6. package/dist/commonjs/features/fluency/assets/SnurrisnurrBg.js.map +1 -0
  7. package/dist/commonjs/features/fluency/assets/StarFillIcon.js +5 -3
  8. package/dist/commonjs/features/fluency/assets/StarFillIcon.js.map +1 -1
  9. package/dist/commonjs/features/fluency/assets/TrophyBg.js +41 -0
  10. package/dist/commonjs/features/fluency/assets/TrophyBg.js.map +1 -0
  11. package/dist/commonjs/features/fluency/components/Fluency.js +15 -32
  12. package/dist/commonjs/features/fluency/components/Fluency.js.map +1 -1
  13. package/dist/commonjs/features/fluency/components/FluencySolving.js +36 -11
  14. package/dist/commonjs/features/fluency/components/FluencySolving.js.map +1 -1
  15. package/dist/commonjs/features/fluency/components/day-streak-counter/DayStreak.js +17 -18
  16. package/dist/commonjs/features/fluency/components/day-streak-counter/DayStreak.js.map +1 -1
  17. package/dist/commonjs/features/fluency/components/day-streak-counter/DayStreakCounter.js +27 -25
  18. package/dist/commonjs/features/fluency/components/day-streak-counter/DayStreakCounter.js.map +1 -1
  19. package/dist/commonjs/features/fluency/components/fluency-solving/components/EquationContent.js +129 -0
  20. package/dist/commonjs/features/fluency/components/fluency-solving/components/EquationContent.js.map +1 -0
  21. package/dist/commonjs/features/fluency/components/fluency-solving/{FluencyEquationCard.js → components/FluencyEquationCard.js} +22 -8
  22. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencyEquationCard.js.map +1 -0
  23. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencyNumpad.js +62 -0
  24. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencyNumpad.js.map +1 -0
  25. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingCard.js +62 -0
  26. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingCard.js.map +1 -0
  27. package/dist/commonjs/features/fluency/components/fluency-solving/{FluencySolvingHeader.js → components/FluencySolvingHeader.js} +16 -11
  28. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingHeader.js.map +1 -0
  29. package/dist/commonjs/features/fluency/components/fluency-solving/{FluencySolvingProgress.js → components/FluencySolvingProgress.js} +34 -4
  30. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingProgress.js.map +1 -0
  31. package/dist/commonjs/features/fluency/components/fluency-solving/fluencySolving.constants.js +29 -0
  32. package/dist/commonjs/features/fluency/components/fluency-solving/fluencySolving.constants.js.map +1 -0
  33. package/dist/commonjs/features/fluency/components/fluency-solving/fluencySolving.helpers.js +86 -0
  34. package/dist/commonjs/features/fluency/components/fluency-solving/fluencySolving.helpers.js.map +1 -0
  35. package/dist/commonjs/features/fluency/components/fluency-solving/fluencySolving.types.js +6 -0
  36. package/dist/commonjs/features/fluency/components/fluency-solving/fluencySolving.types.js.map +1 -0
  37. package/dist/commonjs/features/fluency/components/matrix/FluencyMatrix.js +2 -2
  38. package/dist/commonjs/features/fluency/components/matrix/FluencyMatrix.js.map +1 -1
  39. package/dist/commonjs/features/fluency/components/matrix/components/CellTooltip.js +56 -0
  40. package/dist/commonjs/features/fluency/components/matrix/components/CellTooltip.js.map +1 -0
  41. package/dist/commonjs/features/fluency/components/matrix/components/MatrixCell.js +62 -17
  42. package/dist/commonjs/features/fluency/components/matrix/components/MatrixCell.js.map +1 -1
  43. package/dist/commonjs/features/fluency/components/matrix/components/MatrixFill.js +22 -26
  44. package/dist/commonjs/features/fluency/components/matrix/components/MatrixFill.js.map +1 -1
  45. package/dist/commonjs/features/fluency/components/matrix/components/MatrixLegend.js +11 -9
  46. package/dist/commonjs/features/fluency/components/matrix/components/MatrixLegend.js.map +1 -1
  47. package/dist/commonjs/features/fluency/components/mobile-menu/MobileMenu.js +38 -0
  48. package/dist/commonjs/features/fluency/components/mobile-menu/MobileMenu.js.map +1 -0
  49. package/dist/commonjs/features/fluency/components/select-math-operator/ProgressBar.js +1 -57
  50. package/dist/commonjs/features/fluency/components/select-math-operator/ProgressBar.js.map +1 -1
  51. package/dist/commonjs/features/fluency/components/select-math-operator/SelectMathOperator.js +19 -8
  52. package/dist/commonjs/features/fluency/components/select-math-operator/SelectMathOperator.js.map +1 -1
  53. package/dist/commonjs/features/fluency/components/session-results/FluencySessionResults.js +192 -0
  54. package/dist/commonjs/features/fluency/components/session-results/FluencySessionResults.js.map +1 -0
  55. package/dist/commonjs/features/fluency/components/session-results/SessionStatCard.js +77 -0
  56. package/dist/commonjs/features/fluency/components/session-results/SessionStatCard.js.map +1 -0
  57. package/dist/commonjs/features/fluency/components/session-results/SkillProgressionRow.js +113 -0
  58. package/dist/commonjs/features/fluency/components/session-results/SkillProgressionRow.js.map +1 -0
  59. package/dist/commonjs/features/fluency/components/start-banner/BannerFlashcards.js +29 -29
  60. package/dist/commonjs/features/fluency/components/start-banner/BannerFlashcards.js.map +1 -1
  61. package/dist/commonjs/features/fluency/components/start-banner/MathFlashcard.js +1 -0
  62. package/dist/commonjs/features/fluency/components/start-banner/MathFlashcard.js.map +1 -1
  63. package/dist/commonjs/features/fluency/components/start-banner/StartBanner.js +36 -9
  64. package/dist/commonjs/features/fluency/components/start-banner/StartBanner.js.map +1 -1
  65. package/dist/commonjs/features/fluency/fluency.constants.js +29 -11
  66. package/dist/commonjs/features/fluency/fluency.constants.js.map +1 -1
  67. package/dist/commonjs/features/fluency/fluency.helpers.js +57 -28
  68. package/dist/commonjs/features/fluency/fluency.helpers.js.map +1 -1
  69. package/dist/commonjs/features/fluency/hooks/useFluencyModePreset.js +16 -7
  70. package/dist/commonjs/features/fluency/hooks/useFluencyModePreset.js.map +1 -1
  71. package/dist/commonjs/features/fluency/hooks/useFluencyNumpad.js +165 -0
  72. package/dist/commonjs/features/fluency/hooks/useFluencyNumpad.js.map +1 -0
  73. package/dist/commonjs/features/fluency/hooks/useFluencySolvingPreset.js +57 -0
  74. package/dist/commonjs/features/fluency/hooks/useFluencySolvingPreset.js.map +1 -0
  75. package/dist/commonjs/features/fluency/hooks/usePreventWebKeys.js +26 -0
  76. package/dist/commonjs/features/fluency/hooks/usePreventWebKeys.js.map +1 -0
  77. package/dist/commonjs/features/fluency/hooks/useSuccessSound.js +0 -2
  78. package/dist/commonjs/features/fluency/hooks/useSuccessSound.js.map +1 -1
  79. package/dist/commonjs/features/fluency/model/FluencyApiModel.js +6 -1
  80. package/dist/commonjs/features/fluency/model/FluencyApiModel.js.map +1 -1
  81. package/dist/commonjs/features/fluency/model/FluencyDaysStreakModel.js +8 -1
  82. package/dist/commonjs/features/fluency/model/FluencyDaysStreakModel.js.map +1 -1
  83. package/dist/commonjs/features/fluency/model/FluencyMatrixModel.js +15 -1
  84. package/dist/commonjs/features/fluency/model/FluencyMatrixModel.js.map +1 -1
  85. package/dist/commonjs/features/fluency/model/FluencyModel.js +39 -25
  86. package/dist/commonjs/features/fluency/model/FluencyModel.js.map +1 -1
  87. package/dist/commonjs/features/fluency/model/FluencySolvingModel.js +140 -5
  88. package/dist/commonjs/features/fluency/model/FluencySolvingModel.js.map +1 -1
  89. package/dist/commonjs/lib/constants.js +1 -0
  90. package/dist/commonjs/lib/constants.js.map +1 -1
  91. package/dist/module/features/fluency/assets/FlameIcon.js +22 -0
  92. package/dist/module/features/fluency/assets/FlameIcon.js.map +1 -0
  93. package/dist/module/features/fluency/assets/FlashIcon.js +22 -0
  94. package/dist/module/features/fluency/assets/FlashIcon.js.map +1 -0
  95. package/dist/module/features/fluency/assets/SnurrisnurrBg.js +224 -0
  96. package/dist/module/features/fluency/assets/SnurrisnurrBg.js.map +1 -0
  97. package/dist/module/features/fluency/assets/StarFillIcon.js +5 -3
  98. package/dist/module/features/fluency/assets/StarFillIcon.js.map +1 -1
  99. package/dist/module/features/fluency/assets/TrophyBg.js +33 -0
  100. package/dist/module/features/fluency/assets/TrophyBg.js.map +1 -0
  101. package/dist/module/features/fluency/components/Fluency.js +17 -34
  102. package/dist/module/features/fluency/components/Fluency.js.map +1 -1
  103. package/dist/module/features/fluency/components/FluencySolving.js +35 -11
  104. package/dist/module/features/fluency/components/FluencySolving.js.map +1 -1
  105. package/dist/module/features/fluency/components/day-streak-counter/DayStreak.js +17 -18
  106. package/dist/module/features/fluency/components/day-streak-counter/DayStreak.js.map +1 -1
  107. package/dist/module/features/fluency/components/day-streak-counter/DayStreakCounter.js +27 -25
  108. package/dist/module/features/fluency/components/day-streak-counter/DayStreakCounter.js.map +1 -1
  109. package/dist/module/features/fluency/components/fluency-solving/components/EquationContent.js +122 -0
  110. package/dist/module/features/fluency/components/fluency-solving/components/EquationContent.js.map +1 -0
  111. package/dist/module/features/fluency/components/fluency-solving/{FluencyEquationCard.js → components/FluencyEquationCard.js} +22 -8
  112. package/dist/module/features/fluency/components/fluency-solving/components/FluencyEquationCard.js.map +1 -0
  113. package/dist/module/features/fluency/components/fluency-solving/components/FluencyNumpad.js +56 -0
  114. package/dist/module/features/fluency/components/fluency-solving/components/FluencyNumpad.js.map +1 -0
  115. package/dist/module/features/fluency/components/fluency-solving/components/FluencySolvingCard.js +56 -0
  116. package/dist/module/features/fluency/components/fluency-solving/components/FluencySolvingCard.js.map +1 -0
  117. package/dist/module/features/fluency/components/fluency-solving/{FluencySolvingHeader.js → components/FluencySolvingHeader.js} +17 -12
  118. package/dist/module/features/fluency/components/fluency-solving/components/FluencySolvingHeader.js.map +1 -0
  119. package/dist/module/features/fluency/components/fluency-solving/components/FluencySolvingProgress.js +71 -0
  120. package/dist/module/features/fluency/components/fluency-solving/components/FluencySolvingProgress.js.map +1 -0
  121. package/dist/module/features/fluency/components/fluency-solving/fluencySolving.constants.js +25 -0
  122. package/dist/module/features/fluency/components/fluency-solving/fluencySolving.constants.js.map +1 -0
  123. package/dist/module/features/fluency/components/fluency-solving/fluencySolving.helpers.js +76 -0
  124. package/dist/module/features/fluency/components/fluency-solving/fluencySolving.helpers.js.map +1 -0
  125. package/dist/module/features/fluency/components/fluency-solving/fluencySolving.types.js +4 -0
  126. package/dist/module/features/fluency/components/fluency-solving/fluencySolving.types.js.map +1 -0
  127. package/dist/module/features/fluency/components/matrix/FluencyMatrix.js +2 -2
  128. package/dist/module/features/fluency/components/matrix/FluencyMatrix.js.map +1 -1
  129. package/dist/module/features/fluency/components/matrix/components/CellTooltip.js +50 -0
  130. package/dist/module/features/fluency/components/matrix/components/CellTooltip.js.map +1 -0
  131. package/dist/module/features/fluency/components/matrix/components/MatrixCell.js +63 -19
  132. package/dist/module/features/fluency/components/matrix/components/MatrixCell.js.map +1 -1
  133. package/dist/module/features/fluency/components/matrix/components/MatrixFill.js +22 -26
  134. package/dist/module/features/fluency/components/matrix/components/MatrixFill.js.map +1 -1
  135. package/dist/module/features/fluency/components/matrix/components/MatrixLegend.js +11 -9
  136. package/dist/module/features/fluency/components/matrix/components/MatrixLegend.js.map +1 -1
  137. package/dist/module/features/fluency/components/mobile-menu/MobileMenu.js +32 -0
  138. package/dist/module/features/fluency/components/mobile-menu/MobileMenu.js.map +1 -0
  139. package/dist/module/features/fluency/components/select-math-operator/ProgressBar.js +1 -57
  140. package/dist/module/features/fluency/components/select-math-operator/ProgressBar.js.map +1 -1
  141. package/dist/module/features/fluency/components/select-math-operator/SelectMathOperator.js +20 -9
  142. package/dist/module/features/fluency/components/select-math-operator/SelectMathOperator.js.map +1 -1
  143. package/dist/module/features/fluency/components/session-results/FluencySessionResults.js +185 -0
  144. package/dist/module/features/fluency/components/session-results/FluencySessionResults.js.map +1 -0
  145. package/dist/module/features/fluency/components/session-results/SessionStatCard.js +71 -0
  146. package/dist/module/features/fluency/components/session-results/SessionStatCard.js.map +1 -0
  147. package/dist/module/features/fluency/components/session-results/SkillProgressionRow.js +107 -0
  148. package/dist/module/features/fluency/components/session-results/SkillProgressionRow.js.map +1 -0
  149. package/dist/module/features/fluency/components/start-banner/BannerFlashcards.js +29 -29
  150. package/dist/module/features/fluency/components/start-banner/BannerFlashcards.js.map +1 -1
  151. package/dist/module/features/fluency/components/start-banner/MathFlashcard.js +2 -1
  152. package/dist/module/features/fluency/components/start-banner/MathFlashcard.js.map +1 -1
  153. package/dist/module/features/fluency/components/start-banner/StartBanner.js +38 -11
  154. package/dist/module/features/fluency/components/start-banner/StartBanner.js.map +1 -1
  155. package/dist/module/features/fluency/fluency.constants.js +28 -11
  156. package/dist/module/features/fluency/fluency.constants.js.map +1 -1
  157. package/dist/module/features/fluency/fluency.helpers.js +55 -24
  158. package/dist/module/features/fluency/fluency.helpers.js.map +1 -1
  159. package/dist/module/features/fluency/hooks/useFluencyModePreset.js +16 -7
  160. package/dist/module/features/fluency/hooks/useFluencyModePreset.js.map +1 -1
  161. package/dist/module/features/fluency/hooks/useFluencyNumpad.js +159 -0
  162. package/dist/module/features/fluency/hooks/useFluencyNumpad.js.map +1 -0
  163. package/dist/module/features/fluency/hooks/useFluencySolvingPreset.js +52 -0
  164. package/dist/module/features/fluency/hooks/useFluencySolvingPreset.js.map +1 -0
  165. package/dist/module/features/fluency/hooks/usePreventWebKeys.js +21 -0
  166. package/dist/module/features/fluency/hooks/usePreventWebKeys.js.map +1 -0
  167. package/dist/module/features/fluency/hooks/useSuccessSound.js +0 -1
  168. package/dist/module/features/fluency/hooks/useSuccessSound.js.map +1 -1
  169. package/dist/module/features/fluency/model/FluencyApiModel.js +6 -1
  170. package/dist/module/features/fluency/model/FluencyApiModel.js.map +1 -1
  171. package/dist/module/features/fluency/model/FluencyDaysStreakModel.js +8 -1
  172. package/dist/module/features/fluency/model/FluencyDaysStreakModel.js.map +1 -1
  173. package/dist/module/features/fluency/model/FluencyMatrixModel.js +15 -1
  174. package/dist/module/features/fluency/model/FluencyMatrixModel.js.map +1 -1
  175. package/dist/module/features/fluency/model/FluencyModel.js +40 -26
  176. package/dist/module/features/fluency/model/FluencyModel.js.map +1 -1
  177. package/dist/module/features/fluency/model/FluencySolvingModel.js +141 -6
  178. package/dist/module/features/fluency/model/FluencySolvingModel.js.map +1 -1
  179. package/dist/module/lib/constants.js +1 -0
  180. package/dist/module/lib/constants.js.map +1 -1
  181. package/dist/typescript/commonjs/features/fluency/assets/FlameIcon.d.ts +4 -0
  182. package/dist/typescript/commonjs/features/fluency/assets/FlameIcon.d.ts.map +1 -0
  183. package/dist/typescript/commonjs/features/fluency/assets/FlashIcon.d.ts +4 -0
  184. package/dist/typescript/commonjs/features/fluency/assets/FlashIcon.d.ts.map +1 -0
  185. package/dist/typescript/commonjs/features/fluency/assets/SnurrisnurrBg.d.ts +3 -0
  186. package/dist/typescript/commonjs/features/fluency/assets/SnurrisnurrBg.d.ts.map +1 -0
  187. package/dist/typescript/commonjs/features/fluency/assets/StarFillIcon.d.ts +5 -1
  188. package/dist/typescript/commonjs/features/fluency/assets/StarFillIcon.d.ts.map +1 -1
  189. package/dist/typescript/commonjs/features/fluency/assets/TrophyBg.d.ts +3 -0
  190. package/dist/typescript/commonjs/features/fluency/assets/TrophyBg.d.ts.map +1 -0
  191. package/dist/typescript/commonjs/features/fluency/components/Fluency.d.ts +3 -1
  192. package/dist/typescript/commonjs/features/fluency/components/Fluency.d.ts.map +1 -1
  193. package/dist/typescript/commonjs/features/fluency/components/FluencySolving.d.ts +2 -1
  194. package/dist/typescript/commonjs/features/fluency/components/FluencySolving.d.ts.map +1 -1
  195. package/dist/typescript/commonjs/features/fluency/components/day-streak-counter/DayStreak.d.ts +5 -3
  196. package/dist/typescript/commonjs/features/fluency/components/day-streak-counter/DayStreak.d.ts.map +1 -1
  197. package/dist/typescript/commonjs/features/fluency/components/day-streak-counter/DayStreakCounter.d.ts.map +1 -1
  198. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/EquationContent.d.ts +11 -0
  199. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/EquationContent.d.ts.map +1 -0
  200. package/dist/typescript/{module/features/fluency/components/fluency-solving → commonjs/features/fluency/components/fluency-solving/components}/FluencyEquationCard.d.ts +1 -1
  201. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencyEquationCard.d.ts.map +1 -0
  202. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencyNumpad.d.ts +7 -0
  203. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencyNumpad.d.ts.map +1 -0
  204. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingCard.d.ts.map +1 -0
  205. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingHeader.d.ts.map +1 -0
  206. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingProgress.d.ts +10 -0
  207. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingProgress.d.ts.map +1 -0
  208. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/fluencySolving.constants.d.ts +5 -0
  209. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/fluencySolving.constants.d.ts.map +1 -0
  210. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/fluencySolving.helpers.d.ts +17 -0
  211. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/fluencySolving.helpers.d.ts.map +1 -0
  212. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/fluencySolving.types.d.ts +30 -0
  213. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/fluencySolving.types.d.ts.map +1 -0
  214. package/dist/typescript/commonjs/features/fluency/components/matrix/FluencyMatrix.d.ts.map +1 -1
  215. package/dist/typescript/commonjs/features/fluency/components/matrix/components/CellTooltip.d.ts +7 -0
  216. package/dist/typescript/commonjs/features/fluency/components/matrix/components/CellTooltip.d.ts.map +1 -0
  217. package/dist/typescript/commonjs/features/fluency/components/matrix/components/MatrixCell.d.ts +7 -7
  218. package/dist/typescript/commonjs/features/fluency/components/matrix/components/MatrixCell.d.ts.map +1 -1
  219. package/dist/typescript/commonjs/features/fluency/components/matrix/components/MatrixFill.d.ts +1 -1
  220. package/dist/typescript/commonjs/features/fluency/components/matrix/components/MatrixFill.d.ts.map +1 -1
  221. package/dist/typescript/commonjs/features/fluency/components/matrix/components/MatrixLegend.d.ts.map +1 -1
  222. package/dist/typescript/commonjs/features/fluency/components/mobile-menu/MobileMenu.d.ts +7 -0
  223. package/dist/typescript/commonjs/features/fluency/components/mobile-menu/MobileMenu.d.ts.map +1 -0
  224. package/dist/typescript/commonjs/features/fluency/components/select-math-operator/ProgressBar.d.ts.map +1 -1
  225. package/dist/typescript/commonjs/features/fluency/components/select-math-operator/SelectMathOperator.d.ts.map +1 -1
  226. package/dist/typescript/commonjs/features/fluency/components/session-results/FluencySessionResults.d.ts +9 -0
  227. package/dist/typescript/commonjs/features/fluency/components/session-results/FluencySessionResults.d.ts.map +1 -0
  228. package/dist/typescript/commonjs/features/fluency/components/session-results/SessionStatCard.d.ts +10 -0
  229. package/dist/typescript/commonjs/features/fluency/components/session-results/SessionStatCard.d.ts.map +1 -0
  230. package/dist/typescript/commonjs/features/fluency/components/session-results/SkillProgressionRow.d.ts +15 -0
  231. package/dist/typescript/commonjs/features/fluency/components/session-results/SkillProgressionRow.d.ts.map +1 -0
  232. package/dist/typescript/commonjs/features/fluency/components/start-banner/StartBanner.d.ts.map +1 -1
  233. package/dist/typescript/commonjs/features/fluency/fluency.constants.d.ts +21 -5
  234. package/dist/typescript/commonjs/features/fluency/fluency.constants.d.ts.map +1 -1
  235. package/dist/typescript/commonjs/features/fluency/fluency.helpers.d.ts +5 -10
  236. package/dist/typescript/commonjs/features/fluency/fluency.helpers.d.ts.map +1 -1
  237. package/dist/typescript/commonjs/features/fluency/fluency.types.d.ts +75 -16
  238. package/dist/typescript/commonjs/features/fluency/fluency.types.d.ts.map +1 -1
  239. package/dist/typescript/commonjs/features/fluency/hooks/useFluencyModePreset.d.ts +18 -3
  240. package/dist/typescript/commonjs/features/fluency/hooks/useFluencyModePreset.d.ts.map +1 -1
  241. package/dist/typescript/commonjs/features/fluency/hooks/useFluencyNumpad.d.ts +53 -0
  242. package/dist/typescript/commonjs/features/fluency/hooks/useFluencyNumpad.d.ts.map +1 -0
  243. package/dist/typescript/commonjs/features/fluency/hooks/useFluencySolvingPreset.d.ts +22 -0
  244. package/dist/typescript/commonjs/features/fluency/hooks/useFluencySolvingPreset.d.ts.map +1 -0
  245. package/dist/typescript/commonjs/features/fluency/hooks/usePreventWebKeys.d.ts +9 -0
  246. package/dist/typescript/commonjs/features/fluency/hooks/usePreventWebKeys.d.ts.map +1 -0
  247. package/dist/typescript/commonjs/features/fluency/hooks/useSuccessSound.d.ts.map +1 -1
  248. package/dist/typescript/commonjs/features/fluency/model/FluencyApiModel.d.ts +6 -3
  249. package/dist/typescript/commonjs/features/fluency/model/FluencyApiModel.d.ts.map +1 -1
  250. package/dist/typescript/commonjs/features/fluency/model/FluencyDaysStreakModel.d.ts +5 -0
  251. package/dist/typescript/commonjs/features/fluency/model/FluencyDaysStreakModel.d.ts.map +1 -1
  252. package/dist/typescript/commonjs/features/fluency/model/FluencyMatrixModel.d.ts +8 -0
  253. package/dist/typescript/commonjs/features/fluency/model/FluencyMatrixModel.d.ts.map +1 -1
  254. package/dist/typescript/commonjs/features/fluency/model/FluencyModel.d.ts +4 -15
  255. package/dist/typescript/commonjs/features/fluency/model/FluencyModel.d.ts.map +1 -1
  256. package/dist/typescript/commonjs/features/fluency/model/FluencySolvingModel.d.ts +26 -7
  257. package/dist/typescript/commonjs/features/fluency/model/FluencySolvingModel.d.ts.map +1 -1
  258. package/dist/typescript/commonjs/lib/constants.d.ts +2 -1
  259. package/dist/typescript/commonjs/lib/constants.d.ts.map +1 -1
  260. package/dist/typescript/module/features/fluency/assets/FlameIcon.d.ts +4 -0
  261. package/dist/typescript/module/features/fluency/assets/FlameIcon.d.ts.map +1 -0
  262. package/dist/typescript/module/features/fluency/assets/FlashIcon.d.ts +4 -0
  263. package/dist/typescript/module/features/fluency/assets/FlashIcon.d.ts.map +1 -0
  264. package/dist/typescript/module/features/fluency/assets/SnurrisnurrBg.d.ts +3 -0
  265. package/dist/typescript/module/features/fluency/assets/SnurrisnurrBg.d.ts.map +1 -0
  266. package/dist/typescript/module/features/fluency/assets/StarFillIcon.d.ts +5 -1
  267. package/dist/typescript/module/features/fluency/assets/StarFillIcon.d.ts.map +1 -1
  268. package/dist/typescript/module/features/fluency/assets/TrophyBg.d.ts +3 -0
  269. package/dist/typescript/module/features/fluency/assets/TrophyBg.d.ts.map +1 -0
  270. package/dist/typescript/module/features/fluency/components/Fluency.d.ts +3 -1
  271. package/dist/typescript/module/features/fluency/components/Fluency.d.ts.map +1 -1
  272. package/dist/typescript/module/features/fluency/components/FluencySolving.d.ts +2 -1
  273. package/dist/typescript/module/features/fluency/components/FluencySolving.d.ts.map +1 -1
  274. package/dist/typescript/module/features/fluency/components/day-streak-counter/DayStreak.d.ts +5 -3
  275. package/dist/typescript/module/features/fluency/components/day-streak-counter/DayStreak.d.ts.map +1 -1
  276. package/dist/typescript/module/features/fluency/components/day-streak-counter/DayStreakCounter.d.ts.map +1 -1
  277. package/dist/typescript/module/features/fluency/components/fluency-solving/components/EquationContent.d.ts +11 -0
  278. package/dist/typescript/module/features/fluency/components/fluency-solving/components/EquationContent.d.ts.map +1 -0
  279. package/dist/typescript/{commonjs/features/fluency/components/fluency-solving → module/features/fluency/components/fluency-solving/components}/FluencyEquationCard.d.ts +1 -1
  280. package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencyEquationCard.d.ts.map +1 -0
  281. package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencyNumpad.d.ts +7 -0
  282. package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencyNumpad.d.ts.map +1 -0
  283. package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencySolvingCard.d.ts.map +1 -0
  284. package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencySolvingHeader.d.ts.map +1 -0
  285. package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencySolvingProgress.d.ts +10 -0
  286. package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencySolvingProgress.d.ts.map +1 -0
  287. package/dist/typescript/module/features/fluency/components/fluency-solving/fluencySolving.constants.d.ts +5 -0
  288. package/dist/typescript/module/features/fluency/components/fluency-solving/fluencySolving.constants.d.ts.map +1 -0
  289. package/dist/typescript/module/features/fluency/components/fluency-solving/fluencySolving.helpers.d.ts +17 -0
  290. package/dist/typescript/module/features/fluency/components/fluency-solving/fluencySolving.helpers.d.ts.map +1 -0
  291. package/dist/typescript/module/features/fluency/components/fluency-solving/fluencySolving.types.d.ts +30 -0
  292. package/dist/typescript/module/features/fluency/components/fluency-solving/fluencySolving.types.d.ts.map +1 -0
  293. package/dist/typescript/module/features/fluency/components/matrix/FluencyMatrix.d.ts.map +1 -1
  294. package/dist/typescript/module/features/fluency/components/matrix/components/CellTooltip.d.ts +7 -0
  295. package/dist/typescript/module/features/fluency/components/matrix/components/CellTooltip.d.ts.map +1 -0
  296. package/dist/typescript/module/features/fluency/components/matrix/components/MatrixCell.d.ts +7 -7
  297. package/dist/typescript/module/features/fluency/components/matrix/components/MatrixCell.d.ts.map +1 -1
  298. package/dist/typescript/module/features/fluency/components/matrix/components/MatrixFill.d.ts +1 -1
  299. package/dist/typescript/module/features/fluency/components/matrix/components/MatrixFill.d.ts.map +1 -1
  300. package/dist/typescript/module/features/fluency/components/matrix/components/MatrixLegend.d.ts.map +1 -1
  301. package/dist/typescript/module/features/fluency/components/mobile-menu/MobileMenu.d.ts +7 -0
  302. package/dist/typescript/module/features/fluency/components/mobile-menu/MobileMenu.d.ts.map +1 -0
  303. package/dist/typescript/module/features/fluency/components/select-math-operator/ProgressBar.d.ts.map +1 -1
  304. package/dist/typescript/module/features/fluency/components/select-math-operator/SelectMathOperator.d.ts.map +1 -1
  305. package/dist/typescript/module/features/fluency/components/session-results/FluencySessionResults.d.ts +9 -0
  306. package/dist/typescript/module/features/fluency/components/session-results/FluencySessionResults.d.ts.map +1 -0
  307. package/dist/typescript/module/features/fluency/components/session-results/SessionStatCard.d.ts +10 -0
  308. package/dist/typescript/module/features/fluency/components/session-results/SessionStatCard.d.ts.map +1 -0
  309. package/dist/typescript/module/features/fluency/components/session-results/SkillProgressionRow.d.ts +15 -0
  310. package/dist/typescript/module/features/fluency/components/session-results/SkillProgressionRow.d.ts.map +1 -0
  311. package/dist/typescript/module/features/fluency/components/start-banner/StartBanner.d.ts.map +1 -1
  312. package/dist/typescript/module/features/fluency/fluency.constants.d.ts +21 -5
  313. package/dist/typescript/module/features/fluency/fluency.constants.d.ts.map +1 -1
  314. package/dist/typescript/module/features/fluency/fluency.helpers.d.ts +5 -10
  315. package/dist/typescript/module/features/fluency/fluency.helpers.d.ts.map +1 -1
  316. package/dist/typescript/module/features/fluency/fluency.types.d.ts +75 -16
  317. package/dist/typescript/module/features/fluency/fluency.types.d.ts.map +1 -1
  318. package/dist/typescript/module/features/fluency/hooks/useFluencyModePreset.d.ts +18 -3
  319. package/dist/typescript/module/features/fluency/hooks/useFluencyModePreset.d.ts.map +1 -1
  320. package/dist/typescript/module/features/fluency/hooks/useFluencyNumpad.d.ts +53 -0
  321. package/dist/typescript/module/features/fluency/hooks/useFluencyNumpad.d.ts.map +1 -0
  322. package/dist/typescript/module/features/fluency/hooks/useFluencySolvingPreset.d.ts +22 -0
  323. package/dist/typescript/module/features/fluency/hooks/useFluencySolvingPreset.d.ts.map +1 -0
  324. package/dist/typescript/module/features/fluency/hooks/usePreventWebKeys.d.ts +9 -0
  325. package/dist/typescript/module/features/fluency/hooks/usePreventWebKeys.d.ts.map +1 -0
  326. package/dist/typescript/module/features/fluency/hooks/useSuccessSound.d.ts.map +1 -1
  327. package/dist/typescript/module/features/fluency/model/FluencyApiModel.d.ts +6 -3
  328. package/dist/typescript/module/features/fluency/model/FluencyApiModel.d.ts.map +1 -1
  329. package/dist/typescript/module/features/fluency/model/FluencyDaysStreakModel.d.ts +5 -0
  330. package/dist/typescript/module/features/fluency/model/FluencyDaysStreakModel.d.ts.map +1 -1
  331. package/dist/typescript/module/features/fluency/model/FluencyMatrixModel.d.ts +8 -0
  332. package/dist/typescript/module/features/fluency/model/FluencyMatrixModel.d.ts.map +1 -1
  333. package/dist/typescript/module/features/fluency/model/FluencyModel.d.ts +4 -15
  334. package/dist/typescript/module/features/fluency/model/FluencyModel.d.ts.map +1 -1
  335. package/dist/typescript/module/features/fluency/model/FluencySolvingModel.d.ts +26 -7
  336. package/dist/typescript/module/features/fluency/model/FluencySolvingModel.d.ts.map +1 -1
  337. package/dist/typescript/module/lib/constants.d.ts +2 -1
  338. package/dist/typescript/module/lib/constants.d.ts.map +1 -1
  339. package/package.json +1 -1
  340. package/src/features/fluency/assets/FlameIcon.tsx +14 -0
  341. package/src/features/fluency/assets/FlashIcon.tsx +14 -0
  342. package/src/features/fluency/assets/SnurrisnurrBg.tsx +193 -0
  343. package/src/features/fluency/assets/StarFillIcon.tsx +7 -3
  344. package/src/features/fluency/assets/TrophyBg.tsx +32 -0
  345. package/src/features/fluency/components/Fluency.tsx +18 -41
  346. package/src/features/fluency/components/FluencySolving.tsx +38 -7
  347. package/src/features/fluency/components/day-streak-counter/DayStreak.tsx +24 -20
  348. package/src/features/fluency/components/day-streak-counter/DayStreakCounter.tsx +41 -28
  349. package/src/features/fluency/components/fluency-solving/components/EquationContent.tsx +116 -0
  350. package/src/features/fluency/components/fluency-solving/{FluencyEquationCard.tsx → components/FluencyEquationCard.tsx} +22 -6
  351. package/src/features/fluency/components/fluency-solving/components/FluencyNumpad.tsx +54 -0
  352. package/src/features/fluency/components/fluency-solving/components/FluencySolvingCard.tsx +51 -0
  353. package/src/features/fluency/components/fluency-solving/{FluencySolvingHeader.tsx → components/FluencySolvingHeader.tsx} +16 -9
  354. package/src/features/fluency/components/fluency-solving/components/FluencySolvingProgress.tsx +72 -0
  355. package/src/features/fluency/components/fluency-solving/fluencySolving.constants.ts +25 -0
  356. package/src/features/fluency/components/fluency-solving/fluencySolving.helpers.ts +102 -0
  357. package/src/features/fluency/components/fluency-solving/fluencySolving.types.ts +32 -0
  358. package/src/features/fluency/components/matrix/FluencyMatrix.tsx +3 -2
  359. package/src/features/fluency/components/matrix/components/CellTooltip.tsx +46 -0
  360. package/src/features/fluency/components/matrix/components/MatrixCell.tsx +67 -25
  361. package/src/features/fluency/components/matrix/components/MatrixFill.tsx +28 -25
  362. package/src/features/fluency/components/matrix/components/MatrixLegend.tsx +11 -6
  363. package/src/features/fluency/components/mobile-menu/MobileMenu.tsx +29 -0
  364. package/src/features/fluency/components/select-math-operator/ProgressBar.tsx +1 -66
  365. package/src/features/fluency/components/select-math-operator/SelectMathOperator.tsx +32 -8
  366. package/src/features/fluency/components/session-results/FluencySessionResults.tsx +184 -0
  367. package/src/features/fluency/components/session-results/SessionStatCard.tsx +58 -0
  368. package/src/features/fluency/components/session-results/SkillProgressionRow.tsx +100 -0
  369. package/src/features/fluency/components/start-banner/BannerFlashcards.tsx +15 -15
  370. package/src/features/fluency/components/start-banner/MathFlashcard.tsx +2 -1
  371. package/src/features/fluency/components/start-banner/StartBanner.tsx +38 -10
  372. package/src/features/fluency/fluency.constants.ts +28 -11
  373. package/src/features/fluency/fluency.helpers.ts +52 -32
  374. package/src/features/fluency/fluency.types.ts +94 -11
  375. package/src/features/fluency/hooks/useFluencyModePreset.ts +29 -20
  376. package/src/features/fluency/hooks/useFluencyNumpad.tsx +136 -0
  377. package/src/features/fluency/hooks/useFluencySolvingPreset.ts +49 -0
  378. package/src/features/fluency/hooks/usePreventWebKeys.ts +24 -0
  379. package/src/features/fluency/hooks/useSuccessSound.ts +0 -1
  380. package/src/features/fluency/model/FluencyApiModel.ts +18 -2
  381. package/src/features/fluency/model/FluencyDaysStreakModel.ts +11 -1
  382. package/src/features/fluency/model/FluencyMatrixModel.ts +20 -1
  383. package/src/features/fluency/model/FluencyModel.ts +46 -29
  384. package/src/features/fluency/model/FluencySolvingModel.ts +183 -8
  385. package/src/lib/constants.ts +3 -2
  386. package/src/types/types.d.ts +5 -0
  387. package/dist/commonjs/features/fluency/assets/SpringIcon.js.map +0 -1
  388. package/dist/commonjs/features/fluency/components/fluency-solving/EquationContent.js +0 -89
  389. package/dist/commonjs/features/fluency/components/fluency-solving/EquationContent.js.map +0 -1
  390. package/dist/commonjs/features/fluency/components/fluency-solving/FluencyEquationCard.js.map +0 -1
  391. package/dist/commonjs/features/fluency/components/fluency-solving/FluencyNumpad.js +0 -203
  392. package/dist/commonjs/features/fluency/components/fluency-solving/FluencyNumpad.js.map +0 -1
  393. package/dist/commonjs/features/fluency/components/fluency-solving/FluencySolvingCard.js +0 -73
  394. package/dist/commonjs/features/fluency/components/fluency-solving/FluencySolvingCard.js.map +0 -1
  395. package/dist/commonjs/features/fluency/components/fluency-solving/FluencySolvingHeader.js.map +0 -1
  396. package/dist/commonjs/features/fluency/components/fluency-solving/FluencySolvingProgress.js.map +0 -1
  397. package/dist/commonjs/features/fluency/model/FluencyInputModel.js +0 -20
  398. package/dist/commonjs/features/fluency/model/FluencyInputModel.js.map +0 -1
  399. package/dist/module/features/fluency/assets/SpringIcon.js +0 -22
  400. package/dist/module/features/fluency/assets/SpringIcon.js.map +0 -1
  401. package/dist/module/features/fluency/components/fluency-solving/EquationContent.js +0 -83
  402. package/dist/module/features/fluency/components/fluency-solving/EquationContent.js.map +0 -1
  403. package/dist/module/features/fluency/components/fluency-solving/FluencyEquationCard.js.map +0 -1
  404. package/dist/module/features/fluency/components/fluency-solving/FluencyNumpad.js +0 -196
  405. package/dist/module/features/fluency/components/fluency-solving/FluencyNumpad.js.map +0 -1
  406. package/dist/module/features/fluency/components/fluency-solving/FluencySolvingCard.js +0 -66
  407. package/dist/module/features/fluency/components/fluency-solving/FluencySolvingCard.js.map +0 -1
  408. package/dist/module/features/fluency/components/fluency-solving/FluencySolvingHeader.js.map +0 -1
  409. package/dist/module/features/fluency/components/fluency-solving/FluencySolvingProgress.js +0 -41
  410. package/dist/module/features/fluency/components/fluency-solving/FluencySolvingProgress.js.map +0 -1
  411. package/dist/module/features/fluency/model/FluencyInputModel.js +0 -15
  412. package/dist/module/features/fluency/model/FluencyInputModel.js.map +0 -1
  413. package/dist/typescript/commonjs/features/fluency/__tests__/FluencyModel.test.d.ts +0 -2
  414. package/dist/typescript/commonjs/features/fluency/__tests__/FluencyModel.test.d.ts.map +0 -1
  415. package/dist/typescript/commonjs/features/fluency/assets/SpringIcon.d.ts +0 -3
  416. package/dist/typescript/commonjs/features/fluency/assets/SpringIcon.d.ts.map +0 -1
  417. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/EquationContent.d.ts +0 -9
  418. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/EquationContent.d.ts.map +0 -1
  419. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/FluencyEquationCard.d.ts.map +0 -1
  420. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/FluencyNumpad.d.ts +0 -7
  421. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/FluencyNumpad.d.ts.map +0 -1
  422. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/FluencySolvingCard.d.ts.map +0 -1
  423. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/FluencySolvingHeader.d.ts.map +0 -1
  424. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/FluencySolvingProgress.d.ts +0 -8
  425. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/FluencySolvingProgress.d.ts.map +0 -1
  426. package/dist/typescript/commonjs/features/fluency/model/FluencyInputModel.d.ts +0 -11
  427. package/dist/typescript/commonjs/features/fluency/model/FluencyInputModel.d.ts.map +0 -1
  428. package/dist/typescript/module/features/fluency/__tests__/FluencyModel.test.d.ts +0 -2
  429. package/dist/typescript/module/features/fluency/__tests__/FluencyModel.test.d.ts.map +0 -1
  430. package/dist/typescript/module/features/fluency/assets/SpringIcon.d.ts +0 -3
  431. package/dist/typescript/module/features/fluency/assets/SpringIcon.d.ts.map +0 -1
  432. package/dist/typescript/module/features/fluency/components/fluency-solving/EquationContent.d.ts +0 -9
  433. package/dist/typescript/module/features/fluency/components/fluency-solving/EquationContent.d.ts.map +0 -1
  434. package/dist/typescript/module/features/fluency/components/fluency-solving/FluencyEquationCard.d.ts.map +0 -1
  435. package/dist/typescript/module/features/fluency/components/fluency-solving/FluencyNumpad.d.ts +0 -7
  436. package/dist/typescript/module/features/fluency/components/fluency-solving/FluencyNumpad.d.ts.map +0 -1
  437. package/dist/typescript/module/features/fluency/components/fluency-solving/FluencySolvingCard.d.ts.map +0 -1
  438. package/dist/typescript/module/features/fluency/components/fluency-solving/FluencySolvingHeader.d.ts.map +0 -1
  439. package/dist/typescript/module/features/fluency/components/fluency-solving/FluencySolvingProgress.d.ts +0 -8
  440. package/dist/typescript/module/features/fluency/components/fluency-solving/FluencySolvingProgress.d.ts.map +0 -1
  441. package/dist/typescript/module/features/fluency/model/FluencyInputModel.d.ts +0 -11
  442. package/dist/typescript/module/features/fluency/model/FluencyInputModel.d.ts.map +0 -1
  443. package/src/features/fluency/__tests__/FluencyModel.test.ts +0 -28
  444. package/src/features/fluency/assets/SpringIcon.tsx +0 -17
  445. package/src/features/fluency/components/fluency-solving/EquationContent.tsx +0 -78
  446. package/src/features/fluency/components/fluency-solving/FluencyNumpad.tsx +0 -181
  447. package/src/features/fluency/components/fluency-solving/FluencySolvingCard.tsx +0 -59
  448. package/src/features/fluency/components/fluency-solving/FluencySolvingProgress.tsx +0 -40
  449. package/src/features/fluency/model/FluencyInputModel.ts +0 -17
  450. /package/dist/typescript/commonjs/features/fluency/components/fluency-solving/{FluencySolvingCard.d.ts → components/FluencySolvingCard.d.ts} +0 -0
  451. /package/dist/typescript/commonjs/features/fluency/components/fluency-solving/{FluencySolvingHeader.d.ts → components/FluencySolvingHeader.d.ts} +0 -0
  452. /package/dist/typescript/module/features/fluency/components/fluency-solving/{FluencySolvingCard.d.ts → components/FluencySolvingCard.d.ts} +0 -0
  453. /package/dist/typescript/module/features/fluency/components/fluency-solving/{FluencySolvingHeader.d.ts → components/FluencySolvingHeader.d.ts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeUi","_effectorReact","_FluencyNumpad","_FluencyEquationCard","_FluencyContext","_useCardSnapAnimation","_useSuccessSound","_jsxRuntime","e","__esModule","default","FluencySolvingCard","model","useFluency","answer","fact","useUnit","solving","$answer","$current","animation","useCardSnapAnimation","successSound","useSuccessSound","submit","isCorrect","Number","play","trigger","jsxs","View","children","jsx","style","styles","wrapper","FluencyEquationCard","animationStyles","snapStyles","FluencyNumpad","onSubmit","exports","StyleSheet","create","alignItems","paddingVertical","SPACING","paddingHorizontal","marginTop"],"sourceRoot":"../../../../../../../src","sources":["features/fluency/components/fluency-solving/components/FluencySolvingCard.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AACA,IAAAK,oBAAA,GAAAL,OAAA;AACA,IAAAM,eAAA,GAAAN,OAAA;AACA,IAAAO,qBAAA,GAAAP,OAAA;AACA,IAAAQ,gBAAA,GAAAR,OAAA;AAAgE,IAAAS,WAAA,GAAAT,OAAA;AAAA,SAAAD,uBAAAW,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEzD,MAAMG,kBAAkB,GAAGA,CAAA,KAAM;EACtC,MAAM;IAAEC;EAAM,CAAC,GAAG,IAAAC,0BAAU,EAAC,CAAC;EAC9B,MAAM;IAAEC,MAAM;IAAEC;EAAK,CAAC,GAAG,IAAAC,sBAAO,EAAC;IAC/BF,MAAM,EAAEF,KAAK,CAACK,OAAO,CAACC,OAAO;IAC7BH,IAAI,EAAEH,KAAK,CAACK,OAAO,CAACE;EACtB,CAAC,CAAC;EACF,MAAMC,SAAS,GAAG,IAAAC,0CAAoB,EAAC,CAAC;EACxC,MAAMC,YAAY,GAAG,IAAAC,gCAAe,EAAC,CAAC;EAEtC,MAAMC,MAAM,GAAGA,CAAA,KAAM;IACnB,IAAI,CAACT,IAAI,EAAE;IAEX,MAAMU,SAAS,GAAGX,MAAM,KAAK,IAAI,IAAIY,MAAM,CAACZ,MAAM,CAAC,KAAKC,IAAI,CAACD,MAAM;IACnE,IAAIW,SAAS,EAAE;MACbH,YAAY,CAACK,IAAI,CAAC,CAAC;MACnBP,SAAS,CAACQ,OAAO,CAAC,OAAO,CAAC;IAC5B,CAAC,MAAM;MACLR,SAAS,CAACQ,OAAO,CAAC,MAAM,CAAC;IAC3B;IAEAhB,KAAK,CAACK,OAAO,CAACO,MAAM,CAAC,CAAC;EACxB,CAAC;EAED,oBACE,IAAAjB,WAAA,CAAAsB,IAAA,EAAC9B,YAAA,CAAA+B,IAAI;IAAAC,QAAA,gBACH,IAAAxB,WAAA,CAAAyB,GAAA,EAACjC,YAAA,CAAA+B,IAAI;MAACG,KAAK,EAAEC,MAAM,CAACC,OAAQ;MAAAJ,QAAA,eAC1B,IAAAxB,WAAA,CAAAyB,GAAA,EAAC7B,oBAAA,CAAAiC,mBAAmB;QAACC,eAAe,EAAEjB,SAAS,CAACkB;MAAW,CAAE;IAAC,CAC1D,CAAC,eACP,IAAA/B,WAAA,CAAAyB,GAAA,EAAC9B,cAAA,CAAAqC,aAAa;MAACC,QAAQ,EAAEhB;IAAO,CAAE,CAAC;EAAA,CAC/B,CAAC;AAEX,CAAC;AAAAiB,OAAA,CAAA9B,kBAAA,GAAAA,kBAAA;AAED,MAAMuB,MAAM,GAAGQ,uBAAU,CAACC,MAAM,CAAC;EAC/BR,OAAO,EAAE;IACPS,UAAU,EAAE,QAAQ;IACpBC,eAAe,EAAEC,sBAAO,CAAC,GAAG,CAAC;IAC7BC,iBAAiB,EAAED,sBAAO,CAAC,GAAG,CAAC;IAC/BE,SAAS,EAAEF,sBAAO,CAAC,GAAG;EACxB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -7,36 +7,35 @@ exports.FluencySolvingHeader = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _reactNative = require("react-native");
9
9
  var _reactNativeUi = require("@magmamath/react-native-ui");
10
- var _i18n = require("../../../../i18n/i18n.js");
11
- var _useFluencyModePreset = require("../../hooks/useFluencyModePreset.js");
12
- var _XCloseIcon = require("../../../../shared/icons/XCloseIcon.js");
10
+ var _useFluencySolvingPreset = require("../../../hooks/useFluencySolvingPreset.js");
11
+ var _XCloseIcon = require("../../../../../shared/icons/XCloseIcon.js");
13
12
  var _jsxRuntime = require("react/jsx-runtime");
14
13
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
14
  const FluencySolvingHeader = ({
16
15
  onClosePress
17
16
  }) => {
18
- const t = (0, _i18n.useText)();
19
- const uiMode = (0, _useFluencyModePreset.useFluencyModePreset)();
20
- const OperatorIcon = uiMode.operatorIcon;
17
+ const modePreset = (0, _useFluencySolvingPreset.useFluencySolvingPreset)();
21
18
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
22
19
  style: styles.container,
23
20
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Button, {
24
21
  variant: _reactNativeUi.ButtonVariant.SECONDARY,
25
22
  size: _reactNativeUi.ButtonSize.LARGE,
23
+ colorScheme: _reactNativeUi.ButtonColor.WHITE,
26
24
  icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_XCloseIcon.XCloseIcon, {}),
27
25
  onPress: onClosePress
28
26
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
29
27
  style: [styles.operatorBadge, {
30
- backgroundColor: uiMode.accentColor
28
+ backgroundColor: modePreset.colors.accent
31
29
  }],
32
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(OperatorIcon, {
33
- color: _reactNativeUi.COLORS.NEUTRAL_1,
34
- size: 16
30
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Typography, {
31
+ variant: _reactNativeUi.HeadingVariants.H7,
32
+ style: styles.symbol,
33
+ children: modePreset.symbol
35
34
  })
36
35
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Typography, {
37
36
  variant: _reactNativeUi.HeadingVariants.H4,
38
37
  style: styles.title,
39
- children: t(uiMode.matrix.operatorName)
38
+ children: modePreset.label
40
39
  })]
41
40
  });
42
41
  };
@@ -62,6 +61,12 @@ const styles = _reactNative.StyleSheet.create({
62
61
  title: {
63
62
  color: _reactNativeUi.COLORS.NEUTRAL_10,
64
63
  fontWeight: '700'
64
+ },
65
+ symbol: {
66
+ fontSize: 32,
67
+ fontWeight: '100',
68
+ marginBottom: 2,
69
+ color: _reactNativeUi.COLORS.NEUTRAL_1
65
70
  }
66
71
  });
67
72
  //# sourceMappingURL=FluencySolvingHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeUi","_useFluencySolvingPreset","_XCloseIcon","_jsxRuntime","e","__esModule","default","FluencySolvingHeader","onClosePress","modePreset","useFluencySolvingPreset","jsxs","View","style","styles","container","children","jsx","Button","variant","ButtonVariant","SECONDARY","size","ButtonSize","LARGE","colorScheme","ButtonColor","WHITE","icon","XCloseIcon","onPress","operatorBadge","backgroundColor","colors","accent","Typography","HeadingVariants","H7","symbol","H4","title","label","exports","StyleSheet","create","height","flexDirection","alignItems","gap","paddingVertical","SPACING","paddingHorizontal","SHADOWS","width","borderRadius","BORDER_RADIUS","justifyContent","color","COLORS","NEUTRAL_10","fontWeight","fontSize","marginBottom","NEUTRAL_1"],"sourceRoot":"../../../../../../../src","sources":["features/fluency/components/fluency-solving/components/FluencySolvingHeader.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AAYA,IAAAG,wBAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AAAmE,IAAAK,WAAA,GAAAL,OAAA;AAAA,SAAAD,uBAAAO,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAM5D,MAAMG,oBAAoB,GAAGA,CAAC;EAAEC;AAAwC,CAAC,KAAK;EACnF,MAAMC,UAAU,GAAG,IAAAC,gDAAuB,EAAC,CAAC;EAE5C,oBACE,IAAAP,WAAA,CAAAQ,IAAA,EAACZ,YAAA,CAAAa,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,gBAC5B,IAAAb,WAAA,CAAAc,GAAA,EAACjB,cAAA,CAAAkB,MAAM;MACLC,OAAO,EAAEC,4BAAa,CAACC,SAAU;MACjCC,IAAI,EAAEC,yBAAU,CAACC,KAAM;MACvBC,WAAW,EAAEC,0BAAW,CAACC,KAAM;MAC/BC,IAAI,eAAE,IAAAzB,WAAA,CAAAc,GAAA,EAACf,WAAA,CAAA2B,UAAU,IAAE,CAAE;MACrBC,OAAO,EAAEtB;IAAa,CACvB,CAAC,eACF,IAAAL,WAAA,CAAAc,GAAA,EAAClB,YAAA,CAAAa,IAAI;MAACC,KAAK,EAAE,CAACC,MAAM,CAACiB,aAAa,EAAE;QAAEC,eAAe,EAAEvB,UAAU,CAACwB,MAAM,CAACC;MAAO,CAAC,CAAE;MAAAlB,QAAA,eACjF,IAAAb,WAAA,CAAAc,GAAA,EAACjB,cAAA,CAAAmC,UAAU;QAAChB,OAAO,EAAEiB,8BAAe,CAACC,EAAG;QAACxB,KAAK,EAAEC,MAAM,CAACwB,MAAO;QAAAtB,QAAA,EAC3DP,UAAU,CAAC6B;MAAM,CACR;IAAC,CACT,CAAC,eACP,IAAAnC,WAAA,CAAAc,GAAA,EAACjB,cAAA,CAAAmC,UAAU;MAAChB,OAAO,EAAEiB,8BAAe,CAACG,EAAG;MAAC1B,KAAK,EAAEC,MAAM,CAAC0B,KAAM;MAAAxB,QAAA,EAC1DP,UAAU,CAACgC;IAAK,CACP,CAAC;EAAA,CACT,CAAC;AAEX,CAAC;AAAAC,OAAA,CAAAnC,oBAAA,GAAAA,oBAAA;AAED,MAAMO,MAAM,GAAG6B,uBAAU,CAACC,MAAM,CAAC;EAC/B7B,SAAS,EAAE;IACT8B,MAAM,EAAE,EAAE;IACVC,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAE,EAAE;IACPC,eAAe,EAAEC,sBAAO,CAAC,GAAG,CAAC;IAC7BC,iBAAiB,EAAED,sBAAO,CAAC,GAAG,CAAC;IAC/B,GAAGE,sBAAO,CAAC,CAAC;EACd,CAAC;EACDrB,aAAa,EAAE;IACbsB,KAAK,EAAE,EAAE;IACTR,MAAM,EAAE,EAAE;IACVS,YAAY,EAAEC,4BAAa,CAAC,GAAG,CAAC;IAChCR,UAAU,EAAE,QAAQ;IACpBS,cAAc,EAAE,QAAQ;IACxB,GAAGJ,sBAAO,CAAC,CAAC;EACd,CAAC;EACDZ,KAAK,EAAE;IACLiB,KAAK,EAAEC,qBAAM,CAACC,UAAU;IACxBC,UAAU,EAAE;EACd,CAAC;EACDtB,MAAM,EAAE;IACNuB,QAAQ,EAAE,EAAE;IACZD,UAAU,EAAE,KAAK;IACjBE,YAAY,EAAE,CAAC;IACfL,KAAK,EAAEC,qBAAM,CAACK;EAChB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -7,19 +7,32 @@ exports.FluencySolvingProgress = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _reactNative = require("react-native");
9
9
  var _reactNativeUi = require("@magmamath/react-native-ui");
10
+ var _fluencyConstants = require("../../../fluency.constants.js");
10
11
  var _jsxRuntime = require("react/jsx-runtime");
11
12
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
13
  const FluencySolvingProgress = ({
13
14
  total,
14
- activeIndex
15
+ activeIndex,
16
+ outcomes
15
17
  }) => {
16
18
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
17
19
  style: styles.container,
18
20
  children: Array.from({
19
21
  length: total
20
- }).map((_, index) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
21
- style: index === activeIndex ? styles.dotActive : styles.dot
22
- }, index))
22
+ }).map((_, index) => {
23
+ if (index === activeIndex) return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
24
+ style: styles.dotActive
25
+ }, index);
26
+ if (index < activeIndex) {
27
+ const outcome = outcomes[index];
28
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
29
+ style: outcome ? DOT_STYLE_BY_OUTCOME[outcome.status] : styles.dot
30
+ }, index);
31
+ }
32
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
33
+ style: styles.dot
34
+ }, index);
35
+ })
23
36
  });
24
37
  };
25
38
  exports.FluencySolvingProgress = FluencySolvingProgress;
@@ -42,6 +55,23 @@ const styles = _reactNative.StyleSheet.create({
42
55
  height: 12,
43
56
  backgroundColor: _reactNativeUi.COLORS.NEUTRAL_10,
44
57
  borderRadius: 9999
58
+ },
59
+ dotCorrect: {
60
+ width: 12,
61
+ height: 12,
62
+ borderRadius: 6,
63
+ backgroundColor: _reactNativeUi.COLORS.PRIMARY_GREEN
64
+ },
65
+ dotWrong: {
66
+ width: 12,
67
+ height: 12,
68
+ borderRadius: 6,
69
+ backgroundColor: _reactNativeUi.COLORS.PRIMARY_RED
45
70
  }
46
71
  });
72
+ const DOT_STYLE_BY_OUTCOME = {
73
+ [_fluencyConstants.AttemptStatus.CORRECT]: styles.dotCorrect,
74
+ [_fluencyConstants.AttemptStatus.INCORRECT]: styles.dotWrong,
75
+ [_fluencyConstants.AttemptStatus.SKIPPED]: styles.dot
76
+ };
47
77
  //# sourceMappingURL=FluencySolvingProgress.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeUi","_fluencyConstants","_jsxRuntime","e","__esModule","default","FluencySolvingProgress","total","activeIndex","outcomes","jsx","View","style","styles","container","children","Array","from","length","map","_","index","dotActive","outcome","DOT_STYLE_BY_OUTCOME","status","dot","exports","StyleSheet","create","flexDirection","gap","SPACING","paddingHorizontal","paddingVertical","justifyContent","width","height","borderRadius","backgroundColor","COLORS","NEUTRAL_4","NEUTRAL_10","dotCorrect","PRIMARY_GREEN","dotWrong","PRIMARY_RED","AttemptStatus","CORRECT","INCORRECT","SKIPPED"],"sourceRoot":"../../../../../../../src","sources":["features/fluency/components/fluency-solving/components/FluencySolvingProgress.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAH,OAAA;AAA0D,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAD,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AASnD,MAAMG,sBAAsB,GAAGA,CAAC;EACrCC,KAAK;EACLC,WAAW;EACXC;AAC2B,CAAC,KAAK;EACjC,oBACE,IAAAP,WAAA,CAAAQ,GAAA,EAACX,YAAA,CAAAY,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,EAC3BC,KAAK,CAACC,IAAI,CAAC;MAAEC,MAAM,EAAEX;IAAM,CAAC,CAAC,CAACY,GAAG,CAAC,CAACC,CAAC,EAAEC,KAAK,KAAK;MAC/C,IAAIA,KAAK,KAAKb,WAAW,EAAE,oBAAO,IAAAN,WAAA,CAAAQ,GAAA,EAACX,YAAA,CAAAY,IAAI;QAAaC,KAAK,EAAEC,MAAM,CAACS;MAAU,GAA/BD,KAAiC,CAAC;MAC/E,IAAIA,KAAK,GAAGb,WAAW,EAAE;QACvB,MAAMe,OAAO,GAAGd,QAAQ,CAACY,KAAK,CAAC;QAC/B,oBACE,IAAAnB,WAAA,CAAAQ,GAAA,EAACX,YAAA,CAAAY,IAAI;UAAaC,KAAK,EAAEW,OAAO,GAAGC,oBAAoB,CAACD,OAAO,CAACE,MAAM,CAAC,GAAGZ,MAAM,CAACa;QAAI,GAA1EL,KAA4E,CAAC;MAE5F;MACA,oBAAO,IAAAnB,WAAA,CAAAQ,GAAA,EAACX,YAAA,CAAAY,IAAI;QAAaC,KAAK,EAAEC,MAAM,CAACa;MAAI,GAAzBL,KAA2B,CAAC;IAChD,CAAC;EAAC,CACE,CAAC;AAEX,CAAC;AAAAM,OAAA,CAAArB,sBAAA,GAAAA,sBAAA;AAED,MAAMO,MAAM,GAAGe,uBAAU,CAACC,MAAM,CAAC;EAC/Bf,SAAS,EAAE;IACTgB,aAAa,EAAE,KAAK;IACpBC,GAAG,EAAEC,sBAAO,CAAC,GAAG,CAAC;IACjBC,iBAAiB,EAAED,sBAAO,CAAC,GAAG,CAAC;IAC/BE,eAAe,EAAE,EAAE;IACnBC,cAAc,EAAE;EAClB,CAAC;EACDT,GAAG,EAAE;IACHU,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE,EAAE;IACVC,YAAY,EAAE,CAAC;IACfC,eAAe,EAAEC,qBAAM,CAACC;EAC1B,CAAC;EACDnB,SAAS,EAAE;IACTc,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE,EAAE;IACVE,eAAe,EAAEC,qBAAM,CAACE,UAAU;IAClCJ,YAAY,EAAE;EAChB,CAAC;EACDK,UAAU,EAAE;IACVP,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE,EAAE;IACVC,YAAY,EAAE,CAAC;IACfC,eAAe,EAAEC,qBAAM,CAACI;EAC1B,CAAC;EACDC,QAAQ,EAAE;IACRT,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE,EAAE;IACVC,YAAY,EAAE,CAAC;IACfC,eAAe,EAAEC,qBAAM,CAACM;EAC1B;AACF,CAAC,CAAC;AAEF,MAAMtB,oBAAmD,GAAG;EAC1D,CAACuB,+BAAa,CAACC,OAAO,GAAGnC,MAAM,CAAC8B,UAAU;EAC1C,CAACI,+BAAa,CAACE,SAAS,GAAGpC,MAAM,CAACgC,QAAQ;EAC1C,CAACE,+BAAa,CAACG,OAAO,GAAGrC,MAAM,CAACa;AAClC,CAAC","ignoreList":[]}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.MODE_ANSWER_EVAL_FORMULA = exports.DEFAULT_PICKER_PARAMS = void 0;
7
+ var _fluencyConstants = require("../../fluency.constants.js");
8
+ const HOUR_MS = 60 * 60 * 1000;
9
+ const BOX_1_INTERVAL = 4 * HOUR_MS;
10
+ const BOX_2_INTERVAL = 36 * HOUR_MS; // 1.5 days
11
+ const BOX_3_INTERVAL = 144 * HOUR_MS; // 6 days
12
+ const BOX_4_INTERVAL = 672 * HOUR_MS; // 4 weeks
13
+ const BOX_5_INTERVAL = 2016 * HOUR_MS; // 12 weeks
14
+
15
+ const DEFAULT_PICKER_PARAMS = exports.DEFAULT_PICKER_PARAMS = {
16
+ wDue: 0.05,
17
+ wWeak: 0.35,
18
+ wEase: 0.3,
19
+ wRand: 0.02,
20
+ numBoxes: 5,
21
+ boxIntervals: [0, BOX_1_INTERVAL, BOX_2_INTERVAL, BOX_3_INTERVAL, BOX_4_INTERVAL, BOX_5_INTERVAL]
22
+ };
23
+ const MODE_ANSWER_EVAL_FORMULA = exports.MODE_ANSWER_EVAL_FORMULA = {
24
+ [_fluencyConstants.FluencyMode.ADDITION]: (a, b) => a + b,
25
+ [_fluencyConstants.FluencyMode.SUBTRACTION]: (a, b) => a - b,
26
+ [_fluencyConstants.FluencyMode.MULTIPLICATION]: (a, b) => a * b,
27
+ [_fluencyConstants.FluencyMode.DIVISION]: (a, b) => a / b
28
+ };
29
+ //# sourceMappingURL=fluencySolving.constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_fluencyConstants","require","HOUR_MS","BOX_1_INTERVAL","BOX_2_INTERVAL","BOX_3_INTERVAL","BOX_4_INTERVAL","BOX_5_INTERVAL","DEFAULT_PICKER_PARAMS","exports","wDue","wWeak","wEase","wRand","numBoxes","boxIntervals","MODE_ANSWER_EVAL_FORMULA","FluencyMode","ADDITION","a","b","SUBTRACTION","MULTIPLICATION","DIVISION"],"sourceRoot":"../../../../../../src","sources":["features/fluency/components/fluency-solving/fluencySolving.constants.ts"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AAGA,MAAMC,OAAO,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;AAC9B,MAAMC,cAAc,GAAG,CAAC,GAAGD,OAAO;AAClC,MAAME,cAAc,GAAG,EAAE,GAAGF,OAAO,EAAC;AACpC,MAAMG,cAAc,GAAG,GAAG,GAAGH,OAAO,EAAC;AACrC,MAAMI,cAAc,GAAG,GAAG,GAAGJ,OAAO,EAAC;AACrC,MAAMK,cAAc,GAAG,IAAI,GAAGL,OAAO,EAAC;;AAE/B,MAAMM,qBAAmC,GAAAC,OAAA,CAAAD,qBAAA,GAAG;EACjDE,IAAI,EAAE,IAAI;EACVC,KAAK,EAAE,IAAI;EACXC,KAAK,EAAE,GAAG;EACVC,KAAK,EAAE,IAAI;EACXC,QAAQ,EAAE,CAAC;EACXC,YAAY,EAAE,CAAC,CAAC,EAAEZ,cAAc,EAAEC,cAAc,EAAEC,cAAc,EAAEC,cAAc,EAAEC,cAAc;AAClG,CAAC;AAEM,MAAMS,wBAA+E,GAAAP,OAAA,CAAAO,wBAAA,GAAG;EAC7F,CAACC,6BAAW,CAACC,QAAQ,GAAG,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,GAAGC,CAAC;EACvC,CAACH,6BAAW,CAACI,WAAW,GAAG,CAACF,CAAC,EAAEC,CAAC,KAAKD,CAAC,GAAGC,CAAC;EAC1C,CAACH,6BAAW,CAACK,cAAc,GAAG,CAACH,CAAC,EAAEC,CAAC,KAAKD,CAAC,GAAGC,CAAC;EAC7C,CAACH,6BAAW,CAACM,QAAQ,GAAG,CAACJ,CAAC,EAAEC,CAAC,KAAKD,CAAC,GAAGC;AACxC,CAAC","ignoreList":[]}
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.calculateMaxStreak = void 0;
7
+ exports.calculateNextBox = calculateNextBox;
8
+ exports.formatSessionDuration = void 0;
9
+ exports.selectNextFact = selectNextFact;
10
+ exports.toSolvingFacts = toSolvingFacts;
11
+ var _fluencyConstants = require("../../fluency.constants.js");
12
+ var _fluencySolvingConstants = require("./fluencySolving.constants.js");
13
+ function toSolvingFacts(factMap, mode) {
14
+ return Object.entries(factMap).map(([id, fact]) => {
15
+ const [a, b] = fact.numbers;
16
+ const answer = _fluencySolvingConstants.MODE_ANSWER_EVAL_FORMULA[mode](a, b);
17
+ const box = fact.box ?? 0;
18
+ return {
19
+ id,
20
+ mode,
21
+ numbers: fact.numbers,
22
+ answer,
23
+ difficulty: fact.difficulty,
24
+ box,
25
+ lastSeenMs: fact.lastAttemptedAt ? new Date(fact.lastAttemptedAt).getTime() : null,
26
+ sessionStartBox: box,
27
+ hasFailedThisSession: false,
28
+ attemptsCount: fact.attemptsCount,
29
+ correctCount: fact.correctCount
30
+ };
31
+ });
32
+ }
33
+ function computePriority(fact, now, params, maxDifficulty) {
34
+ const interval = Math.max(0.001, params.boxIntervals[Math.max(1, fact.box)]);
35
+ const overdueness = fact.lastSeenMs === null ? 1.0 : Math.min(1, (now - fact.lastSeenMs) / (2 * interval));
36
+ const weakness = (params.numBoxes - fact.box) / params.numBoxes;
37
+ const ease = (1 - fact.difficulty / Math.max(0.1, maxDifficulty)) * weakness;
38
+ return params.wDue * overdueness + params.wWeak * weakness + params.wEase * ease + params.wRand * Math.random();
39
+ }
40
+ function selectNextFact(facts, now, params = _fluencySolvingConstants.DEFAULT_PICKER_PARAMS) {
41
+ if (facts.length === 0) return null;
42
+ const available = facts.filter(f => f.box < params.numBoxes);
43
+ const pool = available.length > 0 ? available : facts;
44
+ const maxDifficulty = pool.reduce((m, f) => Math.max(m, f.difficulty), 1);
45
+ let best = pool[0];
46
+ let bestScore = -Infinity;
47
+ for (const f of pool) {
48
+ const score = computePriority(f, now, params, maxDifficulty);
49
+ if (score > bestScore) {
50
+ bestScore = score;
51
+ best = f;
52
+ }
53
+ }
54
+ return best;
55
+ }
56
+ const formatSessionDuration = ms => {
57
+ const totalSeconds = Math.floor(ms / 1000);
58
+ const minutes = Math.floor(totalSeconds / 60);
59
+ const seconds = totalSeconds % 60;
60
+ return `${minutes}:${seconds.toString().padStart(2, '0')}`;
61
+ };
62
+ exports.formatSessionDuration = formatSessionDuration;
63
+ const calculateMaxStreak = outcomes => outcomes.reduce((acc, outcome) => {
64
+ const current = outcome.status === _fluencyConstants.AttemptStatus.CORRECT ? acc.current + 1 : 0;
65
+ return {
66
+ max: Math.max(acc.max, current),
67
+ current
68
+ };
69
+ }, {
70
+ max: 0,
71
+ current: 0
72
+ }).max;
73
+ exports.calculateMaxStreak = calculateMaxStreak;
74
+ function calculateNextBox({
75
+ currentBox,
76
+ isCorrect,
77
+ isFast,
78
+ sessionStartBox,
79
+ hasFailedThisSession
80
+ }) {
81
+ if (!isCorrect) return Math.max(1, currentBox - 1);
82
+ if (!isFast) return currentBox;
83
+ if (hasFailedThisSession || currentBox >= sessionStartBox + 1) return currentBox;
84
+ return Math.min(currentBox + 1, 5);
85
+ }
86
+ //# sourceMappingURL=fluencySolving.helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_fluencyConstants","require","_fluencySolvingConstants","toSolvingFacts","factMap","mode","Object","entries","map","id","fact","a","b","numbers","answer","MODE_ANSWER_EVAL_FORMULA","box","difficulty","lastSeenMs","lastAttemptedAt","Date","getTime","sessionStartBox","hasFailedThisSession","attemptsCount","correctCount","computePriority","now","params","maxDifficulty","interval","Math","max","boxIntervals","overdueness","min","weakness","numBoxes","ease","wDue","wWeak","wEase","wRand","random","selectNextFact","facts","DEFAULT_PICKER_PARAMS","length","available","filter","f","pool","reduce","m","best","bestScore","Infinity","score","formatSessionDuration","ms","totalSeconds","floor","minutes","seconds","toString","padStart","exports","calculateMaxStreak","outcomes","acc","outcome","current","status","AttemptStatus","CORRECT","calculateNextBox","currentBox","isCorrect","isFast"],"sourceRoot":"../../../../../../src","sources":["features/fluency/components/fluency-solving/fluencySolving.helpers.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=fluencySolving.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../../../../src","sources":["features/fluency/components/fluency-solving/fluencySolving.types.ts"],"mappings":"","ignoreList":[]}
@@ -14,7 +14,7 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
14
14
  const FluencyMatrix = () => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
15
15
  style: styles.container,
16
16
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
17
- style: styles.body,
17
+ style: styles.matrixFillContainer,
18
18
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_MatrixFill.MatrixFill, {})
19
19
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_MatrixLegend.MatrixLegend, {})]
20
20
  });
@@ -27,7 +27,7 @@ const styles = _reactNative.StyleSheet.create({
27
27
  overflow: 'hidden',
28
28
  ..._reactNativeUi.SHADOWS[1]
29
29
  },
30
- body: {
30
+ matrixFillContainer: {
31
31
  flex: 1,
32
32
  padding: _reactNativeUi.SPACING[300],
33
33
  minHeight: 354
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeUi","_MatrixLegend","_MatrixFill","_jsxRuntime","e","__esModule","default","FluencyMatrix","jsxs","View","style","styles","container","children","jsx","body","MatrixFill","MatrixLegend","exports","StyleSheet","create","flex","backgroundColor","COLORS","NEUTRAL_1","borderRadius","BORDER_RADIUS","overflow","SHADOWS","padding","SPACING","minHeight"],"sourceRoot":"../../../../../../src","sources":["features/fluency/components/matrix/FluencyMatrix.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AAAoD,IAAAK,WAAA,GAAAL,OAAA;AAAA,SAAAD,uBAAAO,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE7C,MAAMG,aAAa,GAAGA,CAAA,kBAC3B,IAAAJ,WAAA,CAAAK,IAAA,EAACT,YAAA,CAAAU,IAAI;EAACC,KAAK,EAAEC,MAAM,CAACC,SAAU;EAAAC,QAAA,gBAC5B,IAAAV,WAAA,CAAAW,GAAA,EAACf,YAAA,CAAAU,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACI,IAAK;IAAAF,QAAA,eACvB,IAAAV,WAAA,CAAAW,GAAA,EAACZ,WAAA,CAAAc,UAAU,IAAE;EAAC,CACV,CAAC,eACP,IAAAb,WAAA,CAAAW,GAAA,EAACb,aAAA,CAAAgB,YAAY,IAAE,CAAC;AAAA,CACZ,CACP;AAAAC,OAAA,CAAAX,aAAA,GAAAA,aAAA;AAED,MAAMI,MAAM,GAAGQ,uBAAU,CAACC,MAAM,CAAC;EAC/BR,SAAS,EAAE;IACTS,IAAI,EAAE,CAAC;IACPC,eAAe,EAAEC,qBAAM,CAACC,SAAS;IACjCC,YAAY,EAAEC,4BAAa,CAAC,GAAG,CAAC;IAChCC,QAAQ,EAAE,QAAQ;IAClB,GAAGC,sBAAO,CAAC,CAAC;EACd,CAAC;EACDb,IAAI,EAAE;IACJM,IAAI,EAAE,CAAC;IACPQ,OAAO,EAAEC,sBAAO,CAAC,GAAG,CAAC;IACrBC,SAAS,EAAE;EACb;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeUi","_MatrixLegend","_MatrixFill","_jsxRuntime","e","__esModule","default","FluencyMatrix","jsxs","View","style","styles","container","children","jsx","matrixFillContainer","MatrixFill","MatrixLegend","exports","StyleSheet","create","flex","backgroundColor","COLORS","NEUTRAL_1","borderRadius","BORDER_RADIUS","overflow","SHADOWS","padding","SPACING","minHeight"],"sourceRoot":"../../../../../../src","sources":["features/fluency/components/matrix/FluencyMatrix.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AAAoD,IAAAK,WAAA,GAAAL,OAAA;AAAA,SAAAD,uBAAAO,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE7C,MAAMG,aAAa,GAAGA,CAAA,kBAC3B,IAAAJ,WAAA,CAAAK,IAAA,EAACT,YAAA,CAAAU,IAAI;EAACC,KAAK,EAAEC,MAAM,CAACC,SAAU;EAAAC,QAAA,gBAC5B,IAAAV,WAAA,CAAAW,GAAA,EAACf,YAAA,CAAAU,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACI,mBAAoB;IAAAF,QAAA,eACtC,IAAAV,WAAA,CAAAW,GAAA,EAACZ,WAAA,CAAAc,UAAU,IAAE;EAAC,CACV,CAAC,eAEP,IAAAb,WAAA,CAAAW,GAAA,EAACb,aAAA,CAAAgB,YAAY,IAAE,CAAC;AAAA,CACZ,CACP;AAAAC,OAAA,CAAAX,aAAA,GAAAA,aAAA;AAED,MAAMI,MAAM,GAAGQ,uBAAU,CAACC,MAAM,CAAC;EAC/BR,SAAS,EAAE;IACTS,IAAI,EAAE,CAAC;IACPC,eAAe,EAAEC,qBAAM,CAACC,SAAS;IACjCC,YAAY,EAAEC,4BAAa,CAAC,GAAG,CAAC;IAChCC,QAAQ,EAAE,QAAQ;IAClB,GAAGC,sBAAO,CAAC,CAAC;EACd,CAAC;EACDb,mBAAmB,EAAE;IACnBM,IAAI,EAAE,CAAC;IACPQ,OAAO,EAAEC,sBAAO,CAAC,GAAG,CAAC;IACrBC,SAAS,EAAE;EACb;AACF,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.CellTooltip = 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 CellTooltip = ({
13
+ label
14
+ }) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
15
+ style: styles.container,
16
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
17
+ style: styles.bubble,
18
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
19
+ style: styles.label,
20
+ children: label
21
+ })
22
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
23
+ style: styles.arrow
24
+ })]
25
+ });
26
+ exports.CellTooltip = CellTooltip;
27
+ const styles = _reactNative.StyleSheet.create({
28
+ container: {
29
+ alignItems: 'center'
30
+ },
31
+ bubble: {
32
+ backgroundColor: _reactNativeUi.COLORS.NEUTRAL_1,
33
+ borderRadius: _reactNativeUi.BORDER_RADIUS[150],
34
+ paddingHorizontal: _reactNativeUi.SPACING[200],
35
+ paddingVertical: _reactNativeUi.SPACING[100],
36
+ ..._reactNativeUi.SHADOWS[4]
37
+ },
38
+ label: {
39
+ fontSize: 13,
40
+ lineHeight: 16,
41
+ color: _reactNativeUi.COLORS.NEUTRAL_9,
42
+ textAlign: 'center'
43
+ },
44
+ arrow: {
45
+ width: 0,
46
+ height: 0,
47
+ borderLeftWidth: 9,
48
+ borderRightWidth: 9,
49
+ borderTopWidth: 12,
50
+ borderStyle: 'solid',
51
+ borderLeftColor: 'transparent',
52
+ borderRightColor: 'transparent',
53
+ borderTopColor: _reactNativeUi.COLORS.NEUTRAL_1
54
+ }
55
+ });
56
+ //# sourceMappingURL=CellTooltip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeUi","_jsxRuntime","e","__esModule","default","CellTooltip","label","jsxs","View","style","styles","container","children","jsx","bubble","Text","arrow","exports","StyleSheet","create","alignItems","backgroundColor","COLORS","NEUTRAL_1","borderRadius","BORDER_RADIUS","paddingHorizontal","SPACING","paddingVertical","SHADOWS","fontSize","lineHeight","color","NEUTRAL_9","textAlign","width","height","borderLeftWidth","borderRightWidth","borderTopWidth","borderStyle","borderLeftColor","borderRightColor","borderTopColor"],"sourceRoot":"../../../../../../../src","sources":["features/fluency/components/matrix/components/CellTooltip.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AAAoF,IAAAG,WAAA,GAAAH,OAAA;AAAA,SAAAD,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAM7E,MAAMG,WAAW,GAAGA,CAAC;EAAEC;AAAwB,CAAC,kBACrD,IAAAL,WAAA,CAAAM,IAAA,EAACR,YAAA,CAAAS,IAAI;EAACC,KAAK,EAAEC,MAAM,CAACC,SAAU;EAAAC,QAAA,gBAC5B,IAAAX,WAAA,CAAAY,GAAA,EAACd,YAAA,CAAAS,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACI,MAAO;IAAAF,QAAA,eACzB,IAAAX,WAAA,CAAAY,GAAA,EAACd,YAAA,CAAAgB,IAAI;MAACN,KAAK,EAAEC,MAAM,CAACJ,KAAM;MAAAM,QAAA,EAAEN;IAAK,CAAO;EAAC,CACrC,CAAC,eACP,IAAAL,WAAA,CAAAY,GAAA,EAACd,YAAA,CAAAS,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACM;EAAM,CAAE,CAAC;AAAA,CACzB,CACP;AAAAC,OAAA,CAAAZ,WAAA,GAAAA,WAAA;AAED,MAAMK,MAAM,GAAGQ,uBAAU,CAACC,MAAM,CAAC;EAC/BR,SAAS,EAAE;IACTS,UAAU,EAAE;EACd,CAAC;EACDN,MAAM,EAAE;IACNO,eAAe,EAAEC,qBAAM,CAACC,SAAS;IACjCC,YAAY,EAAEC,4BAAa,CAAC,GAAG,CAAC;IAChCC,iBAAiB,EAAEC,sBAAO,CAAC,GAAG,CAAC;IAC/BC,eAAe,EAAED,sBAAO,CAAC,GAAG,CAAC;IAC7B,GAAGE,sBAAO,CAAC,CAAC;EACd,CAAC;EACDvB,KAAK,EAAE;IACLwB,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,EAAE;IACdC,KAAK,EAAEV,qBAAM,CAACW,SAAS;IACvBC,SAAS,EAAE;EACb,CAAC;EACDlB,KAAK,EAAE;IACLmB,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE,CAAC;IACTC,eAAe,EAAE,CAAC;IAClBC,gBAAgB,EAAE,CAAC;IACnBC,cAAc,EAAE,EAAE;IAClBC,WAAW,EAAE,OAAO;IACpBC,eAAe,EAAE,aAAa;IAC9BC,gBAAgB,EAAE,aAAa;IAC/BC,cAAc,EAAErB,qBAAM,CAACC;EACzB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -4,44 +4,89 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.MatrixCell = void 0;
7
- var _react = _interopRequireDefault(require("react"));
7
+ var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
9
  var _reactNativeUi = require("@magmamath/react-native-ui");
10
10
  var _fluencyHelpers = require("../../../fluency.helpers.js");
11
11
  var _fluencyConstants = require("../../../fluency.constants.js");
12
12
  var _StarFillIcon = require("../../../assets/StarFillIcon.js");
13
+ var _CellTooltip = require("./CellTooltip.js");
13
14
  var _jsxRuntime = require("react/jsx-runtime");
14
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
+ 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); }
16
+ 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; }
15
17
  const MatrixCell = ({
16
- row,
17
- col,
18
- score,
19
- mastery
18
+ label,
19
+ box,
20
+ isHeader,
21
+ levelColors,
22
+ tooltipLabel
20
23
  }) => {
21
- const label = (0, _fluencyHelpers.getCellLabel)(row, col);
22
- const isMastered = score !== null && (0, _fluencyHelpers.getMasteryLevel)(score) === _fluencyConstants.FluencyMasteryLevel.MASTERED;
23
- const background = score !== null ? (0, _fluencyHelpers.getCellColorByScore)(score, mastery) : (0, _fluencyHelpers.getCellBackground)(row, col);
24
+ const [isActive, setIsActive] = (0, _react.useState)(false);
25
+ const masteryLevel = box ? (0, _fluencyHelpers.getMasteryLevelByBox)(box) : null;
26
+ const isMastered = masteryLevel === _fluencyConstants.FluencyMasteryLevel.MASTERED;
27
+ const bgColor = (() => {
28
+ if (masteryLevel) return levelColors[masteryLevel];
29
+ if (isHeader) return _reactNativeUi.COLORS.NEUTRAL_5;
30
+ return _reactNativeUi.COLORS.NEUTRAL_2;
31
+ })();
32
+ const showTooltip = isActive && !!tooltipLabel;
33
+ const activate = () => setIsActive(true);
34
+ const deactivate = () => setIsActive(false);
24
35
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
25
- style: [styles.cell, {
26
- backgroundColor: background
27
- }],
28
- children: [isMastered && /*#__PURE__*/(0, _jsxRuntime.jsx)(_StarFillIcon.StarFillIcon, {}), label !== null && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
29
- style: styles.headerText,
30
- children: label
36
+ style: [styles.wrapper, showTooltip && styles.wrapperActive],
37
+ children: [showTooltip && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
38
+ style: styles.tooltipContainer,
39
+ pointerEvents: "none",
40
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_CellTooltip.CellTooltip, {
41
+ label: tooltipLabel
42
+ })
43
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Pressable, {
44
+ style: [styles.cell, {
45
+ backgroundColor: bgColor
46
+ }],
47
+ onHoverIn: activate,
48
+ onHoverOut: deactivate,
49
+ onPressIn: activate,
50
+ onPressOut: deactivate,
51
+ children: [isMastered && /*#__PURE__*/(0, _jsxRuntime.jsx)(_StarFillIcon.StarFillIcon, {
52
+ color: isActive ? _reactNativeUi.COLORS.PRIMARY_YELLOW : undefined
53
+ }), label !== null && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
54
+ style: typeof label === 'string' ? styles.symbolText : styles.headerText,
55
+ children: label
56
+ })]
31
57
  })]
32
58
  });
33
59
  };
34
60
  exports.MatrixCell = MatrixCell;
35
61
  const styles = _reactNative.StyleSheet.create({
62
+ wrapper: {
63
+ flex: 1
64
+ },
65
+ wrapperActive: {
66
+ zIndex: 1
67
+ },
36
68
  cell: {
37
69
  flex: 1,
38
70
  borderRadius: _reactNativeUi.BORDER_RADIUS[100],
39
71
  alignItems: 'center',
40
72
  justifyContent: 'center'
41
73
  },
74
+ tooltipContainer: {
75
+ position: 'absolute',
76
+ bottom: '100%',
77
+ left: 0,
78
+ right: 0,
79
+ alignItems: 'center',
80
+ paddingBottom: _reactNativeUi.SPACING[50]
81
+ },
42
82
  headerText: {
43
- fontSize: 13,
44
- color: _reactNativeUi.COLORS.NEUTRAL_2
83
+ fontSize: 12,
84
+ fontWeight: '600',
85
+ color: _reactNativeUi.COLORS.NEUTRAL_8
86
+ },
87
+ symbolText: {
88
+ fontSize: 24,
89
+ color: _reactNativeUi.COLORS.NEUTRAL_7
45
90
  }
46
91
  });
47
92
  //# sourceMappingURL=MatrixCell.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeUi","_fluencyHelpers","_fluencyConstants","_StarFillIcon","_jsxRuntime","e","__esModule","default","MatrixCell","row","col","score","mastery","label","getCellLabel","isMastered","getMasteryLevel","FluencyMasteryLevel","MASTERED","background","getCellColorByScore","getCellBackground","jsxs","View","style","styles","cell","backgroundColor","children","jsx","StarFillIcon","Text","headerText","exports","StyleSheet","create","flex","borderRadius","BORDER_RADIUS","alignItems","justifyContent","fontSize","color","COLORS","NEUTRAL_2"],"sourceRoot":"../../../../../../../src","sources":["features/fluency/components/matrix/components/MatrixCell.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AACA,IAAAG,eAAA,GAAAH,OAAA;AAMA,IAAAI,iBAAA,GAAAJ,OAAA;AACA,IAAAK,aAAA,GAAAL,OAAA;AAA2D,IAAAM,WAAA,GAAAN,OAAA;AAAA,SAAAD,uBAAAQ,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAUpD,MAAMG,UAAU,GAAGA,CAAC;EAAEC,GAAG;EAAEC,GAAG;EAAEC,KAAK;EAAEC;AAAyB,CAAC,KAAK;EAC3E,MAAMC,KAAK,GAAG,IAAAC,4BAAY,EAACL,GAAG,EAAEC,GAAG,CAAC;EACpC,MAAMK,UAAU,GAAGJ,KAAK,KAAK,IAAI,IAAI,IAAAK,+BAAe,EAACL,KAAK,CAAC,KAAKM,qCAAmB,CAACC,QAAQ;EAC5F,MAAMC,UAAU,GACdR,KAAK,KAAK,IAAI,GAAG,IAAAS,mCAAmB,EAACT,KAAK,EAAEC,OAAO,CAAC,GAAG,IAAAS,iCAAiB,EAACZ,GAAG,EAAEC,GAAG,CAAC;EAEpF,oBACE,IAAAN,WAAA,CAAAkB,IAAA,EAACvB,YAAA,CAAAwB,IAAI;IAACC,KAAK,EAAE,CAACC,MAAM,CAACC,IAAI,EAAE;MAAEC,eAAe,EAAER;IAAW,CAAC,CAAE;IAAAS,QAAA,GACzDb,UAAU,iBAAI,IAAAX,WAAA,CAAAyB,GAAA,EAAC1B,aAAA,CAAA2B,YAAY,IAAE,CAAC,EAC9BjB,KAAK,KAAK,IAAI,iBAAI,IAAAT,WAAA,CAAAyB,GAAA,EAAC9B,YAAA,CAAAgC,IAAI;MAACP,KAAK,EAAEC,MAAM,CAACO,UAAW;MAAAJ,QAAA,EAAEf;IAAK,CAAO,CAAC;EAAA,CAC7D,CAAC;AAEX,CAAC;AAAAoB,OAAA,CAAAzB,UAAA,GAAAA,UAAA;AAED,MAAMiB,MAAM,GAAGS,uBAAU,CAACC,MAAM,CAAC;EAC/BT,IAAI,EAAE;IACJU,IAAI,EAAE,CAAC;IACPC,YAAY,EAAEC,4BAAa,CAAC,GAAG,CAAC;IAChCC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB,CAAC;EACDR,UAAU,EAAE;IACVS,QAAQ,EAAE,EAAE;IACZC,KAAK,EAAEC,qBAAM,CAACC;EAChB;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeUi","_fluencyHelpers","_fluencyConstants","_StarFillIcon","_CellTooltip","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","MatrixCell","label","box","isHeader","levelColors","tooltipLabel","isActive","setIsActive","useState","masteryLevel","getMasteryLevelByBox","isMastered","FluencyMasteryLevel","MASTERED","bgColor","COLORS","NEUTRAL_5","NEUTRAL_2","showTooltip","activate","deactivate","jsxs","View","style","styles","wrapper","wrapperActive","children","jsx","tooltipContainer","pointerEvents","CellTooltip","Pressable","cell","backgroundColor","onHoverIn","onHoverOut","onPressIn","onPressOut","StarFillIcon","color","PRIMARY_YELLOW","undefined","Text","symbolText","headerText","exports","StyleSheet","create","flex","zIndex","borderRadius","BORDER_RADIUS","alignItems","justifyContent","position","bottom","left","right","paddingBottom","SPACING","fontSize","fontWeight","NEUTRAL_8","NEUTRAL_7"],"sourceRoot":"../../../../../../../src","sources":["features/fluency/components/matrix/components/MatrixCell.tsx"],"mappings":"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","ignoreList":[]}
@@ -7,51 +7,47 @@ exports.MatrixFill = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _reactNative = require("react-native");
9
9
  var _reactNativeUi = require("@magmamath/react-native-ui");
10
+ var _effectorReact = require("effector-react");
10
11
  var _MatrixCell = require("./MatrixCell.js");
11
- var _fluencyConstants = require("../../../fluency.constants.js");
12
+ var _FluencyContext = require("../../../context/FluencyContext.js");
12
13
  var _useFluencyModePreset = require("../../../hooks/useFluencyModePreset.js");
13
14
  var _jsxRuntime = require("react/jsx-runtime");
14
15
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
- const MOCK_SCORES = {
16
- '1-1': 90,
17
- '2-3': 70,
18
- '3-5': 50,
19
- '5-2': 30,
20
- '4-4': 10,
21
- '1-5': 85,
22
- '3-3': 45
23
- };
24
16
  const MatrixFill = () => {
25
17
  const {
26
- matrix
27
- } = (0, _useFluencyModePreset.useFluencyModePreset)();
18
+ model
19
+ } = (0, _FluencyContext.useFluency)();
20
+ const modePreset = (0, _useFluencyModePreset.useFluencyModePreset)();
21
+ const grid = (0, _effectorReact.useUnit)(model.matrix.$matrix);
22
+ if (!grid) return null;
28
23
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
29
24
  style: styles.grid,
30
- children: Array.from({
31
- length: _fluencyConstants.MATRIX_SIZE
32
- }, (_, row) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
25
+ children: grid.map((row, rowIdx) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
33
26
  style: styles.row,
34
- children: Array.from({
35
- length: _fluencyConstants.MATRIX_SIZE
36
- }, (_, col) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_MatrixCell.MatrixCell, {
37
- row: row,
38
- col: col,
39
- score: MOCK_SCORES[`${row}-${col}`] ?? null,
40
- mastery: matrix.mastery
41
- }, col))
42
- }, row))
27
+ children: row.map((cell, colIdx) => {
28
+ const isOriginCell = rowIdx === 0 && colIdx === 0;
29
+ const tooltipLabel = cell.numbers ? `${cell.numbers[0]}${modePreset.symbol}${cell.numbers[1]}` : null;
30
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_MatrixCell.MatrixCell, {
31
+ ...cell,
32
+ label: isOriginCell ? modePreset.symbol : cell.label,
33
+ levelColors: modePreset.colors.level,
34
+ tooltipLabel: tooltipLabel
35
+ }, colIdx);
36
+ })
37
+ }, rowIdx))
43
38
  });
44
39
  };
45
40
  exports.MatrixFill = MatrixFill;
46
41
  const styles = _reactNative.StyleSheet.create({
47
42
  grid: {
48
43
  flex: 1,
49
- gap: _reactNativeUi.SPACING[50]
44
+ gap: _reactNativeUi.SPACING[100]
50
45
  },
51
46
  row: {
52
47
  flex: 1,
48
+ minHeight: _reactNativeUi.SPACING[800],
53
49
  flexDirection: 'row',
54
- gap: _reactNativeUi.SPACING[50]
50
+ gap: _reactNativeUi.SPACING[100]
55
51
  }
56
52
  });
57
53
  //# sourceMappingURL=MatrixFill.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeUi","_MatrixCell","_fluencyConstants","_useFluencyModePreset","_jsxRuntime","e","__esModule","default","MOCK_SCORES","MatrixFill","matrix","useFluencyModePreset","jsx","View","style","styles","grid","children","Array","from","length","MATRIX_SIZE","_","row","col","MatrixCell","score","mastery","exports","StyleSheet","create","flex","gap","SPACING","flexDirection"],"sourceRoot":"../../../../../../../src","sources":["features/fluency/components/matrix/components/MatrixFill.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,iBAAA,GAAAJ,OAAA;AACA,IAAAK,qBAAA,GAAAL,OAAA;AAA0E,IAAAM,WAAA,GAAAN,OAAA;AAAA,SAAAD,uBAAAQ,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE1E,MAAMG,WAAmC,GAAG;EAC1C,KAAK,EAAE,EAAE;EACT,KAAK,EAAE,EAAE;EACT,KAAK,EAAE,EAAE;EACT,KAAK,EAAE,EAAE;EACT,KAAK,EAAE,EAAE;EACT,KAAK,EAAE,EAAE;EACT,KAAK,EAAE;AACT,CAAC;AAEM,MAAMC,UAAU,GAAGA,CAAA,KAAM;EAC9B,MAAM;IAAEC;EAAO,CAAC,GAAG,IAAAC,0CAAoB,EAAC,CAAC;EAEzC,oBACE,IAAAP,WAAA,CAAAQ,GAAA,EAACb,YAAA,CAAAc,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC,IAAK;IAAAC,QAAA,EACtBC,KAAK,CAACC,IAAI,CAAC;MAAEC,MAAM,EAAEC;IAAY,CAAC,EAAE,CAACC,CAAC,EAAEC,GAAG,kBAC1C,IAAAnB,WAAA,CAAAQ,GAAA,EAACb,YAAA,CAAAc,IAAI;MAAWC,KAAK,EAAEC,MAAM,CAACQ,GAAI;MAAAN,QAAA,EAC/BC,KAAK,CAACC,IAAI,CAAC;QAAEC,MAAM,EAAEC;MAAY,CAAC,EAAE,CAACC,CAAC,EAAEE,GAAG,kBAC1C,IAAApB,WAAA,CAAAQ,GAAA,EAACX,WAAA,CAAAwB,UAAU;QAETF,GAAG,EAAEA,GAAI;QACTC,GAAG,EAAEA,GAAI;QACTE,KAAK,EAAElB,WAAW,CAAC,GAAGe,GAAG,IAAIC,GAAG,EAAE,CAAC,IAAI,IAAK;QAC5CG,OAAO,EAAEjB,MAAM,CAACiB;MAAQ,GAJnBH,GAKN,CACF;IAAC,GATOD,GAUL,CACP;EAAC,CACE,CAAC;AAEX,CAAC;AAAAK,OAAA,CAAAnB,UAAA,GAAAA,UAAA;AAED,MAAMM,MAAM,GAAGc,uBAAU,CAACC,MAAM,CAAC;EAC/Bd,IAAI,EAAE;IACJe,IAAI,EAAE,CAAC;IACPC,GAAG,EAAEC,sBAAO,CAAC,EAAE;EACjB,CAAC;EACDV,GAAG,EAAE;IACHQ,IAAI,EAAE,CAAC;IACPG,aAAa,EAAE,KAAK;IACpBF,GAAG,EAAEC,sBAAO,CAAC,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeUi","_effectorReact","_MatrixCell","_FluencyContext","_useFluencyModePreset","_jsxRuntime","e","__esModule","default","MatrixFill","model","useFluency","modePreset","useFluencyModePreset","grid","useUnit","matrix","$matrix","jsx","View","style","styles","children","map","row","rowIdx","cell","colIdx","isOriginCell","tooltipLabel","numbers","symbol","MatrixCell","label","levelColors","colors","level","exports","StyleSheet","create","flex","gap","SPACING","minHeight","flexDirection"],"sourceRoot":"../../../../../../../src","sources":["features/fluency/components/matrix/components/MatrixFill.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AACA,IAAAK,eAAA,GAAAL,OAAA;AACA,IAAAM,qBAAA,GAAAN,OAAA;AAA0E,IAAAO,WAAA,GAAAP,OAAA;AAAA,SAAAD,uBAAAS,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEnE,MAAMG,UAAU,GAAGA,CAAA,KAAM;EAC9B,MAAM;IAAEC;EAAM,CAAC,GAAG,IAAAC,0BAAU,EAAC,CAAC;EAC9B,MAAMC,UAAU,GAAG,IAAAC,0CAAoB,EAAC,CAAC;EACzC,MAAMC,IAAI,GAAG,IAAAC,sBAAO,EAACL,KAAK,CAACM,MAAM,CAACC,OAAO,CAAC;EAE1C,IAAI,CAACH,IAAI,EAAE,OAAO,IAAI;EAEtB,oBACE,IAAAT,WAAA,CAAAa,GAAA,EAACnB,YAAA,CAAAoB,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACP,IAAK;IAAAQ,QAAA,EACtBR,IAAI,CAACS,GAAG,CAAC,CAACC,GAAG,EAAEC,MAAM,kBACpB,IAAApB,WAAA,CAAAa,GAAA,EAACnB,YAAA,CAAAoB,IAAI;MAAcC,KAAK,EAAEC,MAAM,CAACG,GAAI;MAAAF,QAAA,EAClCE,GAAG,CAACD,GAAG,CAAC,CAACG,IAAI,EAAEC,MAAM,KAAK;QACzB,MAAMC,YAAY,GAAGH,MAAM,KAAK,CAAC,IAAIE,MAAM,KAAK,CAAC;QACjD,MAAME,YAAY,GAAGH,IAAI,CAACI,OAAO,GAC7B,GAAGJ,IAAI,CAACI,OAAO,CAAC,CAAC,CAAC,GAAGlB,UAAU,CAACmB,MAAM,GAAGL,IAAI,CAACI,OAAO,CAAC,CAAC,CAAC,EAAE,GAC1D,IAAI;QAER,oBACE,IAAAzB,WAAA,CAAAa,GAAA,EAAChB,WAAA,CAAA8B,UAAU;UAAA,GAELN,IAAI;UACRO,KAAK,EAAEL,YAAY,GAAGhB,UAAU,CAACmB,MAAM,GAAGL,IAAI,CAACO,KAAM;UACrDC,WAAW,EAAEtB,UAAU,CAACuB,MAAM,CAACC,KAAM;UACrCP,YAAY,EAAEA;QAAa,GAJtBF,MAKN,CAAC;MAEN,CAAC;IAAC,GAhBOF,MAiBL,CACP;EAAC,CACE,CAAC;AAEX,CAAC;AAAAY,OAAA,CAAA5B,UAAA,GAAAA,UAAA;AAED,MAAMY,MAAM,GAAGiB,uBAAU,CAACC,MAAM,CAAC;EAC/BzB,IAAI,EAAE;IACJ0B,IAAI,EAAE,CAAC;IACPC,GAAG,EAAEC,sBAAO,CAAC,GAAG;EAClB,CAAC;EACDlB,GAAG,EAAE;IACHgB,IAAI,EAAE,CAAC;IACPG,SAAS,EAAED,sBAAO,CAAC,GAAG,CAAC;IACvBE,aAAa,EAAE,KAAK;IACpBH,GAAG,EAAEC,sBAAO,CAAC,GAAG;EAClB;AACF,CAAC,CAAC","ignoreList":[]}