@taiger-common/model 1.0.52 → 1.0.54

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 (95) hide show
  1. package/dist/cjs/api/account.js +33 -0
  2. package/dist/cjs/api/applications.js +44 -0
  3. package/dist/cjs/api/audit.js +6 -0
  4. package/dist/cjs/api/auth.js +17 -0
  5. package/dist/cjs/api/common.js +28 -1
  6. package/dist/cjs/api/communications.js +13 -0
  7. package/dist/cjs/api/courses.js +21 -0
  8. package/dist/cjs/api/crm.js +85 -0
  9. package/dist/cjs/api/documentThreads.js +42 -0
  10. package/dist/cjs/api/documentations.js +31 -0
  11. package/dist/cjs/api/events.js +20 -0
  12. package/dist/cjs/api/interviews.js +33 -0
  13. package/dist/cjs/api/meetings.js +18 -0
  14. package/dist/cjs/api/notes.js +6 -0
  15. package/dist/cjs/api/permissions.js +7 -0
  16. package/dist/cjs/api/portals.js +22 -0
  17. package/dist/cjs/api/programRequirements.js +24 -0
  18. package/dist/cjs/api/programs.js +91 -0
  19. package/dist/cjs/api/search.js +22 -0
  20. package/dist/cjs/api/serialized.js +44 -0
  21. package/dist/cjs/api/students.js +27 -0
  22. package/dist/cjs/api/teams.js +46 -0
  23. package/dist/cjs/api/tickets.js +19 -0
  24. package/dist/cjs/api/users.js +40 -0
  25. package/dist/cjs/api/widgets.js +19 -0
  26. package/dist/cjs/index.js +1 -0
  27. package/dist/cjs/model/Documentthread.js +1 -4
  28. package/dist/cjs/model/Program.js +0 -4
  29. package/dist/cjs/schema/index.js +22 -0
  30. package/dist/cjs/schema/models.js +518 -0
  31. package/dist/cjs/schema/serialized.js +202 -0
  32. package/dist/esm/api/account.js +32 -1
  33. package/dist/esm/api/applications.js +43 -1
  34. package/dist/esm/api/audit.js +5 -1
  35. package/dist/esm/api/auth.js +16 -1
  36. package/dist/esm/api/common.js +24 -1
  37. package/dist/esm/api/communications.js +12 -1
  38. package/dist/esm/api/courses.js +20 -1
  39. package/dist/esm/api/crm.js +84 -1
  40. package/dist/esm/api/documentThreads.js +41 -1
  41. package/dist/esm/api/documentations.js +30 -1
  42. package/dist/esm/api/events.js +19 -1
  43. package/dist/esm/api/interviews.js +32 -1
  44. package/dist/esm/api/meetings.js +17 -1
  45. package/dist/esm/api/notes.js +5 -1
  46. package/dist/esm/api/permissions.js +6 -1
  47. package/dist/esm/api/portals.js +21 -1
  48. package/dist/esm/api/programRequirements.js +23 -1
  49. package/dist/esm/api/programs.js +90 -1
  50. package/dist/esm/api/search.js +21 -1
  51. package/dist/esm/api/serialized.js +9 -1
  52. package/dist/esm/api/students.js +26 -1
  53. package/dist/esm/api/teams.js +45 -1
  54. package/dist/esm/api/tickets.js +18 -1
  55. package/dist/esm/api/users.js +39 -1
  56. package/dist/esm/api/widgets.js +18 -1
  57. package/dist/esm/index.js +1 -0
  58. package/dist/esm/model/Documentthread.js +1 -4
  59. package/dist/esm/model/Program.js +0 -4
  60. package/dist/esm/schema/index.js +6 -0
  61. package/dist/esm/schema/models.js +515 -0
  62. package/dist/esm/schema/serialized.js +199 -0
  63. package/dist/types/api/account.d.ts +485 -30
  64. package/dist/types/api/applications.d.ts +3392 -39
  65. package/dist/types/api/audit.d.ts +88 -3
  66. package/dist/types/api/auth.d.ts +3402 -14
  67. package/dist/types/api/common.d.ts +68 -8
  68. package/dist/types/api/communications.d.ts +609 -10
  69. package/dist/types/api/courses.d.ts +781 -15
  70. package/dist/types/api/crm.d.ts +1091 -85
  71. package/dist/types/api/documentThreads.d.ts +38228 -39
  72. package/dist/types/api/documentations.d.ts +913 -24
  73. package/dist/types/api/events.d.ts +7191 -17
  74. package/dist/types/api/interviews.d.ts +785 -30
  75. package/dist/types/api/meetings.d.ts +45 -27
  76. package/dist/types/api/notes.d.ts +83 -4
  77. package/dist/types/api/permissions.d.ts +193 -4
  78. package/dist/types/api/portals.d.ts +764 -17
  79. package/dist/types/api/programRequirements.d.ts +2675 -19
  80. package/dist/types/api/programs.d.ts +3019 -96
  81. package/dist/types/api/search.d.ts +286 -20
  82. package/dist/types/api/serialized.d.ts +3 -152
  83. package/dist/types/api/students.d.ts +289 -24
  84. package/dist/types/api/teams.d.ts +3652 -47
  85. package/dist/types/api/tickets.d.ts +948 -14
  86. package/dist/types/api/users.d.ts +6948 -39
  87. package/dist/types/api/widgets.d.ts +221 -16
  88. package/dist/types/index.d.ts +1 -0
  89. package/dist/types/model/Documentthread.d.ts +1 -2
  90. package/dist/types/model/Program.d.ts +0 -5
  91. package/dist/types/schema/index.d.ts +6 -0
  92. package/dist/types/schema/models.d.ts +2028 -0
  93. package/dist/types/schema/serialized.d.ts +8813 -0
  94. package/dist/umd/index.js +1 -1
  95. package/package.json +4 -2
