@quesmed/types-rn 2.1.25 → 2.2.2

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/models/Blog.d.ts CHANGED
@@ -13,3 +13,8 @@ export interface IBlogPost {
13
13
  tags?: IBlogTag[];
14
14
  relatedBlogPosts?: IBlogPost[];
15
15
  }
16
+ export interface IBlogPostTags {
17
+ id: Id;
18
+ blogPostId: Id;
19
+ blogTagId: Id;
20
+ }
package/models/Book.d.ts CHANGED
@@ -20,3 +20,10 @@ export interface IBook {
20
20
  stripePriceId: string;
21
21
  authors: IAuthor[];
22
22
  }
23
+ export interface IBookAuthor {
24
+ id: Id;
25
+ bookId: number;
26
+ book?: IBook;
27
+ authorId: number;
28
+ author?: IAuthor;
29
+ }
@@ -4,3 +4,7 @@ export declare enum EDifficultyType {
4
4
  CHALLENGING = 2,
5
5
  DIFFICULT = 3
6
6
  }
7
+ export interface IDifficultyType {
8
+ id: EDifficultyType;
9
+ name: string;
10
+ }
@@ -1,6 +1,39 @@
1
+ import { IPreBuildMarksheet } from '../resolvers/mutation/restricted/marksheet';
1
2
  import { IPrescribeAnswer, IPrescribeMark, IQuestion, IQuestionChoice, IQuestionQAAnswer } from './Question';
2
3
  import { Id } from './Type';
3
4
  import { IUser } from './User';
