@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,523 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ProgramrequirementSchema = exports.ProgramrequirementProgramCategorySchema = exports.AuditSchema = exports.DocumentthreadSchema = exports.DocumentthreadMessageSchema = exports.DocumentthreadMessageFileSchema = exports.CommunicationSchema = exports.CommunicationFileSchema = exports.InterviewSchema = exports.EventBaseSchema = exports.ComplaintSchema = exports.ComplaintMessageSchema = exports.ComplaintMessageFileSchema = exports.TicketSchema = exports.InterviewSurveyResponseSchema = exports.InterviewSurveyResponseResponseSchema = exports.NoteSchema = exports.PermissionSchema = exports.AllCourseSchema = exports.BasedocumentationslinkSchema = exports.TemplateSchema = exports.SurveyInputSchema = exports.SurveyInputSurveyContentSchema = exports.KeywordsetSchema = exports.KeywordsetKeywordsSchema = exports.InternaldocSchema = exports.DocspageSchema = exports.DocumentationSchema = exports.ProgramSchema = exports.ApplicationAdmissionLetterSchema = exports.ApplicationDocModificationThreadItemSchema = exports.ApplicationPortalCredentialsSchema = exports.ApplicationUniAssistSchema = exports.CourseSchema = exports.CourseAnalysisSchema = exports.UserGeneraldocsThreadSchema = exports.UserProfileItemSchema = exports.UserAttributeSchema = exports.UserAcademicBackgroundSchema = exports.UserAcademicBackgroundLanguageSchema = exports.UserAcademicBackgroundUniversitySchema = exports.UserApplicationPreferenceSchema = exports.UserTaigeraiSchema = exports.UserTaigeraiFeedbackSchema = exports.UserTaigeraiFileSchema = exports.UserNotificationSchema = void 0;
4
- /**
5
- * Zod schemas for base model data shapes (API-safe, no Mongoose-specific types).
6
- * Used by serialized.ts and API response schemas.
7
- */
8
- var zod_1 = require("zod");
9
- // =========== User Sub-schemas ===========
10
- exports.UserNotificationSchema = zod_1.z.object({
11
- isRead_survey_not_complete: zod_1.z.boolean().optional(),
12
- isRead_uni_assist_task_assigned: zod_1.z.boolean().optional(),
13
- isRead_new_agent_assigned: zod_1.z.boolean().optional(),
14
- isRead_new_editor_assigned: zod_1.z.boolean().optional(),
15
- isRead_new_cvmlrl_tasks_created: zod_1.z.boolean().optional(),
16
- isRead_new_cvmlrl_messsage: zod_1.z.boolean().optional(),
17
- isRead_base_documents_missing: zod_1.z.boolean().optional(),
18
- isRead_base_documents_rejected: zod_1.z.boolean().optional(),
19
- isRead_new_programs_assigned: zod_1.z.boolean().optional()
20
- });
21
- exports.UserTaigeraiFileSchema = zod_1.z.object({
22
- name: zod_1.z.string().optional(),
23
- status: zod_1.z.string().optional(),
24
- file_category: zod_1.z.string().optional(),
25
- path: zod_1.z.string().optional(),
26
- updatedAt: zod_1.z.coerce.date().optional()
27
- });
28
- exports.UserTaigeraiFeedbackSchema = zod_1.z.object({
29
- message: zod_1.z.string().optional(),
30
- updatedAt: zod_1.z.coerce.date().optional()
31
- });
32
- exports.UserTaigeraiSchema = zod_1.z.object({
33
- input: exports.UserTaigeraiFileSchema.optional(),
34
- output: exports.UserTaigeraiFileSchema.optional(),
35
- feedback: exports.UserTaigeraiFeedbackSchema.optional()
36
- });
37
- exports.UserApplicationPreferenceSchema = zod_1.z.object({
38
- expected_application_date: zod_1.z.string().optional(),
39
- expected_application_semester: zod_1.z.string().optional(),
40
- target_program_language: zod_1.z.string().optional(),
41
- target_application_field: zod_1.z.string().optional(),
42
- targetApplicationSubjects: zod_1.z.array(zod_1.z.string()).optional(),
43
- target_degree: zod_1.z.string().optional(),
44
- considered_privat_universities: zod_1.z.string().optional(),
45
- special_wished: zod_1.z.string().optional(),
46
- application_outside_germany: zod_1.z.string().optional(),
47
- updatedAt: zod_1.z.coerce.date().optional()
48
- });
49
- exports.UserAcademicBackgroundUniversitySchema = zod_1.z.object({
50
- high_school_isGraduated: zod_1.z.string().optional(),
51
- attended_high_school: zod_1.z.string().optional(),
52
- high_school_graduated_year: zod_1.z.string().optional(),
53
- attended_university: zod_1.z.string().optional(),
54
- attended_university_program: zod_1.z.string().optional(),
55
- isGraduated: zod_1.z.string().optional(),
56
- expected_grad_date: zod_1.z.string().optional(),
57
- Highest_GPA_Uni: zod_1.z.number().optional(),
58
- Passing_GPA_Uni: zod_1.z.number().optional(),
59
- My_GPA_Uni: zod_1.z.number().optional(),
60
- Has_Exchange_Experience: zod_1.z.string().optional(),
61
- isSecondGraduated: zod_1.z.string().optional(),
62
- expectedSecondDegreeGradDate: zod_1.z.string().optional(),
63
- attendedSecondDegreeUniversity: zod_1.z.string().optional(),
64
- attendedSecondDegreeProgram: zod_1.z.string().optional(),
65
- highestSecondDegreeGPA: zod_1.z.number().optional(),
66
- passingSecondDegreeGPA: zod_1.z.number().optional(),
67
- mySecondDegreeGPA: zod_1.z.number().optional(),
68
- Has_Internship_Experience: zod_1.z.string().optional(),
69
- Has_Working_Experience: zod_1.z.string().optional(),
70
- updatedAt: zod_1.z.coerce.date().optional()
71
- });
72
- exports.UserAcademicBackgroundLanguageSchema = zod_1.z.object({
73
- english_isPassed: zod_1.z.string().optional(),
74
- english_certificate: zod_1.z.string().optional(),
75
- english_score: zod_1.z.string().optional(),
76
- english_score_reading: zod_1.z.string().optional(),
77
- english_score_listening: zod_1.z.string().optional(),
78
- english_score_writing: zod_1.z.string().optional(),
79
- english_score_speaking: zod_1.z.string().optional(),
80
- english_test_date: zod_1.z.string().optional(),
81
- german_isPassed: zod_1.z.string().optional(),
82
- german_certificate: zod_1.z.string().optional(),
83
- german_score: zod_1.z.string().optional(),
84
- german_test_date: zod_1.z.string().optional(),
85
- gre_isPassed: zod_1.z.string().optional(),
86
- gre_certificate: zod_1.z.string().optional(),
87
- gre_score: zod_1.z.string().optional(),
88
- gre_test_date: zod_1.z.string().optional(),
89
- gmat_isPassed: zod_1.z.string().optional(),
90
- gmat_certificate: zod_1.z.string().optional(),
91
- gmat_score: zod_1.z.string().optional(),
92
- gmat_test_date: zod_1.z.string().optional(),
93
- updatedAt: zod_1.z.coerce.date().optional()
94
- });
95
- exports.UserAcademicBackgroundSchema = zod_1.z.object({
96
- university: exports.UserAcademicBackgroundUniversitySchema.optional(),
97
- language: exports.UserAcademicBackgroundLanguageSchema.optional()
98
- });
99
- exports.UserAttributeSchema = zod_1.z.object({
100
- value: zod_1.z.number(),
101
- name: zod_1.z.string()
102
- });
103
- exports.UserProfileItemSchema = zod_1.z.object({
104
- name: zod_1.z.string(),
105
- status: zod_1.z.string().optional(),
106
- required: zod_1.z.boolean(),
107
- path: zod_1.z.string().optional(),
108
- feedback: zod_1.z.string().optional(),
109
- updatedAt: zod_1.z.coerce.date().optional()
110
- });
111
- exports.UserGeneraldocsThreadSchema = zod_1.z.object({
112
- isFinalVersion: zod_1.z.boolean().optional(),
113
- latest_message_left_by_id: zod_1.z.string().optional(),
114
- doc_thread_id: zod_1.z.string().optional(),
115
- updatedAt: zod_1.z.coerce.date().optional(),
116
- createdAt: zod_1.z.coerce.date().optional()
117
- });
118
- // =========== Course Schemas ===========
119
- exports.CourseAnalysisSchema = zod_1.z.object({
120
- path: zod_1.z.string().optional(),
121
- analyzed_course: zod_1.z.array(zod_1.z.string()).optional(),
122
- isAnalysed: zod_1.z.boolean().optional(),
123
- isAnalysedV2: zod_1.z.boolean().optional(),
124
- pathV2: zod_1.z.string().optional(),
125
- updatedAtV2: zod_1.z.coerce.date().optional(),
126
- updatedAt: zod_1.z.coerce.date().optional()
127
- });
128
- exports.CourseSchema = zod_1.z.object({
129
- student_id: zod_1.z.string().optional(),
130
- name: zod_1.z.string().optional(),
131
- table_data_string: zod_1.z.string().optional(),
132
- table_data_string_locked: zod_1.z.boolean().optional(),
133
- table_data_string_taiger_guided: zod_1.z.string().optional(),
134
- updatedAt: zod_1.z.coerce.date().optional(),
135
- analysis: exports.CourseAnalysisSchema.optional()
136
- });
137
- // =========== Application Sub-schemas ===========
138
- exports.ApplicationUniAssistSchema = zod_1.z.object({
139
- status: zod_1.z.string().optional(),
140
- vpd_file_path: zod_1.z.string().optional(),
141
- vpd_paid_confirmation_file_path: zod_1.z.string().optional(),
142
- vpd_paid_confirmation_file_status: zod_1.z.string().optional(),
143
- isPaid: zod_1.z.boolean().optional(),
144
- updatedAt: zod_1.z.coerce.date().optional()
145
- });
146
- exports.ApplicationPortalCredentialsSchema = zod_1.z.object({
147
- application_portal_a: zod_1.z
148
- .object({ account: zod_1.z.string().optional(), password: zod_1.z.string().optional() })
149
- .optional(),
150
- application_portal_b: zod_1.z
151
- .object({ account: zod_1.z.string().optional(), password: zod_1.z.string().optional() })
152
- .optional()
153
- });
154
- exports.ApplicationDocModificationThreadItemSchema = zod_1.z.object({
155
- isFinalVersion: zod_1.z.boolean().optional(),
156
- latest_message_left_by_id: zod_1.z.string().optional(),
157
- doc_thread_id: zod_1.z.string().optional(),
158
- updatedAt: zod_1.z.coerce.date().optional(),
159
- createdAt: zod_1.z.coerce.date().optional()
160
- });
161
- exports.ApplicationAdmissionLetterSchema = zod_1.z.object({
162
- status: zod_1.z.string().optional(),
163
- admission_file_path: zod_1.z.string().optional(),
164
- comments: zod_1.z.string().optional(),
165
- updatedAt: zod_1.z.coerce.date().optional()
166
- });
167
- // =========== Program Schema ===========
168
- exports.ProgramSchema = zod_1.z.object({
169
- isArchiv: zod_1.z.boolean().optional(),
170
- isLocked: zod_1.z.boolean().optional(),
171
- school: zod_1.z.string(),
172
- program_name: zod_1.z.string(),
173
- programSubjects: zod_1.z.array(zod_1.z.string()).optional(),
174
- degree: zod_1.z.string().optional(),
175
- semester: zod_1.z.string().optional(),
176
- lang: zod_1.z.string().optional(),
177
- gpa_requirement: zod_1.z.string().optional(),
178
- allowOnlyGraduatedApplicant: zod_1.z.boolean().optional(),
179
- application_start: zod_1.z.string().optional(),
180
- application_deadline: zod_1.z.string().optional(),
181
- uni_assist: zod_1.z.string().optional(),
182
- englishTestHandLater: zod_1.z.boolean().optional(),
183
- toefl: zod_1.z.string().optional(),
184
- toefl_reading: zod_1.z.number().optional(),
185
- toefl_listening: zod_1.z.number().optional(),
186
- toefl_writing: zod_1.z.number().optional(),
187
- toefl_speaking: zod_1.z.number().optional(),
188
- ielts: zod_1.z.string().optional(),
189
- ielts_reading: zod_1.z.number().optional(),
190
- ielts_listening: zod_1.z.number().optional(),
191
- ielts_writing: zod_1.z.number().optional(),
192
- ielts_speaking: zod_1.z.number().optional(),
193
- germanTestHandLater: zod_1.z.boolean().optional(),
194
- goetheZertifikat: zod_1.z.string().optional(),
195
- testdaf: zod_1.z.string().optional(),
196
- dsh: zod_1.z.string().optional(),
197
- gre: zod_1.z.string().optional(),
198
- gre_verbal: zod_1.z.number().optional(),
199
- gre_quantitative: zod_1.z.number().optional(),
200
- gre_analytical_writing: zod_1.z.number().optional(),
201
- gmat: zod_1.z.string().optional(),
202
- ml_required: zod_1.z.string().optional(),
203
- ml_requirements: zod_1.z.string().optional(),
204
- sop_required: zod_1.z.string().optional(),
205
- sop_requirements: zod_1.z.string().optional(),
206
- phs_required: zod_1.z.string().optional(),
207
- phs_requirements: zod_1.z.string().optional(),
208
- rl_required: zod_1.z.string().optional(),
209
- rl_requirements: zod_1.z.string().optional(),
210
- is_rl_specific: zod_1.z.boolean().optional(),
211
- essay_required: zod_1.z.string().optional(),
212
- essay_requirements: zod_1.z.string().optional(),
213
- essay_difficulty: zod_1.z.string().optional(),
214
- portfolio_required: zod_1.z.string().optional(),
215
- portfolio_requirements: zod_1.z.string().optional(),
216
- supplementary_form_required: zod_1.z.string().optional(),
217
- supplementary_form_requirements: zod_1.z.string().optional(),
218
- curriculum_analysis_required: zod_1.z.string().optional(),
219
- curriculum_analysis_requirements: zod_1.z.string().optional(),
220
- scholarship_form_required: zod_1.z.string().optional(),
221
- scholarship_form_requirements: zod_1.z.string().optional(),
222
- module_description_required: zod_1.z.string().optional(),
223
- ects_requirements: zod_1.z.string().optional(),
224
- special_notes: zod_1.z.string().optional(),
225
- comments: zod_1.z.string().optional(),
226
- application_portal_a: zod_1.z.string().optional(),
227
- application_portal_b: zod_1.z.string().optional(),
228
- application_portal_a_instructions: zod_1.z.string().optional(),
229
- application_portal_b_instructions: zod_1.z.string().optional(),
230
- uni_assist_link: zod_1.z.string().optional(),
231
- website: zod_1.z.string().optional(),
232
- fpso: zod_1.z.string().optional(),
233
- updatedAt: zod_1.z.coerce.date().optional(),
234
- whoupdated: zod_1.z.string().optional(),
235
- tuition_fees: zod_1.z.string().optional(),
236
- contact: zod_1.z.string().optional(),
237
- city: zod_1.z.string().optional(),
238
- country: zod_1.z.string().optional(),
239
- isPrivateSchool: zod_1.z.boolean().optional(),
240
- isPartnerSchool: zod_1.z.boolean().optional(),
241
- schoolType: zod_1.z.string().optional(),
242
- tags: zod_1.z.array(zod_1.z.string()).optional(),
243
- url: zod_1.z.string().optional(),
244
- isNC: zod_1.z.boolean().optional(),
245
- zipCode: zod_1.z.string().optional()
246
- });
247
- // =========== Documentation Schemas ===========
248
- exports.DocumentationSchema = zod_1.z.object({
249
- name: zod_1.z.string().optional(),
250
- title: zod_1.z.string().optional(),
251
- category: zod_1.z.string().optional(),
252
- author: zod_1.z.string().optional(),
253
- prop: zod_1.z.string().optional(),
254
- text: zod_1.z.string().optional(),
255
- country: zod_1.z.string().optional(),
256
- updatedAt: zod_1.z.coerce.date().optional()
257
- });
258
- exports.DocspageSchema = zod_1.z.object({
259
- name: zod_1.z.string().optional(),
260
- title: zod_1.z.string().optional(),
261
- category: zod_1.z.string().optional(),
262
- prop: zod_1.z.string().optional(),
263
- author: zod_1.z.string().optional(),
264
- text: zod_1.z.string().optional(),
265
- country: zod_1.z.string().optional(),
266
- updatedAt: zod_1.z.coerce.date().optional()
267
- });
268
- exports.InternaldocSchema = zod_1.z.object({
269
- name: zod_1.z.string().optional(),
270
- title: zod_1.z.string().optional(),
271
- category: zod_1.z.string().optional(),
272
- internal: zod_1.z.boolean().optional(),
273
- author: zod_1.z.string().optional(),
274
- text: zod_1.z.string().optional(),
275
- country: zod_1.z.string().optional(),
276
- updatedAt: zod_1.z.coerce.date().optional()
277
- });
278
- // =========== Keywordset Schema ===========
279
- exports.KeywordsetKeywordsSchema = zod_1.z.object({
280
- zh: zod_1.z.array(zod_1.z.string()).optional(),
281
- en: zod_1.z.array(zod_1.z.string()).optional()
282
- });
283
- exports.KeywordsetSchema = zod_1.z.object({
284
- categoryName: zod_1.z.string().optional(),
285
- description: zod_1.z.string().optional(),
286
- keywords: exports.KeywordsetKeywordsSchema.optional(),
287
- antiKeywords: exports.KeywordsetKeywordsSchema.optional()
288
- });
289
- // =========== SurveyInput Schema ===========
290
- exports.SurveyInputSurveyContentSchema = zod_1.z.object({
291
- questionId: zod_1.z.string().optional(),
292
- question: zod_1.z.string().optional(),
293
- answer: zod_1.z.string().optional(),
294
- type: zod_1.z.enum(['word', 'sentence', 'paragraph', 'essay']).optional(),
295
- contentType: zod_1.z.string().optional()
296
- });
297
- exports.SurveyInputSchema = zod_1.z.object({
298
- studentId: zod_1.z.string(),
299
- programId: zod_1.z.string().optional(),
300
- fileType: zod_1.z.string(),
301
- isFinalVersion: zod_1.z.boolean().optional(),
302
- surveyContent: zod_1.z.array(exports.SurveyInputSurveyContentSchema).optional(),
303
- surveyStatus: zod_1.z.enum(['empty', 'provided', 'generated', 'blocked']).optional(),
304
- createdAt: zod_1.z.coerce.date().optional(),
305
- updatedAt: zod_1.z.coerce.date().optional()
306
- });
307
- // =========== Template Schema ===========
308
- exports.TemplateSchema = zod_1.z.object({
309
- name: zod_1.z.string(),
310
- category_name: zod_1.z.string(),
311
- path: zod_1.z.string(),
312
- updatedAt: zod_1.z.coerce.date().optional()
313
- });
314
- // =========== Basedocumentationslink Schema ===========
315
- exports.BasedocumentationslinkSchema = zod_1.z.object({
316
- key: zod_1.z.string().optional(),
317
- category: zod_1.z.string().optional(),
318
- link: zod_1.z.string().optional(),
319
- updatedAt: zod_1.z.coerce.date().optional()
320
- });
321
- // =========== AllCourse Schema ===========
322
- exports.AllCourseSchema = zod_1.z.object({
323
- updatedBy: zod_1.z
324
- .union([
325
- zod_1.z.string(),
326
- zod_1.z.object({ _id: zod_1.z.string().optional() }).passthrough()
327
- ])
328
- .optional(),
329
- all_course_chinese: zod_1.z.string(),
330
- all_course_english: zod_1.z.string(),
331
- description: zod_1.z.string().optional()
332
- });
333
- // =========== Permission Schema ===========
334
- exports.PermissionSchema = zod_1.z.object({
335
- user_id: zod_1.z.string().optional(),
336
- taigerAiQuota: zod_1.z.number().optional(),
337
- canAssignEditors: zod_1.z.boolean().optional(),
338
- canUseTaiGerAI: zod_1.z.boolean().optional(),
339
- canModifyProgramList: zod_1.z.boolean().optional(),
340
- canModifyAllBaseDocuments: zod_1.z.boolean().optional(),
341
- canAccessAllChat: zod_1.z.boolean().optional(),
342
- canAssignAgents: zod_1.z.boolean().optional(),
343
- canModifyDocumentation: zod_1.z.boolean().optional(),
344
- canAccessStudentDatabase: zod_1.z.boolean().optional(),
345
- canAddUser: zod_1.z.boolean().optional(),
346
- canModifyUser: zod_1.z.boolean().optional(),
347
- isEssayWriters: zod_1.z.boolean().optional(),
348
- updatedAt: zod_1.z.coerce.date().optional()
349
- });
350
- // =========== Note Schema ===========
351
- exports.NoteSchema = zod_1.z.object({
352
- student_id: zod_1.z.string().optional(),
353
- notes: zod_1.z.string().optional(),
354
- updatedAt: zod_1.z.coerce.date().optional()
355
- });
356
- // =========== InterviewSurveyResponse Schema ===========
357
- exports.InterviewSurveyResponseResponseSchema = zod_1.z.object({
358
- questionId: zod_1.z.string().optional(),
359
- answer: zod_1.z.number().optional()
360
- });
361
- exports.InterviewSurveyResponseSchema = zod_1.z.object({
362
- student_id: zod_1.z.string().optional(),
363
- interview_id: zod_1.z.string().optional(),
364
- program_id: zod_1.z.string().optional(),
365
- responses: zod_1.z.array(exports.InterviewSurveyResponseResponseSchema).optional(),
366
- isFinal: zod_1.z.boolean().optional(),
367
- interviewQuestions: zod_1.z.string().optional(),
368
- interviewFeedback: zod_1.z.string().optional()
369
- });
370
- // =========== Ticket Schema ===========
371
- exports.TicketSchema = zod_1.z.object({
372
- requester_id: zod_1.z.string(),
373
- resolver_id: zod_1.z.string().optional(),
374
- program_id: zod_1.z.string().optional(),
375
- status: zod_1.z.string().optional(),
376
- type: zod_1.z.string().optional(),
377
- description: zod_1.z.string().optional(),
378
- feedback: zod_1.z.string().optional(),
379
- createdAt: zod_1.z.coerce.date().optional()
380
- });
381
- // =========== Complaint Schema ===========
382
- exports.ComplaintMessageFileSchema = zod_1.z.object({
383
- name: zod_1.z.string(),
384
- path: zod_1.z.string()
385
- });
386
- exports.ComplaintMessageSchema = zod_1.z.object({
387
- user_id: zod_1.z.string().optional(),
388
- message: zod_1.z.string().optional(),
389
- createdAt: zod_1.z.coerce.date().optional(),
390
- file: zod_1.z.array(exports.ComplaintMessageFileSchema).optional(),
391
- ignore_message: zod_1.z.boolean().optional()
392
- });
393
- exports.ComplaintSchema = zod_1.z.object({
394
- requester_id: zod_1.z.string(),
395
- status: zod_1.z.string().optional(),
396
- title: zod_1.z.string().optional(),
397
- category: zod_1.z.string().optional(),
398
- description: zod_1.z.string().optional(),
399
- messages: zod_1.z.array(exports.ComplaintMessageSchema).optional(),
400
- createdAt: zod_1.z.coerce.date().optional()
401
- });
402
- // =========== Event Schema ===========
403
- // Named EventBaseSchema to avoid conflict with Mongoose EventSchema from src/model/Event.ts
404
- exports.EventBaseSchema = zod_1.z.object({
405
- requester_id: zod_1.z.array(zod_1.z.string()).optional(),
406
- receiver_id: zod_1.z.array(zod_1.z.string()).optional(),
407
- isConfirmedRequester: zod_1.z.boolean().optional(),
408
- isConfirmedReceiver: zod_1.z.boolean().optional(),
409
- meetingLink: zod_1.z.string().optional(),
410
- event_type: zod_1.z.string().optional(),
411
- title: zod_1.z.string().optional(),
412
- description: zod_1.z.string().optional(),
413
- start: zod_1.z.coerce.date().optional(),
414
- end: zod_1.z.coerce.date().optional()
415
- });
416
- // =========== Interview Schema ===========
417
- exports.InterviewSchema = zod_1.z.object({
418
- student_id: zod_1.z.string().optional(),
419
- trainer_id: zod_1.z.array(zod_1.z.string()).optional(),
420
- thread_id: zod_1.z.string().optional(),
421
- program_id: zod_1.z.string().optional(),
422
- event_id: zod_1.z.string().optional(),
423
- interview_description: zod_1.z.string().optional(),
424
- interviewer: zod_1.z.string().optional(),
425
- interview_duration: zod_1.z.string().optional(),
426
- interview_date: zod_1.z.coerce.date().optional(),
427
- isClosed: zod_1.z.boolean().optional(),
428
- start: zod_1.z.coerce.date().optional(),
429
- end: zod_1.z.coerce.date().optional()
430
- });
431
- // =========== Communication Schema ===========
432
- exports.CommunicationFileSchema = zod_1.z.object({
433
- name: zod_1.z.string(),
434
- path: zod_1.z.string()
435
- });
436
- exports.CommunicationSchema = zod_1.z.object({
437
- student_id: zod_1.z.string().optional(),
438
- user_id: zod_1.z.string().optional(),
439
- message: zod_1.z.string().optional(),
440
- readBy: zod_1.z.array(zod_1.z.string()).optional(),
441
- timeStampReadBy: zod_1.z.unknown().optional(),
442
- files: zod_1.z.array(exports.CommunicationFileSchema).optional(),
443
- createdAt: zod_1.z.coerce.date().optional(),
444
- ignore_message: zod_1.z.boolean().optional(),
445
- ignoredMessageUpdatedAt: zod_1.z.coerce.date().optional(),
446
- ignoredMessageBy: zod_1.z.string().optional()
447
- });
448
- // =========== DocumentThread Schema ===========
449
- exports.DocumentthreadMessageFileSchema = zod_1.z.object({
450
- name: zod_1.z.string(),
451
- path: zod_1.z.string()
452
- });
453
- exports.DocumentthreadMessageSchema = zod_1.z.object({
454
- user_id: zod_1.z.string().optional(),
455
- message: zod_1.z.string().optional(),
456
- createdAt: zod_1.z.coerce.date().optional(),
457
- file: zod_1.z.array(exports.DocumentthreadMessageFileSchema).optional(),
458
- ignore_message: zod_1.z.boolean().optional()
459
- });
460
- exports.DocumentthreadSchema = zod_1.z.object({
461
- student_id: zod_1.z.string(),
462
- program_id: zod_1.z.string().optional(),
463
- application_id: zod_1.z.string().optional(),
464
- outsourced_user_id: zod_1.z.array(zod_1.z.string()).optional(),
465
- pin_by_user_id: zod_1.z.array(zod_1.z.string()).optional(),
466
- flag_by_user_id: zod_1.z.array(zod_1.z.string()).optional(),
467
- file_type: zod_1.z.string(),
468
- isFinalVersion: zod_1.z.boolean().optional(),
469
- isOriginAuthorDeclarationConfirmedByStudent: zod_1.z.boolean().optional(),
470
- isOriginAuthorDeclarationConfirmedByStudentTimestamp: zod_1.z.coerce.date().optional(),
471
- messages: zod_1.z.array(exports.DocumentthreadMessageSchema).optional(),
472
- essayReviewerIds: zod_1.z.array(zod_1.z.string()).optional(),
473
- updatedAt: zod_1.z.coerce.date().optional()
474
- });
475
- // =========== Audit Schema ===========
476
- exports.AuditSchema = zod_1.z.object({
477
- performedBy: zod_1.z.string().optional(),
478
- targetUserId: zod_1.z.string().optional(),
479
- targetDocumentThreadId: zod_1.z.string().optional(),
480
- interviewThreadId: zod_1.z.string().optional(),
481
- action: zod_1.z.string().optional(),
482
- field: zod_1.z.string().optional(),
483
- changes: zod_1.z
484
- .object({
485
- before: zod_1.z.unknown().optional(),
486
- after: zod_1.z.unknown().optional()
487
- })
488
- .optional()
489
- });
490
- // =========== ProgramRequirement Schema ===========
491
- exports.ProgramrequirementProgramCategorySchema = zod_1.z.object({
492
- program_category: zod_1.z.string().optional(),
493
- category_description: zod_1.z.string().optional(),
494
- requiredECTS: zod_1.z.number().optional(),
495
- keywordSets: zod_1.z.array(zod_1.z.string()).optional(),
496
- maxScore: zod_1.z.number().optional()
497
- });
498
- exports.ProgramrequirementSchema = zod_1.z.object({
499
- programId: zod_1.z.array(zod_1.z.string()).optional(),
500
- program_categories: zod_1.z.array(exports.ProgramrequirementProgramCategorySchema).optional(),
501
- attributes: zod_1.z.array(zod_1.z.string()).optional(),
502
- fpso: zod_1.z.string().optional(),
503
- admissionDescription: zod_1.z.string().optional(),
504
- gpaScoreBoundaryGPA: zod_1.z.number().optional(),
505
- gpaScore: zod_1.z.number().optional(),
506
- gpaMinScore: zod_1.z.number().optional(),
507
- coursesScore: zod_1.z.number().optional(),
508
- cvScore: zod_1.z.number().optional(),
509
- mlScore: zod_1.z.number().optional(),
510
- rlScore: zod_1.z.number().optional(),
511
- essayScore: zod_1.z.number().optional(),
512
- gmatScore: zod_1.z.number().optional(),
513
- greScore: zod_1.z.number().optional(),
514
- interviewScore: zod_1.z.number().optional(),
515
- workExperienceScore: zod_1.z.number().optional(),
516
- testScore: zod_1.z.number().optional(),
517
- firstRoundConsidered: zod_1.z.array(zod_1.z.string()).optional(),
518
- secondRoundConsidered: zod_1.z.array(zod_1.z.string()).optional(),
519
- directRejectionScore: zod_1.z.number().optional(),
520
- directAdmissionScore: zod_1.z.number().optional(),
521
- directRejectionSecondScore: zod_1.z.number().optional(),
522
- directAdmissionSecondScore: zod_1.z.number().optional()
523
- });