@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
@@ -8,89 +8,37 @@ Object.defineProperty(exports, "OctoprintClient", {
8
8
  return OctoprintClient;
9
9
  }
10
10
  });
11
- const _fs = /*#__PURE__*/ _interop_require_wildcard(require("fs"));
12
- const _path = /*#__PURE__*/ _interop_require_default(require("path"));
11
+ const _fs = require("fs");
13
12
  const _formdata = /*#__PURE__*/ _interop_require_default(require("form-data"));
14
- const _octoprintserviceconstants = require("./constants/octoprint-service.constants");
15
13
  const _eventconstants = require("../../constants/event.constants");
16
14
  const _runtimeexceptions = require("../../exceptions/runtime.exceptions");
17
15
  const _octoprintapiroutes = require("./octoprint-api.routes");
18
- const _axios = /*#__PURE__*/ _interop_require_default(require("axios"));
19
16
  const _fileutils = require("./utils/file.utils");
20
- const _node = require("@sentry/node");
17
+ const _octoprinthttpclientbuilder = require("./utils/octoprint-http-client.builder");
21
18
  function _interop_require_default(obj) {
22
19
  return obj && obj.__esModule ? obj : {
23
20
  default: obj
24
21
  };
25
22
  }
26
- function _getRequireWildcardCache(nodeInterop) {
27
- if (typeof WeakMap !== "function") return null;
28
- var cacheBabelInterop = new WeakMap();
29
- var cacheNodeInterop = new WeakMap();
30
- return (_getRequireWildcardCache = function(nodeInterop) {
31
- return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
32
- })(nodeInterop);
33
- }
34
- function _interop_require_wildcard(obj, nodeInterop) {
35
- if (!nodeInterop && obj && obj.__esModule) {
36
- return obj;
37
- }
38
- if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
39
- return {
40
- default: obj
41
- };
42
- }
43
- var cache = _getRequireWildcardCache(nodeInterop);
44
- if (cache && cache.has(obj)) {
45
- return cache.get(obj);
46
- }
47
- var newObj = {
48
- __proto__: null
49
- };
50
- var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
51
- for(var key in obj){
52
- if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
53
- var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
54
- if (desc && (desc.get || desc.set)) {
55
- Object.defineProperty(newObj, key, desc);
56
- } else {
57
- newObj[key] = obj[key];
58
- }
59
- }
60
- }
61
- newObj.default = obj;
62
- if (cache) {
63
- cache.set(obj, newObj);
64
- }
65
- return newObj;
66
- }
67
23
  class OctoprintClient extends _octoprintapiroutes.OctoprintRoutes {
24
+ httpClientFactory;
68
25
  eventEmitter2;
69
- httpClient;
70
26
  logger;
71
- constructor({ settingsStore, httpClient, loggerFactory, eventEmitter2 }){
72
- super({
73
- settingsStore
74
- });
75
- this.httpClient = httpClient;
76
- this.eventEmitter2 = eventEmitter2;
27
+ constructor(loggerFactory, httpClientFactory, eventEmitter2){
28
+ super(), this.httpClientFactory = httpClientFactory, this.eventEmitter2 = eventEmitter2;
77
29
  this.logger = loggerFactory(OctoprintClient.name);
78
30
  }
79
- async getApiVersion(login, timeout) {
80
- const { url, options } = this.prepareRequest(login, this.apiVersion, timeout);
81
- return await this.httpClient.get(url, options);
31
+ async getApiVersion(login) {
32
+ return await this.createClient(login).get(this.apiVersion);
82
33
  }
83
34
  async getServer(login) {
84
- const { url, options } = this.prepareRequest(login, this.apiServer);
85
- return await this.httpClient.get(url, options);
35
+ return await this.createClient(login).get(this.apiServer);
86
36
  }
87
37
  async login(login) {
88
- const { url, options } = this.prepareRequest(login, this.apiLogin);
89
- return await this.httpClient.post(url, {}, options);
38
+ return await this.createClient(login).post(this.apiLogin);
90
39
  }
91
40
  async sendConnectionCommand(login, commandData) {
92
- const { url, options, data } = this.prepareJsonRequest(login, this.apiConnection, commandData);
93
- await this.httpClient.post(url, data, options);
41
+ await this.createClient(login).post(this.apiConnection, commandData);
94
42
  }
95
43
  async sendPrintHeadJogCommand(login, amounts) {
96
44
  const axesToHome = {
@@ -123,135 +71,87 @@ class OctoprintClient extends _octoprintapiroutes.OctoprintRoutes {
123
71
  return this.sendPrintHeadCommand(login, commandData);
124
72
  }
125
73
  async sendPrintHeadCommand(login, commandData) {
126
- const { url, options, data } = this.prepareJsonRequest(login, this.apiPrinterHead, commandData);
127
- const response = await this.httpClient.post(url, data, options);
128
- return response?.data;
74
+ await this.createClient(login).post(this.apiPrinterHead, commandData);
129
75
  }
130
76
  async sendCustomGCodeCommand(login, commandString) {
131
- const { url, options, data } = this.prepareJsonRequest(login, this.apiPrinterCustomCommand, {
77
+ await this.createClient(login).post(this.apiPrinterCustomCommand, {
132
78
  command: commandString
133
79
  });
134
- const response = await this.httpClient.post(url, data, options);
135
- return response?.data;
136
80
  }
137
81
  async getJob(login) {
138
- const { url, options } = this.prepareRequest(login, this.apiJob);
139
- const response = await this.httpClient.get(url, options);
140
- return response?.data;
82
+ return await this.createClient(login).get(this.apiJob);
141
83
  }
142
84
  async sendJobCommand(login, commandData) {
143
- const { url, options, data } = this.prepareJsonRequest(login, this.apiJob, commandData);
144
- const response = await this.httpClient.post(url, data, options);
145
- return response?.data;
85
+ return await this.createClient(login).post(this.apiJob, commandData);
146
86
  }
147
87
  async sendBedTempCommand(login, targetTemp) {
148
- const { url, options, data } = this.prepareJsonRequest(login, this.apiPrinterBed, this.getBedTargetCommand(targetTemp));
149
- const response = await this.httpClient.post(url, data, options);
150
- return response?.data;
88
+ const data = this.getBedTargetCommand(targetTemp);
89
+ return await this.createClient(login).post(this.apiPrinterBed, data);
151
90
  }
152
91
  async getSettings(login) {
153
- const { url, options } = this.prepareRequest(login, this.apiSettingsPart);
154
- const response = await this.httpClient.get(url, options);
155
- return response?.data;
92
+ return await this.createClient(login).get(this.apiSettingsPart);
156
93
  }
157
94
  async updatePrinterNameSetting(login, printerName) {
158
- const { url, options } = this.prepareRequest(login, this.apiSettingsPart);
159
95
  const settingPatch = this.printerNameSetting(printerName);
160
- const response = await this.httpClient.post(url, settingPatch, options);
161
- return response?.data;
162
- }
163
- async updateFirmwareUpdaterSettings(login, firmwareUpdateConfig) {
164
- const { url, options } = this.prepareRequest(login, this.apiSettingsPart);
165
- const settingPatch = this.pluginFirmwareUpdaterSettings(firmwareUpdateConfig);
166
- const response = await this.httpClient.post(url, settingPatch, options);
167
- return response?.data;
96
+ return await this.createClient(login).post(this.apiSettingsPart, settingPatch);
168
97
  }
169
98
  async setGCodeAnalysis(login, enabled) {
170
- const { url, options } = this.prepareRequest(login, this.apiSettingsPart);
171
99
  const settingPatch = this.gcodeAnalysisSetting(enabled);
172
- const response = await this.httpClient.post(url, settingPatch, options);
173
- return response?.data;
100
+ return await this.createClient(login).post(this.apiSettingsPart, settingPatch);
174
101
  }
175
102
  async getCurrentUser(login) {
176
- const { url, options } = this.prepareRequest(login, this.apiCurrentUser);
177
- const response = await this.httpClient.get(url, options);
178
- return response?.data;
103
+ return await this.createClient(login).get(this.apiCurrentUser);
179
104
  }
180
105
  async getAdminUserOrDefault(login) {
181
- const currentUser = await this.getCurrentUser(login);
182
- return currentUser?.name;
106
+ const currentUserResponse = await this.getCurrentUser(login);
107
+ return currentUserResponse?.data?.name;
183
108
  }
184
109
  async getUsers(login) {
185
- const { url, options } = this.prepareRequest(login, this.apiUsers);
186
- const response = await this.httpClient.get(url, options);
187
- return response?.data;
110
+ return await this.createClient(login).get(this.apiUsers);
188
111
  }
189
112
  async getLocalFiles(login, recursive = false) {
190
- const { url, options } = this.prepareRequest(login, this.apiGetFiles(recursive));
191
- const response = await this.httpClient.get(url, options);
113
+ const response = await this.createClient(login).get(this.apiGetFiles(recursive));
192
114
  return response?.data?.files?.filter((f)=>f.date && f.type === "machinecode").map((f)=>{
193
115
  return (0, _fileutils.normalizePrinterFile)(f);
194
116
  }) || [];
195
117
  }
196
118
  async getFile(login, path) {
197
- const pathUrl = this.apiFile(path);
198
- const { url, options } = this.prepareRequest(login, pathUrl);
199
- const response = await this.httpClient.get(url, options);
200
- try {
201
- return (0, _fileutils.normalizePrinterFile)(response?.data);
202
- } catch (e) {
203
- (0, _node.captureException)(e);
204
- this.logger.error("File was empty or normalization failed");
205
- return;
206
- }
119
+ const urlPath = this.apiFile(path);
120
+ const response = await this.createClient(login).get(urlPath);
121
+ return (0, _fileutils.normalizePrinterFile)(response?.data);
207
122
  }
208
123
  async downloadFile(login, path) {
209
- const pathUrl = this.downloadFileLocal(path);
210
- const { url, options } = this.prepareRequest(login, pathUrl);
211
- return await this.httpClient.get(url, {
212
- responseType: "stream",
213
- ...options
124
+ const urlPath = this.downloadFileLocal(path);
125
+ return await this.createClient(login).get(urlPath, {
126
+ responseType: "stream"
214
127
  });
215
128
  }
216
- getFileChunk(login, filePath, startBytes, endBytes) {
129
+ async getFileChunk(login, filePath, startBytes, endBytes) {
217
130
  const pathUrl = this.downloadFileLocal(filePath);
218
- const { url, options } = this.prepareRequest(login, pathUrl);
219
- return this.httpClient.get(url, {
220
- headers: {
221
- ...options.headers,
131
+ return await this.createClient(login, (o)=>o.withHeaders({
222
132
  Range: `bytes=${startBytes}-${endBytes}`
223
- },
224
- timeout: options.timeout
225
- });
133
+ })).get(pathUrl);
226
134
  }
227
135
  async createFolder(login, path, foldername) {
228
- const { url, options } = this.prepareRequest(login, this.apiFilesLocal);
229
136
  const formData = new _formdata.default();
230
137
  formData.append("path", path);
231
138
  formData.append("foldername", foldername);
232
139
  const headers = {
233
- ...options.headers,
234
140
  ...formData.getHeaders(),
235
- "Content-Length": formData.getLengthSync()
141
+ "Content-Length": formData.getLengthSync().toString()
236
142
  };
237
- const response = await this.httpClient.post(url, formData, {
238
- headers
239
- });
240
- return response?.data;
143
+ return await this.createClient(login, (o)=>o.withHeaders(headers)).post(this.apiFilesLocal, formData);
241
144
  }
242
145
  async moveFileOrFolder(login, path, destination) {
243
- const { url, options } = this.prepareRequest(login, this.apiFile(path));
244
146
  const command = this.moveFileCommand(destination);
245
- const response = await this.httpClient.post(url, command, options);
246
- return response?.data;
147
+ return await this.createClient(login).post(this.apiFile(path), command);
247
148
  }
248
149
  async postSelectPrintFile(login, path, print) {
249
- const { url, options } = this.prepareRequest(login, this.apiFile(path));
250
150
  const command = this.selectCommand(print);
251
- await this.httpClient.post(url, command, options);
151
+ await this.createClient(login).post(this.apiFile(path), command);
252
152
  }
253
- async uploadFileAsMultiPart(login, multerFileOrBuffer, commands, token) {
254
- const { url, options } = this.prepareRequest(login, this.apiFilesLocal, null, _octoprintserviceconstants.multiPartContentType);
153
+ async uploadFileAsMultiPart(login, multerFileOrBuffer, commands, progressToken) {
154
+ const urlPath = this.apiFilesLocal;
255
155
  const formData = new _formdata.default();
256
156
  if (commands.select) {
257
157
  formData.append("select", "true");
@@ -259,42 +159,44 @@ class OctoprintClient extends _octoprintapiroutes.OctoprintRoutes {
259
159
  if (commands.print) {
260
160
  formData.append("print", "true");
261
161
  }
262
- let source = multerFileOrBuffer.buffer;
263
- const isPhysicalFile = !source;
264
- if (isPhysicalFile) {
265
- source = (0, _fs.createReadStream)(multerFileOrBuffer.path);
162
+ let fileBuffer = multerFileOrBuffer.buffer;
163
+ const filename = multerFileOrBuffer.originalname;
164
+ if (fileBuffer) {
165
+ this.logger.log("Attaching file from memory buffer to formdata for upload");
166
+ formData.append("file", fileBuffer, {
167
+ filename
168
+ });
169
+ } else {
170
+ const filePath = multerFileOrBuffer.path;
171
+ const fileStream = (0, _fs.createReadStream)(filePath);
172
+ this.logger.log(`Attaching file from disk to formdata for upload`);
173
+ formData.append("file", fileStream, {
174
+ filename
175
+ });
266
176
  }
267
- formData.append("file", source, {
268
- filename: multerFileOrBuffer.originalname
269
- });
270
177
  const result = await new Promise((resolve, reject)=>{
271
178
  return formData.getLength((err, length)=>{
272
- if (err) resolve(null);
179
+ if (err) reject(new Error("Could not retrieve formData length"));
273
180
  resolve(length);
274
181
  });
275
182
  });
276
183
  try {
277
- const headers = {
278
- ...options.headers,
279
- ...formData.getHeaders(),
280
- "Content-Length": result
281
- };
282
- const response = await (0, _axios.default)({
283
- method: "POST",
284
- url,
285
- data: formData,
286
- headers,
287
- onUploadProgress: (p)=>{
288
- if (token) {
289
- this.eventEmitter2.emit(`${(0, _eventconstants.uploadProgressEvent)(token)}`, token, p);
184
+ const response = await this.createClient(login, (builder)=>builder.withMultiPartFormData().withHeaders({
185
+ ...formData.getHeaders(),
186
+ "Content-Length": result.toString()
187
+ }).withOnUploadProgress((p)=>{
188
+ if (progressToken) {
189
+ this.eventEmitter2.emit(`${(0, _eventconstants.uploadProgressEvent)(progressToken)}`, progressToken, p);
290
190
  }
291
- }
292
- });
191
+ })).post(urlPath, formData);
192
+ if (progressToken) {
193
+ this.eventEmitter2.emit(`${(0, _eventconstants.uploadDoneEvent)(progressToken)}`, progressToken);
194
+ }
293
195
  return response.data;
294
196
  } catch (e) {
295
- this.eventEmitter2.emit(`${(0, _eventconstants.uploadProgressEvent)(token)}`, token, {
296
- failed: true
297
- }, e);
197
+ if (progressToken) {
198
+ this.eventEmitter2.emit(`${(0, _eventconstants.uploadFailedEvent)(progressToken)}`, progressToken, e?.message);
199
+ }
298
200
  let data;
299
201
  try {
300
202
  data = JSON.parse(e.response?.body);
@@ -311,201 +213,43 @@ class OctoprintClient extends _octoprintapiroutes.OctoprintRoutes {
311
213
  }
312
214
  }
313
215
  async deleteFileOrFolder(login, path) {
314
- const { url, options } = this.prepareRequest(login, this.apiFile(path));
315
- const response = await this.httpClient.delete(url, options);
316
- return response?.data;
216
+ await this.createClient(login).delete(this.apiFile(path));
317
217
  }
318
218
  async getPrinterCurrent(login, history, limit, exclude) {
319
219
  const pathUrl = this.apiPrinterCurrent(history, limit, exclude);
320
- const { url, options } = this.prepareRequest(login, pathUrl);
321
- return await this.httpClient.get(url, options);
220
+ return await this.createClient(login).get(pathUrl);
322
221
  }
323
222
  async getConnection(login) {
324
- const { url, options } = this.prepareRequest(login, this.apiConnection);
325
- const response = await this.httpClient.get(url, options);
326
- return response?.data;
223
+ return await this.createClient(login).get(this.apiConnection);
327
224
  }
328
225
  async getPrinterProfiles(login) {
329
- const { url, options } = this.prepareRequest(login, this.apiPrinterProfiles);
330
- const response = await this.httpClient.get(url, options);
331
- return response?.data;
332
- }
333
- async postSoftwareUpdate(login, targets) {
334
- const { url, options } = this.prepareJsonRequest(login, this.pluginSoftwareUpdateUpdate, {
335
- targets
336
- });
337
- const response = await this.httpClient.post(url, {}, options);
338
- return response?.data;
339
- }
340
- async getPluginManagerPlugins(login) {
341
- const { url, options } = this.prepareRequest(login, this.pluginManagerPlugins);
342
- const response = await this.httpClient.get(url, options);
343
- return response?.data;
344
- }
345
- async getPluginManagerPlugin(login, pluginName) {
346
- const { url, options } = this.prepareRequest(login, this.pluginManagerPlugin(pluginName));
347
- const response = await this.httpClient.get(url, options);
348
- return response?.data;
349
- }
350
- async postApiPluginManagerCommand(login, pluginCommand, pluginUrl) {
351
- const { url, options } = this.prepareRequest(login, this.apiPluginManager);
352
- const command = this.pluginManagerCommand(pluginCommand, pluginUrl);
353
- const response = await this.httpClient.post(url, command, options);
354
- return response?.data;
355
- }
356
- async postPluginFirmwareUpdateFlash(currentPrinterId, login, firmwarePath) {
357
- const { url, options } = this.prepareRequest(login, this.pluginFirmwareUpdaterFlash, null, _octoprintserviceconstants.multiPartContentType);
358
- const formData = new _formdata.default();
359
- formData.append("port", "/dev/op2");
360
- formData.append("profile", "default");
361
- const filename = _path.default.basename(firmwarePath);
362
- const fileReadStream = _fs.default.createReadStream(firmwarePath);
363
- formData.append("file", fileReadStream, {
364
- filename
365
- });
366
- try {
367
- const headers = {
368
- ...options.headers,
369
- ...formData.getHeaders()
370
- };
371
- const response = await this.httpClient.post(url, {
372
- body: formData,
373
- headers,
374
- uploadProgress: (p)=>{
375
- if (currentPrinterId) {
376
- this.eventEmitter2.emit(`${(0, _eventconstants.firmwareFlashUploadEvent)(currentPrinterId)}`, currentPrinterId, p);
377
- }
378
- }
379
- });
380
- return response?.data;
381
- } catch (e) {
382
- this.eventEmitter2.emit(`${(0, _eventconstants.uploadProgressEvent)(currentPrinterId)}`, currentPrinterId, {
383
- failed: true
384
- }, e);
385
- let data;
386
- try {
387
- data = JSON.parse(e.response?.body);
388
- } catch {
389
- data = e.response?.body;
390
- }
391
- throw new _runtimeexceptions.ExternalServiceError({
392
- error: e.message,
393
- statusCode: e.response?.statusCode,
394
- data,
395
- success: false,
396
- stack: e.stack
397
- }, "OctoPrint");
398
- }
399
- }
400
- async getPluginFirmwareUpdateStatus(login) {
401
- const { url, options } = this.prepareRequest(login, this.pluginFirmwareUpdaterStatus);
402
- const response = await this.httpClient.get(url, options);
403
- return response?.data;
404
- }
405
- async fetchOctoPrintPlugins() {
406
- const { url, options } = this.prepareAnonymousRequest(_octoprintserviceconstants.pluginRepositoryUrl);
407
- const response = await this.httpClient.get(url, options);
408
- return response?.data;
226
+ return await this.createClient(login).get(this.apiPrinterProfiles);
409
227
  }
410
228
  async getSystemInfo(login) {
411
- const { url, options } = this.prepareRequest(login, this.apiSystemInfo);
412
- const response = await this.httpClient.get(url, options);
413
- return response?.data;
229
+ return await this.createClient(login).get(this.apiSystemInfo);
414
230
  }
415
231
  async getSystemCommands(login) {
416
- const { url, options } = this.prepareRequest(login, this.apiSystemCommands);
417
- const response = await this.httpClient.get(url, options);
418
- return response?.data;
232
+ return await this.createClient(login).get(this.apiSystemCommands);
419
233
  }
420
234
  async postServerRestartCommand(login) {
421
- const { url, options } = this.prepareRequest(login, this.apiServerRestartCommand);
422
- const response = await this.httpClient.post(url, {}, options);
423
- return response?.data;
424
- }
425
- async getSoftwareUpdateCheck(login, force) {
426
- const { url, options } = this.prepareRequest(login, this.apiSoftwareUpdateCheck(force));
427
- const response = await this.httpClient.get(url, options);
428
- return response?.data;
429
- }
430
- async getPluginPiSupport(login) {
431
- const { url, options } = this.prepareRequest(login, this.apiPluginPiSupport);
432
- const response = await this.httpClient.get(url, options);
433
- return response?.data;
434
- }
435
- async deleteTimeLapse(login, fileName) {
436
- const path = `${this.apiTimelapse}/${fileName}`;
437
- const { url, options } = this.prepareRequest(login, path);
438
- const response = await this.httpClient.delete(url, options);
439
- return response?.data;
440
- }
441
- async listUnrenderedTimeLapses(login) {
442
- const path = `${this.apiTimelapse}?unrendered=true`;
443
- const { url, options } = this.prepareRequest(login, path);
444
- const response = await this.httpClient.get(url, options);
445
- return response?.data;
446
- }
447
- async listProfiles(login) {
448
- const { url, options } = this.prepareRequest(login, this.apiProfiles);
449
- const response = await this.httpClient.get(url, options);
450
- return response?.data;
451
- }
452
- async getBackupOverview(login) {
453
- const { url, options } = this.prepareRequest(login, this.pluginBackupIndex);
454
- const response = await this.httpClient.get(url, options);
455
- return response?.data;
456
- }
457
- async getBackups(login) {
458
- const { url, options } = this.prepareRequest(login, this.pluginBackupEndpoint);
459
- const response = await this.httpClient.get(url, options);
460
- return response?.data;
461
- }
462
- async createBackup(login, excludeArray) {
463
- const { url, options } = this.prepareRequest(login, this.pluginBackupEndpoint);
464
- const response = await this.httpClient.post(url, {
465
- exclude: excludeArray
466
- }, options);
467
- return response?.data;
468
- }
469
- async getDownloadBackupStream(login, filename) {
470
- const { url, options } = this.prepareRequest(login, this.pluginBackupFileDownload(filename));
471
- const response = await this.httpClient.get(url, {
472
- responseType: "stream",
473
- ...options
474
- }).catch((e)=>{
475
- throw new _runtimeexceptions.ExternalServiceError({
476
- error: e.message,
477
- statusCode: e.response?.statusCode,
478
- success: false,
479
- stack: e.stack
480
- }, "OctoPrint");
481
- });
482
- return response.data;
235
+ await this.createClient(login).post(this.apiServerRestartCommand);
483
236
  }
484
- async forwardRestoreBackupFileStream(login, buffer) {
485
- const { url, options } = this.prepareRequest(login, this.pluginBackupFileRestore, null, _octoprintserviceconstants.multiPartContentType);
486
- const formData = new _formdata.default();
487
- formData.append("file", buffer, {
488
- filename: "op-fdmm-restore.zip"
489
- });
490
- const response = await this.httpClient.post(url, formData, {
491
- headers: {
492
- ...options.headers,
493
- ...formData.getHeaders()
237
+ createClient(login, buildFluentOptions) {
238
+ const baseAddress = login.printerURL;
239
+ return this.createAnonymousClient(baseAddress, (o)=>{
240
+ if (buildFluentOptions) {
241
+ buildFluentOptions(o);
494
242
  }
495
- }).catch((e)=>{
496
- throw new _runtimeexceptions.ExternalServiceError({
497
- error: e.message,
498
- statusCode: e.response?.statusCode,
499
- success: false,
500
- stack: e.stack
501
- }, "OctoPrint");
243
+ o.withXApiKeyHeader(login.apiKey);
502
244
  });
503
- return response?.data;
504
245
  }
505
- async deleteBackup(login, filename) {
506
- const { url, options } = this.prepareRequest(login, this.pluginBackupFile(filename));
507
- const response = await this.httpClient.delete(url, options);
508
- return response?.data;
246
+ createAnonymousClient(baseAddress, buildFluentOptions) {
247
+ const builder = new _octoprinthttpclientbuilder.OctoprintHttpClientBuilder();
248
+ return this.httpClientFactory.createClientWithBaseUrl(builder, baseAddress, (b)=>{
249
+ if (buildFluentOptions) {
250
+ buildFluentOptions(b);
251
+ }
252
+ });
509
253
  }
510
254
  }
511
255
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/services/octoprint/octoprint.client.ts"],"names":["OctoprintClient","OctoprintRoutes","eventEmitter2","httpClient","logger","constructor","settingsStore","loggerFactory","name","getApiVersion","login","timeout","url","options","prepareRequest","apiVersion","get","getServer","apiServer","apiLogin","post","sendConnectionCommand","commandData","data","prepareJsonRequest","apiConnection","sendPrintHeadJogCommand","amounts","axesToHome","x","y","z","command","sendPrintHeadCommand","sendPrintHeadHomeCommand","axes","apiPrinterHead","response","sendCustomGCodeCommand","commandString","apiPrinterCustomCommand","getJob","apiJob","sendJobCommand","sendBedTempCommand","targetTemp","apiPrinterBed","getBedTargetCommand","getSettings","apiSettingsPart","updatePrinterNameSetting","printerName","settingPatch","printerNameSetting","updateFirmwareUpdaterSettings","firmwareUpdateConfig","pluginFirmwareUpdaterSettings","setGCodeAnalysis","enabled","gcodeAnalysisSetting","getCurrentUser","apiCurrentUser","getAdminUserOrDefault","currentUser","getUsers","apiUsers","getLocalFiles","recursive","apiGetFiles","files","filter","f","date","type","map","normalizePrinterFile","getFile","path","pathUrl","apiFile","e","captureException","error","downloadFile","downloadFileLocal","responseType","getFileChunk","filePath","startBytes","endBytes","headers","Range","createFolder","foldername","apiFilesLocal","formData","FormData","append","getHeaders","getLengthSync","moveFileOrFolder","destination","moveFileCommand","postSelectPrintFile","print","selectCommand","uploadFileAsMultiPart","multerFileOrBuffer","commands","token","multiPartContentType","select","source","buffer","isPhysicalFile","createReadStream","filename","originalname","result","Promise","resolve","reject","getLength","err","length","axios","method","onUploadProgress","p","emit","uploadProgressEvent","failed","JSON","parse","body","ExternalServiceError","message","statusCode","success","stack","deleteFileOrFolder","delete","getPrinterCurrent","history","limit","exclude","apiPrinterCurrent","getConnection","getPrinterProfiles","apiPrinterProfiles","postSoftwareUpdate","targets","pluginSoftwareUpdateUpdate","getPluginManagerPlugins","pluginManagerPlugins","getPluginManagerPlugin","pluginName","pluginManagerPlugin","postApiPluginManagerCommand","pluginCommand","pluginUrl","apiPluginManager","pluginManagerCommand","postPluginFirmwareUpdateFlash","currentPrinterId","firmwarePath","pluginFirmwareUpdaterFlash","basename","fileReadStream","fs","uploadProgress","firmwareFlashUploadEvent","getPluginFirmwareUpdateStatus","pluginFirmwareUpdaterStatus","fetchOctoPrintPlugins","prepareAnonymousRequest","pluginRepositoryUrl","getSystemInfo","apiSystemInfo","getSystemCommands","apiSystemCommands","postServerRestartCommand","apiServerRestartCommand","getSoftwareUpdateCheck","force","apiSoftwareUpdateCheck","getPluginPiSupport","apiPluginPiSupport","deleteTimeLapse","fileName","apiTimelapse","listUnrenderedTimeLapses","listProfiles","apiProfiles","getBackupOverview","pluginBackupIndex","getBackups","pluginBackupEndpoint","createBackup","excludeArray","getDownloadBackupStream","pluginBackupFileDownload","catch","forwardRestoreBackupFileStream","pluginBackupFileRestore","deleteBackup","pluginBackupFile"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/services/octoprint/octoprint.client.ts"],"names":["OctoprintClient","OctoprintRoutes","logger","constructor","loggerFactory","httpClientFactory","eventEmitter2","name","getApiVersion","login","createClient","get","apiVersion","getServer","apiServer","post","apiLogin","sendConnectionCommand","commandData","apiConnection","sendPrintHeadJogCommand","amounts","axesToHome","x","y","z","command","sendPrintHeadCommand","sendPrintHeadHomeCommand","axes","apiPrinterHead","sendCustomGCodeCommand","commandString","apiPrinterCustomCommand","getJob","apiJob","sendJobCommand","sendBedTempCommand","targetTemp","data","getBedTargetCommand","apiPrinterBed","getSettings","apiSettingsPart","updatePrinterNameSetting","printerName","settingPatch","printerNameSetting","setGCodeAnalysis","enabled","gcodeAnalysisSetting","getCurrentUser","apiCurrentUser","getAdminUserOrDefault","currentUserResponse","getUsers","apiUsers","getLocalFiles","recursive","response","apiGetFiles","files","filter","f","date","type","map","normalizePrinterFile","getFile","path","urlPath","apiFile","downloadFile","downloadFileLocal","responseType","getFileChunk","filePath","startBytes","endBytes","pathUrl","o","withHeaders","Range","createFolder","foldername","formData","FormData","append","headers","getHeaders","getLengthSync","toString","apiFilesLocal","moveFileOrFolder","destination","moveFileCommand","postSelectPrintFile","print","selectCommand","uploadFileAsMultiPart","multerFileOrBuffer","commands","progressToken","select","fileBuffer","buffer","filename","originalname","log","fileStream","createReadStream","result","Promise","resolve","reject","getLength","err","length","Error","builder","withMultiPartFormData","withOnUploadProgress","p","emit","uploadProgressEvent","uploadDoneEvent","e","uploadFailedEvent","message","JSON","parse","body","ExternalServiceError","error","statusCode","success","stack","deleteFileOrFolder","delete","getPrinterCurrent","history","limit","exclude","apiPrinterCurrent","getConnection","getPrinterProfiles","apiPrinterProfiles","getSystemInfo","apiSystemInfo","getSystemCommands","apiSystemCommands","postServerRestartCommand","apiServerRestartCommand","buildFluentOptions","baseAddress","printerURL","createAnonymousClient","withXApiKeyHeader","apiKey","OctoprintHttpClientBuilder","createClientWithBaseUrl","b"],"mappings":"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"}