@hed-hog/lms 0.0.338 → 0.0.349

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/class-group/class-group.controller.d.ts +8 -8
  2. package/dist/class-group/class-group.service.d.ts +8 -8
  3. package/dist/course/course.controller.d.ts +6 -1
  4. package/dist/course/course.controller.d.ts.map +1 -1
  5. package/dist/course/course.controller.js +19 -2
  6. package/dist/course/course.controller.js.map +1 -1
  7. package/dist/course/course.service.d.ts +6 -0
  8. package/dist/course/course.service.d.ts.map +1 -1
  9. package/dist/course/course.service.js +51 -8
  10. package/dist/course/course.service.js.map +1 -1
  11. package/dist/course/dto/create-course.dto.d.ts +1 -0
  12. package/dist/course/dto/create-course.dto.d.ts.map +1 -1
  13. package/dist/course/dto/create-course.dto.js +5 -0
  14. package/dist/course/dto/create-course.dto.js.map +1 -1
  15. package/dist/enterprise/enterprise.controller.d.ts +12 -12
  16. package/dist/enterprise/enterprise.service.d.ts +12 -12
  17. package/dist/enterprise/training/training-admin.controller.d.ts +5 -5
  18. package/dist/enterprise/training/training-admin.service.d.ts +5 -5
  19. package/dist/evaluation/evaluation.controller.d.ts +2 -2
  20. package/dist/evaluation/evaluation.service.d.ts +2 -2
  21. package/dist/instructor/instructor.controller.d.ts +1 -0
  22. package/dist/instructor/instructor.controller.d.ts.map +1 -1
  23. package/dist/instructor/instructor.service.d.ts +2 -0
  24. package/dist/instructor/instructor.service.d.ts.map +1 -1
  25. package/dist/instructor/instructor.service.js +9 -7
  26. package/dist/instructor/instructor.service.js.map +1 -1
  27. package/dist/training/dto/create-training.dto.d.ts +1 -0
  28. package/dist/training/dto/create-training.dto.d.ts.map +1 -1
  29. package/dist/training/dto/create-training.dto.js +5 -0
  30. package/dist/training/dto/create-training.dto.js.map +1 -1
  31. package/dist/training/training.controller.d.ts +4 -0
  32. package/dist/training/training.controller.d.ts.map +1 -1
  33. package/dist/training/training.service.d.ts +8 -0
  34. package/dist/training/training.service.d.ts.map +1 -1
  35. package/dist/training/training.service.js +71 -6
  36. package/dist/training/training.service.js.map +1 -1
  37. package/hedhog/frontend/app/_components/class-form-sheet.tsx.ejs +38 -9
  38. package/hedhog/frontend/app/certificates/models/page.tsx.ejs +33 -6
  39. package/hedhog/frontend/app/classes/[id]/page.tsx.ejs +1 -3
  40. package/hedhog/frontend/app/classes/page.tsx.ejs +28 -6
  41. package/hedhog/frontend/app/courses/[id]/structure/_components/editor-course.tsx.ejs +1 -1
  42. package/hedhog/frontend/app/exams/[id]/questions/page.tsx.ejs +25 -18
  43. package/hedhog/frontend/app/paths/page.tsx.ejs +68 -5
  44. package/hedhog/frontend/app/training/page.tsx.ejs +70 -6
  45. package/hedhog/frontend/messages/pt.json +14 -1
  46. package/hedhog/table/learning_path.yaml +4 -0
  47. package/package.json +8 -8
  48. package/src/course/course.controller.ts +18 -0
  49. package/src/course/course.service.ts +73 -2
  50. package/src/course/dto/create-course.dto.ts +4 -0
  51. package/src/instructor/instructor.service.ts +2 -0
  52. package/src/training/dto/create-training.dto.ts +4 -0
  53. package/src/training/training.service.ts +104 -5
@@ -176,10 +176,10 @@ export declare class ClassGroupController {
176
176
  status: import("@prisma/client").$Enums.course_enrollment_status_22007f5947_enum;
177
177
  }[]>;
