@tinyweb_dev/oe-exam-sdk 0.2.12 → 0.2.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/exams/take/ExamTakingPageContainer.js +6 -0
- package/dist/components/exams/take/components/QuestionRenderer.js +13 -3
- package/dist/components/exams/take/components/question-renderers/ChooseThenAnswerGroupRenderer.d.ts +14 -0
- package/dist/components/exams/take/components/question-renderers/ChooseThenAnswerGroupRenderer.js +32 -0
- package/dist/components/exams/take/components/question-renderers/MoversAnswerTheQuestionRenderer.d.ts +1 -1
- package/dist/components/exams/take/components/question-renderers/MoversAnswerTheQuestionRenderer.js +10 -2
- package/dist/components/exams/take/components/question-renderers/MoversFillInBlankGroupRenderer.d.ts +1 -1
- package/dist/components/exams/take/components/question-renderers/MoversFillInBlankGroupRenderer.js +2 -2
- package/dist/components/exams/take/components/question-renderers/SortWordsIntoCategoriesRenderer.d.ts +16 -0
- package/dist/components/exams/take/components/question-renderers/SortWordsIntoCategoriesRenderer.js +23 -0
- package/dist/components/exams/take/components/question-renderers/index.d.ts +2 -0
- package/dist/components/exams/take/components/question-renderers/index.js +2 -0
- package/dist/components/exams/take/utils/answer-transformers.js +34 -1
- package/dist/components/exams/take/utils/question-transformers.d.ts +43 -4
- package/dist/components/exams/take/utils/question-transformers.js +71 -1
- package/dist/components/questions/_shared/config/question-types.config.js +12 -0
- package/dist/components/questions/_shared/types/answer-the-question-group.type.d.ts +7 -0
- package/dist/components/questions/_shared/types/answer-the-question-group.type.js +19 -1
- package/dist/components/questions/_shared/types/answer-the-question.type.d.ts +3 -1
- package/dist/components/questions/_shared/types/answer-the-question.type.js +19 -1
- package/dist/components/questions/_shared/types/choose-then-answer-group.type.d.ts +47 -0
- package/dist/components/questions/_shared/types/choose-then-answer-group.type.js +2 -0
- package/dist/components/questions/_shared/types/fill-in-blank-group.type.d.ts +14 -2
- package/dist/components/questions/_shared/types/index.d.ts +2 -0
- package/dist/components/questions/_shared/types/index.js +2 -0
- package/dist/components/questions/_shared/types/match-word-to-picture-group.type.d.ts +10 -1
- package/dist/components/questions/_shared/types/match-word-to-picture-group.type.js +19 -0
- package/dist/components/questions/_shared/types/matching-with-lines-group.type.d.ts +9 -2
- package/dist/components/questions/_shared/types/sort-words-into-categories.type.d.ts +43 -0
- package/dist/components/questions/_shared/types/sort-words-into-categories.type.js +1 -0
- package/dist/components/questions/components/QuestionSearchDropdown.js +2 -0
- package/dist/components/questions/components/QuestionTypeSelector.js +2 -0
- package/dist/components/questions/creator/question-type-registry.js +4 -0
- package/dist/components/questions/types/answer-the-question/AnswerTheQuestionClient.js +30 -6
- package/dist/components/questions/types/answer-the-question/map-answer-the-question-data.d.ts +2 -0
- package/dist/components/questions/types/answer-the-question/map-answer-the-question-data.js +56 -0
- package/dist/components/questions/types/answer-the-question/transform.js +9 -3
- package/dist/components/questions/types/answer-the-question-group/AnswerTheQuestionGroupClient.js +47 -3
- package/dist/components/questions/types/answer-the-question-group/AnswerTheQuestionGroupCreator.js +8 -2
- package/dist/components/questions/types/answer-the-question-group/map-answer-the-question-group-data.js +21 -2
- package/dist/components/questions/types/answer-the-question-group/transform.js +10 -1
- package/dist/components/questions/types/choose-then-answer-group/ChooseThenAnswerGroupClient.d.ts +2 -0
- package/dist/components/questions/types/choose-then-answer-group/ChooseThenAnswerGroupClient.js +34 -0
- package/dist/components/questions/types/choose-then-answer-group/ChooseThenAnswerGroupCreator.d.ts +2 -0
- package/dist/components/questions/types/choose-then-answer-group/ChooseThenAnswerGroupCreator.js +174 -0
- package/dist/components/questions/types/choose-then-answer-group/index.d.ts +5 -0
- package/dist/components/questions/types/choose-then-answer-group/index.js +5 -0
- package/dist/components/questions/types/choose-then-answer-group/map-choose-then-answer-group-data.d.ts +11 -0
- package/dist/components/questions/types/choose-then-answer-group/map-choose-then-answer-group-data.js +127 -0
- package/dist/components/questions/types/choose-then-answer-group/register.d.ts +3 -0
- package/dist/components/questions/types/choose-then-answer-group/register.js +37 -0
- package/dist/components/questions/types/choose-then-answer-group/transform.d.ts +2 -0
- package/dist/components/questions/types/choose-then-answer-group/transform.js +37 -0
- package/dist/components/questions/types/fill-in-blank-group/FillInBlankGroupClient.js +51 -16
- package/dist/components/questions/types/fill-in-blank-group/FillInBlankGroupCreator.js +52 -20
- package/dist/components/questions/types/fill-in-blank-group/blank-utils.d.ts +23 -0
- package/dist/components/questions/types/fill-in-blank-group/blank-utils.js +89 -0
- package/dist/components/questions/types/fill-in-blank-group/map-fill-in-blank-group-data.js +24 -6
- package/dist/components/questions/types/fill-in-blank-group/transform.js +18 -3
- package/dist/components/questions/types/match-word-to-picture-group/MatchWordToPictureGroupClient.js +41 -12
- package/dist/components/questions/types/match-word-to-picture-group/MatchWordToPictureGroupCreator.js +23 -8
- package/dist/components/questions/types/match-word-to-picture-group/map-match-word-to-picture-group-data.js +11 -2
- package/dist/components/questions/types/match-word-to-picture-group/transform.js +25 -9
- package/dist/components/questions/types/matching-with-lines-group/MatchingWithLinesBoard.d.ts +4 -2
- package/dist/components/questions/types/matching-with-lines-group/MatchingWithLinesBoard.js +4 -4
- package/dist/components/questions/types/matching-with-lines-group/MatchingWithLinesGroupClient.js +13 -2
- package/dist/components/questions/types/matching-with-lines-group/MatchingWithLinesGroupCreator.js +25 -13
- package/dist/components/questions/types/matching-with-lines-group/map-matching-with-lines-group-data.js +19 -2
- package/dist/components/questions/types/matching-with-lines-group/transform.js +29 -13
- package/dist/components/questions/types/sort-words-into-categories/SortWordsIntoCategoriesBoard.d.ts +12 -0
- package/dist/components/questions/types/sort-words-into-categories/SortWordsIntoCategoriesBoard.js +74 -0
- package/dist/components/questions/types/sort-words-into-categories/SortWordsIntoCategoriesClient.d.ts +2 -0
- package/dist/components/questions/types/sort-words-into-categories/SortWordsIntoCategoriesClient.js +24 -0
- package/dist/components/questions/types/sort-words-into-categories/SortWordsIntoCategoriesCreator.d.ts +2 -0
- package/dist/components/questions/types/sort-words-into-categories/SortWordsIntoCategoriesCreator.js +171 -0
- package/dist/components/questions/types/sort-words-into-categories/index.d.ts +4 -0
- package/dist/components/questions/types/sort-words-into-categories/index.js +4 -0
- package/dist/components/questions/types/sort-words-into-categories/map-sort-words-into-categories-data.d.ts +11 -0
- package/dist/components/questions/types/sort-words-into-categories/map-sort-words-into-categories-data.js +153 -0
- package/dist/components/questions/types/sort-words-into-categories/register.d.ts +3 -0
- package/dist/components/questions/types/sort-words-into-categories/register.js +37 -0
- package/dist/components/questions/types/sort-words-into-categories/transform.d.ts +2 -0
- package/dist/components/questions/types/sort-words-into-categories/transform.js +33 -0
- package/dist/components/questions/types/word-fill-structured-form/WordFillStructuredFormClient.js +18 -0
- package/dist/components/questions/viewer/AnswerTheQuestionViewer.d.ts +9 -0
- package/dist/components/questions/viewer/AnswerTheQuestionViewer.js +8 -0
- package/dist/components/questions/viewer/ChooseThenAnswerGroupViewer.d.ts +10 -0
- package/dist/components/questions/viewer/ChooseThenAnswerGroupViewer.js +39 -0
- package/dist/components/questions/viewer/QuestionViewer.js +13 -2
- package/dist/components/questions/viewer/SortWordsIntoCategoriesViewer.d.ts +10 -0
- package/dist/components/questions/viewer/SortWordsIntoCategoriesViewer.js +27 -0
- package/dist/components/questions/viewer/index.d.ts +3 -0
- package/dist/components/questions/viewer/index.js +3 -0
- package/dist/components/results/renderers/ReviewAnswerTheQuestionGroupRenderer.d.ts +2 -1
- package/dist/components/results/renderers/ReviewAnswerTheQuestionGroupRenderer.js +12 -3
- package/dist/components/results/renderers/review-question-body-dedicated.js +1 -1
- package/dist/components/results/renderers/review-question-body-movers.js +24 -2
- package/dist/components/results/review-data.js +28 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/shared/constants/question-skills.js +4 -0
- package/dist/shared/lib/utils/question-reverse-transform.js +126 -6
- package/dist/shared/lib/utils/question-transform-types.d.ts +1 -1
- package/dist/shared/lib/utils/question-transform.js +4 -0
- package/dist/shared/types/common.types.d.ts +1 -1
- package/dist/shared/types/questions/answer-the-question-group.d.ts +3 -0
- package/dist/shared/types/questions/choose-then-answer-group.d.ts +46 -0
- package/dist/shared/types/questions/choose-then-answer-group.js +1 -0
- package/dist/shared/types/questions/fill-in-blank-group.d.ts +9 -2
- package/dist/shared/types/questions/index.d.ts +2 -0
- package/dist/shared/types/questions/index.js +3 -0
- package/dist/shared/types/questions/match-word-to-picture-group.d.ts +7 -1
- package/dist/shared/types/questions/matching-with-lines-group.d.ts +7 -2
- package/dist/shared/types/questions/sort-words-into-categories.d.ts +37 -0
- package/dist/shared/types/questions/sort-words-into-categories.js +1 -0
- package/package.json +1 -1
|
@@ -29,7 +29,7 @@ export declare enum StudentSelectionType {
|
|
|
29
29
|
}
|
|
30
30
|
export type ResultStatus = 'PENDING' | 'PARTIAL_GRADED' | 'GRADED';
|
|
31
31
|
export type StudentStatus = 'NOT_STARTED' | 'IN_PROGRESS' | 'SUBMITTED';
|
|
32
|
-
export type QuestionType = 'FILL_IN_BLANK' | 'TRUE_FALSE' | 'MATCHING' | 'ORDERING' | 'LISTENING' | 'COLORING' | 'ESSAY' | 'LISTEN_AND_FILL_IN_THE_BLANK_WITH_IMAGE' | 'LISTEN_AND_TICK_ANSWER' | 'LISTEN_AND_FILL_NAME_NUMBER' | 'LISTENING_FILL_BLANK' | 'LISTENING_COLOR' | 'TICK_TRUE_OR_FALSE' | 'TICK_YES_OR_NO' | 'READING_TICK_CROSS' | 'ARRANGE_LETTERS_INTO_WORDS' | 'READ_PASSAGE_AND_COMPLETE_STORY' | 'CLOZE_TEST_WITH_TICK_BOX' | 'READ_AND_CHOOSE_APPROPRIATE_WORD' | 'WRITE_SHORT_PARAGRAPH' | 'LABEL_THE_PICTURE' | 'READING_LETTER_ARRANGE' | 'READING_PASSAGE_FILL' | 'FILL_BLANK' | 'FILL_MISSING_WORDS_IN_GRID' | 'LOOK_PICTURE_CHOOSE_CORRECT_ANSWER' | 'LOOK_PICTURE_FILL_BLANK_CHOOSE_ANSWER' | 'LOOK_PICTURE_FILL_WORD_HINT' | 'LABEL_THE_PICTURE' | 'READ_AND_COLOR_OBJECTS' | 'IMAGE_OBJECT_MATCHING' | 'READ_PASSAGE_AND_ANSWER_QUESTIONS' | 'CHOOSE_THE_CORRECT_ANSWER' | 'CHOOSE_THE_CORRECT_ANSWER_GROUP' | 'TRUE_FALSE_GROUP' | 'TRUE_FALSE_CORRECT_GROUP' | 'FILL_IN_BLANK_GROUP' | 'MATCHING_WITH_LINES_GROUP' | 'CROSS_OUT_WORD_GROUP' | 'SPONTANEOUS_QA_GROUP' | 'WORD_ORDER_AND_MATCH_GROUP' | 'WRITE_A_SHORT_LETTER' | 'WRITE_CORRECT_VERB_FORM' | 'CHOOSE_CORRECT_ADJECTIVE' | 'ANSWER_THE_QUESTION' | 'ANSWER_THE_QUESTION_GROUP' | 'WORD_ORDERING' | 'WORD_FILL_PARAGRAPH' | 'MATCH_BY_WRITING_ANSWER' | 'MATCH_WORD_TO_PICTURE' | 'WRITE_SENTENCES' | 'LISTEN_AND_CHOOSE_FROM_ANSWER_GROUP' | 'LISTEN_AND_CHOOSE_OBJECTS_IN_SCENE' | 'LISTEN_AND_DRAG_OBJECTS_INTO_SCENE' | 'LISTEN_AND_SPEAK_ANSWER' | 'LISTEN_AND_SPEAK_IMAGE_GROUP' | 'LISTEN_AND_SPEAK_QUESTION_LIST' | 'LISTEN_AND_SPEAK_COMPARE_IMAGES' | 'LISTEN_AND_SPEAK_WITH_STORY_IMAGES' | 'LISTEN_AND_SPEAK_ODD_ONE_OUT' | 'LISTEN_AND_SPEAK_INFO_EXCHANGE' | 'READ_DISPLAYED_CONTENT' | 'SPEAKING_DESCRIBE_IMAGE' | 'SPONTANEOUS_QA' | 'SPEAKING_CONVERSATION' | 'GN_SPEAKING_INTERVIEW' | 'SPEAKING_CUE_CARD' | 'WORD_FILL_STRUCTURED_FORM' | 'CROSSWORD_PUZZLE' | 'FIND_WORDS_IN_MATRIX' | 'MATCH_COLUMNS_TO_MAKE_SENTENCES' | 'MATCH_WORD_TO_PICTURE_GROUP' | 'WORD_ORDERING_GROUP';
|
|
32
|
+
export type QuestionType = 'FILL_IN_BLANK' | 'TRUE_FALSE' | 'MATCHING' | 'ORDERING' | 'LISTENING' | 'COLORING' | 'ESSAY' | 'LISTEN_AND_FILL_IN_THE_BLANK_WITH_IMAGE' | 'LISTEN_AND_TICK_ANSWER' | 'LISTEN_AND_FILL_NAME_NUMBER' | 'LISTENING_FILL_BLANK' | 'LISTENING_COLOR' | 'TICK_TRUE_OR_FALSE' | 'TICK_YES_OR_NO' | 'READING_TICK_CROSS' | 'ARRANGE_LETTERS_INTO_WORDS' | 'READ_PASSAGE_AND_COMPLETE_STORY' | 'CLOZE_TEST_WITH_TICK_BOX' | 'READ_AND_CHOOSE_APPROPRIATE_WORD' | 'WRITE_SHORT_PARAGRAPH' | 'LABEL_THE_PICTURE' | 'READING_LETTER_ARRANGE' | 'READING_PASSAGE_FILL' | 'FILL_BLANK' | 'FILL_MISSING_WORDS_IN_GRID' | 'LOOK_PICTURE_CHOOSE_CORRECT_ANSWER' | 'LOOK_PICTURE_FILL_BLANK_CHOOSE_ANSWER' | 'LOOK_PICTURE_FILL_WORD_HINT' | 'LABEL_THE_PICTURE' | 'READ_AND_COLOR_OBJECTS' | 'IMAGE_OBJECT_MATCHING' | 'READ_PASSAGE_AND_ANSWER_QUESTIONS' | 'CHOOSE_THE_CORRECT_ANSWER' | 'CHOOSE_THE_CORRECT_ANSWER_GROUP' | 'TRUE_FALSE_GROUP' | 'TRUE_FALSE_CORRECT_GROUP' | 'FILL_IN_BLANK_GROUP' | 'MATCHING_WITH_LINES_GROUP' | 'CROSS_OUT_WORD_GROUP' | 'SPONTANEOUS_QA_GROUP' | 'WORD_ORDER_AND_MATCH_GROUP' | 'WRITE_A_SHORT_LETTER' | 'WRITE_CORRECT_VERB_FORM' | 'CHOOSE_CORRECT_ADJECTIVE' | 'ANSWER_THE_QUESTION' | 'ANSWER_THE_QUESTION_GROUP' | 'WORD_ORDERING' | 'WORD_FILL_PARAGRAPH' | 'MATCH_BY_WRITING_ANSWER' | 'MATCH_WORD_TO_PICTURE' | 'WRITE_SENTENCES' | 'LISTEN_AND_CHOOSE_FROM_ANSWER_GROUP' | 'LISTEN_AND_CHOOSE_OBJECTS_IN_SCENE' | 'LISTEN_AND_DRAG_OBJECTS_INTO_SCENE' | 'LISTEN_AND_SPEAK_ANSWER' | 'LISTEN_AND_SPEAK_IMAGE_GROUP' | 'LISTEN_AND_SPEAK_QUESTION_LIST' | 'LISTEN_AND_SPEAK_COMPARE_IMAGES' | 'LISTEN_AND_SPEAK_WITH_STORY_IMAGES' | 'LISTEN_AND_SPEAK_ODD_ONE_OUT' | 'LISTEN_AND_SPEAK_INFO_EXCHANGE' | 'READ_DISPLAYED_CONTENT' | 'SPEAKING_DESCRIBE_IMAGE' | 'SPONTANEOUS_QA' | 'SPEAKING_CONVERSATION' | 'GN_SPEAKING_INTERVIEW' | 'SPEAKING_CUE_CARD' | 'WORD_FILL_STRUCTURED_FORM' | 'CROSSWORD_PUZZLE' | 'FIND_WORDS_IN_MATRIX' | 'SORT_WORDS_INTO_CATEGORIES' | 'CHOOSE_THEN_ANSWER_GROUP' | 'MATCH_COLUMNS_TO_MAKE_SENTENCES' | 'MATCH_WORD_TO_PICTURE_GROUP' | 'WORD_ORDERING_GROUP';
|
|
33
33
|
export type Level = 'Pre-A1' | 'A1' | 'A2' | 'B1' | 'B2' | 'C1' | 'C2';
|
|
34
34
|
export type Difficulty = 'EASY' | 'MEDIUM' | 'HARD';
|
|
35
35
|
export type Skill = 'LISTENING' | 'READING' | 'WRITING' | 'SPEAKING';
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export declare const ANSWER_THE_QUESTION_GROUP_GRADING_TYPE: "AI";
|
|
2
2
|
export interface AnswerTheQuestionGroupItemContent {
|
|
3
3
|
question: string;
|
|
4
|
+
imageUrl?: string | string[];
|
|
4
5
|
}
|
|
5
6
|
export interface AnswerTheQuestionGroupItemExpectedAnswer {
|
|
6
7
|
expectedAnswers: string[];
|
|
@@ -17,6 +18,8 @@ export interface AnswerTheQuestionGroupContent {
|
|
|
17
18
|
meta?: {
|
|
18
19
|
instruction?: string;
|
|
19
20
|
passage?: string;
|
|
21
|
+
audioUrl?: string;
|
|
22
|
+
imageUrl?: string | string[];
|
|
20
23
|
gradingType: typeof ANSWER_THE_QUESTION_GROUP_GRADING_TYPE;
|
|
21
24
|
isAiGraded: true;
|
|
22
25
|
};
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
export interface ChooseThenAnswerOption {
|
|
2
|
+
id: string;
|
|
3
|
+
text: string;
|
|
4
|
+
}
|
|
5
|
+
export interface ChooseThenAnswerItemAnswer {
|
|
6
|
+
optionId: string;
|
|
7
|
+
}
|
|
8
|
+
export interface ChooseThenAnswerStudentItemAnswer {
|
|
9
|
+
optionId: string;
|
|
10
|
+
text: string;
|
|
11
|
+
}
|
|
12
|
+
export interface ChooseThenAnswerGroupItemContent {
|
|
13
|
+
question: string;
|
|
14
|
+
options: ChooseThenAnswerOption[];
|
|
15
|
+
}
|
|
16
|
+
export interface ChooseThenAnswerGroupItem {
|
|
17
|
+
questionType?: string;
|
|
18
|
+
isExample?: boolean;
|
|
19
|
+
content: ChooseThenAnswerGroupItemContent;
|
|
20
|
+
correctAnswer?: {
|
|
21
|
+
answer: ChooseThenAnswerItemAnswer;
|
|
22
|
+
};
|
|
23
|
+
points?: number;
|
|
24
|
+
questionNumber?: number;
|
|
25
|
+
}
|
|
26
|
+
export interface ChooseThenAnswerGroupContent {
|
|
27
|
+
meta?: {
|
|
28
|
+
instruction?: string;
|
|
29
|
+
title?: string;
|
|
30
|
+
};
|
|
31
|
+
items: ChooseThenAnswerGroupItem[];
|
|
32
|
+
}
|
|
33
|
+
export interface ChooseThenAnswerGroupCorrectAnswer {
|
|
34
|
+
answer: ChooseThenAnswerItemAnswer[];
|
|
35
|
+
}
|
|
36
|
+
export interface ChooseThenAnswerGroupAPIPayload {
|
|
37
|
+
id?: string;
|
|
38
|
+
questionType: 'CHOOSE_THEN_ANSWER_GROUP';
|
|
39
|
+
content: ChooseThenAnswerGroupContent;
|
|
40
|
+
correctAnswer: ChooseThenAnswerGroupCorrectAnswer;
|
|
41
|
+
points: number;
|
|
42
|
+
explanation?: string;
|
|
43
|
+
questionNumber: number;
|
|
44
|
+
partId?: string;
|
|
45
|
+
partNo?: number;
|
|
46
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -3,12 +3,16 @@ export interface FillInBlankGroupItemAnswer {
|
|
|
3
3
|
answers: string[][];
|
|
4
4
|
caseSensitive?: boolean;
|
|
5
5
|
}
|
|
6
|
+
export type FillInBlankWordBankEntry = {
|
|
7
|
+
options: string[];
|
|
8
|
+
} | null;
|
|
6
9
|
export interface FillInBlankGroupItemContent {
|
|
7
10
|
question: string;
|
|
8
|
-
imageUrl?: string;
|
|
11
|
+
imageUrl?: string | string[];
|
|
9
12
|
audioUrl?: string;
|
|
10
13
|
showHints?: boolean;
|
|
11
14
|
hints?: string[];
|
|
15
|
+
wordBank?: FillInBlankWordBankEntry[];
|
|
12
16
|
}
|
|
13
17
|
export interface FillInBlankGroupItem {
|
|
14
18
|
questionType?: typeof FILL_IN_BLANK_ITEM_TYPE;
|
|
@@ -21,10 +25,13 @@ export interface FillInBlankGroupItem {
|
|
|
21
25
|
export interface FillInBlankGroupContent {
|
|
22
26
|
meta?: {
|
|
23
27
|
instruction?: string;
|
|
28
|
+
passage?: string;
|
|
24
29
|
audioUrl?: string;
|
|
25
|
-
imageUrl?: string;
|
|
30
|
+
imageUrl?: string | string[];
|
|
26
31
|
showHints?: boolean;
|
|
27
32
|
hints?: string[];
|
|
33
|
+
viewMode?: 'WITH_OPTIONS';
|
|
34
|
+
wordBank?: FillInBlankWordBankEntry[];
|
|
28
35
|
};
|
|
29
36
|
items: FillInBlankGroupItem[];
|
|
30
37
|
}
|
|
@@ -32,6 +32,8 @@ export * from './spontaneous-qa';
|
|
|
32
32
|
export * from './word-order-and-match-group';
|
|
33
33
|
export * from './crossword-puzzle';
|
|
34
34
|
export * from './find-words-in-matrix';
|
|
35
|
+
export * from './sort-words-into-categories';
|
|
36
|
+
export * from './choose-then-answer-group';
|
|
35
37
|
export * from './match-word-to-picture';
|
|
36
38
|
export * from './matching-with-lines-group';
|
|
37
39
|
export * from './match-columns-to-make-sentences';
|
|
@@ -50,6 +50,9 @@ export * from './word-order-and-match-group';
|
|
|
50
50
|
export * from './crossword-puzzle';
|
|
51
51
|
// FIND_WORDS_IN_MATRIX
|
|
52
52
|
export * from './find-words-in-matrix';
|
|
53
|
+
// SORT_WORDS_INTO_CATEGORIES
|
|
54
|
+
export * from './sort-words-into-categories';
|
|
55
|
+
export * from './choose-then-answer-group';
|
|
53
56
|
// MATCH_WORD_TO_PICTURE
|
|
54
57
|
export * from './match-word-to-picture';
|
|
55
58
|
// MATCHING_WITH_LINES_GROUP
|
|
@@ -3,7 +3,7 @@ export interface MatchWordToPictureGroupItem {
|
|
|
3
3
|
questionType?: typeof MATCH_WORD_TO_PICTURE_ITEM_TYPE;
|
|
4
4
|
isExample?: boolean;
|
|
5
5
|
content: {
|
|
6
|
-
imageUrl
|
|
6
|
+
imageUrl?: string | string[];
|
|
7
7
|
};
|
|
8
8
|
correctAnswer?: {
|
|
9
9
|
answer: string;
|
|
@@ -13,7 +13,13 @@ export interface MatchWordToPictureGroupItem {
|
|
|
13
13
|
}
|
|
14
14
|
export interface MatchWordToPictureGroupContent {
|
|
15
15
|
meta?: {
|
|
16
|
+
title?: string;
|
|
16
17
|
instruction?: string;
|
|
18
|
+
/** Shared reading passage (HTML) above the match-word-to-picture UI. */
|
|
19
|
+
passage?: string;
|
|
20
|
+
/** Shared listening audio played once under the instruction. */
|
|
21
|
+
audioUrl?: string;
|
|
22
|
+
imageUrl?: string | string[];
|
|
17
23
|
wordBank?: string[];
|
|
18
24
|
};
|
|
19
25
|
items: MatchWordToPictureGroupItem[];
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
export interface MatchingWithLinesRightItem {
|
|
2
2
|
id: string;
|
|
3
|
-
text
|
|
3
|
+
text?: string;
|
|
4
|
+
imageUrl?: string;
|
|
4
5
|
}
|
|
5
6
|
export interface MatchingWithLinesGroupItemContent {
|
|
6
|
-
imageUrl
|
|
7
|
+
imageUrl?: string;
|
|
8
|
+
text?: string;
|
|
7
9
|
}
|
|
8
10
|
export interface MatchingWithLinesGroupItem {
|
|
9
11
|
isExample?: boolean;
|
|
@@ -18,6 +20,9 @@ export interface MatchingWithLinesGroupContent {
|
|
|
18
20
|
meta?: {
|
|
19
21
|
instruction?: string;
|
|
20
22
|
title?: string;
|
|
23
|
+
audioUrl?: string;
|
|
24
|
+
passage?: string;
|
|
25
|
+
imageUrl?: string;
|
|
21
26
|
};
|
|
22
27
|
rightItems: MatchingWithLinesRightItem[];
|
|
23
28
|
items: MatchingWithLinesGroupItem[];
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export interface SortWordsCategory {
|
|
2
|
+
id: string;
|
|
3
|
+
name: string;
|
|
4
|
+
}
|
|
5
|
+
export interface SortWordsWord {
|
|
6
|
+
id: string;
|
|
7
|
+
text: string;
|
|
8
|
+
points?: number;
|
|
9
|
+
isExample?: boolean;
|
|
10
|
+
}
|
|
11
|
+
export interface SortWordsPlacement {
|
|
12
|
+
wordId: string;
|
|
13
|
+
categoryId: string;
|
|
14
|
+
}
|
|
15
|
+
export interface SortWordsIntoCategoriesContent {
|
|
16
|
+
meta?: {
|
|
17
|
+
instruction?: string;
|
|
18
|
+
title?: string;
|
|
19
|
+
};
|
|
20
|
+
categories: SortWordsCategory[];
|
|
21
|
+
words: SortWordsWord[];
|
|
22
|
+
}
|
|
23
|
+
export interface SortWordsIntoCategoriesCorrectAnswer {
|
|
24
|
+
placements: SortWordsPlacement[];
|
|
25
|
+
}
|
|
26
|
+
export interface SortWordsIntoCategoriesAPIPayload {
|
|
27
|
+
id?: string;
|
|
28
|
+
questionType: 'SORT_WORDS_INTO_CATEGORIES';
|
|
29
|
+
content: SortWordsIntoCategoriesContent;
|
|
30
|
+
correctAnswer: SortWordsIntoCategoriesCorrectAnswer;
|
|
31
|
+
points: number;
|
|
32
|
+
explanation?: string;
|
|
33
|
+
questionNumber: number;
|
|
34
|
+
partId?: string;
|
|
35
|
+
partNo?: number;
|
|
36
|
+
}
|
|
37
|
+
export type SortWordsIntoCategoriesLocalStorage = SortWordsIntoCategoriesAPIPayload;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|