@fdm-monster/server 1.6.1 → 1.6.3

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 (542) hide show
  1. package/.env.template +1 -1
  2. package/.yarn/install-state.gz +0 -0
  3. package/.yarn/releases/{yarn-4.1.0.cjs → yarn-4.3.0.cjs} +342 -341
  4. package/.yarnrc.yml +1 -1
  5. package/CONTRIBUTING.md +3 -3
  6. package/README.md +35 -19
  7. package/RELEASE_NOTES.MD +29 -0
  8. package/dist/consoles/moonraker-test.console.js +3 -0
  9. package/dist/consoles/moonraker-test.console.js.map +1 -0
  10. package/dist/consoles/sqlite-torm.js.map +1 -1
  11. package/dist/consoles/typeorm-generate.js.map +1 -1
  12. package/dist/consoles/typeorm-migrate.js.map +1 -1
  13. package/dist/consoles/upload-test.js.map +1 -1
  14. package/dist/constants/authorization.constants.js.map +1 -1
  15. package/dist/constants/event.constants.js.map +1 -1
  16. package/dist/constants/http-status-codes.constants.js.map +1 -1
  17. package/dist/constants/server-settings.constants.js +1 -1
  18. package/dist/constants/server-settings.constants.js.map +1 -1
  19. package/dist/constants/service.constants.js.map +1 -1
  20. package/dist/container.js +4 -0
  21. package/dist/container.js.map +1 -1
  22. package/dist/container.tokens.js +2 -0
  23. package/dist/container.tokens.js.map +1 -1
  24. package/dist/controllers/auth.controller.js +9 -11
  25. package/dist/controllers/auth.controller.js.map +1 -1
  26. package/dist/controllers/batch-call.controller.js.map +1 -1
  27. package/dist/controllers/camera-stream.controller.js.map +1 -1
  28. package/dist/controllers/custom-gcode.controller.js.map +1 -1
  29. package/dist/controllers/dto/update-client-dist.dto.js.map +1 -1
  30. package/dist/controllers/first-time-setup.controller.js.map +1 -1
  31. package/dist/controllers/floor.controller.js.map +1 -1
  32. package/dist/controllers/plugin-firmware-update.controller.js +1 -2
  33. package/dist/controllers/plugin-firmware-update.controller.js.map +1 -1
  34. package/dist/controllers/print-completion.controller.js.map +1 -1
  35. package/dist/controllers/printer-files.controller.js +1 -2
  36. package/dist/controllers/printer-files.controller.js.map +1 -1
  37. package/dist/controllers/printer-group.controller.js.map +1 -1
  38. package/dist/controllers/printer-settings.controller.js.map +1 -1
  39. package/dist/controllers/printer.controller.js +58 -14
  40. package/dist/controllers/printer.controller.js.map +1 -1
  41. package/dist/controllers/server-private.controller.js +8 -2
  42. package/dist/controllers/server-private.controller.js.map +1 -1
  43. package/dist/controllers/server-public.controller.js +5 -2
  44. package/dist/controllers/server-public.controller.js.map +1 -1
  45. package/dist/controllers/settings.controller.js +17 -8
  46. package/dist/controllers/settings.controller.js.map +1 -1
  47. package/dist/controllers/user.controller.js +1 -1
  48. package/dist/controllers/user.controller.js.map +1 -1
  49. package/dist/controllers/validation/auth-controller.validation.js.map +1 -1
  50. package/dist/controllers/validation/batch-controller.validation.js.map +1 -1
  51. package/dist/controllers/validation/generic.validation.js.map +1 -1
  52. package/dist/controllers/validation/printer-controller.validation.js.map +1 -1
  53. package/dist/controllers/validation/printer-files-controller.validation.js.map +1 -1
  54. package/dist/controllers/validation/printer-settings-controller.validation.js.map +1 -1
  55. package/dist/controllers/validation/setting.validation.js.map +1 -1
  56. package/dist/controllers/validation/user-controller.validation.js.map +1 -1
  57. package/dist/data-source.js +5 -4
  58. package/dist/data-source.js.map +1 -1
  59. package/dist/entities/base.entity.js.map +1 -1
  60. package/dist/entities/camera-stream.entity.js.map +1 -1
  61. package/dist/entities/custom-gcode.entity.js.map +1 -1
  62. package/dist/entities/floor-position.entity.js.map +1 -1
  63. package/dist/entities/floor.entity.js.map +1 -1
  64. package/dist/entities/group.entity.js.map +1 -1
  65. package/dist/entities/index.js.map +1 -1
  66. package/dist/entities/permission.entity.js.map +1 -1
  67. package/dist/entities/print-completion.entity.js.map +1 -1
  68. package/dist/entities/printer-file.entity.js.map +1 -1
  69. package/dist/entities/printer-group.entity.js.map +1 -1
  70. package/dist/entities/printer.entity.js.map +1 -1
  71. package/dist/entities/refresh-token.entity.js.map +1 -1
  72. package/dist/entities/role.entity.js +3 -1
  73. package/dist/entities/role.entity.js.map +1 -1
  74. package/dist/entities/settings.entity.js.map +1 -1
  75. package/dist/entities/user-role.entity.js.map +1 -1
  76. package/dist/entities/user.entity.js.map +1 -1
  77. package/dist/exceptions/failed-dependency.exception.js +20 -0
  78. package/dist/exceptions/failed-dependency.exception.js.map +1 -0
  79. package/dist/exceptions/job.exceptions.js.map +1 -1
  80. package/dist/exceptions/runtime.exceptions.js +3 -1
  81. package/dist/exceptions/runtime.exceptions.js.map +1 -1
  82. package/dist/handlers/cache-manager.js.map +1 -1
  83. package/dist/handlers/event-emitter.js.map +1 -1
  84. package/dist/handlers/logger-factory.js.map +1 -1
  85. package/dist/handlers/logger.js.map +1 -1
  86. package/dist/handlers/validators.js.map +1 -1
  87. package/dist/index.js.map +1 -1
  88. package/dist/middleware/authenticate.js +1 -2
  89. package/dist/middleware/authenticate.js.map +1 -1
  90. package/dist/middleware/database.js.map +1 -1
  91. package/dist/middleware/demo.middleware.js.map +1 -1
  92. package/dist/middleware/exception.filter.js +9 -0
  93. package/dist/middleware/exception.filter.js.map +1 -1
  94. package/dist/middleware/global.middleware.js +4 -4
  95. package/dist/middleware/global.middleware.js.map +1 -1
  96. package/dist/middleware/passport.js.map +1 -1
  97. package/dist/middleware/printer.js.map +1 -1
  98. package/dist/migrations/1706829146617-InitSqlite.js.map +1 -1
  99. package/dist/migrations/1707494762198-PrinterGroup.js.map +1 -1
  100. package/dist/migrations/1708465930665-ChangePrintCompletionDeletePrinterCascade.js.map +1 -1
  101. package/dist/migrations/1713300747465-ChangeRoleNameUnique.js +104 -0
  102. package/dist/migrations/1713300747465-ChangeRoleNameUnique.js.map +1 -0
  103. package/dist/models/Auth/Permission.js.map +1 -1
  104. package/dist/models/Auth/RefreshToken.js.map +1 -1
  105. package/dist/models/Auth/Role.js.map +1 -1
  106. package/dist/models/Auth/User.js.map +1 -1
  107. package/dist/models/CameraStream.js.map +1 -1
  108. package/dist/models/CustomGcode.js.map +1 -1
  109. package/dist/models/Floor.js.map +1 -1
  110. package/dist/models/FloorPrinter.js.map +1 -1
  111. package/dist/models/PrintCompletion.js.map +1 -1
  112. package/dist/models/Printer.js.map +1 -1
  113. package/dist/models/PrinterFile.js.map +1 -1
  114. package/dist/models/Settings.js.map +1 -1
  115. package/dist/models/index.js.map +1 -1
  116. package/dist/mongo-migrations/20210713120034-printers-settingsapperance-apikey.js.map +1 -1
  117. package/dist/mongo-migrations/20210907173950-printers-enabled.js.map +1 -1
  118. package/dist/mongo-migrations/20211029110742-user-password-passwordhash.js.map +1 -1
  119. package/dist/mongo-migrations/20230414141005-floor-remove-groupinfloor.js.map +1 -1
  120. package/dist/mongo-migrations/20230427202911-printer-remove-sortindex.js.map +1 -1
  121. package/dist/mongo-migrations/20230716065316-user-remove-name.js.map +1 -1
  122. package/dist/mongo-migrations/20231111081809-printer-flatten-name.js.map +1 -1
  123. package/dist/mongo-migrations/20231111082521-printer-remove-settingsappearance.js.map +1 -1
  124. package/dist/mongo-migrations/20231202183902-printer-files-simpler.js.map +1 -1
  125. package/dist/server.constants.js +1 -1
  126. package/dist/server.constants.js.map +1 -1
  127. package/dist/server.core.js.map +1 -1
  128. package/dist/server.env.js +3 -3
  129. package/dist/server.env.js.map +1 -1
  130. package/dist/server.host.js +3 -1
  131. package/dist/server.host.js.map +1 -1
  132. package/dist/services/authentication/auth.service.js +2 -0
  133. package/dist/services/authentication/auth.service.js.map +1 -1
  134. package/dist/services/authentication/jwt.service.js.map +1 -1
  135. package/dist/services/authentication/permission.service.js +2 -2
  136. package/dist/services/authentication/permission.service.js.map +1 -1
  137. package/dist/services/authentication/refresh-token.service.js.map +1 -1
  138. package/dist/services/authentication/role.service.js +7 -9
  139. package/dist/services/authentication/role.service.js.map +1 -1
  140. package/dist/services/authentication/user.service.js +5 -5
  141. package/dist/services/authentication/user.service.js.map +1 -1
  142. package/dist/services/batch-call.service.js +2 -0
  143. package/dist/services/batch-call.service.js.map +1 -1
  144. package/dist/services/camera-stream.service.js +1 -1
  145. package/dist/services/camera-stream.service.js.map +1 -1
  146. package/dist/services/core/client-bundle.service.js +8 -2
  147. package/dist/services/core/client-bundle.service.js.map +1 -1
  148. package/dist/services/core/config.service.js.map +1 -1
  149. package/dist/services/core/github.service.js +3 -0
  150. package/dist/services/core/github.service.js.map +1 -1
  151. package/dist/services/core/logs-manager.service.js +3 -3
  152. package/dist/services/core/logs-manager.service.js.map +1 -1
  153. package/dist/services/core/monsterpi.service.js.map +1 -1
  154. package/dist/services/core/multer.service.js.map +1 -1
  155. package/dist/services/core/server-release.service.js +15 -15
  156. package/dist/services/core/server-release.service.js.map +1 -1
  157. package/dist/services/core/server-update.service.js.map +1 -1
  158. package/dist/services/core/task-manager.service.js.map +1 -1
  159. package/dist/services/core/yaml.service.js +37 -13
  160. package/dist/services/core/yaml.service.js.map +1 -1
  161. package/dist/services/custom-gcode.service.js +1 -1
  162. package/dist/services/custom-gcode.service.js.map +1 -1
  163. package/dist/services/floor.service.js +7 -17
  164. package/dist/services/floor.service.js.map +1 -1
  165. package/dist/services/influxdb-v2/influx-db-v2-base.service.js.map +1 -1
  166. package/dist/services/interfaces/auth.service.interface.js.map +1 -1
  167. package/dist/services/interfaces/camera-stream.dto.js.map +1 -1
  168. package/dist/services/interfaces/camera-stream.service.interface.js.map +1 -1
  169. package/dist/services/interfaces/custom-gcode.dto.js.map +1 -1
  170. package/dist/services/interfaces/custom-gcode.service.interface.js.map +1 -1
  171. package/dist/services/interfaces/floor.dto.js.map +1 -1
  172. package/dist/services/interfaces/floor.service.interface.js.map +1 -1
  173. package/dist/services/interfaces/gcode-analysis.dto.js.map +1 -1
  174. package/dist/services/interfaces/group.dto.js.map +1 -1
  175. package/dist/services/interfaces/jwt.service.interface.js.map +1 -1
  176. package/dist/services/interfaces/login.dto.js.map +1 -1
  177. package/dist/services/interfaces/page.interface.js.map +1 -1
  178. package/dist/services/interfaces/permission.dto.js.map +1 -1
  179. package/dist/services/interfaces/permission.service.interface.js.map +1 -1
  180. package/dist/services/interfaces/print-completion-context.dto.js.map +1 -1
  181. package/dist/services/interfaces/print-completion.dto.js.map +1 -1
  182. package/dist/services/interfaces/print-completion.interface.js.map +1 -1
  183. package/dist/services/interfaces/printer-file.dto.js.map +1 -1
  184. package/dist/services/interfaces/printer-files.service.interface.js.map +1 -1
  185. package/dist/services/interfaces/printer-group.dto.js.map +1 -1
  186. package/dist/services/interfaces/printer-group.service.interface.js.map +1 -1
  187. package/dist/services/interfaces/printer.dto.js.map +1 -1
  188. package/dist/services/interfaces/printer.service.interface.js.map +1 -1
  189. package/dist/services/interfaces/refresh-token.dto.js.map +1 -1
  190. package/dist/services/interfaces/refresh-token.service.interface.js.map +1 -1
  191. package/dist/services/interfaces/role-service.interface.js.map +1 -1
  192. package/dist/services/interfaces/role.dto.js.map +1 -1
  193. package/dist/services/interfaces/settings.dto.js.map +1 -1
  194. package/dist/services/interfaces/settings.service.interface.js.map +1 -1
  195. package/dist/services/interfaces/user-role.dto.js.map +1 -1
  196. package/dist/services/interfaces/user-service.interface.js.map +1 -1
  197. package/dist/services/interfaces/user.dto.js.map +1 -1
  198. package/dist/services/moonraker/constants/websocket.constants.js +27 -0
  199. package/dist/services/moonraker/constants/websocket.constants.js.map +1 -0
  200. package/dist/services/moonraker/dto/access/access-info.dto.js +6 -0
  201. package/dist/services/moonraker/dto/access/access-info.dto.js.map +1 -0
  202. package/dist/services/moonraker/dto/access/access-login-refresh.dto.js +6 -0
  203. package/dist/services/moonraker/dto/access/access-login-refresh.dto.js.map +1 -0
  204. package/dist/services/moonraker/dto/access/access-login-result.dto.js +6 -0
  205. package/dist/services/moonraker/dto/access/access-login-result.dto.js.map +1 -0
  206. package/dist/services/moonraker/dto/access/access-user-result.dto.js +6 -0
  207. package/dist/services/moonraker/dto/access/access-user-result.dto.js.map +1 -0
  208. package/dist/services/moonraker/dto/access/access-user.dto.js +6 -0
  209. package/dist/services/moonraker/dto/access/access-user.dto.js.map +1 -0
  210. package/dist/services/moonraker/dto/action-result.dto.js +6 -0
  211. package/dist/services/moonraker/dto/action-result.dto.js.map +1 -0
  212. package/dist/services/moonraker/dto/database/database-namespace-item.dto.js +6 -0
  213. package/dist/services/moonraker/dto/database/database-namespace-item.dto.js.map +1 -0
  214. package/dist/services/moonraker/dto/database/database-namespace-list.dto.js +6 -0
  215. package/dist/services/moonraker/dto/database/database-namespace-list.dto.js.map +1 -0
  216. package/dist/services/moonraker/dto/gcode-help.dto.js +6 -0
  217. package/dist/services/moonraker/dto/gcode-help.dto.js.map +1 -0
  218. package/dist/services/moonraker/dto/gcode-store.dto.js +6 -0
  219. package/dist/services/moonraker/dto/gcode-store.dto.js.map +1 -0
  220. package/dist/services/moonraker/dto/job-queue/enqueue-job.dto.js +6 -0
  221. package/dist/services/moonraker/dto/job-queue/enqueue-job.dto.js.map +1 -0
  222. package/dist/services/moonraker/dto/job-queue/job-queue-status.dto.js +6 -0
  223. package/dist/services/moonraker/dto/job-queue/job-queue-status.dto.js.map +1 -0
  224. package/dist/services/moonraker/dto/machine/machine-device-power-device-state.dto.js +6 -0
  225. package/dist/services/moonraker/dto/machine/machine-device-power-device-state.dto.js.map +1 -0
  226. package/dist/services/moonraker/dto/machine/machine-device-power-devices.dto.js +6 -0
  227. package/dist/services/moonraker/dto/machine/machine-device-power-devices.dto.js.map +1 -0
  228. package/dist/services/moonraker/dto/machine/machine-peripherals-canbus.dto.js +6 -0
  229. package/dist/services/moonraker/dto/machine/machine-peripherals-canbus.dto.js.map +1 -0
  230. package/dist/services/moonraker/dto/machine/machine-peripherals-serial.dto.js +6 -0
  231. package/dist/services/moonraker/dto/machine/machine-peripherals-serial.dto.js.map +1 -0
  232. package/dist/services/moonraker/dto/machine/machine-peripherals-usb.dto.js +6 -0
  233. package/dist/services/moonraker/dto/machine/machine-peripherals-usb.dto.js.map +1 -0
  234. package/dist/services/moonraker/dto/machine/machine-peripherals-video.dto.js +6 -0
  235. package/dist/services/moonraker/dto/machine/machine-peripherals-video.dto.js.map +1 -0
  236. package/dist/services/moonraker/dto/machine/machine-system-info.dto.js +6 -0
  237. package/dist/services/moonraker/dto/machine/machine-system-info.dto.js.map +1 -0
  238. package/dist/services/moonraker/dto/machine/machine-update-status.dto.js +6 -0
  239. package/dist/services/moonraker/dto/machine/machine-update-status.dto.js.map +1 -0
  240. package/dist/services/moonraker/dto/machine/machine-wled-strips.dto.js +6 -0
  241. package/dist/services/moonraker/dto/machine/machine-wled-strips.dto.js.map +1 -0
  242. package/dist/services/moonraker/dto/notifier-list.dto.js +6 -0
  243. package/dist/services/moonraker/dto/notifier-list.dto.js.map +1 -0
  244. package/dist/services/moonraker/dto/objects/extruder.dto.js +6 -0
  245. package/dist/services/moonraker/dto/objects/extruder.dto.js.map +1 -0
  246. package/dist/services/moonraker/dto/objects/gcode-move.dto.js +6 -0
  247. package/dist/services/moonraker/dto/objects/gcode-move.dto.js.map +1 -0
  248. package/dist/services/moonraker/dto/objects/printer-objects-list.dto.js +6 -0
  249. package/dist/services/moonraker/dto/objects/printer-objects-list.dto.js.map +1 -0
  250. package/dist/services/moonraker/dto/objects/printer-objects-query.dto.js +6 -0
  251. package/dist/services/moonraker/dto/objects/printer-objects-query.dto.js.map +1 -0
  252. package/dist/services/moonraker/dto/objects/toolhead.dto.js +6 -0
  253. package/dist/services/moonraker/dto/objects/toolhead.dto.js.map +1 -0
  254. package/dist/services/moonraker/dto/octoprint-compat/api-job.dto.js +6 -0
  255. package/dist/services/moonraker/dto/octoprint-compat/api-job.dto.js.map +1 -0
  256. package/dist/services/moonraker/dto/octoprint-compat/api-login.dto.js +6 -0
  257. package/dist/services/moonraker/dto/octoprint-compat/api-login.dto.js.map +1 -0
  258. package/dist/services/moonraker/dto/octoprint-compat/api-printer.dto.js +6 -0
  259. package/dist/services/moonraker/dto/octoprint-compat/api-printer.dto.js.map +1 -0
  260. package/dist/services/moonraker/dto/octoprint-compat/api-profiles.dto.js +6 -0
  261. package/dist/services/moonraker/dto/octoprint-compat/api-profiles.dto.js.map +1 -0
  262. package/dist/services/moonraker/dto/octoprint-compat/api-settings.dto.js +6 -0
  263. package/dist/services/moonraker/dto/octoprint-compat/api-settings.dto.js.map +1 -0
  264. package/dist/services/moonraker/dto/octoprint-compat/api-version.dto.js +6 -0
  265. package/dist/services/moonraker/dto/octoprint-compat/api-version.dto.js.map +1 -0
  266. package/dist/services/moonraker/dto/octoprint-compat/server-version.dto.js +6 -0
  267. package/dist/services/moonraker/dto/octoprint-compat/server-version.dto.js.map +1 -0
  268. package/dist/services/moonraker/dto/printer-info.dto.js +6 -0
  269. package/dist/services/moonraker/dto/printer-info.dto.js.map +1 -0
  270. package/dist/services/moonraker/dto/printer-query-endstops.dto.js +6 -0
  271. package/dist/services/moonraker/dto/printer-query-endstops.dto.js.map +1 -0
  272. package/dist/services/moonraker/dto/process-stats.dto.js +6 -0
  273. package/dist/services/moonraker/dto/process-stats.dto.js.map +1 -0
  274. package/dist/services/moonraker/dto/result.dto.js +15 -0
  275. package/dist/services/moonraker/dto/result.dto.js.map +1 -0
  276. package/dist/services/moonraker/dto/rollover-logs.dto.js +6 -0
  277. package/dist/services/moonraker/dto/rollover-logs.dto.js.map +1 -0
  278. package/dist/services/moonraker/dto/rpc/json-rpc-error.dto.js +6 -0
  279. package/dist/services/moonraker/dto/rpc/json-rpc-error.dto.js.map +1 -0
  280. package/dist/services/moonraker/dto/rpc/json-rpc-request.dto.js +6 -0
  281. package/dist/services/moonraker/dto/rpc/json-rpc-request.dto.js.map +1 -0
  282. package/dist/services/moonraker/dto/rpc/json-rpc-response.dto.js +6 -0
  283. package/dist/services/moonraker/dto/rpc/json-rpc-response.dto.js.map +1 -0
  284. package/dist/services/moonraker/dto/server/server-config.dto.js +6 -0
  285. package/dist/services/moonraker/dto/server/server-config.dto.js.map +1 -0
  286. package/dist/services/moonraker/dto/server/server-info.dto.js +6 -0
  287. package/dist/services/moonraker/dto/server/server-info.dto.js.map +1 -0
  288. package/dist/services/moonraker/dto/server-announcements/announcement-action.dto.js +6 -0
  289. package/dist/services/moonraker/dto/server-announcements/announcement-action.dto.js.map +1 -0
  290. package/dist/services/moonraker/dto/server-announcements/announcement-entry-id.dto.js +6 -0
  291. package/dist/services/moonraker/dto/server-announcements/announcement-entry-id.dto.js.map +1 -0
  292. package/dist/services/moonraker/dto/server-announcements/announcement-feeds.dto.js +6 -0
  293. package/dist/services/moonraker/dto/server-announcements/announcement-feeds.dto.js.map +1 -0
  294. package/dist/services/moonraker/dto/server-announcements/announcement-list.dto.js +6 -0
  295. package/dist/services/moonraker/dto/server-announcements/announcement-list.dto.js.map +1 -0
  296. package/dist/services/moonraker/dto/server-files/server-file-directory-action.dto.js +6 -0
  297. package/dist/services/moonraker/dto/server-files/server-file-directory-action.dto.js.map +1 -0
  298. package/dist/services/moonraker/dto/server-files/server-file-directory-info.dto.js +6 -0
  299. package/dist/services/moonraker/dto/server-files/server-file-directory-info.dto.js.map +1 -0
  300. package/dist/services/moonraker/dto/server-files/server-file-metadata.dto.js +6 -0
  301. package/dist/services/moonraker/dto/server-files/server-file-metadata.dto.js.map +1 -0
  302. package/dist/services/moonraker/dto/server-files/server-file-root.dto.js +6 -0
  303. package/dist/services/moonraker/dto/server-files/server-file-root.dto.js.map +1 -0
  304. package/dist/services/moonraker/dto/server-files/server-file-thumbnail.dto.js +6 -0
  305. package/dist/services/moonraker/dto/server-files/server-file-thumbnail.dto.js.map +1 -0
  306. package/dist/services/moonraker/dto/server-files/server-file-zip-action.dto.js +6 -0
  307. package/dist/services/moonraker/dto/server-files/server-file-zip-action.dto.js.map +1 -0
  308. package/dist/services/moonraker/dto/server-files/server-file.dto.js +6 -0
  309. package/dist/services/moonraker/dto/server-files/server-file.dto.js.map +1 -0
  310. package/dist/services/moonraker/dto/server-history/history-job.dto.js +6 -0
  311. package/dist/services/moonraker/dto/server-history/history-job.dto.js.map +1 -0
  312. package/dist/services/moonraker/dto/server-history/history-last-totals.dto.js +6 -0
  313. package/dist/services/moonraker/dto/server-history/history-last-totals.dto.js.map +1 -0
  314. package/dist/services/moonraker/dto/server-history/history-list.dto.js +6 -0
  315. package/dist/services/moonraker/dto/server-history/history-list.dto.js.map +1 -0
  316. package/dist/services/moonraker/dto/server-history/history-totals.dto.js +6 -0
  317. package/dist/services/moonraker/dto/server-history/history-totals.dto.js.map +1 -0
  318. package/dist/services/moonraker/dto/server-sensors/sensor-info.dto.js +6 -0
  319. package/dist/services/moonraker/dto/server-sensors/sensor-info.dto.js.map +1 -0
  320. package/dist/services/moonraker/dto/server-sensors/sensor-list.dto.js +6 -0
  321. package/dist/services/moonraker/dto/server-sensors/sensor-list.dto.js.map +1 -0
  322. package/dist/services/moonraker/dto/server-sensors/sensor-measurements.dto.js +6 -0
  323. package/dist/services/moonraker/dto/server-sensors/sensor-measurements.dto.js.map +1 -0
  324. package/dist/services/moonraker/dto/server-webcams/webcam-item.dto.js +6 -0
  325. package/dist/services/moonraker/dto/server-webcams/webcam-item.dto.js.map +1 -0
  326. package/dist/services/moonraker/dto/server-webcams/webcam-list.dto.js +6 -0
  327. package/dist/services/moonraker/dto/server-webcams/webcam-list.dto.js.map +1 -0
  328. package/dist/services/moonraker/dto/server-webcams/webcam-test.dto.js +6 -0
  329. package/dist/services/moonraker/dto/server-webcams/webcam-test.dto.js.map +1 -0
  330. package/dist/services/moonraker/dto/spoolman/spoolman-active-spool.dto.js +6 -0
  331. package/dist/services/moonraker/dto/spoolman/spoolman-active-spool.dto.js.map +1 -0
  332. package/dist/services/moonraker/dto/spoolman/spoolman-proxy-request.dto.js +6 -0
  333. package/dist/services/moonraker/dto/spoolman/spoolman-proxy-request.dto.js.map +1 -0
  334. package/dist/services/moonraker/dto/spoolman/spoolman-response.dto.js +6 -0
  335. package/dist/services/moonraker/dto/spoolman/spoolman-response.dto.js.map +1 -0
  336. package/dist/services/moonraker/dto/spoolman/spoolman-status.dto.js +6 -0
  337. package/dist/services/moonraker/dto/spoolman/spoolman-status.dto.js.map +1 -0
  338. package/dist/services/moonraker/dto/sudo-info.dto.js +6 -0
  339. package/dist/services/moonraker/dto/sudo-info.dto.js.map +1 -0
  340. package/dist/services/moonraker/dto/sudo-response.dto.js +6 -0
  341. package/dist/services/moonraker/dto/sudo-response.dto.js.map +1 -0
  342. package/dist/services/moonraker/dto/temperature-store.dto.js +6 -0
  343. package/dist/services/moonraker/dto/temperature-store.dto.js.map +1 -0
  344. package/dist/services/moonraker/dto/websocket/json-rpc-event.dto.js +6 -0
  345. package/dist/services/moonraker/dto/websocket/json-rpc-event.dto.js.map +1 -0
  346. package/dist/services/moonraker/dto/websocket/message.types.js +6 -0
  347. package/dist/services/moonraker/dto/websocket/message.types.js.map +1 -0
  348. package/dist/services/moonraker/dto/websocket/methods.js +49 -0
  349. package/dist/services/moonraker/dto/websocket/methods.js.map +1 -0
  350. package/dist/services/moonraker/dto/websocket/notify-active-spool-set.params.js +6 -0
  351. package/dist/services/moonraker/dto/websocket/notify-active-spool-set.params.js.map +1 -0
  352. package/dist/services/moonraker/dto/websocket/notify-agent-event.params.js +6 -0
  353. package/dist/services/moonraker/dto/websocket/notify-agent-event.params.js.map +1 -0
  354. package/dist/services/moonraker/dto/websocket/notify-announcement-update.params.js +6 -0
  355. package/dist/services/moonraker/dto/websocket/notify-announcement-update.params.js.map +1 -0
  356. package/dist/services/moonraker/dto/websocket/notify-announcement.params.js +6 -0
  357. package/dist/services/moonraker/dto/websocket/notify-announcement.params.js.map +1 -0
  358. package/dist/services/moonraker/dto/websocket/notify-button-event.params.js +6 -0
  359. package/dist/services/moonraker/dto/websocket/notify-button-event.params.js.map +1 -0
  360. package/dist/services/moonraker/dto/websocket/notify-filelist-changed.params.js +22 -0
  361. package/dist/services/moonraker/dto/websocket/notify-filelist-changed.params.js.map +1 -0
  362. package/dist/services/moonraker/dto/websocket/notify-history-changed.params.js +6 -0
  363. package/dist/services/moonraker/dto/websocket/notify-history-changed.params.js.map +1 -0
  364. package/dist/services/moonraker/dto/websocket/notify-job-queue-changed.params.js +6 -0
  365. package/dist/services/moonraker/dto/websocket/notify-job-queue-changed.params.js.map +1 -0
  366. package/dist/services/moonraker/dto/websocket/notify-proc-stat-update.params.js +6 -0
  367. package/dist/services/moonraker/dto/websocket/notify-proc-stat-update.params.js.map +1 -0
  368. package/dist/services/moonraker/dto/websocket/notify-sensor-update.params.js +6 -0
  369. package/dist/services/moonraker/dto/websocket/notify-sensor-update.params.js.map +1 -0
  370. package/dist/services/moonraker/dto/websocket/notify-service-state-changed.params.js +6 -0
  371. package/dist/services/moonraker/dto/websocket/notify-service-state-changed.params.js.map +1 -0
  372. package/dist/services/moonraker/dto/websocket/notify-spoolman-status-changed.js +6 -0
  373. package/dist/services/moonraker/dto/websocket/notify-spoolman-status-changed.js.map +1 -0
  374. package/dist/services/moonraker/dto/websocket/notify-sudo-alert.params.js +6 -0
  375. package/dist/services/moonraker/dto/websocket/notify-sudo-alert.params.js.map +1 -0
  376. package/dist/services/moonraker/dto/websocket/notify-update-response.params.js +27 -0
  377. package/dist/services/moonraker/dto/websocket/notify-update-response.params.js.map +1 -0
  378. package/dist/services/moonraker/dto/websocket/notify-user-change.params.js +6 -0
  379. package/dist/services/moonraker/dto/websocket/notify-user-change.params.js.map +1 -0
  380. package/dist/services/moonraker/moonraker-subscription.client.js +33 -0
  381. package/dist/services/moonraker/moonraker-subscription.client.js.map +1 -0
  382. package/dist/services/moonraker/moonraker-websocket.adapter.js +143 -0
  383. package/dist/services/moonraker/moonraker-websocket.adapter.js.map +1 -0
  384. package/dist/services/moonraker/moonraker.client.js +507 -0
  385. package/dist/services/moonraker/moonraker.client.js.map +1 -0
  386. package/dist/services/octoprint/constants/firmware-update-settings.constants.js.map +1 -1
  387. package/dist/services/octoprint/constants/octoprint-service.constants.js +0 -31
  388. package/dist/services/octoprint/constants/octoprint-service.constants.js.map +1 -1
  389. package/dist/services/octoprint/constants/octoprint-websocket.constants.js.map +1 -1
  390. package/dist/services/octoprint/dto/connection-state.dto.js.map +1 -1
  391. package/dist/services/octoprint/dto/connection.dto.js.map +1 -1
  392. package/dist/services/octoprint/dto/octoprint-currentuser.dto.js.map +1 -1
  393. package/dist/services/octoprint/dto/octoprint-event.dto.js.map +1 -1
  394. package/dist/services/octoprint/dto/octoprint-file.dto.js.map +1 -1
  395. package/dist/services/octoprint/dto/octoprint-files.dto.js.map +1 -1
  396. package/dist/services/octoprint/dto/octoprint-session.dto.js.map +1 -1
  397. package/dist/services/octoprint/dto/octoprint-settings.dto.js.map +1 -1
  398. package/dist/services/octoprint/dto/octoprint-system-info.dto.js.map +1 -1
  399. package/dist/services/octoprint/dto/state.dto.js.map +1 -1
  400. package/dist/services/octoprint/dto/websocket-output/connection-message.dto.js.map +1 -1
  401. package/dist/services/octoprint/dto/websocket-output/current-message.dto.js.map +1 -1
  402. package/dist/services/octoprint/dto/websocket-output/event-message.dto.js.map +1 -1
  403. package/dist/services/octoprint/dto/websocket-output/event.type.js.map +1 -1
  404. package/dist/services/octoprint/dto/websocket-output/events/client-authed.dto.js.map +1 -1
  405. package/dist/services/octoprint/dto/websocket-output/events/client-closed.dto.js.map +1 -1
  406. package/dist/services/octoprint/dto/websocket-output/events/client-opened.dto.js.map +1 -1
  407. package/dist/services/octoprint/dto/websocket-output/events/dwelling.dto.js.map +1 -1
  408. package/dist/services/octoprint/dto/websocket-output/events/file-added.dto.js.map +1 -1
  409. package/dist/services/octoprint/dto/websocket-output/events/file-deselected.dto.js.map +1 -1
  410. package/dist/services/octoprint/dto/websocket-output/events/file-removed.dto.js.map +1 -1
  411. package/dist/services/octoprint/dto/websocket-output/events/folder-added.dto.js.map +1 -1
  412. package/dist/services/octoprint/dto/websocket-output/events/home.dto.js.map +1 -1
  413. package/dist/services/octoprint/dto/websocket-output/events/metadata-analysis-finished.dto.js.map +1 -1
  414. package/dist/services/octoprint/dto/websocket-output/events/metadata-analysis-started.dto.js.map +1 -1
  415. package/dist/services/octoprint/dto/websocket-output/events/metadata-statistics-updated.dto.js.map +1 -1
  416. package/dist/services/octoprint/dto/websocket-output/events/position-update.dto.js.map +1 -1
  417. package/dist/services/octoprint/dto/websocket-output/events/print-cancelled.dto.js.map +1 -1
  418. package/dist/services/octoprint/dto/websocket-output/events/print-cancelling.dto.js.map +1 -1
  419. package/dist/services/octoprint/dto/websocket-output/events/print-done.dto.js.map +1 -1
  420. package/dist/services/octoprint/dto/websocket-output/events/print-failed.dto.js.map +1 -1
  421. package/dist/services/octoprint/dto/websocket-output/events/print-paused.dto.js.map +1 -1
  422. package/dist/services/octoprint/dto/websocket-output/events/print-resumed.dto.js.map +1 -1
  423. package/dist/services/octoprint/dto/websocket-output/events/print-started.dto.js.map +1 -1
  424. package/dist/services/octoprint/dto/websocket-output/events/printer-state-changed.dto.js.map +1 -1
  425. package/dist/services/octoprint/dto/websocket-output/events/transfer-done.dto.js.map +1 -1
  426. package/dist/services/octoprint/dto/websocket-output/events/transfer-started.dto.js.map +1 -1
  427. package/dist/services/octoprint/dto/websocket-output/events/updated-files.dto.js.map +1 -1
  428. package/dist/services/octoprint/dto/websocket-output/events/upload.dto.js.map +1 -1
  429. package/dist/services/octoprint/dto/websocket-output/events/user-logged-in.dto.js.map +1 -1
  430. package/dist/services/octoprint/dto/websocket-output/events/z-change.dto.js.map +1 -1
  431. package/dist/services/octoprint/dto/websocket-output/history-message.dto.js.map +1 -1
  432. package/dist/services/octoprint/dto/websocket-output/plugin-message.dto.js.map +1 -1
  433. package/dist/services/octoprint/dto/websocket-output/timelapse-message.dto.js.map +1 -1
  434. package/dist/services/octoprint/models/octoprint-file.dto.js.map +1 -1
  435. package/dist/services/octoprint/octoprint-api.routes.js +3 -0
  436. package/dist/services/octoprint/octoprint-api.routes.js.map +1 -1
  437. package/dist/services/octoprint/octoprint-api.service.js +24 -13
  438. package/dist/services/octoprint/octoprint-api.service.js.map +1 -1
  439. package/dist/services/octoprint/octoprint-sockio.adapter.js +25 -20
  440. package/dist/services/octoprint/octoprint-sockio.adapter.js.map +1 -1
  441. package/dist/services/octoprint/plugin-base.service.js.map +1 -1
  442. package/dist/services/octoprint/plugin-firmware-update.service.js +1 -1
  443. package/dist/services/octoprint/plugin-firmware-update.service.js.map +1 -1
  444. package/dist/services/octoprint/plugin-repository.cache.js +1 -1
  445. package/dist/services/octoprint/plugin-repository.cache.js.map +1 -1
  446. package/dist/services/octoprint/socket.factory.js.map +1 -1
  447. package/dist/services/octoprint/utils/api.utils.js.map +1 -1
  448. package/dist/services/octoprint/utils/file.utils.js.map +1 -1
  449. package/dist/services/orm/base.interface.js.map +1 -1
  450. package/dist/services/orm/base.service.js +8 -5
  451. package/dist/services/orm/base.service.js.map +1 -1
  452. package/dist/services/orm/camera-stream.service.js +1 -1
  453. package/dist/services/orm/camera-stream.service.js.map +1 -1
  454. package/dist/services/orm/custom-gcode.service.js +1 -1
  455. package/dist/services/orm/custom-gcode.service.js.map +1 -1
  456. package/dist/services/orm/floor-position.service.js +3 -2
  457. package/dist/services/orm/floor-position.service.js.map +1 -1
  458. package/dist/services/orm/floor.service.js +36 -15
  459. package/dist/services/orm/floor.service.js.map +1 -1
  460. package/dist/services/orm/permission.service.js +2 -2
  461. package/dist/services/orm/permission.service.js.map +1 -1
  462. package/dist/services/orm/print-completion.service.js.map +1 -1
  463. package/dist/services/orm/printer-files.service.js +11 -4
  464. package/dist/services/orm/printer-files.service.js.map +1 -1
  465. package/dist/services/orm/printer-group.service.js.map +1 -1
  466. package/dist/services/orm/printer.service.js +2 -2
  467. package/dist/services/orm/printer.service.js.map +1 -1
  468. package/dist/services/orm/refresh-token.service.js +4 -4
  469. package/dist/services/orm/refresh-token.service.js.map +1 -1
  470. package/dist/services/orm/role.service.js +10 -10
  471. package/dist/services/orm/role.service.js.map +1 -1
  472. package/dist/services/orm/settings.service.js.map +1 -1
  473. package/dist/services/orm/user-role.service.js.map +1 -1
  474. package/dist/services/orm/user.service.js.map +1 -1
  475. package/dist/services/orm-migration.service.js.map +1 -1
  476. package/dist/services/print-completion.service.js +4 -0
  477. package/dist/services/print-completion.service.js.map +1 -1
  478. package/dist/services/print-completion.shared.js.map +1 -1
  479. package/dist/services/printer-files.service.js +1 -1
  480. package/dist/services/printer-files.service.js.map +1 -1
  481. package/dist/services/printer.service.js +4 -19
  482. package/dist/services/printer.service.js.map +1 -1
  483. package/dist/services/settings.service.js.map +1 -1
  484. package/dist/services/typeorm/typeorm.service.js.map +1 -1
  485. package/dist/services/validators/floor-service.validation.js.map +1 -1
  486. package/dist/services/validators/print-completion-service.validation.js.map +1 -1
  487. package/dist/services/validators/printer-service.validation.js.map +1 -1
  488. package/dist/services/validators/settings-service.validation.js.map +1 -1
  489. package/dist/services/validators/user-service.validation.js.map +1 -1
  490. package/dist/services/validators/yaml-service.validation.js.map +1 -1
  491. package/dist/shared/dtos/printer-login.dto.js.map +1 -1
  492. package/dist/shared/websocket.adapter.js.map +1 -1
  493. package/dist/shared.constants.js.map +1 -1
  494. package/dist/state/file-upload-tracker.cache.js +1 -1
  495. package/dist/state/file-upload-tracker.cache.js.map +1 -1
  496. package/dist/state/file.cache.js +3 -3
  497. package/dist/state/file.cache.js.map +1 -1
  498. package/dist/state/floor.store.js.map +1 -1
  499. package/dist/state/printer-connection.cache.js.map +1 -1
  500. package/dist/state/printer-events.cache.js.map +1 -1
  501. package/dist/state/printer-files.store.js +5 -3
  502. package/dist/state/printer-files.store.js.map +1 -1
  503. package/dist/state/printer-socket.store.js +4 -3
  504. package/dist/state/printer-socket.store.js.map +1 -1
  505. package/dist/state/printer.cache.js +2 -2
  506. package/dist/state/printer.cache.js.map +1 -1
  507. package/dist/state/settings.store.js.map +1 -1
  508. package/dist/state/socket-io.gateway.js +2 -2
  509. package/dist/state/socket-io.gateway.js.map +1 -1
  510. package/dist/state/test-printer-socket.store.js +5 -5
  511. package/dist/state/test-printer-socket.store.js.map +1 -1
  512. package/dist/state/validation/create-test-printer.validation.js.map +1 -1
  513. package/dist/task.presets.js.map +1 -1
  514. package/dist/tasks/boot.task.js +0 -1
  515. package/dist/tasks/boot.task.js.map +1 -1
  516. package/dist/tasks/client-bundle.task.js.map +1 -1
  517. package/dist/tasks/print-completion.socketio.task.js.map +1 -1
  518. package/dist/tasks/printer-file-clean.task.js +2 -2
  519. package/dist/tasks/printer-file-clean.task.js.map +1 -1
  520. package/dist/tasks/printer-state-update-poll.task.js.map +1 -1
  521. package/dist/tasks/printer-websocket-restore.task.js +5 -3
  522. package/dist/tasks/printer-websocket-restore.task.js.map +1 -1
  523. package/dist/tasks/printer-websocket.task.js.map +1 -1
  524. package/dist/tasks/socketio.task.js.map +1 -1
  525. package/dist/tasks/software-update.task.js.map +1 -1
  526. package/dist/tasks.js.map +1 -1
  527. package/dist/types/express/index.d.js.map +1 -1
  528. package/dist/utils/array.util.js.map +1 -1
  529. package/dist/utils/benchmark.util.js.map +1 -1
  530. package/dist/utils/cache/key-diff.cache.js.map +1 -1
  531. package/dist/utils/correlation-token.util.js.map +1 -1
  532. package/dist/utils/crypto.utils.js.map +1 -1
  533. package/dist/utils/env.utils.js.map +1 -1
  534. package/dist/utils/error.utils.js.map +1 -1
  535. package/dist/utils/fs.utils.js.map +1 -1
  536. package/dist/utils/is-docker.js.map +1 -1
  537. package/dist/utils/metric.utils.js.map +1 -1
  538. package/dist/utils/normalize-url.js.map +1 -1
  539. package/dist/utils/semver.utils.js.map +1 -1
  540. package/dist/utils/time.utils.js.map +1 -1
  541. package/dist/utils/url.utils.js.map +1 -1
  542. package/package.json +38 -37