178
178
  enrollStudent(id: number, dto: EnrollStudentDto): Promise<{
179
+ status: import("@prisma/client").$Enums.course_enrollment_status_22007f5947_enum;
179
180
  id: number;
180
181
  created_at: Date;
181
182
  updated_at: Date;
182
- status: import("@prisma/client").$Enums.course_enrollment_status_22007f5947_enum;
183
183
  person_id: number;
184
184
  course_id: number;
185
185
  course_class_group_id: number | null;
@@ -319,46 +319,46 @@ export declare class ClassGroupController {
319
319
  }>;
320
320
  listMaterials(id: number, sessionId?: string): Promise<({
321
321
  file: {
322
- path: string;
323
322
  size: number;
323
+ path: string;
324
324
  id: number;
325
325
  filename: string;
326
326
  };
327
327
  course_class_session: {
328
- id: number;
329
328
  title: string;
329
+ id: number;
330
330
  };
331
331
  } & {
332
+ title: string;
333
+ url: string | null;
332
334
  id: number;
333
335
  description: string | null;
334
336
  created_at: Date;
335
337
  updated_at: Date;
336
338
  course_class_group_id: number;
337
- title: string;
338
339
  course_class_session_id: number | null;
339
340
  material_type: import("@prisma/client").$Enums.course_class_group_material_material_type_6e6c399501_enum;
340
341
  file_id: number | null;
341
- url: string | null;
342
342
  sort_order: number;
343
343
  })[]>;
344
344
  createMaterial(id: number, dto: CreateMaterialDto): Promise<{
345
345
  file: {
346
- path: string;
347
346
  size: number;
347
+ path: string;
348
348
  id: number;
349
349
  filename: string;
350
350
  };
351
351
  } & {
352
+ title: string;
353
+ url: string | null;
352
354
  id: number;
353
355
  description: string | null;
354
356
  created_at: Date;
355
357
  updated_at: Date;
356
358
  course_class_group_id: number;
357
- title: string;
358
359
  course_class_session_id: number | null;
359
360
  material_type: import("@prisma/client").$Enums.course_class_group_material_material_type_6e6c399501_enum;
360
361
  file_id: number | null;
361
- url: string | null;
362
362
  sort_order: number;
363
363
  }>;
364
364
  deleteMaterial(id: number, materialId: number): Promise<{
@@ -198,10 +198,10 @@ export declare class ClassGroupService {
198
198
  status: import("@prisma/client").$Enums.course_enrollment_status_22007f5947_enum;
199
199
  }[]>;
200
200
  enrollStudent(classGroupId: number, personId: number): Promise<{
201
+ status: import("@prisma/client").$Enums.course_enrollment_status_22007f5947_enum;
201
202
  id: number;
202
203
  created_at: Date;
203
204
  updated_at: Date;
204
- status: import("@prisma/client").$Enums.course_enrollment_status_22007f5947_enum;
205
205
  person_id: number;
206
206
  course_id: number;
207
207
  course_class_group_id: number | null;
@@ -368,46 +368,46 @@ export declare class ClassGroupService {
368
368
  private handlePrismaError;
369
369
  listMaterials(classGroupId: number, sessionId?: number): Promise<({
370
370
  file: {
371
- path: string;
372
371
  size: number;
372
+ path: string;
373
373
  id: number;
374
374
  filename: string;
375
375
  };
376
376
  course_class_session: {
377
- id: number;
378
377
  title: string;
378
+ id: number;
379
379
  };
380
380
  } & {
381
+ title: string;
382
+ url: string | null;
381
383
  id: number;
382
384
  description: string | null;
383
385
  created_at: Date;
384
386
  updated_at: Date;
385
387
  course_class_group_id: number;
386
- title: string;
387
388
  course_class_session_id: number | null;
388
389
  material_type: import("@prisma/client").$Enums.course_class_group_material_material_type_6e6c399501_enum;
389
390
  file_id: number | null;
390
- url: string | null;
391
391
  sort_order: number;
392
392
  })[]>;
393
393
  createMaterial(classGroupId: number, dto: import('./dto/material.dto').CreateMaterialDto): Promise<{
394
394
  file: {
395
- path: string;
396
395
  size: number;
396
+ path: string;
397
397
  id: number;
398
398
  filename: string;
399
399
  };
400
400
  } & {
401
+ title: string;
402
+ url: string | null;
401
403
  id: number;
402
404
  description: string | null;
403
405
  created_at: Date;
404
406
  updated_at: Date;
405
407
  course_class_group_id: number;
406
- title: string;
407
408
  course_class_session_id: number | null;
408
409
  material_type: import("@prisma/client").$Enums.course_class_group_material_material_type_6e6c399501_enum;
409
410
  file_id: number | null;
410
- url: string | null;
411
411
  sort_order: number;
412
412
  }>;
413
413
  deleteMaterial(classGroupId: number, materialId: number): Promise<{
@@ -4,7 +4,7 @@ import { UpdateCourseDto } from './dto/update-course.dto';
4
4
  export declare class CourseController {
5
5
  private readonly courseService;
6
6
  constructor(courseService: CourseService);
7
- list(page?: string, pageSize?: string, search?: string, status?: string, level?: string, category?: string): Promise<{
7
+ list(page?: string, pageSize?: string, search?: string, status?: string, level?: string, category?: string, offeringTypes?: string | string[]): Promise<{
8
8
  total: number;
9
9
  page: number;
10
10
  pageSize: number;
@@ -55,6 +55,7 @@ export declare class CourseController {
55
55
  sessionCount: number;
56
56
  averageCompletion: number;
57
57
  certificatesIssued: any;
58
+ certificateModel: any;
58
59
  progressByModule: {
59
60
  moduleId: number;
60
61
  moduleTitle: string;
@@ -65,6 +66,7 @@ export declare class CourseController {
65
66
  createdAt: any;
66
67
  }[];
67
68
  }>;
69
+ private toArray;
68
70
  stats(): Promise<{
69
71
  totalCourses: number;
70
72
  publishedCourses: number;
@@ -117,6 +119,7 @@ export declare class CourseController {
117
119
  sessionCount: number;
118
120
  averageCompletion: number;
119
121
  certificatesIssued: any;
122
+ certificateModel: any;
120
123
  progressByModule: {
121
124
  moduleId: number;
122
125
  moduleTitle: string;
@@ -172,6 +175,7 @@ export declare class CourseController {
172
175
  sessionCount: number;
173
176
  averageCompletion: number;
174
177
  certificatesIssued: any;
178
+ certificateModel: any;
175
179
  progressByModule: {
176
180
  moduleId: number;
177
181
  moduleTitle: string;
@@ -227,6 +231,7 @@ export declare class CourseController {
227
231
  sessionCount: number;
228
232
  averageCompletion: number;
229
233
  certificatesIssued: any;
234
+ certificateModel: any;
230
235
  progressByModule: {
231
236
  moduleId: number;
232
237
  moduleTitle: string;
@@ -1 +1 @@
1
- {"version":3,"file":"course.controller.d.ts","sourceRoot":"","sources":["../../src/course/course.controller.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,qBAEa,gBAAgB;IACf,OAAO,CAAC,QAAQ,CAAC,aAAa;gBAAb,aAAa,EAAE,aAAa;IAGzD,IAAI,CACa,IAAI,CAAC,EAAE,MAAM,EACT,QAAQ,CAAC,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,MAAM,EAChB,KAAK,CAAC,EAAE,MAAM,EACX,QAAQ,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAatC,KAAK;;;;;;IAKL,OAAO,CAA4B,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAK7C,MAAM,CAAS,GAAG,EAAE,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKnC,MAAM,CACuB,EAAE,EAAE,MAAM,EAC7B,GAAG,EAAE,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAM9B,MAAM,CAA4B,EAAE,EAAE,MAAM;;;CAG7C"}
1
+ {"version":3,"file":"course.controller.d.ts","sourceRoot":"","sources":["../../src/course/course.controller.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,qBAEa,gBAAgB;IACf,OAAO,CAAC,QAAQ,CAAC,aAAa;gBAAb,aAAa,EAAE,aAAa;IAGzD,IAAI,CACa,IAAI,CAAC,EAAE,MAAM,EACT,QAAQ,CAAC,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,MAAM,EAChB,KAAK,CAAC,EAAE,MAAM,EACX,QAAQ,CAAC,EAAE,MAAM,EACZ,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAa3D,OAAO,CAAC,OAAO;IAiBf,KAAK;;;;;;IAKL,OAAO,CAA4B,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAK7C,MAAM,CAAS,GAAG,EAAE,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKnC,MAAM,CACuB,EAAE,EAAE,MAAM,EAC7B,GAAG,EAAE,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAM9B,MAAM,CAA4B,EAAE,EAAE,MAAM;;;CAG7C"}
@@ -22,7 +22,7 @@ let CourseController = class CourseController {
22
22
  constructor(courseService) {
23
23
  this.courseService = courseService;
24
24
  }
25
- list(page, pageSize, search, status, level, category) {
25
+ list(page, pageSize, search, status, level, category, offeringTypes) {
26
26
  return this.courseService.list({
27
27
  page: page ? Number(page) : 1,
28
28
  pageSize: pageSize ? Number(pageSize) : 12,
@@ -30,8 +30,24 @@ let CourseController = class CourseController {
30
30
  status,
31
31
  level,
32
32
  category,
33
+ offeringTypes: this.toArray(offeringTypes),
33
34
  });
34
35
  }
36
+ toArray(value) {
37
+ if (Array.isArray(value)) {
38
+ return value
39
+ .flatMap((item) => String(item).split(','))
40
+ .map((item) => item.trim())
41
+ .filter(Boolean);
42
+ }
43
+ if (typeof value === 'string') {
44
+ return value
45
+ .split(',')
46
+ .map((item) => item.trim())
47
+ .filter(Boolean);
48
+ }
49
+ return [];
50
+ }
35
51
  stats() {
36
52
  return this.courseService.stats();
37
53
  }
@@ -57,8 +73,9 @@ __decorate([
57
73
  __param(3, (0, common_1.Query)('status')),
58
74
  __param(4, (0, common_1.Query)('level')),
59
75
  __param(5, (0, common_1.Query)('category')),
76
+ __param(6, (0, common_1.Query)('offeringTypes')),
60
77
  __metadata("design:type", Function),
61
- __metadata("design:paramtypes", [String, String, String, String, String, String]),
78
+ __metadata("design:paramtypes", [String, String, String, String, String, String, Object]),
62
79
  __metadata("design:returntype", void 0)
63
80
  ], CourseController.prototype, "list", null);
64
81
  __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"course.controller.js","sourceRoot":"","sources":["../../src/course/course.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,sCAAoC;AACpC,2CAUwB;AACxB,qDAAiD;AACjD,+DAA0D;AAC1D,+DAA0D;AAInD,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAC3B,YAA6B,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;IAAG,CAAC;IAG7D,IAAI,CACa,IAAa,EACT,QAAiB,EACnB,MAAe,EACf,MAAe,EAChB,KAAc,EACX,QAAiB;QAEpC,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;YAC7B,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7B,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;YAC1C,MAAM;YACN,MAAM;YACN,KAAK;YACL,QAAQ;SACT,CAAC,CAAC;IACL,CAAC;IAGD,KAAK;QACH,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IACpC,CAAC;IAGD,OAAO,CAA4B,EAAU;QAC3C,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACxC,CAAC;IAGD,MAAM,CAAS,GAAoB;QACjC,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACxC,CAAC;IAGD,MAAM,CACuB,EAAU,EAC7B,GAAoB;QAE5B,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IAC5C,CAAC;IAGD,MAAM,CAA4B,EAAU;QAC1C,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC;CACF,CAAA;AAjDY,4CAAgB;AAI3B;IADC,IAAA,YAAG,GAAE;IAEH,WAAA,IAAA,cAAK,EAAC,MAAM,CAAC,CAAA;IACb,WAAA,IAAA,cAAK,EAAC,UAAU,CAAC,CAAA;IACjB,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;IACf,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;IACf,WAAA,IAAA,cAAK,EAAC,OAAO,CAAC,CAAA;IACd,WAAA,IAAA,cAAK,EAAC,UAAU,CAAC,CAAA;;;;4CAUnB;AAGD;IADC,IAAA,YAAG,EAAC,OAAO,CAAC;;;;6CAGZ;AAGD;IADC,IAAA,YAAG,EAAC,KAAK,CAAC;IACF,WAAA,IAAA,cAAK,EAAC,IAAI,EAAE,qBAAY,CAAC,CAAA;;;;+CAEjC;AAGD;IADC,IAAA,aAAI,GAAE;IACC,WAAA,IAAA,aAAI,GAAE,CAAA;;qCAAM,mCAAe;;8CAElC;AAGD;IADC,IAAA,cAAK,EAAC,KAAK,CAAC;IAEV,WAAA,IAAA,cAAK,EAAC,IAAI,EAAE,qBAAY,CAAC,CAAA;IACzB,WAAA,IAAA,aAAI,GAAE,CAAA;;6CAAM,mCAAe;;8CAG7B;AAGD;IADC,IAAA,eAAM,EAAC,KAAK,CAAC;IACN,WAAA,IAAA,cAAK,EAAC,IAAI,EAAE,qBAAY,CAAC,CAAA;;;;8CAEhC;2BAhDU,gBAAgB;IAF5B,IAAA,UAAI,GAAE;IACN,IAAA,mBAAU,EAAC,aAAa,CAAC;qCAEoB,8BAAa;GAD9C,gBAAgB,CAiD5B"}
1
+ {"version":3,"file":"course.controller.js","sourceRoot":"","sources":["../../src/course/course.controller.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ export declare class CourseService {
11
11
  private normalizeOfferingType;
12
12
  private normalizeOptionalText;
13
13
  private resolveCourseTitle;
14
+ private resolveCertificateTemplateId;
14
15
  list(params: {
15
16
  page?: number;
16
17
  pageSize?: number;
@@ -18,6 +19,7 @@ export declare class CourseService {
18
19
  status?: string;
19
20
  level?: string;
20
21
  category?: string;
22
+ offeringTypes?: string[];
21
23
  }): Promise<{
22
24
  total: number;
23
25
  page: number;
@@ -69,6 +71,7 @@ export declare class CourseService {
69
71
  sessionCount: number;
70
72
  averageCompletion: number;
71
73
  certificatesIssued: any;
74
+ certificateModel: any;
72
75
  progressByModule: {
73
76
  moduleId: number;
74
77
  moduleTitle: string;
@@ -131,6 +134,7 @@ export declare class CourseService {
131
134
  sessionCount: number;
132
135
  averageCompletion: number;
133
136
  certificatesIssued: any;
137
+ certificateModel: any;
134
138
  progressByModule: {
135
139
  moduleId: number;
136
140
  moduleTitle: string;
@@ -186,6 +190,7 @@ export declare class CourseService {
186
190
  sessionCount: number;
187
191
  averageCompletion: number;
188
192
  certificatesIssued: any;
193
+ certificateModel: any;
189
194
  progressByModule: {
190
195
  moduleId: number;
191
196
  moduleTitle: string;
@@ -241,6 +246,7 @@ export declare class CourseService {
241
246
  sessionCount: number;
242
247
  averageCompletion: number;
243
248
  certificatesIssued: any;
249
+ certificateModel: any;
244
250
  progressByModule: {
245
251
  moduleId: number;
246
252
  moduleTitle: string;
@@ -1 +1 @@
1
- {"version":3,"file":"course.service.d.ts","sourceRoot":"","sources":["../../src/course/course.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,8BAA8B,EAAE,MAAM,eAAe,CAAC;AAE/D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAoB1D,qBACa,aAAa;IAEtB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,cAAc;gBAFd,MAAM,EAAE,aAAa,EAErB,cAAc,EAAE,8BAA8B;IAGjE,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,eAAe;IAmBvB,OAAO,CAAC,qBAAqB;IAqB7B,OAAO,CAAC,qBAAqB;IAK7B,OAAO,CAAC,kBAAkB;IAIpB,IAAI,CAAC,MAAM,EAAE;QACjB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAyiBe,MAAM;6BACH,MAAM;0BACT,MAAM;;;;;;;IA5dhB,KAAK;;;;;;IAiBL,OAAO,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAycR,MAAM;yBACH,MAAM;sBACT,MAAM;;;;;;IAnVhB,MAAM,CAAC,GAAG,EAAE,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAiVjB,MAAM;yBACH,MAAM;sBACT,MAAM;;;;;;IAxMhB,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAsM7B,MAAM;yBACH,MAAM;sBACT,MAAM;;;;;;IAxBhB,MAAM,CAAC,EAAE,EAAE,MAAM;;;IAcvB,OAAO,CAAC,SAAS;YAkGH,uBAAuB;YAYvB,eAAe;YAgDf,mBAAmB;YAwCnB,gBAAgB;YAgBhB,eAAe;YAaf,iBAAiB;YAwBjB,iBAAiB;YA6DjB,0BAA0B;CA8CzC"}
1
+ {"version":3,"file":"course.service.d.ts","sourceRoot":"","sources":["../../src/course/course.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,8BAA8B,EAAE,MAAM,eAAe,CAAC;AAE/D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAoB1D,qBACa,aAAa;IAEtB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,cAAc;gBAFd,MAAM,EAAE,aAAa,EAErB,cAAc,EAAE,8BAA8B;IAGjE,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,eAAe;IAmBvB,OAAO,CAAC,qBAAqB;IAqB7B,OAAO,CAAC,qBAAqB;IAK7B,OAAO,CAAC,kBAAkB;YAIZ,4BAA4B;IA6BpC,IAAI,CAAC,MAAM,EAAE;QACjB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;KAC1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BA6kBe,MAAM;6BACH,MAAM;0BACT,MAAM;;;;;;;IA7fhB,KAAK;;;;;;IAiBL,OAAO,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBA0eR,MAAM;yBACH,MAAM;sBACT,MAAM;;;;;;IAjXhB,MAAM,CAAC,GAAG,EAAE,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBA+WjB,MAAM;yBACH,MAAM;sBACT,MAAM;;;;;;IAvNhB,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAqN7B,MAAM;yBACH,MAAM;sBACT,MAAM;;;;;;IAxBhB,MAAM,CAAC,EAAE,EAAE,MAAM;;;IAcvB,OAAO,CAAC,SAAS;YAuGH,uBAAuB;YAYvB,eAAe;YAgDf,mBAAmB;YAwCnB,gBAAgB;YAgBhB,eAAe;YAaf,iBAAiB;YAwBjB,iBAAiB;YA6DjB,0BAA0B;CA8CzC"}
@@ -89,6 +89,28 @@ let CourseService = class CourseService {
89
89
  var _a;
90
90
  return (_a = this.normalizeOptionalText(title)) !== null && _a !== void 0 ? _a : slug;
91
91
  }
92
+ async resolveCertificateTemplateId(value) {
93
+ if (value === undefined) {
94
+ return undefined;
95
+ }
96
+ const normalized = String(value !== null && value !== void 0 ? value : '').trim();
97
+ if (!normalized) {
98
+ return null;
99
+ }
100
+ const numericId = Number(normalized);
101
+ const template = await this.prisma.certificate_template.findFirst({
102
+ where: Number.isInteger(numericId) && numericId > 0
103
+ ? {
104
+ OR: [{ id: numericId }, { slug: normalized }],
105
+ }
106
+ : { slug: normalized },
107
+ select: { id: true },
108
+ });
109
+ if (!template) {
110
+ throw new common_1.BadRequestException('Certificate template not found');
111
+ }
112
+ return template.id;
113
+ }
92
114
  async list(params) {
93
115
  const page = Math.max(Number(params.page) || 1, 1);
94
116
  const pageSize = Math.max(Number(params.pageSize) || 12, 1);
@@ -113,6 +135,9 @@ let CourseService = class CourseService {
113
135
  some: { category: { slug: params.category } },
114
136
  };
115
137
  }
138
+ if (params.offeringTypes && params.offeringTypes.length > 0) {
139
+ where.offering_type = { in: params.offeringTypes };
140
+ }
116
141
  const [courses, total] = await Promise.all([
117
142
  this.prisma.course.findMany({
118
143
  skip,
@@ -221,6 +246,9 @@ let CourseService = class CourseService {
221
246
  },
222
247
  },
223
248
  },
249
+ certificate_template: {
250
+ select: { id: true, slug: true },
251
+ },
224
252
  _count: {
225
253
  select: {
226
254
  course_enrollment: true,
@@ -285,9 +313,10 @@ let CourseService = class CourseService {
285
313
  }
286
314
  async create(dto) {
287
315
  var _a, _b, _c, _d;
288
- const { categorySlugs, logoFileId, bannerFileId, instructorIds } = dto, data = __rest(dto, ["categorySlugs", "logoFileId", "bannerFileId", "instructorIds"]);
316
+ const { categorySlugs, logoFileId, bannerFileId, instructorIds, certificateModel } = dto, data = __rest(dto, ["categorySlugs", "logoFileId", "bannerFileId", "instructorIds", "certificateModel"]);
289
317
  const normalizedSlug = data.slug.trim();
290
318
  const resolvedTitle = this.resolveCourseTitle(data.title, normalizedSlug);
319
+ const certificateTemplateId = await this.resolveCertificateTemplateId(certificateModel);
291
320
  const categories = (categorySlugs === null || categorySlugs === void 0 ? void 0 : categorySlugs.length)
292
321
  ? await this.prisma.category.findMany({
293
322
  where: { slug: { in: categorySlugs } },
@@ -305,7 +334,7 @@ let CourseService = class CourseService {
305
334
  validInstructorIds = instructorIds.filter((id) => validIds.has(id));
306
335
  }
307
336
  const c = await this.prisma.course.create({
308
- data: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ name: data.name, slug: normalizedSlug, title: resolvedTitle }, (data.description !== undefined && {
337
+ data: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ name: data.name, slug: normalizedSlug, title: resolvedTitle }, (data.description !== undefined && {
309
338
  description: data.description,
310
339
  })), { level: (_a = this.normalizeLevel(data.level)) !== null && _a !== void 0 ? _a : 'beginner', status: (_b = this.normalizeStatus(data.status)) !== null && _b !== void 0 ? _b : 'draft' }), (data.requirements !== undefined && {
311
340
  requirements: data.requirements,
@@ -317,6 +346,8 @@ let CourseService = class CourseService {
317
346
  duration_hours: data.durationHours,
318
347
  })), (data.certificateWorkload !== undefined && {
319
348
  certificate_workload: data.certificateWorkload,
349
+ })), (certificateTemplateId !== undefined && {
350
+ certificate_template_id: certificateTemplateId,
320
351
  })), (data.primaryColor !== undefined && {
321
352
  primary_color: data.primaryColor,
322
353
  })), (data.primaryContrastColor !== undefined && {
@@ -373,6 +404,9 @@ let CourseService = class CourseService {
373
404
  },
374
405
  },
375
406
  },
407
+ certificate_template: {
408
+ select: { id: true, slug: true },
409
+ },
376
410
  _count: { select: { course_enrollment: true } },
377
411
  },
378
412
  });
@@ -394,7 +428,7 @@ let CourseService = class CourseService {
394
428
  }
395
429
  async update(id, dto) {
396
430
  var _a;
397
- const { categorySlugs, logoFileId, bannerFileId, instructorIds } = dto, data = __rest(dto, ["categorySlugs", "logoFileId", "bannerFileId", "instructorIds"]);
431
+ const { categorySlugs, logoFileId, bannerFileId, instructorIds, certificateModel } = dto, data = __rest(dto, ["categorySlugs", "logoFileId", "bannerFileId", "instructorIds", "certificateModel"]);
398
432
  let existingSlug;
399
433
  if (data.title !== undefined &&
400
434
  this.normalizeOptionalText(data.title) === undefined &&
@@ -409,6 +443,7 @@ let CourseService = class CourseService {
409
443
  const resolvedTitle = data.title !== undefined
410
444
  ? this.resolveCourseTitle(data.title, (_a = resolvedSlug !== null && resolvedSlug !== void 0 ? resolvedSlug : existingSlug) !== null && _a !== void 0 ? _a : '')
411
445
  : undefined;
446
+ const certificateTemplateId = await this.resolveCertificateTemplateId(certificateModel);
412
447
  const categories = (categorySlugs === null || categorySlugs === void 0 ? void 0 : categorySlugs.length)
413
448
  ? await this.prisma.category.findMany({
414
449
  where: { slug: { in: categorySlugs } },
@@ -437,7 +472,7 @@ let CourseService = class CourseService {
437
472
  }
438
473
  const c = await this.prisma.course.update({
439
474
  where: { id },
440
- data: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (data.name !== undefined && { name: data.name })), (resolvedSlug !== undefined && { slug: resolvedSlug })), (resolvedTitle !== undefined && { title: resolvedTitle })), (data.description !== undefined && { description: data.description })), (data.level !== undefined && {
475
+ data: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (data.name !== undefined && { name: data.name })), (resolvedSlug !== undefined && { slug: resolvedSlug })), (resolvedTitle !== undefined && { title: resolvedTitle })), (data.description !== undefined && { description: data.description })), (data.level !== undefined && {
441
476
  level: this.normalizeLevel(data.level),
442
477
  })), (data.status !== undefined && {
443
478
  status: this.normalizeStatus(data.status),
@@ -451,6 +486,8 @@ let CourseService = class CourseService {
451
486
  duration_hours: data.durationHours,
452
487
  })), (data.certificateWorkload !== undefined && {
453
488
  certificate_workload: data.certificateWorkload,
489
+ })), (certificateTemplateId !== undefined && {
490
+ certificate_template_id: certificateTemplateId,
454
491
  })), (data.primaryColor !== undefined && {
455
492
  primary_color: data.primaryColor,
456
493
  })), (data.primaryContrastColor !== undefined && {
@@ -500,6 +537,9 @@ let CourseService = class CourseService {
500
537
  },
501
538
  },
502
539
  },
540
+ certificate_template: {
541
+ select: { id: true, slug: true },
542
+ },
503
543
  _count: { select: { course_enrollment: true } },
504
544
  },
505
545
  });
@@ -546,7 +586,7 @@ let CourseService = class CourseService {
546
586
  return { success: true };
547
587
  }
548
588
  mapCourse(c, metrics, extras) {
549
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29;
589
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31;
550
590
  const resolvedName = (_b = (_a = extras === null || extras === void 0 ? void 0 : extras.name) !== null && _a !== void 0 ? _a : c.name) !== null && _b !== void 0 ? _b : null;
551
591
  const resolvedTitle = (_c = this.normalizeOptionalText(c.title)) !== null && _c !== void 0 ? _c : c.slug;
552
592
  const courseImages = Array.isArray(c.course_image) ? c.course_image : [];
@@ -604,8 +644,11 @@ let CourseService = class CourseService {
604
644
  sessionCount: (_22 = metrics === null || metrics === void 0 ? void 0 : metrics.sessionCount) !== null && _22 !== void 0 ? _22 : 0,
605
645
  averageCompletion: Math.round((_23 = metrics === null || metrics === void 0 ? void 0 : metrics.averageCompletion) !== null && _23 !== void 0 ? _23 : 0),
606
646
  certificatesIssued: (_26 = (_24 = metrics === null || metrics === void 0 ? void 0 : metrics.certificatesIssued) !== null && _24 !== void 0 ? _24 : (_25 = c._count) === null || _25 === void 0 ? void 0 : _25.certificate) !== null && _26 !== void 0 ? _26 : 0,
607
- progressByModule: (_27 = metrics === null || metrics === void 0 ? void 0 : metrics.progressByModule) !== null && _27 !== void 0 ? _27 : [],
608
- instructors: ((_28 = c.course_instructor) !== null && _28 !== void 0 ? _28 : []).map((ci) => {
647
+ certificateModel: (_28 = (_27 = c.certificate_template) === null || _27 === void 0 ? void 0 : _27.slug) !== null && _28 !== void 0 ? _28 : (c.certificate_template_id
648
+ ? String(c.certificate_template_id)
649
+ : null),
650
+ progressByModule: (_29 = metrics === null || metrics === void 0 ? void 0 : metrics.progressByModule) !== null && _29 !== void 0 ? _29 : [],
651
+ instructors: ((_30 = c.course_instructor) !== null && _30 !== void 0 ? _30 : []).map((ci) => {
609
652
  var _a, _b, _c, _d, _e, _f;
610
653
  return ({
611
654
  id: ci.instructor_id,
@@ -613,7 +656,7 @@ let CourseService = class CourseService {
613
656
  avatarId: (_f = (_e = (_d = ci.instructor) === null || _d === void 0 ? void 0 : _d.person) === null || _e === void 0 ? void 0 : _e.avatar_id) !== null && _f !== void 0 ? _f : null,
614
657
  });
615
658
  }),
616
- instructorIds: ((_29 = c.course_instructor) !== null && _29 !== void 0 ? _29 : []).map((ci) => ci.instructor_id),
659
+ instructorIds: ((_31 = c.course_instructor) !== null && _31 !== void 0 ? _31 : []).map((ci) => ci.instructor_id),
617
660
  createdAt: c.created_at,
618
661
  };
619
662
  }
@@ -1 +1 @@
1
- {"version":3,"file":"course.service.js","sourceRoot":"","sources":["../../src/course/course.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"course.service.js","sourceRoot":"","sources":["../../src/course/course.service.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,7 @@ export declare class CreateCourseDto {
19
19
  secondaryColor?: string;
20
20
  secondaryContrastColor?: string;
21
21
  categorySlugs?: string[];
22
+ certificateModel?: string | null;
22
23
  instructorIds?: number[];
23
24
  logoFileId?: number | null;
24
25
  bannerFileId?: number | null;
@@ -1 +1 @@
1
- {"version":3,"file":"create-course.dto.d.ts","sourceRoot":"","sources":["../../../src/course/dto/create-course.dto.ts"],"names":[],"mappings":"AAYA,qBAAa,eAAe;IAI1B,IAAI,CAAC,EAAE,MAAM,CAAC;IAQd,IAAI,EAAE,MAAM,CAAC;IAKb,KAAK,CAAC,EAAE,MAAM,CAAC;IAIf,WAAW,CAAC,EAAE,MAAM,CAAC;IAIrB,YAAY,CAAC,EAAE,MAAM,CAAC;IAItB,UAAU,CAAC,EAAE,MAAM,CAAC;IAIpB,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,aAAa,CAAC,EAAE,MAAM,CAAC;IAGvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAI7B,KAAK,CAAC,EAAE,UAAU,GAAG,cAAc,GAAG,UAAU,CAAC;IAIjD,MAAM,CAAC,EAAE,OAAO,GAAG,WAAW,GAAG,UAAU,CAAC;IAI5C,YAAY,CAAC,EAAE,WAAW,GAAG,WAAW,GAAG,SAAS,CAAC;IAIrD,UAAU,CAAC,EAAE,OAAO,CAAC;IAIrB,cAAc,CAAC,EAAE,OAAO,CAAC;IAIzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAKnB,YAAY,CAAC,EAAE,MAAM,CAAC;IAKtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAK9B,cAAc,CAAC,EAAE,MAAM,CAAC;IAKxB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAIhC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAKzB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAIzB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI3B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B"}
1
+ {"version":3,"file":"create-course.dto.d.ts","sourceRoot":"","sources":["../../../src/course/dto/create-course.dto.ts"],"names":[],"mappings":"AAYA,qBAAa,eAAe;IAI1B,IAAI,CAAC,EAAE,MAAM,CAAC;IAQd,IAAI,EAAE,MAAM,CAAC;IAKb,KAAK,CAAC,EAAE,MAAM,CAAC;IAIf,WAAW,CAAC,EAAE,MAAM,CAAC;IAIrB,YAAY,CAAC,EAAE,MAAM,CAAC;IAItB,UAAU,CAAC,EAAE,MAAM,CAAC;IAIpB,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,aAAa,CAAC,EAAE,MAAM,CAAC;IAGvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAI7B,KAAK,CAAC,EAAE,UAAU,GAAG,cAAc,GAAG,UAAU,CAAC;IAIjD,MAAM,CAAC,EAAE,OAAO,GAAG,WAAW,GAAG,UAAU,CAAC;IAI5C,YAAY,CAAC,EAAE,WAAW,GAAG,WAAW,GAAG,SAAS,CAAC;IAIrD,UAAU,CAAC,EAAE,OAAO,CAAC;IAIrB,cAAc,CAAC,EAAE,OAAO,CAAC;IAIzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAKnB,YAAY,CAAC,EAAE,MAAM,CAAC;IAKtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAK9B,cAAc,CAAC,EAAE,MAAM,CAAC;IAKxB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAIhC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAIzB,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAKjC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAIzB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI3B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B"}
@@ -122,6 +122,11 @@ __decorate([
122
122
  (0, class_validator_1.IsOptional)(),
123
123
  __metadata("design:type", Array)
124
124
  ], CreateCourseDto.prototype, "categorySlugs", void 0);
125
+ __decorate([
126
+ (0, class_validator_1.IsString)(),
127
+ (0, class_validator_1.IsOptional)(),
128
+ __metadata("design:type", String)
129
+ ], CreateCourseDto.prototype, "certificateModel", void 0);
125
130
  __decorate([
126
131
  (0, class_validator_1.IsArray)(),
127
132
  (0, class_validator_1.IsInt)({ each: true }),