@quesmed/types 2.6.29 → 2.6.31

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 (55) hide show
  1. package/dist/cjs/resolvers/fragments/chapter.js +3 -18
  2. package/dist/cjs/resolvers/fragments/concept.d.ts +1 -2
  3. package/dist/cjs/resolvers/fragments/concept.js +18 -57
  4. package/dist/cjs/resolvers/fragments/index.d.ts +2 -0
  5. package/dist/cjs/resolvers/fragments/index.js +2 -0
  6. package/dist/cjs/resolvers/fragments/marksheet.d.ts +14 -0
  7. package/dist/cjs/resolvers/fragments/marksheet.js +127 -127
  8. package/dist/cjs/resolvers/fragments/mockTest.d.ts +6 -0
  9. package/dist/cjs/resolvers/fragments/mockTest.js +27 -1
  10. package/dist/cjs/resolvers/fragments/osce.d.ts +3 -0
  11. package/dist/cjs/resolvers/fragments/osce.js +23 -1
  12. package/dist/cjs/resolvers/fragments/question.d.ts +5 -0
  13. package/dist/cjs/resolvers/fragments/question.js +176 -0
  14. package/dist/cjs/resolvers/fragments/topic.d.ts +2 -0
  15. package/dist/cjs/resolvers/fragments/topic.js +25 -1
  16. package/dist/cjs/resolvers/fragments/video.d.ts +1 -0
  17. package/dist/cjs/resolvers/fragments/video.js +17 -28
  18. package/dist/cjs/resolvers/mutation/restricted/marksheet.d.ts +0 -8
  19. package/dist/cjs/resolvers/mutation/restricted/marksheet.js +18 -4128
  20. package/dist/cjs/resolvers/mutation/restricted/mockTest.d.ts +2 -3
  21. package/dist/cjs/resolvers/mutation/restricted/mockTest.js +22 -13
  22. package/dist/cjs/resolvers/mutation/restricted/osce.d.ts +46 -2
  23. package/dist/cjs/resolvers/mutation/restricted/osce.js +47 -1
  24. package/dist/cjs/resolvers/mutation/restricted/questionDiscussion.d.ts +6 -21
  25. package/dist/cjs/resolvers/mutation/restricted/questionDiscussion.js +27 -532
  26. package/dist/cjs/resolvers/query/restricted/marksheet.js +5 -2025
  27. package/dist/cjs/resolvers/query/restricted/question.js +3 -932
  28. package/dist/mjs/resolvers/fragments/chapter.js +3 -18
  29. package/dist/mjs/resolvers/fragments/concept.d.ts +1 -2
  30. package/dist/mjs/resolvers/fragments/concept.js +18 -57
  31. package/dist/mjs/resolvers/fragments/index.d.ts +2 -0
  32. package/dist/mjs/resolvers/fragments/index.js +2 -0
  33. package/dist/mjs/resolvers/fragments/marksheet.d.ts +14 -0
  34. package/dist/mjs/resolvers/fragments/marksheet.js +126 -126
  35. package/dist/mjs/resolvers/fragments/mockTest.d.ts +6 -0
  36. package/dist/mjs/resolvers/fragments/mockTest.js +26 -0
  37. package/dist/mjs/resolvers/fragments/osce.d.ts +3 -0
  38. package/dist/mjs/resolvers/fragments/osce.js +22 -0
  39. package/dist/mjs/resolvers/fragments/question.d.ts +5 -0
  40. package/dist/mjs/resolvers/fragments/question.js +173 -0
  41. package/dist/mjs/resolvers/fragments/topic.d.ts +2 -0
  42. package/dist/mjs/resolvers/fragments/topic.js +24 -0
  43. package/dist/mjs/resolvers/fragments/video.d.ts +1 -0
  44. package/dist/mjs/resolvers/fragments/video.js +16 -27
  45. package/dist/mjs/resolvers/mutation/restricted/marksheet.d.ts +0 -8
  46. package/dist/mjs/resolvers/mutation/restricted/marksheet.js +14 -4124
  47. package/dist/mjs/resolvers/mutation/restricted/mockTest.d.ts +2 -3
  48. package/dist/mjs/resolvers/mutation/restricted/mockTest.js +20 -11
  49. package/dist/mjs/resolvers/mutation/restricted/osce.d.ts +46 -2
  50. package/dist/mjs/resolvers/mutation/restricted/osce.js +45 -1
  51. package/dist/mjs/resolvers/mutation/restricted/questionDiscussion.d.ts +6 -21
  52. package/dist/mjs/resolvers/mutation/restricted/questionDiscussion.js +26 -530
  53. package/dist/mjs/resolvers/query/restricted/marksheet.js +5 -2025
  54. package/dist/mjs/resolvers/query/restricted/question.js +3 -932
  55. package/package.json +6 -1
