@magmamath/students-features 1.4.6 → 1.5.0-rc.10
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/endOfAssignment/components/CorrectAnswer/CorrectAnswer.js +1 -6
- package/dist/commonjs/features/endOfAssignment/components/CorrectAnswer/CorrectAnswer.js.map +1 -1
- package/dist/commonjs/features/fluency/components/Fluency.js +6 -12
- package/dist/commonjs/features/fluency/components/Fluency.js.map +1 -1
- package/dist/commonjs/features/fluency/components/select-math-operator/SelectMathOperator.js +5 -13
- package/dist/commonjs/features/fluency/components/select-math-operator/SelectMathOperator.js.map +1 -1
- package/dist/commonjs/features/fluency/model/FluencyModel.js +0 -21
- package/dist/commonjs/features/fluency/model/FluencyModel.js.map +1 -1
- package/dist/commonjs/features/fluency/shared/fluency.constants.js +1 -6
- package/dist/commonjs/features/fluency/shared/fluency.constants.js.map +1 -1
- package/dist/commonjs/features/fluency/shared/fluency.helpers.js +1 -3
- package/dist/commonjs/features/fluency/shared/fluency.helpers.js.map +1 -1
- package/dist/commonjs/features/pmProgress/model/PmProgressModel.js +1 -7
- package/dist/commonjs/features/pmProgress/model/PmProgressModel.js.map +1 -1
- package/dist/commonjs/features/pmProgress/model/PmRecommendationsModel.js +4 -20
- package/dist/commonjs/features/pmProgress/model/PmRecommendationsModel.js.map +1 -1
- package/dist/commonjs/features/pmProgress/shared/pmProgress.helpers.js +1 -22
- package/dist/commonjs/features/pmProgress/shared/pmProgress.helpers.js.map +1 -1
- package/dist/commonjs/features/translation/constants.js +11 -0
- package/dist/commonjs/features/translation/constants.js.map +1 -0
- package/dist/commonjs/features/translation/helpers.js +60 -0
- package/dist/commonjs/features/translation/helpers.js.map +1 -0
- package/dist/commonjs/features/translation/index.js +105 -0
- package/dist/commonjs/features/translation/index.js.map +1 -0
- package/dist/commonjs/features/translation/model/TranslationModel.js +122 -0
- package/dist/commonjs/features/translation/model/TranslationModel.js.map +1 -0
- package/dist/commonjs/features/translation/model/TranslationPreprocessor.js +142 -0
- package/dist/commonjs/features/translation/model/TranslationPreprocessor.js.map +1 -0
- package/dist/commonjs/features/translation/model/TranslationService.js +112 -0
- package/dist/commonjs/features/translation/model/TranslationService.js.map +1 -0
- package/dist/commonjs/features/translation/preserve/wordsToPreserve.js +314 -0
- package/dist/commonjs/features/translation/preserve/wordsToPreserve.js.map +1 -0
- package/dist/commonjs/features/translation/providers/google/GoogleTranslationProvider.js +50 -0
- package/dist/commonjs/features/translation/providers/google/GoogleTranslationProvider.js.map +1 -0
- package/dist/commonjs/features/translation/providers/google/supportedLanguages.js +230 -0
- package/dist/commonjs/features/translation/providers/google/supportedLanguages.js.map +1 -0
- package/dist/commonjs/features/translation/providers/google.types.js +2 -0
- package/dist/commonjs/features/translation/providers/google.types.js.map +1 -0
- package/dist/commonjs/features/translation/providers/translation.interface.js +49 -0
- package/dist/commonjs/features/translation/providers/translation.interface.js.map +1 -0
- package/dist/commonjs/features/translation/types.js +2 -0
- package/dist/commonjs/features/translation/types.js.map +1 -0
- package/dist/commonjs/features/voice/index.js +15 -4
- package/dist/commonjs/features/voice/index.js.map +1 -1
- package/dist/commonjs/features/voice/playing/components/VoiceIcon.js +1 -1
- package/dist/commonjs/features/voice/playing/components/VoiceIcon.js.map +1 -1
- package/dist/commonjs/features/voice/playing/components/VoiceTranscriptContent.js +44 -0
- package/dist/commonjs/features/voice/playing/components/VoiceTranscriptContent.js.map +1 -0
- package/dist/commonjs/features/voice/playing/components/VoiceTranscription.js +107 -0
- package/dist/commonjs/features/voice/playing/components/VoiceTranscription.js.map +1 -0
- package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionCollapsible.js +66 -0
- package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionCollapsible.js.map +1 -0
- package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionHeaderActions.js +58 -0
- package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionHeaderActions.js.map +1 -0
- package/dist/commonjs/features/voice/playing/hooks/{useVoiceTranscriptionsDropdown.js → useDropdownAnimation.js} +8 -7
- package/dist/commonjs/features/voice/playing/hooks/useDropdownAnimation.js.map +1 -0
- package/dist/commonjs/features/voice/playing/hooks/useVoicePlayerLifecycle.js +53 -0
- package/dist/commonjs/features/voice/playing/hooks/useVoicePlayerLifecycle.js.map +1 -0
- package/dist/commonjs/features/voice/playing/hooks/useVoiceTranscriptionController.js +111 -0
- package/dist/commonjs/features/voice/playing/hooks/useVoiceTranscriptionController.js.map +1 -0
- package/dist/commonjs/features/voice/playing/model/{VoiceTranscriptionsDropdown.model.js → Dropdown.model.js} +4 -4
- package/dist/commonjs/features/voice/playing/model/Dropdown.model.js.map +1 -0
- package/dist/commonjs/features/voice/playing/model/PlaybackController.js +192 -0
- package/dist/commonjs/features/voice/playing/model/PlaybackController.js.map +1 -0
- package/dist/commonjs/features/voice/playing/model/Player.model.js +50 -5
- package/dist/commonjs/features/voice/playing/model/Player.model.js.map +1 -1
- package/dist/commonjs/features/voice/playing/model/{VoiceTranscriptionsCollection.js → TranscriptionsCollection.js} +4 -4
- package/dist/commonjs/features/voice/playing/model/TranscriptionsCollection.js.map +1 -0
- package/dist/commonjs/features/voice/playing/model/TranscriptionsDownloader.model.js +83 -0
- package/dist/commonjs/features/voice/playing/model/TranscriptionsDownloader.model.js.map +1 -0
- package/dist/commonjs/features/voice/playing/model/Translation.model.js +62 -0
- package/dist/commonjs/features/voice/playing/model/Translation.model.js.map +1 -0
- package/dist/commonjs/features/voice/playing/model/VoiceFileDownloader.model.js +2 -2
- package/dist/commonjs/features/voice/playing/model/VoiceFileDownloader.model.js.map +1 -1
- package/dist/commonjs/features/voice/playing/model/VoicePlayer.model.js +58 -172
- package/dist/commonjs/features/voice/playing/model/VoicePlayer.model.js.map +1 -1
- package/dist/commonjs/features/voice/recording/components/VoiceRecordDivider.js +1 -1
- package/dist/commonjs/features/voice/recording/components/VoiceRecordDivider.js.map +1 -1
- package/dist/commonjs/features/voice/types.js +12 -1
- package/dist/commonjs/features/voice/types.js.map +1 -1
- package/dist/commonjs/index.js +12 -0
- package/dist/commonjs/index.js.map +1 -1
- package/dist/module/features/endOfAssignment/components/CorrectAnswer/CorrectAnswer.js +2 -7
- package/dist/module/features/endOfAssignment/components/CorrectAnswer/CorrectAnswer.js.map +1 -1
- package/dist/module/features/fluency/components/Fluency.js +8 -14
- package/dist/module/features/fluency/components/Fluency.js.map +1 -1
- package/dist/module/features/fluency/components/select-math-operator/SelectMathOperator.js +5 -13
- package/dist/module/features/fluency/components/select-math-operator/SelectMathOperator.js.map +1 -1
- package/dist/module/features/fluency/model/FluencyModel.js +1 -22
- package/dist/module/features/fluency/model/FluencyModel.js.map +1 -1
- package/dist/module/features/fluency/shared/fluency.constants.js +0 -5
- package/dist/module/features/fluency/shared/fluency.constants.js.map +1 -1
- package/dist/module/features/fluency/shared/fluency.helpers.js +0 -1
- package/dist/module/features/fluency/shared/fluency.helpers.js.map +1 -1
- package/dist/module/features/pmProgress/model/PmProgressModel.js +1 -7
- package/dist/module/features/pmProgress/model/PmProgressModel.js.map +1 -1
- package/dist/module/features/pmProgress/model/PmRecommendationsModel.js +4 -20
- package/dist/module/features/pmProgress/model/PmRecommendationsModel.js.map +1 -1
- package/dist/module/features/pmProgress/shared/pmProgress.helpers.js +0 -20
- package/dist/module/features/pmProgress/shared/pmProgress.helpers.js.map +1 -1
- package/dist/module/features/translation/constants.js +7 -0
- package/dist/module/features/translation/constants.js.map +1 -0
- package/dist/module/features/translation/helpers.js +53 -0
- package/dist/module/features/translation/helpers.js.map +1 -0
- package/dist/module/features/translation/index.js +12 -0
- package/dist/module/features/translation/index.js.map +1 -0
- package/dist/module/features/translation/model/TranslationModel.js +117 -0
- package/dist/module/features/translation/model/TranslationModel.js.map +1 -0
- package/dist/module/features/translation/model/TranslationPreprocessor.js +137 -0
- package/dist/module/features/translation/model/TranslationPreprocessor.js.map +1 -0
- package/dist/module/features/translation/model/TranslationService.js +107 -0
- package/dist/module/features/translation/model/TranslationService.js.map +1 -0
- package/dist/module/features/translation/preserve/wordsToPreserve.js +310 -0
- package/dist/module/features/translation/preserve/wordsToPreserve.js.map +1 -0
- package/dist/module/features/translation/providers/google/GoogleTranslationProvider.js +45 -0
- package/dist/module/features/translation/providers/google/GoogleTranslationProvider.js.map +1 -0
- package/dist/module/features/translation/providers/google/supportedLanguages.js +225 -0
- package/dist/module/features/translation/providers/google/supportedLanguages.js.map +1 -0
- package/dist/module/features/translation/providers/google.types.js +2 -0
- package/dist/module/features/translation/providers/google.types.js.map +1 -0
- package/dist/module/features/translation/providers/translation.interface.js +44 -0
- package/dist/module/features/translation/providers/translation.interface.js.map +1 -0
- package/dist/module/features/translation/types.js +2 -0
- package/dist/module/features/translation/types.js.map +1 -0
- package/dist/module/features/voice/index.js +2 -1
- package/dist/module/features/voice/index.js.map +1 -1
- package/dist/module/features/voice/playing/components/VoiceIcon.js +2 -2
- package/dist/module/features/voice/playing/components/VoiceIcon.js.map +1 -1
- package/dist/module/features/voice/playing/components/VoiceTranscriptContent.js +38 -0
- package/dist/module/features/voice/playing/components/VoiceTranscriptContent.js.map +1 -0
- package/dist/module/features/voice/playing/components/VoiceTranscription.js +101 -0
- package/dist/module/features/voice/playing/components/VoiceTranscription.js.map +1 -0
- package/dist/module/features/voice/playing/components/VoiceTranscriptionCollapsible.js +58 -0
- package/dist/module/features/voice/playing/components/VoiceTranscriptionCollapsible.js.map +1 -0
- package/dist/module/features/voice/playing/components/VoiceTranscriptionHeaderActions.js +52 -0
- package/dist/module/features/voice/playing/components/VoiceTranscriptionHeaderActions.js.map +1 -0
- package/dist/module/features/voice/playing/hooks/{useVoiceTranscriptionsDropdown.js → useDropdownAnimation.js} +6 -5
- package/dist/module/features/voice/playing/hooks/useDropdownAnimation.js.map +1 -0
- package/dist/module/features/voice/playing/hooks/useVoicePlayerLifecycle.js +48 -0
- package/dist/module/features/voice/playing/hooks/useVoicePlayerLifecycle.js.map +1 -0
- package/dist/module/features/voice/playing/hooks/useVoiceTranscriptionController.js +106 -0
- package/dist/module/features/voice/playing/hooks/useVoiceTranscriptionController.js.map +1 -0
- package/dist/module/features/voice/playing/model/{VoiceTranscriptionsDropdown.model.js → Dropdown.model.js} +2 -2
- package/dist/module/features/voice/playing/model/Dropdown.model.js.map +1 -0
- package/dist/module/features/voice/playing/model/PlaybackController.js +187 -0
- package/dist/module/features/voice/playing/model/PlaybackController.js.map +1 -0
- package/dist/module/features/voice/playing/model/Player.model.js +51 -4
- package/dist/module/features/voice/playing/model/Player.model.js.map +1 -1
- package/dist/module/features/voice/playing/model/{VoiceTranscriptionsCollection.js → TranscriptionsCollection.js} +2 -2
- package/dist/module/features/voice/playing/model/TranscriptionsCollection.js.map +1 -0
- package/dist/module/features/voice/playing/model/TranscriptionsDownloader.model.js +78 -0
- package/dist/module/features/voice/playing/model/TranscriptionsDownloader.model.js.map +1 -0
- package/dist/module/features/voice/playing/model/Translation.model.js +57 -0
- package/dist/module/features/voice/playing/model/Translation.model.js.map +1 -0
- package/dist/module/features/voice/playing/model/VoiceFileDownloader.model.js +2 -2
- package/dist/module/features/voice/playing/model/VoiceFileDownloader.model.js.map +1 -1
- package/dist/module/features/voice/playing/model/VoicePlayer.model.js +60 -174
- package/dist/module/features/voice/playing/model/VoicePlayer.model.js.map +1 -1
- package/dist/module/features/voice/recording/components/VoiceRecordDivider.js +2 -2
- package/dist/module/features/voice/recording/components/VoiceRecordDivider.js.map +1 -1
- package/dist/module/features/voice/types.js +11 -0
- 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/typescript/commonjs/features/endOfAssignment/components/CorrectAnswer/CorrectAnswer.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency/components/Fluency.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency/components/select-math-operator/SelectMathOperator.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency/model/FluencyModel.d.ts +0 -3
- package/dist/typescript/commonjs/features/fluency/model/FluencyModel.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency/shared/fluency.constants.d.ts +0 -4
- package/dist/typescript/commonjs/features/fluency/shared/fluency.constants.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/fluency/shared/fluency.helpers.d.ts +0 -1
- package/dist/typescript/commonjs/features/fluency/shared/fluency.helpers.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/pmProgress/model/PmProgressModel.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/pmProgress/model/PmRecommendationsModel.d.ts +38 -9
- package/dist/typescript/commonjs/features/pmProgress/model/PmRecommendationsModel.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/pmProgress/shared/pmProgress.helpers.d.ts +0 -1
- package/dist/typescript/commonjs/features/pmProgress/shared/pmProgress.helpers.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/translation/constants.d.ts +5 -0
- package/dist/typescript/commonjs/features/translation/constants.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/translation/helpers.d.ts +9 -0
- package/dist/typescript/commonjs/features/translation/helpers.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/translation/index.d.ts +12 -0
- package/dist/typescript/commonjs/features/translation/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/translation/model/TranslationModel.d.ts +33 -0
- package/dist/typescript/commonjs/features/translation/model/TranslationModel.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/translation/model/TranslationPreprocessor.d.ts +34 -0
- package/dist/typescript/commonjs/features/translation/model/TranslationPreprocessor.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/translation/model/TranslationService.d.ts +40 -0
- package/dist/typescript/commonjs/features/translation/model/TranslationService.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/translation/preserve/wordsToPreserve.d.ts +3 -0
- package/dist/typescript/commonjs/features/translation/preserve/wordsToPreserve.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/translation/providers/google/GoogleTranslationProvider.d.ts +17 -0
- package/dist/typescript/commonjs/features/translation/providers/google/GoogleTranslationProvider.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/translation/providers/google/supportedLanguages.d.ts +209 -0
- package/dist/typescript/commonjs/features/translation/providers/google/supportedLanguages.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/translation/providers/google.types.d.ts +15 -0
- package/dist/typescript/commonjs/features/translation/providers/google.types.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/translation/providers/translation.interface.d.ts +30 -0
- package/dist/typescript/commonjs/features/translation/providers/translation.interface.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/translation/types.d.ts +27 -0
- package/dist/typescript/commonjs/features/translation/types.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voice/index.d.ts +3 -1
- package/dist/typescript/commonjs/features/voice/index.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptContent.d.ts +8 -0
- package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptContent.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscription.d.ts +16 -0
- package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscription.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptionCollapsible.d.ts +10 -0
- package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptionCollapsible.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptionHeaderActions.d.ts +12 -0
- package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptionHeaderActions.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voice/playing/hooks/{useVoiceTranscriptionsDropdown.d.ts → useDropdownAnimation.d.ts} +3 -3
- package/dist/typescript/commonjs/features/voice/playing/hooks/useDropdownAnimation.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voice/playing/hooks/useVoicePlayerLifecycle.d.ts +15 -0
- package/dist/typescript/commonjs/features/voice/playing/hooks/useVoicePlayerLifecycle.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voice/playing/hooks/useVoiceTranscriptionController.d.ts +30 -0
- package/dist/typescript/commonjs/features/voice/playing/hooks/useVoiceTranscriptionController.d.ts.map +1 -0
- package/dist/typescript/{module/features/voice/playing/model/VoiceTranscriptionsDropdown.model.d.ts → commonjs/features/voice/playing/model/Dropdown.model.d.ts} +2 -2
- package/dist/typescript/commonjs/features/voice/playing/model/Dropdown.model.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voice/playing/model/PlaybackController.d.ts +28 -0
- package/dist/typescript/commonjs/features/voice/playing/model/PlaybackController.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voice/playing/model/Player.model.d.ts +4 -0
- package/dist/typescript/commonjs/features/voice/playing/model/Player.model.d.ts.map +1 -1
- package/dist/typescript/{module/features/voice/playing/model/VoiceTranscriptionsCollection.d.ts → commonjs/features/voice/playing/model/TranscriptionsCollection.d.ts} +2 -2
- package/dist/typescript/commonjs/features/voice/playing/model/TranscriptionsCollection.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voice/playing/model/TranscriptionsDownloader.model.d.ts +19 -0
- package/dist/typescript/commonjs/features/voice/playing/model/TranscriptionsDownloader.model.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voice/playing/model/Translation.model.d.ts +25 -0
- package/dist/typescript/commonjs/features/voice/playing/model/Translation.model.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/voice/playing/model/VoiceFileDownloader.model.d.ts +2 -2
- package/dist/typescript/commonjs/features/voice/playing/model/VoiceFileDownloader.model.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voice/playing/model/VoicePlayer.model.d.ts +19 -18
- package/dist/typescript/commonjs/features/voice/playing/model/VoicePlayer.model.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/voice/types.d.ts +14 -2
- 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/module/features/endOfAssignment/components/CorrectAnswer/CorrectAnswer.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency/components/Fluency.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency/components/select-math-operator/SelectMathOperator.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency/model/FluencyModel.d.ts +0 -3
- package/dist/typescript/module/features/fluency/model/FluencyModel.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency/shared/fluency.constants.d.ts +0 -4
- package/dist/typescript/module/features/fluency/shared/fluency.constants.d.ts.map +1 -1
- package/dist/typescript/module/features/fluency/shared/fluency.helpers.d.ts +0 -1
- package/dist/typescript/module/features/fluency/shared/fluency.helpers.d.ts.map +1 -1
- package/dist/typescript/module/features/pmProgress/model/PmProgressModel.d.ts.map +1 -1
- package/dist/typescript/module/features/pmProgress/model/PmRecommendationsModel.d.ts +38 -9
- package/dist/typescript/module/features/pmProgress/model/PmRecommendationsModel.d.ts.map +1 -1
- package/dist/typescript/module/features/pmProgress/shared/pmProgress.helpers.d.ts +0 -1
- package/dist/typescript/module/features/pmProgress/shared/pmProgress.helpers.d.ts.map +1 -1
- package/dist/typescript/module/features/translation/constants.d.ts +5 -0
- package/dist/typescript/module/features/translation/constants.d.ts.map +1 -0
- package/dist/typescript/module/features/translation/helpers.d.ts +9 -0
- package/dist/typescript/module/features/translation/helpers.d.ts.map +1 -0
- package/dist/typescript/module/features/translation/index.d.ts +12 -0
- package/dist/typescript/module/features/translation/index.d.ts.map +1 -0
- package/dist/typescript/module/features/translation/model/TranslationModel.d.ts +33 -0
- package/dist/typescript/module/features/translation/model/TranslationModel.d.ts.map +1 -0
- package/dist/typescript/module/features/translation/model/TranslationPreprocessor.d.ts +34 -0
- package/dist/typescript/module/features/translation/model/TranslationPreprocessor.d.ts.map +1 -0
- package/dist/typescript/module/features/translation/model/TranslationService.d.ts +40 -0
- package/dist/typescript/module/features/translation/model/TranslationService.d.ts.map +1 -0
- package/dist/typescript/module/features/translation/preserve/wordsToPreserve.d.ts +3 -0
- package/dist/typescript/module/features/translation/preserve/wordsToPreserve.d.ts.map +1 -0
- package/dist/typescript/module/features/translation/providers/google/GoogleTranslationProvider.d.ts +17 -0
- package/dist/typescript/module/features/translation/providers/google/GoogleTranslationProvider.d.ts.map +1 -0
- package/dist/typescript/module/features/translation/providers/google/supportedLanguages.d.ts +209 -0
- package/dist/typescript/module/features/translation/providers/google/supportedLanguages.d.ts.map +1 -0
- package/dist/typescript/module/features/translation/providers/google.types.d.ts +15 -0
- package/dist/typescript/module/features/translation/providers/google.types.d.ts.map +1 -0
- package/dist/typescript/module/features/translation/providers/translation.interface.d.ts +30 -0
- package/dist/typescript/module/features/translation/providers/translation.interface.d.ts.map +1 -0
- package/dist/typescript/module/features/translation/types.d.ts +27 -0
- package/dist/typescript/module/features/translation/types.d.ts.map +1 -0
- package/dist/typescript/module/features/voice/index.d.ts +3 -1
- package/dist/typescript/module/features/voice/index.d.ts.map +1 -1
- package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptContent.d.ts +8 -0
- package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptContent.d.ts.map +1 -0
- package/dist/typescript/module/features/voice/playing/components/VoiceTranscription.d.ts +16 -0
- package/dist/typescript/module/features/voice/playing/components/VoiceTranscription.d.ts.map +1 -0
- package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptionCollapsible.d.ts +10 -0
- package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptionCollapsible.d.ts.map +1 -0
- package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptionHeaderActions.d.ts +12 -0
- package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptionHeaderActions.d.ts.map +1 -0
- package/dist/typescript/module/features/voice/playing/hooks/{useVoiceTranscriptionsDropdown.d.ts → useDropdownAnimation.d.ts} +3 -3
- package/dist/typescript/module/features/voice/playing/hooks/useDropdownAnimation.d.ts.map +1 -0
- package/dist/typescript/module/features/voice/playing/hooks/useVoicePlayerLifecycle.d.ts +15 -0
- package/dist/typescript/module/features/voice/playing/hooks/useVoicePlayerLifecycle.d.ts.map +1 -0
- package/dist/typescript/module/features/voice/playing/hooks/useVoiceTranscriptionController.d.ts +30 -0
- package/dist/typescript/module/features/voice/playing/hooks/useVoiceTranscriptionController.d.ts.map +1 -0
- package/dist/typescript/{commonjs/features/voice/playing/model/VoiceTranscriptionsDropdown.model.d.ts → module/features/voice/playing/model/Dropdown.model.d.ts} +2 -2
- package/dist/typescript/module/features/voice/playing/model/Dropdown.model.d.ts.map +1 -0
- package/dist/typescript/module/features/voice/playing/model/PlaybackController.d.ts +28 -0
- package/dist/typescript/module/features/voice/playing/model/PlaybackController.d.ts.map +1 -0
- package/dist/typescript/module/features/voice/playing/model/Player.model.d.ts +4 -0
- package/dist/typescript/module/features/voice/playing/model/Player.model.d.ts.map +1 -1
- package/dist/typescript/{commonjs/features/voice/playing/model/VoiceTranscriptionsCollection.d.ts → module/features/voice/playing/model/TranscriptionsCollection.d.ts} +2 -2
- package/dist/typescript/module/features/voice/playing/model/TranscriptionsCollection.d.ts.map +1 -0
- package/dist/typescript/module/features/voice/playing/model/TranscriptionsDownloader.model.d.ts +19 -0
- package/dist/typescript/module/features/voice/playing/model/TranscriptionsDownloader.model.d.ts.map +1 -0
- package/dist/typescript/module/features/voice/playing/model/Translation.model.d.ts +25 -0
- package/dist/typescript/module/features/voice/playing/model/Translation.model.d.ts.map +1 -0
- package/dist/typescript/module/features/voice/playing/model/VoiceFileDownloader.model.d.ts +2 -2
- package/dist/typescript/module/features/voice/playing/model/VoiceFileDownloader.model.d.ts.map +1 -1
- package/dist/typescript/module/features/voice/playing/model/VoicePlayer.model.d.ts +19 -18
- package/dist/typescript/module/features/voice/playing/model/VoicePlayer.model.d.ts.map +1 -1
- package/dist/typescript/module/features/voice/types.d.ts +14 -2
- 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/package.json +37 -10
- package/src/features/endOfAssignment/components/CorrectAnswer/CorrectAnswer.tsx +2 -9
- package/src/features/fluency/components/Fluency.tsx +9 -17
- package/src/features/fluency/components/select-math-operator/SelectMathOperator.tsx +5 -13
- package/src/features/fluency/model/FluencyModel.ts +1 -25
- package/src/features/fluency/shared/fluency.constants.ts +0 -5
- package/src/features/fluency/shared/fluency.helpers.ts +0 -3
- package/src/features/pmProgress/model/PmProgressModel.ts +1 -4
- package/src/features/pmProgress/model/PmRecommendationsModel.ts +6 -22
- package/src/features/pmProgress/shared/pmProgress.helpers.ts +0 -33
- package/src/features/translation/constants.ts +4 -0
- package/src/features/translation/helpers.ts +63 -0
- package/src/features/translation/index.ts +30 -0
- package/src/features/translation/model/TranslationModel.ts +174 -0
- package/src/features/translation/model/TranslationPreprocessor.ts +171 -0
- package/src/features/translation/model/TranslationService.ts +148 -0
- package/src/features/translation/preserve/wordsToPreserve.ts +87 -0
- package/src/features/translation/providers/google/GoogleTranslationProvider.ts +50 -0
- package/src/features/translation/providers/google/supportedLanguages.ts +229 -0
- package/src/features/translation/providers/google.types.ts +16 -0
- package/src/features/translation/providers/translation.interface.ts +63 -0
- package/src/features/translation/types.ts +30 -0
- package/src/features/voice/index.ts +3 -1
- package/src/features/voice/playing/components/VoiceIcon.tsx +2 -2
- package/src/features/voice/playing/components/VoiceTranscriptContent.tsx +44 -0
- package/src/features/voice/playing/components/VoiceTranscription.tsx +117 -0
- package/src/features/voice/playing/components/VoiceTranscriptionCollapsible.tsx +59 -0
- package/src/features/voice/playing/components/VoiceTranscriptionHeaderActions.tsx +61 -0
- package/src/features/voice/playing/hooks/{useVoiceTranscriptionsDropdown.ts → useDropdownAnimation.ts} +5 -5
- package/src/features/voice/playing/hooks/useVoicePlayerLifecycle.ts +64 -0
- package/src/features/voice/playing/hooks/useVoiceTranscriptionController.ts +148 -0
- package/src/features/voice/playing/model/{VoiceTranscriptionsDropdown.model.ts → Dropdown.model.ts} +2 -2
- package/src/features/voice/playing/model/PlaybackController.ts +221 -0
- package/src/features/voice/playing/model/Player.model.ts +52 -4
- package/src/features/voice/playing/model/{VoiceTranscriptionsCollection.ts → TranscriptionsCollection.ts} +1 -1
- package/src/features/voice/playing/model/TranscriptionsDownloader.model.ts +88 -0
- package/src/features/voice/playing/model/Translation.model.ts +75 -0
- package/src/features/voice/playing/model/VoiceFileDownloader.model.ts +2 -2
- package/src/features/voice/playing/model/VoicePlayer.model.ts +68 -192
- package/src/features/voice/recording/components/VoiceRecordDivider.tsx +2 -2
- package/src/features/voice/types.ts +21 -1
- package/src/i18n/.generated/schema.json +3 -7
- package/src/index.ts +1 -0
- package/dist/commonjs/features/fluency/components/FluencyStatusOverlay.js +0 -101
- package/dist/commonjs/features/fluency/components/FluencyStatusOverlay.js.map +0 -1
- package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdown.js +0 -245
- package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdown.js.map +0 -1
- package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdownItem.js +0 -109
- package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdownItem.js.map +0 -1
- package/dist/commonjs/features/voice/playing/hooks/useVoiceTranscriptionsDropdown.js.map +0 -1
- package/dist/commonjs/features/voice/playing/hooks/useVoiceTranscriptionsDropdownItemAnimation.js +0 -34
- package/dist/commonjs/features/voice/playing/hooks/useVoiceTranscriptionsDropdownItemAnimation.js.map +0 -1
- package/dist/commonjs/features/voice/playing/model/TranscriptionsDownloaderModel.js +0 -66
- package/dist/commonjs/features/voice/playing/model/TranscriptionsDownloaderModel.js.map +0 -1
- package/dist/commonjs/features/voice/playing/model/VoiceTranscriptionsCollection.js.map +0 -1
- package/dist/commonjs/features/voice/playing/model/VoiceTranscriptionsDropdown.model.js.map +0 -1
- package/dist/module/features/fluency/components/FluencyStatusOverlay.js +0 -95
- package/dist/module/features/fluency/components/FluencyStatusOverlay.js.map +0 -1
- package/dist/module/features/voice/playing/components/VoiceTranscriptionsDropdown.js +0 -238
- package/dist/module/features/voice/playing/components/VoiceTranscriptionsDropdown.js.map +0 -1
- package/dist/module/features/voice/playing/components/VoiceTranscriptionsDropdownItem.js +0 -103
- package/dist/module/features/voice/playing/components/VoiceTranscriptionsDropdownItem.js.map +0 -1
- package/dist/module/features/voice/playing/hooks/useVoiceTranscriptionsDropdown.js.map +0 -1
- package/dist/module/features/voice/playing/hooks/useVoiceTranscriptionsDropdownItemAnimation.js +0 -29
- package/dist/module/features/voice/playing/hooks/useVoiceTranscriptionsDropdownItemAnimation.js.map +0 -1
- package/dist/module/features/voice/playing/model/TranscriptionsDownloaderModel.js +0 -61
- package/dist/module/features/voice/playing/model/TranscriptionsDownloaderModel.js.map +0 -1
- package/dist/module/features/voice/playing/model/VoiceTranscriptionsCollection.js.map +0 -1
- package/dist/module/features/voice/playing/model/VoiceTranscriptionsDropdown.model.js.map +0 -1
- package/dist/typescript/commonjs/features/fluency/components/FluencyStatusOverlay.d.ts +0 -8
- package/dist/typescript/commonjs/features/fluency/components/FluencyStatusOverlay.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdown.d.ts +0 -16
- package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdown.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdownItem.d.ts +0 -12
- package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdownItem.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/voice/playing/hooks/useVoiceTranscriptionsDropdown.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/voice/playing/hooks/useVoiceTranscriptionsDropdownItemAnimation.d.ts +0 -11
- package/dist/typescript/commonjs/features/voice/playing/hooks/useVoiceTranscriptionsDropdownItemAnimation.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/voice/playing/model/TranscriptionsDownloaderModel.d.ts +0 -15
- package/dist/typescript/commonjs/features/voice/playing/model/TranscriptionsDownloaderModel.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/voice/playing/model/VoiceTranscriptionsCollection.d.ts.map +0 -1
- package/dist/typescript/commonjs/features/voice/playing/model/VoiceTranscriptionsDropdown.model.d.ts.map +0 -1
- package/dist/typescript/module/features/fluency/components/FluencyStatusOverlay.d.ts +0 -8
- package/dist/typescript/module/features/fluency/components/FluencyStatusOverlay.d.ts.map +0 -1
- package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptionsDropdown.d.ts +0 -16
- package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptionsDropdown.d.ts.map +0 -1
- package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptionsDropdownItem.d.ts +0 -12
- package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptionsDropdownItem.d.ts.map +0 -1
- package/dist/typescript/module/features/voice/playing/hooks/useVoiceTranscriptionsDropdown.d.ts.map +0 -1
- package/dist/typescript/module/features/voice/playing/hooks/useVoiceTranscriptionsDropdownItemAnimation.d.ts +0 -11
- package/dist/typescript/module/features/voice/playing/hooks/useVoiceTranscriptionsDropdownItemAnimation.d.ts.map +0 -1
- package/dist/typescript/module/features/voice/playing/model/TranscriptionsDownloaderModel.d.ts +0 -15
- package/dist/typescript/module/features/voice/playing/model/TranscriptionsDownloaderModel.d.ts.map +0 -1
- package/dist/typescript/module/features/voice/playing/model/VoiceTranscriptionsCollection.d.ts.map +0 -1
- package/dist/typescript/module/features/voice/playing/model/VoiceTranscriptionsDropdown.model.d.ts.map +0 -1
- package/src/features/fluency/components/FluencyStatusOverlay.tsx +0 -101
- package/src/features/voice/playing/components/VoiceTranscriptionsDropdown.tsx +0 -296
- package/src/features/voice/playing/components/VoiceTranscriptionsDropdownItem.tsx +0 -128
- package/src/features/voice/playing/hooks/useVoiceTranscriptionsDropdownItemAnimation.ts +0 -40
- package/src/features/voice/playing/model/TranscriptionsDownloaderModel.ts +0 -80
|
@@ -7,12 +7,10 @@ import { FluencyDaysStreakModel } from "./FluencyDaysStreakModel.js";
|
|
|
7
7
|
import { FluencyMatrixModel } from "./FluencyMatrixModel.js";
|
|
8
8
|
import { FluencyApiModel } from "./FluencyApiModel.js";
|
|
9
9
|
import { FluencySolvingModel } from "./FluencySolvingModel.js";
|
|
10
|
-
import {
|
|
11
|
-
import { allFactsEmpty } from "../shared/fluency.helpers.js";
|
|
10
|
+
import { MatrixConfig } from "../shared/fluency.constants.js";
|
|
12
11
|
export class FluencyModel {
|
|
13
12
|
gate = createGate();
|
|
14
13
|
$config = createStore(null);
|
|
15
|
-
$status = createStore(null);
|
|
16
14
|
constructor({
|
|
17
15
|
api
|
|
18
16
|
}) {
|
|
@@ -21,7 +19,6 @@ export class FluencyModel {
|
|
|
21
19
|
this.matrix = new FluencyMatrixModel(this.api);
|
|
22
20
|
this.solving = new FluencySolvingModel(this.matrix, this.$config);
|
|
23
21
|
this.init();
|
|
24
|
-
this.setupStatusTracking();
|
|
25
22
|
}
|
|
26
23
|
init() {
|
|
27
24
|
sample({
|
|
@@ -58,23 +55,5 @@ export class FluencyModel {
|
|
|
58
55
|
target: this.api.postAttemptFx
|
|
59
56
|
});
|
|
60
57
|
}
|
|
61
|
-
setupStatusTracking() {
|
|
62
|
-
sample({
|
|
63
|
-
clock: this.gate.open,
|
|
64
|
-
fn: () => null,
|
|
65
|
-
target: this.$status
|
|
66
|
-
});
|
|
67
|
-
sample({
|
|
68
|
-
clock: [this.api.getMatrixFx.fail, this.api.getWeeklyStatsFx.fail],
|
|
69
|
-
fn: () => FluencyStatus.ERROR,
|
|
70
|
-
target: this.$status
|
|
71
|
-
});
|
|
72
|
-
sample({
|
|
73
|
-
clock: this.api.getMatrixFx.doneData,
|
|
74
|
-
filter: allFactsEmpty,
|
|
75
|
-
fn: () => FluencyStatus.EMPTY,
|
|
76
|
-
target: this.$status
|
|
77
|
-
});
|
|
78
|
-
}
|
|
79
58
|
}
|
|
80
59
|
//# sourceMappingURL=FluencyModel.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createStore","sample","createGate","not","FluencyDaysStreakModel","FluencyMatrixModel","FluencyApiModel","FluencySolvingModel","
|
|
1
|
+
{"version":3,"names":["createStore","sample","createGate","not","FluencyDaysStreakModel","FluencyMatrixModel","FluencyApiModel","FluencySolvingModel","MatrixConfig","FluencyModel","gate","$config","constructor","api","streak","matrix","solving","init","clock","open","fn","config","target","filter","getMatrixFx","pending","grade","getWeeklyStatsFx","flushAttempts","source","Boolean","attempts","matrixConfig","STANDARD","postAttemptFx"],"sourceRoot":"../../../../../src","sources":["features/fluency/model/FluencyModel.ts"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,MAAM,QAAQ,UAAU;AAC9C,SAASC,UAAU,QAAQ,gBAAgB;AAC3C,SAASC,GAAG,QAAQ,cAAc;AAClC,SAASC,sBAAsB,QAAQ,6BAA0B;AACjE,SAASC,kBAAkB,QAAQ,yBAAsB;AACzD,SAASC,eAAe,QAAQ,sBAAmB;AACnD,SAASC,mBAAmB,QAAQ,0BAAuB;AAC3D,SAASC,YAAY,QAAQ,gCAA6B;AAQ1D,OAAO,MAAMC,YAAY,CAAC;EACRC,IAAI,GAAGR,UAAU,CAAwB,CAAC;EAC1CS,OAAO,GAAGX,WAAW,CAAuB,IAAI,CAAC;EAOjEY,WAAWA,CAAC;IAAEC;EAAuB,CAAC,EAAE;IACtC,IAAI,CAACA,GAAG,GAAG,IAAIP,eAAe,CAACO,GAAG,CAAC;IACnC,IAAI,CAACC,MAAM,GAAG,IAAIV,sBAAsB,CAAC,IAAI,CAACS,GAAG,CAAC;IAClD,IAAI,CAACE,MAAM,GAAG,IAAIV,kBAAkB,CAAC,IAAI,CAACQ,GAAG,CAAC;IAC9C,IAAI,CAACG,OAAO,GAAG,IAAIT,mBAAmB,CAAC,IAAI,CAACQ,MAAM,EAAE,IAAI,CAACJ,OAAO,CAAC;IAEjE,IAAI,CAACM,IAAI,CAAC,CAAC;EACb;EAEQA,IAAIA,CAAA,EAAG;IACbhB,MAAM,CAAC;MACLiB,KAAK,EAAE,IAAI,CAACR,IAAI,CAACS,IAAI;MACrBC,EAAE,EAAEA,CAAC;QAAEC;MAAO,CAAC,KAAKA,MAAM;MAC1BC,MAAM,EAAE,IAAI,CAACX;IACf,CAAC,CAAC;IAEFV,MAAM,CAAC;MACLiB,KAAK,EAAE,IAAI,CAACR,IAAI,CAACS,IAAI;MACrBI,MAAM,EAAEpB,GAAG,CAAC,IAAI,CAACU,GAAG,CAACW,WAAW,CAACC,OAAO,CAAC;MACzCL,EAAE,EAAEA,CAAC;QAAEC;MAAO,CAAC,MAAM;QAAEK,KAAK,EAAEL,MAAM,CAACK;MAAM,CAAC,CAAC;MAC7CJ,MAAM,EAAE,IAAI,CAACT,GAAG,CAACW;IACnB,CAAC,CAAC;IAEFvB,MAAM,CAAC;MACLiB,KAAK,EAAE,IAAI,CAACR,IAAI,CAACS,IAAI;MACrBI,MAAM,EAAEpB,GAAG,CAAC,IAAI,CAACU,GAAG,CAACc,gBAAgB,CAACF,OAAO,CAAC;MAC9CH,MAAM,EAAE,IAAI,CAACT,GAAG,CAACc;IACnB,CAAC,CAAC;IAEF1B,MAAM,CAAC;MACLiB,KAAK,EAAE,IAAI,CAACF,OAAO,CAACY,aAAa;MACjCC,MAAM,EAAE,IAAI,CAAClB,OAAO;MACpBY,MAAM,EAAEO,OAAO;MACfV,EAAE,EAAEA,CAACC,MAAM,EAAEU,QAAQ,MAA6B;QAChDL,KAAK,EAAEL,MAAM,CAACK,KAAK;QACnBK,QAAQ;QACRC,YAAY,EAAExB,YAAY,CAACyB;MAC7B,CAAC,CAAC;MACFX,MAAM,EAAE,IAAI,CAACT,GAAG,CAACqB;IACnB,CAAC,CAAC;EACJ;AACF","ignoreList":[]}
|
|
@@ -97,9 +97,4 @@ export const FLUENCY_MODE_PRESETS = Object.fromEntries(FLUENCY_MODES.map(({
|
|
|
97
97
|
preset
|
|
98
98
|
}) => [mode, preset]));
|
|
99
99
|
export const ONE_DAY_MS = 86_400_000;
|
|
100
|
-
export let FluencyStatus = /*#__PURE__*/function (FluencyStatus) {
|
|
101
|
-
FluencyStatus["ERROR"] = "ERROR";
|
|
102
|
-
FluencyStatus["EMPTY"] = "EMPTY";
|
|
103
|
-
return FluencyStatus;
|
|
104
|
-
}({});
|
|
105
100
|
//# sourceMappingURL=fluency.constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ButtonColor","COLORS","SelectOptionColor","createFluencyMode","MAX_INPUT_LENGTH","SESSION_LENGTH","FLUSH_ATTEMPTS_COUNT","getTimeThresholdByGrade","grade","FluencyMode","FluencyMasteryLevel","FluencyColorFamily","StreakStatus","AttemptStatus","MatrixConfig","COLOR_FAMILY_PALETTES","GREEN","shades","GREEN_2","GREEN_3","PRIMARY_GREEN","GREEN_6","button","select","ORANGE","ORANGE_2","ORANGE_3","PRIMARY_ORANGE","ORANGE_6","BLUE","BLUE_2","BLUE_3","PRIMARY_BLUE","BLUE_6","PURPLE","PURPLE_2","PURPLE_3","PRIMARY_PURPLE","PURPLE_6","FLUENCY_MODES","mode","ADDITION","label","symbol","colorFamily","SUBTRACTION","MULTIPLICATION","DIVISION","FLUENCY_MODE_PRESETS","Object","fromEntries","map","preset","ONE_DAY_MS"
|
|
1
|
+
{"version":3,"names":["ButtonColor","COLORS","SelectOptionColor","createFluencyMode","MAX_INPUT_LENGTH","SESSION_LENGTH","FLUSH_ATTEMPTS_COUNT","getTimeThresholdByGrade","grade","FluencyMode","FluencyMasteryLevel","FluencyColorFamily","StreakStatus","AttemptStatus","MatrixConfig","COLOR_FAMILY_PALETTES","GREEN","shades","GREEN_2","GREEN_3","PRIMARY_GREEN","GREEN_6","button","select","ORANGE","ORANGE_2","ORANGE_3","PRIMARY_ORANGE","ORANGE_6","BLUE","BLUE_2","BLUE_3","PRIMARY_BLUE","BLUE_6","PURPLE","PURPLE_2","PURPLE_3","PRIMARY_PURPLE","PURPLE_6","FLUENCY_MODES","mode","ADDITION","label","symbol","colorFamily","SUBTRACTION","MULTIPLICATION","DIVISION","FLUENCY_MODE_PRESETS","Object","fromEntries","map","preset","ONE_DAY_MS"],"sourceRoot":"../../../../../src","sources":["features/fluency/shared/fluency.constants.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -107,7 +107,6 @@ export const buildMatrixGrid = (data, mode) => {
|
|
|
107
107
|
})]);
|
|
108
108
|
return [headerRow, ...dataRows];
|
|
109
109
|
};
|
|
110
|
-
export const allFactsEmpty = response => Object.values(response.operations).every(op => Object.keys(op.facts).length === 0);
|
|
111
110
|
export const generateStreakDates = stats => {
|
|
112
111
|
const todayMs = new Date().setHours(0, 0, 0, 0);
|
|
113
112
|
const startMs = new Date(stats.weekStart).setHours(0, 0, 0, 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["COLORS","FluencyMasteryLevel","FluencyMode","COLOR_FAMILY_PALETTES","StreakStatus","ONE_DAY_MS","createFluencyMode","mode","label","symbol","colorFamily","palette","learning","growing","strong","mastered","shades","select","preset","buttonColor","button","accentColor","header","streakColor","gained","todayBorder","matrix","operatorLabel","levelColors","NOT_STARTED","NEUTRAL_2","LEARNING","GROWING","STRONG","MASTERED","buildMatrixGrid","data","facts","Object","values","operations","maxRow","Math","max","map","f","position","row","maxColumn","column","isDivision","DIVISION","isSubtraction","SUBTRACTION","isCommutative","ADDITION","MULTIPLICATION","factAt","col","find","maxMinuend","numbers","rowNumbers","Array","from","length","_","i","columnNumbers","headerRow","isHeader","isEmpty","box","dataRows","fact","mirrorFact","primaryBox","mirrorBox","effectiveBox","
|
|
1
|
+
{"version":3,"names":["COLORS","FluencyMasteryLevel","FluencyMode","COLOR_FAMILY_PALETTES","StreakStatus","ONE_DAY_MS","createFluencyMode","mode","label","symbol","colorFamily","palette","learning","growing","strong","mastered","shades","select","preset","buttonColor","button","accentColor","header","streakColor","gained","todayBorder","matrix","operatorLabel","levelColors","NOT_STARTED","NEUTRAL_2","LEARNING","GROWING","STRONG","MASTERED","buildMatrixGrid","data","facts","Object","values","operations","maxRow","Math","max","map","f","position","row","maxColumn","column","isDivision","DIVISION","isSubtraction","SUBTRACTION","isCommutative","ADDITION","MULTIPLICATION","factAt","col","find","maxMinuend","numbers","rowNumbers","Array","from","length","_","i","columnNumbers","headerRow","isHeader","isEmpty","box","dataRows","fact","mirrorFact","primaryBox","mirrorBox","effectiveBox","generateStreakDates","stats","todayMs","Date","setHours","startMs","weekStart","practiced","Set","practicedDates","d","dayMs","isPracticed","has","isToday","TODAY_GAINED","GAINED","TODAY","MISSED"],"sourceRoot":"../../../../../src","sources":["features/fluency/shared/fluency.helpers.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -31,14 +31,8 @@ export class PmProgressModel {
|
|
|
31
31
|
sample({
|
|
32
32
|
clock: this.tree.initTreeFx.done,
|
|
33
33
|
fn: ({
|
|
34
|
-
params: {
|
|
35
|
-
user
|
|
36
|
-
},
|
|
37
34
|
result: [tree]
|
|
38
|
-
}) =>
|
|
39
|
-
tree,
|
|
40
|
-
lockedGrades: user.setting.practiceModeLockedGrades
|
|
41
|
-
}),
|
|
35
|
+
}) => tree,
|
|
42
36
|
target: this.recommendations.initRecommendationsFx
|
|
43
37
|
});
|
|
44
38
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["sample","createGate","not","PmProgressApi","PmTreeModel","PmInsightsModel","PmRecommendationsModel","PmSolvingFlowModel","PmHighlightModel","PmProgressModel","gate","constructor","api","highlight","insights","tree","recommendations","solving","init","clock","open","filter","initTreeFx","pending","target","getUserInsightsFx","done","fn","
|
|
1
|
+
{"version":3,"names":["sample","createGate","not","PmProgressApi","PmTreeModel","PmInsightsModel","PmRecommendationsModel","PmSolvingFlowModel","PmHighlightModel","PmProgressModel","gate","constructor","api","highlight","insights","tree","recommendations","solving","init","clock","open","filter","initTreeFx","pending","target","getUserInsightsFx","done","fn","result","initRecommendationsFx"],"sourceRoot":"../../../../../src","sources":["features/pmProgress/model/PmProgressModel.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,UAAU;AACjC,SAASC,UAAU,QAAQ,gBAAgB;AAC3C,SAASC,GAAG,QAAQ,cAAc;AAElC,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,GAAGT,UAAU,CAAsB,CAAC;EASxDU,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;IACblB,MAAM,CAAC;MACLmB,KAAK,EAAE,IAAI,CAACT,IAAI,CAACU,IAAI;MACrBC,MAAM,EAAEnB,GAAG,CAAC,IAAI,CAACa,IAAI,CAACO,UAAU,CAACC,OAAO,CAAC;MACzCC,MAAM,EAAE,CAAC,IAAI,CAACT,IAAI,CAACO,UAAU,EAAE,IAAI,CAACV,GAAG,CAACa,iBAAiB;IAC3D,CAAC,CAAC;IAEFzB,MAAM,CAAC;MACLmB,KAAK,EAAE,IAAI,CAACJ,IAAI,CAACO,UAAU,CAACI,IAAI;MAChCC,EAAE,EAAEA,CAAC;QAAEC,MAAM,EAAE,CAACb,IAAI;MAAE,CAAC,KAAKA,IAAI;MAChCS,MAAM,EAAE,IAAI,CAACR,eAAe,CAACa;IAC/B,CAAC,CAAC;EACJ;AACF","ignoreList":[]}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
import { createEffect, createEvent, createStore } from 'effector';
|
|
4
4
|
import { RECOMMENDATIONS_LIMIT_PARAM, SolvingFlow } from "../shared/pmProgress.constants.js";
|
|
5
|
-
import { filterLockedGradeRecs } from "../shared/pmProgress.helpers.js";
|
|
6
5
|
const EMPTY_RECS = {
|
|
7
6
|
items: [],
|
|
8
7
|
offset: 0,
|
|
@@ -21,25 +20,10 @@ export class PmRecommendationsModel {
|
|
|
21
20
|
fetchTeacherRecsFx = createEffect(tree => this.fetchRecs(tree, SolvingFlow.TEACHER, () => this.api.getTeacherRecsFx({
|
|
22
21
|
limit: RECOMMENDATIONS_LIMIT_PARAM
|
|
23
22
|
})));
|
|
24
|
-
fetchMagmaRecsFx = createEffect(
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
const recs = await this.fetchRecs(tree, SolvingFlow.MAGMA, () => this.api.getMagmaRecsFx({
|
|
29
|
-
limit: RECOMMENDATIONS_LIMIT_PARAM
|
|
30
|
-
}));
|
|
31
|
-
return {
|
|
32
|
-
...recs,
|
|
33
|
-
items: filterLockedGradeRecs(recs.items, tree.treeMapping, lockedGrades)
|
|
34
|
-
};
|
|
35
|
-
});
|
|
36
|
-
initRecommendationsFx = createEffect(({
|
|
37
|
-
tree,
|
|
38
|
-
lockedGrades
|
|
39
|
-
}) => Promise.all([this.fetchTeacherRecsFx(tree), this.fetchMagmaRecsFx({
|
|
40
|
-
tree,
|
|
41
|
-
lockedGrades
|
|
42
|
-
})]));
|
|
23
|
+
fetchMagmaRecsFx = createEffect(tree => this.fetchRecs(tree, SolvingFlow.MAGMA, () => this.api.getMagmaRecsFx({
|
|
24
|
+
limit: RECOMMENDATIONS_LIMIT_PARAM
|
|
25
|
+
})));
|
|
26
|
+
initRecommendationsFx = createEffect(tree => Promise.all([this.fetchTeacherRecsFx(tree), this.fetchMagmaRecsFx(tree)]));
|
|
43
27
|
fetchRecs = async (tree, type, fetcher) => {
|
|
44
28
|
const recommendations = await fetcher();
|
|
45
29
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createEffect","createEvent","createStore","RECOMMENDATIONS_LIMIT_PARAM","SolvingFlow","
|
|
1
|
+
{"version":3,"names":["createEffect","createEvent","createStore","RECOMMENDATIONS_LIMIT_PARAM","SolvingFlow","EMPTY_RECS","items","offset","limit","total","PmRecommendationsModel","reset","$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,EAAEC,WAAW,QAAgB,UAAU;AAEzE,SAASC,2BAA2B,EAAEC,WAAW,QAAQ,mCAAgC;AAEzF,MAAMC,UAA2B,GAAG;EAAEC,KAAK,EAAE,EAAE;EAAEC,MAAM,EAAE,CAAC;EAAEC,KAAK,EAAE,CAAC;EAAEC,KAAK,EAAE;AAAE,CAAC;AAEhF,OAAO,MAAMC,sBAAsB,CAAC;EAClBC,KAAK,GAAGV,WAAW,CAAC,CAAC;EAErBW,QAAQ,GAAGV,WAAW,CAAkBG,UAAU,CAAC,CAACM,KAAK,CAAC,IAAI,CAACA,KAAK,CAAC;EACrEE,MAAM,GAAGX,WAAW,CAAkBG,UAAU,CAAC,CAACM,KAAK,CAAC,IAAI,CAACA,KAAK,CAAC;EAEnFG,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,GAAGjB,YAAY,CAAEsB,IAAyB,IAC1E,IAAI,CAACC,SAAS,CAACD,IAAI,EAAElB,WAAW,CAACoB,OAAO,EAAE,MACxC,IAAI,CAACT,GAAG,CAACU,gBAAgB,CAAC;IAAEjB,KAAK,EAAEL;EAA4B,CAAC,CAClE,CACF,CAAC;EAEekB,gBAAgB,GAAGrB,YAAY,CAAEsB,IAAyB,IACxE,IAAI,CAACC,SAAS,CAACD,IAAI,EAAElB,WAAW,CAACsB,KAAK,EAAE,MACtC,IAAI,CAACX,GAAG,CAACY,cAAc,CAAC;IAAEnB,KAAK,EAAEL;EAA4B,CAAC,CAChE,CACF,CAAC;EAEeyB,qBAAqB,GAAG5B,YAAY,CAAEsB,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;MAClB3B,KAAK,EAAE2B,eAAe,CAAC3B,KAAK,CAAC4B,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":[]}
|
|
@@ -203,26 +203,6 @@ export const formatGradeLabel = (grade, customLabelsMap) => {
|
|
|
203
203
|
if (label.noPrefix) return label.name;
|
|
204
204
|
return `${getText('pmProgress.grade')} ${label.name}`;
|
|
205
205
|
};
|
|
206
|
-
const buildSkillGradeMap = treeMapping => {
|
|
207
|
-
const map = new Map();
|
|
208
|
-
const collectSkills = (nodeId, gradeValue) => {
|
|
209
|
-
const node = treeMapping[nodeId];
|
|
210
|
-
if (!node) return;
|
|
211
|
-
node.skills.forEach(skillId => map.set(skillId, gradeValue));
|
|
212
|
-
node.children.forEach(childId => collectSkills(childId, gradeValue));
|
|
213
|
-
};
|
|
214
|
-
Object.values(treeMapping).filter(node => node.type === 'grade').forEach(gradeNode => collectSkills(gradeNode._id, gradeNode.attributes.grade));
|
|
215
|
-
return map;
|
|
216
|
-
};
|
|
217
|
-
export const filterLockedGradeRecs = (skills, treeMapping, lockedGrades) => {
|
|
218
|
-
if (lockedGrades.length === 0) return skills;
|
|
219
|
-
const locked = new Set(lockedGrades);
|
|
220
|
-
const skillGradeMap = buildSkillGradeMap(treeMapping);
|
|
221
|
-
return skills.filter(skill => {
|
|
222
|
-
const grade = skillGradeMap.get(skill._id);
|
|
223
|
-
return grade === undefined || !locked.has(grade);
|
|
224
|
-
});
|
|
225
|
-
};
|
|
226
206
|
export const getTreeGrades = (tree, user) => {
|
|
227
207
|
const lockedGrades = new Set(user.setting.practiceModeLockedGrades);
|
|
228
208
|
const gradeNodes = Object.values(tree.treeMapping).filter(node => node?.type === 'grade' && node.attributes.grade !== null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["COLORS","CustomDomain","DOMAIN_BORDER_COLORS","DOMAIN_COLORS","dynamicCornerRadius","dynamicInnerRadius","getText","groupStandardsByDomain","standardStats","treeMapping","grouped","Map","standardId","stat","Object","entries","domainId","skillIds","skillsCount","scorePercentage","skillsToPractice","has","set","completed","failed","length","unattempted","left","get","push","title","shortDescriptionTranslations","nameTranslations","subtitle","originalId","isCompleted","skillsLeft","averageScorePercentage","standards","sum","reduce","acc","s","Math","round","resolveDomainColors","nonFluencyIndex","color","PRIMARY_ORANGE","borderColor","ORANGE_6","getDomainStructure","data","Array","from","nonFluencyDomainIds","map","id","filter","isFluencyDomain","indexOf","backgroundColor","NEUTRAL_4","getInitialPmGrade","treeGrades","lockedGrades","enrolledGrades","userGrade","locked","Set","unlocked","g","sort","a","b","isUserGradeMissing","undefined","unlockedEnrolled","includes","min","nearestBelow","reverse","find","grade","nearestAbove","formatTime","ms","totalMinutes","floor","hours","isTreeDataReady","source","tree","stats","user","isTreeDataWithoutGradeReady","createChartConfig","size","OUTER_MARGIN","outerRadius","innerRadius","cornerRadius","gapBetweenSlices","pressOffset","borderWidth","colors","background","NEUTRAL_1","highlightedBackground","NEUTRAL_6","outerArc","strokeWidth","dashWidth","getAllSkillsFromStandard","standard","skillsMapping","Boolean","_id","difficulty","getUncompletedSkillsFromStandard","skillId","getUncompletedSkillsFromDomain","domain","excludeStandardId","flatMap","getAllUncompletedSkills","domains","d","some","shiftToBeginningOfArray","items","index","findIndex","item","slice","withoutDuplicates","skills","seen","skill","add","findDomainBySkillId","startGradesFrom","grades","startGrade","value","toLowerCase","FLUENCY","formatGradeName","formatGradeLabel","customLabelsMap","label","String","noPrefix","name","buildSkillGradeMap","collectSkills","nodeId","gradeValue","node","forEach","children","childId","values","type","gradeNode","attributes","filterLockedGradeRecs","skillGradeMap","getTreeGrades","setting","practiceModeLockedGrades","gradeNodes","uniqueSortedGrades","isLocked"],"sourceRoot":"../../../../../src","sources":["features/pmProgress/shared/pmProgress.helpers.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,4BAA4B;AAanD,SAASC,YAAY,EAAEC,oBAAoB,EAAEC,aAAa,QAAQ,2BAAwB;AAC1F,SAASC,mBAAmB,EAAEC,kBAAkB,QAAQ,sCAAmC;AAE3F,SAASC,OAAO,QAAQ,uBAAoB;AAE5C,MAAMC,sBAAsB,GAAGA,CAC7BC,aAA8D,EAC9DC,WAA+C,KAC5C;EACH,MAAMC,OAAO,GAAG,IAAIC,GAAG,CAA8B,CAAC;EAEtD,KAAK,MAAM,CAACC,UAAU,EAAEC,IAAI,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACP,aAAa,CAAC,EAAE;IAC9D,MAAM;MAAEQ,QAAQ;MAAEC,QAAQ;MAAEC,WAAW;MAAEC,eAAe;MAAEC;IAAiB,CAAC,GAAGP,IAAI;IAEnF,IAAI,CAACH,OAAO,CAACW,GAAG,CAACL,QAAQ,CAAC,EAAE;MAC1BN,OAAO,CAACY,GAAG,CAACN,QAAQ,EAAE,EAAE,CAAC;IAC3B;IAEA,MAAMO,SAAS,GACbH,gBAAgB,EAAEI,MAAM,CAACC,MAAM,KAAK,CAAC,IAAIL,gBAAgB,CAACM,WAAW,CAACD,MAAM,KAAK,CAAC;IACpF,MAAME,IAAI,GAAGP,gBAAgB,GACzBA,gBAAgB,CAACI,MAAM,CAACC,MAAM,GAAGL,gBAAgB,CAACM,WAAW,CAACD,MAAM,GACpE,CAAC;IAELf,OAAO,CAACkB,GAAG,CAACZ,QAAQ,CAAC,CAAEa,IAAI,CAAC;MAC1BjB,UAAU;MACVkB,KAAK,EACHrB,WAAW,CAACG,UAAU,CAAC,CAACmB,4BAA4B,IACpDtB,WAAW,CAACG,UAAU,CAAC,CAACoB,gBAAgB;MAC1CC,QAAQ,EAAExB,WAAW,CAACG,UAAU,CAAC,CAACsB,UAAU;MAC5CjB,QAAQ;MACRG,gBAAgB;MAChBF,WAAW;MACXiB,WAAW,EAAEZ,SAAS;MACtBa,UAAU,EAAET,IAAI;MAChBR;IACF,CAAC,CAAC;EACJ;EAEA,OAAOT,OAAO;AAChB,CAAC;AAED,MAAM2B,sBAAsB,GAAIC,SAA8B,IAAa;EACzE,IAAIA,SAAS,CAACb,MAAM,KAAK,CAAC,EAAE,OAAO,CAAC;EACpC,MAAMc,GAAG,GAAGD,SAAS,CAACE,MAAM,CAAC,CAACC,GAAG,EAAEC,CAAC,KAAKD,GAAG,GAAGC,CAAC,CAACvB,eAAe,EAAE,CAAC,CAAC;EACpE,OAAOwB,IAAI,CAACC,KAAK,CAAEL,GAAG,GAAGD,SAAS,CAACb,MAAM,GAAI,EAAE,CAAC,GAAG,EAAE;AACvD,CAAC;AAED,MAAMoB,mBAAmB,GAAIC,eAAuB,IAAK;EACvD,IAAIA,eAAe,GAAG,CAAC,EAAE;IACvB,OAAO;MAAEC,KAAK,EAAE/C,MAAM,CAACgD,cAAc;MAAEC,WAAW,EAAEjD,MAAM,CAACkD;IAAS,CAAC;EACvE;EACA,OAAO;IACLH,KAAK,EAAE5C,aAAa,CAAC2C,eAAe,CAAC,IAAI3C,aAAa,CAACA,aAAa,CAACsB,MAAM,GAAG,CAAC,CAAC;IAChFwB,WAAW,EACT/C,oBAAoB,CAAC4C,eAAe,CAAC,IACrC5C,oBAAoB,CAACA,oBAAoB,CAACuB,MAAM,GAAG,CAAC;EACxD,CAAC;AACH,CAAC;AAED,OAAO,MAAM0B,kBAAkB,GAAGA,CAChCC,IAAoC,EACpC3C,WAA+C,KAClC;EACb,MAAMC,OAAO,GAAGH,sBAAsB,CAAC6C,IAAI,CAAC5C,aAAa,EAAEC,WAAW,CAAC;EAEvE,MAAMM,OAAO,GAAGsC,KAAK,CAACC,IAAI,CAAC5C,OAAO,CAACK,OAAO,CAAC,CAAC,CAAC;EAC7C,MAAMwC,mBAAmB,GAAGxC,OAAO,CAChCyC,GAAG,CAAC,CAAC,CAACC,EAAE,CAAC,KAAKA,EAAE,CAAC,CACjBC,MAAM,CAAED,EAAE,IAAK,CAACE,eAAe,CAAClD,WAAW,CAACgD,EAAE,CAAC,CAACzB,gBAAgB,CAAC,CAAC;EAErE,OAAOjB,OAAO,CAACyC,GAAG,CAAC,CAAC,CAACxC,QAAQ,EAAEsB,SAAS,CAAC,KAAK;IAC5C,MAAMR,KAAK,GAAGrB,WAAW,CAACO,QAAQ,CAAC,CAACgB,gBAAgB;IACpD,MAAMc,eAAe,GAAGS,mBAAmB,CAACK,OAAO,CAAC5C,QAAQ,CAAC;IAE7D,OAAO;MACLA,QAAQ;MACRc,KAAK;MACL,GAAGe,mBAAmB,CAACC,eAAe,CAAC;MACvCe,eAAe,EAAE7D,MAAM,CAAC8D,SAAS;MACjCxB,SAAS;MACTnB,eAAe,EAAEkB,sBAAsB,CAACC,SAAS;IACnD,CAAC;EACH,CAAC,CAAC;AACJ,CAAC;AASD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMyB,iBAAiB,GAAGA,CAAC;EAChCC,UAAU;EACVC,YAAY;EACZC,cAAc;EACdC;AACuB,CAAC,KAAoB;EAC5C,MAAMC,MAAM,GAAG,IAAIC,GAAG,CAACJ,YAAY,CAAC;EACpC,MAAMK,QAAQ,GAAGN,UAAU,CAACN,MAAM,CAAEa,CAAC,IAAK,CAACH,MAAM,CAAC/C,GAAG,CAACkD,CAAC,CAAC,CAAC,CAACC,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,GAAGC,CAAC,CAAC;EAE/E,IAAIJ,QAAQ,CAAC7C,MAAM,KAAK,CAAC,EAAE;IACzB,OAAO,IAAI;EACb;EAEA,MAAMkD,kBAAkB,GAAGR,SAAS,KAAK,IAAI,IAAIA,SAAS,KAAK,CAAC,CAAC,IAAIA,SAAS,KAAKS,SAAS;EAC5F,IAAID,kBAAkB,EAAE;IACtB,MAAME,gBAAgB,GAAGX,cAAc,CAACR,MAAM,CAAEa,CAAC,IAAKD,QAAQ,CAACQ,QAAQ,CAACP,CAAC,CAAC,CAAC;IAC3E,OAAOM,gBAAgB,CAACpD,MAAM,GAAG,CAAC,GAAGkB,IAAI,CAACoC,GAAG,CAAC,GAAGF,gBAAgB,CAAC,GAAGP,QAAQ,CAAC,CAAC,CAAC;EAClF;EAEA,IAAIA,QAAQ,CAACQ,QAAQ,CAACX,SAAS,CAAC,EAAE,OAAOA,SAAS;EAElD,MAAMa,YAAY,GAAG,CAAC,GAAGV,QAAQ,CAAC,CAACW,OAAO,CAAC,CAAC,CAACC,IAAI,CAAEC,KAAK,IAAKA,KAAK,GAAGhB,SAAS,CAAC;EAC/E,MAAMiB,YAAY,GAAGd,QAAQ,CAACY,IAAI,CAAEC,KAAK,IAAKA,KAAK,GAAGhB,SAAS,CAAC;EAChE,OAAOa,YAAY,IAAII,YAAY,IAAId,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;AACzD,CAAC;AAED,OAAO,MAAMe,UAAU,GAAIC,EAAU,IAAa;EAChD,MAAMC,YAAY,GAAG5C,IAAI,CAAC6C,KAAK,CAACF,EAAE,GAAG,MAAM,CAAC;EAC5C,IAAIC,YAAY,GAAG,EAAE,EAAE,OAAO,GAAGA,YAAY,GAAG;EAChD,MAAME,KAAK,GAAG9C,IAAI,CAACC,KAAK,CAAC2C,YAAY,GAAG,EAAE,CAAC;EAC3C,OAAO,GAAGE,KAAK,GAAG;AACpB,CAAC;AAgBD,OAAO,MAAMC,eAAe,GAAIC,MAAsB,IACpDA,MAAM,CAACC,IAAI,KAAK,IAAI,IAAID,MAAM,CAACE,KAAK,KAAK,IAAI,IAAIF,MAAM,CAACG,IAAI,KAAK,IAAI,IAAIH,MAAM,CAACR,KAAK,KAAK,IAAI;AAKhG,OAAO,MAAMY,2BAA2B,GACtCJ,MAA4B,IAE5BA,MAAM,CAACC,IAAI,KAAK,IAAI,IAAID,MAAM,CAACE,KAAK,KAAK,IAAI,IAAIF,MAAM,CAACG,IAAI,KAAK,IAAI;AAEvE,OAAO,MAAME,iBAAiB,GAAIC,IAAY,IAA4B;EACxE,MAAMC,YAAY,GAAG,CAAC;EACtB,OAAO;IACLD,IAAI;IACJE,WAAW,EAAEF,IAAI,GAAG,CAAC,GAAGC,YAAY;IACpCE,WAAW,EAAE/F,kBAAkB;IAC/BgG,YAAY,EAAEjG,mBAAmB;IACjCkG,gBAAgB,EAAE,CAAC;IACnBC,WAAW,EAAE,CAAC;IACdC,WAAW,EAAE,CAAC;IACdC,MAAM,EAAE;MACNC,UAAU,EAAE1G,MAAM,CAAC2G,SAAS;MAC5BC,qBAAqB,EAAE5G,MAAM,CAAC6G;IAChC,CAAC;IACDC,QAAQ,EAAE;MACR/D,KAAK,EAAE,WAAW;MAClBgE,WAAW,EAAE,KAAK;MAClBC,SAAS,EAAE;IACb;EACF,CAAC;AACH,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMC,wBAAwB,GAAGA,CACtCC,QAAwB,EACxBC,aAA4B,KAE5BD,QAAQ,CAACjG,QAAQ,CACduC,GAAG,CAAEC,EAAE,IAAK0D,aAAa,CAAC1D,EAAE,CAAC,CAAC,CAC9BC,MAAM,CAAC0D,OAAO,CAAC,CACf5C,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKyC,aAAa,CAAC1C,CAAC,CAAC4C,GAAG,CAAC,EAAEC,UAAU,GAAGH,aAAa,CAACzC,CAAC,CAAC2C,GAAG,CAAC,EAAEC,UAAU,CAAC;;AAExF;AACA;AACA;AACA;AACA,OAAO,MAAMC,gCAAgC,GAAGA,CAC9CL,QAAwB,EACxBC,aAA4B,KAChB;EACZ,IAAI,CAACD,QAAQ,CAAC9F,gBAAgB,EAAE,OAAO,EAAE;EAEzC,OAAO,CAAC,GAAG8F,QAAQ,CAAC9F,gBAAgB,CAACI,MAAM,EAAE,GAAG0F,QAAQ,CAAC9F,gBAAgB,CAACM,WAAW,CAAC,CACnF8B,GAAG,CAAC,CAAC;IAAEgE;EAAQ,CAAC,KAAKL,aAAa,CAACK,OAAO,CAAC,CAAC,CAC5C9D,MAAM,CAAC0D,OAAO,CAAC,CACf5C,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKyC,aAAa,CAAC1C,CAAC,CAAC4C,GAAG,CAAC,EAAEC,UAAU,GAAGH,aAAa,CAACzC,CAAC,CAAC2C,GAAG,CAAC,EAAEC,UAAU,CAAC;AACxF,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMG,8BAA8B,GAAGA,CAC5CC,MAAc,EACdP,aAA4B,EAC5BQ,iBAA0B,KAE1BD,MAAM,CAACpF,SAAS,CACboB,MAAM,CAAEhB,CAAC,IAAK,CAACA,CAAC,CAACP,WAAW,IAAIO,CAAC,CAAC9B,UAAU,KAAK+G,iBAAiB,CAAC,CACnEC,OAAO,CAAElF,CAAC,IAAK6E,gCAAgC,CAAC7E,CAAC,EAAEyE,aAAa,CAAC,CAAC;;AAEvE;AACA;AACA;AACA;AACA,OAAO,MAAMU,uBAAuB,GAAGA,CAACC,OAAiB,EAAEX,aAA4B,KACrFW,OAAO,CACJpE,MAAM,CAAEqE,CAAC,IAAKA,CAAC,CAACzF,SAAS,CAAC0F,IAAI,CAAEtF,CAAC,IAAK,CAACA,CAAC,CAACP,WAAW,CAAC,CAAC,CACtDyF,OAAO,CAAEG,CAAC,IAAKN,8BAA8B,CAACM,CAAC,EAAEZ,aAAa,CAAC,CAAC;;AAErE;AACA,OAAO,MAAMc,uBAAuB,GAAGA,CAACxE,EAAU,EAAEyE,KAAc,KAAc;EAC9E,MAAMC,KAAK,GAAGD,KAAK,CAACE,SAAS,CAAEC,IAAI,IAAKA,IAAI,CAAChB,GAAG,KAAK5D,EAAE,CAAC;EACxD,IAAI0E,KAAK,IAAI,CAAC,EAAE,OAAOD,KAAK;EAC5B,OAAO,CAACA,KAAK,CAACC,KAAK,CAAC,EAAE,GAAGD,KAAK,CAACI,KAAK,CAAC,CAAC,EAAEH,KAAK,CAAC,EAAE,GAAGD,KAAK,CAACI,KAAK,CAACH,KAAK,GAAG,CAAC,CAAC,CAAC;AAC5E,CAAC;AAED,OAAO,MAAMI,iBAAiB,GAAIC,MAA6B,IAAc;EAC3E,MAAMC,IAAI,GAAG,IAAIpE,GAAG,CAAS,CAAC;EAC9B,OAAOmE,MAAM,CAAC9E,MAAM,CAAEgF,KAAK,IAAqB;IAC9C,IAAI,CAACA,KAAK,EAAE,OAAO,KAAK;IACxB,IAAID,IAAI,CAACpH,GAAG,CAACqH,KAAK,CAACrB,GAAG,CAAC,EAAE,OAAO,KAAK;IACrCoB,IAAI,CAACE,GAAG,CAACD,KAAK,CAACrB,GAAG,CAAC;IACnB,OAAO,IAAI;EACb,CAAC,CAAC;AACJ,CAAC;AAED,OAAO,MAAMuB,mBAAmB,GAAGA,CAACpB,OAAe,EAAEM,OAAiB,KACpEA,OAAO,CAAC5C,IAAI,CAAE6C,CAAC,IAAKA,CAAC,CAACzF,SAAS,CAAC0F,IAAI,CAAEtF,CAAC,IAAKA,CAAC,CAACzB,QAAQ,CAAC6D,QAAQ,CAAC0C,OAAO,CAAC,CAAC,CAAC;;AAE5E;AACA,OAAO,MAAMqB,eAAe,GAAGA,CAACC,MAAe,EAAEC,UAAkB,KAAc;EAC/E,MAAMZ,KAAK,GAAGW,MAAM,CAACV,SAAS,CAAC,CAAC;IAAEY;EAAM,CAAC,KAAKA,KAAK,KAAKD,UAAU,CAAC;EACnE,IAAIZ,KAAK,IAAI,CAAC,EAAE,OAAOW,MAAM;EAC7B,OAAO,CAAC,GAAGA,MAAM,CAACR,KAAK,CAACH,KAAK,CAAC,EAAE,GAAGW,MAAM,CAACR,KAAK,CAAC,CAAC,EAAEH,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED,OAAO,MAAMxE,eAAe,GAAI7B,KAAa,IAAK;EAChD,OAAOA,KAAK,CAACmH,WAAW,CAAC,CAAC,KAAKhJ,YAAY,CAACiJ,OAAO,CAACD,WAAW,CAAC,CAAC;AACnE,CAAC;AAED,OAAO,MAAME,eAAe,GAAIhE,KAAa,IAAa;EACxD,IAAIA,KAAK,KAAK,CAAC,CAAC,EAAE,OAAO7E,OAAO,CAAC,uBAAuB,CAAC;EACzD,IAAI6E,KAAK,KAAK,CAAC,EAAE,OAAO,GAAG7E,OAAO,CAAC,kBAAkB,CAAC,IAAIA,OAAO,CAAC,mBAAmB,CAAC,EAAE;EACxF,OAAO,GAAGA,OAAO,CAAC,kBAAkB,CAAC,IAAI6E,KAAK,EAAE;AAClD,CAAC;AAED,OAAO,MAAMiE,gBAAgB,GAAGA,CAACjE,KAAa,EAAEkE,eAAgC,KAAa;EAC3F,IAAI,CAACA,eAAe,EAAE,OAAOF,eAAe,CAAChE,KAAK,CAAC;EAEnD,MAAMmE,KAAK,GAAGD,eAAe,CAACE,MAAM,CAACpE,KAAK,CAAC,CAAC;EAE5C,IAAI,CAACmE,KAAK,EAAE,OAAOH,eAAe,CAAChE,KAAK,CAAC;EACzC,IAAImE,KAAK,CAACE,QAAQ,EAAE,OAAOF,KAAK,CAACG,IAAI;EACrC,OAAO,GAAGnJ,OAAO,CAAC,kBAAkB,CAAC,IAAIgJ,KAAK,CAACG,IAAI,EAAE;AACvD,CAAC;AAED,MAAMC,kBAAkB,GACtBjJ,WAA+C,IACvB;EACxB,MAAM+C,GAAG,GAAG,IAAI7C,GAAG,CAAiB,CAAC;EAErC,MAAMgJ,aAAa,GAAGA,CAACC,MAAc,EAAEC,UAAkB,KAAK;IAC5D,MAAMC,IAAI,GAAGrJ,WAAW,CAACmJ,MAAM,CAAC;IAChC,IAAI,CAACE,IAAI,EAAE;IACXA,IAAI,CAACtB,MAAM,CAACuB,OAAO,CAAEvC,OAAO,IAAKhE,GAAG,CAAClC,GAAG,CAACkG,OAAO,EAAEqC,UAAU,CAAC,CAAC;IAC9DC,IAAI,CAACE,QAAQ,CAACD,OAAO,CAAEE,OAAO,IAAKN,aAAa,CAACM,OAAO,EAAEJ,UAAU,CAAC,CAAC;EACxE,CAAC;EAED/I,MAAM,CAACoJ,MAAM,CAACzJ,WAAW,CAAC,CACvBiD,MAAM,CAAEoG,IAAI,IAAKA,IAAI,CAACK,IAAI,KAAK,OAAO,CAAC,CACvCJ,OAAO,CAAEK,SAAS,IAAKT,aAAa,CAACS,SAAS,CAAC/C,GAAG,EAAE+C,SAAS,CAACC,UAAU,CAAClF,KAAK,CAAC,CAAC;EAEnF,OAAO3B,GAAG;AACZ,CAAC;AAED,OAAO,MAAM8G,qBAAqB,GAAGA,CACnC9B,MAAe,EACf/H,WAA+C,EAC/CwD,YAAsB,KACV;EACZ,IAAIA,YAAY,CAACxC,MAAM,KAAK,CAAC,EAAE,OAAO+G,MAAM;EAC5C,MAAMpE,MAAM,GAAG,IAAIC,GAAG,CAACJ,YAAY,CAAC;EACpC,MAAMsG,aAAa,GAAGb,kBAAkB,CAACjJ,WAAW,CAAC;EACrD,OAAO+H,MAAM,CAAC9E,MAAM,CAAEgF,KAAK,IAAK;IAC9B,MAAMvD,KAAK,GAAGoF,aAAa,CAAC3I,GAAG,CAAC8G,KAAK,CAACrB,GAAG,CAAC;IAC1C,OAAOlC,KAAK,KAAKP,SAAS,IAAI,CAACR,MAAM,CAAC/C,GAAG,CAAC8D,KAAK,CAAC;EAClD,CAAC,CAAC;AACJ,CAAC;AAED,OAAO,MAAMqF,aAAa,GAAGA,CAAC5E,IAAyB,EAAEE,IAAU,KAAc;EAC/E,MAAM7B,YAAY,GAAG,IAAII,GAAG,CAACyB,IAAI,CAAC2E,OAAO,CAACC,wBAAwB,CAAC;EAEnE,MAAMC,UAAU,GAAG7J,MAAM,CAACoJ,MAAM,CAACtE,IAAI,CAACnF,WAAW,CAAC,CAACiD,MAAM,CACtDoG,IAAI,IAAKA,IAAI,EAAEK,IAAI,KAAK,OAAO,IAAIL,IAAI,CAACO,UAAU,CAAClF,KAAK,KAAK,IAChE,CAAC;EAED,MAAMyF,kBAAkB,GAAG,CAAC,GAAG,IAAIvG,GAAG,CAACsG,UAAU,CAACnH,GAAG,CAAEsG,IAAI,IAAKA,IAAI,CAACO,UAAU,CAAClF,KAAK,CAAC,CAAC,CAAC,CAACX,IAAI,CAC3F,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,GAAGC,CAChB,CAAC;EAED,OAAOkG,kBAAkB,CAACpH,GAAG,CAAE2B,KAAK,KAAM;IACxCsE,IAAI,EAAEN,eAAe,CAAChE,KAAK,CAAC;IAC5B6D,KAAK,EAAE7D,KAAK;IACZ0F,QAAQ,EAAE5G,YAAY,CAAC5C,GAAG,CAAC8D,KAAK;EAClC,CAAC,CAAC,CAAC;AACL,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["COLORS","CustomDomain","DOMAIN_BORDER_COLORS","DOMAIN_COLORS","dynamicCornerRadius","dynamicInnerRadius","getText","groupStandardsByDomain","standardStats","treeMapping","grouped","Map","standardId","stat","Object","entries","domainId","skillIds","skillsCount","scorePercentage","skillsToPractice","has","set","completed","failed","length","unattempted","left","get","push","title","shortDescriptionTranslations","nameTranslations","subtitle","originalId","isCompleted","skillsLeft","averageScorePercentage","standards","sum","reduce","acc","s","Math","round","resolveDomainColors","nonFluencyIndex","color","PRIMARY_ORANGE","borderColor","ORANGE_6","getDomainStructure","data","Array","from","nonFluencyDomainIds","map","id","filter","isFluencyDomain","indexOf","backgroundColor","NEUTRAL_4","getInitialPmGrade","treeGrades","lockedGrades","enrolledGrades","userGrade","locked","Set","unlocked","g","sort","a","b","isUserGradeMissing","undefined","unlockedEnrolled","includes","min","nearestBelow","reverse","find","grade","nearestAbove","formatTime","ms","totalMinutes","floor","hours","isTreeDataReady","source","tree","stats","user","isTreeDataWithoutGradeReady","createChartConfig","size","OUTER_MARGIN","outerRadius","innerRadius","cornerRadius","gapBetweenSlices","pressOffset","borderWidth","colors","background","NEUTRAL_1","highlightedBackground","NEUTRAL_6","outerArc","strokeWidth","dashWidth","getAllSkillsFromStandard","standard","skillsMapping","Boolean","_id","difficulty","getUncompletedSkillsFromStandard","skillId","getUncompletedSkillsFromDomain","domain","excludeStandardId","flatMap","getAllUncompletedSkills","domains","d","some","shiftToBeginningOfArray","items","index","findIndex","item","slice","withoutDuplicates","skills","seen","skill","add","findDomainBySkillId","startGradesFrom","grades","startGrade","value","toLowerCase","FLUENCY","formatGradeName","formatGradeLabel","customLabelsMap","label","String","noPrefix","name","getTreeGrades","setting","practiceModeLockedGrades","gradeNodes","values","node","type","attributes","uniqueSortedGrades","isLocked"],"sourceRoot":"../../../../../src","sources":["features/pmProgress/shared/pmProgress.helpers.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export const GBD_TEXT_CACHE_SUFFIX = '::gbd';
|
|
4
|
+
export const DESCRIPTION_CACHE_KEY_SUFFIX = '::description';
|
|
5
|
+
export const CHOICES_CACHE_KEY_SUFFIX = '::choices';
|
|
6
|
+
export const PRACTICE_THEORY_CACHE_KEY_SUFFIX = '::practice-theory';
|
|
7
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["GBD_TEXT_CACHE_SUFFIX","DESCRIPTION_CACHE_KEY_SUFFIX","CHOICES_CACHE_KEY_SUFFIX","PRACTICE_THEORY_CACHE_KEY_SUFFIX"],"sourceRoot":"../../../../src","sources":["features/translation/constants.ts"],"mappings":";;AAAA,OAAO,MAAMA,qBAAqB,GAAG,OAAO;AAC5C,OAAO,MAAMC,4BAA4B,GAAG,eAAe;AAC3D,OAAO,MAAMC,wBAAwB,GAAG,WAAW;AACnD,OAAO,MAAMC,gCAAgC,GAAG,mBAAmB","ignoreList":[]}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export function replaceMappedTokens(input, map) {
|
|
4
|
+
let result = input;
|
|
5
|
+
for (const [original, override] of Object.entries(map)) {
|
|
6
|
+
const escaped = original.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
7
|
+
const regex = new RegExp(`\\b${escaped}\\b`, 'gi');
|
|
8
|
+
result = result.replace(regex, override);
|
|
9
|
+
}
|
|
10
|
+
return result;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Masks text segments matched by `regex` with a placeholder,
|
|
15
|
+
* while preserving spaces around the original match.
|
|
16
|
+
*/
|
|
17
|
+
export const maskSegment = ({
|
|
18
|
+
text,
|
|
19
|
+
regex,
|
|
20
|
+
placeholder,
|
|
21
|
+
replacements,
|
|
22
|
+
shouldSkip
|
|
23
|
+
}) => {
|
|
24
|
+
return text.replace(regex, (match, ...args) => {
|
|
25
|
+
if (shouldSkip?.(match)) return match;
|
|
26
|
+
const offset = args[args.length - 2];
|
|
27
|
+
const input = args[args.length - 1];
|
|
28
|
+
const before = offset > 0 ? input[offset - 1] : '';
|
|
29
|
+
const afterIdx = offset + match.length;
|
|
30
|
+
const after = afterIdx < input.length ? input[afterIdx] : '';
|
|
31
|
+
const leftPad = /\s/.test(before);
|
|
32
|
+
const rightPad = /\s/.test(after);
|
|
33
|
+
replacements.push({
|
|
34
|
+
placeholder,
|
|
35
|
+
original: match,
|
|
36
|
+
leftPad,
|
|
37
|
+
rightPad
|
|
38
|
+
});
|
|
39
|
+
return placeholder;
|
|
40
|
+
});
|
|
41
|
+
};
|
|
42
|
+
const HTML_NAMED_ENTITIES = {
|
|
43
|
+
'&': '&',
|
|
44
|
+
'<': '<',
|
|
45
|
+
'>': '>',
|
|
46
|
+
'"': '"',
|
|
47
|
+
''': "'",
|
|
48
|
+
' ': ' '
|
|
49
|
+
};
|
|
50
|
+
export const decodeHtmlEntities = text => {
|
|
51
|
+
return text.replace(/&#(\d+);/g, (_, code) => String.fromCharCode(parseInt(code, 10))).replace(/&#x([0-9a-f]+);/gi, (_, code) => String.fromCharCode(parseInt(code, 16))).replace(/&(amp|lt|gt|quot|apos|nbsp);/g, match => HTML_NAMED_ENTITIES[match] ?? match);
|
|
52
|
+
};
|
|
53
|
+
//# sourceMappingURL=helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["replaceMappedTokens","input","map","result","original","override","Object","entries","escaped","replace","regex","RegExp","maskSegment","text","placeholder","replacements","shouldSkip","match","args","offset","length","before","afterIdx","after","leftPad","test","rightPad","push","HTML_NAMED_ENTITIES","decodeHtmlEntities","_","code","String","fromCharCode","parseInt"],"sourceRoot":"../../../../src","sources":["features/translation/helpers.ts"],"mappings":";;AAEA,OAAO,SAASA,mBAAmBA,CAACC,KAAa,EAAEC,GAA2B,EAAU;EACtF,IAAIC,MAAM,GAAGF,KAAK;EAElB,KAAK,MAAM,CAACG,QAAQ,EAAEC,QAAQ,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACL,GAAG,CAAC,EAAE;IACtD,MAAMM,OAAO,GAAGJ,QAAQ,CAACK,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC;IAC/D,MAAMC,KAAK,GAAG,IAAIC,MAAM,CAAC,MAAMH,OAAO,KAAK,EAAE,IAAI,CAAC;IAElDL,MAAM,GAAGA,MAAM,CAACM,OAAO,CAACC,KAAK,EAAEL,QAAQ,CAAC;EAC1C;EAEA,OAAOF,MAAM;AACf;;AAEA;AACA;AACA;AACA;AACA,OAAO,MAAMS,WAAW,GAAGA,CAAC;EAC1BC,IAAI;EACJH,KAAK;EACLI,WAAW;EACXC,YAAY;EACZC;AACiB,CAAC,KAAa;EAC/B,OAAOH,IAAI,CAACJ,OAAO,CAACC,KAAK,EAAE,CAACO,KAAK,EAAE,GAAGC,IAAI,KAAK;IAC7C,IAAIF,UAAU,GAAGC,KAAK,CAAC,EAAE,OAAOA,KAAK;IAErC,MAAME,MAAM,GAAGD,IAAI,CAACA,IAAI,CAACE,MAAM,GAAG,CAAC,CAAW;IAC9C,MAAMnB,KAAK,GAAGiB,IAAI,CAACA,IAAI,CAACE,MAAM,GAAG,CAAC,CAAW;IAE7C,MAAMC,MAAM,GAAGF,MAAM,GAAG,CAAC,GAAGlB,KAAK,CAACkB,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE;IAClD,MAAMG,QAAQ,GAAGH,MAAM,GAAGF,KAAK,CAACG,MAAM;IACtC,MAAMG,KAAK,GAAGD,QAAQ,GAAGrB,KAAK,CAACmB,MAAM,GAAGnB,KAAK,CAACqB,QAAQ,CAAC,GAAG,EAAE;IAE5D,MAAME,OAAO,GAAG,IAAI,CAACC,IAAI,CAACJ,MAAM,CAAC;IACjC,MAAMK,QAAQ,GAAG,IAAI,CAACD,IAAI,CAACF,KAAK,CAAC;IAEjCR,YAAY,CAACY,IAAI,CAAC;MAAEb,WAAW;MAAEV,QAAQ,EAAEa,KAAK;MAAEO,OAAO;MAAEE;IAAS,CAAC,CAAC;IAEtE,OAAOZ,WAAW;EACpB,CAAC,CAAC;AACJ,CAAC;AAED,MAAMc,mBAA2C,GAAG;EAClD,OAAO,EAAE,GAAG;EACZ,MAAM,EAAE,GAAG;EACX,MAAM,EAAE,GAAG;EACX,QAAQ,EAAE,GAAG;EACb,QAAQ,EAAE,GAAG;EACb,QAAQ,EAAE;AACZ,CAAC;AAED,OAAO,MAAMC,kBAAkB,GAAIhB,IAAY,IAAa;EAC1D,OAAOA,IAAI,CACRJ,OAAO,CAAC,WAAW,EAAE,CAACqB,CAAC,EAAEC,IAAY,KAAKC,MAAM,CAACC,YAAY,CAACC,QAAQ,CAACH,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAClFtB,OAAO,CAAC,mBAAmB,EAAE,CAACqB,CAAC,EAAEC,IAAY,KAAKC,MAAM,CAACC,YAAY,CAACC,QAAQ,CAACH,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAC1FtB,OAAO,CACN,+BAA+B,EAC9BQ,KAAK,IAAKW,mBAAmB,CAACX,KAAK,CAAC,IAAIA,KAC3C,CAAC;AACL,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export { TranslationModel } from "./model/TranslationModel.js";
|
|
4
|
+
export { TranslationService } from "./model/TranslationService.js";
|
|
5
|
+
export { TranslationKatexPreprocessor } from "./model/TranslationPreprocessor.js";
|
|
6
|
+
export { TranslationProvider } from "./providers/translation.interface.js";
|
|
7
|
+
export { GoogleTranslationProvider } from "./providers/google/GoogleTranslationProvider.js";
|
|
8
|
+
export { GoogleTranslateLanguage } from "./providers/google/supportedLanguages.js";
|
|
9
|
+
export { wordsToPreserve, preservedWordsReplacers } from "./preserve/wordsToPreserve.js";
|
|
10
|
+
export { GBD_TEXT_CACHE_SUFFIX, DESCRIPTION_CACHE_KEY_SUFFIX, CHOICES_CACHE_KEY_SUFFIX, PRACTICE_THEORY_CACHE_KEY_SUFFIX } from "./constants.js";
|
|
11
|
+
export { replaceMappedTokens, maskSegment, decodeHtmlEntities } from "./helpers.js";
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TranslationModel","TranslationService","TranslationKatexPreprocessor","TranslationProvider","GoogleTranslationProvider","GoogleTranslateLanguage","wordsToPreserve","preservedWordsReplacers","GBD_TEXT_CACHE_SUFFIX","DESCRIPTION_CACHE_KEY_SUFFIX","CHOICES_CACHE_KEY_SUFFIX","PRACTICE_THEORY_CACHE_KEY_SUFFIX","replaceMappedTokens","maskSegment","decodeHtmlEntities"],"sourceRoot":"../../../../src","sources":["features/translation/index.ts"],"mappings":";;AAAA,SAASA,gBAAgB,QAAQ,6BAA0B;AAC3D,SAASC,kBAAkB,QAAmC,+BAA4B;AAC1F,SAASC,4BAA4B,QAAQ,oCAAiC;AAC9E,SAASC,mBAAmB,QAA+B,sCAAmC;AAC9F,SAASC,yBAAyB,QAAQ,iDAA8C;AACxF,SAASC,uBAAuB,QAAQ,0CAAuC;AAM/E,SAASC,eAAe,EAAEC,uBAAuB,QAAQ,+BAA4B;AACrF,SACEC,qBAAqB,EACrBC,4BAA4B,EAC5BC,wBAAwB,EACxBC,gCAAgC,QAC3B,gBAAa;AACpB,SACEC,mBAAmB,EACnBC,WAAW,EACXC,kBAAkB,QACb,cAAW","ignoreList":[]}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { attach, combine, createEffect, createEvent, restore, sample, split } from 'effector';
|
|
4
|
+
import { GoogleTranslationProvider } from "../providers/google/GoogleTranslationProvider.js";
|
|
5
|
+
import { TranslationService } from "./TranslationService.js";
|
|
6
|
+
import { preservedWordsReplacers, wordsToPreserve } from "../preserve/wordsToPreserve.js";
|
|
7
|
+
import { CHOICES_CACHE_KEY_SUFFIX, DESCRIPTION_CACHE_KEY_SUFFIX, GBD_TEXT_CACHE_SUFFIX } from "../constants.js";
|
|
8
|
+
export class TranslationModel {
|
|
9
|
+
toggle = createEvent();
|
|
10
|
+
setTranslated = createEvent();
|
|
11
|
+
reset = createEvent();
|
|
12
|
+
$isTranslationActive = restore(this.setTranslated, false).reset(this.reset);
|
|
13
|
+
$isTranslated = this.$isTranslationActive;
|
|
14
|
+
constructor({
|
|
15
|
+
$problem,
|
|
16
|
+
$problemId,
|
|
17
|
+
$assignmentId,
|
|
18
|
+
$currentProblemIndex,
|
|
19
|
+
$translationLanguageCode,
|
|
20
|
+
$contentLanguageCode,
|
|
21
|
+
$isTranslationLocked,
|
|
22
|
+
languageChanged,
|
|
23
|
+
api,
|
|
24
|
+
getGreatWorkFeedbackText
|
|
25
|
+
}) {
|
|
26
|
+
this.service = new TranslationService({
|
|
27
|
+
preserve: {
|
|
28
|
+
map: wordsToPreserve,
|
|
29
|
+
replacers: preservedWordsReplacers
|
|
30
|
+
},
|
|
31
|
+
providers: [new GoogleTranslationProvider({
|
|
32
|
+
api
|
|
33
|
+
})],
|
|
34
|
+
onError: () => this.reset()
|
|
35
|
+
});
|
|
36
|
+
this.service.bindCustomCacheKey($problemId, (problemId, {
|
|
37
|
+
target
|
|
38
|
+
}) => `${problemId}::${target}`);
|
|
39
|
+
this.service.bindTargetLanguage($translationLanguageCode);
|
|
40
|
+
if ($contentLanguageCode) {
|
|
41
|
+
this.service.bindSourceLanguage($contentLanguageCode);
|
|
42
|
+
}
|
|
43
|
+
this.translateAllFx = attach({
|
|
44
|
+
source: {
|
|
45
|
+
problem: $problem,
|
|
46
|
+
translationLanguageCode: $translationLanguageCode
|
|
47
|
+
},
|
|
48
|
+
mapParams: (_, source) => source,
|
|
49
|
+
effect: createEffect(({
|
|
50
|
+
problem,
|
|
51
|
+
translationLanguageCode
|
|
52
|
+
}) => {
|
|
53
|
+
if (!problem) return;
|
|
54
|
+
const promises = [this.service.translate(problem.richDescription || problem.description, {
|
|
55
|
+
cacheKeySuffix: DESCRIPTION_CACHE_KEY_SUFFIX
|
|
56
|
+
}), this.service.translate(problem.answerVariants, {
|
|
57
|
+
cacheKeySuffix: CHOICES_CACHE_KEY_SUFFIX
|
|
58
|
+
})];
|
|
59
|
+
if (getGreatWorkFeedbackText) {
|
|
60
|
+
promises.push(this.service.translate(getGreatWorkFeedbackText(), {
|
|
61
|
+
cacheKey: `${translationLanguageCode}${GBD_TEXT_CACHE_SUFFIX}`
|
|
62
|
+
}));
|
|
63
|
+
}
|
|
64
|
+
return Promise.all(promises);
|
|
65
|
+
})
|
|
66
|
+
});
|
|
67
|
+
this.translateFx = createEffect(({
|
|
68
|
+
cacheKey,
|
|
69
|
+
text
|
|
70
|
+
}) => {
|
|
71
|
+
return this.service.translate(text, {
|
|
72
|
+
cacheKey
|
|
73
|
+
});
|
|
74
|
+
});
|
|
75
|
+
this.$isTranslationActive.on(this.translateAllFx.doneData, () => true);
|
|
76
|
+
this.$isTranslationActive.on(this.translateAllFx.fail, () => false);
|
|
77
|
+
split({
|
|
78
|
+
source: sample({
|
|
79
|
+
clock: this.toggle,
|
|
80
|
+
source: this.$isTranslationActive
|
|
81
|
+
}),
|
|
82
|
+
match: {
|
|
83
|
+
on: isTranslated => !isTranslated,
|
|
84
|
+
off: isTranslated => isTranslated
|
|
85
|
+
},
|
|
86
|
+
cases: {
|
|
87
|
+
on: this.translateAllFx,
|
|
88
|
+
off: this.reset
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
sample({
|
|
92
|
+
clock: languageChanged,
|
|
93
|
+
fn: () => false,
|
|
94
|
+
target: this.setTranslated
|
|
95
|
+
});
|
|
96
|
+
sample({
|
|
97
|
+
clock: [$currentProblemIndex, $assignmentId, this.$isTranslationActive],
|
|
98
|
+
source: {
|
|
99
|
+
isTranslated: this.$isTranslationActive,
|
|
100
|
+
isLocked: $isTranslationLocked
|
|
101
|
+
},
|
|
102
|
+
filter: ({
|
|
103
|
+
isTranslated,
|
|
104
|
+
isLocked
|
|
105
|
+
}) => isLocked || isTranslated,
|
|
106
|
+
target: this.translateAllFx
|
|
107
|
+
});
|
|
108
|
+
this.$isTranslationPending = combine(this.translateAllFx.pending, this.translateFx.pending, (isAllPending, isOnePending) => isAllPending || isOnePending);
|
|
109
|
+
}
|
|
110
|
+
getTranslated(key) {
|
|
111
|
+
return this.service.getCached(key);
|
|
112
|
+
}
|
|
113
|
+
clearCache() {
|
|
114
|
+
this.service.reset();
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
//# sourceMappingURL=TranslationModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["attach","combine","createEffect","createEvent","restore","sample","split","GoogleTranslationProvider","TranslationService","preservedWordsReplacers","wordsToPreserve","CHOICES_CACHE_KEY_SUFFIX","DESCRIPTION_CACHE_KEY_SUFFIX","GBD_TEXT_CACHE_SUFFIX","TranslationModel","toggle","setTranslated","reset","$isTranslationActive","$isTranslated","constructor","$problem","$problemId","$assignmentId","$currentProblemIndex","$translationLanguageCode","$contentLanguageCode","$isTranslationLocked","languageChanged","api","getGreatWorkFeedbackText","service","preserve","map","replacers","providers","onError","bindCustomCacheKey","problemId","target","bindTargetLanguage","bindSourceLanguage","translateAllFx","source","problem","translationLanguageCode","mapParams","_","effect","promises","translate","richDescription","description","cacheKeySuffix","answerVariants","push","cacheKey","Promise","all","translateFx","text","on","doneData","fail","clock","match","isTranslated","off","cases","fn","isLocked","filter","$isTranslationPending","pending","isAllPending","isOnePending","getTranslated","key","getCached","clearCache"],"sourceRoot":"../../../../../src","sources":["features/translation/model/TranslationModel.ts"],"mappings":"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","ignoreList":[]}
|