@hed-hog/lms 0.0.361 → 0.0.364

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 (329) hide show
  1. package/dist/bitcode-wallet/bitcode-wallet.service.d.ts +65 -0
  2. package/dist/bitcode-wallet/bitcode-wallet.service.d.ts.map +1 -1
  3. package/dist/bitcode-wallet/bitcode-wallet.service.js +72 -0
  4. package/dist/bitcode-wallet/bitcode-wallet.service.js.map +1 -1
  5. package/dist/bitcode-wallet/dto/create-current-bitcode-wallet-transaction.dto.d.ts +8 -0
  6. package/dist/bitcode-wallet/dto/create-current-bitcode-wallet-transaction.dto.d.ts.map +1 -0
  7. package/dist/bitcode-wallet/dto/create-current-bitcode-wallet-transaction.dto.js +40 -0
  8. package/dist/bitcode-wallet/dto/create-current-bitcode-wallet-transaction.dto.js.map +1 -0
  9. package/dist/class-group/class-group.controller.d.ts +16 -16
  10. package/dist/class-group/class-group.service.d.ts +12 -12
  11. package/dist/course/course-audio-transcription.service.d.ts +3 -2
  12. package/dist/course/course-audio-transcription.service.d.ts.map +1 -1
  13. package/dist/course/course-audio-transcription.service.js +49 -8
  14. package/dist/course/course-audio-transcription.service.js.map +1 -1
  15. package/dist/course/course-lesson.controller.d.ts +4 -0
  16. package/dist/course/course-lesson.controller.d.ts.map +1 -1
  17. package/dist/course/course-lesson.controller.js +10 -0
  18. package/dist/course/course-lesson.controller.js.map +1 -1
  19. package/dist/course/course-structure.controller.d.ts +11 -4
  20. package/dist/course/course-structure.controller.d.ts.map +1 -1
  21. package/dist/course/course-structure.controller.js +14 -0
  22. package/dist/course/course-structure.controller.js.map +1 -1
  23. package/dist/course/course-structure.service.d.ts +15 -1
  24. package/dist/course/course-structure.service.d.ts.map +1 -1
  25. package/dist/course/course-structure.service.js +139 -4
  26. package/dist/course/course-structure.service.js.map +1 -1
  27. package/dist/course/course-video-conversion.service.d.ts +8 -0
  28. package/dist/course/course-video-conversion.service.d.ts.map +1 -1
  29. package/dist/course/course-video-conversion.service.js +87 -51
  30. package/dist/course/course-video-conversion.service.js.map +1 -1
  31. package/dist/course/course.controller.d.ts +73 -1
  32. package/dist/course/course.controller.d.ts.map +1 -1
  33. package/dist/course/course.controller.js +27 -3
  34. package/dist/course/course.controller.js.map +1 -1
  35. package/dist/course/course.module.d.ts.map +1 -1
  36. package/dist/course/course.module.js +2 -0
  37. package/dist/course/course.module.js.map +1 -1
  38. package/dist/course/course.service.d.ts +108 -4
  39. package/dist/course/course.service.d.ts.map +1 -1
  40. package/dist/course/course.service.js +631 -30
  41. package/dist/course/course.service.js.map +1 -1
  42. package/dist/course/dto/cleanup-course-storage.dto.d.ts +6 -0
  43. package/dist/course/dto/cleanup-course-storage.dto.d.ts.map +1 -0
  44. package/dist/course/dto/cleanup-course-storage.dto.js +33 -0
  45. package/dist/course/dto/cleanup-course-storage.dto.js.map +1 -0
  46. package/dist/course/dto/cleanup-upload-history.dto.d.ts +9 -0
  47. package/dist/course/dto/cleanup-upload-history.dto.d.ts.map +1 -0
  48. package/dist/course/dto/cleanup-upload-history.dto.js +36 -0
  49. package/dist/course/dto/cleanup-upload-history.dto.js.map +1 -0
  50. package/dist/course/dto/create-course-bulk-job.dto.d.ts +4 -0
  51. package/dist/course/dto/create-course-bulk-job.dto.d.ts.map +1 -0
  52. package/dist/course/dto/create-course-bulk-job.dto.js +21 -0
  53. package/dist/course/dto/create-course-bulk-job.dto.js.map +1 -0
  54. package/dist/course/lms-bulk-upload-automation.service.d.ts +39 -0
  55. package/dist/course/lms-bulk-upload-automation.service.d.ts.map +1 -0
  56. package/dist/course/lms-bulk-upload-automation.service.js +443 -0
  57. package/dist/course/lms-bulk-upload-automation.service.js.map +1 -0
  58. package/dist/course/lms-bulk-upload-infra.service.d.ts +31 -0
  59. package/dist/course/lms-bulk-upload-infra.service.d.ts.map +1 -0
  60. package/dist/course/lms-bulk-upload-infra.service.js +277 -0
  61. package/dist/course/lms-bulk-upload-infra.service.js.map +1 -0
  62. package/dist/course/lms-bulk-upload.constants.d.ts +4 -0
  63. package/dist/course/lms-bulk-upload.constants.d.ts.map +1 -0
  64. package/dist/course/lms-bulk-upload.constants.js +7 -0
  65. package/dist/course/lms-bulk-upload.constants.js.map +1 -0
  66. package/dist/course/lms-bulk-upload.controller.d.ts +116 -0
  67. package/dist/course/lms-bulk-upload.controller.d.ts.map +1 -1
  68. package/dist/course/lms-bulk-upload.controller.js +71 -2
  69. package/dist/course/lms-bulk-upload.controller.js.map +1 -1
  70. package/dist/course/lms-bulk-upload.service.d.ts +142 -3
  71. package/dist/course/lms-bulk-upload.service.d.ts.map +1 -1
  72. package/dist/course/lms-bulk-upload.service.js +606 -21
  73. package/dist/course/lms-bulk-upload.service.js.map +1 -1
  74. package/dist/course/lms-setting.controller.d.ts +4 -1
  75. package/dist/course/lms-setting.controller.d.ts.map +1 -1
  76. package/dist/course/lms-setting.controller.js +21 -6
  77. package/dist/course/lms-setting.controller.js.map +1 -1
  78. package/dist/enterprise/enterprise.controller.d.ts +20 -20
  79. package/dist/enterprise/enterprise.service.d.ts +20 -20
  80. package/dist/enterprise/training/training-admin.controller.d.ts +11 -11
  81. package/dist/enterprise/training/training-admin.service.d.ts +11 -11
  82. package/dist/enterprise/training/training-instructor.controller.d.ts +2 -2
  83. package/dist/enterprise/training/training-instructor.service.d.ts +2 -2
  84. package/dist/enterprise/training/training-student.controller.d.ts +1 -1
  85. package/dist/enterprise/training/training-student.service.d.ts +1 -1
  86. package/dist/enterprise/training/training-viewer.controller.d.ts +2 -2
  87. package/dist/evaluation/evaluation.controller.d.ts +8 -8
  88. package/dist/evaluation/evaluation.service.d.ts +8 -8
  89. package/dist/lesson-xp-map/dto/create-lesson-xp-map.dto.d.ts +6 -0
  90. package/dist/lesson-xp-map/dto/create-lesson-xp-map.dto.d.ts.map +1 -0
  91. package/dist/lesson-xp-map/dto/create-lesson-xp-map.dto.js +34 -0
  92. package/dist/lesson-xp-map/dto/create-lesson-xp-map.dto.js.map +1 -0
  93. package/dist/lesson-xp-map/dto/create-lesson-xp-segment.dto.d.ts +28 -0
  94. package/dist/lesson-xp-map/dto/create-lesson-xp-segment.dto.d.ts.map +1 -0
  95. package/dist/lesson-xp-map/dto/create-lesson-xp-segment.dto.js +123 -0
  96. package/dist/lesson-xp-map/dto/create-lesson-xp-segment.dto.js.map +1 -0
  97. package/dist/lesson-xp-map/dto/review-lesson-xp-map.dto.d.ts +4 -0
  98. package/dist/lesson-xp-map/dto/review-lesson-xp-map.dto.d.ts.map +1 -0
  99. package/dist/lesson-xp-map/dto/review-lesson-xp-map.dto.js +22 -0
  100. package/dist/lesson-xp-map/dto/review-lesson-xp-map.dto.js.map +1 -0
  101. package/dist/lesson-xp-map/dto/update-lesson-xp-map.dto.d.ts +10 -0
  102. package/dist/lesson-xp-map/dto/update-lesson-xp-map.dto.d.ts.map +1 -0
  103. package/dist/lesson-xp-map/dto/update-lesson-xp-map.dto.js +52 -0
  104. package/dist/lesson-xp-map/dto/update-lesson-xp-map.dto.js.map +1 -0
  105. package/dist/lesson-xp-map/dto/update-lesson-xp-segment.dto.d.ts +15 -0
  106. package/dist/lesson-xp-map/dto/update-lesson-xp-segment.dto.d.ts.map +1 -0
  107. package/dist/lesson-xp-map/dto/update-lesson-xp-segment.dto.js +86 -0
  108. package/dist/lesson-xp-map/dto/update-lesson-xp-segment.dto.js.map +1 -0
  109. package/dist/lesson-xp-map/lesson-xp-ai-calculation.service.d.ts +26 -0
  110. package/dist/lesson-xp-map/lesson-xp-ai-calculation.service.d.ts.map +1 -0
  111. package/dist/lesson-xp-map/lesson-xp-ai-calculation.service.js +304 -0
  112. package/dist/lesson-xp-map/lesson-xp-ai-calculation.service.js.map +1 -0
  113. package/dist/lesson-xp-map/lesson-xp-map.controller.d.ts +87 -0
  114. package/dist/lesson-xp-map/lesson-xp-map.controller.d.ts.map +1 -0
  115. package/dist/lesson-xp-map/lesson-xp-map.controller.js +185 -0
  116. package/dist/lesson-xp-map/lesson-xp-map.controller.js.map +1 -0
  117. package/dist/lesson-xp-map/lesson-xp-map.module.d.ts +3 -0
  118. package/dist/lesson-xp-map/lesson-xp-map.module.d.ts.map +1 -0
  119. package/dist/lesson-xp-map/lesson-xp-map.module.js +34 -0
  120. package/dist/lesson-xp-map/lesson-xp-map.module.js.map +1 -0
  121. package/dist/lesson-xp-map/lesson-xp-map.service.d.ts +84 -0
  122. package/dist/lesson-xp-map/lesson-xp-map.service.d.ts.map +1 -0
  123. package/dist/lesson-xp-map/lesson-xp-map.service.js +353 -0
  124. package/dist/lesson-xp-map/lesson-xp-map.service.js.map +1 -0
  125. package/dist/lesson-xp-map/lesson-xp-segment.controller.d.ts +10 -0
  126. package/dist/lesson-xp-map/lesson-xp-segment.controller.d.ts.map +1 -0
  127. package/dist/lesson-xp-map/lesson-xp-segment.controller.js +63 -0
  128. package/dist/lesson-xp-map/lesson-xp-segment.controller.js.map +1 -0
  129. package/dist/lesson-xp-map/lesson-xp-segment.service.d.ts +27 -0
  130. package/dist/lesson-xp-map/lesson-xp-segment.service.d.ts.map +1 -0
  131. package/dist/lesson-xp-map/lesson-xp-segment.service.js +194 -0
  132. package/dist/lesson-xp-map/lesson-xp-segment.service.js.map +1 -0
  133. package/dist/libraries/lms/tsconfig.tsbuildinfo +1 -0
  134. package/dist/lms.module.d.ts.map +1 -1
  135. package/dist/lms.module.js +17 -2
  136. package/dist/lms.module.js.map +1 -1
  137. package/dist/platforma/dto/update-profile.dto.d.ts +17 -0
  138. package/dist/platforma/dto/update-profile.dto.d.ts.map +1 -0
  139. package/dist/platforma/dto/update-profile.dto.js +87 -0
  140. package/dist/platforma/dto/update-profile.dto.js.map +1 -0
  141. package/dist/platforma/platforma.controller.d.ts +88 -1
  142. package/dist/platforma/platforma.controller.d.ts.map +1 -1
  143. package/dist/platforma/platforma.controller.js +85 -2
  144. package/dist/platforma/platforma.controller.js.map +1 -1
  145. package/dist/platforma/platforma.service.d.ts +27 -0
  146. package/dist/platforma/platforma.service.d.ts.map +1 -0
  147. package/dist/platforma/platforma.service.js +274 -0
  148. package/dist/platforma/platforma.service.js.map +1 -0
  149. package/dist/student-xp/student-xp.controller.d.ts +41 -0
  150. package/dist/student-xp/student-xp.controller.d.ts.map +1 -0
  151. package/dist/student-xp/student-xp.controller.js +114 -0
  152. package/dist/student-xp/student-xp.controller.js.map +1 -0
  153. package/dist/student-xp/student-xp.module.d.ts +3 -0
  154. package/dist/student-xp/student-xp.module.d.ts.map +1 -0
  155. package/dist/student-xp/student-xp.module.js +25 -0
  156. package/dist/student-xp/student-xp.module.js.map +1 -0
  157. package/dist/student-xp/student-xp.service.d.ts +65 -0
  158. package/dist/student-xp/student-xp.service.d.ts.map +1 -0
  159. package/dist/student-xp/student-xp.service.js +197 -0
  160. package/dist/student-xp/student-xp.service.js.map +1 -0
  161. package/dist/xp-catalog/dto/create-xp-area.dto.d.ts +12 -0
  162. package/dist/xp-catalog/dto/create-xp-area.dto.d.ts.map +1 -0
  163. package/dist/xp-catalog/dto/create-xp-area.dto.js +63 -0
  164. package/dist/xp-catalog/dto/create-xp-area.dto.js.map +1 -0
  165. package/dist/xp-catalog/dto/create-xp-learning-type.dto.d.ts +11 -0
  166. package/dist/xp-catalog/dto/create-xp-learning-type.dto.d.ts.map +1 -0
  167. package/dist/xp-catalog/dto/create-xp-learning-type.dto.js +57 -0
  168. package/dist/xp-catalog/dto/create-xp-learning-type.dto.js.map +1 -0
  169. package/dist/xp-catalog/dto/create-xp-skill.dto.d.ts +11 -0
  170. package/dist/xp-catalog/dto/create-xp-skill.dto.d.ts.map +1 -0
  171. package/dist/xp-catalog/dto/create-xp-skill.dto.js +57 -0
  172. package/dist/xp-catalog/dto/create-xp-skill.dto.js.map +1 -0
  173. package/dist/xp-catalog/dto/update-xp-area.dto.d.ts +12 -0
  174. package/dist/xp-catalog/dto/update-xp-area.dto.d.ts.map +1 -0
  175. package/dist/xp-catalog/dto/update-xp-area.dto.js +66 -0
  176. package/dist/xp-catalog/dto/update-xp-area.dto.js.map +1 -0
  177. package/dist/xp-catalog/dto/update-xp-learning-type.dto.d.ts +11 -0
  178. package/dist/xp-catalog/dto/update-xp-learning-type.dto.d.ts.map +1 -0
  179. package/dist/xp-catalog/dto/update-xp-learning-type.dto.js +60 -0
  180. package/dist/xp-catalog/dto/update-xp-learning-type.dto.js.map +1 -0
  181. package/dist/xp-catalog/dto/update-xp-skill.dto.d.ts +11 -0
  182. package/dist/xp-catalog/dto/update-xp-skill.dto.d.ts.map +1 -0
  183. package/dist/xp-catalog/dto/update-xp-skill.dto.js +60 -0
  184. package/dist/xp-catalog/dto/update-xp-skill.dto.js.map +1 -0
  185. package/dist/xp-catalog/xp-area.controller.d.ts +25 -0
  186. package/dist/xp-catalog/xp-area.controller.d.ts.map +1 -0
  187. package/dist/xp-catalog/xp-area.controller.js +105 -0
  188. package/dist/xp-catalog/xp-area.controller.js.map +1 -0
  189. package/dist/xp-catalog/xp-area.service.d.ts +35 -0
  190. package/dist/xp-catalog/xp-area.service.d.ts.map +1 -0
  191. package/dist/xp-catalog/xp-area.service.js +168 -0
  192. package/dist/xp-catalog/xp-area.service.js.map +1 -0
  193. package/dist/xp-catalog/xp-catalog.module.d.ts +3 -0
  194. package/dist/xp-catalog/xp-catalog.module.d.ts.map +1 -0
  195. package/dist/xp-catalog/xp-catalog.module.js +29 -0
  196. package/dist/xp-catalog/xp-catalog.module.js.map +1 -0
  197. package/dist/xp-catalog/xp-learning-type.controller.d.ts +20 -0
  198. package/dist/xp-catalog/xp-learning-type.controller.d.ts.map +1 -0
  199. package/dist/xp-catalog/xp-learning-type.controller.js +96 -0
  200. package/dist/xp-catalog/xp-learning-type.controller.js.map +1 -0
  201. package/dist/xp-catalog/xp-learning-type.service.d.ts +30 -0
  202. package/dist/xp-catalog/xp-learning-type.service.d.ts.map +1 -0
  203. package/dist/xp-catalog/xp-learning-type.service.js +146 -0
  204. package/dist/xp-catalog/xp-learning-type.service.js.map +1 -0
  205. package/dist/xp-catalog/xp-skill.controller.d.ts +26 -0
  206. package/dist/xp-catalog/xp-skill.controller.d.ts.map +1 -0
  207. package/dist/xp-catalog/xp-skill.controller.js +113 -0
  208. package/dist/xp-catalog/xp-skill.controller.js.map +1 -0
  209. package/dist/xp-catalog/xp-skill.service.d.ts +37 -0
  210. package/dist/xp-catalog/xp-skill.service.d.ts.map +1 -0
  211. package/dist/xp-catalog/xp-skill.service.js +174 -0
  212. package/dist/xp-catalog/xp-skill.service.js.map +1 -0
  213. package/hedhog/data/menu.yaml +101 -0
  214. package/hedhog/data/route.yaml +512 -0
  215. package/hedhog/data/setting_group.yaml +1 -1
  216. package/hedhog/data/xp_area.yaml +164 -0
  217. package/hedhog/data/xp_learning_type.yaml +131 -0
  218. package/hedhog/data/xp_skill.yaml +1834 -0
  219. package/hedhog/frontend/app/achievements/page.tsx.ejs +108 -118
  220. package/hedhog/frontend/app/bitcodes/page.tsx.ejs +22 -34
  221. package/hedhog/frontend/app/bulk-upload-sessions/page.tsx.ejs +1453 -0
  222. package/hedhog/frontend/app/certificates/models/page.tsx.ejs +21 -45
  223. package/hedhog/frontend/app/classes/[id]/page.tsx.ejs +40 -74
  224. package/hedhog/frontend/app/classes/page.tsx.ejs +56 -85
  225. package/hedhog/frontend/app/courses/[id]/_components/CourseDangerZoneCard.tsx.ejs +3 -2
  226. package/hedhog/frontend/app/courses/[id]/_components/CourseMediaCard.tsx.ejs +48 -5
  227. package/hedhog/frontend/app/courses/[id]/page.tsx.ejs +4 -4
  228. package/hedhog/frontend/app/courses/[id]/structure/_components/course-operations-tab.tsx.ejs +19 -2
  229. package/hedhog/frontend/app/courses/[id]/structure/_components/course-overview-tab.tsx.ejs +1170 -0
  230. package/hedhog/frontend/app/courses/[id]/structure/_components/course-tree-dnd.tsx.ejs +16 -0
  231. package/hedhog/frontend/app/courses/[id]/structure/_components/course-tree.tsx.ejs +2 -0
  232. package/hedhog/frontend/app/courses/[id]/structure/_components/course-xp-overview-tab.tsx.ejs +623 -0
  233. package/hedhog/frontend/app/courses/[id]/structure/_components/detail-lesson-xp-tab.tsx.ejs +1458 -0
  234. package/hedhog/frontend/app/courses/[id]/structure/_components/detail-lesson.tsx.ejs +55 -2
  235. package/hedhog/frontend/app/courses/[id]/structure/_components/editor-course.tsx.ejs +442 -104
  236. package/hedhog/frontend/app/courses/[id]/structure/_components/editor-lesson.tsx.ejs +296 -49
  237. package/hedhog/frontend/app/courses/[id]/structure/_components/sortable-tree-row.tsx.ejs +3 -0
  238. package/hedhog/frontend/app/courses/[id]/structure/_components/store.ts.ejs +1 -0
  239. package/hedhog/frontend/app/courses/[id]/structure/_components/tree-display-settings-popover.tsx.ejs +101 -85
  240. package/hedhog/frontend/app/courses/[id]/structure/_components/tree-row-lesson.tsx.ejs +21 -1
  241. package/hedhog/frontend/app/courses/[id]/structure/_components/tree-row.tsx.ejs +3 -0
  242. package/hedhog/frontend/app/courses/[id]/structure/_components/use-tree-display-settings.ts.ejs +7 -1
  243. package/hedhog/frontend/app/courses/[id]/structure/_components/xp-premium-pills.tsx.ejs +44 -0
  244. package/hedhog/frontend/app/courses/[id]/structure/_data/use-course-content-overview.ts.ejs +54 -0
  245. package/hedhog/frontend/app/courses/[id]/structure/_data/use-course-structure-mutations.ts.ejs +52 -0
  246. package/hedhog/frontend/app/courses/[id]/structure/_data/use-course-xp-overview.ts.ejs +76 -0
  247. package/hedhog/frontend/app/courses/[id]/structure/_data/use-lesson-xp-map.ts.ejs +128 -0
  248. package/hedhog/frontend/app/courses/[id]/structure/_data/use-transcription-segments.ts.ejs +30 -0
  249. package/hedhog/frontend/app/courses/[id]/structure/_utils/xp-color-config.ts.ejs +115 -0
  250. package/hedhog/frontend/app/courses/_components/CourseDeleteDialog.tsx.ejs +223 -0
  251. package/hedhog/frontend/app/courses/_components/CourseRowActions.tsx.ejs +89 -0
  252. package/hedhog/frontend/app/courses/page.tsx.ejs +400 -230
  253. package/hedhog/frontend/app/enterprise/page.tsx.ejs +39 -63
  254. package/hedhog/frontend/app/exams/[id]/questions/page.tsx.ejs +53 -77
  255. package/hedhog/frontend/app/exams/page.tsx.ejs +54 -90
  256. package/hedhog/frontend/app/instructor-skills/page.tsx.ejs +23 -36
  257. package/hedhog/frontend/app/instructors/page.tsx.ejs +72 -81
  258. package/hedhog/frontend/app/paths/page.tsx.ejs +40 -68
  259. package/hedhog/frontend/app/training/page.tsx.ejs +40 -68
  260. package/hedhog/frontend/app/xp/areas/page.tsx.ejs +782 -0
  261. package/hedhog/frontend/app/xp/learning-types/page.tsx.ejs +690 -0
  262. package/hedhog/frontend/app/xp/skills/page.tsx.ejs +811 -0
  263. package/hedhog/frontend/messages/en.json +386 -3
  264. package/hedhog/frontend/messages/pt.json +386 -3
  265. package/hedhog/table/lesson_xp_map.yaml +50 -0
  266. package/hedhog/table/lesson_xp_segment.yaml +40 -0
  267. package/hedhog/table/lesson_xp_segment_area.yaml +24 -0
  268. package/hedhog/table/lesson_xp_segment_learning_type.yaml +24 -0
  269. package/hedhog/table/lesson_xp_segment_skill.yaml +24 -0
  270. package/hedhog/table/lms_bulk_upload_item.yaml +44 -0
  271. package/hedhog/table/lms_bulk_upload_session.yaml +42 -0
  272. package/hedhog/table/student_area_xp.yaml +30 -0
  273. package/hedhog/table/student_learning_type_xp.yaml +30 -0
  274. package/hedhog/table/student_skill_xp.yaml +30 -0
  275. package/hedhog/table/student_xp_event.yaml +34 -0
  276. package/hedhog/table/xp_area.yaml +39 -0
  277. package/hedhog/table/xp_learning_type.yaml +34 -0
  278. package/hedhog/table/xp_skill.yaml +39 -0
  279. package/package.json +8 -7
  280. package/src/bitcode-wallet/bitcode-wallet.service.ts +113 -0
  281. package/src/bitcode-wallet/dto/create-current-bitcode-wallet-transaction.dto.ts +32 -0
  282. package/src/course/course-audio-transcription.service.ts +58 -21
  283. package/src/course/course-lesson.controller.ts +6 -1
  284. package/src/course/course-structure.controller.ts +10 -0
  285. package/src/course/course-structure.service.ts +174 -1
  286. package/src/course/course-video-conversion.service.ts +113 -75
  287. package/src/course/course.controller.ts +22 -3
  288. package/src/course/course.module.ts +2 -0
  289. package/src/course/course.service.ts +847 -30
  290. package/src/course/dto/cleanup-course-storage.dto.ts +22 -0
  291. package/src/course/dto/cleanup-upload-history.dto.ts +26 -0
  292. package/src/course/dto/create-course-bulk-job.dto.ts +6 -0
  293. package/src/course/lms-bulk-upload-automation.service.ts +560 -0
  294. package/src/course/lms-bulk-upload-infra.service.ts +327 -0
  295. package/src/course/lms-bulk-upload.constants.ts +5 -0
  296. package/src/course/lms-bulk-upload.controller.ts +79 -3
  297. package/src/course/lms-bulk-upload.service.ts +1029 -204
  298. package/src/course/lms-setting.controller.ts +22 -6
  299. package/src/lesson-xp-map/dto/create-lesson-xp-map.dto.ts +17 -0
  300. package/src/lesson-xp-map/dto/create-lesson-xp-segment.dto.ts +102 -0
  301. package/src/lesson-xp-map/dto/review-lesson-xp-map.dto.ts +7 -0
  302. package/src/lesson-xp-map/dto/update-lesson-xp-map.dto.ts +36 -0
  303. package/src/lesson-xp-map/dto/update-lesson-xp-segment.dto.ts +78 -0
  304. package/src/lesson-xp-map/lesson-xp-ai-calculation.service.ts +396 -0
  305. package/src/lesson-xp-map/lesson-xp-map.controller.ts +116 -0
  306. package/src/lesson-xp-map/lesson-xp-map.module.ts +21 -0
  307. package/src/lesson-xp-map/lesson-xp-map.service.ts +442 -0
  308. package/src/lesson-xp-map/lesson-xp-segment.controller.ts +36 -0
  309. package/src/lesson-xp-map/lesson-xp-segment.service.ts +229 -0
  310. package/src/lms.module.ts +17 -2
  311. package/src/platforma/dto/update-profile.dto.ts +59 -0
  312. package/src/platforma/platforma.controller.ts +57 -2
  313. package/src/platforma/platforma.service.ts +268 -0
  314. package/src/student-xp/student-xp.controller.ts +76 -0
  315. package/src/student-xp/student-xp.module.ts +12 -0
  316. package/src/student-xp/student-xp.service.ts +236 -0
  317. package/src/xp-catalog/dto/create-xp-area.dto.ts +40 -0
  318. package/src/xp-catalog/dto/create-xp-learning-type.dto.ts +35 -0
  319. package/src/xp-catalog/dto/create-xp-skill.dto.ts +35 -0
  320. package/src/xp-catalog/dto/update-xp-area.dto.ts +43 -0
  321. package/src/xp-catalog/dto/update-xp-learning-type.dto.ts +38 -0
  322. package/src/xp-catalog/dto/update-xp-skill.dto.ts +38 -0
  323. package/src/xp-catalog/xp-area.controller.ts +64 -0
  324. package/src/xp-catalog/xp-area.service.ts +196 -0
  325. package/src/xp-catalog/xp-catalog.module.ts +16 -0
  326. package/src/xp-catalog/xp-learning-type.controller.ts +59 -0
  327. package/src/xp-catalog/xp-learning-type.service.ts +170 -0
  328. package/src/xp-catalog/xp-skill.controller.ts +71 -0
  329. package/src/xp-catalog/xp-skill.service.ts +205 -0
