@hed-hog/lms 0.0.304 → 0.0.306

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 (458) hide show
  1. package/README.md +413 -401
  2. package/dist/certificate/certificate.controller.d.ts +90 -0
  3. package/dist/certificate/certificate.controller.d.ts.map +1 -0
  4. package/dist/certificate/certificate.controller.js +121 -0
  5. package/dist/certificate/certificate.controller.js.map +1 -0
  6. package/dist/certificate/certificate.module.d.ts +3 -0
  7. package/dist/certificate/certificate.module.d.ts.map +1 -0
  8. package/dist/certificate/certificate.module.js +26 -0
  9. package/dist/certificate/certificate.module.js.map +1 -0
  10. package/dist/certificate/certificate.service.d.ts +115 -0
  11. package/dist/certificate/certificate.service.d.ts.map +1 -0
  12. package/dist/certificate/certificate.service.js +343 -0
  13. package/dist/certificate/certificate.service.js.map +1 -0
  14. package/dist/certificate/dto/create-certificate-template.dto.d.ts +8 -0
  15. package/dist/certificate/dto/create-certificate-template.dto.d.ts.map +1 -0
  16. package/dist/certificate/dto/create-certificate-template.dto.js +44 -0
  17. package/dist/certificate/dto/create-certificate-template.dto.js.map +1 -0
  18. package/dist/certificate/dto/update-certificate-template.dto.d.ts +6 -0
  19. package/dist/certificate/dto/update-certificate-template.dto.d.ts.map +1 -0
  20. package/dist/certificate/dto/update-certificate-template.dto.js +9 -0
  21. package/dist/certificate/dto/update-certificate-template.dto.js.map +1 -0
  22. package/dist/class-group/class-group.controller.d.ts +305 -0
  23. package/dist/class-group/class-group.controller.d.ts.map +1 -0
  24. package/dist/class-group/class-group.controller.js +257 -0
  25. package/dist/class-group/class-group.controller.js.map +1 -0
  26. package/dist/class-group/class-group.module.d.ts +3 -0
  27. package/dist/class-group/class-group.module.d.ts.map +1 -0
  28. package/dist/class-group/class-group.module.js +25 -0
  29. package/dist/class-group/class-group.module.js.map +1 -0
  30. package/dist/class-group/class-group.service.d.ts +354 -0
  31. package/dist/class-group/class-group.service.d.ts.map +1 -0
  32. package/dist/class-group/class-group.service.js +1356 -0
  33. package/dist/class-group/class-group.service.js.map +1 -0
  34. package/dist/class-group/dto/create-class-group.dto.d.ts +33 -0
  35. package/dist/class-group/dto/create-class-group.dto.d.ts.map +1 -0
  36. package/dist/class-group/dto/create-class-group.dto.js +165 -0
  37. package/dist/class-group/dto/create-class-group.dto.js.map +1 -0
  38. package/dist/class-group/dto/create-session.dto.d.ts +22 -0
  39. package/dist/class-group/dto/create-session.dto.d.ts.map +1 -0
  40. package/dist/class-group/dto/create-session.dto.js +117 -0
  41. package/dist/class-group/dto/create-session.dto.js.map +1 -0
  42. package/dist/class-group/dto/enrollment.dto.d.ts +22 -0
  43. package/dist/class-group/dto/enrollment.dto.d.ts.map +1 -0
  44. package/dist/class-group/dto/enrollment.dto.js +89 -0
  45. package/dist/class-group/dto/enrollment.dto.js.map +1 -0
  46. package/dist/class-group/dto/update-class-group.dto.d.ts +6 -0
  47. package/dist/class-group/dto/update-class-group.dto.d.ts.map +1 -0
  48. package/dist/class-group/dto/update-class-group.dto.js +9 -0
  49. package/dist/class-group/dto/update-class-group.dto.js.map +1 -0
  50. package/dist/class-group/dto/update-session.dto.d.ts +7 -0
  51. package/dist/class-group/dto/update-session.dto.d.ts.map +1 -0
  52. package/dist/class-group/dto/update-session.dto.js +24 -0
  53. package/dist/class-group/dto/update-session.dto.js.map +1 -0
  54. package/dist/course/course-structure.controller.d.ts +127 -0
  55. package/dist/course/course-structure.controller.d.ts.map +1 -0
  56. package/dist/course/course-structure.controller.js +115 -0
  57. package/dist/course/course-structure.controller.js.map +1 -0
  58. package/dist/course/course-structure.service.d.ts +142 -0
  59. package/dist/course/course-structure.service.d.ts.map +1 -0
  60. package/dist/course/course-structure.service.js +445 -0
  61. package/dist/course/course-structure.service.js.map +1 -0
  62. package/dist/course/course.controller.d.ts +195 -0
  63. package/dist/course/course.controller.d.ts.map +1 -0
  64. package/dist/course/course.controller.js +104 -0
  65. package/dist/course/course.controller.js.map +1 -0
  66. package/dist/course/course.module.d.ts +3 -0
  67. package/dist/course/course.module.d.ts.map +1 -0
  68. package/dist/course/course.module.js +28 -0
  69. package/dist/course/course.module.js.map +1 -0
  70. package/dist/course/course.service.d.ts +215 -0
  71. package/dist/course/course.service.d.ts.map +1 -0
  72. package/dist/course/course.service.js +743 -0
  73. package/dist/course/course.service.js.map +1 -0
  74. package/dist/course/dto/create-course-structure-lesson.dto.d.ts +24 -0
  75. package/dist/course/dto/create-course-structure-lesson.dto.d.ts.map +1 -0
  76. package/dist/course/dto/create-course-structure-lesson.dto.js +118 -0
  77. package/dist/course/dto/create-course-structure-lesson.dto.js.map +1 -0
  78. package/dist/course/dto/create-course-structure-session.dto.d.ts +7 -0
  79. package/dist/course/dto/create-course-structure-session.dto.d.ts.map +1 -0
  80. package/dist/course/dto/create-course-structure-session.dto.js +40 -0
  81. package/dist/course/dto/create-course-structure-session.dto.js.map +1 -0
  82. package/dist/course/dto/create-course.dto.d.ts +26 -0
  83. package/dist/course/dto/create-course.dto.d.ts.map +1 -0
  84. package/dist/course/dto/create-course.dto.js +138 -0
  85. package/dist/course/dto/create-course.dto.js.map +1 -0
  86. package/dist/course/dto/update-course-structure-lesson.dto.d.ts +6 -0
  87. package/dist/course/dto/update-course-structure-lesson.dto.d.ts.map +1 -0
  88. package/dist/course/dto/update-course-structure-lesson.dto.js +9 -0
  89. package/dist/course/dto/update-course-structure-lesson.dto.js.map +1 -0
  90. package/dist/course/dto/update-course-structure-session.dto.d.ts +6 -0
  91. package/dist/course/dto/update-course-structure-session.dto.d.ts.map +1 -0
  92. package/dist/course/dto/update-course-structure-session.dto.js +9 -0
  93. package/dist/course/dto/update-course-structure-session.dto.js.map +1 -0
  94. package/dist/course/dto/update-course.dto.d.ts +6 -0
  95. package/dist/course/dto/update-course.dto.d.ts.map +1 -0
  96. package/dist/course/dto/update-course.dto.js +9 -0
  97. package/dist/course/dto/update-course.dto.js.map +1 -0
  98. package/dist/dashboard/dashboard.controller.d.ts +101 -0
  99. package/dist/dashboard/dashboard.controller.d.ts.map +1 -0
  100. package/dist/dashboard/dashboard.controller.js +40 -0
  101. package/dist/dashboard/dashboard.controller.js.map +1 -0
  102. package/dist/dashboard/dashboard.module.d.ts +3 -0
  103. package/dist/dashboard/dashboard.module.d.ts.map +1 -0
  104. package/dist/dashboard/dashboard.module.js +25 -0
  105. package/dist/dashboard/dashboard.module.js.map +1 -0
  106. package/dist/dashboard/dashboard.service.d.ts +130 -0
  107. package/dist/dashboard/dashboard.service.d.ts.map +1 -0
  108. package/dist/dashboard/dashboard.service.js +626 -0
  109. package/dist/dashboard/dashboard.service.js.map +1 -0
  110. package/dist/enterprise/dto/add-enterprise-class-group.dto.d.ts +4 -0
  111. package/dist/enterprise/dto/add-enterprise-class-group.dto.d.ts.map +1 -0
  112. package/dist/enterprise/dto/add-enterprise-class-group.dto.js +22 -0
  113. package/dist/enterprise/dto/add-enterprise-class-group.dto.js.map +1 -0
  114. package/dist/enterprise/dto/add-enterprise-course.dto.d.ts +5 -0
  115. package/dist/enterprise/dto/add-enterprise-course.dto.d.ts.map +1 -0
  116. package/dist/enterprise/dto/add-enterprise-course.dto.js +27 -0
  117. package/dist/enterprise/dto/add-enterprise-course.dto.js.map +1 -0
  118. package/dist/enterprise/dto/add-enterprise-student.dto.d.ts +5 -0
  119. package/dist/enterprise/dto/add-enterprise-student.dto.d.ts.map +1 -0
  120. package/dist/enterprise/dto/add-enterprise-student.dto.js +27 -0
  121. package/dist/enterprise/dto/add-enterprise-student.dto.js.map +1 -0
  122. package/dist/enterprise/dto/add-enterprise-user.dto.d.ts +7 -0
  123. package/dist/enterprise/dto/add-enterprise-user.dto.d.ts.map +1 -0
  124. package/dist/enterprise/dto/add-enterprise-user.dto.js +36 -0
  125. package/dist/enterprise/dto/add-enterprise-user.dto.js.map +1 -0
  126. package/dist/enterprise/dto/create-enterprise.dto.d.ts +10 -0
  127. package/dist/enterprise/dto/create-enterprise.dto.d.ts.map +1 -0
  128. package/dist/enterprise/dto/create-enterprise.dto.js +54 -0
  129. package/dist/enterprise/dto/create-enterprise.dto.js.map +1 -0
  130. package/dist/enterprise/dto/update-enterprise-student.dto.d.ts +4 -0
  131. package/dist/enterprise/dto/update-enterprise-student.dto.d.ts.map +1 -0
  132. package/dist/enterprise/dto/update-enterprise-student.dto.js +22 -0
  133. package/dist/enterprise/dto/update-enterprise-student.dto.js.map +1 -0
  134. package/dist/enterprise/dto/update-enterprise-user.dto.d.ts +5 -0
  135. package/dist/enterprise/dto/update-enterprise-user.dto.d.ts.map +1 -0
  136. package/dist/enterprise/dto/update-enterprise-user.dto.js +27 -0
  137. package/dist/enterprise/dto/update-enterprise-user.dto.js.map +1 -0
  138. package/dist/enterprise/dto/update-enterprise.dto.d.ts +6 -0
  139. package/dist/enterprise/dto/update-enterprise.dto.d.ts.map +1 -0
  140. package/dist/enterprise/dto/update-enterprise.dto.js +9 -0
  141. package/dist/enterprise/dto/update-enterprise.dto.js.map +1 -0
  142. package/dist/enterprise/enterprise.controller.d.ts +269 -0
  143. package/dist/enterprise/enterprise.controller.d.ts.map +1 -0
  144. package/dist/enterprise/enterprise.controller.js +311 -0
  145. package/dist/enterprise/enterprise.controller.js.map +1 -0
  146. package/dist/enterprise/enterprise.module.d.ts +3 -0
  147. package/dist/enterprise/enterprise.module.d.ts.map +1 -0
  148. package/dist/enterprise/enterprise.module.js +25 -0
  149. package/dist/enterprise/enterprise.module.js.map +1 -0
  150. package/dist/enterprise/enterprise.service.d.ts +282 -0
  151. package/dist/enterprise/enterprise.service.d.ts.map +1 -0
  152. package/dist/enterprise/enterprise.service.js +627 -0
  153. package/dist/enterprise/enterprise.service.js.map +1 -0
  154. package/dist/evaluation/evaluation.controller.d.ts +56 -0
  155. package/dist/evaluation/evaluation.controller.d.ts.map +1 -0
  156. package/dist/evaluation/evaluation.controller.js +76 -0
  157. package/dist/evaluation/evaluation.controller.js.map +1 -0
  158. package/dist/evaluation/evaluation.module.d.ts +3 -0
  159. package/dist/evaluation/evaluation.module.d.ts.map +1 -0
  160. package/dist/evaluation/evaluation.module.js +25 -0
  161. package/dist/evaluation/evaluation.module.js.map +1 -0
  162. package/dist/evaluation/evaluation.service.d.ts +67 -0
  163. package/dist/evaluation/evaluation.service.d.ts.map +1 -0
  164. package/dist/evaluation/evaluation.service.js +378 -0
  165. package/dist/evaluation/evaluation.service.js.map +1 -0
  166. package/dist/exam/dto/create-exam-question.dto.d.ts +25 -0
  167. package/dist/exam/dto/create-exam-question.dto.d.ts.map +1 -0
  168. package/dist/exam/dto/create-exam-question.dto.js +117 -0
  169. package/dist/exam/dto/create-exam-question.dto.js.map +1 -0
  170. package/dist/exam/dto/create-exam.dto.d.ts +11 -0
  171. package/dist/exam/dto/create-exam.dto.d.ts.map +1 -0
  172. package/dist/exam/dto/create-exam.dto.js +63 -0
  173. package/dist/exam/dto/create-exam.dto.js.map +1 -0
  174. package/dist/exam/dto/reorder-exam-questions.dto.d.ts +4 -0
  175. package/dist/exam/dto/reorder-exam-questions.dto.d.ts.map +1 -0
  176. package/dist/exam/dto/reorder-exam-questions.dto.js +23 -0
  177. package/dist/exam/dto/reorder-exam-questions.dto.js.map +1 -0
  178. package/dist/exam/dto/save-exam-attempt-answers.dto.d.ts +14 -0
  179. package/dist/exam/dto/save-exam-attempt-answers.dto.d.ts.map +1 -0
  180. package/dist/exam/dto/save-exam-attempt-answers.dto.js +68 -0
  181. package/dist/exam/dto/save-exam-attempt-answers.dto.js.map +1 -0
  182. package/dist/exam/dto/start-exam-attempt.dto.d.ts +4 -0
  183. package/dist/exam/dto/start-exam-attempt.dto.d.ts.map +1 -0
  184. package/dist/exam/dto/start-exam-attempt.dto.js +23 -0
  185. package/dist/exam/dto/start-exam-attempt.dto.js.map +1 -0
  186. package/dist/exam/dto/submit-exam-attempt.dto.d.ts +5 -0
  187. package/dist/exam/dto/submit-exam-attempt.dto.d.ts.map +1 -0
  188. package/dist/exam/dto/submit-exam-attempt.dto.js +23 -0
  189. package/dist/exam/dto/submit-exam-attempt.dto.js.map +1 -0
  190. package/dist/exam/dto/update-exam-question.dto.d.ts +6 -0
  191. package/dist/exam/dto/update-exam-question.dto.d.ts.map +1 -0
  192. package/dist/exam/dto/update-exam-question.dto.js +9 -0
  193. package/dist/exam/dto/update-exam-question.dto.js.map +1 -0
  194. package/dist/exam/dto/update-exam.dto.d.ts +6 -0
  195. package/dist/exam/dto/update-exam.dto.d.ts.map +1 -0
  196. package/dist/exam/dto/update-exam.dto.js +9 -0
  197. package/dist/exam/dto/update-exam.dto.js.map +1 -0
  198. package/dist/exam/exam-attempt.controller.d.ts +273 -0
  199. package/dist/exam/exam-attempt.controller.d.ts.map +1 -0
  200. package/dist/exam/exam-attempt.controller.js +84 -0
  201. package/dist/exam/exam-attempt.controller.js.map +1 -0
  202. package/dist/exam/exam-attempt.service.d.ts +302 -0
  203. package/dist/exam/exam-attempt.service.d.ts.map +1 -0
  204. package/dist/exam/exam-attempt.service.js +776 -0
  205. package/dist/exam/exam-attempt.service.js.map +1 -0
  206. package/dist/exam/exam.controller.d.ts +162 -0
  207. package/dist/exam/exam.controller.d.ts.map +1 -0
  208. package/dist/exam/exam.controller.js +158 -0
  209. package/dist/exam/exam.controller.js.map +1 -0
  210. package/dist/exam/exam.module.d.ts +3 -0
  211. package/dist/exam/exam.module.d.ts.map +1 -0
  212. package/dist/exam/exam.module.js +27 -0
  213. package/dist/exam/exam.module.js.map +1 -0
  214. package/dist/exam/exam.service.d.ts +179 -0
  215. package/dist/exam/exam.service.d.ts.map +1 -0
  216. package/dist/exam/exam.service.js +597 -0
  217. package/dist/exam/exam.service.js.map +1 -0
  218. package/dist/index.d.ts +28 -0
  219. package/dist/index.d.ts.map +1 -1
  220. package/dist/index.js +28 -0
  221. package/dist/index.js.map +1 -1
  222. package/dist/instructor/dto/create-instructor.dto.d.ts +10 -0
  223. package/dist/instructor/dto/create-instructor.dto.d.ts.map +1 -0
  224. package/dist/instructor/dto/create-instructor.dto.js +55 -0
  225. package/dist/instructor/dto/create-instructor.dto.js.map +1 -0
  226. package/dist/instructor/dto/update-instructor.dto.d.ts +9 -0
  227. package/dist/instructor/dto/update-instructor.dto.d.ts.map +1 -0
  228. package/dist/instructor/dto/update-instructor.dto.js +51 -0
  229. package/dist/instructor/dto/update-instructor.dto.js.map +1 -0
  230. package/dist/instructor/instructor.controller.d.ts +52 -0
  231. package/dist/instructor/instructor.controller.d.ts.map +1 -0
  232. package/dist/instructor/instructor.controller.js +98 -0
  233. package/dist/instructor/instructor.controller.js.map +1 -0
  234. package/dist/instructor/instructor.module.d.ts +3 -0
  235. package/dist/instructor/instructor.module.d.ts.map +1 -0
  236. package/dist/instructor/instructor.module.js +25 -0
  237. package/dist/instructor/instructor.module.js.map +1 -0
  238. package/dist/instructor/instructor.service.d.ts +79 -0
  239. package/dist/instructor/instructor.service.d.ts.map +1 -0
  240. package/dist/instructor/instructor.service.js +528 -0
  241. package/dist/instructor/instructor.service.js.map +1 -0
  242. package/dist/lms.module.d.ts.map +1 -1
  243. package/dist/lms.module.js +36 -4
  244. package/dist/lms.module.js.map +1 -1
  245. package/dist/reports/reports.controller.d.ts +69 -0
  246. package/dist/reports/reports.controller.d.ts.map +1 -0
  247. package/dist/reports/reports.controller.js +40 -0
  248. package/dist/reports/reports.controller.js.map +1 -0
  249. package/dist/reports/reports.module.d.ts +3 -0
  250. package/dist/reports/reports.module.d.ts.map +1 -0
  251. package/dist/reports/reports.module.js +25 -0
  252. package/dist/reports/reports.module.js.map +1 -0
  253. package/dist/reports/reports.service.d.ts +80 -0
  254. package/dist/reports/reports.service.d.ts.map +1 -0
  255. package/dist/reports/reports.service.js +366 -0
  256. package/dist/reports/reports.service.js.map +1 -0
  257. package/dist/training/dto/create-training.dto.d.ts +19 -0
  258. package/dist/training/dto/create-training.dto.d.ts.map +1 -0
  259. package/dist/training/dto/create-training.dto.js +98 -0
  260. package/dist/training/dto/create-training.dto.js.map +1 -0
  261. package/dist/training/dto/update-training.dto.d.ts +6 -0
  262. package/dist/training/dto/update-training.dto.d.ts.map +1 -0
  263. package/dist/training/dto/update-training.dto.js +9 -0
  264. package/dist/training/dto/update-training.dto.js.map +1 -0
  265. package/dist/training/training.controller.d.ts +195 -0
  266. package/dist/training/training.controller.d.ts.map +1 -0
  267. package/dist/training/training.controller.js +104 -0
  268. package/dist/training/training.controller.js.map +1 -0
  269. package/dist/training/training.module.d.ts +3 -0
  270. package/dist/training/training.module.d.ts.map +1 -0
  271. package/dist/training/training.module.js +25 -0
  272. package/dist/training/training.module.js.map +1 -0
  273. package/dist/training/training.service.d.ts +213 -0
  274. package/dist/training/training.service.d.ts.map +1 -0
  275. package/dist/training/training.service.js +497 -0
  276. package/dist/training/training.service.js.map +1 -0
  277. package/hedhog/data/dashboard.yaml +6 -0
  278. package/hedhog/data/dashboard_component.yaml +153 -0
  279. package/hedhog/data/dashboard_component_role.yaml +97 -0
  280. package/hedhog/data/dashboard_item.yaml +167 -0
  281. package/hedhog/data/dashboard_role.yaml +6 -0
  282. package/hedhog/data/instructor_qualification.yaml +16 -0
  283. package/hedhog/data/menu.yaml +129 -19
  284. package/hedhog/data/role.yaml +25 -1
  285. package/hedhog/data/route.yaml +867 -0
  286. package/hedhog/frontend/app/_components/class-form-sheet.tsx.ejs +1992 -0
  287. package/hedhog/frontend/app/_components/course-form-sheet.tsx.ejs +480 -0
  288. package/hedhog/frontend/app/_components/create-lms-instructor-sheet.tsx.ejs +591 -0
  289. package/hedhog/frontend/app/_components/create-lms-person-sheet.tsx.ejs +164 -0
  290. package/hedhog/frontend/app/_components/create-lms-student-person-sheet.tsx.ejs +120 -0
  291. package/hedhog/frontend/app/_components/lms-class-calendar.tsx.ejs +272 -0
  292. package/hedhog/frontend/app/_components/mobile-calendar.tsx.ejs +277 -0
  293. package/hedhog/frontend/app/_lib/editor/canvasInstance.ts.ejs +48 -0
  294. package/hedhog/frontend/app/_lib/editor/pctHelpers.ts.ejs +50 -0
  295. package/hedhog/frontend/app/_lib/editor/templateSerializer.ts.ejs +268 -0
  296. package/hedhog/frontend/app/_lib/editor/types.ts.ejs +94 -0
  297. package/hedhog/frontend/app/_lib/store/useTemplateStore.ts.ejs +284 -0
  298. package/hedhog/frontend/app/certificates/issued/page.tsx.ejs +638 -0
  299. package/hedhog/frontend/app/certificates/models/CanvasStage.tsx.ejs +916 -0
  300. package/hedhog/frontend/app/certificates/models/LeftPanel.tsx.ejs +200 -0
  301. package/hedhog/frontend/app/certificates/models/RightPanel.tsx.ejs +769 -0
  302. package/hedhog/frontend/app/certificates/models/TemplateEditorPage.tsx.ejs +104 -0
  303. package/hedhog/frontend/app/certificates/models/TopBar.tsx.ejs +354 -0
  304. package/hedhog/frontend/app/certificates/models/editor/page.tsx.ejs +5 -0
  305. package/hedhog/frontend/app/certificates/models/page.tsx.ejs +883 -0
  306. package/hedhog/frontend/app/classes/[id]/_components/event-summary-popover.tsx.ejs +279 -0
  307. package/hedhog/frontend/app/classes/[id]/_components/quick-create-session-popover.tsx.ejs +1027 -0
  308. package/hedhog/frontend/app/classes/[id]/page.tsx.ejs +3130 -993
  309. package/hedhog/frontend/app/classes/page.tsx.ejs +2731 -759
  310. package/hedhog/frontend/app/courses/[id]/_components/CourseCertificateCard.tsx.ejs +80 -0
  311. package/hedhog/frontend/app/courses/[id]/_components/CourseClassificationCard.tsx.ejs +226 -0
  312. package/hedhog/frontend/app/courses/[id]/_components/CourseContentCard.tsx.ejs +71 -0
  313. package/hedhog/frontend/app/courses/[id]/_components/CourseDangerZoneCard.tsx.ejs +42 -0
  314. package/hedhog/frontend/app/courses/[id]/_components/CourseFlagsCard.tsx.ejs +111 -0
  315. package/hedhog/frontend/app/courses/[id]/_components/CourseMainInfoCard.tsx.ejs +113 -0
  316. package/hedhog/frontend/app/courses/[id]/_components/CourseMediaCard.tsx.ejs +215 -0
  317. package/hedhog/frontend/app/courses/[id]/_components/CourseMultiEntityPicker.tsx.ejs +236 -0
  318. package/hedhog/frontend/app/courses/[id]/_components/CourseRelationsCard.tsx.ejs +141 -0
  319. package/hedhog/frontend/app/courses/[id]/_components/CourseSectionCard.tsx.ejs +57 -0
  320. package/hedhog/frontend/app/courses/[id]/_components/CourseSummaryCard.tsx.ejs +60 -0
  321. package/hedhog/frontend/app/courses/[id]/_components/course-edit-types.ts.ejs +33 -0
  322. package/hedhog/frontend/app/courses/[id]/page.tsx.ejs +933 -1103
  323. package/hedhog/frontend/app/courses/[id]/structure/page.tsx.ejs +699 -117
  324. package/hedhog/frontend/app/courses/page.tsx.ejs +1018 -1042
  325. package/hedhog/frontend/app/enterprise/[id]/page.tsx.ejs +317 -0
  326. package/hedhog/frontend/app/enterprise/_components/enterprise-activity-panel.tsx.ejs +88 -0
  327. package/hedhog/frontend/app/enterprise/_components/enterprise-admin-create-sheet.tsx.ejs +318 -0
  328. package/hedhog/frontend/app/enterprise/_components/enterprise-administrators-tab.tsx.ejs +332 -0
  329. package/hedhog/frontend/app/enterprise/_components/enterprise-class-create-sheet.tsx.ejs +58 -0
  330. package/hedhog/frontend/app/enterprise/_components/enterprise-classes-tab.tsx.ejs +390 -0
  331. package/hedhog/frontend/app/enterprise/_components/enterprise-company-identity-card.tsx.ejs +112 -0
  332. package/hedhog/frontend/app/enterprise/_components/enterprise-course-create-sheet.tsx.ejs +183 -0
  333. package/hedhog/frontend/app/enterprise/_components/enterprise-courses-tab.tsx.ejs +363 -0
  334. package/hedhog/frontend/app/enterprise/_components/enterprise-detail-constants.ts.ejs +88 -0
  335. package/hedhog/frontend/app/enterprise/_components/enterprise-detail-sheet.tsx.ejs +548 -0
  336. package/hedhog/frontend/app/enterprise/_components/enterprise-detail-utils.ts.ejs +33 -0
  337. package/hedhog/frontend/app/enterprise/_components/enterprise-mocks.ts.ejs +277 -0
  338. package/hedhog/frontend/app/enterprise/_components/enterprise-person-picker.ts.ejs +31 -0
  339. package/hedhog/frontend/app/enterprise/_components/enterprise-progress-bar.tsx.ejs +21 -0
  340. package/hedhog/frontend/app/enterprise/_components/enterprise-related-tab.tsx.ejs +224 -0
  341. package/hedhog/frontend/app/enterprise/_components/enterprise-sheet.tsx.ejs +397 -0
  342. package/hedhog/frontend/app/enterprise/_components/enterprise-student-create-sheet.tsx.ejs +167 -0
  343. package/hedhog/frontend/app/enterprise/_components/enterprise-students-tab.tsx.ejs +267 -0
  344. package/hedhog/frontend/app/enterprise/_components/enterprise-system-user-picker.ts.ejs +42 -0
  345. package/hedhog/frontend/app/enterprise/_components/enterprise-types.ts.ejs +96 -0
  346. package/hedhog/frontend/app/enterprise/_components/enterprise-user-create-sheet.tsx.ejs +207 -0
  347. package/hedhog/frontend/app/enterprise/_components/enterprise-user-distribution-chart.tsx.ejs +149 -0
  348. package/hedhog/frontend/app/enterprise/page.tsx.ejs +596 -0
  349. package/hedhog/frontend/app/evaluations/page.tsx.ejs +1250 -0
  350. package/hedhog/frontend/app/exams/[id]/attempt/page.tsx.ejs +642 -196
  351. package/hedhog/frontend/app/exams/[id]/page.tsx.ejs +11 -0
  352. package/hedhog/frontend/app/exams/[id]/questions/page.tsx.ejs +1316 -436
  353. package/hedhog/frontend/app/exams/page.tsx.ejs +799 -546
  354. package/hedhog/frontend/app/layout.tsx.ejs +5 -0
  355. package/hedhog/frontend/app/page.tsx.ejs +3 -1220
  356. package/hedhog/frontend/app/reports/courses/page.tsx.ejs +843 -0
  357. package/hedhog/frontend/app/reports/dashboard/page.tsx.ejs +890 -0
  358. package/hedhog/frontend/app/reports/page.tsx.ejs +802 -808
  359. package/hedhog/frontend/app/reports/students/page.tsx.ejs +772 -0
  360. package/hedhog/frontend/app/training/page.tsx.ejs +1873 -628
  361. package/hedhog/frontend/messages/en.json +1606 -111
  362. package/hedhog/frontend/messages/pt.json +1636 -134
  363. package/hedhog/frontend/widgets/active-classes-kpi.tsx.ejs +74 -0
  364. package/hedhog/frontend/widgets/active-courses-kpi.tsx.ejs +74 -0
  365. package/hedhog/frontend/widgets/approval-rate-kpi.tsx.ejs +81 -0
  366. package/hedhog/frontend/widgets/category-distribution-chart.tsx.ejs +119 -0
  367. package/hedhog/frontend/widgets/class-calendar.tsx.ejs +440 -0
  368. package/hedhog/frontend/widgets/completion-rate-kpi.tsx.ejs +81 -0
  369. package/hedhog/frontend/widgets/engagement-chart.tsx.ejs +120 -0
  370. package/hedhog/frontend/widgets/footer-summary.tsx.ejs +80 -0
  371. package/hedhog/frontend/widgets/issued-certificates-kpi.tsx.ejs +74 -0
  372. package/hedhog/frontend/widgets/latest-enrollments.tsx.ejs +166 -0
  373. package/hedhog/frontend/widgets/student-growth-chart.tsx.ejs +89 -0
  374. package/hedhog/frontend/widgets/top-courses-chart.tsx.ejs +104 -0
  375. package/hedhog/frontend/widgets/total-students-kpi.tsx.ejs +78 -0
  376. package/hedhog/frontend/widgets/upcoming-classes.tsx.ejs +152 -0
  377. package/hedhog/table/course.yaml +19 -1
  378. package/hedhog/table/course_class_group.yaml +8 -0
  379. package/hedhog/table/course_class_session.yaml +33 -0
  380. package/hedhog/table/course_instructor.yaml +27 -0
  381. package/hedhog/table/enterprise.yaml +29 -0
  382. package/hedhog/table/enterprise_class_group.yaml +20 -0
  383. package/hedhog/table/enterprise_course.yaml +23 -0
  384. package/hedhog/table/enterprise_student.yaml +24 -0
  385. package/hedhog/table/enterprise_user.yaml +35 -0
  386. package/hedhog/table/instructor_qualification.yaml +26 -0
  387. package/hedhog/table/instructor_qualification_assignment.yaml +22 -0
  388. package/hedhog/table/question.yaml +6 -0
  389. package/package.json +6 -6
  390. package/src/certificate/certificate.controller.ts +83 -0
  391. package/src/certificate/certificate.module.ts +13 -0
  392. package/src/certificate/certificate.service.ts +413 -0
  393. package/src/certificate/dto/create-certificate-template.dto.ts +25 -0
  394. package/src/certificate/dto/update-certificate-template.dto.ts +6 -0
  395. package/src/class-group/class-group.controller.ts +189 -0
  396. package/src/class-group/class-group.module.ts +12 -0
  397. package/src/class-group/class-group.service.ts +1802 -0
  398. package/src/class-group/dto/create-class-group.dto.ts +139 -0
  399. package/src/class-group/dto/create-session.dto.ts +102 -0
  400. package/src/class-group/dto/enrollment.dto.ts +70 -0
  401. package/src/class-group/dto/update-class-group.dto.ts +4 -0
  402. package/src/class-group/dto/update-session.dto.ts +9 -0
  403. package/src/course/course-structure.controller.ts +85 -0
  404. package/src/course/course-structure.service.ts +525 -0
  405. package/src/course/course.controller.ts +69 -0
  406. package/src/course/course.module.ts +15 -0
  407. package/src/course/course.service.ts +920 -0
  408. package/src/course/dto/create-course-structure-lesson.dto.ts +97 -0
  409. package/src/course/dto/create-course-structure-session.dto.ts +22 -0
  410. package/src/course/dto/create-course.dto.ts +111 -0
  411. package/src/course/dto/update-course-structure-lesson.dto.ts +6 -0
  412. package/src/course/dto/update-course-structure-session.dto.ts +6 -0
  413. package/src/course/dto/update-course.dto.ts +4 -0
  414. package/src/dashboard/dashboard.controller.ts +14 -0
  415. package/src/dashboard/dashboard.module.ts +12 -0
  416. package/src/dashboard/dashboard.service.ts +726 -0
  417. package/src/enterprise/dto/add-enterprise-class-group.dto.ts +7 -0
  418. package/src/enterprise/dto/add-enterprise-course.dto.ts +11 -0
  419. package/src/enterprise/dto/add-enterprise-student.dto.ts +16 -0
  420. package/src/enterprise/dto/add-enterprise-user.dto.ts +23 -0
  421. package/src/enterprise/dto/create-enterprise.dto.ts +41 -0
  422. package/src/enterprise/dto/update-enterprise-student.dto.ts +7 -0
  423. package/src/enterprise/dto/update-enterprise-user.dto.ts +11 -0
  424. package/src/enterprise/dto/update-enterprise.dto.ts +4 -0
  425. package/src/enterprise/enterprise.controller.ts +233 -0
  426. package/src/enterprise/enterprise.module.ts +12 -0
  427. package/src/enterprise/enterprise.service.ts +712 -0
  428. package/src/evaluation/evaluation.controller.ts +44 -0
  429. package/src/evaluation/evaluation.module.ts +12 -0
  430. package/src/evaluation/evaluation.service.ts +394 -0
  431. package/src/exam/dto/create-exam-question.dto.ts +103 -0
  432. package/src/exam/dto/create-exam.dto.ts +41 -0
  433. package/src/exam/dto/reorder-exam-questions.dto.ts +8 -0
  434. package/src/exam/dto/save-exam-attempt-answers.dto.ts +55 -0
  435. package/src/exam/dto/start-exam-attempt.dto.ts +8 -0
  436. package/src/exam/dto/submit-exam-attempt.dto.ts +8 -0
  437. package/src/exam/dto/update-exam-question.dto.ts +4 -0
  438. package/src/exam/dto/update-exam.dto.ts +4 -0
  439. package/src/exam/exam-attempt.controller.ts +65 -0
  440. package/src/exam/exam-attempt.service.ts +1008 -0
  441. package/src/exam/exam.controller.ts +102 -0
  442. package/src/exam/exam.module.ts +14 -0
  443. package/src/exam/exam.service.ts +784 -0
  444. package/src/index.ts +29 -0
  445. package/src/instructor/dto/create-instructor.dto.ts +43 -0
  446. package/src/instructor/dto/update-instructor.dto.ts +38 -0
  447. package/src/instructor/instructor.controller.ts +73 -0
  448. package/src/instructor/instructor.module.ts +12 -0
  449. package/src/instructor/instructor.service.ts +646 -0
  450. package/src/lms.module.ts +36 -4
  451. package/src/reports/reports.controller.ts +14 -0
  452. package/src/reports/reports.module.ts +12 -0
  453. package/src/reports/reports.service.ts +485 -0
  454. package/src/training/dto/create-training.dto.ts +81 -0
  455. package/src/training/dto/update-training.dto.ts +4 -0
  456. package/src/training/training.controller.ts +68 -0
  457. package/src/training/training.module.ts +12 -0
  458. package/src/training/training.service.ts +574 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exam-attempt.service.js","sourceRoot":"","sources":["../../src/exam/exam-attempt.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,162 @@
