@hed-hog/lms 0.0.364 → 0.0.366

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 (290) hide show
  1. package/dist/bitcode-wallet/bitcode-wallet.service.d.ts +1 -0
  2. package/dist/bitcode-wallet/bitcode-wallet.service.d.ts.map +1 -1
  3. package/dist/bitcode-wallet/bitcode-wallet.service.js +22 -3
  4. package/dist/bitcode-wallet/bitcode-wallet.service.js.map +1 -1
  5. package/dist/class-group/class-group.controller.d.ts +1 -0
  6. package/dist/class-group/class-group.controller.d.ts.map +1 -1
  7. package/dist/class-group/class-group.service.d.ts +1 -0
  8. package/dist/class-group/class-group.service.d.ts.map +1 -1
  9. package/dist/course/course-export-scorm12-worker.service.d.ts +21 -0
  10. package/dist/course/course-export-scorm12-worker.service.d.ts.map +1 -0
  11. package/dist/course/course-export-scorm12-worker.service.js +109 -0
  12. package/dist/course/course-export-scorm12-worker.service.js.map +1 -0
  13. package/dist/course/course-export-scorm12.service.d.ts +42 -0
  14. package/dist/course/course-export-scorm12.service.d.ts.map +1 -0
  15. package/dist/course/course-export-scorm12.service.js +628 -0
  16. package/dist/course/course-export-scorm12.service.js.map +1 -0
  17. package/dist/course/course-export.service.d.ts +84 -0
  18. package/dist/course/course-export.service.d.ts.map +1 -0
  19. package/dist/course/course-export.service.js +237 -0
  20. package/dist/course/course-export.service.js.map +1 -0
  21. package/dist/course/course-structure.controller.d.ts +20 -10
  22. package/dist/course/course-structure.controller.d.ts.map +1 -1
  23. package/dist/course/course-structure.controller.js +20 -4
  24. package/dist/course/course-structure.controller.js.map +1 -1
  25. package/dist/course/course-structure.service.d.ts +12 -4
  26. package/dist/course/course-structure.service.d.ts.map +1 -1
  27. package/dist/course/course-structure.service.js +98 -23
  28. package/dist/course/course-structure.service.js.map +1 -1
  29. package/dist/course/course-video-agent-pipeline.service.d.ts +70 -0
  30. package/dist/course/course-video-agent-pipeline.service.d.ts.map +1 -0
  31. package/dist/course/course-video-agent-pipeline.service.js +398 -0
  32. package/dist/course/course-video-agent-pipeline.service.js.map +1 -0
  33. package/dist/course/course-video-hls.service.d.ts +71 -0
  34. package/dist/course/course-video-hls.service.d.ts.map +1 -0
  35. package/dist/course/course-video-hls.service.js +784 -0
  36. package/dist/course/course-video-hls.service.js.map +1 -0
  37. package/dist/course/course.controller.d.ts +47 -13
  38. package/dist/course/course.controller.d.ts.map +1 -1
  39. package/dist/course/course.controller.js +40 -26
  40. package/dist/course/course.controller.js.map +1 -1
  41. package/dist/course/course.mcp-tools.js +1 -1
  42. package/dist/course/course.mcp-tools.js.map +1 -1
  43. package/dist/course/course.module.d.ts.map +1 -1
  44. package/dist/course/course.module.js +16 -0
  45. package/dist/course/course.module.js.map +1 -1
  46. package/dist/course/course.service.d.ts +8 -9
  47. package/dist/course/course.service.d.ts.map +1 -1
  48. package/dist/course/course.service.js +93 -50
  49. package/dist/course/course.service.js.map +1 -1
  50. package/dist/course/dto/cleanup-course-storage.dto.d.ts +1 -1
  51. package/dist/course/dto/cleanup-course-storage.dto.d.ts.map +1 -1
  52. package/dist/course/dto/cleanup-course-storage.dto.js +1 -0
  53. package/dist/course/dto/cleanup-course-storage.dto.js.map +1 -1
  54. package/dist/course/dto/cleanup-upload-history.dto.d.ts +1 -1
  55. package/dist/course/dto/cleanup-upload-history.dto.d.ts.map +1 -1
  56. package/dist/course/dto/cleanup-upload-history.dto.js +1 -1
  57. package/dist/course/dto/cleanup-upload-history.dto.js.map +1 -1
  58. package/dist/course/dto/create-course-bulk-job.dto.d.ts +2 -1
  59. package/dist/course/dto/create-course-bulk-job.dto.d.ts.map +1 -1
  60. package/dist/course/dto/create-course-bulk-job.dto.js +6 -1
  61. package/dist/course/dto/create-course-bulk-job.dto.js.map +1 -1
  62. package/dist/course/dto/create-course-export.dto.d.ts +14 -0
  63. package/dist/course/dto/create-course-export.dto.d.ts.map +1 -0
  64. package/dist/course/dto/create-course-export.dto.js +71 -0
  65. package/dist/course/dto/create-course-export.dto.js.map +1 -0
  66. package/dist/course/dto/create-course-structure-lesson.dto.d.ts +2 -2
  67. package/dist/course/dto/create-course-structure-lesson.dto.d.ts.map +1 -1
  68. package/dist/course/dto/create-course-structure-lesson.dto.js +3 -2
  69. package/dist/course/dto/create-course-structure-lesson.dto.js.map +1 -1
  70. package/dist/course/ffmpeg.util.d.ts +10 -0
  71. package/dist/course/ffmpeg.util.d.ts.map +1 -0
  72. package/dist/course/ffmpeg.util.js +79 -0
  73. package/dist/course/ffmpeg.util.js.map +1 -0
  74. package/dist/course/lms-bulk-upload-automation.service.d.ts +18 -1
  75. package/dist/course/lms-bulk-upload-automation.service.d.ts.map +1 -1
  76. package/dist/course/lms-bulk-upload-automation.service.js +106 -8
  77. package/dist/course/lms-bulk-upload-automation.service.js.map +1 -1
  78. package/dist/course/lms-bulk-upload-infra.service.d.ts +1 -0
  79. package/dist/course/lms-bulk-upload-infra.service.d.ts.map +1 -1
  80. package/dist/course/lms-bulk-upload-infra.service.js +32 -8
  81. package/dist/course/lms-bulk-upload-infra.service.js.map +1 -1
  82. package/dist/course/lms-bulk-upload.controller.d.ts +30 -3
  83. package/dist/course/lms-bulk-upload.controller.d.ts.map +1 -1
  84. package/dist/course/lms-bulk-upload.controller.js +43 -2
  85. package/dist/course/lms-bulk-upload.controller.js.map +1 -1
  86. package/dist/course/lms-bulk-upload.service.d.ts +11 -0
  87. package/dist/course/lms-bulk-upload.service.d.ts.map +1 -1
  88. package/dist/course/lms-bulk-upload.service.js +59 -6
  89. package/dist/course/lms-bulk-upload.service.js.map +1 -1
  90. package/dist/course/lms-setting.controller.d.ts +2 -1
  91. package/dist/course/lms-setting.controller.d.ts.map +1 -1
  92. package/dist/course/lms-setting.controller.js +4 -2
  93. package/dist/course/lms-setting.controller.js.map +1 -1
  94. package/dist/course/scorm12-schemas.d.ts +4 -0
  95. package/dist/course/scorm12-schemas.d.ts.map +1 -0
  96. package/dist/course/scorm12-schemas.js +9 -0
  97. package/dist/course/scorm12-schemas.js.map +1 -0
  98. package/dist/enterprise/training/training-admin.controller.d.ts +2 -0
  99. package/dist/enterprise/training/training-admin.controller.d.ts.map +1 -1
  100. package/dist/enterprise/training/training-admin.service.d.ts +2 -0
  101. package/dist/enterprise/training/training-admin.service.d.ts.map +1 -1
  102. package/dist/enterprise/training/training-student.service.d.ts +51 -0
  103. package/dist/enterprise/training/training-student.service.d.ts.map +1 -1
  104. package/dist/enterprise/training/training-student.service.js +217 -4
  105. package/dist/enterprise/training/training-student.service.js.map +1 -1
  106. package/dist/evaluation/evaluation.service.d.ts +18 -0
  107. package/dist/evaluation/evaluation.service.d.ts.map +1 -1
  108. package/dist/evaluation/evaluation.service.js +125 -0
  109. package/dist/evaluation/evaluation.service.js.map +1 -1
  110. package/dist/exam/dto/create-standalone-question.dto.d.ts +12 -0
  111. package/dist/exam/dto/create-standalone-question.dto.d.ts.map +1 -0
  112. package/dist/exam/dto/create-standalone-question.dto.js +70 -0
  113. package/dist/exam/dto/create-standalone-question.dto.js.map +1 -0
  114. package/dist/exam/exam.module.d.ts.map +1 -1
  115. package/dist/exam/exam.module.js +2 -1
  116. package/dist/exam/exam.module.js.map +1 -1
  117. package/dist/exam/exam.service.d.ts +21 -0
  118. package/dist/exam/exam.service.d.ts.map +1 -1
  119. package/dist/exam/exam.service.js +80 -0
  120. package/dist/exam/exam.service.js.map +1 -1
  121. package/dist/exam/question.controller.d.ts +27 -0
  122. package/dist/exam/question.controller.d.ts.map +1 -0
  123. package/dist/exam/question.controller.js +53 -0
  124. package/dist/exam/question.controller.js.map +1 -0
  125. package/dist/lesson-xp-map/lesson-xp-ai-calculation.service.d.ts +4 -0
  126. package/dist/lesson-xp-map/lesson-xp-ai-calculation.service.d.ts.map +1 -1
  127. package/dist/lesson-xp-map/lesson-xp-ai-calculation.service.js +161 -25
  128. package/dist/lesson-xp-map/lesson-xp-ai-calculation.service.js.map +1 -1
  129. package/dist/libraries/lms/tsconfig.tsbuildinfo +1 -1
  130. package/dist/lms-commerce-access.subscriber.d.ts +11 -0
  131. package/dist/lms-commerce-access.subscriber.d.ts.map +1 -0
  132. package/dist/lms-commerce-access.subscriber.js +74 -0
  133. package/dist/lms-commerce-access.subscriber.js.map +1 -0
  134. package/dist/lms.module.d.ts.map +1 -1
  135. package/dist/lms.module.js +16 -5
  136. package/dist/lms.module.js.map +1 -1
  137. package/dist/platforma/dto/heartbeat.dto.d.ts +9 -0
  138. package/dist/platforma/dto/heartbeat.dto.d.ts.map +1 -0
  139. package/dist/platforma/dto/heartbeat.dto.js +50 -0
  140. package/dist/platforma/dto/heartbeat.dto.js.map +1 -0
  141. package/dist/platforma/handlers/emit-certificate.handler.d.ts +27 -0
  142. package/dist/platforma/handlers/emit-certificate.handler.d.ts.map +1 -0
  143. package/dist/platforma/handlers/emit-certificate.handler.js +117 -0
  144. package/dist/platforma/handlers/emit-certificate.handler.js.map +1 -0
  145. package/dist/platforma/handlers/lesson-heartbeat.handler.d.ts +31 -0
  146. package/dist/platforma/handlers/lesson-heartbeat.handler.d.ts.map +1 -0
  147. package/dist/platforma/handlers/lesson-heartbeat.handler.js +281 -0
  148. package/dist/platforma/handlers/lesson-heartbeat.handler.js.map +1 -0
  149. package/dist/platforma/platforma-heartbeat.service.d.ts +10 -0
  150. package/dist/platforma/platforma-heartbeat.service.d.ts.map +1 -0
  151. package/dist/platforma/platforma-heartbeat.service.js +50 -0
  152. package/dist/platforma/platforma-heartbeat.service.js.map +1 -0
  153. package/dist/platforma/platforma-performance.service.d.ts +121 -0
  154. package/dist/platforma/platforma-performance.service.d.ts.map +1 -0
  155. package/dist/platforma/platforma-performance.service.js +500 -0
  156. package/dist/platforma/platforma-performance.service.js.map +1 -0
  157. package/dist/platforma/platforma-search.service.d.ts +21 -0
  158. package/dist/platforma/platforma-search.service.d.ts.map +1 -0
  159. package/dist/platforma/platforma-search.service.js +64 -0
  160. package/dist/platforma/platforma-search.service.js.map +1 -0
  161. package/dist/platforma/platforma-video.service.d.ts +39 -0
  162. package/dist/platforma/platforma-video.service.d.ts.map +1 -0
  163. package/dist/platforma/platforma-video.service.js +301 -0
  164. package/dist/platforma/platforma-video.service.js.map +1 -0
  165. package/dist/platforma/platforma.controller.d.ts +209 -1
  166. package/dist/platforma/platforma.controller.d.ts.map +1 -1
  167. package/dist/platforma/platforma.controller.js +208 -2
  168. package/dist/platforma/platforma.controller.js.map +1 -1
  169. package/dist/realtime/lms-realtime.controller.d.ts +2 -0
  170. package/dist/realtime/lms-realtime.controller.d.ts.map +1 -1
  171. package/dist/realtime/lms-realtime.controller.js +31 -0
  172. package/dist/realtime/lms-realtime.controller.js.map +1 -1
  173. package/dist/realtime/lms-realtime.service.d.ts +1 -1
  174. package/dist/realtime/lms-realtime.service.d.ts.map +1 -1
  175. package/dist/realtime/lms-realtime.service.js.map +1 -1
  176. package/dist/student-xp/dto/grant-skill-card-xp.dto.d.ts +5 -0
  177. package/dist/student-xp/dto/grant-skill-card-xp.dto.d.ts.map +1 -0
  178. package/dist/student-xp/dto/grant-skill-card-xp.dto.js +26 -0
  179. package/dist/student-xp/dto/grant-skill-card-xp.dto.js.map +1 -0
  180. package/dist/student-xp/student-xp.controller.d.ts +15 -0
  181. package/dist/student-xp/student-xp.controller.d.ts.map +1 -1
  182. package/dist/student-xp/student-xp.controller.js +24 -0
  183. package/dist/student-xp/student-xp.controller.js.map +1 -1
  184. package/dist/student-xp/student-xp.service.d.ts +16 -0
  185. package/dist/student-xp/student-xp.service.d.ts.map +1 -1
  186. package/dist/student-xp/student-xp.service.js +51 -1
  187. package/dist/student-xp/student-xp.service.js.map +1 -1
  188. package/hedhog/data/evaluation_topic.yaml +17 -0
  189. package/hedhog/data/menu.yaml +0 -17
  190. package/hedhog/data/queue_definition.yaml +48 -0
  191. package/hedhog/data/route.yaml +94 -124
  192. package/hedhog/data/setting_group.yaml +19 -19
  193. package/hedhog/frontend/app/bulk-upload-sessions/page.tsx.ejs +337 -41
  194. package/hedhog/frontend/app/certificates/models/page.tsx.ejs +182 -29
  195. package/hedhog/frontend/app/classes/_components/classes-calendar-view.tsx.ejs +277 -0
  196. package/hedhog/frontend/app/classes/page.tsx.ejs +127 -20
  197. package/hedhog/frontend/app/courses/[id]/page.tsx.ejs +69 -4
  198. package/hedhog/frontend/app/courses/[id]/structure/_components/course-export-sheet.tsx.ejs +420 -0
  199. package/hedhog/frontend/app/courses/[id]/structure/_components/course-exports-tab.tsx.ejs +308 -0
  200. package/hedhog/frontend/app/courses/[id]/structure/_components/course-overview-tab.tsx.ejs +158 -45
  201. package/hedhog/frontend/app/courses/[id]/structure/_components/course-xp-overview-tab.tsx.ejs +13 -13
  202. package/hedhog/frontend/app/courses/[id]/structure/_components/detail-lesson-xp-tab.tsx.ejs +11 -23
  203. package/hedhog/frontend/app/courses/[id]/structure/_components/detail-lesson.tsx.ejs +51 -63
  204. package/hedhog/frontend/app/courses/[id]/structure/_components/detail-panel.tsx.ejs +8 -3
  205. package/hedhog/frontend/app/courses/[id]/structure/_components/detail-session.tsx.ejs +31 -8
  206. package/hedhog/frontend/app/courses/[id]/structure/_components/drag-overlay.tsx.ejs +16 -9
  207. package/hedhog/frontend/app/courses/[id]/structure/_components/editor-course.tsx.ejs +201 -401
  208. package/hedhog/frontend/app/courses/[id]/structure/_components/editor-lesson.tsx.ejs +378 -690
  209. package/hedhog/frontend/app/courses/[id]/structure/_components/mock-data.ts.ejs +1 -2
  210. package/hedhog/frontend/app/courses/[id]/structure/_components/tree-row-lesson.tsx.ejs +3 -9
  211. package/hedhog/frontend/app/courses/[id]/structure/_components/types.ts.ejs +1 -1
  212. package/hedhog/frontend/app/courses/[id]/structure/_components/xp-premium-pills.tsx.ejs +1 -8
  213. package/hedhog/frontend/app/courses/[id]/structure/_data/adapters/course-structure.adapter.ts.ejs +6 -10
  214. package/hedhog/frontend/app/courses/[id]/structure/_data/services/course-structure.service.ts.ejs +49 -0
  215. package/hedhog/frontend/app/courses/[id]/structure/_data/types/api-course.types.ts.ejs +4 -3
  216. package/hedhog/frontend/app/courses/[id]/structure/_data/use-course-content-overview.ts.ejs +2 -1
  217. package/hedhog/frontend/app/courses/[id]/structure/_data/use-course-exports.ts.ejs +106 -0
  218. package/hedhog/frontend/app/courses/[id]/structure/_data/use-course-structure-mutations.ts.ejs +28 -1
  219. package/hedhog/frontend/app/courses/[id]/structure/_data/use-lms-settings-query.ts.ejs +0 -2
  220. package/hedhog/frontend/app/courses/page.tsx.ejs +85 -9
  221. package/hedhog/frontend/app/enterprise/[id]/page.tsx.ejs +6 -0
  222. package/hedhog/frontend/app/enterprise/_components/enterprise-classes-calendar-tab.tsx.ejs +264 -0
  223. package/hedhog/frontend/app/enterprise/page.tsx.ejs +104 -47
  224. package/hedhog/frontend/app/exams/page.tsx.ejs +38 -4
  225. package/hedhog/frontend/app/instructors/page.tsx.ejs +87 -46
  226. package/hedhog/frontend/app/paths/page.tsx.ejs +38 -4
  227. package/hedhog/frontend/app/training/page.tsx.ejs +38 -4
  228. package/hedhog/frontend/messages/en.json +44 -28
  229. package/hedhog/frontend/messages/pt.json +47 -29
  230. package/hedhog/table/course_enrollment.yaml +3 -0
  231. package/hedhog/table/course_export.yaml +62 -0
  232. package/hedhog/table/lesson_view_event.yaml +66 -0
  233. package/package.json +14 -9
  234. package/src/bitcode-wallet/bitcode-wallet.service.ts +43 -4
  235. package/src/course/course-export-scorm12-worker.service.ts +124 -0
  236. package/src/course/course-export-scorm12.service.ts +668 -0
  237. package/src/course/course-export.service.ts +280 -0
  238. package/src/course/course-structure.controller.ts +16 -2
  239. package/src/course/course-structure.service.ts +100 -7
  240. package/src/course/course-video-agent-pipeline.service.ts +471 -0
  241. package/src/course/course-video-hls.service.ts +966 -0
  242. package/src/course/course.controller.ts +33 -19
  243. package/src/course/course.mcp-tools.ts +1 -1
  244. package/src/course/course.module.ts +16 -0
  245. package/src/course/course.service.ts +119 -61
  246. package/src/course/dto/cleanup-course-storage.dto.ts +1 -0
  247. package/src/course/dto/cleanup-upload-history.dto.ts +1 -1
  248. package/src/course/dto/create-course-bulk-job.dto.ts +7 -3
  249. package/src/course/dto/create-course-export.dto.ts +56 -0
  250. package/src/course/dto/create-course-structure-lesson.dto.ts +4 -3
  251. package/src/course/ffmpeg.util.ts +65 -0
  252. package/src/course/lms-bulk-upload-automation.service.ts +156 -6
  253. package/src/course/lms-bulk-upload-infra.service.ts +39 -6
  254. package/src/course/lms-bulk-upload.controller.ts +32 -2
  255. package/src/course/lms-bulk-upload.service.ts +70 -7
  256. package/src/course/lms-setting.controller.ts +4 -2
  257. package/src/course/scorm12-schemas.ts +9 -0
  258. package/src/enterprise/training/training-student.service.ts +221 -2
  259. package/src/evaluation/evaluation.service.ts +123 -0
  260. package/src/exam/dto/create-standalone-question.dto.ts +66 -0
  261. package/src/exam/exam.module.ts +2 -1
  262. package/src/exam/exam.service.ts +86 -0
  263. package/src/exam/question.controller.ts +28 -0
  264. package/src/lesson-xp-map/lesson-xp-ai-calculation.service.ts +205 -31
  265. package/src/lms-commerce-access.subscriber.ts +88 -0
  266. package/src/lms.module.ts +16 -5
  267. package/src/platforma/dto/heartbeat.dto.ts +30 -0
  268. package/src/platforma/handlers/emit-certificate.handler.ts +117 -0
  269. package/src/platforma/handlers/lesson-heartbeat.handler.ts +343 -0
  270. package/src/platforma/platforma-heartbeat.service.ts +33 -0
  271. package/src/platforma/platforma-performance.service.ts +606 -0
  272. package/src/platforma/platforma-search.service.ts +48 -0
  273. package/src/platforma/platforma-video.service.ts +346 -0
  274. package/src/platforma/platforma.controller.ts +137 -1
  275. package/src/platforma/platforma.service.ts +268 -268
  276. package/src/realtime/lms-realtime.controller.ts +27 -1
  277. package/src/realtime/lms-realtime.service.ts +2 -1
  278. package/src/student-xp/dto/grant-skill-card-xp.dto.ts +10 -0
  279. package/src/student-xp/student-xp.controller.ts +18 -2
  280. package/src/student-xp/student-xp.service.ts +84 -2
  281. package/hedhog/data/video_resolution_profile.yaml +0 -7
  282. package/hedhog/frontend/app/video-resolution-profiles/page.tsx.ejs +0 -607
  283. package/hedhog/table/course_video_resolution_profile.yaml +0 -22
  284. package/hedhog/table/video_resolution_profile.yaml +0 -18
  285. package/src/video-resolution-profile/dto/create-video-resolution-profile.dto.ts +0 -16
  286. package/src/video-resolution-profile/dto/update-video-resolution-profile.dto.ts +0 -16
  287. package/src/video-resolution-profile/video-resolution-profile.controller.ts +0 -62
  288. package/src/video-resolution-profile/video-resolution-profile.mcp-tools.ts +0 -128
  289. package/src/video-resolution-profile/video-resolution-profile.module.ts +0 -13
  290. package/src/video-resolution-profile/video-resolution-profile.service.ts +0 -117
