@taiger-common/model 1.0.57 → 1.0.58

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 (135) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +23 -23
  3. package/dist/cjs/index.js +0 -2
  4. package/dist/cjs/model/Documentthread.js +4 -2
  5. package/dist/cjs/model/Program.js +83 -331
  6. package/dist/cjs/model/User.js +139 -78
  7. package/dist/cjs/model/index.js +1 -1
  8. package/dist/esm/index.js +0 -2
  9. package/dist/esm/model/Documentthread.js +4 -2
  10. package/dist/esm/model/Program.js +78 -326
  11. package/dist/esm/model/User.js +124 -62
  12. package/dist/esm/model/index.js +1 -1
  13. package/dist/types/index.d.ts +0 -2
  14. package/dist/types/model/Allcourse.d.ts +27 -6
  15. package/dist/types/model/Audit.d.ts +43 -18
  16. package/dist/types/model/Basedocumentationslink.d.ts +16 -11
  17. package/dist/types/model/Communication.d.ts +71 -22
  18. package/dist/types/model/Complaint.d.ts +170 -25
  19. package/dist/types/model/Course.d.ts +49 -23
  20. package/dist/types/model/Docspage.d.ts +37 -14
  21. package/dist/types/model/Documentation.d.ts +28 -15
  22. package/dist/types/model/Documentthread.d.ts +178 -35
  23. package/dist/types/model/Event.d.ts +54 -15
  24. package/dist/types/model/Internaldoc.d.ts +28 -15
  25. package/dist/types/model/Interval.d.ts +26 -13
  26. package/dist/types/model/Interview.d.ts +50 -23
  27. package/dist/types/model/InterviewSurveyResponse.d.ts +62 -20
  28. package/dist/types/model/Keywordset.d.ts +44 -14
  29. package/dist/types/model/Note.d.ts +13 -11
  30. package/dist/types/model/Permission.d.ts +56 -21
  31. package/dist/types/model/Program.d.ts +232 -387
  32. package/dist/types/model/Programrequirement.d.ts +140 -37
  33. package/dist/types/model/ResponseTime.d.ts +17 -12
  34. package/dist/types/model/SurveyInput.d.ts +90 -23
  35. package/dist/types/model/Template.d.ts +13 -8
  36. package/dist/types/model/Tenant.d.ts +13 -10
  37. package/dist/types/model/Ticket.d.ts +38 -16
  38. package/dist/types/model/Token.d.ts +12 -10
  39. package/dist/types/model/User.d.ts +1 -2148
  40. package/dist/types/model/index.d.ts +1 -1
  41. package/dist/umd/index.js +1 -1
  42. package/package.json +1 -1
  43. package/dist/cjs/api/account.js +0 -35
  44. package/dist/cjs/api/applications.js +0 -46
  45. package/dist/cjs/api/audit.js +0 -8
  46. package/dist/cjs/api/auth.js +0 -19
  47. package/dist/cjs/api/common.js +0 -32
  48. package/dist/cjs/api/communications.js +0 -15
  49. package/dist/cjs/api/courses.js +0 -23
  50. package/dist/cjs/api/crm.js +0 -87
  51. package/dist/cjs/api/documentThreads.js +0 -44
  52. package/dist/cjs/api/documentations.js +0 -33
  53. package/dist/cjs/api/events.js +0 -22
  54. package/dist/cjs/api/index.js +0 -41
  55. package/dist/cjs/api/interviews.js +0 -35
  56. package/dist/cjs/api/meetings.js +0 -20
  57. package/dist/cjs/api/notes.js +0 -8
  58. package/dist/cjs/api/permissions.js +0 -9
  59. package/dist/cjs/api/portals.js +0 -24
  60. package/dist/cjs/api/programRequirements.js +0 -26
  61. package/dist/cjs/api/programs.js +0 -93
  62. package/dist/cjs/api/search.js +0 -24
  63. package/dist/cjs/api/serialized.js +0 -50
  64. package/dist/cjs/api/students.js +0 -29
  65. package/dist/cjs/api/teams.js +0 -48
  66. package/dist/cjs/api/tickets.js +0 -21
  67. package/dist/cjs/api/users.js +0 -42
  68. package/dist/cjs/api/widgets.js +0 -21
  69. package/dist/cjs/constants/users.js +0 -12
  70. package/dist/cjs/model/Application.js +0 -78
  71. package/dist/cjs/schema/index.js +0 -22
  72. package/dist/cjs/schema/models.js +0 -523
  73. package/dist/cjs/schema/serialized.js +0 -202
  74. package/dist/esm/api/account.js +0 -32
  75. package/dist/esm/api/applications.js +0 -43
  76. package/dist/esm/api/audit.js +0 -5
  77. package/dist/esm/api/auth.js +0 -16
  78. package/dist/esm/api/common.js +0 -27
  79. package/dist/esm/api/communications.js +0 -12
  80. package/dist/esm/api/courses.js +0 -20
  81. package/dist/esm/api/crm.js +0 -84
  82. package/dist/esm/api/documentThreads.js +0 -41
  83. package/dist/esm/api/documentations.js +0 -30
  84. package/dist/esm/api/events.js +0 -19
  85. package/dist/esm/api/index.js +0 -25
  86. package/dist/esm/api/interviews.js +0 -32
  87. package/dist/esm/api/meetings.js +0 -17
  88. package/dist/esm/api/notes.js +0 -5
  89. package/dist/esm/api/permissions.js +0 -6
  90. package/dist/esm/api/portals.js +0 -21
  91. package/dist/esm/api/programRequirements.js +0 -23
  92. package/dist/esm/api/programs.js +0 -90
  93. package/dist/esm/api/search.js +0 -21
  94. package/dist/esm/api/serialized.js +0 -13
  95. package/dist/esm/api/students.js +0 -26
  96. package/dist/esm/api/teams.js +0 -45
  97. package/dist/esm/api/tickets.js +0 -18
  98. package/dist/esm/api/users.js +0 -39
  99. package/dist/esm/api/widgets.js +0 -18
  100. package/dist/esm/constants/users.js +0 -9
  101. package/dist/esm/model/Application.js +0 -75
  102. package/dist/esm/schema/index.js +0 -6
  103. package/dist/esm/schema/models.js +0 -520
  104. package/dist/esm/schema/serialized.js +0 -199
  105. package/dist/types/api/account.d.ts +0 -503
  106. package/dist/types/api/applications.d.ts +0 -3417
  107. package/dist/types/api/audit.d.ts +0 -89
  108. package/dist/types/api/auth.d.ts +0 -3411
  109. package/dist/types/api/common.d.ts +0 -90
  110. package/dist/types/api/communications.d.ts +0 -617
  111. package/dist/types/api/courses.d.ts +0 -849
  112. package/dist/types/api/crm.d.ts +0 -1113
  113. package/dist/types/api/documentThreads.d.ts +0 -38257
  114. package/dist/types/api/documentations.d.ts +0 -933
  115. package/dist/types/api/events.d.ts +0 -7209
  116. package/dist/types/api/index.d.ts +0 -25
  117. package/dist/types/api/interviews.d.ts +0 -802
  118. package/dist/types/api/meetings.d.ts +0 -49
  119. package/dist/types/api/notes.d.ts +0 -85
  120. package/dist/types/api/permissions.d.ts +0 -195
  121. package/dist/types/api/portals.d.ts +0 -770
  122. package/dist/types/api/programRequirements.d.ts +0 -2685
  123. package/dist/types/api/programs.d.ts +0 -3046
  124. package/dist/types/api/search.d.ts +0 -292
  125. package/dist/types/api/serialized.d.ts +0 -7
  126. package/dist/types/api/students.d.ts +0 -307
  127. package/dist/types/api/teams.d.ts +0 -3671
  128. package/dist/types/api/tickets.d.ts +0 -960
  129. package/dist/types/api/users.d.ts +0 -6960
  130. package/dist/types/api/widgets.d.ts +0 -234
  131. package/dist/types/constants/users.d.ts +0 -9
  132. package/dist/types/model/Application.d.ts +0 -85
  133. package/dist/types/schema/index.d.ts +0 -6
  134. package/dist/types/schema/models.d.ts +0 -2038
  135. package/dist/types/schema/serialized.d.ts +0 -8823