1
+ import { CreateExamQuestionDto } from './dto/create-exam-question.dto';
2
+ import { CreateExamDto } from './dto/create-exam.dto';
3
+ import { ReorderExamQuestionsDto } from './dto/reorder-exam-questions.dto';
4
+ import { UpdateExamQuestionDto } from './dto/update-exam-question.dto';
5
+ import { UpdateExamDto } from './dto/update-exam.dto';
6
+ import { ExamService } from './exam.service';
7
+ export declare class ExamController {
8
+ private readonly examService;
9
+ constructor(examService: ExamService);
10
+ list(page?: string, pageSize?: string, search?: string, status?: string): Promise<{
11
+ total: number;
12
+ page: number;
13
+ pageSize: number;
14
+ lastPage: number;
15
+ data: {
16
+ id: any;
17
+ code: string;
18
+ title: any;
19
+ minScore: number;
20
+ timeLimit: any;
21
+ shuffle: boolean;
22
+ status: any;
23
+ questions: any;
24
+ attempts: any;
25
+ averageScore: number;
26
+ primaryColor: any;
27
+ primaryContrastColor: any;
28
+ secondaryColor: any;
29
+ secondaryContrastColor: any;
30
+ createdAt: any;
31
+ }[];
32
+ }>;
33
+ stats(): Promise<{
34
+ totalExams: number;
35
+ publishedExams: number;
36
+ totalQuestions: number;
37
+ overallAverage: number;
38
+ }>;
39
+ getById(id: number): Promise<{
40
+ id: any;
41
+ code: string;
42
+ title: any;
43
+ minScore: number;
44
+ timeLimit: any;
45
+ shuffle: boolean;
46
+ status: any;
47
+ questions: any;
48
+ attempts: any;
49
+ averageScore: number;
50
+ primaryColor: any;
51
+ primaryContrastColor: any;
52
+ secondaryColor: any;
53
+ secondaryContrastColor: any;
54
+ createdAt: any;
55
+ }>;
56
+ listQuestions(id: number): Promise<{
57
+ exam: {
58
+ id: number;
59
+ code: string;
60
+ title: string;
61
+ };
62
+ questionCount: number;
63
+ data: {
64
+ id: any;
65
+ examQuestionId: any;
66
+ order: any;
67
+ questionType: "multiple_choice" | "true_false" | "essay" | "fill_blank" | "matching";
68
+ statement: any;
69
+ points: any;
70
+ fillBlankAnswers: {
71
+ answer: string;
72
+ alternatives?: string[];
73
+ }[];
74
+ matchingPairs: {
75
+ id: string;
76
+ leftText: string;
77
+ rightText: string;
78
+ }[];
79
+ alternatives: any;
80
+ }[];
81
+ }>;
82
+ createQuestion(id: number, dto: CreateExamQuestionDto): Promise<{
83
+ id: any;
84
+ examQuestionId: any;
85
+ order: any;
86
+ questionType: "multiple_choice" | "true_false" | "essay" | "fill_blank" | "matching";
87
+ statement: any;
88
+ points: any;
89
+ fillBlankAnswers: {
90
+ answer: string;
91
+ alternatives?: string[];
92
+ }[];
93
+ matchingPairs: {
94
+ id: string;
95
+ leftText: string;
96
+ rightText: string;
97
+ }[];
98
+ alternatives: any;
99
+ }>;
100
+ updateQuestion(id: number, questionId: number, dto: UpdateExamQuestionDto): Promise<{
101
+ id: any;
102
+ examQuestionId: any;
103
+ order: any;
104
+ questionType: "multiple_choice" | "true_false" | "essay" | "fill_blank" | "matching";
105
+ statement: any;
106
+ points: any;
107
+ fillBlankAnswers: {
108
+ answer: string;
109
+ alternatives?: string[];
110
+ }[];
111
+ matchingPairs: {
112
+ id: string;
113
+ leftText: string;
114
+ rightText: string;
115
+ }[];
116
+ alternatives: any;
117
+ }>;
118
+ removeQuestion(id: number, questionId: number): Promise<{
119
+ success: boolean;
120
+ }>;
121
+ reorderQuestions(id: number, dto: ReorderExamQuestionsDto): Promise<{
122
+ success: boolean;
123
+ }>;
124
+ create(dto: CreateExamDto): Promise<{
125
+ id: any;
126
+ code: string;
127
+ title: any;
128
+ minScore: number;
129
+ timeLimit: any;
130
+ shuffle: boolean;
131
+ status: any;
132
+ questions: any;
133
+ attempts: any;
134
+ averageScore: number;
135
+ primaryColor: any;
136
+ primaryContrastColor: any;
137
+ secondaryColor: any;
138
+ secondaryContrastColor: any;
139
+ createdAt: any;
140
+ }>;
141
+ update(id: number, dto: UpdateExamDto): Promise<{
142
+ id: any;
143
+ code: string;
144
+ title: any;
145
+ minScore: number;
146
+ timeLimit: any;
147
+ shuffle: boolean;
148
+ status: any;
149
+ questions: any;
150
+ attempts: any;
151
+ averageScore: number;
152
+ primaryColor: any;
153
+ primaryContrastColor: any;
154
+ secondaryColor: any;
155
+ secondaryContrastColor: any;
156
+ createdAt: any;
157
+ }>;
158
+ remove(id: number): Promise<{
159
+ success: boolean;
160
+ }>;
161
+ }
162
+ //# sourceMappingURL=exam.controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exam.controller.d.ts","sourceRoot":"","sources":["../../src/exam/exam.controller.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAEa,cAAc;IACb,OAAO,CAAC,QAAQ,CAAC,WAAW;gBAAX,WAAW,EAAE,WAAW;IAGrD,IAAI,CACa,IAAI,CAAC,EAAE,MAAM,EACT,QAAQ,CAAC,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;IAWlC,KAAK;;;;;;IAKL,OAAO,CAA4B,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;IAK7C,aAAa,CAA4B,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;IAKnD,cAAc,CACe,EAAE,EAAE,MAAM,EAC7B,GAAG,EAAE,qBAAqB;;;;;;;;;;;;;;;;;;IAMpC,cAAc,CACe,EAAE,EAAE,MAAM,EACF,UAAU,EAAE,MAAM,EAC7C,GAAG,EAAE,qBAAqB;;;;;;;;;;;;;;;;;;IAMpC,cAAc,CACe,EAAE,EAAE,MAAM,EACF,UAAU,EAAE,MAAM;;;IAMvD,gBAAgB,CACa,EAAE,EAAE,MAAM,EAC7B,GAAG,EAAE,uBAAuB;;;IAMtC,MAAM,CAAS,GAAG,EAAE,aAAa;;;;;;;;;;;;;;;;;IAKjC,MAAM,CAA4B,EAAE,EAAE,MAAM,EAAU,GAAG,EAAE,aAAa;;;;;;;;;;;;;;;;;IAKxE,MAAM,CAA4B,EAAE,EAAE,MAAM;;;CAG7C"}
@@ -0,0 +1,158 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.ExamController = void 0;
16
+ const api_1 = require("@hed-hog/api");
17
+ const common_1 = require("@nestjs/common");
18
+ const create_exam_question_dto_1 = require("./dto/create-exam-question.dto");
19
+ const create_exam_dto_1 = require("./dto/create-exam.dto");
20
+ const reorder_exam_questions_dto_1 = require("./dto/reorder-exam-questions.dto");
21
+ const update_exam_question_dto_1 = require("./dto/update-exam-question.dto");
22
+ const update_exam_dto_1 = require("./dto/update-exam.dto");
23
+ const exam_service_1 = require("./exam.service");
24
+ let ExamController = class ExamController {
25
+ constructor(examService) {
26
+ this.examService = examService;
27
+ }
28
+ list(page, pageSize, search, status) {
29
+ return this.examService.list({
30
+ page: page ? Number(page) : 1,
31
+ pageSize: pageSize ? Number(pageSize) : 12,
32
+ search,
33
+ status,
34
+ });
35
+ }
36
+ stats() {
37
+ return this.examService.stats();
38
+ }
39
+ getById(id) {
40
+ return this.examService.getById(id);
41
+ }
42
+ listQuestions(id) {
43
+ return this.examService.listQuestions(id);
44
+ }
45
+ createQuestion(id, dto) {
46
+ return this.examService.createQuestion(id, dto);
47
+ }
48
+ updateQuestion(id, questionId, dto) {
49
+ return this.examService.updateQuestion(id, questionId, dto);
50
+ }
51
+ removeQuestion(id, questionId) {
52
+ return this.examService.removeQuestion(id, questionId);
53
+ }
54
+ reorderQuestions(id, dto) {
55
+ return this.examService.reorderQuestions(id, dto.questionIds);
56
+ }
57
+ create(dto) {
58
+ return this.examService.create(dto);
59
+ }
60
+ update(id, dto) {
61
+ return this.examService.update(id, dto);
62
+ }
63
+ remove(id) {
64
+ return this.examService.remove(id);
65
+ }
66
+ };
67
+ exports.ExamController = ExamController;
68
+ __decorate([
69
+ (0, common_1.Get)(),
70
+ __param(0, (0, common_1.Query)('page')),
71
+ __param(1, (0, common_1.Query)('pageSize')),
72
+ __param(2, (0, common_1.Query)('search')),
73
+ __param(3, (0, common_1.Query)('status')),
74
+ __metadata("design:type", Function),
75
+ __metadata("design:paramtypes", [String, String, String, String]),
76
+ __metadata("design:returntype", void 0)
77
+ ], ExamController.prototype, "list", null);
78
+ __decorate([
79
+ (0, common_1.Get)('stats'),
80
+ __metadata("design:type", Function),
81
+ __metadata("design:paramtypes", []),
82
+ __metadata("design:returntype", void 0)
83
+ ], ExamController.prototype, "stats", null);
84
+ __decorate([
85
+ (0, common_1.Get)(':id'),
86
+ __param(0, (0, common_1.Param)('id', common_1.ParseIntPipe)),
87
+ __metadata("design:type", Function),
88
+ __metadata("design:paramtypes", [Number]),
89
+ __metadata("design:returntype", void 0)
90
+ ], ExamController.prototype, "getById", null);
91
+ __decorate([
92
+ (0, common_1.Get)(':id/questions'),
93
+ __param(0, (0, common_1.Param)('id', common_1.ParseIntPipe)),
94
+ __metadata("design:type", Function),
95
+ __metadata("design:paramtypes", [Number]),
96
+ __metadata("design:returntype", void 0)
97
+ ], ExamController.prototype, "listQuestions", null);
98
+ __decorate([
99
+ (0, common_1.Post)(':id/questions'),
100
+ __param(0, (0, common_1.Param)('id', common_1.ParseIntPipe)),
101
+ __param(1, (0, common_1.Body)()),
102
+ __metadata("design:type", Function),
103
+ __metadata("design:paramtypes", [Number, create_exam_question_dto_1.CreateExamQuestionDto]),
104
+ __metadata("design:returntype", void 0)
105
+ ], ExamController.prototype, "createQuestion", null);
106
+ __decorate([
107
+ (0, common_1.Patch)(':id/questions/:questionId'),
108
+ __param(0, (0, common_1.Param)('id', common_1.ParseIntPipe)),
109
+ __param(1, (0, common_1.Param)('questionId', common_1.ParseIntPipe)),
110
+ __param(2, (0, common_1.Body)()),
111
+ __metadata("design:type", Function),
112
+ __metadata("design:paramtypes", [Number, Number, update_exam_question_dto_1.UpdateExamQuestionDto]),
113
+ __metadata("design:returntype", void 0)
114
+ ], ExamController.prototype, "updateQuestion", null);
115
+ __decorate([
116
+ (0, common_1.Delete)(':id/questions/:questionId'),
117
+ __param(0, (0, common_1.Param)('id', common_1.ParseIntPipe)),
118
+ __param(1, (0, common_1.Param)('questionId', common_1.ParseIntPipe)),
119
+ __metadata("design:type", Function),
120
+ __metadata("design:paramtypes", [Number, Number]),
121
+ __metadata("design:returntype", void 0)
122
+ ], ExamController.prototype, "removeQuestion", null);
123
+ __decorate([
124
+ (0, common_1.Patch)(':id/questions/order'),
125
+ __param(0, (0, common_1.Param)('id', common_1.ParseIntPipe)),
126
+ __param(1, (0, common_1.Body)()),
127
+ __metadata("design:type", Function),
128
+ __metadata("design:paramtypes", [Number, reorder_exam_questions_dto_1.ReorderExamQuestionsDto]),
129
+ __metadata("design:returntype", void 0)
130
+ ], ExamController.prototype, "reorderQuestions", null);
131
+ __decorate([
132
+ (0, common_1.Post)(),
133
+ __param(0, (0, common_1.Body)()),
134
+ __metadata("design:type", Function),
135
+ __metadata("design:paramtypes", [create_exam_dto_1.CreateExamDto]),
136
+ __metadata("design:returntype", void 0)
137
+ ], ExamController.prototype, "create", null);
138
+ __decorate([
139
+ (0, common_1.Patch)(':id'),
140
+ __param(0, (0, common_1.Param)('id', common_1.ParseIntPipe)),
141
+ __param(1, (0, common_1.Body)()),
142
+ __metadata("design:type", Function),
143
+ __metadata("design:paramtypes", [Number, update_exam_dto_1.UpdateExamDto]),
144
+ __metadata("design:returntype", void 0)
145
+ ], ExamController.prototype, "update", null);
146
+ __decorate([
147
+ (0, common_1.Delete)(':id'),
148
+ __param(0, (0, common_1.Param)('id', common_1.ParseIntPipe)),
149
+ __metadata("design:type", Function),
150
+ __metadata("design:paramtypes", [Number]),
151
+ __metadata("design:returntype", void 0)
152
+ ], ExamController.prototype, "remove", null);
153
+ exports.ExamController = ExamController = __decorate([
154
+ (0, api_1.Role)(),
155
+ (0, common_1.Controller)('lms/exams'),
156
+ __metadata("design:paramtypes", [exam_service_1.ExamService])
157
+ ], ExamController);
158
+ //# sourceMappingURL=exam.controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exam.controller.js","sourceRoot":"","sources":["../../src/exam/exam.controller.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare class ExamModule {
2
+ }
3
+ //# sourceMappingURL=exam.module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exam.module.d.ts","sourceRoot":"","sources":["../../src/exam/exam.module.ts"],"names":[],"mappings":"AAOA,qBAMa,UAAU;CAAG"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.ExamModule = void 0;
10
+ const api_prisma_1 = require("@hed-hog/api-prisma");
11
+ const common_1 = require("@nestjs/common");
12
+ const exam_attempt_controller_1 = require("./exam-attempt.controller");
13
+ const exam_attempt_service_1 = require("./exam-attempt.service");
14
+ const exam_controller_1 = require("./exam.controller");
15
+ const exam_service_1 = require("./exam.service");
16
+ let ExamModule = class ExamModule {
17
+ };
18
+ exports.ExamModule = ExamModule;
19
+ exports.ExamModule = ExamModule = __decorate([
20
+ (0, common_1.Module)({
21
+ imports: [(0, common_1.forwardRef)(() => api_prisma_1.PrismaModule)],
22
+ controllers: [exam_controller_1.ExamController, exam_attempt_controller_1.ExamAttemptController],
23
+ providers: [exam_service_1.ExamService, exam_attempt_service_1.ExamAttemptService],
24
+ exports: [(0, common_1.forwardRef)(() => exam_service_1.ExamService), (0, common_1.forwardRef)(() => exam_attempt_service_1.ExamAttemptService)],
25
+ })
26
+ ], ExamModule);
27
+ //# sourceMappingURL=exam.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exam.module.js","sourceRoot":"","sources":["../../src/exam/exam.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,oDAAmD;AACnD,2CAAoD;AACpD,uEAAkE;AAClE,iEAA4D;AAC5D,uDAAmD;AACnD,iDAA6C;AAQtC,IAAM,UAAU,GAAhB,MAAM,UAAU;CAAG,CAAA;AAAb,gCAAU;qBAAV,UAAU;IANtB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,yBAAY,CAAC,CAAC;QACzC,WAAW,EAAE,CAAC,gCAAc,EAAE,+CAAqB,CAAC;QACpD,SAAS,EAAE,CAAC,0BAAW,EAAE,yCAAkB,CAAC;QAC5C,OAAO,EAAE,CAAC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,0BAAW,CAAC,EAAE,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,yCAAkB,CAAC,CAAC;KAC/E,CAAC;GACW,UAAU,CAAG"}
@@ -0,0 +1,179 @@
1
+ import { PrismaService } from '@hed-hog/api-prisma';
2
+ import { CreateExamQuestionDto } from './dto/create-exam-question.dto';
3
+ import { CreateExamDto } from './dto/create-exam.dto';
4
+ import { UpdateExamQuestionDto } from './dto/update-exam-question.dto';
5
+ import { UpdateExamDto } from './dto/update-exam.dto';
6
+ export declare class ExamService {
7
+ private readonly prisma;
8
+ constructor(prisma: PrismaService);
9
+ list(params: {
10
+ page?: number;
11
+ pageSize?: number;
12
+ search?: string;
13
+ status?: string;
14
+ }): Promise<{
15
+ total: number;
16
+ page: number;
17
+ pageSize: number;
18
+ lastPage: number;
19
+ data: {
20
+ id: any;
21
+ code: string;
22
+ title: any;
23
+ minScore: number;
24
+ timeLimit: any;
25
+ shuffle: boolean;
26
+ status: any;
27
+ questions: any;
28
+ attempts: any;
29
+ averageScore: number;
30
+ primaryColor: any;
31
+ primaryContrastColor: any;
32
+ secondaryColor: any;
33
+ secondaryContrastColor: any;
34
+ createdAt: any;
35
+ }[];
36
+ }>;
37
+ stats(): Promise<{
38
+ totalExams: number;
39
+ publishedExams: number;
40
+ totalQuestions: number;
41
+ overallAverage: number;
42
+ }>;
43
+ getById(id: number): Promise<{
44
+ id: any;
45
+ code: string;
46
+ title: any;
47
+ minScore: number;
48
+ timeLimit: any;
49
+ shuffle: boolean;
50
+ status: any;
51
+ questions: any;
52
+ attempts: any;
53
+ averageScore: number;
54
+ primaryColor: any;
55
+ primaryContrastColor: any;
56
+ secondaryColor: any;
57
+ secondaryContrastColor: any;
58
+ createdAt: any;
59
+ }>;
60
+ listQuestions(examId: number): Promise<{
61
+ exam: {
62
+ id: number;
63
+ code: string;
64
+ title: string;
65
+ };
66
+ questionCount: number;
67
+ data: {
68
+ id: any;
69
+ examQuestionId: any;
70
+ order: any;
71
+ questionType: "multiple_choice" | "true_false" | "essay" | "fill_blank" | "matching";
72
+ statement: any;
73
+ points: any;
74
+ fillBlankAnswers: {
75
+ answer: string;
76
+ alternatives?: string[];
77
+ }[];
78
+ matchingPairs: {
79
+ id: string;
80
+ leftText: string;
81
+ rightText: string;
82
+ }[];
83
+ alternatives: any;
84
+ }[];
85
+ }>;
86
+ createQuestion(examId: number, dto: CreateExamQuestionDto): Promise<{
87
+ id: any;
88
+ examQuestionId: any;
89
+ order: any;
90
+ questionType: "multiple_choice" | "true_false" | "essay" | "fill_blank" | "matching";
91
+ statement: any;
92
+ points: any;
93
+ fillBlankAnswers: {
94
+ answer: string;
95
+ alternatives?: string[];
96
+ }[];
97
+ matchingPairs: {
98
+ id: string;
99
+ leftText: string;
100
+ rightText: string;
101
+ }[];
102
+ alternatives: any;
103
+ }>;
104
+ updateQuestion(examId: number, questionId: number, dto: UpdateExamQuestionDto): Promise<{
105
+ id: any;
106
+ examQuestionId: any;
107
+ order: any;
108
+ questionType: "multiple_choice" | "true_false" | "essay" | "fill_blank" | "matching";
109
+ statement: any;
110
+ points: any;
111
+ fillBlankAnswers: {
112
+ answer: string;
113
+ alternatives?: string[];
114
+ }[];
115
+ matchingPairs: {
116
+ id: string;
117
+ leftText: string;
118
+ rightText: string;
119
+ }[];
120
+ alternatives: any;
121
+ }>;
122
+ removeQuestion(examId: number, questionId: number): Promise<{
123
+ success: boolean;
124
+ }>;
125
+ reorderQuestions(examId: number, questionIds: number[]): Promise<{
126
+ success: boolean;
127
+ }>;
128
+ create(dto: CreateExamDto): Promise<{
129
+ id: any;
130
+ code: string;
131
+ title: any;
132
+ minScore: number;
133
+ timeLimit: any;
134
+ shuffle: boolean;
135
+ status: any;
136
+ questions: any;
137
+ attempts: any;
138
+ averageScore: number;
139
+ primaryColor: any;
140
+ primaryContrastColor: any;
141
+ secondaryColor: any;
142
+ secondaryContrastColor: any;
143
+ createdAt: any;
144
+ }>;
145
+ update(id: number, dto: UpdateExamDto): Promise<{
146
+ id: any;
147
+ code: string;
148
+ title: any;
149
+ minScore: number;
150
+ timeLimit: any;
151
+ shuffle: boolean;
152
+ status: any;
153
+ questions: any;
154
+ attempts: any;
155
+ averageScore: number;
156
+ primaryColor: any;
157
+ primaryContrastColor: any;
158
+ secondaryColor: any;
159
+ secondaryContrastColor: any;
160
+ createdAt: any;
161
+ }>;
162
+ remove(id: number): Promise<{
163
+ success: boolean;
164
+ }>;
165
+ private findAverageScoresByExam;
166
+ private mapExam;
167
+ private mapExamQuestion;
168
+ private parseCodeToId;
169
+ private idToCode;
170
+ private scoreToTen;
171
+ private scoreFromTen;
172
+ private resolveQuestionType;
173
+ private normalizeAlternatives;
174
+ private normalizeFillBlankAnswers;
175
+ private normalizeMatchingPairs;
176
+ private buildSpecialOptions;
177
+ private parseSpecialOptions;
178
+ }
179
+ //# sourceMappingURL=exam.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exam.service.d.ts","sourceRoot":"","sources":["../../src/exam/exam.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAMpD,OAAO,EACH,qBAAqB,EAGxB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,qBACa,WAAW;IACV,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,aAAa;IAE5C,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;KACjB;;;;;;;;;;;;;;;;;;;;;;;IAyDK,KAAK;;;;;;IAoBL,OAAO,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;IAmBlB,aAAa,CAAC,MAAM,EAAE,MAAM;;;;;;;;;;;;;;;wBAgnBQ,MAAM;+BAAiB,MAAM,EAAE;;;oBACtC,MAAM;0BAAY,MAAM;2BAAa,MAAM;;;;;IA1kBxE,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,qBAAqB;;;;;;;;oBAykBrB,MAAM;2BAAiB,MAAM,EAAE;;;gBACtC,MAAM;sBAAY,MAAM;uBAAa,MAAM;;;;IAlfxE,cAAc,CAClB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,qBAAqB;;;;;;;;oBA8ec,MAAM;2BAAiB,MAAM,EAAE;;;gBACtC,MAAM;sBAAY,MAAM;uBAAa,MAAM;;;;IAvXxE,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;;;IA0BjD,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE;;;IA8BtD,MAAM,CAAC,GAAG,EAAE,aAAa;;;;;;;;;;;;;;;;;IA6BzB,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa;;;;;;;;;;;;;;;;;IAoCrC,MAAM,CAAC,EAAE,EAAE,MAAM;;;YAKT,uBAAuB;IAqBrC,OAAO,CAAC,OAAO;IAoBf,OAAO,CAAC,eAAe;IAuBvB,OAAO,CAAC,aAAa;IAarB,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,UAAU;IAKlB,OAAO,CAAC,YAAY;IAKpB,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,qBAAqB;IA+C7B,OAAO,CAAC,yBAAyB;IAmCjC,OAAO,CAAC,sBAAsB;IAyC9B,OAAO,CAAC,mBAAmB;IA6B3B,OAAO,CAAC,mBAAmB;CAwC5B"}