@magmamath/students-features 1.8.0-rc.0-fluency-visuals → 1.8.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.
- package/dist/commonjs/features/fluency/components/FluencySolving.js +2 -2
- package/dist/commonjs/features/fluency/components/FluencySolving.js.map +1 -1
- package/dist/commonjs/features/fluency/components/fluency-solving/components/EquationContent.js +8 -9
- package/dist/commonjs/features/fluency/components/fluency-solving/components/EquationContent.js.map +1 -1
- package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencyCardDeck.js +1 -3
- package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencyCardDeck.js.map +1 -1
- package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencyEquationCard.js +10 -63
- package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencyEquationCard.js.map +1 -1
- package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingHeader.js +0 -10
- package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingHeader.js.map +1 -1
- package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingProgress.js +2 -0
- package/dist/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingProgress.js.map +1 -1
- package/dist/commonjs/features/fluency/index.js +0 -20
- package/dist/commonjs/features/fluency/index.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/assets/{SortDefaultIcon.js → DivisionIcon.js} +11 -8
- package/dist/commonjs/features/fluency-teacher/assets/DivisionIcon.js.map +1 -0
- package/dist/commonjs/features/fluency-teacher/components/FluencyTeacher.js +4 -3
- package/dist/commonjs/features/fluency-teacher/components/FluencyTeacher.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerHeader.js +48 -43
- package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerHeader.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerMatrixes.js +11 -28
- package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerMatrixes.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerOperatorBox.js +27 -44
- package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerOperatorBox.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerOperatorStatCard.js +47 -40
- package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerOperatorStatCard.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerStats.js +14 -24
- package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerStats.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/components/drawer/FluencyTeacherDrawer.js +6 -6
- package/dist/commonjs/features/fluency-teacher/components/drawer/FluencyTeacherDrawer.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/components/matrix/DrawerMatrix.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/components/matrix/MatrixCell.js +2 -16
- package/dist/commonjs/features/fluency-teacher/components/matrix/MatrixCell.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/components/matrix/MatrixLegend.js +83 -0
- package/dist/commonjs/features/fluency-teacher/components/matrix/MatrixLegend.js.map +1 -0
- package/dist/commonjs/features/fluency-teacher/components/matrix/MatrixRow.js +1 -2
- package/dist/commonjs/features/fluency-teacher/components/matrix/MatrixRow.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/components/table/AllPupilsTableRow.js +15 -41
- package/dist/commonjs/features/fluency-teacher/components/table/AllPupilsTableRow.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/components/table/AverageCell.js +55 -0
- package/dist/commonjs/features/fluency-teacher/components/table/AverageCell.js.map +1 -0
- package/dist/commonjs/features/fluency-teacher/components/table/AverageSortButton.js +6 -62
- package/dist/commonjs/features/fluency-teacher/components/table/AverageSortButton.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/components/table/FluencyTeacherStudentsTable.js +42 -40
- package/dist/commonjs/features/fluency-teacher/components/table/FluencyTeacherStudentsTable.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/components/table/OperatorBadge.js +25 -16
- package/dist/commonjs/features/fluency-teacher/components/table/OperatorBadge.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/components/table/SortOrderCarets.js +40 -0
- package/dist/commonjs/features/fluency-teacher/components/table/SortOrderCarets.js.map +1 -0
- package/dist/commonjs/features/fluency-teacher/components/table/TableColumnSortButton.js +30 -40
- package/dist/commonjs/features/fluency-teacher/components/table/TableColumnSortButton.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/components/table/TableRow.js +59 -72
- package/dist/commonjs/features/fluency-teacher/components/table/TableRow.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/components/table/tableCell.styles.js +45 -0
- package/dist/commonjs/features/fluency-teacher/components/table/tableCell.styles.js.map +1 -0
- package/dist/commonjs/features/fluency-teacher/context/TeacherFluencyContext.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/fluencyTeacher.constants.js +103 -38
- package/dist/commonjs/features/fluency-teacher/fluencyTeacher.constants.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/fluencyTeacher.helpers.js +52 -10
- package/dist/commonjs/features/fluency-teacher/fluencyTeacher.helpers.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/hooks/useDrawerGrid.js +3 -2
- package/dist/commonjs/features/fluency-teacher/hooks/useDrawerGrid.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/hooks/useDrawerMatrix.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/model/TeacherFluencyFiltersModel.js +2 -1
- package/dist/commonjs/features/fluency-teacher/model/TeacherFluencyFiltersModel.js.map +1 -1
- package/dist/commonjs/features/fluency-teacher/model/TeacherFluencyModel.js +9 -0
- package/dist/commonjs/features/fluency-teacher/model/TeacherFluencyModel.js.map +1 -1
- package/dist/module/features/fluency/components/FluencySolving.js +2 -2
- package/dist/module/features/fluency/components/FluencySolving.js.map +1 -1
- package/dist/module/features/fluency/components/fluency-solving/components/EquationContent.js +8 -9
- package/dist/module/features/fluency/components/fluency-solving/components/EquationContent.js.map +1 -1
- package/dist/module/features/fluency/components/fluency-solving/components/FluencyCardDeck.js +1 -3
- package/dist/module/features/fluency/components/fluency-solving/components/FluencyCardDeck.js.map +1 -1
- package/dist/module/features/fluency/components/fluency-solving/components/FluencyEquationCard.js +11 -64
- package/dist/module/features/fluency/components/fluency-solving/components/FluencyEquationCard.js.map +1 -1
- package/dist/module/features/fluency/components/fluency-solving/components/FluencySolvingHeader.js +0 -10
- package/dist/module/features/fluency/components/fluency-solving/components/FluencySolvingHeader.js.map +1 -1
- package/dist/module/features/fluency/components/fluency-solving/components/FluencySolvingProgress.js +2 -0
- package/dist/module/features/fluency/components/fluency-solving/components/FluencySolvingProgress.js.map +1 -1
- package/dist/module/features/fluency/index.js +0 -2
- package/dist/module/features/fluency/index.js.map +1 -1
- package/dist/module/features/fluency-teacher/assets/DivisionIcon.js +26 -0
- package/dist/module/features/fluency-teacher/assets/DivisionIcon.js.map +1 -0
- package/dist/module/features/fluency-teacher/components/FluencyTeacher.js +4 -3
- package/dist/module/features/fluency-teacher/components/FluencyTeacher.js.map +1 -1
- package/dist/module/features/fluency-teacher/components/drawer/DrawerHeader.js +49 -44
- package/dist/module/features/fluency-teacher/components/drawer/DrawerHeader.js.map +1 -1
- package/dist/module/features/fluency-teacher/components/drawer/DrawerMatrixes.js +14 -31
- package/dist/module/features/fluency-teacher/components/drawer/DrawerMatrixes.js.map +1 -1
- package/dist/module/features/fluency-teacher/components/drawer/DrawerOperatorBox.js +28 -45
- package/dist/module/features/fluency-teacher/components/drawer/DrawerOperatorBox.js.map +1 -1
- package/dist/module/features/fluency-teacher/components/drawer/DrawerOperatorStatCard.js +48 -41
- package/dist/module/features/fluency-teacher/components/drawer/DrawerOperatorStatCard.js.map +1 -1
- package/dist/module/features/fluency-teacher/components/drawer/DrawerStats.js +17 -27
- package/dist/module/features/fluency-teacher/components/drawer/DrawerStats.js.map +1 -1
- package/dist/module/features/fluency-teacher/components/drawer/FluencyTeacherDrawer.js +6 -6
- package/dist/module/features/fluency-teacher/components/drawer/FluencyTeacherDrawer.js.map +1 -1
- package/dist/module/features/fluency-teacher/components/matrix/DrawerMatrix.js.map +1 -1
- package/dist/module/features/fluency-teacher/components/matrix/MatrixCell.js +3 -17
- package/dist/module/features/fluency-teacher/components/matrix/MatrixCell.js.map +1 -1
- package/dist/module/features/fluency-teacher/components/matrix/MatrixLegend.js +77 -0
- package/dist/module/features/fluency-teacher/components/matrix/MatrixLegend.js.map +1 -0
- package/dist/module/features/fluency-teacher/components/matrix/MatrixRow.js +1 -2
- package/dist/module/features/fluency-teacher/components/matrix/MatrixRow.js.map +1 -1
- package/dist/module/features/fluency-teacher/components/table/AllPupilsTableRow.js +16 -42
- package/dist/module/features/fluency-teacher/components/table/AllPupilsTableRow.js.map +1 -1
- package/dist/module/features/fluency-teacher/components/table/AverageCell.js +49 -0
- package/dist/module/features/fluency-teacher/components/table/AverageCell.js.map +1 -0
- package/dist/module/features/fluency-teacher/components/table/AverageSortButton.js +7 -63
- package/dist/module/features/fluency-teacher/components/table/AverageSortButton.js.map +1 -1
- package/dist/module/features/fluency-teacher/components/table/FluencyTeacherStudentsTable.js +44 -42
- package/dist/module/features/fluency-teacher/components/table/FluencyTeacherStudentsTable.js.map +1 -1
- package/dist/module/features/fluency-teacher/components/table/OperatorBadge.js +25 -16
- package/dist/module/features/fluency-teacher/components/table/OperatorBadge.js.map +1 -1
- package/dist/module/features/fluency-teacher/components/table/SortOrderCarets.js +34 -0
- package/dist/module/features/fluency-teacher/components/table/SortOrderCarets.js.map +1 -0
- package/dist/module/features/fluency-teacher/components/table/TableColumnSortButton.js +32 -42
- package/dist/module/features/fluency-teacher/components/table/TableColumnSortButton.js.map +1 -1
- package/dist/module/features/fluency-teacher/components/table/TableRow.js +62 -75
- package/dist/module/features/fluency-teacher/components/table/TableRow.js.map +1 -1
- package/dist/module/features/fluency-teacher/components/table/tableCell.styles.js +42 -0
- package/dist/module/features/fluency-teacher/components/table/tableCell.styles.js.map +1 -0
- package/dist/module/features/fluency-teacher/context/TeacherFluencyContext.js.map +1 -1
- package/dist/module/features/fluency-teacher/fluencyTeacher.constants.js +102 -37
- package/dist/module/features/fluency-teacher/fluencyTeacher.constants.js.map +1 -1
- package/dist/module/features/fluency-teacher/fluencyTeacher.helpers.js +43 -8
- package/dist/module/features/fluency-teacher/fluencyTeacher.helpers.js.map +1 -1
- package/dist/module/features/fluency-teacher/hooks/useDrawerGrid.js +3 -2
- package/dist/module/features/fluency-teacher/hooks/useDrawerGrid.js.map +1 -1
- package/dist/module/features/fluency-teacher/hooks/useDrawerMatrix.js.map +1 -1
- package/dist/module/features/fluency-teacher/model/TeacherFluencyFiltersModel.js +2 -1
- package/dist/module/features/fluency-teacher/model/TeacherFluencyFiltersModel.js.map +1 -1
- package/dist/module/features/fluency-teacher/model/TeacherFluencyModel.js +9 -0
- package/dist/module/features/fluency-teacher/model/TeacherFluencyModel.js.map +1 -1
- package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/EquationContent.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencyCardDeck.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencyEquationCard.d.ts +1 -2
- package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencyEquationCard.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/FluencySolvingHeader.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency/index.d.ts +0 -2
- package/dist/typescript/commonjs/features/fluency/index.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/assets/DivisionIcon.d.ts +4 -0
- package/dist/typescript/commonjs/features/fluency-teacher/assets/DivisionIcon.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/DrawerHeader.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/DrawerMatrixes.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/DrawerOperatorBox.d.ts +1 -4
- package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/DrawerOperatorBox.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/DrawerOperatorStatCard.d.ts +6 -4
- package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/DrawerOperatorStatCard.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/DrawerStats.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/FluencyTeacherDrawer.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/DrawerMatrix.d.ts +3 -2
- package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/DrawerMatrix.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/MatrixCell.d.ts +6 -5
- package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/MatrixCell.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/MatrixHeaderRow.d.ts +2 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/MatrixHeaderRow.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/MatrixLegend.d.ts +10 -0
- package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/MatrixLegend.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/MatrixRow.d.ts +5 -3
- package/dist/typescript/commonjs/features/fluency-teacher/components/matrix/MatrixRow.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/table/AllPupilsTableRow.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/table/AverageCell.d.ts +9 -0
- package/dist/typescript/commonjs/features/fluency-teacher/components/table/AverageCell.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/fluency-teacher/components/table/AverageSortButton.d.ts +2 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/table/AverageSortButton.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/table/FluencyTeacherStudentsTable.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/table/OperatorBadge.d.ts +5 -4
- package/dist/typescript/commonjs/features/fluency-teacher/components/table/OperatorBadge.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/table/SortOrderCarets.d.ts +9 -0
- package/dist/typescript/commonjs/features/fluency-teacher/components/table/SortOrderCarets.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/fluency-teacher/components/table/TableColumnSortButton.d.ts +7 -6
- package/dist/typescript/commonjs/features/fluency-teacher/components/table/TableColumnSortButton.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/table/TableRow.d.ts +4 -3
- package/dist/typescript/commonjs/features/fluency-teacher/components/table/TableRow.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/table/tableCell.styles.d.ts +35 -0
- package/dist/typescript/commonjs/features/fluency-teacher/components/table/tableCell.styles.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/fluency-teacher/context/TeacherFluencyContext.d.ts +1 -0
- package/dist/typescript/commonjs/features/fluency-teacher/context/TeacherFluencyContext.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/fluencyTeacher.constants.d.ts +16 -3
- package/dist/typescript/commonjs/features/fluency-teacher/fluencyTeacher.constants.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/fluencyTeacher.helpers.d.ts +11 -4
- package/dist/typescript/commonjs/features/fluency-teacher/fluencyTeacher.helpers.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/fluencyTeacher.types.d.ts +35 -6
- package/dist/typescript/commonjs/features/fluency-teacher/fluencyTeacher.types.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/hooks/useDrawerGrid.d.ts +1 -12
- package/dist/typescript/commonjs/features/fluency-teacher/hooks/useDrawerGrid.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/hooks/useDrawerMatrix.d.ts +3 -3
- package/dist/typescript/commonjs/features/fluency-teacher/hooks/useDrawerMatrix.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/model/TeacherFluencyFiltersModel.d.ts +1 -0
- package/dist/typescript/commonjs/features/fluency-teacher/model/TeacherFluencyFiltersModel.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency-teacher/model/TeacherFluencyModel.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency/components/fluency-solving/components/EquationContent.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencyCardDeck.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencyEquationCard.d.ts +1 -2
- package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencyEquationCard.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency/components/fluency-solving/components/FluencySolvingHeader.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency/index.d.ts +0 -2
- package/dist/typescript/module/features/fluency/index.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/assets/DivisionIcon.d.ts +4 -0
- package/dist/typescript/module/features/fluency-teacher/assets/DivisionIcon.d.ts.map +1 -0
- package/dist/typescript/module/features/fluency-teacher/components/drawer/DrawerHeader.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/components/drawer/DrawerMatrixes.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/components/drawer/DrawerOperatorBox.d.ts +1 -4
- package/dist/typescript/module/features/fluency-teacher/components/drawer/DrawerOperatorBox.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/components/drawer/DrawerOperatorStatCard.d.ts +6 -4
- package/dist/typescript/module/features/fluency-teacher/components/drawer/DrawerOperatorStatCard.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/components/drawer/DrawerStats.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/components/drawer/FluencyTeacherDrawer.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/components/matrix/DrawerMatrix.d.ts +3 -2
- package/dist/typescript/module/features/fluency-teacher/components/matrix/DrawerMatrix.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/components/matrix/MatrixCell.d.ts +6 -5
- package/dist/typescript/module/features/fluency-teacher/components/matrix/MatrixCell.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/components/matrix/MatrixHeaderRow.d.ts +2 -1
- package/dist/typescript/module/features/fluency-teacher/components/matrix/MatrixHeaderRow.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/components/matrix/MatrixLegend.d.ts +10 -0
- package/dist/typescript/module/features/fluency-teacher/components/matrix/MatrixLegend.d.ts.map +1 -0
- package/dist/typescript/module/features/fluency-teacher/components/matrix/MatrixRow.d.ts +5 -3
- package/dist/typescript/module/features/fluency-teacher/components/matrix/MatrixRow.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/components/table/AllPupilsTableRow.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/components/table/AverageCell.d.ts +9 -0
- package/dist/typescript/module/features/fluency-teacher/components/table/AverageCell.d.ts.map +1 -0
- package/dist/typescript/module/features/fluency-teacher/components/table/AverageSortButton.d.ts +2 -1
- package/dist/typescript/module/features/fluency-teacher/components/table/AverageSortButton.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/components/table/FluencyTeacherStudentsTable.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/components/table/OperatorBadge.d.ts +5 -4
- package/dist/typescript/module/features/fluency-teacher/components/table/OperatorBadge.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/components/table/SortOrderCarets.d.ts +9 -0
- package/dist/typescript/module/features/fluency-teacher/components/table/SortOrderCarets.d.ts.map +1 -0
- package/dist/typescript/module/features/fluency-teacher/components/table/TableColumnSortButton.d.ts +7 -6
- package/dist/typescript/module/features/fluency-teacher/components/table/TableColumnSortButton.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/components/table/TableRow.d.ts +4 -3
- package/dist/typescript/module/features/fluency-teacher/components/table/TableRow.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/components/table/tableCell.styles.d.ts +35 -0
- package/dist/typescript/module/features/fluency-teacher/components/table/tableCell.styles.d.ts.map +1 -0
- package/dist/typescript/module/features/fluency-teacher/context/TeacherFluencyContext.d.ts +1 -0
- package/dist/typescript/module/features/fluency-teacher/context/TeacherFluencyContext.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/fluencyTeacher.constants.d.ts +16 -3
- package/dist/typescript/module/features/fluency-teacher/fluencyTeacher.constants.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/fluencyTeacher.helpers.d.ts +11 -4
- package/dist/typescript/module/features/fluency-teacher/fluencyTeacher.helpers.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/fluencyTeacher.types.d.ts +35 -6
- package/dist/typescript/module/features/fluency-teacher/fluencyTeacher.types.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/hooks/useDrawerGrid.d.ts +1 -12
- package/dist/typescript/module/features/fluency-teacher/hooks/useDrawerGrid.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/hooks/useDrawerMatrix.d.ts +3 -3
- package/dist/typescript/module/features/fluency-teacher/hooks/useDrawerMatrix.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/model/TeacherFluencyFiltersModel.d.ts +1 -0
- package/dist/typescript/module/features/fluency-teacher/model/TeacherFluencyFiltersModel.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency-teacher/model/TeacherFluencyModel.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/features/fluency/components/FluencySolving.tsx +2 -2
- package/src/features/fluency/components/fluency-solving/components/EquationContent.tsx +8 -12
- package/src/features/fluency/components/fluency-solving/components/FluencyCardDeck.tsx +1 -6
- package/src/features/fluency/components/fluency-solving/components/FluencyEquationCard.tsx +11 -63
- package/src/features/fluency/components/fluency-solving/components/FluencySolvingHeader.tsx +0 -9
- package/src/features/fluency/components/fluency-solving/components/FluencySolvingProgress.tsx +2 -0
- package/src/features/fluency/index.ts +0 -2
- package/src/features/fluency-teacher/assets/DivisionIcon.tsx +20 -0
- package/src/features/fluency-teacher/components/FluencyTeacher.tsx +3 -3
- package/src/features/fluency-teacher/components/drawer/DrawerHeader.tsx +37 -35
- package/src/features/fluency-teacher/components/drawer/DrawerMatrixes.tsx +13 -32
- package/src/features/fluency-teacher/components/drawer/DrawerOperatorBox.tsx +20 -40
- package/src/features/fluency-teacher/components/drawer/DrawerOperatorStatCard.tsx +35 -35
- package/src/features/fluency-teacher/components/drawer/DrawerStats.tsx +16 -28
- package/src/features/fluency-teacher/components/drawer/FluencyTeacherDrawer.tsx +4 -5
- package/src/features/fluency-teacher/components/matrix/DrawerMatrix.tsx +3 -2
- package/src/features/fluency-teacher/components/matrix/MatrixCell.tsx +7 -16
- package/src/features/fluency-teacher/components/matrix/MatrixHeaderRow.tsx +1 -1
- package/src/features/fluency-teacher/components/matrix/MatrixLegend.tsx +81 -0
- package/src/features/fluency-teacher/components/matrix/MatrixRow.tsx +4 -4
- package/src/features/fluency-teacher/components/table/AllPupilsTableRow.tsx +13 -40
- package/src/features/fluency-teacher/components/table/AverageCell.tsx +45 -0
- package/src/features/fluency-teacher/components/table/AverageSortButton.tsx +8 -62
- package/src/features/fluency-teacher/components/table/FluencyTeacherStudentsTable.tsx +49 -35
- package/src/features/fluency-teacher/components/table/OperatorBadge.tsx +18 -11
- package/src/features/fluency-teacher/components/table/SortOrderCarets.tsx +37 -0
- package/src/features/fluency-teacher/components/table/TableColumnSortButton.tsx +28 -49
- package/src/features/fluency-teacher/components/table/TableRow.tsx +65 -64
- package/src/features/fluency-teacher/components/table/tableCell.styles.ts +39 -0
- package/src/features/fluency-teacher/context/TeacherFluencyContext.ts +1 -0
- package/src/features/fluency-teacher/fluencyTeacher.constants.ts +138 -40
- package/src/features/fluency-teacher/fluencyTeacher.helpers.ts +82 -10
- package/src/features/fluency-teacher/fluencyTeacher.types.ts +39 -6
- package/src/features/fluency-teacher/hooks/useDrawerGrid.ts +4 -7
- package/src/features/fluency-teacher/hooks/useDrawerMatrix.ts +4 -3
- package/src/features/fluency-teacher/model/TeacherFluencyFiltersModel.ts +8 -5
- package/src/features/fluency-teacher/model/TeacherFluencyModel.ts +8 -0
- package/dist/commonjs/features/fluency/components/FluencyVisualPlayground.js +0 -386
- package/dist/commonjs/features/fluency/components/FluencyVisualPlayground.js.map +0 -1
- package/dist/commonjs/features/fluency/components/fluency-solving/components/DebugBoxIndicator.js +0 -48
- package/dist/commonjs/features/fluency/components/fluency-solving/components/DebugBoxIndicator.js.map +0 -1
- package/dist/commonjs/features/fluency/visual-scaffolding/adapter.js +0 -36
- package/dist/commonjs/features/fluency/visual-scaffolding/adapter.js.map +0 -1
- package/dist/commonjs/features/fluency/visual-scaffolding/components/DiscreteCounterGrid.js +0 -232
- package/dist/commonjs/features/fluency/visual-scaffolding/components/DiscreteCounterGrid.js.map +0 -1
- package/dist/commonjs/features/fluency/visual-scaffolding/components/Dot.js +0 -51
- package/dist/commonjs/features/fluency/visual-scaffolding/components/Dot.js.map +0 -1
- package/dist/commonjs/features/fluency/visual-scaffolding/components/DynamicNumberLine.js +0 -104
- package/dist/commonjs/features/fluency/visual-scaffolding/components/DynamicNumberLine.js.map +0 -1
- package/dist/commonjs/features/fluency/visual-scaffolding/components/FactVisual.js +0 -75
- package/dist/commonjs/features/fluency/visual-scaffolding/components/FactVisual.js.map +0 -1
- package/dist/commonjs/features/fluency/visual-scaffolding/components/QuotativeBars.js +0 -91
- package/dist/commonjs/features/fluency/visual-scaffolding/components/QuotativeBars.js.map +0 -1
- package/dist/commonjs/features/fluency/visual-scaffolding/components/RelationalBlock.js +0 -279
- package/dist/commonjs/features/fluency/visual-scaffolding/components/RelationalBlock.js.map +0 -1
- package/dist/commonjs/features/fluency/visual-scaffolding/components/visualColors.js +0 -44
- package/dist/commonjs/features/fluency/visual-scaffolding/components/visualColors.js.map +0 -1
- package/dist/commonjs/features/fluency/visual-scaffolding/index.js +0 -73
- package/dist/commonjs/features/fluency/visual-scaffolding/index.js.map +0 -1
- package/dist/commonjs/features/fluency/visual-scaffolding/renderFact.js +0 -276
- package/dist/commonjs/features/fluency/visual-scaffolding/renderFact.js.map +0 -1
- package/dist/commonjs/features/fluency/visual-scaffolding/types.js +0 -2
- package/dist/commonjs/features/fluency/visual-scaffolding/types.js.map +0 -1
- package/dist/commonjs/features/fluency-teacher/assets/SortDefaultIcon.js.map +0 -1
- package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerMasteryLegend.js +0 -80
- package/dist/commonjs/features/fluency-teacher/components/drawer/DrawerMasteryLegend.js.map +0 -1
- package/dist/commonjs/features/fluency-teacher/components/table/TableRowAverageProgress.js +0 -71
- package/dist/commonjs/features/fluency-teacher/components/table/TableRowAverageProgress.js.map +0 -1
- package/dist/module/features/fluency/components/FluencyVisualPlayground.js +0 -379
- package/dist/module/features/fluency/components/FluencyVisualPlayground.js.map +0 -1
- package/dist/module/features/fluency/components/fluency-solving/components/DebugBoxIndicator.js +0 -43
- package/dist/module/features/fluency/components/fluency-solving/components/DebugBoxIndicator.js.map +0 -1
- package/dist/module/features/fluency/visual-scaffolding/adapter.js +0 -31
- package/dist/module/features/fluency/visual-scaffolding/adapter.js.map +0 -1
- package/dist/module/features/fluency/visual-scaffolding/components/DiscreteCounterGrid.js +0 -225
- package/dist/module/features/fluency/visual-scaffolding/components/DiscreteCounterGrid.js.map +0 -1
- package/dist/module/features/fluency/visual-scaffolding/components/Dot.js +0 -45
- package/dist/module/features/fluency/visual-scaffolding/components/Dot.js.map +0 -1
- package/dist/module/features/fluency/visual-scaffolding/components/DynamicNumberLine.js +0 -96
- package/dist/module/features/fluency/visual-scaffolding/components/DynamicNumberLine.js.map +0 -1
- package/dist/module/features/fluency/visual-scaffolding/components/FactVisual.js +0 -69
- package/dist/module/features/fluency/visual-scaffolding/components/FactVisual.js.map +0 -1
- package/dist/module/features/fluency/visual-scaffolding/components/QuotativeBars.js +0 -83
- package/dist/module/features/fluency/visual-scaffolding/components/QuotativeBars.js.map +0 -1
- package/dist/module/features/fluency/visual-scaffolding/components/RelationalBlock.js +0 -272
- package/dist/module/features/fluency/visual-scaffolding/components/RelationalBlock.js.map +0 -1
- package/dist/module/features/fluency/visual-scaffolding/components/visualColors.js +0 -41
- package/dist/module/features/fluency/visual-scaffolding/components/visualColors.js.map +0 -1
- package/dist/module/features/fluency/visual-scaffolding/index.js +0 -8
- package/dist/module/features/fluency/visual-scaffolding/index.js.map +0 -1
- package/dist/module/features/fluency/visual-scaffolding/renderFact.js +0 -269
- package/dist/module/features/fluency/visual-scaffolding/renderFact.js.map +0 -1
- package/dist/module/features/fluency/visual-scaffolding/types.js +0 -2
- package/dist/module/features/fluency/visual-scaffolding/types.js.map +0 -1
- package/dist/module/features/fluency-teacher/assets/SortDefaultIcon.js +0 -23
- package/dist/module/features/fluency-teacher/assets/SortDefaultIcon.js.map +0 -1
- package/dist/module/features/fluency-teacher/components/drawer/DrawerMasteryLegend.js +0 -74
- package/dist/module/features/fluency-teacher/components/drawer/DrawerMasteryLegend.js.map +0 -1
- package/dist/module/features/fluency-teacher/components/table/TableRowAverageProgress.js +0 -65
- package/dist/module/features/fluency-teacher/components/table/TableRowAverageProgress.js.map +0 -1
- package/dist/typescript/commonjs/features/fluency/components/FluencyVisualPlayground.d.ts +0 -8
- package/dist/typescript/commonjs/features/fluency/components/FluencyVisualPlayground.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/DebugBoxIndicator.d.ts +0 -3
- package/dist/typescript/commonjs/features/fluency/components/fluency-solving/components/DebugBoxIndicator.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/__tests__/renderFact.test.d.ts +0 -2
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/__tests__/renderFact.test.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/adapter.d.ts +0 -4
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/adapter.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/DiscreteCounterGrid.d.ts +0 -10
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/DiscreteCounterGrid.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/Dot.d.ts +0 -10
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/Dot.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/DynamicNumberLine.d.ts +0 -10
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/DynamicNumberLine.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/FactVisual.d.ts +0 -10
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/FactVisual.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/QuotativeBars.d.ts +0 -10
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/QuotativeBars.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/RelationalBlock.d.ts +0 -10
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/RelationalBlock.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/visualColors.d.ts +0 -16
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/components/visualColors.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/index.d.ts +0 -6
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/index.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/renderFact.d.ts +0 -23
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/renderFact.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/types.d.ts +0 -103
- package/dist/typescript/commonjs/features/fluency/visual-scaffolding/types.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/fluency-teacher/assets/SortDefaultIcon.d.ts +0 -4
- package/dist/typescript/commonjs/features/fluency-teacher/assets/SortDefaultIcon.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/DrawerMasteryLegend.d.ts +0 -3
- package/dist/typescript/commonjs/features/fluency-teacher/components/drawer/DrawerMasteryLegend.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/fluency-teacher/components/table/TableRowAverageProgress.d.ts +0 -7
- package/dist/typescript/commonjs/features/fluency-teacher/components/table/TableRowAverageProgress.d.ts.map +0 -1
- package/dist/typescript/module/features/fluency/components/FluencyVisualPlayground.d.ts +0 -8
- package/dist/typescript/module/features/fluency/components/FluencyVisualPlayground.d.ts.map +0 -1
- package/dist/typescript/module/features/fluency/components/fluency-solving/components/DebugBoxIndicator.d.ts +0 -3
- package/dist/typescript/module/features/fluency/components/fluency-solving/components/DebugBoxIndicator.d.ts.map +0 -1
- package/dist/typescript/module/features/fluency/visual-scaffolding/__tests__/renderFact.test.d.ts +0 -2
- package/dist/typescript/module/features/fluency/visual-scaffolding/__tests__/renderFact.test.d.ts.map +0 -1
- package/dist/typescript/module/features/fluency/visual-scaffolding/adapter.d.ts +0 -4
- package/dist/typescript/module/features/fluency/visual-scaffolding/adapter.d.ts.map +0 -1
- package/dist/typescript/module/features/fluency/visual-scaffolding/components/DiscreteCounterGrid.d.ts +0 -10
- package/dist/typescript/module/features/fluency/visual-scaffolding/components/DiscreteCounterGrid.d.ts.map +0 -1
- package/dist/typescript/module/features/fluency/visual-scaffolding/components/Dot.d.ts +0 -10
- package/dist/typescript/module/features/fluency/visual-scaffolding/components/Dot.d.ts.map +0 -1
- package/dist/typescript/module/features/fluency/visual-scaffolding/components/DynamicNumberLine.d.ts +0 -10
- package/dist/typescript/module/features/fluency/visual-scaffolding/components/DynamicNumberLine.d.ts.map +0 -1
- package/dist/typescript/module/features/fluency/visual-scaffolding/components/FactVisual.d.ts +0 -10
- package/dist/typescript/module/features/fluency/visual-scaffolding/components/FactVisual.d.ts.map +0 -1
- package/dist/typescript/module/features/fluency/visual-scaffolding/components/QuotativeBars.d.ts +0 -10
- package/dist/typescript/module/features/fluency/visual-scaffolding/components/QuotativeBars.d.ts.map +0 -1
- package/dist/typescript/module/features/fluency/visual-scaffolding/components/RelationalBlock.d.ts +0 -10
- package/dist/typescript/module/features/fluency/visual-scaffolding/components/RelationalBlock.d.ts.map +0 -1
- package/dist/typescript/module/features/fluency/visual-scaffolding/components/visualColors.d.ts +0 -16
- package/dist/typescript/module/features/fluency/visual-scaffolding/components/visualColors.d.ts.map +0 -1
- package/dist/typescript/module/features/fluency/visual-scaffolding/index.d.ts +0 -6
- package/dist/typescript/module/features/fluency/visual-scaffolding/index.d.ts.map +0 -1
- package/dist/typescript/module/features/fluency/visual-scaffolding/renderFact.d.ts +0 -23
- package/dist/typescript/module/features/fluency/visual-scaffolding/renderFact.d.ts.map +0 -1
- package/dist/typescript/module/features/fluency/visual-scaffolding/types.d.ts +0 -103
- package/dist/typescript/module/features/fluency/visual-scaffolding/types.d.ts.map +0 -1
- package/dist/typescript/module/features/fluency-teacher/assets/SortDefaultIcon.d.ts +0 -4
- package/dist/typescript/module/features/fluency-teacher/assets/SortDefaultIcon.d.ts.map +0 -1
- package/dist/typescript/module/features/fluency-teacher/components/drawer/DrawerMasteryLegend.d.ts +0 -3
- package/dist/typescript/module/features/fluency-teacher/components/drawer/DrawerMasteryLegend.d.ts.map +0 -1
- package/dist/typescript/module/features/fluency-teacher/components/table/TableRowAverageProgress.d.ts +0 -7
- package/dist/typescript/module/features/fluency-teacher/components/table/TableRowAverageProgress.d.ts.map +0 -1
- package/src/features/fluency/components/FluencyVisualPlayground.tsx +0 -272
- package/src/features/fluency/components/fluency-solving/components/DebugBoxIndicator.tsx +0 -40
- package/src/features/fluency/visual-scaffolding/__tests__/__snapshots__/renderFact.test.ts.snap +0 -64
- package/src/features/fluency/visual-scaffolding/__tests__/renderFact.test.ts +0 -192
- package/src/features/fluency/visual-scaffolding/adapter.ts +0 -33
- package/src/features/fluency/visual-scaffolding/components/DiscreteCounterGrid.tsx +0 -222
- package/src/features/fluency/visual-scaffolding/components/Dot.tsx +0 -36
- package/src/features/fluency/visual-scaffolding/components/DynamicNumberLine.tsx +0 -98
- package/src/features/fluency/visual-scaffolding/components/FactVisual.tsx +0 -61
- package/src/features/fluency/visual-scaffolding/components/QuotativeBars.tsx +0 -92
- package/src/features/fluency/visual-scaffolding/components/RelationalBlock.tsx +0 -225
- package/src/features/fluency/visual-scaffolding/components/visualColors.ts +0 -45
- package/src/features/fluency/visual-scaffolding/index.ts +0 -5
- package/src/features/fluency/visual-scaffolding/renderFact.ts +0 -219
- package/src/features/fluency/visual-scaffolding/types.ts +0 -108
- package/src/features/fluency-teacher/assets/SortDefaultIcon.tsx +0 -10
- package/src/features/fluency-teacher/components/drawer/DrawerMasteryLegend.tsx +0 -63
- package/src/features/fluency-teacher/components/table/TableRowAverageProgress.tsx +0 -65
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import { COLORS } from '@magmamath/react-native-ui'
|
|
2
|
-
import
|
|
2
|
+
import type {
|
|
3
|
+
LegendItem,
|
|
4
|
+
OperatorCardConfig,
|
|
5
|
+
OperatorColumnConfig,
|
|
6
|
+
OperatorPalette,
|
|
7
|
+
FluencyOperatorColumn,
|
|
8
|
+
} from './fluencyTeacher.types'
|
|
3
9
|
|
|
4
10
|
export const TEACHER_FLUENCY_GOAL_MINUTES = 25
|
|
5
11
|
|
|
@@ -10,33 +16,103 @@ export enum FluencyOperator {
|
|
|
10
16
|
DIVISION = 'division',
|
|
11
17
|
}
|
|
12
18
|
|
|
13
|
-
export
|
|
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> = {
|
|
14
27
|
[FluencyOperator.ADDITION]: {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
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,
|
|
19
39
|
},
|
|
20
40
|
[FluencyOperator.SUBTRACTION]: {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
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,
|
|
25
58
|
},
|
|
26
59
|
[FluencyOperator.MULTIPLICATION]: {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
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,
|
|
31
65
|
},
|
|
32
66
|
[FluencyOperator.DIVISION]: {
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
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,
|
|
37
84
|
},
|
|
38
85
|
}
|
|
39
86
|
|
|
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
|
+
|
|
40
116
|
export enum FluencyTableColumn {
|
|
41
117
|
AVERAGE = 'average',
|
|
42
118
|
ADDITION = 'addition',
|
|
@@ -45,8 +121,6 @@ export enum FluencyTableColumn {
|
|
|
45
121
|
DIVISION = 'division',
|
|
46
122
|
}
|
|
47
123
|
|
|
48
|
-
export type FluencyOperatorColumn = Exclude<FluencyTableColumn, FluencyTableColumn.AVERAGE>
|
|
49
|
-
|
|
50
124
|
export enum FluencyMathOperatorSymbol {
|
|
51
125
|
ADDITION = '+',
|
|
52
126
|
SUBTRACTION = '−',
|
|
@@ -54,33 +128,57 @@ export enum FluencyMathOperatorSymbol {
|
|
|
54
128
|
DIVISION = '÷',
|
|
55
129
|
}
|
|
56
130
|
|
|
57
|
-
export const
|
|
58
|
-
|
|
59
|
-
|
|
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]: {
|
|
60
154
|
labelKey: 'student.fluency.addition',
|
|
61
155
|
symbol: FluencyMathOperatorSymbol.ADDITION,
|
|
62
|
-
badgeBg: COLORS.GREEN_3,
|
|
63
|
-
badgeText: COLORS.GREEN_8,
|
|
64
156
|
},
|
|
65
|
-
{
|
|
66
|
-
operator: FluencyTableColumn.SUBTRACTION,
|
|
157
|
+
[FluencyOperator.SUBTRACTION]: {
|
|
67
158
|
labelKey: 'student.fluency.subtraction',
|
|
68
159
|
symbol: FluencyMathOperatorSymbol.SUBTRACTION,
|
|
69
|
-
badgeBg: COLORS.ORANGE_3,
|
|
70
|
-
badgeText: COLORS.ORANGE_8,
|
|
71
|
-
},
|
|
72
|
-
{
|
|
73
|
-
operator: FluencyTableColumn.DIVISION,
|
|
74
|
-
labelKey: 'student.fluency.division',
|
|
75
|
-
symbol: FluencyMathOperatorSymbol.DIVISION,
|
|
76
|
-
badgeBg: COLORS.BLUE_3,
|
|
77
|
-
badgeText: COLORS.BLUE_8,
|
|
78
160
|
},
|
|
79
|
-
{
|
|
80
|
-
operator: FluencyTableColumn.MULTIPLICATION,
|
|
161
|
+
[FluencyOperator.MULTIPLICATION]: {
|
|
81
162
|
labelKey: 'student.fluency.multiplication',
|
|
82
163
|
symbol: FluencyMathOperatorSymbol.MULTIPLICATION,
|
|
83
|
-
badgeBg: COLORS.PURPLE_2,
|
|
84
|
-
badgeText: COLORS.PURPLE_8,
|
|
85
164
|
},
|
|
165
|
+
[FluencyOperator.DIVISION]: {
|
|
166
|
+
labelKey: 'student.fluency.division',
|
|
167
|
+
symbol: FluencyMathOperatorSymbol.DIVISION,
|
|
168
|
+
},
|
|
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' },
|
|
86
184
|
]
|
|
@@ -1,22 +1,95 @@
|
|
|
1
1
|
import { COLORS } from '@magmamath/react-native-ui'
|
|
2
|
-
import
|
|
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'
|
|
3
13
|
import type {
|
|
4
14
|
ClassFluencySummaryResponse,
|
|
5
15
|
ClassFluencyStats,
|
|
6
16
|
ClassOperatorAverages,
|
|
17
|
+
DrawerGrid,
|
|
7
18
|
FluencyStudent,
|
|
19
|
+
OperatorBandColors,
|
|
20
|
+
OperatorColumnConfig,
|
|
8
21
|
StudentResult,
|
|
9
22
|
} from './fluencyTeacher.types'
|
|
10
23
|
|
|
11
|
-
export const getCellColor = (
|
|
12
|
-
box
|
|
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)
|
|
13
28
|
|
|
14
|
-
export const
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
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
|
+
}
|
|
20
93
|
}
|
|
21
94
|
|
|
22
95
|
const toPercent = (decimal: number): number => Math.round(decimal * 100)
|
|
@@ -68,7 +141,6 @@ export const buildStudentsFluencyTable = ({
|
|
|
68
141
|
id: row.studentId,
|
|
69
142
|
name: student.name,
|
|
70
143
|
averagePercent: toPercent(row.overallPercent),
|
|
71
|
-
averageLabel: toAverageLabel(row.overallPercent),
|
|
72
144
|
scores: {
|
|
73
145
|
addition: toPercent(row.byOperator.addition),
|
|
74
146
|
subtraction: toPercent(row.byOperator.subtraction),
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import type { TranslationKey } from '../../i18n/i18n'
|
|
2
|
-
import {
|
|
2
|
+
import {
|
|
3
|
+
FluencyMathOperatorSymbol,
|
|
4
|
+
FluencyOperator,
|
|
5
|
+
FluencyTableColumn,
|
|
6
|
+
MasteryLevel,
|
|
7
|
+
} from './fluencyTeacher.constants'
|
|
3
8
|
import { SortingDirection } from '../../shared/common.constants'
|
|
4
9
|
|
|
5
10
|
type FactId = string
|
|
@@ -10,7 +15,7 @@ type FactPosition = {
|
|
|
10
15
|
}
|
|
11
16
|
|
|
12
17
|
type FactState = {
|
|
13
|
-
box:
|
|
18
|
+
box: MasteryLevel
|
|
14
19
|
lastAttemptedAt: string | null
|
|
15
20
|
lastSolvedAt: string | null
|
|
16
21
|
attemptsCount: number
|
|
@@ -62,6 +67,8 @@ export type ClassFluencySummaryResponse = {
|
|
|
62
67
|
hardestFacts: TeacherFluencyHardestFact[]
|
|
63
68
|
}
|
|
64
69
|
|
|
70
|
+
export type FluencyOperatorColumn = Exclude<FluencyTableColumn, FluencyTableColumn.AVERAGE>
|
|
71
|
+
|
|
65
72
|
export type ClassOperatorAverages = Record<FluencyOperatorColumn, number>
|
|
66
73
|
|
|
67
74
|
export type ClassFluencyStats = ClassFluencySummaryResponse & {
|
|
@@ -88,7 +95,6 @@ export type StudentResult = {
|
|
|
88
95
|
id: string
|
|
89
96
|
name: string
|
|
90
97
|
averagePercent: number
|
|
91
|
-
averageLabel: TranslationKey
|
|
92
98
|
scores: StudentOperatorScores
|
|
93
99
|
}
|
|
94
100
|
|
|
@@ -99,11 +105,38 @@ export type StudentDrawerInfo = StudentResult & {
|
|
|
99
105
|
export type OperatorColumnConfig = {
|
|
100
106
|
operator: FluencyOperatorColumn
|
|
101
107
|
labelKey: TranslationKey
|
|
102
|
-
symbol: string
|
|
103
|
-
badgeBg: string
|
|
104
|
-
badgeText: string
|
|
105
108
|
}
|
|
106
109
|
|
|
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
|
+
|
|
107
140
|
export type TeacherFluencyGateProps = {
|
|
108
141
|
students: FluencyStudent[]
|
|
109
142
|
grade: number
|
|
@@ -2,10 +2,8 @@ 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
|
-
|
|
6
|
-
|
|
7
|
-
export type DrawerGridRow = { label: number; cells: DrawerGridCell[] }
|
|
8
|
-
export type DrawerGrid = { colLabels: number[]; rows: DrawerGridRow[] }
|
|
5
|
+
import { getHigherMasteryLevel, isCommutativeOperator } from '../fluencyTeacher.helpers'
|
|
6
|
+
import type { DrawerGrid } from '../fluencyTeacher.types'
|
|
9
7
|
|
|
10
8
|
export const useDrawerGrid = (operator: FluencyOperator): DrawerGrid | null => {
|
|
11
9
|
const { model } = useTeacherFluency()
|
|
@@ -19,8 +17,7 @@ export const useDrawerGrid = (operator: FluencyOperator): DrawerGrid | null => {
|
|
|
19
17
|
|
|
20
18
|
const isDivision = operator === FluencyOperator.DIVISION
|
|
21
19
|
const isSubtraction = operator === FluencyOperator.SUBTRACTION
|
|
22
|
-
const isCommutative =
|
|
23
|
-
operator === FluencyOperator.ADDITION || operator === FluencyOperator.MULTIPLICATION
|
|
20
|
+
const isCommutative = isCommutativeOperator(operator)
|
|
24
21
|
|
|
25
22
|
const maxRow = Math.max(...factList.map((f) => f.position.row))
|
|
26
23
|
const maxCol = Math.max(...factList.map((f) => f.position.column))
|
|
@@ -46,7 +43,7 @@ export const useDrawerGrid = (operator: FluencyOperator): DrawerGrid | null => {
|
|
|
46
43
|
const mirrorBox = mirrorFact?.box ?? null
|
|
47
44
|
const box =
|
|
48
45
|
primaryBox !== null && mirrorBox !== null
|
|
49
|
-
?
|
|
46
|
+
? getHigherMasteryLevel(primaryBox, mirrorBox)
|
|
50
47
|
: (primaryBox ?? mirrorBox)
|
|
51
48
|
|
|
52
49
|
return { box, isEmpty: false }
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { useMemo, useState } from 'react'
|
|
2
2
|
import type { LayoutChangeEvent } from 'react-native'
|
|
3
|
-
import { FluencyOperator, MATRIX_CELL_COLORS } from '../fluencyTeacher.constants'
|
|
4
|
-
import {
|
|
3
|
+
import { FluencyOperator, MasteryLevel, MATRIX_CELL_COLORS } from '../fluencyTeacher.constants'
|
|
4
|
+
import type { DrawerGrid } from '../fluencyTeacher.types'
|
|
5
|
+
import { useDrawerGrid } from './useDrawerGrid'
|
|
5
6
|
|
|
6
7
|
const MATRIX_CELL_GAP = 2
|
|
7
8
|
|
|
@@ -10,7 +11,7 @@ type DrawerMatrixLayout = {
|
|
|
10
11
|
cellSize: number
|
|
11
12
|
fontSize: number
|
|
12
13
|
borderRadius: number
|
|
13
|
-
cellColorMap: Record<
|
|
14
|
+
cellColorMap: Record<MasteryLevel, string>
|
|
14
15
|
onLayout: (e: LayoutChangeEvent) => void
|
|
15
16
|
}
|
|
16
17
|
|
|
@@ -8,13 +8,16 @@ 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()
|
|
11
12
|
public readonly $sort = createStore<SortState>({
|
|
12
13
|
column: FluencyTableColumn.AVERAGE,
|
|
13
14
|
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 }
|
|
19
15
|
})
|
|
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
|
+
})
|
|
20
23
|
}
|
|
@@ -3,6 +3,7 @@ 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'
|
|
6
7
|
import type { TeacherFluencyGateProps, TeacherFluencyModelProps } from '../fluencyTeacher.types'
|
|
7
8
|
|
|
8
9
|
export class TeacherFluencyModel {
|
|
@@ -26,6 +27,13 @@ export class TeacherFluencyModel {
|
|
|
26
27
|
target: this.table.reset,
|
|
27
28
|
})
|
|
28
29
|
|
|
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
|
+
|
|
29
37
|
sample({
|
|
30
38
|
clock: this.gate.state,
|
|
31
39
|
source: this.table.initFx.pending,
|