@@ -42,6 +42,61 @@
42
42
  - where:
43
43
  slug: lms-bulk-upload
44
44
 
45
+ - url: /lms/bulk-upload/webhook/regenerate-token
46
+ method: POST
47
+ relations:
48
+ role:
49
+ - where:
50
+ slug: admin
51
+ - where:
52
+ slug: admin-lms
53
+ - where:
54
+ slug: lms-bulk-upload
55
+
56
+ - url: /lms/bulk-upload/session/start
57
+ method: POST
58
+ relations:
59
+ role:
60
+ - where:
61
+ slug: admin
62
+ - where:
63
+ slug: admin-lms
64
+ - where:
65
+ slug: lms-bulk-upload
66
+
67
+ - url: /lms/bulk-upload/session/heartbeat
68
+ method: POST
69
+ relations:
70
+ role:
71
+ - where:
72
+ slug: admin
73
+ - where:
74
+ slug: admin-lms
75
+ - where:
76
+ slug: lms-bulk-upload
77
+
78
+ - url: /lms/bulk-upload/sessions
79
+ method: GET
80
+ relations:
81
+ role:
82
+ - where:
83
+ slug: admin
84
+ - where:
85
+ slug: admin-lms
86
+ - where:
87
+ slug: lms-bulk-upload
88
+
89
+ - url: /lms/bulk-upload/sessions/cleanup
90
+ method: POST
91
+ relations:
92
+ role:
93
+ - where:
94
+ slug: admin
95
+ - where:
96
+ slug: admin-lms
97
+ - where:
98
+ slug: lms-bulk-upload
99
+
45
100
  - url: /lms/evaluations
