@magmamath/students-features 1.8.0 → 1.8.1-rc.0

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 (428) hide show
  1. package/dist/commonjs/features/fluency/components/FluencySolving.js +2 -2
  2. package/dist/commonjs/features/fluency/components/FluencySolving.js.map +1 -1
  3. package/dist/commonjs/features/fluency/components/fluency-solving/components/DebugBoxIndicator.js +48 -0
  4. package/dist/commonjs/features/fluency/components/fluency-solving/components/DebugBoxIndicator.js.map +1 -0
  5. package/dist/commonjs/features/fluency/components/fluency-solving/components/EquationContent.js +9 -8
  6. package/dist/commonjs/features/fluency/components/fluency-solving/components/EquationContent.js.map +1 -1
  7. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencyCardDeck.js +3 -1
  8. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencyCardDeck.js.map +1 -1
  9. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencyEquationCard.js +63 -10
  10. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencyEquationCard.js.map +1 -1
  11. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingHeader.js +10 -0
  12. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingHeader.js.map +1 -1
  13. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingProgress.js +0 -2
  14. package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingProgress.js.map +1 -1
  15. package/dist/commonjs/features/fluency/index.js +12 -0
  16. package/dist/commonjs/features/fluency/index.js.map +1 -1
  17. package/dist/commonjs/features/fluency/visual-scaffolding/adapter.js +36 -0
  18. package/dist/commonjs/features/fluency/visual-scaffolding/adapter.js.map +1 -0
  19. package/dist/commonjs/features/fluency/visual-scaffolding/components/DiscreteCounterGrid.js +232 -0
  20. package/dist/commonjs/features/fluency/visual-scaffolding/components/DiscreteCounterGrid.js.map +1 -0
  21. package/dist/commonjs/features/fluency/visual-scaffolding/components/Dot.js +51 -0
  22. package/dist/commonjs/features/fluency/visual-scaffolding/components/Dot.js.map +1 -0
  23. package/dist/commonjs/features/fluency/visual-scaffolding/components/DynamicNumberLine.js +104 -0
  24. package/dist/commonjs/features/fluency/visual-scaffolding/components/DynamicNumberLine.js.map +1 -0
  25. package/dist/commonjs/features/fluency/visual-scaffolding/components/FactVisual.js +75 -0
  26. package/dist/commonjs/features/fluency/visual-scaffolding/components/FactVisual.js.map +1 -0
  27. package/dist/commonjs/features/fluency/visual-scaffolding/components/QuotativeBars.js +91 -0
  28. package/dist/commonjs/features/fluency/visual-scaffolding/components/QuotativeBars.js.map +1 -0
  29. package/dist/commonjs/features/fluency/visual-scaffolding/components/RelationalBlock.js +279 -0
  30. package/dist/commonjs/features/fluency/visual-scaffolding/components/RelationalBlock.js.map +1 -0
  31. package/dist/commonjs/features/fluency/visual-scaffolding/components/visualColors.js +44 -0
  32. package/dist/commonjs/features/fluency/visual-scaffolding/components/visualColors.js.map +1 -0
  33. package/dist/commonjs/features/fluency/visual-scaffolding/index.js +73 -0
  34. package/dist/commonjs/features/fluency/visual-scaffolding/index.js.map +1 -0
  35. package/dist/commonjs/features/fluency/visual-scaffolding/renderFact.js +276 -0
  36. package/dist/commonjs/features/fluency/visual-scaffolding/renderFact.js.map +1 -0
  37. package/dist/commonjs/features/fluency/visual-scaffolding/types.js +2 -0
  38. package/dist/commonjs/features/fluency/visual-scaffolding/types.js.map +1 -0
  39. package/dist/commonjs/features/fluency-teacher/assets/{DivisionIcon.js → SortDefaultIcon.js} +8 -11
  40. package/dist/commonjs/features/fluency-teacher/assets/SortDefaultIcon.js.map +1 -0
  41. package/dist/commonjs/features/fluency-teacher/components/FluencyTeacher.js +3 -4
  42. package/dist/commonjs/features/fluency-teacher/components/FluencyTeacher.js.map +1 -1
  43. package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerHeader.js +43 -48
  44. package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerHeader.js.map +1 -1
  45. package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerMasteryLegend.js +80 -0
  46. package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerMasteryLegend.js.map +1 -0
  47. package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerMatrixes.js +28 -11
  48. package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerMatrixes.js.map +1 -1
  49. package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerOperatorBox.js +44 -27
  50. package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerOperatorBox.js.map +1 -1
  51. package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerOperatorStatCard.js +40 -47
  52. package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerOperatorStatCard.js.map +1 -1
  53. package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerStats.js +24 -14
  54. package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerStats.js.map +1 -1
  55. package/dist/commonjs/features/fluency-teacher/components/drawer/FluencyTeacherDrawer.js +6 -6
  56. package/dist/commonjs/features/fluency-teacher/components/drawer/FluencyTeacherDrawer.js.map +1 -1
  57. package/dist/commonjs/features/fluency-teacher/components/matrix/DrawerMatrix.js.map +1 -1
  58. package/dist/commonjs/features/fluency-teacher/components/matrix/MatrixCell.js +16 -2
  59. package/dist/commonjs/features/fluency-teacher/components/matrix/MatrixCell.js.map +1 -1
  60. package/dist/commonjs/features/fluency-teacher/components/matrix/MatrixRow.js +2 -1
  61. package/dist/commonjs/features/fluency-teacher/components/matrix/MatrixRow.js.map +1 -1
  62. package/dist/commonjs/features/fluency-teacher/components/table/AllPupilsTableRow.js +41 -15
  63. package/dist/commonjs/features/fluency-teacher/components/table/AllPupilsTableRow.js.map +1 -1
  64. package/dist/commonjs/features/fluency-teacher/components/table/AverageSortButton.js +62 -6
  65. package/dist/commonjs/features/fluency-teacher/components/table/AverageSortButton.js.map +1 -1
  66. package/dist/commonjs/features/fluency-teacher/components/table/FluencyTeacherStudentsTable.js +40 -42
  67. package/dist/commonjs/features/fluency-teacher/components/table/FluencyTeacherStudentsTable.js.map +1 -1
  68. package/dist/commonjs/features/fluency-teacher/components/table/OperatorBadge.js +16 -25
  69. package/dist/commonjs/features/fluency-teacher/components/table/OperatorBadge.js.map +1 -1
  70. package/dist/commonjs/features/fluency-teacher/components/table/TableColumnSortButton.js +40 -30
  71. package/dist/commonjs/features/fluency-teacher/components/table/TableColumnSortButton.js.map +1 -1
  72. package/dist/commonjs/features/fluency-teacher/components/table/TableRow.js +72 -59
  73. package/dist/commonjs/features/fluency-teacher/components/table/TableRow.js.map +1 -1
  74. package/dist/commonjs/features/fluency-teacher/components/table/TableRowAverageProgress.js +71 -0
  75. package/dist/commonjs/features/fluency-teacher/components/table/TableRowAverageProgress.js.map +1 -0
  76. package/dist/commonjs/features/fluency-teacher/context/TeacherFluencyContext.js.map +1 -1
  77. package/dist/commonjs/features/fluency-teacher/fluencyTeacher.constants.js +38 -103
  78. package/dist/commonjs/features/fluency-teacher/fluencyTeacher.constants.js.map +1 -1
  79. package/dist/commonjs/features/fluency-teacher/fluencyTeacher.helpers.js +10 -52
  80. package/dist/commonjs/features/fluency-teacher/fluencyTeacher.helpers.js.map +1 -1
  81. package/dist/commonjs/features/fluency-teacher/hooks/useDrawerGrid.js +2 -3
  82. package/dist/commonjs/features/fluency-teacher/hooks/useDrawerGrid.js.map +1 -1
  83. package/dist/commonjs/features/fluency-teacher/hooks/useDrawerMatrix.js.map +1 -1
  84. package/dist/commonjs/features/fluency-teacher/model/TeacherFluencyFiltersModel.js +1 -2
  85. package/dist/commonjs/features/fluency-teacher/model/TeacherFluencyFiltersModel.js.map +1 -1
  86. package/dist/commonjs/features/fluency-teacher/model/TeacherFluencyModel.js +0 -9
  87. package/dist/commonjs/features/fluency-teacher/model/TeacherFluencyModel.js.map +1 -1
  88. package/dist/module/features/fluency/components/FluencySolving.js +2 -2
  89. package/dist/module/features/fluency/components/FluencySolving.js.map +1 -1
  90. package/dist/module/features/fluency/components/fluency-solving/components/DebugBoxIndicator.js +43 -0
  91. package/dist/module/features/fluency/components/fluency-solving/components/DebugBoxIndicator.js.map +1 -0
  92. package/dist/module/features/fluency/components/fluency-solving/components/EquationContent.js +9 -8
  93. package/dist/module/features/fluency/components/fluency-solving/components/EquationContent.js.map +1 -1
  94. package/dist/module/features/fluency/components/fluency-solving/components/FluencyCardDeck.js +3 -1
  95. package/dist/module/features/fluency/components/fluency-solving/components/FluencyCardDeck.js.map +1 -1
  96. package/dist/module/features/fluency/components/fluency-solving/components/FluencyEquationCard.js +64 -11
  97. package/dist/module/features/fluency/components/fluency-solving/components/FluencyEquationCard.js.map +1 -1
  98. package/dist/module/features/fluency/components/fluency-solving/components/FluencySolvingHeader.js +10 -0
  99. package/dist/module/features/fluency/components/fluency-solving/components/FluencySolvingHeader.js.map +1 -1
  100. package/dist/module/features/fluency/components/fluency-solving/components/FluencySolvingProgress.js +0 -2
  101. package/dist/module/features/fluency/components/fluency-solving/components/FluencySolvingProgress.js.map +1 -1
  102. package/dist/module/features/fluency/index.js +1 -0
  103. package/dist/module/features/fluency/index.js.map +1 -1
  104. package/dist/module/features/fluency/visual-scaffolding/adapter.js +31 -0
  105. package/dist/module/features/fluency/visual-scaffolding/adapter.js.map +1 -0
  106. package/dist/module/features/fluency/visual-scaffolding/components/DiscreteCounterGrid.js +225 -0
  107. package/dist/module/features/fluency/visual-scaffolding/components/DiscreteCounterGrid.js.map +1 -0
  108. package/dist/module/features/fluency/visual-scaffolding/components/Dot.js +45 -0
  109. package/dist/module/features/fluency/visual-scaffolding/components/Dot.js.map +1 -0
  110. package/dist/module/features/fluency/visual-scaffolding/components/DynamicNumberLine.js +96 -0
  111. package/dist/module/features/fluency/visual-scaffolding/components/DynamicNumberLine.js.map +1 -0
  112. package/dist/module/features/fluency/visual-scaffolding/components/FactVisual.js +69 -0
  113. package/dist/module/features/fluency/visual-scaffolding/components/FactVisual.js.map +1 -0
  114. package/dist/module/features/fluency/visual-scaffolding/components/QuotativeBars.js +83 -0
  115. package/dist/module/features/fluency/visual-scaffolding/components/QuotativeBars.js.map +1 -0
  116. package/dist/module/features/fluency/visual-scaffolding/components/RelationalBlock.js +272 -0
  117. package/dist/module/features/fluency/visual-scaffolding/components/RelationalBlock.js.map +1 -0
  118. package/dist/module/features/fluency/visual-scaffolding/components/visualColors.js +41 -0
  119. package/dist/module/features/fluency/visual-scaffolding/components/visualColors.js.map +1 -0
  120. package/dist/module/features/fluency/visual-scaffolding/index.js +8 -0
  121. package/dist/module/features/fluency/visual-scaffolding/index.js.map +1 -0
  122. package/dist/module/features/fluency/visual-scaffolding/renderFact.js +269 -0
  123. package/dist/module/features/fluency/visual-scaffolding/renderFact.js.map +1 -0
  124. package/dist/module/features/fluency/visual-scaffolding/types.js +2 -0
  125. package/dist/module/features/fluency/visual-scaffolding/types.js.map +1 -0
  126. package/dist/module/features/fluency-teacher/assets/SortDefaultIcon.js +23 -0
  127. package/dist/module/features/fluency-teacher/assets/SortDefaultIcon.js.map +1 -0
  128. package/dist/module/features/fluency-teacher/components/FluencyTeacher.js +3 -4
  129. package/dist/module/features/fluency-teacher/components/FluencyTeacher.js.map +1 -1
  130. package/dist/module/features/fluency-teacher/components/drawer/DrawerHeader.js +44 -49
  131. package/dist/module/features/fluency-teacher/components/drawer/DrawerHeader.js.map +1 -1
  132. package/dist/module/features/fluency-teacher/components/drawer/DrawerMasteryLegend.js +74 -0
  133. package/dist/module/features/fluency-teacher/components/drawer/DrawerMasteryLegend.js.map +1 -0
  134. package/dist/module/features/fluency-teacher/components/drawer/DrawerMatrixes.js +31 -14
  135. package/dist/module/features/fluency-teacher/components/drawer/DrawerMatrixes.js.map +1 -1
  136. package/dist/module/features/fluency-teacher/components/drawer/DrawerOperatorBox.js +45 -28
  137. package/dist/module/features/fluency-teacher/components/drawer/DrawerOperatorBox.js.map +1 -1
  138. package/dist/module/features/fluency-teacher/components/drawer/DrawerOperatorStatCard.js +41 -48
  139. package/dist/module/features/fluency-teacher/components/drawer/DrawerOperatorStatCard.js.map +1 -1
  140. package/dist/module/features/fluency-teacher/components/drawer/DrawerStats.js +27 -17
  141. package/dist/module/features/fluency-teacher/components/drawer/DrawerStats.js.map +1 -1
  142. package/dist/module/features/fluency-teacher/components/drawer/FluencyTeacherDrawer.js +6 -6
  143. package/dist/module/features/fluency-teacher/components/drawer/FluencyTeacherDrawer.js.map +1 -1
  144. package/dist/module/features/fluency-teacher/components/matrix/DrawerMatrix.js.map +1 -1
  145. package/dist/module/features/fluency-teacher/components/matrix/MatrixCell.js +17 -3
  146. package/dist/module/features/fluency-teacher/components/matrix/MatrixCell.js.map +1 -1
  147. package/dist/module/features/fluency-teacher/components/matrix/MatrixRow.js +2 -1
  148. package/dist/module/features/fluency-teacher/components/matrix/MatrixRow.js.map +1 -1
  149. package/dist/module/features/fluency-teacher/components/table/AllPupilsTableRow.js +42 -16
  150. package/dist/module/features/fluency-teacher/components/table/AllPupilsTableRow.js.map +1 -1
  151. package/dist/module/features/fluency-teacher/components/table/AverageSortButton.js +63 -7
  152. package/dist/module/features/fluency-teacher/components/table/AverageSortButton.js.map +1 -1
  153. package/dist/module/features/fluency-teacher/components/table/FluencyTeacherStudentsTable.js +42 -44
  154. package/dist/module/features/fluency-teacher/components/table/FluencyTeacherStudentsTable.js.map +1 -1
  155. package/dist/module/features/fluency-teacher/components/table/OperatorBadge.js +16 -25
  156. package/dist/module/features/fluency-teacher/components/table/OperatorBadge.js.map +1 -1
  157. package/dist/module/features/fluency-teacher/components/table/TableColumnSortButton.js +42 -32
  158. package/dist/module/features/fluency-teacher/components/table/TableColumnSortButton.js.map +1 -1
  159. package/dist/module/features/fluency-teacher/components/table/TableRow.js +75 -62
  160. package/dist/module/features/fluency-teacher/components/table/TableRow.js.map +1 -1
  161. package/dist/module/features/fluency-teacher/components/table/TableRowAverageProgress.js +65 -0
  162. package/dist/module/features/fluency-teacher/components/table/TableRowAverageProgress.js.map +1 -0
  163. package/dist/module/features/fluency-teacher/context/TeacherFluencyContext.js.map +1 -1
  164. package/dist/module/features/fluency-teacher/fluencyTeacher.constants.js +37 -102
  165. package/dist/module/features/fluency-teacher/fluencyTeacher.constants.js.map +1 -1
  166. package/dist/module/features/fluency-teacher/fluencyTeacher.helpers.js +8 -43
  167. package/dist/module/features/fluency-teacher/fluencyTeacher.helpers.js.map +1 -1
  168. package/dist/module/features/fluency-teacher/hooks/useDrawerGrid.js +2 -3
  169. package/dist/module/features/fluency-teacher/hooks/useDrawerGrid.js.map +1 -1
  170. package/dist/module/features/fluency-teacher/hooks/useDrawerMatrix.js.map +1 -1
  171. package/dist/module/features/fluency-teacher/model/TeacherFluencyFiltersModel.js +1 -2
  172. package/dist/module/features/fluency-teacher/model/TeacherFluencyFiltersModel.js.map +1 -1
  173. package/dist/module/features/fluency-teacher/model/TeacherFluencyModel.js +0 -9
  174. package/dist/module/features/fluency-teacher/model/TeacherFluencyModel.js.map +1 -1
  175. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/DebugBoxIndicator.d.ts +3 -0
  176. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/DebugBoxIndicator.d.ts.map +1 -0
  177. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/EquationContent.d.ts.map +1 -1
  178. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencyCardDeck.d.ts.map +1 -1
  179. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencyEquationCard.d.ts +2 -1
  180. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencyEquationCard.d.ts.map +1 -1
  181. package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingHeader.d.ts.map +1 -1
  182. package/dist/typescript/commonjs/features/fluency/index.d.ts +1 -0
  183. package/dist/typescript/commonjs/features/fluency/index.d.ts.map +1 -1
  184. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/__tests__/renderFact.test.d.ts +2 -0
  185. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/__tests__/renderFact.test.d.ts.map +1 -0
  186. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/adapter.d.ts +4 -0
  187. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/adapter.d.ts.map +1 -0
  188. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/DiscreteCounterGrid.d.ts +10 -0
  189. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/DiscreteCounterGrid.d.ts.map +1 -0
  190. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/Dot.d.ts +10 -0
  191. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/Dot.d.ts.map +1 -0
  192. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/DynamicNumberLine.d.ts +10 -0
  193. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/DynamicNumberLine.d.ts.map +1 -0
  194. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/FactVisual.d.ts +10 -0
  195. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/FactVisual.d.ts.map +1 -0
  196. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/QuotativeBars.d.ts +10 -0
  197. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/QuotativeBars.d.ts.map +1 -0
  198. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/RelationalBlock.d.ts +10 -0
  199. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/RelationalBlock.d.ts.map +1 -0
  200. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/visualColors.d.ts +16 -0
  201. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/visualColors.d.ts.map +1 -0
  202. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/index.d.ts +6 -0
  203. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/index.d.ts.map +1 -0
  204. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/renderFact.d.ts +23 -0
  205. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/renderFact.d.ts.map +1 -0
  206. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/types.d.ts +103 -0
  207. package/dist/typescript/commonjs/features/fluency/visual-scaffolding/types.d.ts.map +1 -0
  208. package/dist/typescript/commonjs/features/fluency-teacher/assets/SortDefaultIcon.d.ts +4 -0
  209. package/dist/typescript/commonjs/features/fluency-teacher/assets/SortDefaultIcon.d.ts.map +1 -0
  210. package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/DrawerHeader.d.ts.map +1 -1
  211. package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/DrawerMasteryLegend.d.ts +3 -0
  212. package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/DrawerMasteryLegend.d.ts.map +1 -0
  213. package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/DrawerMatrixes.d.ts.map +1 -1
  214. package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/DrawerOperatorBox.d.ts +4 -1
  215. package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/DrawerOperatorBox.d.ts.map +1 -1
  216. package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/DrawerOperatorStatCard.d.ts +4 -6
  217. package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/DrawerOperatorStatCard.d.ts.map +1 -1
  218. package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/DrawerStats.d.ts.map +1 -1
  219. package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/FluencyTeacherDrawer.d.ts.map +1 -1
  220. package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/DrawerMatrix.d.ts +2 -3
  221. package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/DrawerMatrix.d.ts.map +1 -1
  222. package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/MatrixCell.d.ts +5 -6
  223. package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/MatrixCell.d.ts.map +1 -1
  224. package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/MatrixHeaderRow.d.ts +1 -2
  225. package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/MatrixHeaderRow.d.ts.map +1 -1
  226. package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/MatrixRow.d.ts +3 -5
  227. package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/MatrixRow.d.ts.map +1 -1
  228. package/dist/typescript/commonjs/features/fluency-teacher/components/table/AllPupilsTableRow.d.ts.map +1 -1
  229. package/dist/typescript/commonjs/features/fluency-teacher/components/table/AverageSortButton.d.ts +1 -2
  230. package/dist/typescript/commonjs/features/fluency-teacher/components/table/AverageSortButton.d.ts.map +1 -1
  231. package/dist/typescript/commonjs/features/fluency-teacher/components/table/FluencyTeacherStudentsTable.d.ts.map +1 -1
  232. package/dist/typescript/commonjs/features/fluency-teacher/components/table/OperatorBadge.d.ts +4 -5
  233. package/dist/typescript/commonjs/features/fluency-teacher/components/table/OperatorBadge.d.ts.map +1 -1
  234. package/dist/typescript/commonjs/features/fluency-teacher/components/table/TableColumnSortButton.d.ts +6 -7
  235. package/dist/typescript/commonjs/features/fluency-teacher/components/table/TableColumnSortButton.d.ts.map +1 -1
  236. package/dist/typescript/commonjs/features/fluency-teacher/components/table/TableRow.d.ts +3 -4
  237. package/dist/typescript/commonjs/features/fluency-teacher/components/table/TableRow.d.ts.map +1 -1
  238. package/dist/typescript/commonjs/features/fluency-teacher/components/table/TableRowAverageProgress.d.ts +7 -0
  239. package/dist/typescript/commonjs/features/fluency-teacher/components/table/TableRowAverageProgress.d.ts.map +1 -0
  240. package/dist/typescript/commonjs/features/fluency-teacher/context/TeacherFluencyContext.d.ts +0 -1
  241. package/dist/typescript/commonjs/features/fluency-teacher/context/TeacherFluencyContext.d.ts.map +1 -1
  242. package/dist/typescript/commonjs/features/fluency-teacher/fluencyTeacher.constants.d.ts +3 -16
  243. package/dist/typescript/commonjs/features/fluency-teacher/fluencyTeacher.constants.d.ts.map +1 -1
  244. package/dist/typescript/commonjs/features/fluency-teacher/fluencyTeacher.helpers.d.ts +4 -11
  245. package/dist/typescript/commonjs/features/fluency-teacher/fluencyTeacher.helpers.d.ts.map +1 -1
  246. package/dist/typescript/commonjs/features/fluency-teacher/fluencyTeacher.types.d.ts +6 -35
  247. package/dist/typescript/commonjs/features/fluency-teacher/fluencyTeacher.types.d.ts.map +1 -1
  248. package/dist/typescript/commonjs/features/fluency-teacher/hooks/useDrawerGrid.d.ts +12 -1
  249. package/dist/typescript/commonjs/features/fluency-teacher/hooks/useDrawerGrid.d.ts.map +1 -1
  250. package/dist/typescript/commonjs/features/fluency-teacher/hooks/useDrawerMatrix.d.ts +3 -3
  251. package/dist/typescript/commonjs/features/fluency-teacher/hooks/useDrawerMatrix.d.ts.map +1 -1
  252. package/dist/typescript/commonjs/features/fluency-teacher/model/TeacherFluencyFiltersModel.d.ts +0 -1
  253. package/dist/typescript/commonjs/features/fluency-teacher/model/TeacherFluencyFiltersModel.d.ts.map +1 -1
  254. package/dist/typescript/commonjs/features/fluency-teacher/model/TeacherFluencyModel.d.ts.map +1 -1
  255. package/dist/typescript/module/features/fluency/components/fluency-solving/components/DebugBoxIndicator.d.ts +3 -0
  256. package/dist/typescript/module/features/fluency/components/fluency-solving/components/DebugBoxIndicator.d.ts.map +1 -0
  257. package/dist/typescript/module/features/fluency/components/fluency-solving/components/EquationContent.d.ts.map +1 -1
  258. package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencyCardDeck.d.ts.map +1 -1
  259. package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencyEquationCard.d.ts +2 -1
  260. package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencyEquationCard.d.ts.map +1 -1
  261. package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencySolvingHeader.d.ts.map +1 -1
  262. package/dist/typescript/module/features/fluency/index.d.ts +1 -0
  263. package/dist/typescript/module/features/fluency/index.d.ts.map +1 -1
  264. package/dist/typescript/module/features/fluency/visual-scaffolding/__tests__/renderFact.test.d.ts +2 -0
  265. package/dist/typescript/module/features/fluency/visual-scaffolding/__tests__/renderFact.test.d.ts.map +1 -0
  266. package/dist/typescript/module/features/fluency/visual-scaffolding/adapter.d.ts +4 -0
  267. package/dist/typescript/module/features/fluency/visual-scaffolding/adapter.d.ts.map +1 -0
  268. package/dist/typescript/module/features/fluency/visual-scaffolding/components/DiscreteCounterGrid.d.ts +10 -0
  269. package/dist/typescript/module/features/fluency/visual-scaffolding/components/DiscreteCounterGrid.d.ts.map +1 -0
  270. package/dist/typescript/module/features/fluency/visual-scaffolding/components/Dot.d.ts +10 -0
  271. package/dist/typescript/module/features/fluency/visual-scaffolding/components/Dot.d.ts.map +1 -0
  272. package/dist/typescript/module/features/fluency/visual-scaffolding/components/DynamicNumberLine.d.ts +10 -0
  273. package/dist/typescript/module/features/fluency/visual-scaffolding/components/DynamicNumberLine.d.ts.map +1 -0
  274. package/dist/typescript/module/features/fluency/visual-scaffolding/components/FactVisual.d.ts +10 -0
  275. package/dist/typescript/module/features/fluency/visual-scaffolding/components/FactVisual.d.ts.map +1 -0
  276. package/dist/typescript/module/features/fluency/visual-scaffolding/components/QuotativeBars.d.ts +10 -0
  277. package/dist/typescript/module/features/fluency/visual-scaffolding/components/QuotativeBars.d.ts.map +1 -0
  278. package/dist/typescript/module/features/fluency/visual-scaffolding/components/RelationalBlock.d.ts +10 -0
  279. package/dist/typescript/module/features/fluency/visual-scaffolding/components/RelationalBlock.d.ts.map +1 -0
  280. package/dist/typescript/module/features/fluency/visual-scaffolding/components/visualColors.d.ts +16 -0
  281. package/dist/typescript/module/features/fluency/visual-scaffolding/components/visualColors.d.ts.map +1 -0
  282. package/dist/typescript/module/features/fluency/visual-scaffolding/index.d.ts +6 -0
  283. package/dist/typescript/module/features/fluency/visual-scaffolding/index.d.ts.map +1 -0
  284. package/dist/typescript/module/features/fluency/visual-scaffolding/renderFact.d.ts +23 -0
  285. package/dist/typescript/module/features/fluency/visual-scaffolding/renderFact.d.ts.map +1 -0
  286. package/dist/typescript/module/features/fluency/visual-scaffolding/types.d.ts +103 -0
  287. package/dist/typescript/module/features/fluency/visual-scaffolding/types.d.ts.map +1 -0
  288. package/dist/typescript/module/features/fluency-teacher/assets/SortDefaultIcon.d.ts +4 -0
  289. package/dist/typescript/module/features/fluency-teacher/assets/SortDefaultIcon.d.ts.map +1 -0
  290. package/dist/typescript/module/features/fluency-teacher/components/drawer/DrawerHeader.d.ts.map +1 -1
  291. package/dist/typescript/module/features/fluency-teacher/components/drawer/DrawerMasteryLegend.d.ts +3 -0
  292. package/dist/typescript/module/features/fluency-teacher/components/drawer/DrawerMasteryLegend.d.ts.map +1 -0
  293. package/dist/typescript/module/features/fluency-teacher/components/drawer/DrawerMatrixes.d.ts.map +1 -1
  294. package/dist/typescript/module/features/fluency-teacher/components/drawer/DrawerOperatorBox.d.ts +4 -1
  295. package/dist/typescript/module/features/fluency-teacher/components/drawer/DrawerOperatorBox.d.ts.map +1 -1
  296. package/dist/typescript/module/features/fluency-teacher/components/drawer/DrawerOperatorStatCard.d.ts +4 -6
  297. package/dist/typescript/module/features/fluency-teacher/components/drawer/DrawerOperatorStatCard.d.ts.map +1 -1
  298. package/dist/typescript/module/features/fluency-teacher/components/drawer/DrawerStats.d.ts.map +1 -1
  299. package/dist/typescript/module/features/fluency-teacher/components/drawer/FluencyTeacherDrawer.d.ts.map +1 -1
  300. package/dist/typescript/module/features/fluency-teacher/components/matrix/DrawerMatrix.d.ts +2 -3
  301. package/dist/typescript/module/features/fluency-teacher/components/matrix/DrawerMatrix.d.ts.map +1 -1
  302. package/dist/typescript/module/features/fluency-teacher/components/matrix/MatrixCell.d.ts +5 -6
  303. package/dist/typescript/module/features/fluency-teacher/components/matrix/MatrixCell.d.ts.map +1 -1
  304. package/dist/typescript/module/features/fluency-teacher/components/matrix/MatrixHeaderRow.d.ts +1 -2
  305. package/dist/typescript/module/features/fluency-teacher/components/matrix/MatrixHeaderRow.d.ts.map +1 -1
  306. package/dist/typescript/module/features/fluency-teacher/components/matrix/MatrixRow.d.ts +3 -5
  307. package/dist/typescript/module/features/fluency-teacher/components/matrix/MatrixRow.d.ts.map +1 -1
  308. package/dist/typescript/module/features/fluency-teacher/components/table/AllPupilsTableRow.d.ts.map +1 -1
  309. package/dist/typescript/module/features/fluency-teacher/components/table/AverageSortButton.d.ts +1 -2
  310. package/dist/typescript/module/features/fluency-teacher/components/table/AverageSortButton.d.ts.map +1 -1
  311. package/dist/typescript/module/features/fluency-teacher/components/table/FluencyTeacherStudentsTable.d.ts.map +1 -1
  312. package/dist/typescript/module/features/fluency-teacher/components/table/OperatorBadge.d.ts +4 -5
  313. package/dist/typescript/module/features/fluency-teacher/components/table/OperatorBadge.d.ts.map +1 -1
  314. package/dist/typescript/module/features/fluency-teacher/components/table/TableColumnSortButton.d.ts +6 -7
  315. package/dist/typescript/module/features/fluency-teacher/components/table/TableColumnSortButton.d.ts.map +1 -1
  316. package/dist/typescript/module/features/fluency-teacher/components/table/TableRow.d.ts +3 -4
  317. package/dist/typescript/module/features/fluency-teacher/components/table/TableRow.d.ts.map +1 -1
  318. package/dist/typescript/module/features/fluency-teacher/components/table/TableRowAverageProgress.d.ts +7 -0
  319. package/dist/typescript/module/features/fluency-teacher/components/table/TableRowAverageProgress.d.ts.map +1 -0
  320. package/dist/typescript/module/features/fluency-teacher/context/TeacherFluencyContext.d.ts +0 -1
  321. package/dist/typescript/module/features/fluency-teacher/context/TeacherFluencyContext.d.ts.map +1 -1
  322. package/dist/typescript/module/features/fluency-teacher/fluencyTeacher.constants.d.ts +3 -16
  323. package/dist/typescript/module/features/fluency-teacher/fluencyTeacher.constants.d.ts.map +1 -1
  324. package/dist/typescript/module/features/fluency-teacher/fluencyTeacher.helpers.d.ts +4 -11
  325. package/dist/typescript/module/features/fluency-teacher/fluencyTeacher.helpers.d.ts.map +1 -1
  326. package/dist/typescript/module/features/fluency-teacher/fluencyTeacher.types.d.ts +6 -35
  327. package/dist/typescript/module/features/fluency-teacher/fluencyTeacher.types.d.ts.map +1 -1
  328. package/dist/typescript/module/features/fluency-teacher/hooks/useDrawerGrid.d.ts +12 -1
  329. package/dist/typescript/module/features/fluency-teacher/hooks/useDrawerGrid.d.ts.map +1 -1
  330. package/dist/typescript/module/features/fluency-teacher/hooks/useDrawerMatrix.d.ts +3 -3
  331. package/dist/typescript/module/features/fluency-teacher/hooks/useDrawerMatrix.d.ts.map +1 -1
  332. package/dist/typescript/module/features/fluency-teacher/model/TeacherFluencyFiltersModel.d.ts +0 -1
  333. package/dist/typescript/module/features/fluency-teacher/model/TeacherFluencyFiltersModel.d.ts.map +1 -1
  334. package/dist/typescript/module/features/fluency-teacher/model/TeacherFluencyModel.d.ts.map +1 -1
  335. package/package.json +1 -1
  336. package/src/features/fluency/components/FluencySolving.tsx +2 -2
  337. package/src/features/fluency/components/fluency-solving/components/DebugBoxIndicator.tsx +40 -0
  338. package/src/features/fluency/components/fluency-solving/components/EquationContent.tsx +12 -8
  339. package/src/features/fluency/components/fluency-solving/components/FluencyCardDeck.tsx +6 -1
  340. package/src/features/fluency/components/fluency-solving/components/FluencyEquationCard.tsx +63 -11
  341. package/src/features/fluency/components/fluency-solving/components/FluencySolvingHeader.tsx +9 -0
  342. package/src/features/fluency/components/fluency-solving/components/FluencySolvingProgress.tsx +0 -2
  343. package/src/features/fluency/index.ts +1 -0
  344. package/src/features/fluency/visual-scaffolding/__tests__/__snapshots__/renderFact.test.ts.snap +64 -0
  345. package/src/features/fluency/visual-scaffolding/__tests__/renderFact.test.ts +192 -0
  346. package/src/features/fluency/visual-scaffolding/adapter.ts +33 -0
  347. package/src/features/fluency/visual-scaffolding/components/DiscreteCounterGrid.tsx +222 -0
  348. package/src/features/fluency/visual-scaffolding/components/Dot.tsx +36 -0
  349. package/src/features/fluency/visual-scaffolding/components/DynamicNumberLine.tsx +98 -0
  350. package/src/features/fluency/visual-scaffolding/components/FactVisual.tsx +61 -0
  351. package/src/features/fluency/visual-scaffolding/components/QuotativeBars.tsx +92 -0
  352. package/src/features/fluency/visual-scaffolding/components/RelationalBlock.tsx +225 -0
  353. package/src/features/fluency/visual-scaffolding/components/visualColors.ts +45 -0
  354. package/src/features/fluency/visual-scaffolding/index.ts +5 -0
  355. package/src/features/fluency/visual-scaffolding/renderFact.ts +219 -0
  356. package/src/features/fluency/visual-scaffolding/types.ts +108 -0
  357. package/src/features/fluency-teacher/assets/SortDefaultIcon.tsx +10 -0
  358. package/src/features/fluency-teacher/components/FluencyTeacher.tsx +3 -3
  359. package/src/features/fluency-teacher/components/drawer/DrawerHeader.tsx +35 -37
  360. package/src/features/fluency-teacher/components/drawer/DrawerMasteryLegend.tsx +63 -0
  361. package/src/features/fluency-teacher/components/drawer/DrawerMatrixes.tsx +32 -13
  362. package/src/features/fluency-teacher/components/drawer/DrawerOperatorBox.tsx +40 -20
  363. package/src/features/fluency-teacher/components/drawer/DrawerOperatorStatCard.tsx +35 -35
  364. package/src/features/fluency-teacher/components/drawer/DrawerStats.tsx +28 -16
  365. package/src/features/fluency-teacher/components/drawer/FluencyTeacherDrawer.tsx +5 -4
  366. package/src/features/fluency-teacher/components/matrix/DrawerMatrix.tsx +2 -3
  367. package/src/features/fluency-teacher/components/matrix/MatrixCell.tsx +16 -7
  368. package/src/features/fluency-teacher/components/matrix/MatrixHeaderRow.tsx +1 -1
  369. package/src/features/fluency-teacher/components/matrix/MatrixRow.tsx +4 -4
  370. package/src/features/fluency-teacher/components/table/AllPupilsTableRow.tsx +40 -13
  371. package/src/features/fluency-teacher/components/table/AverageSortButton.tsx +62 -8
  372. package/src/features/fluency-teacher/components/table/FluencyTeacherStudentsTable.tsx +35 -49
  373. package/src/features/fluency-teacher/components/table/OperatorBadge.tsx +11 -18
  374. package/src/features/fluency-teacher/components/table/TableColumnSortButton.tsx +49 -28
  375. package/src/features/fluency-teacher/components/table/TableRow.tsx +64 -65
  376. package/src/features/fluency-teacher/components/table/TableRowAverageProgress.tsx +65 -0
  377. package/src/features/fluency-teacher/context/TeacherFluencyContext.ts +0 -1
  378. package/src/features/fluency-teacher/fluencyTeacher.constants.ts +40 -138
  379. package/src/features/fluency-teacher/fluencyTeacher.helpers.ts +10 -82
  380. package/src/features/fluency-teacher/fluencyTeacher.types.ts +6 -39
  381. package/src/features/fluency-teacher/hooks/useDrawerGrid.ts +7 -4
  382. package/src/features/fluency-teacher/hooks/useDrawerMatrix.ts +3 -4
  383. package/src/features/fluency-teacher/model/TeacherFluencyFiltersModel.ts +5 -8
  384. package/src/features/fluency-teacher/model/TeacherFluencyModel.ts +0 -8
  385. package/dist/commonjs/features/fluency-teacher/assets/DivisionIcon.js.map +0 -1
  386. package/dist/commonjs/features/fluency-teacher/components/matrix/MatrixLegend.js +0 -83
  387. package/dist/commonjs/features/fluency-teacher/components/matrix/MatrixLegend.js.map +0 -1
  388. package/dist/commonjs/features/fluency-teacher/components/table/AverageCell.js +0 -55
  389. package/dist/commonjs/features/fluency-teacher/components/table/AverageCell.js.map +0 -1
  390. package/dist/commonjs/features/fluency-teacher/components/table/SortOrderCarets.js +0 -40
  391. package/dist/commonjs/features/fluency-teacher/components/table/SortOrderCarets.js.map +0 -1
  392. package/dist/commonjs/features/fluency-teacher/components/table/tableCell.styles.js +0 -45
  393. package/dist/commonjs/features/fluency-teacher/components/table/tableCell.styles.js.map +0 -1
  394. package/dist/module/features/fluency-teacher/assets/DivisionIcon.js +0 -26
  395. package/dist/module/features/fluency-teacher/assets/DivisionIcon.js.map +0 -1
  396. package/dist/module/features/fluency-teacher/components/matrix/MatrixLegend.js +0 -77
  397. package/dist/module/features/fluency-teacher/components/matrix/MatrixLegend.js.map +0 -1
  398. package/dist/module/features/fluency-teacher/components/table/AverageCell.js +0 -49
  399. package/dist/module/features/fluency-teacher/components/table/AverageCell.js.map +0 -1
  400. package/dist/module/features/fluency-teacher/components/table/SortOrderCarets.js +0 -34
  401. package/dist/module/features/fluency-teacher/components/table/SortOrderCarets.js.map +0 -1
  402. package/dist/module/features/fluency-teacher/components/table/tableCell.styles.js +0 -42
  403. package/dist/module/features/fluency-teacher/components/table/tableCell.styles.js.map +0 -1
  404. package/dist/typescript/commonjs/features/fluency-teacher/assets/DivisionIcon.d.ts +0 -4
  405. package/dist/typescript/commonjs/features/fluency-teacher/assets/DivisionIcon.d.ts.map +0 -1
  406. package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/MatrixLegend.d.ts +0 -10
  407. package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/MatrixLegend.d.ts.map +0 -1
  408. package/dist/typescript/commonjs/features/fluency-teacher/components/table/AverageCell.d.ts +0 -9
  409. package/dist/typescript/commonjs/features/fluency-teacher/components/table/AverageCell.d.ts.map +0 -1
  410. package/dist/typescript/commonjs/features/fluency-teacher/components/table/SortOrderCarets.d.ts +0 -9
  411. package/dist/typescript/commonjs/features/fluency-teacher/components/table/SortOrderCarets.d.ts.map +0 -1
  412. package/dist/typescript/commonjs/features/fluency-teacher/components/table/tableCell.styles.d.ts +0 -35
  413. package/dist/typescript/commonjs/features/fluency-teacher/components/table/tableCell.styles.d.ts.map +0 -1
  414. package/dist/typescript/module/features/fluency-teacher/assets/DivisionIcon.d.ts +0 -4
  415. package/dist/typescript/module/features/fluency-teacher/assets/DivisionIcon.d.ts.map +0 -1
  416. package/dist/typescript/module/features/fluency-teacher/components/matrix/MatrixLegend.d.ts +0 -10
  417. package/dist/typescript/module/features/fluency-teacher/components/matrix/MatrixLegend.d.ts.map +0 -1
  418. package/dist/typescript/module/features/fluency-teacher/components/table/AverageCell.d.ts +0 -9
  419. package/dist/typescript/module/features/fluency-teacher/components/table/AverageCell.d.ts.map +0 -1
  420. package/dist/typescript/module/features/fluency-teacher/components/table/SortOrderCarets.d.ts +0 -9
  421. package/dist/typescript/module/features/fluency-teacher/components/table/SortOrderCarets.d.ts.map +0 -1
  422. package/dist/typescript/module/features/fluency-teacher/components/table/tableCell.styles.d.ts +0 -35
  423. package/dist/typescript/module/features/fluency-teacher/components/table/tableCell.styles.d.ts.map +0 -1
  424. package/src/features/fluency-teacher/assets/DivisionIcon.tsx +0 -20
  425. package/src/features/fluency-teacher/components/matrix/MatrixLegend.tsx +0 -81
  426. package/src/features/fluency-teacher/components/table/AverageCell.tsx +0 -45
  427. package/src/features/fluency-teacher/components/table/SortOrderCarets.tsx +0 -37
  428. package/src/features/fluency-teacher/components/table/tableCell.styles.ts +0 -39
