@fdm-monster/server 1.8.3 → 1.9.0-rc1

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 (439) hide show
  1. package/.env.template +5 -3
  2. package/.gitattributes +4 -2
  3. package/.yarn/install-state.gz +0 -0
  4. package/.yarn/releases/yarn-4.9.1.cjs +948 -0
  5. package/.yarnrc.yml +1 -1
  6. package/README.md +25 -26
  7. package/RELEASE_NOTES.MD +50 -1
  8. package/biome.json +33 -0
  9. package/dist/consoles/download-github-releases.js.map +1 -1
  10. package/dist/consoles/launch-http-servers.js +31 -0
  11. package/dist/consoles/launch-http-servers.js.map +1 -0
  12. package/dist/consoles/mock-octoprint.server.js +291 -0
  13. package/dist/consoles/mock-octoprint.server.js.map +1 -0
  14. package/dist/consoles/mock-prusalink.server.js +57 -0
  15. package/dist/consoles/mock-prusalink.server.js.map +1 -0
  16. package/dist/consoles/utils/api-messages.js +856 -0
  17. package/dist/consoles/utils/api-messages.js.map +1 -0
  18. package/dist/consoles/utils/delayed-memory.storage.js +42 -0
  19. package/dist/consoles/utils/delayed-memory.storage.js.map +1 -0
  20. package/dist/consoles/utils/ws-messages.js +88 -0
  21. package/dist/consoles/utils/ws-messages.js.map +1 -0
  22. package/dist/constants/event.constants.js +5 -21
  23. package/dist/constants/event.constants.js.map +1 -1
  24. package/dist/constants/server-settings.constants.js +6 -11
  25. package/dist/constants/server-settings.constants.js.map +1 -1
  26. package/dist/container.js +13 -14
  27. package/dist/container.js.map +1 -1
  28. package/dist/container.tokens.js +3 -4
  29. package/dist/container.tokens.js.map +1 -1
  30. package/dist/controllers/auth.controller.js +114 -24
  31. package/dist/controllers/auth.controller.js.map +1 -1
  32. package/dist/controllers/batch-call.controller.js +95 -24
  33. package/dist/controllers/batch-call.controller.js.map +1 -1
  34. package/dist/controllers/camera-stream.controller.js +16 -12
  35. package/dist/controllers/camera-stream.controller.js.map +1 -1
  36. package/dist/controllers/custom-gcode.controller.js +116 -40
  37. package/dist/controllers/custom-gcode.controller.js.map +1 -1
  38. package/dist/controllers/dto/update-client-dist.dto.js +0 -21
  39. package/dist/controllers/dto/update-client-dist.dto.js.map +1 -1
  40. package/dist/controllers/first-time-setup.controller.js +54 -18
  41. package/dist/controllers/first-time-setup.controller.js.map +1 -1
  42. package/dist/controllers/floor.controller.js +154 -43
  43. package/dist/controllers/floor.controller.js.map +1 -1
  44. package/dist/controllers/metrics.controller.js +56 -0
  45. package/dist/controllers/metrics.controller.js.map +1 -0
  46. package/dist/controllers/print-completion.controller.js +81 -18
  47. package/dist/controllers/print-completion.controller.js.map +1 -1
  48. package/dist/controllers/printer-files.controller.js +42 -28
  49. package/dist/controllers/printer-files.controller.js.map +1 -1
  50. package/dist/controllers/printer-group.controller.js +123 -33
  51. package/dist/controllers/printer-group.controller.js.map +1 -1
  52. package/dist/controllers/printer-settings.controller.js +73 -26
  53. package/dist/controllers/printer-settings.controller.js.map +1 -1
  54. package/dist/controllers/printer.controller.js +57 -198
  55. package/dist/controllers/printer.controller.js.map +1 -1
  56. package/dist/controllers/server-private.controller.js +153 -39
  57. package/dist/controllers/server-private.controller.js.map +1 -1
  58. package/dist/controllers/server-public.controller.js +79 -84
  59. package/dist/controllers/server-public.controller.js.map +1 -1
  60. package/dist/controllers/settings.controller.js +222 -79
  61. package/dist/controllers/settings.controller.js.map +1 -1
  62. package/dist/controllers/user.controller.js +67 -57
  63. package/dist/controllers/user.controller.js.map +1 -1
  64. package/dist/controllers/validation/auth-controller.validation.js +6 -5
  65. package/dist/controllers/validation/auth-controller.validation.js.map +1 -1
  66. package/dist/controllers/validation/batch-controller.validation.js +17 -18
  67. package/dist/controllers/validation/batch-controller.validation.js.map +1 -1
  68. package/dist/controllers/validation/generic.validation.js +8 -3
  69. package/dist/controllers/validation/generic.validation.js.map +1 -1
  70. package/dist/controllers/validation/printer-completion-controller.validation.js +16 -0
  71. package/dist/controllers/validation/printer-completion-controller.validation.js.map +1 -0
  72. package/dist/controllers/validation/printer-controller.validation.js +31 -50
  73. package/dist/controllers/validation/printer-controller.validation.js.map +1 -1
  74. package/dist/controllers/validation/printer-files-controller.validation.js +16 -15
  75. package/dist/controllers/validation/printer-files-controller.validation.js.map +1 -1
  76. package/dist/controllers/validation/printer-settings-controller.validation.js +6 -5
  77. package/dist/controllers/validation/printer-settings-controller.validation.js.map +1 -1
  78. package/dist/controllers/validation/server-private.validation.js +17 -0
  79. package/dist/controllers/validation/server-private.validation.js.map +1 -0
  80. package/dist/controllers/validation/setting.validation.js +28 -10
  81. package/dist/controllers/validation/setting.validation.js.map +1 -1
  82. package/dist/controllers/validation/user-controller.validation.js +44 -13
  83. package/dist/controllers/validation/user-controller.validation.js.map +1 -1
  84. package/dist/data-source.js +10 -6
  85. package/dist/data-source.js.map +1 -1
  86. package/dist/entities/camera-stream.entity.js +2 -3
  87. package/dist/entities/camera-stream.entity.js.map +1 -1
  88. package/dist/entities/custom-gcode.entity.js +1 -2
  89. package/dist/entities/custom-gcode.entity.js.map +1 -1
  90. package/dist/entities/floor-position.entity.js.map +1 -1
  91. package/dist/entities/floor.entity.js +1 -2
  92. package/dist/entities/floor.entity.js.map +1 -1
  93. package/dist/entities/group.entity.js +6 -2
  94. package/dist/entities/group.entity.js.map +1 -1
  95. package/dist/entities/permission.entity.js +1 -2
  96. package/dist/entities/permission.entity.js.map +1 -1
  97. package/dist/entities/print-completion.entity.js +1 -2
  98. package/dist/entities/print-completion.entity.js.map +1 -1
  99. package/dist/entities/printer-group.entity.js +6 -2
  100. package/dist/entities/printer-group.entity.js.map +1 -1
  101. package/dist/entities/printer.entity.js +22 -4
  102. package/dist/entities/printer.entity.js.map +1 -1
  103. package/dist/entities/refresh-token.entity.js +1 -2
  104. package/dist/entities/refresh-token.entity.js.map +1 -1
  105. package/dist/entities/role.entity.js +1 -2
  106. package/dist/entities/role.entity.js.map +1 -1
  107. package/dist/entities/settings.entity.js +1 -2
  108. package/dist/entities/settings.entity.js.map +1 -1
  109. package/dist/entities/user-role.entity.js +1 -2
  110. package/dist/entities/user-role.entity.js.map +1 -1
  111. package/dist/entities/user.entity.js +1 -2
  112. package/dist/entities/user.entity.js.map +1 -1
  113. package/dist/exceptions/runtime.exceptions.js.map +1 -1
  114. package/dist/handlers/logger.js +131 -36
  115. package/dist/handlers/logger.js.map +1 -1
  116. package/dist/handlers/validators.js +7 -116
  117. package/dist/handlers/validators.js.map +1 -1
  118. package/dist/index.js.map +1 -1
  119. package/dist/middleware/authenticate.js +11 -22
  120. package/dist/middleware/authenticate.js.map +1 -1
  121. package/dist/middleware/database.js.map +1 -1
  122. package/dist/middleware/demo.middleware.js +4 -17
  123. package/dist/middleware/demo.middleware.js.map +1 -1
  124. package/dist/middleware/exception.filter.js +23 -23
  125. package/dist/middleware/exception.filter.js.map +1 -1
  126. package/dist/middleware/global.middleware.js +4 -4
  127. package/dist/middleware/global.middleware.js.map +1 -1
  128. package/dist/middleware/param-converter.middleware.js +81 -0
  129. package/dist/middleware/param-converter.middleware.js.map +1 -0
  130. package/dist/middleware/passport.js +3 -5
  131. package/dist/middleware/passport.js.map +1 -1
  132. package/dist/middleware/printer-resolver.js +37 -0
  133. package/dist/middleware/printer-resolver.js.map +1 -0
  134. package/dist/middleware/printer.js +22 -10
  135. package/dist/middleware/printer.js.map +1 -1
  136. package/dist/middleware/socketio.middleware.js +27 -0
  137. package/dist/middleware/socketio.middleware.js.map +1 -0
  138. package/dist/migrations/1706829146617-InitSqlite.js +1 -1
  139. package/dist/migrations/1706829146617-InitSqlite.js.map +1 -1
  140. package/dist/migrations/1707494762198-PrinterGroup.js +1 -1
  141. package/dist/migrations/1707494762198-PrinterGroup.js.map +1 -1
  142. package/dist/migrations/1708465930665-ChangePrintCompletionDeletePrinterCascade.js +1 -1
  143. package/dist/migrations/1708465930665-ChangePrintCompletionDeletePrinterCascade.js.map +1 -1
  144. package/dist/migrations/1713897879622-AddPrinterType.js +1 -1
  145. package/dist/migrations/1713897879622-AddPrinterType.js.map +1 -1
  146. package/dist/migrations/1745141688926-AddPrinterUsernamePassword.js +229 -0
  147. package/dist/migrations/1745141688926-AddPrinterUsernamePassword.js.map +1 -0
  148. package/dist/models/Auth/Permission.js.map +1 -1
  149. package/dist/models/Auth/RefreshToken.js +1 -1
  150. package/dist/models/Auth/RefreshToken.js.map +1 -1
  151. package/dist/models/Auth/Role.js.map +1 -1
  152. package/dist/models/Auth/User.js.map +1 -1
  153. package/dist/models/CameraStream.js +20 -0
  154. package/dist/models/CameraStream.js.map +1 -1
  155. package/dist/models/CustomGcode.js.map +1 -1
  156. package/dist/models/Floor.js.map +1 -1
  157. package/dist/models/FloorPrinter.js +10 -1
  158. package/dist/models/FloorPrinter.js.map +1 -1
  159. package/dist/models/PrintCompletion.js.map +1 -1
  160. package/dist/models/Printer.js +12 -5
  161. package/dist/models/Printer.js.map +1 -1
  162. package/dist/models/Settings.js +5 -42
  163. package/dist/models/Settings.js.map +1 -1
  164. package/dist/models/index.js +0 -4
  165. package/dist/models/index.js.map +1 -1
  166. package/dist/mongo-migrations/20210713120034-printers-settingsapperance-apikey.js.map +1 -1
  167. package/dist/mongo-migrations/20210907173950-printers-enabled.js.map +1 -1
  168. package/dist/mongo-migrations/20211029110742-user-password-passwordhash.js.map +1 -1
  169. package/dist/mongo-migrations/20230414141005-floor-remove-groupinfloor.js.map +1 -1
  170. package/dist/mongo-migrations/20230427202911-printer-remove-sortindex.js.map +1 -1
  171. package/dist/mongo-migrations/20230716065316-user-remove-name.js.map +1 -1
  172. package/dist/mongo-migrations/20231111081809-printer-flatten-name.js.map +1 -1
  173. package/dist/mongo-migrations/20231111082521-printer-remove-settingsappearance.js.map +1 -1
  174. package/dist/mongo-migrations/20231202183902-printer-files-simpler.js.map +1 -1
  175. package/dist/server.constants.js +7 -4
  176. package/dist/server.constants.js.map +1 -1
  177. package/dist/server.core.js +29 -2
  178. package/dist/server.core.js.map +1 -1
  179. package/dist/server.env.js +13 -8
  180. package/dist/server.env.js.map +1 -1
  181. package/dist/server.host.js +24 -33
  182. package/dist/server.host.js.map +1 -1
  183. package/dist/services/authentication/auth.service.js +15 -20
  184. package/dist/services/authentication/auth.service.js.map +1 -1
  185. package/dist/services/authentication/jwt.service.js +1 -1
  186. package/dist/services/authentication/jwt.service.js.map +1 -1
  187. package/dist/services/core/batch-call.service.js +23 -25
  188. package/dist/services/core/batch-call.service.js.map +1 -1
  189. package/dist/services/core/client-bundle.service.js +78 -136
  190. package/dist/services/core/client-bundle.service.js.map +1 -1
  191. package/dist/services/core/config.service.js.map +1 -1
  192. package/dist/services/core/cradle.service.js +21 -0
  193. package/dist/services/core/cradle.service.js.map +1 -0
  194. package/dist/services/core/github.service.js +2 -2
  195. package/dist/services/core/github.service.js.map +1 -1
  196. package/dist/services/core/http-client.factory.js +1 -1
  197. package/dist/services/core/http-client.factory.js.map +1 -1
  198. package/dist/services/core/logs-manager.service.js +3 -3
  199. package/dist/services/core/logs-manager.service.js.map +1 -1
  200. package/dist/services/core/monsterpi.service.js +1 -1
  201. package/dist/services/core/monsterpi.service.js.map +1 -1
  202. package/dist/services/core/multer.service.js +8 -7
  203. package/dist/services/core/multer.service.js.map +1 -1
  204. package/dist/services/core/server-release.service.js +14 -8
  205. package/dist/services/core/server-release.service.js.map +1 -1
  206. package/dist/services/core/yaml.service.js +16 -17
  207. package/dist/services/core/yaml.service.js.map +1 -1
  208. package/dist/services/interfaces/camera-stream.dto.js +4 -34
  209. package/dist/services/interfaces/camera-stream.dto.js.map +1 -1
  210. package/dist/services/interfaces/custom-gcode.dto.js.map +1 -1
  211. package/dist/services/interfaces/floor.dto.js +5 -47
  212. package/dist/services/interfaces/floor.dto.js.map +1 -1
  213. package/dist/services/interfaces/login.dto.js +2 -0
  214. package/dist/services/interfaces/login.dto.js.map +1 -1
  215. package/dist/services/interfaces/print-completion.dto.js.map +1 -1
  216. package/dist/services/interfaces/printer-group.dto.js +0 -14
  217. package/dist/services/interfaces/printer-group.dto.js.map +1 -1
  218. package/dist/services/interfaces/printer.dto.js +11 -11
  219. package/dist/services/interfaces/printer.dto.js.map +1 -1
  220. package/dist/services/interfaces/settings.dto.js.map +1 -1
  221. package/dist/services/interfaces/task.interfaces.js +6 -0
  222. package/dist/services/interfaces/task.interfaces.js.map +1 -0
  223. package/dist/services/mongoose/camera-stream.service.js +17 -15
  224. package/dist/services/mongoose/camera-stream.service.js.map +1 -1
  225. package/dist/services/mongoose/custom-gcode.service.js +4 -2
  226. package/dist/services/mongoose/custom-gcode.service.js.map +1 -1
  227. package/dist/services/mongoose/floor.service.js +37 -30
  228. package/dist/services/mongoose/floor.service.js.map +1 -1
  229. package/dist/services/mongoose/permission.service.js +1 -1
  230. package/dist/services/mongoose/permission.service.js.map +1 -1
  231. package/dist/services/mongoose/print-completion.service.js +2 -2
  232. package/dist/services/mongoose/print-completion.service.js.map +1 -1
  233. package/dist/services/mongoose/print-completion.shared.js +2 -2
  234. package/dist/services/mongoose/print-completion.shared.js.map +1 -1
  235. package/dist/services/mongoose/printer.service.js +33 -45
  236. package/dist/services/mongoose/printer.service.js.map +1 -1
  237. package/dist/services/mongoose/refresh-token.service.js +5 -8
  238. package/dist/services/mongoose/refresh-token.service.js.map +1 -1
  239. package/dist/services/mongoose/role.service.js +14 -5
  240. package/dist/services/mongoose/role.service.js.map +1 -1
  241. package/dist/services/mongoose/settings.service.js +35 -62
  242. package/dist/services/mongoose/settings.service.js.map +1 -1
  243. package/dist/services/mongoose/user.service.js +8 -7
  244. package/dist/services/mongoose/user.service.js.map +1 -1
  245. package/dist/services/moonraker/constants/{websocket.constants.js → moonraker.constants.js} +1 -1
  246. package/dist/services/moonraker/constants/{websocket.constants.js.map → moonraker.constants.js.map} +1 -1
  247. package/dist/services/moonraker/moonraker-websocket.adapter.js +102 -94
  248. package/dist/services/moonraker/moonraker-websocket.adapter.js.map +1 -1
  249. package/dist/services/moonraker/moonraker.client.js +19 -14
  250. package/dist/services/moonraker/moonraker.client.js.map +1 -1
  251. package/dist/services/moonraker.api.js +3 -5
  252. package/dist/services/moonraker.api.js.map +1 -1
  253. package/dist/services/octoprint/constants/octoprint-service.constants.js +7 -36
  254. package/dist/services/octoprint/constants/octoprint-service.constants.js.map +1 -1
  255. package/dist/services/octoprint/constants/octoprint-websocket.constants.js +12 -3
  256. package/dist/services/octoprint/constants/octoprint-websocket.constants.js.map +1 -1
  257. package/dist/services/octoprint/dto/octoprint-event.dto.js +2 -1
  258. package/dist/services/octoprint/dto/octoprint-event.dto.js.map +1 -1
  259. package/dist/services/octoprint/octoprint-api.routes.js +0 -37
  260. package/dist/services/octoprint/octoprint-api.routes.js.map +1 -1
  261. package/dist/services/octoprint/octoprint-websocket.adapter.js +66 -72
  262. package/dist/services/octoprint/octoprint-websocket.adapter.js.map +1 -1
  263. package/dist/services/octoprint/octoprint.client.js +12 -185
  264. package/dist/services/octoprint/octoprint.client.js.map +1 -1
  265. package/dist/services/octoprint/utils/octoprint-http-client.builder.js.map +1 -1
  266. package/dist/services/octoprint.api.js +8 -14
  267. package/dist/services/octoprint.api.js.map +1 -1
  268. package/dist/services/orm/base.service.js +11 -12
  269. package/dist/services/orm/base.service.js.map +1 -1
  270. package/dist/services/orm/camera-stream.service.js +5 -1
  271. package/dist/services/orm/camera-stream.service.js.map +1 -1
  272. package/dist/services/orm/custom-gcode.service.js +2 -2
  273. package/dist/services/orm/custom-gcode.service.js.map +1 -1
  274. package/dist/services/orm/floor-position.service.js +0 -5
  275. package/dist/services/orm/floor-position.service.js.map +1 -1
  276. package/dist/services/orm/floor.service.js +43 -39
  277. package/dist/services/orm/floor.service.js.map +1 -1
  278. package/dist/services/orm/permission.service.js +3 -4
  279. package/dist/services/orm/permission.service.js.map +1 -1
  280. package/dist/services/orm/print-completion.service.js +2 -4
  281. package/dist/services/orm/print-completion.service.js.map +1 -1
  282. package/dist/services/orm/printer-group.service.js +2 -7
  283. package/dist/services/orm/printer-group.service.js.map +1 -1
  284. package/dist/services/orm/printer.service.js +21 -36
  285. package/dist/services/orm/printer.service.js.map +1 -1
  286. package/dist/services/orm/refresh-token.service.js +5 -11
  287. package/dist/services/orm/refresh-token.service.js.map +1 -1
  288. package/dist/services/orm/role.service.js +11 -10
  289. package/dist/services/orm/role.service.js.map +1 -1
  290. package/dist/services/orm/settings.service.js +37 -133
  291. package/dist/services/orm/settings.service.js.map +1 -1
  292. package/dist/services/orm/user.service.js +13 -15
  293. package/dist/services/orm/user.service.js.map +1 -1
  294. package/dist/services/printer-api.factory.js +9 -6
  295. package/dist/services/printer-api.factory.js.map +1 -1
  296. package/dist/services/printer-api.interface.js +13 -6
  297. package/dist/services/printer-api.interface.js.map +1 -1
  298. package/dist/services/prusa-link/constants/prusalink-event.dto.js +18 -0
  299. package/dist/services/prusa-link/constants/prusalink-event.dto.js.map +1 -0
  300. package/dist/services/prusa-link/constants/prusalink.constants.js +13 -0
  301. package/dist/services/prusa-link/constants/prusalink.constants.js.map +1 -0
  302. package/dist/services/prusa-link/dto/file-response.dto.js +6 -0
  303. package/dist/services/prusa-link/dto/file-response.dto.js.map +1 -0
  304. package/dist/services/{octoprint/dto/plugin.dto.js → prusa-link/dto/file.dto.js} +1 -1
  305. package/dist/services/prusa-link/dto/file.dto.js.map +1 -0
  306. package/dist/services/prusa-link/dto/job-state.dto.js +6 -0
  307. package/dist/services/prusa-link/dto/job-state.dto.js.map +1 -0
  308. package/dist/services/prusa-link/dto/printer-state.dto.js +6 -0
  309. package/dist/services/prusa-link/dto/printer-state.dto.js.map +1 -0
  310. package/dist/services/prusa-link/dto/status.dto.js +6 -0
  311. package/dist/services/prusa-link/dto/status.dto.js.map +1 -0
  312. package/dist/services/prusa-link/dto/version.dto.js +6 -0
  313. package/dist/services/prusa-link/dto/version.dto.js.map +1 -0
  314. package/dist/services/prusa-link/prusa-link-http-polling.adapter.js +142 -0
  315. package/dist/services/prusa-link/prusa-link-http-polling.adapter.js.map +1 -0
  316. package/dist/services/prusa-link/prusa-link.api.js +233 -0
  317. package/dist/services/prusa-link/prusa-link.api.js.map +1 -0
  318. package/dist/services/prusa-link/utils/digest-auth.params.js +6 -0
  319. package/dist/services/prusa-link/utils/digest-auth.params.js.map +1 -0
  320. package/dist/services/prusa-link/utils/digest-auth.util.js +28 -0
  321. package/dist/services/prusa-link/utils/digest-auth.util.js.map +1 -0
  322. package/dist/services/prusa-link/utils/prusa-link-http-client.builder.js +131 -0
  323. package/dist/services/prusa-link/utils/prusa-link-http-client.builder.js.map +1 -0
  324. package/dist/services/socket.factory.js +9 -6
  325. package/dist/services/socket.factory.js.map +1 -1
  326. package/dist/services/{core/task-manager.service.js → task-manager.service.js} +72 -78
  327. package/dist/services/task-manager.service.js.map +1 -0
  328. package/dist/services/validators/camera-service.validation.js +19 -0
  329. package/dist/services/validators/camera-service.validation.js.map +1 -0
  330. package/dist/services/validators/floor-service.validation.js +47 -36
  331. package/dist/services/validators/floor-service.validation.js.map +1 -1
  332. package/dist/services/validators/print-completion-service.validation.js +22 -9
  333. package/dist/services/validators/print-completion-service.validation.js.map +1 -1
  334. package/dist/services/validators/printer-service.validation.js +112 -29
  335. package/dist/services/validators/printer-service.validation.js.map +1 -1
  336. package/dist/services/validators/settings-service.validation.js +78 -66
  337. package/dist/services/validators/settings-service.validation.js.map +1 -1
  338. package/dist/services/validators/user-service.validation.js +17 -16
  339. package/dist/services/validators/user-service.validation.js.map +1 -1
  340. package/dist/services/validators/yaml-service.validation.js +94 -51
  341. package/dist/services/validators/yaml-service.validation.js.map +1 -1
  342. package/dist/shared/default-http-client.builder.js.map +1 -1
  343. package/dist/shared/load-controllers.js +20 -0
  344. package/dist/shared/load-controllers.js.map +1 -0
  345. package/dist/shared/runtime-settings.migration.js +46 -0
  346. package/dist/shared/runtime-settings.migration.js.map +1 -0
  347. package/dist/shared/websocket-rpc-extended.adapter.js +15 -14
  348. package/dist/shared/websocket-rpc-extended.adapter.js.map +1 -1
  349. package/dist/shared/websocket.adapter.js +4 -5
  350. package/dist/shared/websocket.adapter.js.map +1 -1
  351. package/dist/state/file-upload-tracker.cache.js +5 -4
  352. package/dist/state/file-upload-tracker.cache.js.map +1 -1
  353. package/dist/state/file.cache.js +1 -1
  354. package/dist/state/file.cache.js.map +1 -1
  355. package/dist/state/floor.store.js +6 -6
  356. package/dist/state/floor.store.js.map +1 -1
  357. package/dist/state/printer-events.cache.js +21 -22
  358. package/dist/state/printer-events.cache.js.map +1 -1
  359. package/dist/state/printer-files.store.js +6 -8
  360. package/dist/state/printer-files.store.js.map +1 -1
  361. package/dist/state/printer-socket.store.js +27 -50
  362. package/dist/state/printer-socket.store.js.map +1 -1
  363. package/dist/state/printer-thumbnail.cache.js +5 -9
  364. package/dist/state/printer-thumbnail.cache.js.map +1 -1
  365. package/dist/state/printer.cache.js +14 -12
  366. package/dist/state/printer.cache.js.map +1 -1
  367. package/dist/state/settings.store.js +74 -50
  368. package/dist/state/settings.store.js.map +1 -1
  369. package/dist/state/socket-io.gateway.js +39 -36
  370. package/dist/state/socket-io.gateway.js.map +1 -1
  371. package/dist/state/test-printer-socket.store.js +20 -15
  372. package/dist/state/test-printer-socket.store.js.map +1 -1
  373. package/dist/state/validation/create-test-printer.validation.js +13 -11
  374. package/dist/state/validation/create-test-printer.validation.js.map +1 -1
  375. package/dist/task.presets.js.map +1 -1
  376. package/dist/tasks/boot.task.js +14 -19
  377. package/dist/tasks/boot.task.js.map +1 -1
  378. package/dist/tasks/client-bundle.task.js +1 -3
  379. package/dist/tasks/client-bundle.task.js.map +1 -1
  380. package/dist/tasks/print-completion.socketio.task.js +27 -28
  381. package/dist/tasks/print-completion.socketio.task.js.map +1 -1
  382. package/dist/tasks/printer-file-clean.task.js +6 -10
  383. package/dist/tasks/printer-file-clean.task.js.map +1 -1
  384. package/dist/tasks/printer-websocket-restore.task.js +3 -14
  385. package/dist/tasks/printer-websocket-restore.task.js.map +1 -1
  386. package/dist/tasks/printer-websocket.task.js +2 -14
  387. package/dist/tasks/printer-websocket.task.js.map +1 -1
  388. package/dist/tasks/socketio.task.js +6 -33
  389. package/dist/tasks/socketio.task.js.map +1 -1
  390. package/dist/tasks/software-update.task.js +1 -1
  391. package/dist/tasks/software-update.task.js.map +1 -1
  392. package/dist/tasks.js +3 -3
  393. package/dist/tasks.js.map +1 -1
  394. package/dist/utils/array.util.js.map +1 -1
  395. package/dist/utils/cache/key-diff.cache.js.map +1 -1
  396. package/dist/utils/env.utils.js +0 -2
  397. package/dist/utils/env.utils.js.map +1 -1
  398. package/dist/utils/normalize-url.js +3 -2
  399. package/dist/utils/normalize-url.js.map +1 -1
  400. package/dist/utils/printer-type.utils.js.map +1 -1
  401. package/dist/utils/time.utils.js +7 -17
  402. package/dist/utils/time.utils.js.map +1 -1
  403. package/dist/utils/url.utils.js +3 -4
  404. package/dist/utils/url.utils.js.map +1 -1
  405. package/package.json +44 -47
  406. package/tsconfig.json +2 -1
  407. package/.yarn/releases/yarn-4.7.0.cjs +0 -935
  408. package/dist/consoles/check-ports.js +0 -170
  409. package/dist/consoles/check-ports.js.map +0 -1
  410. package/dist/consoles/http-file-receiver.console.js +0 -81
  411. package/dist/consoles/http-file-receiver.console.js.map +0 -1
  412. package/dist/consoles/sqlite-torm.js +0 -31
  413. package/dist/consoles/sqlite-torm.js.map +0 -1
  414. package/dist/consoles/upload-test.js +0 -52
  415. package/dist/consoles/upload-test.js.map +0 -1
  416. package/dist/controllers/plugin-firmware-update.controller.js +0 -234
  417. package/dist/controllers/plugin-firmware-update.controller.js.map +0 -1
  418. package/dist/entities/base.entity.js +0 -29
  419. package/dist/entities/base.entity.js.map +0 -1
  420. package/dist/entities/printer-file.entity.js +0 -140
  421. package/dist/entities/printer-file.entity.js.map +0 -1
  422. package/dist/handlers/cache-manager.js +0 -18
  423. package/dist/handlers/cache-manager.js.map +0 -1
  424. package/dist/models/PrinterFile.js +0 -44
  425. package/dist/models/PrinterFile.js.map +0 -1
  426. package/dist/services/core/task-manager.service.js.map +0 -1
  427. package/dist/services/octoprint/dto/plugin.dto.js.map +0 -1
  428. package/dist/services/octoprint/plugin-base.service.js +0 -101
  429. package/dist/services/octoprint/plugin-base.service.js.map +0 -1
  430. package/dist/services/octoprint/plugin-firmware-update.service.js +0 -100
  431. package/dist/services/octoprint/plugin-firmware-update.service.js.map +0 -1
  432. package/dist/services/octoprint/plugin-repository.cache.js +0 -46
  433. package/dist/services/octoprint/plugin-repository.cache.js.map +0 -1
  434. package/dist/utils/benchmark.util.js +0 -39
  435. package/dist/utils/benchmark.util.js.map +0 -1
  436. package/dist/utils/is-docker.js +0 -40
  437. package/dist/utils/is-docker.js.map +0 -1
  438. package/dist/utils/metric.utils.js +0 -35
  439. package/dist/utils/metric.utils.js.map +0 -1
