@hed-hog/lms 0.0.354 → 0.0.357

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 (73) hide show
  1. package/dist/course/course-audio-transcription.service.d.ts.map +1 -1
  2. package/dist/course/course-audio-transcription.service.js +15 -7
  3. package/dist/course/course-audio-transcription.service.js.map +1 -1
  4. package/dist/course/course-structure.controller.d.ts +12 -0
  5. package/dist/course/course-structure.controller.d.ts.map +1 -1
  6. package/dist/course/course-structure.service.d.ts +22 -0
  7. package/dist/course/course-structure.service.d.ts.map +1 -1
  8. package/dist/course/course-structure.service.js +147 -18
  9. package/dist/course/course-structure.service.js.map +1 -1
  10. package/dist/course/course.service.d.ts +4 -2
  11. package/dist/course/course.service.d.ts.map +1 -1
  12. package/dist/course/course.service.js +61 -2
  13. package/dist/course/course.service.js.map +1 -1
  14. package/dist/course/dto/create-course-structure-lesson.dto.d.ts +3 -0
  15. package/dist/course/dto/create-course-structure-lesson.dto.d.ts.map +1 -1
  16. package/dist/course/dto/create-course-structure-lesson.dto.js +15 -0
  17. package/dist/course/dto/create-course-structure-lesson.dto.js.map +1 -1
  18. package/dist/course/dto/create-course-structure-session.dto.d.ts +1 -0
  19. package/dist/course/dto/create-course-structure-session.dto.d.ts.map +1 -1
  20. package/dist/course/dto/create-course-structure-session.dto.js +5 -0
  21. package/dist/course/dto/create-course-structure-session.dto.js.map +1 -1
  22. package/dist/enterprise/training/training-student.controller.d.ts +0 -95
  23. package/dist/enterprise/training/training-student.controller.d.ts.map +1 -1
  24. package/dist/enterprise/training/training-student.controller.js +1 -34
  25. package/dist/enterprise/training/training-student.controller.js.map +1 -1
  26. package/dist/enterprise/training/training-student.service.d.ts +63 -0
  27. package/dist/enterprise/training/training-student.service.d.ts.map +1 -1
  28. package/dist/enterprise/training/training-student.service.js +320 -4
  29. package/dist/enterprise/training/training-student.service.js.map +1 -1
  30. package/dist/lms.module.d.ts.map +1 -1
  31. package/dist/lms.module.js +2 -0
  32. package/dist/lms.module.js.map +1 -1
  33. package/dist/platforma/platforma.controller.d.ts +287 -0
  34. package/dist/platforma/platforma.controller.d.ts.map +1 -0
  35. package/dist/platforma/platforma.controller.js +147 -0
  36. package/dist/platforma/platforma.controller.js.map +1 -0
  37. package/hedhog/data/route.yaml +75 -9
  38. package/hedhog/frontend/app/_components/class-form-sheet.tsx.ejs +2 -2
  39. package/hedhog/frontend/app/_components/course-form-sheet.tsx.ejs +10 -13
  40. package/hedhog/frontend/app/classes/[id]/page.tsx.ejs +2 -2
  41. package/hedhog/frontend/app/courses/[id]/_components/course-edit-types.ts.ejs +1 -1
  42. package/hedhog/frontend/app/courses/[id]/structure/_components/confirm-dialog.tsx.ejs +17 -6
  43. package/hedhog/frontend/app/courses/[id]/structure/_components/editor-course.tsx.ejs +14 -7
  44. package/hedhog/frontend/app/courses/[id]/structure/_components/editor-lesson.tsx.ejs +92 -53
  45. package/hedhog/frontend/app/courses/[id]/structure/_components/editor-session.tsx.ejs +25 -60
  46. package/hedhog/frontend/app/courses/[id]/structure/_components/mock-data.ts.ejs +1 -0
  47. package/hedhog/frontend/app/courses/[id]/structure/_components/store.ts.ejs +11 -0
  48. package/hedhog/frontend/app/courses/[id]/structure/_components/tree-context-menu.tsx.ejs +22 -0
  49. package/hedhog/frontend/app/courses/[id]/structure/_components/tree-row-lesson.tsx.ejs +79 -64
  50. package/hedhog/frontend/app/courses/[id]/structure/_components/tree-row-session.tsx.ejs +31 -14
  51. package/hedhog/frontend/app/courses/[id]/structure/_components/types.ts.ejs +3 -4
  52. package/hedhog/frontend/app/courses/[id]/structure/_data/adapters/course-structure.adapter.ts.ejs +28 -24
  53. package/hedhog/frontend/app/courses/[id]/structure/_data/types/api-course.types.ts.ejs +20 -0
  54. package/hedhog/frontend/app/courses/[id]/structure/_data/use-course-structure-mutations.ts.ejs +41 -6
  55. package/hedhog/frontend/app/courses/page.tsx.ejs +59 -15
  56. package/hedhog/frontend/app/enterprise/_components/enterprise-course-create-sheet.tsx.ejs +1 -1
  57. package/hedhog/frontend/app/enterprise/_components/enterprise-course-edit-sheet.tsx.ejs +2 -2
  58. package/hedhog/frontend/app/paths/page.tsx.ejs +1 -1
  59. package/hedhog/frontend/app/training/page.tsx.ejs +1 -1
  60. package/hedhog/frontend/messages/en.json +7 -2
  61. package/hedhog/frontend/messages/pt.json +7 -2
  62. package/hedhog/table/course_lesson.yaml +2 -2
  63. package/hedhog/table/course_module.yaml +3 -0
  64. package/package.json +9 -9
  65. package/src/course/course-audio-transcription.service.ts +21 -8
  66. package/src/course/course-structure.service.ts +204 -3
  67. package/src/course/course.service.ts +67 -1
  68. package/src/course/dto/create-course-structure-lesson.dto.ts +17 -0
  69. package/src/course/dto/create-course-structure-session.dto.ts +13 -1
  70. package/src/enterprise/training/training-student.controller.ts +3 -27
  71. package/src/enterprise/training/training-student.service.ts +350 -2
  72. package/src/lms.module.ts +2 -0
  73. package/src/platforma/platforma.controller.ts +92 -0
