@fdm-monster/server 1.5.0-rc1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env +19 -0
- package/.env.template +43 -0
- package/.gitattributes +1 -0
- package/.idea/codeStyles/Project.xml +85 -0
- package/.idea/codeStyles/codeStyleConfig.xml +5 -0
- package/.idea/dbnavigator.xml +574 -0
- package/.idea/fdm-monster.iml +16 -0
- package/.idea/inspectionProfiles/Project_Default.xml +22 -0
- package/.idea/jsLibraryMappings.xml +6 -0
- package/.idea/modules.xml +12 -0
- package/.idea/prettier.xml +6 -0
- package/.idea/vcs.xml +17 -0
- package/.swcrc +33 -0
- package/CODE_OF_CONDUCT.md +46 -0
- package/CONTRIBUTING.md +134 -0
- package/LICENSE +661 -0
- package/README.md +149 -0
- package/SECURITY.md +16 -0
- package/dist/@type/express/index.d.js +7 -0
- package/dist/@type/express/index.d.js.map +1 -0
- package/dist/constants/authorization.constants.js +99 -0
- package/dist/constants/authorization.constants.js.map +1 -0
- package/dist/constants/event.constants.js +55 -0
- package/dist/constants/event.constants.js.map +1 -0
- package/dist/constants/http-status-codes.constants.js +268 -0
- package/dist/constants/http-status-codes.constants.js.map +1 -0
- package/dist/constants/server-settings.constants.js +119 -0
- package/dist/constants/server-settings.constants.js.map +1 -0
- package/dist/constants/service.constants.js +48 -0
- package/dist/constants/service.constants.js.map +1 -0
- package/dist/container.js +161 -0
- package/dist/container.js.map +1 -0
- package/dist/container.tokens.js +83 -0
- package/dist/container.tokens.js.map +1 -0
- package/dist/controllers/auth.controller.js +143 -0
- package/dist/controllers/auth.controller.js.map +1 -0
- package/dist/controllers/batch-call.controller.js +59 -0
- package/dist/controllers/batch-call.controller.js.map +1 -0
- package/dist/controllers/camera-stream.controller.js +57 -0
- package/dist/controllers/camera-stream.controller.js.map +1 -0
- package/dist/controllers/custom-gcode.controller.js +76 -0
- package/dist/controllers/custom-gcode.controller.js.map +1 -0
- package/dist/controllers/first-time-setup.controller.js +65 -0
- package/dist/controllers/first-time-setup.controller.js.map +1 -0
- package/dist/controllers/floor.controller.js +78 -0
- package/dist/controllers/floor.controller.js.map +1 -0
- package/dist/controllers/plugin-firmware-update.controller.js +140 -0
- package/dist/controllers/plugin-firmware-update.controller.js.map +1 -0
- package/dist/controllers/print-completion.controller.js +58 -0
- package/dist/controllers/print-completion.controller.js.map +1 -0
- package/dist/controllers/printer-files.controller.js +208 -0
- package/dist/controllers/printer-files.controller.js.map +1 -0
- package/dist/controllers/printer-settings.controller.js +58 -0
- package/dist/controllers/printer-settings.controller.js.map +1 -0
- package/dist/controllers/printer.controller.js +287 -0
- package/dist/controllers/printer.controller.js.map +1 -0
- package/dist/controllers/server-private.controller.js +122 -0
- package/dist/controllers/server-private.controller.js.map +1 -0
- package/dist/controllers/server-public.controller.js +140 -0
- package/dist/controllers/server-public.controller.js.map +1 -0
- package/dist/controllers/settings.controller.js +89 -0
- package/dist/controllers/settings.controller.js.map +1 -0
- package/dist/controllers/user.controller.js +137 -0
- package/dist/controllers/user.controller.js.map +1 -0
- package/dist/controllers/validation/auth-controller.validation.js +15 -0
- package/dist/controllers/validation/auth-controller.validation.js.map +1 -0
- package/dist/controllers/validation/batch-controller.validation.js +29 -0
- package/dist/controllers/validation/batch-controller.validation.js.map +1 -0
- package/dist/controllers/validation/generic.validation.js +15 -0
- package/dist/controllers/validation/generic.validation.js.map +1 -0
- package/dist/controllers/validation/printer-controller.validation.js +66 -0
- package/dist/controllers/validation/printer-controller.validation.js.map +1 -0
- package/dist/controllers/validation/printer-files-controller.validation.js +66 -0
- package/dist/controllers/validation/printer-files-controller.validation.js.map +1 -0
- package/dist/controllers/validation/printer-settings-controller.validation.js +15 -0
- package/dist/controllers/validation/printer-settings-controller.validation.js.map +1 -0
- package/dist/controllers/validation/setting.validation.js +19 -0
- package/dist/controllers/validation/setting.validation.js.map +1 -0
- package/dist/controllers/validation/user-controller.validation.js +16 -0
- package/dist/controllers/validation/user-controller.validation.js.map +1 -0
- package/dist/exceptions/job.exceptions.js +18 -0
- package/dist/exceptions/job.exceptions.js.map +1 -0
- package/dist/exceptions/runtime.exceptions.js +108 -0
- package/dist/exceptions/runtime.exceptions.js.map +1 -0
- package/dist/handlers/cache-manager.js +25 -0
- package/dist/handlers/cache-manager.js.map +1 -0
- package/dist/handlers/event-emitter.js +31 -0
- package/dist/handlers/event-emitter.js.map +1 -0
- package/dist/handlers/logger-factory.js +18 -0
- package/dist/handlers/logger-factory.js.map +1 -0
- package/dist/handlers/logger.js +85 -0
- package/dist/handlers/logger.js.map +1 -0
- package/dist/handlers/validators.js +131 -0
- package/dist/handlers/validators.js.map +1 -0
- package/dist/index.js +19 -0
- package/dist/index.js.map +1 -0
- package/dist/middleware/authenticate.js +83 -0
- package/dist/middleware/authenticate.js.map +1 -0
- package/dist/middleware/database.js +26 -0
- package/dist/middleware/database.js.map +1 -0
- package/dist/middleware/exception.handler.js +96 -0
- package/dist/middleware/exception.handler.js.map +1 -0
- package/dist/middleware/global.middleware.js +58 -0
- package/dist/middleware/global.middleware.js.map +1 -0
- package/dist/middleware/passport.js +44 -0
- package/dist/middleware/passport.js.map +1 -0
- package/dist/middleware/printer.js +49 -0
- package/dist/middleware/printer.js.map +1 -0
- package/dist/migrations/1696187882312-PrinterFile.js +40 -0
- package/dist/migrations/1696187882312-PrinterFile.js.map +1 -0
- package/dist/models/Auth/Permission.js +20 -0
- package/dist/models/Auth/Permission.js.map +1 -0
- package/dist/models/Auth/RefreshToken.js +41 -0
- package/dist/models/Auth/RefreshToken.js.map +1 -0
- package/dist/models/Auth/Role.js +20 -0
- package/dist/models/Auth/Role.js.map +1 -0
- package/dist/models/Auth/User.js +51 -0
- package/dist/models/Auth/User.js.map +1 -0
- package/dist/models/CameraStream.js +59 -0
- package/dist/models/CameraStream.js.map +1 -0
- package/dist/models/CustomGcode.js +28 -0
- package/dist/models/CustomGcode.js.map +1 -0
- package/dist/models/Floor.js +33 -0
- package/dist/models/Floor.js.map +1 -0
- package/dist/models/FloorPrinter.js +29 -0
- package/dist/models/FloorPrinter.js.map +1 -0
- package/dist/models/PrintCompletion.js +40 -0
- package/dist/models/PrintCompletion.js.map +1 -0
- package/dist/models/Printer.js +113 -0
- package/dist/models/Printer.js.map +1 -0
- package/dist/models/ServerSettings.js +168 -0
- package/dist/models/ServerSettings.js.map +1 -0
- package/dist/models/Settings.js +168 -0
- package/dist/models/Settings.js.map +1 -0
- package/dist/models/index.js +54 -0
- package/dist/models/index.js.map +1 -0
- package/dist/mongo-migrations/20210713120034-printers-settingsapperance-apikey.js +49 -0
- package/dist/mongo-migrations/20210713120034-printers-settingsapperance-apikey.js.map +1 -0
- package/dist/mongo-migrations/20210907173950-printers-enabled.js +39 -0
- package/dist/mongo-migrations/20210907173950-printers-enabled.js.map +1 -0
- package/dist/mongo-migrations/20211029110742-user-password-passwordhash.js +39 -0
- package/dist/mongo-migrations/20211029110742-user-password-passwordhash.js.map +1 -0
- package/dist/mongo-migrations/20230414141005-floor-remove-groupinfloor.js +60 -0
- package/dist/mongo-migrations/20230414141005-floor-remove-groupinfloor.js.map +1 -0
- package/dist/mongo-migrations/20230427202911-printer-remove-sortindex.js +30 -0
- package/dist/mongo-migrations/20230427202911-printer-remove-sortindex.js.map +1 -0
- package/dist/mongo-migrations/20230716065316-user-remove-name.js +30 -0
- package/dist/mongo-migrations/20230716065316-user-remove-name.js.map +1 -0
- package/dist/nodemon_restart_trigger.js +4 -0
- package/dist/nodemon_restart_trigger.js.map +1 -0
- package/dist/server.constants.js +99 -0
- package/dist/server.constants.js.map +1 -0
- package/dist/server.core.js +91 -0
- package/dist/server.core.js.map +1 -0
- package/dist/server.env.js +225 -0
- package/dist/server.env.js.map +1 -0
- package/dist/server.host.js +106 -0
- package/dist/server.host.js.map +1 -0
- package/dist/services/authentication/auth.service.js +136 -0
- package/dist/services/authentication/auth.service.js.map +1 -0
- package/dist/services/authentication/jwt.service.js +34 -0
- package/dist/services/authentication/jwt.service.js.map +1 -0
- package/dist/services/authentication/permission.service.js +73 -0
- package/dist/services/authentication/permission.service.js.map +1 -0
- package/dist/services/authentication/refresh-token.service.js +99 -0
- package/dist/services/authentication/refresh-token.service.js.map +1 -0
- package/dist/services/authentication/role.service.js +120 -0
- package/dist/services/authentication/role.service.js.map +1 -0
- package/dist/services/authentication/user.service.js +154 -0
- package/dist/services/authentication/user.service.js.map +1 -0
- package/dist/services/batch-call.service.js +148 -0
- package/dist/services/batch-call.service.js.map +1 -0
- package/dist/services/camera-stream.service.js +80 -0
- package/dist/services/camera-stream.service.js.map +1 -0
- package/dist/services/core/client-bundle.service.js +156 -0
- package/dist/services/core/client-bundle.service.js.map +1 -0
- package/dist/services/core/config.service.js +26 -0
- package/dist/services/core/config.service.js.map +1 -0
- package/dist/services/core/github.service.js +74 -0
- package/dist/services/core/github.service.js.map +1 -0
- package/dist/services/core/logs-manager.service.js +87 -0
- package/dist/services/core/logs-manager.service.js.map +1 -0
- package/dist/services/core/monsterpi.service.js +38 -0
- package/dist/services/core/monsterpi.service.js.map +1 -0
- package/dist/services/core/multer.service.js +122 -0
- package/dist/services/core/multer.service.js.map +1 -0
- package/dist/services/core/server-release.service.js +116 -0
- package/dist/services/core/server-release.service.js.map +1 -0
- package/dist/services/core/server-update.service.js +73 -0
- package/dist/services/core/server-update.service.js.map +1 -0
- package/dist/services/core/task-manager.service.js +196 -0
- package/dist/services/core/task-manager.service.js.map +1 -0
- package/dist/services/core/yaml.service.js +278 -0
- package/dist/services/core/yaml.service.js.map +1 -0
- package/dist/services/custom-gcode.service.js +48 -0
- package/dist/services/custom-gcode.service.js.map +1 -0
- package/dist/services/floor.service.js +183 -0
- package/dist/services/floor.service.js.map +1 -0
- package/dist/services/influxdb-v2/influx-db-v2-base.service.js +45 -0
- package/dist/services/influxdb-v2/influx-db-v2-base.service.js.map +1 -0
- package/dist/services/interfaces/auth.service.interface.js +6 -0
- package/dist/services/interfaces/auth.service.interface.js.map +1 -0
- package/dist/services/interfaces/camera-stream.dto.js +109 -0
- package/dist/services/interfaces/camera-stream.dto.js.map +1 -0
- package/dist/services/interfaces/camera-stream.service.interface.js +6 -0
- package/dist/services/interfaces/camera-stream.service.interface.js.map +1 -0
- package/dist/services/interfaces/custom-gcode.dto.js +18 -0
- package/dist/services/interfaces/custom-gcode.dto.js.map +1 -0
- package/dist/services/interfaces/custom-gcode.service.interface.js +6 -0
- package/dist/services/interfaces/custom-gcode.service.interface.js.map +1 -0
- package/dist/services/interfaces/floor.dto.js +61 -0
- package/dist/services/interfaces/floor.dto.js.map +1 -0
- package/dist/services/interfaces/floor.service.interface.js +6 -0
- package/dist/services/interfaces/floor.service.interface.js.map +1 -0
- package/dist/services/interfaces/gcode-analysis.dto.js +6 -0
- package/dist/services/interfaces/gcode-analysis.dto.js.map +1 -0
- package/dist/services/interfaces/jwt.service.interface.js +6 -0
- package/dist/services/interfaces/jwt.service.interface.js.map +1 -0
- package/dist/services/interfaces/login.dto.js +16 -0
- package/dist/services/interfaces/login.dto.js.map +1 -0
- package/dist/services/interfaces/page.interface.js +16 -0
- package/dist/services/interfaces/page.interface.js.map +1 -0
- package/dist/services/interfaces/permission.dto.js +16 -0
- package/dist/services/interfaces/permission.dto.js.map +1 -0
- package/dist/services/interfaces/permission.service.interface.js +6 -0
- package/dist/services/interfaces/permission.service.interface.js.map +1 -0
- package/dist/services/interfaces/printer-file.dto.js +27 -0
- package/dist/services/interfaces/printer-file.dto.js.map +1 -0
- package/dist/services/interfaces/printer-files.service.interface.js +6 -0
- package/dist/services/interfaces/printer-files.service.interface.js.map +1 -0
- package/dist/services/interfaces/printer.dto.js +18 -0
- package/dist/services/interfaces/printer.dto.js.map +1 -0
- package/dist/services/interfaces/printer.service.interface.js +6 -0
- package/dist/services/interfaces/printer.service.interface.js.map +1 -0
- package/dist/services/interfaces/role-service.interface.js +6 -0
- package/dist/services/interfaces/role-service.interface.js.map +1 -0
- package/dist/services/interfaces/settings.dto.js +34 -0
- package/dist/services/interfaces/settings.dto.js.map +1 -0
- package/dist/services/interfaces/settings.service.interface.js +6 -0
- package/dist/services/interfaces/settings.service.interface.js.map +1 -0
- package/dist/services/interfaces/user-service.interface.js +6 -0
- package/dist/services/interfaces/user-service.interface.js.map +1 -0
- package/dist/services/interfaces/user.dto.js +39 -0
- package/dist/services/interfaces/user.dto.js.map +1 -0
- package/dist/services/octoprint/constants/firmware-update-settings.constants.js +32 -0
- package/dist/services/octoprint/constants/firmware-update-settings.constants.js.map +1 -0
- package/dist/services/octoprint/constants/octoprint-service.constants.js +101 -0
- package/dist/services/octoprint/constants/octoprint-service.constants.js.map +1 -0
- package/dist/services/octoprint/constants/octoprint-websocket.constants.js +88 -0
- package/dist/services/octoprint/constants/octoprint-websocket.constants.js.map +1 -0
- package/dist/services/octoprint/octoprint-api.routes.js +192 -0
- package/dist/services/octoprint/octoprint-api.routes.js.map +1 -0
- package/dist/services/octoprint/octoprint-api.service.js +402 -0
- package/dist/services/octoprint/octoprint-api.service.js.map +1 -0
- package/dist/services/octoprint/octoprint-sockio.adapter.js +309 -0
- package/dist/services/octoprint/octoprint-sockio.adapter.js.map +1 -0
- package/dist/services/octoprint/plugin-base.service.js +102 -0
- package/dist/services/octoprint/plugin-base.service.js.map +1 -0
- package/dist/services/octoprint/plugin-firmware-update.service.js +104 -0
- package/dist/services/octoprint/plugin-firmware-update.service.js.map +1 -0
- package/dist/services/octoprint/plugin-repository.cache.js +45 -0
- package/dist/services/octoprint/plugin-repository.cache.js.map +1 -0
- package/dist/services/octoprint/socket.factory.js +22 -0
- package/dist/services/octoprint/socket.factory.js.map +1 -0
- package/dist/services/octoprint/utils/api.utils.js +72 -0
- package/dist/services/octoprint/utils/api.utils.js.map +1 -0
- package/dist/services/orm/floor.service.interface.js +73 -0
- package/dist/services/orm/floor.service.interface.js.map +1 -0
- package/dist/services/orm/printer.service.interface.js +6 -0
- package/dist/services/orm/printer.service.interface.js.map +1 -0
- package/dist/services/print-completion.service.js +162 -0
- package/dist/services/print-completion.service.js.map +1 -0
- package/dist/services/printer-files.service.js +91 -0
- package/dist/services/printer-files.service.js.map +1 -0
- package/dist/services/printer.service.js +230 -0
- package/dist/services/printer.service.js.map +1 -0
- package/dist/services/settings.service.js +158 -0
- package/dist/services/settings.service.js.map +1 -0
- package/dist/services/validators/floor-service.validation.js +60 -0
- package/dist/services/validators/floor-service.validation.js.map +1 -0
- package/dist/services/validators/print-completion-service.validation.js +20 -0
- package/dist/services/validators/print-completion-service.validation.js.map +1 -0
- package/dist/services/validators/printer-service.validation.js +48 -0
- package/dist/services/validators/printer-service.validation.js.map +1 -0
- package/dist/services/validators/settings-service.validation.js +71 -0
- package/dist/services/validators/settings-service.validation.js.map +1 -0
- package/dist/services/validators/user-service.validation.js +33 -0
- package/dist/services/validators/user-service.validation.js.map +1 -0
- package/dist/services/validators/yaml-service.validation.js +63 -0
- package/dist/services/validators/yaml-service.validation.js.map +1 -0
- package/dist/services/yaml.service.js +278 -0
- package/dist/services/yaml.service.js.map +1 -0
- package/dist/shared.constants.js +15 -0
- package/dist/shared.constants.js.map +1 -0
- package/dist/state/file-upload-tracker.cache.js +88 -0
- package/dist/state/file-upload-tracker.cache.js.map +1 -0
- package/dist/state/file.cache.js +99 -0
- package/dist/state/file.cache.js.map +1 -0
- package/dist/state/files.store.js +132 -0
- package/dist/state/files.store.js.map +1 -0
- package/dist/state/floor.store.js +99 -0
- package/dist/state/floor.store.js.map +1 -0
- package/dist/state/printer-events.cache.js +97 -0
- package/dist/state/printer-events.cache.js.map +1 -0
- package/dist/state/printer-socket.store.js +217 -0
- package/dist/state/printer-socket.store.js.map +1 -0
- package/dist/state/printer.cache.js +112 -0
- package/dist/state/printer.cache.js.map +1 -0
- package/dist/state/settings.store.js +154 -0
- package/dist/state/settings.store.js.map +1 -0
- package/dist/state/socket-io.gateway.js +66 -0
- package/dist/state/socket-io.gateway.js.map +1 -0
- package/dist/state/test-printer-socket.store.js +91 -0
- package/dist/state/test-printer-socket.store.js.map +1 -0
- package/dist/state/validation/create-test-printer.validation.js +18 -0
- package/dist/state/validation/create-test-printer.validation.js.map +1 -0
- package/dist/task.presets.js +50 -0
- package/dist/task.presets.js.map +1 -0
- package/dist/tasks/boot.task.js +198 -0
- package/dist/tasks/boot.task.js.map +1 -0
- package/dist/tasks/client-bundle.task.js +32 -0
- package/dist/tasks/client-bundle.task.js.map +1 -0
- package/dist/tasks/print-completion.socketio.task.js +85 -0
- package/dist/tasks/print-completion.socketio.task.js.map +1 -0
- package/dist/tasks/printer-file-clean.task.js +72 -0
- package/dist/tasks/printer-file-clean.task.js.map +1 -0
- package/dist/tasks/printer-websocket-restore.task.js +64 -0
- package/dist/tasks/printer-websocket-restore.task.js.map +1 -0
- package/dist/tasks/printer-websocket.task.js +43 -0
- package/dist/tasks/printer-websocket.task.js.map +1 -0
- package/dist/tasks/socketio.task.js +83 -0
- package/dist/tasks/socketio.task.js.map +1 -0
- package/dist/tasks/software-update.task.js +22 -0
- package/dist/tasks/software-update.task.js.map +1 -0
- package/dist/tasks.js +48 -0
- package/dist/tasks.js.map +1 -0
- package/dist/types/express/index.d.js +7 -0
- package/dist/types/express/index.d.js.map +1 -0
- package/dist/utils/array.util.js +27 -0
- package/dist/utils/array.util.js.map +1 -0
- package/dist/utils/benchmark.util.js +39 -0
- package/dist/utils/benchmark.util.js.map +1 -0
- package/dist/utils/cache/key-diff.cache.js +128 -0
- package/dist/utils/cache/key-diff.cache.js.map +1 -0
- package/dist/utils/correlation-token.util.js +15 -0
- package/dist/utils/correlation-token.util.js.map +1 -0
- package/dist/utils/crypto.utils.js +29 -0
- package/dist/utils/crypto.utils.js.map +1 -0
- package/dist/utils/env.utils.js +98 -0
- package/dist/utils/env.utils.js.map +1 -0
- package/dist/utils/error.utils.js +15 -0
- package/dist/utils/error.utils.js.map +1 -0
- package/dist/utils/find-predicate.utils.js +18 -0
- package/dist/utils/find-predicate.utils.js.map +1 -0
- package/dist/utils/fs.utils.js +38 -0
- package/dist/utils/fs.utils.js.map +1 -0
- package/dist/utils/is-docker.js +40 -0
- package/dist/utils/is-docker.js.map +1 -0
- package/dist/utils/mapper.utils.js +33 -0
- package/dist/utils/mapper.utils.js.map +1 -0
- package/dist/utils/metric.utils.js +35 -0
- package/dist/utils/metric.utils.js.map +1 -0
- package/dist/utils/normalize-url.js +245 -0
- package/dist/utils/normalize-url.js.map +1 -0
- package/dist/utils/semver.utils.js +18 -0
- package/dist/utils/semver.utils.js.map +1 -0
- package/dist/utils/time.utils.js +26 -0
- package/dist/utils/time.utils.js.map +1 -0
- package/dist/utils/url.utils.js +33 -0
- package/dist/utils/url.utils.js.map +1 -0
- package/dist/utils/websocket.adapter.js +105 -0
- package/dist/utils/websocket.adapter.js.map +1 -0
- package/migrate-mongo-config.js +45 -0
- package/nodemon_restart_trigger.js +1 -0
- package/package.json +149 -0
- package/src/index.ts +19 -0
- package/tsconfig.json +28 -0
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
BatchCallController: function() {
|
|
13
|
+
return BatchCallController;
|
|
14
|
+
},
|
|
15
|
+
default: function() {
|
|
16
|
+
return _default;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
const _awilixexpress = require("awilix-express");
|
|
20
|
+
const _validators = require("../handlers/validators");
|
|
21
|
+
const _batchcontrollervalidation = require("./validation/batch-controller.validation");
|
|
22
|
+
const _serverconstants = require("../server.constants");
|
|
23
|
+
const _authenticate = require("../middleware/authenticate");
|
|
24
|
+
const _authorizationconstants = require("../constants/authorization.constants");
|
|
25
|
+
class BatchCallController {
|
|
26
|
+
batchCallService;
|
|
27
|
+
constructor({ batchCallService }){
|
|
28
|
+
this.batchCallService = batchCallService;
|
|
29
|
+
}
|
|
30
|
+
async batchConnectUsb(req, res) {
|
|
31
|
+
const { printerIds } = await (0, _validators.validateInput)(req.body, _batchcontrollervalidation.batchPrinterRules);
|
|
32
|
+
const results = await this.batchCallService.batchConnectUsb(printerIds);
|
|
33
|
+
res.send(results);
|
|
34
|
+
}
|
|
35
|
+
async batchConnectSocket(req, res) {
|
|
36
|
+
const { printerIds } = await (0, _validators.validateInput)(req.body, _batchcontrollervalidation.batchPrinterRules);
|
|
37
|
+
await this.batchCallService.batchConnectSocket(printerIds);
|
|
38
|
+
res.send({});
|
|
39
|
+
}
|
|
40
|
+
async batchReprintFiles(req, res) {
|
|
41
|
+
const { printerIds } = await (0, _validators.validateInput)(req.body, _batchcontrollervalidation.batchPrinterRules);
|
|
42
|
+
const results = await this.batchCallService.batchReprintCalls(printerIds);
|
|
43
|
+
res.send(results);
|
|
44
|
+
}
|
|
45
|
+
async batchTogglePrintersEnabled(req, res) {
|
|
46
|
+
const { printerIds, enabled } = await (0, _validators.validateInput)(req.body, _batchcontrollervalidation.batchPrintersEnabledRules);
|
|
47
|
+
const results = await this.batchCallService.batchTogglePrintersEnabled(printerIds, enabled);
|
|
48
|
+
res.send(results);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
const _default = (0, _awilixexpress.createController)(BatchCallController).prefix(_serverconstants.AppConstants.apiRoute + "/batch").before([
|
|
52
|
+
(0, _authenticate.authenticate)(),
|
|
53
|
+
(0, _authenticate.authorizeRoles)([
|
|
54
|
+
_authorizationconstants.ROLES.ADMIN,
|
|
55
|
+
_authorizationconstants.ROLES.OPERATOR
|
|
56
|
+
])
|
|
57
|
+
]).post("/connect/usb", "batchConnectUsb").post("/connect/socket", "batchConnectSocket").post("/reprint", "batchReprintFiles").post("/toggle-enabled", "batchTogglePrintersEnabled");
|
|
58
|
+
|
|
59
|
+
//# sourceMappingURL=batch-call.controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/controllers/batch-call.controller.ts"],"names":["BatchCallController","batchCallService","constructor","batchConnectUsb","req","res","printerIds","validateInput","body","batchPrinterRules","results","send","batchConnectSocket","batchReprintFiles","batchReprintCalls","batchTogglePrintersEnabled","enabled","batchPrintersEnabledRules","createController","prefix","AppConstants","apiRoute","before","authenticate","authorizeRoles","ROLES","ADMIN","OPERATOR","post"],"mappings":";;;;;;;;;;;IASaA,mBAAmB;eAAnBA;;IAgCb,OAMyD;eANzD;;;+BAzCiC;4BACH;2CAC+B;iCAChC;8BACgB;wCACvB;AAIf,MAAMA;IACXC,iBAAmC;IAEnCC,YAAY,EAAED,gBAAgB,EAA0C,CAAE;QACxE,IAAI,CAACA,gBAAgB,GAAGA;IAC1B;IAEA,MAAME,gBAAgBC,GAAY,EAAEC,GAAa,EAAE;QACjD,MAAM,EAAEC,UAAU,EAAE,GAAG,MAAMC,IAAAA,yBAAa,EAACH,IAAII,IAAI,EAAEC,4CAAiB;QACtE,MAAMC,UAAU,MAAM,IAAI,CAACT,gBAAgB,CAACE,eAAe,CAACG;QAC5DD,IAAIM,IAAI,CAACD;IACX;IAEA,MAAME,mBAAmBR,GAAY,EAAEC,GAAa,EAAE;QACpD,MAAM,EAAEC,UAAU,EAAE,GAAG,MAAMC,IAAAA,yBAAa,EAACH,IAAII,IAAI,EAAEC,4CAAiB;QACtE,MAAM,IAAI,CAACR,gBAAgB,CAACW,kBAAkB,CAACN;QAC/CD,IAAIM,IAAI,CAAC,CAAC;IACZ;IAEA,MAAME,kBAAkBT,GAAY,EAAEC,GAAa,EAAE;QACnD,MAAM,EAAEC,UAAU,EAAE,GAAG,MAAMC,IAAAA,yBAAa,EAACH,IAAII,IAAI,EAAEC,4CAAiB;QACtE,MAAMC,UAAU,MAAM,IAAI,CAACT,gBAAgB,CAACa,iBAAiB,CAACR;QAC9DD,IAAIM,IAAI,CAACD;IACX;IAEA,MAAMK,2BAA2BX,GAAY,EAAEC,GAAa,EAAE;QAC5D,MAAM,EAAEC,UAAU,EAAEU,OAAO,EAAE,GAAG,MAAMT,IAAAA,yBAAa,EAACH,IAAII,IAAI,EAAES,oDAAyB;QACvF,MAAMP,UAAU,MAAM,IAAI,CAACT,gBAAgB,CAACc,0BAA0B,CAACT,YAAYU;QACnFX,IAAIM,IAAI,CAACD;IACX;AACF;MAEA,WAAeQ,IAAAA,+BAAgB,EAAClB,qBAC7BmB,MAAM,CAACC,6BAAY,CAACC,QAAQ,GAAG,UAC/BC,MAAM,CAAC;IAACC,IAAAA,0BAAY;IAAIC,IAAAA,4BAAc,EAAC;QAACC,6BAAK,CAACC,KAAK;QAAED,6BAAK,CAACE,QAAQ;KAAC;CAAE,EACtEC,IAAI,CAAC,gBAAgB,mBACrBA,IAAI,CAAC,mBAAmB,sBACxBA,IAAI,CAAC,YAAY,qBACjBA,IAAI,CAAC,mBAAmB"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
CameraStreamController: function() {
|
|
13
|
+
return CameraStreamController;
|
|
14
|
+
},
|
|
15
|
+
default: function() {
|
|
16
|
+
return _default;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
const _awilixexpress = require("awilix-express");
|
|
20
|
+
const _serverconstants = require("../server.constants");
|
|
21
|
+
const _validators = require("../handlers/validators");
|
|
22
|
+
const _genericvalidation = require("./validation/generic.validation");
|
|
23
|
+
const _authenticate = require("../middleware/authenticate");
|
|
24
|
+
class CameraStreamController {
|
|
25
|
+
cameraStreamService;
|
|
26
|
+
constructor({ cameraStreamService }){
|
|
27
|
+
this.cameraStreamService = cameraStreamService;
|
|
28
|
+
}
|
|
29
|
+
async list(req, res) {
|
|
30
|
+
const result = await this.cameraStreamService.list();
|
|
31
|
+
res.send(result.map((item)=>this.cameraStreamService.toDto(item)));
|
|
32
|
+
}
|
|
33
|
+
async get(req, res) {
|
|
34
|
+
const { id } = await (0, _validators.validateInput)(req.params, _genericvalidation.idRules);
|
|
35
|
+
const result = await this.cameraStreamService.get(id);
|
|
36
|
+
res.send(this.cameraStreamService.toDto(result));
|
|
37
|
+
}
|
|
38
|
+
async create(req, res) {
|
|
39
|
+
const result = await this.cameraStreamService.create(req.body);
|
|
40
|
+
res.send(this.cameraStreamService.toDto(result));
|
|
41
|
+
}
|
|
42
|
+
async update(req, res) {
|
|
43
|
+
const { id } = await (0, _validators.validateInput)(req.params, _genericvalidation.idRules);
|
|
44
|
+
const result = await this.cameraStreamService.update(id, req.body);
|
|
45
|
+
res.send(this.cameraStreamService.toDto(result));
|
|
46
|
+
}
|
|
47
|
+
async delete(req, res) {
|
|
48
|
+
const { id } = await (0, _validators.validateInput)(req.params, _genericvalidation.idRules);
|
|
49
|
+
await this.cameraStreamService.delete(id);
|
|
50
|
+
res.send();
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
const _default = (0, _awilixexpress.createController)(CameraStreamController).prefix(_serverconstants.AppConstants.apiRoute + "/camera-stream").before([
|
|
54
|
+
(0, _authenticate.authenticate)()
|
|
55
|
+
]).get("/", "list").get("/:id", "get").post("/", "create").delete("/:id", "delete").put("/:id", "update");
|
|
56
|
+
|
|
57
|
+
//# sourceMappingURL=camera-stream.controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/controllers/camera-stream.controller.ts"],"names":["CameraStreamController","cameraStreamService","constructor","list","req","res","result","send","map","item","toDto","get","id","validateInput","params","idRules","create","body","update","delete","createController","prefix","AppConstants","apiRoute","before","authenticate","post","put"],"mappings":";;;;;;;;;;;IAQaA,sBAAsB;eAAtBA;;IAoCb,OAOyB;eAPzB;;;+BA5CiC;iCACJ;4BACC;mCACN;8BACK;AAItB,MAAMA;IACXC,oBAA0C;IAE1CC,YAAY,EAAED,mBAAmB,EAAiD,CAAE;QAClF,IAAI,CAACA,mBAAmB,GAAGA;IAC7B;IAEA,MAAME,KAAKC,GAAY,EAAEC,GAAa,EAAE;QACtC,MAAMC,SAAS,MAAM,IAAI,CAACL,mBAAmB,CAACE,IAAI;QAClDE,IAAIE,IAAI,CAACD,OAAOE,GAAG,CAAC,CAACC,OAAS,IAAI,CAACR,mBAAmB,CAACS,KAAK,CAACD;IAC/D;IAEA,MAAME,IAAIP,GAAY,EAAEC,GAAa,EAAE;QACrC,MAAM,EAAEO,EAAE,EAAE,GAAG,MAAMC,IAAAA,yBAAa,EAACT,IAAIU,MAAM,EAAEC,0BAAO;QACtD,MAAMT,SAAS,MAAM,IAAI,CAACL,mBAAmB,CAACU,GAAG,CAACC;QAClDP,IAAIE,IAAI,CAAC,IAAI,CAACN,mBAAmB,CAACS,KAAK,CAACJ;IAC1C;IAEA,MAAMU,OAAOZ,GAAY,EAAEC,GAAa,EAAE;QACxC,MAAMC,SAAS,MAAM,IAAI,CAACL,mBAAmB,CAACe,MAAM,CAACZ,IAAIa,IAAI;QAC7DZ,IAAIE,IAAI,CAAC,IAAI,CAACN,mBAAmB,CAACS,KAAK,CAACJ;IAC1C;IAEA,MAAMY,OAAOd,GAAY,EAAEC,GAAa,EAAE;QACxC,MAAM,EAAEO,EAAE,EAAE,GAAG,MAAMC,IAAAA,yBAAa,EAACT,IAAIU,MAAM,EAAEC,0BAAO;QACtD,MAAMT,SAAS,MAAM,IAAI,CAACL,mBAAmB,CAACiB,MAAM,CAACN,IAAIR,IAAIa,IAAI;QACjEZ,IAAIE,IAAI,CAAC,IAAI,CAACN,mBAAmB,CAACS,KAAK,CAACJ;IAC1C;IAEA,MAAMa,OAAOf,GAAY,EAAEC,GAAa,EAAE;QACxC,MAAM,EAAEO,EAAE,EAAE,GAAG,MAAMC,IAAAA,yBAAa,EAACT,IAAIU,MAAM,EAAEC,0BAAO;QACtD,MAAM,IAAI,CAACd,mBAAmB,CAACkB,MAAM,CAACP;QACtCP,IAAIE,IAAI;IACV;AACF;MAEA,WAAea,IAAAA,+BAAgB,EAACpB,wBAC7BqB,MAAM,CAACC,6BAAY,CAACC,QAAQ,GAAG,kBAC/BC,MAAM,CAAC;IAACC,IAAAA,0BAAY;CAAG,EACvBd,GAAG,CAAC,KAAK,QACTA,GAAG,CAAC,QAAQ,OACZe,IAAI,CAAC,KAAK,UACVP,MAAM,CAAC,QAAQ,UACfQ,GAAG,CAAC,QAAQ"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
CustomGCodeController: function() {
|
|
13
|
+
return CustomGCodeController;
|
|
14
|
+
},
|
|
15
|
+
default: function() {
|
|
16
|
+
return _default;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
const _awilixexpress = require("awilix-express");
|
|
20
|
+
const _authenticate = require("../middleware/authenticate");
|
|
21
|
+
const _serverconstants = require("../server.constants");
|
|
22
|
+
const _authorizationconstants = require("../constants/authorization.constants");
|
|
23
|
+
const _validators = require("../handlers/validators");
|
|
24
|
+
const _genericvalidation = require("./validation/generic.validation");
|
|
25
|
+
const _printer = require("../middleware/printer");
|
|
26
|
+
class CustomGCodeController {
|
|
27
|
+
octoPrintApiService;
|
|
28
|
+
customGCodeService;
|
|
29
|
+
constructor({ customGCodeService, octoPrintApiService }){
|
|
30
|
+
this.customGCodeService = customGCodeService;
|
|
31
|
+
this.octoPrintApiService = octoPrintApiService;
|
|
32
|
+
}
|
|
33
|
+
async list(req, res) {
|
|
34
|
+
const entities = await this.customGCodeService.list();
|
|
35
|
+
res.send(entities.map((e)=>this.customGCodeService.toDto(e)));
|
|
36
|
+
}
|
|
37
|
+
async get(req, res) {
|
|
38
|
+
const { id } = await (0, _validators.validateInput)(req.params, _genericvalidation.idRules);
|
|
39
|
+
const entity = await this.customGCodeService.get(id);
|
|
40
|
+
res.send(this.customGCodeService.toDto(entity));
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Sends gcode according to https://docs.octoprint.org/en/master/api/printer.html#send-an-arbitrary-command-to-the-printer
|
|
44
|
+
*/ async sendEmergencyM112(req, res) {
|
|
45
|
+
const { printerLogin } = (0, _validators.getScopedPrinter)(req);
|
|
46
|
+
const response = await this.octoPrintApiService.sendCustomGCodeCommand(printerLogin, "M112");
|
|
47
|
+
res.send(response);
|
|
48
|
+
}
|
|
49
|
+
async create(req, res) {
|
|
50
|
+
const entity = await this.customGCodeService.create(req.body);
|
|
51
|
+
res.send(this.customGCodeService.toDto(entity));
|
|
52
|
+
}
|
|
53
|
+
async delete(req, res) {
|
|
54
|
+
const { id } = await (0, _validators.validateInput)(req.params, _genericvalidation.idRules);
|
|
55
|
+
await this.customGCodeService.delete(id);
|
|
56
|
+
res.send();
|
|
57
|
+
}
|
|
58
|
+
async update(req, res) {
|
|
59
|
+
const { id } = await (0, _validators.validateInput)(req.params, _genericvalidation.idRules);
|
|
60
|
+
const updatedScript = await this.customGCodeService.update(id, req.body);
|
|
61
|
+
res.send(this.customGCodeService.toDto(updatedScript));
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
const _default = (0, _awilixexpress.createController)(CustomGCodeController).prefix(`${_serverconstants.AppConstants.apiRoute}/custom-gcode`).before([
|
|
65
|
+
(0, _authenticate.authenticate)(),
|
|
66
|
+
(0, _authenticate.authorizeRoles)([
|
|
67
|
+
_authorizationconstants.ROLES.ADMIN,
|
|
68
|
+
_authorizationconstants.ROLES.OPERATOR
|
|
69
|
+
])
|
|
70
|
+
]).get("/", "list").get("/:id", "get").post("/", "create").post("/send-emergency-m112/:printerId", "sendEmergencyM112", {
|
|
71
|
+
before: [
|
|
72
|
+
(0, _printer.printerResolveMiddleware)("printerId")
|
|
73
|
+
]
|
|
74
|
+
}).delete("/:id", "delete").put("/:id", "update");
|
|
75
|
+
|
|
76
|
+
//# sourceMappingURL=custom-gcode.controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/controllers/custom-gcode.controller.ts"],"names":["CustomGCodeController","octoPrintApiService","customGCodeService","constructor","list","req","res","entities","send","map","e","toDto","get","id","validateInput","params","idRules","entity","sendEmergencyM112","printerLogin","getScopedPrinter","response","sendCustomGCodeCommand","create","body","delete","update","updatedScript","createController","prefix","AppConstants","apiRoute","before","authenticate","authorizeRoles","ROLES","ADMIN","OPERATOR","post","printerResolveMiddleware","put"],"mappings":";;;;;;;;;;;IAWaA,qBAAqB;eAArBA;;IAqDb,OAQyB;eARzB;;;+BAhEiC;8BACY;iCAChB;wCACP;4BAC0B;mCACxB;yBACiB;AAKlC,MAAMA;IACHC,oBAAyC;IACzCC,mBAAwC;IAEhDC,YAAY,EACVD,kBAAkB,EAClBD,mBAAmB,EAIpB,CAAE;QACD,IAAI,CAACC,kBAAkB,GAAGA;QAC1B,IAAI,CAACD,mBAAmB,GAAGA;IAC7B;IAEA,MAAMG,KAAKC,GAAY,EAAEC,GAAa,EAAE;QACtC,MAAMC,WAAW,MAAM,IAAI,CAACL,kBAAkB,CAACE,IAAI;QACnDE,IAAIE,IAAI,CAACD,SAASE,GAAG,CAAC,CAACC,IAAM,IAAI,CAACR,kBAAkB,CAACS,KAAK,CAACD;IAC7D;IAEA,MAAME,IAAIP,GAAY,EAAEC,GAAa,EAAE;QACrC,MAAM,EAAEO,EAAE,EAAE,GAAG,MAAMC,IAAAA,yBAAa,EAACT,IAAIU,MAAM,EAAEC,0BAAO;QACtD,MAAMC,SAAS,MAAM,IAAI,CAACf,kBAAkB,CAACU,GAAG,CAACC;QACjDP,IAAIE,IAAI,CAAC,IAAI,CAACN,kBAAkB,CAACS,KAAK,CAACM;IACzC;IAEA;;GAEC,GACD,MAAMC,kBAAkBb,GAAY,EAAEC,GAAa,EAAE;QACnD,MAAM,EAAEa,YAAY,EAAE,GAAGC,IAAAA,4BAAgB,EAACf;QAC1C,MAAMgB,WAAW,MAAM,IAAI,CAACpB,mBAAmB,CAACqB,sBAAsB,CAACH,cAAc;QACrFb,IAAIE,IAAI,CAACa;IACX;IAEA,MAAME,OAAOlB,GAAY,EAAEC,GAAa,EAAE;QACxC,MAAMW,SAAS,MAAM,IAAI,CAACf,kBAAkB,CAACqB,MAAM,CAAClB,IAAImB,IAAI;QAC5DlB,IAAIE,IAAI,CAAC,IAAI,CAACN,kBAAkB,CAACS,KAAK,CAACM;IACzC;IAEA,MAAMQ,OAAOpB,GAAY,EAAEC,GAAa,EAAE;QACxC,MAAM,EAAEO,EAAE,EAAE,GAAG,MAAMC,IAAAA,yBAAa,EAACT,IAAIU,MAAM,EAAEC,0BAAO;QACtD,MAAM,IAAI,CAACd,kBAAkB,CAACuB,MAAM,CAACZ;QACrCP,IAAIE,IAAI;IACV;IAEA,MAAMkB,OAAOrB,GAAY,EAAEC,GAAa,EAAE;QACxC,MAAM,EAAEO,EAAE,EAAE,GAAG,MAAMC,IAAAA,yBAAa,EAACT,IAAIU,MAAM,EAAEC,0BAAO;QACtD,MAAMW,gBAAgB,MAAM,IAAI,CAACzB,kBAAkB,CAACwB,MAAM,CAACb,IAAIR,IAAImB,IAAI;QACvElB,IAAIE,IAAI,CAAC,IAAI,CAACN,kBAAkB,CAACS,KAAK,CAACgB;IACzC;AACF;MAEA,WAAeC,IAAAA,+BAAgB,EAAC5B,uBAC7B6B,MAAM,CAAC,CAAC,EAAEC,6BAAY,CAACC,QAAQ,CAAC,aAAa,CAAC,EAC9CC,MAAM,CAAC;IAACC,IAAAA,0BAAY;IAAIC,IAAAA,4BAAc,EAAC;QAACC,6BAAK,CAACC,KAAK;QAAED,6BAAK,CAACE,QAAQ;KAAC;CAAE,EACtEzB,GAAG,CAAC,KAAK,QACTA,GAAG,CAAC,QAAQ,OACZ0B,IAAI,CAAC,KAAK,UACVA,IAAI,CAAC,mCAAmC,qBAAqB;IAAEN,QAAQ;QAACO,IAAAA,iCAAwB,EAAC;KAAa;AAAC,GAC/Gd,MAAM,CAAC,QAAQ,UACfe,GAAG,CAAC,QAAQ"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
FirstTimeSetupController: function() {
|
|
13
|
+
return FirstTimeSetupController;
|
|
14
|
+
},
|
|
15
|
+
default: function() {
|
|
16
|
+
return _default;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
const _awilixexpress = require("awilix-express");
|
|
20
|
+
const _serverconstants = require("../server.constants");
|
|
21
|
+
const _validators = require("../handlers/validators");
|
|
22
|
+
const _settingvalidation = require("./validation/setting.validation");
|
|
23
|
+
const _runtimeexceptions = require("../exceptions/runtime.exceptions");
|
|
24
|
+
const _authorizationconstants = require("../constants/authorization.constants");
|
|
25
|
+
class FirstTimeSetupController {
|
|
26
|
+
userService;
|
|
27
|
+
roleService;
|
|
28
|
+
settingsStore;
|
|
29
|
+
constructor({ settingsStore, roleService, userService }){
|
|
30
|
+
this.settingsStore = settingsStore;
|
|
31
|
+
this.roleService = roleService;
|
|
32
|
+
this.userService = userService;
|
|
33
|
+
}
|
|
34
|
+
async completeWizard(req, res) {
|
|
35
|
+
const { loginRequired, registration, rootUsername, rootPassword } = await (0, _validators.validateMiddleware)(req, _settingvalidation.wizardSettingsRules);
|
|
36
|
+
if (this.settingsStore.isWizardCompleted()) {
|
|
37
|
+
throw new _runtimeexceptions.AuthorizationError({
|
|
38
|
+
reason: "Wizard already completed"
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
const role = await this.roleService.getSynchronizedRoleByName(_authorizationconstants.ROLES.ADMIN);
|
|
42
|
+
const user = await this.userService.findRawByUsername(rootUsername?.toLowerCase());
|
|
43
|
+
if (!!user) {
|
|
44
|
+
throw new _runtimeexceptions.BadRequestException("This user already exists");
|
|
45
|
+
}
|
|
46
|
+
await this.userService.register({
|
|
47
|
+
username: rootUsername,
|
|
48
|
+
password: rootPassword,
|
|
49
|
+
roles: [
|
|
50
|
+
role.id
|
|
51
|
+
],
|
|
52
|
+
isRootUser: true,
|
|
53
|
+
isVerified: true,
|
|
54
|
+
isDemoUser: false,
|
|
55
|
+
needsPasswordChange: false
|
|
56
|
+
});
|
|
57
|
+
await this.settingsStore.setLoginRequired(loginRequired);
|
|
58
|
+
await this.settingsStore.setRegistrationEnabled(registration);
|
|
59
|
+
await this.settingsStore.setWizardCompleted(_serverconstants.AppConstants.currentWizardVersion);
|
|
60
|
+
return res.send();
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
const _default = (0, _awilixexpress.createController)(FirstTimeSetupController).prefix(_serverconstants.AppConstants.apiRoute + "/first-time-setup").post("/complete", "completeWizard");
|
|
64
|
+
|
|
65
|
+
//# sourceMappingURL=first-time-setup.controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/controllers/first-time-setup.controller.ts"],"names":["FirstTimeSetupController","userService","roleService","settingsStore","constructor","completeWizard","req","res","loginRequired","registration","rootUsername","rootPassword","validateMiddleware","wizardSettingsRules","isWizardCompleted","AuthorizationError","reason","role","getSynchronizedRoleByName","ROLES","ADMIN","user","findRawByUsername","toLowerCase","BadRequestException","register","username","password","roles","id","isRootUser","isVerified","isDemoUser","needsPasswordChange","setLoginRequired","setRegistrationEnabled","setWizardCompleted","AppConstants","currentWizardVersion","send","createController","prefix","apiRoute","post"],"mappings":";;;;;;;;;;;IAWaA,wBAAwB;eAAxBA;;IAkDb,OAEuC;eAFvC;;;+BA7DiC;iCACJ;4BACM;mCACC;mCACoB;wCAClC;AAMf,MAAMA;IACXC,YAA0B;IAC1BC,YAA0B;IAC1BC,cAA6B;IAE7BC,YAAY,EACVD,aAAa,EACbD,WAAW,EACXD,WAAW,EAKZ,CAAE;QACD,IAAI,CAACE,aAAa,GAAGA;QACrB,IAAI,CAACD,WAAW,GAAGA;QACnB,IAAI,CAACD,WAAW,GAAGA;IACrB;IAEA,MAAMI,eAAeC,GAAY,EAAEC,GAAa,EAAE;QAChD,MAAM,EAAEC,aAAa,EAAEC,YAAY,EAAEC,YAAY,EAAEC,YAAY,EAAE,GAAG,MAAMC,IAAAA,8BAAkB,EAACN,KAAKO,sCAAmB;QAErH,IAAI,IAAI,CAACV,aAAa,CAACW,iBAAiB,IAAI;YAC1C,MAAM,IAAIC,qCAAkB,CAAC;gBAAEC,QAAQ;YAA2B;QACpE;QAEA,MAAMC,OAAO,MAAM,IAAI,CAACf,WAAW,CAACgB,yBAAyB,CAACC,6BAAK,CAACC,KAAK;QAEzE,MAAMC,OAAO,MAAM,IAAI,CAACpB,WAAW,CAACqB,iBAAiB,CAACZ,cAAca;QACpE,IAAI,CAAC,CAACF,MAAM;YACV,MAAM,IAAIG,sCAAmB,CAAC;QAChC;QAEA,MAAM,IAAI,CAACvB,WAAW,CAACwB,QAAQ,CAAC;YAC9BC,UAAUhB;YACViB,UAAUhB;YACViB,OAAO;gBAACX,KAAKY,EAAE;aAAC;YAChBC,YAAY;YACZC,YAAY;YACZC,YAAY;YACZC,qBAAqB;QACvB;QACA,MAAM,IAAI,CAAC9B,aAAa,CAAC+B,gBAAgB,CAAC1B;QAC1C,MAAM,IAAI,CAACL,aAAa,CAACgC,sBAAsB,CAAC1B;QAChD,MAAM,IAAI,CAACN,aAAa,CAACiC,kBAAkB,CAACC,6BAAY,CAACC,oBAAoB;QAE7E,OAAO/B,IAAIgC,IAAI;IACjB;AACF;MAEA,WAAeC,IAAAA,+BAAgB,EAACxC,0BAC7ByC,MAAM,CAACJ,6BAAY,CAACK,QAAQ,GAAG,qBAC/BC,IAAI,CAAC,aAAa"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
FloorController: function() {
|
|
13
|
+
return FloorController;
|
|
14
|
+
},
|
|
15
|
+
default: function() {
|
|
16
|
+
return _default;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
const _awilixexpress = require("awilix-express");
|
|
20
|
+
const _authenticate = require("../middleware/authenticate");
|
|
21
|
+
const _serverconstants = require("../server.constants");
|
|
22
|
+
const _validators = require("../handlers/validators");
|
|
23
|
+
const _genericvalidation = require("./validation/generic.validation");
|
|
24
|
+
const _authorizationconstants = require("../constants/authorization.constants");
|
|
25
|
+
class FloorController {
|
|
26
|
+
floorStore;
|
|
27
|
+
constructor({ floorStore }){
|
|
28
|
+
this.floorStore = floorStore;
|
|
29
|
+
}
|
|
30
|
+
async create(req, res) {
|
|
31
|
+
// Has internal validation
|
|
32
|
+
const floor = await this.floorStore.create(req.body);
|
|
33
|
+
res.send(floor);
|
|
34
|
+
}
|
|
35
|
+
async updateName(req, res) {
|
|
36
|
+
const { id: floorId } = await (0, _validators.validateInput)(req.params, _genericvalidation.idRules);
|
|
37
|
+
// Has internal validation
|
|
38
|
+
const floor = await this.floorStore.updateName(floorId, req.body.name);
|
|
39
|
+
res.send(floor);
|
|
40
|
+
}
|
|
41
|
+
async updateFloorNumber(req, res) {
|
|
42
|
+
const { id: floorId } = await (0, _validators.validateInput)(req.params, _genericvalidation.idRules);
|
|
43
|
+
// Has internal validation
|
|
44
|
+
const floor = await this.floorStore.updateFloorNumber(floorId, req.body.floor);
|
|
45
|
+
res.send(floor);
|
|
46
|
+
}
|
|
47
|
+
async addPrinterToFloor(req, res) {
|
|
48
|
+
const { id: floorId } = await (0, _validators.validateInput)(req.params, _genericvalidation.idRules);
|
|
49
|
+
// Has internal validation
|
|
50
|
+
const floor = await this.floorStore.addOrUpdatePrinter(floorId, req.body);
|
|
51
|
+
res.send(floor);
|
|
52
|
+
}
|
|
53
|
+
async removePrinterFromFloor(req, res) {
|
|
54
|
+
const { id: floorId } = await (0, _validators.validateInput)(req.params, _genericvalidation.idRules);
|
|
55
|
+
// Has internal validation
|
|
56
|
+
const floor = await this.floorStore.removePrinter(floorId, req.body.printerId);
|
|
57
|
+
res.send(floor);
|
|
58
|
+
}
|
|
59
|
+
async list(req, res) {
|
|
60
|
+
const floors = await this.floorStore.listCache();
|
|
61
|
+
res.send(floors);
|
|
62
|
+
}
|
|
63
|
+
async get(req, res) {
|
|
64
|
+
const { id: floorId } = await (0, _validators.validateInput)(req.params, _genericvalidation.idRules);
|
|
65
|
+
const floor = await this.floorStore.getFloor(floorId);
|
|
66
|
+
res.send(floor);
|
|
67
|
+
}
|
|
68
|
+
async delete(req, res) {
|
|
69
|
+
const { id: floorId } = await (0, _validators.validateInput)(req.params, _genericvalidation.idRules);
|
|
70
|
+
await this.floorStore.delete(floorId);
|
|
71
|
+
res.send();
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
const _default = (0, _awilixexpress.createController)(FloorController).prefix(_serverconstants.AppConstants.apiRoute + "/floor").before([
|
|
75
|
+
(0, _authenticate.authenticate)()
|
|
76
|
+
]).get("/", "list", (0, _authenticate.withPermission)(_authorizationconstants.PERMS.PrinterFloors.List)).get("/:id", "get", (0, _authenticate.withPermission)(_authorizationconstants.PERMS.PrinterFloors.Get)).patch("/:id/name", "updateName", (0, _authenticate.withPermission)(_authorizationconstants.PERMS.PrinterFloors.Update)).patch("/:id/floor-number", "updateFloorNumber", (0, _authenticate.withPermission)(_authorizationconstants.PERMS.PrinterFloors.Update)).post("/:id/printer", "addPrinterToFloor", (0, _authenticate.withPermission)(_authorizationconstants.PERMS.PrinterFloors.Update)).delete("/:id/printer", "removePrinterFromFloor", (0, _authenticate.withPermission)(_authorizationconstants.PERMS.PrinterFloors.Update)).delete("/:id", "delete", (0, _authenticate.withPermission)(_authorizationconstants.PERMS.PrinterFloors.Delete)).post("/", "create", (0, _authenticate.withPermission)(_authorizationconstants.PERMS.PrinterFloors.Create));
|
|
77
|
+
|
|
78
|
+
//# sourceMappingURL=floor.controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/controllers/floor.controller.ts"],"names":["FloorController","floorStore","constructor","create","req","res","floor","body","send","updateName","id","floorId","validateInput","params","idRules","name","updateFloorNumber","addPrinterToFloor","addOrUpdatePrinter","removePrinterFromFloor","removePrinter","printerId","list","floors","listCache","get","getFloor","delete","createController","prefix","AppConstants","apiRoute","before","authenticate","withPermission","PERMS","PrinterFloors","List","Get","patch","Update","post","Delete","Create"],"mappings":"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"}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
PluginFirmwareUpdateController: function() {
|
|
13
|
+
return PluginFirmwareUpdateController;
|
|
14
|
+
},
|
|
15
|
+
default: function() {
|
|
16
|
+
return _default;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
const _awilixexpress = require("awilix-express");
|
|
20
|
+
const _serverconstants = require("../server.constants");
|
|
21
|
+
const _authenticate = require("../middleware/authenticate");
|
|
22
|
+
const _authorizationconstants = require("../constants/authorization.constants");
|
|
23
|
+
const _printer = require("../middleware/printer");
|
|
24
|
+
const _validators = require("../handlers/validators");
|
|
25
|
+
const cacheKey = "firmware-state";
|
|
26
|
+
class PluginFirmwareUpdateController {
|
|
27
|
+
cacheManager;
|
|
28
|
+
printerCache;
|
|
29
|
+
pluginFirmwareUpdateService;
|
|
30
|
+
logger;
|
|
31
|
+
constructor({ cacheManager, printerCache, pluginFirmwareUpdateService, loggerFactory }){
|
|
32
|
+
this.cacheManager = cacheManager;
|
|
33
|
+
this.printerCache = printerCache;
|
|
34
|
+
this.pluginFirmwareUpdateService = pluginFirmwareUpdateService;
|
|
35
|
+
this.logger = loggerFactory(PluginFirmwareUpdateController.name);
|
|
36
|
+
}
|
|
37
|
+
async listUpdateState(req, res) {
|
|
38
|
+
const result = await this.performScanOnPrinters();
|
|
39
|
+
res.send(result);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Explicit query, use with care (to prevent Github rate limit)
|
|
43
|
+
*/ async syncFirmwareReleasesCache(req, res) {
|
|
44
|
+
const releases = await this.pluginFirmwareUpdateService.queryGithubPrusaFirmwareReleasesCache();
|
|
45
|
+
res.send(releases);
|
|
46
|
+
}
|
|
47
|
+
async downloadFirmware(req, res) {
|
|
48
|
+
await this.pluginFirmwareUpdateService.downloadFirmware();
|
|
49
|
+
res.send({});
|
|
50
|
+
}
|
|
51
|
+
async scanPrinterFirmwareVersions(req, res) {
|
|
52
|
+
const result = await this.performScanOnPrinters();
|
|
53
|
+
res.send(result);
|
|
54
|
+
}
|
|
55
|
+
async isPluginInstalled(req, res) {
|
|
56
|
+
const { printerLogin } = (0, _validators.getScopedPrinter)(req);
|
|
57
|
+
const isInstalled = await this.pluginFirmwareUpdateService.isPluginInstalled(printerLogin);
|
|
58
|
+
res.send({
|
|
59
|
+
isInstalled
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
async installFirmwareUpdatePlugin(req, res) {
|
|
63
|
+
const { printerLogin } = (0, _validators.getScopedPrinter)(req);
|
|
64
|
+
const isInstalled = await this.pluginFirmwareUpdateService.isPluginInstalled(printerLogin);
|
|
65
|
+
if (!isInstalled) {
|
|
66
|
+
this.logger.log("Installing firmware-update plugin");
|
|
67
|
+
await this.pluginFirmwareUpdateService.installPlugin(printerLogin);
|
|
68
|
+
res.send({
|
|
69
|
+
isInstalled,
|
|
70
|
+
installing: true
|
|
71
|
+
});
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
res.send({
|
|
75
|
+
isInstalled,
|
|
76
|
+
installing: false
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
async getFirmwareUpdaterStatus(req, res) {
|
|
80
|
+
const { printerLogin } = (0, _validators.getScopedPrinter)(req);
|
|
81
|
+
const status = await this.pluginFirmwareUpdateService.getPluginFirmwareStatus(printerLogin);
|
|
82
|
+
res.send(status);
|
|
83
|
+
}
|
|
84
|
+
async configurePluginSettings(req, res) {
|
|
85
|
+
const { printerLogin } = (0, _validators.getScopedPrinter)(req);
|
|
86
|
+
const response = await this.pluginFirmwareUpdateService.configureFirmwareUpdaterSettings(printerLogin);
|
|
87
|
+
res.send(response);
|
|
88
|
+
}
|
|
89
|
+
async flashFirmware(req, res) {
|
|
90
|
+
const { printerLogin, currentPrinterId } = (0, _validators.getScopedPrinter)(req);
|
|
91
|
+
await this.pluginFirmwareUpdateService.flashPrusaFirmware(currentPrinterId, printerLogin);
|
|
92
|
+
res.send({});
|
|
93
|
+
}
|
|
94
|
+
async performScanOnPrinters() {
|
|
95
|
+
const printers = await this.printerCache.listCachedPrinters();
|
|
96
|
+
const printerFirmwareStates = [];
|
|
97
|
+
const failureStates = [];
|
|
98
|
+
for (let printer of printers){
|
|
99
|
+
try {
|
|
100
|
+
const loginDto = await this.printerCache.getLoginDtoAsync(printer.id);
|
|
101
|
+
const isInstalled = await this.pluginFirmwareUpdateService.isPluginInstalled(loginDto);
|
|
102
|
+
let version;
|
|
103
|
+
if (isInstalled) {
|
|
104
|
+
version = await this.pluginFirmwareUpdateService.getPrinterFirmwareVersion(loginDto);
|
|
105
|
+
}
|
|
106
|
+
printerFirmwareStates.push({
|
|
107
|
+
id: printer.id,
|
|
108
|
+
firmware: version,
|
|
109
|
+
printerName: printer.name,
|
|
110
|
+
pluginInstalled: isInstalled
|
|
111
|
+
});
|
|
112
|
+
} catch (e) {
|
|
113
|
+
this.logger.warn("Firmware updater plugin scan failed", e);
|
|
114
|
+
failureStates.push({
|
|
115
|
+
id: printer.id,
|
|
116
|
+
printerName: printer.name,
|
|
117
|
+
error: e
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
const result = {
|
|
122
|
+
firmwareStates: printerFirmwareStates,
|
|
123
|
+
failures: failureStates
|
|
124
|
+
};
|
|
125
|
+
await this.cacheManager.set(cacheKey, result, {
|
|
126
|
+
ttl: 3600 * 4
|
|
127
|
+
});
|
|
128
|
+
return result;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
const _default = (0, _awilixexpress.createController)(PluginFirmwareUpdateController).prefix(_serverconstants.AppConstants.apiRoute + "/plugin/firmware-update").before([
|
|
132
|
+
(0, _authenticate.authenticate)(),
|
|
133
|
+
(0, _authenticate.authorizeRoles)([
|
|
134
|
+
_authorizationconstants.ROLES.OPERATOR,
|
|
135
|
+
_authorizationconstants.ROLES.ADMIN
|
|
136
|
+
]),
|
|
137
|
+
(0, _printer.printerResolveMiddleware)()
|
|
138
|
+
]).get("/", "listUpdateState").post("/releases/sync", "syncFirmwareReleasesCache").post("/scan", "scanPrinterFirmwareVersions").post("/download-firmware", "downloadFirmware").post("/:id/install-firmware-update-plugin", "installFirmwareUpdatePlugin").get("/:id/is-plugin-installed", "isPluginInstalled").post("/:id/configure-plugin-settings", "configurePluginSettings").get("/:id/status", "getFirmwareUpdaterStatus").post("/:id/flash-firmware", "flashFirmware");
|
|
139
|
+
|
|
140
|
+
//# sourceMappingURL=plugin-firmware-update.controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/controllers/plugin-firmware-update.controller.ts"],"names":["PluginFirmwareUpdateController","cacheKey","cacheManager","printerCache","pluginFirmwareUpdateService","logger","constructor","loggerFactory","name","listUpdateState","req","res","result","performScanOnPrinters","send","syncFirmwareReleasesCache","releases","queryGithubPrusaFirmwareReleasesCache","downloadFirmware","scanPrinterFirmwareVersions","isPluginInstalled","printerLogin","getScopedPrinter","isInstalled","installFirmwareUpdatePlugin","log","installPlugin","installing","getFirmwareUpdaterStatus","status","getPluginFirmwareStatus","configurePluginSettings","response","configureFirmwareUpdaterSettings","flashFirmware","currentPrinterId","flashPrusaFirmware","printers","listCachedPrinters","printerFirmwareStates","failureStates","printer","loginDto","getLoginDtoAsync","id","version","getPrinterFirmwareVersion","push","firmware","printerName","pluginInstalled","e","warn","error","firmwareStates","failures","set","ttl","createController","prefix","AppConstants","apiRoute","before","authenticate","authorizeRoles","ROLES","OPERATOR","ADMIN","printerResolveMiddleware","get","post"],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
PrintCompletionController: function() {
|
|
13
|
+
return PrintCompletionController;
|
|
14
|
+
},
|
|
15
|
+
// prettier-ignore
|
|
16
|
+
default: function() {
|
|
17
|
+
return _default;
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
const _authenticate = require("../middleware/authenticate");
|
|
21
|
+
const _awilixexpress = require("awilix-express");
|
|
22
|
+
const _serverconstants = require("../server.constants");
|
|
23
|
+
const _authorizationconstants = require("../constants/authorization.constants");
|
|
24
|
+
const _validators = require("../handlers/validators");
|
|
25
|
+
class PrintCompletionController {
|
|
26
|
+
printCompletionService;
|
|
27
|
+
printCompletionSocketIoTask;
|
|
28
|
+
constructor({ printCompletionService, printCompletionSocketIoTask }){
|
|
29
|
+
this.printCompletionService = printCompletionService;
|
|
30
|
+
this.printCompletionSocketIoTask = printCompletionSocketIoTask;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Not a production ready call, just for testing.
|
|
34
|
+
*/ async test(req, res) {
|
|
35
|
+
const result = await this.printCompletionService.loadPrintContexts();
|
|
36
|
+
res.send(result);
|
|
37
|
+
}
|
|
38
|
+
contexts(req, res) {
|
|
39
|
+
const contexts = this.printCompletionSocketIoTask.contexts;
|
|
40
|
+
res.send(contexts);
|
|
41
|
+
}
|
|
42
|
+
async findCorrelatedEntries(req, res) {
|
|
43
|
+
const { correlationId } = await (0, _validators.validateInput)(req.params, {
|
|
44
|
+
correlationId: "required|string"
|
|
45
|
+
});
|
|
46
|
+
const result = await this.printCompletionService.findPrintCompletion(correlationId);
|
|
47
|
+
res.send(result);
|
|
48
|
+
}
|
|
49
|
+
async list(req, res) {
|
|
50
|
+
const completions = await this.printCompletionService.listGroupByPrinterStatus();
|
|
51
|
+
res.send(completions);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
const _default = (0, _awilixexpress.createController)(PrintCompletionController).prefix(_serverconstants.AppConstants.apiRoute + "/print-completion").before([
|
|
55
|
+
(0, _authenticate.authenticate)()
|
|
56
|
+
]).get("/", "list", (0, _authenticate.withPermission)(_authorizationconstants.PERMS.PrintCompletion.List)).get("/test", "test", (0, _authenticate.withPermission)(_authorizationconstants.PERMS.PrintCompletion.List)).get("/contexts", "contexts", (0, _authenticate.withPermission)(_authorizationconstants.PERMS.PrintCompletion.List)).get("/:correlationId", "findCorrelatedEntries", (0, _authenticate.withPermission)(_authorizationconstants.PERMS.PrintCompletion.Default));
|
|
57
|
+
|
|
58
|
+
//# sourceMappingURL=print-completion.controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/controllers/print-completion.controller.ts"],"names":["PrintCompletionController","printCompletionService","printCompletionSocketIoTask","constructor","test","req","res","result","loadPrintContexts","send","contexts","findCorrelatedEntries","correlationId","validateInput","params","findPrintCompletion","list","completions","listGroupByPrinterStatus","createController","prefix","AppConstants","apiRoute","before","authenticate","get","withPermission","PERMS","PrintCompletion","List","Default"],"mappings":";;;;;;;;;;;IASaA,yBAAyB;eAAzBA;;IAwCb,kBAAkB;IAClB,OAMkG;eANlG;;;8BAlD6C;+BACZ;iCACJ;wCACP;4BACQ;AAKvB,MAAMA;IACHC,uBAA+C;IAC/CC,4BAAyD;IAEjEC,YAAY,EACVF,sBAAsB,EACtBC,2BAA2B,EAI5B,CAAE;QACD,IAAI,CAACD,sBAAsB,GAAGA;QAC9B,IAAI,CAACC,2BAA2B,GAAGA;IACrC;IAEA;;GAEC,GACD,MAAME,KAAKC,GAAY,EAAEC,GAAa,EAAE;QACtC,MAAMC,SAAS,MAAM,IAAI,CAACN,sBAAsB,CAACO,iBAAiB;QAClEF,IAAIG,IAAI,CAACF;IACX;IAEAG,SAASL,GAAY,EAAEC,GAAa,EAAE;QACpC,MAAMI,WAAW,IAAI,CAACR,2BAA2B,CAACQ,QAAQ;QAC1DJ,IAAIG,IAAI,CAACC;IACX;IAEA,MAAMC,sBAAsBN,GAAY,EAAEC,GAAa,EAAE;QACvD,MAAM,EAAEM,aAAa,EAAE,GAAG,MAAMC,IAAAA,yBAAa,EAACR,IAAIS,MAAM,EAAE;YAAEF,eAAe;QAAkB;QAC7F,MAAML,SAAS,MAAM,IAAI,CAACN,sBAAsB,CAACc,mBAAmB,CAACH;QACrEN,IAAIG,IAAI,CAACF;IACX;IAEA,MAAMS,KAAKX,GAAY,EAAEC,GAAa,EAAE;QACtC,MAAMW,cAAc,MAAM,IAAI,CAAChB,sBAAsB,CAACiB,wBAAwB;QAC9EZ,IAAIG,IAAI,CAACQ;IACX;AACF;MAGA,WAAeE,IAAAA,+BAAgB,EAACnB,2BAC7BoB,MAAM,CAACC,6BAAY,CAACC,QAAQ,GAAG,qBAC/BC,MAAM,CAAC;IAACC,IAAAA,0BAAY;CAAG,EACvBC,GAAG,CAAC,KAAK,QAAQC,IAAAA,4BAAc,EAACC,6BAAK,CAACC,eAAe,CAACC,IAAI,GAC1DJ,GAAG,CAAC,SAAS,QAAQC,IAAAA,4BAAc,EAACC,6BAAK,CAACC,eAAe,CAACC,IAAI,GAC9DJ,GAAG,CAAC,aAAa,YAAYC,IAAAA,4BAAc,EAACC,6BAAK,CAACC,eAAe,CAACC,IAAI,GACtEJ,GAAG,CAAC,mBAAmB,yBAAyBC,IAAAA,4BAAc,EAACC,6BAAK,CAACC,eAAe,CAACE,OAAO"}
|