46
101
  method: GET
47
102
  relations:
@@ -159,6 +214,24 @@
159
214
  - where:
160
215
  slug: admin-lms
161
216
 
217
+ - url: /lms/courses/:id/overview
218
+ method: GET
219
+ relations:
220
+ role:
221
+ - where:
222
+ slug: admin
223
+ - where:
224
+ slug: admin-lms
225
+
226
+ - url: /lms/courses/:id/storage/cleanup
227
+ method: POST
228
+ relations:
229
+ role:
230
+ - where:
231
+ slug: admin
232
+ - where:
233
+ slug: admin-lms
234
+
162
235
  - url: /lms/courses/:id
163
236
  method: GET
164
237
  relations:
@@ -366,6 +439,15 @@
366
439
  - where:
367
440
  slug: admin-lms
368
441
 
442
+ - url: /lms/courses/:id/structure/bulk-jobs
443
+ method: POST
444
+ relations:
445
+ role:
446
+ - where:
447
+ slug: admin
448
+ - where:
449
+ slug: admin-lms
450
+
369
451
  - url: /lms/lessons/:id/transcription-segments
370
452
  method: GET
371
453
  relations:
@@ -384,6 +466,15 @@
384
466
  - where:
385
467
  slug: admin-lms
386
468
 
469
+ - url: /lms/lessons/:id/transcription/start
470
+ method: POST
471
+ relations:
472
+ role:
473
+ - where:
474
+ slug: admin
475
+ - where:
476
+ slug: admin-lms
477
+
387
478
  - url: /lms/lessons/:id/audio-files