@@ -1 +1 @@
1
- {"version":3,"file":"course-audio-transcription.service.d.ts","sourceRoot":"","sources":["../../src/course/course-audio-transcription.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAIH,YAAY,EAEf,MAAM,gBAAgB,CAAC;AAexB,qBACa,+BAAgC,YAAW,YAAY,EAAE,WAAW;IAsE7E,OAAO,CAAC,QAAQ,CAAC,aAAa;IAE9B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAE5B,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IAEpC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IA7E3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoD;YAE7D,mBAAmB;IAqBjC,OAAO,CAAC,2BAA2B;YAqBrB,uBAAuB;gBAyBlB,aAAa,EAAE,aAAa,EAE5B,cAAc,EAAE,cAAc,EAE9B,WAAW,EAAE,WAAW,EAExB,mBAAmB,EAAE,mBAAmB,EAExC,QAAQ,EAAE,oBAAoB;IAGjD,YAAY;IAKN,MAAM,CAAC,GAAG,EAAE;QAChB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC7B,QAAQ,EAAE,MAAM,CAAC;QACjB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC9B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC9B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KAClC,GAAG,OAAO,CAAC,IAAI,CAAC;CA+QlB"}
1
+ {"version":3,"file":"course-audio-transcription.service.d.ts","sourceRoot":"","sources":["../../src/course/course-audio-transcription.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAgC,WAAW,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/G,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAIH,YAAY,EAEf,MAAM,gBAAgB,CAAC;AAexB,qBACa,+BAAgC,YAAW,YAAY,EAAE,WAAW;IAsE7E,OAAO,CAAC,QAAQ,CAAC,aAAa;IAE9B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAE5B,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IAEpC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IA7E3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoD;YAE7D,mBAAmB;IAqBjC,OAAO,CAAC,2BAA2B;YAqBrB,uBAAuB;gBAyBlB,aAAa,EAAE,aAAa,EAE5B,cAAc,EAAE,cAAc,EAE9B,WAAW,EAAE,WAAW,EAExB,mBAAmB,EAAE,mBAAmB,EAExC,QAAQ,EAAE,oBAAoB;IAGjD,YAAY;IAKN,MAAM,CAAC,GAAG,EAAE;QAChB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC7B,QAAQ,EAAE,MAAM,CAAC;QACjB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC9B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC9B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KAClC,GAAG,OAAO,CAAC,IAAI,CAAC;CA4RlB"}
@@ -104,12 +104,9 @@ let CourseAudioTranscriptionService = CourseAudioTranscriptionService_1 = class
104
104
  }
105
105
  };
106
106
  const settings = await this.settingService.getSettingValues([
107
- 'ai-openai-api-key',
108
- 'ai-openai-api-key-enabled',
107
+ 'ai-openai-profile-id',
109
108
  'lms-audio-transcription-enabled',
110
109
  ]);
111
- const apiKey = settings['ai-openai-api-key'];
112
- const enabled = settings['ai-openai-api-key-enabled'];
113
110
  const transcriptionEnabled = settings['lms-audio-transcription-enabled'] !== false;
114
111
  if (!transcriptionEnabled) {
115
112
  this.logger.warn(`Transcription skipped for lesson ${lessonId}: disabled by lms-audio-transcription-enabled setting`);
@@ -118,10 +115,21 @@ let CourseAudioTranscriptionService = CourseAudioTranscriptionService_1 = class
118
115
  }
119
116
  return;
120
117
  }
