@fdm-monster/server 1.5.4 → 1.6.0-rc2
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 +7 -0
- package/.gitattributes +2 -0
- package/.yarn/install-state.gz +0 -0
- package/.yarn/releases/yarn-4.1.0.cjs +893 -0
- package/.yarnrc.yml +4 -0
- package/README.md +3 -2
- package/dist/consoles/sqlite-torm.js +31 -0
- package/dist/consoles/sqlite-torm.js.map +1 -0
- package/dist/consoles/typeorm-generate.js +194 -0
- package/dist/consoles/typeorm-generate.js.map +1 -0
- package/dist/consoles/typeorm-migrate.js +48 -0
- package/dist/consoles/typeorm-migrate.js.map +1 -0
- package/dist/consoles/upload-test.js +52 -0
- package/dist/consoles/upload-test.js.map +1 -0
- package/dist/constants/event.constants.js.map +1 -1
- package/dist/constants/service.constants.js +3 -18
- package/dist/constants/service.constants.js.map +1 -1
- package/dist/container.js +64 -19
- package/dist/container.js.map +1 -1
- package/dist/container.tokens.js +2 -0
- package/dist/container.tokens.js.map +1 -1
- package/dist/controllers/batch-call.controller.js +10 -5
- package/dist/controllers/batch-call.controller.js.map +1 -1
- package/dist/controllers/custom-gcode.controller.js.map +1 -1
- package/dist/controllers/dto/update-client-dist.dto.js +38 -0
- package/dist/controllers/dto/update-client-dist.dto.js.map +1 -0
- package/dist/controllers/printer-files.controller.js +10 -49
- package/dist/controllers/printer-files.controller.js.map +1 -1
- package/dist/controllers/printer.controller.js +1 -1
- package/dist/controllers/printer.controller.js.map +1 -1
- package/dist/controllers/server-private.controller.js +25 -6
- package/dist/controllers/server-private.controller.js.map +1 -1
- package/dist/controllers/validation/batch-controller.validation.js +9 -0
- package/dist/controllers/validation/batch-controller.validation.js.map +1 -1
- package/dist/data-source.js +66 -0
- package/dist/data-source.js.map +1 -0
- package/dist/entities/base.entity.js +29 -0
- package/dist/entities/base.entity.js.map +1 -0
- package/dist/entities/camera-stream.entity.js +94 -0
- package/dist/entities/camera-stream.entity.js.map +1 -0
- package/dist/entities/custom-gcode.entity.js +50 -0
- package/dist/entities/custom-gcode.entity.js.map +1 -0
- package/dist/entities/floor-position.entity.js +78 -0
- package/dist/entities/floor-position.entity.js.map +1 -0
- package/dist/entities/floor.entity.js +53 -0
- package/dist/entities/floor.entity.js.map +1 -0
- package/dist/entities/index.js +58 -0
- package/dist/entities/index.js.map +1 -0
- package/dist/entities/permission.entity.js +38 -0
- package/dist/entities/permission.entity.js.map +1 -0
- package/dist/entities/print-completion.entity.js +91 -0
- package/dist/entities/print-completion.entity.js.map +1 -0
- package/dist/entities/printer-file.entity.js +140 -0
- package/dist/entities/printer-file.entity.js.map +1 -0
- package/dist/entities/printer.entity.js +105 -0
- package/dist/entities/printer.entity.js.map +1 -0
- package/dist/entities/refresh-token.entity.js +70 -0
- package/dist/entities/refresh-token.entity.js.map +1 -0
- package/dist/entities/role.entity.js +46 -0
- package/dist/entities/role.entity.js.map +1 -0
- package/dist/entities/settings.entity.js +89 -0
- package/dist/entities/settings.entity.js.map +1 -0
- package/dist/entities/user-role.entity.js +70 -0
- package/dist/entities/user-role.entity.js.map +1 -0
- package/dist/entities/user.entity.js +90 -0
- package/dist/entities/user.entity.js.map +1 -0
- package/dist/middleware/exception.filter.js +2 -1
- package/dist/middleware/exception.filter.js.map +1 -1
- package/dist/middleware/passport.js.map +1 -1
- package/dist/migrations/1706829146617-InitSqlite.js +670 -0
- package/dist/migrations/1706829146617-InitSqlite.js.map +1 -0
- package/dist/models/Floor.js.map +1 -1
- package/dist/models/Printer.js +4 -43
- package/dist/models/Printer.js.map +1 -1
- package/dist/models/PrinterFile.js +85 -0
- package/dist/models/PrinterFile.js.map +1 -0
- package/dist/models/index.js +4 -0
- package/dist/models/index.js.map +1 -1
- package/dist/mongo-migrations/20231202183902-printer-files-simpler.js +41 -0
- package/dist/mongo-migrations/20231202183902-printer-files-simpler.js.map +1 -0
- package/dist/server.constants.js +4 -2
- package/dist/server.constants.js.map +1 -1
- package/dist/server.core.js +10 -1
- package/dist/server.core.js.map +1 -1
- package/dist/server.host.js +11 -3
- package/dist/server.host.js.map +1 -1
- package/dist/services/batch-call.service.js +43 -20
- package/dist/services/batch-call.service.js.map +1 -1
- package/dist/services/core/client-bundle.service.js +92 -25
- package/dist/services/core/client-bundle.service.js.map +1 -1
- package/dist/services/core/github.service.js +18 -14
- package/dist/services/core/github.service.js.map +1 -1
- package/dist/services/core/multer.service.js +3 -3
- package/dist/services/core/multer.service.js.map +1 -1
- package/dist/services/core/task-manager.service.js +1 -1
- package/dist/services/core/task-manager.service.js.map +1 -1
- package/dist/services/core/yaml.service.js.map +1 -1
- package/dist/services/floor.service.js +1 -1
- package/dist/services/floor.service.js.map +1 -1
- package/dist/services/interfaces/print-completion.dto.js +0 -2
- package/dist/services/interfaces/print-completion.dto.js.map +1 -1
- package/dist/services/interfaces/print-completion.interface.js +6 -0
- package/dist/services/interfaces/{print-completion.service.js.map → print-completion.interface.js.map} +1 -1
- package/dist/services/interfaces/printer-file.dto.js +32 -4
- package/dist/services/interfaces/printer-file.dto.js.map +1 -1
- package/dist/services/octoprint/dto/connection-state.dto.js +21 -0
- package/dist/services/octoprint/dto/connection-state.dto.js.map +1 -0
- package/dist/services/{interfaces/print-completion.service.js → octoprint/dto/connection.dto.js} +1 -1
- package/dist/services/octoprint/dto/connection.dto.js.map +1 -0
- package/dist/services/octoprint/dto/octoprint-currentuser.dto.js +6 -0
- package/dist/services/octoprint/dto/octoprint-currentuser.dto.js.map +1 -0
- package/dist/services/octoprint/dto/octoprint-event.dto.js +41 -0
- package/dist/services/octoprint/dto/octoprint-event.dto.js.map +1 -0
- package/dist/services/octoprint/dto/octoprint-file.dto.js +84 -0
- package/dist/services/octoprint/dto/octoprint-file.dto.js.map +1 -0
- package/dist/services/octoprint/dto/octoprint-files.dto.js +17 -0
- package/dist/services/octoprint/dto/octoprint-files.dto.js.map +1 -0
- package/dist/services/octoprint/dto/octoprint-session.dto.js +6 -0
- package/dist/services/octoprint/dto/octoprint-session.dto.js.map +1 -0
- package/dist/services/octoprint/dto/octoprint-settings.dto.js +29 -0
- package/dist/services/octoprint/dto/octoprint-settings.dto.js.map +1 -0
- package/dist/services/octoprint/dto/octoprint-system-info.dto.js +41 -0
- package/dist/services/octoprint/dto/octoprint-system-info.dto.js.map +1 -0
- package/dist/services/octoprint/dto/state.dto.js +38 -0
- package/dist/services/octoprint/dto/state.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/connection-message.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/connection-message.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/current-message.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/current-message.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/event-message.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/event-message.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/event.type.js +54 -0
- package/dist/services/octoprint/dto/websocket-output/event.type.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/client-authed.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/client-authed.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/client-closed.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/client-closed.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/client-opened.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/client-opened.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/dwelling.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/dwelling.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/file-added.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/file-added.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/file-deselected.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/file-deselected.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/file-removed.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/file-removed.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/folder-added.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/folder-added.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/home.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/home.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/metadata-analysis-finished.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/metadata-analysis-finished.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/metadata-analysis-started.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/metadata-analysis-started.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/metadata-statistics-updated.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/metadata-statistics-updated.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/position-update.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/position-update.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/print-cancelled.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/print-cancelled.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/print-cancelling.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/print-cancelling.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/print-done.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/print-done.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/print-failed.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/print-failed.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/print-paused.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/print-paused.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/print-resumed.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/print-resumed.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/print-started.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/print-started.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/printer-state-changed.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/printer-state-changed.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/transfer-done.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/transfer-done.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/transfer-started.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/transfer-started.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/updated-files.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/updated-files.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/upload.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/upload.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/user-logged-in.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/user-logged-in.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/events/z-change.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/events/z-change.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/history-message.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/history-message.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/plugin-message.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/plugin-message.dto.js.map +1 -0
- package/dist/services/octoprint/dto/websocket-output/timelapse-message.dto.js +6 -0
- package/dist/services/octoprint/dto/websocket-output/timelapse-message.dto.js.map +1 -0
- package/dist/services/octoprint/models/octoprint-file.dto.js +6 -0
- package/dist/services/octoprint/models/octoprint-file.dto.js.map +1 -0
- package/dist/services/octoprint/octoprint-api.routes.js +24 -18
- package/dist/services/octoprint/octoprint-api.routes.js.map +1 -1
- package/dist/services/octoprint/octoprint-api.service.js +201 -138
- package/dist/services/octoprint/octoprint-api.service.js.map +1 -1
- package/dist/services/octoprint/octoprint-sockio.adapter.js +72 -66
- package/dist/services/octoprint/octoprint-sockio.adapter.js.map +1 -1
- package/dist/services/octoprint/utils/api.utils.js +0 -35
- package/dist/services/octoprint/utils/api.utils.js.map +1 -1
- package/dist/services/octoprint/utils/file.utils.js +44 -0
- package/dist/services/octoprint/utils/file.utils.js.map +1 -0
- package/dist/services/orm/base.interface.js +6 -0
- package/dist/services/orm/base.interface.js.map +1 -0
- package/dist/services/orm/base.service.js +72 -0
- package/dist/services/orm/base.service.js.map +1 -0
- package/dist/services/orm/camera-stream.service.js +25 -0
- package/dist/services/orm/camera-stream.service.js.map +1 -0
- package/dist/services/orm/custom-gcode.service.js +42 -0
- package/dist/services/orm/custom-gcode.service.js.map +1 -0
- package/dist/services/orm/floor-position.service.js +55 -0
- package/dist/services/orm/floor-position.service.js.map +1 -0
- package/dist/services/orm/floor.service.js +122 -0
- package/dist/services/orm/floor.service.js.map +1 -0
- package/dist/services/orm/permission.service.js +77 -0
- package/dist/services/orm/permission.service.js.map +1 -0
- package/dist/services/orm/print-completion.service.js +90 -0
- package/dist/services/orm/print-completion.service.js.map +1 -0
- package/dist/services/orm/printer-files.service.js +123 -0
- package/dist/services/orm/printer-files.service.js.map +1 -0
- package/dist/services/orm/printer.service.js +145 -0
- package/dist/services/orm/printer.service.js.map +1 -0
- package/dist/services/orm/refresh-token.service.js +107 -0
- package/dist/services/orm/refresh-token.service.js.map +1 -0
- package/dist/services/orm/role.service.js +131 -0
- package/dist/services/orm/role.service.js.map +1 -0
- package/dist/services/orm/settings.service.js +208 -0
- package/dist/services/orm/settings.service.js.map +1 -0
- package/dist/services/orm/user-role.service.js +55 -0
- package/dist/services/orm/user-role.service.js.map +1 -0
- package/dist/services/orm/user.service.js +146 -0
- package/dist/services/orm/user.service.js.map +1 -0
- package/dist/services/orm-migration.service.js +20 -0
- package/dist/services/orm-migration.service.js.map +1 -0
- package/dist/services/print-completion.service.js +0 -1
- package/dist/services/print-completion.service.js.map +1 -1
- package/dist/services/printer-files.service.js +73 -49
- package/dist/services/printer-files.service.js.map +1 -1
- package/dist/services/printer.service.js +0 -2
- package/dist/services/printer.service.js.map +1 -1
- package/dist/services/typeorm/typeorm.service.js +48 -0
- package/dist/services/typeorm/typeorm.service.js.map +1 -0
- package/dist/shared/dtos/printer-login.dto.js +58 -0
- package/dist/shared/dtos/printer-login.dto.js.map +1 -0
- package/dist/{utils → shared}/websocket.adapter.js +3 -3
- package/dist/shared/websocket.adapter.js.map +1 -0
- package/dist/state/file-upload-tracker.cache.js.map +1 -1
- package/dist/state/file.cache.js +12 -35
- package/dist/state/file.cache.js.map +1 -1
- package/dist/state/printer-connection.cache.js +21 -0
- package/dist/state/printer-connection.cache.js.map +1 -0
- package/dist/state/printer-events.cache.js +13 -7
- package/dist/state/printer-events.cache.js.map +1 -1
- package/dist/state/printer-files.store.js +14 -18
- package/dist/state/printer-files.store.js.map +1 -1
- package/dist/state/printer-socket.store.js +3 -3
- package/dist/state/printer-socket.store.js.map +1 -1
- package/dist/state/printer.cache.js +3 -0
- package/dist/state/printer.cache.js.map +1 -1
- package/dist/state/settings.store.js +9 -1
- package/dist/state/settings.store.js.map +1 -1
- package/dist/state/test-printer-socket.store.js +1 -1
- package/dist/task.presets.js.map +1 -1
- package/dist/tasks/boot.task.js +30 -18
- package/dist/tasks/boot.task.js.map +1 -1
- package/dist/tasks/print-completion.socketio.task.js +28 -19
- package/dist/tasks/print-completion.socketio.task.js.map +1 -1
- package/dist/tasks/printer-file-clean.task.js +14 -0
- package/dist/tasks/printer-file-clean.task.js.map +1 -1
- package/dist/tasks/printer-state-update-poll.task.js +89 -0
- package/dist/tasks/printer-state-update-poll.task.js.map +1 -0
- package/dist/tasks/printer-websocket-restore.task.js +4 -3
- package/dist/tasks/printer-websocket-restore.task.js.map +1 -1
- package/dist/tasks/printer-websocket.task.js +1 -1
- package/dist/tasks/printer-websocket.task.js.map +1 -1
- package/dist/tasks.js +2 -1
- package/dist/tasks.js.map +1 -1
- package/dist/utils/env.utils.js +0 -10
- package/dist/utils/env.utils.js.map +1 -1
- package/dist/utils/semver.utils.js +19 -4
- package/dist/utils/semver.utils.js.map +1 -1
- package/package.json +58 -47
- package/dist/utils/find-predicate.utils.js +0 -18
- package/dist/utils/find-predicate.utils.js.map +0 -1
- package/dist/utils/websocket.adapter.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/tasks/boot.task.ts"],"names":["BootTask","logger","taskManagerService","serverTasks","settingsStore","settingsService","multerService","printerSocketStore","printerFilesStore","permissionService","roleService","userService","pluginRepositoryCache","floorStore","pluginFirmwareUpdateService","clientBundleService","configService","constructor","loggerFactory","name","runOnce","registerJobOrTask","SERVER_BOOT_TASK","log","run","createConnection","migrateDatabase","e","mongoose","Error","message","includes","error","scheduleDisabledJob","DITokens","bootTask","loadSettings","syncPermissions","syncRoles","isDemoMode","warn","AppConstants","OVERRIDE_IS_DEMO_MODE","createOrUpdateDemoAccount","setLoginRequired","setRegistrationEnabled","loginRequired","get","OVERRIDE_LOGIN_REQUIRED","registrationEnabled","OVERRIDE_REGISTRATION_ENABLED","overrideJwtSecret","OVERRIDE_JWT_SECRET","undefined","overrideJwtExpiresIn","OVERRIDE_JWT_EXPIRES_IN","persistOptionalCredentialSettings","clearUploadsFolder","loadPrinterSockets","loadFilesStore","loadStore","process","env","SAFEMODE_ENABLED","BOOT_TASKS","forEach","task","disableJob","demoUsername","OVERRIDE_DEMO_USERNAME","DEFAULT_DEMO_USERNAME","demoPassword","OVERRIDE_DEMO_PASSWORD","DEFAULT_DEMO_PASSWORD","demoRole","OVERRIDE_DEMO_ROLE","DEFAULT_DEMO_ROLE","adminRole","getRoleByName","demoUserId","getDemoUserId","register","username","password","isDemoUser","isVerified","isRootUser","needsPasswordChange","roles","id","setVerifiedById","setIsRootUserById","updatePasswordUnsafeByUsername","setUserRoleIds","setWizardCompleted","connect","fetchMongoDBConnectionString","serverSelectionTimeoutMS","syncIndexes","runMigrations","connection","db","getClient"],"mappings":";;;;+
|
|
1
|
+
{"version":3,"sources":["../../src/tasks/boot.task.ts"],"names":["BootTask","logger","taskManagerService","serverTasks","settingsStore","settingsService","multerService","printerSocketStore","printerFilesStore","permissionService","roleService","userService","pluginRepositoryCache","floorStore","pluginFirmwareUpdateService","clientBundleService","configService","isTypeormMode","typeormService","constructor","loggerFactory","name","runOnce","registerJobOrTask","SERVER_BOOT_TASK","log","run","createConnection","migrateDatabase","e","mongoose","Error","message","includes","error","scheduleDisabledJob","DITokens","bootTask","loadSettings","syncPermissions","syncRoles","isDemoMode","warn","AppConstants","OVERRIDE_IS_DEMO_MODE","createOrUpdateDemoAccount","setLoginRequired","setRegistrationEnabled","loginRequired","get","OVERRIDE_LOGIN_REQUIRED","registrationEnabled","OVERRIDE_REGISTRATION_ENABLED","overrideJwtSecret","OVERRIDE_JWT_SECRET","undefined","overrideJwtExpiresIn","OVERRIDE_JWT_EXPIRES_IN","persistOptionalCredentialSettings","clearUploadsFolder","loadPrinterSockets","loadFilesStore","loadStore","process","env","SAFEMODE_ENABLED","BOOT_TASKS","forEach","task","disableJob","demoUsername","OVERRIDE_DEMO_USERNAME","DEFAULT_DEMO_USERNAME","demoPassword","OVERRIDE_DEMO_PASSWORD","DEFAULT_DEMO_PASSWORD","demoRole","OVERRIDE_DEMO_ROLE","DEFAULT_DEMO_ROLE","adminRole","getRoleByName","demoUserId","getDemoUserId","register","username","password","isDemoUser","isVerified","isRootUser","needsPasswordChange","roles","id","setVerifiedById","setIsRootUserById","updatePasswordUnsafeByUsername","setUserRoleIds","setWizardCompleted","connect","fetchMongoDBConnectionString","serverSelectionTimeoutMS","syncIndexes","runMigrations","connection","db","getClient"],"mappings":";;;;+BAuBaA;;;eAAAA;;;oDAvBkC;2BACa;iCACnC;iCACI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoBtB,MAAMA;IACXC,OAAsB;IACtBC,mBAAuC;IACvCC,YAAyB;IACzBC,cAA6B;IAC7BC,gBAAkC;IAClCC,cAA6B;IAC7BC,mBAAuC;IACvCC,kBAAqC;IACrCC,kBAAqC;IACrCC,YAAyB;IACzBC,YAAyB;IACzBC,sBAA6C;IAC7CC,WAAuB;IACvBC,4BAAyD;IACzDC,oBAAyC;IACzCC,cAA6B;IAC7BC,cAAuB;IACvBC,eAA+B;IAE/BC,YAAY,EACVC,aAAa,EACbjB,WAAW,EACXE,eAAe,EACfD,aAAa,EACbE,aAAa,EACbC,kBAAkB,EAClBC,iBAAiB,EACjBC,iBAAiB,EACjBC,WAAW,EACXC,WAAW,EACXT,kBAAkB,EAClBU,qBAAqB,EACrBC,UAAU,EACVC,2BAA2B,EAC3BC,mBAAmB,EACnBC,aAAa,EACbE,cAAc,EACdD,aAAa,EAoBd,CAAE;QACD,IAAI,CAACA,aAAa,GAAGA;QACrB,IAAI,CAAChB,MAAM,GAAGmB,cAAcpB,SAASqB,IAAI;QACzC,IAAI,CAAClB,WAAW,GAAGA;QACnB,IAAI,CAACE,eAAe,GAAGA;QACvB,IAAI,CAACD,aAAa,GAAGA;QACrB,IAAI,CAACE,aAAa,GAAGA;QACrB,IAAI,CAACC,kBAAkB,GAAGA;QAC1B,IAAI,CAACC,iBAAiB,GAAGA;QACzB,IAAI,CAACC,iBAAiB,GAAGA;QACzB,IAAI,CAACC,WAAW,GAAGA;QACnB,IAAI,CAACC,WAAW,GAAGA;QACnB,IAAI,CAACT,kBAAkB,GAAGA;QAC1B,IAAI,CAACU,qBAAqB,GAAGA;QAC7B,IAAI,CAACC,UAAU,GAAGA;QAClB,IAAI,CAACC,2BAA2B,GAAGA;QACnC,IAAI,CAACC,mBAAmB,GAAGA;QAC3B,IAAI,CAACC,aAAa,GAAGA;QACrB,IAAI,CAACE,cAAc,GAAGA;IACxB;IAEA,MAAMI,UAAU;QAEd,IAAI,CAACpB,kBAAkB,CAACqB,iBAAiB,CAAC,IAAI,CAACpB,WAAW,CAACqB,gBAAgB;QAE3E,IAAI,CAACvB,MAAM,CAACwB,GAAG,CAAC;QAChB,MAAM,IAAI,CAACC,GAAG;IAChB;IAEA,MAAMA,MAAM;QACV,IAAI,IAAI,CAACT,aAAa,EAAE;YACtB,MAAM,IAAI,CAACC,cAAc,CAACS,gBAAgB;QAC5C,OAAO;YACL,IAAI;gBACF,MAAM,IAAI,CAACA,gBAAgB;gBAC3B,MAAM,IAAI,CAACC,eAAe;YAC5B,EAAE,OAAOC,GAAG;gBACV,IAAIA,aAAaC,iBAAQ,CAACC,KAAK,EAAE;oBAE/B,IAAI,CAACF,EAAEG,OAAO,CAACC,QAAQ,CAAC,sFAAsF;wBAE5G,IAAIJ,EAAEG,OAAO,CAACC,QAAQ,CAAC,iBAAiB;4BACtC,IAAI,CAAChC,MAAM,CAACiC,KAAK,CAAC;wBACpB,OAAO;4BACL,IAAI,CAACjC,MAAM,CAACiC,KAAK,CAAC,CAAC,2BAA2B,EAAEL,EAAEG,OAAO,CAAC,CAAC;wBAC7D;wBACA,IAAI,CAAC9B,kBAAkB,CAACiC,mBAAmB,CAACC,yBAAQ,CAACC,QAAQ,EAAE;wBAC/D;oBACF;gBACF;YACF;QACF;QAEA,IAAI,CAACpC,MAAM,CAACwB,GAAG,CAAC;QAChB,MAAM,IAAI,CAACrB,aAAa,CAACkC,YAAY;QAErC,IAAI,CAACrC,MAAM,CAACwB,GAAG,CAAC;QAChB,MAAM,IAAI,CAAChB,iBAAiB,CAAC8B,eAAe;QAC5C,MAAM,IAAI,CAAC7B,WAAW,CAAC8B,SAAS;QAEhC,MAAMC,aAAa,IAAI,CAACzB,aAAa,CAACyB,UAAU;QAChD,IAAIA,YAAY;YACd,IAAI,CAACxC,MAAM,CAACyC,IAAI,CAAC,CAAC,6BAA6B,EAAEC,6BAAY,CAACC,qBAAqB,CAAC,CAAC;YACrF,MAAM,IAAI,CAACC,yBAAyB;YACpC,IAAI,CAAC5C,MAAM,CAACyC,IAAI,CAAC,CAAC,yDAAyD,EAAEC,6BAAY,CAACC,qBAAqB,CAAC,CAAC;YACjH,MAAM,IAAI,CAACxC,aAAa,CAAC0C,gBAAgB,CAAC;YAC1C,MAAM,IAAI,CAAC1C,aAAa,CAAC2C,sBAAsB,CAAC;QAClD,OAAO;YACL,MAAMC,gBAAgB,IAAI,CAAChC,aAAa,CAACiC,GAAG,CAACN,6BAAY,CAACO,uBAAuB,EAAE;YACnF,IAAIF,kBAAkB,MAAM;gBAC1B,IAAI,CAAC/C,MAAM,CAACyC,IAAI,CAAC,CAAC,8BAA8B,EAAEC,6BAAY,CAACO,uBAAuB,CAAC,CAAC;gBACxF,MAAM,IAAI,CAAC9C,aAAa,CAAC0C,gBAAgB,CAACE,kBAAkB;YAC9D;YAEA,MAAMG,sBAAsB,IAAI,CAACnC,aAAa,CAACiC,GAAG,CAACN,6BAAY,CAACS,6BAA6B,EAAE;YAC/F,IAAID,wBAAwB,MAAM;gBAChC,IAAI,CAAClD,MAAM,CAACyC,IAAI,CAAC,CAAC,oCAAoC,EAAEC,6BAAY,CAACS,6BAA6B,CAAC,CAAC;gBACpG,MAAM,IAAI,CAAChD,aAAa,CAAC2C,sBAAsB,CAACI,wBAAwB;YAC1E;QACF;QAEA,MAAME,oBAAoB,IAAI,CAACrC,aAAa,CAACiC,GAAG,CAACN,6BAAY,CAACW,mBAAmB,EAAEC;QACnF,MAAMC,uBAAuB,IAAI,CAACxC,aAAa,CAACiC,GAAG,CAACN,6BAAY,CAACc,uBAAuB,EAAEF;QAC1F,MAAM,IAAI,CAACnD,aAAa,CAACsD,iCAAiC,CAACL,mBAAmBG;QAE9E,IAAI,CAACvD,MAAM,CAACwB,GAAG,CAAC;QAChB,IAAI,CAACnB,aAAa,CAACqD,kBAAkB;QACrC,IAAI,CAAC1D,MAAM,CAACwB,GAAG,CAAC;QAChB,MAAM,IAAI,CAAClB,kBAAkB,CAACqD,kBAAkB;QAChD,IAAI,CAAC3D,MAAM,CAACwB,GAAG,CAAC;QAChB,MAAM,IAAI,CAACjB,iBAAiB,CAACqD,cAAc;QAC3C,IAAI,CAAC5D,MAAM,CAACwB,GAAG,CAAC;QAChB,MAAM,IAAI,CAACZ,UAAU,CAACiD,SAAS;QAE/B,IAAIC,QAAQC,GAAG,CAACC,gBAAgB,KAAK,QAAQ;YAC3C,IAAI,CAAChE,MAAM,CAACyC,IAAI,CAAC;QACnB,OAAO;YACL,IAAI,CAACvC,WAAW,CAAC+D,UAAU,CAACC,OAAO,CAAC,CAACC;gBACnC,IAAI,CAAClE,kBAAkB,CAACqB,iBAAiB,CAAC6C;YAC5C;QACF;QAGA,IAAI,CAAClE,kBAAkB,CAACmE,UAAU,CAACjC,yBAAQ,CAACC,QAAQ,EAAE;IACxD;IAEA,MAAMQ,4BAA4B;QAChC,MAAMyB,eAAe,IAAI,CAACtD,aAAa,CAACiC,GAAG,CAACN,6BAAY,CAAC4B,sBAAsB,EAAE5B,6BAAY,CAAC6B,qBAAqB;QACnH,MAAMC,eAAe,IAAI,CAACzD,aAAa,CAACiC,GAAG,CAACN,6BAAY,CAAC+B,sBAAsB,EAAE/B,6BAAY,CAACgC,qBAAqB;QACnH,MAAMC,WAAW,IAAI,CAAC5D,aAAa,CAACiC,GAAG,CAACN,6BAAY,CAACkC,kBAAkB,EAAElC,6BAAY,CAACmC,iBAAiB;QACvG,MAAMC,YAAY,IAAI,CAACrE,WAAW,CAACsE,aAAa,CAACJ;QAEjD,MAAMK,aAAa,MAAM,IAAI,CAACtE,WAAW,CAACuE,aAAa;QACvD,IAAI,CAACD,YAAY;YACf,MAAM,IAAI,CAACtE,WAAW,CAACwE,QAAQ,CAAC;gBAC9BC,UAAUd;gBACVe,UAAUZ;gBACVa,YAAY;gBACZC,YAAY;gBACZC,YAAY;gBACZC,qBAAqB;gBACrBC,OAAO;oBAACX,UAAUY,EAAE;iBAAC;YACvB;YACA,IAAI,CAAC1F,MAAM,CAACwB,GAAG,CAAC;QAClB,OAAO;YACL,MAAM,IAAI,CAACd,WAAW,CAACiF,eAAe,CAACX,YAAY;YACnD,MAAM,IAAI,CAACtE,WAAW,CAACkF,iBAAiB,CAACZ,YAAY;YACrD,MAAM,IAAI,CAACtE,WAAW,CAACmF,8BAA8B,CAACxB,cAAcG;YACpE,MAAM,IAAI,CAAC9D,WAAW,CAACoF,cAAc,CAACd,YAAY;gBAACF,UAAUY,EAAE;aAAC;YAChE,IAAI,CAAC1F,MAAM,CAACwB,GAAG,CAAC;QAClB;QAEA,MAAM,IAAI,CAACrB,aAAa,CAAC4F,kBAAkB,CAAC;IAC9C;IAEA,MAAMrE,mBAAmB;QACvB,IAAI,IAAI,CAACV,aAAa,EAAE;YACtB,MAAMgF,IAAAA,iBAAO,EAACC,IAAAA,uCAA4B,KAAI;gBAC5CC,0BAA0B;YAC5B;YACA,MAAMC,IAAAA,qBAAW;QACnB;IACF;IAEA,MAAMxE,kBAAkB;QACtB,IAAI,IAAI,CAACX,aAAa,EAAE;YACtB,MAAMoF,IAAAA,wBAAa,EAACvE,iBAAQ,CAACwE,UAAU,CAACC,EAAE,EAAEzE,iBAAQ,CAACwE,UAAU,CAACE,SAAS;QAC3E;IACF;AACF"}
|
|
@@ -11,16 +11,17 @@ Object.defineProperty(exports, "PrintCompletionSocketIoTask", {
|
|
|
11
11
|
const _eventconstants = require("../constants/event.constants");
|
|
12
12
|
const _octoprintwebsocketconstants = require("../services/octoprint/constants/octoprint-websocket.constants");
|
|
13
13
|
const _correlationtokenutil = require("../utils/correlation-token.util");
|
|
14
|
-
const _socketiogateway = require("../state/socket-io.gateway");
|
|
15
14
|
class PrintCompletionSocketIoTask {
|
|
16
15
|
eventEmitter2;
|
|
17
16
|
socketIoGateway;
|
|
18
17
|
logger;
|
|
18
|
+
printerEventsCache;
|
|
19
19
|
printCompletionService;
|
|
20
20
|
contextCache = {};
|
|
21
|
-
constructor({ eventEmitter2, socketIoGateway, printCompletionService, loggerFactory }){
|
|
21
|
+
constructor({ eventEmitter2, socketIoGateway, printCompletionService, printerEventsCache, loggerFactory }){
|
|
22
22
|
this.eventEmitter2 = eventEmitter2;
|
|
23
23
|
this.socketIoGateway = socketIoGateway;
|
|
24
|
+
this.printerEventsCache = printerEventsCache;
|
|
24
25
|
this.printCompletionService = printCompletionService;
|
|
25
26
|
this.logger = loggerFactory(PrintCompletionSocketIoTask.name);
|
|
26
27
|
let that = this;
|
|
@@ -31,46 +32,54 @@ class PrintCompletionSocketIoTask {
|
|
|
31
32
|
get contexts() {
|
|
32
33
|
return this.contextCache;
|
|
33
34
|
}
|
|
34
|
-
async handleMessage(fdmEvent,
|
|
35
|
-
const printerId =
|
|
35
|
+
async handleMessage(fdmEvent, data) {
|
|
36
|
+
const printerId = data.printerId;
|
|
36
37
|
if (!printerId) {
|
|
37
38
|
this.logger.log(`Skipping print completion log for FDM event ${fdmEvent}`);
|
|
38
39
|
}
|
|
39
|
-
if (
|
|
40
|
+
if (data.event !== "event") {
|
|
40
41
|
return;
|
|
41
42
|
}
|
|
42
|
-
this.socketIoGateway.send(_socketiogateway.IO_MESSAGES.CompletionEvent, JSON.stringify({
|
|
43
|
-
fdmEvent,
|
|
44
|
-
octoPrintEvent,
|
|
45
|
-
data
|
|
46
|
-
}));
|
|
47
43
|
const completion = {
|
|
48
|
-
status: data.type,
|
|
49
|
-
fileName: data.payload?.name,
|
|
44
|
+
status: data.payload.type,
|
|
45
|
+
fileName: data.payload?.payload?.name,
|
|
50
46
|
createdAt: Date.now(),
|
|
51
47
|
completionLog: data.payload?.error,
|
|
52
48
|
printerId,
|
|
53
|
-
context: {
|
|
49
|
+
context: {
|
|
50
|
+
correlationId: null
|
|
51
|
+
}
|
|
54
52
|
};
|
|
55
|
-
if (data.type === _octoprintwebsocketconstants.EVENT_TYPES.EStop || data.type === _octoprintwebsocketconstants.EVENT_TYPES.PrintCancelling || data.type === _octoprintwebsocketconstants.EVENT_TYPES.PrintCancelled || data.type === _octoprintwebsocketconstants.EVENT_TYPES.Home || data.type === _octoprintwebsocketconstants.EVENT_TYPES.TransferStarted || data.type === _octoprintwebsocketconstants.EVENT_TYPES.TransferDone || data.type === _octoprintwebsocketconstants.EVENT_TYPES.Disconnecting || data.type === _octoprintwebsocketconstants.EVENT_TYPES.Disconnected || data.type === _octoprintwebsocketconstants.EVENT_TYPES.MetadataAnalysisStarted || data.type === _octoprintwebsocketconstants.EVENT_TYPES.MetadataAnalysisFinished || data.type === _octoprintwebsocketconstants.EVENT_TYPES.Error) {
|
|
53
|
+
if (data.payload.type === _octoprintwebsocketconstants.EVENT_TYPES.EStop || data.payload.type === _octoprintwebsocketconstants.EVENT_TYPES.PrintCancelling || data.payload.type === _octoprintwebsocketconstants.EVENT_TYPES.PrintCancelled || data.payload.type === _octoprintwebsocketconstants.EVENT_TYPES.Home || data.payload.type === _octoprintwebsocketconstants.EVENT_TYPES.TransferStarted || data.payload.type === _octoprintwebsocketconstants.EVENT_TYPES.TransferDone || data.payload.type === _octoprintwebsocketconstants.EVENT_TYPES.Disconnecting || data.payload.type === _octoprintwebsocketconstants.EVENT_TYPES.Disconnected || data.payload.type === _octoprintwebsocketconstants.EVENT_TYPES.MetadataAnalysisStarted || data.payload.type === _octoprintwebsocketconstants.EVENT_TYPES.MetadataAnalysisFinished || data.payload.type === _octoprintwebsocketconstants.EVENT_TYPES.Error) {
|
|
56
54
|
this.contextCache[printerId] = {
|
|
57
55
|
...this.contextCache[printerId],
|
|
58
|
-
[data.type]: completion
|
|
56
|
+
[data.payload.type]: completion
|
|
59
57
|
};
|
|
58
|
+
if (data.payload.type === _octoprintwebsocketconstants.EVENT_TYPES.Disconnecting || data.payload.type === _octoprintwebsocketconstants.EVENT_TYPES.Disconnected) {
|
|
59
|
+
await this.printerEventsCache.setSubstate(printerId, "current", "state", {
|
|
60
|
+
text: data.payload.type,
|
|
61
|
+
flags: {
|
|
62
|
+
operational: false,
|
|
63
|
+
printing: false,
|
|
64
|
+
ready: false,
|
|
65
|
+
closedOrError: true,
|
|
66
|
+
error: false
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
}
|
|
60
70
|
const corrId = this.contextCache[printerId].correlationId;
|
|
61
71
|
await this.printCompletionService.updateContext(corrId, this.contextCache[printerId]);
|
|
62
72
|
return;
|
|
63
73
|
}
|
|
64
|
-
if (data.type === _octoprintwebsocketconstants.EVENT_TYPES.PrintStarted) {
|
|
74
|
+
if (data.payload.type === _octoprintwebsocketconstants.EVENT_TYPES.PrintStarted) {
|
|
65
75
|
const token = (0, _correlationtokenutil.generateCorrelationToken)();
|
|
66
76
|
this.contextCache[printerId] = {
|
|
67
77
|
correlationId: token
|
|
68
78
|
};
|
|
69
|
-
completion.correlationId = token;
|
|
70
79
|
completion.context = this.contextCache[printerId];
|
|
71
80
|
await this.printCompletionService.create(completion);
|
|
72
|
-
} else if (data.type === _octoprintwebsocketconstants.EVENT_TYPES.PrintFailed || data.type === _octoprintwebsocketconstants.EVENT_TYPES.PrintDone) {
|
|
73
|
-
completion.context = this.contextCache[printerId]
|
|
81
|
+
} else if (data.payload.type === _octoprintwebsocketconstants.EVENT_TYPES.PrintFailed || data.payload.type === _octoprintwebsocketconstants.EVENT_TYPES.PrintDone) {
|
|
82
|
+
completion.context = this.contextCache[printerId];
|
|
74
83
|
await this.printCompletionService.create(completion);
|
|
75
84
|
this.eventEmitter2.emit((0, _eventconstants.fdmMonsterPrinterStoppedEvent)(printerId));
|
|
76
85
|
this.contextCache[printerId] = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/tasks/print-completion.socketio.task.ts"],"names":["PrintCompletionSocketIoTask","eventEmitter2","socketIoGateway","logger","printCompletionService","contextCache","constructor","loggerFactory","name","that","on","octoPrintWebsocketEvent","octoPrintEvent","data","handleMessage","event","contexts","fdmEvent","printerId","
|
|
1
|
+
{"version":3,"sources":["../../src/tasks/print-completion.socketio.task.ts"],"names":["PrintCompletionSocketIoTask","eventEmitter2","socketIoGateway","logger","printerEventsCache","printCompletionService","contextCache","constructor","loggerFactory","name","that","on","octoPrintWebsocketEvent","octoPrintEvent","data","handleMessage","event","contexts","fdmEvent","printerId","log","completion","status","payload","type","fileName","createdAt","Date","now","completionLog","error","context","correlationId","EVENT_TYPES","EStop","PrintCancelling","PrintCancelled","Home","TransferStarted","TransferDone","Disconnecting","Disconnected","MetadataAnalysisStarted","MetadataAnalysisFinished","Error","setSubstate","text","flags","operational","printing","ready","closedOrError","corrId","updateContext","PrintStarted","token","generateCorrelationToken","create","PrintFailed","PrintDone","emit","fdmMonsterPrinterStoppedEvent","run","loadPrintContexts"],"mappings":"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"}
|
|
@@ -36,6 +36,20 @@ class PrinterFileCleanTask {
|
|
|
36
36
|
} else {
|
|
37
37
|
this.logger.log(`Reporting about old files of ${printers.length} printers.`);
|
|
38
38
|
}
|
|
39
|
+
const errorPrinters = [];
|
|
40
|
+
for (let printer of printers){
|
|
41
|
+
try {
|
|
42
|
+
await this.printerFilesStore.eagerLoadPrinterFiles(printer.id, false);
|
|
43
|
+
} catch (e) {
|
|
44
|
+
errorPrinters.push({
|
|
45
|
+
e,
|
|
46
|
+
printer
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
if (errorPrinters.length > 0) {
|
|
51
|
+
this.logger.error(`Error loading some files, ${errorPrinters.length} printer(s) (${errorPrinters.map((ep)=>`${ep.printer.name} ${ep.e.toString()}`)}) did not respond or returned an unexpected status code. Those will depend on previously cached files.`);
|
|
52
|
+
}
|
|
39
53
|
for (let printer of printers){
|
|
40
54
|
const outdatedFiles = this.getPrinterOutdatedFiles(printer);
|
|
41
55
|
if (!outdatedFiles?.length) continue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/tasks/printer-file-clean.task.ts"],"names":["PrinterFileCleanTask","logger","printerFilesStore","printerCache","settingsStore","taskManagerService","octoPrintApiService","constructor","loggerFactory","name","ageDaysMaxSetting","getSettings","autoRemoveOldFilesCriteriumDays","run","printers","listCachedPrinters","fileCleanSettings","autoCleanAtBootEnabled","autoRemoveOldFilesAtBoot","log","length","printer","
|
|
1
|
+
{"version":3,"sources":["../../src/tasks/printer-file-clean.task.ts"],"names":["PrinterFileCleanTask","logger","printerFilesStore","printerCache","settingsStore","taskManagerService","octoPrintApiService","constructor","loggerFactory","name","ageDaysMaxSetting","getSettings","autoRemoveOldFilesCriteriumDays","run","printers","listCachedPrinters","fileCleanSettings","autoCleanAtBootEnabled","autoRemoveOldFilesAtBoot","log","length","errorPrinters","printer","eagerLoadPrinterFiles","id","e","push","error","map","ep","toString","outdatedFiles","getPrinterOutdatedFiles","cleanPrinterFiles","printerId","deleteOutdatedFiles","ageDaysMax","getOutdatedFiles","getFileCleanSettings"],"mappings":";;;;+BAcaA;;;eAAAA;;;AAAN,MAAMA;IACXC,OAAsB;IACtBC,kBAAqC;IACrCC,aAA2B;IAC3BC,cAA6B;IAC7BC,mBAAuC;IACvCC,oBAAyC;IAEzCC,YAAY,EACVJ,YAAY,EACZD,iBAAiB,EACjBI,mBAAmB,EACnBD,kBAAkB,EAClBD,aAAa,EACbI,aAAa,EAQd,CAAE;QACD,IAAI,CAACL,YAAY,GAAGA;QACpB,IAAI,CAACD,iBAAiB,GAAGA;QACzB,IAAI,CAACG,kBAAkB,GAAGA;QAC1B,IAAI,CAACC,mBAAmB,GAAGA;QAC3B,IAAI,CAACF,aAAa,GAAGA;QACrB,IAAI,CAACH,MAAM,GAAGO,cAAcR,qBAAqBS,IAAI;IACvD;IAEA,IAAYC,oBAAoB;QAC9B,OAAO,IAAI,CAACC,WAAW,GAAGC,+BAA+B;IAC3D;IAEA,MAAMC,MAAM;QACV,MAAMC,WAAW,MAAM,IAAI,CAACX,YAAY,CAACY,kBAAkB,CAAC;QAC5D,MAAMC,oBAAoB,IAAI,CAACL,WAAW;QAC1C,MAAMM,yBAAyBD,kBAAkBE,wBAAwB;QAEzE,IAAI;YACF,IAAID,wBAAwB;gBAC1B,IAAI,CAAChB,MAAM,CAACkB,GAAG,CAAC,CAAC,kBAAkB,EAAEL,SAASM,MAAM,CAAC,6DAA6D,CAAC;YACrH,OAAO;gBACL,IAAI,CAACnB,MAAM,CAACkB,GAAG,CAAC,CAAC,6BAA6B,EAAEL,SAASM,MAAM,CAAC,UAAU,CAAC;YAC7E;YAEA,MAAMC,gBAAgB,EAAE;YACxB,KAAK,IAAIC,WAAWR,SAAU;gBAC5B,IAAI;oBACF,MAAM,IAAI,CAACZ,iBAAiB,CAACqB,qBAAqB,CAACD,QAAQE,EAAE,EAAE;gBACjE,EAAE,OAAOC,GAAG;oBACVJ,cAAcK,IAAI,CAAC;wBAAED;wBAAGH;oBAAQ;gBAClC;YACF;YACA,IAAID,cAAcD,MAAM,GAAG,GAAG;gBAC5B,IAAI,CAACnB,MAAM,CAAC0B,KAAK,CACf,CAAC,0BAA0B,EAAEN,cAAcD,MAAM,CAAC,aAAa,EAAEC,cAAcO,GAAG,CAChF,CAACC,KAAO,CAAC,EAAEA,GAAGP,OAAO,CAACb,IAAI,CAAC,CAAC,EAAEoB,GAAGJ,CAAC,CAACK,QAAQ,GAAG,CAAC,EAC/C,sGAAsG,CAAC;YAE7G;YAGA,KAAK,IAAIR,WAAWR,SAAU;gBAC5B,MAAMiB,gBAAgB,IAAI,CAACC,uBAAuB,CAACV;gBACnD,IAAI,CAACS,eAAeX,QAAQ;gBAG5B,IAAI,CAACnB,MAAM,CAACkB,GAAG,CAAC,CAAC,MAAM,EAAEY,eAAeX,OAAO,cAAc,EAAEE,QAAQb,IAAI,CAAC,CAAC;gBAE7E,IAAIQ,wBAAwB;oBAC1B,MAAM,IAAI,CAACgB,iBAAiB,CAACX,QAAQE,EAAE;gBACzC;YACF;QACF,SAAU;YACR,IAAI,CAACvB,MAAM,CAACkB,GAAG,CAAC,CAAC,mCAAmC,CAAC;QACvD;IACF;IAEA,MAAMc,kBAAkBC,SAAiB,EAAE;QAEzC,MAAM,IAAI,CAAChC,iBAAiB,CAACiC,mBAAmB,CAACD,WAAW,IAAI,CAACxB,iBAAiB;QAGlF,MAAM,IAAI,CAACR,iBAAiB,CAACqB,qBAAqB,CAACW,WAAW;IAChE;IAMAF,wBAAwBV,OAA2B,EAAE;QACnD,MAAMc,aAAa,IAAI,CAAC1B,iBAAiB;QACzC,OAAO,IAAI,CAACR,iBAAiB,CAACmC,gBAAgB,CAACf,QAAQE,EAAE,EAAEY;IAC7D;IAEQzB,cAAc;QACpB,OAAO,IAAI,CAACP,aAAa,CAACkC,oBAAoB;IAChD;AACF"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "PrinterStateUpdatePollTask", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return PrinterStateUpdatePollTask;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _nodefs = require("node:fs");
|
|
12
|
+
const _serverconstants = require("../server.constants");
|
|
13
|
+
class PrinterStateUpdatePollTask {
|
|
14
|
+
printerCache;
|
|
15
|
+
printerConnectionCache;
|
|
16
|
+
printerEventsCache;
|
|
17
|
+
settingsStore;
|
|
18
|
+
configService;
|
|
19
|
+
octoPrintApiService;
|
|
20
|
+
taskManagerService;
|
|
21
|
+
logger;
|
|
22
|
+
constructor({ printerCache, printerConnectionCache, printerEventsCache, octoPrintApiService, settingsStore, configService, taskManagerService, loggerFactory }){
|
|
23
|
+
this.printerCache = printerCache;
|
|
24
|
+
this.printerConnectionCache = printerConnectionCache;
|
|
25
|
+
this.printerEventsCache = printerEventsCache;
|
|
26
|
+
this.settingsStore = settingsStore;
|
|
27
|
+
this.configService = configService;
|
|
28
|
+
this.octoPrintApiService = octoPrintApiService;
|
|
29
|
+
this.taskManagerService = taskManagerService;
|
|
30
|
+
this.logger = loggerFactory(PrinterStateUpdatePollTask.name);
|
|
31
|
+
}
|
|
32
|
+
async run() {
|
|
33
|
+
const startTime = Date.now();
|
|
34
|
+
const disabledPrintersCount = await this.printerCache.countDisabledPrinters();
|
|
35
|
+
const printers = await this.printerCache.listCachedPrinters(false);
|
|
36
|
+
const promisesStateUpdate = [];
|
|
37
|
+
let failures = 0;
|
|
38
|
+
let operational = 0;
|
|
39
|
+
let disconnected = 0;
|
|
40
|
+
let offlineAfterError = 0;
|
|
41
|
+
let printing = 0;
|
|
42
|
+
let paused = 0;
|
|
43
|
+
for (const printer of printers){
|
|
44
|
+
const login = this.printerCache.getLoginDto(printer.id);
|
|
45
|
+
try {
|
|
46
|
+
const promise = await this.octoPrintApiService.getConnection(login).then(async (connection)=>{
|
|
47
|
+
await this.printerConnectionCache.setPrinterConnection(printer.id, connection);
|
|
48
|
+
if (this._isDebugMode()) {
|
|
49
|
+
(0, _nodefs.writeFileSync)(`printer_connection_${printer.id}.txt`, JSON.stringify(connection, null, 2));
|
|
50
|
+
}
|
|
51
|
+
const current = await this.octoPrintApiService.getPrinterCurrent(login, false, null, [
|
|
52
|
+
"sd",
|
|
53
|
+
"temperature"
|
|
54
|
+
]).catch(async (e)=>{
|
|
55
|
+
if (e.isAxiosError) {
|
|
56
|
+
const castError = e;
|
|
57
|
+
if (castError?.response?.status == 409) {
|
|
58
|
+
await this.printerEventsCache.setSubstate(printer.id, "current", "state", {});
|
|
59
|
+
disconnected += 1;
|
|
60
|
+
return null;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
throw e;
|
|
64
|
+
});
|
|
65
|
+
if (!current) return;
|
|
66
|
+
if (this._isDebugMode()) {
|
|
67
|
+
(0, _nodefs.writeFileSync)(`printer_current_${printer.id}.txt`, JSON.stringify(current, null, 2));
|
|
68
|
+
}
|
|
69
|
+
const currentState = current.state;
|
|
70
|
+
operational += currentState?.flags.operational ? 1 : 0;
|
|
71
|
+
disconnected += currentState?.flags.closedOrError ? 1 : 0;
|
|
72
|
+
printing += currentState?.flags.printing ? 1 : 0;
|
|
73
|
+
paused += currentState?.flags.paused ? 1 : 0;
|
|
74
|
+
await this.printerEventsCache.setSubstate(printer.id, "current", "state", current);
|
|
75
|
+
});
|
|
76
|
+
promisesStateUpdate.push(promise);
|
|
77
|
+
} catch (e) {
|
|
78
|
+
failures++;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
await Promise.all(promisesStateUpdate);
|
|
82
|
+
this.logger.log(`Printer state updates (total: ${printers.length}, failed: ${failures}, disabled: ${disabledPrintersCount}, operational: ${operational}, disconnected: ${disconnected}, offlineAfterError: ${offlineAfterError}, printing: ${printing}, paused: ${paused}) completed (${Date.now() - startTime}ms)`);
|
|
83
|
+
}
|
|
84
|
+
_isDebugMode() {
|
|
85
|
+
return this.configService.get(_serverconstants.AppConstants.debugFileWritePrinterStatesKey, _serverconstants.AppConstants.defaultDebugFileWritePrinterStates) === "true";
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
//# sourceMappingURL=printer-state-update-poll.task.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/tasks/printer-state-update-poll.task.ts"],"names":["PrinterStateUpdatePollTask","printerCache","printerConnectionCache","printerEventsCache","settingsStore","configService","octoPrintApiService","taskManagerService","logger","constructor","loggerFactory","name","run","startTime","Date","now","disabledPrintersCount","countDisabledPrinters","printers","listCachedPrinters","promisesStateUpdate","failures","operational","disconnected","offlineAfterError","printing","paused","printer","login","getLoginDto","id","promise","getConnection","then","connection","setPrinterConnection","_isDebugMode","writeFileSync","JSON","stringify","current","getPrinterCurrent","catch","e","isAxiosError","castError","response","status","setSubstate","currentState","state","flags","closedOrError","push","Promise","all","log","length","get","AppConstants","debugFileWritePrinterStatesKey","defaultDebugFileWritePrinterStates"],"mappings":"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"}
|
|
@@ -31,17 +31,18 @@ class PrinterWebsocketRestoreTask {
|
|
|
31
31
|
if (socket.isClosedOrAborted()) {
|
|
32
32
|
socket.close();
|
|
33
33
|
socket.resetSocketState();
|
|
34
|
+
this.logger.warn("Socket was closed or aborted, manually removing it");
|
|
34
35
|
resetAdapterIds.push(socket.printerId);
|
|
35
36
|
continue;
|
|
36
37
|
}
|
|
37
38
|
} catch (e) {
|
|
38
|
-
this.logger.error(`WebSocket
|
|
39
|
+
this.logger.error(`Resetting WebSocket socket failed for '${socket.printerId}' with error '${(0, _errorutils.errorSummary)(e)}'`, e.stack);
|
|
39
40
|
continue;
|
|
40
41
|
}
|
|
41
42
|
if (socket.apiState !== _octoprintsockioadapter.API_STATE.unset && !socket.lastMessageReceivedTimestamp || Date.now() - socket.lastMessageReceivedTimestamp > 10 * 1000) {
|
|
43
|
+
const result = await this.octoPrintApiService.getConnection(socket.loginDto);
|
|
42
44
|
silentSocketIds.push(socket.printerId);
|
|
43
45
|
try {
|
|
44
|
-
const result = await this.octoPrintApiService.getConnection(socket.loginDto);
|
|
45
46
|
if (result?.current?.state !== "Closed") {
|
|
46
47
|
this.logger.warn(`Silence was detected, but the OctoPrint current connection was not closed. Connection state ${result?.current?.state}, printerId: ${socket.printerId}.`);
|
|
47
48
|
}
|
|
@@ -51,7 +52,7 @@ class PrinterWebsocketRestoreTask {
|
|
|
51
52
|
}
|
|
52
53
|
}
|
|
53
54
|
const duration = Date.now() - startTime;
|
|
54
|
-
if (this.settingsStore.
|
|
55
|
+
if (this.settingsStore.getSettingsSensitive()?.server?.debugSettings.debugSocketRetries) {
|
|
55
56
|
this.logger.log(`Reset ${resetAdapterIds.length} closed/aborted sockets and detected ${silentSocketIds.length} silent sockets (duration ${duration}ms)`);
|
|
56
57
|
}
|
|
57
58
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/tasks/printer-websocket-restore.task.ts"],"names":["PrinterWebsocketRestoreTask","settingsStore","printerSocketStore","octoPrintApiService","logger","constructor","loggerFactory","name","run","startTime","Date","now","existingSockets","listPrinterSockets","resetAdapterIds","silentSocketIds","socket","isClosedOrAborted","close","resetSocketState","push","printerId","e","error","errorSummary","stack","apiState","API_STATE","unset","lastMessageReceivedTimestamp","result","getConnection","loginDto","current","state","
|
|
1
|
+
{"version":3,"sources":["../../src/tasks/printer-websocket-restore.task.ts"],"names":["PrinterWebsocketRestoreTask","settingsStore","printerSocketStore","octoPrintApiService","logger","constructor","loggerFactory","name","run","startTime","Date","now","existingSockets","listPrinterSockets","resetAdapterIds","silentSocketIds","socket","isClosedOrAborted","close","resetSocketState","warn","push","printerId","e","error","errorSummary","stack","apiState","API_STATE","unset","lastMessageReceivedTimestamp","result","getConnection","loginDto","current","state","duration","getSettingsSensitive","server","debugSettings","debugSocketRetries","log","length"],"mappings":";;;;+BAQaA;;;eAAAA;;;4BARgB;wCACH;AAOnB,MAAMA;IACXC,cAA6B;IAC7BC,mBAAuC;IACvCC,oBAAyC;IACzCC,OAAsB;IAEtBC,YAAY,EACVH,kBAAkB,EAClBC,mBAAmB,EACnBF,aAAa,EACbK,aAAa,EAMd,CAAE;QACD,IAAI,CAACJ,kBAAkB,GAAGA;QAC1B,IAAI,CAACC,mBAAmB,GAAGA;QAC3B,IAAI,CAACF,aAAa,GAAGA;QACrB,IAAI,CAACG,MAAM,GAAGE,cAAcN,4BAA4BO,IAAI;IAC9D;IAEA,MAAMC,MAAM;QACV,MAAMC,YAAYC,KAAKC,GAAG;QAE1B,MAAMC,kBAAkB,IAAI,CAACV,kBAAkB,CAACW,kBAAkB;QAClE,MAAMC,kBAAkB,EAAE;QAC1B,MAAMC,kBAAkB,EAAE;QAC1B,KAAK,MAAMC,UAAUJ,gBAAiB;YACpC,IAAI;gBACF,IAAII,OAAOC,iBAAiB,IAAI;oBAC9BD,OAAOE,KAAK;oBACZF,OAAOG,gBAAgB;oBACvB,IAAI,CAACf,MAAM,CAACgB,IAAI,CAAC;oBACjBN,gBAAgBO,IAAI,CAACL,OAAOM,SAAS;oBACrC;gBACF;YACF,EAAE,OAAOC,GAAQ;gBACf,IAAI,CAACnB,MAAM,CAACoB,KAAK,CAAC,CAAC,uCAAuC,EAAER,OAAOM,SAAS,CAAC,cAAc,EAAEG,IAAAA,wBAAY,EAACF,GAAG,CAAC,CAAC,EAAEA,EAAEG,KAAK;gBACxH;YACF;YAGA,IACE,AAACV,OAAOW,QAAQ,KAAKC,iCAAS,CAACC,KAAK,IAAI,CAACb,OAAOc,4BAA4B,IAC5EpB,KAAKC,GAAG,KAAKK,OAAOc,4BAA4B,GAAG,KAAK,MACxD;gBACA,MAAMC,SAAS,MAAM,IAAI,CAAC5B,mBAAmB,CAAC6B,aAAa,CAAChB,OAAOiB,QAAQ;gBAE3ElB,gBAAgBM,IAAI,CAACL,OAAOM,SAAS;gBAErC,IAAI;oBACF,IAAIS,QAAQG,SAASC,UAAU,UAAU;wBACvC,IAAI,CAAC/B,MAAM,CAACgB,IAAI,CACd,CAAC,4FAA4F,EAAEW,QAAQG,SAASC,MAAM,aAAa,EAAEnB,OAAOM,SAAS,CAAC,CAAC,CAAC;oBAE5J;gBACF,EAAE,OAAOC,GAAG;oBACV,IAAI,CAACnB,MAAM,CAACoB,KAAK,CACf,CAAC,uFAAuF,EAAER,OAAOM,SAAS,CAAC,CAAC,CAAC;gBAEjH;YACF;QACF;QAEA,MAAMc,WAAW1B,KAAKC,GAAG,KAAKF;QAC9B,IAAI,IAAI,CAACR,aAAa,CAACoC,oBAAoB,IAAIC,QAAQC,cAAcC,oBAAoB;YACvF,IAAI,CAACpC,MAAM,CAACqC,GAAG,CACb,CAAC,MAAM,EAAE3B,gBAAgB4B,MAAM,CAAC,qCAAqC,EAAE3B,gBAAgB2B,MAAM,CAAC,0BAA0B,EAAEN,SAAS,GAAG,CAAC;QAE3I;IACF;AACF"}
|
|
@@ -24,7 +24,7 @@ class PrinterWebsocketTask {
|
|
|
24
24
|
async run() {
|
|
25
25
|
const startTime = Date.now();
|
|
26
26
|
const result = await this.printerSocketStore.reconnectPrinterSockets();
|
|
27
|
-
if (this.settingsStore.
|
|
27
|
+
if (this.settingsStore.getDebugSettingsSensitive()?.debugSocketReconnect) {
|
|
28
28
|
this.logger.log(`Socket reconnect (${Date.now() - startTime}ms)`, result);
|
|
29
29
|
}
|
|
30
30
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/tasks/printer-websocket.task.ts"],"names":["PrinterWebsocketTask","printerSocketStore","settingsStore","octoPrintApiService","taskManagerService","logger","constructor","loggerFactory","name","run","startTime","Date","now","result","reconnectPrinterSockets","
|
|
1
|
+
{"version":3,"sources":["../../src/tasks/printer-websocket.task.ts"],"names":["PrinterWebsocketTask","printerSocketStore","settingsStore","octoPrintApiService","taskManagerService","logger","constructor","loggerFactory","name","run","startTime","Date","now","result","reconnectPrinterSockets","getDebugSettingsSensitive","debugSocketReconnect","log"],"mappings":";;;;+BAOaA;;;eAAAA;;;AAAN,MAAMA;IACXC,mBAAuC;IACvCC,cAA6B;IAC7BC,oBAAyC;IACzCC,mBAAuC;IAEvCC,OAAsB;IAEtBC,YAAY,EACVL,kBAAkB,EAClBE,mBAAmB,EACnBD,aAAa,EACbE,kBAAkB,EAClBG,aAAa,EAOd,CAAE;QACD,IAAI,CAACN,kBAAkB,GAAGA;QAC1B,IAAI,CAACC,aAAa,GAAGA;QACrB,IAAI,CAACC,mBAAmB,GAAGA;QAC3B,IAAI,CAACC,kBAAkB,GAAGA;QAC1B,IAAI,CAACC,MAAM,GAAGE,cAAcP,qBAAqBQ,IAAI;IACvD;IAEA,MAAMC,MAAM;QACV,MAAMC,YAAYC,KAAKC,GAAG;QAC1B,MAAMC,SAAS,MAAM,IAAI,CAACZ,kBAAkB,CAACa,uBAAuB;QACpE,IAAI,IAAI,CAACZ,aAAa,CAACa,yBAAyB,IAAIC,sBAAsB;YACxE,IAAI,CAACX,MAAM,CAACY,GAAG,CAAC,CAAC,kBAAkB,EAAEN,KAAKC,GAAG,KAAKF,UAAU,GAAG,CAAC,EAAEG;QACpE;IACF;AACF"}
|
package/dist/tasks.js
CHANGED
|
@@ -23,7 +23,7 @@ function registerTask(task, preset, milliseconds = 0, runImmediately = false) {
|
|
|
23
23
|
...preset
|
|
24
24
|
};
|
|
25
25
|
timingPreset.milliseconds = preset.milliseconds || milliseconds;
|
|
26
|
-
timingPreset.runImmediately = runImmediately
|
|
26
|
+
timingPreset.runImmediately = runImmediately || false;
|
|
27
27
|
return {
|
|
28
28
|
id: task.name || task,
|
|
29
29
|
task,
|
|
@@ -39,6 +39,7 @@ class ServerTasks {
|
|
|
39
39
|
registerTask(_containertokens.DITokens.printCompletionSocketIoTask, _taskpresets.TASK_PRESETS.RUNONCE),
|
|
40
40
|
registerTask(_containertokens.DITokens.printerFileCleanTask, _taskpresets.TASK_PRESETS.RUNONCE, 60 * 1000, true),
|
|
41
41
|
registerTask(_containertokens.DITokens.printerWebsocketTask, _taskpresets.TASK_PRESETS.PERIODIC, 2000, true),
|
|
42
|
+
registerTask(_containertokens.DITokens.printerStateUpdatePollTask, _taskpresets.TASK_PRESETS.PERIODIC, 10 * 1000, true),
|
|
42
43
|
registerTask(_containertokens.DITokens.printerWebsocketRestoreTask, _taskpresets.TASK_PRESETS.PERIODIC, 15 * 1000, false)
|
|
43
44
|
];
|
|
44
45
|
}
|
package/dist/tasks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/tasks.ts"],"names":["ServerTasks","registerTask","task","preset","milliseconds","runImmediately","timingPreset","id","name","SERVER_BOOT_TASK","DITokens","bootTask","TaskPresets","PERIODIC_DISABLED","BOOT_TASKS","softwareUpdateTask","RUNDELAYED","clientDistDownloadTask","RUNONCE","socketIoTask","PERIODIC","printCompletionSocketIoTask","printerFileCleanTask","printerWebsocketTask","printerWebsocketRestoreTask"],"mappings":";;;;;;;;;;;IAsBaA,WAAW;eAAXA;;IAXGC,YAAY;eAAZA;;;
|
|
1
|
+
{"version":3,"sources":["../src/tasks.ts"],"names":["ServerTasks","registerTask","task","preset","milliseconds","runImmediately","timingPreset","id","name","SERVER_BOOT_TASK","DITokens","bootTask","TaskPresets","PERIODIC_DISABLED","BOOT_TASKS","softwareUpdateTask","RUNDELAYED","clientDistDownloadTask","RUNONCE","socketIoTask","PERIODIC","printCompletionSocketIoTask","printerFileCleanTask","printerWebsocketTask","printerStateUpdatePollTask","printerWebsocketRestoreTask"],"mappings":";;;;;;;;;;;IAsBaA,WAAW;eAAXA;;IAXGC,YAAY;eAAZA;;;6BAX0C;iCACjC;AAUlB,SAASA,aAAaC,IAAI,EAAEC,MAAoB,EAAEC,eAAe,CAAC,EAAEC,iBAAiB,KAAK;IAC/F,IAAIC,eAAe;QAAE,GAAGH,MAAM;IAAC;IAC/BG,aAAaF,YAAY,GAAGD,OAAOC,YAAY,IAAIA;IACnDE,aAAaD,cAAc,GAAGA,kBAAkB;IAChD,OAAO;QACLE,IAAIL,KAAKM,IAAI,IAAIN;QACjBA;QACAC,QAAQG;IACV;AACF;AAEO,MAAMN;IACX,OAAOS,mBAAmBR,aAAaS,yBAAQ,CAACC,QAAQ,EAAEC,yBAAW,CAACC,iBAAiB,EAAE,MAAM,OAAO;IACtG,OAAOC,aAAa;QAClBb,aAAaS,yBAAQ,CAACK,kBAAkB,EAAEH,yBAAW,CAACI,UAAU,EAAE;QAClEf,aAAaS,yBAAQ,CAACO,sBAAsB,EAAEL,yBAAW,CAACM,OAAO;QACjEjB,aAAaS,yBAAQ,CAACS,YAAY,EAAEP,yBAAW,CAACQ,QAAQ,EAAE;QAC1DnB,aAAaS,yBAAQ,CAACW,2BAA2B,EAAET,yBAAW,CAACM,OAAO;QACtEjB,aAAaS,yBAAQ,CAACY,oBAAoB,EAAEV,yBAAW,CAACM,OAAO,EAAE,KAAK,MAAM;QAE5EjB,aAAaS,yBAAQ,CAACa,oBAAoB,EAAEX,yBAAW,CAACQ,QAAQ,EAAE,MAAM;QAExEnB,aAAaS,yBAAQ,CAACc,0BAA0B,EAAEZ,yBAAW,CAACQ,QAAQ,EAAE,KAAK,MAAM;QAEnFnB,aAAaS,yBAAQ,CAACe,2BAA2B,EAAEb,yBAAW,CAACQ,QAAQ,EAAE,KAAK,MAAM;KACrF,CAAC;AACJ"}
|
package/dist/utils/env.utils.js
CHANGED
|
@@ -67,16 +67,6 @@ function isNodemon() {
|
|
|
67
67
|
function isNode() {
|
|
68
68
|
return "NODE" in process.env;
|
|
69
69
|
}
|
|
70
|
-
function stringifyDotEnv(obj) {
|
|
71
|
-
let result = "";
|
|
72
|
-
for (const [key, value] of Object.entries(obj)){
|
|
73
|
-
if (key) {
|
|
74
|
-
const line = `${key}=${String(value)}`;
|
|
75
|
-
result += line + "\n";
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
return result;
|
|
79
|
-
}
|
|
80
70
|
function verifyPackageJsonRequirements(rootPath) {
|
|
81
71
|
const dirConts = _fs.default.readdirSync(rootPath);
|
|
82
72
|
const hasPackageJson = dirConts.includes("package.json");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/env.utils.ts"],"names":["getEnvOrDefault","isDevelopmentEnvironment","isNode","isNodemon","isPm2","isProductionEnvironment","isTestEnvironment","verifyPackageJsonRequirements","logger","LoggerService","key","defaultVal","val","process","env","length","NODE_ENV","AppConstants","defaultDevelopmentEnv","defaultTestEnv","defaultProductionEnv","npm_lifecycle_script","includes","
|
|
1
|
+
{"version":3,"sources":["../../src/utils/env.utils.ts"],"names":["getEnvOrDefault","isDevelopmentEnvironment","isNode","isNodemon","isPm2","isProductionEnvironment","isTestEnvironment","verifyPackageJsonRequirements","logger","LoggerService","key","defaultVal","val","process","env","length","NODE_ENV","AppConstants","defaultDevelopmentEnv","defaultTestEnv","defaultProductionEnv","npm_lifecycle_script","includes","rootPath","dirConts","fs","readdirSync","hasPackageJson","error","debug","packageName","require","join","name","toLowerCase","serverPackageName"],"mappings":";;;;;;;;;;;IAOgBA,eAAe;eAAfA;;IAMAC,wBAAwB;eAAxBA;;IAoBAC,MAAM;eAANA;;IAJAC,SAAS;eAATA;;IAJAC,KAAK;eAALA;;IAJAC,uBAAuB;eAAvBA;;IAJAC,iBAAiB;eAAjBA;;IAoBAC,6BAA6B;eAA7BA;;;6CArCD;wBACe;iCACD;sBACR;;;;;;AAErB,MAAMC,SAAS,IAAIC,qBAAa,CAAC,aAAa;AAEvC,SAAST,gBAAgBU,GAAQ,EAAEC,UAAe;IACvD,MAAMC,MAAMC,QAAQC,GAAG,CAACJ,IAAI;IAC5B,IAAI,CAACE,KAAKG,QAAQ,OAAOJ;IACzB,OAAOC;AACT;AAEO,SAASX;IACd,OAAOY,QAAQC,GAAG,CAACE,QAAQ,KAAKC,6BAAY,CAACC,qBAAqB;AACpE;AAEO,SAASZ;IACd,OAAOO,QAAQC,GAAG,CAACE,QAAQ,KAAKC,6BAAY,CAACE,cAAc;AAC7D;AAEO,SAASd;IACd,OAAOQ,QAAQC,GAAG,CAACE,QAAQ,KAAKC,6BAAY,CAACG,oBAAoB;AACnE;AAEO,SAAShB;IACd,OAAO,cAAcS,QAAQC,GAAG,IAAI,yBAAyBD,QAAQC,GAAG,IAAI,aAAaD,QAAQC,GAAG;AACtG;AAEO,SAASX;IACd,OAAO,0BAA0BU,QAAQC,GAAG,IAAID,QAAQC,GAAG,CAACO,oBAAoB,CAAEC,QAAQ,CAAC;AAC7F;AAEO,SAASpB;IACd,OAAO,UAAUW,QAAQC,GAAG;AAC9B;AAEO,SAASP,8BAA8BgB,QAAgB;IAC5D,MAAMC,WAAWC,WAAE,CAACC,WAAW,CAACH;IAChC,MAAMI,iBAAiBH,SAASF,QAAQ,CAAC;IACzC,IAAI,CAACK,gBAAgB;QACnBnB,OAAOoB,KAAK,CAAC,CAAC,sDAAsD,EAAEL,SAAS,CAAC;QAChF,OAAO;IACT;IAEAf,OAAOqB,KAAK,CAAC;IACb,MAAMC,cAAcC,QAAQC,IAAAA,UAAI,EAACT,UAAU,iBAAiBU,IAAI;IAChE,IAAI,CAACH,aAAa;QAChBtB,OAAOoB,KAAK,CAAC;QACb,OAAO;IACT;IAEA,IAAIE,YAAYI,WAAW,OAAOjB,6BAAY,CAACkB,iBAAiB,EAAE;QAChE3B,OAAOoB,KAAK,CACV,CAAC,yEAAyE,EAAEE,YAAYI,WAAW,GAAG,uBAAuB,CAAC;QAEhI,OAAO;IACT;IAEA1B,OAAOqB,KAAK,CAAC;IACb,OAAO;AACT"}
|
|
@@ -2,16 +2,31 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
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
|
+
checkVersionSatisfiesMinimum: function() {
|
|
8
13
|
return checkVersionSatisfiesMinimum;
|
|
14
|
+
},
|
|
15
|
+
getMaximumOfVersionsSafe: function() {
|
|
16
|
+
return getMaximumOfVersionsSafe;
|
|
9
17
|
}
|
|
10
18
|
});
|
|
11
19
|
const _semver = require("semver");
|
|
12
20
|
function checkVersionSatisfiesMinimum(newVersion, minimumVersion) {
|
|
13
21
|
const comparison = (0, _semver.compare)(newVersion, minimumVersion);
|
|
14
|
-
return comparison
|
|
22
|
+
return comparison !== -1;
|
|
23
|
+
}
|
|
24
|
+
function getMaximumOfVersionsSafe(v1, v2) {
|
|
25
|
+
if (!v2) return v1;
|
|
26
|
+
const comparison = (0, _semver.compare)(v1, v2);
|
|
27
|
+
if (comparison === 0) return v1;
|
|
28
|
+
if (comparison === -1) return v2;
|
|
29
|
+
return v1;
|
|
15
30
|
}
|
|
16
31
|
|
|
17
32
|
//# sourceMappingURL=semver.utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/semver.utils.ts"],"names":["checkVersionSatisfiesMinimum","newVersion","minimumVersion","comparison","compare"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../src/utils/semver.utils.ts"],"names":["checkVersionSatisfiesMinimum","getMaximumOfVersionsSafe","newVersion","minimumVersion","comparison","compare","v1","v2"],"mappings":";;;;;;;;;;;IAEgBA,4BAA4B;eAA5BA;;IAQAC,wBAAwB;eAAxBA;;;wBAVQ;AAEjB,SAASD,6BAA6BE,UAAkB,EAAEC,cAAsB;IACrF,MAAMC,aAAaC,IAAAA,eAAO,EAACH,YAAYC;IAIvC,OAAOC,eAAe,CAAC;AACzB;AAEO,SAASH,yBAAyBK,EAAU,EAAEC,EAAW;IAC9D,IAAI,CAACA,IAAI,OAAOD;IAChB,MAAMF,aAAaC,IAAAA,eAAO,EAACC,IAAIC;IAC/B,IAAIH,eAAe,GAAG,OAAOE;IAC7B,IAAIF,eAAe,CAAC,GAAG,OAAOG;IAC9B,OAAOD;AACT"}
|