388
479
  method: GET
389
480
  relations:
@@ -1979,6 +2070,39 @@
1979
2070
  - where:
1980
2071
  slug: lms-student
1981
2072
 
2073
+ - url: /lms/platforma/notifications/stream
2074
+ method: GET
2075
+ relations:
2076
+ role:
2077
+ - where:
2078
+ slug: admin
2079
+ - where:
2080
+ slug: admin-lms
2081
+ - where:
2082
+ slug: lms-student
2083
+
2084
+ - url: /lms/platforma/notifications/:id
2085
+ method: DELETE
2086
+ relations:
2087
+ role:
2088
+ - where:
2089
+ slug: admin
2090
+ - where:
2091
+ slug: admin-lms
2092
+ - where:
2093
+ slug: lms-student
2094
+
2095
+ - url: /lms/platforma/notifications
2096
+ method: DELETE
2097
+ relations:
2098
+ role:
2099
+ - where:
2100
+ slug: admin
2101
+ - where:
2102
+ slug: admin-lms
2103
+ - where:
2104
+ slug: lms-student
2105
+
1982
2106
  - url: /lms/platforma/streak
1983
2107
  method: GET
1984
2108
  relations:
@@ -2001,6 +2125,28 @@
2001
2125
  - where:
2002
2126
  slug: lms-student