@@ -0,0 +1,65 @@
1
+ import React from 'react'
2
+ import { StyleSheet, Text, View } from 'react-native'
3
+ import {
4
+ COLORS,
5
+ FONT_FAMILY,
6
+ HeadingVariants,
7
+ SPACING,
8
+ Typography,
9
+ } from '@magmamath/react-native-ui'
10
+
11
+ export type TableRowAverageProgressProps = {
12
+ percent: number
13
+ label: string
14
+ }
15
+
16
+ export const TableRowAverageProgress = ({ percent, label }: TableRowAverageProgressProps) => (
17
+ <View style={styles.progressTrack}>
18
+ <View style={[styles.progressFill, { width: `${percent}%` }]} />
19
+ <View style={styles.progressOverlay}>
20
+ <Typography variant={HeadingVariants.H9} style={styles.progressPercent}>
21
+ {percent}%
22
+ </Typography>
23
+ <Text style={styles.progressLabel} numberOfLines={1}>
24
+ {label}
25
+ </Text>
26
+ </View>
27
+ </View>
28
+ )
29
+
30
+ const styles = StyleSheet.create({
31
+ progressTrack: {
32
+ height: 16,
33
+ borderRadius: 36,
34
+ backgroundColor: COLORS.NEUTRAL_3,
35
+ overflow: 'hidden',
36
+ },
37
+ progressFill: {
38
+ position: 'absolute',
39
+ top: 0,
40
+ bottom: 0,
41
+ left: 0,
42
+ borderRadius: 36,
43
+ backgroundColor: COLORS.YELLOW_4,
44
+ },
45
+ progressOverlay: {
46
+ position: 'absolute',
47
+ top: 0,
48
+ bottom: 0,
49
+ left: 0,
50
+ right: 0,
51
+ flexDirection: 'row',
52
+ alignItems: 'center',
53
+ justifyContent: 'space-between',
54
+ paddingHorizontal: SPACING[200],
55
+ },
56
+ progressPercent: {
57
+ color: COLORS.NEUTRAL_9,
58
+ },
59
+ progressLabel: {
60
+ fontFamily: FONT_FAMILY.buenosAiresSemiBold,
61
+ fontSize: 10,
62
+ color: COLORS.NEUTRAL_9,
63
+ textTransform: 'uppercase',
64
+ },
65
+ })
@@ -3,7 +3,6 @@ import type { TeacherFluencyModel } from '../model/TeacherFluencyModel'
3
3
 
