@fdm-monster/server 1.9.4 → 2.0.0

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 (393) hide show
  1. package/.env.template +8 -7
  2. package/.yarn/install-state.gz +0 -0
  3. package/CONTRIBUTING.md +5 -5
  4. package/README.md +9 -8
  5. package/RELEASE_NOTES.MD +52 -0
  6. package/SECURITY.md +1 -1
  7. package/biome.json +8 -5
  8. package/dist/consoles/download-github-releases.js +3 -3
  9. package/dist/consoles/launch-http-servers.js +4 -4
  10. package/dist/consoles/launch-http-servers.js.map +1 -1
  11. package/dist/consoles/mock-bambu.server.js +50 -30
  12. package/dist/consoles/mock-bambu.server.js.map +1 -1
  13. package/dist/consoles/mock-camera/default-image.js +13 -0
  14. package/dist/consoles/mock-camera/default-image.js.map +1 -0
  15. package/dist/consoles/mock-camera/mock-camera.server.js +160 -0
  16. package/dist/consoles/mock-camera/mock-camera.server.js.map +1 -0
  17. package/dist/consoles/mock-octoprint.server.js +281 -73
  18. package/dist/consoles/mock-octoprint.server.js.map +1 -1
  19. package/dist/consoles/mock-prusalink.server.js +17 -17
  20. package/dist/consoles/mock-prusalink.server.js.map +1 -1
  21. package/dist/consoles/typeorm-create.js +135 -0
  22. package/dist/consoles/typeorm-create.js.map +1 -0
  23. package/dist/consoles/typeorm-generate.js +8 -8
  24. package/dist/consoles/typeorm-generate.js.map +1 -1
  25. package/dist/consoles/utils/api-messages.js.map +1 -1
  26. package/dist/constants/authorization.constants.js +25 -31
  27. package/dist/constants/authorization.constants.js.map +1 -1
  28. package/dist/constants/event.constants.js.map +1 -1
  29. package/dist/constants/server-settings.constants.js +3 -19
  30. package/dist/constants/server-settings.constants.js.map +1 -1
  31. package/dist/container.js +43 -59
  32. package/dist/container.js.map +1 -1
  33. package/dist/container.tokens.js +9 -6
  34. package/dist/container.tokens.js.map +1 -1
  35. package/dist/controllers/auth.controller.js +1 -1
  36. package/dist/controllers/auth.controller.js.map +1 -1
  37. package/dist/controllers/batch-call.controller.js +7 -25
  38. package/dist/controllers/batch-call.controller.js.map +1 -1
  39. package/dist/controllers/file-storage.controller.js +248 -0
  40. package/dist/controllers/file-storage.controller.js.map +1 -0
  41. package/dist/controllers/first-time-setup.controller.js +6 -5
  42. package/dist/controllers/first-time-setup.controller.js.map +1 -1
  43. package/dist/controllers/floor.controller.js +12 -12
  44. package/dist/controllers/floor.controller.js.map +1 -1
  45. package/dist/controllers/metrics.controller.js.map +1 -1
  46. package/dist/controllers/print-job.controller.js +666 -0
  47. package/dist/controllers/print-job.controller.js.map +1 -0
  48. package/dist/controllers/print-queue.controller.js +375 -0
  49. package/dist/controllers/print-queue.controller.js.map +1 -0
  50. package/dist/controllers/printer-files.controller.js +88 -59
  51. package/dist/controllers/printer-files.controller.js.map +1 -1
  52. package/dist/controllers/printer-settings.controller.js +0 -21
  53. package/dist/controllers/printer-settings.controller.js.map +1 -1
  54. package/dist/controllers/{printer-group.controller.js → printer-tag.controller.js} +51 -34
  55. package/dist/controllers/printer-tag.controller.js.map +1 -0
  56. package/dist/controllers/printer.controller.js +21 -7
  57. package/dist/controllers/printer.controller.js.map +1 -1
  58. package/dist/controllers/server-private.controller.js +2 -1
  59. package/dist/controllers/server-private.controller.js.map +1 -1
  60. package/dist/controllers/server-public.controller.js +11 -15
  61. package/dist/controllers/server-public.controller.js.map +1 -1
  62. package/dist/controllers/settings.controller.js +0 -68
  63. package/dist/controllers/settings.controller.js.map +1 -1
  64. package/dist/controllers/slicer-compat.controller.js +216 -0
  65. package/dist/controllers/slicer-compat.controller.js.map +1 -0
  66. package/dist/controllers/user.controller.js +8 -12
  67. package/dist/controllers/user.controller.js.map +1 -1
  68. package/dist/controllers/validation/batch-controller.validation.js +13 -13
  69. package/dist/controllers/validation/batch-controller.validation.js.map +1 -1
  70. package/dist/controllers/validation/generic.validation.js +4 -8
  71. package/dist/controllers/validation/generic.validation.js.map +1 -1
  72. package/dist/controllers/validation/printer-files-controller.validation.js +2 -2
  73. package/dist/controllers/validation/user-controller.validation.js +14 -9
  74. package/dist/controllers/validation/user-controller.validation.js.map +1 -1
  75. package/dist/data-source.js +25 -12
  76. package/dist/data-source.js.map +1 -1
  77. package/dist/entities/camera-stream.entity.js +2 -1
  78. package/dist/entities/camera-stream.entity.js.map +1 -1
  79. package/dist/entities/floor.entity.js +3 -5
  80. package/dist/entities/floor.entity.js.map +1 -1
  81. package/dist/entities/index.js +15 -11
  82. package/dist/entities/index.js.map +1 -1
  83. package/dist/entities/print-job.entity.js +195 -0
  84. package/dist/entities/print-job.entity.js.map +1 -0
  85. package/dist/entities/{printer-group.entity.js → printer-tag.entity.js} +17 -17
  86. package/dist/entities/printer-tag.entity.js.map +1 -0
  87. package/dist/entities/printer.entity.js +4 -10
  88. package/dist/entities/printer.entity.js.map +1 -1
  89. package/dist/entities/settings.entity.js +3 -12
  90. package/dist/entities/settings.entity.js.map +1 -1
  91. package/dist/entities/{group.entity.js → tag.entity.js} +15 -8
  92. package/dist/entities/tag.entity.js.map +1 -0
  93. package/dist/handlers/logging/file-logging.transport.js.map +1 -1
  94. package/dist/handlers/logging/static.logger.js.map +1 -1
  95. package/dist/index.js +8 -2
  96. package/dist/index.js.map +1 -1
  97. package/dist/middleware/authenticate.js +4 -4
  98. package/dist/middleware/authenticate.js.map +1 -1
  99. package/dist/middleware/database.js +1 -1
  100. package/dist/middleware/exception.filter.js +114 -90
  101. package/dist/middleware/exception.filter.js.map +1 -1
  102. package/dist/middleware/global.middleware.js +10 -18
  103. package/dist/middleware/global.middleware.js.map +1 -1
  104. package/dist/middleware/param-converter.middleware.js +5 -13
  105. package/dist/middleware/param-converter.middleware.js.map +1 -1
  106. package/dist/middleware/passport.js +2 -2
  107. package/dist/middleware/passport.js.map +1 -1
  108. package/dist/middleware/printer-resolver.js.map +1 -1
  109. package/dist/middleware/printer.js +3 -2
  110. package/dist/middleware/printer.js.map +1 -1
  111. package/dist/middleware/socketio.middleware.js.map +1 -1
  112. package/dist/migrations/1745141688926-AddPrinterUsernamePassword.js +1 -1
  113. package/dist/migrations/1745141688926-AddPrinterUsernamePassword.js.map +1 -1
  114. package/dist/migrations/1766576698569-DropPermissions.js +28 -0
  115. package/dist/migrations/1766576698569-DropPermissions.js.map +1 -0
  116. package/dist/migrations/1767278216516-ChangeCameraPrinterOnDeleteSetNull.js +186 -0
  117. package/dist/migrations/1767278216516-ChangeCameraPrinterOnDeleteSetNull.js.map +1 -0
  118. package/dist/migrations/1767279607392-DropCustomGcode.js +31 -0
  119. package/dist/migrations/1767279607392-DropCustomGcode.js.map +1 -0
  120. package/dist/migrations/1767291804417-DropPrintCompletions.js +37 -0
  121. package/dist/migrations/1767291804417-DropPrintCompletions.js.map +1 -0
  122. package/dist/migrations/1767352862576-DropSettingsFileClean.js +88 -0
  123. package/dist/migrations/1767352862576-DropSettingsFileClean.js.map +1 -0
  124. package/dist/migrations/1767355639023-ChangeFloorLevelToOrder.js +107 -0
  125. package/dist/migrations/1767355639023-ChangeFloorLevelToOrder.js.map +1 -0
  126. package/dist/migrations/1767370191762-ChangeFloorNonUniqueOrder.js +62 -0
  127. package/dist/migrations/1767370191762-ChangeFloorNonUniqueOrder.js.map +1 -0
  128. package/dist/migrations/1767432108916-RenameGroupToTag.js +86 -0
  129. package/dist/migrations/1767432108916-RenameGroupToTag.js.map +1 -0
  130. package/dist/migrations/1767451444137-AddPrintJob.js +207 -0
  131. package/dist/migrations/1767451444137-AddPrintJob.js.map +1 -0
  132. package/dist/server.constants.js +9 -17
  133. package/dist/server.constants.js.map +1 -1
  134. package/dist/server.core.js +3 -7
  135. package/dist/server.core.js.map +1 -1
  136. package/dist/server.env.js +4 -49
  137. package/dist/server.env.js.map +1 -1
  138. package/dist/server.host.js +26 -44
  139. package/dist/server.host.js.map +1 -1
  140. package/dist/services/authentication/auth.service.js.map +1 -1
  141. package/dist/services/authentication/jwt.service.js.map +1 -1
  142. package/dist/services/bambu/bambu-ftp.adapter.js +3 -3
  143. package/dist/services/bambu/bambu-ftp.adapter.js.map +1 -1
  144. package/dist/services/bambu/bambu-mqtt.adapter.js +74 -77
  145. package/dist/services/bambu/bambu-mqtt.adapter.js.map +1 -1
  146. package/dist/services/bambu/bambu.client.js.map +1 -1
  147. package/dist/services/bambu.api.js +11 -0
  148. package/dist/services/bambu.api.js.map +1 -1
  149. package/dist/services/core/batch-call.service.js +0 -25
  150. package/dist/services/core/batch-call.service.js.map +1 -1
  151. package/dist/services/core/multer.service.js +5 -9
  152. package/dist/services/core/multer.service.js.map +1 -1
  153. package/dist/services/core/yaml.service.js +219 -187
  154. package/dist/services/core/yaml.service.js.map +1 -1
  155. package/dist/services/file-analysis.service.js +146 -0
  156. package/dist/services/file-analysis.service.js.map +1 -0
  157. package/dist/services/file-storage.service.js +386 -0
  158. package/dist/services/file-storage.service.js.map +1 -0
  159. package/dist/services/interfaces/camera-stream.dto.js +2 -2
  160. package/dist/services/interfaces/camera-stream.dto.js.map +1 -1
  161. package/dist/services/interfaces/floor.dto.js +3 -3
  162. package/dist/services/interfaces/floor.dto.js.map +1 -1
  163. package/dist/services/interfaces/{printer-group.dto.js → printer-tag.dto.js} +9 -8
  164. package/dist/services/interfaces/printer-tag.dto.js.map +1 -0
  165. package/dist/services/interfaces/{print-completion.interface.js → printer-tag.service.interface.js} +1 -1
  166. package/dist/services/interfaces/{printer-group.service.interface.js.map → printer-tag.service.interface.js.map} +1 -1
  167. package/dist/services/interfaces/printer.dto.js +2 -2
  168. package/dist/services/interfaces/printer.dto.js.map +1 -1
  169. package/dist/services/interfaces/refresh-token.dto.js.map +1 -1
  170. package/dist/services/interfaces/role.dto.js.map +1 -1
  171. package/dist/services/interfaces/settings.dto.js +0 -1
  172. package/dist/services/interfaces/settings.dto.js.map +1 -1
  173. package/dist/services/interfaces/{group.dto.js → tag.dto.js} +1 -1
  174. package/dist/services/interfaces/tag.dto.js.map +1 -0
  175. package/dist/services/interfaces/user.dto.js.map +1 -1
  176. package/dist/services/moonraker/constants/moonraker-event.dto.js.map +1 -1
  177. package/dist/services/moonraker/moonraker-websocket.adapter.js.map +1 -1
  178. package/dist/services/moonraker/moonraker.client.js.map +1 -1
  179. package/dist/services/moonraker.api.js +3 -0
  180. package/dist/services/moonraker.api.js.map +1 -1
  181. package/dist/services/octoprint/dto/files/gcode-analysis.dto.js.map +1 -0
  182. package/dist/services/octoprint/dto/octoprint-event.dto.js.map +1 -1
  183. package/dist/services/octoprint/octoprint-api.routes.js +0 -7
  184. package/dist/services/octoprint/octoprint-api.routes.js.map +1 -1
  185. package/dist/services/octoprint/octoprint-websocket.adapter.js.map +1 -1
  186. package/dist/services/octoprint/octoprint.client.js +0 -4
  187. package/dist/services/octoprint/octoprint.client.js.map +1 -1
  188. package/dist/services/octoprint.api.js +3 -0
  189. package/dist/services/octoprint.api.js.map +1 -1
  190. package/dist/services/orm/base.service.js.map +1 -1
  191. package/dist/services/orm/camera-stream.service.js.map +1 -1
  192. package/dist/services/orm/floor-position.service.js.map +1 -1
  193. package/dist/services/orm/floor.service.js +12 -19
  194. package/dist/services/orm/floor.service.js.map +1 -1
  195. package/dist/services/orm/permission.service.js +3 -54
  196. package/dist/services/orm/permission.service.js.map +1 -1
  197. package/dist/services/orm/print-job.service.js +539 -0
  198. package/dist/services/orm/print-job.service.js.map +1 -0
  199. package/dist/services/orm/printer-tag.service.js +120 -0
  200. package/dist/services/orm/printer-tag.service.js.map +1 -0
  201. package/dist/services/orm/printer.service.js.map +1 -1
  202. package/dist/services/orm/refresh-token.service.js.map +1 -1
  203. package/dist/services/orm/role.service.js +25 -39
  204. package/dist/services/orm/role.service.js.map +1 -1
  205. package/dist/services/orm/settings.service.js +4 -15
  206. package/dist/services/orm/settings.service.js.map +1 -1
  207. package/dist/services/orm/user.service.js +17 -13
  208. package/dist/services/orm/user.service.js.map +1 -1
  209. package/dist/services/print-file-downloader.service.js +169 -0
  210. package/dist/services/print-file-downloader.service.js.map +1 -0
  211. package/dist/services/print-queue.service.js +268 -0
  212. package/dist/services/print-queue.service.js.map +1 -0
  213. package/dist/services/printer-api.factory.js +1 -1
  214. package/dist/services/printer-api.factory.js.map +1 -1
  215. package/dist/services/printer-api.interface.js.map +1 -1
  216. package/dist/services/prusa-link/constants/prusalink-event.dto.js.map +1 -1
  217. package/dist/services/prusa-link/prusa-link-http-polling.adapter.js +1 -3
  218. package/dist/services/prusa-link/prusa-link-http-polling.adapter.js.map +1 -1
  219. package/dist/services/prusa-link/prusa-link.api.js +4 -1
  220. package/dist/services/prusa-link/prusa-link.api.js.map +1 -1
  221. package/dist/services/prusa-link/utils/prusa-link-http-client.builder.js.map +1 -1
  222. package/dist/services/validators/floor-service.validation.js +25 -31
  223. package/dist/services/validators/floor-service.validation.js.map +1 -1
  224. package/dist/services/validators/print-job.validation.js +31 -0
  225. package/dist/services/validators/print-job.validation.js.map +1 -0
  226. package/dist/services/validators/settings-service.validation.js +0 -22
  227. package/dist/services/validators/settings-service.validation.js.map +1 -1
  228. package/dist/services/validators/user-service.validation.js +15 -10
  229. package/dist/services/validators/user-service.validation.js.map +1 -1
  230. package/dist/services/validators/yaml-service.validation.js +8 -14
  231. package/dist/services/validators/yaml-service.validation.js.map +1 -1
  232. package/dist/shared/load-controllers.js +2 -1
  233. package/dist/shared/load-controllers.js.map +1 -1
  234. package/dist/shared/runtime-settings.migration.js +1 -11
  235. package/dist/shared/runtime-settings.migration.js.map +1 -1
  236. package/dist/shared/websocket-rpc-extended.adapter.js +13 -4
  237. package/dist/shared/websocket-rpc-extended.adapter.js.map +1 -1
  238. package/dist/shared/websocket.adapter.js.map +1 -1
  239. package/dist/state/file-upload-tracker.cache.js.map +1 -1
  240. package/dist/state/file.cache.js +6 -6
  241. package/dist/state/file.cache.js.map +1 -1
  242. package/dist/state/floor.store.js +3 -10
  243. package/dist/state/floor.store.js.map +1 -1
  244. package/dist/state/printer-events.cache.js +180 -20
  245. package/dist/state/printer-events.cache.js.map +1 -1
  246. package/dist/state/printer-files.store.js.map +1 -1
  247. package/dist/state/printer-socket.store.js +25 -20
  248. package/dist/state/printer-socket.store.js.map +1 -1
  249. package/dist/state/printer-thumbnail.cache.js +98 -188
  250. package/dist/state/printer-thumbnail.cache.js.map +1 -1
  251. package/dist/state/printer.cache.js +3 -13
  252. package/dist/state/printer.cache.js.map +1 -1
  253. package/dist/state/settings.store.js +4 -42
  254. package/dist/state/settings.store.js.map +1 -1
  255. package/dist/state/socket-io.gateway.js +1 -1
  256. package/dist/state/socket-io.gateway.js.map +1 -1
  257. package/dist/state/test-printer-socket.store.js +6 -3
  258. package/dist/state/test-printer-socket.store.js.map +1 -1
  259. package/dist/tasks/boot.task.js +11 -91
  260. package/dist/tasks/boot.task.js.map +1 -1
  261. package/dist/tasks/print-job-analysis.task.js +116 -0
  262. package/dist/tasks/print-job-analysis.task.js.map +1 -0
  263. package/dist/tasks/printer-files-load.task.js +29 -0
  264. package/dist/tasks/printer-files-load.task.js.map +1 -0
  265. package/dist/tasks/socketio.task.js +1 -1
  266. package/dist/tasks/socketio.task.js.map +1 -1
  267. package/dist/tasks.js +3 -2
  268. package/dist/tasks.js.map +1 -1
  269. package/dist/utils/cache/key-diff.cache.js +20 -61
  270. package/dist/utils/cache/key-diff.cache.js.map +1 -1
  271. package/dist/utils/parsers/3mf.parser.js +337 -0
  272. package/dist/utils/parsers/3mf.parser.js.map +1 -0
  273. package/dist/utils/parsers/bgcode.parser.js +223 -0
  274. package/dist/utils/parsers/bgcode.parser.js.map +1 -0
  275. package/dist/utils/parsers/gcode.parser.js +254 -0
  276. package/dist/utils/parsers/gcode.parser.js.map +1 -0
  277. package/dist/utils/swagger/decorators.js +39 -0
  278. package/dist/utils/swagger/decorators.js.map +1 -0
  279. package/dist/utils/swagger/generator.js +196 -0
  280. package/dist/utils/swagger/generator.js.map +1 -0
  281. package/dist/utils/swagger/swagger.js +93 -0
  282. package/dist/utils/swagger/swagger.js.map +1 -0
  283. package/package.json +24 -30
  284. package/dist/controllers/custom-gcode.controller.js +0 -150
  285. package/dist/controllers/custom-gcode.controller.js.map +0 -1
  286. package/dist/controllers/print-completion.controller.js +0 -118
  287. package/dist/controllers/print-completion.controller.js.map +0 -1
  288. package/dist/controllers/printer-group.controller.js.map +0 -1
  289. package/dist/entities/custom-gcode.entity.js +0 -49
  290. package/dist/entities/custom-gcode.entity.js.map +0 -1
  291. package/dist/entities/group.entity.js.map +0 -1
  292. package/dist/entities/permission.entity.js +0 -37
  293. package/dist/entities/permission.entity.js.map +0 -1
  294. package/dist/entities/print-completion.entity.js +0 -90
  295. package/dist/entities/print-completion.entity.js.map +0 -1
  296. package/dist/entities/printer-group.entity.js.map +0 -1
  297. package/dist/models/Auth/Permission.js +0 -20
  298. package/dist/models/Auth/Permission.js.map +0 -1
  299. package/dist/models/Auth/RefreshToken.js +0 -41
  300. package/dist/models/Auth/RefreshToken.js.map +0 -1
  301. package/dist/models/Auth/Role.js +0 -20
  302. package/dist/models/Auth/Role.js.map +0 -1
  303. package/dist/models/Auth/User.js +0 -49
  304. package/dist/models/Auth/User.js.map +0 -1
  305. package/dist/models/CameraStream.js +0 -49
  306. package/dist/models/CameraStream.js.map +0 -1
  307. package/dist/models/CustomGcode.js +0 -28
  308. package/dist/models/CustomGcode.js.map +0 -1
  309. package/dist/models/Floor.js +0 -33
  310. package/dist/models/Floor.js.map +0 -1
  311. package/dist/models/FloorPrinter.js +0 -38
  312. package/dist/models/FloorPrinter.js.map +0 -1
  313. package/dist/models/PrintCompletion.js +0 -40
  314. package/dist/models/PrintCompletion.js.map +0 -1
  315. package/dist/models/Printer.js +0 -78
  316. package/dist/models/Printer.js.map +0 -1
  317. package/dist/models/Settings.js +0 -150
  318. package/dist/models/Settings.js.map +0 -1
  319. package/dist/models/index.js +0 -54
  320. package/dist/models/index.js.map +0 -1
  321. package/dist/mongo-migrations/20210713120034-printers-settingsapperance-apikey.js +0 -45
  322. package/dist/mongo-migrations/20210713120034-printers-settingsapperance-apikey.js.map +0 -1
  323. package/dist/mongo-migrations/20210907173950-printers-enabled.js +0 -35
  324. package/dist/mongo-migrations/20210907173950-printers-enabled.js.map +0 -1
  325. package/dist/mongo-migrations/20211029110742-user-password-passwordhash.js +0 -35
  326. package/dist/mongo-migrations/20211029110742-user-password-passwordhash.js.map +0 -1
  327. package/dist/mongo-migrations/20230414141005-floor-remove-groupinfloor.js +0 -60
  328. package/dist/mongo-migrations/20230414141005-floor-remove-groupinfloor.js.map +0 -1
  329. package/dist/mongo-migrations/20230427202911-printer-remove-sortindex.js +0 -30
  330. package/dist/mongo-migrations/20230427202911-printer-remove-sortindex.js.map +0 -1
  331. package/dist/mongo-migrations/20230716065316-user-remove-name.js +0 -30
  332. package/dist/mongo-migrations/20230716065316-user-remove-name.js.map +0 -1
  333. package/dist/mongo-migrations/20231111081809-printer-flatten-name.js +0 -35
  334. package/dist/mongo-migrations/20231111081809-printer-flatten-name.js.map +0 -1
  335. package/dist/mongo-migrations/20231111082521-printer-remove-settingsappearance.js +0 -41
  336. package/dist/mongo-migrations/20231111082521-printer-remove-settingsappearance.js.map +0 -1
  337. package/dist/mongo-migrations/20231202183902-printer-files-simpler.js +0 -41
  338. package/dist/mongo-migrations/20231202183902-printer-files-simpler.js.map +0 -1
  339. package/dist/services/interfaces/custom-gcode.dto.js +0 -18
  340. package/dist/services/interfaces/custom-gcode.dto.js.map +0 -1
  341. package/dist/services/interfaces/custom-gcode.service.interface.js +0 -6
  342. package/dist/services/interfaces/custom-gcode.service.interface.js.map +0 -1
  343. package/dist/services/interfaces/gcode-analysis.dto.js.map +0 -1
  344. package/dist/services/interfaces/group.dto.js.map +0 -1
  345. package/dist/services/interfaces/permission.dto.js +0 -16
  346. package/dist/services/interfaces/permission.dto.js.map +0 -1
  347. package/dist/services/interfaces/print-completion-context.dto.js +0 -6
  348. package/dist/services/interfaces/print-completion-context.dto.js.map +0 -1
  349. package/dist/services/interfaces/print-completion.dto.js +0 -38
  350. package/dist/services/interfaces/print-completion.dto.js.map +0 -1
  351. package/dist/services/interfaces/print-completion.interface.js.map +0 -1
  352. package/dist/services/interfaces/printer-group.dto.js.map +0 -1
  353. package/dist/services/interfaces/printer-group.service.interface.js +0 -6
  354. package/dist/services/mongoose/camera-stream.service.js +0 -67
  355. package/dist/services/mongoose/camera-stream.service.js.map +0 -1
  356. package/dist/services/mongoose/custom-gcode.service.js +0 -50
  357. package/dist/services/mongoose/custom-gcode.service.js.map +0 -1
  358. package/dist/services/mongoose/floor.service.js +0 -139
  359. package/dist/services/mongoose/floor.service.js.map +0 -1
  360. package/dist/services/mongoose/permission.service.js +0 -73
  361. package/dist/services/mongoose/permission.service.js.map +0 -1
  362. package/dist/services/mongoose/print-completion.service.js +0 -134
  363. package/dist/services/mongoose/print-completion.service.js.map +0 -1
  364. package/dist/services/mongoose/print-completion.shared.js +0 -59
  365. package/dist/services/mongoose/print-completion.shared.js.map +0 -1
  366. package/dist/services/mongoose/printer.service.js +0 -216
  367. package/dist/services/mongoose/printer.service.js.map +0 -1
  368. package/dist/services/mongoose/refresh-token.service.js +0 -104
  369. package/dist/services/mongoose/refresh-token.service.js.map +0 -1
  370. package/dist/services/mongoose/role.service.js +0 -132
  371. package/dist/services/mongoose/role.service.js.map +0 -1
  372. package/dist/services/mongoose/settings.service.js +0 -124
  373. package/dist/services/mongoose/settings.service.js.map +0 -1
  374. package/dist/services/mongoose/user.service.js +0 -180
  375. package/dist/services/mongoose/user.service.js.map +0 -1
  376. package/dist/services/orm/custom-gcode.service.js +0 -42
  377. package/dist/services/orm/custom-gcode.service.js.map +0 -1
  378. package/dist/services/orm/print-completion.service.js +0 -87
  379. package/dist/services/orm/print-completion.service.js.map +0 -1
  380. package/dist/services/orm/printer-group.service.js +0 -109
  381. package/dist/services/orm/printer-group.service.js.map +0 -1
  382. package/dist/services/validators/camera-service.validation.js +0 -19
  383. package/dist/services/validators/camera-service.validation.js.map +0 -1
  384. package/dist/services/validators/print-completion-service.validation.js +0 -33
  385. package/dist/services/validators/print-completion-service.validation.js.map +0 -1
  386. package/dist/shared.constants.js +0 -15
  387. package/dist/shared.constants.js.map +0 -1
  388. package/dist/tasks/print-completion.socketio.task.js +0 -91
  389. package/dist/tasks/print-completion.socketio.task.js.map +0 -1
  390. package/dist/tasks/printer-file-clean.task.js +0 -74
  391. package/dist/tasks/printer-file-clean.task.js.map +0 -1
  392. package/migrate-mongo-config.js +0 -45
  393. /package/dist/services/{interfaces → octoprint/dto/files}/gcode-analysis.dto.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/controllers/settings.controller.ts"],"names":["SettingsController","logger","loggerFactory","serverVersion","printerCache","printerService","settingsStore","printerThumbnailCache","name","getSettings","req","res","connection","clientIp","socket","remoteAddress","version","e","warn","settings","send","getSettingsSensitive","updateSentryDiagnosticsEnabled","enabled","validateInput","body","sentryDiagnosticsEnabledSchema","result","setSentryDiagnosticsEnabled","updateMoonrakerSupport","moonrakerSupportSchema","setExperimentalMoonrakerSupport","printers","listCachedPrinters","klipperPrinters","filter","p","printerType","MoonrakerType","printer","updateEnabled","id","updatePrusaLinkSupport","prusaLinkSupportSchema","setExperimentalPrusaLinkSupport","prusaLinkPrinters","PrusaLinkType","updateBambuSupport","bambuSupportSchema","setExperimentalBambuSupport","bambuPrinters","BambuType","updateThumbnailSupport","thumbnailSupportSchema","setExperimentalThumbnailSupport","loadCache","resetCache","updateClientSupport","clientNextSchema","setExperimentalClientSupport","updateFrontendSettings","validatedInput","frontendSettingsUpdateSchema","updateLoginRequiredSettings","loginRequired","loginRequiredSchema","setLoginRequired","updateRegistrationEnabledSettings","registrationEnabled","registrationEnabledSchema","setRegistrationEnabled","updateCredentialSettings","credentialSettingUpdateSchema","updateFileCleanSettings","fileCleanSettingsUpdateSchema","updateTimeoutSettings","timeoutSettingsUpdateSchema","authorizeRoles","ROLES","ADMIN","demoUserNotAllowed","AppConstants","apiRoute","authenticate"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/controllers/settings.controller.ts"],"names":["SettingsController","logger","loggerFactory","serverVersion","printerCache","printerService","settingsStore","printerThumbnailCache","name","getSettings","req","res","connection","clientIp","socket","remoteAddress","version","e","warn","settings","send","getSettingsSensitive","updateSentryDiagnosticsEnabled","enabled","validateInput","body","sentryDiagnosticsEnabledSchema","result","setSentryDiagnosticsEnabled","updateMoonrakerSupport","moonrakerSupportSchema","setExperimentalMoonrakerSupport","printers","listCachedPrinters","klipperPrinters","filter","p","printerType","MoonrakerType","printer","updateEnabled","id","updatePrusaLinkSupport","prusaLinkSupportSchema","setExperimentalPrusaLinkSupport","prusaLinkPrinters","PrusaLinkType","updateBambuSupport","bambuSupportSchema","setExperimentalBambuSupport","bambuPrinters","BambuType","updateFrontendSettings","validatedInput","frontendSettingsUpdateSchema","updateLoginRequiredSettings","loginRequired","loginRequiredSchema","setLoginRequired","updateRegistrationEnabledSettings","registrationEnabled","registrationEnabledSchema","setRegistrationEnabled","updateCredentialSettings","credentialSettingUpdateSchema","updateTimeoutSettings","timeoutSettingsUpdateSchema","authorizeRoles","ROLES","ADMIN","demoUserNotAllowed","AppConstants","apiRoute","authenticate"],"mappings":"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"}
