@magmamath/students-features 1.3.26-rc.4 → 1.3.26-rc.6

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 (306) 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 +2 -2
  12. package/dist/commonjs/features/fluency/components/Fluency.js.map +1 -1
  13. package/dist/commonjs/features/fluency/components/FluencySolving.js +15 -10
  14. package/dist/commonjs/features/fluency/components/FluencySolving.js.map +1 -1
  15. package/dist/commonjs/features/fluency/components/day-streak-counter/DayStreakCounter.js +4 -4
  16. package/dist/commonjs/features/fluency/components/day-streak-counter/DayStreakCounter.js.map +1 -1
  17. package/dist/commonjs/features/fluency/components/fluency-solving/components/EquationContent.js +54 -14
  18. package/dist/commonjs/features/fluency/components/fluency-solving/components/EquationContent.js.map +1 -1
  19. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencyEquationCard.js +8 -2
  20. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencyEquationCard.js.map +1 -1
  21. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencyNumpad.js +2 -2
  22. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencyNumpad.js.map +1 -1
  23. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingCard.js +4 -33
  24. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingCard.js.map +1 -1
  25. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingHeader.js +13 -6
  26. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingHeader.js.map +1 -1
  27. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingProgress.js +5 -3
  28. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingProgress.js.map +1 -1
  29. package/dist/commonjs/features/fluency/components/fluency-solving/fluencySolving.helpers.js +42 -14
  30. package/dist/commonjs/features/fluency/components/fluency-solving/fluencySolving.helpers.js.map +1 -1
  31. package/dist/commonjs/features/fluency/components/fluency-solving/fluencySolving.types.js +4 -0
  32. package/dist/commonjs/features/fluency/components/matrix/components/CellTooltip.js +56 -0
  33. package/dist/commonjs/features/fluency/components/matrix/components/CellTooltip.js.map +1 -0
  34. package/dist/commonjs/features/fluency/components/matrix/components/MatrixCell.js +45 -29
  35. package/dist/commonjs/features/fluency/components/matrix/components/MatrixCell.js.map +1 -1
  36. package/dist/commonjs/features/fluency/components/matrix/components/MatrixFill.js +10 -4
  37. package/dist/commonjs/features/fluency/components/matrix/components/MatrixFill.js.map +1 -1
  38. package/dist/commonjs/features/fluency/components/matrix/components/MatrixLegend.js +7 -1
  39. package/dist/commonjs/features/fluency/components/matrix/components/MatrixLegend.js.map +1 -1
  40. package/dist/commonjs/features/fluency/components/select-math-operator/ProgressBar.js +1 -57
  41. package/dist/commonjs/features/fluency/components/select-math-operator/ProgressBar.js.map +1 -1
  42. package/dist/commonjs/features/fluency/components/select-math-operator/SelectMathOperator.js +13 -5
  43. package/dist/commonjs/features/fluency/components/select-math-operator/SelectMathOperator.js.map +1 -1
  44. package/dist/commonjs/features/fluency/components/session-results/FluencySessionResults.js +144 -130
  45. package/dist/commonjs/features/fluency/components/session-results/FluencySessionResults.js.map +1 -1
  46. package/dist/commonjs/features/fluency/components/session-results/SessionStatCard.js +40 -62
  47. package/dist/commonjs/features/fluency/components/session-results/SessionStatCard.js.map +1 -1
  48. package/dist/commonjs/features/fluency/components/start-banner/BannerFlashcards.js +29 -29
  49. package/dist/commonjs/features/fluency/components/start-banner/BannerFlashcards.js.map +1 -1
  50. package/dist/commonjs/features/fluency/components/start-banner/MathFlashcard.js +1 -0
  51. package/dist/commonjs/features/fluency/components/start-banner/MathFlashcard.js.map +1 -1
  52. package/dist/commonjs/features/fluency/components/start-banner/StartBanner.js +36 -9
  53. package/dist/commonjs/features/fluency/components/start-banner/StartBanner.js.map +1 -1
  54. package/dist/commonjs/features/fluency/fluency.constants.js +16 -6
  55. package/dist/commonjs/features/fluency/fluency.constants.js.map +1 -1
  56. package/dist/commonjs/features/fluency/fluency.helpers.js +9 -8
  57. package/dist/commonjs/features/fluency/fluency.helpers.js.map +1 -1
  58. package/dist/commonjs/features/fluency/hooks/useFluencyModePreset.js +1 -1
  59. package/dist/commonjs/features/fluency/hooks/useFluencyModePreset.js.map +1 -1
  60. package/dist/commonjs/features/fluency/hooks/useFluencyNumpad.js +59 -73
  61. package/dist/commonjs/features/fluency/hooks/useFluencyNumpad.js.map +1 -1
  62. package/dist/commonjs/features/fluency/hooks/useFluencySolvingPreset.js +57 -0
  63. package/dist/commonjs/features/fluency/hooks/useFluencySolvingPreset.js.map +1 -0
  64. package/dist/commonjs/features/fluency/hooks/usePreventWebKeys.js +26 -0
  65. package/dist/commonjs/features/fluency/hooks/usePreventWebKeys.js.map +1 -0
  66. package/dist/commonjs/features/fluency/model/FluencyMatrixModel.js +0 -1
  67. package/dist/commonjs/features/fluency/model/FluencyMatrixModel.js.map +1 -1
  68. package/dist/commonjs/features/fluency/model/FluencyModel.js +31 -1
  69. package/dist/commonjs/features/fluency/model/FluencyModel.js.map +1 -1
  70. package/dist/commonjs/features/fluency/model/FluencySolvingModel.js +129 -46
  71. package/dist/commonjs/features/fluency/model/FluencySolvingModel.js.map +1 -1
  72. package/dist/module/features/fluency/assets/FlameIcon.js +22 -0
  73. package/dist/module/features/fluency/assets/FlameIcon.js.map +1 -0
  74. package/dist/module/features/fluency/assets/FlashIcon.js +22 -0
  75. package/dist/module/features/fluency/assets/FlashIcon.js.map +1 -0
  76. package/dist/module/features/fluency/assets/SnurrisnurrBg.js +224 -0
  77. package/dist/module/features/fluency/assets/SnurrisnurrBg.js.map +1 -0
  78. package/dist/module/features/fluency/assets/StarFillIcon.js +5 -3
  79. package/dist/module/features/fluency/assets/StarFillIcon.js.map +1 -1
  80. package/dist/module/features/fluency/assets/TrophyBg.js +33 -0
  81. package/dist/module/features/fluency/assets/TrophyBg.js.map +1 -0
  82. package/dist/module/features/fluency/components/Fluency.js +2 -2
  83. package/dist/module/features/fluency/components/Fluency.js.map +1 -1
  84. package/dist/module/features/fluency/components/FluencySolving.js +14 -10
  85. package/dist/module/features/fluency/components/FluencySolving.js.map +1 -1
  86. package/dist/module/features/fluency/components/day-streak-counter/DayStreakCounter.js +4 -4
  87. package/dist/module/features/fluency/components/day-streak-counter/DayStreakCounter.js.map +1 -1
  88. package/dist/module/features/fluency/components/fluency-solving/components/EquationContent.js +53 -14
  89. package/dist/module/features/fluency/components/fluency-solving/components/EquationContent.js.map +1 -1
  90. package/dist/module/features/fluency/components/fluency-solving/components/FluencyEquationCard.js +8 -2
  91. package/dist/module/features/fluency/components/fluency-solving/components/FluencyEquationCard.js.map +1 -1
  92. package/dist/module/features/fluency/components/fluency-solving/components/FluencyNumpad.js +2 -2
  93. package/dist/module/features/fluency/components/fluency-solving/components/FluencyNumpad.js.map +1 -1
  94. package/dist/module/features/fluency/components/fluency-solving/components/FluencySolvingCard.js +3 -31
  95. package/dist/module/features/fluency/components/fluency-solving/components/FluencySolvingCard.js.map +1 -1
  96. package/dist/module/features/fluency/components/fluency-solving/components/FluencySolvingHeader.js +14 -7
  97. package/dist/module/features/fluency/components/fluency-solving/components/FluencySolvingHeader.js.map +1 -1
  98. package/dist/module/features/fluency/components/fluency-solving/components/FluencySolvingProgress.js +5 -3
  99. package/dist/module/features/fluency/components/fluency-solving/components/FluencySolvingProgress.js.map +1 -1
  100. package/dist/module/features/fluency/components/fluency-solving/fluencySolving.helpers.js +38 -14
  101. package/dist/module/features/fluency/components/fluency-solving/fluencySolving.helpers.js.map +1 -1
  102. package/dist/module/features/fluency/components/fluency-solving/fluencySolving.types.js +2 -0
  103. package/dist/module/features/fluency/components/matrix/components/CellTooltip.js +50 -0
  104. package/dist/module/features/fluency/components/matrix/components/CellTooltip.js.map +1 -0
  105. package/dist/module/features/fluency/components/matrix/components/MatrixCell.js +45 -30
  106. package/dist/module/features/fluency/components/matrix/components/MatrixCell.js.map +1 -1
  107. package/dist/module/features/fluency/components/matrix/components/MatrixFill.js +10 -4
  108. package/dist/module/features/fluency/components/matrix/components/MatrixFill.js.map +1 -1
  109. package/dist/module/features/fluency/components/matrix/components/MatrixLegend.js +7 -1
  110. package/dist/module/features/fluency/components/matrix/components/MatrixLegend.js.map +1 -1
  111. package/dist/module/features/fluency/components/select-math-operator/ProgressBar.js +1 -57
  112. package/dist/module/features/fluency/components/select-math-operator/ProgressBar.js.map +1 -1
  113. package/dist/module/features/fluency/components/select-math-operator/SelectMathOperator.js +14 -6
  114. package/dist/module/features/fluency/components/select-math-operator/SelectMathOperator.js.map +1 -1
  115. package/dist/module/features/fluency/components/session-results/FluencySessionResults.js +145 -132
  116. package/dist/module/features/fluency/components/session-results/FluencySessionResults.js.map +1 -1
  117. package/dist/module/features/fluency/components/session-results/SessionStatCard.js +42 -64
  118. package/dist/module/features/fluency/components/session-results/SessionStatCard.js.map +1 -1
  119. package/dist/module/features/fluency/components/start-banner/BannerFlashcards.js +29 -29
  120. package/dist/module/features/fluency/components/start-banner/BannerFlashcards.js.map +1 -1
  121. package/dist/module/features/fluency/components/start-banner/MathFlashcard.js +2 -1
  122. package/dist/module/features/fluency/components/start-banner/MathFlashcard.js.map +1 -1
  123. package/dist/module/features/fluency/components/start-banner/StartBanner.js +38 -11
  124. package/dist/module/features/fluency/components/start-banner/StartBanner.js.map +1 -1
  125. package/dist/module/features/fluency/fluency.constants.js +15 -6
  126. package/dist/module/features/fluency/fluency.constants.js.map +1 -1
  127. package/dist/module/features/fluency/fluency.helpers.js +9 -8
  128. package/dist/module/features/fluency/fluency.helpers.js.map +1 -1
  129. package/dist/module/features/fluency/hooks/useFluencyModePreset.js +1 -1
  130. package/dist/module/features/fluency/hooks/useFluencyModePreset.js.map +1 -1
  131. package/dist/module/features/fluency/hooks/useFluencyNumpad.js +61 -74
  132. package/dist/module/features/fluency/hooks/useFluencyNumpad.js.map +1 -1
  133. package/dist/module/features/fluency/hooks/useFluencySolvingPreset.js +52 -0
  134. package/dist/module/features/fluency/hooks/useFluencySolvingPreset.js.map +1 -0
  135. package/dist/module/features/fluency/hooks/usePreventWebKeys.js +21 -0
  136. package/dist/module/features/fluency/hooks/usePreventWebKeys.js.map +1 -0
  137. package/dist/module/features/fluency/model/FluencyMatrixModel.js +0 -1
  138. package/dist/module/features/fluency/model/FluencyMatrixModel.js.map +1 -1
  139. package/dist/module/features/fluency/model/FluencyModel.js +32 -2
  140. package/dist/module/features/fluency/model/FluencyModel.js.map +1 -1
  141. package/dist/module/features/fluency/model/FluencySolvingModel.js +131 -48
  142. package/dist/module/features/fluency/model/FluencySolvingModel.js.map +1 -1
  143. package/dist/typescript/commonjs/features/fluency/assets/FlameIcon.d.ts +4 -0
  144. package/dist/typescript/commonjs/features/fluency/assets/FlameIcon.d.ts.map +1 -0
  145. package/dist/typescript/commonjs/features/fluency/assets/FlashIcon.d.ts +4 -0
  146. package/dist/typescript/commonjs/features/fluency/assets/FlashIcon.d.ts.map +1 -0
  147. package/dist/typescript/commonjs/features/fluency/assets/SnurrisnurrBg.d.ts +3 -0
  148. package/dist/typescript/commonjs/features/fluency/assets/SnurrisnurrBg.d.ts.map +1 -0
  149. package/dist/typescript/commonjs/features/fluency/assets/StarFillIcon.d.ts +5 -1
  150. package/dist/typescript/commonjs/features/fluency/assets/StarFillIcon.d.ts.map +1 -1
  151. package/dist/typescript/commonjs/features/fluency/assets/TrophyBg.d.ts +3 -0
  152. package/dist/typescript/commonjs/features/fluency/assets/TrophyBg.d.ts.map +1 -0
  153. package/dist/typescript/commonjs/features/fluency/components/Fluency.d.ts +3 -2
  154. package/dist/typescript/commonjs/features/fluency/components/Fluency.d.ts.map +1 -1
  155. package/dist/typescript/commonjs/features/fluency/components/FluencySolving.d.ts.map +1 -1
  156. package/dist/typescript/commonjs/features/fluency/components/day-streak-counter/DayStreakCounter.d.ts.map +1 -1
  157. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/EquationContent.d.ts +4 -2
  158. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/EquationContent.d.ts.map +1 -1
  159. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencyEquationCard.d.ts.map +1 -1
  160. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencyNumpad.d.ts +2 -2
  161. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencyNumpad.d.ts.map +1 -1
  162. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingCard.d.ts.map +1 -1
  163. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingHeader.d.ts.map +1 -1
  164. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingProgress.d.ts.map +1 -1
  165. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/fluencySolving.helpers.d.ts +3 -1
  166. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/fluencySolving.helpers.d.ts.map +1 -1
  167. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/fluencySolving.types.d.ts +11 -1
  168. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/fluencySolving.types.d.ts.map +1 -1
  169. package/dist/typescript/commonjs/features/fluency/components/matrix/components/CellTooltip.d.ts +7 -0
  170. package/dist/typescript/commonjs/features/fluency/components/matrix/components/CellTooltip.d.ts.map +1 -0
  171. package/dist/typescript/commonjs/features/fluency/components/matrix/components/MatrixCell.d.ts +4 -2
  172. package/dist/typescript/commonjs/features/fluency/components/matrix/components/MatrixCell.d.ts.map +1 -1
  173. package/dist/typescript/commonjs/features/fluency/components/matrix/components/MatrixFill.d.ts.map +1 -1
  174. package/dist/typescript/commonjs/features/fluency/components/matrix/components/MatrixLegend.d.ts.map +1 -1
  175. package/dist/typescript/commonjs/features/fluency/components/select-math-operator/ProgressBar.d.ts.map +1 -1
  176. package/dist/typescript/commonjs/features/fluency/components/select-math-operator/SelectMathOperator.d.ts.map +1 -1
  177. package/dist/typescript/commonjs/features/fluency/components/session-results/FluencySessionResults.d.ts +3 -5
  178. package/dist/typescript/commonjs/features/fluency/components/session-results/FluencySessionResults.d.ts.map +1 -1
  179. package/dist/typescript/commonjs/features/fluency/components/session-results/SessionStatCard.d.ts +5 -4
  180. package/dist/typescript/commonjs/features/fluency/components/session-results/SessionStatCard.d.ts.map +1 -1
  181. package/dist/typescript/commonjs/features/fluency/components/start-banner/StartBanner.d.ts.map +1 -1
  182. package/dist/typescript/commonjs/features/fluency/fluency.constants.d.ts +9 -0
  183. package/dist/typescript/commonjs/features/fluency/fluency.constants.d.ts.map +1 -1
  184. package/dist/typescript/commonjs/features/fluency/fluency.helpers.d.ts +2 -5
  185. package/dist/typescript/commonjs/features/fluency/fluency.helpers.d.ts.map +1 -1
  186. package/dist/typescript/commonjs/features/fluency/fluency.types.d.ts +21 -12
  187. package/dist/typescript/commonjs/features/fluency/fluency.types.d.ts.map +1 -1
  188. package/dist/typescript/commonjs/features/fluency/hooks/useFluencyModePreset.d.ts +1 -5
  189. package/dist/typescript/commonjs/features/fluency/hooks/useFluencyModePreset.d.ts.map +1 -1
  190. package/dist/typescript/commonjs/features/fluency/hooks/useFluencyNumpad.d.ts +14 -14
  191. package/dist/typescript/commonjs/features/fluency/hooks/useFluencyNumpad.d.ts.map +1 -1
  192. package/dist/typescript/commonjs/features/fluency/hooks/useFluencySolvingPreset.d.ts +22 -0
  193. package/dist/typescript/commonjs/features/fluency/hooks/useFluencySolvingPreset.d.ts.map +1 -0
  194. package/dist/typescript/commonjs/features/fluency/hooks/usePreventWebKeys.d.ts +9 -0
  195. package/dist/typescript/commonjs/features/fluency/hooks/usePreventWebKeys.d.ts.map +1 -0
  196. package/dist/typescript/commonjs/features/fluency/model/FluencyMatrixModel.d.ts +0 -1
  197. package/dist/typescript/commonjs/features/fluency/model/FluencyMatrixModel.d.ts.map +1 -1
  198. package/dist/typescript/commonjs/features/fluency/model/FluencyModel.d.ts +2 -1
  199. package/dist/typescript/commonjs/features/fluency/model/FluencyModel.d.ts.map +1 -1
  200. package/dist/typescript/commonjs/features/fluency/model/FluencySolvingModel.d.ts +18 -12
  201. package/dist/typescript/commonjs/features/fluency/model/FluencySolvingModel.d.ts.map +1 -1
  202. package/dist/typescript/module/features/fluency/assets/FlameIcon.d.ts +4 -0
  203. package/dist/typescript/module/features/fluency/assets/FlameIcon.d.ts.map +1 -0
  204. package/dist/typescript/module/features/fluency/assets/FlashIcon.d.ts +4 -0
  205. package/dist/typescript/module/features/fluency/assets/FlashIcon.d.ts.map +1 -0
  206. package/dist/typescript/module/features/fluency/assets/SnurrisnurrBg.d.ts +3 -0
  207. package/dist/typescript/module/features/fluency/assets/SnurrisnurrBg.d.ts.map +1 -0
  208. package/dist/typescript/module/features/fluency/assets/StarFillIcon.d.ts +5 -1
  209. package/dist/typescript/module/features/fluency/assets/StarFillIcon.d.ts.map +1 -1
  210. package/dist/typescript/module/features/fluency/assets/TrophyBg.d.ts +3 -0
  211. package/dist/typescript/module/features/fluency/assets/TrophyBg.d.ts.map +1 -0
  212. package/dist/typescript/module/features/fluency/components/Fluency.d.ts +3 -2
  213. package/dist/typescript/module/features/fluency/components/Fluency.d.ts.map +1 -1
  214. package/dist/typescript/module/features/fluency/components/FluencySolving.d.ts.map +1 -1
  215. package/dist/typescript/module/features/fluency/components/day-streak-counter/DayStreakCounter.d.ts.map +1 -1
  216. package/dist/typescript/module/features/fluency/components/fluency-solving/components/EquationContent.d.ts +4 -2
  217. package/dist/typescript/module/features/fluency/components/fluency-solving/components/EquationContent.d.ts.map +1 -1
  218. package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencyEquationCard.d.ts.map +1 -1
  219. package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencyNumpad.d.ts +2 -2
  220. package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencyNumpad.d.ts.map +1 -1
  221. package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencySolvingCard.d.ts.map +1 -1
  222. package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencySolvingHeader.d.ts.map +1 -1
  223. package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencySolvingProgress.d.ts.map +1 -1
  224. package/dist/typescript/module/features/fluency/components/fluency-solving/fluencySolving.helpers.d.ts +3 -1
  225. package/dist/typescript/module/features/fluency/components/fluency-solving/fluencySolving.helpers.d.ts.map +1 -1
  226. package/dist/typescript/module/features/fluency/components/fluency-solving/fluencySolving.types.d.ts +11 -1
  227. package/dist/typescript/module/features/fluency/components/fluency-solving/fluencySolving.types.d.ts.map +1 -1
  228. package/dist/typescript/module/features/fluency/components/matrix/components/CellTooltip.d.ts +7 -0
  229. package/dist/typescript/module/features/fluency/components/matrix/components/CellTooltip.d.ts.map +1 -0
  230. package/dist/typescript/module/features/fluency/components/matrix/components/MatrixCell.d.ts +4 -2
  231. package/dist/typescript/module/features/fluency/components/matrix/components/MatrixCell.d.ts.map +1 -1
  232. package/dist/typescript/module/features/fluency/components/matrix/components/MatrixFill.d.ts.map +1 -1
  233. package/dist/typescript/module/features/fluency/components/matrix/components/MatrixLegend.d.ts.map +1 -1
  234. package/dist/typescript/module/features/fluency/components/select-math-operator/ProgressBar.d.ts.map +1 -1
  235. package/dist/typescript/module/features/fluency/components/select-math-operator/SelectMathOperator.d.ts.map +1 -1
  236. package/dist/typescript/module/features/fluency/components/session-results/FluencySessionResults.d.ts +3 -5
  237. package/dist/typescript/module/features/fluency/components/session-results/FluencySessionResults.d.ts.map +1 -1
  238. package/dist/typescript/module/features/fluency/components/session-results/SessionStatCard.d.ts +5 -4
  239. package/dist/typescript/module/features/fluency/components/session-results/SessionStatCard.d.ts.map +1 -1
  240. package/dist/typescript/module/features/fluency/components/start-banner/StartBanner.d.ts.map +1 -1
  241. package/dist/typescript/module/features/fluency/fluency.constants.d.ts +9 -0
  242. package/dist/typescript/module/features/fluency/fluency.constants.d.ts.map +1 -1
  243. package/dist/typescript/module/features/fluency/fluency.helpers.d.ts +2 -5
  244. package/dist/typescript/module/features/fluency/fluency.helpers.d.ts.map +1 -1
  245. package/dist/typescript/module/features/fluency/fluency.types.d.ts +21 -12
  246. package/dist/typescript/module/features/fluency/fluency.types.d.ts.map +1 -1
  247. package/dist/typescript/module/features/fluency/hooks/useFluencyModePreset.d.ts +1 -5
  248. package/dist/typescript/module/features/fluency/hooks/useFluencyModePreset.d.ts.map +1 -1
  249. package/dist/typescript/module/features/fluency/hooks/useFluencyNumpad.d.ts +14 -14
  250. package/dist/typescript/module/features/fluency/hooks/useFluencyNumpad.d.ts.map +1 -1
  251. package/dist/typescript/module/features/fluency/hooks/useFluencySolvingPreset.d.ts +22 -0
  252. package/dist/typescript/module/features/fluency/hooks/useFluencySolvingPreset.d.ts.map +1 -0
  253. package/dist/typescript/module/features/fluency/hooks/usePreventWebKeys.d.ts +9 -0
  254. package/dist/typescript/module/features/fluency/hooks/usePreventWebKeys.d.ts.map +1 -0
  255. package/dist/typescript/module/features/fluency/model/FluencyMatrixModel.d.ts +0 -1
  256. package/dist/typescript/module/features/fluency/model/FluencyMatrixModel.d.ts.map +1 -1
  257. package/dist/typescript/module/features/fluency/model/FluencyModel.d.ts +2 -1
  258. package/dist/typescript/module/features/fluency/model/FluencyModel.d.ts.map +1 -1
  259. package/dist/typescript/module/features/fluency/model/FluencySolvingModel.d.ts +18 -12
  260. package/dist/typescript/module/features/fluency/model/FluencySolvingModel.d.ts.map +1 -1
  261. package/package.json +3 -1
  262. package/src/features/fluency/assets/FlameIcon.tsx +14 -0
  263. package/src/features/fluency/assets/FlashIcon.tsx +14 -0
  264. package/src/features/fluency/assets/SnurrisnurrBg.tsx +193 -0
  265. package/src/features/fluency/assets/StarFillIcon.tsx +7 -3
  266. package/src/features/fluency/assets/TrophyBg.tsx +32 -0
  267. package/src/features/fluency/components/Fluency.tsx +4 -3
  268. package/src/features/fluency/components/FluencySolving.tsx +15 -9
  269. package/src/features/fluency/components/day-streak-counter/DayStreakCounter.tsx +6 -6
  270. package/src/features/fluency/components/fluency-solving/components/EquationContent.tsx +51 -13
  271. package/src/features/fluency/components/fluency-solving/components/FluencyEquationCard.tsx +12 -2
  272. package/src/features/fluency/components/fluency-solving/components/FluencyNumpad.tsx +3 -3
  273. package/src/features/fluency/components/fluency-solving/components/FluencySolvingCard.tsx +3 -36
  274. package/src/features/fluency/components/fluency-solving/components/FluencySolvingHeader.tsx +13 -4
  275. package/src/features/fluency/components/fluency-solving/components/FluencySolvingProgress.tsx +8 -4
  276. package/src/features/fluency/components/fluency-solving/fluencySolving.helpers.ts +40 -16
  277. package/src/features/fluency/components/fluency-solving/fluencySolving.types.ts +12 -1
  278. package/src/features/fluency/components/matrix/components/CellTooltip.tsx +46 -0
  279. package/src/features/fluency/components/matrix/components/MatrixCell.tsx +47 -28
  280. package/src/features/fluency/components/matrix/components/MatrixFill.tsx +16 -3
  281. package/src/features/fluency/components/matrix/components/MatrixLegend.tsx +7 -2
  282. package/src/features/fluency/components/select-math-operator/ProgressBar.tsx +1 -66
  283. package/src/features/fluency/components/select-math-operator/SelectMathOperator.tsx +25 -5
  284. package/src/features/fluency/components/session-results/FluencySessionResults.tsx +127 -147
  285. package/src/features/fluency/components/session-results/SessionStatCard.tsx +35 -77
  286. package/src/features/fluency/components/start-banner/BannerFlashcards.tsx +15 -15
  287. package/src/features/fluency/components/start-banner/MathFlashcard.tsx +2 -1
  288. package/src/features/fluency/components/start-banner/StartBanner.tsx +38 -10
  289. package/src/features/fluency/fluency.constants.ts +15 -6
  290. package/src/features/fluency/fluency.helpers.ts +11 -10
  291. package/src/features/fluency/fluency.types.ts +28 -7
  292. package/src/features/fluency/hooks/useFluencyModePreset.ts +2 -3
  293. package/src/features/fluency/hooks/useFluencyNumpad.tsx +61 -80
  294. package/src/features/fluency/hooks/useFluencySolvingPreset.ts +49 -0
  295. package/src/features/fluency/hooks/usePreventWebKeys.ts +24 -0
  296. package/src/features/fluency/model/FluencyMatrixModel.ts +1 -1
  297. package/src/features/fluency/model/FluencyModel.ts +35 -3
  298. package/src/features/fluency/model/FluencySolvingModel.ts +170 -57
  299. package/dist/commonjs/features/fluency/assets/SpringIcon.js.map +0 -1
  300. package/dist/module/features/fluency/assets/SpringIcon.js +0 -22
  301. package/dist/module/features/fluency/assets/SpringIcon.js.map +0 -1
  302. package/dist/typescript/commonjs/features/fluency/assets/SpringIcon.d.ts +0 -3
  303. package/dist/typescript/commonjs/features/fluency/assets/SpringIcon.d.ts.map +0 -1
  304. package/dist/typescript/module/features/fluency/assets/SpringIcon.d.ts +0 -3
  305. package/dist/typescript/module/features/fluency/assets/SpringIcon.d.ts.map +0 -1
  306. package/src/features/fluency/assets/SpringIcon.tsx +0 -17
