@instructure/athena-api-client 1.0.14 → 1.0.17

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.
Files changed (30) hide show
  1. package/README.md +3 -0
  2. package/dist/esm/models/ChatRequest.d.ts +13 -0
  3. package/dist/esm/models/ChatRequest.js +5 -0
  4. package/dist/esm/models/ChatRequestQuizContext.d.ts +92 -0
  5. package/dist/esm/models/ChatRequestQuizContext.js +85 -0
  6. package/dist/esm/models/ChatRequestQuizContextAnswerState.d.ts +62 -0
  7. package/dist/esm/models/ChatRequestQuizContextAnswerState.js +53 -0
  8. package/dist/esm/models/ChatRequestQuizContextCurrentQuestion.d.ts +50 -0
  9. package/dist/esm/models/ChatRequestQuizContextCurrentQuestion.js +53 -0
  10. package/dist/esm/models/QuizResponse.d.ts +21 -0
  11. package/dist/esm/models/QuizResponse.js +16 -0
  12. package/dist/esm/models/SubmitQuizResponseRequest.d.ts +0 -6
  13. package/dist/esm/models/SubmitQuizResponseRequest.js +0 -2
  14. package/dist/esm/models/index.d.ts +3 -0
  15. package/dist/esm/models/index.js +3 -0
  16. package/dist/models/ChatRequest.d.ts +13 -0
  17. package/dist/models/ChatRequest.js +5 -0
  18. package/dist/models/ChatRequestQuizContext.d.ts +92 -0
  19. package/dist/models/ChatRequestQuizContext.js +93 -0
  20. package/dist/models/ChatRequestQuizContextAnswerState.d.ts +62 -0
  21. package/dist/models/ChatRequestQuizContextAnswerState.js +60 -0
  22. package/dist/models/ChatRequestQuizContextCurrentQuestion.d.ts +50 -0
  23. package/dist/models/ChatRequestQuizContextCurrentQuestion.js +60 -0
  24. package/dist/models/QuizResponse.d.ts +21 -0
  25. package/dist/models/QuizResponse.js +17 -1
  26. package/dist/models/SubmitQuizResponseRequest.d.ts +0 -6
  27. package/dist/models/SubmitQuizResponseRequest.js +0 -2
  28. package/dist/models/index.d.ts +3 -0
  29. package/dist/models/index.js +3 -0
  30. package/package.json +1 -1
package/README.md CHANGED
@@ -124,6 +124,9 @@ All URIs are relative to *http://localhost:3000*
124
124
  - [ChatAnalysis](docs/ChatAnalysis.md)
125
125
  - [ChatRequest](docs/ChatRequest.md)
126
126
  - [ChatRequestAttachmentsInner](docs/ChatRequestAttachmentsInner.md)
127
+ - [ChatRequestQuizContext](docs/ChatRequestQuizContext.md)
128
+ - [ChatRequestQuizContextAnswerState](docs/ChatRequestQuizContextAnswerState.md)
129
+ - [ChatRequestQuizContextCurrentQuestion](docs/ChatRequestQuizContextCurrentQuestion.md)
127
130
  - [CreateAccountRequest](docs/CreateAccountRequest.md)
128
131
  - [CreateChatRequest](docs/CreateChatRequest.md)
129
132
  - [CreateFeatureDto](docs/CreateFeatureDto.md)
@@ -10,6 +10,7 @@
10
10
  * Do not edit the class manually.
11
11
  */
12
12
  import type { ChatRequestAttachmentsInner } from './ChatRequestAttachmentsInner';
13
+ import type { ChatRequestQuizContext } from './ChatRequestQuizContext';
13
14
  /**
14
15
  *
15
16
  * @export
@@ -28,12 +29,24 @@ export interface ChatRequest {
28
29
  * @memberof ChatRequest
29
30
  */
30
31
  chatId: string;
32
+ /**
33
+ * Optional chat type. Only applied when a new chat is created (ignored if chatId already exists). Use 'onboarding' to route to onboarding analysis.
34
+ * @type {string}
35
+ * @memberof ChatRequest
36
+ */
37
+ chatType?: string;
31
38
  /**
32
39
  * File attachments to include with the message (max 10)
33
40
  * @type {Array<ChatRequestAttachmentsInner>}
34
41
  * @memberof ChatRequest
35
42
  */
36
43
  attachments?: Array<ChatRequestAttachmentsInner>;
44
+ /**
45
+ *
46
+ * @type {ChatRequestQuizContext}
47
+ * @memberof ChatRequest
48
+ */
49
+ quizContext?: ChatRequestQuizContext;
37
50
  }
38
51
  /**
39
52
  * Check if a given object implements the ChatRequest interface.
@@ -12,6 +12,7 @@
12
12
  * Do not edit the class manually.
13
13
  */
14
14
  import { ChatRequestAttachmentsInnerFromJSON, ChatRequestAttachmentsInnerToJSON, } from './ChatRequestAttachmentsInner';
15
+ import { ChatRequestQuizContextFromJSON, ChatRequestQuizContextToJSON, } from './ChatRequestQuizContext';
15
16
  /**
16
17
  * Check if a given object implements the ChatRequest interface.
17
18
  */
@@ -32,7 +33,9 @@ export function ChatRequestFromJSONTyped(json, ignoreDiscriminator) {
32
33
  return {
33
34
  'message': json['message'],
34
35
  'chatId': json['chatId'],
36
+ 'chatType': json['chatType'] == null ? undefined : json['chatType'],
35
37
  'attachments': json['attachments'] == null ? undefined : (json['attachments'].map(ChatRequestAttachmentsInnerFromJSON)),
38
+ 'quizContext': json['quizContext'] == null ? undefined : ChatRequestQuizContextFromJSON(json['quizContext']),
36
39
  };
37
40
  }