@@ -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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"}
@@ -17,17 +17,19 @@ const queue_1 = require("@hed-hog/queue");
17
17
  const common_1 = require("@nestjs/common");
18
18
  const instructor_service_1 = require("../instructor/instructor.service");
19
19
  const course_operations_integration_service_1 = require("./course-operations-integration.service");
20
+ const course_video_hls_service_1 = require("./course-video-hls.service");
20
21
  let CourseStructureService = CourseStructureService_1 = class CourseStructureService {
21
- constructor(prisma, fileService, instructorService, operationsIntegration, queueJob) {
22
+ constructor(prisma, fileService, instructorService, operationsIntegration, queueJob, courseVideoHlsService) {
22
23
  this.prisma = prisma;
23
24
  this.fileService = fileService;
24
25
  this.instructorService = instructorService;
25
26
  this.operationsIntegration = operationsIntegration;
26
27
  this.queueJob = queueJob;
28
+ this.courseVideoHlsService = courseVideoHlsService;
27
29
  this.logger = new common_1.Logger(CourseStructureService_1.name);
28
30
  }
29
31
  async getStructure(courseId) {
30
- var _a, _b, _c, _d, _e, _f, _g;
32
+ var _a, _b, _c, _d, _e, _f, _g, _h;
31
33
  await this.ensureCourseExists(courseId);
32
34
  const courseResources = await this.getCourseResources(courseId);
33
35
  const [modules, instructors, courseRecord, courseProjectLinks] = await Promise.all([
@@ -82,6 +84,7 @@ let CourseStructureService = CourseStructureService_1 = class CourseStructureSer
82
84
  title: true,
83
85
  description: true,
84
86
  offering_type: true,
87
+ status: true,
85
88
  },
86
89
  }),
87
90
  this.operationsIntegration.getCourseProjectLinks([courseId]),
@@ -105,7 +108,7 @@ let CourseStructureService = CourseStructureService_1 = class CourseStructureSer
105
108
  });
