@fdm-monster/server 1.8.2 → 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 (460) 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 +69 -7
  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 +11 -19
  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 +15 -24
  27. package/dist/container.js.map +1 -1
  28. package/dist/container.tokens.js +4 -5
  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 +61 -50
  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 +76 -29
  53. package/dist/controllers/printer-settings.controller.js.map +1 -1
  54. package/dist/controllers/printer.controller.js +62 -197
  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 -113
  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 -31
  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 +40 -0
  197. package/dist/services/core/http-client.factory.js.map +1 -0
  198. package/dist/services/core/logs-manager.service.js +7 -6
  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 +79 -28
  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/file-upload-tracker.interface.js +6 -0
  212. package/dist/services/interfaces/file-upload-tracker.interface.js.map +1 -0
  213. package/dist/services/interfaces/floor.dto.js +5 -47
  214. package/dist/services/interfaces/floor.dto.js.map +1 -1
  215. package/dist/services/interfaces/login.dto.js +2 -0
  216. package/dist/services/interfaces/login.dto.js.map +1 -1
  217. package/dist/services/interfaces/print-completion.dto.js.map +1 -1
  218. package/dist/services/interfaces/printer-group.dto.js +0 -14
  219. package/dist/services/interfaces/printer-group.dto.js.map +1 -1
  220. package/dist/services/interfaces/printer.dto.js +11 -5
  221. package/dist/services/interfaces/printer.dto.js.map +1 -1
  222. package/dist/services/interfaces/settings.dto.js.map +1 -1
  223. package/dist/services/interfaces/task.interfaces.js +6 -0
  224. package/dist/services/interfaces/task.interfaces.js.map +1 -0
  225. package/dist/services/mongoose/camera-stream.service.js +17 -15
  226. package/dist/services/mongoose/camera-stream.service.js.map +1 -1
  227. package/dist/services/mongoose/custom-gcode.service.js +4 -2
  228. package/dist/services/mongoose/custom-gcode.service.js.map +1 -1
  229. package/dist/services/mongoose/floor.service.js +37 -30
  230. package/dist/services/mongoose/floor.service.js.map +1 -1
  231. package/dist/services/mongoose/permission.service.js +1 -1
  232. package/dist/services/mongoose/permission.service.js.map +1 -1
  233. package/dist/services/mongoose/print-completion.service.js +2 -2
  234. package/dist/services/mongoose/print-completion.service.js.map +1 -1
  235. package/dist/services/mongoose/print-completion.shared.js +2 -2
  236. package/dist/services/mongoose/print-completion.shared.js.map +1 -1
  237. package/dist/services/mongoose/printer.service.js +40 -45
  238. package/dist/services/mongoose/printer.service.js.map +1 -1
  239. package/dist/services/mongoose/refresh-token.service.js +5 -8
  240. package/dist/services/mongoose/refresh-token.service.js.map +1 -1
  241. package/dist/services/mongoose/role.service.js +14 -5
  242. package/dist/services/mongoose/role.service.js.map +1 -1
  243. package/dist/services/mongoose/settings.service.js +35 -62
  244. package/dist/services/mongoose/settings.service.js.map +1 -1
  245. package/dist/services/mongoose/user.service.js +8 -7
  246. package/dist/services/mongoose/user.service.js.map +1 -1
  247. package/dist/services/moonraker/constants/{websocket.constants.js → moonraker.constants.js} +1 -1
  248. package/dist/services/moonraker/constants/{websocket.constants.js.map → moonraker.constants.js.map} +1 -1
  249. package/dist/services/moonraker/moonraker-websocket.adapter.js +108 -96
  250. package/dist/services/moonraker/moonraker-websocket.adapter.js.map +1 -1
  251. package/dist/services/moonraker/moonraker.client.js +212 -167
  252. package/dist/services/moonraker/moonraker.client.js.map +1 -1
  253. package/dist/services/moonraker.api.js +3 -5
  254. package/dist/services/moonraker.api.js.map +1 -1
  255. package/dist/services/octoprint/constants/octoprint-service.constants.js +7 -36
  256. package/dist/services/octoprint/constants/octoprint-service.constants.js.map +1 -1
  257. package/dist/services/octoprint/constants/octoprint-websocket.constants.js +12 -3
  258. package/dist/services/octoprint/constants/octoprint-websocket.constants.js.map +1 -1
  259. package/dist/services/octoprint/dto/octoprint-event.dto.js +2 -1
  260. package/dist/services/octoprint/dto/octoprint-event.dto.js.map +1 -1
  261. package/dist/services/octoprint/octoprint-api.routes.js +0 -98
  262. package/dist/services/octoprint/octoprint-api.routes.js.map +1 -1
  263. package/dist/services/octoprint/octoprint-websocket.adapter.js +72 -72
  264. package/dist/services/octoprint/octoprint-websocket.adapter.js.map +1 -1
  265. package/dist/services/octoprint/octoprint.client.js +87 -343
  266. package/dist/services/octoprint/octoprint.client.js.map +1 -1
  267. package/dist/services/octoprint/utils/octoprint-http-client.builder.js +31 -0
  268. package/dist/services/octoprint/utils/octoprint-http-client.builder.js.map +1 -0
  269. package/dist/services/octoprint.api.js +14 -18
  270. package/dist/services/octoprint.api.js.map +1 -1
  271. package/dist/services/orm/base.service.js +11 -12
  272. package/dist/services/orm/base.service.js.map +1 -1
  273. package/dist/services/orm/camera-stream.service.js +5 -1
  274. package/dist/services/orm/camera-stream.service.js.map +1 -1
  275. package/dist/services/orm/custom-gcode.service.js +2 -2
  276. package/dist/services/orm/custom-gcode.service.js.map +1 -1
  277. package/dist/services/orm/floor-position.service.js +0 -5
  278. package/dist/services/orm/floor-position.service.js.map +1 -1
  279. package/dist/services/orm/floor.service.js +43 -39
  280. package/dist/services/orm/floor.service.js.map +1 -1
  281. package/dist/services/orm/permission.service.js +3 -4
  282. package/dist/services/orm/permission.service.js.map +1 -1
  283. package/dist/services/orm/print-completion.service.js +2 -4
  284. package/dist/services/orm/print-completion.service.js.map +1 -1
  285. package/dist/services/orm/printer-group.service.js +2 -7
  286. package/dist/services/orm/printer-group.service.js.map +1 -1
  287. package/dist/services/orm/printer.service.js +29 -39
  288. package/dist/services/orm/printer.service.js.map +1 -1
  289. package/dist/services/orm/refresh-token.service.js +5 -11
  290. package/dist/services/orm/refresh-token.service.js.map +1 -1
  291. package/dist/services/orm/role.service.js +11 -10
  292. package/dist/services/orm/role.service.js.map +1 -1
  293. package/dist/services/orm/settings.service.js +37 -133
  294. package/dist/services/orm/settings.service.js.map +1 -1
  295. package/dist/services/orm/user.service.js +13 -15
  296. package/dist/services/orm/user.service.js.map +1 -1
  297. package/dist/services/printer-api.factory.js +9 -6
  298. package/dist/services/printer-api.factory.js.map +1 -1
  299. package/dist/services/printer-api.interface.js +13 -6
  300. package/dist/services/printer-api.interface.js.map +1 -1
  301. package/dist/services/prusa-link/constants/prusalink-event.dto.js +18 -0
  302. package/dist/services/prusa-link/constants/prusalink-event.dto.js.map +1 -0
  303. package/dist/services/prusa-link/constants/prusalink.constants.js +13 -0
  304. package/dist/services/prusa-link/constants/prusalink.constants.js.map +1 -0
  305. package/dist/services/prusa-link/dto/file-response.dto.js +6 -0
  306. package/dist/services/prusa-link/dto/file-response.dto.js.map +1 -0
  307. package/dist/services/prusa-link/dto/file.dto.js +6 -0
  308. package/dist/services/prusa-link/dto/file.dto.js.map +1 -0
  309. package/dist/services/prusa-link/dto/job-state.dto.js +6 -0
  310. package/dist/services/prusa-link/dto/job-state.dto.js.map +1 -0
  311. package/dist/services/prusa-link/dto/printer-state.dto.js +6 -0
  312. package/dist/services/prusa-link/dto/printer-state.dto.js.map +1 -0
  313. package/dist/services/prusa-link/dto/status.dto.js +6 -0
  314. package/dist/services/prusa-link/dto/status.dto.js.map +1 -0
  315. package/dist/services/prusa-link/dto/version.dto.js +6 -0
  316. package/dist/services/prusa-link/dto/version.dto.js.map +1 -0
  317. package/dist/services/prusa-link/prusa-link-http-polling.adapter.js +142 -0
  318. package/dist/services/prusa-link/prusa-link-http-polling.adapter.js.map +1 -0
  319. package/dist/services/prusa-link/prusa-link.api.js +233 -0
  320. package/dist/services/prusa-link/prusa-link.api.js.map +1 -0
  321. package/dist/services/prusa-link/utils/digest-auth.params.js +6 -0
  322. package/dist/services/prusa-link/utils/digest-auth.params.js.map +1 -0
  323. package/dist/services/prusa-link/utils/digest-auth.util.js +28 -0
  324. package/dist/services/prusa-link/utils/digest-auth.util.js.map +1 -0
  325. package/dist/services/prusa-link/utils/prusa-link-http-client.builder.js +131 -0
  326. package/dist/services/prusa-link/utils/prusa-link-http-client.builder.js.map +1 -0
  327. package/dist/services/socket.factory.js +9 -6
  328. package/dist/services/socket.factory.js.map +1 -1
  329. package/dist/services/{core/task-manager.service.js → task-manager.service.js} +72 -78
  330. package/dist/services/task-manager.service.js.map +1 -0
  331. package/dist/services/validators/camera-service.validation.js +19 -0
  332. package/dist/services/validators/camera-service.validation.js.map +1 -0
  333. package/dist/services/validators/floor-service.validation.js +47 -36
  334. package/dist/services/validators/floor-service.validation.js.map +1 -1
  335. package/dist/services/validators/print-completion-service.validation.js +22 -9
  336. package/dist/services/validators/print-completion-service.validation.js.map +1 -1
  337. package/dist/services/validators/printer-service.validation.js +112 -29
  338. package/dist/services/validators/printer-service.validation.js.map +1 -1
  339. package/dist/services/validators/settings-service.validation.js +78 -66
  340. package/dist/services/validators/settings-service.validation.js.map +1 -1
  341. package/dist/services/validators/user-service.validation.js +17 -16
  342. package/dist/services/validators/user-service.validation.js.map +1 -1
  343. package/dist/services/validators/yaml-service.validation.js +94 -51
  344. package/dist/services/validators/yaml-service.validation.js.map +1 -1
  345. package/dist/shared/default-http-client.builder.js +94 -0
  346. package/dist/shared/default-http-client.builder.js.map +1 -0
  347. package/dist/shared/load-controllers.js +20 -0
  348. package/dist/shared/load-controllers.js.map +1 -0
  349. package/dist/shared/runtime-settings.migration.js +46 -0
  350. package/dist/shared/runtime-settings.migration.js.map +1 -0
  351. package/dist/shared/websocket-rpc-extended.adapter.js +15 -14
  352. package/dist/shared/websocket-rpc-extended.adapter.js.map +1 -1
  353. package/dist/shared/websocket.adapter.js +4 -5
  354. package/dist/shared/websocket.adapter.js.map +1 -1
  355. package/dist/state/file-upload-tracker.cache.js +33 -42
  356. package/dist/state/file-upload-tracker.cache.js.map +1 -1
  357. package/dist/state/file.cache.js +1 -1
  358. package/dist/state/file.cache.js.map +1 -1
  359. package/dist/state/floor.store.js +6 -6
  360. package/dist/state/floor.store.js.map +1 -1
  361. package/dist/state/printer-events.cache.js +21 -22
  362. package/dist/state/printer-events.cache.js.map +1 -1
  363. package/dist/state/printer-files.store.js +6 -8
  364. package/dist/state/printer-files.store.js.map +1 -1
  365. package/dist/state/printer-socket.store.js +27 -50
  366. package/dist/state/printer-socket.store.js.map +1 -1
  367. package/dist/state/printer-thumbnail.cache.js +5 -9
  368. package/dist/state/printer-thumbnail.cache.js.map +1 -1
  369. package/dist/state/printer.cache.js +14 -12
  370. package/dist/state/printer.cache.js.map +1 -1
  371. package/dist/state/settings.store.js +78 -51
  372. package/dist/state/settings.store.js.map +1 -1
  373. package/dist/state/socket-io.gateway.js +39 -36
  374. package/dist/state/socket-io.gateway.js.map +1 -1
  375. package/dist/state/test-printer-socket.store.js +20 -15
  376. package/dist/state/test-printer-socket.store.js.map +1 -1
  377. package/dist/state/validation/create-test-printer.validation.js +13 -10
  378. package/dist/state/validation/create-test-printer.validation.js.map +1 -1
  379. package/dist/task.presets.js.map +1 -1
  380. package/dist/tasks/boot.task.js +14 -19
  381. package/dist/tasks/boot.task.js.map +1 -1
  382. package/dist/tasks/client-bundle.task.js +1 -3
  383. package/dist/tasks/client-bundle.task.js.map +1 -1
  384. package/dist/tasks/print-completion.socketio.task.js +27 -28
  385. package/dist/tasks/print-completion.socketio.task.js.map +1 -1
  386. package/dist/tasks/printer-file-clean.task.js +6 -10
  387. package/dist/tasks/printer-file-clean.task.js.map +1 -1
  388. package/dist/tasks/printer-websocket-restore.task.js +4 -15
  389. package/dist/tasks/printer-websocket-restore.task.js.map +1 -1
  390. package/dist/tasks/printer-websocket.task.js +2 -14
  391. package/dist/tasks/printer-websocket.task.js.map +1 -1
  392. package/dist/tasks/socketio.task.js +8 -35
  393. package/dist/tasks/socketio.task.js.map +1 -1
  394. package/dist/tasks/software-update.task.js +1 -1
  395. package/dist/tasks/software-update.task.js.map +1 -1
  396. package/dist/tasks.js +3 -3
  397. package/dist/tasks.js.map +1 -1
  398. package/dist/utils/array.util.js.map +1 -1
  399. package/dist/utils/cache/key-diff.cache.js.map +1 -1
  400. package/dist/utils/env.utils.js +0 -2
  401. package/dist/utils/env.utils.js.map +1 -1
  402. package/dist/utils/normalize-url.js +6 -3
  403. package/dist/utils/normalize-url.js.map +1 -1
  404. package/dist/utils/pretty-print.utils.js +1 -1
  405. package/dist/utils/pretty-print.utils.js.map +1 -1
  406. package/dist/utils/printer-type.utils.js.map +1 -1
  407. package/dist/utils/time.utils.js +7 -17
  408. package/dist/utils/time.utils.js.map +1 -1
  409. package/dist/utils/url.utils.js +11 -14
  410. package/dist/utils/url.utils.js.map +1 -1
  411. package/package.json +53 -55
  412. package/tsconfig.json +2 -1
  413. package/.yarn/releases/yarn-4.6.0.cjs +0 -934
  414. package/dist/consoles/check-ports.js +0 -170
  415. package/dist/consoles/check-ports.js.map +0 -1
  416. package/dist/consoles/sqlite-torm.js +0 -31
  417. package/dist/consoles/sqlite-torm.js.map +0 -1
  418. package/dist/consoles/upload-test.js +0 -52
  419. package/dist/consoles/upload-test.js.map +0 -1
  420. package/dist/controllers/plugin-firmware-update.controller.js +0 -236
  421. package/dist/controllers/plugin-firmware-update.controller.js.map +0 -1
  422. package/dist/entities/base.entity.js +0 -29
  423. package/dist/entities/base.entity.js.map +0 -1
  424. package/dist/entities/printer-file.entity.js +0 -140
  425. package/dist/entities/printer-file.entity.js.map +0 -1
  426. package/dist/handlers/cache-manager.js +0 -18
  427. package/dist/handlers/cache-manager.js.map +0 -1
  428. package/dist/models/PrinterFile.js +0 -44
  429. package/dist/models/PrinterFile.js.map +0 -1
  430. package/dist/services/core/task-manager.service.js.map +0 -1
  431. package/dist/services/octoprint/plugin-base.service.js +0 -101
  432. package/dist/services/octoprint/plugin-base.service.js.map +0 -1
  433. package/dist/services/octoprint/plugin-firmware-update.service.js +0 -100
  434. package/dist/services/octoprint/plugin-firmware-update.service.js.map +0 -1
  435. package/dist/services/octoprint/plugin-repository.cache.js +0 -45
  436. package/dist/services/octoprint/plugin-repository.cache.js.map +0 -1
  437. package/dist/utils/benchmark.util.js +0 -39
  438. package/dist/utils/benchmark.util.js.map +0 -1
  439. package/dist/utils/is-docker.js +0 -40
  440. package/dist/utils/is-docker.js.map +0 -1
  441. package/dist/utils/metric.utils.js +0 -35
  442. package/dist/utils/metric.utils.js.map +0 -1
  443. package/requests/moonraker/api_job.http +0 -5
  444. package/requests/moonraker/api_printer.http +0 -5
  445. package/requests/moonraker/api_settings.http +0 -5
  446. package/requests/moonraker/printer_info.http +0 -5
  447. package/requests/moonraker/printer_objects_list.http +0 -6
  448. package/requests/moonraker/printer_objects_pause_resume.http +0 -6
  449. package/requests/moonraker/printer_objects_print_stats.http +0 -6
  450. package/requests/moonraker/printer_objects_webhooks.http +0 -6
  451. package/requests/moonraker/server_info.http +0 -5
  452. package/requests/octoprint/octoprint-api-printer-current.http +0 -7
  453. package/requests/octoprint/octoprint-pluginmanager-plugins.http +0 -7
  454. package/requests/printer-file/get-partial-file-moonraker.http +0 -5
  455. package/requests/printer-file/get-thumbnails.http +0 -5
  456. package/requests/printer-file/reload-printer-thumbnails.http +0 -10
  457. package/requests/printer-file/testfile.gcode +0 -5665
  458. package/requests/printer-file/upload-file.http +0 -11
  459. package/requests/printer-file/upload-slicer-file.http +0 -11
  460. package/requests/printers/list.http +0 -5