@@ -0,0 +1,143 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "MoonrakerWebsocketAdapter", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return MoonrakerWebsocketAdapter;
9
+ }
10
+ });
11
+ const _websocketadapter = require("../../shared/websocket.adapter");
12
+ const _serverconstants = require("../../server.constants");
13
+ const _normalizeurl = require("../../utils/normalize-url");
14
+ const _urlutils = require("../../utils/url.utils");
15
+ const _octoprintsockioadapter = require("../octoprint/octoprint-sockio.adapter");
16
+ const _websocketconstants = require("./constants/websocket.constants");
17
+ class MoonrakerWebsocketAdapter extends _websocketadapter.WebsocketAdapter {
18
+ printerType = 1;
19
+ moonrakerClient;
20
+ logger;
21
+ eventEmitter;
22
+ configService;
23
+ socketState = _octoprintsockioadapter.SOCKET_STATE.unopened;
24
+ lastMessageReceivedTimestamp = null;
25
+ stateUpdated = false;
26
+ stateUpdateTimestamp = null;
27
+ apiStateUpdated = false;
28
+ apiStateUpdateTimestamp = null;
29
+ apiState = _octoprintsockioadapter.API_STATE.unset;
30
+ loginDto;
31
+ socketURL;
32
+ sessionDto;
33
+ printerId;
34
+ username;
35
+ constructor({ moonrakerClient, loggerFactory, eventEmitter2, configService }){
36
+ super({
37
+ loggerFactory
38
+ });
39
+ this.moonrakerClient = moonrakerClient;
40
+ this.logger = loggerFactory(MoonrakerWebsocketAdapter.name);
41
+ this.eventEmitter = eventEmitter2;
42
+ this.configService = configService;
43
+ }
44
+ get _debugMode() {
45
+ return this.configService.get(_serverconstants.AppConstants.debugSocketStatesKey, _serverconstants.AppConstants.defaultDebugSocketStates) === "true";
46
+ }
47
+ needsReopen() {
48
+ return false;
49
+ }
50
+ needsSetup() {
51
+ return this.socketState === _octoprintsockioadapter.SOCKET_STATE.unopened;
52
+ }
53
+ needsReauth() {
54
+ return false;
55
+ }
56
+ registerCredentials(socketLogin) {
57
+ const { printerId, loginDto, protocol } = socketLogin;
58
+ this.printerId = printerId;
59
+ this.loginDto = loginDto;
60
+ const httpUrl = (0, _normalizeurl.normalizeUrl)(this.loginDto.printerURL);
61
+ const wsUrl = (0, _urlutils.httpToWsUrl)(httpUrl, protocol);
62
+ wsUrl.pathname = "/websocket";
63
+ this.socketURL = wsUrl;
64
+ }
65
+ open() {
66
+ if (this.socket) {
67
+ throw new Error(`Socket already exists by printerId, ignoring open request`);
68
+ }
69
+ super.open(this.socketURL);
70
+ }
71
+ close() {
72
+ super.close();
73
+ }
74
+ async setupSocketSession() {
75
+ const oneshot = await this.moonrakerClient.getAccessOneshotToken(this.loginDto);
76
+ this.logger.log(`Oneshot ${oneshot.data.result}`);
77
+ }
78
+ emitEventSync(event, payload) {
79
+ this.eventEmitter.emit((0, _websocketconstants.moonrakerEvent)(event), {
80
+ event,
81
+ payload,
82
+ printerId: this.printerId
83
+ });
84
+ }
85
+ resetSocketState() {
86
+ this.setSocketState("unopened");
87
+ this.setApiState("unset");
88
+ }
89
+ isClosedOrAborted() {
90
+ return this.socketState === _octoprintsockioadapter.SOCKET_STATE.closed || this.socketState === _octoprintsockioadapter.SOCKET_STATE.aborted;
91
+ }
92
+ async afterOpened(event) {
93
+ this.setSocketState("opened");
94
+ }
95
+ async onMessage(message) {
96
+ this.lastMessageReceivedTimestamp = Date.now();
97
+ if (this.socketState !== _octoprintsockioadapter.SOCKET_STATE.authenticated) {
98
+ this.setSocketState("authenticated");
99
+ }
100
+ const data = JSON.parse(message);
101
+ const eventName = data.method;
102
+ const payload = data.params?.length ? data.params[0] : undefined;
103
+ if (eventName === "notify_proc_stat_update") return;
104
+ await this.emitEvent(eventName, payload);
105
+ }
106
+ async afterClosed(event) {
107
+ this.setSocketState("closed");
108
+ delete this.socket;
109
+ await this.emitEvent(_octoprintsockioadapter.WsMessage.WS_CLOSED, "connection closed");
110
+ }
111
+ async onError(error) {
112
+ this.setSocketState("error");
113
+ await this.emitEvent(_octoprintsockioadapter.WsMessage.WS_ERROR, error?.length ? error : "connection error");
114
+ }
115
+ async emitEvent(event, payload) {
116
+ await this.eventEmitter.emitAsync((0, _websocketconstants.moonrakerEvent)(event), {
117
+ event,
118
+ payload,
119
+ printerId: this.printerId,
120
+ printerType: 1
121
+ });
122
+ }
123
+ setSocketState(state) {
124
+ this.socketState = state;
125
+ this.stateUpdated = true;
126
+ this.stateUpdateTimestamp = Date.now();
127
+ if (this._debugMode) {
128
+ this.logger.log(`${this.printerId} Socket state updated to: ` + state);
129
+ }
130
+ this.emitEventSync(_octoprintsockioadapter.WsMessage.WS_STATE_UPDATED, state);
131
+ }
132
+ setApiState(state) {
133
+ this.apiState = state;
134
+ this.apiStateUpdated = true;
135
+ this.apiStateUpdateTimestamp = Date.now();
136
+ if (this._debugMode) {
137
+ this.logger.log(`${this.printerId} API state updated to: ` + state);
138
+ }
139
+ this.emitEventSync(_octoprintsockioadapter.WsMessage.API_STATE_UPDATED, state);
140
+ }
141
+ }
142
+
143
+ //# sourceMappingURL=moonraker-websocket.adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/services/moonraker/moonraker-websocket.adapter.ts"],"names":["MoonrakerWebsocketAdapter","WebsocketAdapter","printerType","moonrakerClient","logger","eventEmitter","configService","socketState","SOCKET_STATE","unopened","lastMessageReceivedTimestamp","stateUpdated","stateUpdateTimestamp","apiStateUpdated","apiStateUpdateTimestamp","apiState","API_STATE","unset","loginDto","socketURL","sessionDto","printerId","username","constructor","loggerFactory","eventEmitter2","name","_debugMode","get","AppConstants","debugSocketStatesKey","defaultDebugSocketStates","needsReopen","needsSetup","needsReauth","registerCredentials","socketLogin","protocol","httpUrl","normalizeUrl","printerURL","wsUrl","httpToWsUrl","pathname","open","socket","Error","close","setupSocketSession","oneshot","getAccessOneshotToken","log","data","result","emitEventSync","event","payload","emit","moonrakerEvent","resetSocketState","setSocketState","setApiState","isClosedOrAborted","closed","aborted","afterOpened","onMessage","message","Date","now","authenticated","JSON","parse","eventName","method","params","length","undefined","emitEvent","afterClosed","WsMessage","WS_CLOSED","onError","error","WS_ERROR","emitAsync","state","WS_STATE_UPDATED","API_STATE_UPDATED"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -0,0 +1,507 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "MoonrakerClient", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return MoonrakerClient;
9
+ }
10
+ });
11
+ const _axios = _interop_require_default(require("axios"));
12
+ const _formdata = _interop_require_default(require("form-data"));
13
+ const _fs = require("fs");
14
+ const _eventconstants = require("../../constants/event.constants");
15
+ function _interop_require_default(obj) {
16
+ return obj && obj.__esModule ? obj : {
17
+ default: obj
18
+ };
19
+ }
20
+ class MoonrakerClient {
21
+ httpClient;
22
+ eventEmitter2;
23
+ constructor({ httpClient, eventEmitter2 }){
24
+ this.httpClient = httpClient;
25
+ this.eventEmitter2 = eventEmitter2;
26
+ }
27
+ async getServerInfo(login) {
28
+ return this.httpClient.get(`${login.printerURL}/server/info`);
29
+ }
30
+ async getServerConfig(login) {
31
+ return this.httpClient.get(`${login.printerURL}/server/config`);
32
+ }
33
+ async getTemperatureStore(login, includeMonitors = false) {
34
+ return this.httpClient.get(`${login.printerURL}/server/temperature_store?include_monitors=${!!includeMonitors}`);
35
+ }
36
+ async getGcodeStore(login, count = 100) {
37
+ return this.httpClient.get(`${login.printerURL}/server/gcode_store?count=${count}`);
38
+ }
39
+ async postRolloverLogs(login, application = "") {
40
+ return this.httpClient.post(`${login.printerURL}/server/logs/rollover`, {
41
+ application
42
+ });
43
+ }
44
+ async postRestartServer(login) {
45
+ return this.httpClient.post(`${login.printerURL}/server/restart`);
46
+ }
47
+ async postJsonRpc(login, method, params, id) {
48
+ return this.httpClient.post(`${login.printerURL}/server/jsonrpc`, {
49
+ jsonrpc: "2.0",
50
+ id: id ? id : 0,
51
+ method,
52
+ params
53
+ });
54
+ }
55
+ async getPrinterInfo(login) {
56
+ return this.httpClient.post(`${login.printerURL}/printer/info`);
57
+ }
58
+ async postEmergencyStop(login) {
59
+ return this.httpClient.post(`${login.printerURL}/printer/emergency_stop`);
60
+ }
61
+ async postHostRestart(login) {
62
+ return this.httpClient.post(`${login.printerURL}/printer/restart`);
63
+ }
64
+ async postFirmwareRestart(login) {
65
+ return this.httpClient.post(`${login.printerURL}/printer/firmware_restart`);
66
+ }
67
+ async getPrinterObjectsList(login) {
68
+ return this.httpClient.get(`${login.printerURL}/printer/objects/list`);
69
+ }
70
+ async getPrinterObjectsQuery(login, query = {
71
+ gcode_move: [],
72
+ toolhead: [],
73
+ extruder: []
74
+ }) {
75
+ const queryString = Object.entries(query).reduce((acc, [key, value])=>{
76
+ if (value.length > 0) {
77
+ acc.push(`${key}=${value.join(",")}`);
78
+ } else {
79
+ acc.push(key);
80
+ }
81
+ return acc;
82
+ }, []).join("&");
83
+ return this.httpClient.get(`${login.printerURL}/printer/objects/query?${queryString}`);
84
+ }
85
+ async getPrinterQueryEndstops(login) {
86
+ return this.httpClient.get(`${login.printerURL}/printer/query-endstops`);
87
+ }
88
+ async postGcodeScript(login, script = "G28") {
89
+ return this.httpClient.get(`${login.printerURL}/printer/gcode/script?script=${script}`);
90
+ }
91
+ async getGcodeHelp(login) {
92
+ return this.httpClient.get(`${login.printerURL}/printer/gcode/help`);
93
+ }
94
+ async postPrintStart(login, filename) {
95
+ return this.httpClient.post(`${login.printerURL}/printer/print/start?filename=${filename}`);
96
+ }
97
+ async postPrintPause(login) {
98
+ return this.httpClient.post(`${login.printerURL}/printer/print/pause`);
99
+ }
100
+ async postPrintResume(login) {
101
+ return this.httpClient.post(`${login.printerURL}/printer/print/resume`);
102
+ }
103
+ async postPrintCancel(login) {
104
+ return this.httpClient.post(`${login.printerURL}/printer/print/cancel`);
105
+ }
106
+ async getMachineSystemInfo(login) {
107
+ return this.httpClient.get(`${login.printerURL}/machine/system_info`);
108
+ }
109
+ async postMachineShutdown(login) {
110
+ return this.httpClient.post(`${login.printerURL}/machine/shutdown`);
111
+ }
112
+ async postMachineReboot(login) {
113
+ return this.httpClient.post(`${login.printerURL}/machine/reboot`);
114
+ }
115
+ async postMachineRestartService(login, service) {
116
+ return this.httpClient.post(`${login.printerURL}/machine/services/restart?service=${service}`);
117
+ }
118
+ async postMachineStartService(login, service) {
119
+ return this.httpClient.post(`${login.printerURL}/machine/services/restart?service=${service}`);
120
+ }
121
+ async postMachineProcessStats(login) {
122
+ return this.httpClient.post(`${login.printerURL}/machine/proc_stats`);
123
+ }
124
+ async getMachineSudoInfo(login, checkAccess = false) {
125
+ return this.httpClient.get(`${login.printerURL}/machine/sudo/info?check_access=${checkAccess}`);
126
+ }
127
+ async postMachineSetSudoPassword(login, password) {
128
+ return this.httpClient.post(`${login.printerURL}/machine/sudo/password`, {
129
+ password
130
+ });
131
+ }
132
+ async getMachineListPeripheralsUsb(login) {
133
+ return this.httpClient.get(`${login.printerURL}/machine/peripherals/usb`);
134
+ }
135
+ async getMachineListPeripheralsSerial(login) {
136
+ return this.httpClient.get(`${login.printerURL}/machine/peripherals/serial`);
137
+ }
138
+ async getMachineListPeripheralsVideo(login) {
139
+ return this.httpClient.get(`${login.printerURL}/machine/peripherals/video`);
140
+ }
141
+ async getMachineListPeripheralsCanbus(login, canInterface = "can0") {
142
+ return this.httpClient.get(`${login.printerURL}/machine/peripherals/canbus?interface=${canInterface}`);
143
+ }
144
+ async getServerFilesList(login, rootFolder = "") {
145
+ const paramString = rootFolder?.length ? `?root=${rootFolder}` : "";
146
+ return this.httpClient.get(`${login.printerURL}/server/files/list${paramString}`);
147
+ }
148
+ async getServerFilesRoots(login) {
149
+ return this.httpClient.get(`${login.printerURL}/server/files/roots`);
150
+ }
151
+ async getServerFileMetadata(login, filename) {
152
+ return this.httpClient.get(`${login.printerURL}/server/files/metadata?filename=${filename}`);
153
+ }
154
+ async getServerFileMetadataScan(login, filename) {
155
+ return this.httpClient.get(`${login.printerURL}/server/files/metascan?filename=${filename}`);
156
+ }
157
+ async getServerFilesThumbnails(login, filename) {
158
+ return this.httpClient.get(`${login.printerURL}/server/files/thumbnails?filename=${filename}`);
159
+ }
160
+ async getServerFilesDirectoryInfo(login, path, extended) {
161
+ return this.httpClient.get(`${login.printerURL}/server/files/directory?path=${path}&extended=${extended}`);
162
+ }
163
+ async postServerFilesDirectory(login, path) {
164
+ return this.httpClient.post(`${login.printerURL}/server/files/directory`, {
165
+ path
166
+ });
167
+ }
168
+ async deleteServerFilesDirectory(login, path, force) {
169
+ return this.httpClient.delete(`${login.printerURL}/server/files/directory?path=${path}&force=${!!force}`);
170
+ }
171
+ async postServerFilesMove(login, source, dest) {
172
+ return this.httpClient.post(`${login.printerURL}/server/files/directory`, {
173
+ source,
174
+ dest
175
+ });
176
+ }
177
+ async postServerFilesCopy(login, source, dest) {
178
+ return this.httpClient.post(`${login.printerURL}/server/files/copy`, {
179
+ source,
180
+ dest
181
+ });
182
+ }
183
+ async postServerFilesZip(login, items, dest, store_only) {
184
+ return this.httpClient.post(`${login.printerURL}/server/files/zip`, {
185
+ items,
186
+ store_only,
187
+ dest
188
+ });
189
+ }
190
+ async getServerFilesDownload(login, root, filename) {
191
+ return await this.httpClient.get(`${login.printerURL}/server/files/${root}/${filename}`, {
192
+ responseType: "stream"
193
+ });
194
+ }
195
+ async postServerFileUpload(login, multerFileOrBuffer, root, path, checksum, progressToken) {
196
+ const formData = new _formdata.default();
197
+ if (root?.length) {
198
+ formData.append("root", root);
199
+ }
200
+ if (path?.length) {
201
+ formData.append("path", path);
202
+ }
203
+ if (checksum?.length) {
204
+ formData.append("checksum", checksum);
205
+ }
206
+ let source = multerFileOrBuffer.buffer;
207
+ const isPhysicalFile = !source;
208
+ if (isPhysicalFile) {
209
+ source = (0, _fs.createReadStream)(multerFileOrBuffer.path);
210
+ }
211
+ formData.append("file", source, {
212
+ filename: multerFileOrBuffer.originalname
213
+ });
214
+ const result = await new Promise((resolve, reject)=>{
215
+ return formData.getLength((err, length)=>{
216
+ if (err) resolve(null);
217
+ resolve(length);
218
+ });
219
+ });
220
+ const headers = {
221
+ ...formData.getHeaders(),
222
+ "Content-Length": result
223
+ };
224
+ return await (0, _axios.default)({
225
+ method: "POST",
226
+ url: `${login.printerURL}/server/files/upload`,
227
+ data: formData,
228
+ headers,
229
+ onUploadProgress: (p)=>{
230
+ if (progressToken) {
231
+ this.eventEmitter2.emit(`${(0, _eventconstants.uploadProgressEvent)(progressToken)}`, progressToken, p);
232
+ }
233
+ }
234
+ });
235
+ }
236
+ async deleteServerFile(login, root, path) {
237
+ return this.httpClient.delete(`${login.printerURL}/server/files/${root}}/${path}`);
238
+ }
239
+ async getServerFileKlippyLogDownload(login) {
240
+ return this.httpClient.get(`${login.printerURL}/server/files/klippy.log`);
241
+ }
242
+ async getServerFileMoonrakerLogDownload(login) {
243
+ return this.httpClient.get(`${login.printerURL}/server/files/moonraker.log`);
244
+ }
245
+ async postAccessLoginUser(login, username, password, source = "moonraker") {
246
+ return this.httpClient.post("/access/login", {
247
+ username,
248
+ password,
249
+ source
250
+ });
251
+ }
252
+ async postAccessLogoutUser(login) {
253
+ return this.httpClient.post(`${login.printerURL}/access/logout`);
254
+ }
255
+ async getAccessUser(login) {
256
+ return this.httpClient.get(`${login.printerURL}/access/user`);
257
+ }
258
+ async postAccessCreateUser(login, username, password) {
259
+ return this.httpClient.post(`${login.printerURL}/access/login`, {
260
+ username,
261
+ password
262
+ });
263
+ }
264
+ async deleteAccessUser(login, username) {
265
+ return this.httpClient.delete(`${login.printerURL}/access/user`, {
266
+ data: {
267
+ username
268
+ }
269
+ });
270
+ }
271
+ async listAccessUsers(login) {
272
+ return this.httpClient.get(`${login.printerURL}/access/user/list`);
273
+ }
274
+ async postAccessResetPassword(login, refresh_token) {
275
+ return this.httpClient.post(`${login.printerURL}/access/refresh_jwt`, {
276
+ refresh_token
277
+ });
278
+ }
279
+ async getAccessOneshotToken(login) {
280
+ return this.httpClient.get(`${login.printerURL}/access/oneshot_token`);
281
+ }
282
+ async getAccessInfo(login) {
283
+ return this.httpClient.get(`${login.printerURL}/access/info`);
284
+ }
285
+ async getAccessApiKey(login) {
286
+ return this.httpClient.get(`${login.printerURL}/access/api_key`);
287
+ }
288
+ async postAccessApiKeyCreate(login) {
289
+ return this.httpClient.post(`${login.printerURL}/access/api_key`);
290
+ }
291
+ async getDatabaseNamespaceList(login) {
292
+ return this.httpClient.get(`${login.printerURL}/database/list`);
293
+ }
294
+ async getDatabaseNamespaceItem(login, namespace, key) {
295
+ return this.httpClient.get(`${login.printerURL}/database/item?namespace=${namespace}&key=${key}`);
296
+ }
297
+ async postDatabaseNamespaceItem(login, namespace, key, value, typeHint) {
298
+ const typeHintParam = typeHint?.length ? `:${typeHint}` : "";
299
+ return this.httpClient.post(`${login.printerURL}/database/item?namespace=${namespace}&key=${key}&value${typeHintParam}=${value}`);
300
+ }
301
+ async deleteDatabaseNamespaceItem(login, namespace, key) {
302
+ return this.httpClient.delete(`${login.printerURL}/database/item?namespace=${namespace}&key=${key}`);
303
+ }
304
+ async getJobQueueStatus(login) {
305
+ return this.httpClient.get(`${login.printerURL}/job_queue/status`);
306
+ }
307
+ async postJobQueueJob(login, filenames, reset) {
308
+ return this.httpClient.post(`${login.printerURL}/job_queue/job`, {
309
+ filenames,
310
+ reset
311
+ });
312
+ }
313
+ async deleteJobQueueJob(login, jobIds, all) {
314
+ const base = `${login.printerURL}/job_queue/job`;
315
+ const url = !!all ? `${base}?all=true` : `${base}?job_ids=${jobIds.join(",")}`;
316
+ return this.httpClient.delete(url);
317
+ }
318
+ async postJobQueuePause(login) {
319
+ return this.httpClient.post(`${login.printerURL}/job_queue/pause`);
320
+ }
321
+ async postJobQueueStart(login) {
322
+ return this.httpClient.post(`${login.printerURL}/job_queue/start`);
323
+ }
324
+ async postJobQueueJump(login, jobId) {
325
+ return this.httpClient.post(`${login.printerURL}/job_queue/jump?job_id=${jobId}`);
326
+ }
327
+ async getAnnouncementsList(login, includeDismissed) {
328
+ return this.httpClient.get(`${login.printerURL}/server/announcements/list?include_dismissed=${includeDismissed}`);
329
+ }
330
+ async postAnnouncementsUpdate(login) {
331
+ return this.httpClient.post(`${login.printerURL}/server/announcements/update`);
332
+ }
333
+ async postAnnouncementsDismiss(login, entryId, wakeTime) {
334
+ return this.httpClient.post(`${login.printerURL}/server/announcements/dismiss?entry_id=${encodeURIComponent(entryId)}&wake_time=${wakeTime}`);
335
+ }
336
+ async getAnnouncementsFeeds(login) {
337
+ return this.httpClient.get(`${login.printerURL}/server/announcements/feeds`);
338
+ }
339
+ async postAnnouncementsFeedAdd(login, name) {
340
+ return this.httpClient.get(`${login.printerURL}/server/announcements/feeds?name=${name}`);
341
+ }
342
+ async deleteAnnouncementsFeedRemove(login, name) {
343
+ return this.httpClient.delete(`${login.printerURL}/server/announcements/feeds?name=${name}`);
344
+ }
345
+ async getWebcamList(login) {
346
+ return this.httpClient.get(`${login.printerURL}/server/webcams/list`);
347
+ }
348
+ async getWebcamItem(login, uid, name) {
349
+ const base = `${login.printerURL}/server/webcams/get_item`;
350
+ const url = !!uid?.length ? `${base}?uid=${uid}` : `${base}?name=${name}`;
351
+ return this.httpClient.get(url);
352
+ }
353
+ async postWebcamItemUpdate(login, webcam) {
354
+ return this.httpClient.post(`${login.printerURL}/server/webcams/post_item`, webcam);
355
+ }
356
+ async deleteWebcamItem(login, uid, name) {
357
+ const base = `${login.printerURL}/server/webcams/delete_item`;
358
+ const url = !!uid?.length ? `${base}?uid=${uid}` : `${base}?name=${name}`;
359
+ return this.httpClient.get(url);
360
+ }
361
+ async postWebcamTest(login, uid, name) {
362
+ const base = `${login.printerURL}/server/webcams/test`;
363
+ const url = !!uid?.length ? `${base}?uid=${uid}` : `${base}?name=${name}`;
364
+ return this.httpClient.get(url);
365
+ }
366
+ async getNotifierList(login) {
367
+ return this.httpClient.get(`${login.printerURL}/server/notifiers/list`);
368
+ }
369
+ async postMachineUpdateStatus(login) {
370
+ return this.httpClient.post(`${login.printerURL}/machine/update/status`);
371
+ }
372
+ async postMachineUpdateRefresh(login, name) {
373
+ const base = `${login.printerURL}/machine/update/refresh`;
374
+ const url = !!name ? `${base}` : `${base}?name=${name}`;
375
+ return this.httpClient.post(url);
376
+ }
377
+ async postMachineUpdateFull(login) {
378
+ return this.httpClient.post(`${login.printerURL}/machine/update/full`);
379
+ }
380
+ async postMachineUpdateMoonraker(login) {
381
+ return this.httpClient.post(`${login.printerURL}/machine/update/moonraker`);
382
+ }
383
+ async postMachineUpdateKlipper(login) {
384
+ return this.httpClient.post(`${login.printerURL}/machine/update/klipper`);
385
+ }
386
+ async postMachineUpdateClient(login, name) {
387
+ return this.httpClient.post(`${login.printerURL}/machine/update/client?name=${name}`);
388
+ }
389
+ async postMachineUpdateSystem(login) {
390
+ return this.httpClient.post(`${login.printerURL}/machine/update/system`);
391
+ }
392
+ async postMachineUpdateRecover(login, name, hard = false) {
393
+ return this.httpClient.post(`${login.printerURL}/machine/update/recover?name=${name}&hard=${hard}`);
394
+ }
395
+ async postMachineUpdateRollback(login, name) {
396
+ return this.httpClient.post(`${login.printerURL}/machine/update/rollback?name=${name}`);
397
+ }
398
+ async getMachineDevicePowerDevices(login) {
399
+ return this.httpClient.get(`${login.printerURL}/machine/device_power/devices`);
400
+ }
401
+ async getMachineDevicePowerDeviceState(login, device) {
402
+ return this.httpClient.get(`${login.printerURL}/machine/device_power/device?device=${device}`);
403
+ }
404
+ async postMachineDevicePowerDeviceState(login, device, action) {
405
+ return this.httpClient.post(`${login.printerURL}/machine/device_power/device?device=${device}&action=${action}`);
406
+ }
407
+ async getMachineDevicePowerBatchDeviceState(login, devices) {
408
+ return this.httpClient.get(`${login.printerURL}/machine/device_power/status?${devices.join("&")}`);
409
+ }
410
+ async postMachineDevicePowerBatchPowerOn(login, device) {
411
+ return this.httpClient.post(`${login.printerURL}/machine/device_power/on?device=${device}`);
412
+ }
413
+ async postMachineDevicePowerBatchPowerOff(login, device) {
414
+ return this.httpClient.post(`${login.printerURL}/machine/device_power/off?device=${device}`);
415
+ }
416
+ async getMachineWledStrips(login) {
417
+ return this.httpClient.get(`${login.printerURL}/machine/wled/strips`);
418
+ }
419
+ async getMachineWledStatuses(login, strips) {
420
+ return this.httpClient.get(`${login.printerURL}/machine/wled/status?${strips.join("&")}`);
421
+ }
422
+ async postMachineWledPowerOn(login, strips) {
423
+ return this.httpClient.post(`${login.printerURL}/machine/wled/on?${strips.join("&")}`);
424
+ }
425
+ async postMachineWledPowerOff(login, strips) {
426
+ return this.httpClient.post(`${login.printerURL}/machine/wled/off?${strips.join("&")}`);
427
+ }
428
+ async postMachineWledPowerStripAction(login, strips) {
429
+ return this.httpClient.post(`${login.printerURL}/machine/wled/toggle?${strips.join("&")}`);
430
+ }
431
+ async getMachineWledStripAction(login, strip, action, controlParams) {
432
+ const queryParams = Object.entries(controlParams).map(([k, v])=>`${k}=${v}`).join("&");
433
+ return this.httpClient.get(`${login.printerURL}/machine/wled/strip?strip=${strip}&action=${action}&${queryParams}`);
434
+ }
435
+ async getServerSensorsList(login) {
436
+ return this.httpClient.get(`${login.printerURL}/server/sensors/list`);
437
+ }
438
+ async getServerSensorItem(login, sensor) {
439
+ return this.httpClient.get(`${login.printerURL}/server/sensors/info?sensor=${sensor}`);
440
+ }
441
+ async getServerSensorMeasurements(login, sensor) {
442
+ return this.httpClient.get(`${login.printerURL}/server/sensors/measurements?sensor=${sensor}`);
443
+ }
444
+ async getServerSensorMeasurementsBatch(login) {
445
+ return this.httpClient.get(`${login.printerURL}/server/sensors/measurements`);
446
+ }
447
+ async getServerSpoolmanStatus(login) {
448
+ return this.httpClient.get(`${login.printerURL}/server/spoolman/status`);
449
+ }
450
+ async postServerSpoolmanActiveSpool(login, spoolId) {
451
+ return this.httpClient.post(`${login.printerURL}/server/spoolman/spool_id`, {
452
+ spool_id: spoolId
453
+ });
454
+ }
455
+ async getServerSpoolmanActiveSpool(login) {
456
+ return this.httpClient.get(`${login.printerURL}/server/spoolman/spool_id`);
457
+ }
458
+ async postServerSpoolmanProxyRequest(login, body) {
459
+ return this.httpClient.post(`${login.printerURL}/server/spoolman/proxy`, body);
460
+ }
461
+ async getApiVersion(login) {
462
+ return this.httpClient.get(`${login.printerURL}/api/version`);
463
+ }
464
+ async getServerVersion(login) {
465
+ return this.httpClient.get(`${login.printerURL}/api/server`);
466
+ }
467
+ async getApiLogin(login) {
468
+ return this.httpClient.get(`${login.printerURL}/api/login`);
469
+ }
470
+ async getApiSettings(login) {
471
+ return this.httpClient.get(`${login.printerURL}/api/settings`);
472
+ }
473
+ async getApiJob(login) {
474
+ return this.httpClient.get(`${login.printerURL}/api/job`);
475
+ }
476
+ async getApiPrinter(login) {
477
+ return this.httpClient.get(`${login.printerURL}/api/printer`);
478
+ }
479
+ async postApiPrinterCommand(login, commands) {
480
+ return this.httpClient.post(`${login.printerURL}/api/command`, {
481
+ commands
482
+ });
483
+ }
484
+ async getApiProfiles(login) {
485
+ return this.httpClient.get(`${login.printerURL}/api/printerprofiles`);
486
+ }
487
+ async getServerHistoryList(login, limit, start, since, before, order = "desc") {
488
+ const params = `limit=${limit}&start=${start}&before=${before}&since=${since}&order=${order}`;
489
+ return this.httpClient.get(`${login.printerURL}/server/history/list?${params}`);
490
+ }
491
+ async getServerHistoryTotals(login) {
492
+ return this.httpClient.get(`${login.printerURL}/server/history/totals`);
493
+ }
494
+ async postServerHistoryResetTotals(login) {
495
+ return this.httpClient.post(`${login.printerURL}/server/history/reset_totals`);
496
+ }
497
+ async getServerHistoryJob(login, uid) {
498
+ return this.httpClient.get(`${login.printerURL}/server/history/job?uid=${uid}`);
499
+ }
500
+ async deleteServerHistoryJob(login, uid) {
501
+ const base = `${login.printerURL}/server/history/job`;
502
+ const url = !!uid?.length ? `${base}?uid=${uid}` : `${base}?all=true`;
503
+ return this.httpClient.get(url);
504
+ }
505
+ }
506
+
507
+ //# sourceMappingURL=moonraker.client.js.map