4
4
  type TeacherFluencyContextValue = {
5
5
  model: TeacherFluencyModel
6
- grade: number
7
6
  }
8
7
 
9
8
  const TeacherFluencyContext = createContext<TeacherFluencyContextValue | null>(null)
@@ -1,11 +1,5 @@
1
1
  import { COLORS } from '@magmamath/react-native-ui'
2
- import type {
3
- LegendItem,
4
- OperatorCardConfig,
5
- OperatorColumnConfig,
6
- OperatorPalette,
7
- FluencyOperatorColumn,
8
- } from './fluencyTeacher.types'
2
+ import { type OperatorColumnConfig } from './fluencyTeacher.types'
9
3
 
10
4
  export const TEACHER_FLUENCY_GOAL_MINUTES = 25
11
5
 
@@ -16,103 +10,33 @@ export enum FluencyOperator {
16
10
  DIVISION = 'division',
17
11
  }
18
12
 
19
- export enum MasteryLevel {
20
- LEARNING = 1,
21
- GROWING = 2,
22
- STRONG = 3,
23
- AUTOMATIC = 4,
24
- }
25
-
26
- export const OPERATOR_PALETTES: Record<FluencyOperator, OperatorPalette> = {
13
+ export const MATRIX_CELL_COLORS: Record<FluencyOperator, Record<number, string>> = {
27
14
  [FluencyOperator.ADDITION]: {
28
- bands: [COLORS.GREEN_1, COLORS.GREEN_2, COLORS.GREEN_3, COLORS.GREEN_4, COLORS.PRIMARY_GREEN],
29
- bandBorders: [
30
- COLORS.GREEN_2,
31
- COLORS.GREEN_3,
32
- COLORS.GREEN_4,
33
- COLORS.PRIMARY_GREEN,
34
- COLORS.GREEN_6,
35
- ],
36
- darkText: COLORS.GREEN_8,
37
- legendCount: COLORS.GREEN_7,
38
- boxBorder: COLORS.GREEN_2,
15
+ 1: COLORS.GREEN_2,
16
+ 2: COLORS.GREEN_3,
17
+ 3: COLORS.PRIMARY_GREEN,
18
+ 4: COLORS.GREEN_6,
39
19
  },
40
20
  [FluencyOperator.SUBTRACTION]: {
41
- bands: [
42
- COLORS.ORANGE_1,
43
- COLORS.ORANGE_2,
44
- COLORS.ORANGE_3,
45
- COLORS.ORANGE_4,
46
- COLORS.PRIMARY_ORANGE,
47
- ],
48
- bandBorders: [
49
- COLORS.ORANGE_2,
50
- COLORS.ORANGE_3,
51
- COLORS.ORANGE_4,
52
- COLORS.PRIMARY_ORANGE,
53
- COLORS.ORANGE_6,
54
- ],
55
- darkText: COLORS.ORANGE_8,
56
- legendCount: COLORS.ORANGE_7,
57
- boxBorder: COLORS.ORANGE_2,
21
+ 1: COLORS.ORANGE_2,
22
+ 2: COLORS.ORANGE_3,
23
+ 3: COLORS.PRIMARY_ORANGE,
24
+ 4: COLORS.ORANGE_6,
58
25
  },
59
26
  [FluencyOperator.MULTIPLICATION]: {
60
- bands: [COLORS.BLUE_1, COLORS.BLUE_2, COLORS.BLUE_3, COLORS.BLUE_4, COLORS.PRIMARY_BLUE],
61
- bandBorders: [COLORS.BLUE_2, COLORS.BLUE_3, COLORS.BLUE_4, COLORS.PRIMARY_BLUE, COLORS.BLUE_6],
62
- darkText: COLORS.BLUE_8,
63
- legendCount: COLORS.BLUE_7,
64
- boxBorder: COLORS.BLUE_2,
27
+ 1: COLORS.BLUE_2,
28
+ 2: COLORS.BLUE_3,
29
+ 3: COLORS.PRIMARY_BLUE,
30
+ 4: COLORS.BLUE_6,
65
31
  },
66
32
  [FluencyOperator.DIVISION]: {
67
- bands: [
68
- COLORS.PURPLE_1,
69
- COLORS.PURPLE_2,
70
- COLORS.PURPLE_3,
71
- COLORS.PURPLE_4,
72
- COLORS.PRIMARY_PURPLE,
73
- ],
74
- bandBorders: [
75
- COLORS.PURPLE_2,
76
- COLORS.PURPLE_3,
77
- COLORS.PURPLE_4,
78
- COLORS.PRIMARY_PURPLE,
79
- COLORS.PURPLE_6,
80
- ],
81
- darkText: COLORS.PURPLE_8,
82
- legendCount: COLORS.PURPLE_7,
83
- boxBorder: COLORS.PURPLE_2,
33
+ 1: COLORS.PURPLE_2,
34
+ 2: COLORS.PURPLE_3,
35
+ 3: COLORS.PRIMARY_PURPLE,
36
+ 4: COLORS.PURPLE_6,
84
37
  },
85
38
  }
86
39
 
87
- export const MATRIX_CELL_COLORS: Record<FluencyOperator, Record<MasteryLevel, string>> = {
88
- [FluencyOperator.ADDITION]: {
89
- [MasteryLevel.LEARNING]: COLORS.GREEN_1,
90
- [MasteryLevel.GROWING]: COLORS.GREEN_2,
91
- [MasteryLevel.STRONG]: COLORS.GREEN_4,
92
- [MasteryLevel.AUTOMATIC]: COLORS.GREEN_7,
93
- },
94
- [FluencyOperator.SUBTRACTION]: {
95
- [MasteryLevel.LEARNING]: COLORS.ORANGE_1,
96
- [MasteryLevel.GROWING]: COLORS.ORANGE_2,
97
- [MasteryLevel.STRONG]: COLORS.ORANGE_4,
98
- [MasteryLevel.AUTOMATIC]: COLORS.ORANGE_7,
99
- },
100
- [FluencyOperator.MULTIPLICATION]: {
101
- [MasteryLevel.LEARNING]: COLORS.BLUE_1,
102
- [MasteryLevel.GROWING]: COLORS.BLUE_2,
103
- [MasteryLevel.STRONG]: COLORS.BLUE_4,
104
- [MasteryLevel.AUTOMATIC]: COLORS.BLUE_7,
105
- },
106
- [FluencyOperator.DIVISION]: {
107
- [MasteryLevel.LEARNING]: COLORS.PURPLE_1,
108
- [MasteryLevel.GROWING]: COLORS.PURPLE_2,
109
- [MasteryLevel.STRONG]: COLORS.PURPLE_4,
110
- [MasteryLevel.AUTOMATIC]: COLORS.PURPLE_7,
111
- },
112
- }
113
-
114
- export const MATRIX_NOT_STARTED_COLOR = COLORS.NEUTRAL_3
115
-
116
40
  export enum FluencyTableColumn {
117
41
  AVERAGE = 'average',
118
42
  ADDITION = 'addition',
@@ -121,6 +45,8 @@ export enum FluencyTableColumn {
121
45
  DIVISION = 'division',
122
46
  }
123
47
 
48
+ export type FluencyOperatorColumn = Exclude<FluencyTableColumn, FluencyTableColumn.AVERAGE>
49
+
124
50
  export enum FluencyMathOperatorSymbol {
125
51
  ADDITION = '+',
126
52
  SUBTRACTION = '−',
@@ -128,57 +54,33 @@ export enum FluencyMathOperatorSymbol {
128
54
  DIVISION = '÷',
129
55
  }
130
56
 
131
- export const COLUMN_TO_OPERATOR: Record<FluencyOperatorColumn, FluencyOperator> = {
132
- [FluencyTableColumn.ADDITION]: FluencyOperator.ADDITION,
133
- [FluencyTableColumn.SUBTRACTION]: FluencyOperator.SUBTRACTION,
134
- [FluencyTableColumn.MULTIPLICATION]: FluencyOperator.MULTIPLICATION,
135
- [FluencyTableColumn.DIVISION]: FluencyOperator.DIVISION,
136
- }
137
-
138
- export const OPERATOR_TO_COLUMN: Record<FluencyOperator, FluencyOperatorColumn> = {
139
- [FluencyOperator.ADDITION]: FluencyTableColumn.ADDITION,
140
- [FluencyOperator.SUBTRACTION]: FluencyTableColumn.SUBTRACTION,
141
- [FluencyOperator.MULTIPLICATION]: FluencyTableColumn.MULTIPLICATION,
142
- [FluencyOperator.DIVISION]: FluencyTableColumn.DIVISION,
143
- }
144
-
145
- export const MAX_GRADE_WITH_TWO_OPERATORS = 2
146
-
147
- export const TWO_OPERATOR_SET: readonly FluencyOperator[] = [
148
- FluencyOperator.ADDITION,
149
- FluencyOperator.SUBTRACTION,
150
- ]
151
-
152
- export const OPERATOR_CARD_CONFIG: Record<FluencyOperator, OperatorCardConfig> = {
153
- [FluencyOperator.ADDITION]: {
57
+ export const TABLE_OPERATOR_COLUMNS: readonly OperatorColumnConfig[] = [
58
+ {
59
+ operator: FluencyTableColumn.ADDITION,
154
60
  labelKey: 'student.fluency.addition',
155
61
  symbol: FluencyMathOperatorSymbol.ADDITION,
62
+ badgeBg: COLORS.GREEN_3,
63
+ badgeText: COLORS.GREEN_8,
156
64
  },
157
- [FluencyOperator.SUBTRACTION]: {
65
+ {
66
+ operator: FluencyTableColumn.SUBTRACTION,
158
67
  labelKey: 'student.fluency.subtraction',
159
68
  symbol: FluencyMathOperatorSymbol.SUBTRACTION,
69
+ badgeBg: COLORS.ORANGE_3,
70
+ badgeText: COLORS.ORANGE_8,
160
71
  },
161
- [FluencyOperator.MULTIPLICATION]: {
162
- labelKey: 'student.fluency.multiplication',
163
- symbol: FluencyMathOperatorSymbol.MULTIPLICATION,
164
- },
165
- [FluencyOperator.DIVISION]: {
72
+ {
73
+ operator: FluencyTableColumn.DIVISION,
166
74
  labelKey: 'student.fluency.division',
167
75
  symbol: FluencyMathOperatorSymbol.DIVISION,
76
+ badgeBg: COLORS.BLUE_3,
77
+ badgeText: COLORS.BLUE_8,
78
+ },
79
+ {
80
+ operator: FluencyTableColumn.MULTIPLICATION,
81
+ labelKey: 'student.fluency.multiplication',
82
+ symbol: FluencyMathOperatorSymbol.MULTIPLICATION,
83
+ badgeBg: COLORS.PURPLE_2,
84
+ badgeText: COLORS.PURPLE_8,
168
85
  },
169
- }
170
-
171
- export const TABLE_OPERATOR_COLUMNS: readonly OperatorColumnConfig[] = Object.values(
172
- FluencyOperator,
173
- ).map((operator) => ({
174
- operator: OPERATOR_TO_COLUMN[operator],
175
- labelKey: OPERATOR_CARD_CONFIG[operator].labelKey,
176
- }))
177
-
178
- export const LEGEND_LEVELS: readonly LegendItem[] = [
179
- { box: MasteryLevel.AUTOMATIC, labelKey: 'student.fluency.masteryMastered' },
180
- { box: MasteryLevel.STRONG, labelKey: 'student.fluency.masteryStrong' },
181
- { box: MasteryLevel.GROWING, labelKey: 'student.fluency.masteryGrowing' },
182
- { box: MasteryLevel.LEARNING, labelKey: 'student.fluency.masteryLearning' },
183
- { box: null, labelKey: 'teacher.fluency.progressNotStarted' },
184
86
  ]
@@ -1,95 +1,22 @@
1
1
  import { COLORS } from '@magmamath/react-native-ui'
2
- import {
3
- COLUMN_TO_OPERATOR,
4
- FluencyOperator,
5
- FluencyTableColumn,
6
- MasteryLevel,
7
- MATRIX_NOT_STARTED_COLOR,
8
- MAX_GRADE_WITH_TWO_OPERATORS,
9
- OPERATOR_PALETTES,
10
- TABLE_OPERATOR_COLUMNS,
11
- TWO_OPERATOR_SET,
12
- } from './fluencyTeacher.constants'
2
+ import type { TranslationKey } from '../../i18n/i18n'
13
3
  import type {
14
4
  ClassFluencySummaryResponse,
15
5
  ClassFluencyStats,
16
6
  ClassOperatorAverages,
17
- DrawerGrid,
18
7
  FluencyStudent,
19
- OperatorBandColors,
20
- OperatorColumnConfig,
21
8
  StudentResult,
22
9
  } from './fluencyTeacher.types'
23
10
 
24
- export const getCellColor = (
25
- box: MasteryLevel | null,
26
- colorMap: Record<MasteryLevel, string>,
27
- ): string => (box ? (colorMap[box] ?? MATRIX_NOT_STARTED_COLOR) : MATRIX_NOT_STARTED_COLOR)
11
+ export const getCellColor = (box: number | null, colorMap: Record<number, string>): string =>
12
+ box ? (colorMap[box] ?? COLORS.NEUTRAL_2) : COLORS.NEUTRAL_2
28
13
 
29
- export const isTwoOperatorGrade = (grade: number) => grade <= MAX_GRADE_WITH_TWO_OPERATORS
30
-
31
- export const getTableOperatorColumns = (grade: number): readonly OperatorColumnConfig[] =>
32
- isTwoOperatorGrade(grade)
33
- ? TABLE_OPERATOR_COLUMNS.filter(({ operator }) =>
34
- TWO_OPERATOR_SET.includes(COLUMN_TO_OPERATOR[operator]),
35
- )
36
- : TABLE_OPERATOR_COLUMNS
37
-
38
- export const getOperatorsForGrade = (grade: number): readonly FluencyOperator[] =>
39
- isTwoOperatorGrade(grade) ? TWO_OPERATOR_SET : Object.values(FluencyOperator)
40
-
41
- export const isColumnVisibleForGrade = (column: FluencyTableColumn, grade: number): boolean =>
42
- column === FluencyTableColumn.AVERAGE ||
43
- getTableOperatorColumns(grade).some(({ operator }) => operator === column)
44
-
45
- export const isCommutativeOperator = (operator: FluencyOperator): boolean =>
46
- operator === FluencyOperator.ADDITION || operator === FluencyOperator.MULTIPLICATION
47
-
48
- export const getHigherMasteryLevel = (a: MasteryLevel, b: MasteryLevel): MasteryLevel =>
49
- a > b ? a : b
50
-
51
- const toValidMasteryLevel = (box: MasteryLevel | null): MasteryLevel | null =>
52
- box !== null && box >= MasteryLevel.LEARNING && box <= MasteryLevel.AUTOMATIC ? box : null
53
-
54
- export const countFactsByMasteryLevel = (
55
- grid: DrawerGrid | null,
56
- operator: FluencyOperator,
57
- ): Map<MasteryLevel | null, number> => {
58
- const counts = new Map<MasteryLevel | null, number>()
59
- const commutative = isCommutativeOperator(operator)
60
- grid?.rows.forEach((row) =>
61
- row.cells.forEach((cell, columnIndex) => {
62
- if (cell.isEmpty) return
63
- // Commutative grids mirror each fact into (a,b) and (b,a) cells —
64
- // count only the upper triangle so each fact is counted once.
65
- if (commutative && grid.colLabels[columnIndex] < row.label) return
66
- const box = toValidMasteryLevel(cell.box)
67
- counts.set(box, (counts.get(box) ?? 0) + 1)
68
- }),
69
- )
70
- return counts
71
- }
72
-
73
- const toBandIndex = (percent: number): number => {
74
- if (percent <= 20) return 0
75
- if (percent <= 40) return 1
76
- if (percent <= 60) return 2
77
- if (percent <= 80) return 3
78
- return 4
79
- }
80
-
81
- // Dark shades (bands 4-5) need white text to stay readable
82
- export const getOperatorBandColors = (
83
- operator: FluencyOperator,
84
- percent: number,
85
- ): OperatorBandColors => {
86
- const palette = OPERATOR_PALETTES[operator]
87
- const band = toBandIndex(percent)
88
- return {
89
- background: palette.bands[band],
90
- border: palette.bandBorders[band],
91
- text: band >= 3 ? COLORS.NEUTRAL_1 : palette.darkText,
92
- }
14
+ export const toAverageLabel = (overallPercent: number): TranslationKey => {
15
+ if (overallPercent >= 0.9) return 'teacher.fluency.progressFluent'
16
+ if (overallPercent >= 0.65) return 'teacher.fluency.progressProficient'
17
+ if (overallPercent >= 0.35) return 'teacher.fluency.progressDeveloping'
18
+ if (overallPercent >= 0.05) return 'teacher.fluency.progressLearning'
19
+ return 'teacher.fluency.progressNotStarted'
93
20
  }
94
21
 
95
22
  const toPercent = (decimal: number): number => Math.round(decimal * 100)
@@ -141,6 +68,7 @@ export const buildStudentsFluencyTable = ({
141
68
  id: row.studentId,
142
69
  name: student.name,
143
70
  averagePercent: toPercent(row.overallPercent),
71
+ averageLabel: toAverageLabel(row.overallPercent),
144
72
  scores: {
145
73
  addition: toPercent(row.byOperator.addition),
146
74
  subtraction: toPercent(row.byOperator.subtraction),
@@ -1,10 +1,5 @@
1
1
  import type { TranslationKey } from '../../i18n/i18n'
2
- import {
3
- FluencyMathOperatorSymbol,
4
- FluencyOperator,
5
- FluencyTableColumn,
6
- MasteryLevel,
7
- } from './fluencyTeacher.constants'
2
+ import { FluencyOperator, FluencyOperatorColumn, FluencyTableColumn } from './fluencyTeacher.constants'
8
3
  import { SortingDirection } from '../../shared/common.constants'
9
4
 
10
5
  type FactId = string
@@ -15,7 +10,7 @@ type FactPosition = {
15
10
  }
16
11
 
17
12
  type FactState = {
18
- box: MasteryLevel
13
+ box: number
19
14
  lastAttemptedAt: string | null
20
15
  lastSolvedAt: string | null
21
16
  attemptsCount: number
@@ -67,8 +62,6 @@ export type ClassFluencySummaryResponse = {
67
62
  hardestFacts: TeacherFluencyHardestFact[]
68
63
  }
69
64
 
70
- export type FluencyOperatorColumn = Exclude<FluencyTableColumn, FluencyTableColumn.AVERAGE>
71
-
72
65
  export type ClassOperatorAverages = Record<FluencyOperatorColumn, number>
73
66
 
74
67
  export type ClassFluencyStats = ClassFluencySummaryResponse & {
@@ -95,6 +88,7 @@ export type StudentResult = {
95
88
  id: string
96
89
  name: string
97
90
  averagePercent: number
91
+ averageLabel: TranslationKey
98
92
  scores: StudentOperatorScores
99
93
  }
100
94
 
@@ -105,38 +99,11 @@ export type StudentDrawerInfo = StudentResult & {
105
99
  export type OperatorColumnConfig = {
106
100
  operator: FluencyOperatorColumn
107
101
  labelKey: TranslationKey
102
+ symbol: string
103
+ badgeBg: string
104
+ badgeText: string
108
105
  }
109
106
 
110
- export type OperatorCardConfig = {
111
- labelKey: TranslationKey
112
- symbol: FluencyMathOperatorSymbol
113
- }
114
-
115
- export type OperatorPalette = {
116
- bands: [string, string, string, string, string]
117
- bandBorders: [string, string, string, string, string]
118
- darkText: string
119
- legendCount: string
120
- boxBorder: string
121
- }
122
-
123
- export type OperatorBandColors = {
124
- background: string
125
- border: string
126
- text: string
127
- }
128
-
129
- export type LegendItem = {
130
- box: MasteryLevel | null
131
- labelKey: TranslationKey
132
- }
133
-
134
- export type DrawerGridCell = { box: MasteryLevel | null; isEmpty: boolean }
135
-
136
- export type DrawerGridRow = { label: number; cells: DrawerGridCell[] }
137
-
138
- export type DrawerGrid = { colLabels: number[]; rows: DrawerGridRow[] }
139
-
140
107
  export type TeacherFluencyGateProps = {
141
108
  students: FluencyStudent[]
142
109
  grade: number
@@ -2,8 +2,10 @@ import { useMemo } from 'react'
2
2
  import { useUnit } from 'effector-react'
3
3
  import { useTeacherFluency } from '../context/TeacherFluencyContext'
4
4
  import { FluencyOperator } from '../fluencyTeacher.constants'
5
- import { getHigherMasteryLevel, isCommutativeOperator } from '../fluencyTeacher.helpers'
6
- import type { DrawerGrid } from '../fluencyTeacher.types'
5
+
6
+ export type DrawerGridCell = { box: number | null; isEmpty: boolean }
7
+ export type DrawerGridRow = { label: number; cells: DrawerGridCell[] }
8
+ export type DrawerGrid = { colLabels: number[]; rows: DrawerGridRow[] }
7
9
 
8
10
  export const useDrawerGrid = (operator: FluencyOperator): DrawerGrid | null => {
9
11
  const { model } = useTeacherFluency()
@@ -17,7 +19,8 @@ export const useDrawerGrid = (operator: FluencyOperator): DrawerGrid | null => {
17
19
 
18
20
  const isDivision = operator === FluencyOperator.DIVISION
19
21
  const isSubtraction = operator === FluencyOperator.SUBTRACTION
20
- const isCommutative = isCommutativeOperator(operator)
22
+ const isCommutative =
23
+ operator === FluencyOperator.ADDITION || operator === FluencyOperator.MULTIPLICATION
21
24
 
22
25
  const maxRow = Math.max(...factList.map((f) => f.position.row))
23
26
  const maxCol = Math.max(...factList.map((f) => f.position.column))
@@ -43,7 +46,7 @@ export const useDrawerGrid = (operator: FluencyOperator): DrawerGrid | null => {
43
46
  const mirrorBox = mirrorFact?.box ?? null
44
47
  const box =
45
48
  primaryBox !== null && mirrorBox !== null
46
- ? getHigherMasteryLevel(primaryBox, mirrorBox)
49
+ ? Math.max(primaryBox, mirrorBox)
47
50
  : (primaryBox ?? mirrorBox)
48
51
 
49
52
  return { box, isEmpty: false }
@@ -1,8 +1,7 @@
1
1
  import { useMemo, useState } from 'react'
2
2
  import type { LayoutChangeEvent } from 'react-native'
3
- import { FluencyOperator, MasteryLevel, MATRIX_CELL_COLORS } from '../fluencyTeacher.constants'
4
- import type { DrawerGrid } from '../fluencyTeacher.types'
5
- import { useDrawerGrid } from './useDrawerGrid'
3
+ import { FluencyOperator, MATRIX_CELL_COLORS } from '../fluencyTeacher.constants'
4
+ import { useDrawerGrid, type DrawerGrid } from './useDrawerGrid'
6
5
 
7
6
  const MATRIX_CELL_GAP = 2
8
7
 
@@ -11,7 +10,7 @@ type DrawerMatrixLayout = {
11
10
  cellSize: number
12
11
  fontSize: number
13
12
  borderRadius: number
14
- cellColorMap: Record<MasteryLevel, string>
13
+ cellColorMap: Record<number, string>
15
14
  onLayout: (e: LayoutChangeEvent) => void
16
15
  }
17
16
 
@@ -8,16 +8,13 @@ export class TeacherFluencyFiltersModel {
8
8
  public readonly $search = restore(this.setSearch, '')
9
9
 
10
10
  public readonly toggleSort = createEvent<FluencyTableColumn>()
11
- public readonly resetSort = createEvent()
12
11
  public readonly $sort = createStore<SortState>({
13
12
  column: FluencyTableColumn.AVERAGE,
14
13
  direction: SortingDirection.DESC,
14
+ }).on(this.toggleSort, (state, column) => {
15
+ if (state.column !== column) return { column, direction: SortingDirection.DESC }
16
+ const direction =
17
+ state.direction === SortingDirection.DESC ? SortingDirection.ASC : SortingDirection.DESC
18
+ return { column, direction }
15
19
  })
16
- .reset(this.resetSort)
17
- .on(this.toggleSort, (state, column) => {
18
- if (state.column !== column) return { column, direction: SortingDirection.DESC }
19
- const direction =
20
- state.direction === SortingDirection.DESC ? SortingDirection.ASC : SortingDirection.DESC
21
- return { column, direction }
22
- })
23
20
  }
@@ -3,7 +3,6 @@ import { createGate } from 'effector-react'
3
3
  import { TeacherFluencyApiModel } from './TeacherFluencyApiModel'
4
4
  import { TeacherFluencyFiltersModel } from './TeacherFluencyFiltersModel'
5
5
  import { TeacherFluencyTableModel } from './TeacherFluencyTableModel'
6
- import { isColumnVisibleForGrade } from '../fluencyTeacher.helpers'
7
6
  import type { TeacherFluencyGateProps, TeacherFluencyModelProps } from '../fluencyTeacher.types'
8
7
 
9
8
  export class TeacherFluencyModel {
@@ -27,13 +26,6 @@ export class TeacherFluencyModel {
27
26
  target: this.table.reset,
28
27
  })
29
28
 
30
- sample({
31
- clock: this.gate.state,
32
- source: this.filters.$sort,
33
- filter: (sort, { grade }) => !isColumnVisibleForGrade(sort.column, grade),
34
- target: this.filters.resetSort,
35
- })
36
-
37
29
  sample({
38
30
  clock: this.gate.state,
39
31
  source: this.table.initFx.pending,
@@ -1 +0,0 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNativeSvg","_interopRequireWildcard","_reactNativeUi","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","DivisionIcon","color","COLORS","NEUTRAL_9","size","jsxs","width","height","viewBox","fill","children","jsx","Path","d","exports"],"sourceRoot":"../../../../../src","sources":["features/fluency-teacher/assets/DivisionIcon.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,eAAA,GAAAC,uBAAA,CAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AAA8D,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAK,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,SAAAJ,wBAAAI,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;AAAA,SAAAf,uBAAAO,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAI,UAAA,GAAAJ,CAAA,KAAAK,OAAA,EAAAL,CAAA;AAEvD,MAAMmB,YAAY,GAAGA,CAAC;EAAEC,KAAK,GAAGC,qBAAM,CAACC,SAAS;EAAEC,IAAI,GAAG;AAAc,CAAC,kBAC7E,IAAAzB,WAAA,CAAA0B,IAAA,EAAC7B,eAAA,CAAAU,OAAG;EAACoB,KAAK,EAAEF,IAAK;EAACG,MAAM,EAAEH,IAAK;EAACI,OAAO,EAAC,WAAW;EAACC,IAAI,EAAC,MAAM;EAAAC,QAAA,gBAC7D,IAAA/B,WAAA,CAAAgC,GAAA,EAACnC,eAAA,CAAAoC,IAAI;IACHC,CAAC,EAAC,0MAA0M;IAC5MJ,IAAI,EAAER;EAAM,CACb,CAAC,eACF,IAAAtB,WAAA,CAAAgC,GAAA,EAACnC,eAAA,CAAAoC,IAAI;IACHC,CAAC,EAAC,gNAAgN;IAClNJ,IAAI,EAAER;EAAM,CACb,CAAC,eACF,IAAAtB,WAAA,CAAAgC,GAAA,EAACnC,eAAA,CAAAoC,IAAI;IACHC,CAAC,EAAC,wKAAwK;IAC1KJ,IAAI,EAAER;EAAM,CACb,CAAC;AAAA,CACC,CACN;AAAAa,OAAA,CAAAd,YAAA,GAAAA,YAAA","ignoreList":[]}
@@ -1,83 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.MatrixLegend = void 0;
7
- var _react = _interopRequireDefault(require("react"));
8
- var _reactNative = require("react-native");
9
- var _reactNativeUi = require("@magmamath/react-native-ui");
10
- var _i18n = require("../../../../i18n/i18n.js");
11
- var _fluencyTeacherConstants = require("../../fluencyTeacher.constants.js");
12
- var _fluencyTeacherHelpers = require("../../fluencyTeacher.helpers.js");
13
- var _jsxRuntime = require("react/jsx-runtime");
14
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
- const MatrixLegend = ({
16
- operator,
17
- grid
18
- }) => {
19
- const t = (0, _i18n.useText)();
20
- const counts = (0, _fluencyTeacherHelpers.countFactsByMasteryLevel)(grid, operator);
21
- const countColor = _fluencyTeacherConstants.OPERATOR_PALETTES[operator].legendCount;
22
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
23
- style: styles.container,
24
- children: _fluencyTeacherConstants.LEGEND_LEVELS.map(({
25
- box,
26
- labelKey
27
- }) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
28
- style: styles.item,
29
- children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
30
- style: styles.labelWrap,
31
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
32
- style: [styles.swatch, {
33
- backgroundColor: box === null ? _fluencyTeacherConstants.MATRIX_NOT_STARTED_COLOR : _fluencyTeacherConstants.MATRIX_CELL_COLORS[operator][box]
34
- }]
35
- }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Text, {
36
- style: styles.label,
37
- children: [t(labelKey), ":"]
38
- })]
39
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
40
- style: [styles.count, {
41
- color: countColor
42
- }],
43
- children: counts.get(box) ?? 0
44
- })]
45
- }, labelKey))
46
- });
47
- };
48
- exports.MatrixLegend = MatrixLegend;
49
- const styles = _reactNative.StyleSheet.create({
50
- container: {
51
- width: 130,
52
- gap: _reactNativeUi.SPACING[100],
53
- paddingTop: _reactNativeUi.SPACING[200],
54
- paddingHorizontal: _reactNativeUi.SPACING[100]
55
- },
56
- item: {
57
- flexDirection: 'row',
58
- alignItems: 'center',
59
- justifyContent: 'space-between'
60
- },
61
- labelWrap: {
62
- flexDirection: 'row',
63
- alignItems: 'center',
64
- gap: _reactNativeUi.SPACING[100]
65
- },
66
- swatch: {
67
- width: 10,
68
- height: 10,
69
- borderRadius: 4
70
- },
71
- label: {
72
- fontFamily: _reactNativeUi.FONT_FAMILY.buenosAires,
73
- fontWeight: '400',
74
- fontSize: 10,
75
- color: _reactNativeUi.COLORS.NEUTRAL_7
76
- },
77
- count: {
78
- fontFamily: _reactNativeUi.FONT_FAMILY.buenosAiresSemiBold,
79
- fontWeight: '600',
80
- fontSize: 13
81
- }
82
- });
83
- //# sourceMappingURL=MatrixLegend.js.map