@fdm-monster/server 1.8.3 → 1.9.0-rc1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.template +5 -3
- package/.gitattributes +4 -2
- package/.yarn/install-state.gz +0 -0
- package/.yarn/releases/yarn-4.9.1.cjs +948 -0
- package/.yarnrc.yml +1 -1
- package/README.md +25 -26
- package/RELEASE_NOTES.MD +50 -1
- package/biome.json +33 -0
- package/dist/consoles/download-github-releases.js.map +1 -1
- package/dist/consoles/launch-http-servers.js +31 -0
- package/dist/consoles/launch-http-servers.js.map +1 -0
- package/dist/consoles/mock-octoprint.server.js +291 -0
- package/dist/consoles/mock-octoprint.server.js.map +1 -0
- package/dist/consoles/mock-prusalink.server.js +57 -0
- package/dist/consoles/mock-prusalink.server.js.map +1 -0
- package/dist/consoles/utils/api-messages.js +856 -0
- package/dist/consoles/utils/api-messages.js.map +1 -0
- package/dist/consoles/utils/delayed-memory.storage.js +42 -0
- package/dist/consoles/utils/delayed-memory.storage.js.map +1 -0
- package/dist/consoles/utils/ws-messages.js +88 -0
- package/dist/consoles/utils/ws-messages.js.map +1 -0
- package/dist/constants/event.constants.js +5 -21
- package/dist/constants/event.constants.js.map +1 -1
- package/dist/constants/server-settings.constants.js +6 -11
- package/dist/constants/server-settings.constants.js.map +1 -1
- package/dist/container.js +13 -14
- package/dist/container.js.map +1 -1
- package/dist/container.tokens.js +3 -4
- package/dist/container.tokens.js.map +1 -1
- package/dist/controllers/auth.controller.js +114 -24
- package/dist/controllers/auth.controller.js.map +1 -1
- package/dist/controllers/batch-call.controller.js +95 -24
- package/dist/controllers/batch-call.controller.js.map +1 -1
- package/dist/controllers/camera-stream.controller.js +16 -12
- package/dist/controllers/camera-stream.controller.js.map +1 -1
- package/dist/controllers/custom-gcode.controller.js +116 -40
- package/dist/controllers/custom-gcode.controller.js.map +1 -1
- package/dist/controllers/dto/update-client-dist.dto.js +0 -21
- package/dist/controllers/dto/update-client-dist.dto.js.map +1 -1
- package/dist/controllers/first-time-setup.controller.js +54 -18
- package/dist/controllers/first-time-setup.controller.js.map +1 -1
- package/dist/controllers/floor.controller.js +154 -43
- package/dist/controllers/floor.controller.js.map +1 -1
- package/dist/controllers/metrics.controller.js +56 -0
- package/dist/controllers/metrics.controller.js.map +1 -0
- package/dist/controllers/print-completion.controller.js +81 -18
- package/dist/controllers/print-completion.controller.js.map +1 -1
- package/dist/controllers/printer-files.controller.js +42 -28
- package/dist/controllers/printer-files.controller.js.map +1 -1
- package/dist/controllers/printer-group.controller.js +123 -33
- package/dist/controllers/printer-group.controller.js.map +1 -1
- package/dist/controllers/printer-settings.controller.js +73 -26
- package/dist/controllers/printer-settings.controller.js.map +1 -1
- package/dist/controllers/printer.controller.js +57 -198
- package/dist/controllers/printer.controller.js.map +1 -1
- package/dist/controllers/server-private.controller.js +153 -39
- package/dist/controllers/server-private.controller.js.map +1 -1
- package/dist/controllers/server-public.controller.js +79 -84
- package/dist/controllers/server-public.controller.js.map +1 -1
- package/dist/controllers/settings.controller.js +222 -79
- package/dist/controllers/settings.controller.js.map +1 -1
- package/dist/controllers/user.controller.js +67 -57
- package/dist/controllers/user.controller.js.map +1 -1
- package/dist/controllers/validation/auth-controller.validation.js +6 -5
- package/dist/controllers/validation/auth-controller.validation.js.map +1 -1
- package/dist/controllers/validation/batch-controller.validation.js +17 -18
- package/dist/controllers/validation/batch-controller.validation.js.map +1 -1
- package/dist/controllers/validation/generic.validation.js +8 -3
- package/dist/controllers/validation/generic.validation.js.map +1 -1
- package/dist/controllers/validation/printer-completion-controller.validation.js +16 -0
- package/dist/controllers/validation/printer-completion-controller.validation.js.map +1 -0
- package/dist/controllers/validation/printer-controller.validation.js +31 -50
- package/dist/controllers/validation/printer-controller.validation.js.map +1 -1
- package/dist/controllers/validation/printer-files-controller.validation.js +16 -15
- package/dist/controllers/validation/printer-files-controller.validation.js.map +1 -1
- package/dist/controllers/validation/printer-settings-controller.validation.js +6 -5
- package/dist/controllers/validation/printer-settings-controller.validation.js.map +1 -1
- package/dist/controllers/validation/server-private.validation.js +17 -0
- package/dist/controllers/validation/server-private.validation.js.map +1 -0
- package/dist/controllers/validation/setting.validation.js +28 -10
- package/dist/controllers/validation/setting.validation.js.map +1 -1
- package/dist/controllers/validation/user-controller.validation.js +44 -13
- package/dist/controllers/validation/user-controller.validation.js.map +1 -1
- package/dist/data-source.js +10 -6
- package/dist/data-source.js.map +1 -1
- package/dist/entities/camera-stream.entity.js +2 -3
- package/dist/entities/camera-stream.entity.js.map +1 -1
- package/dist/entities/custom-gcode.entity.js +1 -2
- package/dist/entities/custom-gcode.entity.js.map +1 -1
- package/dist/entities/floor-position.entity.js.map +1 -1
- package/dist/entities/floor.entity.js +1 -2
- package/dist/entities/floor.entity.js.map +1 -1
- package/dist/entities/group.entity.js +6 -2
- package/dist/entities/group.entity.js.map +1 -1
- package/dist/entities/permission.entity.js +1 -2
- package/dist/entities/permission.entity.js.map +1 -1
- package/dist/entities/print-completion.entity.js +1 -2
- package/dist/entities/print-completion.entity.js.map +1 -1
- package/dist/entities/printer-group.entity.js +6 -2
- package/dist/entities/printer-group.entity.js.map +1 -1
- package/dist/entities/printer.entity.js +22 -4
- package/dist/entities/printer.entity.js.map +1 -1
- package/dist/entities/refresh-token.entity.js +1 -2
- package/dist/entities/refresh-token.entity.js.map +1 -1
- package/dist/entities/role.entity.js +1 -2
- package/dist/entities/role.entity.js.map +1 -1
- package/dist/entities/settings.entity.js +1 -2
- package/dist/entities/settings.entity.js.map +1 -1
- package/dist/entities/user-role.entity.js +1 -2
- package/dist/entities/user-role.entity.js.map +1 -1
- package/dist/entities/user.entity.js +1 -2
- package/dist/entities/user.entity.js.map +1 -1
- package/dist/exceptions/runtime.exceptions.js.map +1 -1
- package/dist/handlers/logger.js +131 -36
- package/dist/handlers/logger.js.map +1 -1
- package/dist/handlers/validators.js +7 -116
- package/dist/handlers/validators.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/middleware/authenticate.js +11 -22
- package/dist/middleware/authenticate.js.map +1 -1
- package/dist/middleware/database.js.map +1 -1
- package/dist/middleware/demo.middleware.js +4 -17
- package/dist/middleware/demo.middleware.js.map +1 -1
- package/dist/middleware/exception.filter.js +23 -23
- package/dist/middleware/exception.filter.js.map +1 -1
- package/dist/middleware/global.middleware.js +4 -4
- package/dist/middleware/global.middleware.js.map +1 -1
- package/dist/middleware/param-converter.middleware.js +81 -0
- package/dist/middleware/param-converter.middleware.js.map +1 -0
- package/dist/middleware/passport.js +3 -5
- package/dist/middleware/passport.js.map +1 -1
- package/dist/middleware/printer-resolver.js +37 -0
- package/dist/middleware/printer-resolver.js.map +1 -0
- package/dist/middleware/printer.js +22 -10
- package/dist/middleware/printer.js.map +1 -1
- package/dist/middleware/socketio.middleware.js +27 -0
- package/dist/middleware/socketio.middleware.js.map +1 -0
- package/dist/migrations/1706829146617-InitSqlite.js +1 -1
- package/dist/migrations/1706829146617-InitSqlite.js.map +1 -1
- package/dist/migrations/1707494762198-PrinterGroup.js +1 -1
- package/dist/migrations/1707494762198-PrinterGroup.js.map +1 -1
- package/dist/migrations/1708465930665-ChangePrintCompletionDeletePrinterCascade.js +1 -1
- package/dist/migrations/1708465930665-ChangePrintCompletionDeletePrinterCascade.js.map +1 -1
- package/dist/migrations/1713897879622-AddPrinterType.js +1 -1
- package/dist/migrations/1713897879622-AddPrinterType.js.map +1 -1
- package/dist/migrations/1745141688926-AddPrinterUsernamePassword.js +229 -0
- package/dist/migrations/1745141688926-AddPrinterUsernamePassword.js.map +1 -0
- package/dist/models/Auth/Permission.js.map +1 -1
- package/dist/models/Auth/RefreshToken.js +1 -1
- package/dist/models/Auth/RefreshToken.js.map +1 -1
- package/dist/models/Auth/Role.js.map +1 -1
- package/dist/models/Auth/User.js.map +1 -1
- package/dist/models/CameraStream.js +20 -0
- package/dist/models/CameraStream.js.map +1 -1
- package/dist/models/CustomGcode.js.map +1 -1
- package/dist/models/Floor.js.map +1 -1
- package/dist/models/FloorPrinter.js +10 -1
- package/dist/models/FloorPrinter.js.map +1 -1
- package/dist/models/PrintCompletion.js.map +1 -1
- package/dist/models/Printer.js +12 -5
- package/dist/models/Printer.js.map +1 -1
- package/dist/models/Settings.js +5 -42
- package/dist/models/Settings.js.map +1 -1
- package/dist/models/index.js +0 -4
- package/dist/models/index.js.map +1 -1
- package/dist/mongo-migrations/20210713120034-printers-settingsapperance-apikey.js.map +1 -1
- package/dist/mongo-migrations/20210907173950-printers-enabled.js.map +1 -1
- package/dist/mongo-migrations/20211029110742-user-password-passwordhash.js.map +1 -1
- package/dist/mongo-migrations/20230414141005-floor-remove-groupinfloor.js.map +1 -1
- package/dist/mongo-migrations/20230427202911-printer-remove-sortindex.js.map +1 -1
- package/dist/mongo-migrations/20230716065316-user-remove-name.js.map +1 -1
- package/dist/mongo-migrations/20231111081809-printer-flatten-name.js.map +1 -1
- package/dist/mongo-migrations/20231111082521-printer-remove-settingsappearance.js.map +1 -1
- package/dist/mongo-migrations/20231202183902-printer-files-simpler.js.map +1 -1
- package/dist/server.constants.js +7 -4
- package/dist/server.constants.js.map +1 -1
- package/dist/server.core.js +29 -2
- package/dist/server.core.js.map +1 -1
- package/dist/server.env.js +13 -8
- package/dist/server.env.js.map +1 -1
- package/dist/server.host.js +24 -33
- package/dist/server.host.js.map +1 -1
- package/dist/services/authentication/auth.service.js +15 -20
- package/dist/services/authentication/auth.service.js.map +1 -1
- package/dist/services/authentication/jwt.service.js +1 -1
- package/dist/services/authentication/jwt.service.js.map +1 -1
- package/dist/services/core/batch-call.service.js +23 -25
- package/dist/services/core/batch-call.service.js.map +1 -1
- package/dist/services/core/client-bundle.service.js +78 -136
- package/dist/services/core/client-bundle.service.js.map +1 -1
- package/dist/services/core/config.service.js.map +1 -1
- package/dist/services/core/cradle.service.js +21 -0
- package/dist/services/core/cradle.service.js.map +1 -0
- package/dist/services/core/github.service.js +2 -2
- package/dist/services/core/github.service.js.map +1 -1
- package/dist/services/core/http-client.factory.js +1 -1
- package/dist/services/core/http-client.factory.js.map +1 -1
- package/dist/services/core/logs-manager.service.js +3 -3
- package/dist/services/core/logs-manager.service.js.map +1 -1
- package/dist/services/core/monsterpi.service.js +1 -1
- package/dist/services/core/monsterpi.service.js.map +1 -1
- package/dist/services/core/multer.service.js +8 -7
- package/dist/services/core/multer.service.js.map +1 -1
- package/dist/services/core/server-release.service.js +14 -8
- package/dist/services/core/server-release.service.js.map +1 -1
- package/dist/services/core/yaml.service.js +16 -17
- package/dist/services/core/yaml.service.js.map +1 -1
- package/dist/services/interfaces/camera-stream.dto.js +4 -34
- package/dist/services/interfaces/camera-stream.dto.js.map +1 -1
- package/dist/services/interfaces/custom-gcode.dto.js.map +1 -1
- package/dist/services/interfaces/floor.dto.js +5 -47
- package/dist/services/interfaces/floor.dto.js.map +1 -1
- package/dist/services/interfaces/login.dto.js +2 -0
- package/dist/services/interfaces/login.dto.js.map +1 -1
- package/dist/services/interfaces/print-completion.dto.js.map +1 -1
- package/dist/services/interfaces/printer-group.dto.js +0 -14
- package/dist/services/interfaces/printer-group.dto.js.map +1 -1
- package/dist/services/interfaces/printer.dto.js +11 -11
- package/dist/services/interfaces/printer.dto.js.map +1 -1
- package/dist/services/interfaces/settings.dto.js.map +1 -1
- package/dist/services/interfaces/task.interfaces.js +6 -0
- package/dist/services/interfaces/task.interfaces.js.map +1 -0
- package/dist/services/mongoose/camera-stream.service.js +17 -15
- package/dist/services/mongoose/camera-stream.service.js.map +1 -1
- package/dist/services/mongoose/custom-gcode.service.js +4 -2
- package/dist/services/mongoose/custom-gcode.service.js.map +1 -1
- package/dist/services/mongoose/floor.service.js +37 -30
- package/dist/services/mongoose/floor.service.js.map +1 -1
- package/dist/services/mongoose/permission.service.js +1 -1
- package/dist/services/mongoose/permission.service.js.map +1 -1
- package/dist/services/mongoose/print-completion.service.js +2 -2
- package/dist/services/mongoose/print-completion.service.js.map +1 -1
- package/dist/services/mongoose/print-completion.shared.js +2 -2
- package/dist/services/mongoose/print-completion.shared.js.map +1 -1
- package/dist/services/mongoose/printer.service.js +33 -45
- package/dist/services/mongoose/printer.service.js.map +1 -1
- package/dist/services/mongoose/refresh-token.service.js +5 -8
- package/dist/services/mongoose/refresh-token.service.js.map +1 -1
- package/dist/services/mongoose/role.service.js +14 -5
- package/dist/services/mongoose/role.service.js.map +1 -1
- package/dist/services/mongoose/settings.service.js +35 -62
- package/dist/services/mongoose/settings.service.js.map +1 -1
- package/dist/services/mongoose/user.service.js +8 -7
- package/dist/services/mongoose/user.service.js.map +1 -1
- package/dist/services/moonraker/constants/{websocket.constants.js → moonraker.constants.js} +1 -1
- package/dist/services/moonraker/constants/{websocket.constants.js.map → moonraker.constants.js.map} +1 -1
- package/dist/services/moonraker/moonraker-websocket.adapter.js +102 -94
- package/dist/services/moonraker/moonraker-websocket.adapter.js.map +1 -1
- package/dist/services/moonraker/moonraker.client.js +19 -14
- package/dist/services/moonraker/moonraker.client.js.map +1 -1
- package/dist/services/moonraker.api.js +3 -5
- package/dist/services/moonraker.api.js.map +1 -1
- package/dist/services/octoprint/constants/octoprint-service.constants.js +7 -36
- package/dist/services/octoprint/constants/octoprint-service.constants.js.map +1 -1
- package/dist/services/octoprint/constants/octoprint-websocket.constants.js +12 -3
- package/dist/services/octoprint/constants/octoprint-websocket.constants.js.map +1 -1
- package/dist/services/octoprint/dto/octoprint-event.dto.js +2 -1
- package/dist/services/octoprint/dto/octoprint-event.dto.js.map +1 -1
- package/dist/services/octoprint/octoprint-api.routes.js +0 -37
- package/dist/services/octoprint/octoprint-api.routes.js.map +1 -1
- package/dist/services/octoprint/octoprint-websocket.adapter.js +66 -72
- package/dist/services/octoprint/octoprint-websocket.adapter.js.map +1 -1
- package/dist/services/octoprint/octoprint.client.js +12 -185
- package/dist/services/octoprint/octoprint.client.js.map +1 -1
- package/dist/services/octoprint/utils/octoprint-http-client.builder.js.map +1 -1
- package/dist/services/octoprint.api.js +8 -14
- package/dist/services/octoprint.api.js.map +1 -1
- package/dist/services/orm/base.service.js +11 -12
- package/dist/services/orm/base.service.js.map +1 -1
- package/dist/services/orm/camera-stream.service.js +5 -1
- package/dist/services/orm/camera-stream.service.js.map +1 -1
- package/dist/services/orm/custom-gcode.service.js +2 -2
- package/dist/services/orm/custom-gcode.service.js.map +1 -1
- package/dist/services/orm/floor-position.service.js +0 -5
- package/dist/services/orm/floor-position.service.js.map +1 -1
- package/dist/services/orm/floor.service.js +43 -39
- package/dist/services/orm/floor.service.js.map +1 -1
- package/dist/services/orm/permission.service.js +3 -4
- package/dist/services/orm/permission.service.js.map +1 -1
- package/dist/services/orm/print-completion.service.js +2 -4
- package/dist/services/orm/print-completion.service.js.map +1 -1
- package/dist/services/orm/printer-group.service.js +2 -7
- package/dist/services/orm/printer-group.service.js.map +1 -1
- package/dist/services/orm/printer.service.js +21 -36
- package/dist/services/orm/printer.service.js.map +1 -1
- package/dist/services/orm/refresh-token.service.js +5 -11
- package/dist/services/orm/refresh-token.service.js.map +1 -1
- package/dist/services/orm/role.service.js +11 -10
- package/dist/services/orm/role.service.js.map +1 -1
- package/dist/services/orm/settings.service.js +37 -133
- package/dist/services/orm/settings.service.js.map +1 -1
- package/dist/services/orm/user.service.js +13 -15
- package/dist/services/orm/user.service.js.map +1 -1
- package/dist/services/printer-api.factory.js +9 -6
- package/dist/services/printer-api.factory.js.map +1 -1
- package/dist/services/printer-api.interface.js +13 -6
- package/dist/services/printer-api.interface.js.map +1 -1
- package/dist/services/prusa-link/constants/prusalink-event.dto.js +18 -0
- package/dist/services/prusa-link/constants/prusalink-event.dto.js.map +1 -0
- package/dist/services/prusa-link/constants/prusalink.constants.js +13 -0
- package/dist/services/prusa-link/constants/prusalink.constants.js.map +1 -0
- package/dist/services/prusa-link/dto/file-response.dto.js +6 -0
- package/dist/services/prusa-link/dto/file-response.dto.js.map +1 -0
- package/dist/services/{octoprint/dto/plugin.dto.js → prusa-link/dto/file.dto.js} +1 -1
- package/dist/services/prusa-link/dto/file.dto.js.map +1 -0
- package/dist/services/prusa-link/dto/job-state.dto.js +6 -0
- package/dist/services/prusa-link/dto/job-state.dto.js.map +1 -0
- package/dist/services/prusa-link/dto/printer-state.dto.js +6 -0
- package/dist/services/prusa-link/dto/printer-state.dto.js.map +1 -0
- package/dist/services/prusa-link/dto/status.dto.js +6 -0
- package/dist/services/prusa-link/dto/status.dto.js.map +1 -0
- package/dist/services/prusa-link/dto/version.dto.js +6 -0
- package/dist/services/prusa-link/dto/version.dto.js.map +1 -0
- package/dist/services/prusa-link/prusa-link-http-polling.adapter.js +142 -0
- package/dist/services/prusa-link/prusa-link-http-polling.adapter.js.map +1 -0
- package/dist/services/prusa-link/prusa-link.api.js +233 -0
- package/dist/services/prusa-link/prusa-link.api.js.map +1 -0
- package/dist/services/prusa-link/utils/digest-auth.params.js +6 -0
- package/dist/services/prusa-link/utils/digest-auth.params.js.map +1 -0
- package/dist/services/prusa-link/utils/digest-auth.util.js +28 -0
- package/dist/services/prusa-link/utils/digest-auth.util.js.map +1 -0
- package/dist/services/prusa-link/utils/prusa-link-http-client.builder.js +131 -0
- package/dist/services/prusa-link/utils/prusa-link-http-client.builder.js.map +1 -0
- package/dist/services/socket.factory.js +9 -6
- package/dist/services/socket.factory.js.map +1 -1
- package/dist/services/{core/task-manager.service.js → task-manager.service.js} +72 -78
- package/dist/services/task-manager.service.js.map +1 -0
- package/dist/services/validators/camera-service.validation.js +19 -0
- package/dist/services/validators/camera-service.validation.js.map +1 -0
- package/dist/services/validators/floor-service.validation.js +47 -36
- package/dist/services/validators/floor-service.validation.js.map +1 -1
- package/dist/services/validators/print-completion-service.validation.js +22 -9
- package/dist/services/validators/print-completion-service.validation.js.map +1 -1
- package/dist/services/validators/printer-service.validation.js +112 -29
- package/dist/services/validators/printer-service.validation.js.map +1 -1
- package/dist/services/validators/settings-service.validation.js +78 -66
- package/dist/services/validators/settings-service.validation.js.map +1 -1
- package/dist/services/validators/user-service.validation.js +17 -16
- package/dist/services/validators/user-service.validation.js.map +1 -1
- package/dist/services/validators/yaml-service.validation.js +94 -51
- package/dist/services/validators/yaml-service.validation.js.map +1 -1
- package/dist/shared/default-http-client.builder.js.map +1 -1
- package/dist/shared/load-controllers.js +20 -0
- package/dist/shared/load-controllers.js.map +1 -0
- package/dist/shared/runtime-settings.migration.js +46 -0
- package/dist/shared/runtime-settings.migration.js.map +1 -0
- package/dist/shared/websocket-rpc-extended.adapter.js +15 -14
- package/dist/shared/websocket-rpc-extended.adapter.js.map +1 -1
- package/dist/shared/websocket.adapter.js +4 -5
- package/dist/shared/websocket.adapter.js.map +1 -1
- package/dist/state/file-upload-tracker.cache.js +5 -4
- package/dist/state/file-upload-tracker.cache.js.map +1 -1
- package/dist/state/file.cache.js +1 -1
- package/dist/state/file.cache.js.map +1 -1
- package/dist/state/floor.store.js +6 -6
- package/dist/state/floor.store.js.map +1 -1
- package/dist/state/printer-events.cache.js +21 -22
- package/dist/state/printer-events.cache.js.map +1 -1
- package/dist/state/printer-files.store.js +6 -8
- package/dist/state/printer-files.store.js.map +1 -1
- package/dist/state/printer-socket.store.js +27 -50
- package/dist/state/printer-socket.store.js.map +1 -1
- package/dist/state/printer-thumbnail.cache.js +5 -9
- package/dist/state/printer-thumbnail.cache.js.map +1 -1
- package/dist/state/printer.cache.js +14 -12
- package/dist/state/printer.cache.js.map +1 -1
- package/dist/state/settings.store.js +74 -50
- package/dist/state/settings.store.js.map +1 -1
- package/dist/state/socket-io.gateway.js +39 -36
- package/dist/state/socket-io.gateway.js.map +1 -1
- package/dist/state/test-printer-socket.store.js +20 -15
- package/dist/state/test-printer-socket.store.js.map +1 -1
- package/dist/state/validation/create-test-printer.validation.js +13 -11
- package/dist/state/validation/create-test-printer.validation.js.map +1 -1
- package/dist/task.presets.js.map +1 -1
- package/dist/tasks/boot.task.js +14 -19
- package/dist/tasks/boot.task.js.map +1 -1
- package/dist/tasks/client-bundle.task.js +1 -3
- package/dist/tasks/client-bundle.task.js.map +1 -1
- package/dist/tasks/print-completion.socketio.task.js +27 -28
- package/dist/tasks/print-completion.socketio.task.js.map +1 -1
- package/dist/tasks/printer-file-clean.task.js +6 -10
- package/dist/tasks/printer-file-clean.task.js.map +1 -1
- package/dist/tasks/printer-websocket-restore.task.js +3 -14
- package/dist/tasks/printer-websocket-restore.task.js.map +1 -1
- package/dist/tasks/printer-websocket.task.js +2 -14
- package/dist/tasks/printer-websocket.task.js.map +1 -1
- package/dist/tasks/socketio.task.js +6 -33
- package/dist/tasks/socketio.task.js.map +1 -1
- package/dist/tasks/software-update.task.js +1 -1
- package/dist/tasks/software-update.task.js.map +1 -1
- package/dist/tasks.js +3 -3
- package/dist/tasks.js.map +1 -1
- package/dist/utils/array.util.js.map +1 -1
- package/dist/utils/cache/key-diff.cache.js.map +1 -1
- package/dist/utils/env.utils.js +0 -2
- package/dist/utils/env.utils.js.map +1 -1
- package/dist/utils/normalize-url.js +3 -2
- package/dist/utils/normalize-url.js.map +1 -1
- package/dist/utils/printer-type.utils.js.map +1 -1
- package/dist/utils/time.utils.js +7 -17
- package/dist/utils/time.utils.js.map +1 -1
- package/dist/utils/url.utils.js +3 -4
- package/dist/utils/url.utils.js.map +1 -1
- package/package.json +44 -47
- package/tsconfig.json +2 -1
- package/.yarn/releases/yarn-4.7.0.cjs +0 -935
- package/dist/consoles/check-ports.js +0 -170
- package/dist/consoles/check-ports.js.map +0 -1
- package/dist/consoles/http-file-receiver.console.js +0 -81
- package/dist/consoles/http-file-receiver.console.js.map +0 -1
- package/dist/consoles/sqlite-torm.js +0 -31
- package/dist/consoles/sqlite-torm.js.map +0 -1
- package/dist/consoles/upload-test.js +0 -52
- package/dist/consoles/upload-test.js.map +0 -1
- package/dist/controllers/plugin-firmware-update.controller.js +0 -234
- package/dist/controllers/plugin-firmware-update.controller.js.map +0 -1
- package/dist/entities/base.entity.js +0 -29
- package/dist/entities/base.entity.js.map +0 -1
- package/dist/entities/printer-file.entity.js +0 -140
- package/dist/entities/printer-file.entity.js.map +0 -1
- package/dist/handlers/cache-manager.js +0 -18
- package/dist/handlers/cache-manager.js.map +0 -1
- package/dist/models/PrinterFile.js +0 -44
- package/dist/models/PrinterFile.js.map +0 -1
- package/dist/services/core/task-manager.service.js.map +0 -1
- package/dist/services/octoprint/dto/plugin.dto.js.map +0 -1
- package/dist/services/octoprint/plugin-base.service.js +0 -101
- package/dist/services/octoprint/plugin-base.service.js.map +0 -1
- package/dist/services/octoprint/plugin-firmware-update.service.js +0 -100
- package/dist/services/octoprint/plugin-firmware-update.service.js.map +0 -1
- package/dist/services/octoprint/plugin-repository.cache.js +0 -46
- package/dist/services/octoprint/plugin-repository.cache.js.map +0 -1
- package/dist/utils/benchmark.util.js +0 -39
- package/dist/utils/benchmark.util.js.map +0 -1
- package/dist/utils/is-docker.js +0 -40
- package/dist/utils/is-docker.js.map +0 -1
- package/dist/utils/metric.utils.js +0 -35
- package/dist/utils/metric.utils.js.map +0 -1
|
@@ -26,11 +26,17 @@ function _interop_require_default(obj) {
|
|
|
26
26
|
}
|
|
27
27
|
class ClientBundleService {
|
|
28
28
|
githubService;
|
|
29
|
-
configService;
|
|
30
29
|
logger;
|
|
31
|
-
|
|
30
|
+
githubOwner;
|
|
31
|
+
githubRepo;
|
|
32
|
+
storageRoot;
|
|
33
|
+
minVersion;
|
|
34
|
+
constructor(loggerFactory, githubService){
|
|
32
35
|
this.githubService = githubService;
|
|
33
|
-
this.
|
|
36
|
+
this.githubOwner = _serverconstants.AppConstants.orgName;
|
|
37
|
+
this.githubRepo = _serverconstants.AppConstants.clientRepoName;
|
|
38
|
+
this.storageRoot = (0, _fsutils.superRootPath)();
|
|
39
|
+
this.minVersion = _serverconstants.AppConstants.defaultClientMinimum;
|
|
34
40
|
this.logger = loggerFactory(ClientBundleService.name);
|
|
35
41
|
}
|
|
36
42
|
get clientPackageJsonPath() {
|
|
@@ -40,20 +46,20 @@ class ClientBundleService {
|
|
|
40
46
|
return (0, _path.join)((0, _fsutils.superRootPath)(), _serverconstants.AppConstants.defaultClientBundleStorage, "dist/index.html");
|
|
41
47
|
}
|
|
42
48
|
async getReleases() {
|
|
43
|
-
const githubOwner = _serverconstants.AppConstants.orgName;
|
|
44
|
-
const githubRepo = _serverconstants.AppConstants.clientRepoName;
|
|
45
49
|
try {
|
|
46
|
-
const
|
|
47
|
-
|
|
50
|
+
const [releases, latestRelease] = await Promise.all([
|
|
51
|
+
this.githubService.getReleases(this.githubOwner, this.githubRepo),
|
|
52
|
+
this.githubService.getLatestRelease(this.githubOwner, this.githubRepo)
|
|
53
|
+
]);
|
|
48
54
|
return {
|
|
49
55
|
minimum: {
|
|
50
|
-
tag_name:
|
|
56
|
+
tag_name: this.minVersion
|
|
51
57
|
},
|
|
52
58
|
current: {
|
|
53
59
|
tag_name: this.getClientVersion()
|
|
54
60
|
},
|
|
55
|
-
latest:
|
|
56
|
-
releases:
|
|
61
|
+
latest: latestRelease.data,
|
|
62
|
+
releases: releases.data
|
|
57
63
|
};
|
|
58
64
|
} catch (e) {
|
|
59
65
|
if (e instanceof _octokit.RequestError) {
|
|
@@ -67,163 +73,99 @@ class ClientBundleService {
|
|
|
67
73
|
}
|
|
68
74
|
async shouldUpdateWithReason(overrideAutoUpdate, minimumVersion, requestedVersion, allowDowngrade) {
|
|
69
75
|
const clientAutoUpdate = _serverconstants.AppConstants.enableClientDistAutoUpdateKey;
|
|
70
|
-
const
|
|
76
|
+
const existingVersion = this.getClientVersion();
|
|
77
|
+
minimumVersion ??= this.minVersion;
|
|
71
78
|
if (!clientAutoUpdate && !overrideAutoUpdate) {
|
|
72
|
-
return
|
|
73
|
-
shouldUpdate: false,
|
|
74
|
-
requestedVersion,
|
|
75
|
-
minimumVersion: _serverconstants.AppConstants.defaultClientMinimum,
|
|
76
|
-
currentVersion: existingClientVersion,
|
|
77
|
-
targetVersion: null,
|
|
78
|
-
reason: "Client auto-update disabled (ENABLE_CLIENT_DIST_AUTO_UPDATE), skipping"
|
|
79
|
-
};
|
|
79
|
+
return this.createResponse(false, existingVersion, minimumVersion, requestedVersion, null, "Client auto-update disabled, skipping");
|
|
80
80
|
}
|
|
81
|
-
if (!
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
requestedVersion,
|
|
85
|
-
currentVersion: existingClientVersion,
|
|
86
|
-
minimumVersion: _serverconstants.AppConstants.defaultClientMinimum,
|
|
87
|
-
targetVersion: (0, _semverutils.getMaximumOfVersionsSafe)(minimumVersion, requestedVersion),
|
|
88
|
-
reason: `Client package.json does not exist, downloading new release`
|
|
89
|
-
};
|
|
81
|
+
if (!existingVersion || !this.doesClientIndexHtmlExist()) {
|
|
82
|
+
const reason = !existingVersion ? "Client package.json does not exist" : "Client index.html could not be found";
|
|
83
|
+
return this.createResponse(true, existingVersion, minimumVersion, requestedVersion, (0, _semverutils.getMaximumOfVersionsSafe)(minimumVersion, requestedVersion), `${reason}, downloading new release`);
|
|
90
84
|
}
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
requestedVersion,
|
|
95
|
-
currentVersion: existingClientVersion,
|
|
96
|
-
minimumVersion: _serverconstants.AppConstants.defaultClientMinimum,
|
|
97
|
-
targetVersion: (0, _semverutils.getMaximumOfVersionsSafe)(minimumVersion, requestedVersion),
|
|
98
|
-
reason: `Client index.html could not be found, downloading new release`
|
|
99
|
-
};
|
|
100
|
-
}
|
|
101
|
-
const satisfiesMinimumVersion = (0, _semverutils.checkVersionSatisfiesMinimum)(existingClientVersion, minimumVersion);
|
|
102
|
-
const clientOutdated = !satisfiesMinimumVersion;
|
|
103
|
-
const clientOutdatedResponse = {
|
|
104
|
-
shouldUpdate: true,
|
|
105
|
-
requestedVersion,
|
|
106
|
-
currentVersion: existingClientVersion,
|
|
107
|
-
minimumVersion: _serverconstants.AppConstants.defaultClientMinimum,
|
|
108
|
-
targetVersion: (0, _semverutils.getMaximumOfVersionsSafe)(minimumVersion, requestedVersion),
|
|
109
|
-
reason: `Client bundle release ${existingClientVersion} does not satisfy minimum version ${minimumVersion}, downloading new release`
|
|
110
|
-
};
|
|
111
|
-
if (!!requestedVersion) {
|
|
112
|
-
const minimumComparison = (0, _semver.compare)(requestedVersion, minimumVersion);
|
|
113
|
-
if (minimumComparison === -1) {
|
|
114
|
-
if (clientOutdated) return clientOutdatedResponse;
|
|
115
|
-
return {
|
|
116
|
-
shouldUpdate: false,
|
|
117
|
-
requestedVersion,
|
|
118
|
-
currentVersion: existingClientVersion,
|
|
119
|
-
minimumVersion: _serverconstants.AppConstants.defaultClientMinimum,
|
|
120
|
-
targetVersion: requestedVersion,
|
|
121
|
-
reason: `Requested version ${requestedVersion} is below minimum designed version ${minimumVersion}, skipping`
|
|
122
|
-
};
|
|
123
|
-
}
|
|
124
|
-
const newComparison = (0, _semver.compare)(requestedVersion, existingClientVersion);
|
|
125
|
-
const isDowngrade = newComparison === -1;
|
|
126
|
-
if (isDowngrade) {
|
|
127
|
-
if (!allowDowngrade && clientOutdated) return clientOutdatedResponse;
|
|
128
|
-
return {
|
|
129
|
-
shouldUpdate: allowDowngrade,
|
|
130
|
-
requestedVersion,
|
|
131
|
-
currentVersion: existingClientVersion,
|
|
132
|
-
minimumVersion: _serverconstants.AppConstants.defaultClientMinimum,
|
|
133
|
-
targetVersion: requestedVersion,
|
|
134
|
-
reason: allowDowngrade ? `Client bundle downgrade allowed (above ${minimumVersion}), downloading new release` : `Client bundle downgrade not allowed (even thought above ${minimumVersion}), skipping`
|
|
135
|
-
};
|
|
136
|
-
} else if (newComparison === 1) {
|
|
137
|
-
return {
|
|
138
|
-
shouldUpdate: true,
|
|
139
|
-
requestedVersion,
|
|
140
|
-
currentVersion: existingClientVersion,
|
|
141
|
-
minimumVersion: _serverconstants.AppConstants.defaultClientMinimum,
|
|
142
|
-
targetVersion: (0, _semverutils.getMaximumOfVersionsSafe)(minimumVersion, requestedVersion),
|
|
143
|
-
reason: `Client bundle release ${requestedVersion} is above existing version ${existingClientVersion}, downloading updated release`
|
|
144
|
-
};
|
|
145
|
-
}
|
|
85
|
+
const meetsMinimum = (0, _semverutils.checkVersionSatisfiesMinimum)(existingVersion, minimumVersion);
|
|
86
|
+
if (!meetsMinimum) {
|
|
87
|
+
return this.createResponse(true, existingVersion, minimumVersion, requestedVersion, (0, _semverutils.getMaximumOfVersionsSafe)(minimumVersion, requestedVersion), `Client version ${existingVersion} below minimum ${minimumVersion}, downloading new release`);
|
|
146
88
|
}
|
|
147
|
-
if (
|
|
148
|
-
return
|
|
89
|
+
if (requestedVersion) {
|
|
90
|
+
return this.evaluateRequestedVersion(existingVersion, minimumVersion, requestedVersion, allowDowngrade);
|
|
149
91
|
}
|
|
150
|
-
return {
|
|
151
|
-
shouldUpdate: false,
|
|
152
|
-
requestedVersion,
|
|
153
|
-
currentVersion: existingClientVersion,
|
|
154
|
-
minimumVersion: _serverconstants.AppConstants.defaultClientMinimum,
|
|
155
|
-
targetVersion: (0, _semverutils.getMaximumOfVersionsSafe)(minimumVersion, requestedVersion),
|
|
156
|
-
reason: `Client already satisfies minimum version ${minimumVersion} and requested version is not an upgrade, skipping`
|
|
157
|
-
};
|
|
92
|
+
return this.createResponse(false, existingVersion, minimumVersion, requestedVersion, (0, _semverutils.getMaximumOfVersionsSafe)(minimumVersion, requestedVersion), `Client already satisfies minimum version ${minimumVersion}`);
|
|
158
93
|
}
|
|
159
94
|
async downloadClientUpdate(releaseTag) {
|
|
160
|
-
const
|
|
161
|
-
|
|
95
|
+
const result = await this.githubService.getReleaseByTag(this.githubOwner, this.githubRepo, releaseTag);
|
|
96
|
+
const release = result.data;
|
|
162
97
|
const assetName = `dist-client-${release.tag_name}.zip`;
|
|
163
98
|
const asset = release.assets.find((a)=>a.name === assetName);
|
|
164
99
|
if (!asset) {
|
|
165
|
-
throw new _runtimeexceptions.NotFoundException(`
|
|
100
|
+
throw new _runtimeexceptions.NotFoundException(`Asset ${assetName} not found in release ${release.tag_name}`);
|
|
166
101
|
}
|
|
167
|
-
const
|
|
168
|
-
|
|
169
|
-
await this.extractClientBundleZip(downloadPath);
|
|
102
|
+
const zipPath = await this.downloadZip(asset.id, asset.name);
|
|
103
|
+
await this.extractZip(zipPath);
|
|
170
104
|
return release.tag_name;
|
|
171
105
|
}
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
106
|
+
evaluateRequestedVersion(currentVersion, minimumVersion, requestedVersion, allowDowngrade) {
|
|
107
|
+
if ((0, _semver.compare)(requestedVersion, minimumVersion) === -1) {
|
|
108
|
+
return this.createResponse(false, currentVersion, minimumVersion, requestedVersion, requestedVersion, `Requested version ${requestedVersion} below minimum ${minimumVersion}, skipping`);
|
|
109
|
+
}
|
|
110
|
+
const versionComparison = (0, _semver.compare)(requestedVersion, currentVersion);
|
|
111
|
+
if (versionComparison === 0) {
|
|
112
|
+
return this.createResponse(false, currentVersion, minimumVersion, requestedVersion, requestedVersion, `Requested version ${requestedVersion} same as current, skipping`);
|
|
113
|
+
} else if (versionComparison === -1) {
|
|
114
|
+
return this.createResponse(!!allowDowngrade, currentVersion, minimumVersion, requestedVersion, requestedVersion, allowDowngrade ? `Downgrading to ${requestedVersion} (above minimum ${minimumVersion})` : `Downgrade not allowed, skipping`);
|
|
115
|
+
} else {
|
|
116
|
+
return this.createResponse(true, currentVersion, minimumVersion, requestedVersion, requestedVersion, `Upgrading from ${currentVersion} to ${requestedVersion}`);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
createResponse(shouldUpdate, currentVersion, minimumVersion, requestedVersion, targetVersion, reason) {
|
|
120
|
+
return {
|
|
121
|
+
shouldUpdate,
|
|
122
|
+
requestedVersion,
|
|
123
|
+
currentVersion,
|
|
124
|
+
minimumVersion,
|
|
125
|
+
targetVersion,
|
|
126
|
+
reason
|
|
127
|
+
};
|
|
177
128
|
}
|
|
178
|
-
async
|
|
179
|
-
const
|
|
180
|
-
const
|
|
181
|
-
const assetResult = await this.githubService.requestAsset(githubOwner, githubRepo, assetId);
|
|
182
|
-
const dir = (0, _path.join)((0, _fsutils.superRootPath)(), _serverconstants.AppConstants.defaultClientBundleZipsStorage);
|
|
129
|
+
async downloadZip(assetId, assetName) {
|
|
130
|
+
const assetResult = await this.githubService.requestAsset(this.githubOwner, this.githubRepo, assetId);
|
|
131
|
+
const dir = (0, _path.join)(this.storageRoot, _serverconstants.AppConstants.defaultClientBundleZipsStorage);
|
|
183
132
|
(0, _fsutils.ensureDirExists)(dir);
|
|
184
|
-
this.logger.log(`Downloaded client release ZIP to '${dir}'. Extracting archive now`);
|
|
185
133
|
const path = (0, _path.join)(dir, assetName);
|
|
186
134
|
(0, _nodefs.writeFileSync)(path, Buffer.from(assetResult.data));
|
|
135
|
+
this.logger.log(`Downloaded client ZIP to ${dir}`);
|
|
187
136
|
return path;
|
|
188
137
|
}
|
|
189
|
-
async
|
|
190
|
-
const distPath = (0, _path.join)(
|
|
191
|
-
const zip = new _admzip.default(downloadedZipPath);
|
|
138
|
+
async extractZip(zipPath) {
|
|
139
|
+
const distPath = (0, _path.join)(this.storageRoot, _serverconstants.AppConstants.defaultClientBundleStorage);
|
|
192
140
|
(0, _fsutils.ensureDirExists)(distPath);
|
|
193
141
|
this.logger.debug(`Clearing contents of ${distPath}`);
|
|
194
|
-
for (const
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
});
|
|
201
|
-
} catch (e) {
|
|
202
|
-
this.logger.error(`${e.message} ${e.stack}`);
|
|
203
|
-
throw e;
|
|
204
|
-
}
|
|
142
|
+
for (const item of (await (0, _promises.readdir)(distPath))){
|
|
143
|
+
const itemPath = (0, _path.join)(distPath, item);
|
|
144
|
+
await (0, _promises.rm)(itemPath, {
|
|
145
|
+
force: true,
|
|
146
|
+
recursive: true
|
|
147
|
+
}).catch((e)=>this.logger.error(`Failed to remove ${itemPath}: ${e.message}`));
|
|
205
148
|
}
|
|
206
149
|
try {
|
|
207
|
-
zip
|
|
150
|
+
const zip = new _admzip.default(zipPath);
|
|
151
|
+
zip.extractAllTo(distPath);
|
|
152
|
+
this.logger.log(`Successfully extracted client to ${distPath}`);
|
|
208
153
|
} catch (e) {
|
|
209
|
-
this.logger.error(`
|
|
154
|
+
this.logger.error(`Extraction failed: ${e.message}`);
|
|
210
155
|
throw e;
|
|
211
156
|
}
|
|
212
|
-
this.logger.log(`Successfully extracted client dist to ${distPath}`);
|
|
213
157
|
}
|
|
214
158
|
doesClientIndexHtmlExist() {
|
|
215
|
-
|
|
216
|
-
return (0, _nodefs.existsSync)(indexHtmlPath);
|
|
159
|
+
return (0, _nodefs.existsSync)(this.clientIndexHtmlPath);
|
|
217
160
|
}
|
|
218
161
|
getClientVersion() {
|
|
219
|
-
const
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
return;
|
|
162
|
+
const path = this.clientPackageJsonPath;
|
|
163
|
+
if (!(0, _nodefs.existsSync)(path)) {
|
|
164
|
+
return null;
|
|
223
165
|
}
|
|
224
|
-
require.cache[
|
|
225
|
-
const json = require(
|
|
226
|
-
return json?.version;
|
|
166
|
+
require.cache[path] = undefined;
|
|
167
|
+
const json = require(path);
|
|
168
|
+
return json?.version ?? null;
|
|
227
169
|
}
|
|
228
170
|
}
|
|
229
171
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/core/client-bundle.service.ts"],"names":["ClientBundleService","
|
|
1
|
+
{"version":3,"sources":["../../../src/services/core/client-bundle.service.ts"],"names":["ClientBundleService","logger","githubOwner","githubRepo","storageRoot","minVersion","constructor","loggerFactory","githubService","AppConstants","orgName","clientRepoName","superRootPath","defaultClientMinimum","name","clientPackageJsonPath","join","defaultClientBundleStorage","clientIndexHtmlPath","getReleases","releases","latestRelease","Promise","all","getLatestRelease","minimum","tag_name","current","getClientVersion","latest","data","e","RequestError","error","errorSummary","ExternalServiceError","message","InternalServerException","shouldUpdateWithReason","overrideAutoUpdate","minimumVersion","requestedVersion","allowDowngrade","clientAutoUpdate","enableClientDistAutoUpdateKey","existingVersion","createResponse","doesClientIndexHtmlExist","reason","getMaximumOfVersionsSafe","meetsMinimum","checkVersionSatisfiesMinimum","evaluateRequestedVersion","downloadClientUpdate","releaseTag","result","getReleaseByTag","release","assetName","asset","assets","find","a","NotFoundException","zipPath","downloadZip","id","extractZip","currentVersion","compare","versionComparison","shouldUpdate","targetVersion","assetId","assetResult","requestAsset","dir","defaultClientBundleZipsStorage","ensureDirExists","path","writeFileSync","Buffer","from","log","distPath","debug","item","readdir","itemPath","rm","force","recursive","catch","zip","AdmZip","extractAllTo","existsSync","require","cache","undefined","json","version"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/core/config.service.ts"],"names":["ConfigService","get","key","defaultValue","Object","keys","process","env","includes","length","getOrThrow","val","Error","isDemoMode","AppConstants","OVERRIDE_IS_DEMO_MODE"],"mappings":";;;;+BAUaA;;;eAAAA;;;iCAVgB;AAUtB,MAAMA;IACXC,
|
|
1
|
+
{"version":3,"sources":["../../../src/services/core/config.service.ts"],"names":["ConfigService","get","key","defaultValue","Object","keys","process","env","includes","length","getOrThrow","val","Error","isDemoMode","AppConstants","OVERRIDE_IS_DEMO_MODE"],"mappings":";;;;+BAUaA;;;eAAAA;;;iCAVgB;AAUtB,MAAMA;IACXC,IAAOC,GAAW,EAAEC,YAAgB,EAAE;QACpC,IAAI,CAACC,OAAOC,IAAI,CAACC,QAAQC,GAAG,EAAEC,QAAQ,CAACN,QAAQ,CAACI,QAAQC,GAAG,CAACL,IAAI,EAAEO,QAAQ;YACxE,OAAON;QACT;QACA,OAAOG,QAAQC,GAAG,CAACL,IAAI;IACzB;IAEAQ,WAAWR,GAAW,EAAE;QACtB,MAAMS,MAAM,IAAI,CAACV,GAAG,CAACC;QACrB,IAAI,CAACS,KAAK;YACR,MAAMC,MAAM,CAAC,8BAA8B,EAAEV,IAAI,iBAAiB,CAAC;QACrE;IACF;IAEAW,aAAa;QACX,OAAO,IAAI,CAACZ,GAAG,CAASa,6BAAY,CAACC,qBAAqB,EAAE,aAAa;IAC3E;AACF"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "CradleService", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return CradleService;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
class CradleService {
|
|
12
|
+
container;
|
|
13
|
+
constructor(container){
|
|
14
|
+
this.container = container;
|
|
15
|
+
}
|
|
16
|
+
resolve(token) {
|
|
17
|
+
return this.container.resolve(token);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=cradle.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/services/core/cradle.service.ts"],"names":["CradleService","constructor","container","resolve","token"],"mappings":";;;;+BAGaA;;;eAAAA;;;AAAN,MAAMA;;IACXC,YAAY,AAAiBC,SAA0B,CAAE;aAA5BA,YAAAA;IAA6B;IAE1DC,QAAWC,KAA4B,EAAE;QACvC,OAAO,IAAI,CAACF,SAAS,CAACC,OAAO,CAAIC;IACnC;AACF"}
|
|
@@ -12,9 +12,9 @@ const _runtimeexceptions = require("../../exceptions/runtime.exceptions");
|
|
|
12
12
|
class GithubService {
|
|
13
13
|
octokitService;
|
|
14
14
|
logger;
|
|
15
|
-
constructor(
|
|
16
|
-
this.logger = loggerFactory(GithubService.name, false);
|
|
15
|
+
constructor(loggerFactory, octokitService){
|
|
17
16
|
this.octokitService = octokitService;
|
|
17
|
+
this.logger = loggerFactory(GithubService.name, false);
|
|
18
18
|
}
|
|
19
19
|
async wasAuthenticated() {
|
|
20
20
|
const result = await this.octokitService.auth();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/core/github.service.ts"],"names":["GithubService","
|
|
1
|
+
{"version":3,"sources":["../../../src/services/core/github.service.ts"],"names":["GithubService","logger","constructor","loggerFactory","octokitService","name","wasAuthenticated","result","auth","type","getRateLimit","rest","rateLimit","get","getLatestRelease","owner","repo","repos","e","status","NotFoundException","getReleases","listReleases","getReleaseByTag","tag","catch","requestAsset","assetId","request","headers","Accept","asset_id"],"mappings":";;;;+BAKaA;;;eAAAA;;;mCALqB;AAK3B,MAAMA;;IACMC,OAAsB;IAEvCC,YACEC,aAA6B,EAC7B,AAAiBC,cAAuB,CACxC;aADiBA,iBAAAA;QAEjB,IAAI,CAACH,MAAM,GAAGE,cAAcH,cAAcK,IAAI,EAAE;IAClD;IAEA,MAAMC,mBAAmB;QACvB,MAAMC,SAAU,MAAM,IAAI,CAACH,cAAc,CAACI,IAAI;QAC9C,OAAOD,QAAQE,SAAS;IAC1B;IAEA,MAAMC,eAAe;QACnB,OAAO,IAAI,CAACN,cAAc,CAACO,IAAI,CAACC,SAAS,CAACC,GAAG;IAC/C;IAEA,MAAMC,iBAAiBC,KAAa,EAAEC,IAAY,EAAE;QAClD,IAAI;YACF,OAAO,MAAM,IAAI,CAACZ,cAAc,CAACO,IAAI,CAACM,KAAK,CAACH,gBAAgB,CAAC;gBAC3DC;gBACAC;YACF;QACF,EAAE,OAAOE,GAAQ;YACf,IAAIA,GAAGb,SAAS,eAAea,EAAEC,MAAM,IAAI,KAAK;gBAC9C,MAAM,IAAIC,oCAAiB,CAAC,CAAC,6BAA6B,CAAC;YAC7D;YAEA,MAAMF;QACR;IACF;IAEA,MAAMG,YAAYN,KAAa,EAAEC,IAAY,EAAE;QAC7C,IAAI;YACF,OAAO,MAAM,IAAI,CAACZ,cAAc,CAACO,IAAI,CAACM,KAAK,CAACK,YAAY,CAAC;gBACvDP;gBACAC;YACF;QACF,EAAE,OAAOE,GAAQ;YACf,IAAIA,GAAGb,SAAS,eAAea,EAAEC,MAAM,IAAI,KAAK;gBAC9C,MAAM,IAAIC,oCAAiB,CAAC,CAAC,uBAAuB,CAAC;YACvD;YAEA,MAAMF;QACR;IACF;IAEA,MAAMK,gBAAgBR,KAAa,EAAEC,IAAY,EAAEQ,GAAW,EAAE;QAC9D,OAAO,MAAM,IAAI,CAACpB,cAAc,CAACO,IAAI,CAACM,KAAK,CACxCM,eAAe,CAAC;YACfR;YACAC;YACAQ;QACF,GACCC,KAAK,CAAC,CAACP;YACN,IAAIA,EAAEb,IAAI,KAAK,eAAea,EAAEC,MAAM,IAAI,KAAK;gBAC7C,MAAM,IAAIC,oCAAiB,CAAC,CAAC,gCAAgC,EAAEI,KAAK;YACtE;YAEA,MAAMN;QACR;IACJ;IAEA,MAAMQ,aAAaX,KAAa,EAAEC,IAAY,EAAEW,OAAY,EAAE;QAC5D,OAAO,MAAM,IAAI,CAACvB,cAAc,CAC7BwB,OAAO,CAAC,qDAAqD;YAC5DC,SAAS;gBACPC,QAAQ;YACV;YACAf;YACAC;YACAe,UAAUJ;QACZ,GACCF,KAAK,CAAC,CAACP;YACN,IAAIA,EAAEb,IAAI,KAAK,eAAea,EAAEC,MAAM,IAAI,KAAK;gBAC7C,MAAM,IAAIC,oCAAiB,CAAC,CAAC,6BAA6B,EAAEO,SAAS;YACvE;YAEA,MAAMT;QACR;IACJ;AACF"}
|
|
@@ -11,7 +11,7 @@ Object.defineProperty(exports, "HttpClientFactory", {
|
|
|
11
11
|
const _defaulthttpclientbuilder = require("../../shared/default-http-client.builder");
|
|
12
12
|
class HttpClientFactory {
|
|
13
13
|
settingsStore;
|
|
14
|
-
constructor(
|
|
14
|
+
constructor(settingsStore){
|
|
15
15
|
this.settingsStore = settingsStore;
|
|
16
16
|
}
|
|
17
17
|
createClient(base, buildFluentOptions) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/core/http-client.factory.ts"],"names":["HttpClientFactory","
|
|
1
|
+
{"version":3,"sources":["../../../src/services/core/http-client.factory.ts"],"names":["HttpClientFactory","constructor","settingsStore","createClient","base","buildFluentOptions","withMaxBodyLength","withMaxContentLength","withTimeout","getTimeoutSettings","apiTimeout","build","createDefaultClient","builder","DefaultHttpClientBuilder","createClientWithBaseUrl","baseAddress","withBaseUrl"],"mappings":";;;;+BAIaA;;;eAAAA;;;0CAJ4B;AAIlC,MAAMA;;IACXC,YAAY,AAAiBC,aAA4B,CAAE;aAA9BA,gBAAAA;IAA+B;IAE5DC,aAAiDC,IAAO,EAAEC,kBAAsC,EAAE;QAChGD,KAAKE,iBAAiB,CAAC,OAAO,OAAO;QACrCF,KAAKG,oBAAoB,CAAC,OAAO,OAAO;QACxCH,KAAKI,WAAW,CAAC,IAAI,CAACN,aAAa,CAACO,kBAAkB,GAAGC,UAAU;QAEnE,IAAIL,oBAAoB;YACtBA,mBAAmBD;QACrB;QAEA,OAAOA,KAAKO,KAAK;IACnB;IAMAC,oBAAoBP,kBAA6D,EAAE;QACjF,MAAMQ,UAAU,IAAIC,kDAAwB;QAC5C,OAAO,IAAI,CAACX,YAAY,CAACU,SAASR;IACpC;IAEAU,wBACEX,IAAO,EACPY,WAAmB,EACnBX,kBAAsC,EACvB;QACf,OAAO,IAAI,CAACF,YAAY,CAACC,MAAM,CAACS;YAC9BA,QAAQI,WAAW,CAACD;YAEpB,IAAIX,oBAAoB;gBACtBA,mBAAmBD;YACrB;QACF;IACF;AACF"}
|
|
@@ -22,7 +22,7 @@ function _interop_require_default(obj) {
|
|
|
22
22
|
}
|
|
23
23
|
class LogDumpService {
|
|
24
24
|
logger;
|
|
25
|
-
constructor(
|
|
25
|
+
constructor(loggerFactory){
|
|
26
26
|
this.logger = loggerFactory(LogDumpService.name);
|
|
27
27
|
}
|
|
28
28
|
async deleteOlderThanWeekAndMismatchingLogFiles() {
|
|
@@ -38,11 +38,11 @@ class LogDumpService {
|
|
|
38
38
|
const matchesFormat = f.endsWith(".log") && f.startsWith(startingFormat);
|
|
39
39
|
if (!matchesFormat) return false;
|
|
40
40
|
const strippedFilename = f.replace(".log", "").replace(startingFormat, "");
|
|
41
|
-
|
|
42
|
-
if (!(0, _timeutils.isValidDate)(date)) {
|
|
41
|
+
if (!(0, _timeutils.isParsableDate)(strippedFilename)) {
|
|
43
42
|
this.logger.warn("Failed to parse date from log file, removing it as outdated");
|
|
44
43
|
return true;
|
|
45
44
|
}
|
|
45
|
+
const date = new Date(strippedFilename);
|
|
46
46
|
const now = new Date();
|
|
47
47
|
const diff = now.getTime() - date.getTime();
|
|
48
48
|
const diffDays = diff / (1000 * 3600 * 24);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/core/logs-manager.service.ts"],"names":["LogDumpService","logger","constructor","loggerFactory","name","deleteOlderThanWeekAndMismatchingLogFiles","log","path","join","superRootPath","AppConstants","defaultLogsFolder","dirEntries","readdirSync","withFileTypes","files","filter","dirent","isFile","map","startingFormat","logAppName","removedFilesNotInFormat","f","endsWith","startsWith","removedFilesOutdated","matchesFormat","strippedFilename","replace","
|
|
1
|
+
{"version":3,"sources":["../../../src/services/core/logs-manager.service.ts"],"names":["LogDumpService","logger","constructor","loggerFactory","name","deleteOlderThanWeekAndMismatchingLogFiles","log","path","join","superRootPath","AppConstants","defaultLogsFolder","dirEntries","readdirSync","withFileTypes","files","filter","dirent","isFile","map","startingFormat","logAppName","removedFilesNotInFormat","f","endsWith","startsWith","removedFilesOutdated","matchesFormat","strippedFilename","replace","isParsableDate","warn","date","Date","now","diff","getTime","diffDays","length","removedWrongFormatFilesCount","file","rmSync","err","removedOutdatedFilesCount","dumpZip","zip","AdmZip","addLocalFolder","filename","outputPath","defaultLogZipsFolder","serverRepoName","writeZip"],"mappings":"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"}
|
|
@@ -15,7 +15,7 @@ class MonsterPiService {
|
|
|
15
15
|
monsterPiVersion = null;
|
|
16
16
|
logger;
|
|
17
17
|
fileLocation = _serverconstants.AppConstants.monsterPiFilePath;
|
|
18
|
-
constructor(
|
|
18
|
+
constructor(loggerFactory){
|
|
19
19
|
this.logger = loggerFactory(MonsterPiService.name);
|
|
20
20
|
}
|
|
21
21
|
getMonsterPiVersionSafe() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/core/monsterpi.service.ts"],"names":["MonsterPiService","monsterPiVersion","logger","fileLocation","AppConstants","monsterPiFilePath","constructor","loggerFactory","name","getMonsterPiVersionSafe","fileExists","existsSync","contents","readFileSync","toString","replaceAll","e","warn","captureException"],"mappings":";;;;+BAKaA;;;eAAAA;;;sBALoB;oBACQ;iCACZ;AAGtB,MAAMA;
|
|
1
|
+
{"version":3,"sources":["../../../src/services/core/monsterpi.service.ts"],"names":["MonsterPiService","monsterPiVersion","logger","fileLocation","AppConstants","monsterPiFilePath","constructor","loggerFactory","name","getMonsterPiVersionSafe","fileExists","existsSync","contents","readFileSync","toString","replaceAll","e","warn","captureException"],"mappings":";;;;+BAKaA;;;eAAAA;;;sBALoB;oBACQ;iCACZ;AAGtB,MAAMA;IACHC,mBAAkC,KAAK;IAC9BC,OAAO;IACPC,eAAeC,6BAAY,CAACC,iBAAiB,CAAC;IAE/DC,YAAYC,aAA6B,CAAE;QACzC,IAAI,CAACL,MAAM,GAAGK,cAAcP,iBAAiBQ,IAAI;IACnD;IAEAC,0BAA0B;QACxB,MAAMC,aAAaC,IAAAA,cAAU,EAAC,IAAI,CAACR,YAAY;QAC/C,IAAI,CAACO,YAAY;YACf,OAAO;QACT;QAEA,IAAI;YACF,MAAME,WAAWC,IAAAA,gBAAY,EAAC,IAAI,CAACV,YAAY;YAC/C,IAAI,CAACF,gBAAgB,GAAGW,SAASE,QAAQ,GAAGC,UAAU,CAAC,KAAK;YAC5D,OAAO,IAAI,CAACd,gBAAgB;QAC9B,EAAE,OAAOe,GAAG;YACV,IAAI,CAACd,MAAM,CAACe,IAAI,CAAC;YACjBC,IAAAA,sBAAgB,EAACF;QACnB;QACA,OAAO;IACT;AACF"}
|
|
@@ -60,9 +60,15 @@ class MulterService {
|
|
|
60
60
|
fileUploadTrackerCache;
|
|
61
61
|
httpClientFactory;
|
|
62
62
|
logger;
|
|
63
|
-
constructor(
|
|
63
|
+
constructor(loggerFactory, fileUploadTrackerCache, httpClientFactory){
|
|
64
64
|
this.fileUploadTrackerCache = fileUploadTrackerCache;
|
|
65
65
|
this.httpClientFactory = httpClientFactory;
|
|
66
|
+
this.orderRecentFiles = (dir)=>{
|
|
67
|
+
return (0, _fs.readdirSync)(dir).filter((file)=>(0, _fs.lstatSync)((0, _path.join)(dir, file)).isFile()).map((file)=>({
|
|
68
|
+
file,
|
|
69
|
+
mtime: (0, _fs.lstatSync)((0, _path.join)(dir, file)).mtime
|
|
70
|
+
})).sort((a, b)=>b.mtime.getTime() - a.mtime.getTime());
|
|
71
|
+
};
|
|
66
72
|
this.logger = loggerFactory(MulterService.name);
|
|
67
73
|
}
|
|
68
74
|
startTrackingSession(multerFile, printerId) {
|
|
@@ -155,12 +161,7 @@ class MulterService {
|
|
|
155
161
|
getSessions() {
|
|
156
162
|
return this.fileUploadTrackerCache.getUploads();
|
|
157
163
|
}
|
|
158
|
-
orderRecentFiles
|
|
159
|
-
return (0, _fs.readdirSync)(dir).filter((file)=>(0, _fs.lstatSync)((0, _path.join)(dir, file)).isFile()).map((file)=>({
|
|
160
|
-
file,
|
|
161
|
-
mtime: (0, _fs.lstatSync)((0, _path.join)(dir, file)).mtime
|
|
162
|
-
})).sort((a, b)=>b.mtime.getTime() - a.mtime.getTime());
|
|
163
|
-
};
|
|
164
|
+
orderRecentFiles;
|
|
164
165
|
collectionPath(collection) {
|
|
165
166
|
return (0, _path.join)((0, _fsutils.superRootPath)(), _serverconstants.AppConstants.defaultFileStorageFolder, collection);
|
|
166
167
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/core/multer.service.ts"],"names":["MulterService","fileUploadTrackerCache","httpClientFactory","
|
|
1
|
+
{"version":3,"sources":["../../../src/services/core/multer.service.ts"],"names":["MulterService","logger","constructor","loggerFactory","fileUploadTrackerCache","httpClientFactory","orderRecentFiles","dir","readdirSync","filter","file","lstatSync","join","isFile","map","mtime","sort","a","b","getTime","name","startTrackingSession","multerFile","printerId","addUploadTracker","clearUploadsFolder","fileStoragePath","superRootPath","AppConstants","defaultFileStorageFolder","existsSync","files","withFileTypes","item","isDirectory","rmSync","error","errorSummary","clearUploadedFile","path","warn","getNewestFile","collection","dirPath","collectionPath","latestFile","length","undefined","fileExists","downloadFilename","downloadPath","downloadFile","downloadUrl","downloadFolder","mkdirSync","recursive","fileStream","createWriteStream","defaultHttpClient","createDefaultClient","res","get","Promise","resolve","reject","write","data","on","err","getMulterGCodeFileFilter","storeAsFile","getMulterFileFilter","defaultAcceptedGcodeExtensions","multerLoadFileAsync","req","fileExtensions","multer","storage","diskStorage","destination","memoryStorage","fileFilter","multerFileFilter","any","extensions","_","callback","ext","extname","originalname","includes","toLowerCase","Error","getSessions","getUploads"],"mappings":"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"}
|
|
@@ -16,18 +16,24 @@ function _interop_require_default(obj) {
|
|
|
16
16
|
};
|
|
17
17
|
}
|
|
18
18
|
class ServerReleaseService {
|
|
19
|
-
|
|
19
|
+
serverVersion;
|
|
20
20
|
githubService;
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
21
|
+
airGapped;
|
|
22
|
+
synced;
|
|
23
|
+
installedReleaseFound;
|
|
24
|
+
updateAvailable;
|
|
25
|
+
latestRelease;
|
|
26
|
+
installedRelease;
|
|
26
27
|
logger;
|
|
27
|
-
serverVersion
|
|
28
|
-
constructor({ serverVersion, githubService, loggerFactory }){
|
|
28
|
+
constructor(loggerFactory, serverVersion, githubService){
|
|
29
29
|
this.serverVersion = serverVersion;
|
|
30
30
|
this.githubService = githubService;
|
|
31
|
+
this.airGapped = null;
|
|
32
|
+
this.synced = false;
|
|
33
|
+
this.installedReleaseFound = null;
|
|
34
|
+
this.updateAvailable = null;
|
|
35
|
+
this.latestRelease = null;
|
|
36
|
+
this.installedRelease = null;
|
|
31
37
|
this.logger = loggerFactory(ServerReleaseService.name);
|
|
32
38
|
}
|
|
33
39
|
getState() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/core/server-release.service.ts"],"names":["ServerReleaseService","airGapped","
|
|
1
|
+
{"version":3,"sources":["../../../src/services/core/server-release.service.ts"],"names":["ServerReleaseService","airGapped","synced","installedReleaseFound","updateAvailable","latestRelease","installedRelease","logger","constructor","loggerFactory","serverVersion","githubService","name","getState","syncLatestRelease","wasAuthenticated","owner","AppConstants","orgName","repo","serverRepoName","response","getReleases","latestResponse","getLatestRelease","releases","data","length","warn","currentlyInstalledRelease","tag_name","lastTagIsNewer","semver","gt","logServerVersionState","latestReleaseState","latestReleaseTag","packageVersion","log","prerelease","error"],"mappings":"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"}
|