@@ -4,19 +4,30 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.EquationContent = 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
- var _useFluencyModePreset = require("../../../hooks/useFluencyModePreset.js");
10
+ var _useFluencySolvingPreset = require("../../../hooks/useFluencySolvingPreset.js");
11
+ var _usePreventWebKeys = require("../../../hooks/usePreventWebKeys.js");
12
+ var _fluencyConstants = require("../../../fluency.constants.js");
11
13
  var _jsxRuntime = require("react/jsx-runtime");
12
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
+ 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); }
15
+ 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; }
16
+ const CURSOR_MOVE_KEYS = ['ArrowLeft', 'ArrowRight', 'Home', 'End'];
13
17
  const EquationContent = ({
14
18
  leftOperand,
15
19
  rightOperand,
16
- input = ''
20
+ value = '',
21
+ readOnly = false,
22
+ onChange
17
23
  }) => {
18
- const modePreset = (0, _useFluencyModePreset.useFluencyModePreset)();
19
- const OperatorIcon = modePreset.icon;
24
+ const modePreset = (0, _useFluencySolvingPreset.useFluencySolvingPreset)();
25
+ const inputRef = (0, _react.useRef)(null);
26
+ (0, _usePreventWebKeys.usePreventWebKeys)({
27
+ ref: inputRef,
28
+ keys: CURSOR_MOVE_KEYS,
29
+ enabled: !readOnly
30
+ });
20
31
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
21
32
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Typography, {
22
33
  variant: _reactNativeUi.HeadingVariants.H9,
@@ -27,9 +38,11 @@ const EquationContent = ({
27
38
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Typography, {
28
39
  style: styles.number,
29
40
  children: leftOperand
30
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(OperatorIcon, {
31
- color: modePreset.colors.accent,
32
- size: 36
41
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Typography, {
42
+ style: [styles.number, {
43
+ color: modePreset.colors.accent
44
+ }],
45
+ children: modePreset.symbol
33
46
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Typography, {
34
47
  style: styles.number,
35
48
  children: rightOperand
@@ -37,12 +50,27 @@ const EquationContent = ({
37
50
  style: styles.equals,
38
51
  children: "="
39
52
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
40
- style: styles.answerBox,
41
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Typography, {
42
- style: [styles.number, styles.answerText, {
53
+ style: [styles.answerBox, value.length > 0 && {
54
+ borderBottomColor: modePreset.colors.accent
55
+ }],
56
+ children: !readOnly ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TextInput, {
57
+ ref: inputRef,
58
+ value: value,
59
+ onChangeText: onChange,
60
+ keyboardType: "number-pad",
61
+ maxLength: _fluencyConstants.MAX_INPUT_LENGTH,
62
+ selection: {
63
+ start: value.length,
64
+ end: value.length
65
+ },
66
+ style: [styles.number, styles.answerInput, {
43
67
  color: modePreset.colors.accent
44
68
  }],
45
- children: input
69
+ autoFocus: true
70
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Typography, {
71
+ style: [styles.number, styles.answerText, {
72
+ color: modePreset.colors.accent
73
+ }]
46
74
  })
47
75
  })]
48
76
  })]
@@ -76,7 +104,7 @@ const styles = _reactNative.StyleSheet.create({
76
104
  fontFamily: _reactNativeUi.FONT_FAMILY.buenosAires
77
105
  },
78
106
  answerBox: {
79
- width: 100,
107
+ width: 110,
80
108
  height: 44,
81
109
  alignItems: 'center',
82
110
  borderBottomWidth: 8,
@@ -84,6 +112,18 @@ const styles = _reactNative.StyleSheet.create({
84
112
  },
85
113
  answerText: {
86
114
  position: 'absolute'
115
+ },
116
+ answerInput: {
117
+ position: 'absolute',
118
+ bottom: -_reactNativeUi.SPACING[400],
119
+ textAlign: 'center',
120
+ width: '100%',
121
+ borderWidth: 0,
122
+ backgroundColor: 'transparent',
123
+ ...(_reactNative.Platform.OS === 'web' && {
124
+ outlineStyle: 'none',
125
+ caretColor: 'transparent'
126
+ })
87
127
  }
88
128
  });
89
129
  //# sourceMappingURL=EquationContent.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeUi","_useFluencyModePreset","_jsxRuntime","e","__esModule","default","EquationContent","leftOperand","rightOperand","input","modePreset","useFluencyModePreset","OperatorIcon","icon","jsxs","Fragment","children","jsx","Typography","variant","HeadingVariants","H9","style","styles","cardLabel","View","equationRow","number","color","colors","accent","size","equals","answerBox","answerText","exports","StyleSheet","create","fontSize","fontWeight","letterSpacing","marginBottom","SPACING","COLORS","NEUTRAL_7","flexDirection","alignItems","gap","marginTop","NEUTRAL_10","fontFamily","FONT_FAMILY","buenosAires","width","height","borderBottomWidth","borderBottomColor","position"],"sourceRoot":"../../../../../../../src","sources":["features/fluency/components/fluency-solving/components/EquationContent.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeUi","_useFluencySolvingPreset","_usePreventWebKeys","_fluencyConstants","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","CURSOR_MOVE_KEYS","EquationContent","leftOperand","rightOperand","value","readOnly","onChange","modePreset","useFluencySolvingPreset","inputRef","useRef","usePreventWebKeys","ref","keys","enabled","jsxs","Fragment","children","jsx","Typography","variant","HeadingVariants","H9","style","styles","cardLabel","View","equationRow","number","color","colors","accent","symbol","equals","answerBox","length","borderBottomColor","TextInput","onChangeText","keyboardType","maxLength","MAX_INPUT_LENGTH","selection","start","end","answerInput","autoFocus","answerText","exports","StyleSheet","create","fontSize","fontWeight","letterSpacing","marginBottom","SPACING","COLORS","NEUTRAL_7","flexDirection","alignItems","gap","marginTop","NEUTRAL_10","fontFamily","FONT_FAMILY","buenosAires","width","height","borderBottomWidth","position","bottom","textAlign","borderWidth","backgroundColor","Platform","OS","outlineStyle","caretColor"],"sourceRoot":"../../../../../../../src","sources":["features/fluency/components/fluency-solving/components/EquationContent.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AAOA,IAAAG,wBAAA,GAAAH,OAAA;AACA,IAAAI,kBAAA,GAAAJ,OAAA;AACA,IAAAK,iBAAA,GAAAL,OAAA;AAA6D,IAAAM,WAAA,GAAAN,OAAA;AAAA,SAAAO,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAT,wBAAAS,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAE7D,MAAMW,gBAAgB,GAAG,CAAC,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC;AAU5D,MAAMC,eAAe,GAAGA,CAAC;EAC9BC,WAAW;EACXC,YAAY;EACZC,KAAK,GAAG,EAAE;EACVC,QAAQ,GAAG,KAAK;EAChBC;AACoB,CAAC,KAAK;EAC1B,MAAMC,UAAU,GAAG,IAAAC,gDAAuB,EAAC,CAAC;EAE5C,MAAMC,QAAQ,GAAG,IAAAC,aAAM,EAAY,IAAI,CAAC;EACxC,IAAAC,oCAAiB,EAAC;IAAEC,GAAG,EAAEH,QAAQ;IAAEI,IAAI,EAAEb,gBAAgB;IAAEc,OAAO,EAAE,CAACT;EAAS,CAAC,CAAC;EAEhF,oBACE,IAAA1B,WAAA,CAAAoC,IAAA,EAAApC,WAAA,CAAAqC,QAAA;IAAAC,QAAA,gBACE,IAAAtC,WAAA,CAAAuC,GAAA,EAAC3C,cAAA,CAAA4C,UAAU;MAACC,OAAO,EAAEC,8BAAe,CAACC,EAAG;MAACC,KAAK,EAAEC,MAAM,CAACC,SAAU;MAAAR,QAAA,EAAC;IAElE,CAAY,CAAC,eACb,IAAAtC,WAAA,CAAAoC,IAAA,EAACzC,YAAA,CAAAoD,IAAI;MAACH,KAAK,EAAEC,MAAM,CAACG,WAAY;MAAAV,QAAA,gBAC9B,IAAAtC,WAAA,CAAAuC,GAAA,EAAC3C,cAAA,CAAA4C,UAAU;QAACI,KAAK,EAAEC,MAAM,CAACI,MAAO;QAAAX,QAAA,EAAEf;MAAW,CAAa,CAAC,eAC5D,IAAAvB,WAAA,CAAAuC,GAAA,EAAC3C,cAAA,CAAA4C,UAAU;QAACI,KAAK,EAAE,CAACC,MAAM,CAACI,MAAM,EAAE;UAAEC,KAAK,EAAEtB,UAAU,CAACuB,MAAM,CAACC;QAAO,CAAC,CAAE;QAAAd,QAAA,EACrEV,UAAU,CAACyB;MAAM,CACR,CAAC,eACb,IAAArD,WAAA,CAAAuC,GAAA,EAAC3C,cAAA,CAAA4C,UAAU;QAACI,KAAK,EAAEC,MAAM,CAACI,MAAO;QAAAX,QAAA,EAAEd;MAAY,CAAa,CAAC,eAC7D,IAAAxB,WAAA,CAAAuC,GAAA,EAAC3C,cAAA,CAAA4C,UAAU;QAACI,KAAK,EAAEC,MAAM,CAACS,MAAO;QAAAhB,QAAA,EAAC;MAAC,CAAY,CAAC,eAChD,IAAAtC,WAAA,CAAAuC,GAAA,EAAC5C,YAAA,CAAAoD,IAAI;QAACH,KAAK,EAAE,CAACC,MAAM,CAACU,SAAS,EAAE9B,KAAK,CAAC+B,MAAM,GAAG,CAAC,IAAI;UAAEC,iBAAiB,EAAE7B,UAAU,CAACuB,MAAM,CAACC;QAAO,CAAC,CAAE;QAAAd,QAAA,EAClG,CAACZ,QAAQ,gBACR,IAAA1B,WAAA,CAAAuC,GAAA,EAAC5C,YAAA,CAAA+D,SAAS;UACRzB,GAAG,EAAEH,QAAS;UACdL,KAAK,EAAEA,KAAM;UACbkC,YAAY,EAAEhC,QAAS;UACvBiC,YAAY,EAAC,YAAY;UACzBC,SAAS,EAAEC,kCAAiB;UAC5BC,SAAS,EAAE;YAAEC,KAAK,EAAEvC,KAAK,CAAC+B,MAAM;YAAES,GAAG,EAAExC,KAAK,CAAC+B;UAAO,CAAE;UACtDZ,KAAK,EAAE,CAACC,MAAM,CAACI,MAAM,EAAEJ,MAAM,CAACqB,WAAW,EAAE;YAAEhB,KAAK,EAAEtB,UAAU,CAACuB,MAAM,CAACC;UAAO,CAAC,CAAE;UAChFe,SAAS;QAAA,CACV,CAAC,gBAEF,IAAAnE,WAAA,CAAAuC,GAAA,EAAC3C,cAAA,CAAA4C,UAAU;UACTI,KAAK,EAAE,CAACC,MAAM,CAACI,MAAM,EAAEJ,MAAM,CAACuB,UAAU,EAAE;YAAElB,KAAK,EAAEtB,UAAU,CAACuB,MAAM,CAACC;UAAO,CAAC;QAAE,CAChF;MACF,CACG,CAAC;IAAA,CACH,CAAC;EAAA,CACP,CAAC;AAEP,CAAC;AAAAiB,OAAA,CAAA/C,eAAA,GAAAA,eAAA;AAED,MAAMuB,MAAM,GAAGyB,uBAAU,CAACC,MAAM,CAAC;EAC/BzB,SAAS,EAAE;IACT0B,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBC,aAAa,EAAE,GAAG;IAClBC,YAAY,EAAEC,sBAAO,CAAC,GAAG,CAAC;IAC1B1B,KAAK,EAAE2B,qBAAM,CAACC;EAChB,CAAC;EACD9B,WAAW,EAAE;IACX+B,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAEL,sBAAO,CAAC,GAAG,CAAC;IACjBM,SAAS,EAAEN,sBAAO,CAAC,GAAG;EACxB,CAAC;EACD3B,MAAM,EAAE;IACNuB,QAAQ,EAAE,EAAE;IACZtB,KAAK,EAAE2B,qBAAM,CAACM,UAAU;IACxBV,UAAU,EAAE,KAAK;IACjBW,UAAU,EAAEC,0BAAW,CAACC;EAC1B,CAAC;EACDhC,MAAM,EAAE;IACNkB,QAAQ,EAAE,EAAE;IACZtB,KAAK,EAAE2B,qBAAM,CAACC,SAAS;IACvBL,UAAU,EAAE,KAAK;IACjBW,UAAU,EAAEC,0BAAW,CAACC;EAC1B,CAAC;EACD/B,SAAS,EAAE;IACTgC,KAAK,EAAE,GAAG;IACVC,MAAM,EAAE,EAAE;IACVR,UAAU,EAAE,QAAQ;IACpBS,iBAAiB,EAAE,CAAC;IACpBhC,iBAAiB,EAAEoB,qBAAM,CAACM;EAC5B,CAAC;EACDf,UAAU,EAAE;IACVsB,QAAQ,EAAE;EACZ,CAAC;EACDxB,WAAW,EAAE;IACXwB,QAAQ,EAAE,UAAU;IACpBC,MAAM,EAAE,CAACf,sBAAO,CAAC,GAAG,CAAC;IACrBgB,SAAS,EAAE,QAAQ;IACnBL,KAAK,EAAE,MAAM;IACbM,WAAW,EAAE,CAAC;IACdC,eAAe,EAAE,aAAa;IAC9B,IAAIC,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAI;MAAEC,YAAY,EAAE,MAAM;MAAEC,UAAU,EAAE;IAAc,CAAC;EAClF;AACF,CAAC,CAAC","ignoreList":[]}
@@ -28,6 +28,10 @@ const FluencyEquationCard = ({
28
28
  });
29
29
  const left = fact?.numbers[0] ?? 0;
30
30
  const right = fact?.numbers[1] ?? 0;
31
+ const updateAnswer = text => {
32
+ const digits = text.replace(/\D/g, '');
33
+ model.solving.setAnswer(digits || null);
34
+ };
31
35
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
32
36
  style: styles.stack,
33
37
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
@@ -38,14 +42,16 @@ const FluencyEquationCard = ({
38
42
  style: [styles.card, styles.cardNear, animationStyles.near],
39
43
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_EquationContent.EquationContent, {
40
44
  leftOperand: left,
41
- rightOperand: right
45
+ rightOperand: right,
46
+ readOnly: true
42
47
  })
43
48
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
44
49
  style: [styles.card, styles.cardFront, animationStyles.front],
45
50
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_EquationContent.EquationContent, {
46
51
  leftOperand: left,
47
52
  rightOperand: right,
48
- input: answer?.toString() ?? ''
53
+ value: answer ?? '',
54
+ onChange: updateAnswer
49
55
  })
50
56
  })]
51
57
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_effectorReact","_reactNative","_reactNativeReanimated","_reactNativeUi","_EquationContent","_FluencyContext","_jsxRuntime","e","__esModule","default","FluencyEquationCard","animationStyles","model","useFluency","answer","fact","useUnit","solving","$answer","$current","left","numbers","right","jsxs","View","style","styles","stack","children","jsx","card","cardFar","far","cardMid","mid","cardNear","near","EquationContent","leftOperand","rightOperand","cardFront","front","input","toString","exports","StyleSheet","create","width","maxWidth","height","borderRadius","BORDER_RADIUS","backgroundColor","COLORS","NEUTRAL_1","SHADOWS","position","top","opacity","alignItems","justifyContent"],"sourceRoot":"../../../../../../../src","sources":["features/fluency/components/fluency-solving/components/FluencyEquationCard.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AACA,IAAAG,sBAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AACA,IAAAK,gBAAA,GAAAL,OAAA;AACA,IAAAM,eAAA,GAAAN,OAAA;AAA4D,IAAAO,WAAA,GAAAP,OAAA;AAAA,SAAAD,uBAAAS,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAOrD,MAAMG,mBAAmB,GAAGA,CAAC;EAAEC;AAA0C,CAAC,KAAK;EACpF,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;EAEF,MAAMC,IAAI,GAAGL,IAAI,EAAEM,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;EAClC,MAAMC,KAAK,GAAGP,IAAI,EAAEM,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;EAEnC,oBACE,IAAAf,WAAA,CAAAiB,IAAA,EAACtB,YAAA,CAAAuB,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC,KAAM;IAAAC,QAAA,gBACxB,IAAAtB,WAAA,CAAAuB,GAAA,EAAC3B,sBAAA,CAAAO,OAAQ,CAACe,IAAI;MAACC,KAAK,EAAE,CAACC,MAAM,CAACI,IAAI,EAAEJ,MAAM,CAACK,OAAO,EAAEpB,eAAe,CAACqB,GAAG;IAAE,CAAE,CAAC,eAC5E,IAAA1B,WAAA,CAAAuB,GAAA,EAAC3B,sBAAA,CAAAO,OAAQ,CAACe,IAAI;MAACC,KAAK,EAAE,CAACC,MAAM,CAACI,IAAI,EAAEJ,MAAM,CAACO,OAAO,EAAEtB,eAAe,CAACuB,GAAG;IAAE,CAAE,CAAC,eAE5E,IAAA5B,WAAA,CAAAuB,GAAA,EAAC3B,sBAAA,CAAAO,OAAQ,CAACe,IAAI;MAACC,KAAK,EAAE,CAACC,MAAM,CAACI,IAAI,EAAEJ,MAAM,CAACS,QAAQ,EAAExB,eAAe,CAACyB,IAAI,CAAE;MAAAR,QAAA,eACzE,IAAAtB,WAAA,CAAAuB,GAAA,EAACzB,gBAAA,CAAAiC,eAAe;QAACC,WAAW,EAAElB,IAAK;QAACmB,YAAY,EAAEjB;MAAM,CAAE;IAAC,CAC9C,CAAC,eAChB,IAAAhB,WAAA,CAAAuB,GAAA,EAAC3B,sBAAA,CAAAO,OAAQ,CAACe,IAAI;MAACC,KAAK,EAAE,CAACC,MAAM,CAACI,IAAI,EAAEJ,MAAM,CAACc,SAAS,EAAE7B,eAAe,CAAC8B,KAAK,CAAE;MAAAb,QAAA,eAC3E,IAAAtB,WAAA,CAAAuB,GAAA,EAACzB,gBAAA,CAAAiC,eAAe;QAACC,WAAW,EAAElB,IAAK;QAACmB,YAAY,EAAEjB,KAAM;QAACoB,KAAK,EAAE5B,MAAM,EAAE6B,QAAQ,CAAC,CAAC,IAAI;MAAG,CAAE;IAAC,CAC/E,CAAC;EAAA,CACZ,CAAC;AAEX,CAAC;AAAAC,OAAA,CAAAlC,mBAAA,GAAAA,mBAAA;AAED,MAAMgB,MAAM,GAAGmB,uBAAU,CAACC,MAAM,CAAC;EAC/BnB,KAAK,EAAE;IACLoB,KAAK,EAAE,MAAM;IACbC,QAAQ,EAAE;EACZ,CAAC;EACDlB,IAAI,EAAE;IACJmB,MAAM,EAAE,GAAG;IACXC,YAAY,EAAEC,4BAAa,CAAC,GAAG,CAAC;IAChCC,eAAe,EAAEC,qBAAM,CAACC,SAAS;IACjC,GAAGC,sBAAO,CAAC,CAAC;EACd,CAAC;EACDxB,OAAO,EAAE;IACPyB,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE,EAAE;IACPrC,IAAI,EAAE,EAAE;IACRE,KAAK,EAAE,EAAE;IACToC,OAAO,EAAE;EACX,CAAC;EACDzB,OAAO,EAAE;IACPuB,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE,EAAE;IACPrC,IAAI,EAAE,EAAE;IACRE,KAAK,EAAE;EACT,CAAC;EACDa,QAAQ,EAAE;IACRqB,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE,EAAE;IACPrC,IAAI,EAAE,EAAE;IACRE,KAAK,EAAE,EAAE;IACTqC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE,QAAQ;IACxB,GAAGL,sBAAO,CAAC,CAAC;EACd,CAAC;EACDf,SAAS,EAAE;IACTmB,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_effectorReact","_reactNative","_reactNativeReanimated","_reactNativeUi","_EquationContent","_FluencyContext","_jsxRuntime","e","__esModule","default","FluencyEquationCard","animationStyles","model","useFluency","answer","fact","useUnit","solving","$answer","$current","left","numbers","right","updateAnswer","text","digits","replace","setAnswer","jsxs","View","style","styles","stack","children","jsx","card","cardFar","far","cardMid","mid","cardNear","near","EquationContent","leftOperand","rightOperand","readOnly","cardFront","front","value","onChange","exports","StyleSheet","create","width","maxWidth","height","borderRadius","BORDER_RADIUS","backgroundColor","COLORS","NEUTRAL_1","SHADOWS","position","top","opacity","alignItems","justifyContent"],"sourceRoot":"../../../../../../../src","sources":["features/fluency/components/fluency-solving/components/FluencyEquationCard.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AACA,IAAAG,sBAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AACA,IAAAK,gBAAA,GAAAL,OAAA;AACA,IAAAM,eAAA,GAAAN,OAAA;AAA4D,IAAAO,WAAA,GAAAP,OAAA;AAAA,SAAAD,uBAAAS,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAOrD,MAAMG,mBAAmB,GAAGA,CAAC;EAAEC;AAA0C,CAAC,KAAK;EACpF,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;EAEF,MAAMC,IAAI,GAAGL,IAAI,EAAEM,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;EAClC,MAAMC,KAAK,GAAGP,IAAI,EAAEM,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;EAEnC,MAAME,YAAY,GAAIC,IAAY,IAAK;IACrC,MAAMC,MAAM,GAAGD,IAAI,CAACE,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;IACtCd,KAAK,CAACK,OAAO,CAACU,SAAS,CAACF,MAAM,IAAI,IAAI,CAAC;EACzC,CAAC;EAED,oBACE,IAAAnB,WAAA,CAAAsB,IAAA,EAAC3B,YAAA,CAAA4B,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC,KAAM;IAAAC,QAAA,gBACxB,IAAA3B,WAAA,CAAA4B,GAAA,EAAChC,sBAAA,CAAAO,OAAQ,CAACoB,IAAI;MAACC,KAAK,EAAE,CAACC,MAAM,CAACI,IAAI,EAAEJ,MAAM,CAACK,OAAO,EAAEzB,eAAe,CAAC0B,GAAG;IAAE,CAAE,CAAC,eAC5E,IAAA/B,WAAA,CAAA4B,GAAA,EAAChC,sBAAA,CAAAO,OAAQ,CAACoB,IAAI;MAACC,KAAK,EAAE,CAACC,MAAM,CAACI,IAAI,EAAEJ,MAAM,CAACO,OAAO,EAAE3B,eAAe,CAAC4B,GAAG;IAAE,CAAE,CAAC,eAE5E,IAAAjC,WAAA,CAAA4B,GAAA,EAAChC,sBAAA,CAAAO,OAAQ,CAACoB,IAAI;MAACC,KAAK,EAAE,CAACC,MAAM,CAACI,IAAI,EAAEJ,MAAM,CAACS,QAAQ,EAAE7B,eAAe,CAAC8B,IAAI,CAAE;MAAAR,QAAA,eACzE,IAAA3B,WAAA,CAAA4B,GAAA,EAAC9B,gBAAA,CAAAsC,eAAe;QAACC,WAAW,EAAEvB,IAAK;QAACwB,YAAY,EAAEtB,KAAM;QAACuB,QAAQ;MAAA,CAAE;IAAC,CACvD,CAAC,eAChB,IAAAvC,WAAA,CAAA4B,GAAA,EAAChC,sBAAA,CAAAO,OAAQ,CAACoB,IAAI;MAACC,KAAK,EAAE,CAACC,MAAM,CAACI,IAAI,EAAEJ,MAAM,CAACe,SAAS,EAAEnC,eAAe,CAACoC,KAAK,CAAE;MAAAd,QAAA,eAC3E,IAAA3B,WAAA,CAAA4B,GAAA,EAAC9B,gBAAA,CAAAsC,eAAe;QACdC,WAAW,EAAEvB,IAAK;QAClBwB,YAAY,EAAEtB,KAAM;QACpB0B,KAAK,EAAElC,MAAM,IAAI,EAAG;QACpBmC,QAAQ,EAAE1B;MAAa,CACxB;IAAC,CACW,CAAC;EAAA,CACZ,CAAC;AAEX,CAAC;AAAA2B,OAAA,CAAAxC,mBAAA,GAAAA,mBAAA;AAED,MAAMqB,MAAM,GAAGoB,uBAAU,CAACC,MAAM,CAAC;EAC/BpB,KAAK,EAAE;IACLqB,KAAK,EAAE,MAAM;IACbC,QAAQ,EAAE;EACZ,CAAC;EACDnB,IAAI,EAAE;IACJoB,MAAM,EAAE,GAAG;IACXC,YAAY,EAAEC,4BAAa,CAAC,GAAG,CAAC;IAChCC,eAAe,EAAEC,qBAAM,CAACC,SAAS;IACjC,GAAGC,sBAAO,CAAC,CAAC;EACd,CAAC;EACDzB,OAAO,EAAE;IACP0B,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE,EAAE;IACP3C,IAAI,EAAE,EAAE;IACRE,KAAK,EAAE,EAAE;IACT0C,OAAO,EAAE;EACX,CAAC;EACD1B,OAAO,EAAE;IACPwB,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE,EAAE;IACP3C,IAAI,EAAE,EAAE;IACRE,KAAK,EAAE;EACT,CAAC;EACDkB,QAAQ,EAAE;IACRsB,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE,EAAE;IACP3C,IAAI,EAAE,EAAE;IACRE,KAAK,EAAE,EAAE;IACT2C,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE,QAAQ;IACxB,GAAGL,sBAAO,CAAC,CAAC;EACd,CAAC;EACDf,SAAS,EAAE;IACTmB,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -11,12 +11,12 @@ var _useFluencyNumpad = require("../../../hooks/useFluencyNumpad.js");
11
11
  var _jsxRuntime = require("react/jsx-runtime");
12
12
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
13
  const FluencyNumpad = ({
14
- onEnterPress
14
+ onSubmit
15
15
  }) => {
16
16
  const {
17
17
  options
18
18
  } = (0, _useFluencyNumpad.useFluencyNumpad)({
19
- onEnterPress
19
+ onSubmit
20
20
  });
21
21
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
22
22
  style: styles.container,
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeUi","_useFluencyNumpad","_jsxRuntime","e","__esModule","default","FluencyNumpad","onEnterPress","options","useFluencyNumpad","jsx","View","style","styles","container","children","SelectGroup","numOfRows","color","SelectOptionColor","GREY","size","SelectOptionSize","SMALL","grid","row","option","button","optionButton","text","optionText","exports","StyleSheet","create","alignItems","paddingVertical","SPACING","marginTop","width","gap","height","fontSize","fontWeight","fontFamily","FONT_FAMILY","buenosAires"],"sourceRoot":"../../../../../../../src","sources":["features/fluency/components/fluency-solving/components/FluencyNumpad.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAH,OAAA;AAAkE,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAD,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAM3D,MAAMG,aAAa,GAAGA,CAAC;EAAEC;AAAiC,CAAC,KAAK;EACrE,MAAM;IAAEC;EAAQ,CAAC,GAAG,IAAAC,kCAAgB,EAAC;IAAEF;EAAa,CAAC,CAAC;EAEtD,oBACE,IAAAL,WAAA,CAAAQ,GAAA,EAACX,YAAA,CAAAY,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,eAC5B,IAAAb,WAAA,CAAAQ,GAAA,EAACV,cAAA,CAAAgB,WAAW;MACVC,SAAS,EAAE,CAAE;MACbC,KAAK,EAAEC,gCAAiB,CAACC,IAAK;MAC9BC,IAAI,EAAEC,+BAAgB,CAACC,KAAM;MAC7Bf,OAAO,EAAEA,OAAQ;MACjBI,KAAK,EAAE;QACLE,SAAS,EAAED,MAAM,CAACW,IAAI;QACtBC,GAAG,EAAEZ,MAAM,CAACY,GAAG;QACfC,MAAM,EAAE;UACNC,MAAM,EAAEd,MAAM,CAACe,YAAY;UAC3BC,IAAI,EAAEhB,MAAM,CAACiB;QACf;MACF;IAAE,CACH;EAAC,CACE,CAAC;AAEX,CAAC;AAAAC,OAAA,CAAAzB,aAAA,GAAAA,aAAA;AAED,MAAMO,MAAM,GAAGmB,uBAAU,CAACC,MAAM,CAAC;EAC/BnB,SAAS,EAAE;IACToB,UAAU,EAAE,QAAQ;IACpBC,eAAe,EAAEC,sBAAO,CAAC,GAAG,CAAC;IAC7BC,SAAS,EAAED,sBAAO,CAAC,GAAG;EACxB,CAAC;EACDZ,IAAI,EAAE;IACJc,KAAK,EAAE,GAAG;IACVC,GAAG,EAAEH,sBAAO,CAAC,GAAG;EAClB,CAAC;EACDX,GAAG,EAAE;IACHc,GAAG,EAAEH,sBAAO,CAAC,GAAG;EAClB,CAAC;EACDR,YAAY,EAAE;IACZY,MAAM,EAAE;EACV,CAAC;EACDV,UAAU,EAAE;IACVW,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBC,UAAU,EAAEC,0BAAW,CAACC;EAC1B;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeUi","_useFluencyNumpad","_jsxRuntime","e","__esModule","default","FluencyNumpad","onSubmit","options","useFluencyNumpad","jsx","View","style","styles","container","children","SelectGroup","numOfRows","color","SelectOptionColor","GREY","size","SelectOptionSize","SMALL","grid","row","option","button","optionButton","text","optionText","exports","StyleSheet","create","alignItems","paddingVertical","SPACING","marginTop","width","gap","height","fontSize","fontWeight","fontFamily","FONT_FAMILY","buenosAires"],"sourceRoot":"../../../../../../../src","sources":["features/fluency/components/fluency-solving/components/FluencyNumpad.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAH,OAAA;AAAkE,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAD,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAM3D,MAAMG,aAAa,GAAGA,CAAC;EAAEC;AAA6B,CAAC,KAAK;EACjE,MAAM;IAAEC;EAAQ,CAAC,GAAG,IAAAC,kCAAgB,EAAC;IAAEF;EAAS,CAAC,CAAC;EAElD,oBACE,IAAAL,WAAA,CAAAQ,GAAA,EAACX,YAAA,CAAAY,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,eAC5B,IAAAb,WAAA,CAAAQ,GAAA,EAACV,cAAA,CAAAgB,WAAW;MACVC,SAAS,EAAE,CAAE;MACbC,KAAK,EAAEC,gCAAiB,CAACC,IAAK;MAC9BC,IAAI,EAAEC,+BAAgB,CAACC,KAAM;MAC7Bf,OAAO,EAAEA,OAAQ;MACjBI,KAAK,EAAE;QACLE,SAAS,EAAED,MAAM,CAACW,IAAI;QACtBC,GAAG,EAAEZ,MAAM,CAACY,GAAG;QACfC,MAAM,EAAE;UACNC,MAAM,EAAEd,MAAM,CAACe,YAAY;UAC3BC,IAAI,EAAEhB,MAAM,CAACiB;QACf;MACF;IAAE,CACH;EAAC,CACE,CAAC;AAEX,CAAC;AAAAC,OAAA,CAAAzB,aAAA,GAAAA,aAAA;AAED,MAAMO,MAAM,GAAGmB,uBAAU,CAACC,MAAM,CAAC;EAC/BnB,SAAS,EAAE;IACToB,UAAU,EAAE,QAAQ;IACpBC,eAAe,EAAEC,sBAAO,CAAC,GAAG,CAAC;IAC7BC,SAAS,EAAED,sBAAO,CAAC,GAAG;EACxB,CAAC;EACDZ,IAAI,EAAE;IACJc,KAAK,EAAE,GAAG;IACVC,GAAG,EAAEH,sBAAO,CAAC,GAAG;EAClB,CAAC;EACDX,GAAG,EAAE;IACHc,GAAG,EAAEH,sBAAO,CAAC,GAAG;EAClB,CAAC;EACDR,YAAY,EAAE;IACZY,MAAM,EAAE;EACV,CAAC;EACDV,UAAU,EAAE;IACVW,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBC,UAAU,EAAEC,0BAAW,CAACC;EAC1B;AACF,CAAC,CAAC","ignoreList":[]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.FluencySolvingCard = void 0;
7
- var _react = _interopRequireWildcard(require("react"));
7
+ var _react = _interopRequireDefault(require("react"));
8
8
  var _reactNative = require("react-native");
9
9
  var _reactNativeUi = require("@magmamath/react-native-ui");
10
10
  var _effectorReact = require("effector-react/effector-react.mjs");
@@ -13,12 +13,8 @@ var _FluencyEquationCard = require("./FluencyEquationCard.js");
13
13
  var _FluencyContext = require("../../../context/FluencyContext.js");
14
14
  var _useCardSnapAnimation = require("../../../hooks/useCardSnapAnimation.js");
15
15
  var _useSuccessSound = require("../../../hooks/useSuccessSound.js");
16
- var _commonConstants = require("../../../../../shared/common.constants.js");
17
- var _constants = require("../../../../../lib/constants.js");
18
- var _fluencyConstants = require("../../../fluency.constants.js");
19
16
  var _jsxRuntime = require("react/jsx-runtime");
20
- 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); }
21
- 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; }
17
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
22
18
  const FluencySolvingCard = () => {
23
19
  const {
24
20
  model
@@ -32,12 +28,9 @@ const FluencySolvingCard = () => {
32
28
  });
33
29
  const animation = (0, _useCardSnapAnimation.useCardSnapAnimation)();
34
30
  const successSound = (0, _useSuccessSound.useSuccessSound)();
35
- const answerRef = (0, _react.useRef)(answer);
36
- const submitRef = (0, _react.useRef)(() => {});
37
- answerRef.current = answer;
38
31
  const submit = () => {
39
32
  if (!fact) return;
40
- const isCorrect = answerRef.current !== null && answerRef.current === fact.answer;
33
+ const isCorrect = answer !== null && Number(answer) === fact.answer;
41
34
  if (isCorrect) {
42
35
  successSound.play();
43
36
  animation.trigger('right');
@@ -46,28 +39,6 @@ const FluencySolvingCard = () => {
46
39
  }
47
40
  model.solving.submit();
48
41
  };
49
- submitRef.current = submit;
50
- (0, _react.useEffect)(() => {
51
- if (!_commonConstants.isWeb) return;
52
- const handleKeyDown = event => {
53
- const isDigit = /^\d$/.test(event.key);
54
- if (isDigit) {
55
- const currentStr = answerRef.current !== null ? answerRef.current.toString() : '';
56
- if (currentStr.length >= _fluencyConstants.MAX_INPUT_LENGTH) return;
57
- model.solving.setAnswer(parseInt(currentStr + event.key, 10));
58
- return;
59
- }
60
- if (event.key === _constants.KeyboardKeys.BACKSPACE) {
61
- const currentStr = answerRef.current !== null ? answerRef.current.toString() : '';
62
- const newStr = currentStr.slice(0, -1);
63
- model.solving.setAnswer(newStr ? parseInt(newStr, 10) : null);
64
- return;
65
- }
66
- if (event.key === _constants.KeyboardKeys.ENTER) submitRef.current();
67
- };
68
- window.addEventListener('keydown', handleKeyDown);
69
- return () => window.removeEventListener('keydown', handleKeyDown);
70
- }, []);
71
42
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
72
43
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
73
44
  style: styles.wrapper,
@@ -75,7 +46,7 @@ const FluencySolvingCard = () => {
75
46
  animationStyles: animation.snapStyles
76
47
  })
77
48
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_FluencyNumpad.FluencyNumpad, {
78
- onEnterPress: submit
49
+ onSubmit: submit
79
50
  })]
80
51
  });
81
52
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeUi","_effectorReact","_FluencyNumpad","_FluencyEquationCard","_FluencyContext","_useCardSnapAnimation","_useSuccessSound","_commonConstants","_constants","_fluencyConstants","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","FluencySolvingCard","model","useFluency","answer","fact","useUnit","solving","$answer","$current","animation","useCardSnapAnimation","successSound","useSuccessSound","answerRef","useRef","submitRef","current","submit","isCorrect","play","trigger","useEffect","isWeb","handleKeyDown","event","isDigit","test","key","currentStr","toString","length","MAX_INPUT_LENGTH","setAnswer","parseInt","KeyboardKeys","BACKSPACE","newStr","slice","ENTER","window","addEventListener","removeEventListener","jsxs","View","children","jsx","style","styles","wrapper","FluencyEquationCard","animationStyles","snapStyles","FluencyNumpad","onEnterPress","exports","StyleSheet","create","alignItems","paddingVertical","SPACING","paddingHorizontal","marginTop"],"sourceRoot":"../../../../../../../src","sources":["features/fluency/components/fluency-solving/components/FluencySolvingCard.tsx"],"mappings":"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","ignoreList":[]}
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,29 +7,30 @@ 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 _useFluencyModePreset = require("../../../hooks/useFluencyModePreset.js");
10
+ var _useFluencySolvingPreset = require("../../../hooks/useFluencySolvingPreset.js");
11
11
  var _XCloseIcon = require("../../../../../shared/icons/XCloseIcon.js");
12
12
  var _jsxRuntime = require("react/jsx-runtime");
13
13
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
14
  const FluencySolvingHeader = ({
15
15
  onClosePress
16
16
  }) => {
17
- const modePreset = (0, _useFluencyModePreset.useFluencyModePreset)();
18
- const OperatorIcon = modePreset.icon;
17
+ const modePreset = (0, _useFluencySolvingPreset.useFluencySolvingPreset)();
19
18
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
20
19
  style: styles.container,
21
20
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Button, {
22
21
  variant: _reactNativeUi.ButtonVariant.SECONDARY,
23
22
  size: _reactNativeUi.ButtonSize.LARGE,
23
+ colorScheme: _reactNativeUi.ButtonColor.WHITE,
24
24
  icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_XCloseIcon.XCloseIcon, {}),
25
25
  onPress: onClosePress
26
26
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
27
27
  style: [styles.operatorBadge, {
28
28
  backgroundColor: modePreset.colors.accent
29
29
  }],
30
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(OperatorIcon, {
31
- color: _reactNativeUi.COLORS.NEUTRAL_1,
32
- size: 16
30
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Typography, {
31
+ variant: _reactNativeUi.HeadingVariants.H7,
32
+ style: styles.symbol,
33
+ children: modePreset.symbol
33
34
  })
34
35
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeUi.Typography, {
35
36
  variant: _reactNativeUi.HeadingVariants.H4,
@@ -60,6 +61,12 @@ const styles = _reactNative.StyleSheet.create({
60
61
  title: {
61
62
  color: _reactNativeUi.COLORS.NEUTRAL_10,
62
63
  fontWeight: '700'
64
+ },
65
+ symbol: {
66
+ fontSize: 32,
67
+ fontWeight: '100',
68
+ marginBottom: 2,
69
+ color: _reactNativeUi.COLORS.NEUTRAL_1
63
70
  }
64
71
  });
65
72
  //# sourceMappingURL=FluencySolvingHeader.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeUi","_useFluencyModePreset","_XCloseIcon","_jsxRuntime","e","__esModule","default","FluencySolvingHeader","onClosePress","modePreset","useFluencyModePreset","OperatorIcon","icon","jsxs","View","style","styles","container","children","jsx","Button","variant","ButtonVariant","SECONDARY","size","ButtonSize","LARGE","XCloseIcon","onPress","operatorBadge","backgroundColor","colors","accent","color","COLORS","NEUTRAL_1","Typography","HeadingVariants","H4","title","label","exports","StyleSheet","create","height","flexDirection","alignItems","gap","paddingVertical","SPACING","paddingHorizontal","SHADOWS","width","borderRadius","BORDER_RADIUS","justifyContent","NEUTRAL_10","fontWeight"],"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;AAWA,IAAAG,qBAAA,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,0CAAoB,EAAC,CAAC;EACzC,MAAMC,YAAY,GAAGF,UAAU,CAACG,IAAI;EAEpC,oBACE,IAAAT,WAAA,CAAAU,IAAA,EAACd,YAAA,CAAAe,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,gBAC5B,IAAAf,WAAA,CAAAgB,GAAA,EAACnB,cAAA,CAAAoB,MAAM;MACLC,OAAO,EAAEC,4BAAa,CAACC,SAAU;MACjCC,IAAI,EAAEC,yBAAU,CAACC,KAAM;MACvBd,IAAI,eAAE,IAAAT,WAAA,CAAAgB,GAAA,EAACjB,WAAA,CAAAyB,UAAU,IAAE,CAAE;MACrBC,OAAO,EAAEpB;IAAa,CACvB,CAAC,eACF,IAAAL,WAAA,CAAAgB,GAAA,EAACpB,YAAA,CAAAe,IAAI;MAACC,KAAK,EAAE,CAACC,MAAM,CAACa,aAAa,EAAE;QAAEC,eAAe,EAAErB,UAAU,CAACsB,MAAM,CAACC;MAAO,CAAC,CAAE;MAAAd,QAAA,eACjF,IAAAf,WAAA,CAAAgB,GAAA,EAACR,YAAY;QAACsB,KAAK,EAAEC,qBAAM,CAACC,SAAU;QAACX,IAAI,EAAE;MAAG,CAAE;IAAC,CAC/C,CAAC,eACP,IAAArB,WAAA,CAAAgB,GAAA,EAACnB,cAAA,CAAAoC,UAAU;MAACf,OAAO,EAAEgB,8BAAe,CAACC,EAAG;MAACvB,KAAK,EAAEC,MAAM,CAACuB,KAAM;MAAArB,QAAA,EAC1DT,UAAU,CAAC+B;IAAK,CACP,CAAC;EAAA,CACT,CAAC;AAEX,CAAC;AAAAC,OAAA,CAAAlC,oBAAA,GAAAA,oBAAA;AAED,MAAMS,MAAM,GAAG0B,uBAAU,CAACC,MAAM,CAAC;EAC/B1B,SAAS,EAAE;IACT2B,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;EACDtB,aAAa,EAAE;IACbuB,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;IACLN,KAAK,EAAEC,qBAAM,CAACsB,UAAU;IACxBC,UAAU,EAAE;EACd;AACF,CAAC,CAAC","ignoreList":[]}
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,6 +7,7 @@ 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 = ({
@@ -25,7 +26,7 @@ const FluencySolvingProgress = ({
25
26
  if (index < activeIndex) {
26
27
  const outcome = outcomes[index];
27
28
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
28
- style: outcome ? DOT_STYLE_BY_OUTCOME[outcome] : styles.dot
29
+ style: outcome ? DOT_STYLE_BY_OUTCOME[outcome.status] : styles.dot
29
30
  }, index);
30
31
  }
31
32
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
@@ -69,7 +70,8 @@ const styles = _reactNative.StyleSheet.create({
69
70
  }
70
71
  });
71
72
  const DOT_STYLE_BY_OUTCOME = {
72
- correct: styles.dotCorrect,
73
- wrong: styles.dotWrong
73
+ [_fluencyConstants.AttemptStatus.CORRECT]: styles.dotCorrect,
74
+ [_fluencyConstants.AttemptStatus.INCORRECT]: styles.dotWrong,
75
+ [_fluencyConstants.AttemptStatus.SKIPPED]: styles.dot
74
76
  };
75
77
  //# sourceMappingURL=FluencySolvingProgress.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeUi","_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","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","correct","wrong"],"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;AAA4D,IAAAG,WAAA,GAAAH,OAAA;AAAA,SAAAD,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AASrD,MAAMG,sBAAsB,GAAGA,CAAC;EACrCC,KAAK;EACLC,WAAW;EACXC;AAC2B,CAAC,KAAK;EACjC,oBACE,IAAAP,WAAA,CAAAQ,GAAA,EAACV,YAAA,CAAAW,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,EAACV,YAAA,CAAAW,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,oBAAO,IAAAnB,WAAA,CAAAQ,GAAA,EAACV,YAAA,CAAAW,IAAI;UAAaC,KAAK,EAAEW,OAAO,GAAGC,oBAAoB,CAACD,OAAO,CAAC,GAAGV,MAAM,CAACY;QAAI,GAAnEJ,KAAqE,CAAC;MAC1F;MACA,oBAAO,IAAAnB,WAAA,CAAAQ,GAAA,EAACV,YAAA,CAAAW,IAAI;QAAaC,KAAK,EAAEC,MAAM,CAACY;MAAI,GAAzBJ,KAA2B,CAAC;IAChD,CAAC;EAAC,CACE,CAAC;AAEX,CAAC;AAAAK,OAAA,CAAApB,sBAAA,GAAAA,sBAAA;AAED,MAAMO,MAAM,GAAGc,uBAAU,CAACC,MAAM,CAAC;EAC/Bd,SAAS,EAAE;IACTe,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;EACDlB,SAAS,EAAE;IACTa,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,MAAMrB,oBAAqD,GAAG;EAC5DsB,OAAO,EAAEjC,MAAM,CAAC6B,UAAU;EAC1BK,KAAK,EAAElC,MAAM,CAAC+B;AAChB,CAAC","ignoreList":[]}
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":[]}
@@ -3,9 +3,12 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ exports.calculateMaxStreak = void 0;
6
7
  exports.calculateNextBox = calculateNextBox;
8
+ exports.formatSessionDuration = void 0;
7
9
  exports.selectNextFact = selectNextFact;
8
10
  exports.toSolvingFacts = toSolvingFacts;
11
+ var _fluencyConstants = require("../../fluency.constants.js");
9
12
  var _fluencySolvingConstants = require("./fluencySolving.constants.js");
10
13
  function toSolvingFacts(factMap, mode) {
11
14
  return Object.entries(factMap).map(([id, fact]) => {
@@ -14,35 +17,60 @@ function toSolvingFacts(factMap, mode) {
14
17
  const box = fact.box ?? 0;
15
18
  return {
16
19
  id,
20
+ mode,
17
21
  numbers: fact.numbers,
18
22
  answer,
19
23
  difficulty: fact.difficulty,
20
24
  box,
21
25
  lastSeenMs: fact.lastAttemptedAt ? new Date(fact.lastAttemptedAt).getTime() : null,
22
26
  sessionStartBox: box,
23
- hasFailedThisSession: false
27
+ hasFailedThisSession: false,
28
+ attemptsCount: fact.attemptsCount,
29
+ correctCount: fact.correctCount
24
30
  };
25
31
  });
26
32
  }
27
- function calculateAttentionScore(fact, now, params, maxDifficulty) {
28
- const interval = params.boxIntervals[fact.box] || params.boxIntervals[1];
29
- const overdueness = fact.lastSeenMs === null ? 1 : Math.max(0, (now - fact.lastSeenMs) / interval);
30
- const weakness = 1 - fact.box / params.numBoxes;
31
- const ease = maxDifficulty > 0 ? fact.difficulty / maxDifficulty : 0;
32
- const rand = Math.random();
33
- return params.wDue * overdueness + params.wWeak * weakness + params.wEase * (ease * weakness) + params.wRand * rand;
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();
34
39
  }
35
40
  function selectNextFact(facts, now, params = _fluencySolvingConstants.DEFAULT_PICKER_PARAMS) {
36
41
  if (facts.length === 0) return null;
37
42
  const available = facts.filter(f => f.box < params.numBoxes);
38
43
  const pool = available.length > 0 ? available : facts;
39
- const maxDifficulty = Math.max(...pool.map(f => f.difficulty));
40
- const scored = pool.map(fact => ({
41
- fact,
42
- score: calculateAttentionScore(fact, now, params, maxDifficulty)
43
- }));
44
- return scored.reduce((best, curr) => curr.score > best.score ? curr : best).fact;
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;
45
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;
46
74
  function calculateNextBox({
47
75
  currentBox,
48
76
  isCorrect,
@@ -1 +1 @@
1
- {"version":3,"names":["_fluencySolvingConstants","require","toSolvingFacts","factMap","mode","Object","entries","map","id","fact","a","b","numbers","answer","MODE_ANSWER_EVAL_FORMULA","box","difficulty","lastSeenMs","lastAttemptedAt","Date","getTime","sessionStartBox","hasFailedThisSession","calculateAttentionScore","now","params","maxDifficulty","interval","boxIntervals","overdueness","Math","max","weakness","numBoxes","ease","rand","random","wDue","wWeak","wEase","wRand","selectNextFact","facts","DEFAULT_PICKER_PARAMS","length","available","filter","f","pool","scored","score","reduce","best","curr","calculateNextBox","currentBox","isCorrect","isFast","min"],"sourceRoot":"../../../../../../src","sources":["features/fluency/components/fluency-solving/fluencySolving.helpers.ts"],"mappings":"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","ignoreList":[]}
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":[]}
@@ -1,2 +1,6 @@
1
1
  "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
2
6
  //# sourceMappingURL=fluencySolving.types.js.map