@fdm-monster/server 1.8.3 → 1.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (448) hide show
  1. package/.env.template +6 -4
  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 +27 -28
  7. package/RELEASE_NOTES.MD +69 -1
  8. package/biome.json +33 -0
  9. package/dist/consoles/download-github-releases.js.map +1 -1
  10. package/dist/consoles/launch-http-servers.js +31 -0
  11. package/dist/consoles/launch-http-servers.js.map +1 -0
  12. package/dist/consoles/mock-octoprint.server.js +291 -0
  13. package/dist/consoles/mock-octoprint.server.js.map +1 -0
  14. package/dist/consoles/mock-prusalink.server.js +57 -0
  15. package/dist/consoles/mock-prusalink.server.js.map +1 -0
  16. package/dist/consoles/utils/api-messages.js +856 -0
  17. package/dist/consoles/utils/api-messages.js.map +1 -0
  18. package/dist/consoles/utils/delayed-memory.storage.js +42 -0
  19. package/dist/consoles/utils/delayed-memory.storage.js.map +1 -0
  20. package/dist/consoles/utils/ws-messages.js +88 -0
  21. package/dist/consoles/utils/ws-messages.js.map +1 -0
  22. package/dist/constants/event.constants.js +5 -21
  23. package/dist/constants/event.constants.js.map +1 -1
  24. package/dist/constants/server-settings.constants.js +8 -12
  25. package/dist/constants/server-settings.constants.js.map +1 -1
  26. package/dist/container.js +13 -14
  27. package/dist/container.js.map +1 -1
  28. package/dist/container.tokens.js +3 -4
  29. package/dist/container.tokens.js.map +1 -1
  30. package/dist/controllers/auth.controller.js +114 -24
  31. package/dist/controllers/auth.controller.js.map +1 -1
  32. package/dist/controllers/batch-call.controller.js +95 -24
  33. package/dist/controllers/batch-call.controller.js.map +1 -1
  34. package/dist/controllers/camera-stream.controller.js +16 -12
  35. package/dist/controllers/camera-stream.controller.js.map +1 -1
  36. package/dist/controllers/custom-gcode.controller.js +116 -40
  37. package/dist/controllers/custom-gcode.controller.js.map +1 -1
  38. package/dist/controllers/dto/update-client-dist.dto.js +0 -21
  39. package/dist/controllers/dto/update-client-dist.dto.js.map +1 -1
  40. package/dist/controllers/first-time-setup.controller.js +54 -18
  41. package/dist/controllers/first-time-setup.controller.js.map +1 -1
  42. package/dist/controllers/floor.controller.js +154 -43
  43. package/dist/controllers/floor.controller.js.map +1 -1
  44. package/dist/controllers/metrics.controller.js +56 -0
  45. package/dist/controllers/metrics.controller.js.map +1 -0
  46. package/dist/controllers/print-completion.controller.js +81 -18
  47. package/dist/controllers/print-completion.controller.js.map +1 -1
  48. package/dist/controllers/printer-files.controller.js +45 -29
  49. package/dist/controllers/printer-files.controller.js.map +1 -1
  50. package/dist/controllers/printer-group.controller.js +123 -33
  51. package/dist/controllers/printer-group.controller.js.map +1 -1
  52. package/dist/controllers/printer-settings.controller.js +73 -26
  53. package/dist/controllers/printer-settings.controller.js.map +1 -1
  54. package/dist/controllers/printer.controller.js +57 -198
  55. package/dist/controllers/printer.controller.js.map +1 -1
  56. package/dist/controllers/server-private.controller.js +153 -39
  57. package/dist/controllers/server-private.controller.js.map +1 -1
  58. package/dist/controllers/server-public.controller.js +87 -88
  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 +25 -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-factory.js +2 -2
  115. package/dist/handlers/logger-factory.js.map +1 -1
  116. package/dist/handlers/logger.js +11 -58
  117. package/dist/handlers/logger.js.map +1 -1
  118. package/dist/handlers/logging/file-logging.transport.js +35 -0
  119. package/dist/handlers/logging/file-logging.transport.js.map +1 -0
  120. package/dist/handlers/logging/loki-logging.transport.js +55 -0
  121. package/dist/handlers/logging/loki-logging.transport.js.map +1 -0
  122. package/dist/handlers/logging/static.logger.js +134 -0
  123. package/dist/handlers/logging/static.logger.js.map +1 -0
  124. package/dist/handlers/validators.js +7 -116
  125. package/dist/handlers/validators.js.map +1 -1
  126. package/dist/index.js +13 -0
  127. package/dist/index.js.map +1 -1
  128. package/dist/middleware/authenticate.js +11 -22
  129. package/dist/middleware/authenticate.js.map +1 -1
  130. package/dist/middleware/database.js.map +1 -1
  131. package/dist/middleware/demo.middleware.js +4 -17
  132. package/dist/middleware/demo.middleware.js.map +1 -1
  133. package/dist/middleware/exception.filter.js +23 -23
  134. package/dist/middleware/exception.filter.js.map +1 -1
  135. package/dist/middleware/global.middleware.js +4 -4
  136. package/dist/middleware/global.middleware.js.map +1 -1
  137. package/dist/middleware/param-converter.middleware.js +81 -0
  138. package/dist/middleware/param-converter.middleware.js.map +1 -0
  139. package/dist/middleware/passport.js +3 -5
  140. package/dist/middleware/passport.js.map +1 -1
  141. package/dist/middleware/printer-resolver.js +37 -0
  142. package/dist/middleware/printer-resolver.js.map +1 -0
  143. package/dist/middleware/printer.js +22 -10
  144. package/dist/middleware/printer.js.map +1 -1
  145. package/dist/middleware/socketio.middleware.js +35 -0
  146. package/dist/middleware/socketio.middleware.js.map +1 -0
  147. package/dist/migrations/1706829146617-InitSqlite.js +1 -1
  148. package/dist/migrations/1706829146617-InitSqlite.js.map +1 -1
  149. package/dist/migrations/1707494762198-PrinterGroup.js +1 -1
  150. package/dist/migrations/1707494762198-PrinterGroup.js.map +1 -1
  151. package/dist/migrations/1708465930665-ChangePrintCompletionDeletePrinterCascade.js +1 -1
  152. package/dist/migrations/1708465930665-ChangePrintCompletionDeletePrinterCascade.js.map +1 -1
  153. package/dist/migrations/1713897879622-AddPrinterType.js +1 -1
  154. package/dist/migrations/1713897879622-AddPrinterType.js.map +1 -1
  155. package/dist/migrations/1745141688926-AddPrinterUsernamePassword.js +229 -0
  156. package/dist/migrations/1745141688926-AddPrinterUsernamePassword.js.map +1 -0
  157. package/dist/models/Auth/Permission.js.map +1 -1
  158. package/dist/models/Auth/RefreshToken.js +1 -1
  159. package/dist/models/Auth/RefreshToken.js.map +1 -1
  160. package/dist/models/Auth/Role.js.map +1 -1
  161. package/dist/models/Auth/User.js.map +1 -1
  162. package/dist/models/CameraStream.js +20 -0
  163. package/dist/models/CameraStream.js.map +1 -1
  164. package/dist/models/CustomGcode.js.map +1 -1
  165. package/dist/models/Floor.js.map +1 -1
  166. package/dist/models/FloorPrinter.js +10 -1
  167. package/dist/models/FloorPrinter.js.map +1 -1
  168. package/dist/models/PrintCompletion.js.map +1 -1
  169. package/dist/models/Printer.js +12 -5
  170. package/dist/models/Printer.js.map +1 -1
  171. package/dist/models/Settings.js +11 -43
  172. package/dist/models/Settings.js.map +1 -1
  173. package/dist/models/index.js +0 -4
  174. package/dist/models/index.js.map +1 -1
  175. package/dist/mongo-migrations/20210713120034-printers-settingsapperance-apikey.js.map +1 -1
  176. package/dist/mongo-migrations/20210907173950-printers-enabled.js.map +1 -1
  177. package/dist/mongo-migrations/20211029110742-user-password-passwordhash.js.map +1 -1
  178. package/dist/mongo-migrations/20230414141005-floor-remove-groupinfloor.js.map +1 -1
  179. package/dist/mongo-migrations/20230427202911-printer-remove-sortindex.js.map +1 -1
  180. package/dist/mongo-migrations/20230716065316-user-remove-name.js.map +1 -1
  181. package/dist/mongo-migrations/20231111081809-printer-flatten-name.js.map +1 -1
  182. package/dist/mongo-migrations/20231111082521-printer-remove-settingsappearance.js.map +1 -1
  183. package/dist/mongo-migrations/20231202183902-printer-files-simpler.js.map +1 -1
  184. package/dist/server.constants.js +8 -4
  185. package/dist/server.constants.js.map +1 -1
  186. package/dist/server.core.js +29 -2
  187. package/dist/server.core.js.map +1 -1
  188. package/dist/server.env.js +22 -18
  189. package/dist/server.env.js.map +1 -1
  190. package/dist/server.host.js +24 -33
  191. package/dist/server.host.js.map +1 -1
  192. package/dist/services/authentication/auth.service.js +15 -20
  193. package/dist/services/authentication/auth.service.js.map +1 -1
  194. package/dist/services/authentication/jwt.service.js +1 -1
  195. package/dist/services/authentication/jwt.service.js.map +1 -1
  196. package/dist/services/core/batch-call.service.js +23 -25
  197. package/dist/services/core/batch-call.service.js.map +1 -1
  198. package/dist/services/core/client-bundle.service.js +78 -136
  199. package/dist/services/core/client-bundle.service.js.map +1 -1
  200. package/dist/services/core/config.service.js.map +1 -1
  201. package/dist/services/core/cradle.service.js +21 -0
  202. package/dist/services/core/cradle.service.js.map +1 -0
  203. package/dist/services/core/github.service.js +2 -2
  204. package/dist/services/core/github.service.js.map +1 -1
  205. package/dist/services/core/http-client.factory.js +1 -1
  206. package/dist/services/core/http-client.factory.js.map +1 -1
  207. package/dist/services/core/logs-manager.service.js +3 -3
  208. package/dist/services/core/logs-manager.service.js.map +1 -1
  209. package/dist/services/core/monsterpi.service.js +1 -1
  210. package/dist/services/core/monsterpi.service.js.map +1 -1
  211. package/dist/services/core/multer.service.js +8 -7
  212. package/dist/services/core/multer.service.js.map +1 -1
  213. package/dist/services/core/server-release.service.js +14 -8
  214. package/dist/services/core/server-release.service.js.map +1 -1
  215. package/dist/services/core/yaml.service.js +16 -17
  216. package/dist/services/core/yaml.service.js.map +1 -1
  217. package/dist/services/interfaces/camera-stream.dto.js +4 -34
  218. package/dist/services/interfaces/camera-stream.dto.js.map +1 -1
  219. package/dist/services/interfaces/custom-gcode.dto.js.map +1 -1
  220. package/dist/services/interfaces/floor.dto.js +5 -47
  221. package/dist/services/interfaces/floor.dto.js.map +1 -1
  222. package/dist/services/interfaces/login.dto.js +2 -0
  223. package/dist/services/interfaces/login.dto.js.map +1 -1
  224. package/dist/services/interfaces/print-completion.dto.js.map +1 -1
  225. package/dist/services/interfaces/printer-group.dto.js +0 -14
  226. package/dist/services/interfaces/printer-group.dto.js.map +1 -1
  227. package/dist/services/interfaces/printer.dto.js +11 -11
  228. package/dist/services/interfaces/printer.dto.js.map +1 -1
  229. package/dist/services/interfaces/settings.dto.js.map +1 -1
  230. package/dist/services/interfaces/task.interfaces.js +6 -0
  231. package/dist/services/interfaces/task.interfaces.js.map +1 -0
  232. package/dist/services/mongoose/camera-stream.service.js +17 -15
  233. package/dist/services/mongoose/camera-stream.service.js.map +1 -1
  234. package/dist/services/mongoose/custom-gcode.service.js +4 -2
  235. package/dist/services/mongoose/custom-gcode.service.js.map +1 -1
  236. package/dist/services/mongoose/floor.service.js +37 -30
  237. package/dist/services/mongoose/floor.service.js.map +1 -1
  238. package/dist/services/mongoose/permission.service.js +1 -1
  239. package/dist/services/mongoose/permission.service.js.map +1 -1
  240. package/dist/services/mongoose/print-completion.service.js +2 -2
  241. package/dist/services/mongoose/print-completion.service.js.map +1 -1
  242. package/dist/services/mongoose/print-completion.shared.js +2 -2
  243. package/dist/services/mongoose/print-completion.shared.js.map +1 -1
  244. package/dist/services/mongoose/printer.service.js +33 -45
  245. package/dist/services/mongoose/printer.service.js.map +1 -1
  246. package/dist/services/mongoose/refresh-token.service.js +5 -8
  247. package/dist/services/mongoose/refresh-token.service.js.map +1 -1
  248. package/dist/services/mongoose/role.service.js +14 -5
  249. package/dist/services/mongoose/role.service.js.map +1 -1
  250. package/dist/services/mongoose/settings.service.js +35 -62
  251. package/dist/services/mongoose/settings.service.js.map +1 -1
  252. package/dist/services/mongoose/user.service.js +8 -7
  253. package/dist/services/mongoose/user.service.js.map +1 -1
  254. package/dist/services/moonraker/constants/{websocket.constants.js → moonraker.constants.js} +1 -1
  255. package/dist/services/moonraker/constants/{websocket.constants.js.map → moonraker.constants.js.map} +1 -1
  256. package/dist/services/moonraker/moonraker-websocket.adapter.js +109 -96
  257. package/dist/services/moonraker/moonraker-websocket.adapter.js.map +1 -1
  258. package/dist/services/moonraker/moonraker.client.js +25 -16
  259. package/dist/services/moonraker/moonraker.client.js.map +1 -1
  260. package/dist/services/moonraker.api.js +5 -7
  261. package/dist/services/moonraker.api.js.map +1 -1
  262. package/dist/services/octoprint/constants/octoprint-service.constants.js +7 -36
  263. package/dist/services/octoprint/constants/octoprint-service.constants.js.map +1 -1
  264. package/dist/services/octoprint/constants/octoprint-websocket.constants.js +12 -3
  265. package/dist/services/octoprint/constants/octoprint-websocket.constants.js.map +1 -1
  266. package/dist/services/octoprint/dto/octoprint-event.dto.js +2 -1
  267. package/dist/services/octoprint/dto/octoprint-event.dto.js.map +1 -1
  268. package/dist/services/octoprint/octoprint-api.routes.js +1 -38
  269. package/dist/services/octoprint/octoprint-api.routes.js.map +1 -1
  270. package/dist/services/octoprint/octoprint-websocket.adapter.js +66 -72
  271. package/dist/services/octoprint/octoprint-websocket.adapter.js.map +1 -1
  272. package/dist/services/octoprint/octoprint.client.js +19 -192
  273. package/dist/services/octoprint/octoprint.client.js.map +1 -1
  274. package/dist/services/octoprint/utils/octoprint-http-client.builder.js.map +1 -1
  275. package/dist/services/octoprint.api.js +10 -19
  276. package/dist/services/octoprint.api.js.map +1 -1
  277. package/dist/services/orm/base.service.js +11 -12
  278. package/dist/services/orm/base.service.js.map +1 -1
  279. package/dist/services/orm/camera-stream.service.js +5 -1
  280. package/dist/services/orm/camera-stream.service.js.map +1 -1
  281. package/dist/services/orm/custom-gcode.service.js +2 -2
  282. package/dist/services/orm/custom-gcode.service.js.map +1 -1
  283. package/dist/services/orm/floor-position.service.js +0 -5
  284. package/dist/services/orm/floor-position.service.js.map +1 -1
  285. package/dist/services/orm/floor.service.js +43 -39
  286. package/dist/services/orm/floor.service.js.map +1 -1
  287. package/dist/services/orm/permission.service.js +3 -4
  288. package/dist/services/orm/permission.service.js.map +1 -1
  289. package/dist/services/orm/print-completion.service.js +2 -4
  290. package/dist/services/orm/print-completion.service.js.map +1 -1
  291. package/dist/services/orm/printer-group.service.js +2 -7
  292. package/dist/services/orm/printer-group.service.js.map +1 -1
  293. package/dist/services/orm/printer.service.js +21 -36
  294. package/dist/services/orm/printer.service.js.map +1 -1
  295. package/dist/services/orm/refresh-token.service.js +5 -11
  296. package/dist/services/orm/refresh-token.service.js.map +1 -1
  297. package/dist/services/orm/role.service.js +11 -10
  298. package/dist/services/orm/role.service.js.map +1 -1
  299. package/dist/services/orm/settings.service.js +37 -133
  300. package/dist/services/orm/settings.service.js.map +1 -1
  301. package/dist/services/orm/user.service.js +13 -15
  302. package/dist/services/orm/user.service.js.map +1 -1
  303. package/dist/services/printer-api.factory.js +9 -6
  304. package/dist/services/printer-api.factory.js.map +1 -1
  305. package/dist/services/printer-api.interface.js +13 -6
  306. package/dist/services/printer-api.interface.js.map +1 -1
  307. package/dist/services/prusa-link/constants/prusalink-event.dto.js +18 -0
  308. package/dist/services/prusa-link/constants/prusalink-event.dto.js.map +1 -0
  309. package/dist/services/prusa-link/constants/prusalink.constants.js +13 -0
  310. package/dist/services/prusa-link/constants/prusalink.constants.js.map +1 -0
  311. package/dist/services/prusa-link/dto/file-response.dto.js +6 -0
  312. package/dist/services/prusa-link/dto/file-response.dto.js.map +1 -0
  313. package/dist/services/{octoprint/dto/plugin.dto.js → prusa-link/dto/file.dto.js} +1 -1
  314. package/dist/services/prusa-link/dto/file.dto.js.map +1 -0
  315. package/dist/services/prusa-link/dto/job-state.dto.js +6 -0
  316. package/dist/services/prusa-link/dto/job-state.dto.js.map +1 -0
  317. package/dist/services/prusa-link/dto/printer-state.dto.js +6 -0
  318. package/dist/services/prusa-link/dto/printer-state.dto.js.map +1 -0
  319. package/dist/services/prusa-link/dto/status.dto.js +6 -0
  320. package/dist/services/prusa-link/dto/status.dto.js.map +1 -0
  321. package/dist/services/prusa-link/dto/version.dto.js +6 -0
  322. package/dist/services/prusa-link/dto/version.dto.js.map +1 -0
  323. package/dist/services/prusa-link/prusa-link-http-polling.adapter.js +142 -0
  324. package/dist/services/prusa-link/prusa-link-http-polling.adapter.js.map +1 -0
  325. package/dist/services/prusa-link/prusa-link.api.js +235 -0
  326. package/dist/services/prusa-link/prusa-link.api.js.map +1 -0
  327. package/dist/services/prusa-link/utils/digest-auth.params.js +6 -0
  328. package/dist/services/prusa-link/utils/digest-auth.params.js.map +1 -0
  329. package/dist/services/prusa-link/utils/digest-auth.util.js +28 -0
  330. package/dist/services/prusa-link/utils/digest-auth.util.js.map +1 -0
  331. package/dist/services/prusa-link/utils/prusa-link-http-client.builder.js +131 -0
  332. package/dist/services/prusa-link/utils/prusa-link-http-client.builder.js.map +1 -0
  333. package/dist/services/socket.factory.js +9 -6
  334. package/dist/services/socket.factory.js.map +1 -1
  335. package/dist/services/{core/task-manager.service.js → task-manager.service.js} +72 -78
  336. package/dist/services/task-manager.service.js.map +1 -0
  337. package/dist/services/validators/camera-service.validation.js +19 -0
  338. package/dist/services/validators/camera-service.validation.js.map +1 -0
  339. package/dist/services/validators/floor-service.validation.js +47 -36
  340. package/dist/services/validators/floor-service.validation.js.map +1 -1
  341. package/dist/services/validators/print-completion-service.validation.js +22 -9
  342. package/dist/services/validators/print-completion-service.validation.js.map +1 -1
  343. package/dist/services/validators/printer-service.validation.js +112 -29
  344. package/dist/services/validators/printer-service.validation.js.map +1 -1
  345. package/dist/services/validators/settings-service.validation.js +79 -66
  346. package/dist/services/validators/settings-service.validation.js.map +1 -1
  347. package/dist/services/validators/user-service.validation.js +17 -16
  348. package/dist/services/validators/user-service.validation.js.map +1 -1
  349. package/dist/services/validators/yaml-service.validation.js +94 -51
  350. package/dist/services/validators/yaml-service.validation.js.map +1 -1
  351. package/dist/shared/default-http-client.builder.js.map +1 -1
  352. package/dist/shared/load-controllers.js +20 -0
  353. package/dist/shared/load-controllers.js.map +1 -0
  354. package/dist/shared/runtime-settings.migration.js +53 -0
  355. package/dist/shared/runtime-settings.migration.js.map +1 -0
  356. package/dist/shared/websocket-rpc-extended.adapter.js +15 -14
  357. package/dist/shared/websocket-rpc-extended.adapter.js.map +1 -1
  358. package/dist/shared/websocket.adapter.js +4 -5
  359. package/dist/shared/websocket.adapter.js.map +1 -1
  360. package/dist/state/file-upload-tracker.cache.js +5 -4
  361. package/dist/state/file-upload-tracker.cache.js.map +1 -1
  362. package/dist/state/file.cache.js +1 -1
  363. package/dist/state/file.cache.js.map +1 -1
  364. package/dist/state/floor.store.js +6 -6
  365. package/dist/state/floor.store.js.map +1 -1
  366. package/dist/state/printer-events.cache.js +21 -22
  367. package/dist/state/printer-events.cache.js.map +1 -1
  368. package/dist/state/printer-files.store.js +6 -8
  369. package/dist/state/printer-files.store.js.map +1 -1
  370. package/dist/state/printer-socket.store.js +27 -50
  371. package/dist/state/printer-socket.store.js.map +1 -1
  372. package/dist/state/printer-thumbnail.cache.js +5 -9
  373. package/dist/state/printer-thumbnail.cache.js.map +1 -1
  374. package/dist/state/printer.cache.js +14 -12
  375. package/dist/state/printer.cache.js.map +1 -1
  376. package/dist/state/settings.store.js +74 -50
  377. package/dist/state/settings.store.js.map +1 -1
  378. package/dist/state/socket-io.gateway.js +39 -36
  379. package/dist/state/socket-io.gateway.js.map +1 -1
  380. package/dist/state/test-printer-socket.store.js +20 -15
  381. package/dist/state/test-printer-socket.store.js.map +1 -1
  382. package/dist/state/validation/create-test-printer.validation.js +13 -11
  383. package/dist/state/validation/create-test-printer.validation.js.map +1 -1
  384. package/dist/task.presets.js.map +1 -1
  385. package/dist/tasks/boot.task.js +14 -19
  386. package/dist/tasks/boot.task.js.map +1 -1
  387. package/dist/tasks/client-bundle.task.js +1 -3
  388. package/dist/tasks/client-bundle.task.js.map +1 -1
  389. package/dist/tasks/print-completion.socketio.task.js +27 -28
  390. package/dist/tasks/print-completion.socketio.task.js.map +1 -1
  391. package/dist/tasks/printer-file-clean.task.js +6 -10
  392. package/dist/tasks/printer-file-clean.task.js.map +1 -1
  393. package/dist/tasks/printer-websocket-restore.task.js +3 -14
  394. package/dist/tasks/printer-websocket-restore.task.js.map +1 -1
  395. package/dist/tasks/printer-websocket.task.js +2 -14
  396. package/dist/tasks/printer-websocket.task.js.map +1 -1
  397. package/dist/tasks/socketio.task.js +6 -33
  398. package/dist/tasks/socketio.task.js.map +1 -1
  399. package/dist/tasks/software-update.task.js +1 -1
  400. package/dist/tasks/software-update.task.js.map +1 -1
  401. package/dist/tasks.js +3 -3
  402. package/dist/tasks.js.map +1 -1
  403. package/dist/utils/array.util.js.map +1 -1
  404. package/dist/utils/cache/key-diff.cache.js.map +1 -1
  405. package/dist/utils/env.utils.js +0 -2
  406. package/dist/utils/env.utils.js.map +1 -1
  407. package/dist/utils/normalize-url.js +3 -2
  408. package/dist/utils/normalize-url.js.map +1 -1
  409. package/dist/utils/printer-type.utils.js.map +1 -1
  410. package/dist/utils/time.utils.js +7 -17
  411. package/dist/utils/time.utils.js.map +1 -1
  412. package/dist/utils/url.utils.js +3 -4
  413. package/dist/utils/url.utils.js.map +1 -1
  414. package/package.json +46 -48
  415. package/tsconfig.json +2 -1
  416. package/.yarn/releases/yarn-4.7.0.cjs +0 -935
  417. package/dist/consoles/check-ports.js +0 -170
  418. package/dist/consoles/check-ports.js.map +0 -1
  419. package/dist/consoles/http-file-receiver.console.js +0 -81
  420. package/dist/consoles/http-file-receiver.console.js.map +0 -1
  421. package/dist/consoles/sqlite-torm.js +0 -31
  422. package/dist/consoles/sqlite-torm.js.map +0 -1
  423. package/dist/consoles/upload-test.js +0 -52
  424. package/dist/consoles/upload-test.js.map +0 -1
  425. package/dist/controllers/plugin-firmware-update.controller.js +0 -234
  426. package/dist/controllers/plugin-firmware-update.controller.js.map +0 -1
  427. package/dist/entities/base.entity.js +0 -29
  428. package/dist/entities/base.entity.js.map +0 -1
  429. package/dist/entities/printer-file.entity.js +0 -140
  430. package/dist/entities/printer-file.entity.js.map +0 -1
  431. package/dist/handlers/cache-manager.js +0 -18
  432. package/dist/handlers/cache-manager.js.map +0 -1
  433. package/dist/models/PrinterFile.js +0 -44
  434. package/dist/models/PrinterFile.js.map +0 -1
  435. package/dist/services/core/task-manager.service.js.map +0 -1
  436. package/dist/services/octoprint/dto/plugin.dto.js.map +0 -1
  437. package/dist/services/octoprint/plugin-base.service.js +0 -101
  438. package/dist/services/octoprint/plugin-base.service.js.map +0 -1
  439. package/dist/services/octoprint/plugin-firmware-update.service.js +0 -100
  440. package/dist/services/octoprint/plugin-firmware-update.service.js.map +0 -1
  441. package/dist/services/octoprint/plugin-repository.cache.js +0 -46
  442. package/dist/services/octoprint/plugin-repository.cache.js.map +0 -1
  443. package/dist/utils/benchmark.util.js +0 -39
  444. package/dist/utils/benchmark.util.js.map +0 -1
  445. package/dist/utils/is-docker.js +0 -40
  446. package/dist/utils/is-docker.js.map +0 -1
  447. package/dist/utils/metric.utils.js +0 -35
  448. package/dist/utils/metric.utils.js.map +0 -1