38
41
  export function ChatRequestToJSON(json) {
@@ -45,6 +48,8 @@ export function ChatRequestToJSONTyped(value, ignoreDiscriminator = false) {
45
48
  return {
46
49
  'message': value['message'],
47
50
  'chatId': value['chatId'],
51
+ 'chatType': value['chatType'],
48
52
  'attachments': value['attachments'] == null ? undefined : (value['attachments'].map(ChatRequestAttachmentsInnerToJSON)),
53
+ 'quizContext': ChatRequestQuizContextToJSON(value['quizContext']),
49
54
  };
50
55
  }
@@ -0,0 +1,92 @@
1
+ /**
2
+ * Athena API
3
+ * REST API for the Athena system
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { ChatRequestQuizContextAnswerState } from './ChatRequestQuizContextAnswerState';
13
+ import type { ChatRequestQuizContextCurrentQuestion } from './ChatRequestQuizContextCurrentQuestion';
14
+ /**
15
+ * Optional quiz/flashcard context when the learner is chatting during an active session
16
+ * @export
17
+ * @interface ChatRequestQuizContext
18
+ */
19
+ export interface ChatRequestQuizContext {
20
+ /**
21
+ *
22
+ * @type {string}
23
+ * @memberof ChatRequestQuizContext
24
+ */
25
+ sessionId: string;
26
+ /**
27
+ *
28
+ * @type {string}
29
+ * @memberof ChatRequestQuizContext
30
+ */
31
+ quizTitle: string;
32
+ /**
33
+ *
34
+ * @type {string}
35
+ * @memberof ChatRequestQuizContext
36
+ */
37
+ mode: ChatRequestQuizContextModeEnum;
38
+ /**
39
+ *
40
+ * @type {number}
41
+ * @memberof ChatRequestQuizContext
42
+ */
43
+ totalQuestions: number;
44
+ /**
45
+ *
46
+ * @type {number}
47
+ * @memberof ChatRequestQuizContext
48
+ */
49
+ currentQuestionIndex: number;
50
+ /**
51
+ *
52
+ * @type {ChatRequestQuizContextCurrentQuestion}
53
+ * @memberof ChatRequestQuizContext
54
+ */
55
+ currentQuestion: ChatRequestQuizContextCurrentQuestion;
56
+ /**
57
+ *
58
+ * @type {ChatRequestQuizContextAnswerState}
59
+ * @memberof ChatRequestQuizContext
60
+ */
61
+ answerState?: ChatRequestQuizContextAnswerState;
62
+ /**
63
+ *
64
+ * @type {string}
65
+ * @memberof ChatRequestQuizContext
66
+ */
67
+ sessionStatus: ChatRequestQuizContextSessionStatusEnum;
68
+ }
69
+ /**
70
+ * @export
71
+ */
72
+ export declare const ChatRequestQuizContextModeEnum: {
73
+ readonly Quiz: "quiz";
74
+ readonly Flashcards: "flashcards";
75
+ };
76
+ export type ChatRequestQuizContextModeEnum = typeof ChatRequestQuizContextModeEnum[keyof typeof ChatRequestQuizContextModeEnum];
77
+ /**
78
+ * @export
79
+ */
80
+ export declare const ChatRequestQuizContextSessionStatusEnum: {
81
+ readonly Active: "active";
82
+ readonly Completed: "completed";
83
+ };
84
+ export type ChatRequestQuizContextSessionStatusEnum = typeof ChatRequestQuizContextSessionStatusEnum[keyof typeof ChatRequestQuizContextSessionStatusEnum];
85
+ /**
86
+ * Check if a given object implements the ChatRequestQuizContext interface.
87
+ */
88
+ export declare function instanceOfChatRequestQuizContext(value: object): value is ChatRequestQuizContext;
89
+ export declare function ChatRequestQuizContextFromJSON(json: any): ChatRequestQuizContext;
90
+ export declare function ChatRequestQuizContextFromJSONTyped(json: any, ignoreDiscriminator: boolean): ChatRequestQuizContext;
91
+ export declare function ChatRequestQuizContextToJSON(json: any): ChatRequestQuizContext;
92
+ export declare function ChatRequestQuizContextToJSONTyped(value?: ChatRequestQuizContext | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,85 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Athena API
5
+ * REST API for the Athena system
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ import { ChatRequestQuizContextAnswerStateFromJSON, ChatRequestQuizContextAnswerStateToJSON, } from './ChatRequestQuizContextAnswerState';
15
+ import { ChatRequestQuizContextCurrentQuestionFromJSON, ChatRequestQuizContextCurrentQuestionToJSON, } from './ChatRequestQuizContextCurrentQuestion';
16
+ /**
17
+ * @export
18
+ */
19
+ export const ChatRequestQuizContextModeEnum = {
20
+ Quiz: 'quiz',
21
+ Flashcards: 'flashcards'
22
+ };
23
+ /**
24
+ * @export
25
+ */
26
+ export const ChatRequestQuizContextSessionStatusEnum = {
27
+ Active: 'active',
28
+ Completed: 'completed'
29
+ };
30
+ /**
31
+ * Check if a given object implements the ChatRequestQuizContext interface.
32
+ */
33
+ export function instanceOfChatRequestQuizContext(value) {
34
+ if (!('sessionId' in value) || value['sessionId'] === undefined)
35
+ return false;
36
+ if (!('quizTitle' in value) || value['quizTitle'] === undefined)
37
+ return false;
38
+ if (!('mode' in value) || value['mode'] === undefined)
39
+ return false;
40
+ if (!('totalQuestions' in value) || value['totalQuestions'] === undefined)
41
+ return false;
42
+ if (!('currentQuestionIndex' in value) || value['currentQuestionIndex'] === undefined)
43
+ return false;
44
+ if (!('currentQuestion' in value) || value['currentQuestion'] === undefined)
45
+ return false;
46
+ if (!('sessionStatus' in value) || value['sessionStatus'] === undefined)
47
+ return false;
48
+ return true;
49
+ }
50
+ export function ChatRequestQuizContextFromJSON(json) {
51
+ return ChatRequestQuizContextFromJSONTyped(json, false);
52
+ }
53
+ export function ChatRequestQuizContextFromJSONTyped(json, ignoreDiscriminator) {
54
+ if (json == null) {
55
+ return json;
56
+ }
57
+ return {
58
+ 'sessionId': json['sessionId'],
59
+ 'quizTitle': json['quizTitle'],
60
+ 'mode': json['mode'],
61
+ 'totalQuestions': json['totalQuestions'],
62
+ 'currentQuestionIndex': json['currentQuestionIndex'],
63
+ 'currentQuestion': ChatRequestQuizContextCurrentQuestionFromJSON(json['currentQuestion']),
64
+ 'answerState': json['answerState'] == null ? undefined : ChatRequestQuizContextAnswerStateFromJSON(json['answerState']),
65
+ 'sessionStatus': json['sessionStatus'],
66
+ };
67
+ }
68
+ export function ChatRequestQuizContextToJSON(json) {
69
+ return ChatRequestQuizContextToJSONTyped(json, false);
70
+ }
71
+ export function ChatRequestQuizContextToJSONTyped(value, ignoreDiscriminator = false) {
72
+ if (value == null) {
73
+ return value;
74
+ }
75
+ return {
76
+ 'sessionId': value['sessionId'],
77
+ 'quizTitle': value['quizTitle'],
78
+ 'mode': value['mode'],
79
+ 'totalQuestions': value['totalQuestions'],
80
+ 'currentQuestionIndex': value['currentQuestionIndex'],
81
+ 'currentQuestion': ChatRequestQuizContextCurrentQuestionToJSON(value['currentQuestion']),
82
+ 'answerState': ChatRequestQuizContextAnswerStateToJSON(value['answerState']),
83
+ 'sessionStatus': value['sessionStatus'],
84
+ };
85
+ }
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Athena API
3
+ * REST API for the Athena system
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ *
14
+ * @export
15
+ * @interface ChatRequestQuizContextAnswerState
16
+ */
17
+ export interface ChatRequestQuizContextAnswerState {
18
+ /**
19
+ *
20
+ * @type {boolean}
21
+ * @memberof ChatRequestQuizContextAnswerState
22
+ */
23
+ answered: boolean;
24
+ /**
25
+ *
26
+ * @type {string}
27
+ * @memberof ChatRequestQuizContextAnswerState
28
+ */
29
+ userAnswer?: string;
30
+ /**
31
+ *
32
+ * @type {boolean}
33
+ * @memberof ChatRequestQuizContextAnswerState
34
+ */
35
+ isCorrect?: boolean | null;
36
+ /**
37
+ *
38
+ * @type {string}
39
+ * @memberof ChatRequestQuizContextAnswerState
40
+ */
41
+ grade?: string | null;
42
+ /**
43
+ *
44
+ * @type {string}
45
+ * @memberof ChatRequestQuizContextAnswerState
46
+ */
47
+ feedback?: string | null;
48
+ /**
49
+ *
50
+ * @type {string}
51
+ * @memberof ChatRequestQuizContextAnswerState
52
+ */
53
+ rating?: string | null;
54
+ }
55
+ /**
56
+ * Check if a given object implements the ChatRequestQuizContextAnswerState interface.
57
+ */
58
+ export declare function instanceOfChatRequestQuizContextAnswerState(value: object): value is ChatRequestQuizContextAnswerState;
59
+ export declare function ChatRequestQuizContextAnswerStateFromJSON(json: any): ChatRequestQuizContextAnswerState;
60
+ export declare function ChatRequestQuizContextAnswerStateFromJSONTyped(json: any, ignoreDiscriminator: boolean): ChatRequestQuizContextAnswerState;
61
+ export declare function ChatRequestQuizContextAnswerStateToJSON(json: any): ChatRequestQuizContextAnswerState;
62
+ export declare function ChatRequestQuizContextAnswerStateToJSONTyped(value?: ChatRequestQuizContextAnswerState | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,53 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Athena API
5
+ * REST API for the Athena system
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * Check if a given object implements the ChatRequestQuizContextAnswerState interface.
16
+ */
17
+ export function instanceOfChatRequestQuizContextAnswerState(value) {
18
+ if (!('answered' in value) || value['answered'] === undefined)
19
+ return false;
20
+ return true;
21
+ }
22
+ export function ChatRequestQuizContextAnswerStateFromJSON(json) {
23
+ return ChatRequestQuizContextAnswerStateFromJSONTyped(json, false);
24
+ }
25
+ export function ChatRequestQuizContextAnswerStateFromJSONTyped(json, ignoreDiscriminator) {
26
+ if (json == null) {
27
+ return json;
28
+ }
29
+ return {
30
+ 'answered': json['answered'],
31
+ 'userAnswer': json['userAnswer'] == null ? undefined : json['userAnswer'],
32
+ 'isCorrect': json['isCorrect'] == null ? undefined : json['isCorrect'],
33
+ 'grade': json['grade'] == null ? undefined : json['grade'],
34
+ 'feedback': json['feedback'] == null ? undefined : json['feedback'],
35
+ 'rating': json['rating'] == null ? undefined : json['rating'],
36
+ };
37
+ }
38
+ export function ChatRequestQuizContextAnswerStateToJSON(json) {
39
+ return ChatRequestQuizContextAnswerStateToJSONTyped(json, false);
40
+ }
41
+ export function ChatRequestQuizContextAnswerStateToJSONTyped(value, ignoreDiscriminator = false) {
42
+ if (value == null) {
43
+ return value;
44
+ }
45
+ return {
46
+ 'answered': value['answered'],
47
+ 'userAnswer': value['userAnswer'],
48
+ 'isCorrect': value['isCorrect'],
49
+ 'grade': value['grade'],
50
+ 'feedback': value['feedback'],
51
+ 'rating': value['rating'],
52
+ };
53
+ }
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Athena API
3
+ * REST API for the Athena system
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ *
14
+ * @export
15
+ * @interface ChatRequestQuizContextCurrentQuestion
16
+ */
17
+ export interface ChatRequestQuizContextCurrentQuestion {
18
+ /**
19
+ *
20
+ * @type {string}
21
+ * @memberof ChatRequestQuizContextCurrentQuestion
22
+ */
23
+ type: string;
24
+ /**
25
+ *
26
+ * @type {string}
27
+ * @memberof ChatRequestQuizContextCurrentQuestion
28
+ */
29
+ question: string;
30
+ /**
31
+ *
32
+ * @type {string}
33
+ * @memberof ChatRequestQuizContextCurrentQuestion
34
+ */
35
+ correctAnswer: string;
36
+ /**
37
+ *
38
+ * @type {string}
39
+ * @memberof ChatRequestQuizContextCurrentQuestion
40
+ */
41
+ explanation?: string | null;
42
+ }
43
+ /**
44
+ * Check if a given object implements the ChatRequestQuizContextCurrentQuestion interface.
45
+ */
46
+ export declare function instanceOfChatRequestQuizContextCurrentQuestion(value: object): value is ChatRequestQuizContextCurrentQuestion;
47
+ export declare function ChatRequestQuizContextCurrentQuestionFromJSON(json: any): ChatRequestQuizContextCurrentQuestion;
48
+ export declare function ChatRequestQuizContextCurrentQuestionFromJSONTyped(json: any, ignoreDiscriminator: boolean): ChatRequestQuizContextCurrentQuestion;
49
+ export declare function ChatRequestQuizContextCurrentQuestionToJSON(json: any): ChatRequestQuizContextCurrentQuestion;
50
+ export declare function ChatRequestQuizContextCurrentQuestionToJSONTyped(value?: ChatRequestQuizContextCurrentQuestion | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,53 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Athena API
5
+ * REST API for the Athena system
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * Check if a given object implements the ChatRequestQuizContextCurrentQuestion interface.
16
+ */
17
+ export function instanceOfChatRequestQuizContextCurrentQuestion(value) {
18
+ if (!('type' in value) || value['type'] === undefined)
19
+ return false;
20
+ if (!('question' in value) || value['question'] === undefined)
21
+ return false;
22
+ if (!('correctAnswer' in value) || value['correctAnswer'] === undefined)
23
+ return false;
24
+ return true;
25
+ }
26
+ export function ChatRequestQuizContextCurrentQuestionFromJSON(json) {
27
+ return ChatRequestQuizContextCurrentQuestionFromJSONTyped(json, false);
28
+ }
29
+ export function ChatRequestQuizContextCurrentQuestionFromJSONTyped(json, ignoreDiscriminator) {
30
+ if (json == null) {
31
+ return json;
32
+ }
33
+ return {
34
+ 'type': json['type'],
35
+ 'question': json['question'],
36
+ 'correctAnswer': json['correctAnswer'],
37
+ 'explanation': json['explanation'] == null ? undefined : json['explanation'],
38
+ };
39
+ }
40
+ export function ChatRequestQuizContextCurrentQuestionToJSON(json) {
41
+ return ChatRequestQuizContextCurrentQuestionToJSONTyped(json, false);
42
+ }
43
+ export function ChatRequestQuizContextCurrentQuestionToJSONTyped(value, ignoreDiscriminator = false) {
44
+ if (value == null) {
45
+ return value;
46
+ }
47
+ return {
48
+ 'type': value['type'],
49
+ 'question': value['question'],
50
+ 'correctAnswer': value['correctAnswer'],
51
+ 'explanation': value['explanation'],
52
+ };
53
+ }
@@ -51,6 +51,18 @@ export interface QuizResponse {
51
51
  * @memberof QuizResponse
52
52
  */
53
53
  rating: QuizResponseRatingEnum | null;
54
+ /**
55
+ *
56
+ * @type {string}
57
+ * @memberof QuizResponse
58
+ */
59
+ grade: QuizResponseGradeEnum | null;
60
+ /**
61
+ *
62
+ * @type {string}
63
+ * @memberof QuizResponse
64
+ */
65
+ feedback: string | null;
54
66
  /**
55
67
  *
56
68
  * @type {Date}
@@ -66,6 +78,15 @@ export declare const QuizResponseRatingEnum: {
66
78
  readonly NeedPractice: "need-practice";
67
79
  };
68
80
  export type QuizResponseRatingEnum = typeof QuizResponseRatingEnum[keyof typeof QuizResponseRatingEnum];
81
+ /**
82
+ * @export
83
+ */
84
+ export declare const QuizResponseGradeEnum: {
85
+ readonly Correct: "correct";
86
+ readonly Almost: "almost";
87
+ readonly Incorrect: "incorrect";
88
+ };
89
+ export type QuizResponseGradeEnum = typeof QuizResponseGradeEnum[keyof typeof QuizResponseGradeEnum];
69
90
  /**
70
91
  * Check if a given object implements the QuizResponse interface.
71
92
  */
@@ -18,6 +18,14 @@ export const QuizResponseRatingEnum = {
18
18
  WasRight: 'was-right',
19
19
  NeedPractice: 'need-practice'
20
20
  };
21
+ /**
22
+ * @export
23
+ */
24
+ export const QuizResponseGradeEnum = {
25
+ Correct: 'correct',
26
+ Almost: 'almost',
27
+ Incorrect: 'incorrect'
28
+ };
21
29
  /**
22
30
  * Check if a given object implements the QuizResponse interface.
23
31
  */
@@ -34,6 +42,10 @@ export function instanceOfQuizResponse(value) {
34
42
  return false;
35
43
  if (!('rating' in value) || value['rating'] === undefined)
36
44
  return false;
45
+ if (!('grade' in value) || value['grade'] === undefined)
46
+ return false;
47
+ if (!('feedback' in value) || value['feedback'] === undefined)
48
+ return false;
37
49
  if (!('createdAt' in value) || value['createdAt'] === undefined)
38
50
  return false;
39
51
  return true;
@@ -52,6 +64,8 @@ export function QuizResponseFromJSONTyped(json, ignoreDiscriminator) {
52
64
  'userAnswer': json['userAnswer'],
53
65
  'isCorrect': json['isCorrect'],
54
66
  'rating': json['rating'],
67
+ 'grade': json['grade'],
68
+ 'feedback': json['feedback'],
55
69
  'createdAt': (new Date(json['createdAt'])),
56
70
  };
57
71
  }
@@ -69,6 +83,8 @@ export function QuizResponseToJSONTyped(value, ignoreDiscriminator = false) {
69
83
  'userAnswer': value['userAnswer'],
70
84
  'isCorrect': value['isCorrect'],
71
85
  'rating': value['rating'],
86
+ 'grade': value['grade'],
87
+ 'feedback': value['feedback'],
72
88
  'createdAt': value['createdAt'].toISOString(),
73
89
  };
74
90
  }
@@ -27,12 +27,6 @@ export interface SubmitQuizResponseRequest {
27
27
  * @memberof SubmitQuizResponseRequest
28
28
  */
29
29
  userAnswer: string;
30
- /**
31
- *
32
- * @type {boolean}
33
- * @memberof SubmitQuizResponseRequest
34
- */
35
- isCorrect?: boolean | null;
36
30
  /**
37
31
  *
38
32
  * @type {string}
@@ -38,7 +38,6 @@ export function SubmitQuizResponseRequestFromJSONTyped(json, ignoreDiscriminator
38
38
  return {
39
39
  'questionId': json['questionId'],
40
40
  'userAnswer': json['userAnswer'],
41
- 'isCorrect': json['isCorrect'] == null ? undefined : json['isCorrect'],
42
41
  'rating': json['rating'] == null ? undefined : json['rating'],
43
42
  };
44
43
  }
@@ -52,7 +51,6 @@ export function SubmitQuizResponseRequestToJSONTyped(value, ignoreDiscriminator
52
51
  return {
53
52
  'questionId': value['questionId'],
54
53
  'userAnswer': value['userAnswer'],
55
- 'isCorrect': value['isCorrect'],
56
54
  'rating': value['rating'],
57
55
  };
58
56
  }
@@ -9,6 +9,9 @@ export * from './Chat';
9
9
  export * from './ChatAnalysis';
10
10
  export * from './ChatRequest';
11
11
  export * from './ChatRequestAttachmentsInner';
12
+ export * from './ChatRequestQuizContext';
13
+ export * from './ChatRequestQuizContextAnswerState';
14
+ export * from './ChatRequestQuizContextCurrentQuestion';
12
15
  export * from './CreateAccountRequest';
13
16
  export * from './CreateChatRequest';
14
17
  export * from './CreateFeatureDto';
@@ -11,6 +11,9 @@ export * from './Chat';
11
11
  export * from './ChatAnalysis';
12
12
  export * from './ChatRequest';
13
13
  export * from './ChatRequestAttachmentsInner';
14
+ export * from './ChatRequestQuizContext';
15
+ export * from './ChatRequestQuizContextAnswerState';
16
+ export * from './ChatRequestQuizContextCurrentQuestion';
14
17
  export * from './CreateAccountRequest';
15
18
  export * from './CreateChatRequest';
16
19
  export * from './CreateFeatureDto';
@@ -10,6 +10,7 @@
10
10
  * Do not edit the class manually.
11
11
  */
12
12
  import type { ChatRequestAttachmentsInner } from './ChatRequestAttachmentsInner';
13
+ import type { ChatRequestQuizContext } from './ChatRequestQuizContext';
13
14
  /**
14
15
  *
15
16
  * @export
@@ -28,12 +29,24 @@ export interface ChatRequest {
28
29
  * @memberof ChatRequest
29
30
  */
30
31
  chatId: string;
32
+ /**
33
+ * Optional chat type. Only applied when a new chat is created (ignored if chatId already exists). Use 'onboarding' to route to onboarding analysis.
34
+ * @type {string}
35
+ * @memberof ChatRequest
36
+ */
37
+ chatType?: string;
31
38
  /**
32
39
  * File attachments to include with the message (max 10)
33
40
  * @type {Array<ChatRequestAttachmentsInner>}
34
41
  * @memberof ChatRequest
35
42
  */
36
43
  attachments?: Array<ChatRequestAttachmentsInner>;
44
+ /**
45
+ *
46
+ * @type {ChatRequestQuizContext}
47
+ * @memberof ChatRequest
48
+ */
49
+ quizContext?: ChatRequestQuizContext;
37
50
  }
38
51
  /**
39
52
  * Check if a given object implements the ChatRequest interface.
@@ -19,6 +19,7 @@ exports.ChatRequestFromJSONTyped = ChatRequestFromJSONTyped;
19
19
  exports.ChatRequestToJSON = ChatRequestToJSON;
20
20
  exports.ChatRequestToJSONTyped = ChatRequestToJSONTyped;
21
21
  const ChatRequestAttachmentsInner_1 = require("./ChatRequestAttachmentsInner");
22
+ const ChatRequestQuizContext_1 = require("./ChatRequestQuizContext");
22
23
  /**
23
24
  * Check if a given object implements the ChatRequest interface.
24
25
  */
@@ -39,7 +40,9 @@ function ChatRequestFromJSONTyped(json, ignoreDiscriminator) {
39
40
  return {
40
41
  'message': json['message'],
41
42
  'chatId': json['chatId'],
43
+ 'chatType': json['chatType'] == null ? undefined : json['chatType'],
42
44
  'attachments': json['attachments'] == null ? undefined : (json['attachments'].map(ChatRequestAttachmentsInner_1.ChatRequestAttachmentsInnerFromJSON)),
45
+ 'quizContext': json['quizContext'] == null ? undefined : (0, ChatRequestQuizContext_1.ChatRequestQuizContextFromJSON)(json['quizContext']),
43
46
  };
44
47
  }
45
48
  function ChatRequestToJSON(json) {
@@ -52,6 +55,8 @@ function ChatRequestToJSONTyped(value, ignoreDiscriminator = false) {
52
55
  return {
53
56
  'message': value['message'],
54
57
  'chatId': value['chatId'],
58
+ 'chatType': value['chatType'],
55
59
  'attachments': value['attachments'] == null ? undefined : (value['attachments'].map(ChatRequestAttachmentsInner_1.ChatRequestAttachmentsInnerToJSON)),
60
+ 'quizContext': (0, ChatRequestQuizContext_1.ChatRequestQuizContextToJSON)(value['quizContext']),
56
61
  };
57
62
  }
@@ -0,0 +1,92 @@
1
+ /**
2
+ * Athena API
3
+ * REST API for the Athena system
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { ChatRequestQuizContextAnswerState } from './ChatRequestQuizContextAnswerState';
13
+ import type { ChatRequestQuizContextCurrentQuestion } from './ChatRequestQuizContextCurrentQuestion';
14
+ /**
15
+ * Optional quiz/flashcard context when the learner is chatting during an active session
16
+ * @export
17
+ * @interface ChatRequestQuizContext
18
+ */
19
+ export interface ChatRequestQuizContext {
20
+ /**
21
+ *
22
+ * @type {string}
23
+ * @memberof ChatRequestQuizContext
24
+ */
25
+ sessionId: string;
26
+ /**
27
+ *
28
+ * @type {string}
29
+ * @memberof ChatRequestQuizContext
30
+ */
31
+ quizTitle: string;
32
+ /**
33
+ *
34
+ * @type {string}
35
+ * @memberof ChatRequestQuizContext
36
+ */
37
+ mode: ChatRequestQuizContextModeEnum;
38
+ /**
39
+ *
40
+ * @type {number}
41
+ * @memberof ChatRequestQuizContext
42
+ */
43
+ totalQuestions: number;
44
+ /**
45
+ *
46
+ * @type {number}
47
+ * @memberof ChatRequestQuizContext
48
+ */
49
+ currentQuestionIndex: number;
50
+ /**
51
+ *
52
+ * @type {ChatRequestQuizContextCurrentQuestion}
53
+ * @memberof ChatRequestQuizContext
54
+ */
55
+ currentQuestion: ChatRequestQuizContextCurrentQuestion;
56
+ /**
57
+ *
58
+ * @type {ChatRequestQuizContextAnswerState}
59
+ * @memberof ChatRequestQuizContext
60
+ */
61
+ answerState?: ChatRequestQuizContextAnswerState;
62
+ /**
63
+ *
64
+ * @type {string}
65
+ * @memberof ChatRequestQuizContext
66
+ */
67
+ sessionStatus: ChatRequestQuizContextSessionStatusEnum;
68
+ }
69
+ /**
70
+ * @export
71
+ */
72
+ export declare const ChatRequestQuizContextModeEnum: {
73
+ readonly Quiz: "quiz";
74
+ readonly Flashcards: "flashcards";
75
+ };
76
+ export type ChatRequestQuizContextModeEnum = typeof ChatRequestQuizContextModeEnum[keyof typeof ChatRequestQuizContextModeEnum];
77
+ /**
78
+ * @export
79
+ */
80
+ export declare const ChatRequestQuizContextSessionStatusEnum: {
81
+ readonly Active: "active";
82
+ readonly Completed: "completed";
83
+ };
84
+ export type ChatRequestQuizContextSessionStatusEnum = typeof ChatRequestQuizContextSessionStatusEnum[keyof typeof ChatRequestQuizContextSessionStatusEnum];
85
+ /**
86
+ * Check if a given object implements the ChatRequestQuizContext interface.
87
+ */
88
+ export declare function instanceOfChatRequestQuizContext(value: object): value is ChatRequestQuizContext;
89
+ export declare function ChatRequestQuizContextFromJSON(json: any): ChatRequestQuizContext;
90
+ export declare function ChatRequestQuizContextFromJSONTyped(json: any, ignoreDiscriminator: boolean): ChatRequestQuizContext;
91
+ export declare function ChatRequestQuizContextToJSON(json: any): ChatRequestQuizContext;
92
+ export declare function ChatRequestQuizContextToJSONTyped(value?: ChatRequestQuizContext | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * Athena API
6
+ * REST API for the Athena system
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.ChatRequestQuizContextSessionStatusEnum = exports.ChatRequestQuizContextModeEnum = void 0;
17
+ exports.instanceOfChatRequestQuizContext = instanceOfChatRequestQuizContext;
18
+ exports.ChatRequestQuizContextFromJSON = ChatRequestQuizContextFromJSON;
19
+ exports.ChatRequestQuizContextFromJSONTyped = ChatRequestQuizContextFromJSONTyped;
20
+ exports.ChatRequestQuizContextToJSON = ChatRequestQuizContextToJSON;
21
+ exports.ChatRequestQuizContextToJSONTyped = ChatRequestQuizContextToJSONTyped;
22
+ const ChatRequestQuizContextAnswerState_1 = require("./ChatRequestQuizContextAnswerState");
23
+ const ChatRequestQuizContextCurrentQuestion_1 = require("./ChatRequestQuizContextCurrentQuestion");
24
+ /**
25
+ * @export
26
+ */
27
+ exports.ChatRequestQuizContextModeEnum = {
28
+ Quiz: 'quiz',
29
+ Flashcards: 'flashcards'
30
+ };
31
+ /**
32
+ * @export
33
+ */
34
+ exports.ChatRequestQuizContextSessionStatusEnum = {
35
+ Active: 'active',
36
+ Completed: 'completed'
37
+ };
38
+ /**
39
+ * Check if a given object implements the ChatRequestQuizContext interface.
40
+ */
41
+ function instanceOfChatRequestQuizContext(value) {
42
+ if (!('sessionId' in value) || value['sessionId'] === undefined)
43
+ return false;
44
+ if (!('quizTitle' in value) || value['quizTitle'] === undefined)
45
+ return false;
46
+ if (!('mode' in value) || value['mode'] === undefined)
47
+ return false;
48
+ if (!('totalQuestions' in value) || value['totalQuestions'] === undefined)
49
+ return false;
50
+ if (!('currentQuestionIndex' in value) || value['currentQuestionIndex'] === undefined)
51
+ return false;
52
+ if (!('currentQuestion' in value) || value['currentQuestion'] === undefined)
53
+ return false;
54
+ if (!('sessionStatus' in value) || value['sessionStatus'] === undefined)
55
+ return false;
56
+ return true;
57
+ }
58
+ function ChatRequestQuizContextFromJSON(json) {
59
+ return ChatRequestQuizContextFromJSONTyped(json, false);
60
+ }
61
+ function ChatRequestQuizContextFromJSONTyped(json, ignoreDiscriminator) {
62
+ if (json == null) {
63
+ return json;
64
+ }
65
+ return {
66
+ 'sessionId': json['sessionId'],
67
+ 'quizTitle': json['quizTitle'],
68
+ 'mode': json['mode'],
69
+ 'totalQuestions': json['totalQuestions'],
70
+ 'currentQuestionIndex': json['currentQuestionIndex'],
71
+ 'currentQuestion': (0, ChatRequestQuizContextCurrentQuestion_1.ChatRequestQuizContextCurrentQuestionFromJSON)(json['currentQuestion']),
72
+ 'answerState': json['answerState'] == null ? undefined : (0, ChatRequestQuizContextAnswerState_1.ChatRequestQuizContextAnswerStateFromJSON)(json['answerState']),
73
+ 'sessionStatus': json['sessionStatus'],
74
+ };
75
+ }
76
+ function ChatRequestQuizContextToJSON(json) {
77
+ return ChatRequestQuizContextToJSONTyped(json, false);
78
+ }
79
+ function ChatRequestQuizContextToJSONTyped(value, ignoreDiscriminator = false) {
80
+ if (value == null) {
81
+ return value;
82
+ }
83
+ return {
84
+ 'sessionId': value['sessionId'],
85
+ 'quizTitle': value['quizTitle'],
86
+ 'mode': value['mode'],
87
+ 'totalQuestions': value['totalQuestions'],
88
+ 'currentQuestionIndex': value['currentQuestionIndex'],
89
+ 'currentQuestion': (0, ChatRequestQuizContextCurrentQuestion_1.ChatRequestQuizContextCurrentQuestionToJSON)(value['currentQuestion']),
90
+ 'answerState': (0, ChatRequestQuizContextAnswerState_1.ChatRequestQuizContextAnswerStateToJSON)(value['answerState']),
91
+ 'sessionStatus': value['sessionStatus'],
92
+ };
93
+ }
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Athena API
3
+ * REST API for the Athena system
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ *
14
+ * @export
15
+ * @interface ChatRequestQuizContextAnswerState
16
+ */
17
+ export interface ChatRequestQuizContextAnswerState {
18
+ /**
19
+ *
20
+ * @type {boolean}
21
+ * @memberof ChatRequestQuizContextAnswerState
22
+ */
23
+ answered: boolean;
24
+ /**
25
+ *
26
+ * @type {string}
27
+ * @memberof ChatRequestQuizContextAnswerState
28
+ */
29
+ userAnswer?: string;
30
+ /**
31
+ *
32
+ * @type {boolean}
33
+ * @memberof ChatRequestQuizContextAnswerState
34
+ */
35
+ isCorrect?: boolean | null;
36
+ /**
37
+ *
38
+ * @type {string}
39
+ * @memberof ChatRequestQuizContextAnswerState
40
+ */
41
+ grade?: string | null;
42
+ /**
43
+ *
44
+ * @type {string}
45
+ * @memberof ChatRequestQuizContextAnswerState
46
+ */
47
+ feedback?: string | null;
48
+ /**
49
+ *
50
+ * @type {string}
51
+ * @memberof ChatRequestQuizContextAnswerState
52
+ */
53
+ rating?: string | null;
54
+ }
55
+ /**
56
+ * Check if a given object implements the ChatRequestQuizContextAnswerState interface.
57
+ */
58
+ export declare function instanceOfChatRequestQuizContextAnswerState(value: object): value is ChatRequestQuizContextAnswerState;
59
+ export declare function ChatRequestQuizContextAnswerStateFromJSON(json: any): ChatRequestQuizContextAnswerState;
60
+ export declare function ChatRequestQuizContextAnswerStateFromJSONTyped(json: any, ignoreDiscriminator: boolean): ChatRequestQuizContextAnswerState;
61
+ export declare function ChatRequestQuizContextAnswerStateToJSON(json: any): ChatRequestQuizContextAnswerState;
62
+ export declare function ChatRequestQuizContextAnswerStateToJSONTyped(value?: ChatRequestQuizContextAnswerState | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * Athena API
6
+ * REST API for the Athena system
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.instanceOfChatRequestQuizContextAnswerState = instanceOfChatRequestQuizContextAnswerState;
17
+ exports.ChatRequestQuizContextAnswerStateFromJSON = ChatRequestQuizContextAnswerStateFromJSON;
18
+ exports.ChatRequestQuizContextAnswerStateFromJSONTyped = ChatRequestQuizContextAnswerStateFromJSONTyped;
19
+ exports.ChatRequestQuizContextAnswerStateToJSON = ChatRequestQuizContextAnswerStateToJSON;
20
+ exports.ChatRequestQuizContextAnswerStateToJSONTyped = ChatRequestQuizContextAnswerStateToJSONTyped;
21
+ /**
22
+ * Check if a given object implements the ChatRequestQuizContextAnswerState interface.
23
+ */
24
+ function instanceOfChatRequestQuizContextAnswerState(value) {
25
+ if (!('answered' in value) || value['answered'] === undefined)
26
+ return false;
27
+ return true;
28
+ }
29
+ function ChatRequestQuizContextAnswerStateFromJSON(json) {
30
+ return ChatRequestQuizContextAnswerStateFromJSONTyped(json, false);
31
+ }
32
+ function ChatRequestQuizContextAnswerStateFromJSONTyped(json, ignoreDiscriminator) {
33
+ if (json == null) {
34
+ return json;
35
+ }
36
+ return {
37
+ 'answered': json['answered'],
38
+ 'userAnswer': json['userAnswer'] == null ? undefined : json['userAnswer'],
39
+ 'isCorrect': json['isCorrect'] == null ? undefined : json['isCorrect'],
40
+ 'grade': json['grade'] == null ? undefined : json['grade'],
41
+ 'feedback': json['feedback'] == null ? undefined : json['feedback'],
42
+ 'rating': json['rating'] == null ? undefined : json['rating'],
43
+ };
44
+ }
45
+ function ChatRequestQuizContextAnswerStateToJSON(json) {
46
+ return ChatRequestQuizContextAnswerStateToJSONTyped(json, false);
47
+ }
48
+ function ChatRequestQuizContextAnswerStateToJSONTyped(value, ignoreDiscriminator = false) {
49
+ if (value == null) {
50
+ return value;
51
+ }
52
+ return {
53
+ 'answered': value['answered'],
54
+ 'userAnswer': value['userAnswer'],
55
+ 'isCorrect': value['isCorrect'],
56
+ 'grade': value['grade'],
57
+ 'feedback': value['feedback'],
58
+ 'rating': value['rating'],
59
+ };
60
+ }
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Athena API
3
+ * REST API for the Athena system
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ *
14
+ * @export
15
+ * @interface ChatRequestQuizContextCurrentQuestion
16
+ */
17
+ export interface ChatRequestQuizContextCurrentQuestion {
18
+ /**
19
+ *
20
+ * @type {string}
21
+ * @memberof ChatRequestQuizContextCurrentQuestion
22
+ */
23
+ type: string;
24
+ /**
25
+ *
26
+ * @type {string}
27
+ * @memberof ChatRequestQuizContextCurrentQuestion
28
+ */
29
+ question: string;
30
+ /**
31
+ *
32
+ * @type {string}
33
+ * @memberof ChatRequestQuizContextCurrentQuestion
34
+ */
35
+ correctAnswer: string;
36
+ /**
37
+ *
38
+ * @type {string}
39
+ * @memberof ChatRequestQuizContextCurrentQuestion
40
+ */
41
+ explanation?: string | null;
42
+ }
43
+ /**
44
+ * Check if a given object implements the ChatRequestQuizContextCurrentQuestion interface.
45
+ */
46
+ export declare function instanceOfChatRequestQuizContextCurrentQuestion(value: object): value is ChatRequestQuizContextCurrentQuestion;
47
+ export declare function ChatRequestQuizContextCurrentQuestionFromJSON(json: any): ChatRequestQuizContextCurrentQuestion;
48
+ export declare function ChatRequestQuizContextCurrentQuestionFromJSONTyped(json: any, ignoreDiscriminator: boolean): ChatRequestQuizContextCurrentQuestion;
49
+ export declare function ChatRequestQuizContextCurrentQuestionToJSON(json: any): ChatRequestQuizContextCurrentQuestion;
50
+ export declare function ChatRequestQuizContextCurrentQuestionToJSONTyped(value?: ChatRequestQuizContextCurrentQuestion | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * Athena API
6
+ * REST API for the Athena system
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.instanceOfChatRequestQuizContextCurrentQuestion = instanceOfChatRequestQuizContextCurrentQuestion;
17
+ exports.ChatRequestQuizContextCurrentQuestionFromJSON = ChatRequestQuizContextCurrentQuestionFromJSON;
18
+ exports.ChatRequestQuizContextCurrentQuestionFromJSONTyped = ChatRequestQuizContextCurrentQuestionFromJSONTyped;
19
+ exports.ChatRequestQuizContextCurrentQuestionToJSON = ChatRequestQuizContextCurrentQuestionToJSON;
20
+ exports.ChatRequestQuizContextCurrentQuestionToJSONTyped = ChatRequestQuizContextCurrentQuestionToJSONTyped;
21
+ /**
22
+ * Check if a given object implements the ChatRequestQuizContextCurrentQuestion interface.
23
+ */
24
+ function instanceOfChatRequestQuizContextCurrentQuestion(value) {
25
+ if (!('type' in value) || value['type'] === undefined)
26
+ return false;
27
+ if (!('question' in value) || value['question'] === undefined)
28
+ return false;
29
+ if (!('correctAnswer' in value) || value['correctAnswer'] === undefined)
30
+ return false;
31
+ return true;
32
+ }
33
+ function ChatRequestQuizContextCurrentQuestionFromJSON(json) {
34
+ return ChatRequestQuizContextCurrentQuestionFromJSONTyped(json, false);
35
+ }
36
+ function ChatRequestQuizContextCurrentQuestionFromJSONTyped(json, ignoreDiscriminator) {
37
+ if (json == null) {
38
+ return json;
39
+ }
40
+ return {
41
+ 'type': json['type'],
42
+ 'question': json['question'],
43
+ 'correctAnswer': json['correctAnswer'],
44
+ 'explanation': json['explanation'] == null ? undefined : json['explanation'],
45
+ };
46
+ }
47
+ function ChatRequestQuizContextCurrentQuestionToJSON(json) {
48
+ return ChatRequestQuizContextCurrentQuestionToJSONTyped(json, false);
49
+ }
50
+ function ChatRequestQuizContextCurrentQuestionToJSONTyped(value, ignoreDiscriminator = false) {
51
+ if (value == null) {
52
+ return value;
53
+ }
54
+ return {
55
+ 'type': value['type'],
56
+ 'question': value['question'],
57
+ 'correctAnswer': value['correctAnswer'],
58
+ 'explanation': value['explanation'],
59
+ };
60
+ }
@@ -51,6 +51,18 @@ export interface QuizResponse {
51
51
  * @memberof QuizResponse
52
52
  */
53
53
  rating: QuizResponseRatingEnum | null;
54
+ /**
55
+ *
56
+ * @type {string}
57
+ * @memberof QuizResponse
58
+ */
59
+ grade: QuizResponseGradeEnum | null;
60
+ /**
61
+ *
62
+ * @type {string}
63
+ * @memberof QuizResponse
64
+ */
65
+ feedback: string | null;
54
66
  /**
55
67
  *
56
68
  * @type {Date}
@@ -66,6 +78,15 @@ export declare const QuizResponseRatingEnum: {
66
78
  readonly NeedPractice: "need-practice";
67
79
  };
68
80
  export type QuizResponseRatingEnum = typeof QuizResponseRatingEnum[keyof typeof QuizResponseRatingEnum];
81
+ /**
82
+ * @export
83
+ */
84
+ export declare const QuizResponseGradeEnum: {
85
+ readonly Correct: "correct";
86
+ readonly Almost: "almost";
87
+ readonly Incorrect: "incorrect";
88
+ };
89
+ export type QuizResponseGradeEnum = typeof QuizResponseGradeEnum[keyof typeof QuizResponseGradeEnum];
69
90
  /**
70
91
  * Check if a given object implements the QuizResponse interface.
71
92
  */
@@ -13,7 +13,7 @@
13
13
  * Do not edit the class manually.
14
14
  */
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.QuizResponseRatingEnum = void 0;
16
+ exports.QuizResponseGradeEnum = exports.QuizResponseRatingEnum = void 0;
17
17
  exports.instanceOfQuizResponse = instanceOfQuizResponse;
18
18
  exports.QuizResponseFromJSON = QuizResponseFromJSON;
19
19
  exports.QuizResponseFromJSONTyped = QuizResponseFromJSONTyped;
@@ -26,6 +26,14 @@ exports.QuizResponseRatingEnum = {
26
26
  WasRight: 'was-right',
27
27
  NeedPractice: 'need-practice'
28
28
  };
29
+ /**
30
+ * @export
31
+ */
32
+ exports.QuizResponseGradeEnum = {
33
+ Correct: 'correct',
34
+ Almost: 'almost',
35
+ Incorrect: 'incorrect'
36
+ };
29
37
  /**
30
38
  * Check if a given object implements the QuizResponse interface.
31
39
  */
@@ -42,6 +50,10 @@ function instanceOfQuizResponse(value) {
42
50
  return false;
43
51
  if (!('rating' in value) || value['rating'] === undefined)
44
52
  return false;
53
+ if (!('grade' in value) || value['grade'] === undefined)
54
+ return false;
55
+ if (!('feedback' in value) || value['feedback'] === undefined)
56
+ return false;
45
57
  if (!('createdAt' in value) || value['createdAt'] === undefined)
46
58
  return false;
47
59
  return true;
@@ -60,6 +72,8 @@ function QuizResponseFromJSONTyped(json, ignoreDiscriminator) {
60
72
  'userAnswer': json['userAnswer'],
61
73
  'isCorrect': json['isCorrect'],
62
74
  'rating': json['rating'],
75
+ 'grade': json['grade'],
76
+ 'feedback': json['feedback'],
63
77
  'createdAt': (new Date(json['createdAt'])),
64
78
  };
65
79
  }
@@ -77,6 +91,8 @@ function QuizResponseToJSONTyped(value, ignoreDiscriminator = false) {
77
91
  'userAnswer': value['userAnswer'],
78
92
  'isCorrect': value['isCorrect'],
79
93
  'rating': value['rating'],
94
+ 'grade': value['grade'],
95
+ 'feedback': value['feedback'],
80
96
  'createdAt': value['createdAt'].toISOString(),
81
97
  };
82
98
  }
@@ -27,12 +27,6 @@ export interface SubmitQuizResponseRequest {
27
27
  * @memberof SubmitQuizResponseRequest
28
28
  */
29
29
  userAnswer: string;
30
- /**
31
- *
32
- * @type {boolean}
33
- * @memberof SubmitQuizResponseRequest
34
- */
35
- isCorrect?: boolean | null;
36
30
  /**
37
31
  *
38
32
  * @type {string}
@@ -46,7 +46,6 @@ function SubmitQuizResponseRequestFromJSONTyped(json, ignoreDiscriminator) {
46
46
  return {
47
47
  'questionId': json['questionId'],
48
48
  'userAnswer': json['userAnswer'],
49
- 'isCorrect': json['isCorrect'] == null ? undefined : json['isCorrect'],
50
49
  'rating': json['rating'] == null ? undefined : json['rating'],
51
50
  };
52
51
  }
@@ -60,7 +59,6 @@ function SubmitQuizResponseRequestToJSONTyped(value, ignoreDiscriminator = false
60
59
  return {
61
60
  'questionId': value['questionId'],
62
61
  'userAnswer': value['userAnswer'],
63
- 'isCorrect': value['isCorrect'],
64
62
  'rating': value['rating'],
65
63
  };
66
64
  }
@@ -9,6 +9,9 @@ export * from './Chat';
9
9
  export * from './ChatAnalysis';
10
10
  export * from './ChatRequest';
11
11
  export * from './ChatRequestAttachmentsInner';
12
+ export * from './ChatRequestQuizContext';
13
+ export * from './ChatRequestQuizContextAnswerState';
14
+ export * from './ChatRequestQuizContextCurrentQuestion';
12
15
  export * from './CreateAccountRequest';
13
16
  export * from './CreateChatRequest';
14
17
  export * from './CreateFeatureDto';
@@ -27,6 +27,9 @@ __exportStar(require("./Chat"), exports);
27
27
  __exportStar(require("./ChatAnalysis"), exports);
28
28
  __exportStar(require("./ChatRequest"), exports);
29
29
  __exportStar(require("./ChatRequestAttachmentsInner"), exports);
30
+ __exportStar(require("./ChatRequestQuizContext"), exports);
31
+ __exportStar(require("./ChatRequestQuizContextAnswerState"), exports);
32
+ __exportStar(require("./ChatRequestQuizContextCurrentQuestion"), exports);
30
33
  __exportStar(require("./CreateAccountRequest"), exports);
31
34
  __exportStar(require("./CreateChatRequest"), exports);
32
35
  __exportStar(require("./CreateFeatureDto"), exports);
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@instructure/athena-api-client",
3
3
  "private": false,
4
- "version": "1.0.14",
4
+ "version": "1.0.17",
5
5
  "description": "OpenAPI client for the Athena API",
6
6
  "author": "Instructure",
7
7
  "repository": {