@@ -9,42 +9,125 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- createMongoPrinterRules: function() {
13
- return createMongoPrinterRules;
12
+ createPrinterSchema: function() {
13
+ return createPrinterSchema;
14
14
  },
15
- createPrinterRules: function() {
16
- return createPrinterRules;
15
+ printerApiKeyValidator: function() {
16
+ return printerApiKeyValidator;
17
17
  },
18
- updatePrinterDisabledReasonRule: function() {
19
- return updatePrinterDisabledReasonRule;
18
+ printerDateAddedValidator: function() {
19
+ return printerDateAddedValidator;
20
20
  },
21
- updatePrinterEnabledRule: function() {
22
- return updatePrinterEnabledRule;
21
+ printerDisabledReasonValidator: function() {
22
+ return printerDisabledReasonValidator;
23
+ },
24
+ printerEnabledValidator: function() {
25
+ return printerEnabledValidator;
26
+ },
27
+ printerNameValidator: function() {
28
+ return printerNameValidator;
29
+ },
30
+ printerPasswordValidator: function() {
31
+ return printerPasswordValidator;
32
+ },
33
+ printerTypeValidator: function() {
34
+ return printerTypeValidator;
35
+ },
36
+ printerUrlValidator: function() {
37
+ return printerUrlValidator;
38
+ },
39
+ printerUsernameValidator: function() {
40
+ return printerUsernameValidator;
41
+ },
42
+ refineApiKeyValidator: function() {
43
+ return refineApiKeyValidator;
44
+ },
45
+ updatePrinterDisabledReasonSchema: function() {
46
+ return updatePrinterDisabledReasonSchema;
47
+ },
48
+ updatePrinterEnabledSchema: function() {
49
+ return updatePrinterEnabledSchema;
23
50
  }
24
51
  });
25
52
  const _serviceconstants = require("../../constants/service.constants");
26
53
  const _printerapiinterface = require("../printer-api.interface");
27
- const createMongoPrinterRules = {
28
- _id: "not",
29
- printerURL: "required|httpurl",
30
- printerType: `required|integer|in:${_printerapiinterface.OctoprintType},${_printerapiinterface.MoonrakerType}`,
31
- apiKey: `requiredIf:printerType,${_printerapiinterface.OctoprintType}|length:${_serviceconstants.apiKeyLengthMaxDefault},${_serviceconstants.apiKeyLengthMinDefault}|alphaDash`,
32
- enabled: "boolean",
33
- name: "string"
34
- };
35
- const createPrinterRules = {
36
- printerURL: "required|httpurl",
37
- printerType: `required|integer|in:${_printerapiinterface.OctoprintType},${_printerapiinterface.MoonrakerType}`,
38
- apiKey: `requiredIf:printerType,${_printerapiinterface.OctoprintType}|length:${_serviceconstants.apiKeyLengthMaxDefault},${_serviceconstants.apiKeyLengthMinDefault}|alphaDash`,
39
- enabled: "boolean",
40
- name: "required|string"
41
- };
42
- const updatePrinterEnabledRule = {
43
- enabled: "required|boolean"
44
- };
45
- const updatePrinterDisabledReasonRule = {
46
- disabledReason: "required|nullable|string",
47
- enabled: "boolean"
54
+ const _zod = require("zod");
55
+ const octoPrintApiKeySchema = _zod.z.string().min(_serviceconstants.apiKeyLengthMinDefault).max(_serviceconstants.apiKeyLengthMaxDefault).regex(/^[a-zA-Z0-9_-]+$/, "Alpha-numeric, dash, and underscore only");
56
+ const printerApiKeyValidator = _zod.z.string().optional();
57
+ const printerNameValidator = _zod.z.string();
58
+ const printerUsernameValidator = _zod.z.string();
59
+ const printerPasswordValidator = _zod.z.string();
60
+ const printerEnabledValidator = _zod.z.boolean();
61
+ const printerDisabledReasonValidator = _zod.z.string().optional();
62
+ const printerUrlValidator = _zod.z.string().url();
63
+ const printerTypeValidator = _zod.z.nativeEnum(_printerapiinterface.PrinterTypesEnum);
64
+ const printerDateAddedValidator = _zod.z.number().optional();
65
+ const prusaLinkAuthSchema = _zod.z.object({
66
+ username: printerUsernameValidator,
67
+ password: printerPasswordValidator
68
+ });
69
+ const basePrinterSchema = _zod.z.object({
70
+ dateAdded: printerDateAddedValidator,
71
+ printerURL: printerUrlValidator,
72
+ printerType: printerTypeValidator,
73
+ apiKey: printerApiKeyValidator,
74
+ username: printerUsernameValidator.optional(),
75
+ password: printerPasswordValidator.optional(),
76
+ enabled: printerEnabledValidator.optional(),
77
+ name: printerNameValidator
78
+ }).strip();
79
+ const apiKeyPrinterTypeSchema = _zod.z.object({
80
+ apiKey: printerApiKeyValidator,
81
+ printerType: printerTypeValidator,
82
+ username: printerUsernameValidator.optional(),
83
+ password: printerPasswordValidator.optional()
84
+ });
85
+ const refineApiKeyValidator = (data, ctx)=>{
86
+ if (data.printerType === _printerapiinterface.OctoprintType) {
87
+ const result = octoPrintApiKeySchema.safeParse(data.apiKey);
88
+ if (!result.success) {
89
+ result.error.issues.forEach((issue)=>{
90
+ ctx.addIssue({
91
+ ...issue,
92
+ path: [
93
+ "apiKey",
94
+ ...issue.path
95
+ ]
96
+ });
97
+ });
98
+ }
99
+ } else if (data.printerType === _printerapiinterface.PrusaLinkType) {
100
+ const result = prusaLinkAuthSchema.safeParse({
101
+ username: data.username,
102
+ password: data.password
103
+ });
104
+ if (!result.success) {
105
+ result.error.issues.forEach((issue)=>{
106
+ ctx.addIssue({
107
+ ...issue,
108
+ path: [
109
+ "username",
110
+ ...issue.path
111
+ ]
112
+ });
113
+ ctx.addIssue({
114
+ ...issue,
115
+ path: [
116
+ "password",
117
+ ...issue.path
118
+ ]
119
+ });
120
+ });
121
+ }
122
+ }
48
123
  };
124
+ const createPrinterSchema = basePrinterSchema.superRefine(refineApiKeyValidator);
125
+ const updatePrinterEnabledSchema = _zod.z.object({
126
+ enabled: printerEnabledValidator
127
+ });
128
+ const updatePrinterDisabledReasonSchema = _zod.z.object({
129
+ disabledReason: printerDisabledReasonValidator,
130
+ enabled: printerEnabledValidator.optional()
131
+ });
49
132
 
50
133
  //# sourceMappingURL=printer-service.validation.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/services/validators/printer-service.validation.ts"],"names":["createMongoPrinterRules","createPrinterRules","updatePrinterDisabledReasonRule","updatePrinterEnabledRule","_id","printerURL","printerType","OctoprintType","MoonrakerType","apiKey","apiKeyLengthMaxDefault","apiKeyLengthMinDefault","enabled","name","disabledReason"],"mappings":";;;;;;;;;;;IAGaA,uBAAuB;eAAvBA;;IASAC,kBAAkB;eAAlBA;;IAYAC,+BAA+B;eAA/BA;;IAJAC,wBAAwB;eAAxBA;;;kCApBkD;qCAClB;AAEtC,MAAMH,0BAA0B;IACrCI,KAAK;IACLC,YAAY;IACZC,aAAa,CAAC,oBAAoB,EAAEC,kCAAa,CAAC,CAAC,EAAEC,kCAAa,EAAE;IACpEC,QAAQ,CAAC,uBAAuB,EAAEF,kCAAa,CAAC,QAAQ,EAAEG,wCAAsB,CAAC,CAAC,EAAEC,wCAAsB,CAAC,UAAU,CAAC;IACtHC,SAAS;IACTC,MAAM;AACR;AAEO,MAAMZ,qBAAqB;IAChCI,YAAY;IACZC,aAAa,CAAC,oBAAoB,EAAEC,kCAAa,CAAC,CAAC,EAAEC,kCAAa,EAAE;IACpEC,QAAQ,CAAC,uBAAuB,EAAEF,kCAAa,CAAC,QAAQ,EAAEG,wCAAsB,CAAC,CAAC,EAAEC,wCAAsB,CAAC,UAAU,CAAC;IACtHC,SAAS;IACTC,MAAM;AACR;AAEO,MAAMV,2BAA2B;IACtCS,SAAS;AACX;AAEO,MAAMV,kCAAkC;IAC7CY,gBAAgB;IAChBF,SAAS;AACX"}
1
+ {"version":3,"sources":["../../../src/services/validators/printer-service.validation.ts"],"names":["createPrinterSchema","printerApiKeyValidator","printerDateAddedValidator","printerDisabledReasonValidator","printerEnabledValidator","printerNameValidator","printerPasswordValidator","printerTypeValidator","printerUrlValidator","printerUsernameValidator","refineApiKeyValidator","updatePrinterDisabledReasonSchema","updatePrinterEnabledSchema","octoPrintApiKeySchema","z","string","min","apiKeyLengthMinDefault","max","apiKeyLengthMaxDefault","regex","optional","boolean","url","nativeEnum","PrinterTypesEnum","number","prusaLinkAuthSchema","object","username","password","basePrinterSchema","dateAdded","printerURL","printerType","apiKey","enabled","name","strip","apiKeyPrinterTypeSchema","data","ctx","OctoprintType","result","safeParse","success","error","issues","forEach","issue","addIssue","path","PrusaLinkType","superRefine","disabledReason"],"mappings":"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"}
@@ -9,83 +9,95 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- clientNextRules: function() {
13
- return clientNextRules;
12
+ clientNextSchema: function() {
13
+ return clientNextSchema;
14
14
  },
15
- credentialSettingPatchRules: function() {
16
- return credentialSettingPatchRules;
15
+ credentialSettingUpdateSchema: function() {
16
+ return credentialSettingUpdateSchema;
17
17
  },
18
- fileCleanSettingsUpdateRules: function() {
19
- return fileCleanSettingsUpdateRules;
18
+ fileCleanSettingsUpdateSchema: function() {
19
+ return fileCleanSettingsUpdateSchema;
20
20
  },
21
- frontendSettingsUpdateRules: function() {
22
- return frontendSettingsUpdateRules;
21
+ frontendSettingsUpdateSchema: function() {
22
+ return frontendSettingsUpdateSchema;
23
23
  },
24
- moonrakerSupportRules: function() {
25
- return moonrakerSupportRules;
24
+ jwtSecretCredentialSettingUpdateSchema: function() {
25
+ return jwtSecretCredentialSettingUpdateSchema;
26
26
  },
27
- sentryDiagnosticsEnabledRules: function() {
28
- return sentryDiagnosticsEnabledRules;
27
+ moonrakerSupportSchema: function() {
28
+ return moonrakerSupportSchema;
29
29
  },
30
- serverSettingsUpdateRules: function() {
31
- return serverSettingsUpdateRules;
30
+ prusaLinkSupportSchema: function() {
31
+ return prusaLinkSupportSchema;
32
32
  },
33
- thumbnailSupportRules: function() {
34
- return thumbnailSupportRules;
33
+ sentryDiagnosticsEnabledSchema: function() {
34
+ return sentryDiagnosticsEnabledSchema;
35
35
  },
36
- timeoutSettingsUpdateRules: function() {
37
- return timeoutSettingsUpdateRules;
36
+ serverSettingsUpdateSchema: function() {
37
+ return serverSettingsUpdateSchema;
38
38
  },
39
- wizardUpdateRules: function() {
40
- return wizardUpdateRules;
39
+ thumbnailSupportSchema: function() {
40
+ return thumbnailSupportSchema;
41
+ },
42
+ timeoutSettingsUpdateSchema: function() {
43
+ return timeoutSettingsUpdateSchema;
44
+ },
45
+ wizardUpdateSchema: function() {
46
+ return wizardUpdateSchema;
41
47
  }
42
48
  });
43
49
  const _envutils = require("../../utils/env.utils");
44
- const serverSettingsUpdateRules = {
45
- registration: "boolean",
46
- loginRequired: "boolean",
47
- debugSettings: "object",
48
- "debugSettings.debugSocketEvents": "boolean",
49
- "debugSettings.debugSocketReconnect": "boolean",
50
- experimentalMoonrakerSupport: "boolean",
51
- experimentalThumbnailSupport: "boolean"
52
- };
53
- const timeoutSettingsUpdateRules = {
54
- apiTimeout: "integer|min:1000"
55
- };
56
- const frontendSettingsUpdateRules = {
57
- gridCols: "integer|min:1",
58
- gridRows: "integer|min:1",
59
- largeTiles: "boolean",
60
- tilePreferCancelOverQuickStop: "boolean"
61
- };
62
- const credentialSettingPatchRules = {
63
- jwtSecret: "string",
64
- jwtExpiresIn: (0, _envutils.isProductionEnvironment)() ? "integer|min:120|max:7200" : "integer|min:0",
65
- refreshTokenAttempts: "integer|min:-1",
66
- refreshTokenExpiry: (0, _envutils.isProductionEnvironment)() ? "integer|min:240" : "integer|min:0"
67
- };
68
- const wizardUpdateRules = {
69
- wizardCompleted: "required|boolean",
70
- wizardCompletedAt: "required|date|nullable",
71
- wizardVersion: "required|integer|min:0"
72
- };
73
- const fileCleanSettingsUpdateRules = {
74
- autoRemoveOldFilesBeforeUpload: "required|boolean",
75
- autoRemoveOldFilesAtBoot: "required|boolean",
76
- autoRemoveOldFilesCriteriumDays: "required|integer|min:0"
77
- };
78
- const sentryDiagnosticsEnabledRules = {
79
- enabled: "required|boolean"
80
- };
81
- const moonrakerSupportRules = {
82
- enabled: "required|boolean"
83
- };
84
- const thumbnailSupportRules = {
85
- enabled: "required|boolean"
86
- };
87
- const clientNextRules = {
88
- enabled: "required|boolean"
89
- };
50
+ const _zod = require("zod");
51
+ const serverSettingsUpdateSchema = _zod.z.object({
52
+ registration: _zod.z.boolean(),
53
+ loginRequired: _zod.z.boolean(),
54
+ experimentalMoonrakerSupport: _zod.z.boolean(),
55
+ experimentalThumbnailSupport: _zod.z.boolean(),
56
+ experimentalClientSupport: _zod.z.boolean(),
57
+ experimentalPrusaLinkSupport: _zod.z.boolean(),
58
+ sentryDiagnosticsEnabled: _zod.z.boolean()
59
+ });
60
+ const timeoutSettingsUpdateSchema = _zod.z.object({
61
+ apiTimeout: _zod.z.number().int().min(1000)
62
+ });
63
+ const frontendSettingsUpdateSchema = _zod.z.object({
64
+ gridCols: _zod.z.number().int().min(1),
65
+ gridRows: _zod.z.number().int().min(1),
66
+ largeTiles: _zod.z.boolean(),
67
+ tilePreferCancelOverQuickStop: _zod.z.boolean()
68
+ });
69
+ const jwtSecretCredentialSettingUpdateSchema = _zod.z.object({
70
+ jwtSecret: _zod.z.string().min(10)
71
+ });
72
+ const credentialSettingUpdateSchema = _zod.z.object({
73
+ jwtExpiresIn: _zod.z.number().int().min((0, _envutils.isProductionEnvironment)() ? 120 : 0).max((0, _envutils.isProductionEnvironment)() ? 7200 : Infinity),
74
+ refreshTokenAttempts: _zod.z.number().int().min(-1),
75
+ refreshTokenExpiry: _zod.z.number().int().min((0, _envutils.isProductionEnvironment)() ? 240 : 0)
76
+ });
77
+ const wizardUpdateSchema = _zod.z.object({
78
+ wizardCompleted: _zod.z.boolean(),
79
+ wizardCompletedAt: _zod.z.date().nullable(),
80
+ wizardVersion: _zod.z.number().int().min(0)
81
+ });
82
+ const fileCleanSettingsUpdateSchema = _zod.z.object({
83
+ autoRemoveOldFilesBeforeUpload: _zod.z.boolean(),
84
+ autoRemoveOldFilesAtBoot: _zod.z.boolean(),
85
+ autoRemoveOldFilesCriteriumDays: _zod.z.number().int().min(0)
86
+ });
87
+ const sentryDiagnosticsEnabledSchema = _zod.z.object({
88
+ enabled: _zod.z.boolean()
89
+ });
90
+ const moonrakerSupportSchema = _zod.z.object({
91
+ enabled: _zod.z.boolean()
92
+ });
93
+ const prusaLinkSupportSchema = _zod.z.object({
94
+ enabled: _zod.z.boolean()
95
+ });
96
+ const thumbnailSupportSchema = _zod.z.object({
97
+ enabled: _zod.z.boolean()
98
+ });
99
+ const clientNextSchema = _zod.z.object({
100
+ enabled: _zod.z.boolean()
101
+ });
90
102
 
91
103
  //# sourceMappingURL=settings-service.validation.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/services/validators/settings-service.validation.ts"],"names":["clientNextRules","credentialSettingPatchRules","fileCleanSettingsUpdateRules","frontendSettingsUpdateRules","moonrakerSupportRules","sentryDiagnosticsEnabledRules","serverSettingsUpdateRules","thumbnailSupportRules","timeoutSettingsUpdateRules","wizardUpdateRules","registration","loginRequired","debugSettings","experimentalMoonrakerSupport","experimentalThumbnailSupport","apiTimeout","gridCols","gridRows","largeTiles","tilePreferCancelOverQuickStop","jwtSecret","jwtExpiresIn","isProductionEnvironment","refreshTokenAttempts","refreshTokenExpiry","wizardCompleted","wizardCompletedAt","wizardVersion","autoRemoveOldFilesBeforeUpload","autoRemoveOldFilesAtBoot","autoRemoveOldFilesCriteriumDays","enabled"],"mappings":";;;;;;;;;;;IAsDaA,eAAe;eAAfA;;IA/BAC,2BAA2B;eAA3BA;;IAaAC,4BAA4B;eAA5BA;;IApBAC,2BAA2B;eAA3BA;;IA8BAC,qBAAqB;eAArBA;;IAJAC,6BAA6B;eAA7BA;;IAxCAC,yBAAyB;eAAzBA;;IAgDAC,qBAAqB;eAArBA;;IAtCAC,0BAA0B;eAA1BA;;IAkBAC,iBAAiB;eAAjBA;;;0BA9B2B;AAEjC,MAAMH,4BAA4B;IACvCI,cAAc;IACdC,eAAe;IACfC,eAAe;IACf,mCAAmC;IACnC,sCAAsC;IACtCC,8BAA8B;IAC9BC,8BAA8B;AAChC;AAEO,MAAMN,6BAA6B;IACxCO,YAAY;AACd;AAEO,MAAMZ,8BAA8B;IACzCa,UAAU;IACVC,UAAU;IACVC,YAAY;IACZC,+BAA+B;AACjC;AAEO,MAAMlB,8BAA8B;IACzCmB,WAAW;IACXC,cAAcC,IAAAA,iCAAuB,MAAK,6BAA6B;IACvEC,sBAAsB;IACtBC,oBAAoBF,IAAAA,iCAAuB,MAAK,oBAAoB;AACtE;AAEO,MAAMb,oBAAoB;IAC/BgB,iBAAiB;IACjBC,mBAAmB;IACnBC,eAAe;AACjB;AAEO,MAAMzB,+BAA+B;IAC1C0B,gCAAgC;IAChCC,0BAA0B;IAC1BC,iCAAiC;AACnC;AAEO,MAAMzB,gCAAgC;IAC3C0B,SAAS;AACX;AAEO,MAAM3B,wBAAwB;IACnC2B,SAAS;AACX;AAEO,MAAMxB,wBAAwB;IACnCwB,SAAS;AACX;AAEO,MAAM/B,kBAAkB;IAC7B+B,SAAS;AACX"}
1
+ {"version":3,"sources":["../../../src/services/validators/settings-service.validation.ts"],"names":["clientNextSchema","credentialSettingUpdateSchema","fileCleanSettingsUpdateSchema","frontendSettingsUpdateSchema","jwtSecretCredentialSettingUpdateSchema","moonrakerSupportSchema","prusaLinkSupportSchema","sentryDiagnosticsEnabledSchema","serverSettingsUpdateSchema","thumbnailSupportSchema","timeoutSettingsUpdateSchema","wizardUpdateSchema","z","object","registration","boolean","loginRequired","experimentalMoonrakerSupport","experimentalThumbnailSupport","experimentalClientSupport","experimentalPrusaLinkSupport","sentryDiagnosticsEnabled","apiTimeout","number","int","min","gridCols","gridRows","largeTiles","tilePreferCancelOverQuickStop","jwtSecret","string","jwtExpiresIn","isProductionEnvironment","max","Infinity","refreshTokenAttempts","refreshTokenExpiry","wizardCompleted","wizardCompletedAt","date","nullable","wizardVersion","autoRemoveOldFilesBeforeUpload","autoRemoveOldFilesAtBoot","autoRemoveOldFilesCriteriumDays","enabled"],"mappings":"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"}
@@ -9,26 +9,27 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- newPasswordRules: function() {
13
- return newPasswordRules;
12
+ newPasswordSchema: function() {
13
+ return newPasswordSchema;
14
14
  },
15
- registerUserRules: function() {
16
- return registerUserRules;
15
+ registerUserSchema: function() {
16
+ return registerUserSchema;
17
17
  }
18
18
  });
19
+ const _zod = require("zod");
19
20
  const _serverconstants = require("../../server.constants");
20
- const registerUserRules = (isSqlite)=>({
21
- username: `required|string|minLength:${_serverconstants.AppConstants.DEFAULT_USERNAME_MINLEN}`,
22
- password: `required|string|minLength:${_serverconstants.AppConstants.DEFAULT_PASSWORD_MINLEN}`,
23
- needsPasswordChange: "boolean",
24
- roles: "required|array",
25
- isDemoUser: "boolean",
26
- isRootUser: "boolean",
27
- "roles.*": `required|${isSqlite ? "integer|min:1" : "mongoId"}`,
28
- isVerified: "boolean"
21
+ const _genericvalidation = require("../../controllers/validation/generic.validation");
22
+ const registerUserSchema = (isSqlite)=>_zod.z.object({
23
+ username: _zod.z.string().min(_serverconstants.AppConstants.DEFAULT_USERNAME_MINLEN),
24
+ password: _zod.z.string().min(_serverconstants.AppConstants.DEFAULT_PASSWORD_MINLEN),
25
+ needsPasswordChange: _zod.z.boolean().optional(),
26
+ roles: _zod.z.array((0, _genericvalidation.idRuleV2)(isSqlite)),
27
+ isDemoUser: _zod.z.boolean().optional(),
28
+ isRootUser: _zod.z.boolean().optional(),
29
+ isVerified: _zod.z.boolean().optional()
29
30
  });
30
- const newPasswordRules = {
31
- password: `required|string|minLength:${_serverconstants.AppConstants.DEFAULT_PASSWORD_MINLEN}`
32
- };
31
+ const newPasswordSchema = _zod.z.object({
32
+ password: _zod.z.string().min(_serverconstants.AppConstants.DEFAULT_PASSWORD_MINLEN)
33
+ });
33
34
 
34
35
  //# sourceMappingURL=user-service.validation.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/services/validators/user-service.validation.ts"],"names":["newPasswordRules","registerUserRules","isSqlite","username","AppConstants","DEFAULT_USERNAME_MINLEN","password","DEFAULT_PASSWORD_MINLEN","needsPasswordChange","roles","isDemoUser","isRootUser","isVerified"],"mappings":";;;;;;;;;;;IAaaA,gBAAgB;eAAhBA;;IAXAC,iBAAiB;eAAjBA;;;iCAFgB;AAEtB,MAAMA,oBAAoB,CAACC,WAAuB,CAAA;QACvDC,UAAU,CAAC,0BAA0B,EAAEC,6BAAY,CAACC,uBAAuB,EAAE;QAC7EC,UAAU,CAAC,0BAA0B,EAAEF,6BAAY,CAACG,uBAAuB,EAAE;QAC7EC,qBAAqB;QACrBC,OAAO;QACPC,YAAY;QACZC,YAAY;QACZ,WAAW,CAAC,SAAS,EAAET,WAAW,kBAAkB,WAAW;QAC/DU,YAAY;IACd,CAAA;AAEO,MAAMZ,mBAAmB;IAC9BM,UAAU,CAAC,0BAA0B,EAAEF,6BAAY,CAACG,uBAAuB,EAAE;AAC/E"}
1
+ {"version":3,"sources":["../../../src/services/validators/user-service.validation.ts"],"names":["newPasswordSchema","registerUserSchema","isSqlite","z","object","username","string","min","AppConstants","DEFAULT_USERNAME_MINLEN","password","DEFAULT_PASSWORD_MINLEN","needsPasswordChange","boolean","optional","roles","array","idRuleV2","isDemoUser","isRootUser","isVerified"],"mappings":";;;;;;;;;;;IAeaA,iBAAiB;eAAjBA;;IAXAC,kBAAkB;eAAlBA;;;qBAJK;iCACW;mCACJ;AAElB,MAAMA,qBAAqB,CAACC,WACjCC,MAAC,CAACC,MAAM,CAAC;QACPC,UAAUF,MAAC,CAACG,MAAM,GAAGC,GAAG,CAACC,6BAAY,CAACC,uBAAuB;QAC7DC,UAAUP,MAAC,CAACG,MAAM,GAAGC,GAAG,CAACC,6BAAY,CAACG,uBAAuB;QAC7DC,qBAAqBT,MAAC,CAACU,OAAO,GAAGC,QAAQ;QACzCC,OAAOZ,MAAC,CAACa,KAAK,CAACC,IAAAA,2BAAQ,EAACf;QACxBgB,YAAYf,MAAC,CAACU,OAAO,GAAGC,QAAQ;QAChCK,YAAYhB,MAAC,CAACU,OAAO,GAAGC,QAAQ;QAChCM,YAAYjB,MAAC,CAACU,OAAO,GAAGC,QAAQ;IAClC;AAEK,MAAMd,oBAAoBG,MAAC,CAACC,MAAM,CAAC;IACxCM,UAAUP,MAAC,CAACG,MAAM,GAAGC,GAAG,CAACC,6BAAY,CAACG,uBAAuB;AAC/D"}
@@ -9,60 +9,103 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- exportPrintersFloorsYamlRules: function() {
13
- return exportPrintersFloorsYamlRules;
12
+ exportPrintersFloorsYamlSchema: function() {
13
+ return exportPrintersFloorsYamlSchema;
14
14
  },
15
- importPrinterPositionsRules: function() {
16
- return importPrinterPositionsRules;
15
+ importPrinterPositionsSchema: function() {
16
+ return importPrinterPositionsSchema;
17
17
  },
18
- importPrintersFloorsYamlRules: function() {
19
- return importPrintersFloorsYamlRules;
18
+ importPrintersFloorsYamlSchema: function() {
19
+ return importPrintersFloorsYamlSchema;
20
+ },
21
+ numberOrStringIdValidator: function() {
22
+ return numberOrStringIdValidator;
23
+ },
24
+ printerPositionsSchema: function() {
25
+ return printerPositionsSchema;
20
26
  }
21
27
  });
22
- const _serviceconstants = require("../../constants/service.constants");
23
- const _printerapiinterface = require("../printer-api.interface");
24
- const exportPrintersFloorsYamlRules = {
25
- exportPrinters: "required|boolean",
26
- exportFloorGrid: "required|boolean",
27
- exportFloors: "required|boolean",
28
- exportGroups: "boolean",
29
- printerComparisonStrategiesByPriority: "required|arrayUnique|minLength:1",
30
- "printerComparisonStrategiesByPriority.*": "required|string|in:name,url,id",
31
- floorComparisonStrategiesByPriority: "required|string|in:name,floor,id",
32
- notes: "string"
33
- };
34
- const importPrintersFloorsYamlRules = (importPrinters, importFloorGrid, importFloors, importGroups)=>{
35
- return {
36
- version: "required|string",
37
- config: "required|object",
38
- "config.exportPrinters": "required|boolean",
39
- "config.exportFloorGrid": "required|boolean",
40
- "config.exportFloors": "required|boolean",
41
- "config.exportGroups": "boolean",
42
- "config.printerComparisonStrategiesByPriority": "required|arrayUnique|minLength:1",
43
- "config.printerComparisonStrategiesByPriority.*": "required|string|in:name,url,id",
44
- "config.floorComparisonStrategiesByPriority": "required|string|in:name,floor,id",
45
- printers: `${!!importPrinters ? "array|minLength:0" : "not"}`,
46
- "printers.*.id": "required",
47
- "printers.*.apiKey": `requiredIf:printerType,${_printerapiinterface.OctoprintType}|length:${_serviceconstants.apiKeyLengthMaxDefault},${_serviceconstants.apiKeyLengthMinDefault}|alphaDash`,
48
- "printers.*.printerURL": "required|httpurl",
49
- "printers.*.enabled": "boolean",
50
- "printers.*.printerType": `integer|in:${_printerapiinterface.OctoprintType},${_printerapiinterface.MoonrakerType}`,
51
- "printers.*.name": "required|string",
52
- floors: `${!!importFloors ? "array|minLength:0" : "not"}`,
53
- "floors.*.id": "required",
54
- "floors.*.floor": "required|integer",
55
- "floors.*.name": "required|string",
56
- groups: `${!!importGroups ? "array|minLength:0" : "not"}`,
57
- "groups.*.id": "required",
58
- "groups.*.name": "required|string"
59
- };
60
- };
61
- const importPrinterPositionsRules = (isTypeormMode)=>({
62
- printers: "array|minLength:0",
63
- "printers.*.printerId": "required",
64
- "printers.*.x": "required|integer|min:0|max:12",
65
- "printers.*.y": "required|integer|min:0|max:12"
66
- });
28
+ const _zod = require("zod");
29
+ const _printerservicevalidation = require("./printer-service.validation");
30
+ const _floorservicevalidation = require("./floor-service.validation");
31
+ const exportPrintersFloorsYamlSchema = _zod.z.object({
32
+ exportPrinters: _zod.z.boolean(),
33
+ exportFloorGrid: _zod.z.boolean(),
34
+ exportFloors: _zod.z.boolean(),
35
+ exportGroups: _zod.z.boolean(),
36
+ printerComparisonStrategiesByPriority: _zod.z.array(_zod.z.string().refine((val)=>[
37
+ "name",
38
+ "url",
39
+ "id"
40
+ ].includes(val))).min(1),
41
+ floorComparisonStrategiesByPriority: _zod.z.string().refine((val)=>[
42
+ "name",
43
+ "floor",
44
+ "id"
45
+ ].includes(val)),
46
+ notes: _zod.z.string().optional()
47
+ });
48
+ const numberOrStringIdValidator = _zod.z.union([
49
+ _zod.z.number(),
50
+ _zod.z.string()
51
+ ]);
52
+ const printerPositionsSchema = _zod.z.array(_zod.z.object({
53
+ printerId: numberOrStringIdValidator,
54
+ floorId: numberOrStringIdValidator.optional(),
55
+ x: _floorservicevalidation.xValidator,
56
+ y: _floorservicevalidation.yValidator
57
+ })).min(0);
58
+ const importPrinterPositionsSchema = _zod.z.object({
59
+ printers: printerPositionsSchema.optional()
60
+ });
61
+ const importPrintersFloorsYamlSchema = _zod.z.object({
62
+ version: _zod.z.string().optional(),
63
+ exportedAt: _zod.z.date().optional(),
64
+ databaseType: _zod.z.enum([
65
+ "mongo",
66
+ "sqlite"
67
+ ]).default("mongo"),
68
+ config: _zod.z.object({
69
+ exportPrinters: _zod.z.boolean(),
70
+ exportFloorGrid: _zod.z.boolean(),
71
+ exportFloors: _zod.z.boolean(),
72
+ exportGroups: _zod.z.boolean().optional(),
73
+ printerComparisonStrategiesByPriority: _zod.z.array(_zod.z.string().refine((val)=>[
74
+ "name",
75
+ "url",
76
+ "id"
77
+ ].includes(val))).min(1),
78
+ floorComparisonStrategiesByPriority: _zod.z.string().refine((val)=>[
79
+ "name",
80
+ "floor",
81
+ "id"
82
+ ].includes(val))
83
+ }),
84
+ printers: _zod.z.array(_zod.z.object({
85
+ id: numberOrStringIdValidator,
86
+ printerURL: _printerservicevalidation.printerUrlValidator,
87
+ printerType: _printerservicevalidation.printerTypeValidator,
88
+ apiKey: _printerservicevalidation.printerApiKeyValidator,
89
+ enabled: _printerservicevalidation.printerEnabledValidator,
90
+ name: _printerservicevalidation.printerNameValidator,
91
+ printerName: _zod.z.string().optional(),
92
+ settingsAppearance: _zod.z.object({
93
+ name: _zod.z.string().optional()
94
+ }).optional()
95
+ })).min(0).default([]),
96
+ floors: _zod.z.array(_zod.z.object({
97
+ id: numberOrStringIdValidator,
98
+ floor: _floorservicevalidation.floorLevelValidator,
99
+ name: _floorservicevalidation.floorNameValidator,
100
+ printers: printerPositionsSchema
101
+ })).min(0).default([]),
102
+ groups: _zod.z.array(_zod.z.object({
103
+ id: numberOrStringIdValidator,
104
+ name: _zod.z.string(),
105
+ printers: _zod.z.array(_zod.z.object({
106
+ printerId: numberOrStringIdValidator
107
+ }))
108
+ })).min(0).default([])
109
+ });
67
110
 
68
111
  //# sourceMappingURL=yaml-service.validation.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/services/validators/yaml-service.validation.ts"],"names":["exportPrintersFloorsYamlRules","importPrinterPositionsRules","importPrintersFloorsYamlRules","exportPrinters","exportFloorGrid","exportFloors","exportGroups","printerComparisonStrategiesByPriority","floorComparisonStrategiesByPriority","notes","importPrinters","importFloorGrid","importFloors","importGroups","version","config","printers","OctoprintType","apiKeyLengthMaxDefault","apiKeyLengthMinDefault","MoonrakerType","floors","groups","isTypeormMode"],"mappings":";;;;;;;;;;;IAGaA,6BAA6B;eAA7BA;;IAsDAC,2BAA2B;eAA3BA;;IApCAC,6BAA6B;eAA7BA;;;kCArBkD;qCAClB;AAEtC,MAAMF,gCAAgC;IAE3CG,gBAAgB;IAChBC,iBAAiB;IACjBC,cAAc;IAEdC,cAAc;IAEdC,uCAAuC;IACvC,2CAA2C;IAC3CC,qCAAqC;IAErCC,OAAO;AAIT;AAEO,MAAMP,gCAAgC,CAC3CQ,gBACAC,iBACAC,cACAC;IAEA,OAAO;QACLC,SAAS;QACTC,QAAQ;QACR,yBAAyB;QACzB,0BAA0B;QAC1B,uBAAuB;QACvB,uBAAuB;QACvB,gDAAgD;QAChD,kDAAkD;QAClD,8CAA8C;QAC9CC,UAAU,GAAG,CAAC,CAACN,iBAAiB,sBAAsB,OAAO;QAC7D,iBAAiB;QACjB,qBAAqB,CAAC,uBAAuB,EAAEO,kCAAa,CAAC,QAAQ,EAAEC,wCAAsB,CAAC,CAAC,EAAEC,wCAAsB,CAAC,UAAU,CAAC;QACnI,yBAAyB;QACzB,sBAAsB;QACtB,0BAA0B,CAAC,WAAW,EAAEF,kCAAa,CAAC,CAAC,EAAEG,kCAAa,EAAE;QACxE,mBAAmB;QACnBC,QAAQ,GAAG,CAAC,CAACT,eAAe,sBAAsB,OAAO;QACzD,eAAe;QACf,kBAAkB;QAClB,iBAAiB;QAEjBU,QAAQ,GAAG,CAAC,CAACT,eAAe,sBAAsB,OAAO;QACzD,eAAe;QACf,iBAAiB;IAGnB;AACF;AAEO,MAAMZ,8BAA8B,CAACsB,gBAA4B,CAAA;QACtEP,UAAU;QACV,wBAAwB;QAExB,gBAAgB;QAChB,gBAAgB;IAClB,CAAA"}
1
+ {"version":3,"sources":["../../../src/services/validators/yaml-service.validation.ts"],"names":["exportPrintersFloorsYamlSchema","importPrinterPositionsSchema","importPrintersFloorsYamlSchema","numberOrStringIdValidator","printerPositionsSchema","z","object","exportPrinters","boolean","exportFloorGrid","exportFloors","exportGroups","printerComparisonStrategiesByPriority","array","string","refine","val","includes","min","floorComparisonStrategiesByPriority","notes","optional","union","number","printerId","floorId","x","xValidator","y","yValidator","printers","version","exportedAt","date","databaseType","enum","default","config","id","printerURL","printerUrlValidator","printerType","printerTypeValidator","apiKey","printerApiKeyValidator","enabled","printerEnabledValidator","name","printerNameValidator","printerName","settingsAppearance","floors","floor","floorLevelValidator","floorNameValidator","groups"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/shared/default-http-client.builder.ts"],"names":["DefaultHttpClientBuilder","axiosOptions","constructor","baseURL","timeout","getDefaultTimeout","apiTimeout","headers","contentTypeHeaderKey","jsonContentType","build","axiosConfig","data","maxBodyLength","maxContentLength","responseType","onUploadProgress","axios","create","withMaxBodyLength","withMaxContentLength","withBaseUrl","baseUrl","length","Error","withTimeout","withMultiPartFormData","withHeaders","multiPartContentType","withStreamResponse","withOnUploadProgress","handler","withJsonContentTypeHeader"],"mappings":";;;;+BAYaA;;;eAAAA;;;yCAZqB;8DAC2C;2CAKtE;;;;;;AAMA,MAAMA;IACDC,aAAiC;IAE3CC,aAAc;QACZ,IAAI,CAACD,YAAY,GAAG;YAClBE,SAAS;YACTC,SAASC,IAAAA,0CAAiB,IAAGC,UAAU;YACvCC,SAAS;gBACP,CAACC,+CAAoB,CAAC,EAAEC,0CAAe;YACzC;QACF;IACF;IAEAC,QAAgC;QAC9B,MAAMC,cAAqC;YACzCR,SAAS,IAAI,CAACF,YAAY,CAACE,OAAO;YAClCC,SAAS,IAAI,CAACH,YAAY,CAACG,OAAO;YAClCG,SAAS,IAAI,CAACN,YAAY,CAACM,OAAO;YAClCK,MAAM,IAAI,CAACX,YAAY,CAACW,IAAI;YAC5BC,eAAe,IAAI,CAACZ,YAAY,CAACY,aAAa,IAAI,OAAO,OAAO;YAChEC,kBAAkB,IAAI,CAACb,YAAY,CAACa,gBAAgB,IAAI,OAAO,OAAO;YACtEC,cAAc,IAAI,CAACd,YAAY,CAACc,YAAY;YAC5CC,kBAAkB,IAAI,CAACf,YAAY,CAACe,gBAAgB;QACtD;QAEA,OAAOC,cAAK,CAACC,MAAM,CAACP;IACtB;IAEAQ,kBAAkBN,aAAqB,EAA4B;QACjE,IAAI,CAACZ,YAAY,CAACY,aAAa,GAAGA;QAClC,OAAO,IAAI;IACb;IAEAO,qBAAqBN,gBAAwB,EAA4B;QACvE,IAAI,CAACb,YAAY,CAACa,gBAAgB,GAAGA;QACrC,OAAO,IAAI;IACb;IAEAO,YAAYC,OAAe,EAA4B;QACrD,IAAI,CAACA,SAASC,QAAQ;YACpB,MAAM,IAAIC,MAAM;QAClB;QAEA,IAAI,CAACvB,YAAY,CAACE,OAAO,GAAGmB;QAC5B,OAAO,IAAI;IACb;IAMAG,YAAYrB,OAAe,EAA4B;QACrD,IAAI,CAACA,WAAWA,WAAW,GAAG;YAC5B,MAAM,IAAIoB,MAAM;QAClB;QAEA,IAAI,CAACvB,YAAY,CAACG,OAAO,GAAGA;QAC5B,OAAO,IAAI;IACb;IAEAsB,wBAA8B;QAC5B,IAAI,CAACC,WAAW,CAAC;YACf,gBAAgBC,+CAAoB;QACtC;QACA,OAAO,IAAI;IACb;IAEAC,qBAA2B;QACzB,IAAI,CAAC5B,YAAY,CAACc,YAAY,GAAG;QACjC,OAAO,IAAI;IACb;IAEAe,qBAAqBC,OAAoD,EAAQ;QAC/E,IAAI,CAAC9B,YAAY,CAACe,gBAAgB,GAAGe;QACrC,OAAO,IAAI;IACb;IAEAC,4BAAsD;QACpD,IAAI,CAACL,WAAW,CAAC;YAAE,CAACnB,+CAAoB,CAAC,EAAEC,0CAAe;QAAC;QAC3D,OAAO,IAAI;IACb;IAEAkB,YAAYpB,OAA+B,EAA4B;QACrE,IAAI,CAACN,YAAY,CAACM,OAAO,GAAG;YAC1B,GAAG,IAAI,CAACN,YAAY,CAACM,OAAO;YAC5B,GAAGA,OAAO;QACZ;QACA,OAAO,IAAI;IACb;AACF"}
1
+ {"version":3,"sources":["../../src/shared/default-http-client.builder.ts"],"names":["DefaultHttpClientBuilder","axiosOptions","constructor","baseURL","timeout","getDefaultTimeout","apiTimeout","headers","contentTypeHeaderKey","jsonContentType","build","axiosConfig","data","maxBodyLength","maxContentLength","responseType","onUploadProgress","axios","create","withMaxBodyLength","withMaxContentLength","withBaseUrl","baseUrl","length","Error","withTimeout","withMultiPartFormData","withHeaders","multiPartContentType","withStreamResponse","withOnUploadProgress","handler","withJsonContentTypeHeader"],"mappings":";;;;+BAYaA;;;eAAAA;;;yCAZqB;8DAC2C;2CAKtE;;;;;;AAMA,MAAMA;IACDC,aAAiC;IAE3CC,aAAc;QACZ,IAAI,CAACD,YAAY,GAAG;YAClBE,SAAS;YACTC,SAASC,IAAAA,0CAAiB,IAAGC,UAAU;YACvCC,SAAS;gBACP,CAACC,+CAAoB,CAAC,EAAEC,0CAAe;YACzC;QACF;IACF;IAEAC,QAAgC;QAC9B,MAAMC,cAAqC;YACzCR,SAAS,IAAI,CAACF,YAAY,CAACE,OAAO;YAClCC,SAAS,IAAI,CAACH,YAAY,CAACG,OAAO;YAClCG,SAAS,IAAI,CAACN,YAAY,CAACM,OAAO;YAClCK,MAAM,IAAI,CAACX,YAAY,CAACW,IAAI;YAC5BC,eAAe,IAAI,CAACZ,YAAY,CAACY,aAAa,IAAI,OAAO,OAAO;YAChEC,kBAAkB,IAAI,CAACb,YAAY,CAACa,gBAAgB,IAAI,OAAO,OAAO;YACtEC,cAAc,IAAI,CAACd,YAAY,CAACc,YAAY;YAC5CC,kBAAkB,IAAI,CAACf,YAAY,CAACe,gBAAgB;QACtD;QAEA,OAAOC,cAAK,CAACC,MAAM,CAACP;IACtB;IAEAQ,kBAAkBN,aAAqB,EAAQ;QAC7C,IAAI,CAACZ,YAAY,CAACY,aAAa,GAAGA;QAClC,OAAO,IAAI;IACb;IAEAO,qBAAqBN,gBAAwB,EAAQ;QACnD,IAAI,CAACb,YAAY,CAACa,gBAAgB,GAAGA;QACrC,OAAO,IAAI;IACb;IAEAO,YAAYC,OAAe,EAAQ;QACjC,IAAI,CAACA,SAASC,QAAQ;YACpB,MAAM,IAAIC,MAAM;QAClB;QAEA,IAAI,CAACvB,YAAY,CAACE,OAAO,GAAGmB;QAC5B,OAAO,IAAI;IACb;IAMAG,YAAYrB,OAAe,EAAQ;QACjC,IAAI,CAACA,WAAWA,WAAW,GAAG;YAC5B,MAAM,IAAIoB,MAAM;QAClB;QAEA,IAAI,CAACvB,YAAY,CAACG,OAAO,GAAGA;QAC5B,OAAO,IAAI;IACb;IAEAsB,wBAA8B;QAC5B,IAAI,CAACC,WAAW,CAAC;YACf,gBAAgBC,+CAAoB;QACtC;QACA,OAAO,IAAI;IACb;IAEAC,qBAA2B;QACzB,IAAI,CAAC5B,YAAY,CAACc,YAAY,GAAG;QACjC,OAAO,IAAI;IACb;IAEAe,qBAAqBC,OAAoD,EAAQ;QAC/E,IAAI,CAAC9B,YAAY,CAACe,gBAAgB,GAAGe;QACrC,OAAO,IAAI;IACb;IAEAC,4BAAkC;QAChC,IAAI,CAACL,WAAW,CAAC;YAAE,CAACnB,+CAAoB,CAAC,EAAEC,0CAAe;QAAC;QAC3D,OAAO,IAAI;IACb;IAEAkB,YAAYpB,OAA+B,EAAQ;QACjD,IAAI,CAACN,YAAY,CAACM,OAAO,GAAG;YAC1B,GAAG,IAAI,CAACN,YAAY,CAACM,OAAO;YAC5B,GAAGA,OAAO;QACZ;QACA,OAAO,IAAI;IACb;AACF"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "loadControllersFunc", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return loadControllersFunc;
9
+ }
10
+ });
11
+ const _awilixexpress = require("awilix-express");
12
+ const _path = require("path");
13
+ const loadControllersFunc = ()=>(0, _awilixexpress.loadControllers)("./controllers/*.controller.*", {
14
+ cwd: (0, _path.join)(__dirname, ".."),
15
+ ignore: [
16
+ "**/*.map"
17
+ ]
18
+ });
19
+
20
+ //# sourceMappingURL=load-controllers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/shared/load-controllers.ts"],"names":["loadControllersFunc","loadControllers","cwd","join","__dirname","ignore"],"mappings":";;;;+BAGaA;;;eAAAA;;;+BAHmB;sBACX;AAEd,MAAMA,sBAAsB,IACjCC,IAAAA,8BAAe,EAAC,gCAAgC;QAC9CC,KAAKC,IAAAA,UAAI,EAACC,WAAW;QACrBC,QAAQ;YAAC;SAAW;IACtB"}