2003
2127
 
2128
+ - url: /lms/platforma/bitcodes/wallet
2129
+ method: GET
2130
+ relations:
2131
+ role:
2132
+ - where:
2133
+ slug: admin
2134
+ - where:
2135
+ slug: admin-lms
2136
+ - where:
2137
+ slug: lms-student
2138
+
2139
+ - url: /lms/platforma/bitcodes/transactions
2140
+ method: POST
2141
+ relations:
2142
+ role:
2143
+ - where:
2144
+ slug: admin
2145
+ - where:
2146
+ slug: admin-lms
2147
+ - where:
2148
+ slug: lms-student
2149
+
2004
2150
  - url: /lms/enterprise/training/student/class-groups
2005
2151
  method: GET
2006
2152
  relations:
@@ -4439,3 +4585,369 @@
4439
4585
  slug: admin
4440
4586
  - where:
4441
4587
  slug: admin-lms
4588
+
4589
+ # ── XP Catalog: Areas ─────────────────────────────────────────
4590
+ - url: /lms/xp/areas
4591
+ method: GET
4592
+ relations:
4593
+ role:
4594
+ - where:
4595
+ slug: admin
4596
+ - where:
4597
+ slug: admin-lms
4598
+
4599
+ - url: /lms/xp/areas/all
4600
+ method: GET
4601
+ relations:
4602
+ role:
4603
+ - where:
4604
+ slug: admin
4605
+ - where:
4606
+ slug: admin-lms
4607
+
4608
+ - url: /lms/xp/areas/stats
4609
+ method: GET
4610
+ relations:
4611
+ role:
4612
+ - where:
4613
+ slug: admin
4614
+ - where:
4615
+ slug: admin-lms
4616
+
4617
+ - url: /lms/xp/areas/:id
4618
+ method: GET
4619
+ relations:
4620
+ role:
4621
+ - where:
4622
+ slug: admin
4623
+ - where:
4624
+ slug: admin-lms
4625
+
4626
+ - url: /lms/xp/areas
4627
+ method: POST
4628
+ relations:
4629
+ role:
4630
+ - where:
4631
+ slug: admin
4632
+ - where:
4633
+ slug: admin-lms
4634
+
4635
+ - url: /lms/xp/areas/:id
4636
+ method: PATCH
4637
+ relations:
4638
+ role:
4639
+ - where:
4640
+ slug: admin
4641
+ - where:
4642
+ slug: admin-lms
4643
+
4644
+ - url: /lms/xp/areas/:id
4645
+ method: DELETE
4646
+ relations:
4647
+ role:
4648
+ - where:
4649
+ slug: admin
4650
+ - where:
4651
+ slug: admin-lms
4652
+
4653
+ # ── XP Catalog: Skills ────────────────────────────────────────
4654
+ - url: /lms/xp/skills
4655
+ method: GET
4656
+ relations:
4657
+ role:
4658
+ - where:
4659
+ slug: admin
4660
+ - where:
4661
+ slug: admin-lms
4662
+
4663
+ - url: /lms/xp/skills/all
4664
+ method: GET
4665
+ relations:
4666
+ role:
4667
+ - where:
4668
+ slug: admin
4669
+ - where:
4670
+ slug: admin-lms
4671
+
4672
+ - url: /lms/xp/skills/stats
4673
+ method: GET
4674
+ relations:
4675
+ role:
4676
+ - where:
4677
+ slug: admin
4678
+ - where:
4679
+ slug: admin-lms
4680
+
4681
+ - url: /lms/xp/skills/:id
4682
+ method: GET
4683
+ relations:
4684
+ role:
4685
+ - where:
4686
+ slug: admin
4687
+ - where:
4688
+ slug: admin-lms
4689
+
4690
+ - url: /lms/xp/skills
4691
+ method: POST
4692
+ relations:
4693
+ role:
4694
+ - where:
4695
+ slug: admin
4696
+ - where:
4697
+ slug: admin-lms
4698
+
4699
+ - url: /lms/xp/skills/:id
4700
+ method: PATCH
4701
+ relations:
4702
+ role:
4703
+ - where:
4704
+ slug: admin
4705
+ - where:
4706
+ slug: admin-lms
4707
+
4708
+ - url: /lms/xp/skills/:id
4709
+ method: DELETE
4710
+ relations:
4711
+ role:
4712
+ - where:
4713
+ slug: admin
4714
+ - where:
4715
+ slug: admin-lms
4716
+
4717
+ # ── XP Catalog: Learning Types ────────────────────────────────
4718
+ - url: /lms/xp/learning-types
4719
+ method: GET
4720
+ relations:
4721
+ role:
4722
+ - where:
4723
+ slug: admin
4724
+ - where:
4725
+ slug: admin-lms
4726
+
4727
+ - url: /lms/xp/learning-types/all
4728
+ method: GET
4729
+ relations:
4730
+ role:
4731
+ - where:
4732
+ slug: admin
4733
+ - where:
4734
+ slug: admin-lms
4735
+
4736
+ - url: /lms/xp/learning-types/:id
4737
+ method: GET
4738
+ relations:
4739
+ role:
4740
+ - where:
4741
+ slug: admin
4742
+ - where:
4743
+ slug: admin-lms
4744
+
4745
+ - url: /lms/xp/learning-types
4746
+ method: POST
4747
+ relations:
4748
+ role:
4749
+ - where:
4750
+ slug: admin
4751
+ - where:
4752
+ slug: admin-lms
4753
+
4754
+ - url: /lms/xp/learning-types/:id
4755
+ method: PATCH
4756
+ relations:
4757
+ role:
4758
+ - where:
4759
+ slug: admin
4760
+ - where:
4761
+ slug: admin-lms
4762
+
4763
+ - url: /lms/xp/learning-types/:id
4764
+ method: DELETE
4765
+ relations:
4766
+ role:
4767
+ - where:
4768
+ slug: admin
4769
+ - where:
4770
+ slug: admin-lms
4771
+
4772
+ # ── Lesson XP Maps ────────────────────────────────────────────
4773
+ - url: /lms/xp/lesson-maps
4774
+ method: GET
4775
+ relations:
4776
+ role:
4777
+ - where:
4778
+ slug: admin
4779
+ - where:
4780
+ slug: admin-lms
4781
+
4782
+ - url: /lms/xp/lesson-maps
4783
+ method: POST
4784
+ relations:
4785
+ role:
4786
+ - where:
4787
+ slug: admin
4788
+ - where:
4789
+ slug: admin-lms
4790
+
4791
+ - url: /lms/xp/lesson-maps/:id
4792
+ method: GET
4793
+ relations:
4794
+ role:
4795
+ - where:
4796
+ slug: admin
4797
+ - where:
4798
+ slug: admin-lms
4799
+
4800
+ - url: /lms/xp/lesson-maps/:id
4801
+ method: PATCH
4802
+ relations:
4803
+ role:
4804
+ - where:
4805
+ slug: admin
4806
+ - where:
4807
+ slug: admin-lms
4808
+
4809
+ - url: /lms/xp/lesson-maps/:id
4810
+ method: DELETE
4811
+ relations:
4812
+ role:
4813
+ - where:
4814
+ slug: admin
4815
+ - where:
4816
+ slug: admin-lms
4817
+
4818
+ - url: /lms/xp/lesson-maps/:id/approve
4819
+ method: POST
4820
+ relations:
4821
+ role:
4822
+ - where:
4823
+ slug: admin
4824
+ - where:
4825
+ slug: admin-lms
4826
+
4827
+ - url: /lms/xp/lesson-maps/:id/reject
4828
+ method: POST
4829
+ relations:
4830
+ role:
4831
+ - where:
4832
+ slug: admin
4833
+ - where:
4834
+ slug: admin-lms
4835
+
4836
+ - url: /lms/xp/lesson-maps/:id/segments
4837
+ method: GET
4838
+ relations:
4839
+ role:
4840
+ - where:
4841
+ slug: admin
4842
+ - where:
4843
+ slug: admin-lms
4844
+
4845
+ - url: /lms/xp/lesson-maps/:id/segments
4846
+ method: POST
4847
+ relations:
4848
+ role:
4849
+ - where:
4850
+ slug: admin
4851
+ - where:
4852
+ slug: admin-lms
4853
+
4854
+ - url: /lms/xp/lesson-maps/lesson/:lessonId
4855
+ method: GET
4856
+ relations:
4857
+ role:
4858
+ - where:
4859
+ slug: admin
4860
+ - where:
4861
+ slug: admin-lms
4862
+
4863
+ - url: /lms/xp/lesson-maps/lesson/:lessonId/recalculate
4864
+ method: POST
4865
+ relations:
4866
+ role:
4867
+ - where:
4868
+ slug: admin
4869
+ - where:
4870
+ slug: admin-lms
4871
+
4872
+ - url: /lms/xp/lesson-maps/course/:courseId/overview
4873
+ method: GET
4874
+ relations:
4875
+ role:
4876
+ - where:
4877
+ slug: admin
4878
+ - where:
4879
+ slug: admin-lms
4880
+
4881
+ # ── Lesson XP Segments ────────────────────────────────────────
4882
+ - url: /lms/xp/segments/:id
4883
+ method: GET
4884
+ relations:
4885
+ role:
4886
+ - where:
4887
+ slug: admin
4888
+ - where:
4889
+ slug: admin-lms
4890
+
4891
+ - url: /lms/xp/segments/:id
4892
+ method: PATCH
4893
+ relations:
4894
+ role:
4895
+ - where:
4896
+ slug: admin
4897
+ - where:
4898
+ slug: admin-lms
4899
+
4900
+ - url: /lms/xp/segments/:id
4901
+ method: DELETE
4902
+ relations:
4903
+ role:
4904
+ - where:
4905
+ slug: admin
4906
+ - where:
4907
+ slug: admin-lms
4908
+
4909
+ # ── Student XP ────────────────────────────────────────────────
4910
+ - url: /lms/xp/events
4911
+ method: GET
4912
+ relations:
4913
+ role:
4914
+ - where:
4915
+ slug: admin
4916
+ - where:
4917
+ slug: admin-lms
4918
+
4919
+ - url: /lms/xp/balances/areas
4920
+ method: GET
4921
+ relations:
4922
+ role:
4923
+ - where:
4924
+ slug: admin
4925
+ - where:
4926
+ slug: admin-lms
4927
+
4928
+ - url: /lms/xp/balances/skills
4929
+ method: GET
4930
+ relations:
4931
+ role:
4932
+ - where:
4933
+ slug: admin
4934
+ - where:
4935
+ slug: admin-lms
4936
+
4937
+ - url: /lms/xp/balances/learning-types
4938
+ method: GET
4939
+ relations:
4940
+ role:
4941
+ - where:
4942
+ slug: admin
4943
+ - where:
4944
+ slug: admin-lms
4945
+
4946
+ - url: /lms/xp/balances/person/:personId
4947
+ method: GET
4948
+ relations:
4949
+ role:
4950
+ - where:
4951
+ slug: admin
4952
+ - where:
4953
+ slug: admin-lms
@@ -76,7 +76,7 @@
76
76
  user_override: false