5
+ export declare const enum EMarksheetState {
6
+ LOBBY = 0,
7
+ PRESTART = 1,
8
+ QUIZ_BUILDER = 2,
9
+ STATION = 3,
10
+ RESULT = 4
11
+ }
12
+ export declare const enum EMarksheetAction {
13
+ PRESTART = 0,
14
+ START = 1,
15
+ END = 2,
16
+ PAUSE = 3,
17
+ CONTINUE = 4,
18
+ CONNECT = 5,
19
+ DISCONNECT = 6,
20
+ SELECT = 7,
21
+ LEFT = 8,
22
+ KICK = 9,
23
+ CHOICE_SELECTED = 10,
24
+ QUESTION_CHANGE = 11,
25
+ TOPIC_CONCEPT_SELECTION = 12,
26
+ BUILDER_CONFIG_SELECTION = 13,
27
+ STATE_CHANGE = 14
28
+ }
29
+ export interface IMarksheetMember {
30
+ id: Id;
31
+ createdAt: number | Date | null;
32
+ marksheetId: Id;
33
+ marksheet?: IMarksheet | null;
34
+ userId: Id;
35
+ user?: IUser | null;
36
+ }
4
37
  export interface IMarksheet {
5
38
  id: Id;
6
39
  createdAt: number | Date;
@@ -18,6 +51,15 @@ export interface IMarksheet {
18
51
  incorrect?: number;
19
52
  totalQuestions?: number;
20
53
  isTestMarksheet?: boolean;
54
+ solo: boolean;
55
+ agoraId: string;
56
+ users: IMarksheetMember[];
57
+ state: EMarksheetState;
58
+ completed: boolean;
59
+ timeTaken: number;
60
+ currentMarkId?: number;
61
+ topicConceptData?: string;
62
+ preBuildData?: IPreBuildMarksheet;
21
63
  }
22
64
  export declare type IMarksheetMarkJSONB = string | [string] | [IQuestionQAAnswer] | [string[], string[]] | [IPrescribeMark] | IPrescribeAnswer | null;
23
65
  export interface IMarksheetMark {
@@ -33,4 +75,14 @@ export interface IMarksheetMark {
33
75
  questionId: Id;
34
76
  question: IQuestion;
35
77
  mark: IMarksheetMarkJSONB;
78
+ marksheet?: IMarksheet;
79
+ }
80
+ export interface IPreBuildMarksheetRef {
81
+ id: Id;
82
+ createdAt: number | Date;
83
+ userId: Id;
84
+ unseen: number[];
85
+ seenCorrect: number[];
86
+ seenIncorrect: number[];
87
+ source: string;
36
88
  }
@@ -5,6 +5,7 @@ export interface IMockTest {
5
5
  id: Id;
6
6
  createdAt: number | Date;
7
7
  title: string;
8
+ topicIds: number[];
8
9
  typeId: ETopicType | null;
9
10
  passingMark: number;
10
11
  public: boolean;
@@ -20,3 +21,8 @@ export interface IUserMockTest {
20
21
  lastMarksheetStartedAt?: number | Date;
21
22
  lastMarksheetEndedAt?: number | Date;
22
23
  }
24
+ export interface IMockTestQuestion {
25
+ id: Id;
26
+ mockTestId: number;
27
+ questionId: number;
28
+ }
@@ -8,6 +8,7 @@ export interface IOsceMarksheetMember {
8
8
  userId: Id | null;
9
9
  user: IUser | null;
10
10
  role: EOsceRoles;
11
+ source?: string;
11
12
  }
12
13
  export interface IOsceMarksheetMark {
13
14
  id: Id;
@@ -1,3 +1,4 @@
1
+ import { IConcept } from './Concept';
1
2
  import { EDifficultyType } from './Difficulty';
2
3
  import { IPicture } from './Picture';
3
4
  import { ITopic } from './Topic';
@@ -49,6 +50,13 @@ export interface IOsceStation {
49
50
  lastOsceMarksheetId?: Id;
50
51
  score?: number;
51
52
  }
53
+ export interface IOsceStationTopic {
54
+ id: Id;
55
+ osceStationId: number;
56
+ topicId: number;
57
+ concept?: IConcept;
58
+ osceStation?: IOsceStation;
59
+ }
52
60
  export declare const OSCE_GLOBAL_RATING: {
53
61
  [key: number]: string;
54
62
  };
@@ -12,3 +12,46 @@ export interface IPicture {
12
12
  topicId: Id;
13
13
  topic: ITopic;
14
14
  }
15
+ export interface ICardPicture {
16
+ id: Id;
17
+ pictureId: Id;
18
+ cardId: Id;
19
+ picture: IPicture;
20
+ }
21
+ export interface IChapterPicture {
22
+ id: Id;
23
+ pictureId: Id;
24
+ chapterId: Id;
25
+ picture: IPicture;
26
+ }
27
+ export interface IOsceActorPicture {
28
+ id: Id;
29
+ pictureId: Id;
30
+ osceStationId: Id;
31
+ picture: IPicture;
32
+ }
33
+ export interface IOsceCandidatePicture {
34
+ id: Id;
35
+ pictureId: Id;
36
+ osceStationId: Id;
37
+ picture: IPicture;
38
+ }
39
+ export interface IOsceExaminerPicture {
40
+ id: Id;
41
+ pictureId: Id;
42
+ osceStationId: Id;
43
+ picture: IPicture;
44
+ }
45
+ export interface IOsceWalkthroughPicture {
46
+ id: Id;
47
+ pictureId: Id;
48
+ osceStationId: Id;
49
+ picture: IPicture;
50
+ }
51
+ export interface IQuestionPicture {
52
+ id: Id;
53
+ pictureId: Id;
54
+ questionId: Id;
55
+ choiceId: Id | null;
56
+ picture: IPicture;
57
+ }
@@ -1,6 +1,7 @@
1
1
  import { IConcept } from './Concept';
2
2
  import { EDifficultyType } from './Difficulty';
3
3
  import { IPicture } from './Picture';
4
+ import { ITopic } from './Topic';
4
5
  import { Id } from './Type';
5
6
  import { IUser } from './User';
6
7
  export declare enum EPsaSectionType {
@@ -40,6 +41,15 @@ export interface IQuestionComment {
40
41
  dislikes?: number;
41
42
  isLikedByMe?: EQuestionLike;
42
43
  }
44
+ export interface IQuestionCommentLike {
45
+ createdAt: number | Date;
46
+ updatedAt: number | Date;
47
+ userId: Id;
48
+ user: IUser;
49
+ commentId: Id;
50
+ comment: IQuestionComment;
51
+ likeTrueDislikeFalse: boolean;
52
+ }
43
53
  export declare type IQuestionAnswer = string | [string] | [IQuestionQAAnswer] | [string[], string[]] | IPrescribeAnswer[];
44
54
  export declare type IQuestionAll = IQuestion | IQuestionSBA | IQuestionQA | IQuestionMultiQ | IQuestionPrescribe;
45
55
  export interface IQuestion {
@@ -56,6 +66,7 @@ export interface IQuestion {
56
66
  answer: IQuestionAnswer;
57
67
  totalVotes: number;
58
68
  choices: IQuestionChoice[];
69
+ topic?: ITopic;
59
70
  pictures?: IPicture[];
60
71
  difficulty: EDifficultyType;
61
72
  elo: number;
@@ -74,6 +85,24 @@ export interface IQuestionChoice {
74
85
  votes: number;
75
86
  picture?: IPicture | null;
76
87
  }
88
+ export interface IQuestionElo {
89
+ id: Id;
90
+ date: number | Date;
91
+ questionId: Id;
92
+ question?: IQuestion;
93
+ elo: number;
94
+ }
95
+ export interface IQuestionLike {
96
+ createdAt: number | Date;
97
+ updatedAt: number | Date;
98
+ userId: Id;
99
+ questionId: Id;
100
+ likeTrueDislikeFalse: boolean;
101
+ }
102
+ export interface IQuestionType {
103
+ id: Id;
104
+ name: string;
105
+ }
77
106
  export declare function isQuestionSBA(data: IQuestionAll): data is IQuestionSBA;
78
107
  export interface IQuestionSBA extends IQuestion {
79
108
  answer: [string];
@@ -0,0 +1,11 @@
1
+ import { Id } from "./Type";
2
+ import { IUser } from "./User";
3
+ export interface IReferral {
4
+ id: Id;
5
+ createdAt: number | Date;
6
+ updatedAt: number | Date;
7
+ refereeUserId: Id;
8
+ referredUserId: Id;
9
+ referredUser: IUser;
10
+ applied: boolean;
11
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
package/models/Todo.d.ts CHANGED
@@ -31,3 +31,11 @@ export interface IPreBuildTodo {
31
31
  seen: number;
32
32
  buildRef: number;
33
33
  }
34
+ export interface IPreBuildTodoRef {
35
+ id: Id;
36
+ createdAt: number | Date;
37
+ userId: Id;
38
+ unseen: number[];
39
+ seen: number[];
40
+ source: string;
41
+ }
@@ -1,5 +1,31 @@
1
+ import { ITopic } from './Topic';
2
+ import { Id } from './Type';
1
3
  export interface IUniversity {
2
4
  id: number;
3
5
  name: string;
4
6
  country: string;
5
7
  }
8
+ export interface IUniversitiesMonthlyLeaderboard {
9
+ id: Id;
10
+ updatedAt: number | Date;
11
+ yearMonth: number;
12
+ universityId: Id;
13
+ university: IUniversity;
14
+ rank: number;
15
+ correct: number;
16
+ incorrect: number;
17
+ topicId: Id;
18
+ topic: ITopic;
19
+ }
20
+ export interface IUniversitiesQuarterlyLeaderboard {
21
+ id: Id;
22
+ updatedAt: number | Date;
23
+ yearQuarter: number;
24
+ universityId: Id;
25
+ university: IUniversity;
26
+ rank: number;
27
+ correct: number;
28
+ incorrect: number;
29
+ topicId: Id;
30
+ topic: ITopic;
31
+ }
package/models/User.d.ts CHANGED
@@ -104,6 +104,7 @@ export interface IUserCompletedCards {
104
104
  userId: Id;
105
105
  concept: IConcept;
106
106
  lastSeen: number | Date;
107
+ reviewDate: number | Date;
107
108
  score: number;
108
109
  iteration: number;
109
110
  optimalFactor: number;
@@ -127,3 +128,24 @@ export interface IUserProgress {
127
128
  correct: number;
128
129
  countCards: number;
129
130
  }
131
+ export interface IResetPasswordToken {
132
+ id: Id;
133
+ userId: Id;
134
+ resetRef: string;
135
+ createdAt: number | Date;
136
+ updatedAt: number | Date;
137
+ isConsumed: boolean;
138
+ }
139
+ export interface IUserElo {
140
+ id: Id;
141
+ date: number | Date;
142
+ userId: Id;
143
+ user?: IUser;
144
+ elo: number;
145
+ }
146
+ export interface IUserQuestionsFirstAttempt {
147
+ createdAt: number | Date;
148
+ userId: Id;
149
+ questionId: Id;
150
+ answer: boolean;
151
+ }
package/models/Video.d.ts CHANGED
@@ -30,3 +30,21 @@ export interface IVideo {
30
30
  sent24hrPushAt: number | Date | null;
31
31
  viewsToday?: number | null;
32
32
  }
33
+ export interface IVideoOsceStation {
34
+ id: Id;
35
+ videoId: number;
36
+ osceStationId: number;
37
+ video: IVideo;
38
+ }
39
+ export interface IVideoConcept {
40
+ id: Id;
41
+ videoId: number;
42
+ conceptId: number;
43
+ video: IVideo;
44
+ }
45
+ export interface IVideoViews {
46
+ id: Id;
47
+ videoId: number;
48
+ date: number | Date;
49
+ views: number;
50
+ }
package/models/index.d.ts CHANGED
@@ -23,3 +23,4 @@ export * from './Type';
23
23
  export * from './University';
24
24
  export * from './User';
25
25
  export * from './Video';
26
+ export * from './Referrals';
package/models/index.js CHANGED
@@ -35,3 +35,4 @@ __exportStar(require("./Type"), exports);
35
35
  __exportStar(require("./University"), exports);
36
36
  __exportStar(require("./User"), exports);
37
37
  __exportStar(require("./Video"), exports);
38
+ __exportStar(require("./Referrals"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quesmed/types-rn",
3
- "version": "2.1.25",
3
+ "version": "2.2.2",
4
4
  "description": "Typescript types for Quesmed",
5
5
  "keywords": [
6
6
  "quesmed",
@@ -2,22 +2,30 @@ import { ApolloCache, ApolloClient } from '@apollo/client';
2
2
  import { ApolloUpdateOptions, ApolloUpdateResultRestricted } from '../..';
3
3
  import { Id } from '../../../models';
4
4
  import { graphqlNormalize, RestrictedData } from '../../types';
5
- import { IMarksheet } from './../../../models/Marksheet';
6
- import { IUserFlaggedQuestion } from './../../../models/User';
5
+ import { EMarksheetAction, EMarksheetState, IMarksheet, IMarksheetMarkJSONB } from './../../../models/Marksheet';
6
+ import { IUser, IUserFlaggedQuestion } from './../../../models/User';
7
7
  export interface IPreBuildMarksheet {
8
8
  unseen: number;
9
9
  seenCorrect: number;
10
10
  seenIncorrect: number;
11
11
  buildRef: number;
12
12
  }
13
- export declare const BUILD_MARKSHEET: import("@apollo/client").DocumentNode;
13
+ /**
14
+ * buildMarksheet
15
+ */
14
16
  export interface IBuildMarksheetInput extends IPreBuildMarksheet {
15
17
  isTest: boolean;
18
+ marksheetId: Id;
19
+ secondsPerQuestion: number;
16
20
  }
17
21
  export interface IBuildMarksheetVar {
18
22
  buildMarksheet: IBuildMarksheetInput;
19
23
  }
20
24
  export declare type IBuildMarksheetData = RestrictedData<graphqlNormalize & IMarksheet, 'buildMarksheet'>;
25
+ export declare const BUILD_MARKSHEET: import("@apollo/client").DocumentNode;
26
+ /**
27
+ * reBuildMarksheet
28
+ */
21
29
  export declare const RE_BUILD_MARKSHEET: import("@apollo/client").DocumentNode;
22
30
  export interface IReBuildMarksheetVar {
23
31
  marksheetId: number;
@@ -30,6 +38,9 @@ export interface IMarksheetInput {
30
38
  mark?: string;
31
39
  timeTaken: number;
32
40
  }
41
+ /**
42
+ * saveMarksheets
43
+ */
33
44
  export declare const SAVE_MARKSHEET: import("@apollo/client").DocumentNode;
34
45
  export declare const updateMarksheets: (cache: ApolloCache<any>, result: ApolloUpdateResultRestricted<ISaveMarksheetsData>, options: ApolloUpdateOptions) => void;
35
46
  export declare const optimisticSaveMarksheets: (client: ApolloClient<any>, marksheetInput: IMarksheetInput, questionIndex: number) => ISaveMarksheetsData;
@@ -37,14 +48,86 @@ export interface ISaveMarksheetsVar {
37
48
  marksheetInput: IMarksheetInput[];
38
49
  }
39
50
  export declare type ISaveMarksheetsData = RestrictedData<(graphqlNormalize & IMarksheet)[], 'saveMarksheets'>;
51
+ /**
52
+ * addFlaggedQuestion
53
+ */
40
54
  export declare const ADD_FLAGGED_QUESTION: import("@apollo/client").DocumentNode;
41
55
  export interface IAddFlaggedQuestionVar {
42
56
  markId: number;
43
57
  questionId: number;
44
58
  }
45
59
  export declare type IAddFlaggedQuestionData = RestrictedData<graphqlNormalize & IUserFlaggedQuestion, 'addFlaggedQuestion'>;
60
+ /**
61
+ * removeFlaggedQuestion
62
+ */
46
63
  export declare const REMOVE_FLAGGED_QUESTION: import("@apollo/client").DocumentNode;
47
64
  export interface IRemoveFlaggedQuestionVar {
48
65
  id: Id;
49
66
  }
50
67
  export declare type IRemoveFlaggedQuestionData = RestrictedData<graphqlNormalize & IUserFlaggedQuestion, 'removeFlaggedQuestion'>;
68
+ /**
69
+ * startOrJoinMarksheet
70
+ */
71
+ export interface IStartOrJoinMarksheetVar {
72
+ agoraId: string;
73
+ solo: boolean;
74
+ }
75
+ export declare type IStartOrJoinMarksheetData = RestrictedData<graphqlNormalize & IMarksheet, 'startOrJoinMarksheet'>;
76
+ export declare const START_OR_JOIN_MARKSHEET: import("@apollo/client").DocumentNode;
77
+ /**
78
+ * modifyMarksheetInfo
79
+ */
80
+ export interface IMarksheetAction {
81
+ userId: Id;
82
+ user: IUser;
83
+ startedAt: Date | null;
84
+ endedAt: Date | null;
85
+ state: EMarksheetState;
86
+ action: EMarksheetAction;
87
+ }
88
+ export interface IMarkDataInfo {
89
+ markId?: Id;
90
+ questionChoiceId?: Id;
91
+ updatedAt?: Date;
92
+ questionId?: Id;
93
+ timeTaken?: number;
94
+ mark?: IMarksheetMarkJSONB;
95
+ }
96
+ export interface IBuildConfigData {
97
+ numberOfQuestions?: number;
98
+ difficulty?: number[];
99
+ unseen?: number;
100
+ seenIncorrect?: number;
101
+ seenCorrect?: number;
102
+ secondsPerQuestion?: number;
103
+ isTest?: boolean;
104
+ }
105
+ export interface IQbankInfoInput {
106
+ markSheetAction?: IMarksheetAction;
107
+ topicConceptData?: string;
108
+ builderConfig?: IBuildConfigData;
109
+ markData?: IMarkDataInfo;
110
+ action?: EMarksheetAction;
111
+ marksheetId: Id;
112
+ }
113
+ export interface IModifyMarksheetInfo {
114
+ qBankInfo: IQbankInfoInput;
115
+ }
116
+ export declare type IModifyMarksheetData = RestrictedData<graphqlNormalize & IMarksheet, 'modifyMarksheetInfo'>;
117
+ export declare const MODIFY_MARKSHEET_INFO: import("@apollo/client").DocumentNode;
118
+ /**
119
+ * leaveMarksheet
120
+ */
121
+ export interface ILeaveMarksheetVar {
122
+ marksheetId: Id;
123
+ }
124
+ export declare type ILeaveMarksheetData = RestrictedData<graphqlNormalize & IMarksheet, 'leaveMarksheet'>;
125
+ export declare const LEAVE_MARKSHEET: import("@apollo/client").DocumentNode;
126
+ /**
127
+ * endMarksheet
128
+ */
129
+ export interface IEndMarksheetVar {
130
+ marksheetId: Id;
131
+ }
132
+ export declare type IEndMarksheetData = RestrictedData<graphqlNormalize & boolean, 'endMarksheet'>;
133
+ export declare const END_MARKSHEET: import("@apollo/client").DocumentNode;
@@ -1,18 +1,50 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.REMOVE_FLAGGED_QUESTION = exports.ADD_FLAGGED_QUESTION = exports.optimisticSaveMarksheets = exports.updateMarksheets = exports.SAVE_MARKSHEET = exports.RE_BUILD_MARKSHEET = exports.BUILD_MARKSHEET = void 0;
3
+ exports.END_MARKSHEET = exports.LEAVE_MARKSHEET = exports.MODIFY_MARKSHEET_INFO = exports.START_OR_JOIN_MARKSHEET = exports.REMOVE_FLAGGED_QUESTION = exports.ADD_FLAGGED_QUESTION = exports.optimisticSaveMarksheets = exports.updateMarksheets = exports.SAVE_MARKSHEET = exports.RE_BUILD_MARKSHEET = exports.BUILD_MARKSHEET = void 0;
4
4
  const client_1 = require("@apollo/client");
5
5
  const marksheet_1 = require("../../fragments/marksheet");
6
6
  const restricted_1 = require("../../query/restricted");
7
7
  exports.BUILD_MARKSHEET = (0, client_1.gql) `
8
- mutation BuildMarksheet($buildMarksheet: BuildMarksheetInput) {
8
+ mutation BuildMarksheet($buildMarksheet: BuildMarksheetInput!) {
9
9
  restricted {
10
10
  buildMarksheet(buildMarksheet: $buildMarksheet) {
11
11
  id
12
+ createdAt
13
+ startedAt
14
+ endedAt
15
+ topicIds
16
+ state
17
+ currentMarkId
18
+ topicConceptData
19
+ preBuildData
20
+ builderConfig
21
+ topicNames
22
+ source
23
+ user {
24
+ displayName
25
+ id
26
+ }
27
+ users {
28
+ user {
29
+ id
30
+ displayName
31
+ }
32
+ }
33
+ marks {
34
+ ...MarksheetMarkFields
35
+ }
36
+ mockTestId
37
+ correct
38
+ incorrect
39
+ totalQuestions
40
+ isTestMarksheet
12
41
  }
13
42
  }
14
43
  }
15
44
  `;
45
+ /**
46
+ * reBuildMarksheet
47
+ */
16
48
  exports.RE_BUILD_MARKSHEET = (0, client_1.gql) `
17
49
  ${marksheet_1.MARKSHEET_MARK_FIELDS}
18
50
  mutation ReBuildMarksheet($marksheetId: Int!) {
@@ -24,8 +56,18 @@ exports.RE_BUILD_MARKSHEET = (0, client_1.gql) `
24
56
  endedAt
25
57
  topicIds
26
58
  topicNames
59
+ state
60
+ currentMarkId
61
+ topicConceptData
62
+ preBuildData
63
+ builderConfig
27
64
  source
28
- userId
65
+ users {
66
+ user {
67
+ id
68
+ displayName
69
+ }
70
+ }
29
71
  user {
30
72
  displayName
31
73
  id
@@ -42,6 +84,9 @@ exports.RE_BUILD_MARKSHEET = (0, client_1.gql) `
42
84
  }
43
85
  }
44
86
  `;
87
+ /**
88
+ * saveMarksheets
89
+ */
45
90
  exports.SAVE_MARKSHEET = (0, client_1.gql) `
46
91
  mutation SaveMarksheet($marksheetInput: [MarksheetInput!]!) {
47
92
  restricted {
@@ -133,6 +178,9 @@ const optimisticSaveMarksheets = (client, marksheetInput, questionIndex) => {
133
178
  };
134
179
  };
135
180
  exports.optimisticSaveMarksheets = optimisticSaveMarksheets;
181
+ /**
182
+ * addFlaggedQuestion
183
+ */
136
184
  exports.ADD_FLAGGED_QUESTION = (0, client_1.gql) `
137
185
  mutation AddFlaggedQuestion($markId: Int!, $questionId: Int!) {
138
186
  restricted {
@@ -142,6 +190,9 @@ exports.ADD_FLAGGED_QUESTION = (0, client_1.gql) `
142
190
  }
143
191
  }
144
192
  `;
193
+ /**
194
+ * removeFlaggedQuestion
195
+ */
145
196
  exports.REMOVE_FLAGGED_QUESTION = (0, client_1.gql) `
146
197
  mutation RemoveFlaggedQuestion($id: Int!) {
147
198
  restricted {
@@ -151,3 +202,83 @@ exports.REMOVE_FLAGGED_QUESTION = (0, client_1.gql) `
151
202
  }
152
203
  }
153
204
  `;
205
+ exports.START_OR_JOIN_MARKSHEET = (0, client_1.gql) `
206
+ mutation StartOrJoinMarksheet($agoraId: String!, $solo: Boolean!) {
207
+ restricted {
208
+ startOrJoinMarksheet(agoraId: $agoraId, solo: $solo) {
209
+ id
210
+ createdAt
211
+ startedAt
212
+ agoraId
213
+ endedAt
214
+ source
215
+ user {
216
+ id
217
+ displayName
218
+ }
219
+ state
220
+ users {
221
+ user {
222
+ id
223
+ displayName
224
+ }
225
+ }
226
+ completed
227
+ }
228
+ }
229
+ }
230
+ `;
231
+ exports.MODIFY_MARKSHEET_INFO = (0, client_1.gql) `
232
+ mutation ModifyQbankInfo($qBankInfo: ModifyMarksheetInfoInput) {
233
+ restricted {
234
+ modifyQbankInfo(qBankInfo: $qBankInfo) {
235
+ id
236
+ createdAt
237
+ startedAt
238
+ endedAt
239
+ topicIds
240
+ state
241
+ currentMarkId
242
+ topicConceptData
243
+ preBuildData
244
+ builderConfig
245
+ topicNames
246
+ source
247
+ user {
248
+ displayName
249
+ id
250
+ }
251
+ users {
252
+ user {
253
+ id
254
+ displayName
255
+ }
256
+ }
257
+ marks {
258
+ ...MarksheetMarkFields
259
+ }
260
+ mockTestId
261
+ correct
262
+ incorrect
263
+ totalQuestions
264
+ isTestMarksheet
265
+ }
266
+ }
267
+ }
268
+ `;
269
+ exports.LEAVE_MARKSHEET = (0, client_1.gql) `
270
+ mutation LeaveMarksheet($marksheetId: Int!) {
271
+ restricted {
272
+ leaveMarksheet(marksheetId: $marksheetId) {
273
+ id
274
+ }
275
+ }
276
+ }
277
+ `;
278
+ exports.END_MARKSHEET = (0, client_1.gql) `
279
+ mutation EndMarksheet($marksheetId: Int!) {
280
+ restricted {
281
+ endMarksheet(marksheetId: $marksheetId)
282
+ }
283
+ }
284
+ `;
@@ -6,15 +6,6 @@ export interface IMarksheetVar {
6
6
  }
7
7
  export declare type IMarksheetData = RestrictedData<graphqlNormalize & IMarksheet, 'marksheet'>;
8
8
  export declare const MARKSHEET: import("@apollo/client").DocumentNode;
9
- export interface IPreBuildMarksheetVar {
10
- topicIds: number[];
11
- conceptIds: number[];
12
- search: string;
13
- source: string;
14
- difficulty?: EDifficultyType[];
15
- }
16
- export declare type IPreBuildMarksheetData = RestrictedData<graphqlNormalize & IPreBuildMarksheet, 'preBuildMarksheet'>;
17
- export declare const PRE_BUILD_MARKSHEET: import("@apollo/client").DocumentNode;
18
9
  export interface IMarksheetsVar {
19
10
  filter: {
20
11
  limit: number;
@@ -51,3 +42,27 @@ export interface IMarksheetFeedback {
51
42
  }
52
43
  export declare type IMarksheetFeedbackData = RestrictedData<graphqlNormalize & IMarksheetFeedback, 'marksheetFeedback'>;
53
44
  export declare const MARKSHEET_FEEDBACK: import("@apollo/client").DocumentNode;
45
+ /**
46
+ * heartbeatQbank
47
+ */
48
+ export interface IQbankHeartbeatVar {
49
+ agoraId: string;
50
+ }
51
+ export declare type IQBankHeartBeatData = RestrictedData<boolean, 'heartbeatQbank'>;
52
+ export declare const HEARTBEAT_QBANK: import("@apollo/client").DocumentNode;
53
+ /**
54
+ * preBuildMarksheet
55
+ */
56
+ export interface IPreBuildMarksheetVarInput {
57
+ topicIds: number[];
58
+ conceptIds: number[];
59
+ search: string;
60
+ marksheetId?: Id;
61
+ source: string;
62
+ difficulty?: EDifficultyType[];
63
+ }
64
+ export interface IPreBuildMarksheetVar {
65
+ preBuildMarksheet: IPreBuildMarksheetVarInput;
66
+ }
67
+ export declare type IPreBuildMarksheetData = RestrictedData<graphqlNormalize & IPreBuildMarksheet, 'preBuildMarksheet'>;
68
+ export declare const PRE_BUILD_MARKSHEET: import("@apollo/client").DocumentNode;
@@ -1,12 +1,36 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MARKSHEET_FEEDBACK = exports.FLAGGED_QUESTIONS = exports.LATEST_PAST_MARKSHEET_ID = exports.MARKSHEETS = exports.PRE_BUILD_MARKSHEET = exports.MARKSHEET = void 0;
3
+ exports.PRE_BUILD_MARKSHEET = exports.HEARTBEAT_QBANK = exports.MARKSHEET_FEEDBACK = exports.FLAGGED_QUESTIONS = exports.LATEST_PAST_MARKSHEET_ID = exports.MARKSHEETS = exports.MARKSHEET = void 0;
4
4
  const client_1 = require("@apollo/client");
5
5
  exports.MARKSHEET = (0, client_1.gql) `
6
6
  query Marksheet($id: Int!) {
7
7
  restricted {
8
8
  marksheet(id: $id) {
9
9
  id
10
+ topicConceptData
11
+ currentMarkId
12
+ state
13
+ users {
14
+ user {
15
+ id
16
+ displayName
17
+ }
18
+ }
19
+ builderConfig {
20
+ difficulty
21
+ isTest
22
+ numberOfQuestions
23
+ secondsPerQuestion
24
+ unseen
25
+ seenCorrect
26
+ seenIncorrect
27
+ }
28
+ preBuildData {
29
+ buildRef
30
+ seenCorrect
31
+ seenIncorrect
32
+ unseen
33
+ }
10
34
  createdAt
11
35
  startedAt
12
36
  endedAt
@@ -525,30 +549,6 @@ exports.MARKSHEET = (0, client_1.gql) `
525
549
  }
526
550
  }
527
551
  `;
528
- exports.PRE_BUILD_MARKSHEET = (0, client_1.gql) `
529
- query PreBuildMarksheet(
530
- $topicIds: [Int!]
531
- $conceptIds: [Int!]
532
- $search: String
533
- $source: String!
534
- $difficulty: [Int!]
535
- ) {
536
- restricted {
537
- preBuildMarksheet(
538
- difficulty: $difficulty
539
- topicIds: $topicIds
540
- conceptIds: $conceptIds
541
- search: $search
542
- source: $source
543
- ) {
544
- unseen
545
- seenCorrect
546
- seenIncorrect
547
- buildRef
548
- }
549
- }
550
- }
551
- `;
552
552
  exports.MARKSHEETS = (0, client_1.gql) `
553
553
  query Marksheets($filter: MarksheetFilterInput!) {
554
554
  restricted {
@@ -1216,3 +1216,22 @@ exports.MARKSHEET_FEEDBACK = (0, client_1.gql) `
1216
1216
  }
1217
1217
  }
1218
1218
  `;
1219
+ exports.HEARTBEAT_QBANK = (0, client_1.gql) `
1220
+ query HeartbeatQbank($agoraId: String!) {
1221
+ restricted {
1222
+ heartbeatQbank(agoraId: $agoraId)
1223
+ }
1224
+ }
1225
+ `;
1226
+ exports.PRE_BUILD_MARKSHEET = (0, client_1.gql) `
1227
+ query PreBuildMarksheet($preBuildMarksheet: PreBuildMarksheetInput) {
1228
+ restricted {
1229
+ preBuildMarksheet(preBuildMarksheet: $preBuildMarksheet) {
1230
+ unseen
1231
+ seenCorrect
1232
+ seenIncorrect
1233
+ buildRef
1234
+ }
1235
+ }
1236
+ }
1237
+ `;
@@ -1,2 +1,3 @@
1
1
  export * from './osce';
2
2
  export * from './notification';
3
+ export * from './marksheet';
@@ -12,3 +12,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  __exportStar(require("./osce"), exports);
14
14
  __exportStar(require("./notification"), exports);
15
+ __exportStar(require("./marksheet"), exports);
@@ -0,0 +1,65 @@
1
+ import { EMarksheetAction, EMarksheetState, Id, IMarksheetMarkJSONB, IMarksheetMember, IUser } from '../../models';
2
+ import { IBuildConfigData } from '../mutation/restricted';
3
+ import { RootData } from '../types';
4
+ export interface IMarksheetGroupMember {
5
+ user: IUser | null;
6
+ }
7
+ export interface IMarksheetGroup {
8
+ marksheetId: Id;
9
+ agoraId: string;
10
+ members: IMarksheetMember[];
11
+ users: IUser[];
12
+ }
13
+ /**
14
+ * onMarksheetActionInfoChange
15
+ */
16
+ export interface IOnMarksheetActionInfoChangeVar {
17
+ marksheetId: Id;
18
+ }
19
+ export interface IMarksheetActionInfo {
20
+ state: EMarksheetState;
21
+ marksheetId: Id;
22
+ agoraId: string;
23
+ userId: Id;
24
+ user: IUser;
25
+ startedAt: Date | null;
26
+ endedAt: Date | null;
27
+ action: EMarksheetAction;
28
+ }
29
+ export declare type IOnMarksheetActionChangeData = RootData<IMarksheetActionInfo, 'payload'>;
30
+ export declare const ON_MARKSHEET_ACTION_INFO_CHANGE_KEY = "ON_MARKSHEET_ACTION_INFO_CHANGE";
31
+ export declare const ON_MARKSHEET_ACTION_INFO_CHANGE: import("@apollo/client").DocumentNode;
32
+ /**
33
+ * onPreStartMarksheetModification
34
+ */
35
+ export interface IOnPreStartMarksheetModificationVar {
36
+ marksheetId: Id;
37
+ }
38
+ export interface IPreStartMarksheetData {
39
+ topicConceptData?: string;
40
+ action: EMarksheetAction;
41
+ builderConfig?: IBuildConfigData;
42
+ marksheetId: Id;
43
+ }
44
+ export declare type IOnPreStartMarksheetModificationData = RootData<IPreStartMarksheetData, 'payload'>;
45
+ export declare const ON_PRESTART_MARKSHEET_MODIFICATION_KEY = "ON_PRESTART_MARKSHEET_MODIFICATION";
46
+ export declare const ON_PRESTART_MARKSHEET_MODIFICATION: import("@apollo/client").DocumentNode;
47
+ /**
48
+ * OnMarksheetDataModification
49
+ */
50
+ export interface IOnMarksheetDataModificationVar {
51
+ marksheetId: Id;
52
+ }
53
+ export interface IMarksheetDataModification {
54
+ markId?: Id;
55
+ updatedAt?: Date;
56
+ marksheetId: Id;
57
+ questionChoiceId?: Id;
58
+ questionId?: Id;
59
+ timeTaken?: number;
60
+ mark?: IMarksheetMarkJSONB;
61
+ action?: EMarksheetAction;
62
+ }
63
+ export declare type IOnMarksheetDataModificationData = RootData<IMarksheetDataModification, 'payload'>;
64
+ export declare const ON_MARKSHEET_DATA_MODIFICATION_KEY = "ON_MARKSHEET_DATA_MODIFICATION";
65
+ export declare const ON_MARKSHEET_DATA_MODIFICATION: import("@apollo/client").DocumentNode;
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ON_MARKSHEET_DATA_MODIFICATION = exports.ON_MARKSHEET_DATA_MODIFICATION_KEY = exports.ON_PRESTART_MARKSHEET_MODIFICATION = exports.ON_PRESTART_MARKSHEET_MODIFICATION_KEY = exports.ON_MARKSHEET_ACTION_INFO_CHANGE = exports.ON_MARKSHEET_ACTION_INFO_CHANGE_KEY = void 0;
4
+ const client_1 = require("@apollo/client");
5
+ exports.ON_MARKSHEET_ACTION_INFO_CHANGE_KEY = 'ON_MARKSHEET_ACTION_INFO_CHANGE';
6
+ exports.ON_MARKSHEET_ACTION_INFO_CHANGE = (0, client_1.gql) `
7
+ subscription OnMarksheetActionInfoChange($marksheetId: Int!) {
8
+ onMarksheetActionInfoChange(marksheetId: $marksheetId) {
9
+ marksheetId
10
+ agoraId
11
+ userId
12
+ user {
13
+ id
14
+ firstname
15
+ lastname
16
+ dispayname
17
+ }
18
+ startedAt
19
+ endedAt
20
+ state
21
+ action
22
+ }
23
+ }
24
+ `;
25
+ exports.ON_PRESTART_MARKSHEET_MODIFICATION_KEY = 'ON_PRESTART_MARKSHEET_MODIFICATION';
26
+ exports.ON_PRESTART_MARKSHEET_MODIFICATION = (0, client_1.gql) `
27
+ subscription OnPreStartMarksheetModification($marksheetId: Int!) {
28
+ onPreStartMarksheetModification(marksheetId: $marksheetId) {
29
+ marksheetId
30
+ topicConceptData
31
+ action
32
+ builderConfig {
33
+ difficulty
34
+ isTest
35
+ numberOfQuestions
36
+ secondsPerQuestion
37
+ unseen
38
+ seenCorrect
39
+ seenIncorrect
40
+ }
41
+ }
42
+ }
43
+ `;
44
+ exports.ON_MARKSHEET_DATA_MODIFICATION_KEY = 'ON_MARKSHEET_DATA_MODIFICATION';
45
+ exports.ON_MARKSHEET_DATA_MODIFICATION = (0, client_1.gql) `
46
+ subscription OnMarksheetDataModification($marksheetId: Int!) {
47
+ onMarksheetDataModification(marksheetId: $marksheetId) {
48
+ markId
49
+ updatedAt
50
+ marksheetId
51
+ questionId
52
+ questionChoiceId
53
+ timeTaken
54
+ mark
55
+ action
56
+ }
57
+ }
58
+ `;