@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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/entities/user.entity.ts"],"names":["User","
|
|
1
|
+
{"version":3,"sources":["../../src/entities/user.entity.ts"],"names":["User","id","username","isDemoUser","isRootUser","isVerified","needsPasswordChange","passwordHash","createdAt","roles","refreshTokens","default","UserRole","ur","user","eager","RefreshToken","refreshToken"],"mappings":";;;;+BAKaA;;;eAAAA;;;yBALiF;oCACjE;gCACJ;;;;;;;;;;AAGlB,MAAMA;IAEXC,GAAW;IAGXC,SAAiB;IAKjBC,WAAoB;IAKpBC,WAAoB;IAKpBC,WAAoB;IAKpBC,oBAA6B;IAG7BC,aAAqB;IAGrBC,UAAgB;IAOhBC,MAA6B;IAM7BC,cAA8B;AAChC;;;;;;;;;;;QArCIC,SAAS;;;;;;QAKTA,SAAS;;;;;;QAKTA,SAAS;;;;;;QAKTA,SAAS;;;;;;;;;;;;;gCAWHC,wBAAQ,GACbC,KAAOA,GAAGC,IAAI;QACbC,OAAO;;;;;gCAKHC,gCAAY,GACjBC,eAAiBA,aAAaH,IAAI"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/exceptions/runtime.exceptions.ts"],"names":["AuthenticationError","AuthorizationError","BadRequestException","ExternalServiceError","ForbiddenError","InternalServerException","NotFoundException","NotImplementedException","ValidationException","Error","constructor","message","name","reasonCode","error","permissions","roles","reason","path","errors","validationObject","JSON","stringify","serviceType","responseObject","stack"],"mappings":";;;;;;;;;;;IAOaA,mBAAmB;eAAnBA;;
|
|
1
|
+
{"version":3,"sources":["../../src/exceptions/runtime.exceptions.ts"],"names":["AuthenticationError","AuthorizationError","BadRequestException","ExternalServiceError","ForbiddenError","InternalServerException","NotFoundException","NotImplementedException","ValidationException","Error","constructor","message","name","reasonCode","error","permissions","roles","reason","path","errors","validationObject","JSON","stringify","serviceType","responseObject","stack"],"mappings":";;;;;;;;;;;IAOaA,mBAAmB;eAAnBA;;IAiBAC,kBAAkB;eAAlBA;;IAcAC,mBAAmB;eAAnBA;;IA2BAC,oBAAoB;eAApBA;;IAhDAC,cAAc;eAAdA;;IA4DAC,uBAAuB;eAAvBA;;IAhCAC,iBAAiB;eAAjBA;;IA7CAC,uBAAuB;eAAvBA;;IAuDAC,mBAAmB;eAAnBA;;;AAvDN,MAAMD,gCAAgCE;IAC3CC,YAAYC,OAAgB,CAAE;QAC5B,KAAK,CAACA;QACN,IAAI,CAACC,IAAI,GAAGL,wBAAwBK,IAAI;IAC1C;AACF;AAEO,MAAMZ,4BAA4BS;IACvCI,WAAmB;IAEnBH,YAAYI,KAAc,EAAED,aAAa,EAAE,CAAE;QAC3C,KAAK,CAACC;QACN,IAAI,CAACF,IAAI,GAAGZ,oBAAoBY,IAAI;QACpC,IAAI,CAACC,UAAU,GAAGA;IACpB;AACF;AAEO,MAAMT,uBAAuBK;IAClCC,YAAYI,KAAc,CAAE;QAC1B,KAAK,CAACA;QACN,IAAI,CAACF,IAAI,GAAGR,eAAeQ,IAAI;IACjC;AACF;AAEO,MAAMX,2BAA2BQ;IACtCM,cAAyB,EAAE,CAAC;IAC5BC,QAAmB,EAAE,CAAC;IACtBC,OAAgB;IAEhBP,YAAY,EAAEK,WAAW,EAAEC,KAAK,EAAEC,MAAM,EAAiE,CAAE;QACzG,KAAK,CAAC;QACN,IAAI,CAACL,IAAI,GAAGX,mBAAmBW,IAAI;QACnC,IAAI,CAACK,MAAM,GAAGA;QACd,IAAI,CAACF,WAAW,GAAGA;QACnB,IAAI,CAACC,KAAK,GAAGA;IACf;AACF;AAEO,MAAMd,4BAA4BO;IACvCC,YAAYC,OAAe,CAAE;QAC3B,KAAK,CAACA;QACN,IAAI,CAACC,IAAI,GAAGV,oBAAoBU,IAAI;IACtC;AACF;AAEO,MAAMN,0BAA0BG;IACrCS,KAAc;IAEdR,YAAYC,OAAe,EAAEO,IAAa,CAAE;QAC1C,KAAK,CAACP;QACN,IAAI,CAACC,IAAI,GAAGN,kBAAkBM,IAAI;QAClC,IAAI,CAACM,IAAI,GAAGA;IACd;AACF;AAEO,MAAMV,4BAAqCC;IAChDU,OAAU;IAEVT,YAAYU,gBAAmB,CAAE;QAC/B,KAAK,CAACC,KAAKC,SAAS,CAACF;QACrB,IAAI,CAACR,IAAI,GAAGJ,oBAAoBI,IAAI;QACpC,IAAI,CAACO,MAAM,GAAGC;IAChB;AACF;AAEO,MAAMjB,6BAA6BM;IACxCK,MAAW;IACXS,YAAqB;IAErBb,YAAYc,cAAmB,EAAED,WAAoB,CAAE;QACrD,KAAK,CAACF,KAAKC,SAAS,CAACE;QACrB,IAAI,CAACZ,IAAI,GAAGT,qBAAqBS,IAAI;QACrC,IAAI,CAACE,KAAK,GAAGU;QACb,IAAI,CAACD,WAAW,GAAGA;IACrB;AACF;AAEO,MAAMlB,gCAAgCI;IAC3CC,YAAYC,OAAe,EAAEc,KAAW,CAAE;QACxC,KAAK,CAACd;QACN,IAAI,CAACC,IAAI,GAAGP,wBAAwBO,IAAI;QACxC,IAAI,CAACa,KAAK,GAAGA;IACf;AACF"}
|
package/dist/handlers/logger.js
CHANGED
|
@@ -13,72 +13,167 @@ const _path = require("path");
|
|
|
13
13
|
const _luxon = require("luxon");
|
|
14
14
|
const _serverconstants = require("../server.constants");
|
|
15
15
|
const _fsutils = require("../utils/fs.utils");
|
|
16
|
+
const _winstonloki = /*#__PURE__*/ _interop_require_default(require("winston-loki"));
|
|
17
|
+
const _zod = require("zod");
|
|
16
18
|
function _interop_require_default(obj) {
|
|
17
19
|
return obj && obj.__esModule ? obj : {
|
|
18
20
|
default: obj
|
|
19
21
|
};
|
|
20
22
|
}
|
|
21
|
-
const
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
23
|
+
const levelMap = {
|
|
24
|
+
error: "ERR",
|
|
25
|
+
warn: "WRN",
|
|
26
|
+
info: "INF",
|
|
27
|
+
debug: "DBG",
|
|
28
|
+
http: "HTT",
|
|
29
|
+
verbose: "VRB",
|
|
30
|
+
silly: "SLY"
|
|
28
31
|
};
|
|
32
|
+
const lokiLineClassProperty = "class";
|
|
33
|
+
const lokiValidationSchema = _zod.z.object({
|
|
34
|
+
lokiEnabled: _zod.z.boolean(),
|
|
35
|
+
lokiAddress: _zod.z.string().url(),
|
|
36
|
+
lokiTimeoutSeconds: _zod.z.coerce.number().positive().default(30),
|
|
37
|
+
lokiInterval: _zod.z.coerce.number().positive().default(15)
|
|
38
|
+
});
|
|
29
39
|
class LoggerService {
|
|
30
40
|
name;
|
|
31
41
|
logger;
|
|
32
42
|
constructor(name, enableFileLogs = true, logFilterLevel = ""){
|
|
33
43
|
const isProd = process.env[_serverconstants.AppConstants.NODE_ENV_KEY] === _serverconstants.AppConstants.defaultProductionEnv;
|
|
34
44
|
const isTest = process.env[_serverconstants.AppConstants.NODE_ENV_KEY] === _serverconstants.AppConstants.defaultTestEnv;
|
|
35
|
-
|
|
36
|
-
|
|
45
|
+
let effectiveLogLevel = logFilterLevel;
|
|
46
|
+
if (!effectiveLogLevel) {
|
|
47
|
+
effectiveLogLevel = isProd || isTest ? "warn" : "debug";
|
|
48
|
+
}
|
|
49
|
+
const isLokiEnabled = process.env[_serverconstants.AppConstants.ENABLE_LOKI_LOGGING] === "true";
|
|
50
|
+
const extraWinstonTransports = [];
|
|
51
|
+
if (isLokiEnabled) {
|
|
52
|
+
const lokiConfigValidationResult = lokiValidationSchema.safeParse({
|
|
53
|
+
lokiEnabled: isLokiEnabled,
|
|
54
|
+
lokiTimeoutSeconds: process.env[_serverconstants.AppConstants.LOKI_TIMEOUT_SECONDS],
|
|
55
|
+
lokiAddress: process.env[_serverconstants.AppConstants.LOKI_ADDRESS],
|
|
56
|
+
lokiInterval: process.env[_serverconstants.AppConstants.LOKI_INTERVAL]
|
|
57
|
+
});
|
|
58
|
+
if (lokiConfigValidationResult.success) {
|
|
59
|
+
extraWinstonTransports.push(new _winstonloki.default({
|
|
60
|
+
level: effectiveLogLevel,
|
|
61
|
+
host: lokiConfigValidationResult.data.lokiAddress,
|
|
62
|
+
interval: lokiConfigValidationResult.data.lokiInterval,
|
|
63
|
+
timeout: lokiConfigValidationResult.data.lokiTimeoutSeconds,
|
|
64
|
+
handleExceptions: true,
|
|
65
|
+
onConnectionError (error) {
|
|
66
|
+
console.debug(`Loki logger enabled, but connection failed. ${error}`);
|
|
67
|
+
},
|
|
68
|
+
labels: {
|
|
69
|
+
app: "fdm-monster-server"
|
|
70
|
+
},
|
|
71
|
+
json: false,
|
|
72
|
+
useWinstonMetaAsLabels: false,
|
|
73
|
+
format: _winston.default.format.json()
|
|
74
|
+
}));
|
|
75
|
+
}
|
|
37
76
|
}
|
|
38
|
-
const date = _luxon.DateTime.now().toISODate();
|
|
39
77
|
this.name = name;
|
|
40
78
|
this.logger = _winston.default.createLogger({
|
|
41
79
|
transports: [
|
|
80
|
+
...extraWinstonTransports,
|
|
42
81
|
new _winston.default.transports.Console({
|
|
43
|
-
level:
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
82
|
+
level: effectiveLogLevel,
|
|
83
|
+
format: _winston.default.format.combine(_winston.default.format((info)=>{
|
|
84
|
+
info.rawLevel = info.level;
|
|
85
|
+
return info;
|
|
86
|
+
})(), _winston.default.format.colorize({
|
|
87
|
+
colors: {
|
|
88
|
+
error: "red",
|
|
89
|
+
warn: "yellow",
|
|
90
|
+
info: "white",
|
|
91
|
+
debug: "gray",
|
|
92
|
+
http: "magenta",
|
|
93
|
+
verbose: "cyan",
|
|
94
|
+
silly: "gray"
|
|
95
|
+
},
|
|
96
|
+
level: true,
|
|
97
|
+
message: true,
|
|
98
|
+
all: false
|
|
99
|
+
}), _winston.default.format.printf((info)=>{
|
|
100
|
+
const now = new Date();
|
|
101
|
+
const timestamp = `${now.toISOString().split("T")[0]} ${now.toTimeString().split(" ")[0]}.${now.getMilliseconds().toString().padStart(3, "0")}`;
|
|
102
|
+
const levelAbbr = levelMap[info.rawLevel] || info.rawLevel.substring(0, 3).toUpperCase();
|
|
103
|
+
const gray = "\x1b[90m";
|
|
104
|
+
const reset = info.message.substring(0, 5) ?? "\x1b[0m";
|
|
105
|
+
const numberRegex = /\b\d+\b/g;
|
|
106
|
+
const coloredMessage = info.message.replace(numberRegex, (match)=>`\x1b[35m${match}${reset}`);
|
|
107
|
+
let logEntry = `${gray}[${timestamp} ${reset}${levelAbbr}${reset}${gray}]${reset} ${gray}[${reset}${name}${gray}]${reset} ${coloredMessage}`;
|
|
108
|
+
if (info.meta) {
|
|
109
|
+
const metaString = JSON.stringify(info.meta);
|
|
110
|
+
const coloredMeta = metaString.replace(numberRegex, (match)=>`\x1b[35m${match}${reset}`);
|
|
111
|
+
logEntry += ` ${coloredMeta}`;
|
|
112
|
+
}
|
|
113
|
+
return logEntry;
|
|
114
|
+
}))
|
|
115
|
+
})
|
|
53
116
|
],
|
|
54
117
|
format: _winston.default.format.printf((info)=>{
|
|
55
|
-
const
|
|
56
|
-
const
|
|
57
|
-
|
|
58
|
-
message =
|
|
118
|
+
const now = new Date();
|
|
119
|
+
const timestamp = `${now.toISOString().split("T")[0]} ${now.toTimeString().split(" ")[0]}.${now.getMilliseconds().toString().padStart(3, "0")}`;
|
|
120
|
+
const levelAbbr = levelMap[info.level] || `[${info.level.substring(0, 3).toUpperCase()}]`;
|
|
121
|
+
let message = `[${timestamp} ${levelAbbr}] [${name}] ${info.message}`;
|
|
122
|
+
if (info.meta) {
|
|
123
|
+
const pascalCaseMeta = Object.entries(info.meta).reduce((acc, [key, value])=>{
|
|
124
|
+
const pascalKey = key.charAt(0).toUpperCase() + key.slice(1);
|
|
125
|
+
acc[pascalKey] = value;
|
|
126
|
+
return acc;
|
|
127
|
+
}, {});
|
|
128
|
+
message += ` ${JSON.stringify(pascalCaseMeta)}`;
|
|
129
|
+
}
|
|
59
130
|
return message;
|
|
60
131
|
})
|
|
61
132
|
});
|
|
133
|
+
if (enableFileLogs) {
|
|
134
|
+
const date = _luxon.DateTime.now().toISODate();
|
|
135
|
+
const logFilePath = (0, _path.join)((0, _fsutils.superRootPath)(), _serverconstants.AppConstants.defaultLogsFolder, `${_serverconstants.AppConstants.logAppName}-${date}.log`);
|
|
136
|
+
this.logger.add(new _winston.default.transports.File({
|
|
137
|
+
level: isTest ? "warn" : "info",
|
|
138
|
+
filename: logFilePath,
|
|
139
|
+
maxsize: 5000000,
|
|
140
|
+
maxFiles: 5
|
|
141
|
+
}));
|
|
142
|
+
}
|
|
62
143
|
}
|
|
63
|
-
|
|
64
|
-
this.logger.
|
|
65
|
-
|
|
144
|
+
newDebug(object) {
|
|
145
|
+
this.logger.debug({
|
|
146
|
+
...object,
|
|
147
|
+
[lokiLineClassProperty]: this.name
|
|
66
148
|
});
|
|
67
149
|
}
|
|
150
|
+
log(message, meta) {
|
|
151
|
+
const enrichedMeta = {
|
|
152
|
+
...meta,
|
|
153
|
+
[lokiLineClassProperty]: this.name
|
|
154
|
+
};
|
|
155
|
+
this.logger.log("info", message, enrichedMeta);
|
|
156
|
+
}
|
|
68
157
|
warn(message, meta) {
|
|
69
|
-
|
|
70
|
-
meta
|
|
71
|
-
|
|
158
|
+
const enrichedMeta = {
|
|
159
|
+
...meta,
|
|
160
|
+
[lokiLineClassProperty]: this.name
|
|
161
|
+
};
|
|
162
|
+
this.logger.log("warn", message, enrichedMeta);
|
|
72
163
|
}
|
|
73
164
|
debug(message, meta) {
|
|
74
|
-
|
|
75
|
-
meta
|
|
76
|
-
|
|
165
|
+
const enrichedMeta = {
|
|
166
|
+
...meta,
|
|
167
|
+
[lokiLineClassProperty]: this.name
|
|
168
|
+
};
|
|
169
|
+
this.logger.log("debug", message, enrichedMeta);
|
|
77
170
|
}
|
|
78
171
|
error(message, meta) {
|
|
79
|
-
|
|
80
|
-
meta
|
|
81
|
-
|
|
172
|
+
const enrichedMeta = {
|
|
173
|
+
...meta,
|
|
174
|
+
[lokiLineClassProperty]: this.name
|
|
175
|
+
};
|
|
176
|
+
this.logger.log("error", message, enrichedMeta);
|
|
82
177
|
}
|
|
83
178
|
}
|
|
84
179
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/handlers/logger.ts"],"names":["LoggerService","
|
|
1
|
+
{"version":3,"sources":["../../src/handlers/logger.ts"],"names":["LoggerService","levelMap","error","warn","info","debug","http","verbose","silly","lokiLineClassProperty","lokiValidationSchema","z","object","lokiEnabled","boolean","lokiAddress","string","url","lokiTimeoutSeconds","coerce","number","positive","default","lokiInterval","name","logger","constructor","enableFileLogs","logFilterLevel","isProd","process","env","AppConstants","NODE_ENV_KEY","defaultProductionEnv","isTest","defaultTestEnv","effectiveLogLevel","isLokiEnabled","ENABLE_LOKI_LOGGING","extraWinstonTransports","lokiConfigValidationResult","safeParse","LOKI_TIMEOUT_SECONDS","LOKI_ADDRESS","LOKI_INTERVAL","success","push","LokiTransport","level","host","data","interval","timeout","handleExceptions","onConnectionError","console","labels","app","json","useWinstonMetaAsLabels","format","winston","createLogger","transports","Console","combine","rawLevel","colorize","colors","message","all","printf","now","Date","timestamp","toISOString","split","toTimeString","getMilliseconds","toString","padStart","levelAbbr","substring","toUpperCase","gray","reset","numberRegex","coloredMessage","replace","match","logEntry","meta","metaString","JSON","stringify","coloredMeta","pascalCaseMeta","Object","entries","reduce","acc","key","value","pascalKey","charAt","slice","date","DateTime","toISODate","logFilePath","join","superRootPath","defaultLogsFolder","logAppName","add","File","filename","maxsize","maxFiles","newDebug","log","enrichedMeta"],"mappings":"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"}
|
|
@@ -9,12 +9,6 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
getExtendedValidator: function() {
|
|
13
|
-
return getExtendedValidator;
|
|
14
|
-
},
|
|
15
|
-
getScopedPrinter: function() {
|
|
16
|
-
return getScopedPrinter;
|
|
17
|
-
},
|
|
18
12
|
validateInput: function() {
|
|
19
13
|
return validateInput;
|
|
20
14
|
},
|
|
@@ -23,118 +17,15 @@ _export(exports, {
|
|
|
23
17
|
}
|
|
24
18
|
});
|
|
25
19
|
const _runtimeexceptions = require("../exceptions/runtime.exceptions");
|
|
26
|
-
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
function _getRequireWildcardCache(nodeInterop) {
|
|
31
|
-
if (typeof WeakMap !== "function") return null;
|
|
32
|
-
var cacheBabelInterop = new WeakMap();
|
|
33
|
-
var cacheNodeInterop = new WeakMap();
|
|
34
|
-
return (_getRequireWildcardCache = function(nodeInterop) {
|
|
35
|
-
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
|
|
36
|
-
})(nodeInterop);
|
|
37
|
-
}
|
|
38
|
-
function _interop_require_wildcard(obj, nodeInterop) {
|
|
39
|
-
if (!nodeInterop && obj && obj.__esModule) {
|
|
40
|
-
return obj;
|
|
41
|
-
}
|
|
42
|
-
if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
|
|
43
|
-
return {
|
|
44
|
-
default: obj
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
var cache = _getRequireWildcardCache(nodeInterop);
|
|
48
|
-
if (cache && cache.has(obj)) {
|
|
49
|
-
return cache.get(obj);
|
|
50
|
-
}
|
|
51
|
-
var newObj = {
|
|
52
|
-
__proto__: null
|
|
53
|
-
};
|
|
54
|
-
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
55
|
-
for(var key in obj){
|
|
56
|
-
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
57
|
-
var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
|
|
58
|
-
if (desc && (desc.get || desc.set)) {
|
|
59
|
-
Object.defineProperty(newObj, key, desc);
|
|
60
|
-
} else {
|
|
61
|
-
newObj[key] = obj[key];
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
newObj.default = obj;
|
|
66
|
-
if (cache) {
|
|
67
|
-
cache.set(obj, newObj);
|
|
68
|
-
}
|
|
69
|
-
return newObj;
|
|
70
|
-
}
|
|
71
|
-
function getExtendedValidator() {
|
|
72
|
-
(0, _nodeinputvalidator.extend)("wsurl", ({ value, args }, validator)=>{
|
|
73
|
-
if (!value) return false;
|
|
74
|
-
try {
|
|
75
|
-
const url = new URL((0, _normalizeurl.normalizeUrl)(value, {
|
|
76
|
-
defaultProtocol: "wss"
|
|
77
|
-
}));
|
|
78
|
-
return url.protocol === "ws:" || url.protocol === "wss:";
|
|
79
|
-
} catch (e) {
|
|
80
|
-
return false;
|
|
81
|
-
}
|
|
82
|
-
});
|
|
83
|
-
(0, _nodeinputvalidator.extend)("httpurl", ({ value, args }, validator)=>{
|
|
84
|
-
if (!value) return false;
|
|
85
|
-
try {
|
|
86
|
-
const url = new URL((0, _normalizeurl.normalizeUrl)(value, {
|
|
87
|
-
defaultProtocol: _urlutils.defaultHttpProtocol
|
|
88
|
-
}));
|
|
89
|
-
return url.protocol === "http:" || url.protocol === "https:";
|
|
90
|
-
} catch (e) {
|
|
91
|
-
return false;
|
|
92
|
-
}
|
|
93
|
-
});
|
|
94
|
-
(0, _nodeinputvalidator.extend)("not", ({ value, args }, validator)=>{
|
|
95
|
-
return !value && value !== false;
|
|
96
|
-
});
|
|
97
|
-
(0, _nodeinputvalidator.extendMessages)({
|
|
98
|
-
not: "The :attribute field may not be present."
|
|
99
|
-
});
|
|
100
|
-
return _nodeinputvalidator.default;
|
|
101
|
-
}
|
|
102
|
-
function getScopedPrinter(req) {
|
|
103
|
-
const tokens = [
|
|
104
|
-
_printer.printerApiToken,
|
|
105
|
-
_printer.printerLoginToken,
|
|
106
|
-
_printer.currentPrinterToken,
|
|
107
|
-
_printer.printerIdToken
|
|
108
|
-
];
|
|
109
|
-
let resolvedDependencies = {};
|
|
110
|
-
let errors = [];
|
|
111
|
-
tokens.forEach((t)=>{
|
|
112
|
-
try {
|
|
113
|
-
const dependency = req.container.resolve(t);
|
|
114
|
-
if (!dependency) {
|
|
115
|
-
errors.push(`Scoped Dependency '${t}' was not resolved. Please ensure the route requires a :id param and the printerId was provided.`);
|
|
116
|
-
}
|
|
117
|
-
resolvedDependencies[t] = dependency;
|
|
118
|
-
} catch (e) {
|
|
119
|
-
throw new _runtimeexceptions.InternalServerException(`Dependency ${t} could not be resolved. Aborted request.`);
|
|
120
|
-
}
|
|
121
|
-
});
|
|
122
|
-
if (errors.length > 0) {
|
|
123
|
-
throw new _runtimeexceptions.ValidationException(errors);
|
|
124
|
-
}
|
|
125
|
-
return resolvedDependencies;
|
|
126
|
-
}
|
|
127
|
-
async function validateInput(data, rules) {
|
|
128
|
-
const localNIV = getExtendedValidator();
|
|
129
|
-
const v = new localNIV.Validator(data, rules);
|
|
130
|
-
const matched = await v.check();
|
|
131
|
-
if (!matched) {
|
|
132
|
-
throw new _runtimeexceptions.ValidationException(v.errors);
|
|
20
|
+
async function validateInput(data, zodSchema) {
|
|
21
|
+
const result = await zodSchema.safeParseAsync(data);
|
|
22
|
+
if (!result.success) {
|
|
23
|
+
throw new _runtimeexceptions.ValidationException(result.error);
|
|
133
24
|
}
|
|
134
|
-
return
|
|
25
|
+
return result.data;
|
|
135
26
|
}
|
|
136
|
-
async function validateMiddleware(req,
|
|
137
|
-
return validateInput(req.body,
|
|
27
|
+
async function validateMiddleware(req, zodSchema) {
|
|
28
|
+
return validateInput(req.body, zodSchema);
|
|
138
29
|
}
|
|
139
30
|
|
|
140
31
|
//# sourceMappingURL=validators.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/handlers/validators.ts"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../src/handlers/validators.ts"],"names":["validateInput","validateMiddleware","data","zodSchema","result","safeParseAsync","success","ValidationException","error","req","body"],"mappings":";;;;;;;;;;;IAIsBA,aAAa;eAAbA;;IASAC,kBAAkB;eAAlBA;;;mCAZc;AAG7B,eAAeD,cAAoBE,IAAO,EAAEC,SAAuB;IACxE,MAAMC,SAAS,MAAMD,UAAUE,cAAc,CAACH;IAE9C,IAAI,CAACE,OAAOE,OAAO,EAAE;QACnB,MAAM,IAAIC,sCAAmB,CAACH,OAAOI,KAAK;IAC5C;IACA,OAAOJ,OAAOF,IAAI;AACpB;AAEO,eAAeD,mBAAyBQ,GAAe,EAAEN,SAAuB;IACrF,OAAOH,cAAcS,IAAIC,IAAI,EAAEP;AACjC"}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"names":["setupEnvConfig","setupServer","then","httpServer","container","resolve","DITokens","serverHost","boot","catch","e","console","error","captureException","flush","process","exit"],"mappings":";;;;sBAAwC;2BACT;4BACH;iCACH;
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"names":["setupEnvConfig","setupServer","then","httpServer","container","resolve","DITokens","serverHost","boot","catch","e","console","error","captureException","flush","process","exit"],"mappings":";;;;sBAAwC;2BACT;4BACH;iCACH;AAGzBA,IAAAA,yBAAc;AAEdC,IAAAA,uBAAW,IAAGC,IAAI,CAAC,CAAC,EAAEC,UAAU,EAAEC,SAAS,EAAE;IAC3CA,UACGC,OAAO,CAAaC,yBAAQ,CAACC,UAAU,EACvCC,IAAI,CAACL,YACLM,KAAK,CAAC,OAAOC;QACZC,QAAQC,KAAK,CAAC,2DAA2DF;QAEzEG,IAAAA,sBAAgB,EAACH;QACjB,MAAMI,IAAAA,WAAK,EAAC;QACZC,QAAQC,IAAI,CAAC;IACf;AACJ"}
|
|
@@ -12,20 +12,17 @@ _export(exports, {
|
|
|
12
12
|
authenticate: function() {
|
|
13
13
|
return authenticate;
|
|
14
14
|
},
|
|
15
|
-
authorizePermission: function() {
|
|
16
|
-
return authorizePermission;
|
|
17
|
-
},
|
|
18
15
|
authorizeRoles: function() {
|
|
19
16
|
return authorizeRoles;
|
|
20
17
|
},
|
|
21
|
-
|
|
22
|
-
return
|
|
18
|
+
permission: function() {
|
|
19
|
+
return permission;
|
|
23
20
|
}
|
|
24
21
|
});
|
|
25
22
|
const _awilixexpress = require("awilix-express");
|
|
26
23
|
const _runtimeexceptions = require("../exceptions/runtime.exceptions");
|
|
27
24
|
const _authorizationconstants = require("../constants/authorization.constants");
|
|
28
|
-
const authenticate = ()=>(0, _awilixexpress.inject)((
|
|
25
|
+
const authenticate = ()=>(0, _awilixexpress.inject)((authService, loggerFactory, settingsStore)=>async (req, res, next)=>{
|
|
29
26
|
const logger = loggerFactory("Middleware:authenticate");
|
|
30
27
|
const isLoginRequired = await settingsStore.getLoginRequired();
|
|
31
28
|
if (!isLoginRequired) {
|
|
@@ -35,8 +32,7 @@ const authenticate = ()=>(0, _awilixexpress.inject)(({ settingsStore, authServic
|
|
|
35
32
|
throw new _runtimeexceptions.AuthenticationError("Password change required", _authorizationconstants.AUTH_ERROR_REASON.PasswordChangeRequired);
|
|
36
33
|
}
|
|
37
34
|
const bearer = req.headers.authorization?.replace("Bearer ", "") || undefined;
|
|
38
|
-
|
|
39
|
-
if (!!bearer?.length && isJwtBlacklisted) {
|
|
35
|
+
if (!!bearer?.length && authService.isJwtTokenBlacklisted(bearer)) {
|
|
40
36
|
throw new _runtimeexceptions.AuthenticationError("Not authenticated", _authorizationconstants.AUTH_ERROR_REASON.LoginRequired);
|
|
41
37
|
}
|
|
42
38
|
if (req.isAuthenticated()) {
|
|
@@ -45,41 +41,34 @@ const authenticate = ()=>(0, _awilixexpress.inject)(({ settingsStore, authServic
|
|
|
45
41
|
logger.log(`Not authenticated for route: ${req.originalUrl}`);
|
|
46
42
|
throw new _runtimeexceptions.AuthenticationError("Not authenticated", _authorizationconstants.AUTH_ERROR_REASON.InvalidOrExpiredAuthToken);
|
|
47
43
|
});
|
|
48
|
-
function
|
|
49
|
-
return (0, _awilixexpress.inject)((
|
|
44
|
+
function permission(requiredPermission) {
|
|
45
|
+
return (0, _awilixexpress.inject)((permissionService, roleService)=>async (req, res, next)=>{
|
|
50
46
|
const userRoles = req.roles;
|
|
51
47
|
if (!userRoles?.length) {
|
|
52
48
|
throw new _runtimeexceptions.AuthorizationError({
|
|
53
49
|
permissions: [
|
|
54
|
-
|
|
50
|
+
requiredPermission
|
|
55
51
|
]
|
|
56
52
|
});
|
|
57
53
|
}
|
|
58
54
|
const assignedPermissions = roleService.getRolesPermissions(userRoles);
|
|
59
|
-
if (!permissionService.authorizePermission(
|
|
55
|
+
if (!permissionService.authorizePermission(requiredPermission, assignedPermissions)) {
|
|
60
56
|
throw new _runtimeexceptions.AuthorizationError({
|
|
61
57
|
permissions: [
|
|
62
|
-
|
|
58
|
+
requiredPermission
|
|
63
59
|
]
|
|
64
60
|
});
|
|
65
61
|
}
|
|
66
62
|
next();
|
|
67
63
|
});
|
|
68
64
|
}
|
|
69
|
-
const authorizeRoles = (roles, subset = true)=>(0, _awilixexpress.inject)((
|
|
70
|
-
if (!roleService.authorizeRoles(roles, req.roles, subset)) {
|
|
65
|
+
const authorizeRoles = (roles, subset = true)=>(0, _awilixexpress.inject)((roleService)=>async (req, res, next)=>{
|
|
66
|
+
if (!req.roles?.length || !roleService.authorizeRoles(roles, req.roles, subset)) {
|
|
71
67
|
throw new _runtimeexceptions.AuthorizationError({
|
|
72
68
|
roles
|
|
73
69
|
});
|
|
74
70
|
}
|
|
75
71
|
next();
|
|
76
72
|
});
|
|
77
|
-
function withPermission(permission) {
|
|
78
|
-
return {
|
|
79
|
-
before: [
|
|
80
|
-
authorizePermission(permission)
|
|
81
|
-
]
|
|
82
|
-
};
|
|
83
|
-
}
|
|
84
73
|
|
|
85
74
|
//# sourceMappingURL=authenticate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/middleware/authenticate.ts"],"names":["authenticate","
|
|
1
|
+
{"version":3,"sources":["../../src/middleware/authenticate.ts"],"names":["authenticate","authorizeRoles","permission","inject","authService","loggerFactory","settingsStore","req","res","next","logger","isLoginRequired","getLoginRequired","user","needsPasswordChange","AuthenticationError","AUTH_ERROR_REASON","PasswordChangeRequired","bearer","headers","authorization","replace","undefined","length","isJwtTokenBlacklisted","LoginRequired","isAuthenticated","log","originalUrl","InvalidOrExpiredAuthToken","requiredPermission","permissionService","roleService","userRoles","roles","AuthorizationError","permissions","assignedPermissions","getRolesPermissions","authorizePermission","subset"],"mappings":";;;;;;;;;;;IAWaA,YAAY;eAAZA;;IAkDAC,cAAc;eAAdA;;IAnBGC,UAAU;eAAVA;;;+BA1CO;mCACiC;wCAEtB;AAQ3B,MAAMF,eAAe,IAC1BG,IAAAA,qBAAM,EACJ,CAACC,aAA0BC,eAA+BC,gBACxD,OAAOC,KAAcC,KAAeC;YAClC,MAAMC,SAASL,cAAc;YAE7B,MAAMM,kBAAkB,MAAML,cAAcM,gBAAgB;YAC5D,IAAI,CAACD,iBAAiB;gBACpB,OAAOF;YACT;YAGA,IAAIF,IAAIM,IAAI,EAAEC,qBAAqB;gBACjC,MAAM,IAAIC,sCAAmB,CAAC,4BAA4BC,yCAAiB,CAACC,sBAAsB;YACpG;YAGA,MAAMC,SAASX,IAAIY,OAAO,CAACC,aAAa,EAAEC,QAAQ,WAAW,OAAOC;YACpE,IAAI,CAAC,CAACJ,QAAQK,UAAUnB,YAAYoB,qBAAqB,CAACN,SAAS;gBACjE,MAAM,IAAIH,sCAAmB,CAAC,qBAAqBC,yCAAiB,CAACS,aAAa;YACpF;YAEA,IAAIlB,IAAImB,eAAe,IAAI;gBACzB,OAAOjB;YACT;YAEAC,OAAOiB,GAAG,CAAC,CAAC,6BAA6B,EAAEpB,IAAIqB,WAAW,EAAE;YAC5D,MAAM,IAAIb,sCAAmB,CAAC,qBAAqBC,yCAAiB,CAACa,yBAAyB;QAChG;AAGC,SAAS3B,WAAW4B,kBAA0B;IACnD,OAAO3B,IAAAA,qBAAM,EACX,CAAC4B,mBAAuCC,cACtC,OAAOzB,KAAcC,KAAeC;YAClC,MAAMwB,YAAY1B,IAAI2B,KAAK;YAC3B,IAAI,CAACD,WAAWV,QAAQ;gBACtB,MAAM,IAAIY,qCAAkB,CAAC;oBAAEC,aAAa;wBAACN;qBAAmB;gBAAC;YACnE;YAEA,MAAMO,sBAAsBL,YAAYM,mBAAmB,CAACL;YAC5D,IAAI,CAACF,kBAAkBQ,mBAAmB,CAACT,oBAAoBO,sBAAsB;gBACnF,MAAM,IAAIF,qCAAkB,CAAC;oBAAEC,aAAa;wBAACN;qBAAmB;gBAAC;YACnE;YAEArB;QACF;AAEN;AAEO,MAAMR,iBAAiB,CAACiC,OAAiBM,SAAS,IAAI,GAC3DrC,IAAAA,qBAAM,EAAC,CAAC6B,cAA8B,OAAOzB,KAAcC,KAAeC;YACxE,IAAI,CAACF,IAAI2B,KAAK,EAAEX,UAAU,CAACS,YAAY/B,cAAc,CAACiC,OAAO3B,IAAI2B,KAAK,EAAEM,SAAS;gBAC/E,MAAM,IAAIL,qCAAkB,CAAC;oBAAED;gBAAM;YACvC;YAEAzB;QACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/middleware/database.ts"],"names":["interceptDatabaseError","req","res","next","serverHost","container","resolve","DITokens","databaseReadyState","hasConnected","status","send","state"],"mappings":";;;;+BAMsBA;;;eAAAA;;;iCANG;AAMlB,eAAeA,uBAAuBC,
|
|
1
|
+
{"version":3,"sources":["../../src/middleware/database.ts"],"names":["interceptDatabaseError","req","res","next","serverHost","container","resolve","DITokens","databaseReadyState","hasConnected","status","send","state"],"mappings":";;;;+BAMsBA;;;eAAAA;;;iCANG;AAMlB,eAAeA,uBAAuBC,GAAkB,EAAEC,GAAa,EAAEC,IAAkB;IAChG,MAAMC,aAAaH,IAAII,SAAS,CAACC,OAAO,CAACC,yBAAQ,CAACH,UAAU;IAE5D,MAAMI,qBAAqBJ,WAAWK,YAAY;IAClD,IAAID,uBAAuB,GAAG;QAC5BL;IACF,OAAO;QACLD,IAAIQ,MAAM,CAAC;QACXR,IAAIS,IAAI,CAAC;YACPH,oBAAoBJ,WAAWK,YAAY;YAC3CG,OAAO;QACT;IACF;AACF"}
|
|
@@ -2,23 +2,15 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
demoUserNotAllowed: function() {
|
|
5
|
+
Object.defineProperty(exports, "demoUserNotAllowed", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
13
8
|
return demoUserNotAllowed;
|
|
14
|
-
},
|
|
15
|
-
demoUserNotAllowedInterceptor: function() {
|
|
16
|
-
return demoUserNotAllowedInterceptor;
|
|
17
9
|
}
|
|
18
10
|
});
|
|
19
11
|
const _runtimeexceptions = require("../exceptions/runtime.exceptions");
|
|
20
12
|
const _awilixexpress = require("awilix-express");
|
|
21
|
-
const demoUserNotAllowed = (0, _awilixexpress.inject)((
|
|
13
|
+
const demoUserNotAllowed = (0, _awilixexpress.inject)((userService, configService, loggerFactory)=>{
|
|
22
14
|
const logger = loggerFactory(demoUserNotAllowed.name);
|
|
23
15
|
return async (req, res, next)=>{
|
|
24
16
|
const isDemoMode = configService.isDemoMode();
|
|
@@ -34,10 +26,5 @@ const demoUserNotAllowed = (0, _awilixexpress.inject)(({ userService, configServ
|
|
|
34
26
|
next();
|
|
35
27
|
};
|
|
36
28
|
});
|
|
37
|
-
const demoUserNotAllowedInterceptor = {
|
|
38
|
-
before: [
|
|
39
|
-
demoUserNotAllowed
|
|
40
|
-
]
|
|
41
|
-
};
|
|
42
29
|
|
|
43
30
|
//# sourceMappingURL=demo.middleware.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/middleware/demo.middleware.ts"],"names":["demoUserNotAllowed","
|
|
1
|
+
{"version":3,"sources":["../../src/middleware/demo.middleware.ts"],"names":["demoUserNotAllowed","inject","userService","configService","loggerFactory","logger","name","req","res","next","isDemoMode","demoUserId","getDemoUserId","user","id","warn","path","ForbiddenError"],"mappings":";;;;+BAOaA;;;eAAAA;;;mCAPkB;+BAER;AAKhB,MAAMA,qBAAqBC,IAAAA,qBAAM,EACtC,CAACC,aAA2BC,eAA+BC;IACzD,MAAMC,SAASD,cAAcJ,mBAAmBM,IAAI;IACpD,OAAO,OAAOC,KAAcC,KAAeC;QACzC,MAAMC,aAAaP,cAAcO,UAAU;QAC3C,IAAI,CAACA,YAAY;YACfD;YACA;QACF;QACA,MAAME,aAAa,MAAMT,YAAYU,aAAa;QAClD,IAAIL,IAAIM,IAAI,EAAEC,OAAOH,YAAY;YAC/BN,OAAOU,IAAI,CAAC,qDAAqDR,IAAIS,IAAI;YACzE,MAAM,IAAIC,iCAAc,CAAC;QAC3B;QACAR;IACF;AACF"}
|