106
109
  });
107
110
  const aulas = modules.flatMap((module) => module.course_lesson.map((lesson, index) => {
108
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
111
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
109
112
  const parsedContent = this.parseLessonContent(lesson.content);
110
113
  const tipo = this.mapDbTypeToUiType(lesson.type, parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.sourceType);
111
114
  return {
@@ -121,15 +124,15 @@ let CourseStructureService = CourseStructureService_1 = class CourseStructureSer
121
124
  videoUrl: parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.videoUrl,
122
125
  duracaoAutomatica: parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.duracaoAutomatica,
123
126
  transcricao: parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.transcricao,
124
- videoConversionJobId: parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.videoConversionJobId,
127
+ videoConversionJobId: (_e = parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.videoConversionJobId) !== null && _e !== void 0 ? _e : parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.videoHlsJobId,
125
128
  exameVinculado: (parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.exameVinculado) != null
126
129
  ? String(parsedContent.exameVinculado)
127
- : ((_e = lesson.course_lesson_question[0]) === null || _e === void 0 ? void 0 : _e.question_id) != null
130
+ : ((_f = lesson.course_lesson_question[0]) === null || _f === void 0 ? void 0 : _f.question_id) != null
128
131
  ? String(lesson.course_lesson_question[0].question_id)
129
132
  : undefined,
130
133
  conteudoPost: parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.conteudoPost,
131
134
  statusProducao: this.normalizeProductionStatus(parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.statusProducao),
132
- published: (_f = lessonPublishedById.get(lesson.id)) !== null && _f !== void 0 ? _f : false,
135
+ published: (_g = lessonPublishedById.get(lesson.id)) !== null && _g !== void 0 ? _g : false,
133
136
  recursos: lesson.course_lesson_file.map((fileLink) => ({
134
137
  id: String(fileLink.id),
135
138
  nome: fileLink.title,
@@ -157,9 +160,9 @@ let CourseStructureService = CourseStructureService_1 = class CourseStructureSer
157
160
  avatarId: (_d = (_c = (_b = item.instructor) === null || _b === void 0 ? void 0 : _b.person) === null || _c === void 0 ? void 0 : _c.avatar_id) !== null && _d !== void 0 ? _d : null,
158
161
  });
159
162
  }),
160
- operationsTaskId: (_h = (_g = lessonTaskLinks.get(lesson.id)) === null || _g === void 0 ? void 0 : _g.taskId) !== null && _h !== void 0 ? _h : null,
161
- operationsTaskName: (_k = (_j = lessonTaskLinks.get(lesson.id)) === null || _j === void 0 ? void 0 : _j.taskName) !== null && _k !== void 0 ? _k : null,
162
- operationsTaskStatus: (_m = (_l = lessonTaskLinks.get(lesson.id)) === null || _l === void 0 ? void 0 : _l.taskStatus) !== null && _m !== void 0 ? _m : null,
163
+ operationsTaskId: (_j = (_h = lessonTaskLinks.get(lesson.id)) === null || _h === void 0 ? void 0 : _h.taskId) !== null && _j !== void 0 ? _j : null,
164
+ operationsTaskName: (_l = (_k = lessonTaskLinks.get(lesson.id)) === null || _k === void 0 ? void 0 : _k.taskName) !== null && _l !== void 0 ? _l : null,
165
+ operationsTaskStatus: (_o = (_m = lessonTaskLinks.get(lesson.id)) === null || _m === void 0 ? void 0 : _m.taskStatus) !== null && _o !== void 0 ? _o : null,
163
166
  };
164
167
  }));