@@ -1,7 +1,7 @@
1
1
  import { ApolloCache } from '@apollo/client';
2
2
  import { ApolloUpdateOptions, ApolloUpdateResultRestricted } from '../..';
3
- import { Id, IMarksheet, IMarksheetMark } from '../../../models';
4
- import { graphqlNormalize, RestrictedData } from '../../types';
3
+ import { IMarksheet, IMarksheetMark, Id } from '../../../models';
4
+ import { RestrictedData, graphqlNormalize } from '../../types';
5
5
  export declare const BUILD_MOCK_TEST_MARKSHEET: import("@apollo/client").DocumentNode;
6
6
  export interface IBuildMockTestMarksheetVar {
7
7
  mockTestId: Id;
@@ -9,7 +9,6 @@ export interface IBuildMockTestMarksheetVar {
9
9
  }
10
10
  export type IBuildMockTestMarksheetData = RestrictedData<graphqlNormalize & IMarksheet, 'buildMockTestMarksheet'>;
11
11
  export declare const TOGGLE_FLAGGED_MARK: import("@apollo/client").DocumentNode;
12
- export declare const MARK_FLAGGED_QUESTION: import("@apollo/client").DocumentNode;
13
12
  export declare const updateCacheToggleFlaggedQuestion: (cache: ApolloCache<any>, result: ApolloUpdateResultRestricted<IToggleFlaggedMarkData>) => void;
14
13
  export declare const optimisticToggleFlaggedQuestion: (mark: IMarksheetMark, flagged: boolean) => {
15
14
  restricted: {
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.optimisticEndMockTest = exports.updateCacheOnEndMockTest = exports.END_MOCK_TEST = exports.optimisticToggleFlaggedQuestion = exports.updateCacheToggleFlaggedQuestion = exports.MARK_FLAGGED_QUESTION = exports.TOGGLE_FLAGGED_MARK = exports.BUILD_MOCK_TEST_MARKSHEET = void 0;
3
+ exports.optimisticEndMockTest = exports.updateCacheOnEndMockTest = exports.END_MOCK_TEST = exports.optimisticToggleFlaggedQuestion = exports.updateCacheToggleFlaggedQuestion = exports.TOGGLE_FLAGGED_MARK = exports.BUILD_MOCK_TEST_MARKSHEET = void 0;
4
4
  const client_1 = require("@apollo/client");
5
+ const fragments_1 = require("../../fragments");
5
6
  exports.BUILD_MOCK_TEST_MARKSHEET = (0, client_1.gql) `
6
7
  mutation BuildMockTestMarksheet($mockTestId: Int!, $duration: Int!) {
7
8
  restricted {
@@ -29,11 +30,6 @@ exports.TOGGLE_FLAGGED_MARK = (0, client_1.gql) `
29
30
  }
30
31
  }
31
32
  `;
32
- exports.MARK_FLAGGED_QUESTION = (0, client_1.gql) `
33
- fragment MarksheetMarkFlagged on MarksheetMark {
34
- flagged
35
- }
36
- `;
37
33
  const updateCacheToggleFlaggedQuestion = (cache, result) => {
38
34
  const { toggleFlaggedMark } = result?.data?.restricted || {};
39
35
  if (!toggleFlaggedMark) {
@@ -45,7 +41,7 @@ const updateCacheToggleFlaggedQuestion = (cache, result) => {
45
41
  data: {
46
42
  flagged,
47
43
  },
48
- fragment: exports.MARK_FLAGGED_QUESTION,
44
+ fragment: fragments_1.MARK_FLAGGED_QUESTION,
49
45
  });
50
46
  };
51
47
  exports.updateCacheToggleFlaggedQuestion = updateCacheToggleFlaggedQuestion;
@@ -64,6 +60,9 @@ exports.END_MOCK_TEST = (0, client_1.gql) `
64
60
  restricted {
65
61
  endMockTest(marksheetId: $marksheetId) {
66
62
  id
63
+ startedAt
64
+ endedAt
65
+ mockTestId
67
66
  completed
68
67
  correct
69
68
  incorrect
@@ -73,11 +72,6 @@ exports.END_MOCK_TEST = (0, client_1.gql) `
73
72
  }
74
73
  }
75
74
  `;
76
- const COMPLETED_MOCK_TEST_FRAGMENT = (0, client_1.gql) `
77
- fragment MockTestCompleted on Marksheet {
78
- completed
79
- }
80
- `;
81
75
  const updateCacheOnEndMockTest = (cache, result, options) => {
82
76
  const { endMockTest } = result?.data?.restricted || {};
83
77
  const { variables } = options || {};
@@ -89,8 +83,23 @@ const updateCacheOnEndMockTest = (cache, result, options) => {
89
83
  id: cache.identify({ id, __typename: 'Marksheet' }),
90
84
  data: {
91
85
  completed: true,
86
+ correct: endMockTest.correct,
87
+ incorrect: endMockTest.incorrect,
88
+ duration: endMockTest.duration,
89
+ endedAt: endMockTest.endedAt,
90
+ },
91
+ fragment: fragments_1.COMPLETED_MOCK_TEST_MARKSHEET_FRAGMENT,
92
+ });
93
+ cache.writeFragment({
94
+ id: cache.identify({ id: endMockTest.mockTestId, __typename: 'MockTest' }),
95
+ data: {
96
+ lastMarksheetId: endMockTest.id,
97
+ lastMarksheetStartedAt: endMockTest.startedAt,
98
+ lastMarksheetEndedAt: endMockTest.endedAt,
99
+ correct: endMockTest.correct,
100
+ incorrect: endMockTest.incorrect,
92
101
  },
93
- fragment: COMPLETED_MOCK_TEST_FRAGMENT,
102
+ fragment: fragments_1.COMPLETED_MOCK_TESTS_FRAGMENT,
94
103
  });
95
104
  };
96
105
  exports.updateCacheOnEndMockTest = updateCacheOnEndMockTest;
@@ -1,6 +1,8 @@
1
- import { EOsceMarksheetAction, EOsceMarksheetState, EOsceRoles, EPaceMarkType, EProductType, EStudyAction, Id, IOsceMarksheet, IOsceMarksheetMark } from '../../../models';
1
+ import { ApolloCache } from '@apollo/client';
2
+ import { EOsceMarksheetAction, EOsceMarksheetState, EOsceRoles, EPaceMarkType, EProductType, EStudyAction, IOsceMarksheet, IOsceMarksheetMark, Id } from '../../../models';
3
+ import { ApolloUpdateOptions, ApolloUpdateResultRestricted } from '../../apollo';
2
4
  import { IOsceMatchmakingAction } from '../../subscription/osce';
3
- import { graphqlNormalize, RestrictedData } from '../../types';
5
+ import { RestrictedData, graphqlNormalize } from '../../types';
4
6
  export declare const START_OSCE_MATCHMAKING: import("@apollo/client").DocumentNode;
5
7
  export interface IStartOsceMatchmakingVar {
6
8
  sessionId: string;
@@ -89,6 +91,48 @@ export declare const END_OSCE_MARKSHEET: import("@apollo/client").DocumentNode;
89
91
  export interface IEndOsceMarksheetVar extends ISaveOsceMarksheetVar {
90
92
  }
91
93
  export type IEndOsceMarksheetData = RestrictedData<graphqlNormalize & IOsceMarksheet, 'endOsceMarksheet'>;
94
+ export declare const updateCacheOnEndOsceMarksheet: (productType: EProductType) => (cache: ApolloCache<any>, result: ApolloUpdateResultRestricted<IEndOsceMarksheetData>, options: ApolloUpdateOptions) => void;
95
+ export declare const optimisticEndOsceMarksheet: (marksheet: IOsceMarksheet) => {
96
+ restricted: {
97
+ __typename: string;
98
+ endOsceMarksheet: {
99
+ completed: boolean;
100
+ id: number;
101
+ createdAt: number | Date;
102
+ updatedAt: number | Date;
103
+ deletedAt: number | Date;
104
+ timeTaken: number;
105
+ osceStationId: number;
106
+ osceStation?: import("../../../models").IOsceStation | undefined;
107
+ role?: EOsceRoles | undefined;
108
+ solo: boolean;
109
+ score: number;
110
+ total: number;
111
+ correct: number;
112
+ globalScore: number;
113
+ feedback: string;
114
+ agoraId: string;
115
+ sessionId: string;
116
+ readingTime: number;
117
+ stationTime: number;
118
+ feedbackTime: number;
119
+ startedAt: number | Date;
120
+ endedAt: number | Date;
121
+ pausedAt: number | Date;
122
+ timeRemaining: string;
123
+ totalStationTime: string;
124
+ stageTime: string;
125
+ stage: import("../../../models").EOsceStage;
126
+ marks: IOsceMarksheetMark[];
127
+ users: import("../../../models").IUser[];
128
+ activeUsers?: import("../../../models").IUser[] | undefined;
129
+ members: import("../../../models").IOsceMarksheetMember[];
130
+ state: EOsceMarksheetState;
131
+ productId: EProductType;
132
+ __typename: string;
133
+ };
134
+ };
135
+ };
92
136
  export declare const LEAVE_OSCE_MARKSHEET: import("@apollo/client").DocumentNode;
93
137
  export interface ILeaveOsceMarksheetVar {
94
138
  osceMarksheetId: Id;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LEAVE_OSCE_MARKSHEET = exports.END_OSCE_MARKSHEET = exports.MODIFY_OSCE_MARKSHEET = exports.SAVE_OSCE_MARKSHEET = exports.PRESTART_OSCE_MARKSHEET = exports.START_OSCE_TIMER = exports.START_OSCE_MARKSHEET = exports.SELECT_OSCE_STATION = exports.optimisticMarkOsceMarksheetMark = exports.MARK_OSCE_MARKSHEET_MARK = exports.CHANGE_OSCE_ROLE = exports.BUILD_OSCE_MARKSHEET = exports.CREATE_OR_JOIN_OSCE_MARKSHEET = exports.CANCEL_OSCE_MATCHMAKING = exports.CHECK_OSCE_MATCHMAKING = exports.ACCEPT_OSCE_MATCHMAKING = exports.START_OSCE_MATCHMAKING = void 0;
3
+ exports.LEAVE_OSCE_MARKSHEET = exports.optimisticEndOsceMarksheet = exports.updateCacheOnEndOsceMarksheet = exports.END_OSCE_MARKSHEET = exports.MODIFY_OSCE_MARKSHEET = exports.SAVE_OSCE_MARKSHEET = exports.PRESTART_OSCE_MARKSHEET = exports.START_OSCE_TIMER = exports.START_OSCE_MARKSHEET = exports.SELECT_OSCE_STATION = exports.optimisticMarkOsceMarksheetMark = exports.MARK_OSCE_MARKSHEET_MARK = exports.CHANGE_OSCE_ROLE = exports.BUILD_OSCE_MARKSHEET = exports.CREATE_OR_JOIN_OSCE_MARKSHEET = exports.CANCEL_OSCE_MATCHMAKING = exports.CHECK_OSCE_MATCHMAKING = exports.ACCEPT_OSCE_MATCHMAKING = exports.START_OSCE_MATCHMAKING = void 0;
4
4
  const client_1 = require("@apollo/client");
5
5
  const models_1 = require("../../../models");
6
6
  const osce_1 = require("../../fragments/osce");
@@ -235,6 +235,52 @@ exports.END_OSCE_MARKSHEET = (0, client_1.gql) `
235
235
  }
236
236
  }
237
237
  `;
238
+ const updateCacheOnEndOsceMarksheet = (productType) => (cache, result, options) => {
239
+ const { endOsceMarksheet } = result?.data?.restricted || {};
240
+ const { variables } = options || {};
241
+ if (!variables || !endOsceMarksheet) {
242
+ return;
243
+ }
244
+ const { marksheetId: id } = variables;
245
+ cache.writeFragment({
246
+ id: cache.identify({ id, __typename: 'OsceMarksheet' }),
247
+ data: {
248
+ completed: true,
249
+ score: endOsceMarksheet.score,
250
+ state: endOsceMarksheet.state,
251
+ globalScore: endOsceMarksheet.globalScore,
252
+ timeTaken: endOsceMarksheet.timeTaken,
253
+ endedAt: endOsceMarksheet.endedAt,
254
+ },
255
+ fragment: osce_1.COMPLETED_OSCE_MARKSHEET_FRAGMENT,
256
+ });
257
+ cache.writeFragment({
258
+ id: cache.identify({
259
+ id: endOsceMarksheet.osceStationId,
260
+ __typename: 'OsceStation',
261
+ }),
262
+ data: {
263
+ completedMarks: endOsceMarksheet.marks.filter((m) => productType === models_1.EProductType.OSCE
264
+ ? m.mark !== null
265
+ : m.selectedChoice !== null).length,
266
+ score: endOsceMarksheet.score,
267
+ lastOsceMarksheetId: endOsceMarksheet.id,
268
+ },
269
+ fragment: osce_1.COMPLETED_OSCE_STATION_FRAGMENT,
270
+ });
271
+ };
272
+ exports.updateCacheOnEndOsceMarksheet = updateCacheOnEndOsceMarksheet;
273
+ const optimisticEndOsceMarksheet = (marksheet) => ({
274
+ restricted: {
275
+ __typename: 'RestrictedMutation',
276
+ endOsceMarksheet: {
277
+ __typename: 'OsceMarksheet',
278
+ ...marksheet,
279
+ completed: true,
280
+ },
281
+ },
282
+ });
283
+ exports.optimisticEndOsceMarksheet = optimisticEndOsceMarksheet;
238
284
  exports.LEAVE_OSCE_MARKSHEET = (0, client_1.gql) `
239
285
  ${osce_1.OSCE_MARKSHEET_FIELDS}
240
286
  mutation LeaveOsceMarksheet($osceMarksheetId: Int!) {
@@ -1,4 +1,4 @@
1
- import { ApolloCache, DocumentNode } from '@apollo/client';
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 {};