@magmamath/students-features 1.2.1-rc.2 → 1.2.1-rc.21
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/chatbot/components/ChatInput/ChatInput.js +2 -1
- package/dist/commonjs/features/chatbot/components/ChatInput/ChatInput.js.map +1 -1
- package/dist/commonjs/features/chatbot/components/ChatMessage/MessageContent.js +2 -1
- package/dist/commonjs/features/chatbot/components/ChatMessage/MessageContent.js.map +1 -1
- package/dist/commonjs/features/endOfAssignment/components/AssessmentScoreCard/AssessmentScoreCard.js +1 -1
- package/dist/commonjs/features/endOfAssignment/components/AssessmentScoreCard/AssessmentScoreCard.js.map +1 -1
- package/dist/commonjs/features/pmProgress/PmProgress.js +62 -0
- package/dist/commonjs/features/pmProgress/PmProgress.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/chart/chart.helpers.js +23 -0
- package/dist/commonjs/features/pmProgress/components/chart/chart.helpers.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/chart/chart.types.js +2 -0
- package/dist/commonjs/features/pmProgress/components/chart/chart.types.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/chart/components/PracticeProgressPieChart.js +44 -0
- package/dist/commonjs/features/pmProgress/components/chart/components/PracticeProgressPieChart.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/chart/components/SlicesClipPaths.js +26 -0
- package/dist/commonjs/features/pmProgress/components/chart/components/SlicesClipPaths.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/chart/components/SlicesPaths.js +77 -0
- package/dist/commonjs/features/pmProgress/components/chart/components/SlicesPaths.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/chart/components/layers/SliceArcPattern.js +38 -0
- package/dist/commonjs/features/pmProgress/components/chart/components/layers/SliceArcPattern.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/chart/components/layers/SliceBackgroundColor.js +21 -0
- package/dist/commonjs/features/pmProgress/components/chart/components/layers/SliceBackgroundColor.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/chart/components/layers/SliceFillColor.js +82 -0
- package/dist/commonjs/features/pmProgress/components/chart/components/layers/SliceFillColor.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/chart/model/ArcPatternGenerator.js +49 -0
- package/dist/commonjs/features/pmProgress/components/chart/model/ArcPatternGenerator.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/chart/model/PieChartManager.js +25 -0
- package/dist/commonjs/features/pmProgress/components/chart/model/PieChartManager.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/chart/model/SliceHighlight.js +20 -0
- package/dist/commonjs/features/pmProgress/components/chart/model/SliceHighlight.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/chart/model/SliceShapeGenerator.js +79 -0
- package/dist/commonjs/features/pmProgress/components/chart/model/SliceShapeGenerator.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/header/PmProgressHeader.js +199 -0
- package/dist/commonjs/features/pmProgress/components/header/PmProgressHeader.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/insights/PmInsights.js +70 -0
- package/dist/commonjs/features/pmProgress/components/insights/PmInsights.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/insights/PmTimeframeStats.js +94 -0
- package/dist/commonjs/features/pmProgress/components/insights/PmTimeframeStats.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/insights/StatsCard.js +71 -0
- package/dist/commonjs/features/pmProgress/components/insights/StatsCard.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/list/Fluency.js +69 -0
- package/dist/commonjs/features/pmProgress/components/list/Fluency.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/list/ListCard.js +198 -0
- package/dist/commonjs/features/pmProgress/components/list/ListCard.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/list/ListItem.js +121 -0
- package/dist/commonjs/features/pmProgress/components/list/ListItem.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/list/PmDomainList.js +89 -0
- package/dist/commonjs/features/pmProgress/components/list/PmDomainList.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/recs/PmTeacherRecs.js +118 -0
- package/dist/commonjs/features/pmProgress/components/recs/PmTeacherRecs.js.map +1 -0
- package/dist/commonjs/features/pmProgress/components/standard/StandardTag.js +202 -0
- package/dist/commonjs/features/pmProgress/components/standard/StandardTag.js.map +1 -0
- package/dist/commonjs/features/pmProgress/context/PmProgressContext.js +18 -0
- package/dist/commonjs/features/pmProgress/context/PmProgressContext.js.map +1 -0
- package/dist/commonjs/features/pmProgress/index.js +56 -0
- package/dist/commonjs/features/pmProgress/index.js.map +1 -0
- package/dist/commonjs/features/pmProgress/model/PmHighlightModel.js +15 -0
- package/dist/commonjs/features/pmProgress/model/PmHighlightModel.js.map +1 -0
- package/dist/commonjs/features/pmProgress/model/PmInsightsModel.js +22 -0
- package/dist/commonjs/features/pmProgress/model/PmInsightsModel.js.map +1 -0
- package/dist/commonjs/features/pmProgress/model/PmProgressApi.js +18 -0
- package/dist/commonjs/features/pmProgress/model/PmProgressApi.js.map +1 -0
- package/dist/commonjs/features/pmProgress/model/PmProgressModel.js +43 -0
- package/dist/commonjs/features/pmProgress/model/PmProgressModel.js.map +1 -0
- package/dist/commonjs/features/pmProgress/model/PmRecommendationsModel.js +47 -0
- package/dist/commonjs/features/pmProgress/model/PmRecommendationsModel.js.map +1 -0
- package/dist/commonjs/features/pmProgress/model/PmSolvingFlowModel.js +100 -0
- package/dist/commonjs/features/pmProgress/model/PmSolvingFlowModel.js.map +1 -0
- package/dist/commonjs/features/pmProgress/model/PmTreeModel.js +141 -0
- package/dist/commonjs/features/pmProgress/model/PmTreeModel.js.map +1 -0
- package/dist/commonjs/features/pmProgress/shared/pmProgress.constants.js +49 -0
- package/dist/commonjs/features/pmProgress/shared/pmProgress.constants.js.map +1 -0
- package/dist/commonjs/features/pmProgress/shared/pmProgress.helpers.js +221 -0
- package/dist/commonjs/features/pmProgress/shared/pmProgress.helpers.js.map +1 -0
- package/dist/commonjs/features/pmProgress/shared/pmProgress.types.js +12 -0
- package/dist/commonjs/features/pmProgress/shared/pmProgress.types.js.map +1 -0
- package/dist/commonjs/features/voice/recording/model/VoiceRecord.model.js +0 -5
- package/dist/commonjs/features/voice/recording/model/VoiceRecord.model.js.map +1 -1
- package/dist/commonjs/features/voice/types.js +0 -6
- package/dist/commonjs/features/voice/types.js.map +1 -1
- package/dist/commonjs/index.js +15 -3
- package/dist/commonjs/index.js.map +1 -1
- package/dist/commonjs/shared/icons/PentagonIcon.js +32 -0
- package/dist/commonjs/shared/icons/PentagonIcon.js.map +1 -0
- package/dist/commonjs/shared/icons/SketchArrowRight.js +33 -0
- package/dist/commonjs/shared/icons/SketchArrowRight.js.map +1 -0
- package/dist/commonjs/shared/icons/SliceDiamondIcon.js +32 -0
- package/dist/commonjs/shared/icons/SliceDiamondIcon.js.map +1 -0
- package/dist/commonjs/shared/icons/StarIcon.js +32 -0
- package/dist/commonjs/shared/icons/StarIcon.js.map +1 -0
- package/dist/commonjs/shared/icons/TimerIcon.js +35 -0
- package/dist/commonjs/shared/icons/TimerIcon.js.map +1 -0
- package/dist/commonjs/shared/translation/localization/ca.json +19 -0
- package/dist/commonjs/shared/translation/localization/de.json +19 -0
- package/dist/commonjs/shared/translation/localization/en.json +19 -0
- package/dist/commonjs/shared/translation/localization/gb.json +19 -0
- package/dist/commonjs/shared/translation/localization/sct.json +19 -0
- package/dist/commonjs/shared/translation/localization/sw.json +19 -0
- package/dist/module/features/chatbot/components/ChatInput/ChatInput.js +2 -1
- package/dist/module/features/chatbot/components/ChatInput/ChatInput.js.map +1 -1
- package/dist/module/features/chatbot/components/ChatMessage/MessageContent.js +2 -1
- package/dist/module/features/chatbot/components/ChatMessage/MessageContent.js.map +1 -1
- package/dist/module/features/endOfAssignment/components/AssessmentScoreCard/AssessmentScoreCard.js +2 -2
- package/dist/module/features/endOfAssignment/components/AssessmentScoreCard/AssessmentScoreCard.js.map +1 -1
- package/dist/module/features/pmProgress/PmProgress.js +56 -0
- package/dist/module/features/pmProgress/PmProgress.js.map +1 -0
- package/dist/module/features/pmProgress/components/chart/chart.helpers.js +16 -0
- package/dist/module/features/pmProgress/components/chart/chart.helpers.js.map +1 -0
- package/dist/module/features/pmProgress/components/chart/chart.types.js +2 -0
- package/dist/module/features/pmProgress/components/chart/chart.types.js.map +1 -0
- package/dist/module/features/pmProgress/components/chart/components/PracticeProgressPieChart.js +38 -0
- package/dist/module/features/pmProgress/components/chart/components/PracticeProgressPieChart.js.map +1 -0
- package/dist/module/features/pmProgress/components/chart/components/SlicesClipPaths.js +20 -0
- package/dist/module/features/pmProgress/components/chart/components/SlicesClipPaths.js.map +1 -0
- package/dist/module/features/pmProgress/components/chart/components/SlicesPaths.js +71 -0
- package/dist/module/features/pmProgress/components/chart/components/SlicesPaths.js.map +1 -0
- package/dist/module/features/pmProgress/components/chart/components/layers/SliceArcPattern.js +32 -0
- package/dist/module/features/pmProgress/components/chart/components/layers/SliceArcPattern.js.map +1 -0
- package/dist/module/features/pmProgress/components/chart/components/layers/SliceBackgroundColor.js +15 -0
- package/dist/module/features/pmProgress/components/chart/components/layers/SliceBackgroundColor.js.map +1 -0
- package/dist/module/features/pmProgress/components/chart/components/layers/SliceFillColor.js +76 -0
- package/dist/module/features/pmProgress/components/chart/components/layers/SliceFillColor.js.map +1 -0
- package/dist/module/features/pmProgress/components/chart/model/ArcPatternGenerator.js +44 -0
- package/dist/module/features/pmProgress/components/chart/model/ArcPatternGenerator.js.map +1 -0
- package/dist/module/features/pmProgress/components/chart/model/PieChartManager.js +20 -0
- package/dist/module/features/pmProgress/components/chart/model/PieChartManager.js.map +1 -0
- package/dist/module/features/pmProgress/components/chart/model/SliceHighlight.js +15 -0
- package/dist/module/features/pmProgress/components/chart/model/SliceHighlight.js.map +1 -0
- package/dist/module/features/pmProgress/components/chart/model/SliceShapeGenerator.js +74 -0
- package/dist/module/features/pmProgress/components/chart/model/SliceShapeGenerator.js.map +1 -0
- package/dist/module/features/pmProgress/components/header/PmProgressHeader.js +192 -0
- package/dist/module/features/pmProgress/components/header/PmProgressHeader.js.map +1 -0
- package/dist/module/features/pmProgress/components/insights/PmInsights.js +63 -0
- package/dist/module/features/pmProgress/components/insights/PmInsights.js.map +1 -0
- package/dist/module/features/pmProgress/components/insights/PmTimeframeStats.js +89 -0
- package/dist/module/features/pmProgress/components/insights/PmTimeframeStats.js.map +1 -0
- package/dist/module/features/pmProgress/components/insights/StatsCard.js +65 -0
- package/dist/module/features/pmProgress/components/insights/StatsCard.js.map +1 -0
- package/dist/module/features/pmProgress/components/list/Fluency.js +63 -0
- package/dist/module/features/pmProgress/components/list/Fluency.js.map +1 -0
- package/dist/module/features/pmProgress/components/list/ListCard.js +191 -0
- package/dist/module/features/pmProgress/components/list/ListCard.js.map +1 -0
- package/dist/module/features/pmProgress/components/list/ListItem.js +114 -0
- package/dist/module/features/pmProgress/components/list/ListItem.js.map +1 -0
- package/dist/module/features/pmProgress/components/list/PmDomainList.js +83 -0
- package/dist/module/features/pmProgress/components/list/PmDomainList.js.map +1 -0
- package/dist/module/features/pmProgress/components/recs/PmTeacherRecs.js +112 -0
- package/dist/module/features/pmProgress/components/recs/PmTeacherRecs.js.map +1 -0
- package/dist/module/features/pmProgress/components/standard/StandardTag.js +196 -0
- package/dist/module/features/pmProgress/components/standard/StandardTag.js.map +1 -0
- package/dist/module/features/pmProgress/context/PmProgressContext.js +13 -0
- package/dist/module/features/pmProgress/context/PmProgressContext.js.map +1 -0
- package/dist/module/features/pmProgress/index.js +11 -0
- package/dist/module/features/pmProgress/index.js.map +1 -0
- package/dist/module/features/pmProgress/model/PmHighlightModel.js +10 -0
- package/dist/module/features/pmProgress/model/PmHighlightModel.js.map +1 -0
- package/dist/module/features/pmProgress/model/PmInsightsModel.js +17 -0
- package/dist/module/features/pmProgress/model/PmInsightsModel.js.map +1 -0
- package/dist/module/features/pmProgress/model/PmProgressApi.js +13 -0
- package/dist/module/features/pmProgress/model/PmProgressApi.js.map +1 -0
- package/dist/module/features/pmProgress/model/PmProgressModel.js +38 -0
- package/dist/module/features/pmProgress/model/PmProgressModel.js.map +1 -0
- package/dist/module/features/pmProgress/model/PmRecommendationsModel.js +42 -0
- package/dist/module/features/pmProgress/model/PmRecommendationsModel.js.map +1 -0
- package/dist/module/features/pmProgress/model/PmSolvingFlowModel.js +95 -0
- package/dist/module/features/pmProgress/model/PmSolvingFlowModel.js.map +1 -0
- package/dist/module/features/pmProgress/model/PmTreeModel.js +136 -0
- package/dist/module/features/pmProgress/model/PmTreeModel.js.map +1 -0
- package/dist/module/features/pmProgress/shared/pmProgress.constants.js +46 -0
- package/dist/module/features/pmProgress/shared/pmProgress.constants.js.map +1 -0
- package/dist/module/features/pmProgress/shared/pmProgress.helpers.js +202 -0
- package/dist/module/features/pmProgress/shared/pmProgress.helpers.js.map +1 -0
- package/dist/module/features/pmProgress/shared/pmProgress.types.js +10 -0
- package/dist/module/features/pmProgress/shared/pmProgress.types.js.map +1 -0
- package/dist/module/features/voice/recording/model/VoiceRecord.model.js +0 -5
- package/dist/module/features/voice/recording/model/VoiceRecord.model.js.map +1 -1
- package/dist/module/features/voice/types.js +1 -5
- package/dist/module/features/voice/types.js.map +1 -1
- package/dist/module/index.js +1 -0
- package/dist/module/index.js.map +1 -1
- package/dist/module/shared/icons/PentagonIcon.js +24 -0
- package/dist/module/shared/icons/PentagonIcon.js.map +1 -0
- package/dist/module/shared/icons/SketchArrowRight.js +25 -0
- package/dist/module/shared/icons/SketchArrowRight.js.map +1 -0
- package/dist/module/shared/icons/SliceDiamondIcon.js +24 -0
- package/dist/module/shared/icons/SliceDiamondIcon.js.map +1 -0
- package/dist/module/shared/icons/StarIcon.js +24 -0
- package/dist/module/shared/icons/StarIcon.js.map +1 -0
- package/dist/module/shared/icons/TimerIcon.js +27 -0
- package/dist/module/shared/icons/TimerIcon.js.map +1 -0
- package/dist/module/shared/translation/localization/ca.json +19 -0
- package/dist/module/shared/translation/localization/de.json +19 -0
- package/dist/module/shared/translation/localization/en.json +19 -0
- package/dist/module/shared/translation/localization/gb.json +19 -0
- package/dist/module/shared/translation/localization/sct.json +19 -0
- package/dist/module/shared/translation/localization/sw.json +19 -0
- package/dist/typescript/commonjs/features/chatbot/components/ChatInput/ChatInput.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/chatbot/components/ChatMessage/MessageContent.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/pmProgress/PmProgress.d.ts +9 -0
- package/dist/typescript/commonjs/features/pmProgress/PmProgress.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/chart.helpers.d.ts +4 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/chart.helpers.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/chart.types.d.ts +36 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/chart.types.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/components/PracticeProgressPieChart.d.ts +9 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/components/PracticeProgressPieChart.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/components/SlicesClipPaths.d.ts +10 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/components/SlicesClipPaths.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/components/SlicesPaths.d.ts +11 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/components/SlicesPaths.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/components/layers/SliceArcPattern.d.ts +12 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/components/layers/SliceArcPattern.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/components/layers/SliceBackgroundColor.d.ts +8 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/components/layers/SliceBackgroundColor.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/components/layers/SliceFillColor.d.ts +14 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/components/layers/SliceFillColor.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/model/ArcPatternGenerator.d.ts +12 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/model/ArcPatternGenerator.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/model/PieChartManager.d.ts +16 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/model/PieChartManager.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/model/SliceHighlight.d.ts +10 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/model/SliceHighlight.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/model/SliceShapeGenerator.d.ts +17 -0
- package/dist/typescript/commonjs/features/pmProgress/components/chart/model/SliceShapeGenerator.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/header/PmProgressHeader.d.ts +3 -0
- package/dist/typescript/commonjs/features/pmProgress/components/header/PmProgressHeader.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/insights/PmInsights.d.ts +3 -0
- package/dist/typescript/commonjs/features/pmProgress/components/insights/PmInsights.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/insights/PmTimeframeStats.d.ts +3 -0
- package/dist/typescript/commonjs/features/pmProgress/components/insights/PmTimeframeStats.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/insights/StatsCard.d.ts +10 -0
- package/dist/typescript/commonjs/features/pmProgress/components/insights/StatsCard.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/list/Fluency.d.ts +8 -0
- package/dist/typescript/commonjs/features/pmProgress/components/list/Fluency.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/list/ListCard.d.ts +30 -0
- package/dist/typescript/commonjs/features/pmProgress/components/list/ListCard.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/list/ListItem.d.ts +11 -0
- package/dist/typescript/commonjs/features/pmProgress/components/list/ListItem.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/list/PmDomainList.d.ts +3 -0
- package/dist/typescript/commonjs/features/pmProgress/components/list/PmDomainList.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/recs/PmTeacherRecs.d.ts +3 -0
- package/dist/typescript/commonjs/features/pmProgress/components/recs/PmTeacherRecs.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/components/standard/StandardTag.d.ts +9 -0
- package/dist/typescript/commonjs/features/pmProgress/components/standard/StandardTag.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/context/PmProgressContext.d.ts +12 -0
- package/dist/typescript/commonjs/features/pmProgress/context/PmProgressContext.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/index.d.ts +6 -0
- package/dist/typescript/commonjs/features/pmProgress/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/model/PmHighlightModel.d.ts +7 -0
- package/dist/typescript/commonjs/features/pmProgress/model/PmHighlightModel.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/model/PmInsightsModel.d.ts +14 -0
- package/dist/typescript/commonjs/features/pmProgress/model/PmInsightsModel.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/model/PmProgressApi.d.ts +17 -0
- package/dist/typescript/commonjs/features/pmProgress/model/PmProgressApi.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/model/PmProgressModel.d.ts +23 -0
- package/dist/typescript/commonjs/features/pmProgress/model/PmProgressModel.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/model/PmRecommendationsModel.d.ts +102 -0
- package/dist/typescript/commonjs/features/pmProgress/model/PmRecommendationsModel.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/model/PmSolvingFlowModel.d.ts +20 -0
- package/dist/typescript/commonjs/features/pmProgress/model/PmSolvingFlowModel.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/model/PmTreeModel.d.ts +19 -0
- package/dist/typescript/commonjs/features/pmProgress/model/PmTreeModel.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/shared/pmProgress.constants.d.ts +36 -0
- package/dist/typescript/commonjs/features/pmProgress/shared/pmProgress.constants.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/shared/pmProgress.helpers.d.ts +64 -0
- package/dist/typescript/commonjs/features/pmProgress/shared/pmProgress.helpers.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/pmProgress/shared/pmProgress.types.d.ts +187 -0
- package/dist/typescript/commonjs/features/pmProgress/shared/pmProgress.types.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voice/recording/model/VoiceRecord.model.d.ts +1 -3
- package/dist/typescript/commonjs/features/voice/recording/model/VoiceRecord.model.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voice/types.d.ts +0 -4
- package/dist/typescript/commonjs/features/voice/types.d.ts.map +1 -1
- package/dist/typescript/commonjs/index.d.ts +1 -0
- package/dist/typescript/commonjs/index.d.ts.map +1 -1
- package/dist/typescript/commonjs/shared/icons/PentagonIcon.d.ts +4 -0
- package/dist/typescript/commonjs/shared/icons/PentagonIcon.d.ts.map +1 -0
- package/dist/typescript/commonjs/shared/icons/SketchArrowRight.d.ts +4 -0
- package/dist/typescript/commonjs/shared/icons/SketchArrowRight.d.ts.map +1 -0
- package/dist/typescript/commonjs/shared/icons/SliceDiamondIcon.d.ts +4 -0
- package/dist/typescript/commonjs/shared/icons/SliceDiamondIcon.d.ts.map +1 -0
- package/dist/typescript/commonjs/shared/icons/StarIcon.d.ts +4 -0
- package/dist/typescript/commonjs/shared/icons/StarIcon.d.ts.map +1 -0
- package/dist/typescript/commonjs/shared/icons/TimerIcon.d.ts +4 -0
- package/dist/typescript/commonjs/shared/icons/TimerIcon.d.ts.map +1 -0
- package/dist/typescript/commonjs/shared/translation/constants.d.ts +114 -0
- package/dist/typescript/commonjs/shared/translation/constants.d.ts.map +1 -1
- package/dist/typescript/commonjs/shared/translation/model.d.ts +38 -0
- package/dist/typescript/commonjs/shared/translation/model.d.ts.map +1 -1
- package/dist/typescript/module/features/chatbot/components/ChatInput/ChatInput.d.ts.map +1 -1
- package/dist/typescript/module/features/chatbot/components/ChatMessage/MessageContent.d.ts.map +1 -1
- package/dist/typescript/module/features/pmProgress/PmProgress.d.ts +9 -0
- package/dist/typescript/module/features/pmProgress/PmProgress.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/chart/chart.helpers.d.ts +4 -0
- package/dist/typescript/module/features/pmProgress/components/chart/chart.helpers.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/chart/chart.types.d.ts +36 -0
- package/dist/typescript/module/features/pmProgress/components/chart/chart.types.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/chart/components/PracticeProgressPieChart.d.ts +9 -0
- package/dist/typescript/module/features/pmProgress/components/chart/components/PracticeProgressPieChart.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/chart/components/SlicesClipPaths.d.ts +10 -0
- package/dist/typescript/module/features/pmProgress/components/chart/components/SlicesClipPaths.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/chart/components/SlicesPaths.d.ts +11 -0
- package/dist/typescript/module/features/pmProgress/components/chart/components/SlicesPaths.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/chart/components/layers/SliceArcPattern.d.ts +12 -0
- package/dist/typescript/module/features/pmProgress/components/chart/components/layers/SliceArcPattern.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/chart/components/layers/SliceBackgroundColor.d.ts +8 -0
- package/dist/typescript/module/features/pmProgress/components/chart/components/layers/SliceBackgroundColor.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/chart/components/layers/SliceFillColor.d.ts +14 -0
- package/dist/typescript/module/features/pmProgress/components/chart/components/layers/SliceFillColor.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/chart/model/ArcPatternGenerator.d.ts +12 -0
- package/dist/typescript/module/features/pmProgress/components/chart/model/ArcPatternGenerator.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/chart/model/PieChartManager.d.ts +16 -0
- package/dist/typescript/module/features/pmProgress/components/chart/model/PieChartManager.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/chart/model/SliceHighlight.d.ts +10 -0
- package/dist/typescript/module/features/pmProgress/components/chart/model/SliceHighlight.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/chart/model/SliceShapeGenerator.d.ts +17 -0
- package/dist/typescript/module/features/pmProgress/components/chart/model/SliceShapeGenerator.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/header/PmProgressHeader.d.ts +3 -0
- package/dist/typescript/module/features/pmProgress/components/header/PmProgressHeader.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/insights/PmInsights.d.ts +3 -0
- package/dist/typescript/module/features/pmProgress/components/insights/PmInsights.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/insights/PmTimeframeStats.d.ts +3 -0
- package/dist/typescript/module/features/pmProgress/components/insights/PmTimeframeStats.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/insights/StatsCard.d.ts +10 -0
- package/dist/typescript/module/features/pmProgress/components/insights/StatsCard.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/list/Fluency.d.ts +8 -0
- package/dist/typescript/module/features/pmProgress/components/list/Fluency.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/list/ListCard.d.ts +30 -0
- package/dist/typescript/module/features/pmProgress/components/list/ListCard.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/list/ListItem.d.ts +11 -0
- package/dist/typescript/module/features/pmProgress/components/list/ListItem.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/list/PmDomainList.d.ts +3 -0
- package/dist/typescript/module/features/pmProgress/components/list/PmDomainList.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/recs/PmTeacherRecs.d.ts +3 -0
- package/dist/typescript/module/features/pmProgress/components/recs/PmTeacherRecs.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/components/standard/StandardTag.d.ts +9 -0
- package/dist/typescript/module/features/pmProgress/components/standard/StandardTag.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/context/PmProgressContext.d.ts +12 -0
- package/dist/typescript/module/features/pmProgress/context/PmProgressContext.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/index.d.ts +6 -0
- package/dist/typescript/module/features/pmProgress/index.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/model/PmHighlightModel.d.ts +7 -0
- package/dist/typescript/module/features/pmProgress/model/PmHighlightModel.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/model/PmInsightsModel.d.ts +14 -0
- package/dist/typescript/module/features/pmProgress/model/PmInsightsModel.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/model/PmProgressApi.d.ts +17 -0
- package/dist/typescript/module/features/pmProgress/model/PmProgressApi.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/model/PmProgressModel.d.ts +23 -0
- package/dist/typescript/module/features/pmProgress/model/PmProgressModel.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/model/PmRecommendationsModel.d.ts +102 -0
- package/dist/typescript/module/features/pmProgress/model/PmRecommendationsModel.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/model/PmSolvingFlowModel.d.ts +20 -0
- package/dist/typescript/module/features/pmProgress/model/PmSolvingFlowModel.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/model/PmTreeModel.d.ts +19 -0
- package/dist/typescript/module/features/pmProgress/model/PmTreeModel.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/shared/pmProgress.constants.d.ts +36 -0
- package/dist/typescript/module/features/pmProgress/shared/pmProgress.constants.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/shared/pmProgress.helpers.d.ts +64 -0
- package/dist/typescript/module/features/pmProgress/shared/pmProgress.helpers.d.ts.map +1 -0
- package/dist/typescript/module/features/pmProgress/shared/pmProgress.types.d.ts +187 -0
- package/dist/typescript/module/features/pmProgress/shared/pmProgress.types.d.ts.map +1 -0
- package/dist/typescript/module/features/voice/recording/model/VoiceRecord.model.d.ts +1 -3
- package/dist/typescript/module/features/voice/recording/model/VoiceRecord.model.d.ts.map +1 -1
- package/dist/typescript/module/features/voice/types.d.ts +0 -4
- package/dist/typescript/module/features/voice/types.d.ts.map +1 -1
- package/dist/typescript/module/index.d.ts +1 -0
- package/dist/typescript/module/index.d.ts.map +1 -1
- package/dist/typescript/module/shared/icons/PentagonIcon.d.ts +4 -0
- package/dist/typescript/module/shared/icons/PentagonIcon.d.ts.map +1 -0
- package/dist/typescript/module/shared/icons/SketchArrowRight.d.ts +4 -0
- package/dist/typescript/module/shared/icons/SketchArrowRight.d.ts.map +1 -0
- package/dist/typescript/module/shared/icons/SliceDiamondIcon.d.ts +4 -0
- package/dist/typescript/module/shared/icons/SliceDiamondIcon.d.ts.map +1 -0
- package/dist/typescript/module/shared/icons/StarIcon.d.ts +4 -0
- package/dist/typescript/module/shared/icons/StarIcon.d.ts.map +1 -0
- package/dist/typescript/module/shared/icons/TimerIcon.d.ts +4 -0
- package/dist/typescript/module/shared/icons/TimerIcon.d.ts.map +1 -0
- package/dist/typescript/module/shared/translation/constants.d.ts +114 -0
- package/dist/typescript/module/shared/translation/constants.d.ts.map +1 -1
- package/dist/typescript/module/shared/translation/model.d.ts +38 -0
- package/dist/typescript/module/shared/translation/model.d.ts.map +1 -1
- package/package.json +23 -12
- package/src/features/chatbot/components/ChatInput/ChatInput.tsx +2 -1
- package/src/features/chatbot/components/ChatMessage/MessageContent.tsx +2 -1
- package/src/features/endOfAssignment/components/AssessmentScoreCard/AssessmentScoreCard.tsx +2 -2
- package/src/features/pmProgress/PmProgress.tsx +52 -0
- package/src/features/pmProgress/__tests__/.keep +0 -0
- package/src/features/pmProgress/components/chart/chart.helpers.ts +15 -0
- package/src/features/pmProgress/components/chart/chart.types.ts +37 -0
- package/src/features/pmProgress/components/chart/components/PracticeProgressPieChart.tsx +32 -0
- package/src/features/pmProgress/components/chart/components/SlicesClipPaths.tsx +22 -0
- package/src/features/pmProgress/components/chart/components/SlicesPaths.tsx +86 -0
- package/src/features/pmProgress/components/chart/components/layers/SliceArcPattern.tsx +44 -0
- package/src/features/pmProgress/components/chart/components/layers/SliceBackgroundColor.tsx +11 -0
- package/src/features/pmProgress/components/chart/components/layers/SliceFillColor.tsx +88 -0
- package/src/features/pmProgress/components/chart/model/ArcPatternGenerator.ts +48 -0
- package/src/features/pmProgress/components/chart/model/PieChartManager.ts +20 -0
- package/src/features/pmProgress/components/chart/model/SliceHighlight.ts +17 -0
- package/src/features/pmProgress/components/chart/model/SliceShapeGenerator.ts +90 -0
- package/src/features/pmProgress/components/header/PmProgressHeader.tsx +187 -0
- package/src/features/pmProgress/components/insights/PmInsights.tsx +58 -0
- package/src/features/pmProgress/components/insights/PmTimeframeStats.tsx +83 -0
- package/src/features/pmProgress/components/insights/StatsCard.tsx +53 -0
- package/src/features/pmProgress/components/list/Fluency.tsx +58 -0
- package/src/features/pmProgress/components/list/ListCard.tsx +231 -0
- package/src/features/pmProgress/components/list/ListItem.tsx +136 -0
- package/src/features/pmProgress/components/list/PmDomainList.tsx +69 -0
- package/src/features/pmProgress/components/recs/PmTeacherRecs.tsx +109 -0
- package/src/features/pmProgress/components/standard/StandardTag.tsx +177 -0
- package/src/features/pmProgress/context/PmProgressContext.tsx +23 -0
- package/src/features/pmProgress/index.ts +8 -0
- package/src/features/pmProgress/model/PmHighlightModel.ts +11 -0
- package/src/features/pmProgress/model/PmInsightsModel.ts +23 -0
- package/src/features/pmProgress/model/PmProgressApi.ts +34 -0
- package/src/features/pmProgress/model/PmProgressModel.ts +48 -0
- package/src/features/pmProgress/model/PmRecommendationsModel.ts +47 -0
- package/src/features/pmProgress/model/PmSolvingFlowModel.ts +131 -0
- package/src/features/pmProgress/model/PmTreeModel.ts +130 -0
- package/src/features/pmProgress/shared/pmProgress.constants.ts +88 -0
- package/src/features/pmProgress/shared/pmProgress.helpers.ts +271 -0
- package/src/features/pmProgress/shared/pmProgress.types.ts +210 -0
- package/src/features/voice/recording/model/VoiceRecord.model.ts +0 -7
- package/src/features/voice/types.ts +0 -5
- package/src/index.ts +1 -0
- package/src/shared/icons/PentagonIcon.tsx +17 -0
- package/src/shared/icons/SketchArrowRight.tsx +18 -0
- package/src/shared/icons/SliceDiamondIcon.tsx +16 -0
- package/src/shared/icons/StarIcon.tsx +17 -0
- package/src/shared/icons/TimerIcon.tsx +21 -0
- package/src/shared/translation/localization/ca.json +19 -0
- package/src/shared/translation/localization/de.json +19 -0
- package/src/shared/translation/localization/en.json +19 -0
- package/src/shared/translation/localization/gb.json +19 -0
- package/src/shared/translation/localization/sct.json +19 -0
- package/src/shared/translation/localization/sw.json +19 -0
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import { StyleSheet, View, Text } from 'react-native';
|
|
5
|
+
import { SliceDiamondIcon } from "../../../../shared/icons/SliceDiamondIcon.js";
|
|
6
|
+
import { COLORS, FONT_FAMILY } from '@magmamath/react-native-ui';
|
|
7
|
+
import { useStoreMap } from 'effector-react';
|
|
8
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
|
+
const DOMAIN_COLOR_PRESETS = {
|
|
10
|
+
[COLORS.PRIMARY_RED]: {
|
|
11
|
+
background: COLORS.RED_1,
|
|
12
|
+
titleColor: COLORS.RED_6,
|
|
13
|
+
tagColor: COLORS.PRIMARY_RED
|
|
14
|
+
},
|
|
15
|
+
[COLORS.PRIMARY_MAGENTA]: {
|
|
16
|
+
background: COLORS.MAGENTA_1,
|
|
17
|
+
titleColor: COLORS.MAGENTA_6,
|
|
18
|
+
tagColor: COLORS.PRIMARY_MAGENTA
|
|
19
|
+
},
|
|
20
|
+
[COLORS.PRIMARY_PURPLE]: {
|
|
21
|
+
background: COLORS.PURPLE_1,
|
|
22
|
+
titleColor: COLORS.PURPLE_6,
|
|
23
|
+
tagColor: COLORS.PRIMARY_PURPLE
|
|
24
|
+
},
|
|
25
|
+
[COLORS.PRIMARY_INDIGO]: {
|
|
26
|
+
background: COLORS.INDIGO_1,
|
|
27
|
+
titleColor: COLORS.INDIGO_6,
|
|
28
|
+
tagColor: COLORS.PRIMARY_INDIGO
|
|
29
|
+
},
|
|
30
|
+
[COLORS.PRIMARY_TURQUOISE]: {
|
|
31
|
+
background: COLORS.TURQUOISE_1,
|
|
32
|
+
titleColor: COLORS.TURQUOISE_6,
|
|
33
|
+
tagColor: COLORS.PRIMARY_TURQUOISE
|
|
34
|
+
},
|
|
35
|
+
[COLORS.PRIMARY_GREEN]: {
|
|
36
|
+
background: COLORS.GREEN_1,
|
|
37
|
+
titleColor: COLORS.GREEN_6,
|
|
38
|
+
tagColor: COLORS.PRIMARY_GREEN
|
|
39
|
+
},
|
|
40
|
+
[COLORS.PRIMARY_ORANGE]: {
|
|
41
|
+
background: COLORS.ORANGE_1,
|
|
42
|
+
titleColor: COLORS.ORANGE_6,
|
|
43
|
+
tagColor: COLORS.PRIMARY_ORANGE
|
|
44
|
+
},
|
|
45
|
+
[COLORS.RED_4]: {
|
|
46
|
+
background: COLORS.RED_1,
|
|
47
|
+
titleColor: COLORS.RED_6,
|
|
48
|
+
tagColor: COLORS.RED_4
|
|
49
|
+
},
|
|
50
|
+
[COLORS.MAGENTA_4]: {
|
|
51
|
+
background: COLORS.MAGENTA_1,
|
|
52
|
+
titleColor: COLORS.MAGENTA_6,
|
|
53
|
+
tagColor: COLORS.MAGENTA_4
|
|
54
|
+
},
|
|
55
|
+
[COLORS.PURPLE_4]: {
|
|
56
|
+
background: COLORS.PURPLE_1,
|
|
57
|
+
titleColor: COLORS.PURPLE_6,
|
|
58
|
+
tagColor: COLORS.PURPLE_4
|
|
59
|
+
},
|
|
60
|
+
[COLORS.INDIGO_4]: {
|
|
61
|
+
background: COLORS.INDIGO_1,
|
|
62
|
+
titleColor: COLORS.INDIGO_6,
|
|
63
|
+
tagColor: COLORS.INDIGO_4
|
|
64
|
+
},
|
|
65
|
+
[COLORS.TURQUOISE_4]: {
|
|
66
|
+
background: COLORS.TURQUOISE_1,
|
|
67
|
+
titleColor: COLORS.TURQUOISE_6,
|
|
68
|
+
tagColor: COLORS.TURQUOISE_4
|
|
69
|
+
},
|
|
70
|
+
[COLORS.GREEN_4]: {
|
|
71
|
+
background: COLORS.GREEN_1,
|
|
72
|
+
titleColor: COLORS.GREEN_6,
|
|
73
|
+
tagColor: COLORS.GREEN_4
|
|
74
|
+
},
|
|
75
|
+
[COLORS.ORANGE_4]: {
|
|
76
|
+
background: COLORS.ORANGE_1,
|
|
77
|
+
titleColor: COLORS.ORANGE_6,
|
|
78
|
+
tagColor: COLORS.ORANGE_4
|
|
79
|
+
},
|
|
80
|
+
[COLORS.RED_6]: {
|
|
81
|
+
background: COLORS.RED_1,
|
|
82
|
+
titleColor: COLORS.RED_6,
|
|
83
|
+
tagColor: COLORS.RED_6
|
|
84
|
+
},
|
|
85
|
+
[COLORS.MAGENTA_6]: {
|
|
86
|
+
background: COLORS.MAGENTA_1,
|
|
87
|
+
titleColor: COLORS.MAGENTA_6,
|
|
88
|
+
tagColor: COLORS.MAGENTA_6
|
|
89
|
+
},
|
|
90
|
+
[COLORS.PURPLE_6]: {
|
|
91
|
+
background: COLORS.PURPLE_1,
|
|
92
|
+
titleColor: COLORS.PURPLE_6,
|
|
93
|
+
tagColor: COLORS.PURPLE_6
|
|
94
|
+
},
|
|
95
|
+
[COLORS.INDIGO_6]: {
|
|
96
|
+
background: COLORS.INDIGO_1,
|
|
97
|
+
titleColor: COLORS.INDIGO_6,
|
|
98
|
+
tagColor: COLORS.INDIGO_6
|
|
99
|
+
},
|
|
100
|
+
[COLORS.TURQUOISE_6]: {
|
|
101
|
+
background: COLORS.TURQUOISE_1,
|
|
102
|
+
titleColor: COLORS.TURQUOISE_6,
|
|
103
|
+
tagColor: COLORS.TURQUOISE_6
|
|
104
|
+
},
|
|
105
|
+
[COLORS.GREEN_6]: {
|
|
106
|
+
background: COLORS.GREEN_1,
|
|
107
|
+
titleColor: COLORS.GREEN_6,
|
|
108
|
+
tagColor: COLORS.GREEN_6
|
|
109
|
+
},
|
|
110
|
+
[COLORS.ORANGE_6]: {
|
|
111
|
+
background: COLORS.ORANGE_1,
|
|
112
|
+
titleColor: COLORS.ORANGE_6,
|
|
113
|
+
tagColor: COLORS.ORANGE_6
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
export const StandardTag = ({
|
|
117
|
+
skillId,
|
|
118
|
+
model
|
|
119
|
+
}) => {
|
|
120
|
+
const standardInfo = useStoreMap({
|
|
121
|
+
store: model.tree.$domains,
|
|
122
|
+
keys: [skillId],
|
|
123
|
+
fn: (domains, [skillId]) => {
|
|
124
|
+
const domain = domains.find(d => d.standards.some(s => s.skillIds.includes(skillId)));
|
|
125
|
+
const standard = domain?.standards.find(({
|
|
126
|
+
skillIds
|
|
127
|
+
}) => skillIds.includes(skillId));
|
|
128
|
+
if (!standard || !domain) return null;
|
|
129
|
+
return {
|
|
130
|
+
title: standard.title,
|
|
131
|
+
tag: standard.subtitle,
|
|
132
|
+
color: domain.color
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
});
|
|
136
|
+
if (!standardInfo) return null;
|
|
137
|
+
const preset = DOMAIN_COLOR_PRESETS[standardInfo.color];
|
|
138
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
139
|
+
style: [styles.container, {
|
|
140
|
+
backgroundColor: preset.background
|
|
141
|
+
}],
|
|
142
|
+
children: [/*#__PURE__*/_jsx(SliceDiamondIcon, {
|
|
143
|
+
color: preset.tagColor
|
|
144
|
+
}), /*#__PURE__*/_jsxs(View, {
|
|
145
|
+
style: styles.textContainer,
|
|
146
|
+
children: [/*#__PURE__*/_jsx(Text, {
|
|
147
|
+
numberOfLines: 1,
|
|
148
|
+
style: [styles.title, {
|
|
149
|
+
color: preset.titleColor
|
|
150
|
+
}],
|
|
151
|
+
children: standardInfo.title
|
|
152
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
153
|
+
numberOfLines: 1,
|
|
154
|
+
style: [styles.tag, {
|
|
155
|
+
color: preset.tagColor
|
|
156
|
+
}],
|
|
157
|
+
children: standardInfo.tag
|
|
158
|
+
})]
|
|
159
|
+
})]
|
|
160
|
+
});
|
|
161
|
+
};
|
|
162
|
+
const styles = StyleSheet.create({
|
|
163
|
+
container: {
|
|
164
|
+
minWidth: 175,
|
|
165
|
+
maxWidth: 200,
|
|
166
|
+
paddingHorizontal: 8,
|
|
167
|
+
paddingVertical: 4,
|
|
168
|
+
borderRadius: 12,
|
|
169
|
+
flexDirection: 'row',
|
|
170
|
+
alignItems: 'center',
|
|
171
|
+
gap: 8,
|
|
172
|
+
alignSelf: 'flex-start',
|
|
173
|
+
shadowColor: '#333333',
|
|
174
|
+
shadowOffset: {
|
|
175
|
+
width: 0,
|
|
176
|
+
height: 1
|
|
177
|
+
},
|
|
178
|
+
shadowOpacity: 0.1,
|
|
179
|
+
shadowRadius: 3,
|
|
180
|
+
elevation: 2
|
|
181
|
+
},
|
|
182
|
+
textContainer: {
|
|
183
|
+
flexDirection: 'column',
|
|
184
|
+
justifyContent: 'center',
|
|
185
|
+
alignItems: 'flex-start'
|
|
186
|
+
},
|
|
187
|
+
title: {
|
|
188
|
+
fontSize: 13,
|
|
189
|
+
fontFamily: FONT_FAMILY.buenosAires
|
|
190
|
+
},
|
|
191
|
+
tag: {
|
|
192
|
+
fontSize: 10,
|
|
193
|
+
fontFamily: FONT_FAMILY.buenosAires
|
|
194
|
+
}
|
|
195
|
+
});
|
|
196
|
+
//# sourceMappingURL=StandardTag.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","StyleSheet","View","Text","SliceDiamondIcon","COLORS","FONT_FAMILY","useStoreMap","jsx","_jsx","jsxs","_jsxs","DOMAIN_COLOR_PRESETS","PRIMARY_RED","background","RED_1","titleColor","RED_6","tagColor","PRIMARY_MAGENTA","MAGENTA_1","MAGENTA_6","PRIMARY_PURPLE","PURPLE_1","PURPLE_6","PRIMARY_INDIGO","INDIGO_1","INDIGO_6","PRIMARY_TURQUOISE","TURQUOISE_1","TURQUOISE_6","PRIMARY_GREEN","GREEN_1","GREEN_6","PRIMARY_ORANGE","ORANGE_1","ORANGE_6","RED_4","MAGENTA_4","PURPLE_4","INDIGO_4","TURQUOISE_4","GREEN_4","ORANGE_4","StandardTag","skillId","model","standardInfo","store","tree","$domains","keys","fn","domains","domain","find","d","standards","some","s","skillIds","includes","standard","title","tag","subtitle","color","preset","style","styles","container","backgroundColor","children","textContainer","numberOfLines","create","minWidth","maxWidth","paddingHorizontal","paddingVertical","borderRadius","flexDirection","alignItems","gap","alignSelf","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","justifyContent","fontSize","fontFamily","buenosAires"],"sourceRoot":"../../../../../../src","sources":["features/pmProgress/components/standard/StandardTag.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { createContext, useContext } from 'react';
|
|
4
|
+
const PmProgressContext = /*#__PURE__*/createContext(null);
|
|
5
|
+
export function usePmProgress() {
|
|
6
|
+
const value = useContext(PmProgressContext);
|
|
7
|
+
if (!value) {
|
|
8
|
+
throw new Error('usePmProgress must be used within PmProgressProvider');
|
|
9
|
+
}
|
|
10
|
+
return value;
|
|
11
|
+
}
|
|
12
|
+
export const PmProgressProvider = PmProgressContext.Provider;
|
|
13
|
+
//# sourceMappingURL=PmProgressContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createContext","useContext","PmProgressContext","usePmProgress","value","Error","PmProgressProvider","Provider"],"sourceRoot":"../../../../../src","sources":["features/pmProgress/context/PmProgressContext.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,OAAO;AAYjD,MAAMC,iBAAiB,gBAAGF,aAAa,CAAgC,IAAI,CAAC;AAE5E,OAAO,SAASG,aAAaA,CAAA,EAA2B;EACtD,MAAMC,KAAK,GAAGH,UAAU,CAACC,iBAAiB,CAAC;EAC3C,IAAI,CAACE,KAAK,EAAE;IACV,MAAM,IAAIC,KAAK,CAAC,sDAAsD,CAAC;EACzE;EACA,OAAOD,KAAK;AACd;AAEA,OAAO,MAAME,kBAAkB,GAAGJ,iBAAiB,CAACK,QAAQ","ignoreList":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export { PmProgress } from "./PmProgress.js";
|
|
4
|
+
export { PmProgressModel } from "./model/PmProgressModel.js";
|
|
5
|
+
export { StandardTag } from "./components/standard/StandardTag.js";
|
|
6
|
+
export * from "./shared/pmProgress.types.js";
|
|
7
|
+
export * from "./shared/pmProgress.constants.js";
|
|
8
|
+
|
|
9
|
+
// TODO:
|
|
10
|
+
// !!! case when card is failed and easier card suggested !!!
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["PmProgress","PmProgressModel","StandardTag"],"sourceRoot":"../../../../src","sources":["features/pmProgress/index.ts"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,iBAAc;AACzC,SAASC,eAAe,QAAQ,4BAAyB;AACzD,SAASC,WAAW,QAAQ,sCAAmC;AAC/D,cAAc,8BAA2B;AACzC,cAAc,kCAA+B;;AAE7C;AACA","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { createEvent, createStore, restore } from 'effector';
|
|
4
|
+
export class PmHighlightModel {
|
|
5
|
+
expand = createEvent();
|
|
6
|
+
hover = createEvent();
|
|
7
|
+
$hoveredId = restore(this.hover, null);
|
|
8
|
+
$expandedId = createStore(null).on(this.expand, (current, id) => current === id ? null : id);
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=PmHighlightModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createEvent","createStore","restore","PmHighlightModel","expand","hover","$hoveredId","$expandedId","on","current","id"],"sourceRoot":"../../../../../src","sources":["features/pmProgress/model/PmHighlightModel.ts"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,WAAW,EAAEC,OAAO,QAAQ,UAAU;AAE5D,OAAO,MAAMC,gBAAgB,CAAC;EACZC,MAAM,GAAGJ,WAAW,CAAS,CAAC;EAC9BK,KAAK,GAAGL,WAAW,CAAgB,CAAC;EAEpCM,UAAU,GAAGJ,OAAO,CAAC,IAAI,CAACG,KAAK,EAAE,IAAI,CAAC;EACtCE,WAAW,GAAGN,WAAW,CAAgB,IAAI,CAAC,CAACO,EAAE,CAAC,IAAI,CAACJ,MAAM,EAAE,CAACK,OAAO,EAAEC,EAAE,KACzFD,OAAO,KAAKC,EAAE,GAAG,IAAI,GAAGA,EAC1B,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { combine, createEvent, createStore, restore } from 'effector';
|
|
4
|
+
import { InsightsTimeframe } from "../shared/pmProgress.constants.js";
|
|
5
|
+
export class PmInsightsModel {
|
|
6
|
+
setTimeframe = createEvent();
|
|
7
|
+
$data = createStore(null);
|
|
8
|
+
$timeframe = restore(this.setTimeframe, InsightsTimeframe.WEEK);
|
|
9
|
+
$insights = combine(this.$data, this.$timeframe, (stats, timeframe) => {
|
|
10
|
+
return stats ? stats[timeframe] : null;
|
|
11
|
+
});
|
|
12
|
+
constructor(api) {
|
|
13
|
+
this.api = api;
|
|
14
|
+
this.$data.on(this.api.getUserInsightsFx.doneData, (_, response) => response.practiceModeStatsByTimeFrame);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=PmInsightsModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["combine","createEvent","createStore","restore","InsightsTimeframe","PmInsightsModel","setTimeframe","$data","$timeframe","WEEK","$insights","stats","timeframe","constructor","api","on","getUserInsightsFx","doneData","_","response","practiceModeStatsByTimeFrame"],"sourceRoot":"../../../../../src","sources":["features/pmProgress/model/PmInsightsModel.ts"],"mappings":";;AAAA,SAASA,OAAO,EAAEC,WAAW,EAAEC,WAAW,EAAEC,OAAO,QAAQ,UAAU;AAGrE,SAASC,iBAAiB,QAAQ,mCAAgC;AAElE,OAAO,MAAMC,eAAe,CAAC;EACXC,YAAY,GAAGL,WAAW,CAAoB,CAAC;EAE9CM,KAAK,GAAGL,WAAW,CAClC,IACF,CAAC;EACeM,UAAU,GAAGL,OAAO,CAAC,IAAI,CAACG,YAAY,EAAEF,iBAAiB,CAACK,IAAI,CAAC;EAC/DC,SAAS,GAAGV,OAAO,CAAC,IAAI,CAACO,KAAK,EAAE,IAAI,CAACC,UAAU,EAAE,CAACG,KAAK,EAAEC,SAAS,KAAK;IACrF,OAAOD,KAAK,GAAGA,KAAK,CAACC,SAAS,CAAC,GAAG,IAAI;EACxC,CAAC,CAAC;EAEFC,WAAWA,CAAkBC,GAAkB,EAAE;IAAA,KAApBA,GAAkB,GAAlBA,GAAkB;IAC7C,IAAI,CAACP,KAAK,CAACQ,EAAE,CACX,IAAI,CAACD,GAAG,CAACE,iBAAiB,CAACC,QAAQ,EACnC,CAACC,CAAC,EAAEC,QAAQ,KAAKA,QAAQ,CAACC,4BAC5B,CAAC;EACH;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { createEffect } from 'effector';
|
|
4
|
+
export class PmProgressApi {
|
|
5
|
+
constructor(props) {
|
|
6
|
+
this.getTreeFx = createEffect(props.getTree);
|
|
7
|
+
this.getStatisticsFx = createEffect(props.getStatistics);
|
|
8
|
+
this.getTeacherRecsFx = createEffect(props.getTeacherRecs);
|
|
9
|
+
this.getMagmaRecsFx = createEffect(props.getMagmaRecs);
|
|
10
|
+
this.getUserInsightsFx = createEffect(() => props.getUserInsights());
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=PmProgressApi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createEffect","PmProgressApi","constructor","props","getTreeFx","getTree","getStatisticsFx","getStatistics","getTeacherRecsFx","getTeacherRecs","getMagmaRecsFx","getMagmaRecs","getUserInsightsFx","getUserInsights"],"sourceRoot":"../../../../../src","sources":["features/pmProgress/model/PmProgressApi.ts"],"mappings":";;AAAA,SAASA,YAAY,QAAQ,UAAU;AAmBvC,OAAO,MAAMC,aAAa,CAAC;EAOzBC,WAAWA,CAACC,KAAyB,EAAE;IACrC,IAAI,CAACC,SAAS,GAAGJ,YAAY,CAACG,KAAK,CAACE,OAAO,CAAC;IAC5C,IAAI,CAACC,eAAe,GAAGN,YAAY,CAACG,KAAK,CAACI,aAAa,CAAC;IACxD,IAAI,CAACC,gBAAgB,GAAGR,YAAY,CAACG,KAAK,CAACM,cAAc,CAAC;IAC1D,IAAI,CAACC,cAAc,GAAGV,YAAY,CAACG,KAAK,CAACQ,YAAY,CAAC;IACtD,IAAI,CAACC,iBAAiB,GAAGZ,YAAY,CAAC,MAAMG,KAAK,CAACU,eAAe,CAAC,CAAC,CAAC;EACtE;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { sample } from 'effector';
|
|
4
|
+
import { createGate } from 'effector-react';
|
|
5
|
+
import { PmProgressApi } from "./PmProgressApi.js";
|
|
6
|
+
import { PmTreeModel } from "./PmTreeModel.js";
|
|
7
|
+
import { PmInsightsModel } from "./PmInsightsModel.js";
|
|
8
|
+
import { PmRecommendationsModel } from "./PmRecommendationsModel.js";
|
|
9
|
+
import { PmSolvingFlowModel } from "./PmSolvingFlowModel.js";
|
|
10
|
+
import { PmHighlightModel } from "./PmHighlightModel.js";
|
|
11
|
+
export class PmProgressModel {
|
|
12
|
+
gate = createGate();
|
|
13
|
+
constructor({
|
|
14
|
+
api
|
|
15
|
+
}) {
|
|
16
|
+
this.api = new PmProgressApi(api);
|
|
17
|
+
this.highlight = new PmHighlightModel();
|
|
18
|
+
this.insights = new PmInsightsModel(this.api);
|
|
19
|
+
this.tree = new PmTreeModel(this.api);
|
|
20
|
+
this.recommendations = new PmRecommendationsModel(this.api);
|
|
21
|
+
this.solving = new PmSolvingFlowModel(this.tree, this.recommendations);
|
|
22
|
+
this.init();
|
|
23
|
+
}
|
|
24
|
+
init() {
|
|
25
|
+
sample({
|
|
26
|
+
clock: this.gate.open,
|
|
27
|
+
target: [this.tree.initTreeFx, this.api.getUserInsightsFx]
|
|
28
|
+
});
|
|
29
|
+
sample({
|
|
30
|
+
clock: this.tree.initTreeFx.done,
|
|
31
|
+
fn: ({
|
|
32
|
+
result: [tree]
|
|
33
|
+
}) => tree,
|
|
34
|
+
target: this.recommendations.initRecommendationsFx
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=PmProgressModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["sample","createGate","PmProgressApi","PmTreeModel","PmInsightsModel","PmRecommendationsModel","PmSolvingFlowModel","PmHighlightModel","PmProgressModel","gate","constructor","api","highlight","insights","tree","recommendations","solving","init","clock","open","target","initTreeFx","getUserInsightsFx","done","fn","result","initRecommendationsFx"],"sourceRoot":"../../../../../src","sources":["features/pmProgress/model/PmProgressModel.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,UAAU;AACjC,SAASC,UAAU,QAAQ,gBAAgB;AAE3C,SAASC,aAAa,QAAiC,oBAAiB;AACxE,SAASC,WAAW,QAAQ,kBAAe;AAC3C,SAASC,eAAe,QAAQ,sBAAmB;AACnD,SAASC,sBAAsB,QAAQ,6BAA0B;AACjE,SAASC,kBAAkB,QAAQ,yBAAsB;AACzD,SAASC,gBAAgB,QAAQ,uBAAoB;AAMrD,OAAO,MAAMC,eAAe,CAAC;EACXC,IAAI,GAAGR,UAAU,CAAsB,CAAC;EASxDS,WAAWA,CAAC;IAAEC;EAA0B,CAAC,EAAE;IACzC,IAAI,CAACA,GAAG,GAAG,IAAIT,aAAa,CAACS,GAAG,CAAC;IACjC,IAAI,CAACC,SAAS,GAAG,IAAIL,gBAAgB,CAAC,CAAC;IACvC,IAAI,CAACM,QAAQ,GAAG,IAAIT,eAAe,CAAC,IAAI,CAACO,GAAG,CAAC;IAC7C,IAAI,CAACG,IAAI,GAAG,IAAIX,WAAW,CAAC,IAAI,CAACQ,GAAG,CAAC;IACrC,IAAI,CAACI,eAAe,GAAG,IAAIV,sBAAsB,CAAC,IAAI,CAACM,GAAG,CAAC;IAC3D,IAAI,CAACK,OAAO,GAAG,IAAIV,kBAAkB,CAAC,IAAI,CAACQ,IAAI,EAAE,IAAI,CAACC,eAAe,CAAC;IAEtE,IAAI,CAACE,IAAI,CAAC,CAAC;EACb;EAEQA,IAAIA,CAAA,EAAG;IACbjB,MAAM,CAAC;MACLkB,KAAK,EAAE,IAAI,CAACT,IAAI,CAACU,IAAI;MACrBC,MAAM,EAAE,CAAC,IAAI,CAACN,IAAI,CAACO,UAAU,EAAE,IAAI,CAACV,GAAG,CAACW,iBAAiB;IAC3D,CAAC,CAAC;IAEFtB,MAAM,CAAC;MACLkB,KAAK,EAAE,IAAI,CAACJ,IAAI,CAACO,UAAU,CAACE,IAAI;MAChCC,EAAE,EAAEA,CAAC;QAAEC,MAAM,EAAE,CAACX,IAAI;MAAE,CAAC,KAAKA,IAAI;MAChCM,MAAM,EAAE,IAAI,CAACL,eAAe,CAACW;IAC/B,CAAC,CAAC;EACJ;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { createEffect, createStore } from 'effector';
|
|
4
|
+
import { RECOMMENDATIONS_LIMIT_PARAM, SolvingFlow } from "../shared/pmProgress.constants.js";
|
|
5
|
+
const INITIAL_RECOMMENDATION_STATE = {
|
|
6
|
+
items: [],
|
|
7
|
+
offset: 0,
|
|
8
|
+
limit: 0,
|
|
9
|
+
total: 0
|
|
10
|
+
};
|
|
11
|
+
export class PmRecommendationsModel {
|
|
12
|
+
$teacher = createStore(INITIAL_RECOMMENDATION_STATE);
|
|
13
|
+
$magma = createStore(INITIAL_RECOMMENDATION_STATE);
|
|
14
|
+
constructor(api) {
|
|
15
|
+
this.api = api;
|
|
16
|
+
this.$teacher.on(this.fetchTeacherRecsFx.doneData, (_, data) => data);
|
|
17
|
+
this.$magma.on(this.fetchMagmaRecsFx.doneData, (_, data) => data);
|
|
18
|
+
}
|
|
19
|
+
fetchTeacherRecsFx = createEffect(tree => this.fetchRecs(tree, SolvingFlow.TEACHER, () => this.api.getTeacherRecsFx({
|
|
20
|
+
limit: RECOMMENDATIONS_LIMIT_PARAM
|
|
21
|
+
})));
|
|
22
|
+
fetchMagmaRecsFx = createEffect(tree => this.fetchRecs(tree, SolvingFlow.MAGMA, () => this.api.getMagmaRecsFx({
|
|
23
|
+
limit: RECOMMENDATIONS_LIMIT_PARAM
|
|
24
|
+
})));
|
|
25
|
+
initRecommendationsFx = createEffect(tree => Promise.all([this.fetchTeacherRecsFx(tree), this.fetchMagmaRecsFx(tree)]));
|
|
26
|
+
fetchRecs = async (tree, type, fetcher) => {
|
|
27
|
+
const recommendations = await fetcher();
|
|
28
|
+
return {
|
|
29
|
+
...recommendations,
|
|
30
|
+
items: recommendations.items.flatMap(({
|
|
31
|
+
skillId
|
|
32
|
+
}) => {
|
|
33
|
+
const skill = tree.skillsMapping[skillId];
|
|
34
|
+
return skill ? [{
|
|
35
|
+
...skill,
|
|
36
|
+
type
|
|
37
|
+
}] : [];
|
|
38
|
+
})
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=PmRecommendationsModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createEffect","createStore","RECOMMENDATIONS_LIMIT_PARAM","SolvingFlow","INITIAL_RECOMMENDATION_STATE","items","offset","limit","total","PmRecommendationsModel","$teacher","$magma","constructor","api","on","fetchTeacherRecsFx","doneData","_","data","fetchMagmaRecsFx","tree","fetchRecs","TEACHER","getTeacherRecsFx","MAGMA","getMagmaRecsFx","initRecommendationsFx","Promise","all","type","fetcher","recommendations","flatMap","skillId","skill","skillsMapping"],"sourceRoot":"../../../../../src","sources":["features/pmProgress/model/PmRecommendationsModel.ts"],"mappings":";;AACA,SAASA,YAAY,EAAEC,WAAW,QAAQ,UAAU;AAEpD,SAASC,2BAA2B,EAAEC,WAAW,QAAQ,mCAAgC;AAEzF,MAAMC,4BAA6C,GAAG;EAAEC,KAAK,EAAE,EAAE;EAAEC,MAAM,EAAE,CAAC;EAAEC,KAAK,EAAE,CAAC;EAAEC,KAAK,EAAE;AAAE,CAAC;AAElG,OAAO,MAAMC,sBAAsB,CAAC;EAClBC,QAAQ,GAAGT,WAAW,CAAkBG,4BAA4B,CAAC;EACrEO,MAAM,GAAGV,WAAW,CAAkBG,4BAA4B,CAAC;EAEnFQ,WAAWA,CAAkBC,GAAkB,EAAE;IAAA,KAApBA,GAAkB,GAAlBA,GAAkB;IAC7C,IAAI,CAACH,QAAQ,CAACI,EAAE,CAAC,IAAI,CAACC,kBAAkB,CAACC,QAAQ,EAAE,CAACC,CAAC,EAAEC,IAAI,KAAKA,IAAI,CAAC;IACrE,IAAI,CAACP,MAAM,CAACG,EAAE,CAAC,IAAI,CAACK,gBAAgB,CAACH,QAAQ,EAAE,CAACC,CAAC,EAAEC,IAAI,KAAKA,IAAI,CAAC;EACnE;EAEgBH,kBAAkB,GAAGf,YAAY,CAAEoB,IAAyB,IAC1E,IAAI,CAACC,SAAS,CAACD,IAAI,EAAEjB,WAAW,CAACmB,OAAO,EAAE,MACxC,IAAI,CAACT,GAAG,CAACU,gBAAgB,CAAC;IAAEhB,KAAK,EAAEL;EAA4B,CAAC,CAClE,CACF,CAAC;EAEeiB,gBAAgB,GAAGnB,YAAY,CAAEoB,IAAyB,IACxE,IAAI,CAACC,SAAS,CAACD,IAAI,EAAEjB,WAAW,CAACqB,KAAK,EAAE,MACtC,IAAI,CAACX,GAAG,CAACY,cAAc,CAAC;IAAElB,KAAK,EAAEL;EAA4B,CAAC,CAChE,CACF,CAAC;EAEewB,qBAAqB,GAAG1B,YAAY,CAAEoB,IAAyB,IAC7EO,OAAO,CAACC,GAAG,CAAC,CAAC,IAAI,CAACb,kBAAkB,CAACK,IAAI,CAAC,EAAE,IAAI,CAACD,gBAAgB,CAACC,IAAI,CAAC,CAAC,CAC1E,CAAC;EAEOC,SAAS,GAAG,MAAAA,CAClBD,IAAyB,EACzBS,IAAiB,EACjBC,OAAoC,KACjC;IACH,MAAMC,eAAe,GAAG,MAAMD,OAAO,CAAC,CAAC;IACvC,OAAO;MACL,GAAGC,eAAe;MAClB1B,KAAK,EAAE0B,eAAe,CAAC1B,KAAK,CAAC2B,OAAO,CAAC,CAAC;QAAEC;MAAQ,CAAC,KAAK;QACpD,MAAMC,KAAK,GAAGd,IAAI,CAACe,aAAa,CAACF,OAAO,CAAC;QACzC,OAAOC,KAAK,GAAG,CAAC;UAAE,GAAGA,KAAK;UAAEL;QAAK,CAAC,CAAC,GAAG,EAAE;MAC1C,CAAC;IACH,CAAC;EACH,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { createEvent, restore } from 'effector';
|
|
4
|
+
import { persist } from 'effector-storage/session';
|
|
5
|
+
import { SessionStorageKeys, SolvingFlow } from "../shared/pmProgress.constants.js";
|
|
6
|
+
import { getAllUncompletedSkills, getDomainStructure, getUncompletedSkillsFromDomain, getUncompletedSkillsFromStandard, startGradesFrom, shiftToBeginningOfArray, withoutDuplicates } from "../shared/pmProgress.helpers.js";
|
|
7
|
+
import { enhanceProgressMatrixData } from '@matteappen/skills-utils';
|
|
8
|
+
export class PmSolvingFlowModel {
|
|
9
|
+
reset = createEvent();
|
|
10
|
+
setQueue = createEvent();
|
|
11
|
+
advance = createEvent();
|
|
12
|
+
$queue = restore(this.setQueue, []).on(this.advance, queue => queue.slice(1)).reset(this.reset);
|
|
13
|
+
constructor(treeModel, recommendationsModel) {
|
|
14
|
+
this.treeModel = treeModel;
|
|
15
|
+
this.recommendationsModel = recommendationsModel;
|
|
16
|
+
persist({
|
|
17
|
+
key: SessionStorageKeys.SOLVING_QUEUE,
|
|
18
|
+
store: this.$queue
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
async start(props) {
|
|
22
|
+
const buildQueue = await this.getBuilder(props);
|
|
23
|
+
const queue = buildQueue[props.type]();
|
|
24
|
+
this.setQueue(queue);
|
|
25
|
+
console.log('queue', queue);
|
|
26
|
+
return queue[0];
|
|
27
|
+
}
|
|
28
|
+
async next() {
|
|
29
|
+
this.advance();
|
|
30
|
+
return this.$queue.getState()[0];
|
|
31
|
+
}
|
|
32
|
+
buildTeacherQueue({
|
|
33
|
+
domains,
|
|
34
|
+
context,
|
|
35
|
+
skillId
|
|
36
|
+
}) {
|
|
37
|
+
const teacherSkills = this.recommendationsModel.$teacher.getState().items;
|
|
38
|
+
const magmaRecommendations = this.recommendationsModel.$magma.getState().items;
|
|
39
|
+
const fromUncompletedDomains = getAllUncompletedSkills(domains, context.tree.skillsMapping);
|
|
40
|
+
const teacherRecommendations = skillId ? shiftToBeginningOfArray(skillId, teacherSkills) : teacherSkills;
|
|
41
|
+
return withoutDuplicates([...teacherRecommendations, ...magmaRecommendations, ...fromUncompletedDomains]);
|
|
42
|
+
}
|
|
43
|
+
buildMagmaQueue({
|
|
44
|
+
domains,
|
|
45
|
+
context
|
|
46
|
+
}) {
|
|
47
|
+
const magmaRecommendations = this.recommendationsModel.$magma.getState().items;
|
|
48
|
+
const fromUncompletedDomains = getAllUncompletedSkills(domains, context.tree.skillsMapping);
|
|
49
|
+
return withoutDuplicates([...magmaRecommendations, ...fromUncompletedDomains]);
|
|
50
|
+
}
|
|
51
|
+
buildStandardQueue({
|
|
52
|
+
domains,
|
|
53
|
+
context,
|
|
54
|
+
standardId
|
|
55
|
+
}) {
|
|
56
|
+
const domain = domains.find(d => d.standards.some(s => s.standardId === standardId));
|
|
57
|
+
if (!domain) return [];
|
|
58
|
+
const standard = domain.standards.find(s => s.standardId === standardId);
|
|
59
|
+
if (!standard) return [];
|
|
60
|
+
const fromStandard = getUncompletedSkillsFromStandard(standard, context.tree.skillsMapping);
|
|
61
|
+
const fromDomain = getUncompletedSkillsFromDomain(domain, context.tree.skillsMapping, standardId);
|
|
62
|
+
const fromOtherDomains = domains.filter(d => d !== domain).flatMap(domain => getUncompletedSkillsFromDomain(domain, context.tree.skillsMapping));
|
|
63
|
+
return withoutDuplicates([...fromStandard, ...fromDomain, ...fromOtherDomains]);
|
|
64
|
+
}
|
|
65
|
+
getAllGradeDomains(context) {
|
|
66
|
+
const grade = this.treeModel.$grade.getState();
|
|
67
|
+
const treeGrades = this.treeModel.$grades.getState();
|
|
68
|
+
const grades = startGradesFrom(treeGrades, grade).filter(({
|
|
69
|
+
isLocked
|
|
70
|
+
}) => !isLocked);
|
|
71
|
+
const treeNodes = Object.values(context.tree.treeMapping);
|
|
72
|
+
return grades.flatMap(grade => {
|
|
73
|
+
const [treeWithStats] = enhanceProgressMatrixData(treeNodes, context.stats, [{
|
|
74
|
+
entityId: context.user._id,
|
|
75
|
+
name: context.user.fullName
|
|
76
|
+
}], grade.value);
|
|
77
|
+
return getDomainStructure(treeWithStats, context.tree.treeMapping);
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
async getBuilder(props) {
|
|
81
|
+
const context = await this.treeModel.getTreeContextFx();
|
|
82
|
+
const domains = this.getAllGradeDomains(context);
|
|
83
|
+
const data = {
|
|
84
|
+
domains,
|
|
85
|
+
context,
|
|
86
|
+
...props
|
|
87
|
+
};
|
|
88
|
+
return {
|
|
89
|
+
[SolvingFlow.TEACHER]: () => this.buildTeacherQueue(data),
|
|
90
|
+
[SolvingFlow.MAGMA]: () => this.buildMagmaQueue(data),
|
|
91
|
+
[SolvingFlow.STANDARD]: () => this.buildStandardQueue(data)
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=PmSolvingFlowModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createEvent","restore","persist","SessionStorageKeys","SolvingFlow","getAllUncompletedSkills","getDomainStructure","getUncompletedSkillsFromDomain","getUncompletedSkillsFromStandard","startGradesFrom","shiftToBeginningOfArray","withoutDuplicates","enhanceProgressMatrixData","PmSolvingFlowModel","reset","setQueue","advance","$queue","on","queue","slice","constructor","treeModel","recommendationsModel","key","SOLVING_QUEUE","store","start","props","buildQueue","getBuilder","type","console","log","next","getState","buildTeacherQueue","domains","context","skillId","teacherSkills","$teacher","items","magmaRecommendations","$magma","fromUncompletedDomains","tree","skillsMapping","teacherRecommendations","buildMagmaQueue","buildStandardQueue","standardId","domain","find","d","standards","some","s","standard","fromStandard","fromDomain","fromOtherDomains","filter","flatMap","getAllGradeDomains","grade","$grade","treeGrades","$grades","grades","isLocked","treeNodes","Object","values","treeMapping","treeWithStats","stats","entityId","user","_id","name","fullName","value","getTreeContextFx","data","TEACHER","MAGMA","STANDARD"],"sourceRoot":"../../../../../src","sources":["features/pmProgress/model/PmSolvingFlowModel.ts"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,OAAO,QAAQ,UAAU;AAC/C,SAASC,OAAO,QAAQ,0BAA0B;AAClD,SAASC,kBAAkB,EAAEC,WAAW,QAAQ,mCAAgC;AAchF,SACEC,uBAAuB,EACvBC,kBAAkB,EAClBC,8BAA8B,EAC9BC,gCAAgC,EAChCC,eAAe,EACfC,uBAAuB,EACvBC,iBAAiB,QACZ,iCAA8B;AACrC,SAASC,yBAAyB,QAAQ,0BAA0B;AAEpE,OAAO,MAAMC,kBAAkB,CAAC;EACdC,KAAK,GAAGd,WAAW,CAAC,CAAC;EAErBe,QAAQ,GAAGf,WAAW,CAAU,CAAC;EACjCgB,OAAO,GAAGhB,WAAW,CAAC,CAAC;EAEvBiB,MAAM,GAAGhB,OAAO,CAAC,IAAI,CAACc,QAAQ,EAAE,EAAE,CAAC,CAChDG,EAAE,CAAC,IAAI,CAACF,OAAO,EAAGG,KAAK,IAAKA,KAAK,CAACC,KAAK,CAAC,CAAC,CAAC,CAAC,CAC3CN,KAAK,CAAC,IAAI,CAACA,KAAK,CAAC;EAEpBO,WAAWA,CACQC,SAAsB,EACtBC,oBAA4C,EAC7D;IAAA,KAFiBD,SAAsB,GAAtBA,SAAsB;IAAA,KACtBC,oBAA4C,GAA5CA,oBAA4C;IAE7DrB,OAAO,CAAC;MAAEsB,GAAG,EAAErB,kBAAkB,CAACsB,aAAa;MAAEC,KAAK,EAAE,IAAI,CAACT;IAAO,CAAC,CAAC;EACxE;EAEA,MAAaU,KAAKA,CAACC,KAAwB,EAAkB;IAC3D,MAAMC,UAAU,GAAG,MAAM,IAAI,CAACC,UAAU,CAACF,KAAK,CAAC;IAC/C,MAAMT,KAAK,GAAGU,UAAU,CAACD,KAAK,CAACG,IAAI,CAAC,CAAC,CAAC;IAEtC,IAAI,CAAChB,QAAQ,CAACI,KAAK,CAAC;IACpBa,OAAO,CAACC,GAAG,CAAC,OAAO,EAAEd,KAAK,CAAC;IAE3B,OAAOA,KAAK,CAAC,CAAC,CAAC;EACjB;EAEA,MAAae,IAAIA,CAAA,EAAG;IAClB,IAAI,CAAClB,OAAO,CAAC,CAAC;IACd,OAAO,IAAI,CAACC,MAAM,CAACkB,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;EAClC;EAEQC,iBAAiBA,CAAC;IAAEC,OAAO;IAAEC,OAAO;IAAEC;EAA0B,CAAC,EAAW;IAClF,MAAMC,aAAa,GAAG,IAAI,CAACjB,oBAAoB,CAACkB,QAAQ,CAACN,QAAQ,CAAC,CAAC,CAACO,KAAK;IACzE,MAAMC,oBAAoB,GAAG,IAAI,CAACpB,oBAAoB,CAACqB,MAAM,CAACT,QAAQ,CAAC,CAAC,CAACO,KAAK;IAC9E,MAAMG,sBAAsB,GAAGxC,uBAAuB,CAACgC,OAAO,EAAEC,OAAO,CAACQ,IAAI,CAACC,aAAa,CAAC;IAE3F,MAAMC,sBAAsB,GAAGT,OAAO,GAClC7B,uBAAuB,CAAC6B,OAAO,EAAEC,aAAa,CAAC,GAC/CA,aAAa;IAEjB,OAAO7B,iBAAiB,CAAC,CACvB,GAAGqC,sBAAsB,EACzB,GAAGL,oBAAoB,EACvB,GAAGE,sBAAsB,CAC1B,CAAC;EACJ;EAEQI,eAAeA,CAAC;IAAEZ,OAAO;IAAEC;EAAwB,CAAC,EAAW;IACrE,MAAMK,oBAAoB,GAAG,IAAI,CAACpB,oBAAoB,CAACqB,MAAM,CAACT,QAAQ,CAAC,CAAC,CAACO,KAAK;IAC9E,MAAMG,sBAAsB,GAAGxC,uBAAuB,CAACgC,OAAO,EAAEC,OAAO,CAACQ,IAAI,CAACC,aAAa,CAAC;IAC3F,OAAOpC,iBAAiB,CAAC,CAAC,GAAGgC,oBAAoB,EAAE,GAAGE,sBAAsB,CAAC,CAAC;EAChF;EAEQK,kBAAkBA,CAAC;IAAEb,OAAO;IAAEC,OAAO;IAAEa;EAA8B,CAAC,EAAW;IACvF,MAAMC,MAAM,GAAGf,OAAO,CAACgB,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAACC,SAAS,CAACC,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAACN,UAAU,KAAKA,UAAU,CAAC,CAAC;IACxF,IAAI,CAACC,MAAM,EAAE,OAAO,EAAE;IAEtB,MAAMM,QAAQ,GAAGN,MAAM,CAACG,SAAS,CAACF,IAAI,CAAEI,CAAC,IAAKA,CAAC,CAACN,UAAU,KAAKA,UAAU,CAAC;IAC1E,IAAI,CAACO,QAAQ,EAAE,OAAO,EAAE;IAExB,MAAMC,YAAY,GAAGnD,gCAAgC,CAACkD,QAAQ,EAAEpB,OAAO,CAACQ,IAAI,CAACC,aAAa,CAAC;IAC3F,MAAMa,UAAU,GAAGrD,8BAA8B,CAC/C6C,MAAM,EACNd,OAAO,CAACQ,IAAI,CAACC,aAAa,EAC1BI,UACF,CAAC;IACD,MAAMU,gBAAgB,GAAGxB,OAAO,CAC7ByB,MAAM,CAAER,CAAC,IAAKA,CAAC,KAAKF,MAAM,CAAC,CAC3BW,OAAO,CAAEX,MAAM,IAAK7C,8BAA8B,CAAC6C,MAAM,EAAEd,OAAO,CAACQ,IAAI,CAACC,aAAa,CAAC,CAAC;IAE1F,OAAOpC,iBAAiB,CAAC,CAAC,GAAGgD,YAAY,EAAE,GAAGC,UAAU,EAAE,GAAGC,gBAAgB,CAAC,CAAC;EACjF;EAEQG,kBAAkBA,CAAC1B,OAAoB,EAAY;IACzD,MAAM2B,KAAK,GAAG,IAAI,CAAC3C,SAAS,CAAC4C,MAAM,CAAC/B,QAAQ,CAAC,CAAC;IAC9C,MAAMgC,UAAU,GAAG,IAAI,CAAC7C,SAAS,CAAC8C,OAAO,CAACjC,QAAQ,CAAC,CAAC;IAEpD,MAAMkC,MAAM,GAAG5D,eAAe,CAAC0D,UAAU,EAAEF,KAAe,CAAC,CAACH,MAAM,CAAC,CAAC;MAAEQ;IAAS,CAAC,KAAK,CAACA,QAAQ,CAAC;IAC/F,MAAMC,SAAS,GAAGC,MAAM,CAACC,MAAM,CAACnC,OAAO,CAACQ,IAAI,CAAC4B,WAAW,CAAC;IAEzD,OAAOL,MAAM,CAACN,OAAO,CAAEE,KAAK,IAAK;MAC/B,MAAM,CAACU,aAAa,CAAC,GAAG/D,yBAAyB,CAC/C2D,SAAS,EACTjC,OAAO,CAACsC,KAAK,EACb,CAAC;QAAEC,QAAQ,EAAEvC,OAAO,CAACwC,IAAI,CAACC,GAAG;QAAEC,IAAI,EAAE1C,OAAO,CAACwC,IAAI,CAACG;MAAS,CAAC,CAAC,EAC7DhB,KAAK,CAACiB,KACR,CAAC;MACD,OAAO5E,kBAAkB,CAACqE,aAAa,EAAErC,OAAO,CAACQ,IAAI,CAAC4B,WAAW,CAAC;IACpE,CAAC,CAAC;EACJ;EAEA,MAAc5C,UAAUA,CAACF,KAAwB,EAA+C;IAC9F,MAAMU,OAAO,GAAG,MAAM,IAAI,CAAChB,SAAS,CAAC6D,gBAAgB,CAAC,CAAC;IACvD,MAAM9C,OAAO,GAAG,IAAI,CAAC2B,kBAAkB,CAAC1B,OAAO,CAAC;IAChD,MAAM8C,IAAsB,GAAG;MAAE/C,OAAO;MAAEC,OAAO;MAAE,GAAGV;IAAM,CAAC;IAE7D,OAAO;MACL,CAACxB,WAAW,CAACiF,OAAO,GAAG,MAAM,IAAI,CAACjD,iBAAiB,CAACgD,IAAwB,CAAC;MAC7E,CAAChF,WAAW,CAACkF,KAAK,GAAG,MAAM,IAAI,CAACrC,eAAe,CAACmC,IAAsB,CAAC;MACvE,CAAChF,WAAW,CAACmF,QAAQ,GAAG,MAAM,IAAI,CAACrC,kBAAkB,CAACkC,IAAyB;IACjF,CAAC;EACH;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { attach, createEffect, createEvent, createStore, restore, sample } from 'effector';
|
|
4
|
+
import { createAction } from 'effector-action';
|
|
5
|
+
import { enhanceProgressMatrixData } from '@matteappen/skills-utils';
|
|
6
|
+
import { getDomainStructure, getInitialPmGrade, getTreeGrades, isTreeDataReady } from "../shared/pmProgress.helpers.js";
|
|
7
|
+
import { persist } from 'effector-storage/session';
|
|
8
|
+
import { SessionStorageKeys } from "../shared/pmProgress.constants.js";
|
|
9
|
+
export class PmTreeModel {
|
|
10
|
+
$tree = createStore(null);
|
|
11
|
+
$stats = createStore(null);
|
|
12
|
+
$user = createStore(null);
|
|
13
|
+
setupInitialGrade = createEvent();
|
|
14
|
+
setDomains = createEvent();
|
|
15
|
+
setGrade = createEvent();
|
|
16
|
+
$isInitialized = createStore(false);
|
|
17
|
+
$grade = restore(this.setGrade, null);
|
|
18
|
+
$domains = restore(this.setDomains, []);
|
|
19
|
+
$grades = createStore([]);
|
|
20
|
+
constructor(api) {
|
|
21
|
+
this.api = api;
|
|
22
|
+
persist({
|
|
23
|
+
key: SessionStorageKeys.GRADE,
|
|
24
|
+
store: this.$grade
|
|
25
|
+
});
|
|
26
|
+
persist({
|
|
27
|
+
key: SessionStorageKeys.DOMAINS,
|
|
28
|
+
store: this.$domains
|
|
29
|
+
});
|
|
30
|
+
createAction(this.initTreeFx.done, {
|
|
31
|
+
target: {
|
|
32
|
+
$tree: this.$tree,
|
|
33
|
+
$stats: this.$stats,
|
|
34
|
+
$user: this.$user,
|
|
35
|
+
$grades: this.$grades,
|
|
36
|
+
$isInitialized: this.$isInitialized,
|
|
37
|
+
setupInitialGrade: this.setupInitialGrade
|
|
38
|
+
},
|
|
39
|
+
fn: (target, {
|
|
40
|
+
params: {
|
|
41
|
+
user
|
|
42
|
+
},
|
|
43
|
+
result: [tree, stats]
|
|
44
|
+
}) => {
|
|
45
|
+
target.$tree(tree);
|
|
46
|
+
target.$stats(stats);
|
|
47
|
+
target.$user(user);
|
|
48
|
+
target.$grades(getTreeGrades(tree, user));
|
|
49
|
+
target.setupInitialGrade({
|
|
50
|
+
tree,
|
|
51
|
+
user
|
|
52
|
+
});
|
|
53
|
+
target.$isInitialized(true);
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
sample({
|
|
57
|
+
clock: this.setupInitialGrade,
|
|
58
|
+
filter: () => sessionStorage.getItem(SessionStorageKeys.GRADE) === null,
|
|
59
|
+
fn: ({
|
|
60
|
+
tree,
|
|
61
|
+
user
|
|
62
|
+
}) => {
|
|
63
|
+
const treeGrades = Object.values(tree.treeMapping).filter(node => node.type === 'grade').map(node => node.attributes.grade);
|
|
64
|
+
return getInitialPmGrade({
|
|
65
|
+
userGrade: user.grade,
|
|
66
|
+
treeGrades,
|
|
67
|
+
lockedGrades: user.setting.practiceModeLockedGrades,
|
|
68
|
+
enrolledGrades: user.enrolledGrades
|
|
69
|
+
});
|
|
70
|
+
},
|
|
71
|
+
target: this.setGrade
|
|
72
|
+
});
|
|
73
|
+
sample({
|
|
74
|
+
clock: [this.$grade, this.initTreeFx.doneData],
|
|
75
|
+
source: {
|
|
76
|
+
tree: this.$tree,
|
|
77
|
+
stats: this.$stats,
|
|
78
|
+
user: this.$user,
|
|
79
|
+
grade: this.$grade
|
|
80
|
+
},
|
|
81
|
+
filter: isTreeDataReady,
|
|
82
|
+
fn: ({
|
|
83
|
+
tree,
|
|
84
|
+
stats,
|
|
85
|
+
user,
|
|
86
|
+
grade
|
|
87
|
+
}) => {
|
|
88
|
+
const [treeWithUserStats] = enhanceProgressMatrixData(Object.values(tree.treeMapping), stats, [{
|
|
89
|
+
entityId: user._id,
|
|
90
|
+
name: user.fullName
|
|
91
|
+
}], grade);
|
|
92
|
+
return getDomainStructure(treeWithUserStats, tree.treeMapping);
|
|
93
|
+
},
|
|
94
|
+
target: this.setDomains
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
initTreeFx = createEffect(({
|
|
98
|
+
user
|
|
99
|
+
}) => {
|
|
100
|
+
return Promise.all([this.api.getTreeFx(user.setting.practiceModeTreeId), this.api.getStatisticsFx({
|
|
101
|
+
entityIds: [user._id]
|
|
102
|
+
})]);
|
|
103
|
+
});
|
|
104
|
+
getTreeContextFx = attach({
|
|
105
|
+
source: {
|
|
106
|
+
tree: this.$tree,
|
|
107
|
+
stats: this.$stats,
|
|
108
|
+
user: this.$user,
|
|
109
|
+
grade: this.$grade
|
|
110
|
+
},
|
|
111
|
+
mapParams: (_, source) => {
|
|
112
|
+
if (!isTreeDataReady(source)) {
|
|
113
|
+
throw new Error('Cannot create treeWithUserStats in getTreeWithStatsFx - tree data is not ready.');
|
|
114
|
+
}
|
|
115
|
+
return source;
|
|
116
|
+
},
|
|
117
|
+
effect: createEffect(({
|
|
118
|
+
tree,
|
|
119
|
+
stats,
|
|
120
|
+
user,
|
|
121
|
+
grade
|
|
122
|
+
}) => {
|
|
123
|
+
const [treeWithStats] = enhanceProgressMatrixData(Object.values(tree.treeMapping), stats, [{
|
|
124
|
+
entityId: user._id,
|
|
125
|
+
name: user.fullName
|
|
126
|
+
}], grade);
|
|
127
|
+
return {
|
|
128
|
+
tree,
|
|
129
|
+
stats,
|
|
130
|
+
user,
|
|
131
|
+
treeWithStats
|
|
132
|
+
};
|
|
133
|
+
})
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=PmTreeModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["attach","createEffect","createEvent","createStore","restore","sample","createAction","enhanceProgressMatrixData","getDomainStructure","getInitialPmGrade","getTreeGrades","isTreeDataReady","persist","SessionStorageKeys","PmTreeModel","$tree","$stats","$user","setupInitialGrade","setDomains","setGrade","$isInitialized","$grade","$domains","$grades","constructor","api","key","GRADE","store","DOMAINS","initTreeFx","done","target","fn","params","user","result","tree","stats","clock","filter","sessionStorage","getItem","treeGrades","Object","values","treeMapping","node","type","map","attributes","grade","userGrade","lockedGrades","setting","practiceModeLockedGrades","enrolledGrades","doneData","source","treeWithUserStats","entityId","_id","name","fullName","Promise","all","getTreeFx","practiceModeTreeId","getStatisticsFx","entityIds","getTreeContextFx","mapParams","_","Error","effect","treeWithStats"],"sourceRoot":"../../../../../src","sources":["features/pmProgress/model/PmTreeModel.ts"],"mappings":"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","ignoreList":[]}
|