@@ -0,0 +1,216 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "SlicerCompatController", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return SlicerCompatController;
9
+ }
10
+ });
11
+ const _awilixexpress = require("awilix-express");
12
+ const _express = require("express");
13
+ const _filestorageservice = require("../services/file-storage.service");
14
+ const _fileanalysisservice = require("../services/file-analysis.service");
15
+ const _multerservice = require("../services/core/multer.service");
16
+ const _loggerfactory = require("../handlers/logger-factory");
17
+ const _serverconstants = require("../server.constants");
18
+ function _ts_decorate(decorators, target, key, desc) {
19
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
+ 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;
22
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
23
+ }
24
+ function _ts_metadata(k, v) {
25
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
26
+ }
27
+ class SlicerCompatController {
28
+ fileStorageService;
29
+ fileAnalysisService;
30
+ multerService;
31
+ logger;
32
+ constructor(loggerFactory, fileStorageService, fileAnalysisService, multerService){
33
+ this.fileStorageService = fileStorageService;
34
+ this.fileAnalysisService = fileAnalysisService;
35
+ this.multerService = multerService;
36
+ this.logger = loggerFactory(SlicerCompatController.name);
37
+ }
38
+ async getVersion(req, res) {
39
+ res.send({
40
+ api: "0.1",
41
+ server: "1.9.0",
42
+ text: "OctoPrint 1.9.3"
43
+ });
44
+ }
45
+ async uploadFile(req, res) {
46
+ let files;
47
+ try {
48
+ const acceptedExtensions = [
49
+ ..._serverconstants.AppConstants.defaultAcceptedGcodeExtensions,
50
+ ..._serverconstants.AppConstants.defaultAcceptedBambuExtensions
51
+ ];
52
+ files = await this.multerService.multerLoadFileAsync(req, res, acceptedExtensions, true);
53
+ if (!files?.length) {
54
+ res.status(400).send({
55
+ error: "No file uploaded"
56
+ });
57
+ return;
58
+ }
59
+ const file = files[0];
60
+ const print = req.body.print === "true" || req.body.print === true;
61
+ const select = req.body.select === "true" || req.body.select === true;
62
+ this.logger.log(`OctoPrint-compatible upload: ${file.originalname} (print=${print}, select=${select})`);
63
+ const fileHash = await this.fileStorageService.calculateFileHash(file.path);
64
+ const fileStorageId = await this.fileStorageService.saveFile(file, fileHash);
65
+ const filePath = this.fileStorageService.getFilePath(fileStorageId);
66
+ let metadata = {};
67
+ let thumbnails = [];
68
+ try {
69
+ const analysisResult = await this.fileAnalysisService.analyzeFile(filePath);
70
+ metadata = analysisResult.metadata;
71
+ thumbnails = analysisResult.thumbnails || [];
72
+ if (thumbnails.length > 0) {
73
+ const thumbnailMetadata = await this.fileStorageService.saveThumbnails(fileStorageId, thumbnails);
74
+ this.logger.log(`Saved ${thumbnailMetadata.length} thumbnail(s) for ${fileStorageId}`);
75
+ await this.fileStorageService.saveMetadata(fileStorageId, metadata, fileHash, file.originalname, thumbnailMetadata);
76
+ } else {
77
+ await this.fileStorageService.saveMetadata(fileStorageId, metadata, fileHash, file.originalname);
78
+ }
79
+ } catch (analysisError) {
80
+ this.logger.error(`Failed to analyze uploaded file: ${analysisError}`);
81
+ }
82
+ try {
83
+ this.multerService.clearUploadedFile(file);
84
+ } catch (e) {
85
+ this.logger.error(`Could not remove uploaded file from temporary storage`);
86
+ }
87
+ res.status(201).send({
88
+ files: {
89
+ local: {
90
+ name: file.originalname,
91
+ origin: "local",
92
+ refs: {
93
+ resource: `/api/files/local/${fileStorageId}`,
94
+ download: `/api/files/local/${fileStorageId}`
95
+ }
96
+ }
97
+ },
98
+ done: true,
99
+ _fdmMonster: {
100
+ fileStorageId,
101
+ fileHash,
102
+ analyzed: Object.keys(metadata).length > 0,
103
+ thumbnailCount: thumbnails.length,
104
+ printTime: metadata.gcodePrintTimeSeconds,
105
+ filament: metadata.filamentUsedGrams
106
+ }
107
+ });
108
+ this.logger.log(`File uploaded to printer: ${file.originalname} -> ${fileStorageId}`);
109
+ } catch (error) {
110
+ if (files?.[0]?.path) {
111
+ try {
112
+ this.multerService.clearUploadedFile(files[0]);
113
+ } catch (e) {
114
+ this.logger.error(`Could not remove uploaded file from temporary storage`);
115
+ }
116
+ }
117
+ throw error;
118
+ }
119
+ }
120
+ async listFiles(req, res) {
121
+ try {
122
+ const files = await this.fileStorageService.listAllFiles();
123
+ const knownFiles = files.map((file)=>({
124
+ name: file.metadata?._originalFileName || file.fileName,
125
+ path: file.fileStorageId,
126
+ type: "machinecode",
127
+ typePath: [
128
+ "machinecode",
129
+ file.fileFormat
130
+ ],
131
+ origin: "local",
132
+ refs: {
133
+ resource: `/api/files/local/${file.fileStorageId}`,
134
+ download: `/api/files/local/${file.fileStorageId}`
135
+ },
136
+ gcodeAnalysis: file.metadata ? {
137
+ estimatedPrintTime: file.metadata.gcodePrintTimeSeconds,
138
+ filament: {
139
+ tool0: {
140
+ length: file.metadata.filamentUsedMm,
141
+ volume: file.metadata.filamentUsedCm3
142
+ }
143
+ }
144
+ } : undefined,
145
+ date: Math.floor(file.createdAt.getTime() / 1000),
146
+ size: file.fileSize
147
+ }));
148
+ res.send({
149
+ files: knownFiles,
150
+ free: 0,
151
+ total: 0
152
+ });
153
+ } catch (error) {
154
+ this.logger.error(`Failed to list files via printer API: ${error}`);
155
+ throw error;
156
+ }
157
+ }
158
+ async getServer(req, res) {
159
+ res.send({
160
+ version: "1.9.0",
161
+ safemode: null
162
+ });
163
+ }
164
+ }
165
+ _ts_decorate([
166
+ (0, _awilixexpress.GET)(),
167
+ (0, _awilixexpress.route)("/version"),
168
+ _ts_metadata("design:type", Function),
169
+ _ts_metadata("design:paramtypes", [
170
+ typeof _express.Request === "undefined" ? Object : _express.Request,
171
+ typeof _express.Response === "undefined" ? Object : _express.Response
172
+ ]),
173
+ _ts_metadata("design:returntype", Promise)
174
+ ], SlicerCompatController.prototype, "getVersion", null);
175
+ _ts_decorate([
176
+ (0, _awilixexpress.POST)(),
177
+ (0, _awilixexpress.route)("/files/local"),
178
+ _ts_metadata("design:type", Function),
179
+ _ts_metadata("design:paramtypes", [
180
+ typeof _express.Request === "undefined" ? Object : _express.Request,
181
+ typeof _express.Response === "undefined" ? Object : _express.Response
182
+ ]),
183
+ _ts_metadata("design:returntype", Promise)
184
+ ], SlicerCompatController.prototype, "uploadFile", null);
185
+ _ts_decorate([
186
+ (0, _awilixexpress.GET)(),
187
+ (0, _awilixexpress.route)("/files"),
188
+ _ts_metadata("design:type", Function),
189
+ _ts_metadata("design:paramtypes", [
190
+ typeof _express.Request === "undefined" ? Object : _express.Request,
191
+ typeof _express.Response === "undefined" ? Object : _express.Response
192
+ ]),
193
+ _ts_metadata("design:returntype", Promise)
194
+ ], SlicerCompatController.prototype, "listFiles", null);
195
+ _ts_decorate([
196
+ (0, _awilixexpress.GET)(),
197
+ (0, _awilixexpress.route)("/server"),
198
+ _ts_metadata("design:type", Function),
199
+ _ts_metadata("design:paramtypes", [
200
+ typeof _express.Request === "undefined" ? Object : _express.Request,
201
+ typeof _express.Response === "undefined" ? Object : _express.Response
202
+ ]),
203
+ _ts_metadata("design:returntype", Promise)
204
+ ], SlicerCompatController.prototype, "getServer", null);
205
+ SlicerCompatController = _ts_decorate([
206
+ (0, _awilixexpress.route)("/api"),
207
+ _ts_metadata("design:type", Function),
208
+ _ts_metadata("design:paramtypes", [
209
+ typeof _loggerfactory.ILoggerFactory === "undefined" ? Object : _loggerfactory.ILoggerFactory,
210
+ typeof _filestorageservice.FileStorageService === "undefined" ? Object : _filestorageservice.FileStorageService,
211
+ typeof _fileanalysisservice.FileAnalysisService === "undefined" ? Object : _fileanalysisservice.FileAnalysisService,
212
+ typeof _multerservice.MulterService === "undefined" ? Object : _multerservice.MulterService
213
+ ])
214
+ ], SlicerCompatController);
215
+
216
+ //# sourceMappingURL=slicer-compat.controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/controllers/slicer-compat.controller.ts"],"names":["SlicerCompatController","logger","loggerFactory","fileStorageService","fileAnalysisService","multerService","name","getVersion","req","res","send","api","server","text","uploadFile","files","acceptedExtensions","AppConstants","defaultAcceptedGcodeExtensions","defaultAcceptedBambuExtensions","multerLoadFileAsync","length","status","error","file","print","body","select","log","originalname","fileHash","calculateFileHash","path","fileStorageId","saveFile","filePath","getFilePath","metadata","thumbnails","analysisResult","analyzeFile","thumbnailMetadata","saveThumbnails","saveMetadata","analysisError","clearUploadedFile","e","local","origin","refs","resource","download","done","_fdmMonster","analyzed","Object","keys","thumbnailCount","printTime","gcodePrintTimeSeconds","filament","filamentUsedGrams","listFiles","listAllFiles","knownFiles","map","_originalFileName","fileName","type","typePath","fileFormat","gcodeAnalysis","estimatedPrintTime","tool0","filamentUsedMm","volume","filamentUsedCm3","undefined","date","Math","floor","createdAt","getTime","size","fileSize","free","total","getServer","version","safemode"],"mappings":"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"}
@@ -40,15 +40,13 @@ class UserController {
40
40
  roleService;
41
41
  authService;
42
42
  settingsStore;
43
- isTypeormMode;
44
43
  logger;
45
- constructor(loggerFactory, userService, configService, roleService, authService, settingsStore, isTypeormMode){
44
+ constructor(loggerFactory, userService, configService, roleService, authService, settingsStore){
46
45
  this.userService = userService;
47
46
  this.configService = configService;
48
47
  this.roleService = roleService;
49
48
  this.authService = authService;
50
49
  this.settingsStore = settingsStore;
51
- this.isTypeormMode = isTypeormMode;
52
50
  this.logger = loggerFactory(UserController.name);
53
51
  }
54
52
  async list(req, res) {
@@ -56,14 +54,14 @@ class UserController {
56
54
  res.send(users.map((u)=>this.userService.toDto(u)));
57
55
  }
58
56
  async create(req, res) {
59
- const { username, password, roleIds } = await (0, _validators.validateMiddleware)(req, (0, _usercontrollervalidation.registerUserWithRolesSchema)(this.isTypeormMode));
57
+ const { username, password, roles } = await (0, _validators.validateMiddleware)(req, _usercontrollervalidation.registerUserWithRolesSchema);
60
58
  if (username.toLowerCase().includes("admin") || username.toLowerCase().includes("root") || username.toLowerCase() === "demo") {
61
59
  throw new _runtimeexceptions.BadRequestException("Username is not allowed");
62
60
  }
63
61
  await this.userService.register({
64
62
  username,
65
63
  password,
66
- roles: roleIds,
64
+ roles,
67
65
  needsPasswordChange: false,
68
66
  isDemoUser: false,
69
67
  isRootUser: false,
@@ -138,19 +136,18 @@ class UserController {
138
136
  const ownUser = await this.userService.getUser(ownUserId);
139
137
  const mappedUser = this.userService.toDto(ownUser);
140
138
  const ownUserRoles = mappedUser.roles;
141
- const adminRole = await this.roleService.getSynchronizedRoleByName(_authorizationconstants.ROLES.ADMIN);
142
- if (ownUserId == changedUserId && !ownUserRoles.includes(adminRole.id) && !mappedUser.isRootUser) {
139
+ if (ownUserId == changedUserId && !ownUserRoles.includes(_authorizationconstants.ROLES.ADMIN) && !mappedUser.isRootUser) {
143
140
  throw new _runtimeexceptions.ForbiddenError("Only an ADMIN or OWNER user is allowed to change its own roles");
144
141
  }
145
- const { roleIds } = await (0, _validators.validateInput)(req.body, (0, _usercontrollervalidation.setUserRolesSchema)(this.isTypeormMode));
146
- if (ownUserId == changedUserId && !roleIds.includes(adminRole.id)) {
142
+ const { roles } = await (0, _validators.validateInput)(req.body, _usercontrollervalidation.setUserRolesSchema);
143
+ if (ownUserId == changedUserId && !roles.includes(_authorizationconstants.ROLES.ADMIN)) {
147
144
  if (mappedUser.isRootUser) {
148
145
  throw new _runtimeexceptions.BadRequestException("It does not make sense to remove ADMIN role from an OWNER user.");
149
146
  } else {
150
147
  throw new _runtimeexceptions.BadRequestException("An ADMIN user cannot remove its ADMIN role.");
151
148
  }
152
149
  }
153
- await this.userService.setUserRoleIds(changedUserId, roleIds);
150
+ await this.userService.setUserRoles(changedUserId, roles);
154
151
  res.send();
155
152
  }
156
153
  async setVerified(req, res) {
@@ -358,8 +355,7 @@ UserController = _ts_decorate([
358
355
  typeof _configservice.IConfigService === "undefined" ? Object : _configservice.IConfigService,
359
356
  typeof _roleserviceinterface.IRoleService === "undefined" ? Object : _roleserviceinterface.IRoleService,
360
357
  typeof _authserviceinterface.IAuthService === "undefined" ? Object : _authserviceinterface.IAuthService,
361
- typeof _settingsstore.SettingsStore === "undefined" ? Object : _settingsstore.SettingsStore,
362
- Boolean
358
+ typeof _settingsstore.SettingsStore === "undefined" ? Object : _settingsstore.SettingsStore
363
359
  ])
364
360
  ], UserController);
365
361
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/controllers/user.controller.ts"],"names":["UserController","logger","loggerFactory","userService","configService","roleService","authService","settingsStore","isTypeormMode","name","list","req","res","users","listUsers","send","map","u","toDto","create","username","password","roleIds","validateMiddleware","registerUserWithRolesSchema","toLowerCase","includes","BadRequestException","register","roles","needsPasswordChange","isDemoUser","isRootUser","isVerified","listRoles","roleDtos","r","profile","user","id","getUser","get","local","delete","deletedUserId","ownUserId","ForbiddenError","isUserRootUser","isDemoMode","demoUserId","getDemoUserId","throwIfDemoMode","deleteUser","logoutUserId","e","error","errorSummary","changeUsername","changedUserId","getLoginRequired","validateInput","body","usernameSchema","updateUsernameById","changePassword","oldPassword","newPassword","changePasswordSchema","updatePasswordById","setUserRoles","ownUser","mappedUser","ownUserRoles","adminRole","getSynchronizedRoleByName","ROLES","ADMIN","setUserRolesSchema","setUserRoleIds","setVerified","isVerifiedSchema","setVerifiedById","setRootUser","userId","isRootUserSchema","setIsRootUserById","authorizeRoles","ParamId","demoUserNotAllowed","AppConstants","apiRoute","authenticate"],"mappings":";;;;+BA4BaA;;;eAAAA;;;yBA5BqB;iCACL;8BACgB;wCACvB;4BAC4B;mCACE;+BACrB;sCACF;gCACM;sCACN;sCACA;+BAEE;4BACF;+BACC;+BACmB;0CAQ1C;0CACiB;;;;;;;;;;AAIjB,MAAMA;;;;;;;IACXC,OAAsB;IAEtB,YACEC,aAA6B,EAC7B,AAAiBC,WAAyB,EAC1C,AAAiBC,aAA6B,EAC9C,AAAiBC,WAAyB,EAC1C,AAAiBC,WAAyB,EAC1C,AAAiBC,aAA4B,EAC7C,AAAiBC,aAAsB,CACvC;aANiBL,cAAAA;aACAC,gBAAAA;aACAC,cAAAA;aACAC,cAAAA;aACAC,gBAAAA;aACAC,gBAAAA;QAEjB,IAAI,CAACP,MAAM,GAAGC,cAAcF,eAAeS,IAAI;IACjD;IAEA,MAGMC,KAAKC,GAAY,EAAEC,GAAa,EAAE;QACtC,MAAMC,QAAQ,MAAM,IAAI,CAACV,WAAW,CAACW,SAAS;QAC9CF,IAAIG,IAAI,CAACF,MAAMG,GAAG,CAAC,CAACC,IAAM,IAAI,CAACd,WAAW,CAACe,KAAK,CAACD;IACnD;IAEA,MAGME,OAAOR,GAAY,EAAEC,GAAa,EAAE;QACxC,MAAM,EAAEQ,QAAQ,EAAEC,QAAQ,EAAEC,OAAO,EAAE,GAAG,MAAMC,IAAAA,8BAAkB,EAC9DZ,KACAa,IAAAA,qDAA2B,EAAC,IAAI,CAAChB,aAAa;QAEhD,IACEY,SAASK,WAAW,GAAGC,QAAQ,CAAC,YAChCN,SAASK,WAAW,GAAGC,QAAQ,CAAC,WAChCN,SAASK,WAAW,OAAO,QAC3B;YACA,MAAM,IAAIE,sCAAmB,CAAC;QAChC;QAEA,MAAM,IAAI,CAACxB,WAAW,CAACyB,QAAQ,CAAC;YAC9BR;YACAC;YACAQ,OAAOP;YACPQ,qBAAqB;YACrBC,YAAY;YACZC,YAAY;YAEZC,YAAY;QACd;QACArB,IAAIG,IAAI;IACV;IAEA,MAEMmB,UAAUvB,GAAY,EAAEC,GAAa,EAAE;QAC3C,MAAMuB,WAAW,IAAI,CAAC9B,WAAW,CAACwB,KAAK,CAACb,GAAG,CAAC,CAACoB,IAAM,IAAI,CAAC/B,WAAW,CAACa,KAAK,CAACkB;QAC1ExB,IAAIG,IAAI,CAACoB;IACX;IAEA,MAEME,QAAQ1B,GAAY,EAAEC,GAAa,EAAE;QACzC,IAAI,CAACD,IAAI2B,IAAI,EAAEC,IAAI;YACjB3B,IAAIG,IAAI,CAAC,CAAC;YACV;QACF;QAEA,MAAMuB,OAAO,MAAM,IAAI,CAACnC,WAAW,CAACqC,OAAO,CAAC7B,IAAI2B,IAAI,EAAEC;QACtD3B,IAAIG,IAAI,CAAC,IAAI,CAACZ,WAAW,CAACe,KAAK,CAACoB;IAClC;IAEA,MAGMG,IAAI9B,GAAY,EAAEC,GAAa,EAAE;QACrC,MAAM0B,OAAO,MAAM,IAAI,CAACnC,WAAW,CAACqC,OAAO,CAAC7B,IAAI+B,KAAK,CAACH,EAAE;QACxD3B,IAAIG,IAAI,CAAC,IAAI,CAACZ,WAAW,CAACe,KAAK,CAACoB;IAClC;IAEA,MAGMK,OAAOhC,GAAY,EAAEC,GAAa,EAAE;QACxC,MAAMgC,gBAAgBjC,IAAI+B,KAAK,CAACH,EAAE;QAClC,MAAMM,YAAYlC,IAAI2B,IAAI,EAAEC;QAC5B,IAAIM,aAAaD,eAAe;YAC9B,MAAM,IAAIE,iCAAc,CAAC;QAC3B;QAEA,MAAMd,aAAa,MAAM,IAAI,CAAC7B,WAAW,CAAC4C,cAAc,CAACH;QACzD,IAAIZ,YAAY;YACd,MAAM,IAAIc,iCAAc,CAAC;QAC3B;QAEA,IAAI,IAAI,CAAC1C,aAAa,CAAC4C,UAAU,IAAI;YACnC,MAAMC,aAAa,MAAM,IAAI,CAAC9C,WAAW,CAAC+C,aAAa;YACvD,IAAIN,kBAAkBK,YAAY;gBAChC,IAAI,CAACE,eAAe;YACtB;QACF;QAEA,MAAM,IAAI,CAAChD,WAAW,CAACiD,UAAU,CAACR;QAElC,IAAI;YACF,MAAM,IAAI,CAACtC,WAAW,CAAC+C,YAAY,CAACT;QACtC,EAAE,OAAOU,GAAG;YACV,IAAI,CAACrD,MAAM,CAACsD,KAAK,CAACC,IAAAA,wBAAY,EAACF;QACjC;QAEA1C,IAAIG,IAAI;IACV;IAEA,MAGM0C,eAAe9C,GAAY,EAAEC,GAAa,EAAE;QAChD,MAAM8C,gBAAgB/C,IAAI+B,KAAK,CAACH,EAAE;QAElC,IAAI5B,IAAI2B,IAAI,EAAEC,MAAMmB,iBAAkB,MAAM,IAAI,CAACnD,aAAa,CAACoD,gBAAgB,IAAK;YAClF,MAAM,IAAIb,iCAAc,CAAC;QAC3B;QAEA,MAAM,EAAE1B,QAAQ,EAAE,GAAG,MAAMwC,IAAAA,yBAAa,EAACjD,IAAIkD,IAAI,EAAEC,wCAAc;QACjE,MAAM,IAAI,CAAC3D,WAAW,CAAC4D,kBAAkB,CAACL,eAAetC;QACzDR,IAAIG,IAAI;IACV;IAEA,MAGMiD,eAAerD,GAAY,EAAEC,GAAa,EAAE;QAChD,MAAM8C,gBAAgB/C,IAAI+B,KAAK,CAACH,EAAE;QAElC,IAAI5B,IAAI2B,IAAI,EAAEC,MAAMmB,iBAAkB,MAAM,IAAI,CAACnD,aAAa,CAACoD,gBAAgB,IAAK;YAClF,MAAM,IAAIb,iCAAc,CAAC;QAC3B;QAEA,MAAM,EAAEmB,WAAW,EAAEC,WAAW,EAAE,GAAG,MAAMN,IAAAA,yBAAa,EAACjD,IAAIkD,IAAI,EAAEM,8CAAoB;QACvF,MAAM,IAAI,CAAChE,WAAW,CAACiE,kBAAkB,CAACV,eAAeO,aAAaC;QACtEtD,IAAIG,IAAI;IACV;IAEA,MAGMsD,aAAa1D,GAAY,EAAEC,GAAa,EAAE;QAC9C,MAAM8C,gBAAgB/C,IAAI+B,KAAK,CAACH,EAAE;QAElC,MAAMM,YAAYlC,IAAI2B,IAAI,EAAEC;QAC5B,IAAI,CAACM,WAAW;YACd,MAAM,IAAIC,iCAAc,CAAC;QAC3B;QAEA,MAAMwB,UAAU,MAAM,IAAI,CAACnE,WAAW,CAACqC,OAAO,CAACK;QAE/C,MAAM0B,aAAa,IAAI,CAACpE,WAAW,CAACe,KAAK,CAACoD;QAE1C,MAAME,eAAeD,WAAW1C,KAAK;QACrC,MAAM4C,YAAY,MAAM,IAAI,CAACpE,WAAW,CAACqE,yBAAyB,CAACC,6BAAK,CAACC,KAAK;QAE9E,IAAI/B,aAAaa,iBAAiB,CAACc,aAAa9C,QAAQ,CAAC+C,UAAUlC,EAAE,KAAK,CAACgC,WAAWvC,UAAU,EAAE;YAChG,MAAM,IAAIc,iCAAc,CAAC;QAC3B;QAEA,MAAM,EAAExB,OAAO,EAAE,GAAG,MAAMsC,IAAAA,yBAAa,EAACjD,IAAIkD,IAAI,EAAEgB,IAAAA,4CAAkB,EAAC,IAAI,CAACrE,aAAa;QAEvF,IAAIqC,aAAaa,iBAAiB,CAACpC,QAAQI,QAAQ,CAAC+C,UAAUlC,EAAE,GAAG;YACjE,IAAIgC,WAAWvC,UAAU,EAAE;gBACzB,MAAM,IAAIL,sCAAmB,CAAC;YAChC,OAAO;gBACL,MAAM,IAAIA,sCAAmB,CAAC;YAChC;QACF;QAEA,MAAM,IAAI,CAACxB,WAAW,CAAC2E,cAAc,CAACpB,eAAepC;QACrDV,IAAIG,IAAI;IACV;IAEA,MAGMgE,YAAYpE,GAAY,EAAEC,GAAa,EAAE;QAC7C,MAAM8C,gBAAgB/C,IAAI+B,KAAK,CAACH,EAAE;QAElC,MAAMM,YAAYlC,IAAI2B,IAAI,EAAEC;QAC5B,IAAIM,aAAaa,eAAe;YAC9B,MAAM,IAAIZ,iCAAc,CAAC;QAC3B;QAEA,MAAMd,aAAa,MAAM,IAAI,CAAC7B,WAAW,CAAC4C,cAAc,CAACW;QACzD,IAAI1B,YAAY;YACd,MAAM,IAAIc,iCAAc,CAAC;QAC3B;QAEA,MAAM,EAAEb,UAAU,EAAE,GAAG,MAAM2B,IAAAA,yBAAa,EAACjD,IAAIkD,IAAI,EAAEmB,0CAAgB;QACrE,MAAM,IAAI,CAAC7E,WAAW,CAAC8E,eAAe,CAACvB,eAAezB;QAEtDrB,IAAIG,IAAI;IACV;IAEA,MAGMmE,YAAYvE,GAAY,EAAEC,GAAa,EAAE;QAC7C,MAAM8C,gBAAgB/C,IAAI+B,KAAK,CAACH,EAAE;QAElC,MAAM4C,SAASxE,IAAI2B,IAAI,EAAEC;QACzB,IAAI4C,QAAQ;YACV,MAAMnD,aAAa,MAAM,IAAI,CAAC7B,WAAW,CAAC4C,cAAc,CAACoC;YACzD,IAAI,CAACnD,YAAY;gBACf,MAAM,IAAIc,iCAAc,CAAC;YAC3B;QACF;QACA,MAAM,EAAEd,UAAU,EAAE,GAAG,MAAM4B,IAAAA,yBAAa,EAACjD,IAAIkD,IAAI,EAAEuB,0CAAgB;QACrE,MAAM,IAAI,CAACjF,WAAW,CAACkF,iBAAiB,CAAC3B,eAAe1B;QACxDpB,IAAIG,IAAI;IACV;IAEAoC,kBAAkB;QAChB,MAAMH,aAAa,IAAI,CAAC5C,aAAa,CAAC4C,UAAU;QAChD,IAAIA,YAAY;YACd,MAAM,IAAIF,iCAAc,CAAC;QAC3B;IACF;AACF;;;;;QA/MWwC,IAAAA,4BAAc,EAAC;YAACX,6BAAK,CAACC,KAAK;SAAC;;;;;;;;;;;;;QAQ5BU,IAAAA,4BAAc,EAAC;YAACX,6BAAK,CAACC,KAAK;SAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAgD5BU,IAAAA,4BAAc,EAAC;YAACX,6BAAK,CAACC,KAAK;SAAC;QAAGW,IAAAA,iCAAO,EAAC;;;;;;;;;;;;;QAQvCD,IAAAA,4BAAc,EAAC;YAACX,6BAAK,CAACC,KAAK;SAAC;QAAGY,kCAAkB;QAAED,IAAAA,iCAAO,EAAC;;;;;;;;;;;;;QAiC3DC,kCAAkB;QAAED,IAAAA,iCAAO,EAAC;;;;;;;;;;;;;QAe5BC,kCAAkB;QAAED,IAAAA,iCAAO,EAAC;;;;;;;;;;;;;QAe5BD,IAAAA,4BAAc,EAAC;YAACX,6BAAK,CAACC,KAAK;SAAC;QAAGY,kCAAkB;QAAED,IAAAA,iCAAO,EAAC;;;;;;;;;;;;;QAoC3DD,IAAAA,4BAAc,EAAC;YAACX,6BAAK,CAACC,KAAK;SAAC;QAAGY,kCAAkB;QAAED,IAAAA,iCAAO,EAAC;;;;;;;;;;;;;QAsB3DC,kCAAkB;QAAED,IAAAA,iCAAO,EAAC;;;;;;;;;;8BA5MhCE,6BAAY,CAACC,QAAQ,GAAG;;QACtBC,IAAAA,0BAAY"}
1
+ {"version":3,"sources":["../../src/controllers/user.controller.ts"],"names":["UserController","logger","loggerFactory","userService","configService","roleService","authService","settingsStore","name","list","req","res","users","listUsers","send","map","u","toDto","create","username","password","roles","validateMiddleware","registerUserWithRolesSchema","toLowerCase","includes","BadRequestException","register","needsPasswordChange","isDemoUser","isRootUser","isVerified","listRoles","roleDtos","r","profile","user","id","getUser","get","local","delete","deletedUserId","ownUserId","ForbiddenError","isUserRootUser","isDemoMode","demoUserId","getDemoUserId","throwIfDemoMode","deleteUser","logoutUserId","e","error","errorSummary","changeUsername","changedUserId","getLoginRequired","validateInput","body","usernameSchema","updateUsernameById","changePassword","oldPassword","newPassword","changePasswordSchema","updatePasswordById","setUserRoles","ownUser","mappedUser","ownUserRoles","ROLES","ADMIN","setUserRolesSchema","setVerified","isVerifiedSchema","setVerifiedById","setRootUser","userId","isRootUserSchema","setIsRootUserById","authorizeRoles","ParamId","demoUserNotAllowed","AppConstants","apiRoute","authenticate"],"mappings":"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"}
@@ -21,18 +21,18 @@ _export(exports, {
21
21
  });
22
22
  const _zod = require("zod");
23
23
  const _genericvalidation = require("./generic.validation");
24
- const batchPrinterSchema = (isSqlite)=>_zod.z.object({
25
- printerIds: _zod.z.array((0, _genericvalidation.idRuleV2)(isSqlite))
26
- });
27
- const executeBatchRePrinterSchema = (isSqlite)=>_zod.z.object({
28
- prints: _zod.z.array(_zod.z.object({
29
- printerId: (0, _genericvalidation.idRuleV2)(isSqlite),
30
- path: _zod.z.string()
31
- }))
32
- });
33
- const batchPrintersEnabledSchema = (isSqlite)=>_zod.z.object({
34
- printerIds: _zod.z.array((0, _genericvalidation.idRuleV2)(isSqlite)),
35
- enabled: _zod.z.boolean()
36
- });
24
+ const batchPrinterSchema = _zod.z.object({
25
+ printerIds: _zod.z.array(_genericvalidation.idRuleV2)
26
+ });
27
+ const executeBatchRePrinterSchema = _zod.z.object({
28
+ prints: _zod.z.array(_zod.z.object({
29
+ printerId: _genericvalidation.idRuleV2,
30
+ path: _zod.z.string()
31
+ }))
32
+ });
33
+ const batchPrintersEnabledSchema = _zod.z.object({
34
+ printerIds: _zod.z.array(_genericvalidation.idRuleV2),
35
+ enabled: _zod.z.boolean()
36
+ });
37
37
 
38
38
  //# sourceMappingURL=batch-controller.validation.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/controllers/validation/batch-controller.validation.ts"],"names":["batchPrinterSchema","batchPrintersEnabledSchema","executeBatchRePrinterSchema","isSqlite","z","object","printerIds","array","idRuleV2","prints","printerId","path","string","enabled","boolean"],"mappings":";;;;;;;;;;;QAGaA;eAAAA;;QAeAC;eAAAA;;QAVAC;eAAAA;;;qBARK;mCACO;AAElB,MAAMF,qBAAqB,CAACG,WACjCC,MAAC,CAACC,MAAM,CAAC;QACPC,YAAYF,MAAC,CAACG,KAAK,CAACC,IAAAA,2BAAQ,EAACL;IAC/B;AAEK,MAAMD,8BAA8B,CAACC,WAC1CC,MAAC,CAACC,MAAM,CAAC;QACPI,QAAQL,MAAC,CAACG,KAAK,CACbH,MAAC,CAACC,MAAM,CAAC;YACPK,WAAWF,IAAAA,2BAAQ,EAACL;YACpBQ,MAAMP,MAAC,CAACQ,MAAM;QAChB;IAEJ;AAEK,MAAMX,6BAA6B,CAACE,WACzCC,MAAC,CAACC,MAAM,CAAC;QACPC,YAAYF,MAAC,CAACG,KAAK,CAACC,IAAAA,2BAAQ,EAACL;QAC7BU,SAAST,MAAC,CAACU,OAAO;IACpB"}
1
+ {"version":3,"sources":["../../../src/controllers/validation/batch-controller.validation.ts"],"names":["batchPrinterSchema","batchPrintersEnabledSchema","executeBatchRePrinterSchema","z","object","printerIds","array","idRuleV2","prints","printerId","path","string","enabled","boolean"],"mappings":";;;;;;;;;;;QAGaA;eAAAA;;QAaAC;eAAAA;;QATAC;eAAAA;;;qBAPK;mCACO;AAElB,MAAMF,qBAAqBG,MAAC,CAACC,MAAM,CAAC;IACzCC,YAAYF,MAAC,CAACG,KAAK,CAACC,2BAAQ;AAC9B;AAEO,MAAML,8BAA8BC,MAAC,CAACC,MAAM,CAAC;IAClDI,QAAQL,MAAC,CAACG,KAAK,CACbH,MAAC,CAACC,MAAM,CAAC;QACPK,WAAWF,2BAAQ;QACnBG,MAAMP,MAAC,CAACQ,MAAM;IAChB;AAEJ;AAEO,MAAMV,6BAA6BE,MAAC,CAACC,MAAM,CAAC;IACjDC,YAAYF,MAAC,CAACG,KAAK,CAACC,2BAAQ;IAC5BK,SAAST,MAAC,CAACU,OAAO;AACpB"}
@@ -17,13 +17,9 @@ _export(exports, {
17
17
  }
18
18
  });
19
19
  const _zod = require("zod");
20
- const isHexadecimal = (str)=>/^[a-fA-F0-9]+$/.test(str);
21
- const isMongoId = (str)=>isHexadecimal(str) && str.length === 24;
22
- const idRuleV2 = (isSqlite)=>isSqlite ? _zod.z.number().min(1) : _zod.z.string().refine(isMongoId, {
23
- message: "Invalid MongoDB ObjectId"
24
- });
25
- const idRulesV2 = (isSqlite)=>_zod.z.object({
26
- id: idRuleV2(isSqlite)
27
- }).strict();
20
+ const idRuleV2 = _zod.z.number().min(1);
21
+ const idRulesV2 = _zod.z.object({
22
+ id: idRuleV2
23
+ }).strict();
28
24
 
29
25
  //# sourceMappingURL=generic.validation.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/controllers/validation/generic.validation.ts"],"names":["idRuleV2","idRulesV2","isHexadecimal","str","test","isMongoId","length","isSqlite","z","number","min","string","refine","message","object","id","strict"],"mappings":";;;;;;;;;;;QAMaA;eAAAA;;QAOAC;eAAAA;;;qBAbK;AAElB,MAAMC,gBAAgB,CAACC,MAAgB,iBAAiBC,IAAI,CAACD;AAE7D,MAAME,YAAY,CAACF,MAAgBD,cAAcC,QAAQA,IAAIG,MAAM,KAAK;AAEjE,MAAMN,WAAW,CAACO,WACvBA,WACIC,MAAC,CAACC,MAAM,GAAGC,GAAG,CAAC,KACfF,MAAC,CAACG,MAAM,GAAGC,MAAM,CAACP,WAAW;QAC3BQ,SAAS;IACX;AAEC,MAAMZ,YAAY,CAACM,WACxBC,MAAC,CACEM,MAAM,CAAC;QACNC,IAAIf,SAASO;IACf,GACCS,MAAM"}
1
+ {"version":3,"sources":["../../../src/controllers/validation/generic.validation.ts"],"names":["idRuleV2","idRulesV2","z","number","min","object","id","strict"],"mappings":";;;;;;;;;;;QAEaA;eAAAA;;QAEAC;eAAAA;;;qBAJK;AAEX,MAAMD,WAAWE,MAAC,CAACC,MAAM,GAAGC,GAAG,CAAC;AAEhC,MAAMH,YAAYC,MAAC,CAACG,MAAM,CAAC;IAAEC,IAAIN;AAAS,GAAGO,MAAM"}
@@ -34,8 +34,8 @@ const getFileSchema = _zod.z.object({
34
34
  });
35
35
  const uploadFileSchema = _zod.z.object({
36
36
  startPrint: _zod.z.enum([
37
- 'true',
38
- 'false'
37
+ "true",
38
+ "false"
39
39
  ])
40
40
  });
41
41
 
@@ -33,7 +33,12 @@ _export(exports, {
33
33
  });
34
34
  const _zod = require("zod");
35
35
  const _serverconstants = require("../../server.constants");
36
- const _genericvalidation = require("./generic.validation");
36
+ const _authorizationconstants = require("../../constants/authorization.constants");
37
+ const roleNameSchema = _zod.z.enum([
38
+ _authorizationconstants.ROLES.ADMIN,
39
+ _authorizationconstants.ROLES.OPERATOR,
40
+ _authorizationconstants.ROLES.GUEST
41
+ ]);
37
42
  const registerUserSchema = _zod.z.object({
38
43
  username: _zod.z.string().min(_serverconstants.AppConstants.DEFAULT_USERNAME_MINLEN).nonempty(),
39
44
  password: _zod.z.string().min(_serverconstants.AppConstants.DEFAULT_PASSWORD_MINLEN).nonempty()
@@ -42,14 +47,14 @@ const changePasswordSchema = _zod.z.object({
42
47
  oldPassword: _zod.z.string().nonempty(),
43
48
  newPassword: _zod.z.string().min(_serverconstants.AppConstants.DEFAULT_PASSWORD_MINLEN).nonempty()
44
49
  });
45
- const registerUserWithRolesSchema = (isSqlite)=>_zod.z.object({
46
- username: _zod.z.string().min(_serverconstants.AppConstants.DEFAULT_USERNAME_MINLEN).nonempty(),
47
- password: _zod.z.string().min(_serverconstants.AppConstants.DEFAULT_PASSWORD_MINLEN).nonempty(),
48
- roleIds: _zod.z.array((0, _genericvalidation.idRuleV2)(isSqlite))
49
- });
50
- const setUserRolesSchema = (isSqlite)=>_zod.z.object({
51
- roleIds: _zod.z.array((0, _genericvalidation.idRuleV2)(isSqlite))
52
- });
50
+ const registerUserWithRolesSchema = _zod.z.object({
51
+ username: _zod.z.string().min(_serverconstants.AppConstants.DEFAULT_USERNAME_MINLEN).nonempty(),
52
+ password: _zod.z.string().min(_serverconstants.AppConstants.DEFAULT_PASSWORD_MINLEN).nonempty(),
53
+ roles: _zod.z.array(roleNameSchema)
54
+ });
55
+ const setUserRolesSchema = _zod.z.object({
56
+ roles: _zod.z.array(roleNameSchema)
57
+ });
53
58
  const usernameSchema = _zod.z.object({
54
59
  username: _zod.z.string().min(_serverconstants.AppConstants.DEFAULT_USERNAME_MINLEN).nonempty()
55
60
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/controllers/validation/user-controller.validation.ts"],"names":["changePasswordSchema","isRootUserSchema","isVerifiedSchema","registerUserSchema","registerUserWithRolesSchema","setUserRolesSchema","usernameSchema","z","object","username","string","min","AppConstants","DEFAULT_USERNAME_MINLEN","nonempty","password","DEFAULT_PASSWORD_MINLEN","oldPassword","newPassword","isSqlite","roleIds","array","idRuleV2","isVerified","boolean","isRootUser"],"mappings":";;;;;;;;;;;QASaA;eAAAA;;QAyBAC;eAAAA;;QAJAC;eAAAA;;QA1BAC;eAAAA;;QAUAC;eAAAA;;QAOAC;eAAAA;;QAKAC;eAAAA;;;qBA1BK;iCACW;mCACJ;AAElB,MAAMH,qBAAqBI,MAAC,CAACC,MAAM,CAAC;IACzCC,UAAUF,MAAC,CAACG,MAAM,GAAGC,GAAG,CAACC,6BAAY,CAACC,uBAAuB,EAAEC,QAAQ;IACvEC,UAAUR,MAAC,CAACG,MAAM,GAAGC,GAAG,CAACC,6BAAY,CAACI,uBAAuB,EAAEF,QAAQ;AACzE;AAEO,MAAMd,uBAAuBO,MAAC,CAACC,MAAM,CAAC;IAC3CS,aAAaV,MAAC,CAACG,MAAM,GAAGI,QAAQ;IAChCI,aAAaX,MAAC,CAACG,MAAM,GAAGC,GAAG,CAACC,6BAAY,CAACI,uBAAuB,EAAEF,QAAQ;AAC5E;AAEO,MAAMV,8BAA8B,CAACe,WAC1CZ,MAAC,CAACC,MAAM,CAAC;QACPC,UAAUF,MAAC,CAACG,MAAM,GAAGC,GAAG,CAACC,6BAAY,CAACC,uBAAuB,EAAEC,QAAQ;QACvEC,UAAUR,MAAC,CAACG,MAAM,GAAGC,GAAG,CAACC,6BAAY,CAACI,uBAAuB,EAAEF,QAAQ;QACvEM,SAASb,MAAC,CAACc,KAAK,CAACC,IAAAA,2BAAQ,EAACH;IAC5B;AAEK,MAAMd,qBAAqB,CAACc,WACjCZ,MAAC,CAACC,MAAM,CAAC;QACPY,SAASb,MAAC,CAACc,KAAK,CAACC,IAAAA,2BAAQ,EAACH;IAC5B;AAEK,MAAMb,iBAAiBC,MAAC,CAACC,MAAM,CAAC;IACrCC,UAAUF,MAAC,CAACG,MAAM,GAAGC,GAAG,CAACC,6BAAY,CAACC,uBAAuB,EAAEC,QAAQ;AACzE;AAEO,MAAMZ,mBAAmBK,MAAC,CAACC,MAAM,CAAC;IACvCe,YAAYhB,MAAC,CAACiB,OAAO;AACvB;AAEO,MAAMvB,mBAAmBM,MAAC,CAACC,MAAM,CAAC;IACvCiB,YAAYlB,MAAC,CAACiB,OAAO;AACvB"}
1
+ {"version":3,"sources":["../../../src/controllers/validation/user-controller.validation.ts"],"names":["changePasswordSchema","isRootUserSchema","isVerifiedSchema","registerUserSchema","registerUserWithRolesSchema","setUserRolesSchema","usernameSchema","roleNameSchema","z","enum","ROLES","ADMIN","OPERATOR","GUEST","object","username","string","min","AppConstants","DEFAULT_USERNAME_MINLEN","nonempty","password","DEFAULT_PASSWORD_MINLEN","oldPassword","newPassword","roles","array","isVerified","boolean","isRootUser"],"mappings":";;;;;;;;;;;QAWaA;eAAAA;;QAuBAC;eAAAA;;QAJAC;eAAAA;;QAxBAC;eAAAA;;QAUAC;eAAAA;;QAMAC;eAAAA;;QAIAC;eAAAA;;;qBA1BK;iCACW;wCACP;AAEtB,MAAMC,iBAAiBC,MAAC,CAACC,IAAI,CAAC;IAACC,6BAAK,CAACC,KAAK;IAAED,6BAAK,CAACE,QAAQ;IAAEF,6BAAK,CAACG,KAAK;CAAC;AAEjE,MAAMV,qBAAqBK,MAAC,CAACM,MAAM,CAAC;IACzCC,UAAUP,MAAC,CAACQ,MAAM,GAAGC,GAAG,CAACC,6BAAY,CAACC,uBAAuB,EAAEC,QAAQ;IACvEC,UAAUb,MAAC,CAACQ,MAAM,GAAGC,GAAG,CAACC,6BAAY,CAACI,uBAAuB,EAAEF,QAAQ;AACzE;AAEO,MAAMpB,uBAAuBQ,MAAC,CAACM,MAAM,CAAC;IAC3CS,aAAaf,MAAC,CAACQ,MAAM,GAAGI,QAAQ;IAChCI,aAAahB,MAAC,CAACQ,MAAM,GAAGC,GAAG,CAACC,6BAAY,CAACI,uBAAuB,EAAEF,QAAQ;AAC5E;AAEO,MAAMhB,8BAA8BI,MAAC,CAACM,MAAM,CAAC;IAClDC,UAAUP,MAAC,CAACQ,MAAM,GAAGC,GAAG,CAACC,6BAAY,CAACC,uBAAuB,EAAEC,QAAQ;IACvEC,UAAUb,MAAC,CAACQ,MAAM,GAAGC,GAAG,CAACC,6BAAY,CAACI,uBAAuB,EAAEF,QAAQ;IACvEK,OAAOjB,MAAC,CAACkB,KAAK,CAACnB;AACjB;AAEO,MAAMF,qBAAqBG,MAAC,CAACM,MAAM,CAAC;IACzCW,OAAOjB,MAAC,CAACkB,KAAK,CAACnB;AACjB;AAEO,MAAMD,iBAAiBE,MAAC,CAACM,MAAM,CAAC;IACrCC,UAAUP,MAAC,CAACQ,MAAM,GAAGC,GAAG,CAACC,6BAAY,CAACC,uBAAuB,EAAEC,QAAQ;AACzE;AAEO,MAAMlB,mBAAmBM,MAAC,CAACM,MAAM,CAAC;IACvCa,YAAYnB,MAAC,CAACoB,OAAO;AACvB;AAEO,MAAM3B,mBAAmBO,MAAC,CAACM,MAAM,CAAC;IACvCe,YAAYrB,MAAC,CAACoB,OAAO;AACvB"}
@@ -11,7 +11,7 @@ Object.defineProperty(exports, "AppDataSource", {
11
11
  require("reflect-metadata");
12
12
  const _typeorm = require("typeorm");
13
13
  const _dotenv = /*#__PURE__*/ _interop_require_default(require("dotenv"));
14
- const _path = require("path");
14
+ const _nodepath = require("node:path");
15
15
  const _serverconstants = require("./server.constants");
16
16
  const _fsutils = require("./utils/fs.utils");
17
17
  const _floorentity = require("./entities/floor.entity");
@@ -20,18 +20,25 @@ const _printerentity = require("./entities/printer.entity");
20
20
  const _settingsentity = require("./entities/settings.entity");
21
21
  const _entities = require("./entities");
22
22
  const _camerastreamentity = require("./entities/camera-stream.entity");
23
- const _customgcodeentity = require("./entities/custom-gcode.entity");
24
23
  const _roleentity = require("./entities/role.entity");
25
24
  const _userroleentity = require("./entities/user-role.entity");
26
25
  const _1706829146617InitSqlite = require("./migrations/1706829146617-InitSqlite");
27
- const _printergroupentity = require("./entities/printer-group.entity");
28
- const _groupentity = require("./entities/group.entity");
26
+ const _printertagentity = require("./entities/printer-tag.entity");
27
+ const _tagentity = require("./entities/tag.entity");
29
28
  const _1707494762198PrinterGroup = require("./migrations/1707494762198-PrinterGroup");
30
29
  const _1708465930665ChangePrintCompletionDeletePrinterCascade = require("./migrations/1708465930665-ChangePrintCompletionDeletePrinterCascade");
31
30
  const _1713300747465ChangeRoleNameUnique = require("./migrations/1713300747465-ChangeRoleNameUnique");
32
31
  const _1720338804844RemovePrinterFile = require("./migrations/1720338804844-RemovePrinterFile");
33
32
  const _1713897879622AddPrinterType = require("./migrations/1713897879622-AddPrinterType");
34
33
  const _1745141688926AddPrinterUsernamePassword = require("./migrations/1745141688926-AddPrinterUsernamePassword");
34
+ const _1766576698569DropPermissions = require("./migrations/1766576698569-DropPermissions");
35
+ const _1767278216516ChangeCameraPrinterOnDeleteSetNull = require("./migrations/1767278216516-ChangeCameraPrinterOnDeleteSetNull");
36
+ const _1767279607392DropCustomGcode = require("./migrations/1767279607392-DropCustomGcode");
37
+ const _1767291804417DropPrintCompletions = require("./migrations/1767291804417-DropPrintCompletions");
38
+ const _1767352862576DropSettingsFileClean = require("./migrations/1767352862576-DropSettingsFileClean");
39
+ const _1767370191762ChangeFloorNonUniqueOrder = require("./migrations/1767370191762-ChangeFloorNonUniqueOrder");
40
+ const _1767432108916RenameGroupToTag = require("./migrations/1767432108916-RenameGroupToTag");
41
+ const _1767451444137AddPrintJob = require("./migrations/1767451444137-AddPrintJob");
35
42
  function _interop_require_default(obj) {
36
43
  return obj && obj.__esModule ? obj : {
37
44
  default: obj
@@ -39,12 +46,12 @@ function _interop_require_default(obj) {
39
46
  }
40
47
  if (process.env.NODE_ENV !== "test") {
41
48
  _dotenv.default.config({
42
- path: (0, _path.join)((0, _fsutils.superRootPath)(), ".env")
49
+ path: (0, _nodepath.join)((0, _fsutils.superRootPath)(), ".env")
43
50
  });
44
51
  }
45
52
  const dbFolder = process.env[_serverconstants.AppConstants.DATABASE_PATH] ?? "./database";
46
53
  const dbFile = process.env[_serverconstants.AppConstants.DATABASE_FILE] ?? "./fdm-monster.sqlite";
47
- const dbName = dbFile === ":memory:" ? dbFile : (0, _path.join)((0, _fsutils.superRootPath)(), dbFolder, dbFile);
54
+ const dbName = dbFile === ":memory:" ? dbFile : (0, _nodepath.join)((0, _fsutils.superRootPath)(), dbFolder, dbFile);
48
55
  const AppDataSource = new _typeorm.DataSource({
49
56
  type: "better-sqlite3",
50
57
  database: dbName,
@@ -57,14 +64,12 @@ const AppDataSource = new _typeorm.DataSource({
57
64
  _settingsentity.Settings,
58
65
  _entities.User,
59
66
  _camerastreamentity.CameraStream,
60
- _customgcodeentity.CustomGcode,
61
67
  _roleentity.Role,
62
- _entities.Permission,
63
68
  _entities.RefreshToken,
64
- _entities.PrintCompletion,
65
69
  _userroleentity.UserRole,
66
- _groupentity.Group,
67
- _printergroupentity.PrinterGroup
70
+ _tagentity.Tag,
71
+ _printertagentity.PrinterTag,
72
+ _entities.PrintJob
68
73
  ],
69
74
  migrations: [
70
75
  _1706829146617InitSqlite.InitSqlite1706829146617,
@@ -73,7 +78,15 @@ const AppDataSource = new _typeorm.DataSource({
73
78
  _1713300747465ChangeRoleNameUnique.ChangeRoleNameUnique1713300747465,
74
79
  _1720338804844RemovePrinterFile.RemovePrinterFile1720338804844,
75
80
  _1713897879622AddPrinterType.AddPrinterType1713897879622,
76
- _1745141688926AddPrinterUsernamePassword.AddPrinterUsernamePassword1745141688926
81
+ _1745141688926AddPrinterUsernamePassword.AddPrinterUsernamePassword1745141688926,
82
+ _1766576698569DropPermissions.DropPermissions1766576698569,
83
+ _1767278216516ChangeCameraPrinterOnDeleteSetNull.ChangeCameraPrinterOnDeleteSetNull1767278216516,
84
+ _1767279607392DropCustomGcode.DropCustomGcode1767279607392,
85
+ _1767291804417DropPrintCompletions.DropPrintCompletions1767291804417,
86
+ _1767352862576DropSettingsFileClean.DropSettingsFileClean1767352862576,
87
+ _1767370191762ChangeFloorNonUniqueOrder.ChangeFloorNonUniqueOrder1767370191762,
88
+ _1767432108916RenameGroupToTag.RenameGroupToTag1767432108916,
89
+ _1767451444137AddPrintJob.AddPrintJob1767451444137
77
90
  ],
78
91
  subscribers: []
79
92
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/data-source.ts"],"names":["AppDataSource","process","env","NODE_ENV","dotenv","config","path","join","superRootPath","dbFolder","AppConstants","DATABASE_PATH","dbFile","DATABASE_FILE","dbName","DataSource","type","database","synchronize","logging","entities","Floor","FloorPosition","Printer","Settings","User","CameraStream","CustomGcode","Role","Permission","RefreshToken","PrintCompletion","UserRole","Group","PrinterGroup","migrations","InitSqlite1706829146617","PrinterGroup1707494762198","ChangePrintCompletionDeletePrinterCascade1708465930665","ChangeRoleNameUnique1713300747465","RemovePrinterFile1720338804844","AddPrinterType1713897879622","AddPrinterUsernamePassword1745141688926","subscribers"],"mappings":";;;;+BAqCaA;;;eAAAA;;;QArCN;yBACoB;+DACR;sBACE;iCACQ;yBACC;6BACR;qCACQ;+BACN;gCACC;0BACuC;oCACnC;mCACD;4BACP;gCACI;yCACe;oCACX;6BACP;2CACoB;wEAGnC;mDAC2C;gDACH;6CACH;yDACY;;;;;;AAExD,IAAIC,QAAQC,GAAG,CAACC,QAAQ,KAAK,QAAQ;IACnCC,eAAM,CAACC,MAAM,CAAC;QACZC,MAAMC,IAAAA,UAAI,EAACC,IAAAA,sBAAa,KAAI;IAC9B;AACF;AAEA,MAAMC,WAAWR,QAAQC,GAAG,CAACQ,6BAAY,CAACC,aAAa,CAAC,IAAI;AAC5D,MAAMC,SAASX,QAAQC,GAAG,CAACQ,6BAAY,CAACG,aAAa,CAAC,IAAI;AAC1D,MAAMC,SAASF,WAAW,aAAaA,SAASL,IAAAA,UAAI,EAACC,IAAAA,sBAAa,KAAIC,UAAUG;AAEzE,MAAMZ,gBAAgB,IAAIe,mBAAU,CAAC;IAC1CC,MAAM;IACNC,UAAUH;IACVI,aAAa;IACbC,SAAS;IACTC,UAAU;QACRC,kBAAK;QACLC,kCAAa;QACbC,sBAAO;QACPC,wBAAQ;QACRC,cAAI;QACJC,gCAAY;QACZC,8BAAW;QACXC,gBAAI;QACJC,oBAAU;QACVC,sBAAY;QACZC,yBAAe;QACfC,wBAAQ;QACRC,kBAAK;QACLC,gCAAY;KACb;IACDC,YAAY;QACVC,gDAAuB;QACvBC,oDAAyB;QACzBC,8GAAsD;QACtDC,oEAAiC;QACjCC,8DAA8B;QAC9BC,wDAA2B;QAC3BC,gFAAuC;KACxC;IACDC,aAAa,EAAE;AACjB"}
1
+ {"version":3,"sources":["../src/data-source.ts"],"names":["AppDataSource","process","env","NODE_ENV","dotenv","config","path","join","superRootPath","dbFolder","AppConstants","DATABASE_PATH","dbFile","DATABASE_FILE","dbName","DataSource","type","database","synchronize","logging","entities","Floor","FloorPosition","Printer","Settings","User","CameraStream","Role","RefreshToken","UserRole","Tag","PrinterTag","PrintJob","migrations","InitSqlite1706829146617","PrinterGroup1707494762198","ChangePrintCompletionDeletePrinterCascade1708465930665","ChangeRoleNameUnique1713300747465","RemovePrinterFile1720338804844","AddPrinterType1713897879622","AddPrinterUsernamePassword1745141688926","DropPermissions1766576698569","ChangeCameraPrinterOnDeleteSetNull1767278216516","DropCustomGcode1767279607392","DropPrintCompletions1767291804417","DropSettingsFileClean1767352862576","ChangeFloorNonUniqueOrder1767370191762","RenameGroupToTag1767432108916","AddPrintJob1767451444137","subscribers"],"mappings":";;;;+BA8CaA;;;eAAAA;;;QA9CN;yBACoB;+DACR;0BACE;iCACQ;yBACC;6BACR;qCACQ;+BACN;gCACC;0BACoB;oCAChB;4BACR;gCACI;yCACe;kCACb;2BACP;2CACsB;wEAGnC;mDAC2C;gDACH;6CACH;yDACY;8CACX;iEAGtC;8CACsC;mDACK;oDACC;wDACI;+CACT;0CACL;;;;;;AAEzC,IAAIC,QAAQC,GAAG,CAACC,QAAQ,KAAK,QAAQ;IACnCC,eAAM,CAACC,MAAM,CAAC;QACZC,MAAMC,IAAAA,cAAI,EAACC,IAAAA,sBAAa,KAAI;IAC9B;AACF;AAEA,MAAMC,WAAWR,QAAQC,GAAG,CAACQ,6BAAY,CAACC,aAAa,CAAC,IAAI;AAC5D,MAAMC,SAASX,QAAQC,GAAG,CAACQ,6BAAY,CAACG,aAAa,CAAC,IAAI;AAC1D,MAAMC,SAASF,WAAW,aAAaA,SAASL,IAAAA,cAAI,EAACC,IAAAA,sBAAa,KAAIC,UAAUG;AAEzE,MAAMZ,gBAAgB,IAAIe,mBAAU,CAAC;IAC1CC,MAAM;IACNC,UAAUH;IACVI,aAAa;IACbC,SAAS;IACTC,UAAU;QACRC,kBAAK;QACLC,kCAAa;QACbC,sBAAO;QACPC,wBAAQ;QACRC,cAAI;QACJC,gCAAY;QACZC,gBAAI;QACJC,sBAAY;QACZC,wBAAQ;QACRC,cAAG;QACHC,4BAAU;QACVC,kBAAQ;KACT;IACDC,YAAY;QACVC,gDAAuB;QACvBC,oDAAyB;QACzBC,8GAAsD;QACtDC,oEAAiC;QACjCC,8DAA8B;QAC9BC,wDAA2B;QAC3BC,gFAAuC;QACvCC,0DAA4B;QAC5BC,gGAA+C;QAC/CC,0DAA4B;QAC5BC,oEAAiC;QACjCC,sEAAkC;QAClCC,8EAAsC;QACtCC,4DAA6B;QAC7BC,kDAAwB;KACzB;IACDC,aAAa,EAAE;AACjB"}
@@ -44,7 +44,8 @@ _ts_decorate([
44
44
  ], CameraStream.prototype, "name", void 0);
45
45
  _ts_decorate([
46
46
  (0, _typeorm.OneToOne)(()=>_printerentity.Printer, {
47
- nullable: true
47
+ nullable: true,
48
+ onDelete: "SET NULL"
48
49
  }),
49
50
  (0, _typeorm.JoinColumn)({
50
51
  name: "printerId"