@@ -0,0 +1,199 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ /**
13
+ * Zod schemas for API-serialized model types (all ObjectId refs as strings).
14
+ * Types are inferred from schemas via z.infer<>.
15
+ * Circular references (IStudentResponse <-> IApplicationPopulated) are handled with z.lazy().
16
+ */
17
+ import { z } from 'zod';
18
+ import { UserNotificationSchema, UserTaigeraiSchema, UserApplicationPreferenceSchema, UserAcademicBackgroundSchema, UserAttributeSchema, UserProfileItemSchema, UserGeneraldocsThreadSchema, CourseSchema, ApplicationUniAssistSchema, ApplicationPortalCredentialsSchema, ApplicationDocModificationThreadItemSchema, ApplicationAdmissionLetterSchema, ProgramSchema, DocumentthreadMessageSchema, CommunicationSchema, InterviewSchema, InterviewSurveyResponseSchema, TicketSchema, ComplaintSchema, AuditSchema, EventBaseSchema, PermissionSchema, NoteSchema, DocumentationSchema, DocspageSchema, InternaldocSchema, AllCourseSchema, KeywordsetSchema, SurveyInputSchema, TemplateSchema, BasedocumentationslinkSchema, ProgramrequirementSchema } from './models';
19
+ // =========== Program with _id ===========
20
+ export var ProgramWithIdSchema = ProgramSchema.extend({
21
+ _id: z.string(),
22
+ vcId: z.string().optional()
23
+ });
24
+ // =========== Agent/Editor with _id ===========
25
+ var officehoursDaySchema = z.object({
26
+ active: z.boolean().optional(),
27
+ time_slots: z.array(z.unknown()).optional()
28
+ });
29
+ var agentNotificationSchema = z.object({
30
+ isRead_new_base_docs_uploaded: z
31
+ .array(z.object({
32
+ student_id: z.string().optional(),
33
+ student_firstname: z.string().optional(),
34
+ student_lastname: z.string().optional()
35
+ }))
36
+ .optional(),
37
+ isRead_new_survey_updated: z.boolean().optional(),
38
+ isRead_applications_status_changed: z.boolean().optional(),
39
+ isRead_new_programs_assigned: z.boolean().optional()
40
+ });
41
+ var editorAttributeSchema = z.object({
42
+ can_write_ml: z.boolean().optional(),
43
+ can_write_rl: z.boolean().optional(),
44
+ can_write_cv: z.boolean().optional(),
45
+ can_write_essay: z.boolean().optional(),
46
+ can_do_interview: z.boolean().optional()
47
+ });
48
+ var editorNotificationSchema = z.object({
49
+ isRead_survey_not_complete: z.boolean().optional(),
50
+ isRead_base_documents_missing: z.boolean().optional(),
51
+ isRead_base_documents_rejected: z.boolean().optional(),
52
+ isRead_new_programs_assigned: z.boolean().optional()
53
+ });
54
+ /** Shared base user fields (API-safe, no Mongoose types) */
55
+ var userBaseFields = {
56
+ _id: z.string(),
57
+ role: z.string().optional(),
58
+ firstname: z.string().optional(),
59
+ firstname_chinese: z.string().optional(),
60
+ lastname: z.string().optional(),
61
+ lastname_chinese: z.string().optional(),
62
+ email: z.string().optional(),
63
+ pictureUrl: z.string().optional(),
64
+ archiv: z.boolean().optional(),
65
+ birthday: z.string().optional(),
66
+ linkedIn: z.string().optional(),
67
+ lineId: z.string().optional(),
68
+ timezone: z.string().optional(),
69
+ isAccountActivated: z.boolean().optional(),
70
+ notification: UserNotificationSchema.optional(),
71
+ taigerai: UserTaigeraiSchema.optional(),
72
+ application_preference: UserApplicationPreferenceSchema.optional(),
73
+ academic_background: UserAcademicBackgroundSchema.optional(),
74
+ lastLoginAt: z.coerce.date().optional(),
75
+ needEditor: z.boolean().optional(),
76
+ applying_program_count: z.number().optional(),
77
+ attributes: z.array(UserAttributeSchema).optional(),
78
+ profile: z.array(UserProfileItemSchema).optional(),
79
+ courses: CourseSchema.optional()
80
+ };
81
+ export var AgentWithIdSchema = z.object(__assign(__assign({}, userBaseFields), { officehours: z.record(officehoursDaySchema).optional(), selfIntroduction: z.string().optional(), agent_notification: agentNotificationSchema.optional() }));
82
+ export var EditorWithIdSchema = z.object(__assign(__assign({}, userBaseFields), { officehours: z.record(officehoursDaySchema).optional(), editor_notification: editorNotificationSchema.optional(), attribute: editorAttributeSchema.optional() }));
83
+ /** Application response with string _id and unpopulated refs */
84
+ export var ApplicationWithIdSchema = z.object({
85
+ _id: z.string(),
86
+ programId: z.string().optional(),
87
+ studentId: z.string().optional(),
88
+ uni_assist: ApplicationUniAssistSchema.optional(),
89
+ portal_credentials: ApplicationPortalCredentialsSchema.optional(),
90
+ doc_modification_thread: z.array(ApplicationDocModificationThreadItemSchema).optional(),
91
+ reject_reason: z.string().optional(),
92
+ admission_letter: ApplicationAdmissionLetterSchema.optional(),
93
+ finalEnrolment: z.boolean().optional(),
94
+ decided: z.string().optional(),
95
+ closed: z.string().optional(),
96
+ admission: z.string().optional(),
97
+ application_year: z.string().optional(),
98
+ isLocked: z.boolean().optional(),
99
+ credential_a_filled: z.boolean().optional(),
100
+ credential_b_filled: z.boolean().optional()
101
+ });
102
+ /** Application with populated programId and studentId — uses z.lazy for circular ref */
103
+ export var ApplicationPopulatedSchema = z.lazy(function () {
104
+ return z.object({
105
+ _id: z.string(),
106
+ programId: ProgramWithIdSchema.optional(),
107
+ studentId: StudentResponseSchema.optional(),
108
+ uni_assist: ApplicationUniAssistSchema.optional(),
109
+ portal_credentials: ApplicationPortalCredentialsSchema.optional(),
110
+ doc_modification_thread: z.array(ApplicationDocModificationThreadItemSchema).optional(),
111
+ reject_reason: z.string().optional(),
112
+ admission_letter: ApplicationAdmissionLetterSchema.optional(),
113
+ finalEnrolment: z.boolean().optional(),
114
+ decided: z.string().optional(),
115
+ closed: z.string().optional(),
116
+ admission: z.string().optional(),
117
+ application_year: z.string().optional(),
118
+ isLocked: z.boolean().optional(),
119
+ credential_a_filled: z.boolean().optional(),
120
+ credential_b_filled: z.boolean().optional()
121
+ });
122
+ });
123
+ /** Student response with populated agents, editors, applications — uses z.lazy for circular ref */
124
+ export var StudentResponseSchema = z.lazy(function () {
125
+ return z.object(__assign(__assign({}, userBaseFields), { generaldocs_threads: z.array(UserGeneraldocsThreadSchema).optional(), applications: z.array(ApplicationPopulatedSchema).optional(), agents: z.array(AgentWithIdSchema).optional(), editors: z.array(EditorWithIdSchema).optional() }));
126
+ });
127
+ /** Frontend-friendly User/Student with string _id (no nested ObjectId refs) */
128
+ export var UserWithIdSchema = z.object(__assign(__assign({}, userBaseFields), { generaldocs_threads: z.array(UserGeneraldocsThreadSchema).optional() }));
129
+ // =========== Document thread with _id ===========
130
+ export var DocumentthreadWithIdSchema = z.object({
131
+ _id: z.string(),
132
+ student_id: z.string(),
133
+ program_id: z.string().optional(),
134
+ application_id: z.string().optional(),
135
+ outsourced_user_id: z.array(z.string()).optional(),
136
+ pin_by_user_id: z.array(z.string()).optional(),
137
+ flag_by_user_id: z.array(z.string()).optional(),
138
+ file_type: z.string(),
139
+ isFinalVersion: z.boolean().optional(),
140
+ isOriginAuthorDeclarationConfirmedByStudent: z.boolean().optional(),
141
+ isOriginAuthorDeclarationConfirmedByStudentTimestamp: z.coerce.date().optional(),
142
+ messages: z.array(DocumentthreadMessageSchema).optional(),
143
+ essayReviewerIds: z.array(z.string()).optional(),
144
+ updatedAt: z.coerce.date().optional()
145
+ });
146
+ /** Document thread with populated refs — student_id can be object or string */
147
+ export var DocumentthreadPopulatedSchema = z.object({
148
+ _id: z.string(),
149
+ student_id: z.union([StudentResponseSchema, z.string()]),
150
+ program_id: z.union([ProgramWithIdSchema, z.string()]).optional(),
151
+ application_id: z.union([ApplicationPopulatedSchema, z.string()]).optional(),
152
+ outsourced_user_id: z.array(UserWithIdSchema).optional(),
153
+ pin_by_user_id: z.array(UserWithIdSchema).optional(),
154
+ flag_by_user_id: z.array(UserWithIdSchema).optional(),
155
+ essayReviewerIds: z.array(UserWithIdSchema).optional(),
156
+ file_type: z.string(),
157
+ isFinalVersion: z.boolean().optional(),
158
+ isOriginAuthorDeclarationConfirmedByStudent: z.boolean().optional(),
159
+ isOriginAuthorDeclarationConfirmedByStudentTimestamp: z.coerce.date().optional(),
160
+ messages: z.array(DocumentthreadMessageSchema).optional(),
161
+ updatedAt: z.coerce.date().optional()
162
+ });
163
+ // =========== Simple WithId types ===========
164
+ export var CommunicationWithIdSchema = CommunicationSchema.extend({ _id: z.string() });
165
+ export var InterviewWithIdSchema = InterviewSchema.extend({ _id: z.string() });
166
+ export var InterviewSurveyResponseWithIdSchema = InterviewSurveyResponseSchema.extend({
167
+ _id: z.string()
168
+ });
169
+ export var TicketWithIdSchema = TicketSchema.extend({
170
+ _id: z.string(),
171
+ createdAt: z.coerce.date().optional()
172
+ });
173
+ export var ComplaintWithIdSchema = ComplaintSchema.extend({
174
+ _id: z.string(),
175
+ createdAt: z.coerce.date().optional()
176
+ });
177
+ export var AuditWithIdSchema = AuditSchema.extend({
178
+ _id: z.string(),
179
+ createdAt: z.coerce.date().optional()
180
+ });
181
+ export var EventWithIdSchema = EventBaseSchema.extend({
182
+ _id: z.string(),
183
+ createdAt: z.coerce.date().optional()
184
+ });
185
+ export var NoteWithIdSchema = NoteSchema.extend({ _id: z.string() });
186
+ export var PermissionWithIdSchema = PermissionSchema.extend({ _id: z.string() });
187
+ export var DocumentationWithIdSchema = DocumentationSchema.extend({ _id: z.string() });
188
+ export var DocspageWithIdSchema = DocspageSchema.extend({ _id: z.string() });
189
+ export var InternaldocWithIdSchema = InternaldocSchema.extend({ _id: z.string() });
190
+ export var ProgramrequirementWithIdSchema = ProgramrequirementSchema.extend({
191
+ _id: z.string()
192
+ });
193
+ export var AllCourseWithIdSchema = AllCourseSchema.extend({ _id: z.string() });
194
+ export var KeywordsetWithIdSchema = KeywordsetSchema.extend({ _id: z.string() });
195
+ export var SurveyInputWithIdSchema = SurveyInputSchema.extend({ _id: z.string() });
196
+ export var TemplateWithIdSchema = TemplateSchema.extend({ _id: z.string() });
197
+ export var BasedocumentationslinkWithIdSchema = BasedocumentationslinkSchema.extend({
198
+ _id: z.string()
199
+ });