@quesmed/types 2.6.28 → 2.6.30
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/cjs/models/Marksheet.d.ts +2 -1
- package/dist/cjs/models/Question.d.ts +6 -0
- package/dist/cjs/resolvers/fragments/chapter.js +3 -18
- package/dist/cjs/resolvers/fragments/concept.d.ts +1 -2
- package/dist/cjs/resolvers/fragments/concept.js +18 -57
- package/dist/cjs/resolvers/fragments/index.d.ts +1 -0
- package/dist/cjs/resolvers/fragments/index.js +1 -0
- package/dist/cjs/resolvers/fragments/marksheet.d.ts +14 -0
- package/dist/cjs/resolvers/fragments/marksheet.js +127 -127
- package/dist/cjs/resolvers/fragments/osce.d.ts +1 -0
- package/dist/cjs/resolvers/fragments/osce.js +6 -1
- package/dist/cjs/resolvers/fragments/question.d.ts +5 -0
- package/dist/cjs/resolvers/fragments/question.js +176 -0
- package/dist/cjs/resolvers/fragments/topic.d.ts +2 -0
- package/dist/cjs/resolvers/fragments/topic.js +25 -1
- package/dist/cjs/resolvers/fragments/video.d.ts +1 -0
- package/dist/cjs/resolvers/fragments/video.js +17 -28
- package/dist/cjs/resolvers/mutation/restricted/marksheet.d.ts +2 -8
- package/dist/cjs/resolvers/mutation/restricted/marksheet.js +18 -4115
- package/dist/cjs/resolvers/mutation/restricted/mockTest.d.ts +1 -0
- package/dist/cjs/resolvers/mutation/restricted/questionDiscussion.d.ts +6 -21
- package/dist/cjs/resolvers/mutation/restricted/questionDiscussion.js +27 -532
- package/dist/cjs/resolvers/query/restricted/marksheet.js +9 -2017
- package/dist/cjs/resolvers/query/restricted/question.js +3 -932
- package/dist/mjs/models/Marksheet.d.ts +2 -1
- package/dist/mjs/models/Question.d.ts +6 -0
- package/dist/mjs/resolvers/fragments/chapter.js +3 -18
- package/dist/mjs/resolvers/fragments/concept.d.ts +1 -2
- package/dist/mjs/resolvers/fragments/concept.js +18 -57
- package/dist/mjs/resolvers/fragments/index.d.ts +1 -0
- package/dist/mjs/resolvers/fragments/index.js +1 -0
- package/dist/mjs/resolvers/fragments/marksheet.d.ts +14 -0
- package/dist/mjs/resolvers/fragments/marksheet.js +126 -126
- package/dist/mjs/resolvers/fragments/osce.d.ts +1 -0
- package/dist/mjs/resolvers/fragments/osce.js +5 -0
- package/dist/mjs/resolvers/fragments/question.d.ts +5 -0
- package/dist/mjs/resolvers/fragments/question.js +173 -0
- package/dist/mjs/resolvers/fragments/topic.d.ts +2 -0
- package/dist/mjs/resolvers/fragments/topic.js +24 -0
- package/dist/mjs/resolvers/fragments/video.d.ts +1 -0
- package/dist/mjs/resolvers/fragments/video.js +16 -27
- package/dist/mjs/resolvers/mutation/restricted/marksheet.d.ts +2 -8
- package/dist/mjs/resolvers/mutation/restricted/marksheet.js +14 -4111
- package/dist/mjs/resolvers/mutation/restricted/mockTest.d.ts +1 -0
- package/dist/mjs/resolvers/mutation/restricted/questionDiscussion.d.ts +6 -21
- package/dist/mjs/resolvers/mutation/restricted/questionDiscussion.js +26 -530
- package/dist/mjs/resolvers/query/restricted/marksheet.js +9 -2017
- package/dist/mjs/resolvers/query/restricted/question.js +3 -932
- package/package.json +6 -1
|
@@ -54,6 +54,7 @@ export declare const optimisticEndMockTest: (marksheet: IMarksheet) => {
|
|
|
54
54
|
type: import("../../../models").EMarksheetType;
|
|
55
55
|
endedAt: number | Date;
|
|
56
56
|
typeId: import("../../../models").ETopicType;
|
|
57
|
+
entitlement: import("../../../models").IEntitlement;
|
|
57
58
|
topicIds: number[];
|
|
58
59
|
topicNames?: string[] | undefined;
|
|
59
60
|
source: string;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ApolloCache
|
|
1
|
+
import { ApolloCache } from '@apollo/client';
|
|
2
2
|
import { ApolloUpdateOptions, ApolloUpdateResultRestricted } from '../..';
|
|
3
3
|
import { EQuestionLike, EQuestionType, IHighlight, IQuestion, IQuestionComment, IQuestionHighlights, Id } from '../../../models';
|
|
4
4
|
import { RestrictedData, graphqlNormalize } from '../../types';
|
|
@@ -7,24 +7,9 @@ interface LikeData {
|
|
|
7
7
|
dislikes?: number;
|
|
8
8
|
isLikedByMe?: EQuestionLike;
|
|
9
9
|
}
|
|
10
|
-
export declare const QUESTION_SBA_COMMENT_FIELDS: DocumentNode;
|
|
11
|
-
export declare const QUESTION_QA_COMMENT_FIELDS: DocumentNode;
|
|
12
|
-
export declare const QUESTION_EMQ_COMMENT_FIELDS: DocumentNode;
|
|
13
|
-
export declare const QUESTION_SELECT3_COMMENT_FIELDS: DocumentNode;
|
|
14
|
-
export declare const QUESTION_RANKING_COMMENT_FIELDS: DocumentNode;
|
|
15
|
-
export declare const QUESTION_QA_HIGHLIGHT_FIELDS: DocumentNode;
|
|
16
|
-
export declare const QUESTION_SBA_HIGHLIGHT_FIELDS: DocumentNode;
|
|
17
|
-
export declare const QUESTION_MULTIA_HIGHLIGHT_FIELDS: DocumentNode;
|
|
18
|
-
export declare const QUESTION_PRESCRIPTION_HIGHLIGHT_FIELDS: DocumentNode;
|
|
19
|
-
export declare const QUESTION_EMQ_HIGHLIGHT_FIELDS: DocumentNode;
|
|
20
|
-
export declare const QUESTION_SELECT3_HIGHLIGHT_FIELDS: DocumentNode;
|
|
21
|
-
export declare const QUESTION_RANKING_HIGHLIGHT_FIELDS: DocumentNode;
|
|
22
|
-
export declare const QUESTION_MULTIA_COMMENT_FIELDS: DocumentNode;
|
|
23
|
-
export declare const QUESTION_PRESCRIPTION_COMMENT_FIELDS: DocumentNode;
|
|
24
10
|
export declare const getLikeData: (like: EQuestionLike, item: LikeData) => LikeData;
|
|
25
|
-
export declare const getQuestionHighlightsFragment: (typeId: EQuestionType) => DocumentNode;
|
|
26
11
|
export declare const getQuestionTypeName: (typeId: EQuestionType) => string;
|
|
27
|
-
export declare const QUESTION_LIKE: DocumentNode;
|
|
12
|
+
export declare const QUESTION_LIKE: import("@apollo/client").DocumentNode;
|
|
28
13
|
export declare const optimisticQuestionLike: (input: IQuestionLikeVar, question: IQuestion) => IQuestionLikeData;
|
|
29
14
|
export interface IQuestionLikeVar {
|
|
30
15
|
marksheetId?: Id;
|
|
@@ -32,7 +17,7 @@ export interface IQuestionLikeVar {
|
|
|
32
17
|
like: EQuestionLike;
|
|
33
18
|
}
|
|
34
19
|
export type IQuestionLikeData = RestrictedData<graphqlNormalize & IQuestion, 'questionLike'>;
|
|
35
|
-
export declare const QUESTION_COMMENTS: DocumentNode;
|
|
20
|
+
export declare const QUESTION_COMMENTS: import("@apollo/client").DocumentNode;
|
|
36
21
|
export declare const updateQuestionComments: (typeId: EQuestionType) => (cache: ApolloCache<any>, result: ApolloUpdateResultRestricted<IQuestionCommentsData>, options: ApolloUpdateOptions) => void;
|
|
37
22
|
export declare const optimisticQuestionComment: (id: number, user: {
|
|
38
23
|
id: number;
|
|
@@ -45,7 +30,7 @@ export interface IQuestionCommentsVar {
|
|
|
45
30
|
comment: string;
|
|
46
31
|
}
|
|
47
32
|
export type IQuestionCommentsData = RestrictedData<graphqlNormalize & IQuestionComment, 'questionComments'>;
|
|
48
|
-
export declare const QUESTION_COMMENT_LIKE: DocumentNode;
|
|
33
|
+
export declare const QUESTION_COMMENT_LIKE: import("@apollo/client").DocumentNode;
|
|
49
34
|
export declare const optimisticCommentLike: (comments: IQuestionComment[], input: IQuestionCommentsLikeVar, parentId: number | null) => IQuestionCommentsLikeData;
|
|
50
35
|
export interface IQuestionCommentsLikeVar {
|
|
51
36
|
marksheetId?: Id;
|
|
@@ -54,7 +39,7 @@ export interface IQuestionCommentsLikeVar {
|
|
|
54
39
|
like: EQuestionLike;
|
|
55
40
|
}
|
|
56
41
|
export type IQuestionCommentsLikeData = RestrictedData<graphqlNormalize & IQuestionComment, 'questionCommentLike'>;
|
|
57
|
-
export declare const QUESTION_COMMENT_REMOVE: DocumentNode;
|
|
42
|
+
export declare const QUESTION_COMMENT_REMOVE: import("@apollo/client").DocumentNode;
|
|
58
43
|
export declare const updateQuestionCommentsRemove: (typeId: EQuestionType) => (cache: ApolloCache<any>, result: ApolloUpdateResultRestricted<IQuestionCommentRemoveData>, options: ApolloUpdateOptions) => void;
|
|
59
44
|
export declare const optimisticQuestionCommentRemove: (comments: IQuestionComment[], input: IQuestionCommentRemoveVar, parentId?: number) => IQuestionCommentRemoveData;
|
|
60
45
|
export interface IQuestionCommentRemoveVar {
|
|
@@ -73,6 +58,6 @@ export interface IAddQuestionHighlightVar {
|
|
|
73
58
|
}[];
|
|
74
59
|
}
|
|
75
60
|
export type IAddQuestionHighlightData = RestrictedData<(graphqlNormalize & IQuestionHighlights)[], 'addQuestionHighlight'>;
|
|
76
|
-
export declare const ADD_QUESTION_HIGHLIGHT: DocumentNode;
|
|
61
|
+
export declare const ADD_QUESTION_HIGHLIGHT: import("@apollo/client").DocumentNode;
|
|
77
62
|
export declare const updateQuestionHighlights: (typeId: EQuestionType) => (cache: ApolloCache<any>, result: ApolloUpdateResultRestricted<IAddQuestionHighlightData>, options: ApolloUpdateOptions) => void;
|
|
78
63
|
export {};
|
|
@@ -1,398 +1,7 @@
|
|
|
1
1
|
import { gql } from '@apollo/client';
|
|
2
2
|
import { DateTime } from 'luxon';
|
|
3
3
|
import { EQuestionLike, EQuestionType, } from '../../../models';
|
|
4
|
-
|
|
5
|
-
fragment QuestionSBAComments on QuestionSBA {
|
|
6
|
-
id
|
|
7
|
-
likes
|
|
8
|
-
dislikes
|
|
9
|
-
isLikedByMe
|
|
10
|
-
highlights {
|
|
11
|
-
start
|
|
12
|
-
end
|
|
13
|
-
text
|
|
14
|
-
part
|
|
15
|
-
tag
|
|
16
|
-
color
|
|
17
|
-
}
|
|
18
|
-
comments {
|
|
19
|
-
id
|
|
20
|
-
createdAt
|
|
21
|
-
comment
|
|
22
|
-
parentId
|
|
23
|
-
likes
|
|
24
|
-
user {
|
|
25
|
-
id
|
|
26
|
-
displayName
|
|
27
|
-
}
|
|
28
|
-
dislikes
|
|
29
|
-
isLikedByMe
|
|
30
|
-
questionId
|
|
31
|
-
replies {
|
|
32
|
-
id
|
|
33
|
-
createdAt
|
|
34
|
-
comment
|
|
35
|
-
parentId
|
|
36
|
-
user {
|
|
37
|
-
id
|
|
38
|
-
displayName
|
|
39
|
-
}
|
|
40
|
-
likes
|
|
41
|
-
dislikes
|
|
42
|
-
isLikedByMe
|
|
43
|
-
questionId
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
`;
|
|
48
|
-
export const QUESTION_QA_COMMENT_FIELDS = gql `
|
|
49
|
-
fragment QuestionQAComments on QuestionQA {
|
|
50
|
-
id
|
|
51
|
-
likes
|
|
52
|
-
dislikes
|
|
53
|
-
isLikedByMe
|
|
54
|
-
highlights {
|
|
55
|
-
start
|
|
56
|
-
end
|
|
57
|
-
text
|
|
58
|
-
part
|
|
59
|
-
tag
|
|
60
|
-
color
|
|
61
|
-
}
|
|
62
|
-
comments {
|
|
63
|
-
id
|
|
64
|
-
createdAt
|
|
65
|
-
comment
|
|
66
|
-
parentId
|
|
67
|
-
likes
|
|
68
|
-
user {
|
|
69
|
-
id
|
|
70
|
-
displayName
|
|
71
|
-
}
|
|
72
|
-
dislikes
|
|
73
|
-
isLikedByMe
|
|
74
|
-
questionId
|
|
75
|
-
replies {
|
|
76
|
-
id
|
|
77
|
-
createdAt
|
|
78
|
-
comment
|
|
79
|
-
parentId
|
|
80
|
-
user {
|
|
81
|
-
id
|
|
82
|
-
displayName
|
|
83
|
-
}
|
|
84
|
-
likes
|
|
85
|
-
dislikes
|
|
86
|
-
isLikedByMe
|
|
87
|
-
questionId
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
`;
|
|
92
|
-
export const QUESTION_EMQ_COMMENT_FIELDS = gql `
|
|
93
|
-
fragment QuestionEMQComments on QuestionEMQ {
|
|
94
|
-
id
|
|
95
|
-
likes
|
|
96
|
-
dislikes
|
|
97
|
-
isLikedByMe
|
|
98
|
-
highlights {
|
|
99
|
-
start
|
|
100
|
-
end
|
|
101
|
-
text
|
|
102
|
-
part
|
|
103
|
-
tag
|
|
104
|
-
color
|
|
105
|
-
}
|
|
106
|
-
comments {
|
|
107
|
-
id
|
|
108
|
-
createdAt
|
|
109
|
-
comment
|
|
110
|
-
parentId
|
|
111
|
-
likes
|
|
112
|
-
user {
|
|
113
|
-
id
|
|
114
|
-
displayName
|
|
115
|
-
}
|
|
116
|
-
dislikes
|
|
117
|
-
isLikedByMe
|
|
118
|
-
questionId
|
|
119
|
-
replies {
|
|
120
|
-
id
|
|
121
|
-
createdAt
|
|
122
|
-
comment
|
|
123
|
-
parentId
|
|
124
|
-
user {
|
|
125
|
-
id
|
|
126
|
-
displayName
|
|
127
|
-
}
|
|
128
|
-
likes
|
|
129
|
-
dislikes
|
|
130
|
-
isLikedByMe
|
|
131
|
-
questionId
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
`;
|
|
136
|
-
export const QUESTION_SELECT3_COMMENT_FIELDS = gql `
|
|
137
|
-
fragment QuestionSelect3Comments on QuestionSelect3 {
|
|
138
|
-
id
|
|
139
|
-
likes
|
|
140
|
-
dislikes
|
|
141
|
-
isLikedByMe
|
|
142
|
-
highlights {
|
|
143
|
-
start
|
|
144
|
-
end
|
|
145
|
-
text
|
|
146
|
-
part
|
|
147
|
-
tag
|
|
148
|
-
color
|
|
149
|
-
}
|
|
150
|
-
comments {
|
|
151
|
-
id
|
|
152
|
-
createdAt
|
|
153
|
-
comment
|
|
154
|
-
parentId
|
|
155
|
-
likes
|
|
156
|
-
user {
|
|
157
|
-
id
|
|
158
|
-
displayName
|
|
159
|
-
}
|
|
160
|
-
dislikes
|
|
161
|
-
isLikedByMe
|
|
162
|
-
questionId
|
|
163
|
-
replies {
|
|
164
|
-
id
|
|
165
|
-
createdAt
|
|
166
|
-
comment
|
|
167
|
-
parentId
|
|
168
|
-
user {
|
|
169
|
-
id
|
|
170
|
-
displayName
|
|
171
|
-
}
|
|
172
|
-
likes
|
|
173
|
-
dislikes
|
|
174
|
-
isLikedByMe
|
|
175
|
-
questionId
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
`;
|
|
180
|
-
export const QUESTION_RANKING_COMMENT_FIELDS = gql `
|
|
181
|
-
fragment QuestionRankingComments on QuestionRanking {
|
|
182
|
-
id
|
|
183
|
-
likes
|
|
184
|
-
dislikes
|
|
185
|
-
isLikedByMe
|
|
186
|
-
highlights {
|
|
187
|
-
start
|
|
188
|
-
end
|
|
189
|
-
text
|
|
190
|
-
part
|
|
191
|
-
tag
|
|
192
|
-
color
|
|
193
|
-
}
|
|
194
|
-
comments {
|
|
195
|
-
id
|
|
196
|
-
createdAt
|
|
197
|
-
comment
|
|
198
|
-
parentId
|
|
199
|
-
likes
|
|
200
|
-
user {
|
|
201
|
-
id
|
|
202
|
-
displayName
|
|
203
|
-
}
|
|
204
|
-
dislikes
|
|
205
|
-
isLikedByMe
|
|
206
|
-
questionId
|
|
207
|
-
replies {
|
|
208
|
-
id
|
|
209
|
-
createdAt
|
|
210
|
-
comment
|
|
211
|
-
parentId
|
|
212
|
-
user {
|
|
213
|
-
id
|
|
214
|
-
displayName
|
|
215
|
-
}
|
|
216
|
-
likes
|
|
217
|
-
dislikes
|
|
218
|
-
isLikedByMe
|
|
219
|
-
questionId
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
`;
|
|
224
|
-
export const QUESTION_QA_HIGHLIGHT_FIELDS = gql `
|
|
225
|
-
fragment QuestionQAHighlights on QuestionQA {
|
|
226
|
-
highlights {
|
|
227
|
-
start
|
|
228
|
-
end
|
|
229
|
-
text
|
|
230
|
-
part
|
|
231
|
-
tag
|
|
232
|
-
color
|
|
233
|
-
}
|
|
234
|
-
}
|
|
235
|
-
`;
|
|
236
|
-
export const QUESTION_SBA_HIGHLIGHT_FIELDS = gql `
|
|
237
|
-
fragment QuestionSBAHighlights on QuestionSBA {
|
|
238
|
-
highlights {
|
|
239
|
-
start
|
|
240
|
-
end
|
|
241
|
-
text
|
|
242
|
-
part
|
|
243
|
-
tag
|
|
244
|
-
color
|
|
245
|
-
}
|
|
246
|
-
}
|
|
247
|
-
`;
|
|
248
|
-
export const QUESTION_MULTIA_HIGHLIGHT_FIELDS = gql `
|
|
249
|
-
fragment QuestionMultiAHighlights on QuestionMultiA {
|
|
250
|
-
highlights {
|
|
251
|
-
start
|
|
252
|
-
end
|
|
253
|
-
text
|
|
254
|
-
part
|
|
255
|
-
tag
|
|
256
|
-
color
|
|
257
|
-
}
|
|
258
|
-
}
|
|
259
|
-
`;
|
|
260
|
-
export const QUESTION_PRESCRIPTION_HIGHLIGHT_FIELDS = gql `
|
|
261
|
-
fragment QuestionPrescriptionHighlights on QuestionPrescription {
|
|
262
|
-
highlights {
|
|
263
|
-
start
|
|
264
|
-
end
|
|
265
|
-
text
|
|
266
|
-
part
|
|
267
|
-
tag
|
|
268
|
-
color
|
|
269
|
-
}
|
|
270
|
-
}
|
|
271
|
-
`;
|
|
272
|
-
export const QUESTION_EMQ_HIGHLIGHT_FIELDS = gql `
|
|
273
|
-
fragment QuestionMultiAHighlights on QuestionMultiA {
|
|
274
|
-
highlights {
|
|
275
|
-
start
|
|
276
|
-
end
|
|
277
|
-
text
|
|
278
|
-
part
|
|
279
|
-
tag
|
|
280
|
-
color
|
|
281
|
-
}
|
|
282
|
-
}
|
|
283
|
-
`;
|
|
284
|
-
export const QUESTION_SELECT3_HIGHLIGHT_FIELDS = gql `
|
|
285
|
-
fragment QuestionMultiAHighlights on QuestionMultiA {
|
|
286
|
-
highlights {
|
|
287
|
-
start
|
|
288
|
-
end
|
|
289
|
-
text
|
|
290
|
-
part
|
|
291
|
-
tag
|
|
292
|
-
color
|
|
293
|
-
}
|
|
294
|
-
}
|
|
295
|
-
`;
|
|
296
|
-
export const QUESTION_RANKING_HIGHLIGHT_FIELDS = gql `
|
|
297
|
-
fragment QuestionMultiAHighlights on QuestionMultiA {
|
|
298
|
-
highlights {
|
|
299
|
-
start
|
|
300
|
-
end
|
|
301
|
-
text
|
|
302
|
-
part
|
|
303
|
-
tag
|
|
304
|
-
color
|
|
305
|
-
}
|
|
306
|
-
}
|
|
307
|
-
`;
|
|
308
|
-
export const QUESTION_MULTIA_COMMENT_FIELDS = gql `
|
|
309
|
-
fragment QuestionMultiAComments on QuestionMultiA {
|
|
310
|
-
id
|
|
311
|
-
likes
|
|
312
|
-
dislikes
|
|
313
|
-
isLikedByMe
|
|
314
|
-
highlights {
|
|
315
|
-
start
|
|
316
|
-
end
|
|
317
|
-
text
|
|
318
|
-
part
|
|
319
|
-
tag
|
|
320
|
-
color
|
|
321
|
-
}
|
|
322
|
-
comments {
|
|
323
|
-
id
|
|
324
|
-
createdAt
|
|
325
|
-
comment
|
|
326
|
-
parentId
|
|
327
|
-
likes
|
|
328
|
-
user {
|
|
329
|
-
id
|
|
330
|
-
displayName
|
|
331
|
-
}
|
|
332
|
-
dislikes
|
|
333
|
-
isLikedByMe
|
|
334
|
-
questionId
|
|
335
|
-
replies {
|
|
336
|
-
id
|
|
337
|
-
createdAt
|
|
338
|
-
comment
|
|
339
|
-
parentId
|
|
340
|
-
user {
|
|
341
|
-
id
|
|
342
|
-
displayName
|
|
343
|
-
}
|
|
344
|
-
likes
|
|
345
|
-
dislikes
|
|
346
|
-
isLikedByMe
|
|
347
|
-
questionId
|
|
348
|
-
}
|
|
349
|
-
}
|
|
350
|
-
}
|
|
351
|
-
`;
|
|
352
|
-
export const QUESTION_PRESCRIPTION_COMMENT_FIELDS = gql `
|
|
353
|
-
fragment QuestionPrescriptionComments on QuestionPrescription {
|
|
354
|
-
id
|
|
355
|
-
likes
|
|
356
|
-
dislikes
|
|
357
|
-
isLikedByMe
|
|
358
|
-
highlights {
|
|
359
|
-
start
|
|
360
|
-
end
|
|
361
|
-
text
|
|
362
|
-
part
|
|
363
|
-
tag
|
|
364
|
-
color
|
|
365
|
-
}
|
|
366
|
-
comments {
|
|
367
|
-
id
|
|
368
|
-
createdAt
|
|
369
|
-
comment
|
|
370
|
-
parentId
|
|
371
|
-
likes
|
|
372
|
-
user {
|
|
373
|
-
id
|
|
374
|
-
displayName
|
|
375
|
-
}
|
|
376
|
-
dislikes
|
|
377
|
-
isLikedByMe
|
|
378
|
-
questionId
|
|
379
|
-
replies {
|
|
380
|
-
id
|
|
381
|
-
createdAt
|
|
382
|
-
comment
|
|
383
|
-
parentId
|
|
384
|
-
user {
|
|
385
|
-
id
|
|
386
|
-
displayName
|
|
387
|
-
}
|
|
388
|
-
likes
|
|
389
|
-
dislikes
|
|
390
|
-
isLikedByMe
|
|
391
|
-
questionId
|
|
392
|
-
}
|
|
393
|
-
}
|
|
394
|
-
}
|
|
395
|
-
`;
|
|
4
|
+
import { QUESTION_COMMENT_FIELDS, QUESTION_WITH_COMMENT_FIELDS, QUESTION_WITH_HIGHLIGHT_FIELDS, } from '../../fragments';
|
|
396
5
|
export const getLikeData = (like, item) => {
|
|
397
6
|
let { likes = 0, dislikes = 0, isLikedByMe } = item;
|
|
398
7
|
if (isLikedByMe === EQuestionLike.LIKE) {
|
|
@@ -417,62 +26,17 @@ export const getLikeData = (like, item) => {
|
|
|
417
26
|
}
|
|
418
27
|
return { likes, dislikes, isLikedByMe: like };
|
|
419
28
|
};
|
|
420
|
-
export const getQuestionHighlightsFragment = (typeId) => {
|
|
421
|
-
switch (typeId) {
|
|
422
|
-
case EQuestionType.QUESTION_ANSWER:
|
|
423
|
-
return QUESTION_QA_HIGHLIGHT_FIELDS;
|
|
424
|
-
case EQuestionType.PRESCRIPTION_ANSWER:
|
|
425
|
-
return QUESTION_PRESCRIPTION_HIGHLIGHT_FIELDS;
|
|
426
|
-
case EQuestionType.MULTIPLE_ANSWERS:
|
|
427
|
-
return QUESTION_MULTIA_HIGHLIGHT_FIELDS;
|
|
428
|
-
case EQuestionType.EXTENDED_MATCHING_ANSWER:
|
|
429
|
-
return QUESTION_EMQ_HIGHLIGHT_FIELDS;
|
|
430
|
-
case EQuestionType.SELECT_THREE_ANSWER:
|
|
431
|
-
return QUESTION_SELECT3_HIGHLIGHT_FIELDS;
|
|
432
|
-
case EQuestionType.RANKING_ANSWER:
|
|
433
|
-
return QUESTION_RANKING_HIGHLIGHT_FIELDS;
|
|
434
|
-
case EQuestionType.SINGLE_BEST_ANSWER:
|
|
435
|
-
default:
|
|
436
|
-
return QUESTION_SBA_HIGHLIGHT_FIELDS;
|
|
437
|
-
}
|
|
438
|
-
};
|
|
439
29
|
export const getQuestionTypeName = (typeId) => {
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
return 'QuestionSelect3';
|
|
451
|
-
case EQuestionType.RANKING_ANSWER:
|
|
452
|
-
return 'QuestionRanking';
|
|
453
|
-
case EQuestionType.SINGLE_BEST_ANSWER:
|
|
454
|
-
default:
|
|
455
|
-
return 'QuestionSBA';
|
|
456
|
-
}
|
|
457
|
-
};
|
|
458
|
-
const getQuestionFragment = (typeId) => {
|
|
459
|
-
switch (typeId) {
|
|
460
|
-
case EQuestionType.QUESTION_ANSWER:
|
|
461
|
-
return QUESTION_QA_COMMENT_FIELDS;
|
|
462
|
-
case EQuestionType.PRESCRIPTION_ANSWER:
|
|
463
|
-
return QUESTION_PRESCRIPTION_COMMENT_FIELDS;
|
|
464
|
-
case EQuestionType.MULTIPLE_ANSWERS:
|
|
465
|
-
return QUESTION_MULTIA_COMMENT_FIELDS;
|
|
466
|
-
case EQuestionType.EXTENDED_MATCHING_ANSWER:
|
|
467
|
-
return QUESTION_EMQ_COMMENT_FIELDS;
|
|
468
|
-
case EQuestionType.SELECT_THREE_ANSWER:
|
|
469
|
-
return QUESTION_SELECT3_COMMENT_FIELDS;
|
|
470
|
-
case EQuestionType.RANKING_ANSWER:
|
|
471
|
-
return QUESTION_RANKING_COMMENT_FIELDS;
|
|
472
|
-
case EQuestionType.SINGLE_BEST_ANSWER:
|
|
473
|
-
default:
|
|
474
|
-
return QUESTION_SBA_COMMENT_FIELDS;
|
|
475
|
-
}
|
|
30
|
+
const mappedObj = {
|
|
31
|
+
[EQuestionType.SINGLE_BEST_ANSWER]: 'QuestionSBA',
|
|
32
|
+
[EQuestionType.QUESTION_ANSWER]: 'QuestionQA',
|
|
33
|
+
[EQuestionType.MULTIPLE_ANSWERS]: 'QuestionMultiA',
|
|
34
|
+
[EQuestionType.PRESCRIPTION_ANSWER]: 'QuestionPrescription',
|
|
35
|
+
[EQuestionType.EXTENDED_MATCHING_ANSWER]: 'QuestionEMQ',
|
|
36
|
+
[EQuestionType.RANKING_ANSWER]: 'QuestionRanking',
|
|
37
|
+
[EQuestionType.SELECT_THREE_ANSWER]: 'QuestionSelect3',
|
|
38
|
+
};
|
|
39
|
+
return mappedObj[typeId] ?? 'QuestionSBA';
|
|
476
40
|
};
|
|
477
41
|
const addCommentToDiscussion = (newComment, comments, parentId) => {
|
|
478
42
|
if (parentId) {
|
|
@@ -552,6 +116,7 @@ export const optimisticQuestionLike = (input, question) => {
|
|
|
552
116
|
};
|
|
553
117
|
};
|
|
554
118
|
export const QUESTION_COMMENTS = gql `
|
|
119
|
+
${QUESTION_COMMENT_FIELDS}
|
|
555
120
|
mutation QuestionComments(
|
|
556
121
|
$marksheetId: Int
|
|
557
122
|
$questionId: Int!
|
|
@@ -565,32 +130,7 @@ export const QUESTION_COMMENTS = gql `
|
|
|
565
130
|
parentId: $parentId
|
|
566
131
|
comment: $comment
|
|
567
132
|
) {
|
|
568
|
-
|
|
569
|
-
createdAt
|
|
570
|
-
comment
|
|
571
|
-
parentId
|
|
572
|
-
user {
|
|
573
|
-
id
|
|
574
|
-
displayName
|
|
575
|
-
}
|
|
576
|
-
likes
|
|
577
|
-
dislikes
|
|
578
|
-
isLikedByMe
|
|
579
|
-
questionId
|
|
580
|
-
replies {
|
|
581
|
-
id
|
|
582
|
-
createdAt
|
|
583
|
-
comment
|
|
584
|
-
parentId
|
|
585
|
-
user {
|
|
586
|
-
id
|
|
587
|
-
displayName
|
|
588
|
-
}
|
|
589
|
-
likes
|
|
590
|
-
dislikes
|
|
591
|
-
isLikedByMe
|
|
592
|
-
questionId
|
|
593
|
-
}
|
|
133
|
+
...QuestionCommentFields
|
|
594
134
|
}
|
|
595
135
|
}
|
|
596
136
|
}
|
|
@@ -608,7 +148,8 @@ export const updateQuestionComments = (typeId) => (cache, result, options) => {
|
|
|
608
148
|
id: questionId,
|
|
609
149
|
__typename: getQuestionTypeName(typeId),
|
|
610
150
|
}),
|
|
611
|
-
fragment:
|
|
151
|
+
fragment: QUESTION_WITH_COMMENT_FIELDS,
|
|
152
|
+
fragmentName: 'QuestionWithCommentFields',
|
|
612
153
|
});
|
|
613
154
|
if (dataFragment) {
|
|
614
155
|
const { comments = [] } = dataFragment;
|
|
@@ -621,7 +162,8 @@ export const updateQuestionComments = (typeId) => (cache, result, options) => {
|
|
|
621
162
|
...dataFragment,
|
|
622
163
|
comments: addCommentToDiscussion(questionComments, comments, parentId),
|
|
623
164
|
},
|
|
624
|
-
fragment:
|
|
165
|
+
fragment: QUESTION_WITH_COMMENT_FIELDS,
|
|
166
|
+
fragmentName: 'QuestionWithCommentFields',
|
|
625
167
|
});
|
|
626
168
|
}
|
|
627
169
|
}
|
|
@@ -654,6 +196,7 @@ export const optimisticQuestionComment = (id, user, input) => {
|
|
|
654
196
|
};
|
|
655
197
|
};
|
|
656
198
|
export const QUESTION_COMMENT_LIKE = gql `
|
|
199
|
+
${QUESTION_COMMENT_FIELDS}
|
|
657
200
|
mutation QuestionCommentLike(
|
|
658
201
|
$marksheetId: Int
|
|
659
202
|
$questionId: Int!
|
|
@@ -667,32 +210,7 @@ export const QUESTION_COMMENT_LIKE = gql `
|
|
|
667
210
|
commentId: $commentId
|
|
668
211
|
like: $like
|
|
669
212
|
) {
|
|
670
|
-
|
|
671
|
-
createdAt
|
|
672
|
-
comment
|
|
673
|
-
parentId
|
|
674
|
-
user {
|
|
675
|
-
id
|
|
676
|
-
displayName
|
|
677
|
-
}
|
|
678
|
-
likes
|
|
679
|
-
dislikes
|
|
680
|
-
isLikedByMe
|
|
681
|
-
questionId
|
|
682
|
-
replies {
|
|
683
|
-
id
|
|
684
|
-
createdAt
|
|
685
|
-
comment
|
|
686
|
-
parentId
|
|
687
|
-
user {
|
|
688
|
-
id
|
|
689
|
-
displayName
|
|
690
|
-
}
|
|
691
|
-
likes
|
|
692
|
-
dislikes
|
|
693
|
-
isLikedByMe
|
|
694
|
-
questionId
|
|
695
|
-
}
|
|
213
|
+
...QuestionCommentFields
|
|
696
214
|
}
|
|
697
215
|
}
|
|
698
216
|
}
|
|
@@ -717,6 +235,7 @@ export const optimisticCommentLike = (comments, input, parentId) => {
|
|
|
717
235
|
};
|
|
718
236
|
};
|
|
719
237
|
export const QUESTION_COMMENT_REMOVE = gql `
|
|
238
|
+
${QUESTION_COMMENT_FIELDS}
|
|
720
239
|
mutation QuestionCommentRemove(
|
|
721
240
|
$marksheetId: Int
|
|
722
241
|
$questionId: Int!
|
|
@@ -728,32 +247,7 @@ export const QUESTION_COMMENT_REMOVE = gql `
|
|
|
728
247
|
questionId: $questionId
|
|
729
248
|
commentId: $commentId
|
|
730
249
|
) {
|
|
731
|
-
|
|
732
|
-
createdAt
|
|
733
|
-
comment
|
|
734
|
-
parentId
|
|
735
|
-
user {
|
|
736
|
-
id
|
|
737
|
-
displayName
|
|
738
|
-
}
|
|
739
|
-
likes
|
|
740
|
-
dislikes
|
|
741
|
-
isLikedByMe
|
|
742
|
-
questionId
|
|
743
|
-
replies {
|
|
744
|
-
id
|
|
745
|
-
createdAt
|
|
746
|
-
comment
|
|
747
|
-
parentId
|
|
748
|
-
user {
|
|
749
|
-
id
|
|
750
|
-
displayName
|
|
751
|
-
}
|
|
752
|
-
likes
|
|
753
|
-
dislikes
|
|
754
|
-
isLikedByMe
|
|
755
|
-
questionId
|
|
756
|
-
}
|
|
250
|
+
...QuestionCommentFields
|
|
757
251
|
}
|
|
758
252
|
}
|
|
759
253
|
}
|
|
@@ -771,7 +265,8 @@ export const updateQuestionCommentsRemove = (typeId) => (cache, result, options)
|
|
|
771
265
|
id: questionId,
|
|
772
266
|
__typename: getQuestionTypeName(typeId),
|
|
773
267
|
}),
|
|
774
|
-
fragment:
|
|
268
|
+
fragment: QUESTION_WITH_COMMENT_FIELDS,
|
|
269
|
+
fragmentName: 'QuestionWithCommentFields',
|
|
775
270
|
});
|
|
776
271
|
if (dataFragment) {
|
|
777
272
|
const { comments = [] } = dataFragment;
|
|
@@ -793,7 +288,8 @@ export const updateQuestionCommentsRemove = (typeId) => (cache, result, options)
|
|
|
793
288
|
...dataFragment,
|
|
794
289
|
comments: updatedComments,
|
|
795
290
|
},
|
|
796
|
-
fragment:
|
|
291
|
+
fragment: QUESTION_WITH_COMMENT_FIELDS,
|
|
292
|
+
fragmentName: 'QuestionWithCommentFields',
|
|
797
293
|
});
|
|
798
294
|
}
|
|
799
295
|
}
|
|
@@ -863,7 +359,7 @@ export const updateQuestionHighlights = (typeId) => (cache, result, options) =>
|
|
|
863
359
|
data: {
|
|
864
360
|
highlights: addQuestionHighlight[0].highlights,
|
|
865
361
|
},
|
|
866
|
-
fragment:
|
|
362
|
+
fragment: QUESTION_WITH_HIGHLIGHT_FIELDS,
|
|
867
363
|
});
|
|
868
364
|
});
|
|
869
365
|
}
|