@fdm-monster/server 1.9.4 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.template +8 -7
- package/.yarn/install-state.gz +0 -0
- package/CONTRIBUTING.md +5 -5
- package/README.md +9 -8
- package/RELEASE_NOTES.MD +52 -0
- package/SECURITY.md +1 -1
- package/biome.json +8 -5
- package/dist/consoles/download-github-releases.js +3 -3
- package/dist/consoles/launch-http-servers.js +4 -4
- package/dist/consoles/launch-http-servers.js.map +1 -1
- package/dist/consoles/mock-bambu.server.js +50 -30
- package/dist/consoles/mock-bambu.server.js.map +1 -1
- package/dist/consoles/mock-camera/default-image.js +13 -0
- package/dist/consoles/mock-camera/default-image.js.map +1 -0
- package/dist/consoles/mock-camera/mock-camera.server.js +160 -0
- package/dist/consoles/mock-camera/mock-camera.server.js.map +1 -0
- package/dist/consoles/mock-octoprint.server.js +281 -73
- package/dist/consoles/mock-octoprint.server.js.map +1 -1
- package/dist/consoles/mock-prusalink.server.js +17 -17
- package/dist/consoles/mock-prusalink.server.js.map +1 -1
- package/dist/consoles/typeorm-create.js +135 -0
- package/dist/consoles/typeorm-create.js.map +1 -0
- package/dist/consoles/typeorm-generate.js +8 -8
- package/dist/consoles/typeorm-generate.js.map +1 -1
- package/dist/consoles/utils/api-messages.js.map +1 -1
- package/dist/constants/authorization.constants.js +25 -31
- package/dist/constants/authorization.constants.js.map +1 -1
- package/dist/constants/event.constants.js.map +1 -1
- package/dist/constants/server-settings.constants.js +3 -19
- package/dist/constants/server-settings.constants.js.map +1 -1
- package/dist/container.js +43 -59
- package/dist/container.js.map +1 -1
- package/dist/container.tokens.js +9 -6
- package/dist/container.tokens.js.map +1 -1
- package/dist/controllers/auth.controller.js +1 -1
- package/dist/controllers/auth.controller.js.map +1 -1
- package/dist/controllers/batch-call.controller.js +7 -25
- package/dist/controllers/batch-call.controller.js.map +1 -1
- package/dist/controllers/file-storage.controller.js +248 -0
- package/dist/controllers/file-storage.controller.js.map +1 -0
- package/dist/controllers/first-time-setup.controller.js +6 -5
- package/dist/controllers/first-time-setup.controller.js.map +1 -1
- package/dist/controllers/floor.controller.js +12 -12
- package/dist/controllers/floor.controller.js.map +1 -1
- package/dist/controllers/metrics.controller.js.map +1 -1
- package/dist/controllers/print-job.controller.js +666 -0
- package/dist/controllers/print-job.controller.js.map +1 -0
- package/dist/controllers/print-queue.controller.js +375 -0
- package/dist/controllers/print-queue.controller.js.map +1 -0
- package/dist/controllers/printer-files.controller.js +88 -59
- package/dist/controllers/printer-files.controller.js.map +1 -1
- package/dist/controllers/printer-settings.controller.js +0 -21
- package/dist/controllers/printer-settings.controller.js.map +1 -1
- package/dist/controllers/{printer-group.controller.js → printer-tag.controller.js} +51 -34
- package/dist/controllers/printer-tag.controller.js.map +1 -0
- package/dist/controllers/printer.controller.js +21 -7
- package/dist/controllers/printer.controller.js.map +1 -1
- package/dist/controllers/server-private.controller.js +2 -1
- package/dist/controllers/server-private.controller.js.map +1 -1
- package/dist/controllers/server-public.controller.js +11 -15
- package/dist/controllers/server-public.controller.js.map +1 -1
- package/dist/controllers/settings.controller.js +0 -68
- package/dist/controllers/settings.controller.js.map +1 -1
- package/dist/controllers/slicer-compat.controller.js +216 -0
- package/dist/controllers/slicer-compat.controller.js.map +1 -0
- package/dist/controllers/user.controller.js +8 -12
- package/dist/controllers/user.controller.js.map +1 -1
- package/dist/controllers/validation/batch-controller.validation.js +13 -13
- package/dist/controllers/validation/batch-controller.validation.js.map +1 -1
- package/dist/controllers/validation/generic.validation.js +4 -8
- package/dist/controllers/validation/generic.validation.js.map +1 -1
- package/dist/controllers/validation/printer-files-controller.validation.js +2 -2
- package/dist/controllers/validation/user-controller.validation.js +14 -9
- package/dist/controllers/validation/user-controller.validation.js.map +1 -1
- package/dist/data-source.js +25 -12
- package/dist/data-source.js.map +1 -1
- package/dist/entities/camera-stream.entity.js +2 -1
- package/dist/entities/camera-stream.entity.js.map +1 -1
- package/dist/entities/floor.entity.js +3 -5
- package/dist/entities/floor.entity.js.map +1 -1
- package/dist/entities/index.js +15 -11
- package/dist/entities/index.js.map +1 -1
- package/dist/entities/print-job.entity.js +195 -0
- package/dist/entities/print-job.entity.js.map +1 -0
- package/dist/entities/{printer-group.entity.js → printer-tag.entity.js} +17 -17
- package/dist/entities/printer-tag.entity.js.map +1 -0
- package/dist/entities/printer.entity.js +4 -10
- package/dist/entities/printer.entity.js.map +1 -1
- package/dist/entities/settings.entity.js +3 -12
- package/dist/entities/settings.entity.js.map +1 -1
- package/dist/entities/{group.entity.js → tag.entity.js} +15 -8
- package/dist/entities/tag.entity.js.map +1 -0
- package/dist/handlers/logging/file-logging.transport.js.map +1 -1
- package/dist/handlers/logging/static.logger.js.map +1 -1
- package/dist/index.js +8 -2
- package/dist/index.js.map +1 -1
- package/dist/middleware/authenticate.js +4 -4
- package/dist/middleware/authenticate.js.map +1 -1
- package/dist/middleware/database.js +1 -1
- package/dist/middleware/exception.filter.js +114 -90
- package/dist/middleware/exception.filter.js.map +1 -1
- package/dist/middleware/global.middleware.js +10 -18
- package/dist/middleware/global.middleware.js.map +1 -1
- package/dist/middleware/param-converter.middleware.js +5 -13
- package/dist/middleware/param-converter.middleware.js.map +1 -1
- package/dist/middleware/passport.js +2 -2
- package/dist/middleware/passport.js.map +1 -1
- package/dist/middleware/printer-resolver.js.map +1 -1
- package/dist/middleware/printer.js +3 -2
- package/dist/middleware/printer.js.map +1 -1
- package/dist/middleware/socketio.middleware.js.map +1 -1
- package/dist/migrations/1745141688926-AddPrinterUsernamePassword.js +1 -1
- package/dist/migrations/1745141688926-AddPrinterUsernamePassword.js.map +1 -1
- package/dist/migrations/1766576698569-DropPermissions.js +28 -0
- package/dist/migrations/1766576698569-DropPermissions.js.map +1 -0
- package/dist/migrations/1767278216516-ChangeCameraPrinterOnDeleteSetNull.js +186 -0
- package/dist/migrations/1767278216516-ChangeCameraPrinterOnDeleteSetNull.js.map +1 -0
- package/dist/migrations/1767279607392-DropCustomGcode.js +31 -0
- package/dist/migrations/1767279607392-DropCustomGcode.js.map +1 -0
- package/dist/migrations/1767291804417-DropPrintCompletions.js +37 -0
- package/dist/migrations/1767291804417-DropPrintCompletions.js.map +1 -0
- package/dist/migrations/1767352862576-DropSettingsFileClean.js +88 -0
- package/dist/migrations/1767352862576-DropSettingsFileClean.js.map +1 -0
- package/dist/migrations/1767355639023-ChangeFloorLevelToOrder.js +107 -0
- package/dist/migrations/1767355639023-ChangeFloorLevelToOrder.js.map +1 -0
- package/dist/migrations/1767370191762-ChangeFloorNonUniqueOrder.js +62 -0
- package/dist/migrations/1767370191762-ChangeFloorNonUniqueOrder.js.map +1 -0
- package/dist/migrations/1767432108916-RenameGroupToTag.js +86 -0
- package/dist/migrations/1767432108916-RenameGroupToTag.js.map +1 -0
- package/dist/migrations/1767451444137-AddPrintJob.js +207 -0
- package/dist/migrations/1767451444137-AddPrintJob.js.map +1 -0
- package/dist/server.constants.js +9 -17
- package/dist/server.constants.js.map +1 -1
- package/dist/server.core.js +3 -7
- package/dist/server.core.js.map +1 -1
- package/dist/server.env.js +4 -49
- package/dist/server.env.js.map +1 -1
- package/dist/server.host.js +26 -44
- package/dist/server.host.js.map +1 -1
- package/dist/services/authentication/auth.service.js.map +1 -1
- package/dist/services/authentication/jwt.service.js.map +1 -1
- package/dist/services/bambu/bambu-ftp.adapter.js +3 -3
- package/dist/services/bambu/bambu-ftp.adapter.js.map +1 -1
- package/dist/services/bambu/bambu-mqtt.adapter.js +74 -77
- package/dist/services/bambu/bambu-mqtt.adapter.js.map +1 -1
- package/dist/services/bambu/bambu.client.js.map +1 -1
- package/dist/services/bambu.api.js +11 -0
- package/dist/services/bambu.api.js.map +1 -1
- package/dist/services/core/batch-call.service.js +0 -25
- package/dist/services/core/batch-call.service.js.map +1 -1
- package/dist/services/core/multer.service.js +5 -9
- package/dist/services/core/multer.service.js.map +1 -1
- package/dist/services/core/yaml.service.js +219 -187
- package/dist/services/core/yaml.service.js.map +1 -1
- package/dist/services/file-analysis.service.js +146 -0
- package/dist/services/file-analysis.service.js.map +1 -0
- package/dist/services/file-storage.service.js +386 -0
- package/dist/services/file-storage.service.js.map +1 -0
- package/dist/services/interfaces/camera-stream.dto.js +2 -2
- package/dist/services/interfaces/camera-stream.dto.js.map +1 -1
- package/dist/services/interfaces/floor.dto.js +3 -3
- package/dist/services/interfaces/floor.dto.js.map +1 -1
- package/dist/services/interfaces/{printer-group.dto.js → printer-tag.dto.js} +9 -8
- package/dist/services/interfaces/printer-tag.dto.js.map +1 -0
- package/dist/services/interfaces/{print-completion.interface.js → printer-tag.service.interface.js} +1 -1
- package/dist/services/interfaces/{printer-group.service.interface.js.map → printer-tag.service.interface.js.map} +1 -1
- package/dist/services/interfaces/printer.dto.js +2 -2
- package/dist/services/interfaces/printer.dto.js.map +1 -1
- package/dist/services/interfaces/refresh-token.dto.js.map +1 -1
- package/dist/services/interfaces/role.dto.js.map +1 -1
- package/dist/services/interfaces/settings.dto.js +0 -1
- package/dist/services/interfaces/settings.dto.js.map +1 -1
- package/dist/services/interfaces/{group.dto.js → tag.dto.js} +1 -1
- package/dist/services/interfaces/tag.dto.js.map +1 -0
- package/dist/services/interfaces/user.dto.js.map +1 -1
- package/dist/services/moonraker/constants/moonraker-event.dto.js.map +1 -1
- package/dist/services/moonraker/moonraker-websocket.adapter.js.map +1 -1
- package/dist/services/moonraker/moonraker.client.js.map +1 -1
- package/dist/services/moonraker.api.js +3 -0
- package/dist/services/moonraker.api.js.map +1 -1
- package/dist/services/octoprint/dto/files/gcode-analysis.dto.js.map +1 -0
- package/dist/services/octoprint/dto/octoprint-event.dto.js.map +1 -1
- package/dist/services/octoprint/octoprint-api.routes.js +0 -7
- package/dist/services/octoprint/octoprint-api.routes.js.map +1 -1
- package/dist/services/octoprint/octoprint-websocket.adapter.js.map +1 -1
- package/dist/services/octoprint/octoprint.client.js +0 -4
- package/dist/services/octoprint/octoprint.client.js.map +1 -1
- package/dist/services/octoprint.api.js +3 -0
- package/dist/services/octoprint.api.js.map +1 -1
- package/dist/services/orm/base.service.js.map +1 -1
- package/dist/services/orm/camera-stream.service.js.map +1 -1
- package/dist/services/orm/floor-position.service.js.map +1 -1
- package/dist/services/orm/floor.service.js +12 -19
- package/dist/services/orm/floor.service.js.map +1 -1
- package/dist/services/orm/permission.service.js +3 -54
- package/dist/services/orm/permission.service.js.map +1 -1
- package/dist/services/orm/print-job.service.js +539 -0
- package/dist/services/orm/print-job.service.js.map +1 -0
- package/dist/services/orm/printer-tag.service.js +120 -0
- package/dist/services/orm/printer-tag.service.js.map +1 -0
- package/dist/services/orm/printer.service.js.map +1 -1
- package/dist/services/orm/refresh-token.service.js.map +1 -1
- package/dist/services/orm/role.service.js +25 -39
- package/dist/services/orm/role.service.js.map +1 -1
- package/dist/services/orm/settings.service.js +4 -15
- package/dist/services/orm/settings.service.js.map +1 -1
- package/dist/services/orm/user.service.js +17 -13
- package/dist/services/orm/user.service.js.map +1 -1
- package/dist/services/print-file-downloader.service.js +169 -0
- package/dist/services/print-file-downloader.service.js.map +1 -0
- package/dist/services/print-queue.service.js +268 -0
- package/dist/services/print-queue.service.js.map +1 -0
- package/dist/services/printer-api.factory.js +1 -1
- package/dist/services/printer-api.factory.js.map +1 -1
- package/dist/services/printer-api.interface.js.map +1 -1
- package/dist/services/prusa-link/constants/prusalink-event.dto.js.map +1 -1
- package/dist/services/prusa-link/prusa-link-http-polling.adapter.js +1 -3
- package/dist/services/prusa-link/prusa-link-http-polling.adapter.js.map +1 -1
- package/dist/services/prusa-link/prusa-link.api.js +4 -1
- package/dist/services/prusa-link/prusa-link.api.js.map +1 -1
- package/dist/services/prusa-link/utils/prusa-link-http-client.builder.js.map +1 -1
- package/dist/services/validators/floor-service.validation.js +25 -31
- package/dist/services/validators/floor-service.validation.js.map +1 -1
- package/dist/services/validators/print-job.validation.js +31 -0
- package/dist/services/validators/print-job.validation.js.map +1 -0
- package/dist/services/validators/settings-service.validation.js +0 -22
- package/dist/services/validators/settings-service.validation.js.map +1 -1
- package/dist/services/validators/user-service.validation.js +15 -10
- package/dist/services/validators/user-service.validation.js.map +1 -1
- package/dist/services/validators/yaml-service.validation.js +8 -14
- package/dist/services/validators/yaml-service.validation.js.map +1 -1
- package/dist/shared/load-controllers.js +2 -1
- package/dist/shared/load-controllers.js.map +1 -1
- package/dist/shared/runtime-settings.migration.js +1 -11
- package/dist/shared/runtime-settings.migration.js.map +1 -1
- package/dist/shared/websocket-rpc-extended.adapter.js +13 -4
- package/dist/shared/websocket-rpc-extended.adapter.js.map +1 -1
- package/dist/shared/websocket.adapter.js.map +1 -1
- package/dist/state/file-upload-tracker.cache.js.map +1 -1
- package/dist/state/file.cache.js +6 -6
- package/dist/state/file.cache.js.map +1 -1
- package/dist/state/floor.store.js +3 -10
- package/dist/state/floor.store.js.map +1 -1
- package/dist/state/printer-events.cache.js +180 -20
- package/dist/state/printer-events.cache.js.map +1 -1
- package/dist/state/printer-files.store.js.map +1 -1
- package/dist/state/printer-socket.store.js +25 -20
- package/dist/state/printer-socket.store.js.map +1 -1
- package/dist/state/printer-thumbnail.cache.js +98 -188
- package/dist/state/printer-thumbnail.cache.js.map +1 -1
- package/dist/state/printer.cache.js +3 -13
- package/dist/state/printer.cache.js.map +1 -1
- package/dist/state/settings.store.js +4 -42
- package/dist/state/settings.store.js.map +1 -1
- package/dist/state/socket-io.gateway.js +1 -1
- package/dist/state/socket-io.gateway.js.map +1 -1
- package/dist/state/test-printer-socket.store.js +6 -3
- package/dist/state/test-printer-socket.store.js.map +1 -1
- package/dist/tasks/boot.task.js +11 -91
- package/dist/tasks/boot.task.js.map +1 -1
- package/dist/tasks/print-job-analysis.task.js +116 -0
- package/dist/tasks/print-job-analysis.task.js.map +1 -0
- package/dist/tasks/printer-files-load.task.js +29 -0
- package/dist/tasks/printer-files-load.task.js.map +1 -0
- package/dist/tasks/socketio.task.js +1 -1
- package/dist/tasks/socketio.task.js.map +1 -1
- package/dist/tasks.js +3 -2
- package/dist/tasks.js.map +1 -1
- package/dist/utils/cache/key-diff.cache.js +20 -61
- package/dist/utils/cache/key-diff.cache.js.map +1 -1
- package/dist/utils/parsers/3mf.parser.js +337 -0
- package/dist/utils/parsers/3mf.parser.js.map +1 -0
- package/dist/utils/parsers/bgcode.parser.js +223 -0
- package/dist/utils/parsers/bgcode.parser.js.map +1 -0
- package/dist/utils/parsers/gcode.parser.js +254 -0
- package/dist/utils/parsers/gcode.parser.js.map +1 -0
- package/dist/utils/swagger/decorators.js +39 -0
- package/dist/utils/swagger/decorators.js.map +1 -0
- package/dist/utils/swagger/generator.js +196 -0
- package/dist/utils/swagger/generator.js.map +1 -0
- package/dist/utils/swagger/swagger.js +93 -0
- package/dist/utils/swagger/swagger.js.map +1 -0
- package/package.json +24 -30
- package/dist/controllers/custom-gcode.controller.js +0 -150
- package/dist/controllers/custom-gcode.controller.js.map +0 -1
- package/dist/controllers/print-completion.controller.js +0 -118
- package/dist/controllers/print-completion.controller.js.map +0 -1
- package/dist/controllers/printer-group.controller.js.map +0 -1
- package/dist/entities/custom-gcode.entity.js +0 -49
- package/dist/entities/custom-gcode.entity.js.map +0 -1
- package/dist/entities/group.entity.js.map +0 -1
- package/dist/entities/permission.entity.js +0 -37
- package/dist/entities/permission.entity.js.map +0 -1
- package/dist/entities/print-completion.entity.js +0 -90
- package/dist/entities/print-completion.entity.js.map +0 -1
- package/dist/entities/printer-group.entity.js.map +0 -1
- package/dist/models/Auth/Permission.js +0 -20
- package/dist/models/Auth/Permission.js.map +0 -1
- package/dist/models/Auth/RefreshToken.js +0 -41
- package/dist/models/Auth/RefreshToken.js.map +0 -1
- package/dist/models/Auth/Role.js +0 -20
- package/dist/models/Auth/Role.js.map +0 -1
- package/dist/models/Auth/User.js +0 -49
- package/dist/models/Auth/User.js.map +0 -1
- package/dist/models/CameraStream.js +0 -49
- package/dist/models/CameraStream.js.map +0 -1
- package/dist/models/CustomGcode.js +0 -28
- package/dist/models/CustomGcode.js.map +0 -1
- package/dist/models/Floor.js +0 -33
- package/dist/models/Floor.js.map +0 -1
- package/dist/models/FloorPrinter.js +0 -38
- package/dist/models/FloorPrinter.js.map +0 -1
- package/dist/models/PrintCompletion.js +0 -40
- package/dist/models/PrintCompletion.js.map +0 -1
- package/dist/models/Printer.js +0 -78
- package/dist/models/Printer.js.map +0 -1
- package/dist/models/Settings.js +0 -150
- package/dist/models/Settings.js.map +0 -1
- package/dist/models/index.js +0 -54
- package/dist/models/index.js.map +0 -1
- package/dist/mongo-migrations/20210713120034-printers-settingsapperance-apikey.js +0 -45
- package/dist/mongo-migrations/20210713120034-printers-settingsapperance-apikey.js.map +0 -1
- package/dist/mongo-migrations/20210907173950-printers-enabled.js +0 -35
- package/dist/mongo-migrations/20210907173950-printers-enabled.js.map +0 -1
- package/dist/mongo-migrations/20211029110742-user-password-passwordhash.js +0 -35
- package/dist/mongo-migrations/20211029110742-user-password-passwordhash.js.map +0 -1
- package/dist/mongo-migrations/20230414141005-floor-remove-groupinfloor.js +0 -60
- package/dist/mongo-migrations/20230414141005-floor-remove-groupinfloor.js.map +0 -1
- package/dist/mongo-migrations/20230427202911-printer-remove-sortindex.js +0 -30
- package/dist/mongo-migrations/20230427202911-printer-remove-sortindex.js.map +0 -1
- package/dist/mongo-migrations/20230716065316-user-remove-name.js +0 -30
- package/dist/mongo-migrations/20230716065316-user-remove-name.js.map +0 -1
- package/dist/mongo-migrations/20231111081809-printer-flatten-name.js +0 -35
- package/dist/mongo-migrations/20231111081809-printer-flatten-name.js.map +0 -1
- package/dist/mongo-migrations/20231111082521-printer-remove-settingsappearance.js +0 -41
- package/dist/mongo-migrations/20231111082521-printer-remove-settingsappearance.js.map +0 -1
- package/dist/mongo-migrations/20231202183902-printer-files-simpler.js +0 -41
- package/dist/mongo-migrations/20231202183902-printer-files-simpler.js.map +0 -1
- package/dist/services/interfaces/custom-gcode.dto.js +0 -18
- package/dist/services/interfaces/custom-gcode.dto.js.map +0 -1
- package/dist/services/interfaces/custom-gcode.service.interface.js +0 -6
- package/dist/services/interfaces/custom-gcode.service.interface.js.map +0 -1
- package/dist/services/interfaces/gcode-analysis.dto.js.map +0 -1
- package/dist/services/interfaces/group.dto.js.map +0 -1
- package/dist/services/interfaces/permission.dto.js +0 -16
- package/dist/services/interfaces/permission.dto.js.map +0 -1
- package/dist/services/interfaces/print-completion-context.dto.js +0 -6
- package/dist/services/interfaces/print-completion-context.dto.js.map +0 -1
- package/dist/services/interfaces/print-completion.dto.js +0 -38
- package/dist/services/interfaces/print-completion.dto.js.map +0 -1
- package/dist/services/interfaces/print-completion.interface.js.map +0 -1
- package/dist/services/interfaces/printer-group.dto.js.map +0 -1
- package/dist/services/interfaces/printer-group.service.interface.js +0 -6
- package/dist/services/mongoose/camera-stream.service.js +0 -67
- package/dist/services/mongoose/camera-stream.service.js.map +0 -1
- package/dist/services/mongoose/custom-gcode.service.js +0 -50
- package/dist/services/mongoose/custom-gcode.service.js.map +0 -1
- package/dist/services/mongoose/floor.service.js +0 -139
- package/dist/services/mongoose/floor.service.js.map +0 -1
- package/dist/services/mongoose/permission.service.js +0 -73
- package/dist/services/mongoose/permission.service.js.map +0 -1
- package/dist/services/mongoose/print-completion.service.js +0 -134
- package/dist/services/mongoose/print-completion.service.js.map +0 -1
- package/dist/services/mongoose/print-completion.shared.js +0 -59
- package/dist/services/mongoose/print-completion.shared.js.map +0 -1
- package/dist/services/mongoose/printer.service.js +0 -216
- package/dist/services/mongoose/printer.service.js.map +0 -1
- package/dist/services/mongoose/refresh-token.service.js +0 -104
- package/dist/services/mongoose/refresh-token.service.js.map +0 -1
- package/dist/services/mongoose/role.service.js +0 -132
- package/dist/services/mongoose/role.service.js.map +0 -1
- package/dist/services/mongoose/settings.service.js +0 -124
- package/dist/services/mongoose/settings.service.js.map +0 -1
- package/dist/services/mongoose/user.service.js +0 -180
- package/dist/services/mongoose/user.service.js.map +0 -1
- package/dist/services/orm/custom-gcode.service.js +0 -42
- package/dist/services/orm/custom-gcode.service.js.map +0 -1
- package/dist/services/orm/print-completion.service.js +0 -87
- package/dist/services/orm/print-completion.service.js.map +0 -1
- package/dist/services/orm/printer-group.service.js +0 -109
- package/dist/services/orm/printer-group.service.js.map +0 -1
- package/dist/services/validators/camera-service.validation.js +0 -19
- package/dist/services/validators/camera-service.validation.js.map +0 -1
- package/dist/services/validators/print-completion-service.validation.js +0 -33
- package/dist/services/validators/print-completion-service.validation.js.map +0 -1
- package/dist/shared.constants.js +0 -15
- package/dist/shared.constants.js.map +0 -1
- package/dist/tasks/print-completion.socketio.task.js +0 -91
- package/dist/tasks/print-completion.socketio.task.js.map +0 -1
- package/dist/tasks/printer-file-clean.task.js +0 -74
- package/dist/tasks/printer-file-clean.task.js.map +0 -1
- package/migrate-mongo-config.js +0 -45
- /package/dist/services/{interfaces → octoprint/dto/files}/gcode-analysis.dto.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/mongo-migrations/20210713120034-printers-settingsapperance-apikey.ts"],"names":["module","exports","up","db","client","session","startSession","withTransaction","dbCollection","collection","updateMany","$rename","settingsApperance","apikey","endSession","down","settingsAppearance","apiKey"],"mappings":";AAAAA,OAAOC,OAAO,GAAG;IAEf,MAAMC,IAAGC,EAAE,EAAEC,MAAM;QACjB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YAEF,MAAMD,QAAQE,eAAe,CAAC;gBAE5B,MAAMC,eAAeL,GAAGM,UAAU,CAAC;gBACnC,MAAMD,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEC,SAAS;wBAAEC,mBAAmB;oBAAqB;gBAAE;gBACzF,MAAMJ,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEC,SAAS;wBAAEE,QAAQ;oBAAS;gBAAE;YACpE;QACF,SAAU;YACR,MAAMR,QAAQS,UAAU;QAC1B;IACF;IAGA,MAAMC,MAAKZ,EAAE,EAAEC,MAAM;QACnB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YAEF,MAAMD,QAAQE,eAAe,CAAC;gBAE5B,MAAMC,eAAeL,GAAGM,UAAU,CAAC;gBACnC,MAAMD,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEC,SAAS;wBAAEK,oBAAoB;oBAAoB;gBAAE;gBACzF,MAAMR,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEC,SAAS;wBAAEM,QAAQ;oBAAS;gBAAE;YACpE;QACF,SAAU;YACR,MAAMZ,QAAQS,UAAU;QAC1B;IACF;AACF"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
module.exports = {
|
|
3
|
-
async up (db, client) {
|
|
4
|
-
const session = client.startSession();
|
|
5
|
-
try {
|
|
6
|
-
await session.withTransaction(async ()=>{
|
|
7
|
-
const dbCollection = db.collection("printers");
|
|
8
|
-
await dbCollection.updateMany({}, {
|
|
9
|
-
$set: {
|
|
10
|
-
enabled: true
|
|
11
|
-
}
|
|
12
|
-
});
|
|
13
|
-
});
|
|
14
|
-
} finally{
|
|
15
|
-
await session.endSession();
|
|
16
|
-
}
|
|
17
|
-
},
|
|
18
|
-
async down (db, client) {
|
|
19
|
-
const session = client.startSession();
|
|
20
|
-
try {
|
|
21
|
-
await session.withTransaction(async ()=>{
|
|
22
|
-
const dbCollection = db.collection("printers");
|
|
23
|
-
await dbCollection.updateMany({}, {
|
|
24
|
-
unset: {
|
|
25
|
-
enabled: ""
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
});
|
|
29
|
-
} finally{
|
|
30
|
-
await session.endSession();
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
//# sourceMappingURL=20210907173950-printers-enabled.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/mongo-migrations/20210907173950-printers-enabled.ts"],"names":["module","exports","up","db","client","session","startSession","withTransaction","dbCollection","collection","updateMany","$set","enabled","endSession","down","unset"],"mappings":";AAAAA,OAAOC,OAAO,GAAG;IAEf,MAAMC,IAAGC,EAAE,EAAEC,MAAM;QACjB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YAEF,MAAMD,QAAQE,eAAe,CAAC;gBAE5B,MAAMC,eAAeL,GAAGM,UAAU,CAAC;gBACnC,MAAMD,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEC,MAAM;wBAAEC,SAAS;oBAAK;gBAAE;YAC9D;QACF,SAAU;YACR,MAAMP,QAAQQ,UAAU;QAC1B;IACF;IAGA,MAAMC,MAAKX,EAAE,EAAEC,MAAM;QACnB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YAEF,MAAMD,QAAQE,eAAe,CAAC;gBAE5B,MAAMC,eAAeL,GAAGM,UAAU,CAAC;gBACnC,MAAMD,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEK,OAAO;wBAAEH,SAAS;oBAAG;gBAAE;YAC7D;QACF,SAAU;YACR,MAAMP,QAAQQ,UAAU;QAC1B;IACF;AACF"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
module.exports = {
|
|
3
|
-
async up (db, client) {
|
|
4
|
-
const session = client.startSession();
|
|
5
|
-
try {
|
|
6
|
-
await session.withTransaction(async ()=>{
|
|
7
|
-
const dbCollection = db.collection("users");
|
|
8
|
-
await dbCollection.updateMany({}, {
|
|
9
|
-
$rename: {
|
|
10
|
-
password: "passwordHash"
|
|
11
|
-
}
|
|
12
|
-
});
|
|
13
|
-
});
|
|
14
|
-
} finally{
|
|
15
|
-
await session.endSession();
|
|
16
|
-
}
|
|
17
|
-
},
|
|
18
|
-
async down (db, client) {
|
|
19
|
-
const session = client.startSession();
|
|
20
|
-
try {
|
|
21
|
-
await session.withTransaction(async ()=>{
|
|
22
|
-
const dbCollection = db.collection("users");
|
|
23
|
-
await dbCollection.updateMany({}, {
|
|
24
|
-
$rename: {
|
|
25
|
-
passwordHash: "password"
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
});
|
|
29
|
-
} finally{
|
|
30
|
-
await session.endSession();
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
//# sourceMappingURL=20211029110742-user-password-passwordhash.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/mongo-migrations/20211029110742-user-password-passwordhash.ts"],"names":["module","exports","up","db","client","session","startSession","withTransaction","dbCollection","collection","updateMany","$rename","password","endSession","down","passwordHash"],"mappings":";AAAAA,OAAOC,OAAO,GAAG;IAEf,MAAMC,IAAGC,EAAE,EAAEC,MAAM;QACjB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YAEF,MAAMD,QAAQE,eAAe,CAAC;gBAE5B,MAAMC,eAAeL,GAAGM,UAAU,CAAC;gBACnC,MAAMD,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEC,SAAS;wBAAEC,UAAU;oBAAe;gBAAE;YAC5E;QACF,SAAU;YACR,MAAMP,QAAQQ,UAAU;QAC1B;IACF;IAGA,MAAMC,MAAKX,EAAE,EAAEC,MAAM;QACnB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YAEF,MAAMD,QAAQE,eAAe,CAAC;gBAE5B,MAAMC,eAAeL,GAAGM,UAAU,CAAC;gBACnC,MAAMD,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEC,SAAS;wBAAEI,cAAc;oBAAW;gBAAE;YAC5E;QACF,SAAU;YACR,MAAMV,QAAQQ,UAAU;QAC1B;IACF;AACF"}
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
module.exports = {
|
|
3
|
-
async up (db, client) {
|
|
4
|
-
const session = client.startSession();
|
|
5
|
-
try {
|
|
6
|
-
await session.withTransaction(async ()=>{
|
|
7
|
-
const collections = await client.db().listCollections().toArray();
|
|
8
|
-
if (collections.find((c)=>c.name === "printerfloors")) {
|
|
9
|
-
await db.collection("printerfloors").update({}, {
|
|
10
|
-
$unset: {
|
|
11
|
-
printerGroups: 1
|
|
12
|
-
}
|
|
13
|
-
}, {
|
|
14
|
-
multi: true
|
|
15
|
-
});
|
|
16
|
-
await db.collection("printerfloors").update({}, {
|
|
17
|
-
$set: {
|
|
18
|
-
printers: []
|
|
19
|
-
}
|
|
20
|
-
}, {
|
|
21
|
-
multi: true
|
|
22
|
-
});
|
|
23
|
-
await db.collection("printerfloors").rename("floors");
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
|
-
} finally{
|
|
27
|
-
await session.endSession();
|
|
28
|
-
}
|
|
29
|
-
},
|
|
30
|
-
async down (db, client) {
|
|
31
|
-
const session = client.startSession();
|
|
32
|
-
try {
|
|
33
|
-
const collections = await client.db().listCollections().toArray();
|
|
34
|
-
if (collections.find((c)=>c.name === "floors")) {
|
|
35
|
-
await db.collection("printerfloors").update({}, {
|
|
36
|
-
$set: {
|
|
37
|
-
printerGroups: []
|
|
38
|
-
}
|
|
39
|
-
}, {
|
|
40
|
-
multi: true
|
|
41
|
-
});
|
|
42
|
-
await db.collection("printerfloors").update({}, {
|
|
43
|
-
$unset: {
|
|
44
|
-
printers: 1
|
|
45
|
-
}
|
|
46
|
-
}, {
|
|
47
|
-
multi: true
|
|
48
|
-
});
|
|
49
|
-
await db.collection("floors").rename("printerfloors");
|
|
50
|
-
}
|
|
51
|
-
if (!collections.find((c)=>c.name === "printerfloors")) {
|
|
52
|
-
throw new Error("Illegal migration state, didnt find floors table");
|
|
53
|
-
}
|
|
54
|
-
} finally{
|
|
55
|
-
await session.endSession();
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
//# sourceMappingURL=20230414141005-floor-remove-groupinfloor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/mongo-migrations/20230414141005-floor-remove-groupinfloor.ts"],"names":["module","exports","up","db","client","session","startSession","withTransaction","collections","listCollections","toArray","find","c","name","collection","update","$unset","printerGroups","multi","$set","printers","rename","endSession","down","Error"],"mappings":";AAAAA,OAAOC,OAAO,GAAG;IAEf,MAAMC,IAAGC,EAAE,EAAEC,MAAM;QACjB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YACF,MAAMD,QAAQE,eAAe,CAAC;gBAC5B,MAAMC,cAAc,MAAMJ,OAAOD,EAAE,GAAGM,eAAe,GAAGC,OAAO;gBAE/D,IAAIF,YAAYG,IAAI,CAAC,CAACC,IAAMA,EAAEC,IAAI,KAAK,kBAAkB;oBACvD,MAAMV,GAAGW,UAAU,CAAC,iBAAiBC,MAAM,CAAC,CAAC,GAAG;wBAAEC,QAAQ;4BAAEC,eAAe;wBAAE;oBAAE,GAAG;wBAAEC,OAAO;oBAAK;oBAChG,MAAMf,GAAGW,UAAU,CAAC,iBAAiBC,MAAM,CAAC,CAAC,GAAG;wBAAEI,MAAM;4BAAEC,UAAU,EAAE;wBAAC;oBAAE,GAAG;wBAAEF,OAAO;oBAAK;oBAC1F,MAAMf,GAAGW,UAAU,CAAC,iBAAiBO,MAAM,CAAC;gBAC9C;YACF;QACF,SAAU;YACR,MAAMhB,QAAQiB,UAAU;QAC1B;IACF;IAGA,MAAMC,MAAKpB,EAAE,EAAEC,MAAM;QACnB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YACF,MAAME,cAAc,MAAMJ,OAAOD,EAAE,GAAGM,eAAe,GAAGC,OAAO;YAE/D,IAAIF,YAAYG,IAAI,CAAC,CAACC,IAAMA,EAAEC,IAAI,KAAK,WAAW;gBAChD,MAAMV,GAAGW,UAAU,CAAC,iBAAiBC,MAAM,CAAC,CAAC,GAAG;oBAAEI,MAAM;wBAAEF,eAAe,EAAE;oBAAC;gBAAE,GAAG;oBAAEC,OAAO;gBAAK;gBAC/F,MAAMf,GAAGW,UAAU,CAAC,iBAAiBC,MAAM,CAAC,CAAC,GAAG;oBAAEC,QAAQ;wBAAEI,UAAU;oBAAE;gBAAE,GAAG;oBAAEF,OAAO;gBAAK;gBAC3F,MAAMf,GAAGW,UAAU,CAAC,UAAUO,MAAM,CAAC;YACvC;YAGA,IAAI,CAACb,YAAYG,IAAI,CAAC,CAACC,IAAMA,EAAEC,IAAI,KAAK,kBAAkB;gBACxD,MAAM,IAAIW,MAAM;YAClB;QACF,SAAU;YACR,MAAMnB,QAAQiB,UAAU;QAC1B;IACF;AACF"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
module.exports = {
|
|
3
|
-
async up (db, client) {
|
|
4
|
-
const session = client.startSession();
|
|
5
|
-
try {
|
|
6
|
-
await session.withTransaction(async ()=>{
|
|
7
|
-
await db.collection("printers").update({}, {
|
|
8
|
-
$unset: {
|
|
9
|
-
sortIndex: 1
|
|
10
|
-
}
|
|
11
|
-
}, {
|
|
12
|
-
multi: true
|
|
13
|
-
});
|
|
14
|
-
});
|
|
15
|
-
} finally{
|
|
16
|
-
await session.endSession();
|
|
17
|
-
}
|
|
18
|
-
},
|
|
19
|
-
async down (db, client) {
|
|
20
|
-
await db.collection("printers").update({}, {
|
|
21
|
-
$set: {
|
|
22
|
-
sortIndex: 0
|
|
23
|
-
}
|
|
24
|
-
}, {
|
|
25
|
-
multi: true
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
//# sourceMappingURL=20230427202911-printer-remove-sortindex.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/mongo-migrations/20230427202911-printer-remove-sortindex.ts"],"names":["module","exports","up","db","client","session","startSession","withTransaction","collection","update","$unset","sortIndex","multi","endSession","down","$set"],"mappings":";AAAAA,OAAOC,OAAO,GAAG;IAEf,MAAMC,IAAGC,EAAE,EAAEC,MAAM;QACjB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YACF,MAAMD,QAAQE,eAAe,CAAC;gBAC5B,MAAMJ,GAAGK,UAAU,CAAC,YAAYC,MAAM,CAAC,CAAC,GAAG;oBAAEC,QAAQ;wBAAEC,WAAW;oBAAE;gBAAE,GAAG;oBAAEC,OAAO;gBAAK;YACzF;QACF,SAAU;YACR,MAAMP,QAAQQ,UAAU;QAC1B;IACF;IAGA,MAAMC,MAAKX,EAAE,EAAEC,MAAM;QACnB,MAAMD,GAAGK,UAAU,CAAC,YAAYC,MAAM,CAAC,CAAC,GAAG;YAAEM,MAAM;gBAAEJ,WAAW;YAAE;QAAE,GAAG;YAAEC,OAAO;QAAK;IACvF;AACF"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
module.exports = {
|
|
3
|
-
async up (db, client) {
|
|
4
|
-
const session = client.startSession();
|
|
5
|
-
try {
|
|
6
|
-
await session.withTransaction(async ()=>{
|
|
7
|
-
await db.collection("users").update({}, {
|
|
8
|
-
$unset: {
|
|
9
|
-
name: 1
|
|
10
|
-
}
|
|
11
|
-
}, {
|
|
12
|
-
multi: true
|
|
13
|
-
});
|
|
14
|
-
});
|
|
15
|
-
} finally{
|
|
16
|
-
await session.endSession();
|
|
17
|
-
}
|
|
18
|
-
},
|
|
19
|
-
async down (db, client) {
|
|
20
|
-
await db.collection("printers").update({}, {
|
|
21
|
-
$set: {
|
|
22
|
-
name: "default"
|
|
23
|
-
}
|
|
24
|
-
}, {
|
|
25
|
-
multi: true
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
//# sourceMappingURL=20230716065316-user-remove-name.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/mongo-migrations/20230716065316-user-remove-name.ts"],"names":["module","exports","up","db","client","session","startSession","withTransaction","collection","update","$unset","name","multi","endSession","down","$set"],"mappings":";AAAAA,OAAOC,OAAO,GAAG;IAEf,MAAMC,IAAGC,EAAE,EAAEC,MAAM;QACjB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YACF,MAAMD,QAAQE,eAAe,CAAC;gBAC5B,MAAMJ,GAAGK,UAAU,CAAC,SAASC,MAAM,CAAC,CAAC,GAAG;oBAAEC,QAAQ;wBAAEC,MAAM;oBAAE;gBAAE,GAAG;oBAAEC,OAAO;gBAAK;YACjF;QACF,SAAU;YACR,MAAMP,QAAQQ,UAAU;QAC1B;IACF;IAGA,MAAMC,MAAKX,EAAE,EAAEC,MAAM;QACnB,MAAMD,GAAGK,UAAU,CAAC,YAAYC,MAAM,CAAC,CAAC,GAAG;YAAEM,MAAM;gBAAEJ,MAAM;YAAU;QAAE,GAAG;YAAEC,OAAO;QAAK;IAC1F;AACF"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
module.exports = {
|
|
3
|
-
async up (db, client) {
|
|
4
|
-
const session = client.startSession();
|
|
5
|
-
try {
|
|
6
|
-
await session.withTransaction(async ()=>{
|
|
7
|
-
const dbCollection = db.collection("printers");
|
|
8
|
-
await dbCollection.updateMany({}, {
|
|
9
|
-
$rename: {
|
|
10
|
-
"settingsAppearance.name": "name"
|
|
11
|
-
}
|
|
12
|
-
});
|
|
13
|
-
});
|
|
14
|
-
} finally{
|
|
15
|
-
await session.endSession();
|
|
16
|
-
}
|
|
17
|
-
},
|
|
18
|
-
async down (db, client) {
|
|
19
|
-
const session = client.startSession();
|
|
20
|
-
try {
|
|
21
|
-
await session.withTransaction(async ()=>{
|
|
22
|
-
const dbCollection = db.collection("printers");
|
|
23
|
-
await dbCollection.updateMany({}, {
|
|
24
|
-
$rename: {
|
|
25
|
-
name: "settingsAppearance.name"
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
});
|
|
29
|
-
} finally{
|
|
30
|
-
await session.endSession();
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
//# sourceMappingURL=20231111081809-printer-flatten-name.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/mongo-migrations/20231111081809-printer-flatten-name.ts"],"names":["module","exports","up","db","client","session","startSession","withTransaction","dbCollection","collection","updateMany","$rename","endSession","down","name"],"mappings":";AAAAA,OAAOC,OAAO,GAAG;IAEf,MAAMC,IAAGC,EAAE,EAAEC,MAAM;QACjB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YACF,MAAMD,QAAQE,eAAe,CAAC;gBAC5B,MAAMC,eAAeL,GAAGM,UAAU,CAAC;gBACnC,MAAMD,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEC,SAAS;wBAAE,2BAA2B;oBAAO;gBAAE;YACrF;QACF,SAAU;YACR,MAAMN,QAAQO,UAAU;QAC1B;IAIF;IAGA,MAAMC,MAAKV,EAAE,EAAEC,MAAM;QACnB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YAEF,MAAMD,QAAQE,eAAe,CAAC;gBAE5B,MAAMC,eAAeL,GAAGM,UAAU,CAAC;gBACnC,MAAMD,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEC,SAAS;wBAAEG,MAAM;oBAA0B;gBAAE;YACnF;QACF,SAAU;YACR,MAAMT,QAAQO,UAAU;QAC1B;IACF;AACF"}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
module.exports = {
|
|
3
|
-
async up (db, client) {
|
|
4
|
-
const session = client.startSession();
|
|
5
|
-
try {
|
|
6
|
-
await session.withTransaction(async ()=>{
|
|
7
|
-
const dbCollection = db.collection("printers");
|
|
8
|
-
await dbCollection.updateMany({}, {
|
|
9
|
-
$unset: {
|
|
10
|
-
settingsAppearance: 1
|
|
11
|
-
}
|
|
12
|
-
});
|
|
13
|
-
});
|
|
14
|
-
} catch (e) {
|
|
15
|
-
console.log("Error executing up migration", e);
|
|
16
|
-
throw e;
|
|
17
|
-
} finally{
|
|
18
|
-
await session.endSession();
|
|
19
|
-
}
|
|
20
|
-
},
|
|
21
|
-
async down (db, client) {
|
|
22
|
-
const session = client.startSession();
|
|
23
|
-
try {
|
|
24
|
-
await session.withTransaction(async ()=>{
|
|
25
|
-
const dbCollection = db.collection("printers");
|
|
26
|
-
await dbCollection.updateMany({}, {
|
|
27
|
-
$set: {
|
|
28
|
-
settingsAppearance: {}
|
|
29
|
-
}
|
|
30
|
-
});
|
|
31
|
-
});
|
|
32
|
-
} catch (e) {
|
|
33
|
-
console.log("Error executing down migration", e);
|
|
34
|
-
throw e;
|
|
35
|
-
} finally{
|
|
36
|
-
await session.endSession();
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
};
|
|
40
|
-
|
|
41
|
-
//# sourceMappingURL=20231111082521-printer-remove-settingsappearance.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/mongo-migrations/20231111082521-printer-remove-settingsappearance.ts"],"names":["module","exports","up","db","client","session","startSession","withTransaction","dbCollection","collection","updateMany","$unset","settingsAppearance","e","console","log","endSession","down","$set"],"mappings":";AAAAA,OAAOC,OAAO,GAAG;IAEf,MAAMC,IAAGC,EAAE,EAAEC,MAAM;QACjB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YACF,MAAMD,QAAQE,eAAe,CAAC;gBAC5B,MAAMC,eAAeL,GAAGM,UAAU,CAAC;gBACnC,MAAMD,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEC,QAAQ;wBAAEC,oBAAoB;oBAAE;gBAAE;YACxE;QACF,EAAE,OAAOC,GAAG;YACVC,QAAQC,GAAG,CAAC,gCAAgCF;YAC5C,MAAMA;QACR,SAAU;YACR,MAAMR,QAAQW,UAAU;QAC1B;IAIF;IAGA,MAAMC,MAAKd,EAAE,EAAEC,MAAM;QACnB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YAEF,MAAMD,QAAQE,eAAe,CAAC;gBAE5B,MAAMC,eAAeL,GAAGM,UAAU,CAAC;gBACnC,MAAMD,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEQ,MAAM;wBAAEN,oBAAoB,CAAC;oBAAE;gBAAE;YACvE;QACF,EAAE,OAAOC,GAAG;YACVC,QAAQC,GAAG,CAAC,kCAAkCF;YAC9C,MAAMA;QACR,SAAU;YACR,MAAMR,QAAQW,UAAU;QAC1B;IACF;AACF"}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
module.exports = {
|
|
3
|
-
async up (db, client) {
|
|
4
|
-
const session = client.startSession();
|
|
5
|
-
try {
|
|
6
|
-
await session.withTransaction(async ()=>{
|
|
7
|
-
const dbCollection = db.collection("printers");
|
|
8
|
-
await dbCollection.updateMany({}, {
|
|
9
|
-
$set: {
|
|
10
|
-
fileList: []
|
|
11
|
-
}
|
|
12
|
-
});
|
|
13
|
-
});
|
|
14
|
-
} catch (e) {
|
|
15
|
-
console.log("Error executing up migration", e);
|
|
16
|
-
throw e;
|
|
17
|
-
} finally{
|
|
18
|
-
await session.endSession();
|
|
19
|
-
}
|
|
20
|
-
},
|
|
21
|
-
async down (db, client) {
|
|
22
|
-
const session = client.startSession();
|
|
23
|
-
try {
|
|
24
|
-
await session.withTransaction(async ()=>{
|
|
25
|
-
const dbCollection = db.collection("printers");
|
|
26
|
-
await dbCollection.updateMany({}, {
|
|
27
|
-
$set: {
|
|
28
|
-
fileList: {}
|
|
29
|
-
}
|
|
30
|
-
});
|
|
31
|
-
});
|
|
32
|
-
} catch (e) {
|
|
33
|
-
console.log("Error executing down migration", e);
|
|
34
|
-
throw e;
|
|
35
|
-
} finally{
|
|
36
|
-
await session.endSession();
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
};
|
|
40
|
-
|
|
41
|
-
//# sourceMappingURL=20231202183902-printer-files-simpler.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/mongo-migrations/20231202183902-printer-files-simpler.ts"],"names":["module","exports","up","db","client","session","startSession","withTransaction","dbCollection","collection","updateMany","$set","fileList","e","console","log","endSession","down"],"mappings":";AAAAA,OAAOC,OAAO,GAAG;IAEf,MAAMC,IAAGC,EAAE,EAAEC,MAAM;QACjB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YACF,MAAMD,QAAQE,eAAe,CAAC;gBAC5B,MAAMC,eAAeL,GAAGM,UAAU,CAAC;gBACnC,MAAMD,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEC,MAAM;wBAAEC,UAAU,EAAE;oBAAC;gBAAE;YAC7D;QACF,EAAE,OAAOC,GAAG;YACVC,QAAQC,GAAG,CAAC,gCAAgCF;YAC5C,MAAMA;QACR,SAAU;YACR,MAAMR,QAAQW,UAAU;QAC1B;IACF;IAGA,MAAMC,MAAKd,EAAE,EAAEC,MAAM;QACnB,MAAMC,UAAUD,OAAOE,YAAY;QACnC,IAAI;YAEF,MAAMD,QAAQE,eAAe,CAAC;gBAE5B,MAAMC,eAAeL,GAAGM,UAAU,CAAC;gBACnC,MAAMD,aAAaE,UAAU,CAAC,CAAC,GAAG;oBAAEC,MAAM;wBAAEC,UAAU,CAAC;oBAAE;gBAAE;YAC7D;QACF,EAAE,OAAOC,GAAG;YACVC,QAAQC,GAAG,CAAC,kCAAkCF;YAC9C,MAAMA;QACR,SAAU;YACR,MAAMR,QAAQW,UAAU;QAC1B;IACF;AACF"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "CustomGcodeDto", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return CustomGcodeDto;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
class CustomGcodeDto {
|
|
12
|
-
id;
|
|
13
|
-
name;
|
|
14
|
-
description;
|
|
15
|
-
gcode;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
//# sourceMappingURL=custom-gcode.dto.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/interfaces/custom-gcode.dto.ts"],"names":["CustomGcodeDto","id","name","description","gcode"],"mappings":";;;;+BAEaA;;;eAAAA;;;AAAN,MAAMA;IACXC,GAAY;IACZC,KAAa;IACbC,YAAqB;IACrBC,MAAgB;AAClB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/interfaces/custom-gcode.service.interface.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/interfaces/gcode-analysis.dto.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/interfaces/group.dto.ts"],"names":[],"mappings":""}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "PermissionDto", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return PermissionDto;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
class PermissionDto {
|
|
12
|
-
id;
|
|
13
|
-
name;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
//# sourceMappingURL=permission.dto.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/interfaces/permission.dto.ts"],"names":["PermissionDto","id","name"],"mappings":";;;;+BAEaA;;;eAAAA;;;AAAN,MAAMA;IACXC,GAAY;IACZC,KAAa;AACf"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/interfaces/print-completion-context.dto.ts"],"names":[],"mappings":""}
|
|
@@ -1,38 +0,0 @@
|
|
|
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: Object.getOwnPropertyDescriptor(all, name).get
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
get CreatePrintCompletionDto () {
|
|
13
|
-
return CreatePrintCompletionDto;
|
|
14
|
-
},
|
|
15
|
-
get PrintCompletionDto () {
|
|
16
|
-
return PrintCompletionDto;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
class CreatePrintCompletionDto {
|
|
20
|
-
fileName;
|
|
21
|
-
status;
|
|
22
|
-
printerId;
|
|
23
|
-
printerReference;
|
|
24
|
-
completionLog;
|
|
25
|
-
context;
|
|
26
|
-
}
|
|
27
|
-
class PrintCompletionDto {
|
|
28
|
-
id;
|
|
29
|
-
fileName;
|
|
30
|
-
createdAt;
|
|
31
|
-
status;
|
|
32
|
-
printerId;
|
|
33
|
-
printerReference;
|
|
34
|
-
completionLog;
|
|
35
|
-
context;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
//# sourceMappingURL=print-completion.dto.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/interfaces/print-completion.dto.ts"],"names":["CreatePrintCompletionDto","PrintCompletionDto","fileName","status","printerId","printerReference","completionLog","context","id","createdAt"],"mappings":";;;;;;;;;;;QAMaA;eAAAA;;QASAC;eAAAA;;;AATN,MAAMD;IACXE,SAAiB;IACjBC,OAAe;IACfC,UAAmB;IACnBC,iBAA0B;IAC1BC,cAAuB;IACvBC,QAAgC;AAClC;AAEO,MAAMN;IACXO,GAAa;IACbN,SAAiB;IACjBO,UAAkB;IAClBN,OAAe;IACfC,UAAmB;IACnBC,iBAA0B;IAC1BC,cAAuB;IACvBC,QAAgC;AAClC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/interfaces/print-completion.interface.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/interfaces/printer-group.dto.ts"],"names":["CreateGroupDto","PrinterGroupDto","printerId","groupId","name"],"mappings":";;;;;;;;;;;QAKaA;eAAAA;;QALAC;eAAAA;;;AAAN,MAAMA;IACXC,UAAmB;IACnBC,QAAiB;AACnB;AAEO,MAAMH;IACXI,KAAa;AACf"}
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "CameraStreamService", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return CameraStreamService;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _models = require("../../models");
|
|
12
|
-
const _validators = require("../../handlers/validators");
|
|
13
|
-
const _runtimeexceptions = require("../../exceptions/runtime.exceptions");
|
|
14
|
-
const _cameraservicevalidation = require("../validators/camera-service.validation");
|
|
15
|
-
class CameraStreamService {
|
|
16
|
-
printerCache;
|
|
17
|
-
model = _models.CameraStream;
|
|
18
|
-
constructor(printerCache){
|
|
19
|
-
this.printerCache = printerCache;
|
|
20
|
-
}
|
|
21
|
-
async list() {
|
|
22
|
-
return this.model.find();
|
|
23
|
-
}
|
|
24
|
-
async get(id) {
|
|
25
|
-
const cameraStream = await this.model.findById(id);
|
|
26
|
-
if (!cameraStream) {
|
|
27
|
-
throw new _runtimeexceptions.NotFoundException(`Floor with provided id does not exist`, "CameraStream");
|
|
28
|
-
}
|
|
29
|
-
return cameraStream;
|
|
30
|
-
}
|
|
31
|
-
async create(data) {
|
|
32
|
-
const input = await (0, _validators.validateInput)(data, (0, _cameraservicevalidation.createCameraStreamSchema)(false));
|
|
33
|
-
if (input.printerId) {
|
|
34
|
-
this.printerCache.getCachedPrinterOrThrow(input.printerId);
|
|
35
|
-
}
|
|
36
|
-
return this.model.create(input);
|
|
37
|
-
}
|
|
38
|
-
async delete(id) {
|
|
39
|
-
await this.get(id);
|
|
40
|
-
await this.model.findByIdAndDelete(id);
|
|
41
|
-
}
|
|
42
|
-
async update(id, input) {
|
|
43
|
-
await this.get(id);
|
|
44
|
-
const updateInput = await (0, _validators.validateInput)(input, (0, _cameraservicevalidation.createCameraStreamSchema)(false));
|
|
45
|
-
if (input.printerId) {
|
|
46
|
-
this.printerCache.getCachedPrinterOrThrow(input.printerId);
|
|
47
|
-
}
|
|
48
|
-
await this.model.updateOne({
|
|
49
|
-
id
|
|
50
|
-
}, updateInput);
|
|
51
|
-
return this.get(id);
|
|
52
|
-
}
|
|
53
|
-
toDto(entity) {
|
|
54
|
-
return {
|
|
55
|
-
id: entity.id,
|
|
56
|
-
streamURL: entity.streamURL,
|
|
57
|
-
printerId: !entity?.printerId ? null : entity.printerId.toString(),
|
|
58
|
-
name: entity.name,
|
|
59
|
-
aspectRatio: entity.aspectRatio,
|
|
60
|
-
flipHorizontal: entity.flipHorizontal,
|
|
61
|
-
flipVertical: entity.flipVertical,
|
|
62
|
-
rotationClockwise: entity.rotationClockwise
|
|
63
|
-
};
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
//# sourceMappingURL=camera-stream.service.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/mongoose/camera-stream.service.ts"],"names":["CameraStreamService","model","CameraStream","printerCache","list","find","get","id","cameraStream","findById","NotFoundException","create","data","input","validateInput","createCameraStreamSchema","printerId","getCachedPrinterOrThrow","delete","findByIdAndDelete","update","updateInput","updateOne","toDto","entity","streamURL","toString","name","aspectRatio","flipHorizontal","flipVertical","rotationClockwise"],"mappings":";;;;+BAUaA;;;eAAAA;;;wBAVgB;4BACC;mCACI;yCAMO;AAElC,MAAMA;;IACXC,QAAQC,oBAAY,CAAC;IAErB,YAAY,AAAiBC,YAA0B,CAAE;aAA5BA,eAAAA;IAA6B;IAE1D,MAAMC,OAAO;QACX,OAAO,IAAI,CAACH,KAAK,CAACI,IAAI;IACxB;IAEA,MAAMC,IAAIC,EAAe,EAAE;QACzB,MAAMC,eAAe,MAAM,IAAI,CAACP,KAAK,CAACQ,QAAQ,CAACF;QAC/C,IAAI,CAACC,cAAc;YACjB,MAAM,IAAIE,oCAAiB,CAAC,CAAC,qCAAqC,CAAC,EAAE;QACvE;QAEA,OAAOF;IACT;IAEA,MAAMG,OAAOC,IAAwC,EAAE;QACrD,MAAMC,QAAQ,MAAMC,IAAAA,yBAAa,EAACF,MAAMG,IAAAA,iDAAwB,EAAC;QACjE,IAAIF,MAAMG,SAAS,EAAE;YACnB,IAAI,CAACb,YAAY,CAACc,uBAAuB,CAACJ,MAAMG,SAAS;QAC3D;QACA,OAAO,IAAI,CAACf,KAAK,CAACU,MAAM,CAACE;IAC3B;IAEA,MAAMK,OAAOX,EAAe,EAAE;QAC5B,MAAM,IAAI,CAACD,GAAG,CAACC;QACf,MAAM,IAAI,CAACN,KAAK,CAACkB,iBAAiB,CAACZ;IACrC;IAEA,MAAMa,OAAOb,EAAe,EAAEM,KAAyC,EAAE;QACvE,MAAM,IAAI,CAACP,GAAG,CAACC;QAEf,MAAMc,cAAc,MAAMP,IAAAA,yBAAa,EAACD,OAAOE,IAAAA,iDAAwB,EAAC;QACxE,IAAIF,MAAMG,SAAS,EAAE;YACnB,IAAI,CAACb,YAAY,CAACc,uBAAuB,CAACJ,MAAMG,SAAS;QAC3D;QACA,MAAM,IAAI,CAACf,KAAK,CAACqB,SAAS,CAAC;YAAEf;QAAG,GAAGc;QACnC,OAAO,IAAI,CAACf,GAAG,CAACC;IAClB;IAEAgB,MAAMC,MAAqB,EAAgC;QACzD,OAAO;YACLjB,IAAIiB,OAAOjB,EAAE;YACbkB,WAAWD,OAAOC,SAAS;YAC3BT,WAAW,CAACQ,QAAQR,YAAY,OAAOQ,OAAOR,SAAS,CAACU,QAAQ;YAChEC,MAAMH,OAAOG,IAAI;YACjBC,aAAaJ,OAAOI,WAAW;YAC/BC,gBAAgBL,OAAOK,cAAc;YACrCC,cAAcN,OAAOM,YAAY;YACjCC,mBAAmBP,OAAOO,iBAAiB;QAC7C;IACF;AACF"}
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "CustomGcodeService", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return CustomGcodeService;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _models = require("../../models");
|
|
12
|
-
const _runtimeexceptions = require("../../exceptions/runtime.exceptions");
|
|
13
|
-
class CustomGcodeService {
|
|
14
|
-
toDto(document) {
|
|
15
|
-
return {
|
|
16
|
-
id: document.id,
|
|
17
|
-
name: document.name,
|
|
18
|
-
description: document.description,
|
|
19
|
-
gcode: [
|
|
20
|
-
...document.gcode
|
|
21
|
-
]
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
async get(gcodeScriptId) {
|
|
25
|
-
const document = await _models.CustomGcode.findById(gcodeScriptId);
|
|
26
|
-
if (!document) {
|
|
27
|
-
throw new _runtimeexceptions.NotFoundException(`Custom GCode script with provided id does not exist`);
|
|
28
|
-
}
|
|
29
|
-
return document;
|
|
30
|
-
}
|
|
31
|
-
async list() {
|
|
32
|
-
return _models.CustomGcode.find();
|
|
33
|
-
}
|
|
34
|
-
async create(gcodeScript) {
|
|
35
|
-
return _models.CustomGcode.create(gcodeScript);
|
|
36
|
-
}
|
|
37
|
-
async delete(gcodeScriptId) {
|
|
38
|
-
const gcode = await this.get(gcodeScriptId);
|
|
39
|
-
await _models.CustomGcode.findByIdAndDelete(gcode.id);
|
|
40
|
-
}
|
|
41
|
-
async update(gcodeScriptId, updatedData) {
|
|
42
|
-
const customGcode = await this.get(gcodeScriptId);
|
|
43
|
-
customGcode.name = updatedData.name;
|
|
44
|
-
customGcode.description = updatedData.description;
|
|
45
|
-
customGcode.gcode = updatedData.gcode;
|
|
46
|
-
return await customGcode.save();
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
//# sourceMappingURL=custom-gcode.service.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/mongoose/custom-gcode.service.ts"],"names":["CustomGcodeService","toDto","document","id","name","description","gcode","get","gcodeScriptId","CustomGcode","findById","NotFoundException","list","find","create","gcodeScript","delete","findByIdAndDelete","update","updatedData","customGcode","save"],"mappings":";;;;+BAOaA;;;eAAAA;;;wBAPe;mCACM;AAM3B,MAAMA;IACXC,MAAMC,QAAsB,EAA+B;QACzD,OAAO;YACLC,IAAID,SAASC,EAAE;YACfC,MAAMF,SAASE,IAAI;YACnBC,aAAaH,SAASG,WAAW;YACjCC,OAAO;mBAAIJ,SAASI,KAAK;aAAC;QAC5B;IACF;IAEA,MAAMC,IAAIC,aAA0B,EAAE;QACpC,MAAMN,WAAW,MAAMO,mBAAW,CAACC,QAAQ,CAACF;QAC5C,IAAI,CAACN,UAAU;YACb,MAAM,IAAIS,oCAAiB,CAAC,CAAC,mDAAmD,CAAC;QACnF;QAEA,OAAOT;IACT;IAEA,MAAMU,OAAO;QACX,OAAOH,mBAAW,CAACI,IAAI;IACzB;IAEA,MAAMC,OAAOC,WAA2B,EAAE;QACxC,OAAON,mBAAW,CAACK,MAAM,CAACC;IAC5B;IAEA,MAAMC,OAAOR,aAA0B,EAAE;QACvC,MAAMF,QAAQ,MAAM,IAAI,CAACC,GAAG,CAACC;QAC7B,MAAMC,mBAAW,CAACQ,iBAAiB,CAACX,MAAMH,EAAE;IAC9C;IAEA,MAAMe,OAAOV,aAA0B,EAAEW,WAA2B,EAAE;QACpE,MAAMC,cAAc,MAAM,IAAI,CAACb,GAAG,CAACC;QACnCY,YAAYhB,IAAI,GAAGe,YAAYf,IAAI;QACnCgB,YAAYf,WAAW,GAAGc,YAAYd,WAAW;QACjDe,YAAYd,KAAK,GAAGa,YAAYb,KAAK;QACrC,OAAO,MAAMc,YAAYC,IAAI;IAC/B;AACF"}
|