@fdm-monster/server 1.5.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 (377) hide show
  1. package/.env +19 -0
  2. package/.env.template +43 -0
  3. package/.gitattributes +1 -0
  4. package/.idea/codeStyles/Project.xml +85 -0
  5. package/.idea/codeStyles/codeStyleConfig.xml +5 -0
  6. package/.idea/dbnavigator.xml +574 -0
  7. package/.idea/fdm-monster.iml +16 -0
  8. package/.idea/inspectionProfiles/Project_Default.xml +22 -0
  9. package/.idea/jsLibraryMappings.xml +6 -0
  10. package/.idea/modules.xml +12 -0
  11. package/.idea/prettier.xml +6 -0
  12. package/.idea/vcs.xml +17 -0
  13. package/.swcrc +33 -0
  14. package/CODE_OF_CONDUCT.md +46 -0
  15. package/CONTRIBUTING.md +134 -0
  16. package/LICENSE +661 -0
  17. package/README.md +149 -0
  18. package/SECURITY.md +16 -0
  19. package/dist/@type/express/index.d.js +7 -0
  20. package/dist/@type/express/index.d.js.map +1 -0
  21. package/dist/constants/authorization.constants.js +99 -0
  22. package/dist/constants/authorization.constants.js.map +1 -0
  23. package/dist/constants/event.constants.js +55 -0
  24. package/dist/constants/event.constants.js.map +1 -0
  25. package/dist/constants/http-status-codes.constants.js +268 -0
  26. package/dist/constants/http-status-codes.constants.js.map +1 -0
  27. package/dist/constants/server-settings.constants.js +119 -0
  28. package/dist/constants/server-settings.constants.js.map +1 -0
  29. package/dist/constants/service.constants.js +48 -0
  30. package/dist/constants/service.constants.js.map +1 -0
  31. package/dist/container.js +161 -0
  32. package/dist/container.js.map +1 -0
  33. package/dist/container.tokens.js +83 -0
  34. package/dist/container.tokens.js.map +1 -0
  35. package/dist/controllers/auth.controller.js +143 -0
  36. package/dist/controllers/auth.controller.js.map +1 -0
  37. package/dist/controllers/batch-call.controller.js +59 -0
  38. package/dist/controllers/batch-call.controller.js.map +1 -0
  39. package/dist/controllers/camera-stream.controller.js +57 -0
  40. package/dist/controllers/camera-stream.controller.js.map +1 -0
  41. package/dist/controllers/custom-gcode.controller.js +76 -0
  42. package/dist/controllers/custom-gcode.controller.js.map +1 -0
  43. package/dist/controllers/first-time-setup.controller.js +65 -0
  44. package/dist/controllers/first-time-setup.controller.js.map +1 -0
  45. package/dist/controllers/floor.controller.js +78 -0
  46. package/dist/controllers/floor.controller.js.map +1 -0
  47. package/dist/controllers/plugin-firmware-update.controller.js +140 -0
  48. package/dist/controllers/plugin-firmware-update.controller.js.map +1 -0
  49. package/dist/controllers/print-completion.controller.js +58 -0
  50. package/dist/controllers/print-completion.controller.js.map +1 -0
  51. package/dist/controllers/printer-files.controller.js +208 -0
  52. package/dist/controllers/printer-files.controller.js.map +1 -0
  53. package/dist/controllers/printer-settings.controller.js +58 -0
  54. package/dist/controllers/printer-settings.controller.js.map +1 -0
  55. package/dist/controllers/printer.controller.js +287 -0
  56. package/dist/controllers/printer.controller.js.map +1 -0
  57. package/dist/controllers/server-private.controller.js +122 -0
  58. package/dist/controllers/server-private.controller.js.map +1 -0
  59. package/dist/controllers/server-public.controller.js +140 -0
  60. package/dist/controllers/server-public.controller.js.map +1 -0
  61. package/dist/controllers/settings.controller.js +89 -0
  62. package/dist/controllers/settings.controller.js.map +1 -0
  63. package/dist/controllers/user.controller.js +137 -0
  64. package/dist/controllers/user.controller.js.map +1 -0
  65. package/dist/controllers/validation/auth-controller.validation.js +15 -0
  66. package/dist/controllers/validation/auth-controller.validation.js.map +1 -0
  67. package/dist/controllers/validation/batch-controller.validation.js +29 -0
  68. package/dist/controllers/validation/batch-controller.validation.js.map +1 -0
  69. package/dist/controllers/validation/generic.validation.js +15 -0
  70. package/dist/controllers/validation/generic.validation.js.map +1 -0
  71. package/dist/controllers/validation/printer-controller.validation.js +66 -0
  72. package/dist/controllers/validation/printer-controller.validation.js.map +1 -0
  73. package/dist/controllers/validation/printer-files-controller.validation.js +66 -0
  74. package/dist/controllers/validation/printer-files-controller.validation.js.map +1 -0
  75. package/dist/controllers/validation/printer-settings-controller.validation.js +15 -0
  76. package/dist/controllers/validation/printer-settings-controller.validation.js.map +1 -0
  77. package/dist/controllers/validation/setting.validation.js +19 -0
  78. package/dist/controllers/validation/setting.validation.js.map +1 -0
  79. package/dist/controllers/validation/user-controller.validation.js +16 -0
  80. package/dist/controllers/validation/user-controller.validation.js.map +1 -0
  81. package/dist/exceptions/job.exceptions.js +18 -0
  82. package/dist/exceptions/job.exceptions.js.map +1 -0
  83. package/dist/exceptions/runtime.exceptions.js +108 -0
  84. package/dist/exceptions/runtime.exceptions.js.map +1 -0
  85. package/dist/handlers/cache-manager.js +25 -0
  86. package/dist/handlers/cache-manager.js.map +1 -0
  87. package/dist/handlers/event-emitter.js +31 -0
  88. package/dist/handlers/event-emitter.js.map +1 -0
  89. package/dist/handlers/logger-factory.js +18 -0
  90. package/dist/handlers/logger-factory.js.map +1 -0
  91. package/dist/handlers/logger.js +85 -0
  92. package/dist/handlers/logger.js.map +1 -0
  93. package/dist/handlers/validators.js +131 -0
  94. package/dist/handlers/validators.js.map +1 -0
  95. package/dist/index.js +19 -0
  96. package/dist/index.js.map +1 -0
  97. package/dist/middleware/authenticate.js +83 -0
  98. package/dist/middleware/authenticate.js.map +1 -0
  99. package/dist/middleware/database.js +26 -0
  100. package/dist/middleware/database.js.map +1 -0
  101. package/dist/middleware/exception.handler.js +96 -0
  102. package/dist/middleware/exception.handler.js.map +1 -0
  103. package/dist/middleware/global.middleware.js +58 -0
  104. package/dist/middleware/global.middleware.js.map +1 -0
  105. package/dist/middleware/passport.js +44 -0
  106. package/dist/middleware/passport.js.map +1 -0
  107. package/dist/middleware/printer.js +49 -0
  108. package/dist/middleware/printer.js.map +1 -0
  109. package/dist/migrations/1696187882312-PrinterFile.js +40 -0
  110. package/dist/migrations/1696187882312-PrinterFile.js.map +1 -0
  111. package/dist/models/Auth/Permission.js +20 -0
  112. package/dist/models/Auth/Permission.js.map +1 -0
  113. package/dist/models/Auth/RefreshToken.js +41 -0
  114. package/dist/models/Auth/RefreshToken.js.map +1 -0
  115. package/dist/models/Auth/Role.js +20 -0
  116. package/dist/models/Auth/Role.js.map +1 -0
  117. package/dist/models/Auth/User.js +51 -0
  118. package/dist/models/Auth/User.js.map +1 -0
  119. package/dist/models/CameraStream.js +59 -0
  120. package/dist/models/CameraStream.js.map +1 -0
  121. package/dist/models/CustomGcode.js +28 -0
  122. package/dist/models/CustomGcode.js.map +1 -0
  123. package/dist/models/Floor.js +33 -0
  124. package/dist/models/Floor.js.map +1 -0
  125. package/dist/models/FloorPrinter.js +29 -0
  126. package/dist/models/FloorPrinter.js.map +1 -0
  127. package/dist/models/PrintCompletion.js +40 -0
  128. package/dist/models/PrintCompletion.js.map +1 -0
  129. package/dist/models/Printer.js +113 -0
  130. package/dist/models/Printer.js.map +1 -0
  131. package/dist/models/ServerSettings.js +168 -0
  132. package/dist/models/ServerSettings.js.map +1 -0
  133. package/dist/models/Settings.js +168 -0
  134. package/dist/models/Settings.js.map +1 -0
  135. package/dist/models/index.js +54 -0
  136. package/dist/models/index.js.map +1 -0
  137. package/dist/mongo-migrations/20210713120034-printers-settingsapperance-apikey.js +49 -0
  138. package/dist/mongo-migrations/20210713120034-printers-settingsapperance-apikey.js.map +1 -0
  139. package/dist/mongo-migrations/20210907173950-printers-enabled.js +39 -0
  140. package/dist/mongo-migrations/20210907173950-printers-enabled.js.map +1 -0
  141. package/dist/mongo-migrations/20211029110742-user-password-passwordhash.js +39 -0
  142. package/dist/mongo-migrations/20211029110742-user-password-passwordhash.js.map +1 -0
  143. package/dist/mongo-migrations/20230414141005-floor-remove-groupinfloor.js +60 -0
  144. package/dist/mongo-migrations/20230414141005-floor-remove-groupinfloor.js.map +1 -0
  145. package/dist/mongo-migrations/20230427202911-printer-remove-sortindex.js +30 -0
  146. package/dist/mongo-migrations/20230427202911-printer-remove-sortindex.js.map +1 -0
  147. package/dist/mongo-migrations/20230716065316-user-remove-name.js +30 -0
  148. package/dist/mongo-migrations/20230716065316-user-remove-name.js.map +1 -0
  149. package/dist/nodemon_restart_trigger.js +4 -0
  150. package/dist/nodemon_restart_trigger.js.map +1 -0
  151. package/dist/server.constants.js +99 -0
  152. package/dist/server.constants.js.map +1 -0
  153. package/dist/server.core.js +91 -0
  154. package/dist/server.core.js.map +1 -0
  155. package/dist/server.env.js +225 -0
  156. package/dist/server.env.js.map +1 -0
  157. package/dist/server.host.js +106 -0
  158. package/dist/server.host.js.map +1 -0
  159. package/dist/services/authentication/auth.service.js +136 -0
  160. package/dist/services/authentication/auth.service.js.map +1 -0
  161. package/dist/services/authentication/jwt.service.js +34 -0
  162. package/dist/services/authentication/jwt.service.js.map +1 -0
  163. package/dist/services/authentication/permission.service.js +73 -0
  164. package/dist/services/authentication/permission.service.js.map +1 -0
  165. package/dist/services/authentication/refresh-token.service.js +99 -0
  166. package/dist/services/authentication/refresh-token.service.js.map +1 -0
  167. package/dist/services/authentication/role.service.js +120 -0
  168. package/dist/services/authentication/role.service.js.map +1 -0
  169. package/dist/services/authentication/user.service.js +154 -0
  170. package/dist/services/authentication/user.service.js.map +1 -0
  171. package/dist/services/batch-call.service.js +148 -0
  172. package/dist/services/batch-call.service.js.map +1 -0
  173. package/dist/services/camera-stream.service.js +80 -0
  174. package/dist/services/camera-stream.service.js.map +1 -0
  175. package/dist/services/core/client-bundle.service.js +156 -0
  176. package/dist/services/core/client-bundle.service.js.map +1 -0
  177. package/dist/services/core/config.service.js +26 -0
  178. package/dist/services/core/config.service.js.map +1 -0
  179. package/dist/services/core/github.service.js +74 -0
  180. package/dist/services/core/github.service.js.map +1 -0
  181. package/dist/services/core/logs-manager.service.js +87 -0
  182. package/dist/services/core/logs-manager.service.js.map +1 -0
  183. package/dist/services/core/monsterpi.service.js +38 -0
  184. package/dist/services/core/monsterpi.service.js.map +1 -0
  185. package/dist/services/core/multer.service.js +122 -0
  186. package/dist/services/core/multer.service.js.map +1 -0
  187. package/dist/services/core/server-release.service.js +116 -0
  188. package/dist/services/core/server-release.service.js.map +1 -0
  189. package/dist/services/core/server-update.service.js +73 -0
  190. package/dist/services/core/server-update.service.js.map +1 -0
  191. package/dist/services/core/task-manager.service.js +196 -0
  192. package/dist/services/core/task-manager.service.js.map +1 -0
  193. package/dist/services/core/yaml.service.js +278 -0
  194. package/dist/services/core/yaml.service.js.map +1 -0
  195. package/dist/services/custom-gcode.service.js +48 -0
  196. package/dist/services/custom-gcode.service.js.map +1 -0
  197. package/dist/services/floor.service.js +183 -0
  198. package/dist/services/floor.service.js.map +1 -0
  199. package/dist/services/influxdb-v2/influx-db-v2-base.service.js +45 -0
  200. package/dist/services/influxdb-v2/influx-db-v2-base.service.js.map +1 -0
  201. package/dist/services/interfaces/auth.service.interface.js +6 -0
  202. package/dist/services/interfaces/auth.service.interface.js.map +1 -0
  203. package/dist/services/interfaces/camera-stream.dto.js +109 -0
  204. package/dist/services/interfaces/camera-stream.dto.js.map +1 -0
  205. package/dist/services/interfaces/camera-stream.service.interface.js +6 -0
  206. package/dist/services/interfaces/camera-stream.service.interface.js.map +1 -0
  207. package/dist/services/interfaces/custom-gcode.dto.js +18 -0
  208. package/dist/services/interfaces/custom-gcode.dto.js.map +1 -0
  209. package/dist/services/interfaces/custom-gcode.service.interface.js +6 -0
  210. package/dist/services/interfaces/custom-gcode.service.interface.js.map +1 -0
  211. package/dist/services/interfaces/floor.dto.js +61 -0
  212. package/dist/services/interfaces/floor.dto.js.map +1 -0
  213. package/dist/services/interfaces/floor.service.interface.js +6 -0
  214. package/dist/services/interfaces/floor.service.interface.js.map +1 -0
  215. package/dist/services/interfaces/gcode-analysis.dto.js +6 -0
  216. package/dist/services/interfaces/gcode-analysis.dto.js.map +1 -0
  217. package/dist/services/interfaces/jwt.service.interface.js +6 -0
  218. package/dist/services/interfaces/jwt.service.interface.js.map +1 -0
  219. package/dist/services/interfaces/login.dto.js +16 -0
  220. package/dist/services/interfaces/login.dto.js.map +1 -0
  221. package/dist/services/interfaces/page.interface.js +16 -0
  222. package/dist/services/interfaces/page.interface.js.map +1 -0
  223. package/dist/services/interfaces/permission.dto.js +16 -0
  224. package/dist/services/interfaces/permission.dto.js.map +1 -0
  225. package/dist/services/interfaces/permission.service.interface.js +6 -0
  226. package/dist/services/interfaces/permission.service.interface.js.map +1 -0
  227. package/dist/services/interfaces/printer-file.dto.js +27 -0
  228. package/dist/services/interfaces/printer-file.dto.js.map +1 -0
  229. package/dist/services/interfaces/printer-files.service.interface.js +6 -0
  230. package/dist/services/interfaces/printer-files.service.interface.js.map +1 -0
  231. package/dist/services/interfaces/printer.dto.js +18 -0
  232. package/dist/services/interfaces/printer.dto.js.map +1 -0
  233. package/dist/services/interfaces/printer.service.interface.js +6 -0
  234. package/dist/services/interfaces/printer.service.interface.js.map +1 -0
  235. package/dist/services/interfaces/role-service.interface.js +6 -0
  236. package/dist/services/interfaces/role-service.interface.js.map +1 -0
  237. package/dist/services/interfaces/settings.dto.js +34 -0
  238. package/dist/services/interfaces/settings.dto.js.map +1 -0
  239. package/dist/services/interfaces/settings.service.interface.js +6 -0
  240. package/dist/services/interfaces/settings.service.interface.js.map +1 -0
  241. package/dist/services/interfaces/user-service.interface.js +6 -0
  242. package/dist/services/interfaces/user-service.interface.js.map +1 -0
  243. package/dist/services/interfaces/user.dto.js +39 -0
  244. package/dist/services/interfaces/user.dto.js.map +1 -0
  245. package/dist/services/octoprint/constants/firmware-update-settings.constants.js +32 -0
  246. package/dist/services/octoprint/constants/firmware-update-settings.constants.js.map +1 -0
  247. package/dist/services/octoprint/constants/octoprint-service.constants.js +101 -0
  248. package/dist/services/octoprint/constants/octoprint-service.constants.js.map +1 -0
  249. package/dist/services/octoprint/constants/octoprint-websocket.constants.js +88 -0
  250. package/dist/services/octoprint/constants/octoprint-websocket.constants.js.map +1 -0
  251. package/dist/services/octoprint/octoprint-api.routes.js +192 -0
  252. package/dist/services/octoprint/octoprint-api.routes.js.map +1 -0
  253. package/dist/services/octoprint/octoprint-api.service.js +402 -0
  254. package/dist/services/octoprint/octoprint-api.service.js.map +1 -0
  255. package/dist/services/octoprint/octoprint-sockio.adapter.js +309 -0
  256. package/dist/services/octoprint/octoprint-sockio.adapter.js.map +1 -0
  257. package/dist/services/octoprint/plugin-base.service.js +102 -0
  258. package/dist/services/octoprint/plugin-base.service.js.map +1 -0
  259. package/dist/services/octoprint/plugin-firmware-update.service.js +104 -0
  260. package/dist/services/octoprint/plugin-firmware-update.service.js.map +1 -0
  261. package/dist/services/octoprint/plugin-repository.cache.js +45 -0
  262. package/dist/services/octoprint/plugin-repository.cache.js.map +1 -0
  263. package/dist/services/octoprint/socket.factory.js +22 -0
  264. package/dist/services/octoprint/socket.factory.js.map +1 -0
  265. package/dist/services/octoprint/utils/api.utils.js +72 -0
  266. package/dist/services/octoprint/utils/api.utils.js.map +1 -0
  267. package/dist/services/orm/floor.service.interface.js +73 -0
  268. package/dist/services/orm/floor.service.interface.js.map +1 -0
  269. package/dist/services/orm/printer.service.interface.js +6 -0
  270. package/dist/services/orm/printer.service.interface.js.map +1 -0
  271. package/dist/services/print-completion.service.js +162 -0
  272. package/dist/services/print-completion.service.js.map +1 -0
  273. package/dist/services/printer-files.service.js +91 -0
  274. package/dist/services/printer-files.service.js.map +1 -0
  275. package/dist/services/printer.service.js +230 -0
  276. package/dist/services/printer.service.js.map +1 -0
  277. package/dist/services/settings.service.js +158 -0
  278. package/dist/services/settings.service.js.map +1 -0
  279. package/dist/services/validators/floor-service.validation.js +60 -0
  280. package/dist/services/validators/floor-service.validation.js.map +1 -0
  281. package/dist/services/validators/print-completion-service.validation.js +20 -0
  282. package/dist/services/validators/print-completion-service.validation.js.map +1 -0
  283. package/dist/services/validators/printer-service.validation.js +48 -0
  284. package/dist/services/validators/printer-service.validation.js.map +1 -0
  285. package/dist/services/validators/settings-service.validation.js +71 -0
  286. package/dist/services/validators/settings-service.validation.js.map +1 -0
  287. package/dist/services/validators/user-service.validation.js +33 -0
  288. package/dist/services/validators/user-service.validation.js.map +1 -0
  289. package/dist/services/validators/yaml-service.validation.js +63 -0
  290. package/dist/services/validators/yaml-service.validation.js.map +1 -0
  291. package/dist/services/yaml.service.js +278 -0
  292. package/dist/services/yaml.service.js.map +1 -0
  293. package/dist/shared.constants.js +15 -0
  294. package/dist/shared.constants.js.map +1 -0
  295. package/dist/state/file-upload-tracker.cache.js +88 -0
  296. package/dist/state/file-upload-tracker.cache.js.map +1 -0
  297. package/dist/state/file.cache.js +99 -0
  298. package/dist/state/file.cache.js.map +1 -0
  299. package/dist/state/files.store.js +132 -0
  300. package/dist/state/files.store.js.map +1 -0
  301. package/dist/state/floor.store.js +99 -0
  302. package/dist/state/floor.store.js.map +1 -0
  303. package/dist/state/printer-events.cache.js +97 -0
  304. package/dist/state/printer-events.cache.js.map +1 -0
  305. package/dist/state/printer-socket.store.js +217 -0
  306. package/dist/state/printer-socket.store.js.map +1 -0
  307. package/dist/state/printer.cache.js +112 -0
  308. package/dist/state/printer.cache.js.map +1 -0
  309. package/dist/state/settings.store.js +154 -0
  310. package/dist/state/settings.store.js.map +1 -0
  311. package/dist/state/socket-io.gateway.js +66 -0
  312. package/dist/state/socket-io.gateway.js.map +1 -0
  313. package/dist/state/test-printer-socket.store.js +91 -0
  314. package/dist/state/test-printer-socket.store.js.map +1 -0
  315. package/dist/state/validation/create-test-printer.validation.js +18 -0
  316. package/dist/state/validation/create-test-printer.validation.js.map +1 -0
  317. package/dist/task.presets.js +50 -0
  318. package/dist/task.presets.js.map +1 -0
  319. package/dist/tasks/boot.task.js +198 -0
  320. package/dist/tasks/boot.task.js.map +1 -0
  321. package/dist/tasks/client-bundle.task.js +32 -0
  322. package/dist/tasks/client-bundle.task.js.map +1 -0
  323. package/dist/tasks/print-completion.socketio.task.js +85 -0
  324. package/dist/tasks/print-completion.socketio.task.js.map +1 -0
  325. package/dist/tasks/printer-file-clean.task.js +72 -0
  326. package/dist/tasks/printer-file-clean.task.js.map +1 -0
  327. package/dist/tasks/printer-websocket-restore.task.js +64 -0
  328. package/dist/tasks/printer-websocket-restore.task.js.map +1 -0
  329. package/dist/tasks/printer-websocket.task.js +43 -0
  330. package/dist/tasks/printer-websocket.task.js.map +1 -0
  331. package/dist/tasks/socketio.task.js +83 -0
  332. package/dist/tasks/socketio.task.js.map +1 -0
  333. package/dist/tasks/software-update.task.js +22 -0
  334. package/dist/tasks/software-update.task.js.map +1 -0
  335. package/dist/tasks.js +48 -0
  336. package/dist/tasks.js.map +1 -0
  337. package/dist/types/express/index.d.js +7 -0
  338. package/dist/types/express/index.d.js.map +1 -0
  339. package/dist/utils/array.util.js +27 -0
  340. package/dist/utils/array.util.js.map +1 -0
  341. package/dist/utils/benchmark.util.js +39 -0
  342. package/dist/utils/benchmark.util.js.map +1 -0
  343. package/dist/utils/cache/key-diff.cache.js +128 -0
  344. package/dist/utils/cache/key-diff.cache.js.map +1 -0
  345. package/dist/utils/correlation-token.util.js +15 -0
  346. package/dist/utils/correlation-token.util.js.map +1 -0
  347. package/dist/utils/crypto.utils.js +29 -0
  348. package/dist/utils/crypto.utils.js.map +1 -0
  349. package/dist/utils/env.utils.js +98 -0
  350. package/dist/utils/env.utils.js.map +1 -0
  351. package/dist/utils/error.utils.js +15 -0
  352. package/dist/utils/error.utils.js.map +1 -0
  353. package/dist/utils/find-predicate.utils.js +18 -0
  354. package/dist/utils/find-predicate.utils.js.map +1 -0
  355. package/dist/utils/fs.utils.js +38 -0
  356. package/dist/utils/fs.utils.js.map +1 -0
  357. package/dist/utils/is-docker.js +40 -0
  358. package/dist/utils/is-docker.js.map +1 -0
  359. package/dist/utils/mapper.utils.js +33 -0
  360. package/dist/utils/mapper.utils.js.map +1 -0
  361. package/dist/utils/metric.utils.js +35 -0
  362. package/dist/utils/metric.utils.js.map +1 -0
  363. package/dist/utils/normalize-url.js +245 -0
  364. package/dist/utils/normalize-url.js.map +1 -0
  365. package/dist/utils/semver.utils.js +18 -0
  366. package/dist/utils/semver.utils.js.map +1 -0
  367. package/dist/utils/time.utils.js +26 -0
  368. package/dist/utils/time.utils.js.map +1 -0
  369. package/dist/utils/url.utils.js +33 -0
  370. package/dist/utils/url.utils.js.map +1 -0
  371. package/dist/utils/websocket.adapter.js +105 -0
  372. package/dist/utils/websocket.adapter.js.map +1 -0
  373. package/migrate-mongo-config.js +45 -0
  374. package/nodemon_restart_trigger.js +1 -0
  375. package/package.json +149 -0
  376. package/src/index.ts +19 -0
  377. package/tsconfig.json +28 -0
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ module.exports = {
3
+ async up (db, client) {
4
+ const session = client.startSession();
5
+ try {
6
+ // Safety first
7
+ await session.withTransaction(async ()=>{
8
+ // Do the migration
9
+ const dbCollection = db.collection("printers");
10
+ await dbCollection.updateMany({}, {
11
+ $rename: {
12
+ settingsApperance: "settingsAppearance"
13
+ }
14
+ });
15
+ await dbCollection.updateMany({}, {
16
+ $rename: {
17
+ apikey: "apiKey"
18
+ }
19
+ });
20
+ });
21
+ } finally{
22
+ await session.endSession();
23
+ }
24
+ },
25
+ async down (db, client) {
26
+ const session = client.startSession();
27
+ try {
28
+ // Safety first
29
+ await session.withTransaction(async ()=>{
30
+ // Do the inverse migration
31
+ const dbCollection = db.collection("printers");
32
+ await dbCollection.updateMany({}, {
33
+ $rename: {
34
+ settingsAppearance: "settingsApperance"
35
+ }
36
+ });
37
+ await dbCollection.updateMany({}, {
38
+ $rename: {
39
+ apiKey: "apikey"
40
+ }
41
+ });
42
+ });
43
+ } finally{
44
+ await session.endSession();
45
+ }
46
+ }
47
+ };
48
+
49
+ //# sourceMappingURL=20210713120034-printers-settingsapperance-apikey.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/mongo-migrations/20210713120034-printers-settingsapperance-apikey.ts"],"names":["module","exports","up","db","client","session","startSession","withTransaction","dbCollection","collection","updateMany","$rename","settingsApperance","apikey","endSession","down","settingsAppearance","apiKey"],"mappings":";AAAAA,OAAOC,OAAO,GAAG;IACf,MAAMC,IAAGC,EAAE,EAAEC,MAAM;QACjB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YACF,eAAe;YACf,MAAMD,QAAQE,eAAe,CAAC;gBAC5B,mBAAmB;gBACnB,MAAMC,eAAeL,GAAGM,UAAU,CAAC;gBACnC,MAAMD,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEC,SAAS;wBAAEC,mBAAmB;oBAAqB;gBAAE;gBACzF,MAAMJ,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEC,SAAS;wBAAEE,QAAQ;oBAAS;gBAAE;YACpE;QACF,SAAU;YACR,MAAMR,QAAQS,UAAU;QAC1B;IACF;IAEA,MAAMC,MAAKZ,EAAE,EAAEC,MAAM;QACnB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YACF,eAAe;YACf,MAAMD,QAAQE,eAAe,CAAC;gBAC5B,2BAA2B;gBAC3B,MAAMC,eAAeL,GAAGM,UAAU,CAAC;gBACnC,MAAMD,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEC,SAAS;wBAAEK,oBAAoB;oBAAoB;gBAAE;gBACzF,MAAMR,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEC,SAAS;wBAAEM,QAAQ;oBAAS;gBAAE;YACpE;QACF,SAAU;YACR,MAAMZ,QAAQS,UAAU;QAC1B;IACF;AACF"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ module.exports = {
3
+ async up (db, client) {
4
+ const session = client.startSession();
5
+ try {
6
+ // Safety first
7
+ await session.withTransaction(async ()=>{
8
+ // Do the migration
9
+ const dbCollection = db.collection("printers");
10
+ await dbCollection.updateMany({}, {
11
+ $set: {
12
+ enabled: true
13
+ }
14
+ });
15
+ });
16
+ } finally{
17
+ await session.endSession();
18
+ }
19
+ },
20
+ async down (db, client) {
21
+ const session = client.startSession();
22
+ try {
23
+ // Safety first
24
+ await session.withTransaction(async ()=>{
25
+ // Do the migration (destructive!)
26
+ const dbCollection = db.collection("printers");
27
+ await dbCollection.updateMany({}, {
28
+ unset: {
29
+ enabled: ""
30
+ }
31
+ });
32
+ });
33
+ } finally{
34
+ await session.endSession();
35
+ }
36
+ }
37
+ };
38
+
39
+ //# sourceMappingURL=20210907173950-printers-enabled.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/mongo-migrations/20210907173950-printers-enabled.ts"],"names":["module","exports","up","db","client","session","startSession","withTransaction","dbCollection","collection","updateMany","$set","enabled","endSession","down","unset"],"mappings":";AAAAA,OAAOC,OAAO,GAAG;IACf,MAAMC,IAAGC,EAAE,EAAEC,MAAM;QACjB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YACF,eAAe;YACf,MAAMD,QAAQE,eAAe,CAAC;gBAC5B,mBAAmB;gBACnB,MAAMC,eAAeL,GAAGM,UAAU,CAAC;gBACnC,MAAMD,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEC,MAAM;wBAAEC,SAAS;oBAAK;gBAAE;YAC9D;QACF,SAAU;YACR,MAAMP,QAAQQ,UAAU;QAC1B;IACF;IAEA,MAAMC,MAAKX,EAAE,EAAEC,MAAM;QACnB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YACF,eAAe;YACf,MAAMD,QAAQE,eAAe,CAAC;gBAC5B,kCAAkC;gBAClC,MAAMC,eAAeL,GAAGM,UAAU,CAAC;gBACnC,MAAMD,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEK,OAAO;wBAAEH,SAAS;oBAAG;gBAAE;YAC7D;QACF,SAAU;YACR,MAAMP,QAAQQ,UAAU;QAC1B;IACF;AACF"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ module.exports = {
3
+ async up (db, client) {
4
+ const session = client.startSession();
5
+ try {
6
+ // Safety first
7
+ await session.withTransaction(async ()=>{
8
+ // Do the migration
9
+ const dbCollection = db.collection("users");
10
+ await dbCollection.updateMany({}, {
11
+ $rename: {
12
+ password: "passwordHash"
13
+ }
14
+ });
15
+ });
16
+ } finally{
17
+ await session.endSession();
18
+ }
19
+ },
20
+ async down (db, client) {
21
+ const session = client.startSession();
22
+ try {
23
+ // Safety first
24
+ await session.withTransaction(async ()=>{
25
+ // Do the migration
26
+ const dbCollection = db.collection("users");
27
+ await dbCollection.updateMany({}, {
28
+ $rename: {
29
+ passwordHash: "password"
30
+ }
31
+ });
32
+ });
33
+ } finally{
34
+ await session.endSession();
35
+ }
36
+ }
37
+ };
38
+
39
+ //# sourceMappingURL=20211029110742-user-password-passwordhash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/mongo-migrations/20211029110742-user-password-passwordhash.ts"],"names":["module","exports","up","db","client","session","startSession","withTransaction","dbCollection","collection","updateMany","$rename","password","endSession","down","passwordHash"],"mappings":";AAAAA,OAAOC,OAAO,GAAG;IACf,MAAMC,IAAGC,EAAE,EAAEC,MAAM;QACjB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YACF,eAAe;YACf,MAAMD,QAAQE,eAAe,CAAC;gBAC5B,mBAAmB;gBACnB,MAAMC,eAAeL,GAAGM,UAAU,CAAC;gBACnC,MAAMD,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEC,SAAS;wBAAEC,UAAU;oBAAe;gBAAE;YAC5E;QACF,SAAU;YACR,MAAMP,QAAQQ,UAAU;QAC1B;IACF;IAEA,MAAMC,MAAKX,EAAE,EAAEC,MAAM;QACnB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YACF,eAAe;YACf,MAAMD,QAAQE,eAAe,CAAC;gBAC5B,mBAAmB;gBACnB,MAAMC,eAAeL,GAAGM,UAAU,CAAC;gBACnC,MAAMD,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEC,SAAS;wBAAEI,cAAc;oBAAW;gBAAE;YAC5E;QACF,SAAU;YACR,MAAMV,QAAQQ,UAAU;QAC1B;IACF;AACF"}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ module.exports = {
3
+ async up (db, client) {
4
+ const session = client.startSession();
5
+ try {
6
+ await session.withTransaction(async ()=>{
7
+ const collections = await client.db().listCollections().toArray();
8
+ if (collections.find((c)=>c.name === "printerfloors")) {
9
+ await db.collection("printerfloors").update({}, {
10
+ $unset: {
11
+ printerGroups: 1
12
+ }
13
+ }, {
14
+ multi: true
15
+ });
16
+ await db.collection("printerfloors").update({}, {
17
+ $set: {
18
+ printers: []
19
+ }
20
+ }, {
21
+ multi: true
22
+ });
23
+ await db.collection("printerfloors").rename("floors");
24
+ }
25
+ });
26
+ } finally{
27
+ await session.endSession();
28
+ }
29
+ },
30
+ async down (db, client) {
31
+ const session = client.startSession();
32
+ try {
33
+ const collections = await client.db().listCollections().toArray();
34
+ if (collections.find((c)=>c.name === "floors")) {
35
+ await db.collection("printerfloors").update({}, {
36
+ $set: {
37
+ printerGroups: []
38
+ }
39
+ }, {
40
+ multi: true
41
+ });
42
+ await db.collection("printerfloors").update({}, {
43
+ $unset: {
44
+ printers: 1
45
+ }
46
+ }, {
47
+ multi: true
48
+ });
49
+ await db.collection("floors").rename("printerfloors");
50
+ }
51
+ if (!collections.find((c)=>c.name === "printerfloors")) {
52
+ throw new Error("Illegal migration state, didnt find floors table");
53
+ }
54
+ } finally{
55
+ await session.endSession();
56
+ }
57
+ }
58
+ };
59
+
60
+ //# sourceMappingURL=20230414141005-floor-remove-groupinfloor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/mongo-migrations/20230414141005-floor-remove-groupinfloor.ts"],"names":["module","exports","up","db","client","session","startSession","withTransaction","collections","listCollections","toArray","find","c","name","collection","update","$unset","printerGroups","multi","$set","printers","rename","endSession","down","Error"],"mappings":";AAAAA,OAAOC,OAAO,GAAG;IACf,MAAMC,IAAGC,EAAE,EAAEC,MAAM;QACjB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YACF,MAAMD,QAAQE,eAAe,CAAC;gBAC5B,MAAMC,cAAc,MAAMJ,OAAOD,EAAE,GAAGM,eAAe,GAAGC,OAAO;gBAC/D,IAAIF,YAAYG,IAAI,CAAC,CAACC,IAAMA,EAAEC,IAAI,KAAK,kBAAkB;oBACvD,MAAMV,GAAGW,UAAU,CAAC,iBAAiBC,MAAM,CAAC,CAAC,GAAG;wBAAEC,QAAQ;4BAAEC,eAAe;wBAAE;oBAAE,GAAG;wBAAEC,OAAO;oBAAK;oBAChG,MAAMf,GAAGW,UAAU,CAAC,iBAAiBC,MAAM,CAAC,CAAC,GAAG;wBAAEI,MAAM;4BAAEC,UAAU,EAAE;wBAAC;oBAAE,GAAG;wBAAEF,OAAO;oBAAK;oBAC1F,MAAMf,GAAGW,UAAU,CAAC,iBAAiBO,MAAM,CAAC;gBAC9C;YACF;QACF,SAAU;YACR,MAAMhB,QAAQiB,UAAU;QAC1B;IACF;IAEA,MAAMC,MAAKpB,EAAE,EAAEC,MAAM;QACnB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YACF,MAAME,cAAc,MAAMJ,OAAOD,EAAE,GAAGM,eAAe,GAAGC,OAAO;YAC/D,IAAIF,YAAYG,IAAI,CAAC,CAACC,IAAMA,EAAEC,IAAI,KAAK,WAAW;gBAChD,MAAMV,GAAGW,UAAU,CAAC,iBAAiBC,MAAM,CAAC,CAAC,GAAG;oBAAEI,MAAM;wBAAEF,eAAe,EAAE;oBAAC;gBAAE,GAAG;oBAAEC,OAAO;gBAAK;gBAC/F,MAAMf,GAAGW,UAAU,CAAC,iBAAiBC,MAAM,CAAC,CAAC,GAAG;oBAAEC,QAAQ;wBAAEI,UAAU;oBAAE;gBAAE,GAAG;oBAAEF,OAAO;gBAAK;gBAC3F,MAAMf,GAAGW,UAAU,CAAC,UAAUO,MAAM,CAAC;YACvC;YAEA,IAAI,CAACb,YAAYG,IAAI,CAAC,CAACC,IAAMA,EAAEC,IAAI,KAAK,kBAAkB;gBACxD,MAAM,IAAIW,MAAM;YAClB;QACF,SAAU;YACR,MAAMnB,QAAQiB,UAAU;QAC1B;IACF;AACF"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ module.exports = {
3
+ async up (db, client) {
4
+ const session = client.startSession();
5
+ try {
6
+ await session.withTransaction(async ()=>{
7
+ await db.collection("printers").update({}, {
8
+ $unset: {
9
+ sortIndex: 1
10
+ }
11
+ }, {
12
+ multi: true
13
+ });
14
+ });
15
+ } finally{
16
+ await session.endSession();
17
+ }
18
+ },
19
+ async down (db, client) {
20
+ await db.collection("printers").update({}, {
21
+ $set: {
22
+ sortIndex: 0
23
+ }
24
+ }, {
25
+ multi: true
26
+ });
27
+ }
28
+ };
29
+
30
+ //# sourceMappingURL=20230427202911-printer-remove-sortindex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/mongo-migrations/20230427202911-printer-remove-sortindex.ts"],"names":["module","exports","up","db","client","session","startSession","withTransaction","collection","update","$unset","sortIndex","multi","endSession","down","$set"],"mappings":";AAAAA,OAAOC,OAAO,GAAG;IACf,MAAMC,IAAGC,EAAE,EAAEC,MAAM;QACjB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YACF,MAAMD,QAAQE,eAAe,CAAC;gBAC5B,MAAMJ,GAAGK,UAAU,CAAC,YAAYC,MAAM,CAAC,CAAC,GAAG;oBAAEC,QAAQ;wBAAEC,WAAW;oBAAE;gBAAE,GAAG;oBAAEC,OAAO;gBAAK;YACzF;QACF,SAAU;YACR,MAAMP,QAAQQ,UAAU;QAC1B;IACF;IAEA,MAAMC,MAAKX,EAAE,EAAEC,MAAM;QACnB,MAAMD,GAAGK,UAAU,CAAC,YAAYC,MAAM,CAAC,CAAC,GAAG;YAAEM,MAAM;gBAAEJ,WAAW;YAAE;QAAE,GAAG;YAAEC,OAAO;QAAK;IACvF;AACF"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ module.exports = {
3
+ async up (db, client) {
4
+ const session = client.startSession();
5
+ try {
6
+ await session.withTransaction(async ()=>{
7
+ await db.collection("users").update({}, {
8
+ $unset: {
9
+ name: 1
10
+ }
11
+ }, {
12
+ multi: true
13
+ });
14
+ });
15
+ } finally{
16
+ await session.endSession();
17
+ }
18
+ },
19
+ async down (db, client) {
20
+ await db.collection("printers").update({}, {
21
+ $set: {
22
+ name: "default"
23
+ }
24
+ }, {
25
+ multi: true
26
+ });
27
+ }
28
+ };
29
+
30
+ //# sourceMappingURL=20230716065316-user-remove-name.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/mongo-migrations/20230716065316-user-remove-name.ts"],"names":["module","exports","up","db","client","session","startSession","withTransaction","collection","update","$unset","name","multi","endSession","down","$set"],"mappings":";AAAAA,OAAOC,OAAO,GAAG;IACf,MAAMC,IAAGC,EAAE,EAAEC,MAAM;QACjB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YACF,MAAMD,QAAQE,eAAe,CAAC;gBAC5B,MAAMJ,GAAGK,UAAU,CAAC,SAASC,MAAM,CAAC,CAAC,GAAG;oBAAEC,QAAQ;wBAAEC,MAAM;oBAAE;gBAAE,GAAG;oBAAEC,OAAO;gBAAK;YACjF;QACF,SAAU;YACR,MAAMP,QAAQQ,UAAU;QAC1B;IACF;IAEA,MAAMC,MAAKX,EAAE,EAAEC,MAAM;QACnB,MAAMD,GAAGK,UAAU,CAAC,YAAYC,MAAM,CAAC,CAAC,GAAG;YAAEM,MAAM;gBAAEJ,MAAM;YAAU;QAAE,GAAG;YAAEC,OAAO;QAAK;IAC1F;AACF"}
@@ -0,0 +1,4 @@
1
+ '// Restart file for nodemon';
2
+ "use strict";
3
+
4
+ //# sourceMappingURL=nodemon_restart_trigger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/nodemon_restart_trigger.js"],"names":[],"mappings":"AAAA"}
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "AppConstants", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return AppConstants;
9
+ }
10
+ });
11
+ const AppConstants = {
12
+ NON_NPM_MODE_KEY: "NON_NPM_MODE",
13
+ NODE_ENV_KEY: "NODE_ENV",
14
+ VERSION_KEY: "npm_package_version",
15
+ SERVER_PORT_KEY: "SERVER_PORT",
16
+ MONGO_KEY: "MONGO",
17
+ pm2ServiceName: "FDM",
18
+ logAppName: "fdm-monster",
19
+ // @Deprecated: old storage path
20
+ defaultFileStorageFolder: "./media",
21
+ defaultLogsFolder: "./media/logs",
22
+ defaultLogZipsFolder: "./media/log-zips",
23
+ // New place for all downloads, files etc
24
+ defaultClientBundleStorage: "./media/client-dist",
25
+ defaultClientBundleZipsStorage: "./media/client-dist-zips",
26
+ defaultServerPort: 4000,
27
+ defaultMongoStringUnauthenticated: "mongodb://127.0.0.1:27017/fdm-monster",
28
+ apiRoute: "/api",
29
+ enableClientDistAutoUpdateKey: "ENABLE_CLIENT_DIST_AUTO_UPDATE",
30
+ // Boolean string (true/false), persisted always
31
+ OVERRIDE_LOGIN_REQUIRED: "OVERRIDE_LOGIN_REQUIRED",
32
+ // Boolean string (true/false), persisted always
33
+ OVERRIDE_REGISTRATION_ENABLED: "OVERRIDE_REGISTRATION_ENABLED",
34
+ // Number
35
+ DEFAULT_PASSWORD_MINLEN: 8,
36
+ // String, persisted always
37
+ OVERRIDE_JWT_SECRET: "OVERRIDE_JWT_SECRET",
38
+ // Number, Seconds, persisted always
39
+ OVERRIDE_JWT_EXPIRES_IN: "OVERRIDE_JWT_EXPIRES_IN",
40
+ DEFAULT_JWT_EXPIRES_IN: 60 * 60,
41
+ // Number
42
+ DEFAULT_REFRESH_TOKEN_ATTEMPTS: 50,
43
+ // Number, Milli-seconds
44
+ DEFAULT_REFRESH_TOKEN_EXPIRY: 1000 * 60 * 60 * 24 * 14,
45
+ // String, not persisted
46
+ OVERRIDE_JWT_ISSUER: "OVERRIDE_JWT_ISSUER",
47
+ DEFAULT_JWT_ISSUER: "fdm-monster-server",
48
+ // String, not persisted
49
+ OVERRIDE_JWT_AUDIENCE: "OVERRIDE_JWT_AUDIENCE",
50
+ DEFAULT_JWT_AUDIENCE: "fdm-monster-client",
51
+ OVERRIDE_IS_DEMO_MODE: "OVERRIDE_IS_DEMO_MODE",
52
+ OVERRIDE_DEMO_USERNAME: "OVERRIDE_DEMO_USERNAME",
53
+ DEFAULT_DEMO_USERNAME: "demo",
54
+ OVERRIDE_DEMO_PASSWORD: "OVERRIDE_DEMO_PASSWORD",
55
+ DEFAULT_DEMO_PASSWORD: "demo2023",
56
+ OVERRIDE_DEMO_ROLE: "OVERRIDE_DEMO_ROLE",
57
+ DEFAULT_DEMO_ROLE: "ADMIN",
58
+ defaultTestEnv: "test",
59
+ defaultProductionEnv: "production",
60
+ knownEnvNames: [
61
+ "development",
62
+ "production",
63
+ "test"
64
+ ],
65
+ GITHUB_PAT: "GITHUB_PAT",
66
+ serverPackageName: "@fdm-monster/server",
67
+ clientPackageName: "@fdm-monster/client",
68
+ clientRepoName: "fdm-monster-client",
69
+ serverRepoName: "fdm-monster",
70
+ orgName: "fdm-monster",
71
+ // Wizard version changes will trigger a re-run of the wizard
72
+ currentWizardVersion: 1,
73
+ defaultClientMinimum: "1.3.7",
74
+ influxUrl: "INFLUX_URL",
75
+ influxToken: "INFLUX_TOKEN",
76
+ influxOrg: "INFLUX_ORG",
77
+ influxBucket: "INFLUX_BUCKET",
78
+ // Websocket values
79
+ defaultWebsocketHandshakeTimeout: 2000,
80
+ defaultSocketThrottleRate: 1,
81
+ debugSocketStatesKey: "DEBUG_SOCKET_STATES",
82
+ defaultDebugSocketStates: "false",
83
+ // Future experimental feature
84
+ enableMqttAutoDiscoveryToken: "ENABLE_MQTT_AUTODISCOVERY",
85
+ enableMqttAutoDiscoveryDefault: "false",
86
+ mqttUrlToken: "MQTT_HOST",
87
+ mqttPortToken: "MQTT_PORT",
88
+ mqttPortDefault: 1883,
89
+ mqttUsernameToken: "MQTT_USERNAME",
90
+ mqttPasswordToken: "MQTT_PASSWORD",
91
+ // MonsterPi
92
+ monsterPiFilePath: "/etc/monsterpi_version",
93
+ // Sentry
94
+ sentryCustomDsnToken: "SENTRY_CUSTOM_DSN",
95
+ sentryCustomDsnDefault: "https://164b8028a8a745bba3dbcab991b84ae7@o4503975545733120.ingest.sentry.io/4505101598261248",
96
+ debugRoutesKey: "DEBUG_ROUTES"
97
+ };
98
+
99
+ //# sourceMappingURL=server.constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/server.constants.ts"],"names":["AppConstants","NON_NPM_MODE_KEY","NODE_ENV_KEY","VERSION_KEY","SERVER_PORT_KEY","MONGO_KEY","pm2ServiceName","logAppName","defaultFileStorageFolder","defaultLogsFolder","defaultLogZipsFolder","defaultClientBundleStorage","defaultClientBundleZipsStorage","defaultServerPort","defaultMongoStringUnauthenticated","apiRoute","enableClientDistAutoUpdateKey","OVERRIDE_LOGIN_REQUIRED","OVERRIDE_REGISTRATION_ENABLED","DEFAULT_PASSWORD_MINLEN","OVERRIDE_JWT_SECRET","OVERRIDE_JWT_EXPIRES_IN","DEFAULT_JWT_EXPIRES_IN","DEFAULT_REFRESH_TOKEN_ATTEMPTS","DEFAULT_REFRESH_TOKEN_EXPIRY","OVERRIDE_JWT_ISSUER","DEFAULT_JWT_ISSUER","OVERRIDE_JWT_AUDIENCE","DEFAULT_JWT_AUDIENCE","OVERRIDE_IS_DEMO_MODE","OVERRIDE_DEMO_USERNAME","DEFAULT_DEMO_USERNAME","OVERRIDE_DEMO_PASSWORD","DEFAULT_DEMO_PASSWORD","OVERRIDE_DEMO_ROLE","DEFAULT_DEMO_ROLE","defaultTestEnv","defaultProductionEnv","knownEnvNames","GITHUB_PAT","serverPackageName","clientPackageName","clientRepoName","serverRepoName","orgName","currentWizardVersion","defaultClientMinimum","influxUrl","influxToken","influxOrg","influxBucket","defaultWebsocketHandshakeTimeout","defaultSocketThrottleRate","debugSocketStatesKey","defaultDebugSocketStates","enableMqttAutoDiscoveryToken","enableMqttAutoDiscoveryDefault","mqttUrlToken","mqttPortToken","mqttPortDefault","mqttUsernameToken","mqttPasswordToken","monsterPiFilePath","sentryCustomDsnToken","sentryCustomDsnDefault","debugRoutesKey"],"mappings":";;;;+BAAaA;;;eAAAA;;;AAAN,MAAMA,eAAe;IAC1BC,kBAAkB;IAClBC,cAAc;IACdC,aAAa;IACbC,iBAAiB;IACjBC,WAAW;IAEXC,gBAAgB;IAChBC,YAAY;IAEZ,gCAAgC;IAChCC,0BAA0B;IAC1BC,mBAAmB;IACnBC,sBAAsB;IACtB,yCAAyC;IACzCC,4BAA4B;IAC5BC,gCAAgC;IAChCC,mBAAmB;IACnBC,mCAAmC;IACnCC,UAAU;IACVC,+BAA+B;IAE/B,gDAAgD;IAChDC,yBAAyB;IACzB,gDAAgD;IAChDC,+BAA+B;IAC/B,SAAS;IACTC,yBAAyB;IACzB,2BAA2B;IAC3BC,qBAAqB;IACrB,oCAAoC;IACpCC,yBAAyB;IACzBC,wBAAwB,KAAK;IAC7B,SAAS;IACTC,gCAAgC;IAChC,wBAAwB;IACxBC,8BAA8B,OAAO,KAAK,KAAK,KAAK;IACpD,wBAAwB;IACxBC,qBAAqB;IACrBC,oBAAoB;IACpB,wBAAwB;IACxBC,uBAAuB;IACvBC,sBAAsB;IAEtBC,uBAAuB;IACvBC,wBAAwB;IACxBC,uBAAuB;IACvBC,wBAAwB;IACxBC,uBAAuB;IACvBC,oBAAoB;IACpBC,mBAAmB;IAEnBC,gBAAgB;IAChBC,sBAAsB;IACtBC,eAAe;QAAC;QAAe;QAAc;KAAO;IACpDC,YAAY;IACZC,mBAAmB;IACnBC,mBAAmB;IACnBC,gBAAgB;IAChBC,gBAAgB;IAChBC,SAAS;IACT,6DAA6D;IAC7DC,sBAAsB;IACtBC,sBAAsB;IAEtBC,WAAW;IACXC,aAAa;IACbC,WAAW;IACXC,cAAc;IAEd,mBAAmB;IACnBC,kCAAkC;IAClCC,2BAA2B;IAC3BC,sBAAsB;IACtBC,0BAA0B;IAE1B,8BAA8B;IAC9BC,8BAA8B;IAC9BC,gCAAgC;IAChCC,cAAc;IACdC,eAAe;IACfC,iBAAiB;IACjBC,mBAAmB;IACnBC,mBAAmB;IAEnB,YAAY;IACZC,mBAAmB;IAEnB,SAAS;IACTC,sBAAsB;IACtBC,wBAAwB;IAExBC,gBAAgB;AAClB"}
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "setupServer", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return setupServer;
9
+ }
10
+ });
11
+ const _express = /*#__PURE__*/ _interop_require_wildcard(require("express"));
12
+ const _cookieparser = /*#__PURE__*/ _interop_require_default(require("cookie-parser"));
13
+ const _passport = /*#__PURE__*/ _interop_require_default(require("passport"));
14
+ const _cors = /*#__PURE__*/ _interop_require_default(require("cors"));
15
+ const _helmet = /*#__PURE__*/ _interop_require_default(require("helmet"));
16
+ const _awilixexpress = require("awilix-express");
17
+ const _container = require("./container");
18
+ const _database = require("./middleware/database");
19
+ const _globalmiddleware = require("./middleware/global.middleware");
20
+ const _passport1 = require("./middleware/passport");
21
+ function _interop_require_default(obj) {
22
+ return obj && obj.__esModule ? obj : {
23
+ default: obj
24
+ };
25
+ }
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
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
49
+ for(var key in obj){
50
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
51
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
52
+ if (desc && (desc.get || desc.set)) {
53
+ Object.defineProperty(newObj, key, desc);
54
+ } else {
55
+ newObj[key] = obj[key];
56
+ }
57
+ }
58
+ }
59
+ newObj.default = obj;
60
+ if (cache) {
61
+ cache.set(obj, newObj);
62
+ }
63
+ return newObj;
64
+ }
65
+ async function setupServer() {
66
+ const httpServer = (0, _express.default)();
67
+ const container = (0, _container.configureContainer)();
68
+ (0, _passport1.initializePassportStrategies)(_passport.default, container);
69
+ httpServer.use((0, _cors.default)({
70
+ origin: "*",
71
+ methods: "GET,HEAD,PUT,PATCH,POST,DELETE"
72
+ })).use((0, _helmet.default)({
73
+ contentSecurityPolicy: false
74
+ })).use((0, _express.json)({
75
+ limit: "10mb"
76
+ })).use((0, _cookieparser.default)()).use((0, _express.urlencoded)({
77
+ extended: false
78
+ })).use(_passport.default.initialize()).use(_passport.default.authenticate([
79
+ "jwt",
80
+ "anonymous"
81
+ ], {
82
+ session: false
83
+ })).use((0, _awilixexpress.scopePerRequest)(container)).use(_database.interceptDatabaseError)// Global guards
84
+ .use(_globalmiddleware.validateWhitelistedIp).use(_globalmiddleware.interceptRoles);
85
+ return {
86
+ httpServer,
87
+ container
88
+ };
89
+ }
90
+
91
+ //# sourceMappingURL=server.core.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/server.core.ts"],"names":["setupServer","httpServer","express","container","configureContainer","initializePassportStrategies","passport","use","cors","origin","methods","helmet","contentSecurityPolicy","json","limit","cookieParser","urlencoded","extended","initialize","authenticate","session","scopePerRequest","interceptDatabaseError","validateWhitelistedIp","interceptRoles"],"mappings":";;;;+BAWsBA;;;eAAAA;;;iEAXoB;qEACjB;iEACJ;6DACJ;+DACE;+BACa;2BACG;0BACI;kCACe;2BACT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEtC,eAAeA;IACpB,MAAMC,aAAaC,IAAAA,gBAAO;IAC1B,MAAMC,YAAYC,IAAAA,6BAAkB;IACpCC,IAAAA,uCAA4B,EAACC,iBAAQ,EAAEH;IAEvCF,WACGM,GAAG,CACFC,IAAAA,aAAI,EAAC;QACHC,QAAQ;QACRC,SAAS;IACX,IAEDH,GAAG,CACFI,IAAAA,eAAM,EAAC;QACLC,uBAAuB;IACzB,IAEDL,GAAG,CAACM,IAAAA,aAAI,EAAC;QAAEC,OAAO;IAAO,IACzBP,GAAG,CAACQ,IAAAA,qBAAY,KAChBR,GAAG,CAACS,IAAAA,mBAAU,EAAC;QAAEC,UAAU;IAAM,IACjCV,GAAG,CAACD,iBAAQ,CAACY,UAAU,IACvBX,GAAG,CAACD,iBAAQ,CAACa,YAAY,CAAC;QAAC;QAAO;KAAY,EAAE;QAAEC,SAAS;IAAM,IACjEb,GAAG,CAACc,IAAAA,8BAAe,EAAClB,YACpBI,GAAG,CAACe,gCAAsB,CAC3B,gBAAgB;KACff,GAAG,CAACgB,uCAAqB,EACzBhB,GAAG,CAACiB,gCAAc;IAErB,OAAO;QACLvB;QACAE;IACF;AACF"}