121
- if (!enabled || !apiKey) {
122
- this.logger.warn(`Transcription skipped for lesson ${lessonId}: OpenAI key not configured`);
118
+ const profileId = Number(settings['ai-openai-profile-id']);
119
+ let apiKey = '';
120
+ if (profileId) {
121
+ const profile = await this.prismaService.integration_profile.findUnique({
122
+ where: { id: profileId },
123
+ include: { integration_provider: { select: { slug: true } } },
124
+ });
125
+ if (profile) {
126
+ apiKey = (0, core_1.buildAiConfigFromIntegration)(profile.integration_provider.slug, profile.config).apiKey;
127
+ }
128
+ }
129
+ if (!apiKey) {
130
+ this.logger.warn(`Transcription skipped for lesson ${lessonId}: OpenAI profile not configured`);
123
131
  if (notificationContext) {
124
- await this.updateAsyncNotification(notificationContext, 100, 'Transcrição não iniciada: chave da IA não configurada.', false);
132
+ await this.updateAsyncNotification(notificationContext, 100, 'Transcrição não iniciada: perfil de IA não configurado em Settings → AI.', false);
125
133
  }
126
134
  return;
127
135
  }
@@ -1 +1 @@
1
- {"version":3,"file":"course-audio-transcription.service.js","sourceRoot":"","sources":["../../src/course/course-audio-transcription.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"course-audio-transcription.service.js","sourceRoot":"","sources":["../../src/course/course-audio-transcription.service.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ export declare class CourseStructureController {
21
21
  codigo: string;
22
22
  titulo: string;
23
23
  duracao: number;
24
+ published: boolean;
24
25
  collapsed: boolean;
25
26
  }[];
26
27
  aulas: {
@@ -39,6 +40,8 @@ export declare class CourseStructureController {
39
40
  videoConversionJobId: any;
40
41
  exameVinculado: string;
41
42
  conteudoPost: any;
43
+ statusProducao: "preparada" | "gravada" | "editada" | "finalizada" | "publicada";
44
+ published: boolean;
42
45
  recursos: {
43
46
  id: string;
44
47
  nome: string;
@@ -105,6 +108,7 @@ export declare class CourseStructureController {
105
108
  codigo: string;
106
109
  titulo: string;
107
110
  duracao: number;
111
+ published: boolean;
108
112
  collapsed: boolean;
109
113
  }>;
110
114
  reorderSessions(courseId: number, dto: ReorderSessionsDto): Promise<{
@@ -115,6 +119,7 @@ export declare class CourseStructureController {
115
119
  codigo: string;
116
120
  titulo: string;
117
121
  duracao: number;
122
+ published: boolean;
118
123
  collapsed: boolean;
119
124
  }>;
120
125
  deleteSession(courseId: number, sessionId: number): Promise<{
@@ -126,6 +131,7 @@ export declare class CourseStructureController {
126
131
  codigo: string;
127
132
  titulo: string;
128
133
  duracao: number;
134
+ published: boolean;
129
135
  collapsed: boolean;
130
136
  };
131
137
  lessons: any[];
@@ -145,6 +151,8 @@ export declare class CourseStructureController {
145
151
  transcricao: any;
146
152
  videoConversionJobId: any;
147
153
  exameVinculado: string;
154
+ statusProducao: "preparada" | "gravada" | "editada" | "finalizada" | "publicada";
155
+ published: boolean;
148
156
  conteudoPost: any;
149
157
  recursos: {
150
158
  id: string;
@@ -184,6 +192,8 @@ export declare class CourseStructureController {
184
192
  transcricao: any;
185
193
  videoConversionJobId: any;
186
194
  exameVinculado: string;
195
+ statusProducao: "preparada" | "gravada" | "editada" | "finalizada" | "publicada";
196
+ published: boolean;
187
197
  conteudoPost: any;
188
198
  recursos: {
189
199
  id: string;
@@ -244,6 +254,8 @@ export declare class CourseStructureController {
244
254
  transcricao: any;
245
255
  videoConversionJobId: any;
246
256
  exameVinculado: string;
257
+ statusProducao: "preparada" | "gravada" | "editada" | "finalizada" | "publicada";
258
+ published: boolean;
247
259
  conteudoPost: any;
248
260
  recursos: {
249
261
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"course-structure.controller.d.ts","sourceRoot":"","sources":["../../src/course/course-structure.controller.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EACH,8BAA8B,EAC9B,8BAA8B,EACjC,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,+BAA+B,EAAE,MAAM,2CAA2C,CAAC;AAC5F,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,8BAA8B,EAAE,MAAM,0CAA0C,CAAC;AAC1F,OAAO,EAAE,+BAA+B,EAAE,MAAM,2CAA2C,CAAC;AAE5F,qBAEa,yBAAyB;IAElC,OAAO,CAAC,QAAQ,CAAC,sBAAsB;IACvC,OAAO,CAAC,QAAQ,CAAC,4BAA4B;gBAD5B,sBAAsB,EAAE,sBAAsB,EAC9C,4BAA4B,EAAE,4BAA4B;IAI7E,YAAY,CAA4B,QAAQ,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKxD,kBAAkB,CAA4B,QAAQ,EAAE,MAAM;;;;;;;IAK9D,qBAAqB,CACQ,QAAQ,EAAE,MAAM,EACnC,GAAG,EAAE,wBAAwB;;;;;;;IAQvC,aAAa,CACgB,QAAQ,EAAE,MAAM,EACnC,GAAG,EAAE,+BAA+B;;;;;;;IAO9C,eAAe,CACc,QAAQ,EAAE,MAAM,EACnC,GAAG,EAAE,kBAAkB;;;IAMjC,aAAa,CACgB,QAAQ,EAAE,MAAM,EACT,SAAS,EAAE,MAAM,EAC3C,GAAG,EAAE,+BAA+B;;;;;;;IAM9C,aAAa,CACgB,QAAQ,EAAE,MAAM,EACT,SAAS,EAAE,MAAM;;;IAMrD,gBAAgB,CACa,QAAQ,EAAE,MAAM,EACT,SAAS,EAAE,MAAM;;;;;;;;;;IAQrD,YAAY,CACiB,QAAQ,EAAE,MAAM,EACT,SAAS,EAAE,MAAM,EAC3C,GAAG,EAAE,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAM7C,YAAY,CACiB,QAAQ,EAAE,MAAM,EACT,SAAS,EAAE,MAAM,EAC3C,GAAG,EAAE,eAAe;;;IAO9B,cAAc,CACe,QAAQ,EAAE,MAAM,EACT,SAAS,EAAE,MAAM,EAC3C,GAAG,EAAE,iBAAiB;;;IAMhC,YAAY,CACiB,QAAQ,EAAE,MAAM,EACT,SAAS,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EACzC,GAAG,EAAE,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAW7C,UAAU,CACmB,QAAQ,EAAE,MAAM,EACT,SAAS,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EACzC,GAAG,EAAE,aAAa;;;IAM5B,2BAA2B,CACjB,EAAE,EAAE,EAAE,MAAM,EAAE;;KAAA,EACK,QAAQ,EAAE,MAAM,EACT,SAAS,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EACzC,GAAG,EAAE,8BAA8B;;;;IAY7C,YAAY,CACiB,QAAQ,EAAE,MAAM,EACT,SAAS,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM;;;IAMnD,iBAAiB,CACY,QAAQ,EAAE,MAAM,EACT,SAAS,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM;;;IAMjD,iBAAiB,CACY,QAAQ,EAAE,MAAM,EACT,SAAS,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EACzC,GAAG,EAAE,0BAA0B;;;;;;IAWzC,iBAAiB,CACY,QAAQ,EAAE,MAAM,EACT,SAAS,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACvC,GAAG,EAAE,0BAA0B;;;;;;IAYzC,eAAe,CACc,QAAQ,EAAE,MAAM,EACT,SAAS,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIpD"}
1
+ {"version":3,"file":"course-structure.controller.d.ts","sourceRoot":"","sources":["../../src/course/course-structure.controller.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ import { UpdateCourseStructureLessonDto } from './dto/update-course-structure-le
15
15
  import { UpdateCourseStructureSessionDto } from './dto/update-course-structure-session.dto';
16
16
  import { UpdateTranscriptionSegmentsDTO } from './dto/update-transcription-segments.dto';
17
17
  type LessonUiType = 'video' | 'questao' | 'post' | 'exercicio';
18
+ type LessonProductionStatus = 'preparada' | 'gravada' | 'editada' | 'finalizada' | 'publicada';
18
19
  type LessonFileType = 'video_original' | `video_profile:${number}` | 'lesson_audio' | 'student_download' | 'supplementary_material';
19
20
  export declare class CourseStructureService {
20
21
  private readonly prisma;
@@ -28,6 +29,7 @@ export declare class CourseStructureService {
28
29
  codigo: string;
29
30
  titulo: string;
30
31
  duracao: number;
32
+ published: boolean;
31
33
  collapsed: boolean;
32
34
  }[];
33
35
  aulas: {
@@ -46,6 +48,8 @@ export declare class CourseStructureService {
46
48
  videoConversionJobId: any;
47
49
  exameVinculado: string;
48
50
  conteudoPost: any;
51
+ statusProducao: LessonProductionStatus;
52
+ published: boolean;
49
53
  recursos: {
50
54
  id: string;
51
55
  nome: string;
@@ -112,6 +116,7 @@ export declare class CourseStructureService {
112
116
  codigo: string;
113
117
  titulo: string;
114
118
  duracao: number;
119
+ published: boolean;
115
120
  collapsed: boolean;
116
121
  }>;
117
122
  updateSession(courseId: number, sessionId: number, dto: UpdateCourseStructureSessionDto): Promise<{
@@ -119,6 +124,7 @@ export declare class CourseStructureService {
119
124
  codigo: string;
120
125
  titulo: string;
121
126
  duracao: number;
127
+ published: boolean;
122
128
  collapsed: boolean;
123
129
  }>;
124
130
  deleteSession(courseId: number, sessionId: number): Promise<{
@@ -139,6 +145,8 @@ export declare class CourseStructureService {
139
145
  transcricao: any;
140
146
  videoConversionJobId: any;
141
147
  exameVinculado: string;
148
+ statusProducao: LessonProductionStatus;
149
+ published: boolean;
142
150
  conteudoPost: any;
143
151
  recursos: {
144
152
  id: string;
@@ -172,6 +180,8 @@ export declare class CourseStructureService {
172
180
  transcricao: any;
173
181
  videoConversionJobId: any;
174
182
  exameVinculado: string;
183
+ statusProducao: LessonProductionStatus;
184
+ published: boolean;
175
185
  conteudoPost: any;
176
186
  recursos: {
177
187
  id: string;
@@ -223,6 +233,7 @@ export declare class CourseStructureService {
223
233
  codigo: string;
224
234
  titulo: string;
225
235
  duracao: number;
236
+ published: boolean;
226
237
  collapsed: boolean;
227
238
  };
228
239
  lessons: any[];
@@ -242,6 +253,8 @@ export declare class CourseStructureService {
242
253
  transcricao: any;
243
254
  videoConversionJobId: any;
244
255
  exameVinculado: string;
256
+ statusProducao: LessonProductionStatus;
257
+ published: boolean;
245
258
  conteudoPost: any;
246
259
  recursos: {
247
260
  id: string;
@@ -274,6 +287,15 @@ export declare class CourseStructureService {
274
287
  private mapUiTypeToDbType;
275
288
  private mapDbTypeToUiType;
276
289
  private serializeContent;
290
+ private normalizeProductionStatus;
291
+ private normalizeIdList;
292
+ private buildIdCsv;
293
+ private getSessionPublishedByIds;
294
+ private getSessionPublished;
295
+ private setSessionPublished;
296
+ private getLessonPublishedByIds;
297
+ private getLessonPublished;
298
+ private setLessonPublished;
277
299
  private parseLessonContent;
278
300
  private normalizeLessonFileType;
279
301
  private readLessonFileType;
@@ -1 +1 @@
1
- {"version":3,"file":"course-structure.service.d.ts","sourceRoot":"","sources":["../../src/course/course-structure.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"course-structure.service.d.ts","sourceRoot":"","sources":["../../src/course/course-structure.service.ts"],"names":[],"mappings":"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"}
@@ -81,20 +81,26 @@ let CourseStructureService = class CourseStructureService {
81
81
  }),
82
82
  this.operationsIntegration.getCourseProjectLinks([courseId]),
83
83
  ]);
84
- const lessonTaskLinks = await this.operationsIntegration.getLessonTaskLinks(modules.flatMap((module) => module.course_lesson.map((lesson) => lesson.id)));
84
+ const lessonIds = modules.flatMap((module) => module.course_lesson.map((lesson) => lesson.id));
85
+ const [lessonTaskLinks, sessionPublishedById, lessonPublishedById] = await Promise.all([
86
+ this.operationsIntegration.getLessonTaskLinks(lessonIds),
87
+ this.getSessionPublishedByIds(modules.map((module) => module.id)),
88
+ this.getLessonPublishedByIds(lessonIds),
89
+ ]);
85
90
  const courseProject = courseProjectLinks.get(courseId);
86
91
  const sessoes = modules.map((module, index) => {
87
- var _a, _b;
92
+ var _a, _b, _c;
88
93
  return ({
89
94
  id: String(module.id),
90
95
  codigo: this.formatCode('S', (_a = module.order) !== null && _a !== void 0 ? _a : index + 1),
91
96
  titulo: module.title,
92
97
  duracao: (_b = module.duration_minutes) !== null && _b !== void 0 ? _b : 0,
98
+ published: (_c = sessionPublishedById.get(module.id)) !== null && _c !== void 0 ? _c : false,
93
99
  collapsed: false,
94
100
  });
95
101
  });
96
102
  const aulas = modules.flatMap((module) => module.course_lesson.map((lesson, index) => {
97
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
103
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
98
104
  const parsedContent = this.parseLessonContent(lesson.content);
99
105
  const tipo = this.mapDbTypeToUiType(lesson.type, parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.sourceType);
100
106
  return {
@@ -117,6 +123,8 @@ let CourseStructureService = class CourseStructureService {
117
123
  ? String(lesson.course_lesson_question[0].question_id)
118
124
  : undefined,
119
125
  conteudoPost: parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.conteudoPost,
126
+ statusProducao: this.normalizeProductionStatus(parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.statusProducao),
127
+ published: (_f = lessonPublishedById.get(lesson.id)) !== null && _f !== void 0 ? _f : false,
120
128
  recursos: lesson.course_lesson_file.map((fileLink) => ({
121
129
  id: String(fileLink.id),
122
130
  nome: fileLink.title,
@@ -143,9 +151,9 @@ let CourseStructureService = class CourseStructureService {
143
151
  nome: this.personName((_a = item.instructor) === null || _a === void 0 ? void 0 : _a.person),
144
152
  });
145
153
  }),
146
- operationsTaskId: (_g = (_f = lessonTaskLinks.get(lesson.id)) === null || _f === void 0 ? void 0 : _f.taskId) !== null && _g !== void 0 ? _g : null,
147
- operationsTaskName: (_j = (_h = lessonTaskLinks.get(lesson.id)) === null || _h === void 0 ? void 0 : _h.taskName) !== null && _j !== void 0 ? _j : null,
148
- operationsTaskStatus: (_l = (_k = lessonTaskLinks.get(lesson.id)) === null || _k === void 0 ? void 0 : _k.taskStatus) !== null && _l !== void 0 ? _l : null,
154
+ operationsTaskId: (_h = (_g = lessonTaskLinks.get(lesson.id)) === null || _g === void 0 ? void 0 : _g.taskId) !== null && _h !== void 0 ? _h : null,
155
+ operationsTaskName: (_k = (_j = lessonTaskLinks.get(lesson.id)) === null || _j === void 0 ? void 0 : _j.taskName) !== null && _k !== void 0 ? _k : null,
156
+ operationsTaskStatus: (_m = (_l = lessonTaskLinks.get(lesson.id)) === null || _l === void 0 ? void 0 : _l.taskStatus) !== null && _m !== void 0 ? _m : null,
149
157
  };
150
158
  }));
151
159
  return {
@@ -207,7 +215,7 @@ let CourseStructureService = class CourseStructureService {
207
215
  return this.getCourseResources(courseId);
208
216
  }
209
217
  async createSession(courseId, dto) {
210
- var _a, _b, _c;
218
+ var _a, _b, _c, _d;
211
219
  await this.ensureCourseExists(courseId);
212
220
  const nextOrder = await this.nextModuleOrder(courseId);
213
221
  const created = await this.prisma.course_module.create({
@@ -219,16 +227,19 @@ let CourseStructureService = class CourseStructureService {
219
227
  order: nextOrder,
220
228
  },
221
229
  });
230
+ const published = (_b = dto.published) !== null && _b !== void 0 ? _b : false;
231
+ await this.setSessionPublished(created.id, published);
222
232
  return {
223
233
  id: String(created.id),
224
- codigo: this.formatCode('S', (_b = created.order) !== null && _b !== void 0 ? _b : nextOrder),
234
+ codigo: this.formatCode('S', (_c = created.order) !== null && _c !== void 0 ? _c : nextOrder),
225
235
  titulo: created.title,
226
- duracao: (_c = created.duration_minutes) !== null && _c !== void 0 ? _c : 0,
236
+ duracao: (_d = created.duration_minutes) !== null && _d !== void 0 ? _d : 0,
237
+ published,
227
238
  collapsed: false,
228
239
  };
229
240
  }
230
241
  async updateSession(courseId, sessionId, dto) {
231
- var _a, _b;
242
+ var _a, _b, _c;
232
243
  const module = await this.prisma.course_module.findFirst({
233
244
  where: { id: sessionId, course_id: courseId },
234
245
  include: {
@@ -246,11 +257,16 @@ let CourseStructureService = class CourseStructureService {
246
257
  where: { id: sessionId },
247
258
  data: Object.assign(Object.assign(Object.assign({}, (dto.titulo !== undefined && { title: dto.titulo })), (dto.descricao !== undefined && { description: dto.descricao })), (dto.duracao !== undefined && { duration_minutes: dto.duracao })),
248
259
  });
260
+ const published = (_a = dto.published) !== null && _a !== void 0 ? _a : (await this.getSessionPublished(sessionId));
261
+ if (dto.published !== undefined) {
262
+ await this.setSessionPublished(sessionId, dto.published);
263
+ }
249
264
  return {
250
265
  id: String(updated.id),
251
- codigo: this.formatCode('S', (_a = updated.order) !== null && _a !== void 0 ? _a : 0),
266
+ codigo: this.formatCode('S', (_b = updated.order) !== null && _b !== void 0 ? _b : 0),
252
267
  titulo: updated.title,
253
- duracao: (_b = updated.duration_minutes) !== null && _b !== void 0 ? _b : 0,
268
+ duracao: (_c = updated.duration_minutes) !== null && _c !== void 0 ? _c : 0,
269
+ published,
254
270
  collapsed: false,
255
271
  };
256
272
  }
@@ -286,30 +302,41 @@ let CourseStructureService = class CourseStructureService {
286
302
  throw new common_1.NotFoundException('Session not found for this course');
287
303
  }
288
304
  const created = await this.prisma.$transaction(async (tx) => {
289
- var _a, _b, _c, _d, _e, _f;
305
+ var _a, _b, _c, _d, _e, _f, _g;
290
306
  const nextOrder = await this.nextLessonOrder(sessionId, tx);
291
307
  const mappedType = this.mapUiTypeToDbType(dto.tipo);
308
+ const normalizedStatus = this.normalizeProductionStatus(dto.statusProducao);
309
+ const shouldPublish = (_a = dto.published) !== null && _a !== void 0 ? _a : false;
310
+ if (shouldPublish &&
311
+ normalizedStatus !== 'publicada' &&
312
+ !dto.confirmarPublicacaoComStatus) {
313
+ throw new common_1.BadRequestException('LESSON_PUBLISH_REQUIRES_STATUS_CONFIRMATION');
314
+ }
315
+ const statusProducao = shouldPublish && dto.confirmarPublicacaoComStatus
316
+ ? 'publicada'
317
+ : normalizedStatus;
292
318
  const lesson = await tx.course_lesson.create({
293
319
  data: {
294
320
  course_module_id: sessionId,
295
321
  title: dto.titulo,
296
- description: (_a = dto.descricaoPublica) !== null && _a !== void 0 ? _a : null,
322
+ description: (_b = dto.descricaoPublica) !== null && _b !== void 0 ? _b : null,
297
323
  type: mappedType,
298
324
  duration_seconds: dto.duracao * 60,
299
325
  order: nextOrder,
300
- content: this.serializeContent(dto),
326
+ content: this.serializeContent(Object.assign(Object.assign({}, dto), { statusProducao })),
301
327
  },
302
328
  });
329
+ await this.setLessonPublished(lesson.id, shouldPublish, tx);
303
330
  await this.syncLessonRelations(lesson.id, dto, tx);
304
331
  const projectLinks = await this.operationsIntegration.getCourseProjectLinks([courseId], tx);
305
332
  await this.operationsIntegration.createTaskForLesson(tx, {
306
333
  courseId,
307
334
  lessonId: lesson.id,
308
- projectId: (_c = (_b = projectLinks.get(courseId)) === null || _b === void 0 ? void 0 : _b.projectId) !== null && _c !== void 0 ? _c : null,
309
- courseTitle: (_e = (_d = module.course) === null || _d === void 0 ? void 0 : _d.title) !== null && _e !== void 0 ? _e : null,
335
+ projectId: (_d = (_c = projectLinks.get(courseId)) === null || _c === void 0 ? void 0 : _c.projectId) !== null && _d !== void 0 ? _d : null,
336
+ courseTitle: (_f = (_e = module.course) === null || _e === void 0 ? void 0 : _e.title) !== null && _f !== void 0 ? _f : null,
310
337
  sessionTitle: module.title,
311
338
  lessonTitle: dto.titulo,
312
- lessonDescription: (_f = dto.descricaoPublica) !== null && _f !== void 0 ? _f : null,
339
+ lessonDescription: (_g = dto.descricaoPublica) !== null && _g !== void 0 ? _g : null,
313
340
  });
314
341
  return lesson;
315
342
  });
@@ -343,8 +370,25 @@ let CourseStructureService = class CourseStructureService {
343
370
  conteudoPost: dto.conteudoPost,
344
371
  exameVinculado: dto.exameVinculado,
345
372
  descricaoPrivada: dto.descricaoPrivada,
373
+ statusProducao: (() => {
374
+ var _a;
375
+ const parsed = this.parseLessonContent(lesson.content);
376
+ const currentStatus = this.normalizeProductionStatus(parsed === null || parsed === void 0 ? void 0 : parsed.statusProducao);
377
+ const nextStatus = this.normalizeProductionStatus((_a = dto.statusProducao) !== null && _a !== void 0 ? _a : currentStatus);
378
+ const shouldPublish = dto.published;
379
+ if (shouldPublish === true && nextStatus !== 'publicada') {
380
+ if (!dto.confirmarPublicacaoComStatus) {
381
+ throw new common_1.BadRequestException('LESSON_PUBLISH_REQUIRES_STATUS_CONFIRMATION');
382
+ }
383
+ return 'publicada';
384
+ }
385
+ return nextStatus;
386
+ })(),
346
387
  }) }),
347
388
  });
389
+ if (dto.published !== undefined) {
390
+ await this.setLessonPublished(lessonId, dto.published);
391
+ }
348
392
  await this.syncLessonRelations(lessonId, dto);
349
393
  await this.operationsIntegration.syncTaskForLesson(lessonId);
350
394
  return this.getLessonById(updated.id);
@@ -603,6 +647,8 @@ let CourseStructureService = class CourseStructureService {
603
647
  order: nextOrder,
604
648
  },
605
649
  });
650
+ const sourcePublished = await this.getSessionPublished(sourceModule.id);
651
+ await this.setSessionPublished(newModule.id, sourcePublished);
606
652
  const newLessons = [];
607
653
  const projectLinks = await this.operationsIntegration.getCourseProjectLinks([
608
654
  courseId,
@@ -621,6 +667,8 @@ let CourseStructureService = class CourseStructureService {
621
667
  order: lessonOrder,
622
668
  },
623
669
  });
670
+ const lessonPublished = await this.getLessonPublished(lesson.id);
671
+ await this.setLessonPublished(newLesson.id, lessonPublished);
624
672
  if (lesson.course_lesson_file.length > 0) {
625
673
  await this.prisma.course_lesson_file.createMany({
626
674
  data: lesson.course_lesson_file.map((f) => (Object.assign({ course_lesson_id: newLesson.id, title: f.title, file_id: f.file_id }, this.buildLessonFilePersistence(f.type, f.is_public)))),
@@ -661,6 +709,7 @@ let CourseStructureService = class CourseStructureService {
661
709
  codigo: this.formatCode('S', (_e = newModule.order) !== null && _e !== void 0 ? _e : nextOrder),
662
710
  titulo: newModule.title,
663
711
  duracao: (_f = newModule.duration_minutes) !== null && _f !== void 0 ? _f : 0,
712
+ published: sourcePublished,
664
713
  collapsed: false,
665
714
  },
666
715
  lessons: newLessons,
@@ -709,6 +758,8 @@ let CourseStructureService = class CourseStructureService {
709
758
  order: nextOrder,
710
759
  },
711
760
  });
761
+ const sourcePublished = await this.getLessonPublished(sourceLesson.id);
762
+ await this.setLessonPublished(newLesson.id, sourcePublished);
712
763
  if (sourceLesson.course_lesson_file.length > 0) {
713
764
  await this.prisma.course_lesson_file.createMany({
714
765
  data: sourceLesson.course_lesson_file.map((f) => (Object.assign({ course_lesson_id: newLesson.id, title: f.title, file_id: f.file_id }, this.buildLessonFilePersistence(f.type, f.is_public)))),
@@ -784,6 +835,8 @@ let CourseStructureService = class CourseStructureService {
784
835
  order: lessonOrder,
785
836
  },
786
837
  });
838
+ const sourcePublished = await this.getLessonPublished(lesson.id);
839
+ await this.setLessonPublished(newLesson.id, sourcePublished);
787
840
  if (lesson.course_lesson_file.length > 0) {
788
841
  await this.prisma.course_lesson_file.createMany({
789
842
  data: lesson.course_lesson_file.map((f) => (Object.assign({ course_lesson_id: newLesson.id, title: f.title, file_id: f.file_id }, this.buildLessonFilePersistence(f.type, f.is_public)))),
@@ -958,6 +1011,7 @@ let CourseStructureService = class CourseStructureService {
958
1011
  const taskLinks = await this.operationsIntegration.getLessonTaskLinks([
959
1012
  lessonId,
960
1013
  ]);
1014
+ const lessonPublished = await this.getLessonPublished(lessonId);
961
1015
  const parsedContent = this.parseLessonContent(lesson.content);
962
1016
  const tipo = this.mapDbTypeToUiType(lesson.type, parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.sourceType);
963
1017
  return {
@@ -979,6 +1033,8 @@ let CourseStructureService = class CourseStructureService {
979
1033
  : ((_e = lesson.course_lesson_question[0]) === null || _e === void 0 ? void 0 : _e.question_id) != null
980
1034
  ? String(lesson.course_lesson_question[0].question_id)
981
1035
  : undefined,
1036
+ statusProducao: this.normalizeProductionStatus(parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.statusProducao),
1037
+ published: lessonPublished,
982
1038
  conteudoPost: parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.conteudoPost,
983
1039
  recursos: lesson.course_lesson_file.map((fileLink) => ({
984
1040
  id: String(fileLink.id),
@@ -1053,6 +1109,7 @@ let CourseStructureService = class CourseStructureService {
1053
1109
  const payload = {
1054
1110
  sourceType: data.tipo,
1055
1111
  descricaoPrivada: (_a = data.descricaoPrivada) !== null && _a !== void 0 ? _a : '',
1112
+ statusProducao: this.normalizeProductionStatus(data.statusProducao),
1056
1113
  };
1057
1114
  if (data.tipo === 'video') {
1058
1115
  payload.videoProvedor = (_b = data.videoProvedor) !== null && _b !== void 0 ? _b : 'file_storage';
@@ -1071,6 +1128,78 @@ let CourseStructureService = class CourseStructureService {
1071
1128
  }
1072
1129
  return JSON.stringify(payload);
1073
1130
  }
1131
+ normalizeProductionStatus(value) {
1132
+ if (!value)
1133
+ return 'preparada';
1134
+ const normalized = String(value).trim().toLowerCase();
1135
+ if (normalized === 'preparada')
1136
+ return 'preparada';
1137
+ if (normalized === 'gravada')
1138
+ return 'gravada';
1139
+ if (normalized === 'editada')
1140
+ return 'editada';
1141
+ if (normalized === 'finalizada')
1142
+ return 'finalizada';
1143
+ if (normalized === 'publicada')
1144
+ return 'publicada';
1145
+ return 'preparada';
1146
+ }
1147
+ normalizeIdList(ids) {
1148
+ return ids
1149
+ .map((id) => Number(id))
1150
+ .filter((id) => Number.isInteger(id) && id > 0);
1151
+ }
1152
+ buildIdCsv(ids) {
1153
+ return this.normalizeIdList(ids).join(',');
1154
+ }
1155
+ async getSessionPublishedByIds(sessionIds) {
1156
+ const publishedById = new Map();
1157
+ const csv = this.buildIdCsv(sessionIds);
1158
+ if (!csv)
1159
+ return publishedById;
1160
+ try {
1161
+ const rows = await this.prisma.$queryRawUnsafe(`SELECT id, published FROM course_module WHERE id IN (${csv})`);
1162
+ for (const row of rows) {
1163
+ publishedById.set(row.id, Boolean(row.published));
1164
+ }
1165
+ }
1166
+ catch (_a) {
1167
+ return publishedById;
1168
+ }
1169
+ return publishedById;
1170
+ }
1171
+ async getSessionPublished(sessionId) {
1172
+ var _a;
1173
+ const rows = await this.prisma.$queryRawUnsafe(`SELECT published FROM course_module WHERE id = ${Number(sessionId)} LIMIT 1`);
1174
+ return Boolean((_a = rows[0]) === null || _a === void 0 ? void 0 : _a.published);
1175
+ }
1176
+ async setSessionPublished(sessionId, published) {
1177
+ await this.prisma.$executeRawUnsafe(`UPDATE course_module SET published = ${published ? 'true' : 'false'} WHERE id = ${Number(sessionId)}`);
1178
+ }
1179
+ async getLessonPublishedByIds(lessonIds) {
1180
+ const publishedById = new Map();
1181
+ const csv = this.buildIdCsv(lessonIds);
1182
+ if (!csv)
1183
+ return publishedById;
1184
+ try {
1185
+ const rows = await this.prisma.$queryRawUnsafe(`SELECT id, published FROM course_lesson WHERE id IN (${csv})`);
1186
+ for (const row of rows) {
1187
+ publishedById.set(row.id, Boolean(row.published));
1188
+ }
1189
+ }
1190
+ catch (_a) {
1191
+ return publishedById;
1192
+ }
1193
+ return publishedById;
1194
+ }
1195
+ async getLessonPublished(lessonId) {
1196
+ var _a;
1197
+ const rows = await this.prisma.$queryRawUnsafe(`SELECT published FROM course_lesson WHERE id = ${Number(lessonId)} LIMIT 1`);
1198
+ return Boolean((_a = rows[0]) === null || _a === void 0 ? void 0 : _a.published);
1199
+ }
1200
+ async setLessonPublished(lessonId, published, client = this.prisma) {
1201
+ await client.$executeRawUnsafe(`UPDATE course_lesson SET published = ${published ? 'true' : 'false'} WHERE id = ${Number(lessonId)}`);
1202
+ }
1074
1203
  parseLessonContent(content) {
1075
1204
  if (!content)
1076
1205
  return null;