@@ -10,31 +10,24 @@ Object.defineProperty(exports, "SocketIoTask", {
10
10
  });
11
11
  const _socketiogateway = require("../state/socket-io.gateway");
12
12
  const _eventconstants = require("../constants/event.constants");
13
- const _metricutils = require("../utils/metric.utils");
14
13
  class SocketIoTask {
15
14
  socketIoGateway;
15
+ floorStore;
16
16
  printerSocketStore;
17
17
  printerEventsCache;
18
- floorStore;
18
+ printerCache;
19
19
  fileUploadTrackerCache;
20
20
  eventEmitter2;
21
- printerCache;
22
21
  logger;
23
- settingsStore;
24
- aggregateSizeCounter = 0;
25
- aggregateWindowLength = 100;
26
- aggregateSizes = [];
27
- rounding = 2;
28
- constructor({ socketIoGateway, floorStore, printerSocketStore, printerEventsCache, printerCache, loggerFactory, fileUploadTrackerCache, settingsStore, eventEmitter2 }){
22
+ constructor(loggerFactory, socketIoGateway, floorStore, printerSocketStore, printerEventsCache, printerCache, fileUploadTrackerCache, eventEmitter2){
29
23
  this.socketIoGateway = socketIoGateway;
24
+ this.floorStore = floorStore;
30
25
  this.printerSocketStore = printerSocketStore;
31
26
  this.printerEventsCache = printerEventsCache;
27
+ this.printerCache = printerCache;
32
28
  this.fileUploadTrackerCache = fileUploadTrackerCache;
33
- this.floorStore = floorStore;
34
- this.logger = loggerFactory(SocketIoTask.name);
35
29
  this.eventEmitter2 = eventEmitter2;
36
- this.printerCache = printerCache;
37
- this.settingsStore = settingsStore;
30
+ this.logger = loggerFactory(SocketIoTask.name);
38
31
  this.eventEmitter2.on(_eventconstants.socketIoConnectedEvent, async ()=>{
39
32
  await this.sendUpdate();
40
33
  });
@@ -55,28 +48,8 @@ class SocketIoTask {
55
48
  printerEvents,
56
49
  trackedUploads
57
50
  };
58
- if (this.settingsStore.getDebugSettingsSensitive()?.debugSocketIoBandwidth) {
59
- const kbDataString = Object.entries(socketIoData).map(([id, state])=>{
60
- return `${id} ${(0, _metricutils.formatKB)(state)}`;
61
- }).join(" ");
62
- this.logger.log(kbDataString);
63
- }
64
- const serializedData = JSON.stringify(socketIoData);
65
- const transportDataSize = (0, _metricutils.sizeKB)(serializedData);
66
- this.updateAggregator(transportDataSize);
67
51
  this.socketIoGateway.send(_socketiogateway.IO_MESSAGES.LegacyUpdate, socketIoData);
68
52
  }
69
- updateAggregator(transportDataLength) {
70
- if (this.aggregateSizeCounter >= this.aggregateWindowLength) {
71
- const summedPayloadSize = this.aggregateSizes.reduce((t, n)=>t += n);
72
- const averagePayloadSize = summedPayloadSize / this.aggregateWindowLength;
73
- this.logger.log(`Printer SocketIO metrics ${averagePayloadSize.toFixed(this.rounding)}kB [${this.aggregateWindowLength} TX avg].`);
74
- this.aggregateSizeCounter = 0;
75
- this.aggregateSizes = [];
76
- }
77
- this.aggregateSizes.push(transportDataLength);
78
- ++this.aggregateSizeCounter;
79
- }
80
53
  }
81
54
 
82
55
  //# sourceMappingURL=socketio.task.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/tasks/socketio.task.ts"],"names":["SocketIoTask","socketIoGateway","printerSocketStore","printerEventsCache","floorStore","fileUploadTrackerCache","eventEmitter2","printerCache","logger","settingsStore","aggregateSizeCounter","aggregateWindowLength","aggregateSizes","rounding","constructor","loggerFactory","name","on","socketIoConnectedEvent","sendUpdate","run","floors","listCache","printers","listCachedPrinters","socketStates","getSocketStatesById","printerEvents","getAllKeyValues","trackedUploads","getUploads","socketIoData","getDebugSettingsSensitive","debugSocketIoBandwidth","kbDataString","Object","entries","map","id","state","formatKB","join","log","serializedData","JSON","stringify","transportDataSize","sizeKB","updateAggregator","send","IO_MESSAGES","LegacyUpdate","transportDataLength","summedPayloadSize","reduce","t","n","averagePayloadSize","toFixed","push"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/tasks/socketio.task.ts"],"names":["SocketIoTask","logger","constructor","loggerFactory","socketIoGateway","floorStore","printerSocketStore","printerEventsCache","printerCache","fileUploadTrackerCache","eventEmitter2","name","on","socketIoConnectedEvent","sendUpdate","run","floors","listCache","printers","listCachedPrinters","socketStates","getSocketStatesById","printerEvents","getAllKeyValues","trackedUploads","getUploads","socketIoData","send","IO_MESSAGES","LegacyUpdate"],"mappings":";;;;+BAWaA;;;eAAAA;;;iCAXgC;gCACN;AAUhC,MAAMA;;;;;;;;IACXC,OAAsB;IAEtBC,YACEC,aAA6B,EAC7B,AAAiBC,eAAgC,EACjD,AAAiBC,UAAsB,EACvC,AAAiBC,kBAAsC,EACvD,AAAiBC,kBAAsC,EACvD,AAAiBC,YAA0B,EAC3C,AAAiBC,sBAA8C,EAC/D,AAAiBC,aAA4B,CAC7C;aAPiBN,kBAAAA;aACAC,aAAAA;aACAC,qBAAAA;aACAC,qBAAAA;aACAC,eAAAA;aACAC,yBAAAA;aACAC,gBAAAA;QAEjB,IAAI,CAACT,MAAM,GAAGE,cAAcH,aAAaW,IAAI;QAE7C,IAAI,CAACD,aAAa,CAACE,EAAE,CAACC,sCAAsB,EAAE;YAC5C,MAAM,IAAI,CAACC,UAAU;QACvB;IACF;IAEA,MAAMC,MAAM;QACV,MAAM,IAAI,CAACD,UAAU;IACvB;IAEA,MAAMA,aAAa;QACjB,MAAME,SAAS,MAAM,IAAI,CAACX,UAAU,CAACY,SAAS;QAC9C,MAAMC,WAAW,MAAM,IAAI,CAACV,YAAY,CAACW,kBAAkB,CAAC;QAC5D,MAAMC,eAAe,IAAI,CAACd,kBAAkB,CAACe,mBAAmB;QAChE,MAAMC,gBAAgB,MAAM,IAAI,CAACf,kBAAkB,CAACgB,eAAe;QACnE,MAAMC,iBAAiB,IAAI,CAACf,sBAAsB,CAACgB,UAAU;QAE7D,MAAMC,eAAe;YACnBR;YACAF;YACAI;YACAE;YACAE;QACF;QAEA,IAAI,CAACpB,eAAe,CAACuB,IAAI,CAACC,4BAAW,CAACC,YAAY,EAAEH;IACtD;AACF"}
@@ -10,7 +10,7 @@ Object.defineProperty(exports, "SoftwareUpdateTask", {
10
10
  });
11
11
  class SoftwareUpdateTask {
12
12
  serverReleaseService;
13
- constructor({ serverReleaseService }){
13
+ constructor(serverReleaseService){
14
14
  this.serverReleaseService = serverReleaseService;
15
15
  }
16
16
  async run() {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/tasks/software-update.task.ts"],"names":["SoftwareUpdateTask","serverReleaseService","constructor","run","syncLatestRelease","logServerVersionState"],"mappings":";;;;+BAEaA;;;eAAAA;;;AAAN,MAAMA;IACXC,qBAA2C;IAE3CC,YAAY,EAAED,oBAAoB,EAAkD,CAAE;QACpF,IAAI,CAACA,oBAAoB,GAAGA;IAC9B;IAEA,MAAME,MAAM;QACV,MAAM,IAAI,CAACF,oBAAoB,CAACG,iBAAiB;QACjD,IAAI,CAACH,oBAAoB,CAACI,qBAAqB;IACjD;AACF"}
1
+ {"version":3,"sources":["../../src/tasks/software-update.task.ts"],"names":["SoftwareUpdateTask","constructor","serverReleaseService","run","syncLatestRelease","logServerVersionState"],"mappings":";;;;+BAEaA;;;eAAAA;;;AAAN,MAAMA;;IACXC,YAAY,AAAiBC,oBAA0C,CAAE;aAA5CA,uBAAAA;IAA6C;IAE1E,MAAMC,MAAM;QACV,MAAM,IAAI,CAACD,oBAAoB,CAACE,iBAAiB;QACjD,IAAI,CAACF,oBAAoB,CAACG,qBAAqB;IACjD;AACF"}
package/dist/tasks.js CHANGED
@@ -22,10 +22,10 @@ function registerTask(task, preset, milliseconds = 0, runImmediately = false) {
22
22
  let timingPreset = {
23
23
  ...preset
24
24
  };
25
- timingPreset.milliseconds = preset.milliseconds || milliseconds;
26
- timingPreset.runImmediately = runImmediately || false;
25
+ timingPreset.milliseconds = preset.milliseconds ?? milliseconds;
26
+ timingPreset.runImmediately = runImmediately ?? false;
27
27
  return {
28
- id: task.name || task,
28
+ id: task.name ?? task,
29
29
  task,
30
30
  preset: timingPreset
31
31
  };
package/dist/tasks.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/tasks.ts"],"names":["ServerTasks","registerTask","task","preset","milliseconds","runImmediately","timingPreset","id","name","SERVER_BOOT_TASK","DITokens","bootTask","TaskPresets","PERIODIC_DISABLED","BOOT_TASKS","softwareUpdateTask","RUNDELAYED","clientDistDownloadTask","RUNONCE","socketIoTask","PERIODIC","printerFileCleanTask","printerWebsocketTask","printerWebsocketRestoreTask"],"mappings":";;;;;;;;;;;IAiBaA,WAAW;eAAXA;;IAXGC,YAAY;eAAZA;;;6BAN0C;iCACjC;AAKlB,SAASA,aAAaC,IAAS,EAAEC,MAAoB,EAAEC,eAAe,CAAC,EAAEC,iBAAiB,KAAK;IACpG,IAAIC,eAAe;QAAE,GAAGH,MAAM;IAAC;IAC/BG,aAAaF,YAAY,GAAGD,OAAOC,YAAY,IAAIA;IACnDE,aAAaD,cAAc,GAAGA,kBAAkB;IAChD,OAAO;QACLE,IAAIL,KAAKM,IAAI,IAAIN;QACjBA;QACAC,QAAQG;IACV;AACF;AAEO,MAAMN;IACX,OAAOS,mBAAmBR,aAAaS,yBAAQ,CAACC,QAAQ,EAAEC,yBAAW,CAACC,iBAAiB,EAAE,MAAM,OAAO;IACtG,OAAOC,aAAa;QAClBb,aAAaS,yBAAQ,CAACK,kBAAkB,EAAEH,yBAAW,CAACI,UAAU,EAAE;QAClEf,aAAaS,yBAAQ,CAACO,sBAAsB,EAAEL,yBAAW,CAACM,OAAO;QACjEjB,aAAaS,yBAAQ,CAACS,YAAY,EAAEP,yBAAW,CAACQ,QAAQ,EAAE;QAE1DnB,aAAaS,yBAAQ,CAACW,oBAAoB,EAAET,yBAAW,CAACM,OAAO,EAAE,KAAK,MAAM;QAE5EjB,aAAaS,yBAAQ,CAACY,oBAAoB,EAAEV,yBAAW,CAACQ,QAAQ,EAAE,MAAM;QAExEnB,aAAaS,yBAAQ,CAACa,2BAA2B,EAAEX,yBAAW,CAACQ,QAAQ,EAAE,KAAK,MAAM;KACrF,CAAC;AACJ"}
1
+ {"version":3,"sources":["../src/tasks.ts"],"names":["ServerTasks","registerTask","task","preset","milliseconds","runImmediately","timingPreset","id","name","SERVER_BOOT_TASK","DITokens","bootTask","TaskPresets","PERIODIC_DISABLED","BOOT_TASKS","softwareUpdateTask","RUNDELAYED","clientDistDownloadTask","RUNONCE","socketIoTask","PERIODIC","printerFileCleanTask","printerWebsocketTask","printerWebsocketRestoreTask"],"mappings":";;;;;;;;;;;IAkBaA,WAAW;eAAXA;;IAXGC,YAAY;eAAZA;;;6BAP4B;iCACnB;AAMlB,SAASA,aAAaC,IAAS,EAAEC,MAAoB,EAAEC,eAAe,CAAC,EAAEC,iBAAiB,KAAK;IACpG,IAAIC,eAAe;QAAE,GAAGH,MAAM;IAAC;IAC/BG,aAAaF,YAAY,GAAGD,OAAOC,YAAY,IAAIA;IACnDE,aAAaD,cAAc,GAAGA,kBAAkB;IAChD,OAAO;QACLE,IAAIL,KAAKM,IAAI,IAAIN;QACjBA;QACAC,QAAQG;IACV;AACF;AAEO,MAAMN;IACX,OAAcS,mBAAmBR,aAAaS,yBAAQ,CAACC,QAAQ,EAAEC,yBAAW,CAACC,iBAAiB,EAAE,MAAM,OAAO;IAC7G,OAAcC,aAAa;QACzBb,aAAaS,yBAAQ,CAACK,kBAAkB,EAAEH,yBAAW,CAACI,UAAU,EAAE;QAClEf,aAAaS,yBAAQ,CAACO,sBAAsB,EAAEL,yBAAW,CAACM,OAAO;QACjEjB,aAAaS,yBAAQ,CAACS,YAAY,EAAEP,yBAAW,CAACQ,QAAQ,EAAE;QAC1DnB,aAAaS,yBAAQ,CAACW,oBAAoB,EAAET,yBAAW,CAACM,OAAO,EAAE,KAAK,MAAM;QAE5EjB,aAAaS,yBAAQ,CAACY,oBAAoB,EAAEV,yBAAW,CAACQ,QAAQ,EAAE,MAAM;QAExEnB,aAAaS,yBAAQ,CAACa,2BAA2B,EAAEX,yBAAW,CAACQ,QAAQ,EAAE,KAAK,MAAM;KACrF,CAAC;AACJ"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/array.util.ts"],"names":["distinct","groupArrayBy","array","predicate","reduce","acc","value","index","push","self","indexOf"],"mappings":";;;;;;;;;;;IAMaA,QAAQ;eAARA;;IANAC,YAAY;eAAZA;;;AAAN,MAAMA,eAAe,CAAIC,OAAYC,YAC1CD,MAAME,MAAM,CAAC,CAACC,KAAKC,OAAOC,OAAOL;QAC9BG,CAAAA,GAAG,CAACF,UAAUG,OAAOC,OAAOL,OAAO,KAAK,EAAE,AAAD,EAAGM,IAAI,CAACF;QAClD,OAAOD;IACT,GAAG,CAAC;AAEC,MAAML,WAAW,CAACM,OAAYC,OAAeE;IAClD,OAAOA,KAAKC,OAAO,CAACJ,WAAWC;AACjC"}
1
+ {"version":3,"sources":["../../src/utils/array.util.ts"],"names":["distinct","groupArrayBy","array","predicate","reduce","acc","value","index","push","self","indexOf"],"mappings":";;;;;;;;;;;IASaA,QAAQ;eAARA;;IATAC,YAAY;eAAZA;;;AAAN,MAAMA,eAAe,CAAIC,OAAYC,YAC1CD,MAAME,MAAM,CACV,CAACC,KAAKC,OAAOC,OAAOL;QACjBG,CAAAA,GAAG,CAACF,UAAUG,OAAOC,OAAOL,OAAO,KAAK,EAAE,AAAD,EAAGM,IAAI,CAACF;QAClD,OAAOD;IACT,GACA,CAAC;AAGE,MAAML,WAAW,CAACM,OAAYC,OAAeE;IAClD,OAAOA,KAAKC,OAAO,CAACJ,WAAWC;AACjC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/cache/key-diff.cache.ts"],"names":["KeyDiffCache","deletedKeys","updatedKeys","keyValueStore","getAllValues","keys","Object","getValuesBatch","getAllKeyValues","getValue","key","keyString","toString","length","Error","processStateDiffs","updatedValues","resetDiffs","setKeyValuesBatch","keyValues","markUpdated","forEach","value","setKeyValue","map","batchMarkUpdated","deleteKeysBatch","markDeleted","deleteKeyValue","batchMarkDeleted","keyStrings","some","values","push","convertToKeyString","includes","splice","indexOf"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/utils/cache/key-diff.cache.ts"],"names":["KeyDiffCache","deletedKeys","updatedKeys","keyValueStore","getAllValues","keys","Object","getValuesBatch","getAllKeyValues","getValue","key","keyString","toString","length","Error","processStateDiffs","updatedValues","resetDiffs","setKeyValuesBatch","keyValues","markUpdated","forEach","value","setKeyValue","map","batchMarkUpdated","deleteKeysBatch","markDeleted","deleteKeyValue","batchMarkDeleted","keyStrings","some","values","push","convertToKeyString","includes","splice","indexOf"],"mappings":";;;;+BAIaA;;;eAAAA;;;AAAN,MAAMA;IACXC,cAAwB,EAAE,CAAC;IAC3BC,cAAwB,EAAE,CAAC;IAEjBC,gBAAsC,CAAC,EAAE;IAEnD,MAAaC,eAAe;QAC1B,MAAMC,OAAOC,OAAOD,IAAI,CAAC,IAAI,CAACF,aAAa;QAC3C,OAAO,MAAM,IAAI,CAACI,cAAc,CAACF;IACnC;IAEA,MAAaG,kBAAkB;QAC7B,OAAO,IAAI,CAACL,aAAa;IAC3B;IAEA,MAAaM,SAASC,GAAW,EAAc;QAC7C,MAAMC,YAAYD,KAAKE;QACvB,IAAI,CAACD,WAAWE,QAAQ;YACtB,MAAM,IAAIC,MAAM;QAClB;QACA,OAAO,IAAI,CAACX,aAAa,CAACQ,UAAU;IACtC;IAEA,MAAMI,oBAAoB;QACxB,MAAMb,cAAc;eAAI,IAAI,CAACA,WAAW;SAAC;QACzC,MAAMc,gBAAgB,MAAM,IAAI,CAACT,cAAc,CAACL;QAChD,MAAMD,cAAc;eAAI,IAAI,CAACA,WAAW;SAAC;QAEzC,IAAI,CAACgB,UAAU;QACf,OAAO;YACLf;YACAc;YACAf;QACF;IACF;IAEA,MAAgBiB,kBAAkBC,SAA2C,EAAEC,cAAuB,IAAI,EAAE;QAC1GD,UAAUE,OAAO,CAAC,CAAC,EAAEX,GAAG,EAAEY,KAAK,EAAE;YAC/B,IAAI,CAACC,WAAW,CAACb,KAAKY;QACxB;QACA,IAAIF,aAAa;YACf,MAAMlB,cAAciB,UAAUK,GAAG,CAAC,CAAC,EAAEd,GAAG,EAAE,GAAKA;YAC/C,IAAI,CAACe,gBAAgB,CAACvB;QACxB;IACF;IAEA,MAAgBwB,gBAAgBrB,IAAmB,EAAEsB,cAAuB,IAAI,EAAE;QAChFtB,KAAKgB,OAAO,CAAC,CAACX;YACZ,IAAI,CAACkB,cAAc,CAAClB;QACtB;QACA,IAAIiB,aAAa;YACf,IAAI,CAACE,gBAAgB,CAACxB;QACxB;IACF;IAEA,MAAgBE,eAAeF,IAAmB,EAAqB;QACrE,MAAMyB,aAAazB,KAAKmB,GAAG,CAAC,CAACd,MAAQA,KAAKE;QAC1C,IAAIkB,WAAWC,IAAI,CAAC,CAACrB,MAAQ,CAACA,KAAKG,SAAS;YAC1C,MAAM,IAAIC,MAAM;QAClB;QAEA,MAAMkB,SAAS,EAAE;QACjB,KAAK,MAAMrB,aAAamB,WAAY;YAClC,MAAMR,QAAQ,MAAM,IAAI,CAACb,QAAQ,CAACE,UAAUC,QAAQ;YACpDoB,OAAOC,IAAI,CAACX;QACd;QACA,OAAOU;IACT;IAEA,MAAgBT,YAAYb,GAAW,EAAEY,KAAQ,EAAEF,cAAuB,IAAI,EAAE;QAC9E,MAAMT,YAAY,IAAI,CAACuB,kBAAkB,CAACxB;QAC1C,IAAI,CAACC,WAAWE,QAAQ;YACtB,MAAM,IAAIC,MAAM;QAClB;QAEA,IAAI,CAACX,aAAa,CAACQ,UAAU,GAAGW;QAChC,IAAIF,aAAa;YACf,IAAI,CAACA,WAAW,CAACT;QACnB;IACF;IAEA,MAAgBiB,eAAelB,GAAW,EAAEiB,cAAuB,IAAI,EAAE;QACvE,MAAMhB,YAAY,IAAI,CAACuB,kBAAkB,CAACxB;QAC1C,IAAI,CAACC,WAAWE,QAAQ;YACtB,MAAM,IAAIC,MAAM;QAClB;QAEA,OAAO,IAAI,CAACX,aAAa,CAACQ,UAAU;QACpC,IAAIgB,aAAa;YACf,IAAI,CAACA,WAAW,CAAChB;QACnB;IACF;IAEUkB,iBAAiBxB,IAAc,EAAE;QACzC,KAAK,MAAMK,OAAOL,KAAM;YACtB,IAAI,CAACsB,WAAW,CAACjB;QACnB;IACF;IAEUU,YAAYV,GAAW,EAAE;QACjC,IAAI,IAAI,CAACT,WAAW,CAACkC,QAAQ,CAACzB,MAAM;YAClC,IAAI,CAACT,WAAW,CAACmC,MAAM,CAAC,IAAI,CAACnC,WAAW,CAACoC,OAAO,CAAC3B,MAAM;QACzD;QACA,IAAI,CAAC,IAAI,CAACR,WAAW,CAACiC,QAAQ,CAACzB,MAAM;YACnC,IAAI,CAACR,WAAW,CAAC+B,IAAI,CAACvB;QACxB;IACF;IAEUiB,YAAYjB,GAAW,EAAE;QACjC,IAAI,IAAI,CAACR,WAAW,CAACiC,QAAQ,CAACzB,MAAM;YAClC,IAAI,CAACR,WAAW,CAACkC,MAAM,CAAC,IAAI,CAAClC,WAAW,CAACmC,OAAO,CAAC3B,MAAM;QACzD;QACA,IAAI,CAAC,IAAI,CAACT,WAAW,CAACkC,QAAQ,CAACzB,MAAM;YACnC,IAAI,CAACT,WAAW,CAACgC,IAAI,CAACvB;QACxB;IACF;IAEQwB,mBAAmBxB,GAAW,EAAE;QACtC,OAAOA,KAAKE;IACd;IAEUK,aAAa;QACrB,IAAI,CAAChB,WAAW,GAAG,EAAE;QACrB,IAAI,CAACC,WAAW,GAAG,EAAE;IACvB;IAEQuB,iBAAiBpB,IAAc,EAAE;QACvC,KAAK,MAAMK,OAAOL,KAAM;YACtB,IAAI,CAACe,WAAW,CAACV;QACnB;IACF;AACF"}
@@ -25,9 +25,7 @@ _export(exports, {
25
25
  return isTestEnvironment;
26
26
  }
27
27
  });
28
- const _logger = require("../handlers/logger");
29
28
  const _serverconstants = require("../server.constants");
30
- const logger = new _logger.LoggerService("Utils-Env", false);
31
29
  function getEnvOrDefault(key, defaultVal) {
32
30
  const val = process.env[key];
33
31
  if (!val?.length) return defaultVal;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/env.utils.ts"],"names":["getEnvOrDefault","isDevelopmentEnvironment","isNode","isProductionEnvironment","isTestEnvironment","logger","LoggerService","key","defaultVal","val","process","env","length","NODE_ENV","AppConstants","defaultDevelopmentEnv","defaultTestEnv","defaultProductionEnv"],"mappings":";;;;;;;;;;;IAOgBA,eAAe;eAAfA;;IAMAC,wBAAwB;eAAxBA;;IAYAC,MAAM;eAANA;;IAJAC,uBAAuB;eAAvBA;;IAJAC,iBAAiB;eAAjBA;;;wBAhBc;iCACD;AAG7B,MAAMC,SAAS,IAAIC,qBAAa,CAAC,aAAa;AAEvC,SAASN,gBAAgBO,GAAQ,EAAEC,UAAe;IACvD,MAAMC,MAAMC,QAAQC,GAAG,CAACJ,IAAI;IAC5B,IAAI,CAACE,KAAKG,QAAQ,OAAOJ;IACzB,OAAOC;AACT;AAEO,SAASR;IACd,OAAOS,QAAQC,GAAG,CAACE,QAAQ,KAAKC,6BAAY,CAACC,qBAAqB;AACpE;AAEO,SAASX;IACd,OAAOM,QAAQC,GAAG,CAACE,QAAQ,KAAKC,6BAAY,CAACE,cAAc;AAC7D;AAEO,SAASb;IACd,OAAOO,QAAQC,GAAG,CAACE,QAAQ,KAAKC,6BAAY,CAACG,oBAAoB;AACnE;AAEO,SAASf;IACd,OAAO,UAAUQ,QAAQC,GAAG;AAC9B"}
1
+ {"version":3,"sources":["../../src/utils/env.utils.ts"],"names":["getEnvOrDefault","isDevelopmentEnvironment","isNode","isProductionEnvironment","isTestEnvironment","key","defaultVal","val","process","env","length","NODE_ENV","AppConstants","defaultDevelopmentEnv","defaultTestEnv","defaultProductionEnv"],"mappings":";;;;;;;;;;;IAEgBA,eAAe;eAAfA;;IAMAC,wBAAwB;eAAxBA;;IAYAC,MAAM;eAANA;;IAJAC,uBAAuB;eAAvBA;;IAJAC,iBAAiB;eAAjBA;;;iCAZa;AAEtB,SAASJ,gBAAgBK,GAAQ,EAAEC,UAAe;IACvD,MAAMC,MAAMC,QAAQC,GAAG,CAACJ,IAAI;IAC5B,IAAI,CAACE,KAAKG,QAAQ,OAAOJ;IACzB,OAAOC;AACT;AAEO,SAASN;IACd,OAAOO,QAAQC,GAAG,CAACE,QAAQ,KAAKC,6BAAY,CAACC,qBAAqB;AACpE;AAEO,SAAST;IACd,OAAOI,QAAQC,GAAG,CAACE,QAAQ,KAAKC,6BAAY,CAACE,cAAc;AAC7D;AAEO,SAASX;IACd,OAAOK,QAAQC,GAAG,CAACE,QAAQ,KAAKC,6BAAY,CAACG,oBAAoB;AACnE;AAEO,SAASb;IACd,OAAO,UAAUM,QAAQC,GAAG;AAC9B"}
@@ -8,6 +8,7 @@ Object.defineProperty(exports, "normalizeUrl", {
8
8
  return normalizeUrl;
9
9
  }
10
10
  });
11
+ const _urlutils = require("./url.utils");
11
12
  const DATA_URL_DEFAULT_MIME_TYPE = "text/plain";
12
13
  const DATA_URL_DEFAULT_CHARSET = "us-ascii";
13
14
  const testParameter = (name, filters)=>filters.some((filter)=>filter instanceof RegExp ? filter.test(name) : filter === name);
@@ -26,7 +27,7 @@ const hasCustomProtocol = (urlString)=>{
26
27
  };
27
28
  const normalizeDataURL = (urlString, { stripHash })=>{
28
29
  const match = /^data:(?<type>[^,]*?),(?<data>[^#]*?)(?:#(?<hash>.*))?$/.exec(urlString);
29
- if (!match) {
30
+ if (!match?.groups) {
30
31
  throw new Error(`Invalid URL: ${urlString}`);
31
32
  }
32
33
  let { type, data, hash } = match.groups;
@@ -94,7 +95,7 @@ function normalizeUrl(urlString, options) {
94
95
  const hasRelativeProtocol = urlString.startsWith("//");
95
96
  const isRelativeUrl = !hasRelativeProtocol && /^\.*\//.test(urlString);
96
97
  if (!isRelativeUrl) {
97
- urlString = urlString.replace(/^(?!(?:\w+:)?\/\/)|^\/\//, options.defaultProtocol);
98
+ urlString = urlString.replace(/^(?!(?:\w+:)?\/\/)|^\/\//, options.defaultProtocol ?? _urlutils.defaultHttpProtocol);
98
99
  }
99
100
  const urlObject = new URL(urlString);
100
101
  if (options.forceHttp && options.forceHttps) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/normalize-url.ts"],"names":["normalizeUrl","DATA_URL_DEFAULT_MIME_TYPE","DATA_URL_DEFAULT_CHARSET","testParameter","name","filters","some","filter","RegExp","test","supportedProtocols","Set","hasCustomProtocol","urlString","protocol","URL","endsWith","includes","has","normalizeDataURL","stripHash","match","exec","Error","type","data","hash","groups","mediaType","split","isBase64","length","pop","mimeType","shift","toLowerCase","attributes","map","attribute","key","value","string","trim","Boolean","normalizedMediaType","push","unshift","join","options","defaultProtocol","normalizeProtocol","forceHttp","forceHttps","stripAuthentication","stripTextFragment","stripWWW","removeQueryParameters","removeTrailingSlash","removeSingleSlash","removeDirectoryIndex","removeExplicitPort","sortQueryParameters","hasRelativeProtocol","startsWith","isRelativeUrl","replace","urlObject","username","password","pathname","protocolRegex","lastIndex","result","protocolAtIndex","index","intermediate","slice","remnant","decodeURI","Array","isArray","pathComponents","lastComponent","hostname","searchParams","keys","delete","keepQueryParameters","search","sort","decodeURIComponent","port","oldUrlString","toString","stripProtocol"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/utils/normalize-url.ts"],"names":["normalizeUrl","DATA_URL_DEFAULT_MIME_TYPE","DATA_URL_DEFAULT_CHARSET","testParameter","name","filters","some","filter","RegExp","test","supportedProtocols","Set","hasCustomProtocol","urlString","protocol","URL","endsWith","includes","has","normalizeDataURL","stripHash","match","exec","groups","Error","type","data","hash","mediaType","split","isBase64","length","pop","mimeType","shift","toLowerCase","attributes","map","attribute","key","value","string","trim","Boolean","normalizedMediaType","push","unshift","join","options","defaultProtocol","normalizeProtocol","forceHttp","forceHttps","stripAuthentication","stripTextFragment","stripWWW","removeQueryParameters","removeTrailingSlash","removeSingleSlash","removeDirectoryIndex","removeExplicitPort","sortQueryParameters","hasRelativeProtocol","startsWith","isRelativeUrl","replace","defaultHttpProtocol","urlObject","username","password","pathname","protocolRegex","lastIndex","result","protocolAtIndex","index","intermediate","slice","remnant","decodeURI","Array","isArray","pathComponents","lastComponent","hostname","searchParams","keys","delete","keepQueryParameters","search","sort","decodeURIComponent","port","oldUrlString","toString","stripProtocol"],"mappings":";;;;+BA8EgBA;;;eAAAA;;;0BA7EoB;AAEpC,MAAMC,6BAA6B;AACnC,MAAMC,2BAA2B;AAEjC,MAAMC,gBAAgB,CAACC,MAAcC,UACnCA,QAAQC,IAAI,CAAC,CAACC,SAAYA,kBAAkBC,SAASD,OAAOE,IAAI,CAACL,QAAQG,WAAWH;AAEtF,MAAMM,qBAAqB,IAAIC,IAAI;IAAC;IAAU;IAAS;CAAQ;AAE/D,MAAMC,oBAAoB,CAACC;IACzB,IAAI;QACF,MAAM,EAAEC,QAAQ,EAAE,GAAG,IAAIC,IAAIF;QAE7B,OAAOC,SAASE,QAAQ,CAAC,QAAQ,CAACF,SAASG,QAAQ,CAAC,QAAQ,CAACP,mBAAmBQ,GAAG,CAACJ;IACtF,EAAE,OAAM;QACN,OAAO;IACT;AACF;AAEA,MAAMK,mBAAmB,CAACN,WAAmB,EAAEO,SAAS,EAA2B;IACjF,MAAMC,QAAQ,0DAA0DC,IAAI,CAACT;IAE7E,IAAI,CAACQ,OAAOE,QAAQ;QAClB,MAAM,IAAIC,MAAM,CAAC,aAAa,EAAEX,WAAW;IAC7C;IAEA,IAAI,EAAEY,IAAI,EAAEC,IAAI,EAAEC,IAAI,EAAE,GAAGN,MAAME,MAAM;IACvC,MAAMK,YAAYH,KAAKI,KAAK,CAAC;IAC7BF,OAAOP,YAAY,KAAKO;IAExB,IAAIG,WAAW;IACf,IAAIF,SAAS,CAACA,UAAUG,MAAM,GAAG,EAAE,KAAK,UAAU;QAChDH,UAAUI,GAAG;QACbF,WAAW;IACb;IAGA,MAAMG,WAAWL,UAAUM,KAAK,IAAIC,iBAAiB;IACrD,MAAMC,aAAaR,UAChBS,GAAG,CAAC,CAACC;QACJ,IAAI,CAACC,KAAKC,QAAQ,EAAE,CAAC,GAAGF,UAAUT,KAAK,CAAC,KAAKQ,GAAG,CAAC,CAACI,SAAWA,OAAOC,IAAI;QAGxE,IAAIH,QAAQ,WAAW;YACrBC,QAAQA,MAAML,WAAW;YAEzB,IAAIK,UAAUtC,0BAA0B;gBACtC,OAAO;YACT;QACF;QAEA,OAAO,GAAGqC,MAAMC,QAAQ,CAAC,CAAC,EAAEA,OAAO,GAAG,IAAI;IAC5C,GACCjC,MAAM,CAACoC;IAEV,MAAMC,sBAAsB;WAAIR;KAAW;IAE3C,IAAIN,UAAU;QACZc,oBAAoBC,IAAI,CAAC;IAC3B;IAEA,IAAID,oBAAoBb,MAAM,GAAG,KAAME,YAAYA,aAAahC,4BAA6B;QAC3F2C,oBAAoBE,OAAO,CAACb;IAC9B;IAEA,OAAO,CAAC,KAAK,EAAEW,oBAAoBG,IAAI,CAAC,KAAK,CAAC,EAAEjB,WAAWJ,KAAKgB,IAAI,KAAKhB,OAAOC,OAAO,CAAC,CAAC,EAAEA,MAAM,GAAG,IAAI;AAC1G;AAUO,SAAS3B,aACda,SAAiB,EACjBmC,OAiBE;IAEFA,UAAU;QACRC,iBAAiB;QACjBC,mBAAmB;QACnBC,WAAW;QACXC,YAAY;QACZC,qBAAqB;QACrBjC,WAAW;QACXkC,mBAAmB;QACnBC,UAAU;QACVC,uBAAuB;YAAC;SAAY;QACpCC,qBAAqB;QACrBC,mBAAmB;QACnBC,sBAAsB;QACtBC,oBAAoB;QACpBC,qBAAqB;QACrB,GAAGb,OAAO;IACZ;IAGA,IAAI,OAAOA,QAAQC,eAAe,KAAK,YAAY,CAACD,QAAQC,eAAe,CAACjC,QAAQ,CAAC,MAAM;QACzFgC,QAAQC,eAAe,GAAG,GAAGD,QAAQC,eAAe,CAAC,CAAC,CAAC;IACzD;IAEApC,YAAYA,UAAU6B,IAAI;IAG1B,IAAI,UAAUjC,IAAI,CAACI,YAAY;QAC7B,OAAOM,iBAAiBN,WAAW;YAAEO,WAAW4B,QAAQ5B,SAAS;QAAC;IACpE;IAEA,IAAIR,kBAAkBC,YAAY;QAChC,OAAOA;IACT;IAEA,MAAMiD,sBAAsBjD,UAAUkD,UAAU,CAAC;IACjD,MAAMC,gBAAgB,CAACF,uBAAuB,SAASrD,IAAI,CAACI;IAG5D,IAAI,CAACmD,eAAe;QAClBnD,YAAYA,UAAUoD,OAAO,CAAC,4BAA4BjB,QAAQC,eAAe,IAAIiB,6BAAmB;IAC1G;IAEA,MAAMC,YAAY,IAAIpD,IAAIF;IAE1B,IAAImC,QAAQG,SAAS,IAAIH,QAAQI,UAAU,EAAE;QAC3C,MAAM,IAAI5B,MAAM;IAClB;IAEA,IAAIwB,QAAQG,SAAS,IAAIgB,UAAUrD,QAAQ,KAAK,UAAU;QACxDqD,UAAUrD,QAAQ,GAAG;IACvB;IAEA,IAAIkC,QAAQI,UAAU,IAAIe,UAAUrD,QAAQ,KAAK,SAAS;QACxDqD,UAAUrD,QAAQ,GAAG;IACvB;IAGA,IAAIkC,QAAQK,mBAAmB,EAAE;QAC/Bc,UAAUC,QAAQ,GAAG;QACrBD,UAAUE,QAAQ,GAAG;IACvB;IAGA,IAAIrB,QAAQ5B,SAAS,EAAE;QACrB+C,UAAUxC,IAAI,GAAG;IACnB,OAAO,IAAIqB,QAAQM,iBAAiB,EAAE;QACpCa,UAAUxC,IAAI,GAAGwC,UAAUxC,IAAI,CAACsC,OAAO,CAAC,kBAAkB;IAC5D;IAMA,IAAIE,UAAUG,QAAQ,EAAE;QAMtB,MAAMC,gBAAgB;QAEtB,IAAIC,YAAY;QAChB,IAAIC,SAAS;QACb,OAAS;YACP,MAAMpD,QAAQkD,cAAcjD,IAAI,CAAC6C,UAAUG,QAAQ;YACnD,IAAI,CAACjD,OAAO;gBACV;YACF;YAEA,MAAMP,WAAWO,KAAK,CAAC,EAAE;YACzB,MAAMqD,kBAAkBrD,MAAMsD,KAAK;YACnC,MAAMC,eAAeT,UAAUG,QAAQ,CAACO,KAAK,CAACL,WAAWE;YAEzDD,UAAUG,aAAaX,OAAO,CAAC,WAAW;YAC1CQ,UAAU3D;YACV0D,YAAYE,kBAAkB5D,SAASiB,MAAM;QAC/C;QAEA,MAAM+C,UAAUX,UAAUG,QAAQ,CAACO,KAAK,CAACL,WAAWL,UAAUG,QAAQ,CAACvC,MAAM;QAC7E0C,UAAUK,QAAQb,OAAO,CAAC,WAAW;QAErCE,UAAUG,QAAQ,GAAGG;IACvB;IAGA,IAAIN,UAAUG,QAAQ,EAAE;QACtB,IAAI;YACFH,UAAUG,QAAQ,GAAGS,UAAUZ,UAAUG,QAAQ;QACnD,EAAE,OAAM,CAAC;IACX;IAGA,IAAItB,QAAQW,oBAAoB,KAAK,MAAM;QACzCX,QAAQW,oBAAoB,GAAG;YAAC;SAAkB;IACpD;IAEA,IAAIqB,MAAMC,OAAO,CAACjC,QAAQW,oBAAoB,KAAKX,QAAQW,oBAAoB,CAAC5B,MAAM,GAAG,GAAG;QAC1F,IAAImD,iBAAiBf,UAAUG,QAAQ,CAACzC,KAAK,CAAC;QAC9C,MAAMsD,gBAAgBD,cAAc,CAACA,eAAenD,MAAM,GAAG,EAAE;QAE/D,IAAI5B,cAAcgF,eAAenC,QAAQW,oBAAoB,GAAG;YAC9DuB,iBAAiBA,eAAeL,KAAK,CAAC,GAAG,CAAC;YAC1CV,UAAUG,QAAQ,GAAGY,eAAeL,KAAK,CAAC,GAAG9B,IAAI,CAAC,OAAO;QAC3D;IACF;IAEA,IAAIoB,UAAUiB,QAAQ,EAAE;QAEtBjB,UAAUiB,QAAQ,GAAGjB,UAAUiB,QAAQ,CAACnB,OAAO,CAAC,OAAO;QAGvD,IAAIjB,QAAQO,QAAQ,IAAI,oDAAoD9C,IAAI,CAAC0D,UAAUiB,QAAQ,GAAG;YAKpGjB,UAAUiB,QAAQ,GAAGjB,UAAUiB,QAAQ,CAACnB,OAAO,CAAC,UAAU;QAC5D;IACF;IAGA,IAAIe,MAAMC,OAAO,CAACjC,QAAQQ,qBAAqB,GAAG;QAEhD,KAAK,MAAMjB,OAAO;eAAI4B,UAAUkB,YAAY,CAACC,IAAI;SAAG,CAAE;YACpD,IAAInF,cAAcoC,KAAKS,QAAQQ,qBAAqB,GAAG;gBACrDW,UAAUkB,YAAY,CAACE,MAAM,CAAChD;YAChC;QACF;IACF;IAEA,IAAI,CAACyC,MAAMC,OAAO,CAACjC,QAAQwC,mBAAmB,KAAKxC,QAAQQ,qBAAqB,KAAK,MAAM;QACzFW,UAAUsB,MAAM,GAAG;IACrB;IAGA,IAAIT,MAAMC,OAAO,CAACjC,QAAQwC,mBAAmB,KAAKxC,QAAQwC,mBAAmB,CAACzD,MAAM,GAAG,GAAG;QAExF,KAAK,MAAMQ,OAAO;eAAI4B,UAAUkB,YAAY,CAACC,IAAI;SAAG,CAAE;YACpD,IAAI,CAACnF,cAAcoC,KAAKS,QAAQwC,mBAAmB,GAAG;gBACpDrB,UAAUkB,YAAY,CAACE,MAAM,CAAChD;YAChC;QACF;IACF;IAGA,IAAIS,QAAQa,mBAAmB,EAAE;QAC/BM,UAAUkB,YAAY,CAACK,IAAI;QAG3B,IAAI;YACFvB,UAAUsB,MAAM,GAAGE,mBAAmBxB,UAAUsB,MAAM;QACxD,EAAE,OAAM,CAAC;IACX;IAEA,IAAIzC,QAAQS,mBAAmB,EAAE;QAC/BU,UAAUG,QAAQ,GAAGH,UAAUG,QAAQ,CAACL,OAAO,CAAC,OAAO;IACzD;IAGA,IAAIjB,QAAQY,kBAAkB,IAAIO,UAAUyB,IAAI,EAAE;QAChDzB,UAAUyB,IAAI,GAAG;IACnB;IAEA,MAAMC,eAAehF;IAGrBA,YAAYsD,UAAU2B,QAAQ;IAE9B,IACE,CAAC9C,QAAQU,iBAAiB,IAC1BS,UAAUG,QAAQ,KAAK,OACvB,CAACuB,aAAa7E,QAAQ,CAAC,QACvBmD,UAAUxC,IAAI,KAAK,IACnB;QACAd,YAAYA,UAAUoD,OAAO,CAAC,OAAO;IACvC;IAGA,IACE,AAACjB,CAAAA,QAAQS,mBAAmB,IAAIU,UAAUG,QAAQ,KAAK,GAAE,KACzDH,UAAUxC,IAAI,KAAK,MACnBqB,QAAQU,iBAAiB,EACzB;QACA7C,YAAYA,UAAUoD,OAAO,CAAC,OAAO;IACvC;IAGA,IAAIH,uBAAuB,CAACd,QAAQE,iBAAiB,EAAE;QACrDrC,YAAYA,UAAUoD,OAAO,CAAC,cAAc;IAC9C;IAGA,IAAIjB,QAAQ+C,aAAa,EAAE;QACzBlF,YAAYA,UAAUoD,OAAO,CAAC,qBAAqB;IACrD;IAEA,OAAOpD;AACT"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/printer-type.utils.ts"],"names":["getServiceName","isMoonrakerType","isOctoPrintType","printerType"],"mappings":";;;;;;;;;;;IAQgBA,cAAc;eAAdA;;IAJAC,eAAe;eAAfA;;IAJAC,eAAe;eAAfA;;;AAAT,SAASA,gBAAgBC,WAAoB;IAClD,OAAOA,gBAAgB;AACzB;AAEO,SAASF,gBAAgBE,WAAoB;IAClD,OAAOA,gBAAgB;AACzB;AAEO,SAASH,eAAeG,WAAoB;IACjD,OAAOD,gBAAgBC,eACnB,cACAF,gBAAgBE,eAChB,cACA;AACN"}
1
+ {"version":3,"sources":["../../src/utils/printer-type.utils.ts"],"names":["getServiceName","isMoonrakerType","isOctoPrintType","printerType"],"mappings":";;;;;;;;;;;IAQgBA,cAAc;eAAdA;;IAJAC,eAAe;eAAfA;;IAJAC,eAAe;eAAfA;;;AAAT,SAASA,gBAAgBC,WAAoB;IAClD,OAAOA,gBAAgB;AACzB;AAEO,SAASF,gBAAgBE,WAAoB;IAClD,OAAOA,gBAAgB;AACzB;AAEO,SAASH,eAAeG,WAAoB;IACjD,OAAOD,gBAAgBC,eAAe,cAAcF,gBAAgBE,eAAe,cAAc;AACnG"}
@@ -2,25 +2,15 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- function _export(target, all) {
6
- for(var name in all)Object.defineProperty(target, name, {
7
- enumerable: true,
8
- get: all[name]
9
- });
10
- }
11
- _export(exports, {
12
- isValidDate: function() {
13
- return isValidDate;
14
- },
15
- sleep: function() {
16
- return sleep;
5
+ Object.defineProperty(exports, "isParsableDate", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return isParsableDate;
17
9
  }
18
10
  });
19
- async function sleep(ms = 2000) {
20
- return new Promise((resolve)=>setTimeout(resolve, ms));
21
- }
22
- function isValidDate(date) {
23
- return date instanceof Date && !isNaN(date);
11
+ function isParsableDate(value) {
12
+ const timestamp = Date.parse(value);
13
+ return !isNaN(timestamp);
24
14
  }
25
15
 
26
16
  //# sourceMappingURL=time.utils.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/time.utils.ts"],"names":["isValidDate","sleep","ms","Promise","resolve","setTimeout","date","Date","isNaN"],"mappings":";;;;;;;;;;;IAIgBA,WAAW;eAAXA;;IAJMC,KAAK;eAALA;;;AAAf,eAAeA,MAAMC,KAAK,IAAI;IACnC,OAAO,IAAIC,QAAQ,CAACC,UAAYC,WAAWD,SAASF;AACtD;AAEO,SAASF,YAAYM,IAAI;IAC9B,OAAOA,gBAAgBC,QAAQ,CAACC,MAAMF;AACxC"}
1
+ {"version":3,"sources":["../../src/utils/time.utils.ts"],"names":["isParsableDate","value","timestamp","Date","parse","isNaN"],"mappings":";;;;+BAAgBA;;;eAAAA;;;AAAT,SAASA,eAAeC,KAAa;IAC1C,MAAMC,YAAYC,KAAKC,KAAK,CAACH;IAC7B,OAAO,CAACI,MAAMH;AAChB"}
@@ -16,13 +16,12 @@ _export(exports, {
16
16
  return httpToWsUrl;
17
17
  }
18
18
  });
19
+ const _zod = require("zod");
19
20
  const _normalizeurl = require("./normalize-url");
20
21
  const defaultHttpProtocol = "https";
21
22
  function httpToWsUrl(url) {
22
- if (!url?.length) {
23
- return;
24
- }
25
- const protocolNormalizedAddress = (0, _normalizeurl.normalizeUrl)(url, {
23
+ const validUrl = _zod.z.string().parse(url);
24
+ const protocolNormalizedAddress = (0, _normalizeurl.normalizeUrl)(validUrl, {
26
25
  defaultProtocol: defaultHttpProtocol
27
26
  });
28
27
  const wsUrl = new URL(protocolNormalizedAddress);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/url.utils.ts"],"names":["defaultHttpProtocol","httpToWsUrl","url","length","protocolNormalizedAddress","normalizeUrl","defaultProtocol","wsUrl","URL","protocol"],"mappings":";;;;;;;;;;;IAEaA,mBAAmB;eAAnBA;;IAEGC,WAAW;eAAXA;;;8BAJa;AAEtB,MAAMD,sBAAsB;AAE5B,SAASC,YAAYC,GAAW;IACrC,IAAI,CAACA,KAAKC,QAAQ;QAChB;IACF;IAEA,MAAMC,4BAA4BC,IAAAA,0BAAY,EAACH,KAAK;QAAEI,iBAAiBN;IAAoB;IAE3F,MAAMO,QAAQ,IAAIC,IAAIJ;IACtBG,MAAME,QAAQ,GAAGF,MAAME,QAAQ,KAAK,WAAW,SAAS;IACxD,OAAOF;AACT"}
1
+ {"version":3,"sources":["../../src/utils/url.utils.ts"],"names":["defaultHttpProtocol","httpToWsUrl","url","validUrl","z","string","parse","protocolNormalizedAddress","normalizeUrl","defaultProtocol","wsUrl","URL","protocol"],"mappings":";;;;;;;;;;;IAGaA,mBAAmB;eAAnBA;;IAEGC,WAAW;eAAXA;;;qBALE;8BACW;AAEtB,MAAMD,sBAAsB;AAE5B,SAASC,YAAYC,GAAY;IACtC,MAAMC,WAAWC,MAAC,CAACC,MAAM,GAAGC,KAAK,CAACJ;IAElC,MAAMK,4BAA4BC,IAAAA,0BAAY,EAACL,UAAU;QAAEM,iBAAiBT;IAAoB;IAEhG,MAAMU,QAAQ,IAAIC,IAAIJ;IACtBG,MAAME,QAAQ,GAAGF,MAAME,QAAQ,KAAK,WAAW,SAAS;IACxD,OAAOF;AACT"}
package/package.json CHANGED
@@ -6,7 +6,7 @@
6
6
  },
7
7
  "author": "David Zwart",
8
8
  "license": "AGPL-3.0-or-later",
9
- "version": "1.8.3",
9
+ "version": "1.9.0",
10
10
  "bin": {
11
11
  "fdm-monster": "dist/index.js",
12
12
  "fdmm": "dist/index.js"
@@ -14,32 +14,33 @@
14
14
  "description": "FDM Monster is a bulk OctoPrint manager to set up, configure and monitor 3D printers. Our aim is to provide extremely optimized websocket performance and reliability.",
15
15
  "main": "dist/index.js",
16
16
  "scripts": {
17
- "console:upload": "yarn build && cross-env NODE_ENV=development node ./dist/consoles/upload-test.js",
17
+ "build": "swc src -d dist --strip-leading-paths",
18
+ "build:watch": "swc src -w -d dist --strip-leading-paths",
18
19
  "dev": "yarn build:watch & yarn serve",
19
20
  "serve": "NODE_ENV=development node --enable-source-maps --watch dist/index.js",
20
21
  "start:dev": "ts-node src/index.ts",
21
22
  "start": "cross-env NODE_ENV=production node dist/index.js",
22
- "console:http-file-receiver": "node ./dist/consoles/http-file-receiver.console.js",
23
+ "console:http-file-servers": "node ./dist/consoles/http-file-receiver.console.js",
24
+ "console:many-http-file-receivers": "node ./dist/consoles/launch-http-servers.js",
23
25
  "console:github-releases": "yarn build && NODE_ENV=development node --watch --enable-source-maps ./dist/consoles/download-github-releases.js",
24
26
  "console:generate": "yarn build && NODE_ENV=development node --enable-source-maps ./dist/consoles/typeorm-generate.js",
25
- "console:torm": "yarn build && NODE_ENV=development node --watch --enable-source-maps ./dist/consoles/sqlite-torm.js",
26
27
  "console:migrate": "yarn build && NODE_ENV=development node --watch --enable-source-maps ./dist/consoles/typeorm-migrate.js",
27
- "build": "swc src -d dist --strip-leading-paths",
28
- "build:watch": "swc src -w -d dist --strip-leading-paths",
28
+ "console:upload": "yarn build && cross-env NODE_ENV=development node ./dist/consoles/upload-test.js",
29
29
  "migration:create": "migrate-mongo create printer-files-simpler",
30
30
  "migration:up": "migrate-mongo up",
31
31
  "migration:down": "migrate-mongo down",
32
32
  "migration:status": "migrate-mongo status",
33
- "format": "prettier --write \"src/**/*.js\" \"test/**/*.js\"",
33
+ "format": "biome format --write src test",
34
34
  "swc": "swc",
35
35
  "tsc": "tsc --noEmit",
36
+ "tsc:watch": "tsc --noEmit --watch",
36
37
  "test:mongodb": "cross-env MONGODB_MODE=true jest --forceExit --maxConcurrency=8 --runInBand ",
37
38
  "test:sqlite": "cross-env MONGODB_MODE=false jest --forceExit --maxConcurrency=8 --runInBand ",
38
39
  "test:cov-mongodb": "cross-env MONGODB_MODE=true jest --forceExit --coverage --maxConcurrency=8 --runInBand ",
39
40
  "test:cov-sqlite": "cross-env MONGODB_MODE=false jest --forceExit --coverage --maxConcurrency=8 --runInBand ",
40
41
  "cov:show": "./coverage/lcov-report/index.html",
41
42
  "torm": "ts-node --swc -r tsconfig-paths/register ./node_modules/typeorm/cli.js",
42
- "typeorm:generate": "yarn torm migration:generate -d src/data-source.ts --pretty src/migrations/RemovePrinterFile",
43
+ "typeorm:generate": "yarn torm migration:generate -d src/data-source.ts --pretty src/migrations/AddPrinterUsernamePassword",
43
44
  "typeorm:migrate": "yarn torm migration:run -d src/data-source.ts",
44
45
  "typeorm:revert": "yarn torm migration:revert -d src/data-source.ts"
45
46
  },
@@ -47,30 +48,35 @@
47
48
  "fdm-monster",
48
49
  "fdm-connector",
49
50
  "octoprint",
51
+ "moonraker",
52
+ "klipper",
53
+ "prusalink",
50
54
  "fdm",
51
55
  "3d printing",
52
56
  "pi",
53
57
  "node",
54
58
  "vue"
55
59
  ],
60
+ "resolutions": {
61
+ "tr46": "5.1.1"
62
+ },
56
63
  "dependencies": {
57
- "@fdm-monster/client": "1.9.0",
58
- "@fdm-monster/client-next": "0.0.18",
64
+ "@fdm-monster/client": "1.11.1",
65
+ "@fdm-monster/client-next": "0.0.21",
59
66
  "@octokit/plugin-throttling": "8.2.0",
60
- "@sentry/node": "9.6.1",
67
+ "@sentry/node": "9.20.0",
61
68
  "adm-zip": "0.5.16",
62
69
  "awilix": "12.0.5",
63
70
  "awilix-express": "9.0.2",
64
- "axios": "1.8.3",
71
+ "axios": "1.9.0",
65
72
  "bcryptjs": "3.0.2",
66
- "better-sqlite3": "11.9.1",
67
- "cache-manager": "6.4.1",
68
- "class-validator": "0.14.1",
73
+ "better-sqlite3": "11.10.0",
74
+ "class-validator": "0.14.2",
69
75
  "connect-history-api-fallback": "2.0.0",
70
76
  "cookie-parser": "1.4.7",
71
77
  "cors": "2.8.5",
72
78
  "cross-env": "7.0.3",
73
- "dotenv": "16.4.7",
79
+ "dotenv": "16.5.0",
74
80
  "eventemitter2": "6.4.9",
75
81
  "express": "4.21.2",
76
82
  "form-data": "4.0.2",
@@ -78,75 +84,67 @@
78
84
  "js-yaml": "4.1.0",
79
85
  "jsonwebtoken": "9.0.2",
80
86
  "lodash": "4.17.21",
81
- "luxon": "3.5.0",
87
+ "luxon": "3.6.1",
82
88
  "migrate-mongo": "11.0.0",
83
89
  "mongoose": "6.13.8",
84
- "multer": "1.4.5-lts.1",
85
- "node-input-validator": "4.5.1",
90
+ "multer": "1.4.5-lts.2",
86
91
  "octokit": "3.2.1",
87
92
  "passport": "0.7.0",
88
93
  "passport-anonymous": "1.0.1",
89
94
  "passport-jwt": "4.0.1",
95
+ "prom-client": "15.1.3",
90
96
  "reflect-metadata": "0.2.2",
91
- "semver": "7.7.1",
97
+ "semver": "7.7.2",
92
98
  "socket.io": "4.8.1",
93
- "toad-scheduler": "3.0.1",
94
- "typeorm": "0.3.21",
99
+ "toad-scheduler": "3.1.0",
100
+ "typeorm": "0.3.24",
95
101
  "uuid": "11.1.0",
96
102
  "winston": "3.17.0",
97
- "ws": "8.18.1"
103
+ "winston-loki": "6.1.3",
104
+ "ws": "8.18.2",
105
+ "zod": "3.25.7"
98
106
  },
99
107
  "devDependencies": {
108
+ "@biomejs/biome": "1.9.4",
100
109
  "@lcov-viewer/cli": "1.3.0",
101
110
  "@lcov-viewer/istanbul-report": "1.4.0",
102
- "@swc/cli": "0.6.0",
103
- "@swc/core": "1.11.11",
104
- "@swc/jest": "0.2.37",
111
+ "@swc/cli": "0.7.7",
112
+ "@swc/core": "1.11.24",
113
+ "@swc/jest": "0.2.38",
105
114
  "@types/adm-zip": "0.5.7",
106
- "@types/bcryptjs": "3.0.0",
107
- "@types/cache-manager": "5.0.0",
108
115
  "@types/connect-history-api-fallback": "1.5.4",
109
116
  "@types/cookie-parser": "1.4.8",
110
- "@types/express": "5.0.0",
117
+ "@types/express": "5.0.1",
111
118
  "@types/ip": "1.1.3",
112
119
  "@types/jest": "29.5.14",
113
120
  "@types/js-yaml": "4.0.9",
114
121
  "@types/lodash": "4.17.16",
115
- "@types/luxon": "3.4.2",
122
+ "@types/luxon": "3.6.2",
116
123
  "@types/migrate-mongo": "10.0.5",
117
124
  "@types/multer": "1.4.12",
118
- "@types/node": "22.13.10",
125
+ "@types/node": "22.15.19",
119
126
  "@types/passport-anonymous": "1.0.5",
120
127
  "@types/passport-jwt": "4.0.1",
121
- "@types/semver": "7.5.8",
122
- "@types/supertest": "6.0.2",
128
+ "@types/semver": "7.7.0",
129
+ "@types/supertest": "6.0.3",
123
130
  "@types/uuid": "10.0.0",
124
- "@types/ws": "8.18.0",
131
+ "@types/ws": "8.18.1",
125
132
  "chokidar": "4.0.3",
126
- "eslint": "9.22.0",
127
- "eslint-config-airbnb-base": "15.0.0",
128
- "eslint-config-prettier": "10.1.1",
129
- "eslint-config-standard": "17.1.0",
130
- "eslint-plugin-import": "2.31.0",
131
- "eslint-plugin-n": "17.16.2",
132
- "eslint-plugin-prettier": "4.2.1",
133
- "eslint-plugin-promise": "7.2.1",
134
133
  "express-list-routes": "1.2.4",
135
134
  "jest": "29.7.0",
136
135
  "jest-27-expect-message": "1.1.0",
137
136
  "mongodb-memory-server": "10.1.4",
138
137
  "nock": "13.5.6",
139
- "prettier": "2.8.8",
140
- "supertest": "7.0.0",
138
+ "supertest": "7.1.1",
141
139
  "ts-node": "10.9.2",
142
- "typescript": "5.8.2"
140
+ "typescript": "5.8.3"
143
141
  },
144
142
  "ignore-engines": false,
145
143
  "engine-strict": true,
146
144
  "engines": {
147
- "node": ">= 18.0.0",
145
+ "node": ">= 20.0.0",
148
146
  "npm": ">= 8.1.4",
149
- "yarn": ">= 1.22.10"
147
+ "yarn": ">= 4.8.0"
150
148
  },
151
- "packageManager": "yarn@4.7.0"
149
+ "packageManager": "yarn@4.9.1"
152
150
  }
package/tsconfig.json CHANGED
@@ -9,6 +9,8 @@
9
9
  "sourceMap": true,
10
10
  "outDir": "dist",
11
11
  "strict": true,
12
+ "strictNullChecks": true,
13
+ "strictPropertyInitialization": false,
12
14
  "lib": ["es2022"],
13
15
  "baseUrl": "./src",
14
16
  "forceConsistentCasingInFileNames": true,
@@ -17,7 +19,6 @@
17
19
  "emitDecoratorMetadata": true,
18
20
  "moduleResolution": "Node",
19
21
  "skipLibCheck": true,
20
- "strictNullChecks": false,
21
22
  "noImplicitAny": true,
22
23
  "paths": {
23
24
  "@/*": ["./*"]