@tinyweb_dev/oe-exam-sdk 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +254 -0
- package/dist/api/exam-create.d.ts +18 -0
- package/dist/api/exam-create.d.ts.map +1 -0
- package/dist/api/exam-create.js +180 -0
- package/dist/api/exam-create.js.map +1 -0
- package/dist/api/exam-create.types.d.ts +149 -0
- package/dist/api/exam-create.types.d.ts.map +1 -0
- package/dist/api/exam-create.types.js +2 -0
- package/dist/api/exam-create.types.js.map +1 -0
- package/dist/api/exam-questions.d.ts +10 -0
- package/dist/api/exam-questions.d.ts.map +1 -0
- package/dist/api/exam-questions.js +99 -0
- package/dist/api/exam-questions.js.map +1 -0
- package/dist/api/exam-questions.types.d.ts +63 -0
- package/dist/api/exam-questions.types.d.ts.map +1 -0
- package/dist/api/exam-questions.types.js +2 -0
- package/dist/api/exam-questions.types.js.map +1 -0
- package/dist/api/exam-taking.d.ts +8 -0
- package/dist/api/exam-taking.d.ts.map +1 -0
- package/dist/api/exam-taking.js +74 -0
- package/dist/api/exam-taking.js.map +1 -0
- package/dist/api/exam-taking.types.d.ts +148 -0
- package/dist/api/exam-taking.types.d.ts.map +1 -0
- package/dist/api/exam-taking.types.js +2 -0
- package/dist/api/exam-taking.types.js.map +1 -0
- package/dist/api/index.d.ts +8 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +7 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/result-review.d.ts +8 -0
- package/dist/api/result-review.d.ts.map +1 -0
- package/dist/api/result-review.js +51 -0
- package/dist/api/result-review.js.map +1 -0
- package/dist/api/result-review.types.d.ts +86 -0
- package/dist/api/result-review.types.d.ts.map +1 -0
- package/dist/api/result-review.types.js +2 -0
- package/dist/api/result-review.types.js.map +1 -0
- package/dist/components/CueCardEditor.d.ts +8 -0
- package/dist/components/CueCardEditor.d.ts.map +1 -0
- package/dist/components/CueCardEditor.js +59 -0
- package/dist/components/CueCardEditor.js.map +1 -0
- package/dist/components/common/ResolvedImage.d.ts +9 -0
- package/dist/components/common/ResolvedImage.d.ts.map +1 -0
- package/dist/components/common/ResolvedImage.js +16 -0
- package/dist/components/common/ResolvedImage.js.map +1 -0
- package/dist/components/exams/CreateExamInfoForm.d.ts +9 -0
- package/dist/components/exams/CreateExamInfoForm.d.ts.map +1 -0
- package/dist/components/exams/CreateExamInfoForm.js +36 -0
- package/dist/components/exams/CreateExamInfoForm.js.map +1 -0
- package/dist/components/exams/CreateExamPageContainer.d.ts +10 -0
- package/dist/components/exams/CreateExamPageContainer.d.ts.map +1 -0
- package/dist/components/exams/CreateExamPageContainer.js +104 -0
- package/dist/components/exams/CreateExamPageContainer.js.map +1 -0
- package/dist/components/exams/ExamCreator.d.ts +17 -0
- package/dist/components/exams/ExamCreator.d.ts.map +1 -0
- package/dist/components/exams/ExamCreator.js +90 -0
- package/dist/components/exams/ExamCreator.js.map +1 -0
- package/dist/components/exams/ExamPartTabs.d.ts +10 -0
- package/dist/components/exams/ExamPartTabs.d.ts.map +1 -0
- package/dist/components/exams/ExamPartTabs.js +41 -0
- package/dist/components/exams/ExamPartTabs.js.map +1 -0
- package/dist/components/exams/ExamQuestionGrid.d.ts +10 -0
- package/dist/components/exams/ExamQuestionGrid.d.ts.map +1 -0
- package/dist/components/exams/ExamQuestionGrid.js +19 -0
- package/dist/components/exams/ExamQuestionGrid.js.map +1 -0
- package/dist/components/exams/ExamQuestionsPageContainer.d.ts +11 -0
- package/dist/components/exams/ExamQuestionsPageContainer.d.ts.map +1 -0
- package/dist/components/exams/ExamQuestionsPageContainer.js +91 -0
- package/dist/components/exams/ExamQuestionsPageContainer.js.map +1 -0
- package/dist/components/exams/PartAudioUploader.d.ts +10 -0
- package/dist/components/exams/PartAudioUploader.d.ts.map +1 -0
- package/dist/components/exams/PartAudioUploader.js +10 -0
- package/dist/components/exams/PartAudioUploader.js.map +1 -0
- package/dist/components/exams/TemplateSelector.d.ts +9 -0
- package/dist/components/exams/TemplateSelector.d.ts.map +1 -0
- package/dist/components/exams/TemplateSelector.js +67 -0
- package/dist/components/exams/TemplateSelector.js.map +1 -0
- package/dist/components/exams/api.d.ts +6 -0
- package/dist/components/exams/api.d.ts.map +1 -0
- package/dist/components/exams/api.js +4 -0
- package/dist/components/exams/api.js.map +1 -0
- package/dist/components/exams/create-exam.validation.d.ts +11 -0
- package/dist/components/exams/create-exam.validation.d.ts.map +1 -0
- package/dist/components/exams/create-exam.validation.js +19 -0
- package/dist/components/exams/create-exam.validation.js.map +1 -0
- package/dist/components/exams/exam-template.utils.d.ts +59 -0
- package/dist/components/exams/exam-template.utils.d.ts.map +1 -0
- package/dist/components/exams/exam-template.utils.js +19 -0
- package/dist/components/exams/exam-template.utils.js.map +1 -0
- package/dist/components/exams/index.d.ts +18 -0
- package/dist/components/exams/index.d.ts.map +1 -0
- package/dist/components/exams/index.js +11 -0
- package/dist/components/exams/index.js.map +1 -0
- package/dist/components/exams/take/ExamTakingPageContainer.d.ts +10 -0
- package/dist/components/exams/take/ExamTakingPageContainer.d.ts.map +1 -0
- package/dist/components/exams/take/ExamTakingPageContainer.js +154 -0
- package/dist/components/exams/take/ExamTakingPageContainer.js.map +1 -0
- package/dist/components/exams/take/GenericQuestionRenderer.d.ts +8 -0
- package/dist/components/exams/take/GenericQuestionRenderer.d.ts.map +1 -0
- package/dist/components/exams/take/GenericQuestionRenderer.js +15 -0
- package/dist/components/exams/take/GenericQuestionRenderer.js.map +1 -0
- package/dist/components/exams/take/exam-taking.utils.d.ts +116 -0
- package/dist/components/exams/take/exam-taking.utils.d.ts.map +1 -0
- package/dist/components/exams/take/exam-taking.utils.js +89 -0
- package/dist/components/exams/take/exam-taking.utils.js.map +1 -0
- package/dist/components/exams/take/hooks/useSpeakingRecorder.d.ts +9 -0
- package/dist/components/exams/take/hooks/useSpeakingRecorder.d.ts.map +1 -0
- package/dist/components/exams/take/hooks/useSpeakingRecorder.js +25 -0
- package/dist/components/exams/take/hooks/useSpeakingRecorder.js.map +1 -0
- package/dist/components/exams/take/index.d.ts +7 -0
- package/dist/components/exams/take/index.d.ts.map +1 -0
- package/dist/components/exams/take/index.js +3 -0
- package/dist/components/exams/take/index.js.map +1 -0
- package/dist/components/exams/take/types.d.ts +2 -0
- package/dist/components/exams/take/types.d.ts.map +1 -0
- package/dist/components/exams/take/types.js +2 -0
- package/dist/components/exams/take/types.js.map +1 -0
- package/dist/components/index.d.ts +43 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +43 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/questions/_shared/config/question-types.config.d.ts +10 -0
- package/dist/components/questions/_shared/config/question-types.config.d.ts.map +1 -0
- package/dist/components/questions/_shared/config/question-types.config.js +334 -0
- package/dist/components/questions/_shared/config/question-types.config.js.map +1 -0
- package/dist/components/questions/_shared/constants/color-palette.d.ts +7 -0
- package/dist/components/questions/_shared/constants/color-palette.d.ts.map +1 -0
- package/dist/components/questions/_shared/constants/color-palette.js +22 -0
- package/dist/components/questions/_shared/constants/color-palette.js.map +1 -0
- package/dist/components/questions/_shared/hooks/useAnswerGroupQuestionGroup.d.ts +25 -0
- package/dist/components/questions/_shared/hooks/useAnswerGroupQuestionGroup.d.ts.map +1 -0
- package/dist/components/questions/_shared/hooks/useAnswerGroupQuestionGroup.js +106 -0
- package/dist/components/questions/_shared/hooks/useAnswerGroupQuestionGroup.js.map +1 -0
- package/dist/components/questions/_shared/hooks/useBasicQuestionGroup.d.ts +57 -0
- package/dist/components/questions/_shared/hooks/useBasicQuestionGroup.d.ts.map +1 -0
- package/dist/components/questions/_shared/hooks/useBasicQuestionGroup.js +223 -0
- package/dist/components/questions/_shared/hooks/useBasicQuestionGroup.js.map +1 -0
- package/dist/components/questions/_shared/hooks/useCompareImagesGroup.d.ts +12 -0
- package/dist/components/questions/_shared/hooks/useCompareImagesGroup.d.ts.map +1 -0
- package/dist/components/questions/_shared/hooks/useCompareImagesGroup.js +141 -0
- package/dist/components/questions/_shared/hooks/useCompareImagesGroup.js.map +1 -0
- package/dist/components/questions/_shared/hooks/useImageQuestionGroup.d.ts +20 -0
- package/dist/components/questions/_shared/hooks/useImageQuestionGroup.d.ts.map +1 -0
- package/dist/components/questions/_shared/hooks/useImageQuestionGroup.js +124 -0
- package/dist/components/questions/_shared/hooks/useImageQuestionGroup.js.map +1 -0
- package/dist/components/questions/_shared/hooks/useInfoExchangeGroup.d.ts +35 -0
- package/dist/components/questions/_shared/hooks/useInfoExchangeGroup.d.ts.map +1 -0
- package/dist/components/questions/_shared/hooks/useInfoExchangeGroup.js +51 -0
- package/dist/components/questions/_shared/hooks/useInfoExchangeGroup.js.map +1 -0
- package/dist/components/questions/_shared/hooks/useQuestionFormState.d.ts +90 -0
- package/dist/components/questions/_shared/hooks/useQuestionFormState.d.ts.map +1 -0
- package/dist/components/questions/_shared/hooks/useQuestionFormState.js +55 -0
- package/dist/components/questions/_shared/hooks/useQuestionFormState.js.map +1 -0
- package/dist/components/questions/_shared/hooks/useQuestionInitialization.d.ts +13 -0
- package/dist/components/questions/_shared/hooks/useQuestionInitialization.d.ts.map +1 -0
- package/dist/components/questions/_shared/hooks/useQuestionInitialization.js +124 -0
- package/dist/components/questions/_shared/hooks/useQuestionInitialization.js.map +1 -0
- package/dist/components/questions/_shared/hooks/useQuestionListGroup.d.ts +20 -0
- package/dist/components/questions/_shared/hooks/useQuestionListGroup.d.ts.map +1 -0
- package/dist/components/questions/_shared/hooks/useQuestionListGroup.js +122 -0
- package/dist/components/questions/_shared/hooks/useQuestionListGroup.js.map +1 -0
- package/dist/components/questions/_shared/hooks/useQuestionOnChange.d.ts +13 -0
- package/dist/components/questions/_shared/hooks/useQuestionOnChange.d.ts.map +1 -0
- package/dist/components/questions/_shared/hooks/useQuestionOnChange.js +71 -0
- package/dist/components/questions/_shared/hooks/useQuestionOnChange.js.map +1 -0
- package/dist/components/questions/_shared/hooks/useSceneQuestionGroup.d.ts +51 -0
- package/dist/components/questions/_shared/hooks/useSceneQuestionGroup.d.ts.map +1 -0
- package/dist/components/questions/_shared/hooks/useSceneQuestionGroup.js +195 -0
- package/dist/components/questions/_shared/hooks/useSceneQuestionGroup.js.map +1 -0
- package/dist/components/questions/_shared/index.d.ts +8 -0
- package/dist/components/questions/_shared/index.d.ts.map +1 -0
- package/dist/components/questions/_shared/index.js +8 -0
- package/dist/components/questions/_shared/index.js.map +1 -0
- package/dist/components/questions/_shared/types/answer-the-question.type.d.ts +59 -0
- package/dist/components/questions/_shared/types/answer-the-question.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/answer-the-question.type.js +2 -0
- package/dist/components/questions/_shared/types/answer-the-question.type.js.map +1 -0
- package/dist/components/questions/_shared/types/arrange-letters-into-words.type.d.ts +24 -0
- package/dist/components/questions/_shared/types/arrange-letters-into-words.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/arrange-letters-into-words.type.js +2 -0
- package/dist/components/questions/_shared/types/arrange-letters-into-words.type.js.map +1 -0
- package/dist/components/questions/_shared/types/choose-correct-adjective.type.d.ts +22 -0
- package/dist/components/questions/_shared/types/choose-correct-adjective.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/choose-correct-adjective.type.js +4 -0
- package/dist/components/questions/_shared/types/choose-correct-adjective.type.js.map +1 -0
- package/dist/components/questions/_shared/types/color-region.config.d.ts +34 -0
- package/dist/components/questions/_shared/types/color-region.config.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/color-region.config.js +2 -0
- package/dist/components/questions/_shared/types/color-region.config.js.map +1 -0
- package/dist/components/questions/_shared/types/fill-in-blank.type.d.ts +53 -0
- package/dist/components/questions/_shared/types/fill-in-blank.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/fill-in-blank.type.js +2 -0
- package/dist/components/questions/_shared/types/fill-in-blank.type.js.map +1 -0
- package/dist/components/questions/_shared/types/fill-missing-words-in-grid.type.d.ts +48 -0
- package/dist/components/questions/_shared/types/fill-missing-words-in-grid.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/fill-missing-words-in-grid.type.js +2 -0
- package/dist/components/questions/_shared/types/fill-missing-words-in-grid.type.js.map +1 -0
- package/dist/components/questions/_shared/types/gn-speaking-interview.type.d.ts +33 -0
- package/dist/components/questions/_shared/types/gn-speaking-interview.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/gn-speaking-interview.type.js +2 -0
- package/dist/components/questions/_shared/types/gn-speaking-interview.type.js.map +1 -0
- package/dist/components/questions/_shared/types/index.d.ts +13 -0
- package/dist/components/questions/_shared/types/index.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/index.js +13 -0
- package/dist/components/questions/_shared/types/index.js.map +1 -0
- package/dist/components/questions/_shared/types/label-the-picture.type.d.ts +33 -0
- package/dist/components/questions/_shared/types/label-the-picture.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/label-the-picture.type.js +2 -0
- package/dist/components/questions/_shared/types/label-the-picture.type.js.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-choose-from-answer-group.type.d.ts +48 -0
- package/dist/components/questions/_shared/types/listen-and-choose-from-answer-group.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-choose-from-answer-group.type.js +2 -0
- package/dist/components/questions/_shared/types/listen-and-choose-from-answer-group.type.js.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-choose-objects-in-scene.type.d.ts +56 -0
- package/dist/components/questions/_shared/types/listen-and-choose-objects-in-scene.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-choose-objects-in-scene.type.js +2 -0
- package/dist/components/questions/_shared/types/listen-and-choose-objects-in-scene.type.js.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-drag-objects-into-scene.type.d.ts +66 -0
- package/dist/components/questions/_shared/types/listen-and-drag-objects-into-scene.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-drag-objects-into-scene.type.js +2 -0
- package/dist/components/questions/_shared/types/listen-and-drag-objects-into-scene.type.js.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-speak-answer.type.d.ts +32 -0
- package/dist/components/questions/_shared/types/listen-and-speak-answer.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-speak-answer.type.js +2 -0
- package/dist/components/questions/_shared/types/listen-and-speak-answer.type.js.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-speak-compare-images.type.d.ts +35 -0
- package/dist/components/questions/_shared/types/listen-and-speak-compare-images.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-speak-compare-images.type.js +2 -0
- package/dist/components/questions/_shared/types/listen-and-speak-compare-images.type.js.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-speak-image-group.type.d.ts +30 -0
- package/dist/components/questions/_shared/types/listen-and-speak-image-group.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-speak-image-group.type.js +2 -0
- package/dist/components/questions/_shared/types/listen-and-speak-image-group.type.js.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-speak-info-exchange.type.d.ts +39 -0
- package/dist/components/questions/_shared/types/listen-and-speak-info-exchange.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-speak-info-exchange.type.js +2 -0
- package/dist/components/questions/_shared/types/listen-and-speak-info-exchange.type.js.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-speak-odd-one-out.type.d.ts +26 -0
- package/dist/components/questions/_shared/types/listen-and-speak-odd-one-out.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-speak-odd-one-out.type.js +4 -0
- package/dist/components/questions/_shared/types/listen-and-speak-odd-one-out.type.js.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-speak-question-list.type.d.ts +28 -0
- package/dist/components/questions/_shared/types/listen-and-speak-question-list.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-speak-question-list.type.js +2 -0
- package/dist/components/questions/_shared/types/listen-and-speak-question-list.type.js.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-speak-with-story-images.type.d.ts +25 -0
- package/dist/components/questions/_shared/types/listen-and-speak-with-story-images.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-speak-with-story-images.type.js +4 -0
- package/dist/components/questions/_shared/types/listen-and-speak-with-story-images.type.js.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-tick-answer.type.d.ts +33 -0
- package/dist/components/questions/_shared/types/listen-and-tick-answer.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/listen-and-tick-answer.type.js +2 -0
- package/dist/components/questions/_shared/types/listen-and-tick-answer.type.js.map +1 -0
- package/dist/components/questions/_shared/types/listening-drawline.type.d.ts +40 -0
- package/dist/components/questions/_shared/types/listening-drawline.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/listening-drawline.type.js +2 -0
- package/dist/components/questions/_shared/types/listening-drawline.type.js.map +1 -0
- package/dist/components/questions/_shared/types/look-and-choose-answer.type.d.ts +64 -0
- package/dist/components/questions/_shared/types/look-and-choose-answer.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/look-and-choose-answer.type.js +2 -0
- package/dist/components/questions/_shared/types/look-and-choose-answer.type.js.map +1 -0
- package/dist/components/questions/_shared/types/look-picture-fill-word-hint.type.d.ts +48 -0
- package/dist/components/questions/_shared/types/look-picture-fill-word-hint.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/look-picture-fill-word-hint.type.js +2 -0
- package/dist/components/questions/_shared/types/look-picture-fill-word-hint.type.js.map +1 -0
- package/dist/components/questions/_shared/types/match-by-writing-answer.type.d.ts +52 -0
- package/dist/components/questions/_shared/types/match-by-writing-answer.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/match-by-writing-answer.type.js +2 -0
- package/dist/components/questions/_shared/types/match-by-writing-answer.type.js.map +1 -0
- package/dist/components/questions/_shared/types/multiple-choice.type.d.ts +39 -0
- package/dist/components/questions/_shared/types/multiple-choice.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/multiple-choice.type.js +2 -0
- package/dist/components/questions/_shared/types/multiple-choice.type.js.map +1 -0
- package/dist/components/questions/_shared/types/question-group.type.d.ts +45 -0
- package/dist/components/questions/_shared/types/question-group.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/question-group.type.js +12 -0
- package/dist/components/questions/_shared/types/question-group.type.js.map +1 -0
- package/dist/components/questions/_shared/types/read-and-color-objects.type.d.ts +44 -0
- package/dist/components/questions/_shared/types/read-and-color-objects.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/read-and-color-objects.type.js +2 -0
- package/dist/components/questions/_shared/types/read-and-color-objects.type.js.map +1 -0
- package/dist/components/questions/_shared/types/read-displayed-content.type.d.ts +19 -0
- package/dist/components/questions/_shared/types/read-displayed-content.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/read-displayed-content.type.js +2 -0
- package/dist/components/questions/_shared/types/read-displayed-content.type.js.map +1 -0
- package/dist/components/questions/_shared/types/read-passage-and-answer-questions.type.d.ts +46 -0
- package/dist/components/questions/_shared/types/read-passage-and-answer-questions.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/read-passage-and-answer-questions.type.js +2 -0
- package/dist/components/questions/_shared/types/read-passage-and-answer-questions.type.js.map +1 -0
- package/dist/components/questions/_shared/types/speaking-describe-image.type.d.ts +18 -0
- package/dist/components/questions/_shared/types/speaking-describe-image.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/speaking-describe-image.type.js +2 -0
- package/dist/components/questions/_shared/types/speaking-describe-image.type.js.map +1 -0
- package/dist/components/questions/_shared/types/spontaneous-qa.type.d.ts +25 -0
- package/dist/components/questions/_shared/types/spontaneous-qa.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/spontaneous-qa.type.js +2 -0
- package/dist/components/questions/_shared/types/spontaneous-qa.type.js.map +1 -0
- package/dist/components/questions/_shared/types/word-fill-paragraph-with-options.type.d.ts +47 -0
- package/dist/components/questions/_shared/types/word-fill-paragraph-with-options.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/word-fill-paragraph-with-options.type.js +2 -0
- package/dist/components/questions/_shared/types/word-fill-paragraph-with-options.type.js.map +1 -0
- package/dist/components/questions/_shared/types/word-fill-paragraph.type.d.ts +53 -0
- package/dist/components/questions/_shared/types/word-fill-paragraph.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/word-fill-paragraph.type.js +2 -0
- package/dist/components/questions/_shared/types/word-fill-paragraph.type.js.map +1 -0
- package/dist/components/questions/_shared/types/word-fill-structured-form.type.d.ts +47 -0
- package/dist/components/questions/_shared/types/word-fill-structured-form.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/word-fill-structured-form.type.js +2 -0
- package/dist/components/questions/_shared/types/word-fill-structured-form.type.js.map +1 -0
- package/dist/components/questions/_shared/types/word-ordering.type.d.ts +36 -0
- package/dist/components/questions/_shared/types/word-ordering.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/word-ordering.type.js +2 -0
- package/dist/components/questions/_shared/types/word-ordering.type.js.map +1 -0
- package/dist/components/questions/_shared/types/write-a-short-letter.type.d.ts +36 -0
- package/dist/components/questions/_shared/types/write-a-short-letter.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/write-a-short-letter.type.js +2 -0
- package/dist/components/questions/_shared/types/write-a-short-letter.type.js.map +1 -0
- package/dist/components/questions/_shared/types/write-correct-verb-form.type.d.ts +29 -0
- package/dist/components/questions/_shared/types/write-correct-verb-form.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/write-correct-verb-form.type.js +4 -0
- package/dist/components/questions/_shared/types/write-correct-verb-form.type.js.map +1 -0
- package/dist/components/questions/_shared/types/write-sentences.type.d.ts +41 -0
- package/dist/components/questions/_shared/types/write-sentences.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/write-sentences.type.js +2 -0
- package/dist/components/questions/_shared/types/write-sentences.type.js.map +1 -0
- package/dist/components/questions/_shared/types/write-short-paragraph.type.d.ts +31 -0
- package/dist/components/questions/_shared/types/write-short-paragraph.type.d.ts.map +1 -0
- package/dist/components/questions/_shared/types/write-short-paragraph.type.js +2 -0
- package/dist/components/questions/_shared/types/write-short-paragraph.type.js.map +1 -0
- package/dist/components/questions/_shared/utils/answer-builder.d.ts +4 -0
- package/dist/components/questions/_shared/utils/answer-builder.d.ts.map +1 -0
- package/dist/components/questions/_shared/utils/answer-builder.js +80 -0
- package/dist/components/questions/_shared/utils/answer-builder.js.map +1 -0
- package/dist/components/questions/_shared/utils/createColorRegionRegistration.d.ts +7 -0
- package/dist/components/questions/_shared/utils/createColorRegionRegistration.d.ts.map +1 -0
- package/dist/components/questions/_shared/utils/createColorRegionRegistration.js +40 -0
- package/dist/components/questions/_shared/utils/createColorRegionRegistration.js.map +1 -0
- package/dist/components/questions/_shared/utils/id-generator.d.ts +2 -0
- package/dist/components/questions/_shared/utils/id-generator.d.ts.map +1 -0
- package/dist/components/questions/_shared/utils/id-generator.js +4 -0
- package/dist/components/questions/_shared/utils/id-generator.js.map +1 -0
- package/dist/components/questions/_shared/utils/question-validation.d.ts +6 -0
- package/dist/components/questions/_shared/utils/question-validation.d.ts.map +1 -0
- package/dist/components/questions/_shared/utils/question-validation.js +22 -0
- package/dist/components/questions/_shared/utils/question-validation.js.map +1 -0
- package/dist/components/questions/components/ColorNode.d.ts +20 -0
- package/dist/components/questions/components/ColorNode.d.ts.map +1 -0
- package/dist/components/questions/components/ColorNode.js +86 -0
- package/dist/components/questions/components/ColorNode.js.map +1 -0
- package/dist/components/questions/components/ColorRegionClient.d.ts +12 -0
- package/dist/components/questions/components/ColorRegionClient.d.ts.map +1 -0
- package/dist/components/questions/components/ColorRegionClient.js +546 -0
- package/dist/components/questions/components/ColorRegionClient.js.map +1 -0
- package/dist/components/questions/components/ColorRegionCreator.d.ts +8 -0
- package/dist/components/questions/components/ColorRegionCreator.d.ts.map +1 -0
- package/dist/components/questions/components/ColorRegionCreator.js +421 -0
- package/dist/components/questions/components/ColorRegionCreator.js.map +1 -0
- package/dist/components/questions/components/ColorRegionNode.d.ts +20 -0
- package/dist/components/questions/components/ColorRegionNode.d.ts.map +1 -0
- package/dist/components/questions/components/ColorRegionNode.js +60 -0
- package/dist/components/questions/components/ColorRegionNode.js.map +1 -0
- package/dist/components/questions/components/CreatorGuide.d.ts +103 -0
- package/dist/components/questions/components/CreatorGuide.d.ts.map +1 -0
- package/dist/components/questions/components/CreatorGuide.js +104 -0
- package/dist/components/questions/components/CreatorGuide.js.map +1 -0
- package/dist/components/questions/components/NameNode.d.ts +18 -0
- package/dist/components/questions/components/NameNode.d.ts.map +1 -0
- package/dist/components/questions/components/NameNode.js +27 -0
- package/dist/components/questions/components/NameNode.js.map +1 -0
- package/dist/components/questions/components/QuestionBankOption.d.ts +33 -0
- package/dist/components/questions/components/QuestionBankOption.d.ts.map +1 -0
- package/dist/components/questions/components/QuestionBankOption.js +47 -0
- package/dist/components/questions/components/QuestionBankOption.js.map +1 -0
- package/dist/components/questions/components/QuestionBasicInfoForm.d.ts +20 -0
- package/dist/components/questions/components/QuestionBasicInfoForm.d.ts.map +1 -0
- package/dist/components/questions/components/QuestionBasicInfoForm.js +10 -0
- package/dist/components/questions/components/QuestionBasicInfoForm.js.map +1 -0
- package/dist/components/questions/components/QuestionCommonFields.d.ts +23 -0
- package/dist/components/questions/components/QuestionCommonFields.d.ts.map +1 -0
- package/dist/components/questions/components/QuestionCommonFields.js +34 -0
- package/dist/components/questions/components/QuestionCommonFields.js.map +1 -0
- package/dist/components/questions/components/QuestionSearchDropdown.d.ts +42 -0
- package/dist/components/questions/components/QuestionSearchDropdown.d.ts.map +1 -0
- package/dist/components/questions/components/QuestionSearchDropdown.js +259 -0
- package/dist/components/questions/components/QuestionSearchDropdown.js.map +1 -0
- package/dist/components/questions/components/QuestionTypeSelector.d.ts +9 -0
- package/dist/components/questions/components/QuestionTypeSelector.d.ts.map +1 -0
- package/dist/components/questions/components/QuestionTypeSelector.js +33 -0
- package/dist/components/questions/components/QuestionTypeSelector.js.map +1 -0
- package/dist/components/questions/components/QuestionTypeSpecificForms.d.ts +10 -0
- package/dist/components/questions/components/QuestionTypeSpecificForms.d.ts.map +1 -0
- package/dist/components/questions/components/QuestionTypeSpecificForms.js +7 -0
- package/dist/components/questions/components/QuestionTypeSpecificForms.js.map +1 -0
- package/dist/components/questions/components/RegionNode.d.ts +20 -0
- package/dist/components/questions/components/RegionNode.d.ts.map +1 -0
- package/dist/components/questions/components/RegionNode.js +95 -0
- package/dist/components/questions/components/RegionNode.js.map +1 -0
- package/dist/components/questions/components/index.d.ts +15 -0
- package/dist/components/questions/components/index.d.ts.map +1 -0
- package/dist/components/questions/components/index.js +15 -0
- package/dist/components/questions/components/index.js.map +1 -0
- package/dist/components/questions/creator/QuestionCreator.d.ts +35 -0
- package/dist/components/questions/creator/QuestionCreator.d.ts.map +1 -0
- package/dist/components/questions/creator/QuestionCreator.js +91 -0
- package/dist/components/questions/creator/QuestionCreator.js.map +1 -0
- package/dist/components/questions/creator/QuestionGroupCreator.d.ts +8 -0
- package/dist/components/questions/creator/QuestionGroupCreator.d.ts.map +1 -0
- package/dist/components/questions/creator/QuestionGroupCreator.js +120 -0
- package/dist/components/questions/creator/QuestionGroupCreator.js.map +1 -0
- package/dist/components/questions/creator/dedicated-component-router.d.ts +39 -0
- package/dist/components/questions/creator/dedicated-component-router.d.ts.map +1 -0
- package/dist/components/questions/creator/dedicated-component-router.js +80 -0
- package/dist/components/questions/creator/dedicated-component-router.js.map +1 -0
- package/dist/components/questions/creator/index.d.ts +4 -0
- package/dist/components/questions/creator/index.d.ts.map +1 -0
- package/dist/components/questions/creator/index.js +4 -0
- package/dist/components/questions/creator/index.js.map +1 -0
- package/dist/components/questions/creator/question-type-registry.d.ts +66 -0
- package/dist/components/questions/creator/question-type-registry.d.ts.map +1 -0
- package/dist/components/questions/creator/question-type-registry.js +81 -0
- package/dist/components/questions/creator/question-type-registry.js.map +1 -0
- package/dist/components/questions/groups/ArticlesGroupCard.d.ts +35 -0
- package/dist/components/questions/groups/ArticlesGroupCard.d.ts.map +1 -0
- package/dist/components/questions/groups/ArticlesGroupCard.js +122 -0
- package/dist/components/questions/groups/ArticlesGroupCard.js.map +1 -0
- package/dist/components/questions/groups/BasicQuestionGroupCard.d.ts +51 -0
- package/dist/components/questions/groups/BasicQuestionGroupCard.d.ts.map +1 -0
- package/dist/components/questions/groups/BasicQuestionGroupCard.js +51 -0
- package/dist/components/questions/groups/BasicQuestionGroupCard.js.map +1 -0
- package/dist/components/questions/groups/DocumentGroupCard.d.ts +35 -0
- package/dist/components/questions/groups/DocumentGroupCard.d.ts.map +1 -0
- package/dist/components/questions/groups/DocumentGroupCard.js +115 -0
- package/dist/components/questions/groups/DocumentGroupCard.js.map +1 -0
- package/dist/components/questions/groups/MatchAnswerGroupCard.d.ts +19 -0
- package/dist/components/questions/groups/MatchAnswerGroupCard.d.ts.map +1 -0
- package/dist/components/questions/groups/MatchAnswerGroupCard.js +26 -0
- package/dist/components/questions/groups/MatchAnswerGroupCard.js.map +1 -0
- package/dist/components/questions/index.d.ts +11 -0
- package/dist/components/questions/index.d.ts.map +1 -0
- package/dist/components/questions/index.js +11 -0
- package/dist/components/questions/index.js.map +1 -0
- package/dist/components/questions/types/answer-the-question/AnswerTheQuestionClient.d.ts +3 -0
- package/dist/components/questions/types/answer-the-question/AnswerTheQuestionClient.d.ts.map +1 -0
- package/dist/components/questions/types/answer-the-question/AnswerTheQuestionClient.js +38 -0
- package/dist/components/questions/types/answer-the-question/AnswerTheQuestionClient.js.map +1 -0
- package/dist/components/questions/types/answer-the-question/AnswerTheQuestionCreator.d.ts +3 -0
- package/dist/components/questions/types/answer-the-question/AnswerTheQuestionCreator.d.ts.map +1 -0
- package/dist/components/questions/types/answer-the-question/AnswerTheQuestionCreator.js +352 -0
- package/dist/components/questions/types/answer-the-question/AnswerTheQuestionCreator.js.map +1 -0
- package/dist/components/questions/types/answer-the-question/register.d.ts +3 -0
- package/dist/components/questions/types/answer-the-question/register.d.ts.map +1 -0
- package/dist/components/questions/types/answer-the-question/register.js +68 -0
- package/dist/components/questions/types/answer-the-question/register.js.map +1 -0
- package/dist/components/questions/types/answer-the-question/transform.d.ts +3 -0
- package/dist/components/questions/types/answer-the-question/transform.d.ts.map +1 -0
- package/dist/components/questions/types/answer-the-question/transform.js +37 -0
- package/dist/components/questions/types/answer-the-question/transform.js.map +1 -0
- package/dist/components/questions/types/arrange-letters-into-words/ArrangeLettersIntoWordsClient.d.ts +3 -0
- package/dist/components/questions/types/arrange-letters-into-words/ArrangeLettersIntoWordsClient.d.ts.map +1 -0
- package/dist/components/questions/types/arrange-letters-into-words/ArrangeLettersIntoWordsClient.js +142 -0
- package/dist/components/questions/types/arrange-letters-into-words/ArrangeLettersIntoWordsClient.js.map +1 -0
- package/dist/components/questions/types/arrange-letters-into-words/ArrangeLettersIntoWordsCreator.d.ts +3 -0
- package/dist/components/questions/types/arrange-letters-into-words/ArrangeLettersIntoWordsCreator.d.ts.map +1 -0
- package/dist/components/questions/types/arrange-letters-into-words/ArrangeLettersIntoWordsCreator.js +119 -0
- package/dist/components/questions/types/arrange-letters-into-words/ArrangeLettersIntoWordsCreator.js.map +1 -0
- package/dist/components/questions/types/arrange-letters-into-words/index.d.ts +3 -0
- package/dist/components/questions/types/arrange-letters-into-words/index.d.ts.map +1 -0
- package/dist/components/questions/types/arrange-letters-into-words/index.js +3 -0
- package/dist/components/questions/types/arrange-letters-into-words/index.js.map +1 -0
- package/dist/components/questions/types/arrange-letters-into-words/register.d.ts +3 -0
- package/dist/components/questions/types/arrange-letters-into-words/register.d.ts.map +1 -0
- package/dist/components/questions/types/arrange-letters-into-words/register.js +5 -0
- package/dist/components/questions/types/arrange-letters-into-words/register.js.map +1 -0
- package/dist/components/questions/types/arrange-letters-into-words/transform.d.ts +3 -0
- package/dist/components/questions/types/arrange-letters-into-words/transform.d.ts.map +1 -0
- package/dist/components/questions/types/arrange-letters-into-words/transform.js +25 -0
- package/dist/components/questions/types/arrange-letters-into-words/transform.js.map +1 -0
- package/dist/components/questions/types/choose-correct-adjective/ChooseCorrectAdjectiveClient.d.ts +3 -0
- package/dist/components/questions/types/choose-correct-adjective/ChooseCorrectAdjectiveClient.d.ts.map +1 -0
- package/dist/components/questions/types/choose-correct-adjective/ChooseCorrectAdjectiveClient.js +65 -0
- package/dist/components/questions/types/choose-correct-adjective/ChooseCorrectAdjectiveClient.js.map +1 -0
- package/dist/components/questions/types/choose-correct-adjective/ChooseCorrectAdjectiveCreator.d.ts +3 -0
- package/dist/components/questions/types/choose-correct-adjective/ChooseCorrectAdjectiveCreator.d.ts.map +1 -0
- package/dist/components/questions/types/choose-correct-adjective/ChooseCorrectAdjectiveCreator.js +170 -0
- package/dist/components/questions/types/choose-correct-adjective/ChooseCorrectAdjectiveCreator.js.map +1 -0
- package/dist/components/questions/types/choose-correct-adjective/index.d.ts +3 -0
- package/dist/components/questions/types/choose-correct-adjective/index.d.ts.map +1 -0
- package/dist/components/questions/types/choose-correct-adjective/index.js +3 -0
- package/dist/components/questions/types/choose-correct-adjective/index.js.map +1 -0
- package/dist/components/questions/types/choose-correct-adjective/register.d.ts +3 -0
- package/dist/components/questions/types/choose-correct-adjective/register.d.ts.map +1 -0
- package/dist/components/questions/types/choose-correct-adjective/register.js +56 -0
- package/dist/components/questions/types/choose-correct-adjective/register.js.map +1 -0
- package/dist/components/questions/types/choose-correct-adjective/transform.d.ts +3 -0
- package/dist/components/questions/types/choose-correct-adjective/transform.d.ts.map +1 -0
- package/dist/components/questions/types/choose-correct-adjective/transform.js +17 -0
- package/dist/components/questions/types/choose-correct-adjective/transform.js.map +1 -0
- package/dist/components/questions/types/choose-the-correct-answer/ChooseTheCorrectAnswerClient.d.ts +3 -0
- package/dist/components/questions/types/choose-the-correct-answer/ChooseTheCorrectAnswerClient.d.ts.map +1 -0
- package/dist/components/questions/types/choose-the-correct-answer/ChooseTheCorrectAnswerClient.js +132 -0
- package/dist/components/questions/types/choose-the-correct-answer/ChooseTheCorrectAnswerClient.js.map +1 -0
- package/dist/components/questions/types/choose-the-correct-answer/ChooseTheCorrectAnswerCreator.d.ts +26 -0
- package/dist/components/questions/types/choose-the-correct-answer/ChooseTheCorrectAnswerCreator.d.ts.map +1 -0
- package/dist/components/questions/types/choose-the-correct-answer/ChooseTheCorrectAnswerCreator.js +582 -0
- package/dist/components/questions/types/choose-the-correct-answer/ChooseTheCorrectAnswerCreator.js.map +1 -0
- package/dist/components/questions/types/choose-the-correct-answer/index.d.ts +3 -0
- package/dist/components/questions/types/choose-the-correct-answer/index.d.ts.map +1 -0
- package/dist/components/questions/types/choose-the-correct-answer/index.js +3 -0
- package/dist/components/questions/types/choose-the-correct-answer/index.js.map +1 -0
- package/dist/components/questions/types/choose-the-correct-answer/register.d.ts +3 -0
- package/dist/components/questions/types/choose-the-correct-answer/register.d.ts.map +1 -0
- package/dist/components/questions/types/choose-the-correct-answer/register.js +102 -0
- package/dist/components/questions/types/choose-the-correct-answer/register.js.map +1 -0
- package/dist/components/questions/types/choose-the-correct-answer/transform.d.ts +3 -0
- package/dist/components/questions/types/choose-the-correct-answer/transform.d.ts.map +1 -0
- package/dist/components/questions/types/choose-the-correct-answer/transform.js +44 -0
- package/dist/components/questions/types/choose-the-correct-answer/transform.js.map +1 -0
- package/dist/components/questions/types/fill-in-blank/FillInBlankClient.d.ts +3 -0
- package/dist/components/questions/types/fill-in-blank/FillInBlankClient.d.ts.map +1 -0
- package/dist/components/questions/types/fill-in-blank/FillInBlankClient.js +276 -0
- package/dist/components/questions/types/fill-in-blank/FillInBlankClient.js.map +1 -0
- package/dist/components/questions/types/fill-in-blank/FillInBlankCreator.d.ts +3 -0
- package/dist/components/questions/types/fill-in-blank/FillInBlankCreator.d.ts.map +1 -0
- package/dist/components/questions/types/fill-in-blank/FillInBlankCreator.js +449 -0
- package/dist/components/questions/types/fill-in-blank/FillInBlankCreator.js.map +1 -0
- package/dist/components/questions/types/fill-in-blank/index.d.ts +3 -0
- package/dist/components/questions/types/fill-in-blank/index.d.ts.map +1 -0
- package/dist/components/questions/types/fill-in-blank/index.js +3 -0
- package/dist/components/questions/types/fill-in-blank/index.js.map +1 -0
- package/dist/components/questions/types/fill-in-blank/register.d.ts +3 -0
- package/dist/components/questions/types/fill-in-blank/register.d.ts.map +1 -0
- package/dist/components/questions/types/fill-in-blank/register.js +139 -0
- package/dist/components/questions/types/fill-in-blank/register.js.map +1 -0
- package/dist/components/questions/types/fill-in-blank/transform.d.ts +3 -0
- package/dist/components/questions/types/fill-in-blank/transform.d.ts.map +1 -0
- package/dist/components/questions/types/fill-in-blank/transform.js +60 -0
- package/dist/components/questions/types/fill-in-blank/transform.js.map +1 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/FillMissingWordsInGridClient.d.ts +8 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/FillMissingWordsInGridClient.d.ts.map +1 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/FillMissingWordsInGridClient.js +118 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/FillMissingWordsInGridClient.js.map +1 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/FillMissingWordsInGridCreator.d.ts +4 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/FillMissingWordsInGridCreator.d.ts.map +1 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/FillMissingWordsInGridCreator.js +672 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/FillMissingWordsInGridCreator.js.map +1 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/index.d.ts +3 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/index.d.ts.map +1 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/index.js +3 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/index.js.map +1 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/register.d.ts +4 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/register.d.ts.map +1 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/register.js +38 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/register.js.map +1 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/transform.d.ts +3 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/transform.d.ts.map +1 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/transform.js +16 -0
- package/dist/components/questions/types/fill-missing-words-in-grid/transform.js.map +1 -0
- package/dist/components/questions/types/gn-speaking-interview/GNSpeakingInterviewCreator.d.ts +3 -0
- package/dist/components/questions/types/gn-speaking-interview/GNSpeakingInterviewCreator.d.ts.map +1 -0
- package/dist/components/questions/types/gn-speaking-interview/GNSpeakingInterviewCreator.js +263 -0
- package/dist/components/questions/types/gn-speaking-interview/GNSpeakingInterviewCreator.js.map +1 -0
- package/dist/components/questions/types/gn-speaking-interview/register.d.ts +3 -0
- package/dist/components/questions/types/gn-speaking-interview/register.d.ts.map +1 -0
- package/dist/components/questions/types/gn-speaking-interview/register.js +122 -0
- package/dist/components/questions/types/gn-speaking-interview/register.js.map +1 -0
- package/dist/components/questions/types/gn-speaking-interview/transform.d.ts +3 -0
- package/dist/components/questions/types/gn-speaking-interview/transform.d.ts.map +1 -0
- package/dist/components/questions/types/gn-speaking-interview/transform.js +49 -0
- package/dist/components/questions/types/gn-speaking-interview/transform.js.map +1 -0
- package/dist/components/questions/types/image-object-matching/ImageObjectMatchingClient.d.ts +8 -0
- package/dist/components/questions/types/image-object-matching/ImageObjectMatchingClient.d.ts.map +1 -0
- package/dist/components/questions/types/image-object-matching/ImageObjectMatchingClient.js +17 -0
- package/dist/components/questions/types/image-object-matching/ImageObjectMatchingClient.js.map +1 -0
- package/dist/components/questions/types/image-object-matching/ImageObjectMatchingCreator.d.ts +3 -0
- package/dist/components/questions/types/image-object-matching/ImageObjectMatchingCreator.d.ts.map +1 -0
- package/dist/components/questions/types/image-object-matching/ImageObjectMatchingCreator.js +28 -0
- package/dist/components/questions/types/image-object-matching/ImageObjectMatchingCreator.js.map +1 -0
- package/dist/components/questions/types/image-object-matching/index.d.ts +3 -0
- package/dist/components/questions/types/image-object-matching/index.d.ts.map +1 -0
- package/dist/components/questions/types/image-object-matching/index.js +3 -0
- package/dist/components/questions/types/image-object-matching/index.js.map +1 -0
- package/dist/components/questions/types/image-object-matching/register.d.ts +2 -0
- package/dist/components/questions/types/image-object-matching/register.d.ts.map +1 -0
- package/dist/components/questions/types/image-object-matching/register.js +4 -0
- package/dist/components/questions/types/image-object-matching/register.js.map +1 -0
- package/dist/components/questions/types/image-object-matching/transform.d.ts +2 -0
- package/dist/components/questions/types/image-object-matching/transform.d.ts.map +1 -0
- package/dist/components/questions/types/image-object-matching/transform.js +3 -0
- package/dist/components/questions/types/image-object-matching/transform.js.map +1 -0
- package/dist/components/questions/types/label-the-picture/LabelThePictureClient.d.ts +7 -0
- package/dist/components/questions/types/label-the-picture/LabelThePictureClient.d.ts.map +1 -0
- package/dist/components/questions/types/label-the-picture/LabelThePictureClient.js +103 -0
- package/dist/components/questions/types/label-the-picture/LabelThePictureClient.js.map +1 -0
- package/dist/components/questions/types/label-the-picture/LabelThePictureCreator.d.ts +3 -0
- package/dist/components/questions/types/label-the-picture/LabelThePictureCreator.d.ts.map +1 -0
- package/dist/components/questions/types/label-the-picture/LabelThePictureCreator.js +345 -0
- package/dist/components/questions/types/label-the-picture/LabelThePictureCreator.js.map +1 -0
- package/dist/components/questions/types/label-the-picture/index.d.ts +3 -0
- package/dist/components/questions/types/label-the-picture/index.d.ts.map +1 -0
- package/dist/components/questions/types/label-the-picture/index.js +3 -0
- package/dist/components/questions/types/label-the-picture/index.js.map +1 -0
- package/dist/components/questions/types/label-the-picture/register.d.ts +3 -0
- package/dist/components/questions/types/label-the-picture/register.d.ts.map +1 -0
- package/dist/components/questions/types/label-the-picture/register.js +55 -0
- package/dist/components/questions/types/label-the-picture/register.js.map +1 -0
- package/dist/components/questions/types/label-the-picture/transform.d.ts +3 -0
- package/dist/components/questions/types/label-the-picture/transform.d.ts.map +1 -0
- package/dist/components/questions/types/label-the-picture/transform.js +29 -0
- package/dist/components/questions/types/label-the-picture/transform.js.map +1 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/ListenAndChooseFromAnswerGroupClient.d.ts +3 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/ListenAndChooseFromAnswerGroupClient.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/ListenAndChooseFromAnswerGroupClient.js +79 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/ListenAndChooseFromAnswerGroupClient.js.map +1 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/ListenAndChooseFromAnswerGroupCreator.d.ts +3 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/ListenAndChooseFromAnswerGroupCreator.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/ListenAndChooseFromAnswerGroupCreator.js +233 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/ListenAndChooseFromAnswerGroupCreator.js.map +1 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/index.d.ts +3 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/index.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/index.js +3 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/index.js.map +1 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/register.d.ts +3 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/register.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/register.js +83 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/register.js.map +1 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/transform.d.ts +3 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/transform.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/transform.js +28 -0
- package/dist/components/questions/types/listen-and-choose-from-answer-group/transform.js.map +1 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/ListenAndChooseObjectsInSceneClient.d.ts +10 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/ListenAndChooseObjectsInSceneClient.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/ListenAndChooseObjectsInSceneClient.js +71 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/ListenAndChooseObjectsInSceneClient.js.map +1 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/ListenAndChooseObjectsInSceneCreator.d.ts +12 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/ListenAndChooseObjectsInSceneCreator.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/ListenAndChooseObjectsInSceneCreator.js +387 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/ListenAndChooseObjectsInSceneCreator.js.map +1 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/index.d.ts +3 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/index.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/index.js +3 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/index.js.map +1 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/register.d.ts +3 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/register.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/register.js +101 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/register.js.map +1 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/transform.d.ts +3 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/transform.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/transform.js +34 -0
- package/dist/components/questions/types/listen-and-choose-objects-in-scene/transform.js.map +1 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/ListenAndDragObjectsIntoSceneClient.d.ts +10 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/ListenAndDragObjectsIntoSceneClient.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/ListenAndDragObjectsIntoSceneClient.js +107 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/ListenAndDragObjectsIntoSceneClient.js.map +1 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/ListenAndDragObjectsIntoSceneCreator.d.ts +12 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/ListenAndDragObjectsIntoSceneCreator.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/ListenAndDragObjectsIntoSceneCreator.js +458 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/ListenAndDragObjectsIntoSceneCreator.js.map +1 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/index.d.ts +3 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/index.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/index.js +3 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/index.js.map +1 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/register.d.ts +3 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/register.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/register.js +111 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/register.js.map +1 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/transform.d.ts +3 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/transform.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/transform.js +36 -0
- package/dist/components/questions/types/listen-and-drag-objects-into-scene/transform.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-answer/ArrowIndicator.d.ts +21 -0
- package/dist/components/questions/types/listen-and-speak-answer/ArrowIndicator.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-answer/ArrowIndicator.js +9 -0
- package/dist/components/questions/types/listen-and-speak-answer/ArrowIndicator.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-answer/ListenAndSpeakAnswerClient.d.ts +3 -0
- package/dist/components/questions/types/listen-and-speak-answer/ListenAndSpeakAnswerClient.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-answer/ListenAndSpeakAnswerClient.js +23 -0
- package/dist/components/questions/types/listen-and-speak-answer/ListenAndSpeakAnswerClient.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-answer/ListenAndSpeakAnswerCreator.d.ts +10 -0
- package/dist/components/questions/types/listen-and-speak-answer/ListenAndSpeakAnswerCreator.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-answer/ListenAndSpeakAnswerCreator.js +292 -0
- package/dist/components/questions/types/listen-and-speak-answer/ListenAndSpeakAnswerCreator.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-answer/index.d.ts +3 -0
- package/dist/components/questions/types/listen-and-speak-answer/index.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-answer/index.js +3 -0
- package/dist/components/questions/types/listen-and-speak-answer/index.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-answer/register.d.ts +3 -0
- package/dist/components/questions/types/listen-and-speak-answer/register.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-answer/register.js +85 -0
- package/dist/components/questions/types/listen-and-speak-answer/register.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-answer/transform.d.ts +3 -0
- package/dist/components/questions/types/listen-and-speak-answer/transform.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-answer/transform.js +28 -0
- package/dist/components/questions/types/listen-and-speak-answer/transform.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-compare-images/ListenAndSpeakCompareImagesClient.d.ts +4 -0
- package/dist/components/questions/types/listen-and-speak-compare-images/ListenAndSpeakCompareImagesClient.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-compare-images/ListenAndSpeakCompareImagesClient.js +33 -0
- package/dist/components/questions/types/listen-and-speak-compare-images/ListenAndSpeakCompareImagesClient.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-compare-images/ListenAndSpeakCompareImagesCreator.d.ts +11 -0
- package/dist/components/questions/types/listen-and-speak-compare-images/ListenAndSpeakCompareImagesCreator.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-compare-images/ListenAndSpeakCompareImagesCreator.js +296 -0
- package/dist/components/questions/types/listen-and-speak-compare-images/ListenAndSpeakCompareImagesCreator.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-compare-images/register.d.ts +3 -0
- package/dist/components/questions/types/listen-and-speak-compare-images/register.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-compare-images/register.js +80 -0
- package/dist/components/questions/types/listen-and-speak-compare-images/register.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-compare-images/transform.d.ts +3 -0
- package/dist/components/questions/types/listen-and-speak-compare-images/transform.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-compare-images/transform.js +28 -0
- package/dist/components/questions/types/listen-and-speak-compare-images/transform.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-image-group/ListenAndSpeakImageGroupClient.d.ts +4 -0
- package/dist/components/questions/types/listen-and-speak-image-group/ListenAndSpeakImageGroupClient.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-image-group/ListenAndSpeakImageGroupClient.js +35 -0
- package/dist/components/questions/types/listen-and-speak-image-group/ListenAndSpeakImageGroupClient.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-image-group/ListenAndSpeakImageGroupCreator.d.ts +11 -0
- package/dist/components/questions/types/listen-and-speak-image-group/ListenAndSpeakImageGroupCreator.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-image-group/ListenAndSpeakImageGroupCreator.js +286 -0
- package/dist/components/questions/types/listen-and-speak-image-group/ListenAndSpeakImageGroupCreator.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-image-group/register.d.ts +3 -0
- package/dist/components/questions/types/listen-and-speak-image-group/register.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-image-group/register.js +82 -0
- package/dist/components/questions/types/listen-and-speak-image-group/register.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-image-group/transform.d.ts +3 -0
- package/dist/components/questions/types/listen-and-speak-image-group/transform.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-image-group/transform.js +27 -0
- package/dist/components/questions/types/listen-and-speak-image-group/transform.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-info-exchange/ListenAndSpeakInfoExchangeClient.d.ts +4 -0
- package/dist/components/questions/types/listen-and-speak-info-exchange/ListenAndSpeakInfoExchangeClient.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-info-exchange/ListenAndSpeakInfoExchangeClient.js +39 -0
- package/dist/components/questions/types/listen-and-speak-info-exchange/ListenAndSpeakInfoExchangeClient.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-info-exchange/ListenAndSpeakInfoExchangeCreator.d.ts +12 -0
- package/dist/components/questions/types/listen-and-speak-info-exchange/ListenAndSpeakInfoExchangeCreator.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-info-exchange/ListenAndSpeakInfoExchangeCreator.js +386 -0
- package/dist/components/questions/types/listen-and-speak-info-exchange/ListenAndSpeakInfoExchangeCreator.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-info-exchange/register.d.ts +3 -0
- package/dist/components/questions/types/listen-and-speak-info-exchange/register.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-info-exchange/register.js +88 -0
- package/dist/components/questions/types/listen-and-speak-info-exchange/register.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-info-exchange/transform.d.ts +3 -0
- package/dist/components/questions/types/listen-and-speak-info-exchange/transform.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-info-exchange/transform.js +33 -0
- package/dist/components/questions/types/listen-and-speak-info-exchange/transform.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-odd-one-out/ListenAndSpeakOddOneOutClient.d.ts +4 -0
- package/dist/components/questions/types/listen-and-speak-odd-one-out/ListenAndSpeakOddOneOutClient.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-odd-one-out/ListenAndSpeakOddOneOutClient.js +27 -0
- package/dist/components/questions/types/listen-and-speak-odd-one-out/ListenAndSpeakOddOneOutClient.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-odd-one-out/ListenAndSpeakOddOneOutCreator.d.ts +4 -0
- package/dist/components/questions/types/listen-and-speak-odd-one-out/ListenAndSpeakOddOneOutCreator.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-odd-one-out/ListenAndSpeakOddOneOutCreator.js +248 -0
- package/dist/components/questions/types/listen-and-speak-odd-one-out/ListenAndSpeakOddOneOutCreator.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-odd-one-out/register.d.ts +3 -0
- package/dist/components/questions/types/listen-and-speak-odd-one-out/register.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-odd-one-out/register.js +60 -0
- package/dist/components/questions/types/listen-and-speak-odd-one-out/register.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-odd-one-out/transform.d.ts +3 -0
- package/dist/components/questions/types/listen-and-speak-odd-one-out/transform.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-odd-one-out/transform.js +19 -0
- package/dist/components/questions/types/listen-and-speak-odd-one-out/transform.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-question-list/ListenAndSpeakQuestionListClient.d.ts +4 -0
- package/dist/components/questions/types/listen-and-speak-question-list/ListenAndSpeakQuestionListClient.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-question-list/ListenAndSpeakQuestionListClient.js +27 -0
- package/dist/components/questions/types/listen-and-speak-question-list/ListenAndSpeakQuestionListClient.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-question-list/ListenAndSpeakQuestionListCreator.d.ts +15 -0
- package/dist/components/questions/types/listen-and-speak-question-list/ListenAndSpeakQuestionListCreator.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-question-list/ListenAndSpeakQuestionListCreator.js +257 -0
- package/dist/components/questions/types/listen-and-speak-question-list/ListenAndSpeakQuestionListCreator.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-question-list/register.d.ts +3 -0
- package/dist/components/questions/types/listen-and-speak-question-list/register.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-question-list/register.js +82 -0
- package/dist/components/questions/types/listen-and-speak-question-list/register.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-question-list/transform.d.ts +4 -0
- package/dist/components/questions/types/listen-and-speak-question-list/transform.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-question-list/transform.js +27 -0
- package/dist/components/questions/types/listen-and-speak-question-list/transform.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-with-story-images/ListenAndSpeakWithStoryImagesClient.d.ts +4 -0
- package/dist/components/questions/types/listen-and-speak-with-story-images/ListenAndSpeakWithStoryImagesClient.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-with-story-images/ListenAndSpeakWithStoryImagesClient.js +27 -0
- package/dist/components/questions/types/listen-and-speak-with-story-images/ListenAndSpeakWithStoryImagesClient.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-with-story-images/ListenAndSpeakWithStoryImagesCreator.d.ts +4 -0
- package/dist/components/questions/types/listen-and-speak-with-story-images/ListenAndSpeakWithStoryImagesCreator.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-with-story-images/ListenAndSpeakWithStoryImagesCreator.js +231 -0
- package/dist/components/questions/types/listen-and-speak-with-story-images/ListenAndSpeakWithStoryImagesCreator.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-with-story-images/register.d.ts +3 -0
- package/dist/components/questions/types/listen-and-speak-with-story-images/register.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-with-story-images/register.js +57 -0
- package/dist/components/questions/types/listen-and-speak-with-story-images/register.js.map +1 -0
- package/dist/components/questions/types/listen-and-speak-with-story-images/transform.d.ts +3 -0
- package/dist/components/questions/types/listen-and-speak-with-story-images/transform.d.ts.map +1 -0
- package/dist/components/questions/types/listen-and-speak-with-story-images/transform.js +17 -0
- package/dist/components/questions/types/listen-and-speak-with-story-images/transform.js.map +1 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/LookPictureChooseCorrectAnswerClient.d.ts +21 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/LookPictureChooseCorrectAnswerClient.d.ts.map +1 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/LookPictureChooseCorrectAnswerClient.js +73 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/LookPictureChooseCorrectAnswerClient.js.map +1 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/LookPictureChooseCorrectAnswerCreator.d.ts +16 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/LookPictureChooseCorrectAnswerCreator.d.ts.map +1 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/LookPictureChooseCorrectAnswerCreator.js +231 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/LookPictureChooseCorrectAnswerCreator.js.map +1 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/index.d.ts +2 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/index.d.ts.map +1 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/index.js +2 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/index.js.map +1 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/register.d.ts +3 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/register.d.ts.map +1 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/register.js +67 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/register.js.map +1 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/transform.d.ts +3 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/transform.d.ts.map +1 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/transform.js +43 -0
- package/dist/components/questions/types/look-picture-choose-correct-answer/transform.js.map +1 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/LookPictureFillBlankChooseAnswerClient.d.ts +7 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/LookPictureFillBlankChooseAnswerClient.d.ts.map +1 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/LookPictureFillBlankChooseAnswerClient.js +97 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/LookPictureFillBlankChooseAnswerClient.js.map +1 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/LookPictureFillBlankChooseAnswerCreator.d.ts +16 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/LookPictureFillBlankChooseAnswerCreator.d.ts.map +1 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/LookPictureFillBlankChooseAnswerCreator.js +239 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/LookPictureFillBlankChooseAnswerCreator.js.map +1 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/index.d.ts +3 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/index.d.ts.map +1 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/index.js +3 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/index.js.map +1 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/register.d.ts +3 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/register.d.ts.map +1 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/register.js +77 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/register.js.map +1 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/transform.d.ts +3 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/transform.d.ts.map +1 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/transform.js +20 -0
- package/dist/components/questions/types/look-picture-fill-blank-choose-answer/transform.js.map +1 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/LookPictureFillWordHintClient.d.ts +8 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/LookPictureFillWordHintClient.d.ts.map +1 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/LookPictureFillWordHintClient.js +135 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/LookPictureFillWordHintClient.js.map +1 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/LookPictureFillWordHintCreator.d.ts +4 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/LookPictureFillWordHintCreator.d.ts.map +1 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/LookPictureFillWordHintCreator.js +618 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/LookPictureFillWordHintCreator.js.map +1 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/index.d.ts +3 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/index.d.ts.map +1 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/index.js +3 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/index.js.map +1 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/register.d.ts +3 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/register.d.ts.map +1 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/register.js +83 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/register.js.map +1 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/transform.d.ts +3 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/transform.d.ts.map +1 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/transform.js +30 -0
- package/dist/components/questions/types/look-picture-fill-word-hint/transform.js.map +1 -0
- package/dist/components/questions/types/match-by-writing-answer/MatchByWritingAnswerClient.d.ts +3 -0
- package/dist/components/questions/types/match-by-writing-answer/MatchByWritingAnswerClient.d.ts.map +1 -0
- package/dist/components/questions/types/match-by-writing-answer/MatchByWritingAnswerClient.js +39 -0
- package/dist/components/questions/types/match-by-writing-answer/MatchByWritingAnswerClient.js.map +1 -0
- package/dist/components/questions/types/match-by-writing-answer/MatchByWritingAnswerCreator.d.ts +3 -0
- package/dist/components/questions/types/match-by-writing-answer/MatchByWritingAnswerCreator.d.ts.map +1 -0
- package/dist/components/questions/types/match-by-writing-answer/MatchByWritingAnswerCreator.js +360 -0
- package/dist/components/questions/types/match-by-writing-answer/MatchByWritingAnswerCreator.js.map +1 -0
- package/dist/components/questions/types/match-by-writing-answer/index.d.ts +4 -0
- package/dist/components/questions/types/match-by-writing-answer/index.d.ts.map +1 -0
- package/dist/components/questions/types/match-by-writing-answer/index.js +4 -0
- package/dist/components/questions/types/match-by-writing-answer/index.js.map +1 -0
- package/dist/components/questions/types/match-by-writing-answer/register.d.ts +3 -0
- package/dist/components/questions/types/match-by-writing-answer/register.d.ts.map +1 -0
- package/dist/components/questions/types/match-by-writing-answer/register.js +59 -0
- package/dist/components/questions/types/match-by-writing-answer/register.js.map +1 -0
- package/dist/components/questions/types/match-by-writing-answer/transform.d.ts +12 -0
- package/dist/components/questions/types/match-by-writing-answer/transform.d.ts.map +1 -0
- package/dist/components/questions/types/match-by-writing-answer/transform.js +62 -0
- package/dist/components/questions/types/match-by-writing-answer/transform.js.map +1 -0
- package/dist/components/questions/types/read-and-color-objects/ReadAndColorObjectsClient.d.ts +8 -0
- package/dist/components/questions/types/read-and-color-objects/ReadAndColorObjectsClient.d.ts.map +1 -0
- package/dist/components/questions/types/read-and-color-objects/ReadAndColorObjectsClient.js +17 -0
- package/dist/components/questions/types/read-and-color-objects/ReadAndColorObjectsClient.js.map +1 -0
- package/dist/components/questions/types/read-and-color-objects/ReadAndColorObjectsCreator.d.ts +3 -0
- package/dist/components/questions/types/read-and-color-objects/ReadAndColorObjectsCreator.d.ts.map +1 -0
- package/dist/components/questions/types/read-and-color-objects/ReadAndColorObjectsCreator.js +24 -0
- package/dist/components/questions/types/read-and-color-objects/ReadAndColorObjectsCreator.js.map +1 -0
- package/dist/components/questions/types/read-and-color-objects/index.d.ts +3 -0
- package/dist/components/questions/types/read-and-color-objects/index.d.ts.map +1 -0
- package/dist/components/questions/types/read-and-color-objects/index.js +3 -0
- package/dist/components/questions/types/read-and-color-objects/index.js.map +1 -0
- package/dist/components/questions/types/read-and-color-objects/register.d.ts +2 -0
- package/dist/components/questions/types/read-and-color-objects/register.d.ts.map +1 -0
- package/dist/components/questions/types/read-and-color-objects/register.js +4 -0
- package/dist/components/questions/types/read-and-color-objects/register.js.map +1 -0
- package/dist/components/questions/types/read-and-color-objects/transform.d.ts +3 -0
- package/dist/components/questions/types/read-and-color-objects/transform.d.ts.map +1 -0
- package/dist/components/questions/types/read-and-color-objects/transform.js +37 -0
- package/dist/components/questions/types/read-and-color-objects/transform.js.map +1 -0
- package/dist/components/questions/types/read-displayed-content/ReadDisplayedContentCreator.d.ts +3 -0
- package/dist/components/questions/types/read-displayed-content/ReadDisplayedContentCreator.d.ts.map +1 -0
- package/dist/components/questions/types/read-displayed-content/ReadDisplayedContentCreator.js +126 -0
- package/dist/components/questions/types/read-displayed-content/ReadDisplayedContentCreator.js.map +1 -0
- package/dist/components/questions/types/read-displayed-content/register.d.ts +3 -0
- package/dist/components/questions/types/read-displayed-content/register.d.ts.map +1 -0
- package/dist/components/questions/types/read-displayed-content/register.js +65 -0
- package/dist/components/questions/types/read-displayed-content/register.js.map +1 -0
- package/dist/components/questions/types/read-displayed-content/transform.d.ts +3 -0
- package/dist/components/questions/types/read-displayed-content/transform.d.ts.map +1 -0
- package/dist/components/questions/types/read-displayed-content/transform.js +13 -0
- package/dist/components/questions/types/read-displayed-content/transform.js.map +1 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/ReadPassageAndAnswerQuestionsClient.d.ts +3 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/ReadPassageAndAnswerQuestionsClient.d.ts.map +1 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/ReadPassageAndAnswerQuestionsClient.js +65 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/ReadPassageAndAnswerQuestionsClient.js.map +1 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/ReadPassageAndAnswerQuestionsCreator.d.ts +3 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/ReadPassageAndAnswerQuestionsCreator.d.ts.map +1 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/ReadPassageAndAnswerQuestionsCreator.js +512 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/ReadPassageAndAnswerQuestionsCreator.js.map +1 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/index.d.ts +3 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/index.d.ts.map +1 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/index.js +3 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/index.js.map +1 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/register.d.ts +3 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/register.d.ts.map +1 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/register.js +59 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/register.js.map +1 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/transform.d.ts +3 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/transform.d.ts.map +1 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/transform.js +29 -0
- package/dist/components/questions/types/read-passage-and-answer-questions/transform.js.map +1 -0
- package/dist/components/questions/types/speaking-conversation/SpeakingConversationCreator.d.ts +16 -0
- package/dist/components/questions/types/speaking-conversation/SpeakingConversationCreator.d.ts.map +1 -0
- package/dist/components/questions/types/speaking-conversation/SpeakingConversationCreator.js +374 -0
- package/dist/components/questions/types/speaking-conversation/SpeakingConversationCreator.js.map +1 -0
- package/dist/components/questions/types/speaking-conversation/SpeakingConversationPreviewClient.d.ts +22 -0
- package/dist/components/questions/types/speaking-conversation/SpeakingConversationPreviewClient.d.ts.map +1 -0
- package/dist/components/questions/types/speaking-conversation/SpeakingConversationPreviewClient.js +42 -0
- package/dist/components/questions/types/speaking-conversation/SpeakingConversationPreviewClient.js.map +1 -0
- package/dist/components/questions/types/speaking-conversation/register.d.ts +3 -0
- package/dist/components/questions/types/speaking-conversation/register.d.ts.map +1 -0
- package/dist/components/questions/types/speaking-conversation/register.js +111 -0
- package/dist/components/questions/types/speaking-conversation/register.js.map +1 -0
- package/dist/components/questions/types/speaking-conversation/transform.d.ts +3 -0
- package/dist/components/questions/types/speaking-conversation/transform.d.ts.map +1 -0
- package/dist/components/questions/types/speaking-conversation/transform.js +35 -0
- package/dist/components/questions/types/speaking-conversation/transform.js.map +1 -0
- package/dist/components/questions/types/speaking-cue-card/SpeakingCueCardCreator.d.ts +11 -0
- package/dist/components/questions/types/speaking-cue-card/SpeakingCueCardCreator.d.ts.map +1 -0
- package/dist/components/questions/types/speaking-cue-card/SpeakingCueCardCreator.js +75 -0
- package/dist/components/questions/types/speaking-cue-card/SpeakingCueCardCreator.js.map +1 -0
- package/dist/components/questions/types/speaking-cue-card/register.d.ts +3 -0
- package/dist/components/questions/types/speaking-cue-card/register.d.ts.map +1 -0
- package/dist/components/questions/types/speaking-cue-card/register.js +53 -0
- package/dist/components/questions/types/speaking-cue-card/register.js.map +1 -0
- package/dist/components/questions/types/speaking-cue-card/transform.d.ts +3 -0
- package/dist/components/questions/types/speaking-cue-card/transform.d.ts.map +1 -0
- package/dist/components/questions/types/speaking-cue-card/transform.js +13 -0
- package/dist/components/questions/types/speaking-cue-card/transform.js.map +1 -0
- package/dist/components/questions/types/speaking-describe-image/SpeakingDescribeImageClient.d.ts +11 -0
- package/dist/components/questions/types/speaking-describe-image/SpeakingDescribeImageClient.d.ts.map +1 -0
- package/dist/components/questions/types/speaking-describe-image/SpeakingDescribeImageClient.js +11 -0
- package/dist/components/questions/types/speaking-describe-image/SpeakingDescribeImageClient.js.map +1 -0
- package/dist/components/questions/types/speaking-describe-image/SpeakingDescribeImageCreator.d.ts +3 -0
- package/dist/components/questions/types/speaking-describe-image/SpeakingDescribeImageCreator.d.ts.map +1 -0
- package/dist/components/questions/types/speaking-describe-image/SpeakingDescribeImageCreator.js +162 -0
- package/dist/components/questions/types/speaking-describe-image/SpeakingDescribeImageCreator.js.map +1 -0
- package/dist/components/questions/types/speaking-describe-image/index.d.ts +3 -0
- package/dist/components/questions/types/speaking-describe-image/index.d.ts.map +1 -0
- package/dist/components/questions/types/speaking-describe-image/index.js +3 -0
- package/dist/components/questions/types/speaking-describe-image/index.js.map +1 -0
- package/dist/components/questions/types/speaking-describe-image/register.d.ts +3 -0
- package/dist/components/questions/types/speaking-describe-image/register.d.ts.map +1 -0
- package/dist/components/questions/types/speaking-describe-image/register.js +70 -0
- package/dist/components/questions/types/speaking-describe-image/register.js.map +1 -0
- package/dist/components/questions/types/speaking-describe-image/transform.d.ts +3 -0
- package/dist/components/questions/types/speaking-describe-image/transform.d.ts.map +1 -0
- package/dist/components/questions/types/speaking-describe-image/transform.js +17 -0
- package/dist/components/questions/types/speaking-describe-image/transform.js.map +1 -0
- package/dist/components/questions/types/spontaneous-qa/SpontaneousQACreator.d.ts +3 -0
- package/dist/components/questions/types/spontaneous-qa/SpontaneousQACreator.d.ts.map +1 -0
- package/dist/components/questions/types/spontaneous-qa/SpontaneousQACreator.js +235 -0
- package/dist/components/questions/types/spontaneous-qa/SpontaneousQACreator.js.map +1 -0
- package/dist/components/questions/types/spontaneous-qa/register.d.ts +3 -0
- package/dist/components/questions/types/spontaneous-qa/register.d.ts.map +1 -0
- package/dist/components/questions/types/spontaneous-qa/register.js +94 -0
- package/dist/components/questions/types/spontaneous-qa/register.js.map +1 -0
- package/dist/components/questions/types/spontaneous-qa/transform.d.ts +3 -0
- package/dist/components/questions/types/spontaneous-qa/transform.d.ts.map +1 -0
- package/dist/components/questions/types/spontaneous-qa/transform.js +35 -0
- package/dist/components/questions/types/spontaneous-qa/transform.js.map +1 -0
- package/dist/components/questions/types/true-false/TrueFalseClient.d.ts +15 -0
- package/dist/components/questions/types/true-false/TrueFalseClient.d.ts.map +1 -0
- package/dist/components/questions/types/true-false/TrueFalseClient.js +76 -0
- package/dist/components/questions/types/true-false/TrueFalseClient.js.map +1 -0
- package/dist/components/questions/types/true-false/TrueFalseCreator.d.ts +22 -0
- package/dist/components/questions/types/true-false/TrueFalseCreator.d.ts.map +1 -0
- package/dist/components/questions/types/true-false/TrueFalseCreator.js +245 -0
- package/dist/components/questions/types/true-false/TrueFalseCreator.js.map +1 -0
- package/dist/components/questions/types/true-false/index.d.ts +3 -0
- package/dist/components/questions/types/true-false/index.d.ts.map +1 -0
- package/dist/components/questions/types/true-false/index.js +3 -0
- package/dist/components/questions/types/true-false/index.js.map +1 -0
- package/dist/components/questions/types/true-false/register.d.ts +3 -0
- package/dist/components/questions/types/true-false/register.d.ts.map +1 -0
- package/dist/components/questions/types/true-false/register.js +78 -0
- package/dist/components/questions/types/true-false/register.js.map +1 -0
- package/dist/components/questions/types/true-false/transform.d.ts +3 -0
- package/dist/components/questions/types/true-false/transform.d.ts.map +1 -0
- package/dist/components/questions/types/true-false/transform.js +33 -0
- package/dist/components/questions/types/true-false/transform.js.map +1 -0
- package/dist/components/questions/types/word-fill-paragraph/WordFillParagraphClient.d.ts +26 -0
- package/dist/components/questions/types/word-fill-paragraph/WordFillParagraphClient.d.ts.map +1 -0
- package/dist/components/questions/types/word-fill-paragraph/WordFillParagraphClient.js +234 -0
- package/dist/components/questions/types/word-fill-paragraph/WordFillParagraphClient.js.map +1 -0
- package/dist/components/questions/types/word-fill-paragraph/WordFillParagraphCreator.d.ts +14 -0
- package/dist/components/questions/types/word-fill-paragraph/WordFillParagraphCreator.d.ts.map +1 -0
- package/dist/components/questions/types/word-fill-paragraph/WordFillParagraphCreator.js +632 -0
- package/dist/components/questions/types/word-fill-paragraph/WordFillParagraphCreator.js.map +1 -0
- package/dist/components/questions/types/word-fill-paragraph/WordFillParagraphWrapper.d.ts +19 -0
- package/dist/components/questions/types/word-fill-paragraph/WordFillParagraphWrapper.d.ts.map +1 -0
- package/dist/components/questions/types/word-fill-paragraph/WordFillParagraphWrapper.js +29 -0
- package/dist/components/questions/types/word-fill-paragraph/WordFillParagraphWrapper.js.map +1 -0
- package/dist/components/questions/types/word-fill-paragraph/index.d.ts +3 -0
- package/dist/components/questions/types/word-fill-paragraph/index.d.ts.map +1 -0
- package/dist/components/questions/types/word-fill-paragraph/index.js +3 -0
- package/dist/components/questions/types/word-fill-paragraph/index.js.map +1 -0
- package/dist/components/questions/types/word-fill-paragraph/register.d.ts +9 -0
- package/dist/components/questions/types/word-fill-paragraph/register.d.ts.map +1 -0
- package/dist/components/questions/types/word-fill-paragraph/register.js +137 -0
- package/dist/components/questions/types/word-fill-paragraph/register.js.map +1 -0
- package/dist/components/questions/types/word-fill-paragraph/transform.d.ts +8 -0
- package/dist/components/questions/types/word-fill-paragraph/transform.d.ts.map +1 -0
- package/dist/components/questions/types/word-fill-paragraph/transform.js +57 -0
- package/dist/components/questions/types/word-fill-paragraph/transform.js.map +1 -0
- package/dist/components/questions/types/word-fill-structured-form/WordFillStructuredFormClient.d.ts +4 -0
- package/dist/components/questions/types/word-fill-structured-form/WordFillStructuredFormClient.d.ts.map +1 -0
- package/dist/components/questions/types/word-fill-structured-form/WordFillStructuredFormClient.js +139 -0
- package/dist/components/questions/types/word-fill-structured-form/WordFillStructuredFormClient.js.map +1 -0
- package/dist/components/questions/types/word-fill-structured-form/WordFillStructuredFormCreator.d.ts +3 -0
- package/dist/components/questions/types/word-fill-structured-form/WordFillStructuredFormCreator.d.ts.map +1 -0
- package/dist/components/questions/types/word-fill-structured-form/WordFillStructuredFormCreator.js +262 -0
- package/dist/components/questions/types/word-fill-structured-form/WordFillStructuredFormCreator.js.map +1 -0
- package/dist/components/questions/types/word-fill-structured-form/index.d.ts +3 -0
- package/dist/components/questions/types/word-fill-structured-form/index.d.ts.map +1 -0
- package/dist/components/questions/types/word-fill-structured-form/index.js +3 -0
- package/dist/components/questions/types/word-fill-structured-form/index.js.map +1 -0
- package/dist/components/questions/types/word-fill-structured-form/register.d.ts +3 -0
- package/dist/components/questions/types/word-fill-structured-form/register.d.ts.map +1 -0
- package/dist/components/questions/types/word-fill-structured-form/register.js +68 -0
- package/dist/components/questions/types/word-fill-structured-form/register.js.map +1 -0
- package/dist/components/questions/types/word-fill-structured-form/transform.d.ts +11 -0
- package/dist/components/questions/types/word-fill-structured-form/transform.d.ts.map +1 -0
- package/dist/components/questions/types/word-fill-structured-form/transform.js +41 -0
- package/dist/components/questions/types/word-fill-structured-form/transform.js.map +1 -0
- package/dist/components/questions/types/word-ordering/WordOrderingClient.d.ts +3 -0
- package/dist/components/questions/types/word-ordering/WordOrderingClient.d.ts.map +1 -0
- package/dist/components/questions/types/word-ordering/WordOrderingClient.js +85 -0
- package/dist/components/questions/types/word-ordering/WordOrderingClient.js.map +1 -0
- package/dist/components/questions/types/word-ordering/WordOrderingCreator.d.ts +12 -0
- package/dist/components/questions/types/word-ordering/WordOrderingCreator.d.ts.map +1 -0
- package/dist/components/questions/types/word-ordering/WordOrderingCreator.js +193 -0
- package/dist/components/questions/types/word-ordering/WordOrderingCreator.js.map +1 -0
- package/dist/components/questions/types/word-ordering/index.d.ts +3 -0
- package/dist/components/questions/types/word-ordering/index.d.ts.map +1 -0
- package/dist/components/questions/types/word-ordering/index.js +3 -0
- package/dist/components/questions/types/word-ordering/index.js.map +1 -0
- package/dist/components/questions/types/word-ordering/register.d.ts +3 -0
- package/dist/components/questions/types/word-ordering/register.d.ts.map +1 -0
- package/dist/components/questions/types/word-ordering/register.js +47 -0
- package/dist/components/questions/types/word-ordering/register.js.map +1 -0
- package/dist/components/questions/types/word-ordering/transform.d.ts +8 -0
- package/dist/components/questions/types/word-ordering/transform.d.ts.map +1 -0
- package/dist/components/questions/types/word-ordering/transform.js +25 -0
- package/dist/components/questions/types/word-ordering/transform.js.map +1 -0
- package/dist/components/questions/types/write-a-short-letter/WriteAShortLetterClient.d.ts +7 -0
- package/dist/components/questions/types/write-a-short-letter/WriteAShortLetterClient.d.ts.map +1 -0
- package/dist/components/questions/types/write-a-short-letter/WriteAShortLetterClient.js +99 -0
- package/dist/components/questions/types/write-a-short-letter/WriteAShortLetterClient.js.map +1 -0
- package/dist/components/questions/types/write-a-short-letter/WriteAShortLetterCreator.d.ts +3 -0
- package/dist/components/questions/types/write-a-short-letter/WriteAShortLetterCreator.d.ts.map +1 -0
- package/dist/components/questions/types/write-a-short-letter/WriteAShortLetterCreator.js +321 -0
- package/dist/components/questions/types/write-a-short-letter/WriteAShortLetterCreator.js.map +1 -0
- package/dist/components/questions/types/write-a-short-letter/index.d.ts +3 -0
- package/dist/components/questions/types/write-a-short-letter/index.d.ts.map +1 -0
- package/dist/components/questions/types/write-a-short-letter/index.js +3 -0
- package/dist/components/questions/types/write-a-short-letter/index.js.map +1 -0
- package/dist/components/questions/types/write-a-short-letter/register.d.ts +3 -0
- package/dist/components/questions/types/write-a-short-letter/register.d.ts.map +1 -0
- package/dist/components/questions/types/write-a-short-letter/register.js +69 -0
- package/dist/components/questions/types/write-a-short-letter/register.js.map +1 -0
- package/dist/components/questions/types/write-a-short-letter/transform.d.ts +3 -0
- package/dist/components/questions/types/write-a-short-letter/transform.d.ts.map +1 -0
- package/dist/components/questions/types/write-a-short-letter/transform.js +26 -0
- package/dist/components/questions/types/write-a-short-letter/transform.js.map +1 -0
- package/dist/components/questions/types/write-correct-verb-form/WriteCorrectVerbFormClient.d.ts +3 -0
- package/dist/components/questions/types/write-correct-verb-form/WriteCorrectVerbFormClient.d.ts.map +1 -0
- package/dist/components/questions/types/write-correct-verb-form/WriteCorrectVerbFormClient.js +62 -0
- package/dist/components/questions/types/write-correct-verb-form/WriteCorrectVerbFormClient.js.map +1 -0
- package/dist/components/questions/types/write-correct-verb-form/WriteCorrectVerbFormCreator.d.ts +3 -0
- package/dist/components/questions/types/write-correct-verb-form/WriteCorrectVerbFormCreator.d.ts.map +1 -0
- package/dist/components/questions/types/write-correct-verb-form/WriteCorrectVerbFormCreator.js +197 -0
- package/dist/components/questions/types/write-correct-verb-form/WriteCorrectVerbFormCreator.js.map +1 -0
- package/dist/components/questions/types/write-correct-verb-form/index.d.ts +3 -0
- package/dist/components/questions/types/write-correct-verb-form/index.d.ts.map +1 -0
- package/dist/components/questions/types/write-correct-verb-form/index.js +3 -0
- package/dist/components/questions/types/write-correct-verb-form/index.js.map +1 -0
- package/dist/components/questions/types/write-correct-verb-form/register.d.ts +3 -0
- package/dist/components/questions/types/write-correct-verb-form/register.d.ts.map +1 -0
- package/dist/components/questions/types/write-correct-verb-form/register.js +63 -0
- package/dist/components/questions/types/write-correct-verb-form/register.js.map +1 -0
- package/dist/components/questions/types/write-correct-verb-form/transform.d.ts +3 -0
- package/dist/components/questions/types/write-correct-verb-form/transform.d.ts.map +1 -0
- package/dist/components/questions/types/write-correct-verb-form/transform.js +18 -0
- package/dist/components/questions/types/write-correct-verb-form/transform.js.map +1 -0
- package/dist/components/questions/types/write-sentences/WriteSentencesClient.d.ts +3 -0
- package/dist/components/questions/types/write-sentences/WriteSentencesClient.d.ts.map +1 -0
- package/dist/components/questions/types/write-sentences/WriteSentencesClient.js +23 -0
- package/dist/components/questions/types/write-sentences/WriteSentencesClient.js.map +1 -0
- package/dist/components/questions/types/write-sentences/WriteSentencesCreator.d.ts +3 -0
- package/dist/components/questions/types/write-sentences/WriteSentencesCreator.d.ts.map +1 -0
- package/dist/components/questions/types/write-sentences/WriteSentencesCreator.js +175 -0
- package/dist/components/questions/types/write-sentences/WriteSentencesCreator.js.map +1 -0
- package/dist/components/questions/types/write-sentences/index.d.ts +3 -0
- package/dist/components/questions/types/write-sentences/index.d.ts.map +1 -0
- package/dist/components/questions/types/write-sentences/index.js +3 -0
- package/dist/components/questions/types/write-sentences/index.js.map +1 -0
- package/dist/components/questions/types/write-sentences/register.d.ts +3 -0
- package/dist/components/questions/types/write-sentences/register.d.ts.map +1 -0
- package/dist/components/questions/types/write-sentences/register.js +59 -0
- package/dist/components/questions/types/write-sentences/register.js.map +1 -0
- package/dist/components/questions/types/write-sentences/transform.d.ts +3 -0
- package/dist/components/questions/types/write-sentences/transform.d.ts.map +1 -0
- package/dist/components/questions/types/write-sentences/transform.js +29 -0
- package/dist/components/questions/types/write-sentences/transform.js.map +1 -0
- package/dist/components/questions/types/write-short-paragraph/WriteShortParagraphClient.d.ts +3 -0
- package/dist/components/questions/types/write-short-paragraph/WriteShortParagraphClient.d.ts.map +1 -0
- package/dist/components/questions/types/write-short-paragraph/WriteShortParagraphClient.js +97 -0
- package/dist/components/questions/types/write-short-paragraph/WriteShortParagraphClient.js.map +1 -0
- package/dist/components/questions/types/write-short-paragraph/WriteShortParagraphCreator.d.ts +3 -0
- package/dist/components/questions/types/write-short-paragraph/WriteShortParagraphCreator.d.ts.map +1 -0
- package/dist/components/questions/types/write-short-paragraph/WriteShortParagraphCreator.js +162 -0
- package/dist/components/questions/types/write-short-paragraph/WriteShortParagraphCreator.js.map +1 -0
- package/dist/components/questions/types/write-short-paragraph/index.d.ts +3 -0
- package/dist/components/questions/types/write-short-paragraph/index.d.ts.map +1 -0
- package/dist/components/questions/types/write-short-paragraph/index.js +3 -0
- package/dist/components/questions/types/write-short-paragraph/index.js.map +1 -0
- package/dist/components/questions/types/write-short-paragraph/register.d.ts +3 -0
- package/dist/components/questions/types/write-short-paragraph/register.d.ts.map +1 -0
- package/dist/components/questions/types/write-short-paragraph/register.js +5 -0
- package/dist/components/questions/types/write-short-paragraph/register.js.map +1 -0
- package/dist/components/questions/types/write-short-paragraph/transform.d.ts +3 -0
- package/dist/components/questions/types/write-short-paragraph/transform.d.ts.map +1 -0
- package/dist/components/questions/types/write-short-paragraph/transform.js +22 -0
- package/dist/components/questions/types/write-short-paragraph/transform.js.map +1 -0
- package/dist/components/questions/viewer/QuestionGroupViewer.d.ts +9 -0
- package/dist/components/questions/viewer/QuestionGroupViewer.d.ts.map +1 -0
- package/dist/components/questions/viewer/QuestionGroupViewer.js +37 -0
- package/dist/components/questions/viewer/QuestionGroupViewer.js.map +1 -0
- package/dist/components/questions/viewer/QuestionViewer.d.ts +10 -0
- package/dist/components/questions/viewer/QuestionViewer.d.ts.map +1 -0
- package/dist/components/questions/viewer/QuestionViewer.js +447 -0
- package/dist/components/questions/viewer/QuestionViewer.js.map +1 -0
- package/dist/components/questions/viewer/index.d.ts +3 -0
- package/dist/components/questions/viewer/index.d.ts.map +1 -0
- package/dist/components/questions/viewer/index.js +3 -0
- package/dist/components/questions/viewer/index.js.map +1 -0
- package/dist/components/results/ResultReviewPageContainer.d.ts +14 -0
- package/dist/components/results/ResultReviewPageContainer.d.ts.map +1 -0
- package/dist/components/results/ResultReviewPageContainer.js +99 -0
- package/dist/components/results/ResultReviewPageContainer.js.map +1 -0
- package/dist/components/results/ReviewQuestionRenderer.d.ts +7 -0
- package/dist/components/results/ReviewQuestionRenderer.d.ts.map +1 -0
- package/dist/components/results/ReviewQuestionRenderer.js +73 -0
- package/dist/components/results/ReviewQuestionRenderer.js.map +1 -0
- package/dist/components/results/index.d.ts +5 -0
- package/dist/components/results/index.d.ts.map +1 -0
- package/dist/components/results/index.js +3 -0
- package/dist/components/results/index.js.map +1 -0
- package/dist/components/results/result-review.utils.d.ts +3 -0
- package/dist/components/results/result-review.utils.d.ts.map +1 -0
- package/dist/components/results/result-review.utils.js +7 -0
- package/dist/components/results/result-review.utils.js.map +1 -0
- package/dist/components/results/review-data.d.ts +3 -0
- package/dist/components/results/review-data.d.ts.map +1 -0
- package/dist/components/results/review-data.js +151 -0
- package/dist/components/results/review-data.js.map +1 -0
- package/dist/components/results/review-renderer.utils.d.ts +68 -0
- package/dist/components/results/review-renderer.utils.d.ts.map +1 -0
- package/dist/components/results/review-renderer.utils.js +98 -0
- package/dist/components/results/review-renderer.utils.js.map +1 -0
- package/dist/components/results/review-types.d.ts +62 -0
- package/dist/components/results/review-types.d.ts.map +1 -0
- package/dist/components/results/review-types.js +2 -0
- package/dist/components/results/review-types.js.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleAudioPlayer.d.ts +9 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleAudioPlayer.d.ts.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleAudioPlayer.js +139 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleAudioPlayer.js.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleBottomNav.d.ts +11 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleBottomNav.d.ts.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleBottomNav.js +13 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleBottomNav.js.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleExamLayout.d.ts +3 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleExamLayout.d.ts.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleExamLayout.js +19 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleExamLayout.js.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleExampleText.d.ts +7 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleExampleText.d.ts.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleExampleText.js +12 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleExampleText.js.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleHeader.d.ts +14 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleHeader.d.ts.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleHeader.js +12 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleHeader.js.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleInstructionBanner.d.ts +10 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleInstructionBanner.d.ts.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleInstructionBanner.js +10 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleInstructionBanner.js.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleNavButton.d.ts +8 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleNavButton.d.ts.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleNavButton.js +14 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleNavButton.js.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYlePartBanner.d.ts +9 -0
- package/dist/components/themes/cambridge-yle/CambridgeYlePartBanner.d.ts.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYlePartBanner.js +9 -0
- package/dist/components/themes/cambridge-yle/CambridgeYlePartBanner.js.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleProgressBar.d.ts +7 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleProgressBar.d.ts.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleProgressBar.js +7 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleProgressBar.js.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleQuestionCard.d.ts +8 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleQuestionCard.d.ts.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleQuestionCard.js +6 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleQuestionCard.js.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleQuestionCardFullWidth.d.ts +11 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleQuestionCardFullWidth.d.ts.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleQuestionCardFullWidth.js +10 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleQuestionCardFullWidth.js.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleSidebar.d.ts +25 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleSidebar.d.ts.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleSidebar.js +42 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleSidebar.js.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleTimer.d.ts +8 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleTimer.d.ts.map +1 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleTimer.js +26 -0
- package/dist/components/themes/cambridge-yle/CambridgeYleTimer.js.map +1 -0
- package/dist/components/themes/cambridge-yle/assets/images/background-ocean-edu-2.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/background-ocean-edu-neutral.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/background-ocean-edu.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/bg-gradient.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/bg-title-old.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/bg-title-part.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/bg-title.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/bg.jpeg +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/border-2.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/border-old.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/border.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/button_feedback_vi.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/button_feedback_vi.webp +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/close.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/close_old.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/demo-audio.mp3 +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/demo-image.jpeg +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/frame-old.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/frame.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/ic-pause.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/icon-bottom-left.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/icon-bottom-right.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/new_design.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/phao.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/question-card-bg-full.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/question-card-bg.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/rangsanho.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/rocket.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/sanho.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/sao.png +0 -0
- package/dist/components/themes/cambridge-yle/assets/images/vooc.png +0 -0
- package/dist/components/themes/cambridge-yle/index.d.ts +13 -0
- package/dist/components/themes/cambridge-yle/index.d.ts.map +1 -0
- package/dist/components/themes/cambridge-yle/index.js +14 -0
- package/dist/components/themes/cambridge-yle/index.js.map +1 -0
- package/dist/components/themes/english-certification/EcAnswerTheQuestion.d.ts +19 -0
- package/dist/components/themes/english-certification/EcAnswerTheQuestion.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EcAnswerTheQuestion.js +25 -0
- package/dist/components/themes/english-certification/EcAnswerTheQuestion.js.map +1 -0
- package/dist/components/themes/english-certification/EcMatchByWritingAnswer.d.ts +22 -0
- package/dist/components/themes/english-certification/EcMatchByWritingAnswer.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EcMatchByWritingAnswer.js +89 -0
- package/dist/components/themes/english-certification/EcMatchByWritingAnswer.js.map +1 -0
- package/dist/components/themes/english-certification/EcWordFillParagraph.d.ts +20 -0
- package/dist/components/themes/english-certification/EcWordFillParagraph.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EcWordFillParagraph.js +56 -0
- package/dist/components/themes/english-certification/EcWordFillParagraph.js.map +1 -0
- package/dist/components/themes/english-certification/EcWordFillStructuredForm.d.ts +20 -0
- package/dist/components/themes/english-certification/EcWordFillStructuredForm.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EcWordFillStructuredForm.js +157 -0
- package/dist/components/themes/english-certification/EcWordFillStructuredForm.js.map +1 -0
- package/dist/components/themes/english-certification/EcWritingTask.d.ts +19 -0
- package/dist/components/themes/english-certification/EcWritingTask.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EcWritingTask.js +35 -0
- package/dist/components/themes/english-certification/EcWritingTask.js.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationAudioPlayer.d.ts +14 -0
- package/dist/components/themes/english-certification/EnglishCertificationAudioPlayer.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationAudioPlayer.js +115 -0
- package/dist/components/themes/english-certification/EnglishCertificationAudioPlayer.js.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationBrand.d.ts +11 -0
- package/dist/components/themes/english-certification/EnglishCertificationBrand.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationBrand.js +12 -0
- package/dist/components/themes/english-certification/EnglishCertificationBrand.js.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationExamLayout.d.ts +20 -0
- package/dist/components/themes/english-certification/EnglishCertificationExamLayout.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationExamLayout.js +22 -0
- package/dist/components/themes/english-certification/EnglishCertificationExamLayout.js.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationFlagButton.d.ts +23 -0
- package/dist/components/themes/english-certification/EnglishCertificationFlagButton.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationFlagButton.js +16 -0
- package/dist/components/themes/english-certification/EnglishCertificationFlagButton.js.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationFooterBar.d.ts +23 -0
- package/dist/components/themes/english-certification/EnglishCertificationFooterBar.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationFooterBar.js +20 -0
- package/dist/components/themes/english-certification/EnglishCertificationFooterBar.js.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationGroupedQuestion.d.ts +25 -0
- package/dist/components/themes/english-certification/EnglishCertificationGroupedQuestion.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationGroupedQuestion.js +149 -0
- package/dist/components/themes/english-certification/EnglishCertificationGroupedQuestion.js.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationHeader.d.ts +25 -0
- package/dist/components/themes/english-certification/EnglishCertificationHeader.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationHeader.js +32 -0
- package/dist/components/themes/english-certification/EnglishCertificationHeader.js.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationNavigationPanel.d.ts +19 -0
- package/dist/components/themes/english-certification/EnglishCertificationNavigationPanel.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationNavigationPanel.js +72 -0
- package/dist/components/themes/english-certification/EnglishCertificationNavigationPanel.js.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationOptionSelector.d.ts +29 -0
- package/dist/components/themes/english-certification/EnglishCertificationOptionSelector.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationOptionSelector.js +34 -0
- package/dist/components/themes/english-certification/EnglishCertificationOptionSelector.js.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationPassagePanel.d.ts +22 -0
- package/dist/components/themes/english-certification/EnglishCertificationPassagePanel.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationPassagePanel.js +17 -0
- package/dist/components/themes/english-certification/EnglishCertificationPassagePanel.js.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationQuestionCard.d.ts +21 -0
- package/dist/components/themes/english-certification/EnglishCertificationQuestionCard.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationQuestionCard.js +23 -0
- package/dist/components/themes/english-certification/EnglishCertificationQuestionCard.js.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationQuestionItem.d.ts +26 -0
- package/dist/components/themes/english-certification/EnglishCertificationQuestionItem.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationQuestionItem.js +38 -0
- package/dist/components/themes/english-certification/EnglishCertificationQuestionItem.js.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationQuestionRenderer.d.ts +25 -0
- package/dist/components/themes/english-certification/EnglishCertificationQuestionRenderer.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationQuestionRenderer.js +73 -0
- package/dist/components/themes/english-certification/EnglishCertificationQuestionRenderer.js.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationReadingSection.d.ts +29 -0
- package/dist/components/themes/english-certification/EnglishCertificationReadingSection.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationReadingSection.js +91 -0
- package/dist/components/themes/english-certification/EnglishCertificationReadingSection.js.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationSingleQuestion.d.ts +32 -0
- package/dist/components/themes/english-certification/EnglishCertificationSingleQuestion.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationSingleQuestion.js +19 -0
- package/dist/components/themes/english-certification/EnglishCertificationSingleQuestion.js.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationSingleQuestionList.d.ts +26 -0
- package/dist/components/themes/english-certification/EnglishCertificationSingleQuestionList.d.ts.map +1 -0
- package/dist/components/themes/english-certification/EnglishCertificationSingleQuestionList.js +30 -0
- package/dist/components/themes/english-certification/EnglishCertificationSingleQuestionList.js.map +1 -0
- package/dist/components/themes/english-certification/english-certification-theme.d.ts +57 -0
- package/dist/components/themes/english-certification/english-certification-theme.d.ts.map +1 -0
- package/dist/components/themes/english-certification/english-certification-theme.js +59 -0
- package/dist/components/themes/english-certification/english-certification-theme.js.map +1 -0
- package/dist/components/themes/english-certification/grouped-question-utils.d.ts +24 -0
- package/dist/components/themes/english-certification/grouped-question-utils.d.ts.map +1 -0
- package/dist/components/themes/english-certification/grouped-question-utils.js +219 -0
- package/dist/components/themes/english-certification/grouped-question-utils.js.map +1 -0
- package/dist/components/themes/english-certification/index.d.ts +23 -0
- package/dist/components/themes/english-certification/index.d.ts.map +1 -0
- package/dist/components/themes/english-certification/index.js +22 -0
- package/dist/components/themes/english-certification/index.js.map +1 -0
- package/dist/components/themes/index.d.ts +8 -0
- package/dist/components/themes/index.d.ts.map +1 -0
- package/dist/components/themes/index.js +7 -0
- package/dist/components/themes/index.js.map +1 -0
- package/dist/components/themes/summer-sky/SummerSkyAudioPlayer.d.ts +10 -0
- package/dist/components/themes/summer-sky/SummerSkyAudioPlayer.d.ts.map +1 -0
- package/dist/components/themes/summer-sky/SummerSkyAudioPlayer.js +171 -0
- package/dist/components/themes/summer-sky/SummerSkyAudioPlayer.js.map +1 -0
- package/dist/components/themes/summer-sky/SummerSkyLayout.d.ts +3 -0
- package/dist/components/themes/summer-sky/SummerSkyLayout.d.ts.map +1 -0
- package/dist/components/themes/summer-sky/SummerSkyLayout.js +222 -0
- package/dist/components/themes/summer-sky/SummerSkyLayout.js.map +1 -0
- package/dist/components/themes/summer-sky/SummerSkySubmitModal.d.ts +9 -0
- package/dist/components/themes/summer-sky/SummerSkySubmitModal.d.ts.map +1 -0
- package/dist/components/themes/summer-sky/SummerSkySubmitModal.js +19 -0
- package/dist/components/themes/summer-sky/SummerSkySubmitModal.js.map +1 -0
- package/dist/components/themes/summer-sky/SummerSkyWaitingRoom.d.ts +10 -0
- package/dist/components/themes/summer-sky/SummerSkyWaitingRoom.d.ts.map +1 -0
- package/dist/components/themes/summer-sky/SummerSkyWaitingRoom.js +195 -0
- package/dist/components/themes/summer-sky/SummerSkyWaitingRoom.js.map +1 -0
- package/dist/components/themes/summer-sky/assets/images/Group_3432849.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/arrow-left.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/audio-icon.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/audio_ver2_icon.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/background-noticesubmit.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/background-question.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/background-v2.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/background_title.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/btn-notisubmid.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/button_feedback_vi.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/check-mic-btn.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/clock.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/has_answered.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/ic-mute-sunset.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/ic-mute.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/ic-play-sunset.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/ic-play-violet.webp +0 -0
- package/dist/components/themes/summer-sky/assets/images/ic-play.webp +0 -0
- package/dist/components/themes/summer-sky/assets/images/instruction-step.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/listen-audio.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/lock_mic_ver2_icon.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/mic-icon.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/mic_ver2_icon.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/next-btn.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/next-question-btn.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/ocean-frame.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/oceanedu-mascot.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/ong.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/pause-audio.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/pause_audio_ver2_icon.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/prev-question-btn.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/question-badge-sunset.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/radio-check.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/red-circle.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/rope.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/rope_2.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/rope_v3.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/start-exam.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/stop-mic.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/stop_audio_ver2_icon.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/student-avatar.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/submit.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/teacher_transparent (1).mp4 +0 -0
- package/dist/components/themes/summer-sky/assets/images/title-logo.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/title-notisubmit.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/title_table.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/traloicauhoi.png +0 -0
- package/dist/components/themes/summer-sky/assets/images/x-noticesubmit.png.png +0 -0
- package/dist/components/themes/summer-sky/assets/styles/SummerSkyLayout.module.css +406 -0
- package/dist/components/themes/summer-sky/assets/styles/SummerSkyWaitingRoom.module.css +419 -0
- package/dist/components/themes/types.d.ts +62 -0
- package/dist/components/themes/types.d.ts.map +1 -0
- package/dist/components/themes/types.js +2 -0
- package/dist/components/themes/types.js.map +1 -0
- package/dist/components/ui/alert-dialog.d.ts +21 -0
- package/dist/components/ui/alert-dialog.d.ts.map +1 -0
- package/dist/components/ui/alert-dialog.js +27 -0
- package/dist/components/ui/alert-dialog.js.map +1 -0
- package/dist/components/ui/alert.d.ts +9 -0
- package/dist/components/ui/alert.d.ts.map +1 -0
- package/dist/components/ui/alert.js +23 -0
- package/dist/components/ui/alert.js.map +1 -0
- package/dist/components/ui/avatar.d.ts +7 -0
- package/dist/components/ui/avatar.d.ts.map +1 -0
- package/dist/components/ui/avatar.js +13 -0
- package/dist/components/ui/avatar.js.map +1 -0
- package/dist/components/ui/badge.d.ts +16 -0
- package/dist/components/ui/badge.d.ts.map +1 -0
- package/dist/components/ui/badge.js +39 -0
- package/dist/components/ui/badge.js.map +1 -0
- package/dist/components/ui/button.d.ts +11 -0
- package/dist/components/ui/button.d.ts.map +1 -0
- package/dist/components/ui/button.js +36 -0
- package/dist/components/ui/button.js.map +1 -0
- package/dist/components/ui/calendar.d.ts +9 -0
- package/dist/components/ui/calendar.d.ts.map +1 -0
- package/dist/components/ui/calendar.js +77 -0
- package/dist/components/ui/calendar.js.map +1 -0
- package/dist/components/ui/card.d.ts +9 -0
- package/dist/components/ui/card.d.ts.map +1 -0
- package/dist/components/ui/card.js +17 -0
- package/dist/components/ui/card.js.map +1 -0
- package/dist/components/ui/carousel.d.ts +20 -0
- package/dist/components/ui/carousel.d.ts.map +1 -0
- package/dist/components/ui/carousel.js +92 -0
- package/dist/components/ui/carousel.js.map +1 -0
- package/dist/components/ui/checkbox.d.ts +5 -0
- package/dist/components/ui/checkbox.d.ts.map +1 -0
- package/dist/components/ui/checkbox.js +10 -0
- package/dist/components/ui/checkbox.js.map +1 -0
- package/dist/components/ui/collapsible.d.ts +6 -0
- package/dist/components/ui/collapsible.d.ts.map +1 -0
- package/dist/components/ui/collapsible.js +14 -0
- package/dist/components/ui/collapsible.js.map +1 -0
- package/dist/components/ui/command.d.ts +19 -0
- package/dist/components/ui/command.d.ts.map +1 -0
- package/dist/components/ui/command.js +35 -0
- package/dist/components/ui/command.js.map +1 -0
- package/dist/components/ui/confirm-dialog.d.ts +24 -0
- package/dist/components/ui/confirm-dialog.d.ts.map +1 -0
- package/dist/components/ui/confirm-dialog.js +50 -0
- package/dist/components/ui/confirm-dialog.js.map +1 -0
- package/dist/components/ui/dialog.d.ts +20 -0
- package/dist/components/ui/dialog.d.ts.map +1 -0
- package/dist/components/ui/dialog.js +24 -0
- package/dist/components/ui/dialog.js.map +1 -0
- package/dist/components/ui/drawer.d.ts +14 -0
- package/dist/components/ui/drawer.d.ts.map +1 -0
- package/dist/components/ui/drawer.js +36 -0
- package/dist/components/ui/drawer.js.map +1 -0
- package/dist/components/ui/dropdown-menu.d.ts +28 -0
- package/dist/components/ui/dropdown-menu.d.ts.map +1 -0
- package/dist/components/ui/dropdown-menu.js +34 -0
- package/dist/components/ui/dropdown-menu.js.map +1 -0
- package/dist/components/ui/file-upload.d.ts +25 -0
- package/dist/components/ui/file-upload.d.ts.map +1 -0
- package/dist/components/ui/file-upload.js +156 -0
- package/dist/components/ui/file-upload.js.map +1 -0
- package/dist/components/ui/form.d.ts +26 -0
- package/dist/components/ui/form.d.ts.map +1 -0
- package/dist/components/ui/form.js +63 -0
- package/dist/components/ui/form.js.map +1 -0
- package/dist/components/ui/hover-card.d.ts +7 -0
- package/dist/components/ui/hover-card.d.ts.map +1 -0
- package/dist/components/ui/hover-card.js +11 -0
- package/dist/components/ui/hover-card.js.map +1 -0
- package/dist/components/ui/image-preview.d.ts +19 -0
- package/dist/components/ui/image-preview.d.ts.map +1 -0
- package/dist/components/ui/image-preview.js +30 -0
- package/dist/components/ui/image-preview.js.map +1 -0
- package/dist/components/ui/input.d.ts +4 -0
- package/dist/components/ui/input.d.ts.map +1 -0
- package/dist/components/ui/input.js +9 -0
- package/dist/components/ui/input.js.map +1 -0
- package/dist/components/ui/label.d.ts +6 -0
- package/dist/components/ui/label.d.ts.map +1 -0
- package/dist/components/ui/label.js +10 -0
- package/dist/components/ui/label.js.map +1 -0
- package/dist/components/ui/language-switcher.d.ts +2 -0
- package/dist/components/ui/language-switcher.d.ts.map +1 -0
- package/dist/components/ui/language-switcher.js +16 -0
- package/dist/components/ui/language-switcher.js.map +1 -0
- package/dist/components/ui/multi-select.d.ts +17 -0
- package/dist/components/ui/multi-select.d.ts.map +1 -0
- package/dist/components/ui/multi-select.js +91 -0
- package/dist/components/ui/multi-select.js.map +1 -0
- package/dist/components/ui/points-input.d.ts +16 -0
- package/dist/components/ui/points-input.d.ts.map +1 -0
- package/dist/components/ui/points-input.js +34 -0
- package/dist/components/ui/points-input.js.map +1 -0
- package/dist/components/ui/popover.d.ts +11 -0
- package/dist/components/ui/popover.d.ts.map +1 -0
- package/dist/components/ui/popover.js +27 -0
- package/dist/components/ui/popover.js.map +1 -0
- package/dist/components/ui/progress.d.ts +5 -0
- package/dist/components/ui/progress.d.ts.map +1 -0
- package/dist/components/ui/progress.js +17 -0
- package/dist/components/ui/progress.js.map +1 -0
- package/dist/components/ui/radio-group.d.ts +6 -0
- package/dist/components/ui/radio-group.d.ts.map +1 -0
- package/dist/components/ui/radio-group.js +13 -0
- package/dist/components/ui/radio-group.js.map +1 -0
- package/dist/components/ui/scroll-area.d.ts +6 -0
- package/dist/components/ui/scroll-area.d.ts.map +1 -0
- package/dist/components/ui/scroll-area.js +12 -0
- package/dist/components/ui/scroll-area.js.map +1 -0
- package/dist/components/ui/select.d.ts +16 -0
- package/dist/components/ui/select.d.ts.map +1 -0
- package/dist/components/ui/select.js +39 -0
- package/dist/components/ui/select.js.map +1 -0
- package/dist/components/ui/separator.d.ts +5 -0
- package/dist/components/ui/separator.d.ts.map +1 -0
- package/dist/components/ui/separator.js +9 -0
- package/dist/components/ui/separator.js.map +1 -0
- package/dist/components/ui/sheet.d.ts +14 -0
- package/dist/components/ui/sheet.d.ts.map +1 -0
- package/dist/components/ui/sheet.js +41 -0
- package/dist/components/ui/sheet.js.map +1 -0
- package/dist/components/ui/single-select.d.ts +18 -0
- package/dist/components/ui/single-select.d.ts.map +1 -0
- package/dist/components/ui/single-select.js +77 -0
- package/dist/components/ui/single-select.js.map +1 -0
- package/dist/components/ui/skeleton.d.ts +3 -0
- package/dist/components/ui/skeleton.d.ts.map +1 -0
- package/dist/components/ui/skeleton.js +7 -0
- package/dist/components/ui/skeleton.js.map +1 -0
- package/dist/components/ui/switch.d.ts +5 -0
- package/dist/components/ui/switch.d.ts.map +1 -0
- package/dist/components/ui/switch.js +9 -0
- package/dist/components/ui/switch.js.map +1 -0
- package/dist/components/ui/table.d.ts +11 -0
- package/dist/components/ui/table.d.ts.map +1 -0
- package/dist/components/ui/table.js +21 -0
- package/dist/components/ui/table.js.map +1 -0
- package/dist/components/ui/tabs.d.ts +8 -0
- package/dist/components/ui/tabs.d.ts.map +1 -0
- package/dist/components/ui/tabs.js +18 -0
- package/dist/components/ui/tabs.js.map +1 -0
- package/dist/components/ui/textarea.d.ts +6 -0
- package/dist/components/ui/textarea.d.ts.map +1 -0
- package/dist/components/ui/textarea.js +9 -0
- package/dist/components/ui/textarea.js.map +1 -0
- package/dist/components/ui/tooltip.d.ts +8 -0
- package/dist/components/ui/tooltip.d.ts.map +1 -0
- package/dist/components/ui/tooltip.js +12 -0
- package/dist/components/ui/tooltip.js.map +1 -0
- package/dist/global.d.ts +46 -0
- package/dist/index.d.ts +28 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +20 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp/config.d.ts +13 -0
- package/dist/mcp/config.d.ts.map +1 -0
- package/dist/mcp/config.js +33 -0
- package/dist/mcp/config.js.map +1 -0
- package/dist/mcp/http-client.d.ts +7 -0
- package/dist/mcp/http-client.d.ts.map +1 -0
- package/dist/mcp/http-client.js +49 -0
- package/dist/mcp/http-client.js.map +1 -0
- package/dist/mcp/index.d.ts +7 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +31 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/mcp/tools/_helpers.d.ts +5 -0
- package/dist/mcp/tools/_helpers.d.ts.map +1 -0
- package/dist/mcp/tools/_helpers.js +26 -0
- package/dist/mcp/tools/_helpers.js.map +1 -0
- package/dist/mcp/tools/exams.d.ts +3 -0
- package/dist/mcp/tools/exams.d.ts.map +1 -0
- package/dist/mcp/tools/exams.js +440 -0
- package/dist/mcp/tools/exams.js.map +1 -0
- package/dist/mcp/tools/index.d.ts +3 -0
- package/dist/mcp/tools/index.d.ts.map +1 -0
- package/dist/mcp/tools/index.js +7 -0
- package/dist/mcp/tools/index.js.map +1 -0
- package/dist/mcp/tools/results.d.ts +3 -0
- package/dist/mcp/tools/results.d.ts.map +1 -0
- package/dist/mcp/tools/results.js +20 -0
- package/dist/mcp/tools/results.js.map +1 -0
- package/dist/shared/constants/ApiConstant.d.ts +232 -0
- package/dist/shared/constants/ApiConstant.d.ts.map +1 -0
- package/dist/shared/constants/ApiConstant.js +277 -0
- package/dist/shared/constants/ApiConstant.js.map +1 -0
- package/dist/shared/constants/QueryKeyConstant.d.ts +99 -0
- package/dist/shared/constants/QueryKeyConstant.d.ts.map +1 -0
- package/dist/shared/constants/QueryKeyConstant.js +113 -0
- package/dist/shared/constants/QueryKeyConstant.js.map +1 -0
- package/dist/shared/constants/exam-level.enum.d.ts +33 -0
- package/dist/shared/constants/exam-level.enum.d.ts.map +1 -0
- package/dist/shared/constants/exam-level.enum.js +42 -0
- package/dist/shared/constants/exam-level.enum.js.map +1 -0
- package/dist/shared/constants/landings/placement-test.constants.d.ts +128 -0
- package/dist/shared/constants/landings/placement-test.constants.d.ts.map +1 -0
- package/dist/shared/constants/landings/placement-test.constants.js +432 -0
- package/dist/shared/constants/landings/placement-test.constants.js.map +1 -0
- package/dist/shared/constants/question-skills.d.ts +93 -0
- package/dist/shared/constants/question-skills.d.ts.map +1 -0
- package/dist/shared/constants/question-skills.js +268 -0
- package/dist/shared/constants/question-skills.js.map +1 -0
- package/dist/shared/constants/routes.d.ts +70 -0
- package/dist/shared/constants/routes.d.ts.map +1 -0
- package/dist/shared/constants/routes.js +82 -0
- package/dist/shared/constants/routes.js.map +1 -0
- package/dist/shared/index.d.ts +8 -0
- package/dist/shared/index.d.ts.map +1 -0
- package/dist/shared/index.js +8 -0
- package/dist/shared/index.js.map +1 -0
- package/dist/shared/lib/hooks/index.d.ts +11 -0
- package/dist/shared/lib/hooks/index.d.ts.map +1 -0
- package/dist/shared/lib/hooks/index.js +11 -0
- package/dist/shared/lib/hooks/index.js.map +1 -0
- package/dist/shared/lib/hooks/useAlertDialog.d.ts +36 -0
- package/dist/shared/lib/hooks/useAlertDialog.d.ts.map +1 -0
- package/dist/shared/lib/hooks/useAlertDialog.js +58 -0
- package/dist/shared/lib/hooks/useAlertDialog.js.map +1 -0
- package/dist/shared/lib/hooks/useAudioPlayCounter.d.ts +8 -0
- package/dist/shared/lib/hooks/useAudioPlayCounter.d.ts.map +1 -0
- package/dist/shared/lib/hooks/useAudioPlayCounter.js +31 -0
- package/dist/shared/lib/hooks/useAudioPlayCounter.js.map +1 -0
- package/dist/shared/lib/hooks/useAudioPreview.d.ts +16 -0
- package/dist/shared/lib/hooks/useAudioPreview.d.ts.map +1 -0
- package/dist/shared/lib/hooks/useAudioPreview.js +82 -0
- package/dist/shared/lib/hooks/useAudioPreview.js.map +1 -0
- package/dist/shared/lib/hooks/useAudioUpload.d.ts +18 -0
- package/dist/shared/lib/hooks/useAudioUpload.d.ts.map +1 -0
- package/dist/shared/lib/hooks/useAudioUpload.js +25 -0
- package/dist/shared/lib/hooks/useAudioUpload.js.map +1 -0
- package/dist/shared/lib/hooks/useConfirmDialog.d.ts +44 -0
- package/dist/shared/lib/hooks/useConfirmDialog.d.ts.map +1 -0
- package/dist/shared/lib/hooks/useConfirmDialog.js +90 -0
- package/dist/shared/lib/hooks/useConfirmDialog.js.map +1 -0
- package/dist/shared/lib/hooks/useDebouncedCallback.d.ts +8 -0
- package/dist/shared/lib/hooks/useDebouncedCallback.d.ts.map +1 -0
- package/dist/shared/lib/hooks/useDebouncedCallback.js +33 -0
- package/dist/shared/lib/hooks/useDebouncedCallback.js.map +1 -0
- package/dist/shared/lib/hooks/useDelayedAutoPlay.d.ts +11 -0
- package/dist/shared/lib/hooks/useDelayedAutoPlay.d.ts.map +1 -0
- package/dist/shared/lib/hooks/useDelayedAutoPlay.js +13 -0
- package/dist/shared/lib/hooks/useDelayedAutoPlay.js.map +1 -0
- package/dist/shared/lib/hooks/useFileUpload.d.ts +15 -0
- package/dist/shared/lib/hooks/useFileUpload.d.ts.map +1 -0
- package/dist/shared/lib/hooks/useFileUpload.js +25 -0
- package/dist/shared/lib/hooks/useFileUpload.js.map +1 -0
- package/dist/shared/lib/hooks/useImageUrl.d.ts +2 -0
- package/dist/shared/lib/hooks/useImageUrl.d.ts.map +1 -0
- package/dist/shared/lib/hooks/useImageUrl.js +6 -0
- package/dist/shared/lib/hooks/useImageUrl.js.map +1 -0
- package/dist/shared/lib/hooks/usePresignedFileUrl.d.ts +11 -0
- package/dist/shared/lib/hooks/usePresignedFileUrl.d.ts.map +1 -0
- package/dist/shared/lib/hooks/usePresignedFileUrl.js +11 -0
- package/dist/shared/lib/hooks/usePresignedFileUrl.js.map +1 -0
- package/dist/shared/lib/hooks/useReactHookForm.d.ts +34 -0
- package/dist/shared/lib/hooks/useReactHookForm.d.ts.map +1 -0
- package/dist/shared/lib/hooks/useReactHookForm.js +32 -0
- package/dist/shared/lib/hooks/useReactHookForm.js.map +1 -0
- package/dist/shared/lib/hooks/useToast.d.ts +35 -0
- package/dist/shared/lib/hooks/useToast.d.ts.map +1 -0
- package/dist/shared/lib/hooks/useToast.js +63 -0
- package/dist/shared/lib/hooks/useToast.js.map +1 -0
- package/dist/shared/lib/i18n/index.d.ts +32 -0
- package/dist/shared/lib/i18n/index.d.ts.map +1 -0
- package/dist/shared/lib/i18n/index.js +55 -0
- package/dist/shared/lib/i18n/index.js.map +1 -0
- package/dist/shared/lib/i18n/messages/en/admin.d.ts +1937 -0
- package/dist/shared/lib/i18n/messages/en/admin.d.ts.map +1 -0
- package/dist/shared/lib/i18n/messages/en/admin.js +2105 -0
- package/dist/shared/lib/i18n/messages/en/admin.js.map +1 -0
- package/dist/shared/lib/i18n/messages/en/auth.d.ts +82 -0
- package/dist/shared/lib/i18n/messages/en/auth.d.ts.map +1 -0
- package/dist/shared/lib/i18n/messages/en/auth.js +87 -0
- package/dist/shared/lib/i18n/messages/en/auth.js.map +1 -0
- package/dist/shared/lib/i18n/messages/en/common.d.ts +125 -0
- package/dist/shared/lib/i18n/messages/en/common.d.ts.map +1 -0
- package/dist/shared/lib/i18n/messages/en/common.js +141 -0
- package/dist/shared/lib/i18n/messages/en/common.js.map +1 -0
- package/dist/shared/lib/i18n/messages/en/file-upload.d.ts +17 -0
- package/dist/shared/lib/i18n/messages/en/file-upload.d.ts.map +1 -0
- package/dist/shared/lib/i18n/messages/en/file-upload.js +19 -0
- package/dist/shared/lib/i18n/messages/en/file-upload.js.map +1 -0
- package/dist/shared/lib/i18n/messages/en/student.d.ts +125 -0
- package/dist/shared/lib/i18n/messages/en/student.d.ts.map +1 -0
- package/dist/shared/lib/i18n/messages/en/student.js +134 -0
- package/dist/shared/lib/i18n/messages/en/student.js.map +1 -0
- package/dist/shared/lib/i18n/messages/en/terms.d.ts +27 -0
- package/dist/shared/lib/i18n/messages/en/terms.d.ts.map +1 -0
- package/dist/shared/lib/i18n/messages/en/terms.js +38 -0
- package/dist/shared/lib/i18n/messages/en/terms.js.map +1 -0
- package/dist/shared/lib/i18n/messages/en.d.ts +2293 -0
- package/dist/shared/lib/i18n/messages/en.d.ts.map +1 -0
- package/dist/shared/lib/i18n/messages/en.js +16 -0
- package/dist/shared/lib/i18n/messages/en.js.map +1 -0
- package/dist/shared/lib/i18n/messages/vi/admin.d.ts +1937 -0
- package/dist/shared/lib/i18n/messages/vi/admin.d.ts.map +1 -0
- package/dist/shared/lib/i18n/messages/vi/admin.js +2105 -0
- package/dist/shared/lib/i18n/messages/vi/admin.js.map +1 -0
- package/dist/shared/lib/i18n/messages/vi/auth.d.ts +82 -0
- package/dist/shared/lib/i18n/messages/vi/auth.d.ts.map +1 -0
- package/dist/shared/lib/i18n/messages/vi/auth.js +87 -0
- package/dist/shared/lib/i18n/messages/vi/auth.js.map +1 -0
- package/dist/shared/lib/i18n/messages/vi/common.d.ts +125 -0
- package/dist/shared/lib/i18n/messages/vi/common.d.ts.map +1 -0
- package/dist/shared/lib/i18n/messages/vi/common.js +141 -0
- package/dist/shared/lib/i18n/messages/vi/common.js.map +1 -0
- package/dist/shared/lib/i18n/messages/vi/file-upload.d.ts +17 -0
- package/dist/shared/lib/i18n/messages/vi/file-upload.d.ts.map +1 -0
- package/dist/shared/lib/i18n/messages/vi/file-upload.js +19 -0
- package/dist/shared/lib/i18n/messages/vi/file-upload.js.map +1 -0
- package/dist/shared/lib/i18n/messages/vi/student.d.ts +125 -0
- package/dist/shared/lib/i18n/messages/vi/student.d.ts.map +1 -0
- package/dist/shared/lib/i18n/messages/vi/student.js +134 -0
- package/dist/shared/lib/i18n/messages/vi/student.js.map +1 -0
- package/dist/shared/lib/i18n/messages/vi/terms.d.ts +27 -0
- package/dist/shared/lib/i18n/messages/vi/terms.d.ts.map +1 -0
- package/dist/shared/lib/i18n/messages/vi/terms.js +38 -0
- package/dist/shared/lib/i18n/messages/vi/terms.js.map +1 -0
- package/dist/shared/lib/i18n/messages/vi.d.ts +2293 -0
- package/dist/shared/lib/i18n/messages/vi.d.ts.map +1 -0
- package/dist/shared/lib/i18n/messages/vi.js +16 -0
- package/dist/shared/lib/i18n/messages/vi.js.map +1 -0
- package/dist/shared/lib/i18n/types.d.ts +4 -0
- package/dist/shared/lib/i18n/types.d.ts.map +1 -0
- package/dist/shared/lib/i18n/types.js +2 -0
- package/dist/shared/lib/i18n/types.js.map +1 -0
- package/dist/shared/lib/stores/examQuestionStore.d.ts +95 -0
- package/dist/shared/lib/stores/examQuestionStore.d.ts.map +1 -0
- package/dist/shared/lib/stores/examQuestionStore.js +213 -0
- package/dist/shared/lib/stores/examQuestionStore.js.map +1 -0
- package/dist/shared/lib/stores/localeStore.d.ts +20 -0
- package/dist/shared/lib/stores/localeStore.d.ts.map +1 -0
- package/dist/shared/lib/stores/localeStore.js +11 -0
- package/dist/shared/lib/stores/localeStore.js.map +1 -0
- package/dist/shared/lib/utils/public-page.d.ts +9 -0
- package/dist/shared/lib/utils/public-page.d.ts.map +1 -0
- package/dist/shared/lib/utils/public-page.js +45 -0
- package/dist/shared/lib/utils/public-page.js.map +1 -0
- package/dist/shared/lib/utils/question-transform-types.d.ts +398 -0
- package/dist/shared/lib/utils/question-transform-types.d.ts.map +1 -0
- package/dist/shared/lib/utils/question-transform-types.js +2 -0
- package/dist/shared/lib/utils/question-transform-types.js.map +1 -0
- package/dist/shared/lib/utils/question-transform.d.ts +31 -0
- package/dist/shared/lib/utils/question-transform.d.ts.map +1 -0
- package/dist/shared/lib/utils/question-transform.js +175 -0
- package/dist/shared/lib/utils/question-transform.js.map +1 -0
- package/dist/shared/lib/utils.d.ts +70 -0
- package/dist/shared/lib/utils.d.ts.map +1 -0
- package/dist/shared/lib/utils.js +169 -0
- package/dist/shared/lib/utils.js.map +1 -0
- package/dist/shared/lib/validation/choose-correct-answer.validation.d.ts +19 -0
- package/dist/shared/lib/validation/choose-correct-answer.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/choose-correct-answer.validation.js +112 -0
- package/dist/shared/lib/validation/choose-correct-answer.validation.js.map +1 -0
- package/dist/shared/lib/validation/label-the-picture.validation.d.ts +13 -0
- package/dist/shared/lib/validation/label-the-picture.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/label-the-picture.validation.js +20 -0
- package/dist/shared/lib/validation/label-the-picture.validation.js.map +1 -0
- package/dist/shared/lib/validation/listen-and-choose-from-answer-group.validation.d.ts +27 -0
- package/dist/shared/lib/validation/listen-and-choose-from-answer-group.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/listen-and-choose-from-answer-group.validation.js +47 -0
- package/dist/shared/lib/validation/listen-and-choose-from-answer-group.validation.js.map +1 -0
- package/dist/shared/lib/validation/listen-and-choose-objects-in-scene.validation.d.ts +18 -0
- package/dist/shared/lib/validation/listen-and-choose-objects-in-scene.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/listen-and-choose-objects-in-scene.validation.js +22 -0
- package/dist/shared/lib/validation/listen-and-choose-objects-in-scene.validation.js.map +1 -0
- package/dist/shared/lib/validation/listen-and-drag-objects-into-scene.validation.d.ts +23 -0
- package/dist/shared/lib/validation/listen-and-drag-objects-into-scene.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/listen-and-drag-objects-into-scene.validation.js +35 -0
- package/dist/shared/lib/validation/listen-and-drag-objects-into-scene.validation.js.map +1 -0
- package/dist/shared/lib/validation/listen-and-speak-answer.validation.d.ts +17 -0
- package/dist/shared/lib/validation/listen-and-speak-answer.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/listen-and-speak-answer.validation.js +41 -0
- package/dist/shared/lib/validation/listen-and-speak-answer.validation.js.map +1 -0
- package/dist/shared/lib/validation/listen-and-speak-compare-images.validation.d.ts +16 -0
- package/dist/shared/lib/validation/listen-and-speak-compare-images.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/listen-and-speak-compare-images.validation.js +46 -0
- package/dist/shared/lib/validation/listen-and-speak-compare-images.validation.js.map +1 -0
- package/dist/shared/lib/validation/listen-and-speak-image-group.validation.d.ts +22 -0
- package/dist/shared/lib/validation/listen-and-speak-image-group.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/listen-and-speak-image-group.validation.js +20 -0
- package/dist/shared/lib/validation/listen-and-speak-image-group.validation.js.map +1 -0
- package/dist/shared/lib/validation/listen-and-speak-info-exchange.validation.d.ts +27 -0
- package/dist/shared/lib/validation/listen-and-speak-info-exchange.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/listen-and-speak-info-exchange.validation.js +40 -0
- package/dist/shared/lib/validation/listen-and-speak-info-exchange.validation.js.map +1 -0
- package/dist/shared/lib/validation/listen-and-speak-odd-one-out.validation.d.ts +12 -0
- package/dist/shared/lib/validation/listen-and-speak-odd-one-out.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/listen-and-speak-odd-one-out.validation.js +33 -0
- package/dist/shared/lib/validation/listen-and-speak-odd-one-out.validation.js.map +1 -0
- package/dist/shared/lib/validation/listen-and-speak-question-list.validation.d.ts +18 -0
- package/dist/shared/lib/validation/listen-and-speak-question-list.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/listen-and-speak-question-list.validation.js +20 -0
- package/dist/shared/lib/validation/listen-and-speak-question-list.validation.js.map +1 -0
- package/dist/shared/lib/validation/listen-and-speak-with-story-images.validation.d.ts +11 -0
- package/dist/shared/lib/validation/listen-and-speak-with-story-images.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/listen-and-speak-with-story-images.validation.js +29 -0
- package/dist/shared/lib/validation/listen-and-speak-with-story-images.validation.js.map +1 -0
- package/dist/shared/lib/validation/look-picture-choose-correct-answer.validation.d.ts +10 -0
- package/dist/shared/lib/validation/look-picture-choose-correct-answer.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/look-picture-choose-correct-answer.validation.js +13 -0
- package/dist/shared/lib/validation/look-picture-choose-correct-answer.validation.js.map +1 -0
- package/dist/shared/lib/validation/look-picture-fill-blank-choose-answer.validation.d.ts +18 -0
- package/dist/shared/lib/validation/look-picture-fill-blank-choose-answer.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/look-picture-fill-blank-choose-answer.validation.js +48 -0
- package/dist/shared/lib/validation/look-picture-fill-blank-choose-answer.validation.js.map +1 -0
- package/dist/shared/lib/validation/read-and-color-objects.validation.d.ts +21 -0
- package/dist/shared/lib/validation/read-and-color-objects.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/read-and-color-objects.validation.js +30 -0
- package/dist/shared/lib/validation/read-and-color-objects.validation.js.map +1 -0
- package/dist/shared/lib/validation/read-displayed-content.validation.d.ts +8 -0
- package/dist/shared/lib/validation/read-displayed-content.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/read-displayed-content.validation.js +29 -0
- package/dist/shared/lib/validation/read-displayed-content.validation.js.map +1 -0
- package/dist/shared/lib/validation/speaking-conversation.validation.d.ts +30 -0
- package/dist/shared/lib/validation/speaking-conversation.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/speaking-conversation.validation.js +76 -0
- package/dist/shared/lib/validation/speaking-conversation.validation.js.map +1 -0
- package/dist/shared/lib/validation/speaking-describe-image.validation.d.ts +10 -0
- package/dist/shared/lib/validation/speaking-describe-image.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/speaking-describe-image.validation.js +32 -0
- package/dist/shared/lib/validation/speaking-describe-image.validation.js.map +1 -0
- package/dist/shared/lib/validation/spontaneous-qa.validation.d.ts +14 -0
- package/dist/shared/lib/validation/spontaneous-qa.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/spontaneous-qa.validation.js +49 -0
- package/dist/shared/lib/validation/spontaneous-qa.validation.js.map +1 -0
- package/dist/shared/lib/validation/word-fill-paragraph-default.validation.d.ts +18 -0
- package/dist/shared/lib/validation/word-fill-paragraph-default.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/word-fill-paragraph-default.validation.js +39 -0
- package/dist/shared/lib/validation/word-fill-paragraph-default.validation.js.map +1 -0
- package/dist/shared/lib/validation/word-fill-paragraph-with-options.validation.d.ts +16 -0
- package/dist/shared/lib/validation/word-fill-paragraph-with-options.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/word-fill-paragraph-with-options.validation.js +40 -0
- package/dist/shared/lib/validation/word-fill-paragraph-with-options.validation.js.map +1 -0
- package/dist/shared/lib/validation/word-fill-paragraph.validation.d.ts +20 -0
- package/dist/shared/lib/validation/word-fill-paragraph.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/word-fill-paragraph.validation.js +44 -0
- package/dist/shared/lib/validation/word-fill-paragraph.validation.js.map +1 -0
- package/dist/shared/lib/validation/word-ordering.validation.d.ts +11 -0
- package/dist/shared/lib/validation/word-ordering.validation.d.ts.map +1 -0
- package/dist/shared/lib/validation/word-ordering.validation.js +34 -0
- package/dist/shared/lib/validation/word-ordering.validation.js.map +1 -0
- package/dist/shared/types/branch.types.d.ts +154 -0
- package/dist/shared/types/branch.types.d.ts.map +1 -0
- package/dist/shared/types/branch.types.js +7 -0
- package/dist/shared/types/branch.types.js.map +1 -0
- package/dist/shared/types/common.types.d.ts +81 -0
- package/dist/shared/types/common.types.d.ts.map +1 -0
- package/dist/shared/types/common.types.js +51 -0
- package/dist/shared/types/common.types.js.map +1 -0
- package/dist/shared/types/entities/exam-schedule.types.d.ts +66 -0
- package/dist/shared/types/entities/exam-schedule.types.d.ts.map +1 -0
- package/dist/shared/types/entities/exam-schedule.types.js +6 -0
- package/dist/shared/types/entities/exam-schedule.types.js.map +1 -0
- package/dist/shared/types/entities/exam.types.d.ts +111 -0
- package/dist/shared/types/entities/exam.types.d.ts.map +1 -0
- package/dist/shared/types/entities/exam.types.js +2 -0
- package/dist/shared/types/entities/exam.types.js.map +1 -0
- package/dist/shared/types/entities/question.types.d.ts +359 -0
- package/dist/shared/types/entities/question.types.d.ts.map +1 -0
- package/dist/shared/types/entities/question.types.js +5 -0
- package/dist/shared/types/entities/question.types.js.map +1 -0
- package/dist/shared/types/entities/result.types.d.ts +41 -0
- package/dist/shared/types/entities/result.types.d.ts.map +1 -0
- package/dist/shared/types/entities/result.types.js +5 -0
- package/dist/shared/types/entities/result.types.js.map +1 -0
- package/dist/shared/types/entities/user.types.d.ts +42 -0
- package/dist/shared/types/entities/user.types.d.ts.map +1 -0
- package/dist/shared/types/entities/user.types.js +5 -0
- package/dist/shared/types/entities/user.types.js.map +1 -0
- package/dist/shared/types/exam-taking.types.d.ts +39 -0
- package/dist/shared/types/exam-taking.types.d.ts.map +1 -0
- package/dist/shared/types/exam-taking.types.js +3 -0
- package/dist/shared/types/exam-taking.types.js.map +1 -0
- package/dist/shared/types/history.types.d.ts +21 -0
- package/dist/shared/types/history.types.d.ts.map +1 -0
- package/dist/shared/types/history.types.js +35 -0
- package/dist/shared/types/history.types.js.map +1 -0
- package/dist/shared/types/index.d.ts +102 -0
- package/dist/shared/types/index.d.ts.map +1 -0
- package/dist/shared/types/index.js +2 -0
- package/dist/shared/types/index.js.map +1 -0
- package/dist/shared/types/questions/choose-correct-adjective.d.ts +38 -0
- package/dist/shared/types/questions/choose-correct-adjective.d.ts.map +1 -0
- package/dist/shared/types/questions/choose-correct-adjective.js +5 -0
- package/dist/shared/types/questions/choose-correct-adjective.js.map +1 -0
- package/dist/shared/types/questions/choose-the-correct-answer.d.ts +73 -0
- package/dist/shared/types/questions/choose-the-correct-answer.d.ts.map +1 -0
- package/dist/shared/types/questions/choose-the-correct-answer.js +10 -0
- package/dist/shared/types/questions/choose-the-correct-answer.js.map +1 -0
- package/dist/shared/types/questions/fill-missing-words-in-grid.d.ts +72 -0
- package/dist/shared/types/questions/fill-missing-words-in-grid.d.ts.map +1 -0
- package/dist/shared/types/questions/fill-missing-words-in-grid.js +12 -0
- package/dist/shared/types/questions/fill-missing-words-in-grid.js.map +1 -0
- package/dist/shared/types/questions/index.d.ts +29 -0
- package/dist/shared/types/questions/index.d.ts.map +1 -0
- package/dist/shared/types/questions/index.js +41 -0
- package/dist/shared/types/questions/index.js.map +1 -0
- package/dist/shared/types/questions/listen-and-speak-answer.d.ts +47 -0
- package/dist/shared/types/questions/listen-and-speak-answer.d.ts.map +1 -0
- package/dist/shared/types/questions/listen-and-speak-answer.js +2 -0
- package/dist/shared/types/questions/listen-and-speak-answer.js.map +1 -0
- package/dist/shared/types/questions/listen-and-speak-compare-images.d.ts +23 -0
- package/dist/shared/types/questions/listen-and-speak-compare-images.d.ts.map +1 -0
- package/dist/shared/types/questions/listen-and-speak-compare-images.js +2 -0
- package/dist/shared/types/questions/listen-and-speak-compare-images.js.map +1 -0
- package/dist/shared/types/questions/listen-and-speak-image-group.d.ts +30 -0
- package/dist/shared/types/questions/listen-and-speak-image-group.d.ts.map +1 -0
- package/dist/shared/types/questions/listen-and-speak-image-group.js +2 -0
- package/dist/shared/types/questions/listen-and-speak-image-group.js.map +1 -0
- package/dist/shared/types/questions/listen-and-speak-info-exchange.d.ts +30 -0
- package/dist/shared/types/questions/listen-and-speak-info-exchange.d.ts.map +1 -0
- package/dist/shared/types/questions/listen-and-speak-info-exchange.js +4 -0
- package/dist/shared/types/questions/listen-and-speak-info-exchange.js.map +1 -0
- package/dist/shared/types/questions/listen-and-speak-odd-one-out.d.ts +14 -0
- package/dist/shared/types/questions/listen-and-speak-odd-one-out.d.ts.map +1 -0
- package/dist/shared/types/questions/listen-and-speak-odd-one-out.js +4 -0
- package/dist/shared/types/questions/listen-and-speak-odd-one-out.js.map +1 -0
- package/dist/shared/types/questions/listen-and-speak-question-list.d.ts +19 -0
- package/dist/shared/types/questions/listen-and-speak-question-list.d.ts.map +1 -0
- package/dist/shared/types/questions/listen-and-speak-question-list.js +2 -0
- package/dist/shared/types/questions/listen-and-speak-question-list.js.map +1 -0
- package/dist/shared/types/questions/listen-and-speak-with-story-images.d.ts +14 -0
- package/dist/shared/types/questions/listen-and-speak-with-story-images.d.ts.map +1 -0
- package/dist/shared/types/questions/listen-and-speak-with-story-images.js +4 -0
- package/dist/shared/types/questions/listen-and-speak-with-story-images.js.map +1 -0
- package/dist/shared/types/questions/look-picture-choose-correct-answer.d.ts +39 -0
- package/dist/shared/types/questions/look-picture-choose-correct-answer.d.ts.map +1 -0
- package/dist/shared/types/questions/look-picture-choose-correct-answer.js +6 -0
- package/dist/shared/types/questions/look-picture-choose-correct-answer.js.map +1 -0
- package/dist/shared/types/questions/look-picture-fill-blank-choose-answer.d.ts +64 -0
- package/dist/shared/types/questions/look-picture-fill-blank-choose-answer.d.ts.map +1 -0
- package/dist/shared/types/questions/look-picture-fill-blank-choose-answer.js +10 -0
- package/dist/shared/types/questions/look-picture-fill-blank-choose-answer.js.map +1 -0
- package/dist/shared/types/questions/look-picture-fill-word-hint.d.ts +58 -0
- package/dist/shared/types/questions/look-picture-fill-word-hint.d.ts.map +1 -0
- package/dist/shared/types/questions/look-picture-fill-word-hint.js +8 -0
- package/dist/shared/types/questions/look-picture-fill-word-hint.js.map +1 -0
- package/dist/shared/types/questions/read-displayed-content.d.ts +68 -0
- package/dist/shared/types/questions/read-displayed-content.d.ts.map +1 -0
- package/dist/shared/types/questions/read-displayed-content.js +2 -0
- package/dist/shared/types/questions/read-displayed-content.js.map +1 -0
- package/dist/shared/types/questions/speaking-conversation.d.ts +51 -0
- package/dist/shared/types/questions/speaking-conversation.d.ts.map +1 -0
- package/dist/shared/types/questions/speaking-conversation.js +8 -0
- package/dist/shared/types/questions/speaking-conversation.js.map +1 -0
- package/dist/shared/types/questions/speaking-describe-image.d.ts +41 -0
- package/dist/shared/types/questions/speaking-describe-image.d.ts.map +1 -0
- package/dist/shared/types/questions/speaking-describe-image.js +2 -0
- package/dist/shared/types/questions/speaking-describe-image.js.map +1 -0
- package/dist/shared/types/questions/spontaneous-qa.d.ts +80 -0
- package/dist/shared/types/questions/spontaneous-qa.d.ts.map +1 -0
- package/dist/shared/types/questions/spontaneous-qa.js +2 -0
- package/dist/shared/types/questions/spontaneous-qa.js.map +1 -0
- package/dist/shared/types/questions/write-correct-verb-form.d.ts +110 -0
- package/dist/shared/types/questions/write-correct-verb-form.d.ts.map +1 -0
- package/dist/shared/types/questions/write-correct-verb-form.js +13 -0
- package/dist/shared/types/questions/write-correct-verb-form.js.map +1 -0
- package/dist/shared/types/role.types.d.ts +61 -0
- package/dist/shared/types/role.types.d.ts.map +1 -0
- package/dist/shared/types/role.types.js +2 -0
- package/dist/shared/types/role.types.js.map +1 -0
- package/dist/shared/types/structure-management.d.ts +218 -0
- package/dist/shared/types/structure-management.d.ts.map +1 -0
- package/dist/shared/types/structure-management.js +29 -0
- package/dist/shared/types/structure-management.js.map +1 -0
- package/dist/shared/types/student.types.d.ts +396 -0
- package/dist/shared/types/student.types.d.ts.map +1 -0
- package/dist/shared/types/student.types.js +55 -0
- package/dist/shared/types/student.types.js.map +1 -0
- package/dist/shared/types/teacher-dashboard-rooms.d.ts +61 -0
- package/dist/shared/types/teacher-dashboard-rooms.d.ts.map +1 -0
- package/dist/shared/types/teacher-dashboard-rooms.js +3 -0
- package/dist/shared/types/teacher-dashboard-rooms.js.map +1 -0
- package/package.json +144 -0
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export const transformListenAndSpeakInfoExchange = (question) => {
|
|
2
|
+
const contentData = question.content;
|
|
3
|
+
const answerData = question.answer;
|
|
4
|
+
const questionGroup = question.questionGroup;
|
|
5
|
+
const expectedAnswers = answerData?.expectedAnswers || [];
|
|
6
|
+
const apiContent = {
|
|
7
|
+
audioUrl: contentData?.audioUrl || answerData?.audioUrl || '',
|
|
8
|
+
};
|
|
9
|
+
const result = {
|
|
10
|
+
apiContent,
|
|
11
|
+
apiCorrectAnswer: {
|
|
12
|
+
expectedAnswers: expectedAnswers,
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
// Handle group data for info exchange fields
|
|
16
|
+
const groupPayload = questionGroup?.payload || {};
|
|
17
|
+
const title = answerData?.title || groupPayload.title || '';
|
|
18
|
+
const imageUrl = answerData?.imageUrl || groupPayload.imageUrl || '';
|
|
19
|
+
const legacyFields = answerData?.fields || groupPayload.fields || [];
|
|
20
|
+
const candidateFields = answerData?.candidateFields || groupPayload.candidateFields || legacyFields;
|
|
21
|
+
const examinerFields = answerData?.examinerFields || groupPayload.examinerFields || [];
|
|
22
|
+
if (title || imageUrl || candidateFields.length > 0 || examinerFields.length > 0) {
|
|
23
|
+
result.infoExchangeGroupData = {
|
|
24
|
+
title,
|
|
25
|
+
imageUrl,
|
|
26
|
+
candidateFields,
|
|
27
|
+
examinerFields,
|
|
28
|
+
};
|
|
29
|
+
result.groupNumber = answerData?.groupNumber || questionGroup?.groupNumber || 1;
|
|
30
|
+
}
|
|
31
|
+
return result;
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=transform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transform.js","sourceRoot":"","sources":["../../../../../src/components/questions/types/listen-and-speak-info-exchange/transform.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,mCAAmC,GAAqB,CAAC,QAAQ,EAAE,EAAE;IAC9E,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAc,CAAC;IAC5C,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAa,CAAC;IAC1C,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAoB,CAAC;IAEpD,MAAM,eAAe,GAAG,UAAU,EAAE,eAAe,IAAI,EAAE,CAAC;IAE1D,MAAM,UAAU,GAAQ;QACpB,QAAQ,EAAE,WAAW,EAAE,QAAQ,IAAI,UAAU,EAAE,QAAQ,IAAI,EAAE;KAChE,CAAC;IAEF,MAAM,MAAM,GAAQ;QAChB,UAAU;QACV,gBAAgB,EAAE;YACd,eAAe,EAAE,eAAe;SACnC;KACJ,CAAC;IAEF,6CAA6C;IAC7C,MAAM,YAAY,GAAG,aAAa,EAAE,OAAO,IAAI,EAAE,CAAC;IAClD,MAAM,KAAK,GAAG,UAAU,EAAE,KAAK,IAAI,YAAY,CAAC,KAAK,IAAI,EAAE,CAAC;IAC5D,MAAM,QAAQ,GAAG,UAAU,EAAE,QAAQ,IAAI,YAAY,CAAC,QAAQ,IAAI,EAAE,CAAC;IACrE,MAAM,YAAY,GAAG,UAAU,EAAE,MAAM,IAAI,YAAY,CAAC,MAAM,IAAI,EAAE,CAAC;IACrE,MAAM,eAAe,GAAG,UAAU,EAAE,eAAe,IAAI,YAAY,CAAC,eAAe,IAAI,YAAY,CAAC;IACpG,MAAM,cAAc,GAAG,UAAU,EAAE,cAAc,IAAI,YAAY,CAAC,cAAc,IAAI,EAAE,CAAC;IAEvF,IAAI,KAAK,IAAI,QAAQ,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/E,MAAM,CAAC,qBAAqB,GAAG;YAC3B,KAAK;YACL,QAAQ;YACR,eAAe;YACf,cAAc;SACjB,CAAC;QACF,MAAM,CAAC,WAAW,GAAG,UAAU,EAAE,WAAW,IAAI,aAAa,EAAE,WAAW,IAAI,CAAC,CAAC;IACpF,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { ListenAndSpeakOddOneOutClientProps } from '../../_shared/types/listen-and-speak-odd-one-out.type';
|
|
3
|
+
export declare function ListenAndSpeakOddOneOutClient({ questionData, isReviewMode, }: ListenAndSpeakOddOneOutClientProps): React.JSX.Element;
|
|
4
|
+
//# sourceMappingURL=ListenAndSpeakOddOneOutClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ListenAndSpeakOddOneOutClient.d.ts","sourceRoot":"","sources":["../../../../../src/components/questions/types/listen-and-speak-odd-one-out/ListenAndSpeakOddOneOutClient.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,kCAAkC,EAAE,MAAM,wEAAwE,CAAC;AAqE5H,wBAAgB,6BAA6B,CAAC,EAC1C,YAAY,EACZ,YAAoB,GACvB,EAAE,kCAAkC,qBA0KpC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
+
import { Mic, Volume2, CheckCircle2, Play, Pause, ImageIcon, Info, CircleOff } from 'lucide-react';
|
|
4
|
+
import { Button } from '../../../../components/ui/button';
|
|
5
|
+
import { usePresignedFileUrl, useAudioPreview } from '../../../../shared/lib/hooks';
|
|
6
|
+
// ─── Sub-component: Custom Audio Player ──────────────────────────────────────
|
|
7
|
+
function QuestionAudioPlayer({ audioUrl }) {
|
|
8
|
+
const { previewUrl } = usePresignedFileUrl(audioUrl);
|
|
9
|
+
const { isPlaying, currentTime, duration, progressPercentage, handlePlayPause, handleProgressClick, formatTime, } = useAudioPreview(previewUrl);
|
|
10
|
+
return (_jsxs("div", { className: "flex items-center gap-3 rounded-lg bg-gradient-to-r from-indigo-50 to-purple-50 border border-indigo-200 px-4 py-2.5", children: [_jsx(Button, { variant: "outline", size: "icon", onClick: handlePlayPause, disabled: !previewUrl, className: "h-8 w-8 border-indigo-300 text-indigo-600 hover:bg-indigo-100", children: isPlaying ? _jsx(Pause, { className: "h-3.5 w-3.5" }) : _jsx(Play, { className: "h-3.5 w-3.5" }) }), _jsxs("div", { className: "text-muted-foreground min-w-[70px] text-xs", children: [formatTime(currentTime), " / ", formatTime(duration)] }), _jsx("div", { className: "bg-indigo-200 relative h-1.5 flex-1 cursor-pointer rounded-full", onClick: handleProgressClick, children: _jsx("div", { className: "bg-indigo-500 absolute top-0 left-0 h-full rounded-full transition-all", style: { width: `${progressPercentage}%` } }) }), _jsx(Volume2, { className: "h-4 w-4 text-indigo-400" })] }));
|
|
11
|
+
}
|
|
12
|
+
// ─── Sub-component: Presigned image preview ──────────────────────────────────
|
|
13
|
+
function OddOneOutImage({ imageUrl, index }) {
|
|
14
|
+
const { previewUrl } = usePresignedFileUrl(imageUrl);
|
|
15
|
+
if (!previewUrl) {
|
|
16
|
+
return (_jsx("div", { className: "w-full h-full flex items-center justify-center bg-gray-100 text-gray-400", children: _jsx(ImageIcon, { className: "h-8 w-8" }) }));
|
|
17
|
+
}
|
|
18
|
+
return (_jsx("img", { src: previewUrl, alt: `Image ${index + 1}`, className: "w-full h-full object-cover" }));
|
|
19
|
+
}
|
|
20
|
+
// ─── Main Client Component ───────────────────────────────────────────────────
|
|
21
|
+
export function ListenAndSpeakOddOneOutClient({ questionData, isReviewMode = false, }) {
|
|
22
|
+
const { audioUrl, images, oddOneOutIndex, expectedAnswers = [], explanation } = questionData;
|
|
23
|
+
return (_jsxs("div", { className: "space-y-4", children: [questionData.isBackup && (_jsxs("div", { className: "inline-flex self-center items-center gap-1.5 px-3 py-1.5 rounded-md bg-amber-50 text-amber-700 border border-amber-200 text-xs font-bold shadow-sm", children: [_jsx("span", { children: "\uD83D\uDD04" }), " C\u00E2u h\u1ECFi d\u1EF1 ph\u00F2ng"] })), _jsxs("div", { className: "overflow-hidden rounded-xl border border-gray-200 bg-white shadow-sm", children: [_jsx("div", { className: "flex items-center justify-between border-b border-gray-100 bg-gradient-to-r from-indigo-50 to-blue-50 px-5 py-3", children: _jsxs("div", { className: "flex items-center gap-3", children: [_jsx("div", { className: "flex h-8 w-8 items-center justify-center rounded-lg bg-gradient-to-br from-indigo-500 to-blue-600 text-white shadow-sm", children: _jsx(CircleOff, { className: "h-4 w-4" }) }), _jsx("span", { className: "text-sm font-medium text-gray-700", children: "Nghe v\u00E0 n\u00F3i (T\u00ECm h\u00ECnh kh\u00E1c lo\u1EA1i)" })] }) }), _jsxs("div", { className: "p-5 space-y-5", children: [images && images.length > 0 && (_jsx("div", { className: "bg-gradient-to-br from-amber-50/80 to-orange-50/60 rounded-2xl p-6 border border-amber-100/80 shadow-sm space-y-4", children: images.length === 4 ? (_jsxs(_Fragment, { children: [_jsx("div", { className: "grid grid-cols-3 gap-4", children: images.slice(0, 3).map((imgUrl, index) => (_jsxs("div", { className: "space-y-1", children: [_jsxs("div", { className: "flex items-center gap-1.5 mb-1", children: [_jsx("span", { className: `flex h-6 w-6 items-center justify-center rounded-md text-xs font-bold ${isReviewMode && oddOneOutIndex === index ? 'bg-red-200 text-red-800' : 'bg-amber-200 text-amber-800'}`, children: index + 1 }), isReviewMode && oddOneOutIndex === index && (_jsxs("span", { className: "inline-flex items-center gap-1 rounded-full bg-red-100 border border-red-200 px-1.5 py-0.5 text-[10px] font-bold text-red-700", children: [_jsx(CircleOff, { className: "h-2.5 w-2.5" }), "Kh\u00E1c lo\u1EA1i"] }))] }), _jsx("div", { className: `relative aspect-square rounded-xl overflow-hidden border-2 bg-white shadow-sm ${isReviewMode && oddOneOutIndex === index ? 'border-red-400 ring-2 ring-red-200' : 'border-gray-200'}`, children: imgUrl ? (_jsx(OddOneOutImage, { imageUrl: imgUrl, index: index })) : (_jsx("div", { className: "w-full h-full flex items-center justify-center text-gray-400 text-sm", children: _jsx(ImageIcon, { className: "h-6 w-6" }) })) })] }, index))) }), _jsx("div", { className: "flex justify-center", children: _jsx("div", { className: "w-1/3", children: _jsxs("div", { className: "space-y-1", children: [_jsxs("div", { className: "flex items-center gap-1.5 mb-1", children: [_jsx("span", { className: `flex h-6 w-6 items-center justify-center rounded-md text-xs font-bold ${isReviewMode && oddOneOutIndex === 3 ? 'bg-red-200 text-red-800' : 'bg-amber-200 text-amber-800'}`, children: "4" }), isReviewMode && oddOneOutIndex === 3 && (_jsxs("span", { className: "inline-flex items-center gap-1 rounded-full bg-red-100 border border-red-200 px-1.5 py-0.5 text-[10px] font-bold text-red-700", children: [_jsx(CircleOff, { className: "h-2.5 w-2.5" }), "Kh\u00E1c lo\u1EA1i"] }))] }), _jsx("div", { className: `relative aspect-square rounded-xl overflow-hidden border-2 bg-white shadow-sm ${isReviewMode && oddOneOutIndex === 3 ? 'border-red-400 ring-2 ring-red-200' : 'border-gray-200'}`, children: images[3] ? (_jsx(OddOneOutImage, { imageUrl: images[3], index: 3 })) : (_jsx("div", { className: "w-full h-full flex items-center justify-center text-gray-400 text-sm", children: _jsx(ImageIcon, { className: "h-6 w-6" }) })) })] }) }) })] })) : (
|
|
24
|
+
/* Fallback: equal grid for other counts */
|
|
25
|
+
_jsx("div", { className: "grid grid-cols-2 gap-4", children: images.map((imgUrl, index) => (_jsxs("div", { className: "space-y-1", children: [_jsxs("div", { className: "flex items-center gap-1.5 mb-1", children: [_jsx("span", { className: `flex h-6 w-6 items-center justify-center rounded-md text-xs font-bold ${isReviewMode && oddOneOutIndex === index ? 'bg-red-200 text-red-800' : 'bg-amber-200 text-amber-800'}`, children: index + 1 }), isReviewMode && oddOneOutIndex === index && (_jsxs("span", { className: "inline-flex items-center gap-1 rounded-full bg-red-100 border border-red-200 px-1.5 py-0.5 text-[10px] font-bold text-red-700", children: [_jsx(CircleOff, { className: "h-2.5 w-2.5" }), "Kh\u00E1c lo\u1EA1i"] }))] }), _jsx("div", { className: `relative aspect-square rounded-xl overflow-hidden border-2 bg-white shadow-sm ${isReviewMode && oddOneOutIndex === index ? 'border-red-400 ring-2 ring-red-200' : 'border-gray-200'}`, children: imgUrl ? (_jsx(OddOneOutImage, { imageUrl: imgUrl, index: index })) : (_jsx("div", { className: "w-full h-full flex items-center justify-center text-gray-400 text-sm", children: _jsx(ImageIcon, { className: "h-6 w-6" }) })) })] }, index))) })) })), audioUrl ? (_jsx(QuestionAudioPlayer, { audioUrl: audioUrl })) : (_jsxs("div", { className: "flex items-center gap-2 rounded-lg border border-gray-200 bg-gray-50 px-4 py-3", children: [_jsx(Volume2, { className: "h-4 w-4 text-gray-400" }), _jsx("span", { className: "text-xs text-gray-400", children: "Ch\u01B0a c\u00F3 audio c\u00E2u h\u1ECFi" })] })), _jsxs("div", { className: "flex items-center gap-3 rounded-lg border border-dashed border-gray-300 bg-gray-50/80 px-4 py-3", children: [_jsx("div", { className: "flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-full bg-indigo-50 ring-2 ring-indigo-100/50", children: _jsx(Mic, { className: "w-4 h-4 text-indigo-400" }) }), _jsx("p", { className: "text-xs text-gray-400", children: "H\u1ECDc sinh s\u1EBD nh\u1EA5n n\u00FAt ghi \u00E2m v\u00E0 n\u00F3i c\u00E2u tr\u1EA3 l\u1EDDi t\u1EA1i \u0111\u00E2y" })] }), isReviewMode && expectedAnswers.length > 0 && (_jsxs("div", { className: "rounded-xl border border-green-200 bg-green-50/80 p-4", children: [_jsxs("div", { className: "flex items-center gap-2 mb-3", children: [_jsx(CheckCircle2, { className: "h-4 w-4 text-green-600" }), _jsx("h4", { className: "text-sm font-semibold text-green-800", children: "C\u00E1c \u0111\u00E1p \u00E1n mong mu\u1ED1n" })] }), _jsx("div", { className: "space-y-2", children: expectedAnswers.map((answer, index) => (_jsxs("div", { className: "flex items-center gap-2.5 rounded-lg bg-white/70 border border-green-100 px-3 py-2", children: [_jsx("span", { className: "flex h-6 w-6 flex-shrink-0 items-center justify-center rounded-full bg-green-100 text-green-700 text-xs font-bold", children: index + 1 }), _jsx("span", { className: "text-sm text-green-800", children: answer })] }, index))) })] })), isReviewMode && explanation && (_jsxs("div", { className: "rounded-xl border border-indigo-200 bg-indigo-50 p-4", children: [_jsxs("div", { className: "flex items-center gap-2 mb-2", children: [_jsx(Info, { className: "h-4 w-4 text-indigo-600" }), _jsx("p", { className: "text-sm font-semibold text-indigo-800", children: "Gi\u1EA3i th\u00EDch" })] }), _jsx("p", { className: "text-sm text-indigo-700 leading-relaxed", children: explanation })] }))] })] })] }));
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=ListenAndSpeakOddOneOutClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ListenAndSpeakOddOneOutClient.js","sourceRoot":"","sources":["../../../../../src/components/questions/types/listen-and-speak-odd-one-out/ListenAndSpeakOddOneOutClient.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { ListenAndSpeakOddOneOutCreatorProps } from '../../_shared/types/listen-and-speak-odd-one-out.type';
|
|
3
|
+
export declare function ListenAndSpeakOddOneOutCreator({ initialData, onChange, onUnsavedChangesChange, validationRef, }: ListenAndSpeakOddOneOutCreatorProps): React.JSX.Element;
|
|
4
|
+
//# sourceMappingURL=ListenAndSpeakOddOneOutCreator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ListenAndSpeakOddOneOutCreator.d.ts","sourceRoot":"","sources":["../../../../../src/components/questions/types/listen-and-speak-odd-one-out/ListenAndSpeakOddOneOutCreator.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAe3D,OAAO,KAAK,EACR,mCAAmC,EAEtC,MAAM,wEAAwE,CAAC;AAqChF,wBAAgB,8BAA8B,CAAC,EAC3C,WAAW,EACX,QAAQ,EACR,sBAAsB,EACtB,aAAa,GAChB,EAAE,mCAAmC,qBA2oBrC"}
|
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useEffect, useRef, useState } from 'react';
|
|
4
|
+
import { Card, CardContent, CardHeader, CardTitle } from '../../../../components/ui/card';
|
|
5
|
+
import { Label } from '../../../../components/ui/label';
|
|
6
|
+
import { Button } from '../../../../components/ui/button';
|
|
7
|
+
import { Input } from '../../../../components/ui/input';
|
|
8
|
+
import { Textarea } from '../../../../components/ui/textarea';
|
|
9
|
+
import { Form, FormControl, FormField, FormItem, FormMessage } from '../../../../components/ui/form';
|
|
10
|
+
import { FileUpload } from '../../../../components/ui/file-upload';
|
|
11
|
+
import { PointsInput } from '../../../../components/ui/points-input';
|
|
12
|
+
// Hooks
|
|
13
|
+
import { useReactHookForm } from '../../../../shared/lib/hooks/useReactHookForm';
|
|
14
|
+
import { useDebouncedCallback, usePresignedFileUrl } from '../../../../shared/lib/hooks';
|
|
15
|
+
import { listenAndSpeakOddOneOutSchema, } from '../../../../shared/lib/validation/listen-and-speak-odd-one-out.validation';
|
|
16
|
+
// Icons
|
|
17
|
+
import { Plus, Trash2, Volume2, ImageIcon, MessageSquareText, HelpCircle, BookOpen, Eye, Pencil, Info, ListChecks, CircleOff, Check } from 'lucide-react';
|
|
18
|
+
import { CreatorGuide } from '../../components/CreatorGuide';
|
|
19
|
+
import { ListenAndSpeakOddOneOutClient } from './ListenAndSpeakOddOneOutClient';
|
|
20
|
+
const REQUIRED_IMAGE_COUNT = 4;
|
|
21
|
+
// ─── Sub-component: Image preview with presigned URL ─────────────────────────
|
|
22
|
+
function ImagePreview({ imageUrl, index, isOddOneOut }) {
|
|
23
|
+
const { previewUrl } = usePresignedFileUrl(imageUrl);
|
|
24
|
+
if (!previewUrl)
|
|
25
|
+
return null;
|
|
26
|
+
return (_jsxs("div", { className: "relative rounded-xl border border-gray-200 overflow-hidden bg-white shadow-sm group/img", children: [_jsx("img", { src: previewUrl, alt: `Image ${index + 1}`, className: "h-36 w-full object-contain bg-gray-50 p-2" }), isOddOneOut && (_jsx("div", { className: "absolute inset-0 bg-red-500/10 ring-2 ring-inset ring-red-400 rounded-xl" }))] }));
|
|
27
|
+
}
|
|
28
|
+
// ─── Main Creator Component ──────────────────────────────────────────────────
|
|
29
|
+
export function ListenAndSpeakOddOneOutCreator({ initialData, onChange, onUnsavedChangesChange, validationRef, }) {
|
|
30
|
+
// ---------------------------------------------------------------
|
|
31
|
+
// Form setup with Zod validation
|
|
32
|
+
// ---------------------------------------------------------------
|
|
33
|
+
const apiData = initialData;
|
|
34
|
+
const initImages = apiData?.images && apiData.images.length > 0
|
|
35
|
+
? apiData.images
|
|
36
|
+
: Array(REQUIRED_IMAGE_COUNT).fill('');
|
|
37
|
+
const form = useReactHookForm({
|
|
38
|
+
zodSchema: listenAndSpeakOddOneOutSchema,
|
|
39
|
+
defaultValues: {
|
|
40
|
+
audioUrl: apiData?.audioUrl || '',
|
|
41
|
+
images: initImages.length >= REQUIRED_IMAGE_COUNT
|
|
42
|
+
? initImages.slice(0, REQUIRED_IMAGE_COUNT)
|
|
43
|
+
: [...initImages, ...Array(REQUIRED_IMAGE_COUNT - initImages.length).fill('')],
|
|
44
|
+
oddOneOutIndex: apiData?.oddOneOutIndex ?? -1,
|
|
45
|
+
expectedAnswers: apiData?.expectedAnswers?.length > 0 ? apiData.expectedAnswers : [''],
|
|
46
|
+
points: apiData?.points ?? 1,
|
|
47
|
+
explanation: apiData?.explanation || '',
|
|
48
|
+
isBackup: apiData?.isBackup || false,
|
|
49
|
+
},
|
|
50
|
+
});
|
|
51
|
+
const { control, watch, setValue, trigger, clearErrors } = form;
|
|
52
|
+
const watchedAudioUrl = watch('audioUrl');
|
|
53
|
+
const watchedImages = watch('images');
|
|
54
|
+
const watchedOddOneOutIndex = watch('oddOneOutIndex');
|
|
55
|
+
const watchedExpectedAnswers = watch('expectedAnswers');
|
|
56
|
+
const watchedPoints = watch('points');
|
|
57
|
+
const watchedExplanation = watch('explanation');
|
|
58
|
+
const watchedIsBackup = watch('isBackup');
|
|
59
|
+
// ---------------------------------------------------------------
|
|
60
|
+
// Echo-detection refs
|
|
61
|
+
// ---------------------------------------------------------------
|
|
62
|
+
const previousInitialDataRef = useRef(initialData);
|
|
63
|
+
const isInitializingRef = useRef(false);
|
|
64
|
+
const onChangeRef = useRef(onChange);
|
|
65
|
+
const previousPayloadRef = useRef('');
|
|
66
|
+
useEffect(() => {
|
|
67
|
+
onChangeRef.current = onChange;
|
|
68
|
+
}, [onChange]);
|
|
69
|
+
// Debounced onChange
|
|
70
|
+
const debouncedOnChange = useDebouncedCallback((data) => {
|
|
71
|
+
onChangeRef.current?.(data);
|
|
72
|
+
}, 300);
|
|
73
|
+
// ---------------------------------------------------------------
|
|
74
|
+
// Connect to external validation trigger
|
|
75
|
+
// ---------------------------------------------------------------
|
|
76
|
+
useEffect(() => {
|
|
77
|
+
if (validationRef) {
|
|
78
|
+
validationRef.current = {
|
|
79
|
+
triggerValidation: async () => {
|
|
80
|
+
return await trigger();
|
|
81
|
+
},
|
|
82
|
+
getFormData: () => form.getValues(),
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
}, [validationRef, form, trigger]);
|
|
86
|
+
// ---------------------------------------------------------------
|
|
87
|
+
// Sync form when initialData props change (echo-detection)
|
|
88
|
+
// ---------------------------------------------------------------
|
|
89
|
+
useEffect(() => {
|
|
90
|
+
const normalizedInitialData = {
|
|
91
|
+
audioUrl: apiData?.audioUrl || '',
|
|
92
|
+
images: apiData?.images?.length >= REQUIRED_IMAGE_COUNT
|
|
93
|
+
? apiData.images.slice(0, REQUIRED_IMAGE_COUNT)
|
|
94
|
+
: [...(apiData?.images || []), ...Array(REQUIRED_IMAGE_COUNT - (apiData?.images?.length || 0)).fill('')],
|
|
95
|
+
oddOneOutIndex: apiData?.oddOneOutIndex ?? -1,
|
|
96
|
+
expectedAnswers: apiData?.expectedAnswers?.length > 0 ? apiData.expectedAnswers : [''],
|
|
97
|
+
points: apiData?.points ?? 1,
|
|
98
|
+
explanation: apiData?.explanation || '',
|
|
99
|
+
isBackup: apiData?.isBackup || false,
|
|
100
|
+
};
|
|
101
|
+
const initialDataChanged = JSON.stringify(previousInitialDataRef.current) !== JSON.stringify(initialData);
|
|
102
|
+
if (!initialDataChanged)
|
|
103
|
+
return;
|
|
104
|
+
previousInitialDataRef.current = initialData;
|
|
105
|
+
const currentFormData = {
|
|
106
|
+
audioUrl: watchedAudioUrl,
|
|
107
|
+
images: watchedImages,
|
|
108
|
+
oddOneOutIndex: watchedOddOneOutIndex,
|
|
109
|
+
expectedAnswers: watchedExpectedAnswers,
|
|
110
|
+
points: watchedPoints,
|
|
111
|
+
explanation: watchedExplanation,
|
|
112
|
+
isBackup: watchedIsBackup,
|
|
113
|
+
};
|
|
114
|
+
const isEchoFromOnChange = currentFormData.points === normalizedInitialData.points &&
|
|
115
|
+
currentFormData.explanation === normalizedInitialData.explanation &&
|
|
116
|
+
currentFormData.audioUrl === normalizedInitialData.audioUrl &&
|
|
117
|
+
currentFormData.oddOneOutIndex === normalizedInitialData.oddOneOutIndex &&
|
|
118
|
+
JSON.stringify(currentFormData.images) === JSON.stringify(normalizedInitialData.images) &&
|
|
119
|
+
JSON.stringify(currentFormData.expectedAnswers) === JSON.stringify(normalizedInitialData.expectedAnswers);
|
|
120
|
+
const wasJustSaved = initialData?.isCompleted === true;
|
|
121
|
+
if (isEchoFromOnChange && wasJustSaved)
|
|
122
|
+
return;
|
|
123
|
+
const shouldReset = !isEchoFromOnChange &&
|
|
124
|
+
(normalizedInitialData.audioUrl !== currentFormData.audioUrl ||
|
|
125
|
+
normalizedInitialData.oddOneOutIndex !== currentFormData.oddOneOutIndex ||
|
|
126
|
+
JSON.stringify(normalizedInitialData.images) !== JSON.stringify(currentFormData.images) ||
|
|
127
|
+
JSON.stringify(normalizedInitialData.expectedAnswers) !== JSON.stringify(currentFormData.expectedAnswers));
|
|
128
|
+
if (shouldReset) {
|
|
129
|
+
isInitializingRef.current = true;
|
|
130
|
+
form.reset(normalizedInitialData);
|
|
131
|
+
setTimeout(() => {
|
|
132
|
+
isInitializingRef.current = false;
|
|
133
|
+
}, 150);
|
|
134
|
+
}
|
|
135
|
+
}, [initialData, form, watchedAudioUrl, watchedImages, watchedOddOneOutIndex, watchedExpectedAnswers, watchedExplanation, watchedPoints, watchedIsBackup]);
|
|
136
|
+
// ---------------------------------------------------------------
|
|
137
|
+
// Fire onChange when form values change
|
|
138
|
+
// ---------------------------------------------------------------
|
|
139
|
+
const watchedImagesString = JSON.stringify(watchedImages);
|
|
140
|
+
const watchedExpectedAnswersString = JSON.stringify(watchedExpectedAnswers);
|
|
141
|
+
useEffect(() => {
|
|
142
|
+
if (isInitializingRef.current) {
|
|
143
|
+
const currentPayload = JSON.stringify({
|
|
144
|
+
audioUrl: watchedAudioUrl,
|
|
145
|
+
images: watchedImages,
|
|
146
|
+
oddOneOutIndex: watchedOddOneOutIndex,
|
|
147
|
+
expectedAnswers: watchedExpectedAnswers,
|
|
148
|
+
points: watchedPoints,
|
|
149
|
+
explanation: watchedExplanation,
|
|
150
|
+
isBackup: watchedIsBackup,
|
|
151
|
+
});
|
|
152
|
+
previousPayloadRef.current = currentPayload;
|
|
153
|
+
return;
|
|
154
|
+
}
|
|
155
|
+
const payload = {
|
|
156
|
+
audioUrl: watchedAudioUrl,
|
|
157
|
+
images: watchedImages,
|
|
158
|
+
oddOneOutIndex: watchedOddOneOutIndex,
|
|
159
|
+
expectedAnswers: watchedExpectedAnswers,
|
|
160
|
+
points: watchedPoints,
|
|
161
|
+
explanation: watchedExplanation,
|
|
162
|
+
isBackup: watchedIsBackup,
|
|
163
|
+
};
|
|
164
|
+
const payloadString = JSON.stringify(payload);
|
|
165
|
+
if (previousPayloadRef.current !== payloadString) {
|
|
166
|
+
previousPayloadRef.current = payloadString;
|
|
167
|
+
debouncedOnChange(payload);
|
|
168
|
+
}
|
|
169
|
+
}, [
|
|
170
|
+
watchedAudioUrl,
|
|
171
|
+
watchedImagesString,
|
|
172
|
+
watchedOddOneOutIndex,
|
|
173
|
+
watchedExpectedAnswersString,
|
|
174
|
+
watchedPoints,
|
|
175
|
+
watchedExplanation,
|
|
176
|
+
watchedIsBackup,
|
|
177
|
+
debouncedOnChange,
|
|
178
|
+
]);
|
|
179
|
+
// Track unsaved changes
|
|
180
|
+
useEffect(() => {
|
|
181
|
+
if (onUnsavedChangesChange) {
|
|
182
|
+
onUnsavedChangesChange(form.formState.isDirty);
|
|
183
|
+
}
|
|
184
|
+
}, [form.formState.isDirty, onUnsavedChangesChange]);
|
|
185
|
+
// ---------------------------------------------------------------
|
|
186
|
+
// Handlers
|
|
187
|
+
// ---------------------------------------------------------------
|
|
188
|
+
const handleImageChange = (index, url) => {
|
|
189
|
+
const newImages = [...watchedImages];
|
|
190
|
+
newImages[index] = url;
|
|
191
|
+
form.setValue('images', newImages, { shouldValidate: true, shouldDirty: true });
|
|
192
|
+
};
|
|
193
|
+
const clearImage = (index) => handleImageChange(index, '');
|
|
194
|
+
const addExpectedAnswer = () => {
|
|
195
|
+
const currentAnswers = form.getValues('expectedAnswers');
|
|
196
|
+
form.setValue('expectedAnswers', [...currentAnswers, ''], { shouldValidate: true, shouldDirty: true });
|
|
197
|
+
};
|
|
198
|
+
const handleExpectedAnswerChange = (index, value) => {
|
|
199
|
+
const newAnswers = [...watchedExpectedAnswers];
|
|
200
|
+
newAnswers[index] = value;
|
|
201
|
+
form.setValue('expectedAnswers', newAnswers, { shouldValidate: true, shouldDirty: true });
|
|
202
|
+
};
|
|
203
|
+
const removeExpectedAnswer = (index) => {
|
|
204
|
+
if (watchedExpectedAnswers.length > 1) {
|
|
205
|
+
const newAnswers = watchedExpectedAnswers.filter((_, i) => i !== index);
|
|
206
|
+
form.setValue('expectedAnswers', newAnswers, { shouldValidate: true, shouldDirty: true });
|
|
207
|
+
}
|
|
208
|
+
};
|
|
209
|
+
const uploadedCount = watchedImages.filter(img => img.trim() !== '').length;
|
|
210
|
+
const [isClientMode, setIsClientMode] = useState(false);
|
|
211
|
+
// ─── Preview Mode ────────────────────────────────────────────────
|
|
212
|
+
if (isClientMode) {
|
|
213
|
+
return (_jsxs("div", { className: "space-y-6", children: [_jsx(Card, { children: _jsx(CardHeader, { children: _jsxs("div", { className: "flex items-center justify-between", children: [_jsx(CardTitle, { className: "text-lg font-bold", children: "\uD83D\uDC41\uFE0F Ch\u1EBF \u0111\u1ED9 xem tr\u01B0\u1EDBc (Preview)" }), _jsxs(Button, { variant: "outline", size: "sm", onClick: () => setIsClientMode(false), children: [_jsx(Pencil, { className: "mr-2 h-4 w-4" }), "Quay l\u1EA1i ch\u1EC9nh s\u1EEDa"] })] }) }) }), _jsx(ListenAndSpeakOddOneOutClient, { questionData: {
|
|
214
|
+
audioUrl: watchedAudioUrl,
|
|
215
|
+
images: watchedImages,
|
|
216
|
+
oddOneOutIndex: watchedOddOneOutIndex,
|
|
217
|
+
expectedAnswers: watchedExpectedAnswers,
|
|
218
|
+
points: watchedPoints,
|
|
219
|
+
explanation: watchedExplanation,
|
|
220
|
+
} })] }));
|
|
221
|
+
}
|
|
222
|
+
return (_jsxs("div", { className: "space-y-6", children: [_jsx(CreatorGuide, { colorScheme: "blue", steps: [
|
|
223
|
+
{ text: 'Upload đúng 4 hình ảnh — 3 hình cùng loại và 1 hình khác loại' },
|
|
224
|
+
{ text: 'Upload audio câu hỏi cho mỗi câu — giám khảo hỏi hình nào khác loại và tại sao' },
|
|
225
|
+
{ text: 'Nhập đáp án mong muốn: tên hình khác loại + lý do', highlight: true },
|
|
226
|
+
{ text: 'Thêm giải thích chi tiết vì sao hình đó khác loại' },
|
|
227
|
+
], tips: ['Sự khác biệt nên rõ ràng về chủ đề hoặc danh mục, không phải về hình thức'] }), _jsxs(Card, { className: "overflow-hidden border-0 bg-white shadow-lg shadow-blue-100/50", children: [_jsx("div", { className: "h-1 bg-gradient-to-r from-blue-500 via-indigo-500 to-purple-500" }), _jsx(CardHeader, { className: "pb-4", children: _jsxs("div", { className: "flex items-center justify-between", children: [_jsxs("div", { className: "flex items-center gap-3", children: [_jsx("div", { className: "flex h-9 w-9 shrink-0 items-center justify-center rounded-lg bg-gradient-to-br from-blue-500 to-indigo-600 shadow-sm", children: _jsx(ListChecks, { className: "h-4 w-4 text-white" }) }), _jsxs("div", { children: [_jsx(CardTitle, { className: "text-lg font-bold text-gray-900", children: "Odd One Out \u2014 H\u00ECnh n\u00E0o kh\u00E1c lo\u1EA1i?" }), _jsx("p", { className: "text-sm text-gray-500", children: "H\u1ECDc sinh nh\u00ECn 4 h\u00ECnh v\u00E0 ch\u1EC9 ra h\u00ECnh kh\u00E1c lo\u1EA1i, gi\u1EA3i th\u00EDch l\u00FD do" })] })] }), _jsxs(Button, { type: "button", variant: "outline", size: "sm", onClick: () => setIsClientMode(true), disabled: !watchedAudioUrl, className: "gap-2 border-blue-200 text-blue-600 hover:bg-blue-50 disabled:opacity-50", children: [_jsx(Eye, { className: "h-4 w-4" }), "Preview"] })] }) })] }), _jsxs(Form, { ...form, children: [_jsxs(Card, { className: "overflow-hidden border-0 bg-white shadow-lg shadow-amber-100/50", children: [_jsx("div", { className: "h-1.5 bg-gradient-to-r from-amber-500 via-orange-500 to-red-500" }), _jsx(CardHeader, { className: "pb-4", children: _jsxs("div", { className: "flex items-center justify-between", children: [_jsxs("div", { className: "flex items-center gap-3", children: [_jsx("div", { className: "flex h-10 w-10 shrink-0 items-center justify-center rounded-xl bg-gradient-to-br from-amber-500 to-orange-600 shadow-md", children: _jsx(ImageIcon, { className: "h-5 w-5 text-white" }) }), _jsxs("div", { children: [_jsx(CardTitle, { className: "text-lg font-bold text-gray-900", children: "4 H\u00ECnh \u1EA3nh" }), _jsx("p", { className: "text-sm text-gray-500", children: "Upload \u0111\u00FAng 4 h\u00ECnh \u2014 1 h\u00ECnh s\u1EBD l\u00E0 h\u00ECnh kh\u00E1c lo\u1EA1i" })] })] }), _jsxs("span", { className: `inline-flex items-center rounded-full px-3 py-1 text-xs font-bold ${uploadedCount === 4
|
|
228
|
+
? 'bg-green-100 text-green-700 border border-green-200'
|
|
229
|
+
: 'bg-orange-100 text-orange-600 border border-orange-200'}`, children: [uploadedCount, "/", REQUIRED_IMAGE_COUNT, " \u1EA3nh"] })] }) }), _jsx(CardContent, { children: _jsx(FormField, { control: control, name: "images", render: () => (_jsxs(FormItem, { children: [_jsx("div", { className: "grid grid-cols-2 gap-5", children: Array.from({ length: REQUIRED_IMAGE_COUNT }).map((_, index) => {
|
|
230
|
+
const imgUrl = watchedImages[index] || '';
|
|
231
|
+
const isSelected = watchedOddOneOutIndex === index;
|
|
232
|
+
return (_jsxs(Card, { className: `relative border-2 transition-all duration-300 overflow-hidden ${isSelected
|
|
233
|
+
? 'border-red-400 bg-gradient-to-b from-red-50/60 to-white shadow-lg shadow-red-100/60 ring-1 ring-red-200'
|
|
234
|
+
: 'border-gray-200 hover:border-gray-300 hover:shadow-md'}`, children: [isSelected && (_jsx("div", { className: "absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-red-400 via-rose-500 to-red-400" })), _jsx(CardHeader, { className: "pb-2 pt-3 px-4", children: _jsxs("div", { className: "flex items-center justify-between", children: [_jsxs("span", { className: "text-sm font-semibold text-gray-600 flex items-center gap-2", children: [_jsx("span", { className: `flex h-6 w-6 items-center justify-center rounded-md text-xs font-bold transition-colors duration-200 ${isSelected ? 'bg-red-100 text-red-700' : 'bg-amber-100 text-amber-700'}`, children: index + 1 }), "\u1EA2nh ", index + 1, isSelected && (_jsxs("span", { className: "inline-flex items-center gap-1 rounded-full bg-red-100 border border-red-200 px-2 py-0.5 text-xs font-bold text-red-700 animate-in fade-in slide-in-from-left-1 duration-200", children: [_jsx(CircleOff, { className: "h-3 w-3" }), "Kh\u00E1c lo\u1EA1i"] }))] }), _jsx("div", { className: "flex items-center gap-1", children: imgUrl && (_jsx(Button, { type: "button", variant: "ghost", size: "sm", onClick: () => clearImage(index), className: "h-7 w-7 rounded-full text-red-400 hover:text-red-600 hover:bg-red-50", children: _jsx(Trash2, { className: "h-3.5 w-3.5" }) })) })] }) }), _jsxs(CardContent, { className: "space-y-3 px-4 pb-4", children: [imgUrl ? (_jsx(ImagePreview, { imageUrl: imgUrl, index: index, isOddOneOut: isSelected })) : (_jsx(FileUpload, { id: `odd-one-out-img-${index}`, label: "", accept: "image/*", value: "", onChange: (url) => handleImageChange(index, url), placeholder: `Upload ảnh ${index + 1}`, maxSize: 5, autoUpload: true, prefix: "questions/odd-one-out" })), form.formState.errors?.images?.[index] && (_jsxs("p", { className: "text-sm font-medium text-destructive", children: ["Vui l\u00F2ng t\u1EA3i l\u00EAn \u1EA3nh ", index + 1] })), _jsxs("button", { type: "button", onClick: () => {
|
|
235
|
+
form.setValue('oddOneOutIndex', index, { shouldValidate: true, shouldDirty: true });
|
|
236
|
+
clearErrors('oddOneOutIndex');
|
|
237
|
+
}, className: `group/toggle w-full flex items-center gap-3 rounded-lg px-3 py-2.5 text-left transition-all duration-200 cursor-pointer ${isSelected
|
|
238
|
+
? 'bg-red-50 border border-red-200'
|
|
239
|
+
: 'bg-gray-50 border border-gray-200 hover:bg-red-50/50 hover:border-red-200/60'}`, children: [_jsx("div", { className: `flex h-5 w-5 shrink-0 items-center justify-center rounded-full border-2 transition-all duration-200 ${isSelected
|
|
240
|
+
? 'border-red-500 bg-red-500 shadow-sm shadow-red-200'
|
|
241
|
+
: 'border-gray-300 bg-white group-hover/toggle:border-red-300'}`, children: isSelected && (_jsx(Check, { className: "h-3 w-3 text-white", strokeWidth: 3 })) }), _jsx("div", { className: "flex-1 min-w-0", children: _jsx("span", { className: `text-xs font-semibold transition-colors duration-200 ${isSelected
|
|
242
|
+
? 'text-red-700'
|
|
243
|
+
: 'text-gray-500 group-hover/toggle:text-red-600'}`, children: isSelected ? 'Đã đánh dấu là hình khác loại' : 'Đánh dấu là hình khác loại' }) }), _jsx(CircleOff, { className: `h-3.5 w-3.5 shrink-0 transition-colors duration-200 ${isSelected
|
|
244
|
+
? 'text-red-400'
|
|
245
|
+
: 'text-gray-300 group-hover/toggle:text-red-300'}` })] })] })] }, index));
|
|
246
|
+
}) }), form.formState.errors?.images?.message && (_jsx(FormMessage, {})), form.formState.errors?.oddOneOutIndex?.message && (_jsxs("p", { className: "mt-3 text-sm font-medium text-destructive flex items-center gap-2", children: [_jsx(CircleOff, { className: "h-4 w-4" }), form.formState.errors.oddOneOutIndex.message] }))] })) }) })] }), _jsxs(Card, { className: "overflow-hidden border-0 bg-white shadow-lg shadow-indigo-100/50", children: [_jsx("div", { className: "h-1 bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500" }), _jsx(CardHeader, { className: "pb-4", children: _jsxs("div", { className: "flex items-center gap-3", children: [_jsx("div", { className: "flex h-9 w-9 shrink-0 items-center justify-center rounded-lg bg-gradient-to-br from-indigo-500 to-purple-600 shadow-sm", children: _jsx(HelpCircle, { className: "h-4 w-4 text-white" }) }), _jsxs("div", { children: [_jsx(CardTitle, { className: "text-lg font-bold text-gray-900", children: "C\u00E2u h\u1ECFi: H\u00ECnh n\u00E0o kh\u00E1c lo\u1EA1i?" }), _jsx("p", { className: "text-sm text-gray-500", children: "H\u1ECDc sinh nghe c\u00E2u h\u1ECFi, nh\u00ECn 4 h\u00ECnh v\u00E0 n\u00F3i h\u00ECnh n\u00E0o kh\u00E1c lo\u1EA1i + l\u00FD do" })] })] }) }), _jsxs(CardContent, { className: "space-y-6", children: [_jsx("div", { className: "rounded-xl border border-gray-200 bg-gray-50 p-4", children: _jsxs("div", { className: "flex flex-col md:flex-row gap-6", children: [_jsx("div", { className: "flex-1", children: _jsx(PointsInput, { ...form.register('points', { valueAsNumber: true }), error: form.formState.errors?.points?.message }) }), _jsx("div", { className: "flex-1 flex flex-col justify-center pt-2" })] }) }), _jsxs("div", { className: "space-y-2", children: [_jsxs(Label, { className: "flex items-center gap-2 text-sm font-semibold text-gray-800", children: [_jsx(Volume2, { className: "h-4 w-4 text-indigo-500" }), "File Audio c\u00E2u h\u1ECFi ", _jsx("span", { className: "text-red-500", children: "*" })] }), _jsx(FormField, { control: control, name: "audioUrl", render: ({ field }) => (_jsxs(FormItem, { children: [_jsx(FormControl, { children: _jsx(FileUpload, { id: "audio-odd-one-out", label: "", accept: "audio/*", value: field.value, onChange: (url) => { field.onChange(url); clearErrors('audioUrl'); }, maxSize: 10, placeholder: "T\u1EA3i l\u00EAn file \u00E2m thanh (mp3, wav...)", autoUpload: true, prefix: "listen-and-speak" }) }), _jsx(FormMessage, {})] })) })] })] })] }), _jsxs(Card, { className: "overflow-hidden border-0 bg-white shadow-lg shadow-green-100/50", children: [_jsx("div", { className: "h-1 bg-gradient-to-r from-green-400 to-emerald-500" }), _jsx(CardHeader, { className: "pb-4", children: _jsxs("div", { className: "flex items-center justify-between", children: [_jsxs("div", { className: "flex items-center gap-3", children: [_jsx("div", { className: "flex h-9 w-9 shrink-0 items-center justify-center rounded-lg bg-gradient-to-br from-green-500 to-emerald-600 shadow-sm", children: _jsx(MessageSquareText, { className: "h-4 w-4 text-white" }) }), _jsxs("div", { children: [_jsx(CardTitle, { className: "text-lg font-bold text-gray-900", children: "\u0110\u00E1p \u00E1n mong mu\u1ED1n" }), _jsxs("p", { className: "text-sm text-gray-500", children: [watchedExpectedAnswers.filter(a => a.trim()).length, " \u0111\u00E1p \u00E1n \u0111\u00E3 nh\u1EADp"] })] })] }), _jsxs(Button, { type: "button", variant: "outline", size: "sm", onClick: addExpectedAnswer, className: "gap-2 border-green-200 text-green-600 hover:bg-green-50", children: [_jsx(Plus, { className: "h-4 w-4" }), "Th\u00EAm \u0111\u00E1p \u00E1n"] })] }) }), _jsxs(CardContent, { className: "space-y-4", children: [_jsxs("div", { className: "flex items-start gap-2 rounded-lg border border-blue-100 bg-blue-50/60 px-3 py-2 text-xs text-blue-700", children: [_jsx(Info, { className: "mt-0.5 h-3.5 w-3.5 shrink-0" }), _jsx("span", { children: "H\u1ECDc sinh ph\u1EA3i ch\u1EC9 ra h\u00ECnh kh\u00E1c lo\u1EA1i V\u00C0 gi\u1EA3i th\u00EDch l\u00FD do t\u1EA1i sao." })] }), _jsx(FormField, { control: control, name: "expectedAnswers", render: () => (_jsxs(FormItem, { children: [_jsx("div", { className: "space-y-3", children: watchedExpectedAnswers.map((answer, index) => (_jsxs("div", { className: "flex items-start gap-3 group/answer", children: [_jsx("div", { className: "flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-lg bg-green-100 text-green-700 text-sm font-bold mt-1", children: index + 1 }), _jsxs("div", { className: "flex-1", children: [_jsx(Input, { placeholder: `VD: ${index === 0 ? 'The beach — because the others are classrooms.' : 'It\'s the odd one out because...'}`, value: answer || '', onChange: (e) => handleExpectedAnswerChange(index, e.target.value), className: "border-gray-200 focus:border-green-300 focus:ring-green-200" }), form.formState.errors?.expectedAnswers?.[index]?.message && (_jsx("p", { className: "mt-1 text-sm text-red-500", children: form.formState.errors.expectedAnswers[index]?.message }))] }), watchedExpectedAnswers.length > 1 && (_jsx(Button, { type: "button", variant: "ghost", size: "sm", onClick: () => removeExpectedAnswer(index), className: "mt-0.5 h-8 w-8 rounded-full text-gray-400 hover:text-red-600 hover:bg-red-50 opacity-0 group-hover/answer:opacity-100 transition-opacity", "aria-label": `Xóa đáp án ${index + 1}`, children: _jsx(Trash2, { className: "h-4 w-4" }) }))] }, index))) }), form.formState.errors?.expectedAnswers?.message && (_jsx(FormMessage, {}))] })) })] })] }), _jsxs(Card, { className: "overflow-hidden border-0 bg-white shadow-lg shadow-amber-100/50", children: [_jsx("div", { className: "h-1 bg-gradient-to-r from-amber-400 to-orange-400" }), _jsx(CardHeader, { className: "pb-4", children: _jsxs("div", { className: "flex items-center gap-3", children: [_jsx("div", { className: "flex h-9 w-9 items-center justify-center rounded-lg bg-gradient-to-br from-amber-500 to-orange-500 shadow-sm", children: _jsx(BookOpen, { className: "h-4 w-4 text-white" }) }), _jsxs("div", { children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx(CardTitle, { className: "text-lg font-semibold text-gray-800", children: "Gi\u1EA3i th\u00EDch" }), _jsx("span", { className: "inline-flex items-center rounded-full border border-amber-200 bg-amber-50 px-2.5 py-0.5 text-xs font-medium text-amber-600", children: "Kh\u00F4ng b\u1EAFt bu\u1ED9c" })] }), _jsx("p", { className: "text-sm text-gray-500 mt-0.5", children: "Gi\u1EA3i th\u00EDch cho \u0111\u00E1p \u00E1n \u0111\u00FAng \u2014 hi\u1EC3n th\u1ECB sau khi h\u1ECDc sinh ho\u00E0n th\u00E0nh c\u00E2u h\u1ECFi" })] })] }) }), _jsx(CardContent, { children: _jsx(Textarea, { ...form.register('explanation'), placeholder: "VD: C\u00E2u tr\u1EA3 l\u1EDDi \u0111\u00FAng l\u00E0... v\u00EC...", className: "min-h-[80px] border-gray-200 bg-white transition-all focus:border-amber-300 focus:ring-amber-200 resize-none", rows: 3 }) })] })] })] }));
|
|
247
|
+
}
|
|
248
|
+
//# sourceMappingURL=ListenAndSpeakOddOneOutCreator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ListenAndSpeakOddOneOutCreator.js","sourceRoot":"","sources":["../../../../../src/components/questions/types/listen-and-speak-odd-one-out/ListenAndSpeakOddOneOutCreator.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../../../../src/components/questions/types/listen-and-speak-odd-one-out/register.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAGhF,eAAO,MAAM,mCAAmC,EAAE,wBA8DjD,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { ListenAndSpeakOddOneOutCreator } from './ListenAndSpeakOddOneOutCreator';
|
|
2
|
+
export const listenAndSpeakOddOneOutRegistration = {
|
|
3
|
+
component: ListenAndSpeakOddOneOutCreator,
|
|
4
|
+
wrapOnSave: (data, ctx) => ({
|
|
5
|
+
type: ctx.questionType,
|
|
6
|
+
content: {
|
|
7
|
+
audioUrl: data.audioUrl,
|
|
8
|
+
images: data.images || [],
|
|
9
|
+
isBackup: data.isBackup || false,
|
|
10
|
+
},
|
|
11
|
+
points: data?.points ?? ctx.state.points ?? 1,
|
|
12
|
+
level: ctx.state.level,
|
|
13
|
+
difficulty: ctx.state.difficulty,
|
|
14
|
+
skill: ctx.state.skill,
|
|
15
|
+
answer: {
|
|
16
|
+
expectedAnswers: data.expectedAnswers || [],
|
|
17
|
+
oddOneOutIndex: data.oddOneOutIndex ?? -1,
|
|
18
|
+
},
|
|
19
|
+
explanation: data?.explanation || '',
|
|
20
|
+
}),
|
|
21
|
+
wrapOnChange: (data, ctx) => ({
|
|
22
|
+
type: ctx.questionType,
|
|
23
|
+
content: {
|
|
24
|
+
audioUrl: data.audioUrl,
|
|
25
|
+
images: data.images || [],
|
|
26
|
+
isBackup: data.isBackup || false,
|
|
27
|
+
},
|
|
28
|
+
points: data?.points ?? ctx.state.points ?? 1,
|
|
29
|
+
level: ctx.state.level,
|
|
30
|
+
difficulty: ctx.state.difficulty,
|
|
31
|
+
skill: ctx.state.skill,
|
|
32
|
+
answer: {
|
|
33
|
+
expectedAnswers: data.expectedAnswers || [],
|
|
34
|
+
oddOneOutIndex: data.oddOneOutIndex ?? -1,
|
|
35
|
+
},
|
|
36
|
+
explanation: data?.explanation || '',
|
|
37
|
+
}),
|
|
38
|
+
transformInitialData: (data) => {
|
|
39
|
+
const content = data?.content;
|
|
40
|
+
const answer = data?.answer || data?.correctAnswer || data?.correct_answer;
|
|
41
|
+
const points = data?.total_points
|
|
42
|
+
? parseFloat(data.total_points)
|
|
43
|
+
: (data?.points || content?.points || answer?.points || 1);
|
|
44
|
+
const explanation = data?.explanation || content?.explanation || answer?.explanation || '';
|
|
45
|
+
return {
|
|
46
|
+
audioUrl: content?.audioUrl || answer?.audioUrl || '',
|
|
47
|
+
images: content?.images || answer?.images || ['', '', '', ''],
|
|
48
|
+
oddOneOutIndex: answer?.oddOneOutIndex ?? content?.oddOneOutIndex ?? -1,
|
|
49
|
+
expectedAnswers: answer?.expectedAnswers || [],
|
|
50
|
+
explanation,
|
|
51
|
+
points,
|
|
52
|
+
isBackup: content?.isBackup || false,
|
|
53
|
+
};
|
|
54
|
+
},
|
|
55
|
+
getExtraProps: (ctx) => ({
|
|
56
|
+
onUnsavedChangesChange: ctx.onUnsavedChangesChange,
|
|
57
|
+
validationRef: ctx.validationRef,
|
|
58
|
+
}),
|
|
59
|
+
};
|
|
60
|
+
//# sourceMappingURL=register.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"register.js","sourceRoot":"","sources":["../../../../../src/components/questions/types/listen-and-speak-odd-one-out/register.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../../../../src/components/questions/types/listen-and-speak-odd-one-out/transform.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6CAA6C,CAAC;AAEpF,eAAO,MAAM,gCAAgC,EAAE,gBAoB9C,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export const transformListenAndSpeakOddOneOut = (question) => {
|
|
2
|
+
const contentData = question.content;
|
|
3
|
+
const answerData = question.answer;
|
|
4
|
+
const expectedAnswers = answerData?.expectedAnswers || [];
|
|
5
|
+
const oddOneOutIndex = answerData?.oddOneOutIndex ?? contentData?.oddOneOutIndex ?? -1;
|
|
6
|
+
const apiContent = {
|
|
7
|
+
audioUrl: contentData?.audioUrl || answerData?.audioUrl || '',
|
|
8
|
+
images: contentData?.images || answerData?.images || [],
|
|
9
|
+
isBackup: contentData?.isBackup || answerData?.isBackup || false,
|
|
10
|
+
};
|
|
11
|
+
return {
|
|
12
|
+
apiContent,
|
|
13
|
+
apiCorrectAnswer: {
|
|
14
|
+
expectedAnswers: expectedAnswers,
|
|
15
|
+
oddOneOutIndex: oddOneOutIndex,
|
|
16
|
+
},
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=transform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transform.js","sourceRoot":"","sources":["../../../../../src/components/questions/types/listen-and-speak-odd-one-out/transform.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,gCAAgC,GAAqB,CAAC,QAAQ,EAAE,EAAE;IAC3E,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAc,CAAC;IAC5C,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAa,CAAC;IAE1C,MAAM,eAAe,GAAG,UAAU,EAAE,eAAe,IAAI,EAAE,CAAC;IAC1D,MAAM,cAAc,GAAG,UAAU,EAAE,cAAc,IAAI,WAAW,EAAE,cAAc,IAAI,CAAC,CAAC,CAAC;IAEvF,MAAM,UAAU,GAAQ;QACpB,QAAQ,EAAE,WAAW,EAAE,QAAQ,IAAI,UAAU,EAAE,QAAQ,IAAI,EAAE;QAC7D,MAAM,EAAE,WAAW,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,IAAI,EAAE;QACvD,QAAQ,EAAE,WAAW,EAAE,QAAQ,IAAI,UAAU,EAAE,QAAQ,IAAI,KAAK;KACnE,CAAC;IAEF,OAAO;QACH,UAAU;QACV,gBAAgB,EAAE;YACd,eAAe,EAAE,eAAe;YAChC,cAAc,EAAE,cAAc;SACjC;KACJ,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { ListenAndSpeakQuestionListClientProps } from '../../_shared/types/listen-and-speak-question-list.type';
|
|
3
|
+
export declare function ListenAndSpeakQuestionListClient({ questionData, isReviewMode, }: ListenAndSpeakQuestionListClientProps): React.JSX.Element;
|
|
4
|
+
//# sourceMappingURL=ListenAndSpeakQuestionListClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ListenAndSpeakQuestionListClient.d.ts","sourceRoot":"","sources":["../../../../../src/components/questions/types/listen-and-speak-question-list/ListenAndSpeakQuestionListClient.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,0EAA0E,CAAC;AA+CtI,wBAAgB,gCAAgC,CAAC,EAC7C,YAAY,EACZ,YAAoB,GACvB,EAAE,qCAAqC,qBAoIvC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { Mic, Volume2, CheckCircle2, Play, Pause, ListChecks, Info } from 'lucide-react';
|
|
4
|
+
import { Button } from '../../../../components/ui/button';
|
|
5
|
+
import { usePresignedFileUrl, useAudioPreview } from '../../../../shared/lib/hooks';
|
|
6
|
+
import { cn } from '../../../../shared/lib/utils';
|
|
7
|
+
// ─── Sub-component: Custom Audio Player ──────────────────────────────────────
|
|
8
|
+
function QuestionAudioPlayer({ audioUrl }) {
|
|
9
|
+
const { previewUrl } = usePresignedFileUrl(audioUrl);
|
|
10
|
+
const { isPlaying, currentTime, duration, progressPercentage, handlePlayPause, handleProgressClick, formatTime, } = useAudioPreview(previewUrl);
|
|
11
|
+
return (_jsxs("div", { className: "flex items-center gap-3 rounded-lg bg-gradient-to-r from-indigo-50 to-purple-50 border border-indigo-200 px-4 py-2.5", children: [_jsx(Button, { variant: "outline", size: "icon", onClick: handlePlayPause, disabled: !previewUrl, className: "h-8 w-8 border-indigo-300 text-indigo-600 hover:bg-indigo-100", children: isPlaying ? _jsx(Pause, { className: "h-3.5 w-3.5" }) : _jsx(Play, { className: "h-3.5 w-3.5" }) }), _jsxs("div", { className: "text-muted-foreground min-w-[70px] text-xs", children: [formatTime(currentTime), " / ", formatTime(duration)] }), _jsx("div", { className: "bg-indigo-200 relative h-1.5 flex-1 cursor-pointer rounded-full", onClick: handleProgressClick, children: _jsx("div", { className: "bg-indigo-500 absolute top-0 left-0 h-full rounded-full transition-all", style: { width: `${progressPercentage}%` } }) }), _jsx(Volume2, { className: "h-4 w-4 text-indigo-400" })] }));
|
|
12
|
+
}
|
|
13
|
+
// ─── Main Client Component ───────────────────────────────────────────────────
|
|
14
|
+
export function ListenAndSpeakQuestionListClient({ questionData, isReviewMode = false, }) {
|
|
15
|
+
const { audioUrl, expectedAnswers, activeQuestionId, questions = [], explanation } = questionData;
|
|
16
|
+
return (_jsxs("div", { className: "space-y-4", children: [questionData.isBackup && (_jsxs("div", { className: "inline-flex self-center items-center gap-1.5 px-3 py-1.5 rounded-md bg-amber-50 text-amber-700 border border-amber-200 text-xs font-bold shadow-sm", children: [_jsx("span", { children: "\uD83D\uDD04" }), " C\u00E2u h\u1ECFi d\u1EF1 ph\u00F2ng"] })), _jsxs("div", { className: "overflow-hidden rounded-xl border border-gray-200 bg-white shadow-sm", children: [_jsx("div", { className: "flex items-center justify-between border-b border-gray-100 bg-gradient-to-r from-indigo-50 to-blue-50 px-5 py-3", children: _jsxs("div", { className: "flex items-center gap-3", children: [_jsx("div", { className: "flex h-8 w-8 items-center justify-center rounded-lg bg-gradient-to-br from-indigo-500 to-blue-600 text-white shadow-sm", children: _jsx(ListChecks, { className: "h-4 w-4" }) }), _jsx("span", { className: "text-sm font-medium text-gray-700", children: "Nghe v\u00E0 n\u00F3i (Danh s\u00E1ch c\u00E2u h\u1ECFi)" })] }) }), _jsxs("div", { className: "p-5 space-y-5", children: [audioUrl ? (_jsx(QuestionAudioPlayer, { audioUrl: audioUrl })) : (_jsxs("div", { className: "flex items-center gap-2 rounded-lg border border-gray-200 bg-gray-50 px-4 py-3", children: [_jsx(Volume2, { className: "h-4 w-4 text-gray-400" }), _jsx("span", { className: "text-xs text-gray-400", children: "Ch\u01B0a c\u00F3 audio c\u00E2u h\u1ECFi" })] })), questions.length > 0 ? (_jsx("div", { className: "rounded-xl border border-gray-100 bg-gradient-to-b from-gray-50/80 to-white p-5 space-y-2.5", children: questions.map((q, idx) => {
|
|
17
|
+
const isActive = q.id === activeQuestionId;
|
|
18
|
+
return (_jsxs("div", { className: cn('flex items-center gap-3 rounded-lg px-4 py-3 transition-all duration-200', isActive
|
|
19
|
+
? 'bg-blue-50 border-[2px] border-blue-300 shadow-sm shadow-blue-100/50'
|
|
20
|
+
: 'bg-white border border-gray-200 hover:border-gray-300 hover:shadow-sm'), children: [_jsx("div", { className: cn('flex h-7 w-7 flex-shrink-0 items-center justify-center rounded-lg text-xs font-bold shadow-sm', isActive
|
|
21
|
+
? 'bg-blue-500 text-white'
|
|
22
|
+
: 'bg-gray-100 text-gray-500 border border-gray-200'), children: idx + 1 }), _jsx("span", { className: cn('text-sm font-medium flex-1', isActive ? 'text-blue-800' : 'text-gray-700'), children: q.text || _jsx("span", { className: "italic text-gray-400", children: "(Ch\u01B0a nh\u1EADp n\u1ED9i dung)" }) }), isActive && (_jsxs("div", { className: "flex items-center gap-1.5", children: [_jsx("span", { className: "text-[10px] font-medium text-blue-500 animate-pulse", children: "\u0110ang h\u1ECFi" }), _jsx(CheckCircle2, { className: "h-4 w-4 text-blue-500" })] }))] }, q.id));
|
|
23
|
+
}) })) : (
|
|
24
|
+
/* Empty state */
|
|
25
|
+
_jsxs("div", { className: "flex flex-col items-center justify-center py-10 px-4 rounded-xl border-2 border-dashed border-gray-200 bg-gray-50/50", children: [_jsx(ListChecks, { className: "h-12 w-12 text-gray-300 mb-3" }), _jsx("p", { className: "text-sm font-medium text-gray-500", children: "Ch\u01B0a c\u00F3 c\u00E2u h\u1ECFi n\u00E0o" }), _jsx("p", { className: "text-xs text-gray-400 mt-1", children: "Danh s\u00E1ch c\u00E2u h\u1ECFi s\u1EBD hi\u1EC3n th\u1ECB t\u1EA1i \u0111\u00E2y" })] })), _jsxs("div", { className: "flex items-center gap-3 rounded-lg border border-dashed border-gray-300 bg-gray-50/80 px-4 py-3", children: [_jsx("div", { className: "flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-full bg-indigo-50 ring-2 ring-indigo-100/50", children: _jsx(Mic, { className: "w-4 h-4 text-indigo-400" }) }), _jsx("p", { className: "text-xs text-gray-400", children: "H\u1ECDc sinh s\u1EBD nh\u1EA5n n\u00FAt ghi \u00E2m v\u00E0 n\u00F3i c\u00E2u tr\u1EA3 l\u1EDDi t\u1EA1i \u0111\u00E2y" })] }), isReviewMode && expectedAnswers && expectedAnswers.length > 0 && (_jsxs("div", { className: "rounded-xl border border-green-200 bg-green-50/80 p-4", children: [_jsxs("div", { className: "flex items-center gap-2 mb-3", children: [_jsx(CheckCircle2, { className: "h-4 w-4 text-green-600" }), _jsx("h4", { className: "text-sm font-semibold text-green-800", children: "C\u00E1c \u0111\u00E1p \u00E1n mong mu\u1ED1n" })] }), _jsx("div", { className: "space-y-2", children: expectedAnswers.map((answer, index) => (_jsxs("div", { className: "flex items-center gap-2.5 rounded-lg bg-white/70 border border-green-100 px-3 py-2", children: [_jsx("span", { className: "flex h-6 w-6 flex-shrink-0 items-center justify-center rounded-full bg-green-100 text-green-700 text-xs font-bold", children: index + 1 }), _jsx("span", { className: "text-sm text-green-800", children: answer })] }, index))) })] })), isReviewMode && explanation && (_jsxs("div", { className: "rounded-xl border border-indigo-200 bg-indigo-50 p-4", children: [_jsxs("div", { className: "flex items-center gap-2 mb-2", children: [_jsx(Info, { className: "h-4 w-4 text-indigo-600" }), _jsx("p", { className: "text-sm font-semibold text-indigo-800", children: "Gi\u1EA3i th\u00EDch" })] }), _jsx("p", { className: "text-sm text-indigo-700 leading-relaxed", children: explanation })] }))] })] })] }));
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=ListenAndSpeakQuestionListClient.js.map
|