165
168
  return {
@@ -181,10 +184,11 @@ let CourseStructureService = CourseStructureService_1 = class CourseStructureSer
181
184
  titulo: courseRecord.title,
182
185
  descricao: (_c = courseRecord.description) !== null && _c !== void 0 ? _c : '',
183
186
  offeringType: (_d = courseRecord.offering_type) !== null && _d !== void 0 ? _d : 'on_demand',
187
+ status: (_e = courseRecord.status) !== null && _e !== void 0 ? _e : 'draft',
184
188
  recursos: courseResources,
185
- operationsProjectId: (_e = courseProject === null || courseProject === void 0 ? void 0 : courseProject.projectId) !== null && _e !== void 0 ? _e : null,
186
- operationsProjectCode: (_f = courseProject === null || courseProject === void 0 ? void 0 : courseProject.projectCode) !== null && _f !== void 0 ? _f : null,
187
- operationsProjectName: (_g = courseProject === null || courseProject === void 0 ? void 0 : courseProject.projectName) !== null && _g !== void 0 ? _g : null,
189
+ operationsProjectId: (_f = courseProject === null || courseProject === void 0 ? void 0 : courseProject.projectId) !== null && _f !== void 0 ? _f : null,
190
+ operationsProjectCode: (_g = courseProject === null || courseProject === void 0 ? void 0 : courseProject.projectCode) !== null && _g !== void 0 ? _g : null,
191
+ operationsProjectName: (_h = courseProject === null || courseProject === void 0 ? void 0 : courseProject.projectName) !== null && _h !== void 0 ? _h : null,
188
192
  }