@@ -10,17 +10,18 @@ Object.defineProperty(exports, "WebsocketRpcExtendedAdapter", {
10
10
  });
11
11
  const _websocketadapter = require("./websocket.adapter");
12
12
  class WebsocketRpcExtendedAdapter extends _websocketadapter.WebsocketAdapter {
13
- constructor({ loggerFactory }){
14
- super({
15
- loggerFactory
16
- });
13
+ requestMap;
14
+ constructor(loggerFactory){
15
+ super(loggerFactory);
17
16
  this.logger = loggerFactory(WebsocketRpcExtendedAdapter.name);
18
17
  this.requestMap = new Map();
19
18
  }
20
- requestMap;
21
19
  sendRequest(request, options = {
22
20
  timeout: 10000
23
21
  }) {
22
+ if (!this.socket) {
23
+ throw new Error("Websocket was not created, cannot send request");
24
+ }
24
25
  request.id = request.id++;
25
26
  const requestId = request.id;
26
27
  const promise = new Promise((resolve, reject)=>{
@@ -37,19 +38,12 @@ class WebsocketRpcExtendedAdapter extends _websocketadapter.WebsocketAdapter {
37
38
  this.socket.send(JSON.stringify(request));
38
39
  return promise;
39
40
  }
40
- clearRequest(requestId) {
41
- const request = this.requestMap.get(requestId);
42
- if (request) {
43
- clearTimeout(request.timeout);
44
- this.requestMap.delete(requestId);
45
- }
46
- }
47
- onMessage(message) {
41
+ async onMessage(message) {
48
42
  const response = JSON.parse(message.toString());
49
43
  const requestId = response.id;
50
44
  if (!requestId) {
51
45
  const event = response;
52
- return this.onEventMessage(event);
46
+ return await this.onEventMessage(event);
53
47
  }
54
48
  const request = this.requestMap.get(requestId);
55
49
  if (!request) {
@@ -62,6 +56,13 @@ class WebsocketRpcExtendedAdapter extends _websocketadapter.WebsocketAdapter {
62
56
  this.requestMap.delete(requestId);
63
57
  }
64
58
  }
59
+ clearRequest(requestId) {
60
+ const request = this.requestMap.get(requestId);
61
+ if (request) {
62
+ clearTimeout(request.timeout);
63
+ this.requestMap.delete(requestId);
64
+ }
65
+ }
65
66
  }
66
67
 
67
68
  //# sourceMappingURL=websocket-rpc-extended.adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/shared/websocket-rpc-extended.adapter.ts"],"names":["WebsocketRpcExtendedAdapter","WebsocketAdapter","loggerFactory","logger","name","requestMap","Map","sendRequest","request","options","timeout","id","requestId","promise","Promise","resolve","reject","setTimeout","clearRequest","Error","Math","min","set","socket","send","JSON","stringify","get","clearTimeout","delete","onMessage","message","response","parse","toString","event","onEventMessage","warn"],"mappings":";;;;+BAQsBA;;;eAAAA;;;kCARW;AAQ1B,MAAeA,oCAAoCC,kCAAgB;IAExE,YAAsB,EAAEC,aAAa,EAAqC,CAAE;QAC1E,KAAK,CAAC;YAAEA;QAAc;QAEtB,IAAI,CAACC,MAAM,GAAGD,cAAcF,4BAA4BI,IAAI;QAE5D,IAAI,CAACC,UAAU,GAAG,IAAIC;IACxB;IAEQD,WAON;IAEFE,YAAwBC,OAA6B,EAAEC,UAAU;QAAEC,SAAS;IAAM,CAAC,EAAkC;QACnHF,QAAQG,EAAE,GAAGH,QAAQG,EAAE;QAGvB,MAAMC,YAAYJ,QAAQG,EAAE;QAC5B,MAAME,UAAU,IAAIC,QAA+B,CAACC,SAASC;YAC3D,MAAMN,UAAUO,WAAW;gBACzB,IAAI,CAACC,YAAY,CAACN;gBAClBI,OAAO,IAAIG,MAAM,CAAC,4BAA4B,EAAEP,UAAU,UAAU,CAAC;YACvE,GAAGQ,KAAKC,GAAG,CAAC,MAAMZ,SAASC,YAAY;YAEvC,IAAI,CAACL,UAAU,CAACiB,GAAG,CAACV,WAAW;gBAAEG;gBAASC;gBAAQN;YAAQ;QAC5D;QAGA,IAAI,CAACa,MAAM,CAACC,IAAI,CAACC,KAAKC,SAAS,CAAClB;QAEhC,OAAOK;IACT;IAEQK,aAAaN,SAAiB,EAAQ;QAC5C,MAAMJ,UAAU,IAAI,CAACH,UAAU,CAACsB,GAAG,CAACf;QACpC,IAAIJ,SAAS;YACXoB,aAAapB,QAAQE,OAAO;YAC5B,IAAI,CAACL,UAAU,CAACwB,MAAM,CAACjB;QACzB;IACF;IASUkB,UAAUC,OAAa,EAAQ;QACvC,MAAMC,WAAoCP,KAAKQ,KAAK,CAACF,QAAQG,QAAQ;QACrE,MAAMtB,YAAYoB,SAASrB,EAAE;QAC7B,IAAI,CAACC,WAAW;YACd,MAAMuB,QAAQH;YACd,OAAO,IAAI,CAACI,cAAc,CAACD;QAC7B;QAEA,MAAM3B,UAAU,IAAI,CAACH,UAAU,CAACsB,GAAG,CAACf;QACpC,IAAI,CAACJ,SAAS;YACZ,IAAI,CAACL,MAAM,CAACkC,IAAI,CACd,CAAC,uDAAuD,EAAEL,SAASrB,EAAE,CAAC,yCAAyC,CAAC;YAElH;QACF;QAEA,IAAIH,SAAS;YACXoB,aAAapB,QAAQE,OAAO;YAC5BF,QAAQO,OAAO,CAACiB;YAChB,IAAI,CAAC3B,UAAU,CAACwB,MAAM,CAACjB;QACzB;IACF;AACF"}
1
+ {"version":3,"sources":["../../src/shared/websocket-rpc-extended.adapter.ts"],"names":["WebsocketRpcExtendedAdapter","WebsocketAdapter","requestMap","loggerFactory","logger","name","Map","sendRequest","request","options","timeout","socket","Error","id","requestId","promise","Promise","resolve","reject","setTimeout","clearRequest","Math","min","set","send","JSON","stringify","onMessage","message","response","parse","toString","event","onEventMessage","get","warn","clearTimeout","delete"],"mappings":";;;;+BAQsBA;;;eAAAA;;;kCARW;AAQ1B,MAAeA,oCAAoCC,kCAAgB;IAEhEC,WAON;IAEF,YAAsBC,aAA6B,CAAE;QACnD,KAAK,CAACA;QAEN,IAAI,CAACC,MAAM,GAAGD,cAAcH,4BAA4BK,IAAI;QAE5D,IAAI,CAACH,UAAU,GAAG,IAAII;IACxB;IAEAC,YAAwBC,OAA6B,EAAEC,UAAU;QAAEC,SAAS;IAAM,CAAC,EAAkC;QACnH,IAAI,CAAC,IAAI,CAACC,MAAM,EAAE;YAChB,MAAM,IAAIC,MAAM;QAClB;QAEAJ,QAAQK,EAAE,GAAGL,QAAQK,EAAE;QAGvB,MAAMC,YAAYN,QAAQK,EAAE;QAC5B,MAAME,UAAU,IAAIC,QAA+B,CAACC,SAASC;YAC3D,MAAMR,UAAUS,WAAW;gBACzB,IAAI,CAACC,YAAY,CAACN;gBAClBI,OAAO,IAAIN,MAAM,CAAC,4BAA4B,EAAEE,UAAU,UAAU,CAAC;YACvE,GAAGO,KAAKC,GAAG,CAAC,MAAMb,SAASC,YAAY;YAEvC,IAAI,CAACR,UAAU,CAACqB,GAAG,CAACT,WAAW;gBAAEG;gBAASC;gBAAQR;YAAQ;QAC5D;QAGA,IAAI,CAACC,MAAM,CAACa,IAAI,CAACC,KAAKC,SAAS,CAAClB;QAEhC,OAAOO;IACT;IASA,MAAgBY,UAAUC,OAAa,EAAiB;QACtD,MAAMC,WAAoCJ,KAAKK,KAAK,CAACF,QAAQG,QAAQ;QACrE,MAAMjB,YAAYe,SAAShB,EAAE;QAC7B,IAAI,CAACC,WAAW;YACd,MAAMkB,QAAQH;YACd,OAAO,MAAM,IAAI,CAACI,cAAc,CAACD;QACnC;QAEA,MAAMxB,UAAU,IAAI,CAACN,UAAU,CAACgC,GAAG,CAACpB;QACpC,IAAI,CAACN,SAAS;YACZ,IAAI,CAACJ,MAAM,CAAC+B,IAAI,CACd,CAAC,uDAAuD,EAAEN,SAAShB,EAAE,CAAC,yCAAyC,CAAC;YAElH;QACF;QAEA,IAAIL,SAAS;YACX4B,aAAa5B,QAAQE,OAAO;YAC5BF,QAAQS,OAAO,CAACY;YAChB,IAAI,CAAC3B,UAAU,CAACmC,MAAM,CAACvB;QACzB;IACF;IAEQM,aAAaN,SAAiB,EAAQ;QAC5C,MAAMN,UAAU,IAAI,CAACN,UAAU,CAACgC,GAAG,CAACpB;QACpC,IAAIN,SAAS;YACX4B,aAAa5B,QAAQE,OAAO;YAC5B,IAAI,CAACR,UAAU,CAACmC,MAAM,CAACvB;QACzB;IACF;AACF"}
@@ -14,7 +14,7 @@ class WebsocketAdapter {
14
14
  socket;
15
15
  logger;
16
16
  eventEmittingAllowed = true;
17
- constructor({ loggerFactory }){
17
+ constructor(loggerFactory){
18
18
  this.logger = loggerFactory(WebsocketAdapter.name);
19
19
  }
20
20
  get isOpened() {
@@ -31,6 +31,9 @@ class WebsocketAdapter {
31
31
  this.eventEmittingAllowed = false;
32
32
  }
33
33
  open(url) {
34
+ if (!url) {
35
+ throw new Error("Cant setup up websocket, URL may not be empty.");
36
+ }
34
37
  this.socket = new _ws.WebSocket(url, {
35
38
  handshakeTimeout: _serverconstants.AppConstants.defaultWebsocketHandshakeTimeout
36
39
  });
@@ -51,10 +54,6 @@ class WebsocketAdapter {
51
54
  });
52
55
  });
53
56
  }
54
- onError(error) {}
55
- afterOpened(event) {}
56
- afterClosed(event) {}
57
- onMessage(event) {}
58
57
  async onOpen(event) {
59
58
  await this.afterOpened(event);
60
59
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/shared/websocket.adapter.ts"],"names":["WebsocketAdapter","socket","logger","eventEmittingAllowed","constructor","loggerFactory","name","isOpened","readyState","WebSocket","OPEN","close","allowEmittingEvents","disallowEmittingEvents","open","url","handshakeTimeout","AppConstants","defaultWebsocketHandshakeTimeout","onopen","event","onOpen","onerror","error","onError","onclose","onClose","onmessage","message","onMessage","data","sendMessage","payload","Promise","resolve","reject","send","afterOpened","afterClosed"],"mappings":";;;;+BAOaA;;;eAAAA;;;iCAPgB;oBAC2D;AAMjF,MAAMA;IACXC,OAAmB;IACTC,OAAsB;IAChCC,uBAAgC,KAAK;IAErCC,YAAY,EAAEC,aAAa,EAAqC,CAAE;QAChE,IAAI,CAACH,MAAM,GAAGG,cAAcL,iBAAiBM,IAAI;IACnD;IAEA,IAAIC,WAAW;QACb,OAAO,IAAI,CAACN,MAAM,EAAEO,eAAeC,aAAS,CAACC,IAAI;IACnD;IAEOC,QAAQ;QACb,IAAI,CAACV,MAAM,EAAEU;QACb,OAAO,IAAI,CAACV,MAAM;IACpB;IAEOW,sBAAsB;QAC3B,IAAI,CAACT,oBAAoB,GAAG;IAC9B;IAEOU,yBAAyB;QAC9B,IAAI,CAACV,oBAAoB,GAAG;IAC9B;IASAW,KAAKC,GAAiB,EAAQ;QAC5B,IAAI,CAACd,MAAM,GAAG,IAAIQ,aAAS,CAACM,KAAK;YAAEC,kBAAkBC,6BAAY,CAACC,gCAAgC;QAAC;QACnG,IAAI,CAACjB,MAAM,CAACkB,MAAM,GAAG,CAACC,QAAU,IAAI,CAACC,MAAM,CAACD;QAC5C,IAAI,CAACnB,MAAM,CAACqB,OAAO,GAAG,CAACC,QAAU,IAAI,CAACC,OAAO,CAACD;QAC9C,IAAI,CAACtB,MAAM,CAACwB,OAAO,GAAG,CAACL,QAAU,IAAI,CAACM,OAAO,CAACN;QAC9C,IAAI,CAACnB,MAAM,CAAC0B,SAAS,GAAG,CAACC,UAAY,IAAI,CAACC,SAAS,CAACD,QAAQE,IAAI;IAClE;IASA,MAAgBC,YAAYC,OAAe,EAAiB;QAC1D,IAAI,CAAC,IAAI,CAACzB,QAAQ,IAAI,CAAC,IAAI,CAACN,MAAM,EAAE;YAClC,IAAI,CAACC,MAAM,CAACqB,KAAK,CAAC;YAClB;QACF;QACA,OAAO,MAAM,IAAIU,QAAQ,CAACC,SAASC;YACjC,IAAI,CAAClC,MAAM,CAAEmC,IAAI,CAACJ,SAAS,CAACT;gBAC1B,IAAIA,OAAOY,OAAOZ;gBAClBW;YACF;QACF;IACF;IASUV,QAAQD,KAAiB,EAAwB,CAAC;IASlDc,YAAYjB,KAAc,EAAwB,CAAC;IASnDkB,YAAYlB,KAAiB,EAAwB,CAAC;IAStDS,UAAUT,KAAW,EAAwB,CAAC;IAQxD,MAAcC,OAAOD,KAAc,EAAiB;QAClD,MAAM,IAAI,CAACiB,WAAW,CAACjB;IACzB;IAQA,MAAcM,QAAQN,KAAiB,EAAiB;QACtD,MAAM,IAAI,CAACkB,WAAW,CAAClB;IACzB;AACF"}
1
+ {"version":3,"sources":["../../src/shared/websocket.adapter.ts"],"names":["WebsocketAdapter","socket","logger","eventEmittingAllowed","constructor","loggerFactory","name","isOpened","readyState","WebSocket","OPEN","close","allowEmittingEvents","disallowEmittingEvents","open","url","Error","handshakeTimeout","AppConstants","defaultWebsocketHandshakeTimeout","onopen","event","onOpen","onerror","error","onError","onclose","onClose","onmessage","message","onMessage","data","sendMessage","payload","Promise","resolve","reject","send","afterOpened","afterClosed"],"mappings":";;;;+BAOsBA;;;eAAAA;;;iCAPO;oBAC6C;AAMnE,MAAeA;IACpBC,OAAmB;IACTC,OAAsB;IAChCC,uBAAgC,KAAK;IAErCC,YAAYC,aAA6B,CAAE;QACzC,IAAI,CAACH,MAAM,GAAGG,cAAcL,iBAAiBM,IAAI;IACnD;IAEA,IAAIC,WAAW;QACb,OAAO,IAAI,CAACN,MAAM,EAAEO,eAAeC,aAAS,CAACC,IAAI;IACnD;IAEOC,QAAQ;QACb,IAAI,CAACV,MAAM,EAAEU;QACb,OAAO,IAAI,CAACV,MAAM;IACpB;IAEOW,sBAAsB;QAC3B,IAAI,CAACT,oBAAoB,GAAG;IAC9B;IAEOU,yBAAyB;QAC9B,IAAI,CAACV,oBAAoB,GAAG;IAC9B;IASAW,KAAKC,GAAS,EAAQ;QACpB,IAAI,CAACA,KAAK;YACR,MAAM,IAAIC,MAAM;QAClB;QACA,IAAI,CAACf,MAAM,GAAG,IAAIQ,aAAS,CAACM,KAAK;YAC/BE,kBAAkBC,6BAAY,CAACC,gCAAgC;QACjE;QACA,IAAI,CAAClB,MAAM,CAACmB,MAAM,GAAG,CAACC,QAAU,IAAI,CAACC,MAAM,CAACD;QAC5C,IAAI,CAACpB,MAAM,CAACsB,OAAO,GAAG,CAACC,QAAU,IAAI,CAACC,OAAO,CAACD;QAC9C,IAAI,CAACvB,MAAM,CAACyB,OAAO,GAAG,CAACL,QAAU,IAAI,CAACM,OAAO,CAACN;QAC9C,IAAI,CAACpB,MAAM,CAAC2B,SAAS,GAAG,CAACC,UAAY,IAAI,CAACC,SAAS,CAACD,QAAQE,IAAI;IAClE;IASA,MAAgBC,YAAYC,OAAe,EAAiB;QAC1D,IAAI,CAAC,IAAI,CAAC1B,QAAQ,IAAI,CAAC,IAAI,CAACN,MAAM,EAAE;YAClC,IAAI,CAACC,MAAM,CAACsB,KAAK,CAAC;YAClB;QACF;QACA,OAAO,MAAM,IAAIU,QAAQ,CAACC,SAASC;YACjC,IAAI,CAACnC,MAAM,CAAEoC,IAAI,CAACJ,SAAS,CAACT;gBAC1B,IAAIA,OAAOY,OAAOZ;gBAClBW;YACF;QACF;IACF;IA4CA,MAAcb,OAAOD,KAAc,EAAiB;QAClD,MAAM,IAAI,CAACiB,WAAW,CAACjB;IACzB;IAQA,MAAcM,QAAQN,KAAiB,EAAiB;QACtD,MAAM,IAAI,CAACkB,WAAW,CAAClB;IACzB;AACF"}
@@ -11,59 +11,55 @@ Object.defineProperty(exports, "FileUploadTrackerCache", {
11
11
  const _correlationtokenutil = require("../utils/correlation-token.util");
12
12
  const _eventconstants = require("../constants/event.constants");
13
13
  class FileUploadTrackerCache {
14
- currentUploads = [];
15
- uploadsDone = [];
16
- uploadsFailed = [];
17
14
  eventEmitter2;
15
+ currentUploads;
18
16
  logger;
19
- constructor({ loggerFactory, eventEmitter2 }){
17
+ constructor(loggerFactory, eventEmitter2){
20
18
  this.eventEmitter2 = eventEmitter2;
19
+ this.currentUploads = [];
21
20
  this.logger = loggerFactory(FileUploadTrackerCache.name);
21
+ this.eventEmitter2.on((0, _eventconstants.uploadProgressEvent)("*"), (token, progress)=>this.handleUploadProgress(token, progress));
22
+ this.eventEmitter2.on((0, _eventconstants.uploadDoneEvent)("*"), (token)=>this.handleUploadDone(token));
23
+ this.eventEmitter2.on((0, _eventconstants.uploadFailedEvent)("*"), (token, reason)=>this.handleUploadFailed(token, reason));
22
24
  }
23
- progressCallback = (token, p)=>{
24
- this.updateUploadProgress(token, p);
25
- };
26
- getUploads(filterHourOld = false) {
27
- const currentTime = Date.now();
28
- const done = this.uploadsDone.filter((d)=>currentTime - d.startedAt < 60 * 60 * 1000);
29
- const failed = this.uploadsFailed.filter((d)=>currentTime - d.startedAt < 60 * 60 * 1000);
30
- return filterHourOld ? {
31
- current: this.currentUploads,
32
- done,
33
- failed
34
- } : {
35
- current: this.currentUploads,
36
- done: this.uploadsDone,
37
- failed: this.uploadsFailed
25
+ getUploads() {
26
+ return {
27
+ current: this.currentUploads
38
28
  };
39
29
  }
40
30
  getUpload(correlationToken) {
41
31
  return this.currentUploads.find((cu)=>cu.correlationToken === correlationToken);
42
32
  }
43
- addUploadTracker(multerFile) {
33
+ addUploadTracker(multerFile, printerId) {
44
34
  const correlationToken = (0, _correlationtokenutil.generateCorrelationToken)();
45
35
  this.logger.log(`Starting upload session with token ${correlationToken}`);
46
- this.eventEmitter2.on((0, _eventconstants.uploadProgressEvent)(correlationToken), this.progressCallback);
47
36
  this.currentUploads.push({
48
37
  correlationToken,
38
+ printerId,
49
39
  startedAt: Date.now(),
50
40
  multerFile,
51
- progress: {}
41
+ progress: 0,
42
+ completed: false,
43
+ completedAt: null,
44
+ success: null,
45
+ reason: null
52
46
  });
53
47
  return correlationToken;
54
48
  }
55
- updateUploadProgress(token, progress, reason) {
56
- if (progress.progress === 1) {
57
- this.logger.log("Upload tracker completed");
58
- this.markUploadDone(token, true);
59
- this.eventEmitter2.off((0, _eventconstants.uploadProgressEvent)(token), this.progressCallback);
60
- } else if (progress.failed) {
61
- this.markUploadDone(token, false, reason);
62
- this.eventEmitter2.off((0, _eventconstants.uploadProgressEvent)(token), this.progressCallback);
63
- } else {
64
- const upload = this.getUpload(token);
65
- upload.progress = progress;
49
+ handleUploadProgress(token, event) {
50
+ const upload = this.getUpload(token);
51
+ if (!upload) {
52
+ return;
66
53
  }
54
+ upload.progress = event.progress ?? null;
55
+ }
56
+ handleUploadFailed(token, reason) {
57
+ this.logger.log(`Upload tracker ${token} completed with failure`);
58
+ this.markUploadDone(token, false, reason);
59
+ }
60
+ handleUploadDone(token) {
61
+ this.logger.log(`Upload tracker ${token} completed with success`);
62
+ this.markUploadDone(token, true);
67
63
  }
68
64
  markUploadDone(token, success, reason) {
69
65
  const trackedUploadIndex = this.currentUploads.findIndex((cu)=>cu.correlationToken === token);
@@ -72,15 +68,10 @@ class FileUploadTrackerCache {
72
68
  return;
73
69
  }
74
70
  const trackedUpload = this.currentUploads[trackedUploadIndex];
75
- if (success) {
76
- trackedUpload.failedAt = Date.now();
77
- trackedUpload.reason = reason;
78
- this.uploadsDone.push(trackedUpload);
79
- } else {
80
- trackedUpload.succeededAt = Date.now();
81
- this.uploadsFailed.push(trackedUpload);
82
- }
83
- this.currentUploads.splice(trackedUploadIndex, 1);
71
+ trackedUpload.completed = true;
72
+ trackedUpload.success = success;
73
+ trackedUpload.completedAt = Date.now();
74
+ trackedUpload.reason = reason ?? null;
84
75
  }
85
76
  }
86
77
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/state/file-upload-tracker.cache.ts"],"names":["FileUploadTrackerCache","currentUploads","uploadsDone","uploadsFailed","eventEmitter2","logger","constructor","loggerFactory","name","progressCallback","token","p","updateUploadProgress","getUploads","filterHourOld","currentTime","Date","now","done","filter","d","startedAt","failed","current","getUpload","correlationToken","find","cu","addUploadTracker","multerFile","generateCorrelationToken","log","on","uploadProgressEvent","push","progress","reason","markUploadDone","off","upload","success","trackedUploadIndex","findIndex","warn","trackedUpload","failedAt","succeededAt","splice"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/state/file-upload-tracker.cache.ts"],"names":["FileUploadTrackerCache","currentUploads","logger","constructor","loggerFactory","eventEmitter2","name","on","uploadProgressEvent","token","progress","handleUploadProgress","uploadDoneEvent","handleUploadDone","uploadFailedEvent","reason","handleUploadFailed","getUploads","current","getUpload","correlationToken","find","cu","addUploadTracker","multerFile","printerId","generateCorrelationToken","log","push","startedAt","Date","now","completed","completedAt","success","event","upload","markUploadDone","trackedUploadIndex","findIndex","warn","trackedUpload"],"mappings":";;;;+BASaA;;;eAAAA;;;sCAT4B;gCAC+B;AAQjE,MAAMA;;IACMC,eAAqC;IAErCC,OAAsB;IAEvCC,YACEC,aAA6B,EAC7B,AAAiBC,aAA4B,CAC7C;aADiBA,gBAAAA;aANFJ,iBAAkC,EAAE;QAQnD,IAAI,CAACC,MAAM,GAAGE,cAAcJ,uBAAuBM,IAAI;QAEvD,IAAI,CAACD,aAAa,CAACE,EAAE,CAACC,IAAAA,mCAAmB,EAAC,MAAM,CAACC,OAAOC,WAAa,IAAI,CAACC,oBAAoB,CAACF,OAAOC;QACtG,IAAI,CAACL,aAAa,CAACE,EAAE,CAACK,IAAAA,+BAAe,EAAC,MAAM,CAACH,QAAkB,IAAI,CAACI,gBAAgB,CAACJ;QACrF,IAAI,CAACJ,aAAa,CAACE,EAAE,CAACO,IAAAA,iCAAiB,EAAC,MAAM,CAACL,OAAeM,SAC5D,IAAI,CAACC,kBAAkB,CAACP,OAAOM;IAEnC;IAEAE,aAAa;QACX,OAAO;YACLC,SAAS,IAAI,CAACjB,cAAc;QAC9B;IACF;IAEAkB,UAAUC,gBAAwB,EAAE;QAClC,OAAO,IAAI,CAACnB,cAAc,CAACoB,IAAI,CAAC,CAACC,KAAOA,GAAGF,gBAAgB,KAAKA;IAClE;IAEAG,iBAAiBC,UAA+B,EAAEC,SAAiB,EAAE;QACnE,MAAML,mBAAmBM,IAAAA,8CAAwB;QACjD,IAAI,CAACxB,MAAM,CAACyB,GAAG,CAAC,CAAC,mCAAmC,EAAEP,kBAAkB;QAExE,IAAI,CAACnB,cAAc,CAAC2B,IAAI,CAAC;YACvBR;YACAK;YACAI,WAAWC,KAAKC,GAAG;YACnBP;YACAd,UAAU;YACVsB,WAAW;YACXC,aAAa;YACbC,SAAS;YACTnB,QAAQ;QACV;QAEA,OAAOK;IACT;IAEAT,qBAAqBF,KAAa,EAAE0B,KAAyB,EAAE;QAC7D,MAAMC,SAAS,IAAI,CAACjB,SAAS,CAACV;QAC9B,IAAI,CAAC2B,QAAQ;YACX;QACF;QACAA,OAAO1B,QAAQ,GAAGyB,MAAMzB,QAAQ,IAAI;IACtC;IAEAM,mBAAmBP,KAAa,EAAEM,MAAe,EAAE;QACjD,IAAI,CAACb,MAAM,CAACyB,GAAG,CAAC,CAAC,eAAe,EAAElB,MAAM,uBAAuB,CAAC;QAChE,IAAI,CAAC4B,cAAc,CAAC5B,OAAO,OAAOM;IACpC;IAEAF,iBAAiBJ,KAAa,EAAE;QAC9B,IAAI,CAACP,MAAM,CAACyB,GAAG,CAAC,CAAC,eAAe,EAAElB,MAAM,uBAAuB,CAAC;QAChE,IAAI,CAAC4B,cAAc,CAAC5B,OAAO;IAC7B;IAEA4B,eAAe5B,KAAa,EAAEyB,OAAgB,EAAEnB,MAAe,EAAE;QAC/D,MAAMuB,qBAAqB,IAAI,CAACrC,cAAc,CAACsC,SAAS,CAAC,CAACjB,KAAOA,GAAGF,gBAAgB,KAAKX;QACzF,IAAI6B,uBAAuB,CAAC,GAAG;YAC7B,IAAI,CAACpC,MAAM,CAACsC,IAAI,CAAC,CAAC,sDAAsD,EAAE/B,MAAM,8BAA8B,CAAC;YAC/G;QACF;QAEA,MAAMgC,gBAAgB,IAAI,CAACxC,cAAc,CAACqC,mBAAmB;QAE7DG,cAAcT,SAAS,GAAG;QAC1BS,cAAcP,OAAO,GAAGA;QACxBO,cAAcR,WAAW,GAAGH,KAAKC,GAAG;QACpCU,cAAc1B,MAAM,GAAGA,UAAU;IACnC;AACF"}
@@ -13,7 +13,7 @@ class FileCache {
13
13
  printerFileStorage = {};
14
14
  totalFileCount = 0;
15
15
  logger;
16
- constructor({ loggerFactory }){
16
+ constructor(loggerFactory){
17
17
  this.logger = loggerFactory(FileCache.name);
18
18
  }
19
19
  cachePrinterFiles(printerId, files) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/state/file.cache.ts"],"names":["FileCache","printerFileStorage","totalFileCount","logger","constructor","loggerFactory","name","cachePrinterFiles","printerId","files","Error","updateCacheFileRefCount","getPrinterFiles","totalFiles","storage","Object","values","length","log","purgePrinterId","ValidationException","fileStorage","warn","purgeFile","filePath","fileIndex","findIndex","f","path","splice"],"mappings":";;;;+BAMaA;;;eAAAA;;;mCANuB;AAM7B,MAAMA;IACHC,qBAAgD,CAAC,EAAE;IACnDC,iBAAiB,EAAE;IAEnBC,OAAsB;IAE9BC,YAAY,EAAEC,aAAa,EAAqC,CAAE;QAChE,IAAI,CAACF,MAAM,GAAGE,cAAcL,UAAUM,IAAI;IAC5C;IAEAC,kBAAkBC,SAAiB,EAAEC,KAAgB,EAAE;QACrD,IAAI,CAACD,WAAW;YACd,MAAM,IAAIE,MAAM;QAClB;QACA,IAAI,CAACT,kBAAkB,CAACO,UAAU,GAAGC;QACrC,IAAI,CAACE,uBAAuB;IAC9B;IAEAC,gBAAgBJ,SAAiB,EAAE;QACjC,IAAI,CAACA,WAAW;YACd,MAAM,IAAIE,MAAM;QAClB;QACA,OAAO,IAAI,CAACT,kBAAkB,CAACO,UAAU;IAC3C;IAEAG,0BAA0B;QACxB,IAAIE,aAAa;QACjB,KAAK,MAAMC,WAAWC,OAAOC,MAAM,CAAC,IAAI,CAACf,kBAAkB,EAAG;YAC5DY,cAAcC,SAASG,UAAU;QACnC;QAEA,IAAIJ,eAAe,IAAI,CAACX,cAAc,EAAE;YACtC,IAAI,CAACA,cAAc,GAAGW;YACtB,IAAI,CAACV,MAAM,CAACe,GAAG,CAAC,CAAC,eAAe,EAAE,IAAI,CAAChB,cAAc,CAAC,gCAAgC,CAAC;QACzF;QAEA,OAAOW;IACT;IAEAM,eAAeX,SAAiB,EAAE;QAChC,IAAI,CAACA,WAAW;YACd,MAAM,IAAIY,sCAAmB,CAAC;QAChC;QAEA,MAAMC,cAAc,IAAI,CAACpB,kBAAkB,CAACO,UAAU;QAEtD,IAAI,CAACa,aAAa;YAChB,IAAI,CAAClB,MAAM,CAACmB,IAAI,CAAC;YACjB;QACF;QAEA,OAAO,IAAI,CAACrB,kBAAkB,CAACO,UAAU;QAEzC,IAAI,CAACL,MAAM,CAACe,GAAG,CAAC,CAAC,yBAAyB,CAAC;IAC7C;IAEAK,UAAUf,SAAiB,EAAEgB,QAAgB,EAAE;QAC7C,MAAMf,QAAQ,IAAI,CAACG,eAAe,CAACJ;QACnC,IAAI,CAACC,OAAO;QAEZ,MAAMgB,YAAYhB,MAAMiB,SAAS,CAAC,CAACC,IAAMA,EAAEC,IAAI,KAAKJ;QACpD,IAAIC,cAAc,CAAC,GAAG;YAEpB,IAAI,CAACtB,MAAM,CAACmB,IAAI,CAAC,CAAC,6FAA6F,CAAC,EAAEE;YAElH,OAAO,IAAI,CAACrB,MAAM,CAACe,GAAG,CAAC;QACzB;QAEAT,MAAMoB,MAAM,CAACJ,WAAW;QACxB,IAAI,CAACtB,MAAM,CAACe,GAAG,CAAC,CAAC,2BAA2B,CAAC;IAC/C;AACF"}
1
+ {"version":3,"sources":["../../src/state/file.cache.ts"],"names":["FileCache","printerFileStorage","totalFileCount","logger","constructor","loggerFactory","name","cachePrinterFiles","printerId","files","Error","updateCacheFileRefCount","getPrinterFiles","totalFiles","storage","Object","values","length","log","purgePrinterId","ValidationException","fileStorage","warn","purgeFile","filePath","fileIndex","findIndex","f","path","splice"],"mappings":";;;;+BAMaA;;;eAAAA;;;mCANuB;AAM7B,MAAMA;IACHC,qBAAgD,CAAC,EAAE;IACnDC,iBAAiB,EAAE;IAEVC,OAAsB;IAEvCC,YAAYC,aAA6B,CAAE;QACzC,IAAI,CAACF,MAAM,GAAGE,cAAcL,UAAUM,IAAI;IAC5C;IAEAC,kBAAkBC,SAAiB,EAAEC,KAAgB,EAAE;QACrD,IAAI,CAACD,WAAW;YACd,MAAM,IAAIE,MAAM;QAClB;QACA,IAAI,CAACT,kBAAkB,CAACO,UAAU,GAAGC;QACrC,IAAI,CAACE,uBAAuB;IAC9B;IAEAC,gBAAgBJ,SAAiB,EAAE;QACjC,IAAI,CAACA,WAAW;YACd,MAAM,IAAIE,MAAM;QAClB;QACA,OAAO,IAAI,CAACT,kBAAkB,CAACO,UAAU;IAC3C;IAEAG,0BAA0B;QACxB,IAAIE,aAAa;QACjB,KAAK,MAAMC,WAAWC,OAAOC,MAAM,CAAC,IAAI,CAACf,kBAAkB,EAAG;YAC5DY,cAAcC,SAASG,UAAU;QACnC;QAEA,IAAIJ,eAAe,IAAI,CAACX,cAAc,EAAE;YACtC,IAAI,CAACA,cAAc,GAAGW;YACtB,IAAI,CAACV,MAAM,CAACe,GAAG,CAAC,CAAC,eAAe,EAAE,IAAI,CAAChB,cAAc,CAAC,gCAAgC,CAAC;QACzF;QAEA,OAAOW;IACT;IAEAM,eAAeX,SAAiB,EAAE;QAChC,IAAI,CAACA,WAAW;YACd,MAAM,IAAIY,sCAAmB,CAAC;QAChC;QAEA,MAAMC,cAAc,IAAI,CAACpB,kBAAkB,CAACO,UAAU;QAEtD,IAAI,CAACa,aAAa;YAChB,IAAI,CAAClB,MAAM,CAACmB,IAAI,CAAC;YACjB;QACF;QAEA,OAAO,IAAI,CAACrB,kBAAkB,CAACO,UAAU;QAEzC,IAAI,CAACL,MAAM,CAACe,GAAG,CAAC,CAAC,yBAAyB,CAAC;IAC7C;IAEAK,UAAUf,SAAiB,EAAEgB,QAAgB,EAAE;QAC7C,MAAMf,QAAQ,IAAI,CAACG,eAAe,CAACJ;QACnC,IAAI,CAACC,OAAO;QAEZ,MAAMgB,YAAYhB,MAAMiB,SAAS,CAAC,CAACC,IAAMA,EAAEC,IAAI,KAAKJ;QACpD,IAAIC,cAAc,CAAC,GAAG;YAEpB,IAAI,CAACtB,MAAM,CAACmB,IAAI,CACd,CAAC,6FAA6F,CAAC,EAC/FE;YAGF,OAAO,IAAI,CAACrB,MAAM,CAACe,GAAG,CAAC;QACzB;QAEAT,MAAMoB,MAAM,CAACJ,WAAW;QACxB,IAAI,CAACtB,MAAM,CAACe,GAAG,CAAC,CAAC,2BAA2B,CAAC;IAC/C;AACF"}
@@ -12,9 +12,8 @@ const _keydiffcache = require("../utils/cache/key-diff.cache");
12
12
  class FloorStore extends _keydiffcache.KeyDiffCache {
13
13
  floorService;
14
14
  logger;
15
- constructor({ floorService, loggerFactory }){
16
- super();
17
- this.floorService = floorService;
15
+ constructor(floorService, loggerFactory){
16
+ super(), this.floorService = floorService;
18
17
  this.logger = loggerFactory(FloorStore.name);
19
18
  }
20
19
  async loadStore() {
@@ -47,13 +46,14 @@ class FloorStore extends _keydiffcache.KeyDiffCache {
47
46
  return floorDto;
48
47
  }
49
48
  async delete(floorId) {
50
- const deleteResult = await this.floorService.delete(floorId);
49
+ await this.floorService.delete(floorId);
51
50
  await this.deleteKeyValue(floorId);
52
- return deleteResult;
53
51
  }
54
52
  async getFloor(floorId) {
55
53
  let floor = await this.getValue(floorId);
56
- if (!!floor) return floor;
54
+ if (floor) {
55
+ return floor;
56
+ }
57
57
  const dbFloor = await this.floorService.get(floorId);
58
58
  const floorDto = this.floorService.toDto(dbFloor);
59
59
  await this.setKeyValue(floorId, floorDto, true);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/state/floor.store.ts"],"names":["FloorStore","KeyDiffCache","floorService","logger","constructor","loggerFactory","name","loadStore","floors","list","length","log","floor","createDefaultFloor","floorDto","toDto","setKeyValue","id","keyValues","map","key","toString","value","setKeyValuesBatch","listCache","getAllValues","create","input","delete","floorId","deleteResult","deleteKeyValue","getFloor","getValue","dbFloor","get","update","updateName","updateFloorNumber","floorLevel","updateLevel","addOrUpdatePrinter","position","removePrinter","printerId","removePrinterFromAnyFloor","deletePrinterFromAnyFloor"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/state/floor.store.ts"],"names":["FloorStore","KeyDiffCache","logger","constructor","floorService","loggerFactory","name","loadStore","floors","list","length","log","floor","createDefaultFloor","floorDto","toDto","setKeyValue","id","keyValues","map","key","toString","value","setKeyValuesBatch","listCache","getAllValues","create","input","delete","floorId","deleteKeyValue","getFloor","getValue","dbFloor","get","update","updateName","updateFloorNumber","floorLevel","updateLevel","addOrUpdatePrinter","position","removePrinter","printerId","removePrinterFromAnyFloor","deletePrinterFromAnyFloor"],"mappings":"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"}
@@ -9,22 +9,18 @@ Object.defineProperty(exports, "PrinterEventsCache", {
9
9
  }
10
10
  });
11
11
  const _keydiffcache = require("../utils/cache/key-diff.cache");
12
- const _metricutils = require("../utils/metric.utils");
13
12
  const _eventconstants = require("../constants/event.constants");
13
+ const _octoprintwebsocketadapter = require("../services/octoprint/octoprint-websocket.adapter");
14
+ const _moonrakerconstants = require("../services/moonraker/constants/moonraker.constants");
15
+ const _prusalinkconstants = require("../services/prusa-link/constants/prusalink.constants");
14
16
  class PrinterEventsCache extends _keydiffcache.KeyDiffCache {
15
- logger;
16
17
  eventEmitter2;
17
- settingsStore;
18
- constructor({ eventEmitter2, loggerFactory, settingsStore }){
19
- super();
20
- this.settingsStore = settingsStore;
18
+ logger;
19
+ constructor(eventEmitter2, loggerFactory){
20
+ super(), this.eventEmitter2 = eventEmitter2;
21
21
  this.logger = loggerFactory(PrinterEventsCache.name);
22
- this.eventEmitter2 = eventEmitter2;
23
22
  this.subscribeToEvents();
24
23
  }
25
- get _debugMode() {
26
- return this.settingsStore.getSettingsSensitive()?.server?.debugSettings?.debugSocketMessages;
27
- }
28
24
  async deletePrinterSocketEvents(id) {
29
25
  await this.deleteKeyValue(id, true);
30
26
  }
@@ -58,7 +54,7 @@ class PrinterEventsCache extends _keydiffcache.KeyDiffCache {
58
54
  };
59
55
  await this.setKeyValue(printerId, ref);
60
56
  }
61
- async setSubstate(printerId, label, substateName, payload) {
57
+ async setSubState(printerId, label, substateName, payload) {
62
58
  const ref = await this.getOrCreateEvents(printerId);
63
59
  if (!ref[label]) {
64
60
  ref[label] = {};
@@ -69,12 +65,13 @@ class PrinterEventsCache extends _keydiffcache.KeyDiffCache {
69
65
  };
70
66
  await this.setKeyValue(printerId, ref);
71
67
  }
72
- async handlePrintersDeleted({ printerIds }) {
73
- await this.deleteKeysBatch(printerIds);
68
+ async handlePrintersDeleted(event) {
69
+ await this.deleteKeysBatch(event.printerIds);
74
70
  }
75
71
  subscribeToEvents() {
76
- this.eventEmitter2.on("octoprint.*", (e)=>this.onOctoPrintSocketMessage(e));
77
- this.eventEmitter2.on("moonraker.*", (e)=>this.onMoonrakerSocketMessage(e));
72
+ this.eventEmitter2.on((0, _octoprintwebsocketadapter.octoPrintEvent)("*"), (e)=>this.onOctoPrintSocketMessage(e));
73
+ this.eventEmitter2.on((0, _moonrakerconstants.moonrakerEvent)("*"), (e)=>this.onMoonrakerSocketMessage(e));
74
+ this.eventEmitter2.on((0, _prusalinkconstants.prusaLinkEvent)("*"), (e)=>this.onPrusaLinkPollMessage(e));
78
75
  this.eventEmitter2.on(_eventconstants.printerEvents.printersDeleted, this.handlePrintersDeleted.bind(this));
79
76
  }
80
77
  async onOctoPrintSocketMessage(e) {
@@ -84,9 +81,6 @@ class PrinterEventsCache extends _keydiffcache.KeyDiffCache {
84
81
  "event"
85
82
  ].includes(e.event)) {
86
83
  await this.setEvent(printerId, e.event, e.event === "history" ? this.pruneHistoryPayload(e.payload) : e.payload);
87
- if (this._debugMode) {
88
- this.logger.log(`Message '${e.event}' received, size ${(0, _metricutils.formatKB)(e.payload)}`, e.printerId);
89
- }
90
84
  }
91
85
  }
92
86
  async onMoonrakerSocketMessage(e) {
@@ -99,11 +93,16 @@ class PrinterEventsCache extends _keydiffcache.KeyDiffCache {
99
93
  await this.setEvent(printerId, eventType, e.payload);
100
94
  }
101
95
  }
96
+ async onPrusaLinkPollMessage(e) {
97
+ const printerId = e.printerId;
98
+ this.logger.debug(`Received prusaLink event ${e.event}, printerId ${e.printerId}`, e);
99
+ if (e.event === "current") {
100
+ await this.setEvent(printerId, e.event, e.payload);
101
+ }
102
+ }
102
103
  pruneHistoryPayload(payload) {
103
- delete payload.logs;
104
- delete payload.temps;
105
- delete payload.messages;
106
- return payload;
104
+ const { logs, temps, messages, plugins, ...prunedPayload } = payload;
105
+ return prunedPayload;
107
106
  }
108
107
  }
109
108
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/state/printer-events.cache.ts"],"names":["PrinterEventsCache","KeyDiffCache","logger","eventEmitter2","settingsStore","constructor","loggerFactory","name","subscribeToEvents","_debugMode","getSettingsSensitive","server","debugSettings","debugSocketMessages","deletePrinterSocketEvents","id","deleteKeyValue","getPrinterSocketEvents","keyValueStore","getOrCreateEvents","printerId","ref","getValue","connected","reauthRequired","notify_status_update","current","history","API_STATE_UPDATED","WS_CLOSED","WS_ERROR","WS_OPENED","WS_STATE_UPDATED","setKeyValue","setEvent","label","payload","receivedAt","Date","now","setSubstate","substateName","handlePrintersDeleted","printerIds","deleteKeysBatch","on","e","onOctoPrintSocketMessage","onMoonrakerSocketMessage","printerEvents","printersDeleted","bind","includes","event","pruneHistoryPayload","log","formatKB","eventType","logs","temps","messages"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/state/printer-events.cache.ts"],"names":["PrinterEventsCache","KeyDiffCache","logger","constructor","eventEmitter2","loggerFactory","name","subscribeToEvents","deletePrinterSocketEvents","id","deleteKeyValue","getPrinterSocketEvents","keyValueStore","getOrCreateEvents","printerId","ref","getValue","connected","reauthRequired","notify_status_update","current","history","API_STATE_UPDATED","WS_CLOSED","WS_ERROR","WS_OPENED","WS_STATE_UPDATED","setKeyValue","setEvent","label","payload","receivedAt","Date","now","setSubState","substateName","handlePrintersDeleted","event","deleteKeysBatch","printerIds","on","octoPrintEvent","e","onOctoPrintSocketMessage","moonrakerEvent","onMoonrakerSocketMessage","prusaLinkEvent","onPrusaLinkPollMessage","printerEvents","printersDeleted","bind","includes","pruneHistoryPayload","eventType","debug","logs","temps","messages","plugins","prunedPayload"],"mappings":"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"}
@@ -14,28 +14,26 @@ class PrinterFilesStore {
14
14
  printerCache;
15
15
  fileCache;
16
16
  printerApiFactory;
17
- octoprintClient;
18
17
  logger;
19
- constructor({ printerCache, fileCache, printerApiFactory, octoprintClient, loggerFactory }){
18
+ constructor(loggerFactory, printerCache, fileCache, printerApiFactory){
20
19
  this.printerCache = printerCache;
21
- this.printerApiFactory = printerApiFactory;
22
20
  this.fileCache = fileCache;
23
- this.octoprintClient = octoprintClient;
21
+ this.printerApiFactory = printerApiFactory;
24
22
  this.logger = loggerFactory(PrinterFilesStore.name);
25
23
  }
26
24
  async loadFilesStore() {
27
25
  const printers = await this.printerCache.listCachedPrinters(true);
28
- for (const printer of printers){
26
+ for (const printer of printers.filter((p)=>p.enabled)){
29
27
  try {
30
- const printerFiles = await this.loadFiles(printer.id, false);
28
+ const printerFiles = await this.loadFiles(printer.id);
31
29
  this.fileCache.cachePrinterFiles(printer.id, printerFiles);
32
30
  } catch (e) {
33
31
  (0, _node.captureException)(e);
34
- this.logger.error("Files store failed to load file list for printer");
32
+ this.logger.error(`Files store failed to load file list for printer ${printer.name}`);
35
33
  }
36
34
  }
37
35
  }
38
- async loadFiles(printerId, recursive = false) {
36
+ async loadFiles(printerId) {
39
37
  const loginDto = await this.printerCache.getLoginDtoAsync(printerId);
40
38
  const printerApi = this.printerApiFactory.getScopedPrinter(loginDto);
41
39
  const files = await printerApi.getFiles();
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/state/printer-files.store.ts"],"names":["PrinterFilesStore","printerCache","fileCache","printerApiFactory","octoprintClient","logger","constructor","loggerFactory","name","loadFilesStore","printers","listCachedPrinters","printer","printerFiles","loadFiles","id","cachePrinterFiles","e","captureException","error","printerId","recursive","loginDto","getLoginDtoAsync","printerApi","getScopedPrinter","files","getFiles","getPrinterFiles","getOutdatedFiles","ageDaysMax","ValidationException","length","nowTimestampSeconds","Date","now","filter","file","date","deleteOutdatedFiles","getById","failedFiles","succeededFiles","nonRecursiveFiles","getCachedPrinterOrThrowAsync","deleteFile","path","push","log","purgePrinterFiles","printerState","purgePrinterId","purgeFiles","allPrinters","filePath","purgeFile"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/state/printer-files.store.ts"],"names":["PrinterFilesStore","logger","constructor","loggerFactory","printerCache","fileCache","printerApiFactory","name","loadFilesStore","printers","listCachedPrinters","printer","filter","p","enabled","printerFiles","loadFiles","id","cachePrinterFiles","e","captureException","error","printerId","loginDto","getLoginDtoAsync","printerApi","getScopedPrinter","files","getFiles","getPrinterFiles","getOutdatedFiles","ageDaysMax","ValidationException","length","nowTimestampSeconds","Date","now","file","date","deleteOutdatedFiles","getById","failedFiles","succeededFiles","nonRecursiveFiles","getCachedPrinterOrThrowAsync","deleteFile","path","push","log","purgePrinterFiles","printerState","purgePrinterId","purgeFiles","allPrinters","filePath","purgeFile"],"mappings":"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"}