@@ -1,202 +0,0 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.BasedocumentationslinkWithIdSchema = exports.TemplateWithIdSchema = exports.SurveyInputWithIdSchema = exports.KeywordsetWithIdSchema = exports.AllCourseWithIdSchema = exports.ProgramrequirementWithIdSchema = exports.InternaldocWithIdSchema = exports.DocspageWithIdSchema = exports.DocumentationWithIdSchema = exports.PermissionWithIdSchema = exports.NoteWithIdSchema = exports.EventWithIdSchema = exports.AuditWithIdSchema = exports.ComplaintWithIdSchema = exports.TicketWithIdSchema = exports.InterviewSurveyResponseWithIdSchema = exports.InterviewWithIdSchema = exports.CommunicationWithIdSchema = exports.DocumentthreadPopulatedSchema = exports.DocumentthreadWithIdSchema = exports.UserWithIdSchema = exports.StudentResponseSchema = exports.ApplicationPopulatedSchema = exports.ApplicationWithIdSchema = exports.EditorWithIdSchema = exports.AgentWithIdSchema = exports.ProgramWithIdSchema = void 0;
15
- /**
16
- * Zod schemas for API-serialized model types (all ObjectId refs as strings).
17
- * Types are inferred from schemas via z.infer<>.
18
- * Circular references (IStudentResponse <-> IApplicationPopulated) are handled with z.lazy().
19
- */
20
- var zod_1 = require("zod");
21
- var models_1 = require("./models");
22
- // =========== Program with _id ===========
23
- exports.ProgramWithIdSchema = models_1.ProgramSchema.extend({
24
- _id: zod_1.z.string(),
25
- vcId: zod_1.z.string().optional()
26
- });
27
- // =========== Agent/Editor with _id ===========
28
- var officehoursDaySchema = zod_1.z.object({
29
- active: zod_1.z.boolean().optional(),
30
- time_slots: zod_1.z.array(zod_1.z.unknown()).optional()
31
- });
32
- var agentNotificationSchema = zod_1.z.object({
33
- isRead_new_base_docs_uploaded: zod_1.z
34
- .array(zod_1.z.object({
35
- student_id: zod_1.z.string().optional(),
36
- student_firstname: zod_1.z.string().optional(),
37
- student_lastname: zod_1.z.string().optional()
38
- }))
39
- .optional(),
40
- isRead_new_survey_updated: zod_1.z.boolean().optional(),
41
- isRead_applications_status_changed: zod_1.z.boolean().optional(),
42
- isRead_new_programs_assigned: zod_1.z.boolean().optional()
43
- });
44
- var editorAttributeSchema = zod_1.z.object({
45
- can_write_ml: zod_1.z.boolean().optional(),
46
- can_write_rl: zod_1.z.boolean().optional(),
47
- can_write_cv: zod_1.z.boolean().optional(),
48
- can_write_essay: zod_1.z.boolean().optional(),
49
- can_do_interview: zod_1.z.boolean().optional()
50
- });
51
- var editorNotificationSchema = zod_1.z.object({
52
- isRead_survey_not_complete: zod_1.z.boolean().optional(),
53
- isRead_base_documents_missing: zod_1.z.boolean().optional(),
54
- isRead_base_documents_rejected: zod_1.z.boolean().optional(),
55
- isRead_new_programs_assigned: zod_1.z.boolean().optional()
56
- });
57
- /** Shared base user fields (API-safe, no Mongoose types) */
58
- var userBaseFields = {
59
- _id: zod_1.z.string(),
60
- role: zod_1.z.string().optional(),
61
- firstname: zod_1.z.string().optional(),
62
- firstname_chinese: zod_1.z.string().optional(),
63
- lastname: zod_1.z.string().optional(),
64
- lastname_chinese: zod_1.z.string().optional(),
65
- email: zod_1.z.string().optional(),
66
- pictureUrl: zod_1.z.string().optional(),
67
- archiv: zod_1.z.boolean().optional(),
68
- birthday: zod_1.z.string().optional(),
69
- linkedIn: zod_1.z.string().optional(),
70
- lineId: zod_1.z.string().optional(),
71
- timezone: zod_1.z.string().optional(),
72
- isAccountActivated: zod_1.z.boolean().optional(),
73
- notification: models_1.UserNotificationSchema.optional(),
74
- taigerai: models_1.UserTaigeraiSchema.optional(),
75
- application_preference: models_1.UserApplicationPreferenceSchema.optional(),
76
- academic_background: models_1.UserAcademicBackgroundSchema.optional(),
77
- lastLoginAt: zod_1.z.coerce.date().optional(),
78
- needEditor: zod_1.z.boolean().optional(),
79
- applying_program_count: zod_1.z.number().optional(),
80
- attributes: zod_1.z.array(models_1.UserAttributeSchema).optional(),
81
- profile: zod_1.z.array(models_1.UserProfileItemSchema).optional(),
82
- courses: models_1.CourseSchema.optional()
83
- };
84
- exports.AgentWithIdSchema = zod_1.z.object(__assign(__assign({}, userBaseFields), { officehours: zod_1.z.record(officehoursDaySchema).optional(), selfIntroduction: zod_1.z.string().optional(), agent_notification: agentNotificationSchema.optional() }));
85
- exports.EditorWithIdSchema = zod_1.z.object(__assign(__assign({}, userBaseFields), { officehours: zod_1.z.record(officehoursDaySchema).optional(), editor_notification: editorNotificationSchema.optional(), attribute: editorAttributeSchema.optional() }));
86
- /** Application response with string _id and unpopulated refs */
87
- exports.ApplicationWithIdSchema = zod_1.z.object({
88
- _id: zod_1.z.string(),
89
- programId: zod_1.z.string().optional(),
90
- studentId: zod_1.z.string().optional(),
91
- uni_assist: models_1.ApplicationUniAssistSchema.optional(),
92
- portal_credentials: models_1.ApplicationPortalCredentialsSchema.optional(),
93
- doc_modification_thread: zod_1.z.array(models_1.ApplicationDocModificationThreadItemSchema).optional(),
94
- reject_reason: zod_1.z.string().optional(),
95
- admission_letter: models_1.ApplicationAdmissionLetterSchema.optional(),
96
- finalEnrolment: zod_1.z.boolean().optional(),
97
- decided: zod_1.z.string().optional(),
98
- closed: zod_1.z.string().optional(),
99
- admission: zod_1.z.string().optional(),
100
- application_year: zod_1.z.string().optional(),
101
- isLocked: zod_1.z.boolean().optional(),
102
- credential_a_filled: zod_1.z.boolean().optional(),
103
- credential_b_filled: zod_1.z.boolean().optional()
104
- });
105
- /** Application with populated programId and studentId — uses z.lazy for circular ref */
106
- exports.ApplicationPopulatedSchema = zod_1.z.lazy(function () {
107
- return zod_1.z.object({
108
- _id: zod_1.z.string(),
109
- programId: exports.ProgramWithIdSchema.optional(),
110
- studentId: exports.StudentResponseSchema.optional(),
111
- uni_assist: models_1.ApplicationUniAssistSchema.optional(),
112
- portal_credentials: models_1.ApplicationPortalCredentialsSchema.optional(),
113
- doc_modification_thread: zod_1.z.array(models_1.ApplicationDocModificationThreadItemSchema).optional(),
114
- reject_reason: zod_1.z.string().optional(),
115
- admission_letter: models_1.ApplicationAdmissionLetterSchema.optional(),
116
- finalEnrolment: zod_1.z.boolean().optional(),
117
- decided: zod_1.z.string().optional(),
118
- closed: zod_1.z.string().optional(),
119
- admission: zod_1.z.string().optional(),
120
- application_year: zod_1.z.string().optional(),
121
- isLocked: zod_1.z.boolean().optional(),
122
- credential_a_filled: zod_1.z.boolean().optional(),
123
- credential_b_filled: zod_1.z.boolean().optional()
124
- });
125
- });
126
- /** Student response with populated agents, editors, applications — uses z.lazy for circular ref */
127
- exports.StudentResponseSchema = zod_1.z.lazy(function () {
128
- return zod_1.z.object(__assign(__assign({}, userBaseFields), { generaldocs_threads: zod_1.z.array(models_1.UserGeneraldocsThreadSchema).optional(), applications: zod_1.z.array(exports.ApplicationPopulatedSchema).optional(), agents: zod_1.z.array(exports.AgentWithIdSchema).optional(), editors: zod_1.z.array(exports.EditorWithIdSchema).optional() }));
129
- });
130
- /** Frontend-friendly User/Student with string _id (no nested ObjectId refs) */
131
- exports.UserWithIdSchema = zod_1.z.object(__assign(__assign({}, userBaseFields), { generaldocs_threads: zod_1.z.array(models_1.UserGeneraldocsThreadSchema).optional() }));
132
- // =========== Document thread with _id ===========
133
- exports.DocumentthreadWithIdSchema = zod_1.z.object({
134
- _id: zod_1.z.string(),
135
- student_id: zod_1.z.string(),
136
- program_id: zod_1.z.string().optional(),
137
- application_id: zod_1.z.string().optional(),
138
- outsourced_user_id: zod_1.z.array(zod_1.z.string()).optional(),
139
- pin_by_user_id: zod_1.z.array(zod_1.z.string()).optional(),
140
- flag_by_user_id: zod_1.z.array(zod_1.z.string()).optional(),
141
- file_type: zod_1.z.string(),
142
- isFinalVersion: zod_1.z.boolean().optional(),
143
- isOriginAuthorDeclarationConfirmedByStudent: zod_1.z.boolean().optional(),
144
- isOriginAuthorDeclarationConfirmedByStudentTimestamp: zod_1.z.coerce.date().optional(),
145
- messages: zod_1.z.array(models_1.DocumentthreadMessageSchema).optional(),
146
- essayReviewerIds: zod_1.z.array(zod_1.z.string()).optional(),
147
- updatedAt: zod_1.z.coerce.date().optional()
148
- });
149
- /** Document thread with populated refs — student_id can be object or string */
150
- exports.DocumentthreadPopulatedSchema = zod_1.z.object({
151
- _id: zod_1.z.string(),
152
- student_id: zod_1.z.union([exports.StudentResponseSchema, zod_1.z.string()]),
153
- program_id: zod_1.z.union([exports.ProgramWithIdSchema, zod_1.z.string()]).optional(),
154
- application_id: zod_1.z.union([exports.ApplicationPopulatedSchema, zod_1.z.string()]).optional(),
155
- outsourced_user_id: zod_1.z.array(exports.UserWithIdSchema).optional(),
156
- pin_by_user_id: zod_1.z.array(exports.UserWithIdSchema).optional(),
157
- flag_by_user_id: zod_1.z.array(exports.UserWithIdSchema).optional(),
158
- essayReviewerIds: zod_1.z.array(exports.UserWithIdSchema).optional(),
159
- file_type: zod_1.z.string(),
160
- isFinalVersion: zod_1.z.boolean().optional(),
161
- isOriginAuthorDeclarationConfirmedByStudent: zod_1.z.boolean().optional(),
162
- isOriginAuthorDeclarationConfirmedByStudentTimestamp: zod_1.z.coerce.date().optional(),
163
- messages: zod_1.z.array(models_1.DocumentthreadMessageSchema).optional(),
164
- updatedAt: zod_1.z.coerce.date().optional()
165
- });
166
- // =========== Simple WithId types ===========
167
- exports.CommunicationWithIdSchema = models_1.CommunicationSchema.extend({ _id: zod_1.z.string() });
168
- exports.InterviewWithIdSchema = models_1.InterviewSchema.extend({ _id: zod_1.z.string() });
169
- exports.InterviewSurveyResponseWithIdSchema = models_1.InterviewSurveyResponseSchema.extend({
170
- _id: zod_1.z.string()
171
- });
172
- exports.TicketWithIdSchema = models_1.TicketSchema.extend({
173
- _id: zod_1.z.string(),
174
- createdAt: zod_1.z.coerce.date().optional()
175
- });
176
- exports.ComplaintWithIdSchema = models_1.ComplaintSchema.extend({
177
- _id: zod_1.z.string(),
178
- createdAt: zod_1.z.coerce.date().optional()
179
- });
180
- exports.AuditWithIdSchema = models_1.AuditSchema.extend({
181
- _id: zod_1.z.string(),
182
- createdAt: zod_1.z.coerce.date().optional()
183
- });
184
- exports.EventWithIdSchema = models_1.EventBaseSchema.extend({
185
- _id: zod_1.z.string(),
186
- createdAt: zod_1.z.coerce.date().optional()
187
- });
188
- exports.NoteWithIdSchema = models_1.NoteSchema.extend({ _id: zod_1.z.string() });
189
- exports.PermissionWithIdSchema = models_1.PermissionSchema.extend({ _id: zod_1.z.string() });
190
- exports.DocumentationWithIdSchema = models_1.DocumentationSchema.extend({ _id: zod_1.z.string() });
191
- exports.DocspageWithIdSchema = models_1.DocspageSchema.extend({ _id: zod_1.z.string() });
192
- exports.InternaldocWithIdSchema = models_1.InternaldocSchema.extend({ _id: zod_1.z.string() });
193
- exports.ProgramrequirementWithIdSchema = models_1.ProgramrequirementSchema.extend({
194
- _id: zod_1.z.string()
195
- });
196
- exports.AllCourseWithIdSchema = models_1.AllCourseSchema.extend({ _id: zod_1.z.string() });
197
- exports.KeywordsetWithIdSchema = models_1.KeywordsetSchema.extend({ _id: zod_1.z.string() });
198
- exports.SurveyInputWithIdSchema = models_1.SurveyInputSchema.extend({ _id: zod_1.z.string() });
199
- exports.TemplateWithIdSchema = models_1.TemplateSchema.extend({ _id: zod_1.z.string() });
200
- exports.BasedocumentationslinkWithIdSchema = models_1.BasedocumentationslinkSchema.extend({
201
- _id: zod_1.z.string()
202
- });
@@ -1,32 +0,0 @@
1
- import { z } from 'zod';
2
- import { SuccessResponseSchema, createApiResponseSchema } from './common';
3
- import { StudentResponseSchema, UserAcademicBackgroundUniversitySchema, UserAcademicBackgroundLanguageSchema, UserApplicationPreferenceSchema } from './serialized';
4
- // =========== Schemas ===========
5
- export var UpdateCredentialsResponseSchema = SuccessResponseSchema;
6
- export var UpdateBannerResponseSchema = SuccessResponseSchema;
7
- export var UpdateAgentBannerResponseSchema = SuccessResponseSchema;
8
- export var PersonalDataSubsetSchema = z.object({
9
- firstname: z.string().optional(),
10
- firstname_chinese: z.string().optional(),
11
- lastname: z.string().optional(),
12
- lastname_chinese: z.string().optional(),
13
- birthday: z.string().optional(),
14
- linkedIn: z.string().optional(),
15
- lineId: z.string().optional()
16
- });
17
- export var UpdatePersonalDataResponseSchema = createApiResponseSchema(PersonalDataSubsetSchema);
18
- export var UpdateAcademicBackgroundResponseSchema = z.object({
19
- success: z.boolean(),
20
- data: UserAcademicBackgroundUniversitySchema.optional(),
21
- profile: z.unknown().optional()
22
- });
23
- export var UpdateLanguageSkillResponseSchema = z.object({
24
- success: z.boolean(),
25
- data: UserAcademicBackgroundLanguageSchema.optional(),
26
- profile: z.unknown().optional()
27
- });
28
- export var UpdateApplicationPreferenceResponseSchema = createApiResponseSchema(UserApplicationPreferenceSchema);
29
- export var GetMyAcademicBackgroundResponseSchema = createApiResponseSchema(StudentResponseSchema);
30
- export var GetTemplatesResponseSchema = createApiResponseSchema(z.array(z.unknown()));
31
- export var UploadTemplateResponseSchema = SuccessResponseSchema;
32
- export var DeleteTemplateFileResponseSchema = SuccessResponseSchema;
@@ -1,43 +0,0 @@
1
- import { z } from 'zod';
2
- import { SuccessResponseSchema, createApiResponseSchema } from './common';
3
- import { ApplicationWithIdSchema, ApplicationPopulatedSchema, StudentResponseSchema, UserWithIdSchema, ProgramWithIdSchema } from './serialized';
4
- // =========== Schemas ===========
5
- export var ProgramCountItemSchema = z.object({
6
- program_id: z.string().optional(),
7
- count: z.number().optional()
8
- });
9
- export var GetApplicationsResponseSchema = createApiResponseSchema(z.array(ApplicationPopulatedSchema));
10
- export var GetMyStudentsApplicationsResponseSchema = z.object({
11
- success: z.boolean(),
12
- data: z
13
- .object({
14
- applications: z.array(ApplicationPopulatedSchema),
15
- user: UserWithIdSchema
16
- })
17
- .optional()
18
- });
19
- export var GetActiveStudentsApplicationsResponseSchema = createApiResponseSchema(z.array(ApplicationPopulatedSchema));
20
- export var GetStudentApplicationsResponseSchema = createApiResponseSchema(StudentResponseSchema);
21
- export var CreateApplicationResponseSchema = createApiResponseSchema(z.array(ApplicationWithIdSchema));
22
- export var UpdateStudentApplicationsResponseSchema = createApiResponseSchema(StudentResponseSchema);
23
- export var UpdateApplicationResponseSchema = createApiResponseSchema(ApplicationWithIdSchema);
24
- export var DeleteApplicationResponseSchema = SuccessResponseSchema;
25
- export var RefreshApplicationResponseSchema = createApiResponseSchema(ApplicationWithIdSchema);
26
- export var AdmissionsOverviewDataSchema = z.object({
27
- admission: z.number().optional(),
28
- rejection: z.number().optional(),
29
- pending: z.number().optional(),
30
- notYetSubmitted: z.number().optional()
31
- });
32
- export var GetAdmissionsResponseSchema = z.object({
33
- success: z.boolean(),
34
- data: z.array(ApplicationPopulatedSchema).optional(),
35
- result: z.array(ProgramCountItemSchema).optional()
36
- });
37
- export var GetAdmissionsOverviewResponseSchema = createApiResponseSchema(AdmissionsOverviewDataSchema);
38
- export var GetApplicationConflictsResponseSchema = createApiResponseSchema(z.unknown());
39
- export var GetApplicationTaskDeltasResponseSchema = createApiResponseSchema(z.array(z.object({
40
- program: ProgramWithIdSchema,
41
- students: z.array(z.unknown())
42
- })));
43
- export var UpdateStudentApplicationResultResponseSchema = createApiResponseSchema(ApplicationWithIdSchema);
@@ -1,5 +0,0 @@
1
- import { z } from 'zod';
2
- import { createApiResponseSchema } from './common';
3
- import { AuditWithIdSchema } from './serialized';
4
- // =========== Schemas ===========
5
- export var GetAuditLogResponseSchema = createApiResponseSchema(z.array(AuditWithIdSchema));
@@ -1,16 +0,0 @@
1
- import { z } from 'zod';
2
- import { SuccessResponseSchema, createApiResponseSchema } from './common';
3
- import { UserWithIdSchema } from './serialized';
4
- // =========== Schemas ===========
5
- export var AuthVerifyResponseSchema = z.object({
6
- success: z.boolean(),
7
- data: UserWithIdSchema.optional()
8
- });
9
- export var AuthLoginResponseSchema = createApiResponseSchema(UserWithIdSchema);
10
- export var AuthOAuthCallbackResponseSchema = createApiResponseSchema(UserWithIdSchema);
11
- export var AuthRegisterResponseSchema = SuccessResponseSchema;
12
- export var ForgotPasswordResponseSchema = SuccessResponseSchema;
13
- export var ResetPasswordResponseSchema = SuccessResponseSchema;
14
- export var ActivationResponseSchema = SuccessResponseSchema;
15
- export var ResendActivationResponseSchema = SuccessResponseSchema;
16
- export var LogoutResponseSchema = SuccessResponseSchema;
@@ -1,27 +0,0 @@
1
- /**
2
- * Common API response types shared across all domains.
3
- */
4
- import { z } from 'zod';
5
- // =========== Schemas ===========
6
- export var SuccessResponseSchema = z.object({
7
- success: z.boolean(),
8
- message: z.string().optional()
9
- });
10
- /**
11
- * Factory that wraps a data schema in the standard API response envelope.
12
- * Usage: createApiResponseSchema(z.array(UserWithIdSchema))
13
- */
14
- export var createApiResponseSchema = function (dataSchema) {
15
- return SuccessResponseSchema.extend({
16
- data: dataSchema.optional()
17
- });
18
- };
19
- /**
20
- * Factory for paginated list responses.
21
- * Usage: createPaginatedResponseSchema(SomeItemSchema)
22
- */
23
- export var createPaginatedResponseSchema = function (itemSchema) {
24
- return createApiResponseSchema(z.array(itemSchema)).extend({
25
- total: z.number().optional()
26
- });
27
- };
@@ -1,12 +0,0 @@
1
- import { z } from 'zod';
2
- import { SuccessResponseSchema, createApiResponseSchema } from './common';
3
- import { CommunicationWithIdSchema } from './serialized';
4
- // =========== Schemas ===========
5
- export var GetCommunicationThreadResponseSchema = createApiResponseSchema(z.array(CommunicationWithIdSchema));
6
- export var GetMyCommunicationThreadResponseSchema = createApiResponseSchema(z.array(CommunicationWithIdSchema));
7
- export var GetCommunicationUnreadNumberResponseSchema = createApiResponseSchema(z.number());
8
- export var PostCommunicationResponseSchema = createApiResponseSchema(CommunicationWithIdSchema);
9
- export var LoadCommunicationThreadResponseSchema = createApiResponseSchema(z.array(CommunicationWithIdSchema));
10
- export var UpdateCommunicationMessageResponseSchema = createApiResponseSchema(CommunicationWithIdSchema);
11
- export var DeleteCommunicationMessageResponseSchema = SuccessResponseSchema;
12
- export var IgnoreCommunicationMessageResponseSchema = createApiResponseSchema(CommunicationWithIdSchema);
@@ -1,20 +0,0 @@
1
- import { z } from 'zod';
2
- import { SuccessResponseSchema, createApiResponseSchema } from './common';
3
- import { AllCourseWithIdSchema, KeywordsetWithIdSchema } from './serialized';
4
- import { CourseSchema } from '../schema/models';
5
- // =========== Schemas ===========
6
- // --- All Courses (admin-managed global course catalogue) ---
7
- export var GetAllCoursesResponseSchema = createApiResponseSchema(z.array(AllCourseWithIdSchema));
8
- export var GetAllCourseResponseSchema = createApiResponseSchema(AllCourseWithIdSchema);
9
- export var CreateAllCourseResponseSchema = createApiResponseSchema(AllCourseWithIdSchema);
10
- export var UpdateAllCourseResponseSchema = createApiResponseSchema(AllCourseWithIdSchema);
11
- export var DeleteAllCourseResponseSchema = SuccessResponseSchema;
12
- // --- Course Keyword Sets ---
13
- export var GetCourseKeywordsetsResponseSchema = createApiResponseSchema(z.array(KeywordsetWithIdSchema));
14
- export var GetCourseKeywordsetResponseSchema = createApiResponseSchema(KeywordsetWithIdSchema);
15
- export var CreateKeywordsetResponseSchema = createApiResponseSchema(KeywordsetWithIdSchema);
16
- export var UpdateKeywordsetResponseSchema = createApiResponseSchema(KeywordsetWithIdSchema);
17
- export var DeleteKeywordsetResponseSchema = SuccessResponseSchema;
18
- // --- Student Courses ---
19
- export var GetStudentCoursesResponseSchema = createApiResponseSchema(CourseSchema);
20
- export var UpdateStudentCoursesResponseSchema = createApiResponseSchema(CourseSchema);
@@ -1,84 +0,0 @@
1
- import { z } from 'zod';
2
- import { SuccessResponseSchema, createApiResponseSchema } from './common';
3
- // =========== Schemas ===========
4
- export var CRMLeadItemSchema = z
5
- .object({
6
- id: z.string().optional(),
7
- fullName: z.string().optional(),
8
- source: z.string().optional(),
9
- email: z.string().optional(),
10
- phone: z.string().optional(),
11
- status: z.string().optional(),
12
- closeLikelihood: z.union([z.string(), z.number()]).optional(),
13
- intendedStartTime: z.string().optional(),
14
- intendedProgramLevel: z.string().optional(),
15
- intendedDirection: z.string().optional(),
16
- salesRep: z.string().optional(),
17
- salesNote: z.string().optional(),
18
- meetingCount: z.number().optional(),
19
- createdAt: z.union([z.string(), z.coerce.date()]).optional()
20
- })
21
- .catchall(z.unknown());
22
- export var CRMMeetingItemSchema = z
23
- .object({
24
- id: z.string().optional(),
25
- leadId: z.string().optional(),
26
- leadFullName: z.string().optional(),
27
- dateTime: z.union([z.string(), z.coerce.date()]).optional(),
28
- summary: z.string().optional(),
29
- meetingLink: z.string().optional()
30
- })
31
- .catchall(z.unknown());
32
- export var CRMLeadWithMeetingsSchema = CRMLeadItemSchema.extend({
33
- meetings: z.array(CRMMeetingItemSchema).optional()
34
- });
35
- export var CRMDealItemSchema = z
36
- .object({
37
- id: z.string().optional(),
38
- dealDataCols: z.unknown().optional(),
39
- leadFullName: z.string().optional(),
40
- salesLabel: z.string().optional()
41
- })
42
- .catchall(z.unknown());
43
- export var CRMSalesRepSchema = z
44
- .object({
45
- id: z.string().optional(),
46
- name: z.string().optional(),
47
- email: z.string().optional()
48
- })
49
- .catchall(z.unknown());
50
- export var CRMStatsDataSchema = z.object({
51
- totalLeadCount: z.number().optional(),
52
- recentLeadCount: z.number().optional(),
53
- convertedLeadCount: z.number().optional(),
54
- totalMeetingCount: z.number().optional(),
55
- recentMeetingCount: z.number().optional(),
56
- avgResponseTimeDays: z.number().optional(),
57
- p50ResponseTimeDays: z.number().optional(),
58
- p95ResponseTimeDays: z.number().optional(),
59
- avgSalesCycleDays: z.number().optional(),
60
- p50SalesCycleDays: z.number().optional(),
61
- p95SalesCycleDays: z.number().optional(),
62
- leadsCountByDate: z.array(z.unknown()).optional(),
63
- meetingCountByDate: z.array(z.unknown()).optional(),
64
- totalLeadsWithMeeting: z.number().optional(),
65
- totalLeadsWithFollowUp: z.number().optional()
66
- });
67
- export var GetCRMStatsResponseSchema = createApiResponseSchema(CRMStatsDataSchema);
68
- export var GetCRMLeadsResponseSchema = createApiResponseSchema(z.array(CRMLeadItemSchema));
69
- export var GetCRMLeadResponseSchema = createApiResponseSchema(CRMLeadWithMeetingsSchema);
70
- export var GetLeadIdByUserIdResponseSchema = createApiResponseSchema(z.object({ id: z.string() }));
71
- export var CreateLeadFromStudentResponseSchema = z.object({
72
- success: z.boolean(),
73
- message: z.string().optional(),
74
- matchingMeetingCounts: z.number().optional(),
75
- data: CRMLeadItemSchema.optional()
76
- });
77
- export var GetCRMMeetingsResponseSchema = createApiResponseSchema(z.array(CRMMeetingItemSchema));
78
- export var GetCRMMeetingResponseSchema = createApiResponseSchema(CRMMeetingItemSchema);
79
- export var UpdateCRMMeetingResponseSchema = createApiResponseSchema(CRMMeetingItemSchema);
80
- export var GetCRMDealsResponseSchema = createApiResponseSchema(z.array(CRMDealItemSchema));
81
- export var CreateCRMDealResponseSchema = createApiResponseSchema(CRMDealItemSchema);
82
- export var UpdateCRMDealResponseSchema = createApiResponseSchema(CRMDealItemSchema);
83
- export var GetCRMSalesRepsResponseSchema = createApiResponseSchema(z.array(CRMSalesRepSchema));
84
- export var InstantInviteResponseSchema = SuccessResponseSchema;
@@ -1,41 +0,0 @@
1
- import { z } from 'zod';
2
- import { SuccessResponseSchema, createApiResponseSchema } from './common';
3
- import { DocumentthreadWithIdSchema, DocumentthreadPopulatedSchema, SurveyInputWithIdSchema, UserWithIdSchema, AgentWithIdSchema, EditorWithIdSchema, AuditWithIdSchema } from './serialized';
4
- // =========== Schemas ===========
5
- export var ThreadFavoriteDataSchema = z.object({
6
- isFlagged: z.boolean()
7
- });
8
- export var GetMessagesThreadResponseSchema = z.object({
9
- success: z.boolean(),
10
- data: DocumentthreadPopulatedSchema.optional(),
11
- similarThreads: z.array(DocumentthreadPopulatedSchema).optional(),
12
- agents: z.array(AgentWithIdSchema).optional(),
13
- editors: z.array(EditorWithIdSchema).optional(),
14
- threadAuditLog: z.array(AuditWithIdSchema).optional(),
15
- deadline: z.unknown().optional(),
16
- conflict_list: z.array(z.unknown()).optional()
17
- });
18
- export var GetActiveThreadsResponseSchema = createApiResponseSchema(z.array(DocumentthreadPopulatedSchema));
19
- export var GetThreadsByStudentResponseSchema = createApiResponseSchema(z.array(DocumentthreadPopulatedSchema));
20
- export var GetMyStudentThreadsResponseSchema = createApiResponseSchema(z.object({
21
- threads: z.array(DocumentthreadPopulatedSchema),
22
- user: UserWithIdSchema
23
- }));
24
- export var GetMyStudentThreadMetricsResponseSchema = createApiResponseSchema(z.unknown());
25
- export var PutThreadFavoriteResponseSchema = createApiResponseSchema(ThreadFavoriteDataSchema);
26
- export var SetFileFinalResponseSchema = createApiResponseSchema(DocumentthreadWithIdSchema);
27
- export var InitGeneralThreadResponseSchema = createApiResponseSchema(DocumentthreadWithIdSchema);
28
- export var InitApplicationThreadResponseSchema = createApiResponseSchema(DocumentthreadWithIdSchema);
29
- export var SubmitMessageResponseSchema = createApiResponseSchema(DocumentthreadWithIdSchema);
30
- export var DeleteGeneralFileThreadResponseSchema = SuccessResponseSchema;
31
- export var DeleteProgramSpecificFileThreadResponseSchema = SuccessResponseSchema;
32
- export var DeleteMessageInThreadResponseSchema = SuccessResponseSchema;
33
- export var UpdateEssayWriterResponseSchema = createApiResponseSchema(DocumentthreadWithIdSchema);
34
- export var UploadDocumentThreadImageResponseSchema = createApiResponseSchema(DocumentthreadWithIdSchema);
35
- export var PutOriginAuthorConfirmedResponseSchema = createApiResponseSchema(DocumentthreadWithIdSchema);
36
- export var IgnoreMessageThreadResponseSchema = createApiResponseSchema(DocumentthreadWithIdSchema);
37
- export var GetCheckDocumentPatternResponseSchema = createApiResponseSchema(z.unknown());
38
- export var GetSurveyInputsResponseSchema = createApiResponseSchema(SurveyInputWithIdSchema);
39
- export var PostSurveyInputResponseSchema = createApiResponseSchema(SurveyInputWithIdSchema);
40
- export var PutSurveyInputResponseSchema = createApiResponseSchema(SurveyInputWithIdSchema);
41
- export var DeleteSurveyInputResponseSchema = SuccessResponseSchema;
@@ -1,30 +0,0 @@
1
- import { z } from 'zod';
2
- import { SuccessResponseSchema, createApiResponseSchema } from './common';
3
- import { DocumentationWithIdSchema, DocspageWithIdSchema, InternaldocWithIdSchema } from './serialized';
4
- // =========== Schemas ===========
5
- // --- Public Documentation ---
6
- export var GetCategorizedDocumentationResponseSchema = createApiResponseSchema(z.array(DocumentationWithIdSchema));
7
- export var GetAllDocumentationsResponseSchema = createApiResponseSchema(z.array(DocumentationWithIdSchema));
8
- export var GetDocumentationResponseSchema = createApiResponseSchema(DocumentationWithIdSchema);
9
- export var CreateDocumentationResponseSchema = createApiResponseSchema(DocumentationWithIdSchema);
10
- export var UpdateDocumentationResponseSchema = createApiResponseSchema(DocumentationWithIdSchema);
11
- export var DeleteDocumentationResponseSchema = SuccessResponseSchema;
12
- // --- Docs Pages ---
13
- export var GetDocspageResponseSchema = createApiResponseSchema(z.union([DocspageWithIdSchema, z.record(z.never())]));
14
- export var UpdateDocspageResponseSchema = createApiResponseSchema(DocspageWithIdSchema);
15
- // --- Internal Documentation ---
16
- export var GetAllInternalDocumentationsResponseSchema = createApiResponseSchema(z.array(InternaldocWithIdSchema));
17
- export var GetInternaldocResponseSchema = createApiResponseSchema(InternaldocWithIdSchema);
18
- export var GetInternalDocumentationPageResponseSchema = createApiResponseSchema(z.union([DocspageWithIdSchema, z.record(z.never())]));
19
- export var UpdateInternalDocumentationPageResponseSchema = createApiResponseSchema(DocspageWithIdSchema);
20
- export var CreateInternaldocResponseSchema = createApiResponseSchema(InternaldocWithIdSchema);
21
- export var UpdateInternaldocResponseSchema = createApiResponseSchema(InternaldocWithIdSchema);
22
- export var DeleteInternaldocResponseSchema = SuccessResponseSchema;
23
- // --- Image / File Upload ---
24
- export var UploadDocImageResponseSchema = createApiResponseSchema(z.string());
25
- export var UploadDocDocsResponseSchema = z.object({
26
- success: z.boolean(),
27
- url: z.string().optional(),
28
- title: z.string().optional(),
29
- extension: z.string().optional()
30
- });
@@ -1,19 +0,0 @@
1
- import { z } from 'zod';
2
- import { SuccessResponseSchema, createApiResponseSchema } from './common';
3
- import { EventWithIdSchema, UserWithIdSchema } from './serialized';
4
- // =========== Schemas ===========
5
- export var GetEventsResponseSchema = z.object({
6
- success: z.boolean(),
7
- agents: z.array(UserWithIdSchema).optional(),
8
- editors: z.array(UserWithIdSchema).optional(),
9
- data: z.array(EventWithIdSchema).optional(),
10
- hasEvents: z.boolean().optional()
11
- });
12
- export var GetBookedEventsResponseSchema = createApiResponseSchema(z.array(EventWithIdSchema));
13
- export var GetActiveEventsNumberResponseSchema = createApiResponseSchema(z.number());
14
- export var PostEventResponseSchema = GetEventsResponseSchema;
15
- export var GetEventResponseSchema = createApiResponseSchema(EventWithIdSchema);
16
- export var ConfirmEventResponseSchema = createApiResponseSchema(EventWithIdSchema);
17
- export var UpdateEventResponseSchema = createApiResponseSchema(EventWithIdSchema);
18
- export var DeleteEventResponseSchema = GetEventsResponseSchema;
19
- export var UpdateOfficehoursResponseSchema = SuccessResponseSchema;
@@ -1,25 +0,0 @@
1
- export * from './common';
2
- export * from './serialized';
3
- export * from './auth';
4
- export * from './users';
5
- export * from './students';
6
- export * from './programs';
7
- export * from './applications';
8
- export * from './communications';
9
- export * from './documentThreads';
10
- export * from './interviews';
11
- export * from './meetings';
12
- export * from './tickets';
13
- export * from './events';
14
- export * from './teams';
15
- export * from './documentations';
16
- export * from './programRequirements';
17
- export * from './courses';
18
- export * from './crm';
19
- export * from './account';
20
- export * from './audit';
21
- export * from './search';
22
- export * from './portals';
23
- export * from './notes';
24
- export * from './permissions';
25
- export * from './widgets';
@@ -1,32 +0,0 @@
1
- import { z } from 'zod';
2
- import { SuccessResponseSchema, createApiResponseSchema } from './common';
3
- import { InterviewWithIdSchema, InterviewSurveyResponseWithIdSchema, StudentResponseSchema, AuditWithIdSchema } from './serialized';
4
- // =========== Schemas ===========
5
- export var GetInterviewsResponseSchema = createApiResponseSchema(z.array(InterviewWithIdSchema));
6
- export var GetInterviewResponseSchema = z.object({
7
- success: z.boolean(),
8
- data: InterviewWithIdSchema.optional(),
9
- interviewAuditLog: z.array(AuditWithIdSchema).optional()
10
- });
11
- export var GetMyInterviewsResponseSchema = z.object({
12
- success: z.boolean(),
13
- data: z.array(InterviewWithIdSchema).optional(),
14
- students: z.array(StudentResponseSchema).optional(),
15
- student: StudentResponseSchema.optional()
16
- });
17
- export var GetInterviewsByProgramIdResponseSchema = z.object({
18
- success: z.boolean(),
19
- data: z.array(InterviewWithIdSchema).optional(),
20
- count: z.number().optional()
21
- });
22
- export var GetInterviewsByStudentIdResponseSchema = z.object({
23
- success: z.boolean(),
24
- data: z.array(InterviewWithIdSchema).optional(),
25
- count: z.number().optional()
26
- });
27
- export var GetInterviewSurveyResponseSchema = createApiResponseSchema(InterviewSurveyResponseWithIdSchema);
28
- export var UpdateInterviewSurveyResponseSchema = createApiResponseSchema(InterviewSurveyResponseWithIdSchema);
29
- export var CreateInterviewResponseSchema = SuccessResponseSchema;
30
- export var DeleteInterviewResponseSchema = SuccessResponseSchema;
31
- export var UpdateInterviewResponseSchema = createApiResponseSchema(InterviewWithIdSchema);
32
- export var AddInterviewTrainingDateTimeResponseSchema = SuccessResponseSchema;
@@ -1,17 +0,0 @@
1
- import { z } from 'zod';
2
- // =========== Schemas ===========
3
- export var MeetingSchema = z.object({
4
- _id: z.string(),
5
- title: z.string().optional(),
6
- dateTime: z.union([z.string(), z.coerce.date()]).optional(),
7
- location: z.string().optional(),
8
- description: z.string().optional(),
9
- notes: z.string().optional(),
10
- isConfirmed: z.boolean().optional(),
11
- isConfirmedReceiver: z.boolean().optional(),
12
- isConfirmedRequester: z.boolean().optional(),
13
- attended: z.boolean().optional(),
14
- meetingLink: z.string().optional(),
15
- requester_id: z.array(z.string()).optional(),
16
- receiver_id: z.array(z.string()).optional()
17
- }).catchall(z.unknown());
@@ -1,5 +0,0 @@
1
- import { createApiResponseSchema } from './common';
2
- import { NoteWithIdSchema } from './serialized';
3
- // =========== Schemas ===========
4
- export var GetStudentNotesResponseSchema = createApiResponseSchema(NoteWithIdSchema);
5
- export var UpdateStudentNotesResponseSchema = createApiResponseSchema(NoteWithIdSchema);
@@ -1,6 +0,0 @@
1
- import { z } from 'zod';
2
- import { createApiResponseSchema } from './common';
3
- import { PermissionWithIdSchema } from './serialized';
4
- // =========== Schemas ===========
5
- export var GetUserPermissionsResponseSchema = createApiResponseSchema(z.array(PermissionWithIdSchema));
6
- export var UpdateUserPermissionResponseSchema = createApiResponseSchema(PermissionWithIdSchema);