189
193
  : null,
190
194
  };
@@ -977,7 +981,35 @@ let CourseStructureService = CourseStructureService_1 = class CourseStructureSer
977
981
  });
978
982
  return true;
979
983
  }
980
- async bulkEnqueueJobs(courseId, jobType, userId) {
984
+ async getVideoProcessingStats(courseId) {
985
+ const lessons = await this.prisma.course_lesson.findMany({
986
+ where: {
987
+ type: 'video',
988
+ course_module: { course_id: courseId },
989
+ },
990
+ select: {
991
+ id: true,
992
+ course_lesson_file: { select: { type: true } },
993
+ },
994
+ });
995
+ let withOriginal = 0;
996
+ let withoutOriginal = 0;
997
+ let alreadyProcessed = 0;
998
+ for (const lesson of lessons) {
999
+ const files = lesson.course_lesson_file;
1000
+ const hasOriginal = files.some((f) => f.type === 'video_original');
1001
+ if (!hasOriginal) {
1002
+ withoutOriginal++;
1003
+ continue;
1004
+ }
1005
+ withOriginal++;
1006
+ const hasProcessed = files.some((f) => f.type === 'video_hls' || f.type.startsWith('video_profile:'));
1007
+ if (hasProcessed)
1008
+ alreadyProcessed++;
1009
+ }
1010
+ return { withOriginal, withoutOriginal, alreadyProcessed };
1011
+ }
1012
+ async bulkEnqueueJobs(courseId, jobType, userId, reprocessAlreadyProcessed) {
981
1013
  const lessons = await this.prisma.course_lesson.findMany({
982
1014
  where: {
983
1015
  course_module: { course_id: courseId },
@@ -1012,6 +1044,46 @@ let CourseStructureService = CourseStructureService_1 = class CourseStructureSer
1012
1044
  queued++;
1013
1045
  }
1014
1046
  }
1047
+ else if (jobType === 'video_processing') {
1048
+ const videoLessons = await this.prisma.course_lesson.findMany({
1049
+ where: {
1050
+ type: 'video',
1051
+ course_module: { course_id: courseId },
1052
+ },
1053
+ select: {
1054
+ id: true,
1055
+ course_module_id: true,
1056
+ course_lesson_file: { select: { type: true, file_id: true } },
1057
+ },
1058
+ });
1059
+ for (const lesson of videoLessons) {
1060
+ const files = lesson.course_lesson_file;
1061
+ const originalFile = files.find((f) => f.type === 'video_original');
1062
+ if (!originalFile) {
1063
+ skipped++;
1064
+ continue;
1065
+ }
1066
+ const isAlreadyProcessed = files.some((f) => f.type === 'video_hls' || f.type.startsWith('video_profile:'));
1067
+ if (isAlreadyProcessed && !reprocessAlreadyProcessed) {
1068
+ skipped++;
1069
+ continue;
1070
+ }
1071
+ try {
1072
+ await this.courseVideoHlsService.enqueueHls({
1073
+ userId,
1074
+ courseId,
1075
+ sessionId: lesson.course_module_id,
1076
+ lessonId: lesson.id,
1077
+ originalFileId: originalFile.file_id,
1078
+ });
1079
+ queued++;
1080
+ }
1081
+ catch (err) {
1082
+ this.logger.warn(`bulkEnqueueJobs(video_processing): skipped lesson ${lesson.id} — ${err instanceof Error ? err.message : String(err)}`);
1083
+ skipped++;
1084
+ }
1085
+ }
1086
+ }
1015
1087
  else {
1016
1088
  for (const lesson of lessons) {
1017
1089
  const segments = await this.prisma.course_lesson_transcription_segment.findFirst({
@@ -1111,7 +1183,7 @@ let CourseStructureService = CourseStructureService_1 = class CourseStructureSer
1111
1183
  await syncWithClient(client);
1112
1184
  }
1113
1185
  async getLessonById(lessonId) {
1114
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
1186
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
1115
1187
  const lesson = await this.prisma.course_lesson.findUnique({
1116
1188
  where: { id: lessonId },
1117
1189
  include: {
@@ -1168,10 +1240,10 @@ let CourseStructureService = CourseStructureService_1 = class CourseStructureSer
1168
1240
  videoUrl: parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.videoUrl,
1169
1241
  duracaoAutomatica: parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.duracaoAutomatica,
1170
1242
  transcricao: parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.transcricao,
1171
- videoConversionJobId: parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.videoConversionJobId,
1243
+ videoConversionJobId: (_e = parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.videoConversionJobId) !== null && _e !== void 0 ? _e : parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.videoHlsJobId,
1172
1244
  exameVinculado: (parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.exameVinculado) != null
1173
1245
  ? String(parsedContent.exameVinculado)
1174
- : ((_e = lesson.course_lesson_question[0]) === null || _e === void 0 ? void 0 : _e.question_id) != null
1246
+ : ((_f = lesson.course_lesson_question[0]) === null || _f === void 0 ? void 0 : _f.question_id) != null
1175
1247
  ? String(lesson.course_lesson_question[0].question_id)
1176
1248
  : undefined,
1177
1249
  statusProducao: this.normalizeProductionStatus(parsedContent === null || parsedContent === void 0 ? void 0 : parsedContent.statusProducao),
@@ -1193,9 +1265,9 @@ let CourseStructureService = CourseStructureService_1 = class CourseStructureSer
1193
1265
  nome: this.personName((_a = item.instructor) === null || _a === void 0 ? void 0 : _a.person),
1194
1266
  });
1195
1267
  }),
1196
- operationsTaskId: (_g = (_f = taskLinks.get(lessonId)) === null || _f === void 0 ? void 0 : _f.taskId) !== null && _g !== void 0 ? _g : null,
1197
- operationsTaskName: (_j = (_h = taskLinks.get(lessonId)) === null || _h === void 0 ? void 0 : _h.taskName) !== null && _j !== void 0 ? _j : null,
1198
- operationsTaskStatus: (_l = (_k = taskLinks.get(lessonId)) === null || _k === void 0 ? void 0 : _k.taskStatus) !== null && _l !== void 0 ? _l : null,
1268
+ operationsTaskId: (_h = (_g = taskLinks.get(lessonId)) === null || _g === void 0 ? void 0 : _g.taskId) !== null && _h !== void 0 ? _h : null,
1269
+ operationsTaskName: (_k = (_j = taskLinks.get(lessonId)) === null || _j === void 0 ? void 0 : _j.taskName) !== null && _k !== void 0 ? _k : null,
1270
+ operationsTaskStatus: (_m = (_l = taskLinks.get(lessonId)) === null || _l === void 0 ? void 0 : _l.taskStatus) !== null && _m !== void 0 ? _m : null,
1199
1271
  };
1200
1272
  }
1201
1273
  async ensureCourseExists(courseId) {
@@ -1235,8 +1307,7 @@ let CourseStructureService = CourseStructureService_1 = class CourseStructureSer
1235
1307
  mapDbTypeToUiType(type, sourceType) {
1236
1308
  if (sourceType === 'video' ||
1237
1309
  sourceType === 'questao' ||
1238
- sourceType === 'post' ||
1239
- sourceType === 'exercicio') {
1310
+ sourceType === 'post') {
1240
1311
  return sourceType;
1241
1312
  }
1242
1313
  if (type === 'video')
@@ -1261,7 +1332,7 @@ let CourseStructureService = CourseStructureService_1 = class CourseStructureSer
1261
1332
  payload.videoConversionJobId = data.videoConversionJobId;
1262
1333
  }
1263
1334
  }
1264
- if (data.tipo === 'post' || data.tipo === 'exercicio') {
1335
+ if (data.tipo === 'post') {
1265
1336
  payload.conteudoPost = (_f = data.conteudoPost) !== null && _f !== void 0 ? _f : '';
1266
1337
  }
1267
1338
  if (data.tipo === 'questao') {
@@ -1355,6 +1426,9 @@ let CourseStructureService = CourseStructureService_1 = class CourseStructureSer
1355
1426
  if (value === 'video_original') {
1356
1427
  return 'video_original';
1357
1428
  }
1429
+ if (value === 'video_hls') {
1430
+ return 'video_hls';
1431
+ }
1358
1432
  if (value === null || value === void 0 ? void 0 : value.startsWith('video_profile:')) {
1359
1433
  const profileId = Number(value.replace('video_profile:', ''));
1360
1434
  if (Number.isInteger(profileId) && profileId > 0) {
@@ -1399,6 +1473,7 @@ exports.CourseStructureService = CourseStructureService = CourseStructureService
1399
1473
  core_1.FileService,
1400
1474
  instructor_service_1.InstructorService,
1401
1475
  course_operations_integration_service_1.CourseOperationsIntegrationService,
1402
- queue_1.QueueJobService])
1476
+ queue_1.QueueJobService,
1477
+ course_video_hls_service_1.CourseVideoHlsService])
1403
1478
  ], CourseStructureService);
1404
1479
  //# sourceMappingURL=course-structure.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"course-structure.service.js","sourceRoot":"","sources":["../../src/course/course-structure.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"course-structure.service.js","sourceRoot":"","sources":["../../src/course/course-structure.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ import { PrismaService } from '@hed-hog/api-prisma';
2
+ import { FileService, SettingService } from '@hed-hog/core';
3
+ import { DatabaseQueueProvider, IJobHandler, QueueHandlerRegistry } from '@hed-hog/queue';
4
+ import { AgentRuntimeService } from '@hed-hog/agent';
5
+ import { OnModuleInit } from '@nestjs/common';
6
+ import { CourseVideoHlsService } from './course-video-hls.service';
7
+ export declare const VIDEO_PROCESSING_AGENT_SLUG = "lms-video-processing";
8
+ export declare const LMS_AUDIO_EXTRACT_JOB = "lms.audio.extract";
9
+ export declare const LMS_AUDIO_SPLIT_JOB = "lms.audio.split";
10
+ export declare const LMS_AUDIO_TRANSCRIBE_CHUNKS_JOB = "lms.audio.transcribe.chunks";
11
+ export declare const LMS_TRANSCRIPTION_SAVE_JOB = "lms.transcription.save";
12
+ type JobInput = {
13
+ id: number;
14
+ type: string;
15
+ queue_name: string;
16
+ payload: Record<string, any>;
17
+ attempts: number;
18
+ max_attempts: number;
19
+ };
20
+ /**
21
+ * Decomposed, queue-backed steps of the LMS video transcription pipeline, orchestrated by the
22
+ * seeded `lms-video-processing` agent flow via `tool.queue_dispatch` (dispatch-and-wait).
23
+ *
24
+ * Each step is its own job so it is visible both in the queue dashboard and the agent run
25
+ * timeline. Intermediates are persisted (audio + chunk + transcript files) and only small
26
+ * file-id references travel through the agent state between steps. The existing monolithic
27
+ * `lms.audio.transcribe` job and legacy paths are left untouched.
28
+ */
29
+ export declare class CourseVideoAgentPipelineService implements OnModuleInit, IJobHandler {
30
+ private readonly prisma;
31
+ private readonly fileService;
32
+ private readonly settingService;
33
+ private readonly registry;
34
+ private readonly dbQueue;
35
+ private readonly agentRuntime;
36
+ private readonly hlsService;
37
+ private readonly logger;
38
+ constructor(prisma: PrismaService, fileService: FileService, settingService: SettingService, registry: QueueHandlerRegistry, dbQueue: DatabaseQueueProvider, agentRuntime: AgentRuntimeService, hlsService: CourseVideoHlsService);
39
+ private get db();
40
+ onModuleInit(): void;
41
+ /**
42
+ * Validates the lesson/original, registers the `video_original` file, and starts the seeded
43
+ * `lms-video-processing` agent run (async). Falls back to the legacy monolithic HLS pipeline
44
+ * when the agent flow is not seeded yet, so the feature degrades gracefully during rollout.
45
+ */
46
+ startProcessing(params: {
47
+ userId: number;
48
+ courseId: number;
49
+ sessionId: number;
50
+ lessonId: number;
51
+ originalFileId: number;
52
+ }): Promise<{
53
+ agentRunId: number | null;
54
+ status: string;
55
+ }>;
56
+ handle(job: JobInput): Promise<any>;
57
+ /** Step: extract a 16 kHz mono mp3 from the original video and persist it as lesson_audio. */
58
+ private handleExtract;
59
+ /** Step: split the lesson audio into 60s chunks, uploaded to a staging prefix. */
60
+ private handleSplit;
61
+ /** Step: transcribe each chunk via OpenAI Whisper and persist the merged transcript JSON. */
62
+ private handleTranscribeChunks;
63
+ /** Step: join + persist the transcript segments and trigger XP calculation. */
64
+ private handleSave;
65
+ private parseIdArray;
66
+ private resolveOpenAiKey;
67
+ private triggerXpCalculation;
68
+ }
69
+ export {};
70
+ //# sourceMappingURL=course-video-agent-pipeline.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"course-video-agent-pipeline.service.d.ts","sourceRoot":"","sources":["../../src/course/course-video-agent-pipeline.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAgC,WAAW,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC1F,OAAO,EACL,qBAAqB,EACrB,WAAW,EAEX,oBAAoB,EACrB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAA8B,YAAY,EAAc,MAAM,gBAAgB,CAAC;AAOtF,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAKnE,eAAO,MAAM,2BAA2B,yBAAyB,CAAC;AAElE,eAAO,MAAM,qBAAqB,sBAAsB,CAAC;AACzD,eAAO,MAAM,mBAAmB,oBAAoB,CAAC;AACrD,eAAO,MAAM,+BAA+B,gCAAgC,CAAC;AAC7E,eAAO,MAAM,0BAA0B,2BAA2B,CAAC;AAInE,KAAK,QAAQ,GAAG;IACd,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;;;;;;GAQG;AACH,qBACa,+BAAgC,YAAW,YAAY,EAAE,WAAW;IAK7E,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAE5B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAEzB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAExB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAE7B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAhB7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoD;gBAIxD,MAAM,EAAE,aAAa,EAErB,WAAW,EAAE,WAAW,EAExB,cAAc,EAAE,cAAc,EAE9B,QAAQ,EAAE,oBAAoB,EAE9B,OAAO,EAAE,qBAAqB,EAE9B,YAAY,EAAE,mBAAmB,EAEjC,UAAU,EAAE,qBAAqB;IAGpD,OAAO,KAAK,EAAE,GAEb;IAED,YAAY;IAgBZ;;;;OAIG;IACG,eAAe,CAAC,MAAM,EAAE;QAC5B,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,cAAc,EAAE,MAAM,CAAC;KACxB,GAAG,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAsDpD,MAAM,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;IAezC,8FAA8F;YAChF,aAAa;IAwD3B,kFAAkF;YACpE,WAAW;IAgDzB,6FAA6F;YAC/E,sBAAsB;IA2EpC,+EAA+E;YACjE,UAAU;IAyCxB,OAAO,CAAC,YAAY;YAaN,gBAAgB;YAqBhB,oBAAoB;CA2CnC"}