77
77
  - slug: lms-bulk-upload-storage-profile-id
78
78
  type: number
79
- component: input-number
79
+ component: entity-picker
80
80
  name:
81
81
  en: Bulk Upload Storage Profile ID
82
82
  pt: ID do perfil de armazenamento para Upload em Massa
@@ -0,0 +1,164 @@
1
+ - slug: fundamentos
2
+ name:
3
+ en: Foundations
4
+ pt: Fundamentos
5
+ description:
6
+ en: Essential base for programming, logic, algorithms, Git, terminal, basic HTTP and initial concepts.
7
+ pt: Base essencial para programação, lógica, algoritmos, Git, terminal, HTTP básico e conceitos iniciais.
8
+ color: '#3B82F6'
9
+ sort_order: 1
10
+ status: active
11
+
12
+ - slug: frontend
13
+ name:
14
+ en: Frontend
15
+ pt: Frontend
16
+ description:
17
+ en: Web interface development, components, styling, accessibility and browser user experience.
18
+ pt: Desenvolvimento de interfaces web, componentes, estilos, acessibilidade e experiência do usuário no navegador.
19
+ color: '#22C55E'
20
+ sort_order: 2
21
+ status: active
22
+
23
+ - slug: backend
24
+ name:
25
+ en: Backend
26
+ pt: Backend
27
+ description:
28
+ en: APIs, servers, authentication, business rules, integrations and server-side processing.
29
+ pt: Desenvolvimento de APIs, servidores, autenticação, regras de negócio, integrações e processamento no lado do servidor.
30
+ color: '#0EA5E9'
31
+ sort_order: 3
32
+ status: active
33
+
34
+ - slug: banco-de-dados
35
+ name:
36
+ en: Databases
37
+ pt: Banco de Dados
38
+ description:
39
+ en: Data modeling, queries, relational databases, NoSQL, cache, migrations and persistence.
40
+ pt: Modelagem, consultas, bancos relacionais, NoSQL, cache, migrations e persistência de dados.
41
+ color: '#F97316'
42
+ sort_order: 4
43
+ status: active
44
+
45
+ - slug: mobile
46
+ name:
47
+ en: Mobile
48
+ pt: Mobile
49
+ description:
50
+ en: Mobile application development, mobile interfaces, publishing and device resource integration.
51
+ pt: Desenvolvimento de aplicativos móveis, interfaces mobile, publicação e integração com recursos do dispositivo.
52
+ color: '#EC4899'
53
+ sort_order: 5
54
+ status: active
55
+
56
+ - slug: sistemas-operacionais
57
+ name:
58
+ en: Operating Systems
59
+ pt: Sistemas Operacionais
60
+ description:
61
+ en: Linux, Windows, macOS, terminal, permissions, processes, services, files and basic system administration.
62
+ pt: Linux, Windows, macOS, terminal, permissões, processos, serviços, arquivos e administração básica do sistema.
63
+ color: '#64748B'
64
+ sort_order: 6
65
+ status: active
66
+
67
+ - slug: redes
68
+ name:
69
+ en: Networking
70
+ pt: Redes
71
+ description:
72
+ en: HTTP, DNS, TCP/IP, ports, TLS, proxies, load balancers, WebSocket, SSE, VPN and system communication.
73
+ pt: HTTP, DNS, TCP/IP, portas, TLS, proxies, load balancers, WebSocket, SSE, VPN e comunicação entre sistemas.
74
+ color: '#14B8A6'
75
+ sort_order: 7
76
+ status: active
77
+
78
+ - slug: devops
79
+ name:
80
+ en: DevOps
81
+ pt: DevOps
82
+ description:
83
+ en: Containers, CI/CD, deploy, automation, observability, infrastructure as code and application operations.
84
+ pt: Containers, CI/CD, deploy, automação, observabilidade, infraestrutura como código e operação de aplicações.
85
+ color: '#8B5CF6'
86
+ sort_order: 8
87
+ status: active
88
+
89
+ - slug: cloud
90
+ name:
91
+ en: Cloud
92
+ pt: Cloud
93
+ description:
94
+ en: Cloud services, providers, storage, IAM, serverless, compute, CDN and cloud architecture.
95
+ pt: Serviços de nuvem, provedores cloud, storage, IAM, serverless, compute, CDN e arquitetura em nuvem.
96
+ color: '#06B6D4'
97
+ sort_order: 9
98
+ status: active
99
+
100
+ - slug: seguranca
101
+ name:
102
+ en: Security
103
+ pt: Segurança
104
+ description:
105
+ en: Application security, authentication, authorization, cryptography, best practices, pentest and data protection.
106
+ pt: Segurança de aplicações, autenticação, autorização, criptografia, boas práticas, pentest e proteção de dados.
107
+ color: '#EF4444'
108
+ sort_order: 10
109
+ status: active
110
+
111
+ - slug: inteligencia-artificial
112
+ name:
113
+ en: Artificial Intelligence
114
+ pt: Inteligência Artificial
115
+ description:
116
+ en: AI APIs, LLMs, agents, RAG, embeddings, prompt engineering, intelligent automation and generative AI.
117
+ pt: APIs de IA, LLMs, agentes, RAG, embeddings, engenharia de prompt, automação inteligente e IA generativa.
118
+ color: '#A855F7'
119
+ sort_order: 11
120
+ status: active
121
+
122
+ - slug: arquitetura
123
+ name:
124
+ en: Architecture
125
+ pt: Arquitetura
126
+ description:
127
+ en: Software design, design patterns, SOLID, DDD, microservices, monorepo, scalability and system organization.
128
+ pt: Design de software, padrões de projeto, SOLID, DDD, microsserviços, monorepo, escalabilidade e organização de sistemas.
129
+ color: '#6366F1'
130
+ sort_order: 12
131
+ status: active
132
+
133
+ - slug: testes-e-qualidade
134
+ name:
135
+ en: Testing and Quality
136
+ pt: Testes e Qualidade
137
+ description:
138
+ en: Automated tests, code quality, TDD, unit, integration, E2E, lint, review and reliability.
139
+ pt: Testes automatizados, qualidade de código, TDD, testes unitários, integração, E2E, lint, revisão e confiabilidade.
140
+ color: '#EAB308'
141
+ sort_order: 13
142
+ status: active
143
+
144
+ - slug: ux-e-design
145
+ name:
146
+ en: UX and Design
147
+ pt: UX e Design
148
+ description:
149
+ en: Interface design, usability, prototyping, design systems, Figma, user experience and visual consistency.
150
+ pt: Design de interfaces, usabilidade, prototipação, design systems, Figma, experiência do usuário e consistência visual.
151
+ color: '#D946EF'
152
+ sort_order: 14
153
+ status: active
154
+
155
+ - slug: produto-e-carreira
156
+ name:
157
+ en: Product and Career
158
+ pt: Produto e Carreira
159
+ description:
160
+ en: Digital product, productivity, career, collaboration, communication, processes, management and professional growth.
161
+ pt: Produto digital, produtividade, carreira, colaboração, comunicação, processos, gestão e visão profissional.
162
+ color: '#F59E0B'
163
+ sort_order: 15
164
+ status: active