@taiger-common/model 1.0.13 → 1.0.15

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 (53) hide show
  1. package/dist/cjs/model/Internaldoc.js +14 -0
  2. package/dist/cjs/model/Interval.js +39 -0
  3. package/dist/cjs/model/Interview.js +40 -0
  4. package/dist/cjs/model/InterviewSurveyResponse.js +24 -0
  5. package/dist/cjs/model/Keywordset.js +48 -0
  6. package/dist/cjs/model/Note.js +9 -0
  7. package/dist/cjs/model/Permission.js +48 -0
  8. package/dist/cjs/model/Program.js +290 -0
  9. package/dist/cjs/model/Programrequirement.js +118 -0
  10. package/dist/cjs/model/ResponseTime.js +27 -0
  11. package/dist/cjs/model/SurveyInput.js +56 -0
  12. package/dist/cjs/model/Template.js +19 -0
  13. package/dist/cjs/model/Tenant.js +9 -0
  14. package/dist/cjs/model/Ticket.js +55 -0
  15. package/dist/cjs/model/Token.js +20 -0
  16. package/dist/cjs/model/User.js +676 -0
  17. package/dist/cjs/model/index.js +17 -0
  18. package/dist/esm/model/Internaldoc.js +11 -0
  19. package/dist/esm/model/Interval.js +36 -0
  20. package/dist/esm/model/Interview.js +37 -0
  21. package/dist/esm/model/InterviewSurveyResponse.js +21 -0
  22. package/dist/esm/model/Keywordset.js +45 -0
  23. package/dist/esm/model/Note.js +6 -0
  24. package/dist/esm/model/Permission.js +45 -0
  25. package/dist/esm/model/Program.js +287 -0
  26. package/dist/esm/model/Programrequirement.js +115 -0
  27. package/dist/esm/model/ResponseTime.js +24 -0
  28. package/dist/esm/model/SurveyInput.js +53 -0
  29. package/dist/esm/model/Template.js +16 -0
  30. package/dist/esm/model/Tenant.js +6 -0
  31. package/dist/esm/model/Ticket.js +52 -0
  32. package/dist/esm/model/Token.js +17 -0
  33. package/dist/esm/model/User.js +670 -0
  34. package/dist/esm/model/index.js +17 -0
  35. package/dist/types/model/Internaldoc.d.ts +58 -0
  36. package/dist/types/model/Interval.d.ts +58 -0
  37. package/dist/types/model/Interview.d.ts +84 -0
  38. package/dist/types/model/InterviewSurveyResponse.d.ts +93 -0
  39. package/dist/types/model/Keywordset.d.ts +75 -0
  40. package/dist/types/model/Note.d.ts +43 -0
  41. package/dist/types/model/Permission.d.ts +81 -0
  42. package/dist/types/model/Program.d.ts +453 -0
  43. package/dist/types/model/Programrequirement.d.ts +168 -0
  44. package/dist/types/model/ResponseTime.d.ts +49 -0
  45. package/dist/types/model/SurveyInput.d.ts +121 -0
  46. package/dist/types/model/Template.d.ts +46 -0
  47. package/dist/types/model/Tenant.d.ts +43 -0
  48. package/dist/types/model/Ticket.d.ts +69 -0
  49. package/dist/types/model/Token.d.ts +43 -0
  50. package/dist/types/model/User.d.ts +31 -0
  51. package/dist/types/model/index.d.ts +17 -0
  52. package/dist/umd/index.js +1 -1
  53. package/package.json +6 -1
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.internaldocsSchema = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ exports.internaldocsSchema = new mongoose_1.Schema({
6
+ name: { type: String, default: '' },
7
+ title: { type: String, default: '' },
8
+ category: { type: String, default: '' },
9
+ internal: { type: Boolean, default: true },
10
+ author: { type: String, default: '' },
11
+ text: { type: String, default: '' },
12
+ country: { type: String, default: '' },
13
+ updatedAt: Date
14
+ });
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.intervalSchema = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ exports.intervalSchema = new mongoose_1.Schema({
6
+ thread_id: {
7
+ type: mongoose_1.Schema.Types.ObjectId,
8
+ ref: 'Documentthread'
9
+ },
10
+ student_id: {
11
+ type: mongoose_1.Schema.Types.ObjectId,
12
+ ref: 'User'
13
+ },
14
+ message_1_id: {
15
+ type: mongoose_1.Schema.Types.ObjectId,
16
+ required: true
17
+ },
18
+ message_2_id: {
19
+ type: mongoose_1.Schema.Types.ObjectId,
20
+ required: true
21
+ },
22
+ interval_type: {
23
+ type: String,
24
+ required: true
25
+ },
26
+ interval: {
27
+ type: Number,
28
+ required: true
29
+ },
30
+ intervalStartAt: {
31
+ type: Date,
32
+ required: true
33
+ },
34
+ updatedAt: {
35
+ type: Date,
36
+ default: Date.now,
37
+ expires: 93312000 // 3 years
38
+ }
39
+ });
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.interviewsSchema = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ exports.interviewsSchema = new mongoose_1.Schema({
6
+ student_id: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User' },
7
+ trainer_id: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'User' }],
8
+ thread_id: { type: mongoose_1.Schema.Types.ObjectId, ref: 'Documentthread' },
9
+ program_id: { type: mongoose_1.Schema.Types.ObjectId, ref: 'Program' },
10
+ event_id: { type: mongoose_1.Schema.Types.ObjectId, ref: 'Event' },
11
+ interview_description: {
12
+ type: String,
13
+ default: ''
14
+ },
15
+ status: {
16
+ type: String,
17
+ default: 'Unscheduled'
18
+ },
19
+ interviewer: {
20
+ type: String,
21
+ default: ''
22
+ },
23
+ interview_duration: {
24
+ type: String,
25
+ default: ''
26
+ },
27
+ interview_date: {
28
+ type: Date
29
+ },
30
+ isClosed: {
31
+ type: Boolean,
32
+ default: false
33
+ },
34
+ start: {
35
+ type: Date
36
+ },
37
+ end: {
38
+ type: Date
39
+ }
40
+ }, { timestamps: true });
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.interviewSurveyResponseSchema = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ exports.interviewSurveyResponseSchema = new mongoose_1.Schema({
6
+ student_id: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User' },
7
+ interview_id: { type: mongoose_1.Schema.Types.ObjectId, ref: 'Interview' },
8
+ program_id: { type: mongoose_1.Schema.Types.ObjectId, ref: 'Program' },
9
+ responses: [
10
+ {
11
+ questionId: String,
12
+ answer: Number
13
+ }
14
+ ],
15
+ isFinal: {
16
+ type: Boolean
17
+ },
18
+ interviewQuestions: {
19
+ type: String
20
+ },
21
+ interviewFeedback: {
22
+ type: String
23
+ }
24
+ }, { timestamps: true });
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.keywordSetSchema = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ exports.keywordSetSchema = new mongoose_1.Schema({
6
+ categoryName: {
7
+ type: String
8
+ },
9
+ description: {
10
+ type: String,
11
+ default: '',
12
+ validate: {
13
+ validator: function (value) {
14
+ // Maximum allowed length
15
+ return value.length <= 3000;
16
+ },
17
+ message: 'Description exceeds the maximum allowed length of 3000 characters'
18
+ }
19
+ },
20
+ keywords: {
21
+ zh: [
22
+ {
23
+ type: String,
24
+ default: ''
25
+ }
26
+ ],
27
+ en: [
28
+ {
29
+ type: String,
30
+ default: ''
31
+ }
32
+ ]
33
+ },
34
+ antiKeywords: {
35
+ zh: [
36
+ {
37
+ type: String,
38
+ default: ''
39
+ }
40
+ ],
41
+ en: [
42
+ {
43
+ type: String,
44
+ default: ''
45
+ }
46
+ ]
47
+ }
48
+ }, { timestamps: true });
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.notesSchema = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ exports.notesSchema = new mongoose_1.Schema({
6
+ student_id: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User' },
7
+ notes: { type: String, default: '' },
8
+ updatedAt: Date
9
+ });
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.permissionSchema = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ exports.permissionSchema = new mongoose_1.Schema({
6
+ user_id: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User' },
7
+ taigerAiQuota: {
8
+ type: Number,
9
+ default: 0
10
+ },
11
+ canAssignEditors: {
12
+ type: Boolean,
13
+ default: false
14
+ },
15
+ canUseTaiGerAI: {
16
+ type: Boolean,
17
+ default: false
18
+ },
19
+ canModifyProgramList: {
20
+ type: Boolean,
21
+ default: false
22
+ },
23
+ canModifyAllBaseDocuments: {
24
+ type: Boolean,
25
+ default: false
26
+ },
27
+ canAccessAllChat: {
28
+ type: Boolean,
29
+ default: false
30
+ },
31
+ canAssignAgents: {
32
+ type: Boolean,
33
+ default: false
34
+ },
35
+ canModifyDocumentation: {
36
+ type: Boolean,
37
+ default: false
38
+ },
39
+ canAccessStudentDatabase: {
40
+ type: Boolean,
41
+ default: false
42
+ },
43
+ isEssayWriters: {
44
+ type: Boolean,
45
+ default: false
46
+ },
47
+ updatedAt: Date
48
+ }, { timestamps: true });
@@ -0,0 +1,290 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.programSchema = exports.programModule = exports.PROGRAM_SUBJECT_KEYS = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ var core_1 = require("@taiger-common/core");
6
+ var ObjectId = mongoose_1.Schema.Types.ObjectId;
7
+ var SCHOOL_TAG_KEYS = Object.keys(core_1.SCHOOL_TAGS);
8
+ exports.PROGRAM_SUBJECT_KEYS = Object.keys(core_1.PROGRAM_SUBJECTS);
9
+ // export type ProgramModule = {
10
+ // [key: string]: any; // Allows dynamic key access
11
+ // } & {
12
+ // isArchiv: boolean;
13
+ // school: string;
14
+ // program_name: string;
15
+ // programSubjects: string[];
16
+ // degree?: string;
17
+ // semester?: string;
18
+ // lang?: string;
19
+ // gpa_requirement?: string;
20
+ // allowOnlyGraduatedApplicant?: boolean;
21
+ // application_start?: string;
22
+ // application_deadline?: string;
23
+ // uni_assist?: string;
24
+ // englishTestHandLater?: boolean;
25
+ // toefl?: string;
26
+ // toefl_reading?: number;
27
+ // toefl_listening?: number;
28
+ // toefl_writing?: number;
29
+ // toefl_speaking?: number;
30
+ // ielts?: string;
31
+ // ielts_reading?: number;
32
+ // ielts_listening?: number;
33
+ // ielts_writing?: number;
34
+ // ielts_speaking?: number;
35
+ // germanTestHandLater?: boolean;
36
+ // testdaf?: string;
37
+ // basic_german_requirement?: string;
38
+ // gre?: string;
39
+ // gre_verbal?: number;
40
+ // gre_quantitative?: number;
41
+ // gre_analytical_writing?: number;
42
+ // gmat?: string;
43
+ // ml_required?: string;
44
+ // ml_requirements?: string;
45
+ // rl_required?: string;
46
+ // rl_requirements?: string;
47
+ // is_rl_specific?: boolean;
48
+ // essay_required?: string;
49
+ // essay_requirements?: string;
50
+ // portfolio_required?: string;
51
+ // portfolio_requirements?: string;
52
+ // supplementary_form_required?: string;
53
+ // supplementary_form_requirements?: string;
54
+ // curriculum_analysis_required?: string;
55
+ // curriculum_analysis_requirements?: string;
56
+ // scholarship_form_required?: string;
57
+ // scholarship_form_requirements?: string;
58
+ // module_description_required?: string;
59
+ // ects_requirements?: string;
60
+ // special_notes?: string;
61
+ // comments?: string;
62
+ // application_portal_a?: string;
63
+ // application_portal_b?: string;
64
+ // application_portal_a_instructions?: string;
65
+ // application_portal_b_instructions?: string;
66
+ // uni_assist_link?: string;
67
+ // website?: string;
68
+ // fpso?: string;
69
+ // updatedAt?: Date;
70
+ // whoupdated?: string;
71
+ // tuition_fees?: string;
72
+ // contact?: string;
73
+ // country?: string;
74
+ // isPrivateSchool?: boolean;
75
+ // isPartnerSchool?: boolean;
76
+ // schoolType?: string;
77
+ // tags?: string[];
78
+ // url?: string;
79
+ // vcId?: ObjectId;
80
+ // };
81
+ exports.programModule = {
82
+ isArchiv: Boolean,
83
+ school: {
84
+ type: String,
85
+ default: '',
86
+ required: true
87
+ },
88
+ program_name: {
89
+ type: String,
90
+ required: true
91
+ },
92
+ programSubjects: [
93
+ {
94
+ type: String,
95
+ enum: exports.PROGRAM_SUBJECT_KEYS
96
+ }
97
+ ],
98
+ degree: {
99
+ type: String
100
+ // enum: Object.values(Degree),
101
+ },
102
+ semester: String,
103
+ lang: {
104
+ type: String
105
+ // enum: Object.values(Languages)
106
+ },
107
+ gpa_requirement: {
108
+ type: String
109
+ },
110
+ allowOnlyGraduatedApplicant: {
111
+ type: Boolean,
112
+ default: false
113
+ },
114
+ application_start: String,
115
+ application_deadline: {
116
+ type: String
117
+ },
118
+ uni_assist: {
119
+ type: String
120
+ },
121
+ englishTestHandLater: {
122
+ type: Boolean,
123
+ default: false
124
+ },
125
+ toefl: {
126
+ type: String
127
+ },
128
+ toefl_reading: {
129
+ type: Number
130
+ },
131
+ toefl_listening: {
132
+ type: Number
133
+ },
134
+ toefl_writing: {
135
+ type: Number
136
+ },
137
+ toefl_speaking: {
138
+ type: Number
139
+ },
140
+ ielts: {
141
+ type: String
142
+ },
143
+ ielts_reading: {
144
+ type: Number
145
+ },
146
+ ielts_listening: {
147
+ type: Number
148
+ },
149
+ ielts_writing: {
150
+ type: Number
151
+ },
152
+ ielts_speaking: {
153
+ type: Number
154
+ },
155
+ germanTestHandLater: {
156
+ type: Boolean,
157
+ default: false
158
+ },
159
+ testdaf: {
160
+ type: String
161
+ },
162
+ basic_german_requirement: {
163
+ type: String
164
+ },
165
+ gre: {
166
+ type: String
167
+ },
168
+ gre_verbal: {
169
+ type: Number
170
+ },
171
+ gre_quantitative: {
172
+ type: Number
173
+ },
174
+ gre_analytical_writing: {
175
+ type: Number
176
+ },
177
+ gmat: {
178
+ type: String
179
+ },
180
+ ml_required: {
181
+ type: String
182
+ },
183
+ ml_requirements: {
184
+ type: String
185
+ },
186
+ rl_required: {
187
+ type: String
188
+ },
189
+ rl_requirements: {
190
+ type: String
191
+ },
192
+ is_rl_specific: {
193
+ type: Boolean
194
+ },
195
+ essay_required: {
196
+ type: String
197
+ },
198
+ essay_requirements: {
199
+ type: String
200
+ },
201
+ portfolio_required: {
202
+ type: String
203
+ },
204
+ portfolio_requirements: {
205
+ type: String
206
+ },
207
+ supplementary_form_required: {
208
+ type: String
209
+ },
210
+ supplementary_form_requirements: {
211
+ type: String
212
+ },
213
+ curriculum_analysis_required: {
214
+ type: String
215
+ },
216
+ curriculum_analysis_requirements: {
217
+ type: String
218
+ },
219
+ scholarship_form_required: {
220
+ type: String
221
+ },
222
+ scholarship_form_requirements: {
223
+ type: String
224
+ },
225
+ module_description_required: {
226
+ type: String
227
+ },
228
+ ects_requirements: {
229
+ type: String
230
+ },
231
+ special_notes: {
232
+ type: String
233
+ },
234
+ comments: {
235
+ type: String
236
+ },
237
+ application_portal_a: {
238
+ type: String
239
+ },
240
+ application_portal_b: {
241
+ type: String
242
+ },
243
+ application_portal_a_instructions: {
244
+ type: String
245
+ },
246
+ application_portal_b_instructions: {
247
+ type: String
248
+ },
249
+ uni_assist_link: {
250
+ type: String
251
+ },
252
+ website: {
253
+ type: String
254
+ },
255
+ fpso: {
256
+ type: String
257
+ },
258
+ updatedAt: Date,
259
+ whoupdated: {
260
+ type: String
261
+ },
262
+ tuition_fees: {
263
+ type: String
264
+ },
265
+ contact: {
266
+ type: String
267
+ },
268
+ country: {
269
+ type: String
270
+ },
271
+ isPrivateSchool: {
272
+ type: Boolean
273
+ },
274
+ isPartnerSchool: {
275
+ type: Boolean
276
+ },
277
+ schoolType: {
278
+ type: String,
279
+ enum: core_1.SCHOOL_TYPES
280
+ },
281
+ tags: [
282
+ {
283
+ type: String,
284
+ enum: SCHOOL_TAG_KEYS
285
+ }
286
+ ],
287
+ url: String,
288
+ vcId: ObjectId
289
+ };
290
+ exports.programSchema = new mongoose_1.Schema(exports.programModule, { timestamps: true });
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.programRequirementSchema = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ var Program_1 = require("../model/Program");
6
+ exports.programRequirementSchema = new mongoose_1.Schema({
7
+ programId: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'Program' }],
8
+ program_categories: [
9
+ {
10
+ program_category: {
11
+ type: String,
12
+ default: ''
13
+ },
14
+ category_description: {
15
+ type: String,
16
+ default: ''
17
+ },
18
+ requiredECTS: {
19
+ type: Number,
20
+ default: 0
21
+ },
22
+ keywordSets: [{ type: mongoose_1.Schema.Types.ObjectId, ref: 'KeywordSet' }],
23
+ maxScore: {
24
+ type: Number,
25
+ default: 0
26
+ }
27
+ }
28
+ ],
29
+ attributes: [
30
+ {
31
+ type: String,
32
+ enum: Program_1.PROGRAM_SUBJECT_KEYS
33
+ }
34
+ ],
35
+ fpso: {
36
+ type: String
37
+ },
38
+ admissionDescription: {
39
+ type: String,
40
+ default: ''
41
+ },
42
+ gpaScoreBoundaryGPA: {
43
+ type: Number,
44
+ default: 0
45
+ },
46
+ // max.
47
+ gpaScore: {
48
+ type: Number,
49
+ default: 0
50
+ },
51
+ // min. score at gpaScoreBoundaryGPA. Some program has offset instead of 0
52
+ gpaMinScore: {
53
+ type: Number,
54
+ default: 0
55
+ },
56
+ coursesScore: {
57
+ type: Number,
58
+ default: 0
59
+ },
60
+ cvScore: {
61
+ type: Number,
62
+ default: 0
63
+ },
64
+ mlScore: {
65
+ type: Number,
66
+ default: 0
67
+ },
68
+ rlScore: {
69
+ type: Number,
70
+ default: 0
71
+ },
72
+ essayScore: {
73
+ type: Number,
74
+ default: 0
75
+ },
76
+ gmatScore: {
77
+ type: Number,
78
+ default: 0
79
+ },
80
+ greScore: {
81
+ type: Number,
82
+ default: 0
83
+ },
84
+ interviewScore: {
85
+ type: Number,
86
+ default: 0
87
+ },
88
+ testScore: {
89
+ type: Number,
90
+ default: 0
91
+ },
92
+ firstRoundConsidered: [
93
+ {
94
+ type: String
95
+ }
96
+ ],
97
+ secondRoundConsidered: [
98
+ {
99
+ type: String
100
+ }
101
+ ],
102
+ directRejectionScore: {
103
+ type: Number,
104
+ default: 0
105
+ },
106
+ directAdmissionScore: {
107
+ type: Number,
108
+ default: 0
109
+ },
110
+ directRejectionSecondScore: {
111
+ type: Number,
112
+ default: 0
113
+ },
114
+ directAdmissionSecondScore: {
115
+ type: Number,
116
+ default: 0
117
+ }
118
+ }, { timestamps: true });
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ResponseTimeSchema = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ exports.ResponseTimeSchema = new mongoose_1.Schema({
6
+ thread_id: {
7
+ type: mongoose_1.Schema.Types.ObjectId,
8
+ ref: 'Documentthread'
9
+ },
10
+ student_id: {
11
+ type: mongoose_1.Schema.Types.ObjectId,
12
+ ref: 'User'
13
+ },
14
+ interval_type: {
15
+ type: String,
16
+ required: true
17
+ },
18
+ intervalAvg: {
19
+ type: Number,
20
+ required: true
21
+ },
22
+ updatedAt: {
23
+ type: Date,
24
+ default: Date.now,
25
+ expires: 93312000 // 3 years
26
+ }
27
+ });