@fastybird/smart-panel-backend 1.0.0-beta.3 → 1.1.0-alpha.1
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/dist/app.module.js +61 -0
- package/dist/app.module.js.map +1 -1
- package/dist/common/utils/shared-lock-socket-path.utils.d.ts +1 -0
- package/dist/common/utils/shared-lock-socket-path.utils.js +34 -0
- package/dist/common/utils/shared-lock-socket-path.utils.js.map +1 -0
- package/dist/common/utils/sqlite-fts.utils.d.ts +17 -0
- package/dist/common/utils/sqlite-fts.utils.js +63 -0
- package/dist/common/utils/sqlite-fts.utils.js.map +1 -0
- package/dist/common/utils/transform.utils.d.ts +2 -0
- package/dist/common/utils/transform.utils.js +17 -2
- package/dist/common/utils/transform.utils.js.map +1 -1
- package/dist/index.d.ts +5 -0
- package/dist/index.js +14 -1
- package/dist/index.js.map +1 -1
- package/dist/main.js +9 -2
- package/dist/main.js.map +1 -1
- package/dist/migrations/1000000000007-AddVirtualDevicesSupport.d.ts +6 -0
- package/dist/migrations/1000000000007-AddVirtualDevicesSupport.js +26 -0
- package/dist/migrations/1000000000007-AddVirtualDevicesSupport.js.map +1 -0
- package/dist/migrations/1000000000008-AddMcpClients.d.ts +6 -0
- package/dist/migrations/1000000000008-AddMcpClients.js +41 -0
- package/dist/migrations/1000000000008-AddMcpClients.js.map +1 -0
- package/dist/migrations/1000000000009-AddDeviceHiddenBy.d.ts +6 -0
- package/dist/migrations/1000000000009-AddDeviceHiddenBy.js +19 -0
- package/dist/migrations/1000000000009-AddDeviceHiddenBy.js.map +1 -0
- package/dist/migrations/1000000000010-AddEnergyClaimToProjections.d.ts +7 -0
- package/dist/migrations/1000000000010-AddEnergyClaimToProjections.js +59 -0
- package/dist/migrations/1000000000010-AddEnergyClaimToProjections.js.map +1 -0
- package/dist/migrations/1000000000010-AddMcpOAuthFoundation.d.ts +6 -0
- package/dist/migrations/1000000000010-AddMcpOAuthFoundation.js +124 -0
- package/dist/migrations/1000000000010-AddMcpOAuthFoundation.js.map +1 -0
- package/dist/migrations/1000000000011-AddMcpOAuthProviderArtifacts.d.ts +6 -0
- package/dist/migrations/1000000000011-AddMcpOAuthProviderArtifacts.js +33 -0
- package/dist/migrations/1000000000011-AddMcpOAuthProviderArtifacts.js.map +1 -0
- package/dist/migrations/1000000000012-LinkMcpOAuthProviderGrants.d.ts +6 -0
- package/dist/migrations/1000000000012-LinkMcpOAuthProviderGrants.js +18 -0
- package/dist/migrations/1000000000012-LinkMcpOAuthProviderGrants.js.map +1 -0
- package/dist/migrations/1000000000013-AddMcpOAuthProviderManagementIds.d.ts +8 -0
- package/dist/migrations/1000000000013-AddMcpOAuthProviderManagementIds.js +80 -0
- package/dist/migrations/1000000000013-AddMcpOAuthProviderManagementIds.js.map +1 -0
- package/dist/migrations/1000000000014-AddMcpOAuthProviderRefreshFamilyRevocations.d.ts +6 -0
- package/dist/migrations/1000000000014-AddMcpOAuthProviderRefreshFamilyRevocations.js +18 -0
- package/dist/migrations/1000000000014-AddMcpOAuthProviderRefreshFamilyRevocations.js.map +1 -0
- package/dist/migrations/1000000000015-AddMcpOAuthProviderRefreshFamilyLineage.d.ts +6 -0
- package/dist/migrations/1000000000015-AddMcpOAuthProviderRefreshFamilyLineage.js +26 -0
- package/dist/migrations/1000000000015-AddMcpOAuthProviderRefreshFamilyLineage.js.map +1 -0
- package/dist/migrations/1000000000016-AddMcpOAuthApproverAuthorities.d.ts +6 -0
- package/dist/migrations/1000000000016-AddMcpOAuthApproverAuthorities.js +20 -0
- package/dist/migrations/1000000000016-AddMcpOAuthApproverAuthorities.js.map +1 -0
- package/dist/migrations/1000000000017-AddMcpOAuthAuthorizationSnapshots.d.ts +6 -0
- package/dist/migrations/1000000000017-AddMcpOAuthAuthorizationSnapshots.js +69 -0
- package/dist/migrations/1000000000017-AddMcpOAuthAuthorizationSnapshots.js.map +1 -0
- package/dist/migrations/1000000000018-AddWledHardwareIdentity.d.ts +6 -0
- package/dist/migrations/1000000000018-AddWledHardwareIdentity.js +23 -0
- package/dist/migrations/1000000000018-AddWledHardwareIdentity.js.map +1 -0
- package/dist/migrations/1000000000019-EnforceUniqueWledHardwareIdentity.d.ts +6 -0
- package/dist/migrations/1000000000019-EnforceUniqueWledHardwareIdentity.js +31 -0
- package/dist/migrations/1000000000019-EnforceUniqueWledHardwareIdentity.js.map +1 -0
- package/dist/migrations/1000000000020-AddHomeEntitySearchIndex.d.ts +7 -0
- package/dist/migrations/1000000000020-AddHomeEntitySearchIndex.js +106 -0
- package/dist/migrations/1000000000020-AddHomeEntitySearchIndex.js.map +1 -0
- package/dist/migrations/1000000000021-AddHomeyCapabilityIdentity.d.ts +6 -0
- package/dist/migrations/1000000000021-AddHomeyCapabilityIdentity.js +22 -0
- package/dist/migrations/1000000000021-AddHomeyCapabilityIdentity.js.map +1 -0
- package/dist/migrations/1000000000022-AddHomeyAdoptionLocks.d.ts +6 -0
- package/dist/migrations/1000000000022-AddHomeyAdoptionLocks.js +20 -0
- package/dist/migrations/1000000000022-AddHomeyAdoptionLocks.js.map +1 -0
- package/dist/migrations/1000000000023-AddPropertyValueLocks.d.ts +6 -0
- package/dist/migrations/1000000000023-AddPropertyValueLocks.js +20 -0
- package/dist/migrations/1000000000023-AddPropertyValueLocks.js.map +1 -0
- package/dist/migrations/1000000000024-MigrateHomeyDiscriminators.d.ts +6 -0
- package/dist/migrations/1000000000024-MigrateHomeyDiscriminators.js +26 -0
- package/dist/migrations/1000000000024-MigrateHomeyDiscriminators.js.map +1 -0
- package/dist/migrations/1000000000025-AddNotifications.d.ts +6 -0
- package/dist/migrations/1000000000025-AddNotifications.js +44 -0
- package/dist/migrations/1000000000025-AddNotifications.js.map +1 -0
- package/dist/modules/api/api.constants.d.ts +2 -0
- package/dist/modules/api/api.constants.js +3 -1
- package/dist/modules/api/api.constants.js.map +1 -1
- package/dist/modules/api/api.module.d.ts +8 -1
- package/dist/modules/api/api.module.js +40 -2
- package/dist/modules/api/api.module.js.map +1 -1
- package/dist/modules/api/api.openapi.d.ts +2 -1
- package/dist/modules/api/api.openapi.js +3 -0
- package/dist/modules/api/api.openapi.js.map +1 -1
- package/dist/modules/api/interceptors/location-replace.interceptor.js +2 -2
- package/dist/modules/api/interceptors/location-replace.interceptor.js.map +1 -1
- package/dist/modules/api/models/bulk.model.d.ts +8 -0
- package/dist/modules/api/models/bulk.model.js +65 -0
- package/dist/modules/api/models/bulk.model.js.map +1 -0
- package/dist/modules/api/services/client-address.service.d.ts +29 -0
- package/dist/modules/api/services/client-address.service.js +146 -0
- package/dist/modules/api/services/client-address.service.js.map +1 -0
- package/dist/modules/api/services/trusted-proxy-registry.service.d.ts +10 -0
- package/dist/modules/api/services/trusted-proxy-registry.service.js +40 -0
- package/dist/modules/api/services/trusted-proxy-registry.service.js.map +1 -0
- package/dist/modules/api/utils/bulk.utils.d.ts +10 -0
- package/dist/modules/api/utils/bulk.utils.js +74 -0
- package/dist/modules/api/utils/bulk.utils.js.map +1 -0
- package/dist/modules/api/utils/ip-match.utils.d.ts +3 -0
- package/dist/modules/api/utils/ip-match.utils.js +115 -0
- package/dist/modules/api/utils/ip-match.utils.js.map +1 -0
- package/dist/modules/auth/auth.constants.d.ts +2 -1
- package/dist/modules/auth/auth.constants.js +1 -0
- package/dist/modules/auth/auth.constants.js.map +1 -1
- package/dist/modules/auth/auth.module.js +3 -1
- package/dist/modules/auth/auth.module.js.map +1 -1
- package/dist/modules/auth/auth.openapi.d.ts +2 -1
- package/dist/modules/auth/auth.openapi.js +4 -0
- package/dist/modules/auth/auth.openapi.js.map +1 -1
- package/dist/modules/auth/commands/reset-password.command.d.ts +3 -1
- package/dist/modules/auth/commands/reset-password.command.js +30 -14
- package/dist/modules/auth/commands/reset-password.command.js.map +1 -1
- package/dist/modules/auth/controllers/auth.controller.d.ts +5 -2
- package/dist/modules/auth/controllers/auth.controller.js +10 -5
- package/dist/modules/auth/controllers/auth.controller.js.map +1 -1
- package/dist/modules/auth/controllers/tokens.controller.js +7 -0
- package/dist/modules/auth/controllers/tokens.controller.js.map +1 -1
- package/dist/modules/auth/guards/auth.guard.d.ts +11 -1
- package/dist/modules/auth/guards/auth.guard.js +76 -7
- package/dist/modules/auth/guards/auth.guard.js.map +1 -1
- package/dist/modules/auth/guards/display-aware-throttler.guard.d.ts +4 -1
- package/dist/modules/auth/guards/display-aware-throttler.guard.js +8 -2
- package/dist/modules/auth/guards/display-aware-throttler.guard.js.map +1 -1
- package/dist/modules/auth/services/auth.service.d.ts +11 -2
- package/dist/modules/auth/services/auth.service.js +60 -9
- package/dist/modules/auth/services/auth.service.js.map +1 -1
- package/dist/modules/auth/services/tokens.service.d.ts +12 -2
- package/dist/modules/auth/services/tokens.service.js +25 -3
- package/dist/modules/auth/services/tokens.service.js.map +1 -1
- package/dist/modules/buddy/buddy.constants.d.ts +8 -0
- package/dist/modules/buddy/buddy.constants.js +10 -1
- package/dist/modules/buddy/buddy.constants.js.map +1 -1
- package/dist/modules/buddy/buddy.module.d.ts +7 -1
- package/dist/modules/buddy/buddy.module.js +20 -2
- package/dist/modules/buddy/buddy.module.js.map +1 -1
- package/dist/modules/buddy/buddy.openapi.d.ts +2 -1
- package/dist/modules/buddy/buddy.openapi.js +2 -0
- package/dist/modules/buddy/buddy.openapi.js.map +1 -1
- package/dist/modules/buddy/models/context-plan.model.d.ts +47 -0
- package/dist/modules/{extensions/services/managed-plugin-service.interface.js → buddy/models/context-plan.model.js} +1 -1
- package/dist/modules/buddy/models/context-plan.model.js.map +1 -0
- package/dist/modules/buddy/platforms/anthropic-sdk.utils.d.ts +3 -2
- package/dist/modules/buddy/platforms/anthropic-sdk.utils.js +55 -12
- package/dist/modules/buddy/platforms/anthropic-sdk.utils.js.map +1 -1
- package/dist/modules/buddy/platforms/llm-conversation-bounds.utils.d.ts +20 -0
- package/dist/modules/buddy/platforms/llm-conversation-bounds.utils.js +155 -0
- package/dist/modules/buddy/platforms/llm-conversation-bounds.utils.js.map +1 -0
- package/dist/modules/buddy/platforms/llm-conversation.utils.d.ts +8 -0
- package/dist/modules/buddy/platforms/llm-conversation.utils.js +90 -0
- package/dist/modules/buddy/platforms/llm-conversation.utils.js.map +1 -0
- package/dist/modules/buddy/platforms/llm-provider.platform.d.ts +115 -1
- package/dist/modules/buddy/platforms/openai-sdk.utils.d.ts +3 -2
- package/dist/modules/buddy/platforms/openai-sdk.utils.js +48 -14
- package/dist/modules/buddy/platforms/openai-sdk.utils.js.map +1 -1
- package/dist/modules/buddy/services/buddy-context-planner.service.d.ts +4 -0
- package/dist/modules/buddy/services/buddy-context-planner.service.js +21 -0
- package/dist/modules/buddy/services/buddy-context-planner.service.js.map +1 -0
- package/dist/modules/buddy/services/buddy-conversation.service.d.ts +7 -1
- package/dist/modules/buddy/services/buddy-conversation.service.js +251 -42
- package/dist/modules/buddy/services/buddy-conversation.service.js.map +1 -1
- package/dist/modules/buddy/services/buddy-tool-selection.service.d.ts +16 -0
- package/dist/modules/buddy/services/buddy-tool-selection.service.js +711 -0
- package/dist/modules/buddy/services/buddy-tool-selection.service.js.map +1 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-action-policy.d.ts +22 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-action-policy.js +451 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-action-policy.js.map +1 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-language.d.ts +51 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-language.js +559 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-language.js.map +1 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-message-analysis.d.ts +42 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-message-analysis.js +673 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-message-analysis.js.map +1 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-plan-policy.d.ts +11 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-plan-policy.js +39 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-plan-policy.js.map +1 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-planner-grammar.d.ts +128 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-planner-grammar.js +220 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-planner-grammar.js.map +1 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-planning-pipeline.d.ts +2 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-planning-pipeline.js +304 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-planning-pipeline.js.map +1 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-query-builder.d.ts +12 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-query-builder.js +35 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-query-builder.js.map +1 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-retrieval-planner.d.ts +31 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-retrieval-planner.js +97 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-retrieval-planner.js.map +1 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-scope-resolver.d.ts +8 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-scope-resolver.js +186 -0
- package/dist/modules/buddy/services/context-planner/buddy-context-scope-resolver.js.map +1 -0
- package/dist/modules/buddy/services/heartbeat.service.d.ts +17 -4
- package/dist/modules/buddy/services/heartbeat.service.js +85 -15
- package/dist/modules/buddy/services/heartbeat.service.js.map +1 -1
- package/dist/modules/buddy/services/home-context-tool-provider.service.d.ts +165 -0
- package/dist/modules/buddy/services/home-context-tool-provider.service.js +257 -0
- package/dist/modules/buddy/services/home-context-tool-provider.service.js.map +1 -0
- package/dist/modules/buddy/services/llm-provider.service.d.ts +4 -3
- package/dist/modules/buddy/services/llm-provider.service.js +20 -1
- package/dist/modules/buddy/services/llm-provider.service.js.map +1 -1
- package/dist/modules/buddy/services/module-reset.service.d.ts +3 -1
- package/dist/modules/buddy/services/module-reset.service.js +6 -2
- package/dist/modules/buddy/services/module-reset.service.js.map +1 -1
- package/dist/modules/buddy/testing/buddy-context-evaluation.fixtures.d.ts +13 -0
- package/dist/modules/buddy/testing/buddy-context-evaluation.fixtures.js +119 -0
- package/dist/modules/buddy/testing/buddy-context-evaluation.fixtures.js.map +1 -0
- package/dist/modules/buddy/testing/buddy-context-evaluation.matrix.d.ts +36 -0
- package/dist/modules/buddy/testing/buddy-context-evaluation.matrix.js +230 -0
- package/dist/modules/buddy/testing/buddy-context-evaluation.matrix.js.map +1 -0
- package/dist/modules/buddy/testing/llm-request-measurement.helper.d.ts +33 -0
- package/dist/modules/buddy/testing/llm-request-measurement.helper.js +144 -0
- package/dist/modules/buddy/testing/llm-request-measurement.helper.js.map +1 -0
- package/dist/modules/config/config.module.js +18 -2
- package/dist/modules/config/config.module.js.map +1 -1
- package/dist/modules/config/controllers/config.controller.d.ts +3 -1
- package/dist/modules/config/controllers/config.controller.js +43 -18
- package/dist/modules/config/controllers/config.controller.js.map +1 -1
- package/dist/modules/config/interfaces/config-secret.interface.d.ts +5 -0
- package/dist/modules/config/interfaces/config-secret.interface.js +3 -0
- package/dist/modules/config/interfaces/config-secret.interface.js.map +1 -0
- package/dist/modules/config/services/config-secrets.service.d.ts +18 -0
- package/dist/modules/config/services/config-secrets.service.js +167 -0
- package/dist/modules/config/services/config-secrets.service.js.map +1 -0
- package/dist/modules/config/services/config.service.d.ts +19 -3
- package/dist/modules/config/services/config.service.js +105 -39
- package/dist/modules/config/services/config.service.js.map +1 -1
- package/dist/modules/config/services/module-config-mutation-registry.service.d.ts +8 -0
- package/dist/modules/config/services/module-config-mutation-registry.service.js +35 -0
- package/dist/modules/config/services/module-config-mutation-registry.service.js.map +1 -0
- package/dist/modules/config/services/modules-type-mapper.service.d.ts +2 -0
- package/dist/modules/config/services/modules-type-mapper.service.js.map +1 -1
- package/dist/modules/config/services/plugin-config-mutation-registry.service.d.ts +9 -0
- package/dist/modules/config/services/plugin-config-mutation-registry.service.js +50 -0
- package/dist/modules/config/services/plugin-config-mutation-registry.service.js.map +1 -0
- package/dist/modules/config/services/plugin-config-validator.service.d.ts +1 -0
- package/dist/modules/config/services/plugin-config-validator.service.js +4 -4
- package/dist/modules/config/services/plugin-config-validator.service.js.map +1 -1
- package/dist/modules/config/services/plugins-type-mapper.service.d.ts +2 -0
- package/dist/modules/config/services/plugins-type-mapper.service.js.map +1 -1
- package/dist/modules/dashboard/controllers/pages.controller.d.ts +6 -2
- package/dist/modules/dashboard/controllers/pages.controller.js +29 -2
- package/dist/modules/dashboard/controllers/pages.controller.js.map +1 -1
- package/dist/modules/dashboard/dashboard.module.js +2 -0
- package/dist/modules/dashboard/dashboard.module.js.map +1 -1
- package/dist/modules/dashboard/dashboard.openapi.d.ts +2 -2
- package/dist/modules/dashboard/dashboard.openapi.js +5 -0
- package/dist/modules/dashboard/dashboard.openapi.js.map +1 -1
- package/dist/modules/dashboard/dto/bulk-pages.dto.d.ts +7 -0
- package/dist/modules/dashboard/dto/bulk-pages.dto.js +53 -0
- package/dist/modules/dashboard/dto/bulk-pages.dto.js.map +1 -0
- package/dist/modules/dashboard/models/dashboard-response.model.d.ts +4 -0
- package/dist/modules/dashboard/models/dashboard-response.model.js +16 -1
- package/dist/modules/dashboard/models/dashboard-response.model.js.map +1 -1
- package/dist/modules/dashboard/services/pages-bulk.service.d.ts +8 -0
- package/dist/modules/dashboard/services/pages-bulk.service.js +35 -0
- package/dist/modules/dashboard/services/pages-bulk.service.js.map +1 -0
- package/dist/modules/devices/controllers/channels.properties.controller.js +9 -2
- package/dist/modules/devices/controllers/channels.properties.controller.js.map +1 -1
- package/dist/modules/devices/controllers/devices.channels.properties.controller.js +9 -2
- package/dist/modules/devices/controllers/devices.channels.properties.controller.js.map +1 -1
- package/dist/modules/devices/controllers/devices.controller.d.ts +9 -3
- package/dist/modules/devices/controllers/devices.controller.js +86 -8
- package/dist/modules/devices/controllers/devices.controller.js.map +1 -1
- package/dist/modules/devices/devices.constants.d.ts +10 -0
- package/dist/modules/devices/devices.constants.js +13 -1
- package/dist/modules/devices/devices.constants.js.map +1 -1
- package/dist/modules/devices/devices.module.js +20 -0
- package/dist/modules/devices/devices.module.js.map +1 -1
- package/dist/modules/devices/devices.openapi.d.ts +3 -2
- package/dist/modules/devices/devices.openapi.js +5 -0
- package/dist/modules/devices/devices.openapi.js.map +1 -1
- package/dist/modules/devices/dto/bulk-devices.dto.d.ts +14 -0
- package/dist/modules/devices/dto/bulk-devices.dto.js +99 -0
- package/dist/modules/devices/dto/bulk-devices.dto.js.map +1 -0
- package/dist/modules/devices/dto/create-device.dto.d.ts +3 -1
- package/dist/modules/devices/dto/create-device.dto.js +25 -0
- package/dist/modules/devices/dto/create-device.dto.js.map +1 -1
- package/dist/modules/devices/dto/list-devices-query.dto.d.ts +4 -0
- package/dist/modules/devices/dto/list-devices-query.dto.js +31 -0
- package/dist/modules/devices/dto/list-devices-query.dto.js.map +1 -0
- package/dist/modules/devices/dto/update-device.dto.d.ts +3 -1
- package/dist/modules/devices/dto/update-device.dto.js +25 -0
- package/dist/modules/devices/dto/update-device.dto.js.map +1 -1
- package/dist/modules/devices/entities/devices.entity.d.ts +3 -1
- package/dist/modules/devices/entities/devices.entity.js +30 -0
- package/dist/modules/devices/entities/devices.entity.js.map +1 -1
- package/dist/modules/devices/entities/property-value-lock.entity.d.ts +5 -0
- package/dist/modules/devices/entities/property-value-lock.entity.js +32 -0
- package/dist/modules/devices/entities/property-value-lock.entity.js.map +1 -0
- package/dist/modules/devices/models/devices-response.model.d.ts +4 -0
- package/dist/modules/devices/models/devices-response.model.js +16 -1
- package/dist/modules/devices/models/devices-response.model.js.map +1 -1
- package/dist/modules/devices/platforms/device.platform.d.ts +3 -0
- package/dist/modules/devices/services/channels-type-mapper.service.d.ts +1 -0
- package/dist/modules/devices/services/channels-type-mapper.service.js.map +1 -1
- package/dist/modules/devices/services/channels.properties-type-mapper.service.d.ts +2 -0
- package/dist/modules/devices/services/channels.properties-type-mapper.service.js.map +1 -1
- package/dist/modules/devices/services/channels.properties.service.d.ts +86 -2
- package/dist/modules/devices/services/channels.properties.service.js +377 -41
- package/dist/modules/devices/services/channels.properties.service.js.map +1 -1
- package/dist/modules/devices/services/channels.service.d.ts +14 -1
- package/dist/modules/devices/services/channels.service.js +125 -25
- package/dist/modules/devices/services/channels.service.js.map +1 -1
- package/dist/modules/devices/services/device-connection-state.service.d.ts +14 -5
- package/dist/modules/devices/services/device-connection-state.service.js +101 -20
- package/dist/modules/devices/services/device-connection-state.service.js.map +1 -1
- package/dist/modules/devices/services/device-connectivity.service.d.ts +5 -0
- package/dist/modules/devices/services/device-connectivity.service.js +9 -5
- package/dist/modules/devices/services/device-connectivity.service.js.map +1 -1
- package/dist/modules/devices/services/device-control-tool.service.d.ts +5 -13
- package/dist/modules/devices/services/device-control-tool.service.js +71 -115
- package/dist/modules/devices/services/device-control-tool.service.js.map +1 -1
- package/dist/modules/devices/services/device-structure-lock.service.d.ts +5 -0
- package/dist/modules/devices/services/device-structure-lock.service.js +30 -0
- package/dist/modules/devices/services/device-structure-lock.service.js.map +1 -0
- package/dist/modules/devices/services/device-zones.service.d.ts +4 -1
- package/dist/modules/devices/services/device-zones.service.js +63 -25
- package/dist/modules/devices/services/device-zones.service.js.map +1 -1
- package/dist/modules/devices/services/devices-bulk.service.d.ts +12 -0
- package/dist/modules/devices/services/devices-bulk.service.js +74 -0
- package/dist/modules/devices/services/devices-bulk.service.js.map +1 -0
- package/dist/modules/devices/services/devices-type-mapper.service.d.ts +1 -0
- package/dist/modules/devices/services/devices-type-mapper.service.js.map +1 -1
- package/dist/modules/devices/services/devices.service.d.ts +58 -2
- package/dist/modules/devices/services/devices.service.js +359 -20
- package/dist/modules/devices/services/devices.service.js.map +1 -1
- package/dist/modules/devices/services/platform.registry.service.d.ts +7 -1
- package/dist/modules/devices/services/platform.registry.service.js +19 -0
- package/dist/modules/devices/services/platform.registry.service.js.map +1 -1
- package/dist/modules/devices/services/property-command.service.d.ts +31 -1
- package/dist/modules/devices/services/property-command.service.js +239 -50
- package/dist/modules/devices/services/property-command.service.js.map +1 -1
- package/dist/modules/devices/services/property-timeseries.service.d.ts +4 -1
- package/dist/modules/devices/services/property-timeseries.service.js +25 -13
- package/dist/modules/devices/services/property-timeseries.service.js.map +1 -1
- package/dist/modules/devices/services/property-value-lock.service.d.ts +20 -0
- package/dist/modules/devices/services/property-value-lock.service.js +147 -0
- package/dist/modules/devices/services/property-value-lock.service.js.map +1 -0
- package/dist/modules/devices/services/property-value-source.registry.service.d.ts +13 -0
- package/dist/modules/devices/services/property-value-source.registry.service.js +42 -0
- package/dist/modules/devices/services/property-value-source.registry.service.js.map +1 -0
- package/dist/modules/devices/services/property-value.service.d.ts +86 -3
- package/dist/modules/devices/services/property-value.service.js +527 -76
- package/dist/modules/devices/services/property-value.service.js.map +1 -1
- package/dist/modules/devices/subscribers/channel-property-entity.subscriber.d.ts +0 -1
- package/dist/modules/devices/subscribers/channel-property-entity.subscriber.js +2 -19
- package/dist/modules/devices/subscribers/channel-property-entity.subscriber.js.map +1 -1
- package/dist/modules/devices/utils/property-command-value.utils.d.ts +13 -0
- package/dist/modules/devices/utils/property-command-value.utils.js +147 -0
- package/dist/modules/devices/utils/property-command-value.utils.js.map +1 -0
- package/dist/modules/devices/utils/property-metadata.utils.d.ts +2 -0
- package/dist/modules/devices/utils/property-metadata.utils.js +22 -0
- package/dist/modules/devices/utils/property-metadata.utils.js.map +1 -0
- package/dist/modules/devices/utils/schema.utils.js +25 -151
- package/dist/modules/devices/utils/schema.utils.js.map +1 -1
- package/dist/modules/devices/utils/unique-constraint.utils.d.ts +1 -0
- package/dist/modules/devices/utils/unique-constraint.utils.js +27 -0
- package/dist/modules/devices/utils/unique-constraint.utils.js.map +1 -0
- package/dist/modules/devices/validators/channel-exists-constraint.validator.js +1 -1
- package/dist/modules/devices/validators/channel-exists-constraint.validator.js.map +1 -1
- package/dist/modules/devices/validators/device-exists-constraint.validator.js +1 -1
- package/dist/modules/devices/validators/device-exists-constraint.validator.js.map +1 -1
- package/dist/modules/devices/validators/device-not-hidden-constraint.validator.d.ts +9 -0
- package/dist/modules/devices/validators/device-not-hidden-constraint.validator.js +47 -0
- package/dist/modules/devices/validators/device-not-hidden-constraint.validator.js.map +1 -0
- package/dist/modules/displays/controllers/displays.controller.d.ts +6 -2
- package/dist/modules/displays/controllers/displays.controller.js +30 -1
- package/dist/modules/displays/controllers/displays.controller.js.map +1 -1
- package/dist/modules/displays/controllers/registration.controller.d.ts +6 -4
- package/dist/modules/displays/controllers/registration.controller.js +8 -5
- package/dist/modules/displays/controllers/registration.controller.js.map +1 -1
- package/dist/modules/displays/displays.module.js +5 -0
- package/dist/modules/displays/displays.module.js.map +1 -1
- package/dist/modules/displays/displays.openapi.d.ts +4 -2
- package/dist/modules/displays/displays.openapi.js +5 -0
- package/dist/modules/displays/displays.openapi.js.map +1 -1
- package/dist/modules/displays/dto/bulk-displays.dto.d.ts +7 -0
- package/dist/modules/displays/dto/bulk-displays.dto.js +53 -0
- package/dist/modules/displays/dto/bulk-displays.dto.js.map +1 -0
- package/dist/modules/displays/guards/registration.guard.d.ts +4 -1
- package/dist/modules/displays/guards/registration.guard.js +18 -5
- package/dist/modules/displays/guards/registration.guard.js.map +1 -1
- package/dist/modules/displays/models/displays-response.model.d.ts +4 -0
- package/dist/modules/displays/models/displays-response.model.js +16 -1
- package/dist/modules/displays/models/displays-response.model.js.map +1 -1
- package/dist/modules/displays/services/displays-bulk.service.d.ts +8 -0
- package/dist/modules/displays/services/displays-bulk.service.js +39 -0
- package/dist/modules/displays/services/displays-bulk.service.js.map +1 -0
- package/dist/modules/displays/utils/ip.utils.d.ts +0 -2
- package/dist/modules/displays/utils/ip.utils.js +0 -25
- package/dist/modules/displays/utils/ip.utils.js.map +1 -1
- package/dist/modules/energy/energy.module.js +6 -2
- package/dist/modules/energy/energy.module.js.map +1 -1
- package/dist/modules/energy/energy.openapi.d.ts +3 -1
- package/dist/modules/energy/energy.openapi.js +4 -0
- package/dist/modules/energy/energy.openapi.js.map +1 -1
- package/dist/modules/energy/listeners/energy-ingestion.listener.d.ts +8 -1
- package/dist/modules/energy/listeners/energy-ingestion.listener.js +72 -28
- package/dist/modules/energy/listeners/energy-ingestion.listener.js.map +1 -1
- package/dist/modules/energy/services/energy-claim.registry.service.d.ts +16 -0
- package/dist/modules/energy/services/energy-claim.registry.service.js +41 -0
- package/dist/modules/energy/services/energy-claim.registry.service.js.map +1 -0
- package/dist/modules/energy/services/energy-data.service.d.ts +2 -0
- package/dist/modules/energy/services/energy-data.service.js +22 -6
- package/dist/modules/energy/services/energy-data.service.js.map +1 -1
- package/dist/modules/energy/utils/energy-source-type.utils.d.ts +8 -0
- package/dist/modules/energy/utils/energy-source-type.utils.js +30 -0
- package/dist/modules/energy/utils/energy-source-type.utils.js.map +1 -0
- package/dist/modules/extensions/commands/services.command.d.ts +9 -9
- package/dist/modules/extensions/commands/services.command.js +73 -60
- package/dist/modules/extensions/commands/services.command.js.map +1 -1
- package/dist/modules/extensions/controllers/extensions.controller.d.ts +7 -3
- package/dist/modules/extensions/controllers/extensions.controller.js +31 -5
- package/dist/modules/extensions/controllers/extensions.controller.js.map +1 -1
- package/dist/modules/extensions/controllers/services.controller.d.ts +8 -7
- package/dist/modules/extensions/controllers/services.controller.js +79 -59
- package/dist/modules/extensions/controllers/services.controller.js.map +1 -1
- package/dist/modules/extensions/dto/bulk-extensions.dto.d.ts +8 -0
- package/dist/modules/extensions/dto/bulk-extensions.dto.js +63 -0
- package/dist/modules/extensions/dto/bulk-extensions.dto.js.map +1 -0
- package/dist/modules/extensions/dto/update-config.dto.js +1 -1
- package/dist/modules/extensions/dto/update-config.dto.js.map +1 -1
- package/dist/modules/extensions/extensions.constants.js +2 -2
- package/dist/modules/extensions/extensions.constants.js.map +1 -1
- package/dist/modules/extensions/extensions.exceptions.d.ts +3 -0
- package/dist/modules/extensions/extensions.exceptions.js +7 -1
- package/dist/modules/extensions/extensions.exceptions.js.map +1 -1
- package/dist/modules/extensions/extensions.module.js +13 -11
- package/dist/modules/extensions/extensions.module.js.map +1 -1
- package/dist/modules/extensions/extensions.openapi.d.ts +3 -2
- package/dist/modules/extensions/extensions.openapi.js +5 -0
- package/dist/modules/extensions/extensions.openapi.js.map +1 -1
- package/dist/modules/extensions/models/extensions-response.model.d.ts +4 -0
- package/dist/modules/extensions/models/extensions-response.model.js +16 -1
- package/dist/modules/extensions/models/extensions-response.model.js.map +1 -1
- package/dist/modules/extensions/models/service-status.model.d.ts +5 -2
- package/dist/modules/extensions/models/service-status.model.js +36 -6
- package/dist/modules/extensions/models/service-status.model.js.map +1 -1
- package/dist/modules/extensions/providers/extensions-stats.provider.d.ts +3 -3
- package/dist/modules/extensions/providers/extensions-stats.provider.js +6 -6
- package/dist/modules/extensions/providers/extensions-stats.provider.js.map +1 -1
- package/dist/modules/extensions/services/{base-managed-plugin.service.d.ts → base-managed-extension.service.d.ts} +3 -3
- package/dist/modules/extensions/services/{base-managed-plugin.service.js → base-managed-extension.service.js} +4 -4
- package/dist/modules/extensions/services/base-managed-extension.service.js.map +1 -0
- package/dist/modules/extensions/services/extensions-bulk.service.d.ts +8 -0
- package/dist/modules/extensions/services/extensions-bulk.service.js +41 -0
- package/dist/modules/extensions/services/extensions-bulk.service.js.map +1 -0
- package/dist/modules/extensions/services/extensions.service.d.ts +1 -1
- package/dist/modules/extensions/services/extensions.service.js +14 -5
- package/dist/modules/extensions/services/extensions.service.js.map +1 -1
- package/dist/modules/extensions/services/{managed-plugin-service.interface.d.ts → managed-extension-service.interface.d.ts} +16 -5
- package/dist/modules/extensions/services/managed-extension-service.interface.js +3 -0
- package/dist/modules/extensions/services/managed-extension-service.interface.js.map +1 -0
- package/dist/modules/extensions/services/managed-service-manager.service.d.ts +57 -0
- package/dist/modules/extensions/services/{plugin-service-manager.service.js → managed-service-manager.service.js} +260 -73
- package/dist/modules/extensions/services/managed-service-manager.service.js.map +1 -0
- package/dist/modules/home-context/home-context-pagination.errors.d.ts +5 -0
- package/dist/modules/home-context/home-context-pagination.errors.js +13 -0
- package/dist/modules/home-context/home-context-pagination.errors.js.map +1 -0
- package/dist/modules/home-context/home-context.constants.d.ts +66 -0
- package/dist/modules/home-context/home-context.constants.js +81 -0
- package/dist/modules/home-context/home-context.constants.js.map +1 -0
- package/dist/modules/home-context/home-context.errors.d.ts +5 -0
- package/dist/modules/home-context/home-context.errors.js +13 -0
- package/dist/modules/home-context/home-context.errors.js.map +1 -0
- package/dist/modules/home-context/home-context.module.d.ts +2 -0
- package/dist/modules/home-context/home-context.module.js +44 -0
- package/dist/modules/home-context/home-context.module.js.map +1 -0
- package/dist/modules/home-context/home-current-state.errors.d.ts +5 -0
- package/dist/modules/home-context/home-current-state.errors.js +13 -0
- package/dist/modules/home-context/home-current-state.errors.js.map +1 -0
- package/dist/modules/home-context/home-search.errors.d.ts +11 -0
- package/dist/modules/home-context/home-search.errors.js +25 -0
- package/dist/modules/home-context/home-search.errors.js.map +1 -0
- package/dist/modules/home-context/home-state.errors.d.ts +24 -0
- package/dist/modules/home-context/home-state.errors.js +44 -0
- package/dist/modules/home-context/home-state.errors.js.map +1 -0
- package/dist/modules/home-context/models/home-context-query.model.d.ts +10 -0
- package/dist/modules/home-context/models/home-context-query.model.js +3 -0
- package/dist/modules/home-context/models/home-context-query.model.js.map +1 -0
- package/dist/modules/home-context/models/home-context-result.model.d.ts +124 -0
- package/dist/modules/home-context/models/home-context-result.model.js +3 -0
- package/dist/modules/home-context/models/home-context-result.model.js.map +1 -0
- package/dist/modules/home-context/models/home-current-state-query.model.d.ts +33 -0
- package/dist/modules/home-context/models/home-current-state-query.model.js +3 -0
- package/dist/modules/home-context/models/home-current-state-query.model.js.map +1 -0
- package/dist/modules/home-context/models/home-current-state-result.model.d.ts +70 -0
- package/dist/modules/home-context/models/home-current-state-result.model.js +3 -0
- package/dist/modules/home-context/models/home-current-state-result.model.js.map +1 -0
- package/dist/modules/home-context/models/home-search-query.model.d.ts +11 -0
- package/dist/modules/home-context/models/home-search-query.model.js +3 -0
- package/dist/modules/home-context/models/home-search-query.model.js.map +1 -0
- package/dist/modules/home-context/models/home-search-result.model.d.ts +71 -0
- package/dist/modules/home-context/models/home-search-result.model.js +3 -0
- package/dist/modules/home-context/models/home-search-result.model.js.map +1 -0
- package/dist/modules/home-context/models/home-state-query.model.d.ts +26 -0
- package/dist/modules/home-context/models/home-state-query.model.js +3 -0
- package/dist/modules/home-context/models/home-state-query.model.js.map +1 -0
- package/dist/modules/home-context/models/home-state-result.model.d.ts +48 -0
- package/dist/modules/home-context/models/home-state-result.model.js +3 -0
- package/dist/modules/home-context/models/home-state-result.model.js.map +1 -0
- package/dist/modules/home-context/models/home-target-query.model.d.ts +9 -0
- package/dist/modules/home-context/models/home-target-query.model.js +3 -0
- package/dist/modules/home-context/models/home-target-query.model.js.map +1 -0
- package/dist/modules/home-context/models/home-target-result.model.d.ts +43 -0
- package/dist/modules/home-context/models/home-target-result.model.js +3 -0
- package/dist/modules/home-context/models/home-target-result.model.js.map +1 -0
- package/dist/modules/home-context/schemas/home-context-input.schemas.d.ts +9 -0
- package/dist/modules/home-context/schemas/home-context-input.schemas.js +22 -0
- package/dist/modules/home-context/schemas/home-context-input.schemas.js.map +1 -0
- package/dist/modules/home-context/schemas/home-context-output.schemas.d.ts +125 -0
- package/dist/modules/home-context/schemas/home-context-output.schemas.js +147 -0
- package/dist/modules/home-context/schemas/home-context-output.schemas.js.map +1 -0
- package/dist/modules/home-context/schemas/home-current-state-input.schemas.d.ts +150 -0
- package/dist/modules/home-context/schemas/home-current-state-input.schemas.js +59 -0
- package/dist/modules/home-context/schemas/home-current-state-input.schemas.js.map +1 -0
- package/dist/modules/home-context/schemas/home-current-state-output.schemas.d.ts +275 -0
- package/dist/modules/home-context/schemas/home-current-state-output.schemas.js +139 -0
- package/dist/modules/home-context/schemas/home-current-state-output.schemas.js.map +1 -0
- package/dist/modules/home-context/schemas/home-search-input.schemas.d.ts +20 -0
- package/dist/modules/home-context/schemas/home-search-input.schemas.js +29 -0
- package/dist/modules/home-context/schemas/home-search-input.schemas.js.map +1 -0
- package/dist/modules/home-context/schemas/home-search-output.schemas.d.ts +112 -0
- package/dist/modules/home-context/schemas/home-search-output.schemas.js +84 -0
- package/dist/modules/home-context/schemas/home-search-output.schemas.js.map +1 -0
- package/dist/modules/home-context/schemas/home-state-input.schemas.d.ts +30 -0
- package/dist/modules/home-context/schemas/home-state-input.schemas.js +37 -0
- package/dist/modules/home-context/schemas/home-state-input.schemas.js.map +1 -0
- package/dist/modules/home-context/schemas/home-state-output.schemas.d.ts +116 -0
- package/dist/modules/home-context/schemas/home-state-output.schemas.js +129 -0
- package/dist/modules/home-context/schemas/home-state-output.schemas.js.map +1 -0
- package/dist/modules/home-context/schemas/home-target-input.schemas.d.ts +9 -0
- package/dist/modules/home-context/schemas/home-target-input.schemas.js +15 -0
- package/dist/modules/home-context/schemas/home-target-input.schemas.js.map +1 -0
- package/dist/modules/home-context/schemas/home-target-output.schemas.d.ts +40 -0
- package/dist/modules/home-context/schemas/home-target-output.schemas.js +61 -0
- package/dist/modules/home-context/schemas/home-target-output.schemas.js.map +1 -0
- package/dist/modules/home-context/services/home-context-query.service.d.ts +31 -0
- package/dist/modules/home-context/services/home-context-query.service.js +264 -0
- package/dist/modules/home-context/services/home-context-query.service.js.map +1 -0
- package/dist/modules/home-context/services/home-current-state-query.service.d.ts +17 -0
- package/dist/modules/home-context/services/home-current-state-query.service.js +256 -0
- package/dist/modules/home-context/services/home-current-state-query.service.js.map +1 -0
- package/dist/modules/home-context/services/home-search-query.service.d.ts +30 -0
- package/dist/modules/home-context/services/home-search-query.service.js +443 -0
- package/dist/modules/home-context/services/home-search-query.service.js.map +1 -0
- package/dist/modules/home-context/services/home-state-query.service.d.ts +35 -0
- package/dist/modules/home-context/services/home-state-query.service.js +263 -0
- package/dist/modules/home-context/services/home-state-query.service.js.map +1 -0
- package/dist/modules/home-context/services/home-target-query.service.d.ts +21 -0
- package/dist/modules/home-context/services/home-target-query.service.js +149 -0
- package/dist/modules/home-context/services/home-target-query.service.js.map +1 -0
- package/dist/modules/mcp/controllers/mcp-clients.controller.d.ts +17 -0
- package/dist/modules/mcp/controllers/mcp-clients.controller.js +201 -0
- package/dist/modules/mcp/controllers/mcp-clients.controller.js.map +1 -0
- package/dist/modules/mcp/controllers/mcp-oauth-clients.controller.d.ts +17 -0
- package/dist/modules/mcp/controllers/mcp-oauth-clients.controller.js +162 -0
- package/dist/modules/mcp/controllers/mcp-oauth-clients.controller.js.map +1 -0
- package/dist/modules/mcp/controllers/mcp-oauth-interactions.controller.d.ts +15 -0
- package/dist/modules/mcp/controllers/mcp-oauth-interactions.controller.js +136 -0
- package/dist/modules/mcp/controllers/mcp-oauth-interactions.controller.js.map +1 -0
- package/dist/modules/mcp/controllers/mcp-oauth-management.controller.d.ts +20 -0
- package/dist/modules/mcp/controllers/mcp-oauth-management.controller.js +271 -0
- package/dist/modules/mcp/controllers/mcp-oauth-management.controller.js.map +1 -0
- package/dist/modules/mcp/controllers/mcp.controller.d.ts +17 -0
- package/dist/modules/mcp/controllers/mcp.controller.js +87 -0
- package/dist/modules/mcp/controllers/mcp.controller.js.map +1 -0
- package/dist/modules/mcp/decorators/mcp-endpoint.decorator.d.ts +1 -0
- package/dist/modules/mcp/decorators/mcp-endpoint.decorator.js +8 -0
- package/dist/modules/mcp/decorators/mcp-endpoint.decorator.js.map +1 -0
- package/dist/modules/mcp/dto/mcp-client.dto.d.ts +25 -0
- package/dist/modules/mcp/dto/mcp-client.dto.js +185 -0
- package/dist/modules/mcp/dto/mcp-client.dto.js.map +1 -0
- package/dist/modules/mcp/dto/mcp-oauth-client.dto.d.ts +18 -0
- package/dist/modules/mcp/dto/mcp-oauth-client.dto.js +135 -0
- package/dist/modules/mcp/dto/mcp-oauth-client.dto.js.map +1 -0
- package/dist/modules/mcp/dto/mcp-oauth-grant.dto.d.ts +7 -0
- package/dist/modules/mcp/dto/mcp-oauth-grant.dto.js +51 -0
- package/dist/modules/mcp/dto/mcp-oauth-grant.dto.js.map +1 -0
- package/dist/modules/mcp/dto/mcp-oauth-interaction.dto.d.ts +8 -0
- package/dist/modules/mcp/dto/mcp-oauth-interaction.dto.js +68 -0
- package/dist/modules/mcp/dto/mcp-oauth-interaction.dto.js.map +1 -0
- package/dist/modules/mcp/dto/update-config.dto.d.ts +9 -0
- package/dist/modules/mcp/dto/update-config.dto.js +102 -0
- package/dist/modules/mcp/dto/update-config.dto.js.map +1 -0
- package/dist/modules/mcp/entities/mcp-client.entity.d.ts +17 -0
- package/dist/modules/mcp/entities/mcp-client.entity.js +154 -0
- package/dist/modules/mcp/entities/mcp-client.entity.js.map +1 -0
- package/dist/modules/mcp/entities/mcp-installation.entity.d.ts +5 -0
- package/dist/modules/mcp/entities/mcp-installation.entity.js +32 -0
- package/dist/modules/mcp/entities/mcp-installation.entity.js.map +1 -0
- package/dist/modules/mcp/entities/mcp-oauth.entity.d.ts +143 -0
- package/dist/modules/mcp/entities/mcp-oauth.entity.js +602 -0
- package/dist/modules/mcp/entities/mcp-oauth.entity.js.map +1 -0
- package/dist/modules/mcp/guards/mcp-client.guard.d.ts +14 -0
- package/dist/modules/mcp/guards/mcp-client.guard.js +73 -0
- package/dist/modules/mcp/guards/mcp-client.guard.js.map +1 -0
- package/dist/modules/mcp/guards/mcp-throttle.guard.d.ts +26 -0
- package/dist/modules/mcp/guards/mcp-throttle.guard.js +161 -0
- package/dist/modules/mcp/guards/mcp-throttle.guard.js.map +1 -0
- package/dist/modules/mcp/listeners/mcp-config.listener.d.ts +22 -0
- package/dist/modules/mcp/listeners/mcp-config.listener.js +104 -0
- package/dist/modules/mcp/listeners/mcp-config.listener.js.map +1 -0
- package/dist/modules/mcp/mcp.constants.d.ts +68 -0
- package/dist/modules/mcp/mcp.constants.js +77 -0
- package/dist/modules/mcp/mcp.constants.js.map +1 -0
- package/dist/modules/mcp/mcp.exceptions.d.ts +4 -0
- package/dist/modules/mcp/mcp.exceptions.js +11 -0
- package/dist/modules/mcp/mcp.exceptions.js.map +1 -0
- package/dist/modules/mcp/mcp.module.d.ts +23 -0
- package/dist/modules/mcp/mcp.module.js +272 -0
- package/dist/modules/mcp/mcp.module.js.map +1 -0
- package/dist/modules/mcp/mcp.openapi.d.ts +13 -0
- package/dist/modules/mcp/mcp.openapi.js +60 -0
- package/dist/modules/mcp/mcp.openapi.js.map +1 -0
- package/dist/modules/mcp/models/config.model.d.ts +10 -0
- package/dist/modules/mcp/models/config.model.js +106 -0
- package/dist/modules/mcp/models/config.model.js.map +1 -0
- package/dist/modules/mcp/models/mcp-client-response.model.d.ts +12 -0
- package/dist/modules/mcp/models/mcp-client-response.model.js +51 -0
- package/dist/modules/mcp/models/mcp-client-response.model.js.map +1 -0
- package/dist/modules/mcp/models/mcp-client.model.d.ts +5 -0
- package/dist/modules/mcp/models/mcp-client.model.js +35 -0
- package/dist/modules/mcp/models/mcp-client.model.js.map +1 -0
- package/dist/modules/mcp/models/mcp-oauth-client-response.model.d.ts +8 -0
- package/dist/modules/mcp/models/mcp-oauth-client-response.model.js +39 -0
- package/dist/modules/mcp/models/mcp-oauth-client-response.model.js.map +1 -0
- package/dist/modules/mcp/models/mcp-oauth-client.model.d.ts +13 -0
- package/dist/modules/mcp/models/mcp-oauth-client.model.js +85 -0
- package/dist/modules/mcp/models/mcp-oauth-client.model.js.map +1 -0
- package/dist/modules/mcp/models/mcp-oauth-interaction-response.model.d.ts +8 -0
- package/dist/modules/mcp/models/mcp-oauth-interaction-response.model.js +39 -0
- package/dist/modules/mcp/models/mcp-oauth-interaction-response.model.js.map +1 -0
- package/dist/modules/mcp/models/mcp-oauth-interaction.model.d.ts +23 -0
- package/dist/modules/mcp/models/mcp-oauth-interaction.model.js +111 -0
- package/dist/modules/mcp/models/mcp-oauth-interaction.model.js.map +1 -0
- package/dist/modules/mcp/models/mcp-oauth-management-response.model.d.ts +23 -0
- package/dist/modules/mcp/models/mcp-oauth-management-response.model.js +94 -0
- package/dist/modules/mcp/models/mcp-oauth-management-response.model.js.map +1 -0
- package/dist/modules/mcp/models/mcp-oauth-management.model.d.ts +35 -0
- package/dist/modules/mcp/models/mcp-oauth-management.model.js +189 -0
- package/dist/modules/mcp/models/mcp-oauth-management.model.js.map +1 -0
- package/dist/modules/mcp/oauth/mcp-oauth-metadata.d.ts +15 -0
- package/dist/modules/mcp/oauth/mcp-oauth-metadata.js +18 -0
- package/dist/modules/mcp/oauth/mcp-oauth-metadata.js.map +1 -0
- package/dist/modules/mcp/oauth/mcp-oauth-provider.adapter.d.ts +21 -0
- package/dist/modules/mcp/oauth/mcp-oauth-provider.adapter.js +297 -0
- package/dist/modules/mcp/oauth/mcp-oauth-provider.adapter.js.map +1 -0
- package/dist/modules/mcp/oauth/mcp-oauth-provider.factory.d.ts +49 -0
- package/dist/modules/mcp/oauth/mcp-oauth-provider.factory.js +324 -0
- package/dist/modules/mcp/oauth/mcp-oauth-provider.factory.js.map +1 -0
- package/dist/modules/mcp/oauth/mcp-oauth-provider.loader.d.ts +4 -0
- package/dist/modules/mcp/oauth/mcp-oauth-provider.loader.js +7 -0
- package/dist/modules/mcp/oauth/mcp-oauth-provider.loader.js.map +1 -0
- package/dist/modules/mcp/oauth/mcp-oauth-redaction.d.ts +1 -0
- package/dist/modules/mcp/oauth/mcp-oauth-redaction.js +17 -0
- package/dist/modules/mcp/oauth/mcp-oauth-redaction.js.map +1 -0
- package/dist/modules/mcp/oauth/mcp-oauth-scope.utils.d.ts +3 -0
- package/dist/modules/mcp/oauth/mcp-oauth-scope.utils.js +29 -0
- package/dist/modules/mcp/oauth/mcp-oauth-scope.utils.js.map +1 -0
- package/dist/modules/mcp/oauth/mcp-oauth.types.d.ts +31 -0
- package/dist/modules/mcp/oauth/mcp-oauth.types.js +3 -0
- package/dist/modules/mcp/oauth/mcp-oauth.types.js.map +1 -0
- package/dist/modules/mcp/providers/mcp-stats.provider.d.ts +19 -0
- package/dist/modules/mcp/providers/mcp-stats.provider.js +38 -0
- package/dist/modules/mcp/providers/mcp-stats.provider.js.map +1 -0
- package/dist/modules/mcp/services/mcp-audit.service.d.ts +74 -0
- package/dist/modules/mcp/services/mcp-audit.service.js +161 -0
- package/dist/modules/mcp/services/mcp-audit.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-client.service.d.ts +34 -0
- package/dist/modules/mcp/services/mcp-client.service.js +241 -0
- package/dist/modules/mcp/services/mcp-client.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-context.service.d.ts +32 -0
- package/dist/modules/mcp/services/mcp-context.service.js +136 -0
- package/dist/modules/mcp/services/mcp-context.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-installation.service.d.ts +9 -0
- package/dist/modules/mcp/services/mcp-installation.service.js +55 -0
- package/dist/modules/mcp/services/mcp-installation.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-approver-authority.service.d.ts +20 -0
- package/dist/modules/mcp/services/mcp-oauth-approver-authority.service.js +128 -0
- package/dist/modules/mcp/services/mcp-oauth-approver-authority.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-artifact.service.d.ts +69 -0
- package/dist/modules/mcp/services/mcp-oauth-artifact.service.js +200 -0
- package/dist/modules/mcp/services/mcp-oauth-artifact.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-bootstrap.service.d.ts +22 -0
- package/dist/modules/mcp/services/mcp-oauth-bootstrap.service.js +116 -0
- package/dist/modules/mcp/services/mcp-oauth-bootstrap.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-client.service.d.ts +20 -0
- package/dist/modules/mcp/services/mcp-oauth-client.service.js +107 -0
- package/dist/modules/mcp/services/mcp-oauth-client.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-endpoint-rate-limit.service.d.ts +15 -0
- package/dist/modules/mcp/services/mcp-oauth-endpoint-rate-limit.service.js +52 -0
- package/dist/modules/mcp/services/mcp-oauth-endpoint-rate-limit.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-global-invalidation.service.d.ts +12 -0
- package/dist/modules/mcp/services/mcp-oauth-global-invalidation.service.js +82 -0
- package/dist/modules/mcp/services/mcp-oauth-global-invalidation.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-interaction.service.d.ts +36 -0
- package/dist/modules/mcp/services/mcp-oauth-interaction.service.js +312 -0
- package/dist/modules/mcp/services/mcp-oauth-interaction.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-lifecycle.service.d.ts +18 -0
- package/dist/modules/mcp/services/mcp-oauth-lifecycle.service.js +88 -0
- package/dist/modules/mcp/services/mcp-oauth-lifecycle.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-management.service.d.ts +45 -0
- package/dist/modules/mcp/services/mcp-oauth-management.service.js +381 -0
- package/dist/modules/mcp/services/mcp-oauth-management.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-module-config-mutation.service.d.ts +28 -0
- package/dist/modules/mcp/services/mcp-oauth-module-config-mutation.service.js +253 -0
- package/dist/modules/mcp/services/mcp-oauth-module-config-mutation.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-provider-material.service.d.ts +21 -0
- package/dist/modules/mcp/services/mcp-oauth-provider-material.service.js +130 -0
- package/dist/modules/mcp/services/mcp-oauth-provider-material.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-proxy-policy.service.d.ts +11 -0
- package/dist/modules/mcp/services/mcp-oauth-proxy-policy.service.js +53 -0
- package/dist/modules/mcp/services/mcp-oauth-proxy-policy.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-public-url.service.d.ts +7 -0
- package/dist/modules/mcp/services/mcp-oauth-public-url.service.js +47 -0
- package/dist/modules/mcp/services/mcp-oauth-public-url.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-readiness-registration.service.d.ts +25 -0
- package/dist/modules/mcp/services/mcp-oauth-readiness-registration.service.js +69 -0
- package/dist/modules/mcp/services/mcp-oauth-readiness-registration.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-readiness.service.d.ts +32 -0
- package/dist/modules/mcp/services/mcp-oauth-readiness.service.js +71 -0
- package/dist/modules/mcp/services/mcp-oauth-readiness.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-refresh-token.service.d.ts +13 -0
- package/dist/modules/mcp/services/mcp-oauth-refresh-token.service.js +91 -0
- package/dist/modules/mcp/services/mcp-oauth-refresh-token.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-resource-server.service.d.ts +40 -0
- package/dist/modules/mcp/services/mcp-oauth-resource-server.service.js +233 -0
- package/dist/modules/mcp/services/mcp-oauth-resource-server.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-route-gate.service.d.ts +12 -0
- package/dist/modules/mcp/services/mcp-oauth-route-gate.service.js +50 -0
- package/dist/modules/mcp/services/mcp-oauth-route-gate.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-runtime.service.d.ts +15 -0
- package/dist/modules/mcp/services/mcp-oauth-runtime.service.js +70 -0
- package/dist/modules/mcp/services/mcp-oauth-runtime.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-oauth-switch-off.service.d.ts +18 -0
- package/dist/modules/mcp/services/mcp-oauth-switch-off.service.js +74 -0
- package/dist/modules/mcp/services/mcp-oauth-switch-off.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-policy.service.d.ts +51 -0
- package/dist/modules/mcp/services/mcp-policy.service.js +162 -0
- package/dist/modules/mcp/services/mcp-policy.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-server.service.d.ts +50 -0
- package/dist/modules/mcp/services/mcp-server.service.js +513 -0
- package/dist/modules/mcp/services/mcp-server.service.js.map +1 -0
- package/dist/modules/mcp/services/mcp-subscription-registry.service.d.ts +76 -0
- package/dist/modules/mcp/services/mcp-subscription-registry.service.js +287 -0
- package/dist/modules/mcp/services/mcp-subscription-registry.service.js.map +1 -0
- package/dist/modules/mcp/tools/mcp-read-tool.service.d.ts +23 -0
- package/dist/modules/mcp/tools/mcp-read-tool.service.js +361 -0
- package/dist/modules/mcp/tools/mcp-read-tool.service.js.map +1 -0
- package/dist/modules/mcp/tools/mcp-target-discovery-tool.service.d.ts +35 -0
- package/dist/modules/mcp/tools/mcp-target-discovery-tool.service.js +374 -0
- package/dist/modules/mcp/tools/mcp-target-discovery-tool.service.js.map +1 -0
- package/dist/modules/mcp/validators/is-mcp-oauth-public-base-url.validator.d.ts +6 -0
- package/dist/modules/mcp/validators/is-mcp-oauth-public-base-url.validator.js +46 -0
- package/dist/modules/mcp/validators/is-mcp-oauth-public-base-url.validator.js.map +1 -0
- package/dist/modules/mcp/validators/is-mcp-oauth-redirect-uri.validator.d.ts +7 -0
- package/dist/modules/mcp/validators/is-mcp-oauth-redirect-uri.validator.js +65 -0
- package/dist/modules/mcp/validators/is-mcp-oauth-redirect-uri.validator.js.map +1 -0
- package/dist/modules/mcp/validators/is-mcp-origin.validator.d.ts +5 -0
- package/dist/modules/mcp/validators/is-mcp-origin.validator.js +35 -0
- package/dist/modules/mcp/validators/is-mcp-origin.validator.js.map +1 -0
- package/dist/modules/mdns/mdns.openapi.d.ts +1 -1
- package/dist/modules/mdns/services/mdns.service.d.ts +21 -4
- package/dist/modules/mdns/services/mdns.service.js +151 -69
- package/dist/modules/mdns/services/mdns.service.js.map +1 -1
- package/dist/modules/notifications/controllers/notifications.controller.d.ts +19 -0
- package/dist/modules/notifications/controllers/notifications.controller.js +312 -0
- package/dist/modules/notifications/controllers/notifications.controller.js.map +1 -0
- package/dist/modules/notifications/dto/bulk-remove-notifications.dto.d.ts +6 -0
- package/dist/modules/notifications/dto/bulk-remove-notifications.dto.js +56 -0
- package/dist/modules/notifications/dto/bulk-remove-notifications.dto.js.map +1 -0
- package/dist/modules/notifications/dto/bulk-update-notifications.dto.d.ts +8 -0
- package/dist/modules/notifications/dto/bulk-update-notifications.dto.js +78 -0
- package/dist/modules/notifications/dto/bulk-update-notifications.dto.js.map +1 -0
- package/dist/modules/notifications/dto/update-config.dto.d.ts +7 -0
- package/dist/modules/notifications/dto/update-config.dto.js +79 -0
- package/dist/modules/notifications/dto/update-config.dto.js.map +1 -0
- package/dist/modules/notifications/dto/update-notification.dto.d.ts +7 -0
- package/dist/modules/notifications/dto/update-notification.dto.js +58 -0
- package/dist/modules/notifications/dto/update-notification.dto.js.map +1 -0
- package/dist/modules/notifications/entities/notifications.entity.d.ts +19 -0
- package/dist/modules/notifications/entities/notifications.entity.js +209 -0
- package/dist/modules/notifications/entities/notifications.entity.js.map +1 -0
- package/dist/modules/notifications/models/config.model.d.ts +7 -0
- package/dist/modules/notifications/models/config.model.js +81 -0
- package/dist/modules/notifications/models/config.model.js.map +1 -0
- package/dist/modules/notifications/models/notification-action.model.d.ts +36 -0
- package/dist/modules/notifications/models/notification-action.model.js +132 -0
- package/dist/modules/notifications/models/notification-action.model.js.map +1 -0
- package/dist/modules/notifications/models/notifications-response.model.d.ts +13 -0
- package/dist/modules/notifications/models/notifications-response.model.js +69 -0
- package/dist/modules/notifications/models/notifications-response.model.js.map +1 -0
- package/dist/modules/notifications/notifications.constants.d.ts +43 -0
- package/dist/modules/notifications/notifications.constants.js +57 -0
- package/dist/modules/notifications/notifications.constants.js.map +1 -0
- package/dist/modules/notifications/notifications.exceptions.d.ts +6 -0
- package/dist/modules/notifications/notifications.exceptions.js +18 -0
- package/dist/modules/notifications/notifications.exceptions.js.map +1 -0
- package/dist/modules/notifications/notifications.module.d.ts +11 -0
- package/dist/modules/notifications/notifications.module.js +112 -0
- package/dist/modules/notifications/notifications.module.js.map +1 -0
- package/dist/modules/notifications/notifications.openapi.d.ts +6 -0
- package/dist/modules/notifications/notifications.openapi.js +18 -0
- package/dist/modules/notifications/notifications.openapi.js.map +1 -0
- package/dist/modules/notifications/notifications.utils.d.ts +1 -0
- package/dist/modules/notifications/notifications.utils.js +28 -0
- package/dist/modules/notifications/notifications.utils.js.map +1 -0
- package/dist/modules/notifications/platforms/notification-channel.platform.d.ts +31 -0
- package/dist/modules/notifications/platforms/notification-channel.platform.js +108 -0
- package/dist/modules/notifications/platforms/notification-channel.platform.js.map +1 -0
- package/dist/modules/notifications/services/notification-channel-registry.service.d.ts +8 -0
- package/dist/modules/notifications/services/notification-channel-registry.service.js +36 -0
- package/dist/modules/notifications/services/notification-channel-registry.service.js.map +1 -0
- package/dist/modules/notifications/services/notification-dispatcher.service.d.ts +28 -0
- package/dist/modules/notifications/services/notification-dispatcher.service.js +173 -0
- package/dist/modules/notifications/services/notification-dispatcher.service.js.map +1 -0
- package/dist/modules/notifications/services/notification-input.validator.d.ts +29 -0
- package/dist/modules/notifications/services/notification-input.validator.js +148 -0
- package/dist/modules/notifications/services/notification-input.validator.js.map +1 -0
- package/dist/modules/notifications/services/notifications-retention.service.d.ts +19 -0
- package/dist/modules/notifications/services/notifications-retention.service.js +151 -0
- package/dist/modules/notifications/services/notifications-retention.service.js.map +1 -0
- package/dist/modules/notifications/services/notifications.service.d.ts +67 -0
- package/dist/modules/notifications/services/notifications.service.js +348 -0
- package/dist/modules/notifications/services/notifications.service.js.map +1 -0
- package/dist/modules/platform/services/platform.service.d.ts +7 -0
- package/dist/modules/platform/services/platform.service.js +53 -1
- package/dist/modules/platform/services/platform.service.js.map +1 -1
- package/dist/modules/remote-access/controllers/remote-access.controller.d.ts +20 -0
- package/dist/modules/remote-access/controllers/remote-access.controller.js +160 -0
- package/dist/modules/remote-access/controllers/remote-access.controller.js.map +1 -0
- package/dist/modules/remote-access/dto/update-config.dto.d.ts +8 -0
- package/dist/modules/remote-access/dto/update-config.dto.js +104 -0
- package/dist/modules/remote-access/dto/update-config.dto.js.map +1 -0
- package/dist/modules/remote-access/models/config.model.d.ts +9 -0
- package/dist/modules/remote-access/models/config.model.js +113 -0
- package/dist/modules/remote-access/models/config.model.js.map +1 -0
- package/dist/modules/remote-access/models/provider.model.d.ts +38 -0
- package/dist/modules/remote-access/models/provider.model.js +311 -0
- package/dist/modules/remote-access/models/provider.model.js.map +1 -0
- package/dist/modules/remote-access/models/status.model.d.ts +12 -0
- package/dist/modules/remote-access/models/status.model.js +83 -0
- package/dist/modules/remote-access/models/status.model.js.map +1 -0
- package/dist/modules/remote-access/models/urls.model.d.ts +11 -0
- package/dist/modules/remote-access/models/urls.model.js +84 -0
- package/dist/modules/remote-access/models/urls.model.js.map +1 -0
- package/dist/modules/remote-access/platforms/remote-access-provider.platform.d.ts +38 -0
- package/dist/modules/remote-access/platforms/remote-access-provider.platform.js +3 -0
- package/dist/modules/remote-access/platforms/remote-access-provider.platform.js.map +1 -0
- package/dist/modules/remote-access/remote-access.constants.d.ts +11 -0
- package/dist/modules/remote-access/remote-access.constants.js +16 -0
- package/dist/modules/remote-access/remote-access.constants.js.map +1 -0
- package/dist/modules/remote-access/remote-access.exceptions.d.ts +12 -0
- package/dist/modules/remote-access/remote-access.exceptions.js +32 -0
- package/dist/modules/remote-access/remote-access.exceptions.js.map +1 -0
- package/dist/modules/remote-access/remote-access.module.d.ts +11 -0
- package/dist/modules/remote-access/remote-access.module.js +108 -0
- package/dist/modules/remote-access/remote-access.module.js.map +1 -0
- package/dist/modules/remote-access/remote-access.openapi.d.ts +6 -0
- package/dist/modules/remote-access/remote-access.openapi.js +23 -0
- package/dist/modules/remote-access/remote-access.openapi.js.map +1 -0
- package/dist/modules/remote-access/services/remote-access-posture.service.d.ts +12 -0
- package/dist/modules/remote-access/services/remote-access-posture.service.js +56 -0
- package/dist/modules/remote-access/services/remote-access-posture.service.js.map +1 -0
- package/dist/modules/remote-access/services/remote-access-provider-registry.service.d.ts +7 -0
- package/dist/modules/remote-access/services/remote-access-provider-registry.service.js +33 -0
- package/dist/modules/remote-access/services/remote-access-provider-registry.service.js.map +1 -0
- package/dist/modules/remote-access/services/remote-access-proxy-contribution.service.d.ts +29 -0
- package/dist/modules/remote-access/services/remote-access-proxy-contribution.service.js +141 -0
- package/dist/modules/remote-access/services/remote-access-proxy-contribution.service.js.map +1 -0
- package/dist/modules/remote-access/services/remote-access-status.service.d.ts +22 -0
- package/dist/modules/remote-access/services/remote-access-status.service.js +155 -0
- package/dist/modules/remote-access/services/remote-access-status.service.js.map +1 -0
- package/dist/modules/remote-access/services/remote-access-url.service.d.ts +41 -0
- package/dist/modules/remote-access/services/remote-access-url.service.js +205 -0
- package/dist/modules/remote-access/services/remote-access-url.service.js.map +1 -0
- package/dist/modules/remote-access/validators/is-remote-access-url.validator.d.ts +6 -0
- package/dist/modules/remote-access/validators/is-remote-access-url.validator.js +46 -0
- package/dist/modules/remote-access/validators/is-remote-access-url.validator.js.map +1 -0
- package/dist/modules/remote-access/validators/is-trusted-proxy-entry.validator.d.ts +5 -0
- package/dist/modules/remote-access/validators/is-trusted-proxy-entry.validator.js +26 -0
- package/dist/modules/remote-access/validators/is-trusted-proxy-entry.validator.js.map +1 -0
- package/dist/modules/scenes/controllers/scenes.controller.d.ts +7 -2
- package/dist/modules/scenes/controllers/scenes.controller.js +52 -2
- package/dist/modules/scenes/controllers/scenes.controller.js.map +1 -1
- package/dist/modules/scenes/dto/bulk-scenes.dto.d.ts +14 -0
- package/dist/modules/scenes/dto/bulk-scenes.dto.js +99 -0
- package/dist/modules/scenes/dto/bulk-scenes.dto.js.map +1 -0
- package/dist/modules/scenes/models/scenes-response.model.d.ts +4 -0
- package/dist/modules/scenes/models/scenes-response.model.js +16 -1
- package/dist/modules/scenes/models/scenes-response.model.js.map +1 -1
- package/dist/modules/scenes/scenes.module.js +3 -0
- package/dist/modules/scenes/scenes.module.js.map +1 -1
- package/dist/modules/scenes/scenes.openapi.d.ts +4 -2
- package/dist/modules/scenes/scenes.openapi.js +5 -0
- package/dist/modules/scenes/scenes.openapi.js.map +1 -1
- package/dist/modules/scenes/services/scene-executor.service.d.ts +4 -1
- package/dist/modules/scenes/services/scene-executor.service.js +28 -3
- package/dist/modules/scenes/services/scene-executor.service.js.map +1 -1
- package/dist/modules/scenes/services/scene-tool.service.d.ts +2 -3
- package/dist/modules/scenes/services/scene-tool.service.js +84 -25
- package/dist/modules/scenes/services/scene-tool.service.js.map +1 -1
- package/dist/modules/scenes/services/scenes-bulk.service.d.ts +9 -0
- package/dist/modules/scenes/services/scenes-bulk.service.js +42 -0
- package/dist/modules/scenes/services/scenes-bulk.service.js.map +1 -0
- package/dist/modules/scenes/services/scenes.service.d.ts +35 -0
- package/dist/modules/scenes/services/scenes.service.js +117 -0
- package/dist/modules/scenes/services/scenes.service.js.map +1 -1
- package/dist/modules/scenes/validators/scene-exists-constraint.validator.js +1 -1
- package/dist/modules/scenes/validators/scene-exists-constraint.validator.js.map +1 -1
- package/dist/modules/security/listeners/security-state.listener.d.ts +1 -0
- package/dist/modules/security/listeners/security-state.listener.js +9 -1
- package/dist/modules/security/listeners/security-state.listener.js.map +1 -1
- package/dist/modules/security/providers/security-sensors.provider.d.ts +12 -1
- package/dist/modules/security/providers/security-sensors.provider.js +132 -12
- package/dist/modules/security/providers/security-sensors.provider.js.map +1 -1
- package/dist/modules/security/security.openapi.d.ts +2 -1
- package/dist/modules/security/security.openapi.js +4 -0
- package/dist/modules/security/security.openapi.js.map +1 -1
- package/dist/modules/security/services/security-aggregator.service.d.ts +12 -2
- package/dist/modules/security/services/security-aggregator.service.js +33 -2
- package/dist/modules/security/services/security-aggregator.service.js.map +1 -1
- package/dist/modules/security/services/security-events.service.d.ts +7 -1
- package/dist/modules/security/services/security-events.service.js +38 -2
- package/dist/modules/security/services/security-events.service.js.map +1 -1
- package/dist/modules/security/services/security.service.d.ts +4 -1
- package/dist/modules/security/services/security.service.js +8 -0
- package/dist/modules/security/services/security.service.js.map +1 -1
- package/dist/modules/spaces/controllers/spaces.controller.d.ts +6 -2
- package/dist/modules/spaces/controllers/spaces.controller.js +43 -4
- package/dist/modules/spaces/controllers/spaces.controller.js.map +1 -1
- package/dist/modules/spaces/dto/bulk-assign.dto.js +1 -0
- package/dist/modules/spaces/dto/bulk-assign.dto.js.map +1 -1
- package/dist/modules/spaces/dto/bulk-spaces.dto.d.ts +7 -0
- package/dist/modules/spaces/dto/bulk-spaces.dto.js +53 -0
- package/dist/modules/spaces/dto/bulk-spaces.dto.js.map +1 -0
- package/dist/modules/spaces/dto/update-config.dto.js +1 -1
- package/dist/modules/spaces/models/config.model.js +1 -1
- package/dist/modules/spaces/models/spaces-response.model.d.ts +4 -0
- package/dist/modules/spaces/models/spaces-response.model.js +16 -1
- package/dist/modules/spaces/models/spaces-response.model.js.map +1 -1
- package/dist/modules/spaces/services/spaces-bulk.service.d.ts +8 -0
- package/dist/modules/spaces/services/spaces-bulk.service.js +35 -0
- package/dist/modules/spaces/services/spaces-bulk.service.js.map +1 -0
- package/dist/modules/spaces/services/spaces.service.d.ts +51 -1
- package/dist/modules/spaces/services/spaces.service.js +326 -19
- package/dist/modules/spaces/services/spaces.service.js.map +1 -1
- package/dist/modules/spaces/spaces.module.js +3 -0
- package/dist/modules/spaces/spaces.module.js.map +1 -1
- package/dist/modules/spaces/spaces.openapi.d.ts +4 -2
- package/dist/modules/spaces/spaces.openapi.js +5 -0
- package/dist/modules/spaces/spaces.openapi.js.map +1 -1
- package/dist/modules/storage/interfaces/storage-plugin.interface.d.ts +1 -0
- package/dist/modules/storage/models/config.model.js +2 -0
- package/dist/modules/storage/models/config.model.js.map +1 -1
- package/dist/modules/storage/services/storage-fallback-monitor.service.d.ts +14 -0
- package/dist/modules/storage/services/storage-fallback-monitor.service.js +110 -0
- package/dist/modules/storage/services/storage-fallback-monitor.service.js.map +1 -0
- package/dist/modules/storage/services/storage.service.d.ts +15 -0
- package/dist/modules/storage/services/storage.service.js +112 -0
- package/dist/modules/storage/services/storage.service.js.map +1 -1
- package/dist/modules/storage/storage.module.js +2 -1
- package/dist/modules/storage/storage.module.js.map +1 -1
- package/dist/modules/storage/storage.types.d.ts +1 -0
- package/dist/modules/swagger/decorators/api-documentation.decorator.d.ts +1 -0
- package/dist/modules/swagger/decorators/api-documentation.decorator.js +19 -1
- package/dist/modules/swagger/decorators/api-documentation.decorator.js.map +1 -1
- package/dist/modules/system/commands/command.utils.d.ts +2 -0
- package/dist/modules/system/commands/command.utils.js +14 -0
- package/dist/modules/system/commands/command.utils.js.map +1 -1
- package/dist/modules/system/commands/update-check.command.js +2 -3
- package/dist/modules/system/commands/update-check.command.js.map +1 -1
- package/dist/modules/system/commands/update-panel.command.js +2 -2
- package/dist/modules/system/commands/update-panel.command.js.map +1 -1
- package/dist/modules/system/commands/update-server.command.d.ts +1 -0
- package/dist/modules/system/commands/update-server.command.js +36 -11
- package/dist/modules/system/commands/update-server.command.js.map +1 -1
- package/dist/modules/system/dto/update-config.dto.d.ts +2 -1
- package/dist/modules/system/dto/update-config.dto.js +15 -0
- package/dist/modules/system/dto/update-config.dto.js.map +1 -1
- package/dist/modules/system/models/config.model.d.ts +2 -1
- package/dist/modules/system/models/config.model.js +14 -0
- package/dist/modules/system/models/config.model.js.map +1 -1
- package/dist/modules/system/privileged-worker.module.d.ts +2 -0
- package/dist/modules/system/privileged-worker.module.js +24 -0
- package/dist/modules/system/privileged-worker.module.js.map +1 -0
- package/dist/modules/system/services/privileged-worker.service.d.ts +35 -0
- package/dist/modules/system/services/privileged-worker.service.js +200 -0
- package/dist/modules/system/services/privileged-worker.service.js.map +1 -0
- package/dist/modules/system/services/system-command.service.d.ts +3 -3
- package/dist/modules/system/services/system-command.service.js +5 -5
- package/dist/modules/system/services/system-command.service.js.map +1 -1
- package/dist/modules/system/services/system-throttle-monitor.service.d.ts +11 -0
- package/dist/modules/system/services/system-throttle-monitor.service.js +107 -0
- package/dist/modules/system/services/system-throttle-monitor.service.js.map +1 -0
- package/dist/modules/system/services/update-executor.service.d.ts +10 -5
- package/dist/modules/system/services/update-executor.service.js +131 -175
- package/dist/modules/system/services/update-executor.service.js.map +1 -1
- package/dist/modules/system/services/update.service.d.ts +16 -1
- package/dist/modules/system/services/update.service.js +132 -37
- package/dist/modules/system/services/update.service.js.map +1 -1
- package/dist/modules/system/system.constants.d.ts +6 -0
- package/dist/modules/system/system.constants.js +8 -1
- package/dist/modules/system/system.constants.js.map +1 -1
- package/dist/modules/system/system.exceptions.d.ts +3 -0
- package/dist/modules/system/system.exceptions.js +8 -1
- package/dist/modules/system/system.exceptions.js.map +1 -1
- package/dist/modules/system/system.module.js +2 -0
- package/dist/modules/system/system.module.js.map +1 -1
- package/dist/modules/tools/platforms/tool-provider.platform.d.ts +48 -1
- package/dist/modules/tools/platforms/tool-provider.platform.js +39 -0
- package/dist/modules/tools/platforms/tool-provider.platform.js.map +1 -1
- package/dist/modules/tools/services/base-tool-provider.service.d.ts +3 -3
- package/dist/modules/tools/services/base-tool-provider.service.js +43 -10
- package/dist/modules/tools/services/base-tool-provider.service.js.map +1 -1
- package/dist/modules/tools/services/short-id-mapping.service.d.ts +24 -0
- package/dist/modules/tools/services/short-id-mapping.service.js +119 -1
- package/dist/modules/tools/services/short-id-mapping.service.js.map +1 -1
- package/dist/modules/tools/services/tool-provider-registry.service.d.ts +7 -3
- package/dist/modules/tools/services/tool-provider-registry.service.js +125 -15
- package/dist/modules/tools/services/tool-provider-registry.service.js.map +1 -1
- package/dist/modules/tools/tools.constants.d.ts +3 -0
- package/dist/modules/tools/tools.constants.js +4 -1
- package/dist/modules/tools/tools.constants.js.map +1 -1
- package/dist/modules/users/controllers/users.controller.d.ts +6 -2
- package/dist/modules/users/controllers/users.controller.js +33 -2
- package/dist/modules/users/controllers/users.controller.js.map +1 -1
- package/dist/modules/users/dto/bulk-users.dto.d.ts +7 -0
- package/dist/modules/users/dto/bulk-users.dto.js +53 -0
- package/dist/modules/users/dto/bulk-users.dto.js.map +1 -0
- package/dist/modules/users/models/users-response.model.d.ts +4 -0
- package/dist/modules/users/models/users-response.model.js +16 -1
- package/dist/modules/users/models/users-response.model.js.map +1 -1
- package/dist/modules/users/services/user-lifecycle-mutation-registry.service.d.ts +28 -0
- package/dist/modules/users/services/user-lifecycle-mutation-registry.service.js +79 -0
- package/dist/modules/users/services/user-lifecycle-mutation-registry.service.js.map +1 -0
- package/dist/modules/users/services/users-bulk.service.d.ts +8 -0
- package/dist/modules/users/services/users-bulk.service.js +44 -0
- package/dist/modules/users/services/users-bulk.service.js.map +1 -0
- package/dist/modules/users/services/users.service.d.ts +3 -1
- package/dist/modules/users/services/users.service.js +12 -5
- package/dist/modules/users/services/users.service.js.map +1 -1
- package/dist/modules/users/users.exceptions.d.ts +3 -0
- package/dist/modules/users/users.exceptions.js +8 -1
- package/dist/modules/users/users.exceptions.js.map +1 -1
- package/dist/modules/users/users.module.js +5 -1
- package/dist/modules/users/users.module.js.map +1 -1
- package/dist/modules/users/users.openapi.d.ts +3 -2
- package/dist/modules/users/users.openapi.js +5 -0
- package/dist/modules/users/users.openapi.js.map +1 -1
- package/dist/modules/users/validators/user-exists-constraint.validator.js +1 -1
- package/dist/modules/users/validators/user-exists-constraint.validator.js.map +1 -1
- package/dist/modules/weather/controllers/locations.controller.d.ts +6 -2
- package/dist/modules/weather/controllers/locations.controller.js +39 -3
- package/dist/modules/weather/controllers/locations.controller.js.map +1 -1
- package/dist/modules/weather/dto/bulk-locations.dto.d.ts +7 -0
- package/dist/modules/weather/dto/bulk-locations.dto.js +53 -0
- package/dist/modules/weather/dto/bulk-locations.dto.js.map +1 -0
- package/dist/modules/weather/models/locations-response.model.d.ts +4 -0
- package/dist/modules/weather/models/locations-response.model.js +16 -1
- package/dist/modules/weather/models/locations-response.model.js.map +1 -1
- package/dist/modules/weather/services/locations-bulk.service.d.ts +8 -0
- package/dist/modules/weather/services/locations-bulk.service.js +35 -0
- package/dist/modules/weather/services/locations-bulk.service.js.map +1 -0
- package/dist/modules/weather/services/weather.service.d.ts +13 -3
- package/dist/modules/weather/services/weather.service.js +57 -4
- package/dist/modules/weather/services/weather.service.js.map +1 -1
- package/dist/modules/weather/weather.module.d.ts +5 -1
- package/dist/modules/weather/weather.module.js +9 -1
- package/dist/modules/weather/weather.module.js.map +1 -1
- package/dist/modules/weather/weather.openapi.d.ts +4 -2
- package/dist/modules/weather/weather.openapi.js +5 -0
- package/dist/modules/weather/weather.openapi.js.map +1 -1
- package/dist/modules/websocket/gateway/websocket.gateway.d.ts +7 -1
- package/dist/modules/websocket/gateway/websocket.gateway.js +62 -10
- package/dist/modules/websocket/gateway/websocket.gateway.js.map +1 -1
- package/dist/modules/websocket/services/ws-auth.service.js +7 -0
- package/dist/modules/websocket/services/ws-auth.service.js.map +1 -1
- package/dist/modules/websocket/websocket.constants.d.ts +1 -0
- package/dist/modules/websocket/websocket.constants.js +2 -1
- package/dist/modules/websocket/websocket.constants.js.map +1 -1
- package/dist/modules/websocket/websocket.module.js +2 -0
- package/dist/modules/websocket/websocket.module.js.map +1 -1
- package/dist/plugins/buddy-claude/buddy-claude.plugin.js +7 -0
- package/dist/plugins/buddy-claude/buddy-claude.plugin.js.map +1 -1
- package/dist/plugins/buddy-claude/dto/update-config.dto.js +2 -3
- package/dist/plugins/buddy-claude/dto/update-config.dto.js.map +1 -1
- package/dist/plugins/buddy-claude/models/config.model.d.ts +1 -0
- package/dist/plugins/buddy-claude/models/config.model.js +12 -1
- package/dist/plugins/buddy-claude/models/config.model.js.map +1 -1
- package/dist/plugins/buddy-claude/platforms/claude.provider.d.ts +3 -2
- package/dist/plugins/buddy-claude/platforms/claude.provider.js +3 -0
- package/dist/plugins/buddy-claude/platforms/claude.provider.js.map +1 -1
- package/dist/plugins/buddy-claude-setup-token/buddy-claude-setup-token.plugin.js +7 -0
- package/dist/plugins/buddy-claude-setup-token/buddy-claude-setup-token.plugin.js.map +1 -1
- package/dist/plugins/buddy-claude-setup-token/dto/update-config.dto.js +2 -1
- package/dist/plugins/buddy-claude-setup-token/dto/update-config.dto.js.map +1 -1
- package/dist/plugins/buddy-claude-setup-token/models/config.model.d.ts +1 -0
- package/dist/plugins/buddy-claude-setup-token/models/config.model.js +12 -1
- package/dist/plugins/buddy-claude-setup-token/models/config.model.js.map +1 -1
- package/dist/plugins/buddy-claude-setup-token/platforms/claude-setup-token.provider.d.ts +3 -2
- package/dist/plugins/buddy-claude-setup-token/platforms/claude-setup-token.provider.js +3 -0
- package/dist/plugins/buddy-claude-setup-token/platforms/claude-setup-token.provider.js.map +1 -1
- package/dist/plugins/buddy-discord/buddy-discord.plugin.d.ts +3 -3
- package/dist/plugins/buddy-discord/buddy-discord.plugin.js +12 -5
- package/dist/plugins/buddy-discord/buddy-discord.plugin.js.map +1 -1
- package/dist/plugins/buddy-discord/dto/update-config.dto.js +2 -1
- package/dist/plugins/buddy-discord/dto/update-config.dto.js.map +1 -1
- package/dist/plugins/buddy-discord/models/config.model.d.ts +1 -0
- package/dist/plugins/buddy-discord/models/config.model.js +12 -1
- package/dist/plugins/buddy-discord/models/config.model.js.map +1 -1
- package/dist/plugins/buddy-discord/platforms/discord-bot.provider.d.ts +7 -3
- package/dist/plugins/buddy-discord/platforms/discord-bot.provider.js +4 -1
- package/dist/plugins/buddy-discord/platforms/discord-bot.provider.js.map +1 -1
- package/dist/plugins/buddy-elevenlabs/buddy-elevenlabs.plugin.js +7 -0
- package/dist/plugins/buddy-elevenlabs/buddy-elevenlabs.plugin.js.map +1 -1
- package/dist/plugins/buddy-elevenlabs/dto/update-config.dto.js +2 -3
- package/dist/plugins/buddy-elevenlabs/dto/update-config.dto.js.map +1 -1
- package/dist/plugins/buddy-elevenlabs/models/config.model.d.ts +1 -0
- package/dist/plugins/buddy-elevenlabs/models/config.model.js +12 -1
- package/dist/plugins/buddy-elevenlabs/models/config.model.js.map +1 -1
- package/dist/plugins/buddy-ollama/platforms/ollama.provider.d.ts +5 -3
- package/dist/plugins/buddy-ollama/platforms/ollama.provider.js +55 -24
- package/dist/plugins/buddy-ollama/platforms/ollama.provider.js.map +1 -1
- package/dist/plugins/buddy-openai/buddy-openai.plugin.js +7 -0
- package/dist/plugins/buddy-openai/buddy-openai.plugin.js.map +1 -1
- package/dist/plugins/buddy-openai/dto/update-config.dto.js +2 -3
- package/dist/plugins/buddy-openai/dto/update-config.dto.js.map +1 -1
- package/dist/plugins/buddy-openai/models/config.model.d.ts +1 -0
- package/dist/plugins/buddy-openai/models/config.model.js +12 -1
- package/dist/plugins/buddy-openai/models/config.model.js.map +1 -1
- package/dist/plugins/buddy-openai/platforms/openai.provider.d.ts +3 -2
- package/dist/plugins/buddy-openai/platforms/openai.provider.js +3 -0
- package/dist/plugins/buddy-openai/platforms/openai.provider.js.map +1 -1
- package/dist/plugins/buddy-openai-codex/buddy-openai-codex.plugin.js +17 -0
- package/dist/plugins/buddy-openai-codex/buddy-openai-codex.plugin.js.map +1 -1
- package/dist/plugins/buddy-openai-codex/dto/update-config.dto.js +4 -3
- package/dist/plugins/buddy-openai-codex/dto/update-config.dto.js.map +1 -1
- package/dist/plugins/buddy-openai-codex/models/config.model.d.ts +3 -0
- package/dist/plugins/buddy-openai-codex/models/config.model.js +36 -3
- package/dist/plugins/buddy-openai-codex/models/config.model.js.map +1 -1
- package/dist/plugins/buddy-openai-codex/platforms/openai-codex.provider.d.ts +5 -3
- package/dist/plugins/buddy-openai-codex/platforms/openai-codex.provider.js +429 -48
- package/dist/plugins/buddy-openai-codex/platforms/openai-codex.provider.js.map +1 -1
- package/dist/plugins/buddy-telegram/buddy-telegram.plugin.d.ts +3 -3
- package/dist/plugins/buddy-telegram/buddy-telegram.plugin.js +12 -5
- package/dist/plugins/buddy-telegram/buddy-telegram.plugin.js.map +1 -1
- package/dist/plugins/buddy-telegram/dto/update-config.dto.js +2 -1
- package/dist/plugins/buddy-telegram/dto/update-config.dto.js.map +1 -1
- package/dist/plugins/buddy-telegram/models/config.model.d.ts +1 -0
- package/dist/plugins/buddy-telegram/models/config.model.js +12 -1
- package/dist/plugins/buddy-telegram/models/config.model.js.map +1 -1
- package/dist/plugins/buddy-telegram/platforms/telegram-bot.provider.d.ts +7 -3
- package/dist/plugins/buddy-telegram/platforms/telegram-bot.provider.js +4 -1
- package/dist/plugins/buddy-telegram/platforms/telegram-bot.provider.js.map +1 -1
- package/dist/plugins/buddy-voiceai/buddy-voiceai.plugin.js +7 -0
- package/dist/plugins/buddy-voiceai/buddy-voiceai.plugin.js.map +1 -1
- package/dist/plugins/buddy-voiceai/dto/update-config.dto.js +2 -3
- package/dist/plugins/buddy-voiceai/dto/update-config.dto.js.map +1 -1
- package/dist/plugins/buddy-voiceai/models/config.model.d.ts +1 -0
- package/dist/plugins/buddy-voiceai/models/config.model.js +12 -1
- package/dist/plugins/buddy-voiceai/models/config.model.js.map +1 -1
- package/dist/plugins/buddy-whatsapp/buddy-whatsapp.plugin.d.ts +3 -3
- package/dist/plugins/buddy-whatsapp/buddy-whatsapp.plugin.js +5 -5
- package/dist/plugins/buddy-whatsapp/buddy-whatsapp.plugin.js.map +1 -1
- package/dist/plugins/buddy-whatsapp/platforms/whatsapp-bot.provider.d.ts +10 -6
- package/dist/plugins/buddy-whatsapp/platforms/whatsapp-bot.provider.js +9 -6
- package/dist/plugins/buddy-whatsapp/platforms/whatsapp-bot.provider.js.map +1 -1
- package/dist/plugins/data-sources-device-channel/dto/create-data-source.dto.js +2 -0
- package/dist/plugins/data-sources-device-channel/dto/create-data-source.dto.js.map +1 -1
- package/dist/plugins/data-sources-device-channel/dto/update-data-source.dto.js +2 -0
- package/dist/plugins/data-sources-device-channel/dto/update-data-source.dto.js.map +1 -1
- package/dist/plugins/data-sources-device-channel/validators/device-channel-exists-constraint.validator.js +1 -1
- package/dist/plugins/data-sources-device-channel/validators/device-channel-exists-constraint.validator.js.map +1 -1
- package/dist/plugins/devices-home-assistant/controllers/home-assistant-discovery.controller.d.ts +4 -2
- package/dist/plugins/devices-home-assistant/controllers/home-assistant-discovery.controller.js +17 -5
- package/dist/plugins/devices-home-assistant/controllers/home-assistant-discovery.controller.js.map +1 -1
- package/dist/plugins/devices-home-assistant/controllers/home-assistant-wizard.controller.d.ts +12 -0
- package/dist/plugins/devices-home-assistant/controllers/home-assistant-wizard.controller.js +147 -0
- package/dist/plugins/devices-home-assistant/controllers/home-assistant-wizard.controller.js.map +1 -0
- package/dist/plugins/devices-home-assistant/devices-home-assistant.openapi.d.ts +4 -2
- package/dist/plugins/devices-home-assistant/devices-home-assistant.openapi.js +10 -0
- package/dist/plugins/devices-home-assistant/devices-home-assistant.openapi.js.map +1 -1
- package/dist/plugins/devices-home-assistant/devices-home-assistant.plugin.d.ts +5 -3
- package/dist/plugins/devices-home-assistant/devices-home-assistant.plugin.js +19 -5
- package/dist/plugins/devices-home-assistant/devices-home-assistant.plugin.js.map +1 -1
- package/dist/plugins/devices-home-assistant/dto/wizard-adopt.dto.d.ts +6 -0
- package/dist/plugins/devices-home-assistant/dto/wizard-adopt.dto.js +49 -0
- package/dist/plugins/devices-home-assistant/dto/wizard-adopt.dto.js.map +1 -0
- package/dist/plugins/devices-home-assistant/models/config.model.d.ts +1 -0
- package/dist/plugins/devices-home-assistant/models/config.model.js +12 -1
- package/dist/plugins/devices-home-assistant/models/config.model.js.map +1 -1
- package/dist/plugins/devices-home-assistant/models/helper-mapping-preview.model.d.ts +1 -0
- package/dist/plugins/devices-home-assistant/models/helper-mapping-preview.model.js +12 -0
- package/dist/plugins/devices-home-assistant/models/helper-mapping-preview.model.js.map +1 -1
- package/dist/plugins/devices-home-assistant/models/wizard.model.d.ts +39 -0
- package/dist/plugins/devices-home-assistant/models/wizard.model.js +221 -0
- package/dist/plugins/devices-home-assistant/models/wizard.model.js.map +1 -0
- package/dist/plugins/devices-home-assistant/services/device-adoption.service.d.ts +2 -1
- package/dist/plugins/devices-home-assistant/services/device-adoption.service.js +5 -4
- package/dist/plugins/devices-home-assistant/services/device-adoption.service.js.map +1 -1
- package/dist/plugins/devices-home-assistant/services/ha-mdns-discoverer.service.d.ts +15 -7
- package/dist/plugins/devices-home-assistant/services/ha-mdns-discoverer.service.js +69 -56
- package/dist/plugins/devices-home-assistant/services/ha-mdns-discoverer.service.js.map +1 -1
- package/dist/plugins/devices-home-assistant/services/helper-adoption.service.d.ts +7 -2
- package/dist/plugins/devices-home-assistant/services/helper-adoption.service.js +33 -7
- package/dist/plugins/devices-home-assistant/services/helper-adoption.service.js.map +1 -1
- package/dist/plugins/devices-home-assistant/services/helper-mapping-preview.service.d.ts +9 -0
- package/dist/plugins/devices-home-assistant/services/helper-mapping-preview.service.js +23 -0
- package/dist/plugins/devices-home-assistant/services/helper-mapping-preview.service.js.map +1 -1
- package/dist/plugins/devices-home-assistant/services/home-assistant.http.service.d.ts +6 -1
- package/dist/plugins/devices-home-assistant/services/home-assistant.http.service.js +76 -11
- package/dist/plugins/devices-home-assistant/services/home-assistant.http.service.js.map +1 -1
- package/dist/plugins/devices-home-assistant/services/home-assistant.ws.service.d.ts +18 -5
- package/dist/plugins/devices-home-assistant/services/home-assistant.ws.service.js +94 -7
- package/dist/plugins/devices-home-assistant/services/home-assistant.ws.service.js.map +1 -1
- package/dist/plugins/devices-home-assistant/services/mapping-preview.service.d.ts +10 -0
- package/dist/plugins/devices-home-assistant/services/mapping-preview.service.js +28 -0
- package/dist/plugins/devices-home-assistant/services/mapping-preview.service.js.map +1 -1
- package/dist/plugins/devices-home-assistant/services/wizard.service.d.ts +34 -0
- package/dist/plugins/devices-home-assistant/services/wizard.service.js +372 -0
- package/dist/plugins/devices-home-assistant/services/wizard.service.js.map +1 -0
- package/dist/plugins/devices-home-assistant/utils/helper-structure.utils.d.ts +3 -0
- package/dist/plugins/devices-home-assistant/utils/helper-structure.utils.js +44 -0
- package/dist/plugins/devices-home-assistant/utils/helper-structure.utils.js.map +1 -0
- package/dist/plugins/devices-homekit/controllers/homekit-bridge.controller.d.ts +14 -0
- package/dist/plugins/devices-homekit/controllers/homekit-bridge.controller.js +125 -0
- package/dist/plugins/devices-homekit/controllers/homekit-bridge.controller.js.map +1 -0
- package/dist/plugins/devices-homekit/devices-homekit.constants.d.ts +16 -0
- package/dist/plugins/devices-homekit/devices-homekit.constants.js +57 -0
- package/dist/plugins/devices-homekit/devices-homekit.constants.js.map +1 -0
- package/dist/plugins/devices-homekit/devices-homekit.exceptions.d.ts +12 -0
- package/dist/plugins/devices-homekit/devices-homekit.exceptions.js +32 -0
- package/dist/plugins/devices-homekit/devices-homekit.exceptions.js.map +1 -0
- package/dist/plugins/devices-homekit/devices-homekit.openapi.d.ts +6 -0
- package/dist/plugins/devices-homekit/devices-homekit.openapi.js +19 -0
- package/dist/plugins/devices-homekit/devices-homekit.openapi.js.map +1 -0
- package/dist/plugins/devices-homekit/devices-homekit.plugin.d.ts +24 -0
- package/dist/plugins/devices-homekit/devices-homekit.plugin.js +183 -0
- package/dist/plugins/devices-homekit/devices-homekit.plugin.js.map +1 -0
- package/dist/plugins/devices-homekit/dto/bridge-map.dto.d.ts +6 -0
- package/dist/plugins/devices-homekit/dto/bridge-map.dto.js +50 -0
- package/dist/plugins/devices-homekit/dto/bridge-map.dto.js.map +1 -0
- package/dist/plugins/devices-homekit/dto/update-config.dto.d.ts +11 -0
- package/dist/plugins/devices-homekit/dto/update-config.dto.js +138 -0
- package/dist/plugins/devices-homekit/dto/update-config.dto.js.map +1 -0
- package/dist/plugins/devices-homekit/listeners/homekit-event.listener.d.ts +8 -0
- package/dist/plugins/devices-homekit/listeners/homekit-event.listener.js +72 -0
- package/dist/plugins/devices-homekit/listeners/homekit-event.listener.js.map +1 -0
- package/dist/plugins/devices-homekit/mappers/base.mapper.d.ts +15 -0
- package/dist/plugins/devices-homekit/mappers/base.mapper.js +74 -0
- package/dist/plugins/devices-homekit/mappers/base.mapper.js.map +1 -0
- package/dist/plugins/devices-homekit/mappers/battery.mapper.d.ts +6 -0
- package/dist/plugins/devices-homekit/mappers/battery.mapper.js +130 -0
- package/dist/plugins/devices-homekit/mappers/battery.mapper.js.map +1 -0
- package/dist/plugins/devices-homekit/mappers/homekit-mapper.interface.d.ts +28 -0
- package/dist/plugins/devices-homekit/mappers/homekit-mapper.interface.js +3 -0
- package/dist/plugins/devices-homekit/mappers/homekit-mapper.interface.js.map +1 -0
- package/dist/plugins/devices-homekit/mappers/lightbulb.mapper.d.ts +9 -0
- package/dist/plugins/devices-homekit/mappers/lightbulb.mapper.js +115 -0
- package/dist/plugins/devices-homekit/mappers/lightbulb.mapper.js.map +1 -0
- package/dist/plugins/devices-homekit/mappers/lock.mapper.d.ts +10 -0
- package/dist/plugins/devices-homekit/mappers/lock.mapper.js +59 -0
- package/dist/plugins/devices-homekit/mappers/lock.mapper.js.map +1 -0
- package/dist/plugins/devices-homekit/mappers/outlet.mapper.d.ts +9 -0
- package/dist/plugins/devices-homekit/mappers/outlet.mapper.js +44 -0
- package/dist/plugins/devices-homekit/mappers/outlet.mapper.js.map +1 -0
- package/dist/plugins/devices-homekit/mappers/sensor.mapper.d.ts +10 -0
- package/dist/plugins/devices-homekit/mappers/sensor.mapper.js +168 -0
- package/dist/plugins/devices-homekit/mappers/sensor.mapper.js.map +1 -0
- package/dist/plugins/devices-homekit/mappers/switch.mapper.d.ts +9 -0
- package/dist/plugins/devices-homekit/mappers/switch.mapper.js +35 -0
- package/dist/plugins/devices-homekit/mappers/switch.mapper.js.map +1 -0
- package/dist/plugins/devices-homekit/mappers/thermostat-coordinator.d.ts +43 -0
- package/dist/plugins/devices-homekit/mappers/thermostat-coordinator.js +430 -0
- package/dist/plugins/devices-homekit/mappers/thermostat-coordinator.js.map +1 -0
- package/dist/plugins/devices-homekit/mappers/thermostat.mapper.d.ts +11 -0
- package/dist/plugins/devices-homekit/mappers/thermostat.mapper.js +97 -0
- package/dist/plugins/devices-homekit/mappers/thermostat.mapper.js.map +1 -0
- package/dist/plugins/devices-homekit/mappers/window-covering.mapper.d.ts +10 -0
- package/dist/plugins/devices-homekit/mappers/window-covering.mapper.js +94 -0
- package/dist/plugins/devices-homekit/mappers/window-covering.mapper.js.map +1 -0
- package/dist/plugins/devices-homekit/models/bridge-candidate.model.d.ts +15 -0
- package/dist/plugins/devices-homekit/models/bridge-candidate.model.js +150 -0
- package/dist/plugins/devices-homekit/models/bridge-candidate.model.js.map +1 -0
- package/dist/plugins/devices-homekit/models/bridge-status.model.d.ts +16 -0
- package/dist/plugins/devices-homekit/models/bridge-status.model.js +156 -0
- package/dist/plugins/devices-homekit/models/bridge-status.model.js.map +1 -0
- package/dist/plugins/devices-homekit/models/config.model.d.ts +12 -0
- package/dist/plugins/devices-homekit/models/config.model.js +134 -0
- package/dist/plugins/devices-homekit/models/config.model.js.map +1 -0
- package/dist/plugins/devices-homekit/services/homekit-actions.service.d.ts +14 -0
- package/dist/plugins/devices-homekit/services/homekit-actions.service.js +92 -0
- package/dist/plugins/devices-homekit/services/homekit-actions.service.js.map +1 -0
- package/dist/plugins/devices-homekit/services/homekit-bridge.service.d.ts +43 -0
- package/dist/plugins/devices-homekit/services/homekit-bridge.service.js +497 -0
- package/dist/plugins/devices-homekit/services/homekit-bridge.service.js.map +1 -0
- package/dist/plugins/devices-homekit/services/homekit-command.dispatcher.d.ts +11 -0
- package/dist/plugins/devices-homekit/services/homekit-command.dispatcher.js +68 -0
- package/dist/plugins/devices-homekit/services/homekit-command.dispatcher.js.map +1 -0
- package/dist/plugins/devices-homekit/services/homekit-mapper-registry.service.d.ts +34 -0
- package/dist/plugins/devices-homekit/services/homekit-mapper-registry.service.js +179 -0
- package/dist/plugins/devices-homekit/services/homekit-mapper-registry.service.js.map +1 -0
- package/dist/plugins/devices-homekit/services/homekit-wizard.service.d.ts +15 -0
- package/dist/plugins/devices-homekit/services/homekit-wizard.service.js +75 -0
- package/dist/plugins/devices-homekit/services/homekit-wizard.service.js.map +1 -0
- package/dist/plugins/devices-homekit/validators/is-not-forbidden-homekit-pin.validator.d.ts +2 -0
- package/dist/plugins/devices-homekit/validators/is-not-forbidden-homekit-pin.validator.js +30 -0
- package/dist/plugins/devices-homekit/validators/is-not-forbidden-homekit-pin.validator.js.map +1 -0
- package/dist/plugins/devices-homey/connectors/homey-connector.factory.d.ts +9 -0
- package/dist/plugins/devices-homey/connectors/homey-connector.factory.js +3 -0
- package/dist/plugins/devices-homey/connectors/homey-connector.factory.js.map +1 -0
- package/dist/plugins/devices-homey/connectors/homey-connector.interface.d.ts +14 -0
- package/dist/plugins/devices-homey/connectors/homey-connector.interface.js +3 -0
- package/dist/plugins/devices-homey/connectors/homey-connector.interface.js.map +1 -0
- package/dist/plugins/devices-homey/connectors/homey-connector.types.d.ts +3 -0
- package/dist/plugins/devices-homey/connectors/homey-connector.types.js +3 -0
- package/dist/plugins/devices-homey/connectors/homey-connector.types.js.map +1 -0
- package/dist/plugins/devices-homey/connectors/homey-local-connector.factory.d.ts +8 -0
- package/dist/plugins/devices-homey/connectors/homey-local-connector.factory.js +36 -0
- package/dist/plugins/devices-homey/connectors/homey-local-connector.factory.js.map +1 -0
- package/dist/plugins/devices-homey/connectors/homey-local.connector.d.ts +36 -0
- package/dist/plugins/devices-homey/connectors/homey-local.connector.js +266 -0
- package/dist/plugins/devices-homey/connectors/homey-local.connector.js.map +1 -0
- package/dist/plugins/devices-homey/connectors/homey-local.error-mapper.d.ts +3 -0
- package/dist/plugins/devices-homey/connectors/homey-local.error-mapper.js +63 -0
- package/dist/plugins/devices-homey/connectors/homey-local.error-mapper.js.map +1 -0
- package/dist/plugins/devices-homey/connectors/homey-local.transformer.d.ts +10 -0
- package/dist/plugins/devices-homey/connectors/homey-local.transformer.js +264 -0
- package/dist/plugins/devices-homey/connectors/homey-local.transformer.js.map +1 -0
- package/dist/plugins/devices-homey/connectors/homey-local.transport.d.ts +6 -0
- package/dist/plugins/devices-homey/connectors/homey-local.transport.js +3 -0
- package/dist/plugins/devices-homey/connectors/homey-local.transport.js.map +1 -0
- package/dist/plugins/devices-homey/connectors/homey-sdk.client.d.ts +59 -0
- package/dist/plugins/devices-homey/connectors/homey-sdk.client.js +25 -0
- package/dist/plugins/devices-homey/connectors/homey-sdk.client.js.map +1 -0
- package/dist/plugins/devices-homey/connectors/homey-sdk.transport.d.ts +45 -0
- package/dist/plugins/devices-homey/connectors/homey-sdk.transport.js +384 -0
- package/dist/plugins/devices-homey/connectors/homey-sdk.transport.js.map +1 -0
- package/dist/plugins/devices-homey/connectors/homey-transport.interface.d.ts +18 -0
- package/dist/plugins/devices-homey/connectors/homey-transport.interface.js +3 -0
- package/dist/plugins/devices-homey/connectors/homey-transport.interface.js.map +1 -0
- package/dist/plugins/devices-homey/controllers/homey-adoption.controller.d.ts +9 -0
- package/dist/plugins/devices-homey/controllers/homey-adoption.controller.js +86 -0
- package/dist/plugins/devices-homey/controllers/homey-adoption.controller.js.map +1 -0
- package/dist/plugins/devices-homey/controllers/homey-devices.controller.d.ts +9 -0
- package/dist/plugins/devices-homey/controllers/homey-devices.controller.js +104 -0
- package/dist/plugins/devices-homey/controllers/homey-devices.controller.js.map +1 -0
- package/dist/plugins/devices-homey/controllers/homey-mapping-preview.controller.d.ts +8 -0
- package/dist/plugins/devices-homey/controllers/homey-mapping-preview.controller.js +74 -0
- package/dist/plugins/devices-homey/controllers/homey-mapping-preview.controller.js.map +1 -0
- package/dist/plugins/devices-homey/controllers/homey-status.controller.d.ts +7 -0
- package/dist/plugins/devices-homey/controllers/homey-status.controller.js +52 -0
- package/dist/plugins/devices-homey/controllers/homey-status.controller.js.map +1 -0
- package/dist/plugins/devices-homey/controllers/homey-test-connection.controller.d.ts +8 -0
- package/dist/plugins/devices-homey/controllers/homey-test-connection.controller.js +60 -0
- package/dist/plugins/devices-homey/controllers/homey-test-connection.controller.js.map +1 -0
- package/dist/plugins/devices-homey/devices-homey.constants.d.ts +29 -0
- package/dist/plugins/devices-homey/devices-homey.constants.js +34 -0
- package/dist/plugins/devices-homey/devices-homey.constants.js.map +1 -0
- package/dist/plugins/devices-homey/devices-homey.openapi.d.ts +17 -0
- package/dist/plugins/devices-homey/devices-homey.openapi.js +67 -0
- package/dist/plugins/devices-homey/devices-homey.openapi.js.map +1 -0
- package/dist/plugins/devices-homey/devices-homey.plugin.d.ts +30 -0
- package/dist/plugins/devices-homey/devices-homey.plugin.js +288 -0
- package/dist/plugins/devices-homey/devices-homey.plugin.js.map +1 -0
- package/dist/plugins/devices-homey/dto/adoption.dto.d.ts +9 -0
- package/dist/plugins/devices-homey/dto/adoption.dto.js +79 -0
- package/dist/plugins/devices-homey/dto/adoption.dto.js.map +1 -0
- package/dist/plugins/devices-homey/dto/create-channel-property.dto.d.ts +3 -0
- package/dist/plugins/devices-homey/dto/create-channel-property.dto.js +18 -0
- package/dist/plugins/devices-homey/dto/create-channel-property.dto.js.map +1 -0
- package/dist/plugins/devices-homey/dto/create-channel.dto.d.ts +7 -0
- package/dist/plugins/devices-homey/dto/create-channel.dto.js +45 -0
- package/dist/plugins/devices-homey/dto/create-channel.dto.js.map +1 -0
- package/dist/plugins/devices-homey/dto/create-device-channel-property.dto.d.ts +7 -0
- package/dist/plugins/devices-homey/dto/create-device-channel-property.dto.js +59 -0
- package/dist/plugins/devices-homey/dto/create-device-channel-property.dto.js.map +1 -0
- package/dist/plugins/devices-homey/dto/create-device-channel.dto.d.ts +7 -0
- package/dist/plugins/devices-homey/dto/create-device-channel.dto.js +45 -0
- package/dist/plugins/devices-homey/dto/create-device-channel.dto.js.map +1 -0
- package/dist/plugins/devices-homey/dto/create-device.dto.d.ts +7 -0
- package/dist/plugins/devices-homey/dto/create-device.dto.js +45 -0
- package/dist/plugins/devices-homey/dto/create-device.dto.js.map +1 -0
- package/dist/plugins/devices-homey/dto/list-homey-devices.dto.d.ts +24 -0
- package/dist/plugins/devices-homey/dto/list-homey-devices.dto.js +89 -0
- package/dist/plugins/devices-homey/dto/list-homey-devices.dto.js.map +1 -0
- package/dist/plugins/devices-homey/dto/mapping-preview.dto.d.ts +5 -0
- package/dist/plugins/devices-homey/dto/mapping-preview.dto.js +46 -0
- package/dist/plugins/devices-homey/dto/mapping-preview.dto.js.map +1 -0
- package/dist/plugins/devices-homey/dto/test-connection.dto.d.ts +18 -0
- package/dist/plugins/devices-homey/dto/test-connection.dto.js +146 -0
- package/dist/plugins/devices-homey/dto/test-connection.dto.js.map +1 -0
- package/dist/plugins/devices-homey/dto/update-channel-property.dto.d.ts +9 -0
- package/dist/plugins/devices-homey/dto/update-channel-property.dto.js +77 -0
- package/dist/plugins/devices-homey/dto/update-channel-property.dto.js.map +1 -0
- package/dist/plugins/devices-homey/dto/update-channel.dto.d.ts +7 -0
- package/dist/plugins/devices-homey/dto/update-channel.dto.js +51 -0
- package/dist/plugins/devices-homey/dto/update-channel.dto.js.map +1 -0
- package/dist/plugins/devices-homey/dto/update-config.dto.d.ts +9 -0
- package/dist/plugins/devices-homey/dto/update-config.dto.js +103 -0
- package/dist/plugins/devices-homey/dto/update-config.dto.js.map +1 -0
- package/dist/plugins/devices-homey/dto/update-device.dto.d.ts +5 -0
- package/dist/plugins/devices-homey/dto/update-device.dto.js +35 -0
- package/dist/plugins/devices-homey/dto/update-device.dto.js.map +1 -0
- package/dist/plugins/devices-homey/entities/devices-homey.entity.d.ts +15 -0
- package/dist/plugins/devices-homey/entities/devices-homey.entity.js +121 -0
- package/dist/plugins/devices-homey/entities/devices-homey.entity.js.map +1 -0
- package/dist/plugins/devices-homey/entities/homey-adoption-lock.entity.d.ts +5 -0
- package/dist/plugins/devices-homey/entities/homey-adoption-lock.entity.js +32 -0
- package/dist/plugins/devices-homey/entities/homey-adoption-lock.entity.js.map +1 -0
- package/dist/plugins/devices-homey/errors/homey-connector.error.d.ts +25 -0
- package/dist/plugins/devices-homey/errors/homey-connector.error.js +39 -0
- package/dist/plugins/devices-homey/errors/homey-connector.error.js.map +1 -0
- package/dist/plugins/devices-homey/errors/homey-inventory.error.d.ts +6 -0
- package/dist/plugins/devices-homey/errors/homey-inventory.error.js +18 -0
- package/dist/plugins/devices-homey/errors/homey-inventory.error.js.map +1 -0
- package/dist/plugins/devices-homey/errors/homey-mapping-preview.error.d.ts +6 -0
- package/dist/plugins/devices-homey/errors/homey-mapping-preview.error.js +18 -0
- package/dist/plugins/devices-homey/errors/homey-mapping-preview.error.js.map +1 -0
- package/dist/plugins/devices-homey/index.d.ts +26 -0
- package/dist/plugins/devices-homey/index.js +43 -0
- package/dist/plugins/devices-homey/index.js.map +1 -0
- package/dist/plugins/devices-homey/mappings/definitions/channels.yaml +214 -0
- package/dist/plugins/devices-homey/mappings/definitions/devices.yaml +75 -0
- package/dist/plugins/devices-homey/mappings/definitions/properties.yaml +551 -0
- package/dist/plugins/devices-homey/mappings/device-support.d.ts +8 -0
- package/dist/plugins/devices-homey/mappings/device-support.js +50 -0
- package/dist/plugins/devices-homey/mappings/device-support.js.map +1 -0
- package/dist/plugins/devices-homey/mappings/homey-mapping.error.d.ts +11 -0
- package/dist/plugins/devices-homey/mappings/homey-mapping.error.js +23 -0
- package/dist/plugins/devices-homey/mappings/homey-mapping.error.js.map +1 -0
- package/dist/plugins/devices-homey/mappings/index.d.ts +6 -0
- package/dist/plugins/devices-homey/mappings/index.js +23 -0
- package/dist/plugins/devices-homey/mappings/index.js.map +1 -0
- package/dist/plugins/devices-homey/mappings/mapping-loader.service.d.ts +43 -0
- package/dist/plugins/devices-homey/mappings/mapping-loader.service.js +453 -0
- package/dist/plugins/devices-homey/mappings/mapping-loader.service.js.map +1 -0
- package/dist/plugins/devices-homey/mappings/mapping-transformer.service.d.ts +17 -0
- package/dist/plugins/devices-homey/mappings/mapping-transformer.service.js +156 -0
- package/dist/plugins/devices-homey/mappings/mapping-transformer.service.js.map +1 -0
- package/dist/plugins/devices-homey/mappings/mapping.constants.d.ts +12 -0
- package/dist/plugins/devices-homey/mappings/mapping.constants.js +16 -0
- package/dist/plugins/devices-homey/mappings/mapping.constants.js.map +1 -0
- package/dist/plugins/devices-homey/mappings/mapping.types.d.ts +202 -0
- package/dist/plugins/devices-homey/mappings/mapping.types.js +3 -0
- package/dist/plugins/devices-homey/mappings/mapping.types.js.map +1 -0
- package/dist/plugins/devices-homey/mappings/property-mapping-storage.service.d.ts +10 -0
- package/dist/plugins/devices-homey/mappings/property-mapping-storage.service.js +38 -0
- package/dist/plugins/devices-homey/mappings/property-mapping-storage.service.js.map +1 -0
- package/dist/plugins/devices-homey/mappings/schema/mapping-schema.json +302 -0
- package/dist/plugins/devices-homey/models/adoption.model.d.ts +30 -0
- package/dist/plugins/devices-homey/models/adoption.model.js +122 -0
- package/dist/plugins/devices-homey/models/adoption.model.js.map +1 -0
- package/dist/plugins/devices-homey/models/config.model.d.ts +9 -0
- package/dist/plugins/devices-homey/models/config.model.js +107 -0
- package/dist/plugins/devices-homey/models/config.model.js.map +1 -0
- package/dist/plugins/devices-homey/models/homey-capability.model.d.ts +31 -0
- package/dist/plugins/devices-homey/models/homey-capability.model.js +24 -0
- package/dist/plugins/devices-homey/models/homey-capability.model.js.map +1 -0
- package/dist/plugins/devices-homey/models/homey-device.model.d.ts +23 -0
- package/dist/plugins/devices-homey/models/homey-device.model.js +3 -0
- package/dist/plugins/devices-homey/models/homey-device.model.js.map +1 -0
- package/dist/plugins/devices-homey/models/homey-event.model.d.ts +54 -0
- package/dist/plugins/devices-homey/models/homey-event.model.js +15 -0
- package/dist/plugins/devices-homey/models/homey-event.model.js.map +1 -0
- package/dist/plugins/devices-homey/models/homey-system-info.model.d.ts +7 -0
- package/dist/plugins/devices-homey/models/homey-system-info.model.js +3 -0
- package/dist/plugins/devices-homey/models/homey-system-info.model.js.map +1 -0
- package/dist/plugins/devices-homey/models/homey-zone.model.d.ts +7 -0
- package/dist/plugins/devices-homey/models/homey-zone.model.js +3 -0
- package/dist/plugins/devices-homey/models/homey-zone.model.js.map +1 -0
- package/dist/plugins/devices-homey/models/inventory.model.d.ts +50 -0
- package/dist/plugins/devices-homey/models/inventory.model.js +236 -0
- package/dist/plugins/devices-homey/models/inventory.model.js.map +1 -0
- package/dist/plugins/devices-homey/models/mapping-preview.model.d.ts +123 -0
- package/dist/plugins/devices-homey/models/mapping-preview.model.js +576 -0
- package/dist/plugins/devices-homey/models/mapping-preview.model.js.map +1 -0
- package/dist/plugins/devices-homey/models/status.model.d.ts +32 -0
- package/dist/plugins/devices-homey/models/status.model.js +242 -0
- package/dist/plugins/devices-homey/models/status.model.js.map +1 -0
- package/dist/plugins/devices-homey/models/test-connection.model.d.ts +15 -0
- package/dist/plugins/devices-homey/models/test-connection.model.js +88 -0
- package/dist/plugins/devices-homey/models/test-connection.model.js.map +1 -0
- package/dist/plugins/devices-homey/platforms/homey-command-value.d.ts +7 -0
- package/dist/plugins/devices-homey/platforms/homey-command-value.js +65 -0
- package/dist/plugins/devices-homey/platforms/homey-command-value.js.map +1 -0
- package/dist/plugins/devices-homey/platforms/homey-device.platform.d.ts +41 -0
- package/dist/plugins/devices-homey/platforms/homey-device.platform.js +427 -0
- package/dist/plugins/devices-homey/platforms/homey-device.platform.js.map +1 -0
- package/dist/plugins/devices-homey/services/homey-adoption-lock.service.d.ts +20 -0
- package/dist/plugins/devices-homey/services/homey-adoption-lock.service.js +147 -0
- package/dist/plugins/devices-homey/services/homey-adoption-lock.service.js.map +1 -0
- package/dist/plugins/devices-homey/services/homey-config-validator.service.d.ts +11 -0
- package/dist/plugins/devices-homey/services/homey-config-validator.service.js +76 -0
- package/dist/plugins/devices-homey/services/homey-config-validator.service.js.map +1 -0
- package/dist/plugins/devices-homey/services/homey-connection-test.service.d.ts +14 -0
- package/dist/plugins/devices-homey/services/homey-connection-test.service.js +134 -0
- package/dist/plugins/devices-homey/services/homey-connection-test.service.js.map +1 -0
- package/dist/plugins/devices-homey/services/homey-device-adoption.service.d.ts +52 -0
- package/dist/plugins/devices-homey/services/homey-device-adoption.service.js +711 -0
- package/dist/plugins/devices-homey/services/homey-device-adoption.service.js.map +1 -0
- package/dist/plugins/devices-homey/services/homey-device-inventory.service.d.ts +20 -0
- package/dist/plugins/devices-homey/services/homey-device-inventory.service.js +159 -0
- package/dist/plugins/devices-homey/services/homey-device-inventory.service.js.map +1 -0
- package/dist/plugins/devices-homey/services/homey-failure-log-limiter.d.ts +9 -0
- package/dist/plugins/devices-homey/services/homey-failure-log-limiter.js +23 -0
- package/dist/plugins/devices-homey/services/homey-failure-log-limiter.js.map +1 -0
- package/dist/plugins/devices-homey/services/homey-mapping-preview.service.d.ts +53 -0
- package/dist/plugins/devices-homey/services/homey-mapping-preview.service.js +999 -0
- package/dist/plugins/devices-homey/services/homey-mapping-preview.service.js.map +1 -0
- package/dist/plugins/devices-homey/services/homey-reconnect-backoff.d.ts +1 -0
- package/dist/plugins/devices-homey/services/homey-reconnect-backoff.js +16 -0
- package/dist/plugins/devices-homey/services/homey-reconnect-backoff.js.map +1 -0
- package/dist/plugins/devices-homey/services/homey-synchronizer.service.d.ts +90 -0
- package/dist/plugins/devices-homey/services/homey-synchronizer.service.js +628 -0
- package/dist/plugins/devices-homey/services/homey-synchronizer.service.js.map +1 -0
- package/dist/plugins/devices-homey/services/homey.service.d.ts +129 -0
- package/dist/plugins/devices-homey/services/homey.service.js +1216 -0
- package/dist/plugins/devices-homey/services/homey.service.js.map +1 -0
- package/dist/plugins/devices-homey/validators/homey-url.validator.d.ts +4 -0
- package/dist/plugins/devices-homey/validators/homey-url.validator.js +27 -0
- package/dist/plugins/devices-homey/validators/homey-url.validator.js.map +1 -0
- package/dist/plugins/devices-reterminal/devices-reterminal.plugin.d.ts +3 -3
- package/dist/plugins/devices-reterminal/devices-reterminal.plugin.js +5 -5
- package/dist/plugins/devices-reterminal/devices-reterminal.plugin.js.map +1 -1
- package/dist/plugins/devices-reterminal/services/reterminal.service.d.ts +7 -3
- package/dist/plugins/devices-reterminal/services/reterminal.service.js +4 -1
- package/dist/plugins/devices-reterminal/services/reterminal.service.js.map +1 -1
- package/dist/plugins/devices-shelly-ng/controllers/shelly-ng-devices.controller.d.ts +6 -2
- package/dist/plugins/devices-shelly-ng/controllers/shelly-ng-devices.controller.js +31 -2
- package/dist/plugins/devices-shelly-ng/controllers/shelly-ng-devices.controller.js.map +1 -1
- package/dist/plugins/devices-shelly-ng/delegates/shelly-device.delegate.d.ts +2 -2
- package/dist/plugins/devices-shelly-ng/delegates/shelly-device.delegate.js.map +1 -1
- package/dist/plugins/devices-shelly-ng/devices-shelly-ng.constants.d.ts +22 -2
- package/dist/plugins/devices-shelly-ng/devices-shelly-ng.constants.js +61 -1
- package/dist/plugins/devices-shelly-ng/devices-shelly-ng.constants.js.map +1 -1
- package/dist/plugins/devices-shelly-ng/devices-shelly-ng.openapi.d.ts +4 -3
- package/dist/plugins/devices-shelly-ng/devices-shelly-ng.openapi.js +5 -0
- package/dist/plugins/devices-shelly-ng/devices-shelly-ng.openapi.js.map +1 -1
- package/dist/plugins/devices-shelly-ng/devices-shelly-ng.plugin.d.ts +3 -3
- package/dist/plugins/devices-shelly-ng/devices-shelly-ng.plugin.js +7 -5
- package/dist/plugins/devices-shelly-ng/devices-shelly-ng.plugin.js.map +1 -1
- package/dist/plugins/devices-shelly-ng/dto/adopt-devices.dto.d.ts +15 -0
- package/dist/plugins/devices-shelly-ng/dto/adopt-devices.dto.js +113 -0
- package/dist/plugins/devices-shelly-ng/dto/adopt-devices.dto.js.map +1 -0
- package/dist/plugins/devices-shelly-ng/mappings/definitions/sensors.yaml +1 -1
- package/dist/plugins/devices-shelly-ng/mappings/definitions/switches.yaml +23 -2
- package/dist/plugins/devices-shelly-ng/models/shelly-ng-response.model.d.ts +4 -1
- package/dist/plugins/devices-shelly-ng/models/shelly-ng-response.model.js +16 -1
- package/dist/plugins/devices-shelly-ng/models/shelly-ng-response.model.js.map +1 -1
- package/dist/plugins/devices-shelly-ng/models/shelly-ng.model.d.ts +7 -0
- package/dist/plugins/devices-shelly-ng/models/shelly-ng.model.js +57 -1
- package/dist/plugins/devices-shelly-ng/models/shelly-ng.model.js.map +1 -1
- package/dist/plugins/devices-shelly-ng/services/device-manager.service.d.ts +1 -0
- package/dist/plugins/devices-shelly-ng/services/device-manager.service.js +208 -0
- package/dist/plugins/devices-shelly-ng/services/device-manager.service.js.map +1 -1
- package/dist/plugins/devices-shelly-ng/services/shelly-ng-adoption.service.d.ts +19 -0
- package/dist/plugins/devices-shelly-ng/services/shelly-ng-adoption.service.js +114 -0
- package/dist/plugins/devices-shelly-ng/services/shelly-ng-adoption.service.js.map +1 -0
- package/dist/plugins/devices-shelly-ng/services/shelly-ng.service.d.ts +11 -7
- package/dist/plugins/devices-shelly-ng/services/shelly-ng.service.js +15 -8
- package/dist/plugins/devices-shelly-ng/services/shelly-ng.service.js.map +1 -1
- package/dist/plugins/devices-shelly-ng/services/shelly-rpc-client.service.d.ts +87 -0
- package/dist/plugins/devices-shelly-ng/services/shelly-rpc-client.service.js +18 -0
- package/dist/plugins/devices-shelly-ng/services/shelly-rpc-client.service.js.map +1 -1
- package/dist/plugins/devices-shelly-ng/services/shelly-ws-server.service.d.ts +1 -0
- package/dist/plugins/devices-shelly-ng/services/shelly-ws-server.service.js +3 -0
- package/dist/plugins/devices-shelly-ng/services/shelly-ws-server.service.js.map +1 -1
- package/dist/plugins/devices-shelly-v1/controllers/shelly-v1-devices.controller.d.ts +6 -2
- package/dist/plugins/devices-shelly-v1/controllers/shelly-v1-devices.controller.js +29 -2
- package/dist/plugins/devices-shelly-v1/controllers/shelly-v1-devices.controller.js.map +1 -1
- package/dist/plugins/devices-shelly-v1/devices-shelly-v1.openapi.d.ts +5 -4
- package/dist/plugins/devices-shelly-v1/devices-shelly-v1.openapi.js +5 -0
- package/dist/plugins/devices-shelly-v1/devices-shelly-v1.openapi.js.map +1 -1
- package/dist/plugins/devices-shelly-v1/devices-shelly-v1.plugin.d.ts +3 -3
- package/dist/plugins/devices-shelly-v1/devices-shelly-v1.plugin.js +7 -5
- package/dist/plugins/devices-shelly-v1/devices-shelly-v1.plugin.js.map +1 -1
- package/dist/plugins/devices-shelly-v1/dto/adopt-devices.dto.d.ts +15 -0
- package/dist/plugins/devices-shelly-v1/dto/adopt-devices.dto.js +113 -0
- package/dist/plugins/devices-shelly-v1/dto/adopt-devices.dto.js.map +1 -0
- package/dist/plugins/devices-shelly-v1/models/shelly-v1-response.model.d.ts +4 -1
- package/dist/plugins/devices-shelly-v1/models/shelly-v1-response.model.js +16 -1
- package/dist/plugins/devices-shelly-v1/models/shelly-v1-response.model.js.map +1 -1
- package/dist/plugins/devices-shelly-v1/models/shelly-v1.model.d.ts +7 -0
- package/dist/plugins/devices-shelly-v1/models/shelly-v1.model.js +57 -1
- package/dist/plugins/devices-shelly-v1/models/shelly-v1.model.js.map +1 -1
- package/dist/plugins/devices-shelly-v1/services/shellies-adapter.service.d.ts +1 -0
- package/dist/plugins/devices-shelly-v1/services/shellies-adapter.service.js +3 -0
- package/dist/plugins/devices-shelly-v1/services/shellies-adapter.service.js.map +1 -1
- package/dist/plugins/devices-shelly-v1/services/shelly-v1-adoption.service.d.ts +19 -0
- package/dist/plugins/devices-shelly-v1/services/shelly-v1-adoption.service.js +114 -0
- package/dist/plugins/devices-shelly-v1/services/shelly-v1-adoption.service.js.map +1 -0
- package/dist/plugins/devices-shelly-v1/services/shelly-v1.service.d.ts +8 -4
- package/dist/plugins/devices-shelly-v1/services/shelly-v1.service.js +6 -3
- package/dist/plugins/devices-shelly-v1/services/shelly-v1.service.js.map +1 -1
- package/dist/plugins/devices-virtual/controllers/virtual-devices.controller.d.ts +15 -0
- package/dist/plugins/devices-virtual/controllers/virtual-devices.controller.js +170 -0
- package/dist/plugins/devices-virtual/controllers/virtual-devices.controller.js.map +1 -0
- package/dist/plugins/devices-virtual/devices-virtual.constants.d.ts +8 -0
- package/dist/plugins/devices-virtual/devices-virtual.constants.js +19 -0
- package/dist/plugins/devices-virtual/devices-virtual.constants.js.map +1 -0
- package/dist/plugins/devices-virtual/devices-virtual.exceptions.d.ts +33 -0
- package/dist/plugins/devices-virtual/devices-virtual.exceptions.js +81 -0
- package/dist/plugins/devices-virtual/devices-virtual.exceptions.js.map +1 -0
- package/dist/plugins/devices-virtual/devices-virtual.openapi.d.ts +13 -0
- package/dist/plugins/devices-virtual/devices-virtual.openapi.js +37 -0
- package/dist/plugins/devices-virtual/devices-virtual.openapi.js.map +1 -0
- package/dist/plugins/devices-virtual/devices-virtual.plugin.d.ts +34 -0
- package/dist/plugins/devices-virtual/devices-virtual.plugin.js +317 -0
- package/dist/plugins/devices-virtual/devices-virtual.plugin.js.map +1 -0
- package/dist/plugins/devices-virtual/dto/compatibility-request.dto.d.ts +13 -0
- package/dist/plugins/devices-virtual/dto/compatibility-request.dto.js +109 -0
- package/dist/plugins/devices-virtual/dto/compatibility-request.dto.js.map +1 -0
- package/dist/plugins/devices-virtual/dto/create-channel-property.dto.d.ts +10 -0
- package/dist/plugins/devices-virtual/dto/create-channel-property.dto.js +91 -0
- package/dist/plugins/devices-virtual/dto/create-channel-property.dto.js.map +1 -0
- package/dist/plugins/devices-virtual/dto/create-channel.dto.d.ts +8 -0
- package/dist/plugins/devices-virtual/dto/create-channel.dto.js +65 -0
- package/dist/plugins/devices-virtual/dto/create-channel.dto.js.map +1 -0
- package/dist/plugins/devices-virtual/dto/create-device-channel.dto.d.ts +7 -0
- package/dist/plugins/devices-virtual/dto/create-device-channel.dto.js +50 -0
- package/dist/plugins/devices-virtual/dto/create-device-channel.dto.js.map +1 -0
- package/dist/plugins/devices-virtual/dto/create-device.dto.d.ts +9 -0
- package/dist/plugins/devices-virtual/dto/create-device.dto.js +64 -0
- package/dist/plugins/devices-virtual/dto/create-device.dto.js.map +1 -0
- package/dist/plugins/devices-virtual/dto/update-channel-property.dto.d.ts +10 -0
- package/dist/plugins/devices-virtual/dto/update-channel-property.dto.js +91 -0
- package/dist/plugins/devices-virtual/dto/update-channel-property.dto.js.map +1 -0
- package/dist/plugins/devices-virtual/dto/update-channel.dto.d.ts +5 -0
- package/dist/plugins/devices-virtual/dto/update-channel.dto.js +35 -0
- package/dist/plugins/devices-virtual/dto/update-channel.dto.js.map +1 -0
- package/dist/plugins/devices-virtual/dto/update-config.dto.d.ts +5 -0
- package/dist/plugins/devices-virtual/dto/update-config.dto.js +33 -0
- package/dist/plugins/devices-virtual/dto/update-config.dto.js.map +1 -0
- package/dist/plugins/devices-virtual/dto/update-device.dto.d.ts +7 -0
- package/dist/plugins/devices-virtual/dto/update-device.dto.js +55 -0
- package/dist/plugins/devices-virtual/dto/update-device.dto.js.map +1 -0
- package/dist/plugins/devices-virtual/entities/devices-virtual.entity.d.ts +25 -0
- package/dist/plugins/devices-virtual/entities/devices-virtual.entity.js +153 -0
- package/dist/plugins/devices-virtual/entities/devices-virtual.entity.js.map +1 -0
- package/dist/plugins/devices-virtual/listeners/virtual-device-information.listener.d.ts +20 -0
- package/dist/plugins/devices-virtual/listeners/virtual-device-information.listener.js +191 -0
- package/dist/plugins/devices-virtual/listeners/virtual-device-information.listener.js.map +1 -0
- package/dist/plugins/devices-virtual/listeners/virtual-index-maintenance.listener.d.ts +55 -0
- package/dist/plugins/devices-virtual/listeners/virtual-index-maintenance.listener.js +542 -0
- package/dist/plugins/devices-virtual/listeners/virtual-index-maintenance.listener.js.map +1 -0
- package/dist/plugins/devices-virtual/listeners/virtual-projection.listener.d.ts +10 -0
- package/dist/plugins/devices-virtual/listeners/virtual-projection.listener.js +50 -0
- package/dist/plugins/devices-virtual/listeners/virtual-projection.listener.js.map +1 -0
- package/dist/plugins/devices-virtual/listeners/virtual-status.listener.d.ts +20 -0
- package/dist/plugins/devices-virtual/listeners/virtual-status.listener.js +89 -0
- package/dist/plugins/devices-virtual/listeners/virtual-status.listener.js.map +1 -0
- package/dist/plugins/devices-virtual/models/compatibility-response.model.d.ts +12 -0
- package/dist/plugins/devices-virtual/models/compatibility-response.model.js +95 -0
- package/dist/plugins/devices-virtual/models/compatibility-response.model.js.map +1 -0
- package/dist/plugins/devices-virtual/models/config.model.d.ts +5 -0
- package/dist/plugins/devices-virtual/models/config.model.js +47 -0
- package/dist/plugins/devices-virtual/models/config.model.js.map +1 -0
- package/dist/plugins/devices-virtual/models/virtual-response.model.d.ts +5 -0
- package/dist/plugins/devices-virtual/models/virtual-response.model.js +32 -0
- package/dist/plugins/devices-virtual/models/virtual-response.model.js.map +1 -0
- package/dist/plugins/devices-virtual/platforms/virtual-device.platform.d.ts +17 -0
- package/dist/plugins/devices-virtual/platforms/virtual-device.platform.js +121 -0
- package/dist/plugins/devices-virtual/platforms/virtual-device.platform.js.map +1 -0
- package/dist/plugins/devices-virtual/services/virtual-devices.service.d.ts +52 -0
- package/dist/plugins/devices-virtual/services/virtual-devices.service.js +424 -0
- package/dist/plugins/devices-virtual/services/virtual-devices.service.js.map +1 -0
- package/dist/plugins/devices-virtual/services/virtual-energy-claim.service.d.ts +7 -0
- package/dist/plugins/devices-virtual/services/virtual-energy-claim.service.js +43 -0
- package/dist/plugins/devices-virtual/services/virtual-energy-claim.service.js.map +1 -0
- package/dist/plugins/devices-virtual/services/virtual-property-index.service.d.ts +38 -0
- package/dist/plugins/devices-virtual/services/virtual-property-index.service.js +203 -0
- package/dist/plugins/devices-virtual/services/virtual-property-index.service.js.map +1 -0
- package/dist/plugins/devices-virtual/services/virtual-value-source.service.d.ts +6 -0
- package/dist/plugins/devices-virtual/services/virtual-value-source.service.js +31 -0
- package/dist/plugins/devices-virtual/services/virtual-value-source.service.js.map +1 -0
- package/dist/plugins/devices-virtual/validators/category-allowed-constraint.validator.d.ts +10 -0
- package/dist/plugins/devices-virtual/validators/category-allowed-constraint.validator.js +56 -0
- package/dist/plugins/devices-virtual/validators/category-allowed-constraint.validator.js.map +1 -0
- package/dist/plugins/devices-virtual/validators/device-is-virtual-constraint.validator.d.ts +9 -0
- package/dist/plugins/devices-virtual/validators/device-is-virtual-constraint.validator.js +56 -0
- package/dist/plugins/devices-virtual/validators/device-is-virtual-constraint.validator.js.map +1 -0
- package/dist/plugins/devices-virtual/validators/owned-property-has-no-source-constraint.validator.d.ts +6 -0
- package/dist/plugins/devices-virtual/validators/owned-property-has-no-source-constraint.validator.js +38 -0
- package/dist/plugins/devices-virtual/validators/owned-property-has-no-source-constraint.validator.js.map +1 -0
- package/dist/plugins/devices-virtual/validators/owned-property-not-writable-constraint.validator.d.ts +7 -0
- package/dist/plugins/devices-virtual/validators/owned-property-not-writable-constraint.validator.js +38 -0
- package/dist/plugins/devices-virtual/validators/owned-property-not-writable-constraint.validator.js.map +1 -0
- package/dist/plugins/devices-virtual/validators/source-not-virtual-constraint.validator.d.ts +9 -0
- package/dist/plugins/devices-virtual/validators/source-not-virtual-constraint.validator.js +56 -0
- package/dist/plugins/devices-virtual/validators/source-not-virtual-constraint.validator.js.map +1 -0
- package/dist/plugins/devices-wled/controllers/wled-discovery.controller.d.ts +6 -3
- package/dist/plugins/devices-wled/controllers/wled-discovery.controller.js +78 -20
- package/dist/plugins/devices-wled/controllers/wled-discovery.controller.js.map +1 -1
- package/dist/plugins/devices-wled/devices-wled.exceptions.d.ts +3 -0
- package/dist/plugins/devices-wled/devices-wled.exceptions.js +7 -1
- package/dist/plugins/devices-wled/devices-wled.exceptions.js.map +1 -1
- package/dist/plugins/devices-wled/devices-wled.openapi.d.ts +3 -2
- package/dist/plugins/devices-wled/devices-wled.openapi.js +11 -1
- package/dist/plugins/devices-wled/devices-wled.openapi.js.map +1 -1
- package/dist/plugins/devices-wled/devices-wled.plugin.d.ts +3 -3
- package/dist/plugins/devices-wled/devices-wled.plugin.js +10 -6
- package/dist/plugins/devices-wled/devices-wled.plugin.js.map +1 -1
- package/dist/plugins/devices-wled/dto/wled-adoption.dto.d.ts +19 -0
- package/dist/plugins/devices-wled/dto/wled-adoption.dto.js +108 -0
- package/dist/plugins/devices-wled/dto/wled-adoption.dto.js.map +1 -0
- package/dist/plugins/devices-wled/entities/devices-wled.entity.d.ts +1 -0
- package/dist/plugins/devices-wled/entities/devices-wled.entity.js +14 -0
- package/dist/plugins/devices-wled/entities/devices-wled.entity.js.map +1 -1
- package/dist/plugins/devices-wled/models/config.model.js +2 -2
- package/dist/plugins/devices-wled/models/config.model.js.map +1 -1
- package/dist/plugins/devices-wled/models/wled-discovery.model.d.ts +22 -3
- package/dist/plugins/devices-wled/models/wled-discovery.model.js +104 -29
- package/dist/plugins/devices-wled/models/wled-discovery.model.js.map +1 -1
- package/dist/plugins/devices-wled/services/adoption-snapshot.service.d.ts +16 -0
- package/dist/plugins/devices-wled/services/adoption-snapshot.service.js +109 -0
- package/dist/plugins/devices-wled/services/adoption-snapshot.service.js.map +1 -0
- package/dist/plugins/devices-wled/services/device-mapper.service.d.ts +5 -2
- package/dist/plugins/devices-wled/services/device-mapper.service.js +49 -19
- package/dist/plugins/devices-wled/services/device-mapper.service.js.map +1 -1
- package/dist/plugins/devices-wled/services/hardware-identity.service.d.ts +9 -0
- package/dist/plugins/devices-wled/services/hardware-identity.service.js +50 -0
- package/dist/plugins/devices-wled/services/hardware-identity.service.js.map +1 -0
- package/dist/plugins/devices-wled/services/wled-client-adapter.service.d.ts +4 -2
- package/dist/plugins/devices-wled/services/wled-client-adapter.service.js +43 -24
- package/dist/plugins/devices-wled/services/wled-client-adapter.service.js.map +1 -1
- package/dist/plugins/devices-wled/services/wled-mdns-discoverer.service.d.ts +2 -0
- package/dist/plugins/devices-wled/services/wled-mdns-discoverer.service.js +6 -0
- package/dist/plugins/devices-wled/services/wled-mdns-discoverer.service.js.map +1 -1
- package/dist/plugins/devices-wled/services/wled.service.d.ts +40 -7
- package/dist/plugins/devices-wled/services/wled.service.js +759 -26
- package/dist/plugins/devices-wled/services/wled.service.js.map +1 -1
- package/dist/plugins/devices-zigbee2mqtt/devices-zigbee2mqtt.plugin.d.ts +3 -3
- package/dist/plugins/devices-zigbee2mqtt/devices-zigbee2mqtt.plugin.js +15 -5
- package/dist/plugins/devices-zigbee2mqtt/devices-zigbee2mqtt.plugin.js.map +1 -1
- package/dist/plugins/devices-zigbee2mqtt/models/config.model.d.ts +2 -0
- package/dist/plugins/devices-zigbee2mqtt/models/config.model.js +24 -2
- package/dist/plugins/devices-zigbee2mqtt/models/config.model.js.map +1 -1
- package/dist/plugins/devices-zigbee2mqtt/services/zigbee2mqtt.service.d.ts +11 -7
- package/dist/plugins/devices-zigbee2mqtt/services/zigbee2mqtt.service.js +11 -8
- package/dist/plugins/devices-zigbee2mqtt/services/zigbee2mqtt.service.js.map +1 -1
- package/dist/plugins/influx-v1/dto/update-config.dto.d.ts +1 -1
- package/dist/plugins/influx-v1/dto/update-config.dto.js +1 -0
- package/dist/plugins/influx-v1/dto/update-config.dto.js.map +1 -1
- package/dist/plugins/influx-v1/influx-v1.plugin.d.ts +3 -3
- package/dist/plugins/influx-v1/influx-v1.plugin.js +11 -5
- package/dist/plugins/influx-v1/influx-v1.plugin.js.map +1 -1
- package/dist/plugins/influx-v1/models/config.model.d.ts +1 -0
- package/dist/plugins/influx-v1/models/config.model.js +12 -1
- package/dist/plugins/influx-v1/models/config.model.js.map +1 -1
- package/dist/plugins/influx-v1/services/influx-v1-managed.service.d.ts +7 -4
- package/dist/plugins/influx-v1/services/influx-v1-managed.service.js +3 -3
- package/dist/plugins/influx-v1/services/influx-v1-managed.service.js.map +1 -1
- package/dist/plugins/influx-v1/services/influx-v1.storage.d.ts +1 -0
- package/dist/plugins/influx-v1/services/influx-v1.storage.js +15 -0
- package/dist/plugins/influx-v1/services/influx-v1.storage.js.map +1 -1
- package/dist/plugins/influx-v2/dto/update-config.dto.d.ts +1 -1
- package/dist/plugins/influx-v2/dto/update-config.dto.js +1 -0
- package/dist/plugins/influx-v2/dto/update-config.dto.js.map +1 -1
- package/dist/plugins/influx-v2/influx-v2.plugin.d.ts +3 -3
- package/dist/plugins/influx-v2/influx-v2.plugin.js +11 -5
- package/dist/plugins/influx-v2/influx-v2.plugin.js.map +1 -1
- package/dist/plugins/influx-v2/models/config.model.d.ts +1 -0
- package/dist/plugins/influx-v2/models/config.model.js +12 -1
- package/dist/plugins/influx-v2/models/config.model.js.map +1 -1
- package/dist/plugins/influx-v2/services/influx-v2-managed.service.d.ts +7 -4
- package/dist/plugins/influx-v2/services/influx-v2-managed.service.js +3 -3
- package/dist/plugins/influx-v2/services/influx-v2-managed.service.js.map +1 -1
- package/dist/plugins/influx-v2/services/influx-v2.storage.d.ts +4 -1
- package/dist/plugins/influx-v2/services/influx-v2.storage.js +159 -2
- package/dist/plugins/influx-v2/services/influx-v2.storage.js.map +1 -1
- package/dist/plugins/logger-rotating-file/logger-rotating-file.plugin.d.ts +3 -3
- package/dist/plugins/logger-rotating-file/logger-rotating-file.plugin.js +5 -5
- package/dist/plugins/logger-rotating-file/logger-rotating-file.plugin.js.map +1 -1
- package/dist/plugins/logger-rotating-file/services/file-logger.service.d.ts +7 -3
- package/dist/plugins/logger-rotating-file/services/file-logger.service.js +12 -1
- package/dist/plugins/logger-rotating-file/services/file-logger.service.js.map +1 -1
- package/dist/plugins/memory-storage/memory-storage.plugin.d.ts +3 -3
- package/dist/plugins/memory-storage/memory-storage.plugin.js +5 -5
- package/dist/plugins/memory-storage/memory-storage.plugin.js.map +1 -1
- package/dist/plugins/memory-storage/services/in-memory-timeseries.store.d.ts +1 -1
- package/dist/plugins/memory-storage/services/in-memory-timeseries.store.js +5 -3
- package/dist/plugins/memory-storage/services/in-memory-timeseries.store.js.map +1 -1
- package/dist/plugins/memory-storage/services/influxql-parser.js +21 -1
- package/dist/plugins/memory-storage/services/influxql-parser.js.map +1 -1
- package/dist/plugins/memory-storage/services/memory-storage-managed.service.d.ts +6 -3
- package/dist/plugins/memory-storage/services/memory-storage-managed.service.js +3 -3
- package/dist/plugins/memory-storage/services/memory-storage-managed.service.js.map +1 -1
- package/dist/plugins/notifications-discord/dto/update-config.dto.d.ts +10 -0
- package/dist/plugins/notifications-discord/dto/update-config.dto.js +90 -0
- package/dist/plugins/notifications-discord/dto/update-config.dto.js.map +1 -0
- package/dist/plugins/notifications-discord/models/config.model.d.ts +10 -0
- package/dist/plugins/notifications-discord/models/config.model.js +99 -0
- package/dist/plugins/notifications-discord/models/config.model.js.map +1 -0
- package/dist/plugins/notifications-discord/notifications-discord.constants.d.ts +4 -0
- package/dist/plugins/notifications-discord/notifications-discord.constants.js +8 -0
- package/dist/plugins/notifications-discord/notifications-discord.constants.js.map +1 -0
- package/dist/plugins/notifications-discord/notifications-discord.openapi.d.ts +3 -0
- package/dist/plugins/notifications-discord/notifications-discord.openapi.js +10 -0
- package/dist/plugins/notifications-discord/notifications-discord.openapi.js.map +1 -0
- package/dist/plugins/notifications-discord/notifications-discord.plugin.d.ts +15 -0
- package/dist/plugins/notifications-discord/notifications-discord.plugin.js +113 -0
- package/dist/plugins/notifications-discord/notifications-discord.plugin.js.map +1 -0
- package/dist/plugins/notifications-discord/platforms/discord-channel.platform.d.ts +9 -0
- package/dist/plugins/notifications-discord/platforms/discord-channel.platform.js +67 -0
- package/dist/plugins/notifications-discord/platforms/discord-channel.platform.js.map +1 -0
- package/dist/plugins/notifications-discord/services/discord-actions.service.d.ts +13 -0
- package/dist/plugins/notifications-discord/services/discord-actions.service.js +94 -0
- package/dist/plugins/notifications-discord/services/discord-actions.service.js.map +1 -0
- package/dist/plugins/notifications-discord/validators/discord-webhook-url.validator.d.ts +4 -0
- package/dist/plugins/notifications-discord/validators/discord-webhook-url.validator.js +38 -0
- package/dist/plugins/notifications-discord/validators/discord-webhook-url.validator.js.map +1 -0
- package/dist/plugins/notifications-slack/dto/update-config.dto.d.ts +9 -0
- package/dist/plugins/notifications-slack/dto/update-config.dto.js +79 -0
- package/dist/plugins/notifications-slack/dto/update-config.dto.js.map +1 -0
- package/dist/plugins/notifications-slack/models/config.model.d.ts +9 -0
- package/dist/plugins/notifications-slack/models/config.model.js +87 -0
- package/dist/plugins/notifications-slack/models/config.model.js.map +1 -0
- package/dist/plugins/notifications-slack/notifications-slack.constants.d.ts +4 -0
- package/dist/plugins/notifications-slack/notifications-slack.constants.js +8 -0
- package/dist/plugins/notifications-slack/notifications-slack.constants.js.map +1 -0
- package/dist/plugins/notifications-slack/notifications-slack.openapi.d.ts +3 -0
- package/dist/plugins/notifications-slack/notifications-slack.openapi.js +10 -0
- package/dist/plugins/notifications-slack/notifications-slack.openapi.js.map +1 -0
- package/dist/plugins/notifications-slack/notifications-slack.plugin.d.ts +15 -0
- package/dist/plugins/notifications-slack/notifications-slack.plugin.js +111 -0
- package/dist/plugins/notifications-slack/notifications-slack.plugin.js.map +1 -0
- package/dist/plugins/notifications-slack/platforms/slack-channel.platform.d.ts +9 -0
- package/dist/plugins/notifications-slack/platforms/slack-channel.platform.js +63 -0
- package/dist/plugins/notifications-slack/platforms/slack-channel.platform.js.map +1 -0
- package/dist/plugins/notifications-slack/services/slack-actions.service.d.ts +13 -0
- package/dist/plugins/notifications-slack/services/slack-actions.service.js +94 -0
- package/dist/plugins/notifications-slack/services/slack-actions.service.js.map +1 -0
- package/dist/plugins/notifications-slack/validators/slack-webhook-url.validator.d.ts +4 -0
- package/dist/plugins/notifications-slack/validators/slack-webhook-url.validator.js +37 -0
- package/dist/plugins/notifications-slack/validators/slack-webhook-url.validator.js.map +1 -0
- package/dist/plugins/notifications-telegram/dto/update-config.dto.d.ts +10 -0
- package/dist/plugins/notifications-telegram/dto/update-config.dto.js +88 -0
- package/dist/plugins/notifications-telegram/dto/update-config.dto.js.map +1 -0
- package/dist/plugins/notifications-telegram/models/config.model.d.ts +10 -0
- package/dist/plugins/notifications-telegram/models/config.model.js +98 -0
- package/dist/plugins/notifications-telegram/models/config.model.js.map +1 -0
- package/dist/plugins/notifications-telegram/notifications-telegram.constants.d.ts +4 -0
- package/dist/plugins/notifications-telegram/notifications-telegram.constants.js +8 -0
- package/dist/plugins/notifications-telegram/notifications-telegram.constants.js.map +1 -0
- package/dist/plugins/notifications-telegram/notifications-telegram.openapi.d.ts +3 -0
- package/dist/plugins/notifications-telegram/notifications-telegram.openapi.js +10 -0
- package/dist/plugins/notifications-telegram/notifications-telegram.openapi.js.map +1 -0
- package/dist/plugins/notifications-telegram/notifications-telegram.plugin.d.ts +15 -0
- package/dist/plugins/notifications-telegram/notifications-telegram.plugin.js +113 -0
- package/dist/plugins/notifications-telegram/notifications-telegram.plugin.js.map +1 -0
- package/dist/plugins/notifications-telegram/platforms/telegram-channel.platform.d.ts +12 -0
- package/dist/plugins/notifications-telegram/platforms/telegram-channel.platform.js +87 -0
- package/dist/plugins/notifications-telegram/platforms/telegram-channel.platform.js.map +1 -0
- package/dist/plugins/notifications-telegram/services/telegram-actions.service.d.ts +13 -0
- package/dist/plugins/notifications-telegram/services/telegram-actions.service.js +94 -0
- package/dist/plugins/notifications-telegram/services/telegram-actions.service.js.map +1 -0
- package/dist/plugins/notifications-webhook/dto/update-config.dto.d.ts +10 -0
- package/dist/plugins/notifications-webhook/dto/update-config.dto.js +94 -0
- package/dist/plugins/notifications-webhook/dto/update-config.dto.js.map +1 -0
- package/dist/plugins/notifications-webhook/models/config.model.d.ts +11 -0
- package/dist/plugins/notifications-webhook/models/config.model.js +114 -0
- package/dist/plugins/notifications-webhook/models/config.model.js.map +1 -0
- package/dist/plugins/notifications-webhook/notifications-webhook.constants.d.ts +4 -0
- package/dist/plugins/notifications-webhook/notifications-webhook.constants.js +8 -0
- package/dist/plugins/notifications-webhook/notifications-webhook.constants.js.map +1 -0
- package/dist/plugins/notifications-webhook/notifications-webhook.openapi.d.ts +3 -0
- package/dist/plugins/notifications-webhook/notifications-webhook.openapi.js +10 -0
- package/dist/plugins/notifications-webhook/notifications-webhook.openapi.js.map +1 -0
- package/dist/plugins/notifications-webhook/notifications-webhook.plugin.d.ts +15 -0
- package/dist/plugins/notifications-webhook/notifications-webhook.plugin.js +134 -0
- package/dist/plugins/notifications-webhook/notifications-webhook.plugin.js.map +1 -0
- package/dist/plugins/notifications-webhook/platforms/webhook-channel.platform.d.ts +9 -0
- package/dist/plugins/notifications-webhook/platforms/webhook-channel.platform.js +63 -0
- package/dist/plugins/notifications-webhook/platforms/webhook-channel.platform.js.map +1 -0
- package/dist/plugins/notifications-webhook/services/webhook-actions.service.d.ts +13 -0
- package/dist/plugins/notifications-webhook/services/webhook-actions.service.js +94 -0
- package/dist/plugins/notifications-webhook/services/webhook-actions.service.js.map +1 -0
- package/dist/plugins/notifications-webhook/validators/webhook-headers-require-https.validator.d.ts +6 -0
- package/dist/plugins/notifications-webhook/validators/webhook-headers-require-https.validator.js +40 -0
- package/dist/plugins/notifications-webhook/validators/webhook-headers-require-https.validator.js.map +1 -0
- package/dist/plugins/notifications-webhook/validators/webhook-headers-shape.validator.d.ts +3 -0
- package/dist/plugins/notifications-webhook/validators/webhook-headers-shape.validator.js +24 -0
- package/dist/plugins/notifications-webhook/validators/webhook-headers-shape.validator.js.map +1 -0
- package/dist/plugins/notifications-webhook/validators/webhook-url.validator.d.ts +4 -0
- package/dist/plugins/notifications-webhook/validators/webhook-url.validator.js +27 -0
- package/dist/plugins/notifications-webhook/validators/webhook-url.validator.js.map +1 -0
- package/dist/plugins/pages-device-detail/dto/create-page.dto.js +2 -0
- package/dist/plugins/pages-device-detail/dto/create-page.dto.js.map +1 -1
- package/dist/plugins/pages-device-detail/dto/update-page.dto.js +2 -0
- package/dist/plugins/pages-device-detail/dto/update-page.dto.js.map +1 -1
- package/dist/plugins/remote-access-tailscale/controllers/setup.controller.d.ts +21 -0
- package/dist/plugins/remote-access-tailscale/controllers/setup.controller.js +211 -0
- package/dist/plugins/remote-access-tailscale/controllers/setup.controller.js.map +1 -0
- package/dist/plugins/remote-access-tailscale/controllers/status.controller.d.ts +13 -0
- package/dist/plugins/remote-access-tailscale/controllers/status.controller.js +88 -0
- package/dist/plugins/remote-access-tailscale/controllers/status.controller.js.map +1 -0
- package/dist/plugins/remote-access-tailscale/dto/login.dto.d.ts +3 -0
- package/dist/plugins/remote-access-tailscale/dto/login.dto.js +40 -0
- package/dist/plugins/remote-access-tailscale/dto/login.dto.js.map +1 -0
- package/dist/plugins/remote-access-tailscale/dto/update-config.dto.d.ts +12 -0
- package/dist/plugins/remote-access-tailscale/dto/update-config.dto.js +139 -0
- package/dist/plugins/remote-access-tailscale/dto/update-config.dto.js.map +1 -0
- package/dist/plugins/remote-access-tailscale/models/config.model.d.ts +12 -0
- package/dist/plugins/remote-access-tailscale/models/config.model.js +140 -0
- package/dist/plugins/remote-access-tailscale/models/config.model.js.map +1 -0
- package/dist/plugins/remote-access-tailscale/models/login.model.d.ts +16 -0
- package/dist/plugins/remote-access-tailscale/models/login.model.js +112 -0
- package/dist/plugins/remote-access-tailscale/models/login.model.js.map +1 -0
- package/dist/plugins/remote-access-tailscale/models/status.model.d.ts +25 -0
- package/dist/plugins/remote-access-tailscale/models/status.model.js +219 -0
- package/dist/plugins/remote-access-tailscale/models/status.model.js.map +1 -0
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.constants.d.ts +20 -0
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.constants.js +24 -0
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.constants.js.map +1 -0
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.openapi.d.ts +6 -0
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.openapi.js +21 -0
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.openapi.js.map +1 -0
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.plugin.d.ts +21 -0
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.plugin.js +132 -0
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.plugin.js.map +1 -0
- package/dist/plugins/remote-access-tailscale/scripts/tailscale-setup.sh +175 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-cli.service.d.ts +75 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-cli.service.js +206 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-cli.service.js.map +1 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-login.service.d.ts +43 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-login.service.js +344 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-login.service.js.map +1 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-node-managed.service.d.ts +65 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-node-managed.service.js +471 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-node-managed.service.js.map +1 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-provider.service.d.ts +10 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-provider.service.js +37 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-provider.service.js.map +1 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-serve.service.d.ts +21 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-serve.service.js +140 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-serve.service.js.map +1 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-setup.service.d.ts +30 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-setup.service.js +130 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-setup.service.js.map +1 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-status-mapper.service.d.ts +21 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-status-mapper.service.js +106 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-status-mapper.service.js.map +1 -0
- package/dist/plugins/scenes-local/dto/create-local-scene-action.dto.js +2 -0
- package/dist/plugins/scenes-local/dto/create-local-scene-action.dto.js.map +1 -1
- package/dist/plugins/scenes-local/dto/update-local-scene-action.dto.js +2 -0
- package/dist/plugins/scenes-local/dto/update-local-scene-action.dto.js.map +1 -1
- package/dist/plugins/scenes-local/platforms/local-scene.platform.d.ts +1 -0
- package/dist/plugins/scenes-local/platforms/local-scene.platform.js +11 -0
- package/dist/plugins/scenes-local/platforms/local-scene.platform.js.map +1 -1
- package/dist/plugins/simulator/controllers/simulator.controller.js +12 -4
- package/dist/plugins/simulator/controllers/simulator.controller.js.map +1 -1
- package/dist/plugins/simulator/models/simulator-response.model.js +1 -0
- package/dist/plugins/simulator/models/simulator-response.model.js.map +1 -1
- package/dist/plugins/simulator/services/simulation.service.d.ts +7 -3
- package/dist/plugins/simulator/services/simulation.service.js +5 -2
- package/dist/plugins/simulator/services/simulation.service.js.map +1 -1
- package/dist/plugins/simulator/simulator.plugin.d.ts +3 -3
- package/dist/plugins/simulator/simulator.plugin.js +5 -5
- package/dist/plugins/simulator/simulator.plugin.js.map +1 -1
- package/dist/plugins/spaces-home-control/services/climate-intent.service.d.ts +3 -0
- package/dist/plugins/spaces-home-control/services/climate-intent.service.js +84 -16
- package/dist/plugins/spaces-home-control/services/climate-intent.service.js.map +1 -1
- package/dist/plugins/spaces-home-control/services/covers-intent.service.d.ts +1 -0
- package/dist/plugins/spaces-home-control/services/covers-intent.service.js +7 -1
- package/dist/plugins/spaces-home-control/services/covers-intent.service.js.map +1 -1
- package/dist/plugins/spaces-home-control/services/lighting-intent.service.d.ts +4 -1
- package/dist/plugins/spaces-home-control/services/lighting-intent.service.js +41 -12
- package/dist/plugins/spaces-home-control/services/lighting-intent.service.js.map +1 -1
- package/dist/plugins/spaces-home-control/services/space-climate-state.service.js +2 -2
- package/dist/plugins/spaces-home-control/services/space-climate-state.service.js.map +1 -1
- package/dist/plugins/spaces-home-control/services/space-intent.service.d.ts +2 -1
- package/dist/plugins/spaces-home-control/services/space-intent.service.js +5 -2
- package/dist/plugins/spaces-home-control/services/space-intent.service.js.map +1 -1
- package/dist/plugins/spaces-home-control/services/space-lighting-tool.service.d.ts +2 -3
- package/dist/plugins/spaces-home-control/services/space-lighting-tool.service.js +99 -40
- package/dist/plugins/spaces-home-control/services/space-lighting-tool.service.js.map +1 -1
- package/dist/plugins/spaces-home-control/services/space-suggestion-heartbeat.service.d.ts +13 -4
- package/dist/plugins/spaces-home-control/services/space-suggestion-heartbeat.service.js +63 -11
- package/dist/plugins/spaces-home-control/services/space-suggestion-heartbeat.service.js.map +1 -1
- package/dist/plugins/spaces-home-control/spaces-home-control.plugin.d.ts +5 -1
- package/dist/plugins/spaces-home-control/spaces-home-control.plugin.js +10 -2
- package/dist/plugins/spaces-home-control/spaces-home-control.plugin.js.map +1 -1
- package/dist/plugins/spaces-home-control/spec/definitions/climate-intents.yaml +94 -0
- package/dist/plugins/spaces-home-control/spec/definitions/covers-modes.yaml +83 -0
- package/dist/plugins/spaces-home-control/spec/definitions/enums.yaml +119 -0
- package/dist/plugins/spaces-home-control/spec/definitions/lighting-intents.yaml +181 -0
- package/dist/plugins/spaces-home-control/spec/definitions/lighting-modes.yaml +119 -0
- package/dist/plugins/spaces-home-control/spec/definitions/suggestions.yaml +47 -0
- package/dist/plugins/tiles-device-preview/dto/create-tile.dto.js +2 -0
- package/dist/plugins/tiles-device-preview/dto/create-tile.dto.js.map +1 -1
- package/dist/plugins/tiles-device-preview/dto/update-tile.dto.js +2 -0
- package/dist/plugins/tiles-device-preview/dto/update-tile.dto.js.map +1 -1
- package/dist/plugins/weather-openweathermap/dto/update-config.dto.js +2 -3
- package/dist/plugins/weather-openweathermap/dto/update-config.dto.js.map +1 -1
- package/dist/plugins/weather-openweathermap/models/config.model.d.ts +1 -0
- package/dist/plugins/weather-openweathermap/models/config.model.js +12 -1
- package/dist/plugins/weather-openweathermap/models/config.model.js.map +1 -1
- package/dist/plugins/weather-openweathermap/weather-openweathermap.plugin.js +7 -0
- package/dist/plugins/weather-openweathermap/weather-openweathermap.plugin.js.map +1 -1
- package/dist/plugins/weather-openweathermap-onecall/dto/update-config.dto.js +2 -3
- package/dist/plugins/weather-openweathermap-onecall/dto/update-config.dto.js.map +1 -1
- package/dist/plugins/weather-openweathermap-onecall/models/config.model.d.ts +1 -0
- package/dist/plugins/weather-openweathermap-onecall/models/config.model.js +12 -1
- package/dist/plugins/weather-openweathermap-onecall/models/config.model.js.map +1 -1
- package/dist/plugins/weather-openweathermap-onecall/weather-openweathermap-onecall.plugin.js +7 -0
- package/dist/plugins/weather-openweathermap-onecall/weather-openweathermap-onecall.plugin.js.map +1 -1
- package/dist/spec/channels.d.ts +2 -2
- package/dist/spec/channels.js +2 -2
- package/dist/spec/channels.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +35 -3
- package/dist/modules/extensions/services/base-managed-plugin.service.js.map +0 -1
- package/dist/modules/extensions/services/managed-plugin-service.interface.js.map +0 -1
- package/dist/modules/extensions/services/plugin-service-manager.service.d.ts +0 -43
- package/dist/modules/extensions/services/plugin-service-manager.service.js.map +0 -1
- package/dist/modules/websocket/utils/ip.utils.d.ts +0 -2
- package/dist/modules/websocket/utils/ip.utils.js +0 -35
- package/dist/modules/websocket/utils/ip.utils.js.map +0 -1
|
@@ -17,29 +17,44 @@ const config_service_1 = require("../../../modules/config/services/config.servic
|
|
|
17
17
|
const devices_constants_1 = require("../../../modules/devices/devices.constants");
|
|
18
18
|
const device_connectivity_service_1 = require("../../../modules/devices/services/device-connectivity.service");
|
|
19
19
|
const devices_service_1 = require("../../../modules/devices/services/devices.service");
|
|
20
|
-
const
|
|
21
|
-
const
|
|
20
|
+
const base_managed_extension_service_1 = require("../../../modules/extensions/services/base-managed-extension.service");
|
|
21
|
+
const managed_service_manager_service_1 = require("../../../modules/extensions/services/managed-service-manager.service");
|
|
22
22
|
const devices_wled_constants_1 = require("../devices-wled.constants");
|
|
23
|
+
const devices_wled_exceptions_1 = require("../devices-wled.exceptions");
|
|
24
|
+
const adoption_snapshot_service_1 = require("./adoption-snapshot.service");
|
|
23
25
|
const device_mapper_service_1 = require("./device-mapper.service");
|
|
26
|
+
const hardware_identity_service_1 = require("./hardware-identity.service");
|
|
24
27
|
const wled_client_adapter_service_1 = require("./wled-client-adapter.service");
|
|
25
28
|
const wled_mdns_discoverer_service_1 = require("./wled-mdns-discoverer.service");
|
|
26
|
-
let WledService = class WledService extends
|
|
27
|
-
constructor(configService, wledAdapter, deviceMapper, devicesService, mdnsDiscoverer, deviceConnectivityService,
|
|
29
|
+
let WledService = class WledService extends base_managed_extension_service_1.BaseManagedExtensionService {
|
|
30
|
+
constructor(configService, wledAdapter, deviceMapper, adoptionSnapshot, hardwareIdentity, devicesService, mdnsDiscoverer, deviceConnectivityService, managedServiceManager) {
|
|
28
31
|
super();
|
|
29
32
|
this.configService = configService;
|
|
30
33
|
this.wledAdapter = wledAdapter;
|
|
31
34
|
this.deviceMapper = deviceMapper;
|
|
35
|
+
this.adoptionSnapshot = adoptionSnapshot;
|
|
36
|
+
this.hardwareIdentity = hardwareIdentity;
|
|
32
37
|
this.devicesService = devicesService;
|
|
33
38
|
this.mdnsDiscoverer = mdnsDiscoverer;
|
|
34
39
|
this.deviceConnectivityService = deviceConnectivityService;
|
|
35
|
-
this.
|
|
40
|
+
this.managedServiceManager = managedServiceManager;
|
|
36
41
|
this.logger = (0, logger_1.createExtensionLogger)(devices_wled_constants_1.DEVICES_WLED_PLUGIN_NAME, 'WledService');
|
|
37
|
-
this.
|
|
42
|
+
this.owner = { kind: 'plugin', type: devices_wled_constants_1.DEVICES_WLED_PLUGIN_NAME };
|
|
38
43
|
this.serviceId = 'connector';
|
|
39
44
|
this.pluginConfig = null;
|
|
40
45
|
this.pollingInterval = null;
|
|
46
|
+
this.adoptionQueue = Promise.resolve();
|
|
41
47
|
this.wledAdapter.setCallbacks({
|
|
42
|
-
onDeviceConnected: (event) =>
|
|
48
|
+
onDeviceConnected: async (event) => {
|
|
49
|
+
try {
|
|
50
|
+
await this.handleDeviceConnected(event);
|
|
51
|
+
}
|
|
52
|
+
catch (error) {
|
|
53
|
+
this.logger.error(`Failed to process WLED connected event for ${event.host}`, {
|
|
54
|
+
message: error instanceof Error ? error.message : String(error),
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
},
|
|
43
58
|
onDeviceDisconnected: (event) => this.handleDeviceDisconnected(event),
|
|
44
59
|
onDeviceStateChanged: (event) => this.handleDeviceStateChanged(event),
|
|
45
60
|
onDeviceError: (event) => this.handleDeviceError(event),
|
|
@@ -48,6 +63,11 @@ let WledService = class WledService extends base_managed_plugin_service_1.BaseMa
|
|
|
48
63
|
onDeviceDiscovered: (device) => this.handleMdnsDeviceDiscovered(device),
|
|
49
64
|
});
|
|
50
65
|
}
|
|
66
|
+
isHealthy() {
|
|
67
|
+
return Promise.resolve(this.state === 'started' &&
|
|
68
|
+
this.pollingInterval !== null &&
|
|
69
|
+
(!this.config.mdns.enabled || this.mdnsDiscoverer.isDiscoveryRunning()));
|
|
70
|
+
}
|
|
51
71
|
async start() {
|
|
52
72
|
await this.withLock(async () => {
|
|
53
73
|
switch (this.state) {
|
|
@@ -114,7 +134,7 @@ let WledService = class WledService extends base_managed_plugin_service_1.BaseMa
|
|
|
114
134
|
return Promise.resolve({ restartRequired: false });
|
|
115
135
|
}
|
|
116
136
|
async restart() {
|
|
117
|
-
const success = await this.
|
|
137
|
+
const success = await this.managedServiceManager.restartService(this.owner.kind, this.owner.type, this.serviceId);
|
|
118
138
|
if (!success) {
|
|
119
139
|
this.logger.debug('Restart skipped (plugin may be disabled)');
|
|
120
140
|
}
|
|
@@ -187,6 +207,12 @@ let WledService = class WledService extends base_managed_plugin_service_1.BaseMa
|
|
|
187
207
|
await this.wledAdapter.connect(device.hostname, device.identifier, this.config.timeouts.connectionTimeout);
|
|
188
208
|
const registeredDevice = this.wledAdapter.getDevice(device.hostname);
|
|
189
209
|
if (registeredDevice?.context) {
|
|
210
|
+
const identityVerified = await this.persistHardwareIdentity(device, registeredDevice.context.info.mac);
|
|
211
|
+
if (!identityVerified) {
|
|
212
|
+
this.wledAdapter.disconnect(device.hostname, false);
|
|
213
|
+
await this.deviceMapper.setDeviceConnectionState(device.identifier, devices_constants_1.ConnectionState.DISCONNECTED);
|
|
214
|
+
return;
|
|
215
|
+
}
|
|
190
216
|
await this.deviceMapper.updateDeviceState(device.identifier, registeredDevice.context.state);
|
|
191
217
|
}
|
|
192
218
|
}
|
|
@@ -201,9 +227,41 @@ let WledService = class WledService extends base_managed_plugin_service_1.BaseMa
|
|
|
201
227
|
this.logger.log(`Device connected: ${event.host} (${event.info.name})`);
|
|
202
228
|
const device = this.wledAdapter.getDevice(event.host);
|
|
203
229
|
if (device) {
|
|
230
|
+
const storedDevice = await this.devicesService.findOneBy('identifier', device.identifier, devices_wled_constants_1.DEVICES_WLED_TYPE);
|
|
231
|
+
if (storedDevice) {
|
|
232
|
+
const identityVerified = await this.persistHardwareIdentity(storedDevice, event.info.mac);
|
|
233
|
+
if (!identityVerified) {
|
|
234
|
+
this.wledAdapter.disconnect(event.host, false);
|
|
235
|
+
await this.deviceMapper.setDeviceConnectionState(device.identifier, devices_constants_1.ConnectionState.DISCONNECTED);
|
|
236
|
+
return;
|
|
237
|
+
}
|
|
238
|
+
}
|
|
204
239
|
await this.deviceMapper.setDeviceConnectionState(device.identifier, devices_constants_1.ConnectionState.CONNECTED);
|
|
205
240
|
}
|
|
206
241
|
}
|
|
242
|
+
async persistHardwareIdentity(device, reportedMac) {
|
|
243
|
+
const mac = this.normalizeMac(reportedMac);
|
|
244
|
+
if (!mac) {
|
|
245
|
+
if (device.mac) {
|
|
246
|
+
this.logger.warn('WLED did not report a valid hardware identity for the configured device', {
|
|
247
|
+
resource: device.id,
|
|
248
|
+
});
|
|
249
|
+
return false;
|
|
250
|
+
}
|
|
251
|
+
return true;
|
|
252
|
+
}
|
|
253
|
+
if (device.mac === mac) {
|
|
254
|
+
return true;
|
|
255
|
+
}
|
|
256
|
+
const result = await this.hardwareIdentity.persist(device, mac);
|
|
257
|
+
if (result === 'conflict') {
|
|
258
|
+
this.logger.warn(`WLED hardware identity ${mac} conflicts with the configured device`, {
|
|
259
|
+
resource: device.id,
|
|
260
|
+
});
|
|
261
|
+
return false;
|
|
262
|
+
}
|
|
263
|
+
return true;
|
|
264
|
+
}
|
|
207
265
|
async handleDeviceDisconnected(event) {
|
|
208
266
|
this.logger.log(`Device disconnected: ${event.host} (${event.reason || 'unknown reason'})`);
|
|
209
267
|
await this.deviceMapper.setDeviceConnectionState(event.identifier, devices_constants_1.ConnectionState.DISCONNECTED);
|
|
@@ -279,12 +337,44 @@ let WledService = class WledService extends base_managed_plugin_service_1.BaseMa
|
|
|
279
337
|
}
|
|
280
338
|
async handleMdnsDeviceDiscovered(device) {
|
|
281
339
|
this.logger.log(`mDNS discovered device: ${device.name} at ${device.host}`);
|
|
282
|
-
const
|
|
283
|
-
const
|
|
340
|
+
const endpoint = this.discoveryEndpoint(device.host, device.port);
|
|
341
|
+
const advertisedMac = this.normalizeMac(device.mac) ? device.mac : undefined;
|
|
342
|
+
let devices;
|
|
343
|
+
try {
|
|
344
|
+
devices = await this.devicesService.findAll(devices_wled_constants_1.DEVICES_WLED_TYPE);
|
|
345
|
+
}
|
|
346
|
+
catch (error) {
|
|
347
|
+
this.mdnsDiscoverer.forgetDiscoveredDevice(device.host);
|
|
348
|
+
this.logger.error(`Could not inspect discovered WLED device at ${endpoint}`, {
|
|
349
|
+
message: error instanceof Error ? error.message : String(error),
|
|
350
|
+
});
|
|
351
|
+
return;
|
|
352
|
+
}
|
|
353
|
+
let identifiedDevice = { ...device, mac: advertisedMac };
|
|
354
|
+
let existingDevice = this.findExistingDevice(devices, endpoint, advertisedMac);
|
|
355
|
+
if (!existingDevice && !advertisedMac && !this.config.mdns.autoAdd) {
|
|
356
|
+
try {
|
|
357
|
+
const context = await this.wledAdapter.probe(endpoint, this.config.timeouts.connectionTimeout);
|
|
358
|
+
identifiedDevice = { ...device, mac: context.info.mac };
|
|
359
|
+
existingDevice = this.findExistingDevice(devices, endpoint, context.info.mac);
|
|
360
|
+
}
|
|
361
|
+
catch (error) {
|
|
362
|
+
this.mdnsDiscoverer.forgetDiscoveredDevice(device.host);
|
|
363
|
+
this.logger.debug(`Could not identify MAC-less WLED device at ${endpoint}`, {
|
|
364
|
+
message: error instanceof Error ? error.message : String(error),
|
|
365
|
+
});
|
|
366
|
+
return;
|
|
367
|
+
}
|
|
368
|
+
}
|
|
284
369
|
if (existingDevice) {
|
|
285
|
-
this.logger.debug(`Device at ${
|
|
286
|
-
|
|
287
|
-
|
|
370
|
+
this.logger.debug(`Device at ${endpoint} already exists in database`);
|
|
371
|
+
const identityUpgradeRequired = this.requiresCanonicalIdentity(existingDevice, endpoint, identifiedDevice.mac);
|
|
372
|
+
if (identityUpgradeRequired ||
|
|
373
|
+
(existingDevice.hostname && !this.endpointsEquivalent(existingDevice.hostname, endpoint))) {
|
|
374
|
+
await this.connectAndMapDiscoveredDevice(identifiedDevice);
|
|
375
|
+
}
|
|
376
|
+
else if (existingDevice.enabled && !this.wledAdapter.isConnected(endpoint)) {
|
|
377
|
+
this.logger.debug(`Connecting to existing device at ${endpoint}`);
|
|
288
378
|
await this.connectToDevice(existingDevice);
|
|
289
379
|
}
|
|
290
380
|
return;
|
|
@@ -298,30 +388,671 @@ let WledService = class WledService extends base_managed_plugin_service_1.BaseMa
|
|
|
298
388
|
}
|
|
299
389
|
}
|
|
300
390
|
async connectAndMapDiscoveredDevice(device) {
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
391
|
+
await this.enqueueProvisioning(async () => {
|
|
392
|
+
try {
|
|
393
|
+
const endpoint = this.discoveryEndpoint(device.host, device.port);
|
|
394
|
+
const devices = await this.devicesService.findAll(devices_wled_constants_1.DEVICES_WLED_TYPE);
|
|
395
|
+
const existingDevice = this.findExistingDevice(devices, endpoint, device.mac);
|
|
396
|
+
if (existingDevice?.hostname &&
|
|
397
|
+
this.endpointsEquivalent(existingDevice.hostname, endpoint) &&
|
|
398
|
+
!this.requiresCanonicalIdentity(existingDevice, endpoint, device.mac)) {
|
|
399
|
+
if (existingDevice.enabled && !this.wledAdapter.isConnected(endpoint)) {
|
|
400
|
+
await this.connectToDevice(existingDevice);
|
|
401
|
+
}
|
|
402
|
+
return;
|
|
403
|
+
}
|
|
404
|
+
const [result] = await this.doAdoptDevices([
|
|
405
|
+
{
|
|
406
|
+
host: endpoint,
|
|
407
|
+
name: existingDevice?.name ?? device.name,
|
|
408
|
+
category: devices_constants_1.DeviceCategory.LIGHTING,
|
|
409
|
+
},
|
|
410
|
+
]);
|
|
411
|
+
if (!result || result.status === 'failed') {
|
|
412
|
+
this.mdnsDiscoverer.forgetDiscoveredDevice(device.host);
|
|
413
|
+
this.logger.warn(`Auto-add failed for discovered WLED device at ${endpoint}`, {
|
|
414
|
+
message: result?.error ?? 'No adoption result was returned',
|
|
415
|
+
});
|
|
416
|
+
}
|
|
417
|
+
}
|
|
418
|
+
catch (error) {
|
|
419
|
+
this.mdnsDiscoverer.forgetDiscoveredDevice(device.host);
|
|
420
|
+
this.logger.error(`Failed to connect to discovered device at ${device.host}`, {
|
|
421
|
+
message: error instanceof Error ? error.message : String(error),
|
|
422
|
+
});
|
|
423
|
+
}
|
|
424
|
+
});
|
|
425
|
+
}
|
|
426
|
+
getDiscoveredDevices() {
|
|
427
|
+
return this.mdnsDiscoverer.getDiscoveredDevices();
|
|
428
|
+
}
|
|
429
|
+
async getDiscoveryInventory() {
|
|
430
|
+
const [discoveredDevices, databaseDevices] = await Promise.all([
|
|
431
|
+
Promise.resolve(this.mdnsDiscoverer.getDiscoveredDevices()),
|
|
432
|
+
this.devicesService.findAll(devices_wled_constants_1.DEVICES_WLED_TYPE),
|
|
433
|
+
]);
|
|
434
|
+
return {
|
|
435
|
+
mdnsEnabled: this.config.mdns.enabled,
|
|
436
|
+
discoveryRunning: this.mdnsDiscoverer.isDiscoveryRunning(),
|
|
437
|
+
devices: discoveredDevices.map((device) => {
|
|
438
|
+
const discoveryEndpoint = this.discoveryEndpoint(device.host, device.port);
|
|
439
|
+
const existingDevice = this.findExistingDevice(databaseDevices, discoveryEndpoint, device.mac);
|
|
440
|
+
return {
|
|
441
|
+
host: device.host,
|
|
442
|
+
name: existingDevice?.name ?? device.name,
|
|
443
|
+
mac: this.normalizeMac(device.mac),
|
|
444
|
+
port: device.port,
|
|
445
|
+
adoptedDeviceId: existingDevice?.id ?? null,
|
|
446
|
+
};
|
|
447
|
+
}),
|
|
448
|
+
};
|
|
449
|
+
}
|
|
450
|
+
async probeDevice(host) {
|
|
451
|
+
const normalizedHost = this.normalizeHost(host);
|
|
452
|
+
const context = await this.wledAdapter.probe(normalizedHost, this.config.timeouts.connectionTimeout);
|
|
453
|
+
const mac = this.normalizeMac(context.info.mac);
|
|
454
|
+
if (!mac) {
|
|
455
|
+
throw new devices_wled_exceptions_1.WledValidationException('WLED device did not report a valid MAC address');
|
|
456
|
+
}
|
|
457
|
+
const databaseDevices = await this.devicesService.findAll(devices_wled_constants_1.DEVICES_WLED_TYPE);
|
|
458
|
+
const existingDevice = this.findExistingDevice(databaseDevices, normalizedHost, mac);
|
|
459
|
+
return {
|
|
460
|
+
host: normalizedHost,
|
|
461
|
+
name: existingDevice?.name || context.info.name || `WLED ${mac}`,
|
|
462
|
+
mac,
|
|
463
|
+
port: this.portFromHost(normalizedHost),
|
|
464
|
+
adoptedDeviceId: existingDevice?.id ?? null,
|
|
465
|
+
};
|
|
466
|
+
}
|
|
467
|
+
async rescanDiscovery() {
|
|
468
|
+
this.mdnsDiscoverer.clearDiscoveredDevices();
|
|
469
|
+
if (this.config.mdns.enabled) {
|
|
470
|
+
this.mdnsDiscoverer.stop();
|
|
471
|
+
this.mdnsDiscoverer.start(this.config.mdns.interface ?? undefined);
|
|
472
|
+
}
|
|
473
|
+
return this.getDiscoveryInventory();
|
|
474
|
+
}
|
|
475
|
+
async adoptDevices(requests) {
|
|
476
|
+
return this.enqueueProvisioning(() => this.doAdoptDevices(requests));
|
|
477
|
+
}
|
|
478
|
+
async doAdoptDevices(requests) {
|
|
479
|
+
const results = requests.map(() => undefined);
|
|
480
|
+
const databaseDevices = await this.devicesService.findAll(devices_wled_constants_1.DEVICES_WLED_TYPE);
|
|
481
|
+
const failedSelectionHosts = new Set();
|
|
482
|
+
const plans = [];
|
|
483
|
+
const plannedIdentities = new Set();
|
|
484
|
+
for (const [index, request] of requests.entries()) {
|
|
485
|
+
let host = request.host.trim();
|
|
486
|
+
try {
|
|
487
|
+
host = this.normalizeHost(request.host);
|
|
488
|
+
const context = await this.wledAdapter.probe(host, this.config.timeouts.connectionTimeout);
|
|
489
|
+
const existingDevice = this.findExistingDevice(databaseDevices, host, context.info.mac);
|
|
490
|
+
const canonicalIdentity = this.identifierFromMac(context.info.mac);
|
|
491
|
+
const existingIdentifier = existingDevice?.identifier;
|
|
492
|
+
const identifier = existingIdentifier &&
|
|
493
|
+
!this.legacyHostIdentifiers(existingDevice.hostname ?? host).has(existingIdentifier.toLowerCase()) &&
|
|
494
|
+
existingIdentifier.toLowerCase() !== `wled-${canonicalIdentity.slice(-6)}`
|
|
495
|
+
? existingIdentifier
|
|
496
|
+
: canonicalIdentity;
|
|
497
|
+
if (plannedIdentities.has(canonicalIdentity)) {
|
|
498
|
+
results[index] = {
|
|
499
|
+
host,
|
|
500
|
+
name: request.name,
|
|
501
|
+
status: 'failed',
|
|
502
|
+
error: 'The same WLED controller was selected more than once',
|
|
503
|
+
deviceId: existingDevice?.id ?? null,
|
|
504
|
+
};
|
|
505
|
+
continue;
|
|
506
|
+
}
|
|
507
|
+
plannedIdentities.add(canonicalIdentity);
|
|
508
|
+
plans.push({ index, request, host, context, existingDevice, identifier });
|
|
509
|
+
}
|
|
510
|
+
catch (error) {
|
|
511
|
+
failedSelectionHosts.add(host);
|
|
512
|
+
results[index] = {
|
|
513
|
+
host,
|
|
514
|
+
name: request.name,
|
|
515
|
+
status: 'failed',
|
|
516
|
+
error: error instanceof Error ? error.message : String(error),
|
|
517
|
+
deviceId: null,
|
|
518
|
+
};
|
|
519
|
+
}
|
|
520
|
+
}
|
|
521
|
+
const plannedExistingDeviceIds = new Set(plans.flatMap(({ existingDevice }) => (existingDevice ? [existingDevice.id] : [])));
|
|
522
|
+
const selectedDeviceIds = plannedExistingDeviceIds;
|
|
523
|
+
const moveHostEdges = new Map();
|
|
524
|
+
for (const plan of plans) {
|
|
525
|
+
const sourceHost = plan.existingDevice?.hostname ? this.canonicalEndpoint(plan.existingDevice.hostname) : null;
|
|
526
|
+
const targetHost = this.canonicalEndpoint(plan.host);
|
|
527
|
+
if (!sourceHost || sourceHost === targetHost) {
|
|
528
|
+
continue;
|
|
529
|
+
}
|
|
530
|
+
const sourceEdges = moveHostEdges.get(sourceHost) ?? new Set();
|
|
531
|
+
sourceEdges.add(targetHost);
|
|
532
|
+
moveHostEdges.set(sourceHost, sourceEdges);
|
|
533
|
+
const targetEdges = moveHostEdges.get(targetHost) ?? new Set();
|
|
534
|
+
targetEdges.add(sourceHost);
|
|
535
|
+
moveHostEdges.set(targetHost, targetEdges);
|
|
536
|
+
}
|
|
537
|
+
const failedMoveHosts = new Set();
|
|
538
|
+
const pendingFailedHosts = [...failedSelectionHosts].map((host) => this.canonicalEndpoint(host));
|
|
539
|
+
while (pendingFailedHosts.length > 0) {
|
|
540
|
+
const currentHost = pendingFailedHosts.pop();
|
|
541
|
+
if (!currentHost || failedMoveHosts.has(currentHost)) {
|
|
542
|
+
continue;
|
|
309
543
|
}
|
|
544
|
+
failedMoveHosts.add(currentHost);
|
|
545
|
+
pendingFailedHosts.push(...(moveHostEdges.get(currentHost) ?? []));
|
|
546
|
+
}
|
|
547
|
+
const blockedPlanIndices = new Set();
|
|
548
|
+
for (const plan of plans) {
|
|
549
|
+
if (failedMoveHosts.has(this.canonicalEndpoint(plan.host)) ||
|
|
550
|
+
(plan.existingDevice?.hostname !== null &&
|
|
551
|
+
plan.existingDevice?.hostname !== undefined &&
|
|
552
|
+
failedMoveHosts.has(this.canonicalEndpoint(plan.existingDevice.hostname)))) {
|
|
553
|
+
blockedPlanIndices.add(plan.index);
|
|
554
|
+
results[plan.index] = {
|
|
555
|
+
host: plan.host,
|
|
556
|
+
name: plan.request.name,
|
|
557
|
+
status: 'failed',
|
|
558
|
+
error: 'A related selected WLED controller could not be probed',
|
|
559
|
+
deviceId: plan.existingDevice?.id ?? null,
|
|
560
|
+
};
|
|
561
|
+
}
|
|
562
|
+
}
|
|
563
|
+
const dependencyEdges = new Map();
|
|
564
|
+
for (const plan of plans.filter(({ index }) => !blockedPlanIndices.has(index))) {
|
|
565
|
+
const selectedTargetOwner = plans.find((candidate) => candidate.existingDevice?.hostname !== null &&
|
|
566
|
+
candidate.existingDevice?.hostname !== undefined &&
|
|
567
|
+
this.endpointsEquivalent(candidate.existingDevice.hostname, plan.host) &&
|
|
568
|
+
candidate.existingDevice.id !== plan.existingDevice?.id);
|
|
569
|
+
if (selectedTargetOwner) {
|
|
570
|
+
const planEdges = dependencyEdges.get(plan.index) ?? new Set();
|
|
571
|
+
planEdges.add(selectedTargetOwner.index);
|
|
572
|
+
dependencyEdges.set(plan.index, planEdges);
|
|
573
|
+
const ownerEdges = dependencyEdges.get(selectedTargetOwner.index) ?? new Set();
|
|
574
|
+
ownerEdges.add(plan.index);
|
|
575
|
+
dependencyEdges.set(selectedTargetOwner.index, ownerEdges);
|
|
576
|
+
}
|
|
577
|
+
}
|
|
578
|
+
const dependencyGroupByIndex = new Map();
|
|
579
|
+
for (const start of dependencyEdges.keys()) {
|
|
580
|
+
if (dependencyGroupByIndex.has(start)) {
|
|
581
|
+
continue;
|
|
582
|
+
}
|
|
583
|
+
const group = new Set();
|
|
584
|
+
const pending = [start];
|
|
585
|
+
while (pending.length > 0) {
|
|
586
|
+
const current = pending.pop();
|
|
587
|
+
if (current === undefined || group.has(current)) {
|
|
588
|
+
continue;
|
|
589
|
+
}
|
|
590
|
+
group.add(current);
|
|
591
|
+
pending.push(...(dependencyEdges.get(current) ?? []));
|
|
592
|
+
}
|
|
593
|
+
for (const member of group) {
|
|
594
|
+
dependencyGroupByIndex.set(member, group);
|
|
595
|
+
}
|
|
596
|
+
}
|
|
597
|
+
const registrationSnapshotsByDependencyGroup = new Map();
|
|
598
|
+
for (const dependencyGroup of new Set(dependencyGroupByIndex.values())) {
|
|
599
|
+
const involvedHosts = plans
|
|
600
|
+
.filter((plan) => dependencyGroup.has(plan.index))
|
|
601
|
+
.flatMap((plan) => [plan.host, plan.existingDevice?.hostname].filter((host) => !!host));
|
|
602
|
+
const registrations = this.wledAdapter
|
|
603
|
+
.getRegisteredDevices()
|
|
604
|
+
.filter((registration) => involvedHosts.some((host) => this.endpointsEquivalent(registration.host, host)))
|
|
605
|
+
.map((registration) => ({ ...registration }));
|
|
606
|
+
registrationSnapshotsByDependencyGroup.set(dependencyGroup, registrations);
|
|
607
|
+
}
|
|
608
|
+
const retiredDeviceIds = new Set();
|
|
609
|
+
const failedDependencyGroups = new Map();
|
|
610
|
+
const createdDeviceIdsByPlan = new Map();
|
|
611
|
+
const structureSnapshotsByPlan = new Map();
|
|
612
|
+
const retiredStaleOwnersByDependencyGroup = new Map();
|
|
613
|
+
const deferredPruningByDependencyGroup = new Map();
|
|
614
|
+
for (const { index, request, host, context, existingDevice, identifier } of plans) {
|
|
615
|
+
if (blockedPlanIndices.has(index)) {
|
|
616
|
+
continue;
|
|
617
|
+
}
|
|
618
|
+
const dependencyGroup = dependencyGroupByIndex.get(index);
|
|
619
|
+
const dependencyFailure = dependencyGroup ? failedDependencyGroups.get(dependencyGroup) : undefined;
|
|
620
|
+
if (dependencyFailure) {
|
|
621
|
+
results[index] = {
|
|
622
|
+
host,
|
|
623
|
+
name: request.name,
|
|
624
|
+
status: 'failed',
|
|
625
|
+
error: dependencyFailure,
|
|
626
|
+
deviceId: existingDevice?.id ?? null,
|
|
627
|
+
};
|
|
628
|
+
continue;
|
|
629
|
+
}
|
|
630
|
+
let mappedDevice = null;
|
|
631
|
+
let existingDeviceDisconnected = false;
|
|
632
|
+
let attemptedRegistrationCreated = false;
|
|
633
|
+
const retiredStaleOwners = [];
|
|
634
|
+
const disconnectedStaleOwners = [];
|
|
635
|
+
try {
|
|
636
|
+
if (existingDevice) {
|
|
637
|
+
structureSnapshotsByPlan.set(index, await this.adoptionSnapshot.capture(existingDevice.id));
|
|
638
|
+
}
|
|
639
|
+
if (existingDevice && existingDevice.identifier !== identifier) {
|
|
640
|
+
await this.devicesService.update(existingDevice.id, {
|
|
641
|
+
type: devices_wled_constants_1.DEVICES_WLED_TYPE,
|
|
642
|
+
identifier,
|
|
643
|
+
hostname: host,
|
|
644
|
+
});
|
|
645
|
+
}
|
|
646
|
+
const device = await this.deviceMapper.mapDevice(host, context, request.name, identifier, request.description, request.enabled);
|
|
647
|
+
mappedDevice = device;
|
|
648
|
+
if (!existingDevice) {
|
|
649
|
+
createdDeviceIdsByPlan.set(index, device.id);
|
|
650
|
+
}
|
|
651
|
+
if (existingDevice?.hostname && existingDevice.hostname !== host) {
|
|
652
|
+
const sourceRegistration = this.wledAdapter.getDevice(existingDevice.hostname);
|
|
653
|
+
if (sourceRegistration?.identifier === existingDevice.identifier) {
|
|
654
|
+
this.wledAdapter.disconnect(existingDevice.hostname, false);
|
|
655
|
+
existingDeviceDisconnected = true;
|
|
656
|
+
}
|
|
657
|
+
}
|
|
658
|
+
const staleHostOwners = databaseDevices.filter((device) => device.hostname !== null &&
|
|
659
|
+
this.endpointsEquivalent(device.hostname, host) &&
|
|
660
|
+
device.id !== existingDevice?.id);
|
|
661
|
+
const retiringHostOwners = staleHostOwners.filter((staleHostOwner) => !selectedDeviceIds.has(staleHostOwner.id) && !retiredDeviceIds.has(staleHostOwner.id));
|
|
662
|
+
if (dependencyGroup && retiringHostOwners.length > 0) {
|
|
663
|
+
const groupOwners = retiredStaleOwnersByDependencyGroup.get(dependencyGroup) ?? new Map();
|
|
664
|
+
for (const staleHostOwner of staleHostOwners) {
|
|
665
|
+
groupOwners.set(staleHostOwner.id, staleHostOwner);
|
|
666
|
+
}
|
|
667
|
+
retiredStaleOwnersByDependencyGroup.set(dependencyGroup, groupOwners);
|
|
668
|
+
}
|
|
669
|
+
if (staleHostOwners.length > 0) {
|
|
670
|
+
for (const staleHostOwner of retiringHostOwners) {
|
|
671
|
+
if (!staleHostOwner.hostname) {
|
|
672
|
+
continue;
|
|
673
|
+
}
|
|
674
|
+
const staleRegistration = this.wledAdapter.getDevice(staleHostOwner.hostname);
|
|
675
|
+
if (staleRegistration?.identifier === staleHostOwner.identifier) {
|
|
676
|
+
this.wledAdapter.disconnect(staleHostOwner.hostname, false);
|
|
677
|
+
if (retiringHostOwners.some(({ id }) => id === staleHostOwner.id)) {
|
|
678
|
+
disconnectedStaleOwners.push(staleHostOwner);
|
|
679
|
+
}
|
|
680
|
+
}
|
|
681
|
+
}
|
|
682
|
+
}
|
|
683
|
+
for (const staleHostOwner of retiringHostOwners) {
|
|
684
|
+
retiredStaleOwners.push(staleHostOwner);
|
|
685
|
+
await this.devicesService.update(staleHostOwner.id, {
|
|
686
|
+
type: devices_wled_constants_1.DEVICES_WLED_TYPE,
|
|
687
|
+
enabled: false,
|
|
688
|
+
hostname: null,
|
|
689
|
+
});
|
|
690
|
+
await this.deviceConnectivityService.setConnectionState(staleHostOwner.id, {
|
|
691
|
+
state: devices_constants_1.ConnectionState.DISCONNECTED,
|
|
692
|
+
});
|
|
693
|
+
retiredDeviceIds.add(staleHostOwner.id);
|
|
694
|
+
}
|
|
695
|
+
let connectionState = devices_constants_1.ConnectionState.DISCONNECTED;
|
|
696
|
+
if (!device.enabled) {
|
|
697
|
+
this.wledAdapter.disconnect(host, false);
|
|
698
|
+
existingDeviceDisconnected = existingDevice !== null;
|
|
699
|
+
}
|
|
700
|
+
else {
|
|
701
|
+
const registeredDevice = this.wledAdapter.getDevice(host);
|
|
702
|
+
if (registeredDevice?.identifier === identifier && registeredDevice.connected) {
|
|
703
|
+
registeredDevice.context = context;
|
|
704
|
+
registeredDevice.lastSeen = new Date();
|
|
705
|
+
connectionState = devices_constants_1.ConnectionState.CONNECTED;
|
|
706
|
+
}
|
|
707
|
+
else {
|
|
708
|
+
try {
|
|
709
|
+
this.wledAdapter.connectWithContext(host, identifier, context);
|
|
710
|
+
attemptedRegistrationCreated = true;
|
|
711
|
+
connectionState = devices_constants_1.ConnectionState.CONNECTED;
|
|
712
|
+
}
|
|
713
|
+
catch (error) {
|
|
714
|
+
this.logger.warn(`WLED device ${identifier} was adopted but its live connection could not be registered`, {
|
|
715
|
+
resource: device.id,
|
|
716
|
+
message: error instanceof Error ? error.message : String(error),
|
|
717
|
+
});
|
|
718
|
+
}
|
|
719
|
+
}
|
|
720
|
+
}
|
|
721
|
+
await this.deviceConnectivityService.setConnectionState(device.id, {
|
|
722
|
+
state: connectionState,
|
|
723
|
+
});
|
|
724
|
+
if (dependencyGroup) {
|
|
725
|
+
const deferredPruning = deferredPruningByDependencyGroup.get(dependencyGroup) ?? [];
|
|
726
|
+
deferredPruning.push({ device, state: context.state });
|
|
727
|
+
deferredPruningByDependencyGroup.set(dependencyGroup, deferredPruning);
|
|
728
|
+
}
|
|
729
|
+
else {
|
|
730
|
+
await this.deviceMapper.pruneObsoleteSegmentChannels(device, context.state);
|
|
731
|
+
}
|
|
732
|
+
results[index] = {
|
|
733
|
+
host,
|
|
734
|
+
name: request.name,
|
|
735
|
+
status: existingDevice ? 'updated' : 'created',
|
|
736
|
+
error: null,
|
|
737
|
+
deviceId: device.id,
|
|
738
|
+
};
|
|
739
|
+
}
|
|
740
|
+
catch (error) {
|
|
741
|
+
const reason = error instanceof Error ? error.message : String(error);
|
|
742
|
+
if (dependencyGroup) {
|
|
743
|
+
const dependentFailure = `A related WLED address move failed: ${reason}`;
|
|
744
|
+
failedDependencyGroups.set(dependencyGroup, dependentFailure);
|
|
745
|
+
const dependentPlans = plans.filter((plan) => dependencyGroup.has(plan.index));
|
|
746
|
+
const involvedHosts = new Set(dependentPlans.flatMap((plan) => [plan.host, plan.existingDevice?.hostname].filter((item) => !!item)));
|
|
747
|
+
for (const involvedHost of involvedHosts) {
|
|
748
|
+
await this.tryRollback(`disconnect ${involvedHost}`, () => Promise.resolve(this.wledAdapter.disconnect(involvedHost, false)));
|
|
749
|
+
}
|
|
750
|
+
for (const dependentPlan of dependentPlans) {
|
|
751
|
+
if (dependentPlan.existingDevice) {
|
|
752
|
+
const original = dependentPlan.existingDevice;
|
|
753
|
+
const structureSnapshot = structureSnapshotsByPlan.get(dependentPlan.index);
|
|
754
|
+
if (structureSnapshot) {
|
|
755
|
+
await this.tryRollback(`restore device structure ${original.id}`, () => this.adoptionSnapshot.restore(structureSnapshot));
|
|
756
|
+
}
|
|
757
|
+
await this.tryRollback(`restore device ${original.id}`, () => this.devicesService.update(original.id, {
|
|
758
|
+
type: devices_wled_constants_1.DEVICES_WLED_TYPE,
|
|
759
|
+
identifier: original.identifier,
|
|
760
|
+
name: original.name,
|
|
761
|
+
description: original.description,
|
|
762
|
+
enabled: original.enabled,
|
|
763
|
+
hostname: original.hostname,
|
|
764
|
+
}));
|
|
765
|
+
await this.tryRollback(`restore hardware identity ${original.id}`, () => this.hardwareIdentity.restore(original.id, original.mac));
|
|
766
|
+
}
|
|
767
|
+
else {
|
|
768
|
+
const partialDevice = await this.tryRollback(`find partial device ${dependentPlan.identifier}`, () => this.devicesService.findOneBy('identifier', dependentPlan.identifier, devices_wled_constants_1.DEVICES_WLED_TYPE), null);
|
|
769
|
+
const createdDeviceId = createdDeviceIdsByPlan.get(dependentPlan.index) ?? partialDevice?.id;
|
|
770
|
+
if (createdDeviceId) {
|
|
771
|
+
await this.tryRollback(`remove partial device ${createdDeviceId}`, () => this.devicesService.remove(createdDeviceId));
|
|
772
|
+
createdDeviceIdsByPlan.delete(dependentPlan.index);
|
|
773
|
+
}
|
|
774
|
+
}
|
|
775
|
+
results[dependentPlan.index] = {
|
|
776
|
+
host: dependentPlan.host,
|
|
777
|
+
name: dependentPlan.request.name,
|
|
778
|
+
status: 'failed',
|
|
779
|
+
error: dependentFailure,
|
|
780
|
+
deviceId: dependentPlan.existingDevice?.id ?? null,
|
|
781
|
+
};
|
|
782
|
+
}
|
|
783
|
+
for (const staleHostOwner of retiredStaleOwnersByDependencyGroup.get(dependencyGroup)?.values() ?? []) {
|
|
784
|
+
await this.tryRollback(`restore stale owner ${staleHostOwner.id}`, () => this.devicesService.update(staleHostOwner.id, {
|
|
785
|
+
type: devices_wled_constants_1.DEVICES_WLED_TYPE,
|
|
786
|
+
identifier: staleHostOwner.identifier,
|
|
787
|
+
name: staleHostOwner.name,
|
|
788
|
+
description: staleHostOwner.description,
|
|
789
|
+
enabled: staleHostOwner.enabled,
|
|
790
|
+
hostname: staleHostOwner.hostname,
|
|
791
|
+
}));
|
|
792
|
+
await this.tryRollback(`restore stale owner hardware identity ${staleHostOwner.id}`, () => this.hardwareIdentity.restore(staleHostOwner.id, staleHostOwner.mac));
|
|
793
|
+
retiredDeviceIds.delete(staleHostOwner.id);
|
|
794
|
+
}
|
|
795
|
+
const snapshotDevices = databaseDevices.filter((device) => {
|
|
796
|
+
const deviceHost = device.hostname;
|
|
797
|
+
return (deviceHost !== null &&
|
|
798
|
+
[...involvedHosts].some((involvedHost) => this.endpointsEquivalent(deviceHost, involvedHost)));
|
|
799
|
+
});
|
|
800
|
+
await this.tryRollback('restore dependency group registrations', () => this.restoreDependencyGroupRegistrations(involvedHosts, registrationSnapshotsByDependencyGroup.get(dependencyGroup) ?? [], snapshotDevices));
|
|
801
|
+
}
|
|
802
|
+
else {
|
|
803
|
+
if (attemptedRegistrationCreated) {
|
|
804
|
+
await this.tryRollback(`disconnect ${host}`, () => Promise.resolve(this.wledAdapter.disconnect(host, false)));
|
|
805
|
+
}
|
|
806
|
+
const partialDevice = mappedDevice ??
|
|
807
|
+
(await this.tryRollback(`find partial device ${identifier}`, () => this.devicesService.findOneBy('identifier', identifier, devices_wled_constants_1.DEVICES_WLED_TYPE), null));
|
|
808
|
+
if (existingDevice) {
|
|
809
|
+
const structureSnapshot = structureSnapshotsByPlan.get(index);
|
|
810
|
+
if (structureSnapshot) {
|
|
811
|
+
await this.tryRollback(`restore device structure ${existingDevice.id}`, () => this.adoptionSnapshot.restore(structureSnapshot));
|
|
812
|
+
}
|
|
813
|
+
await this.tryRollback(`restore device ${existingDevice.id}`, () => this.devicesService.update(existingDevice.id, {
|
|
814
|
+
type: devices_wled_constants_1.DEVICES_WLED_TYPE,
|
|
815
|
+
identifier: existingDevice.identifier,
|
|
816
|
+
name: existingDevice.name,
|
|
817
|
+
description: existingDevice.description,
|
|
818
|
+
enabled: existingDevice.enabled,
|
|
819
|
+
hostname: existingDevice.hostname,
|
|
820
|
+
}));
|
|
821
|
+
await this.tryRollback(`restore hardware identity ${existingDevice.id}`, () => this.hardwareIdentity.restore(existingDevice.id, existingDevice.mac));
|
|
822
|
+
if (existingDeviceDisconnected || attemptedRegistrationCreated) {
|
|
823
|
+
await this.tryRollback(`reconnect device ${existingDevice.id}`, () => this.restoreDeviceConnection(existingDevice));
|
|
824
|
+
}
|
|
825
|
+
}
|
|
826
|
+
else if (partialDevice) {
|
|
827
|
+
await this.tryRollback(`remove partial device ${partialDevice.id}`, () => this.devicesService.remove(partialDevice.id));
|
|
828
|
+
}
|
|
829
|
+
for (const staleHostOwner of retiredStaleOwners) {
|
|
830
|
+
await this.tryRollback(`restore stale owner ${staleHostOwner.id}`, () => this.devicesService.update(staleHostOwner.id, {
|
|
831
|
+
type: devices_wled_constants_1.DEVICES_WLED_TYPE,
|
|
832
|
+
identifier: staleHostOwner.identifier,
|
|
833
|
+
name: staleHostOwner.name,
|
|
834
|
+
description: staleHostOwner.description,
|
|
835
|
+
enabled: staleHostOwner.enabled,
|
|
836
|
+
hostname: staleHostOwner.hostname,
|
|
837
|
+
}));
|
|
838
|
+
await this.tryRollback(`restore stale owner hardware identity ${staleHostOwner.id}`, () => this.hardwareIdentity.restore(staleHostOwner.id, staleHostOwner.mac));
|
|
839
|
+
if (disconnectedStaleOwners.some(({ id }) => id === staleHostOwner.id)) {
|
|
840
|
+
await this.tryRollback(`reconnect stale owner ${staleHostOwner.id}`, () => this.restoreDeviceConnection(staleHostOwner));
|
|
841
|
+
}
|
|
842
|
+
}
|
|
843
|
+
results[index] = {
|
|
844
|
+
host,
|
|
845
|
+
name: request.name,
|
|
846
|
+
status: 'failed',
|
|
847
|
+
error: reason,
|
|
848
|
+
deviceId: null,
|
|
849
|
+
};
|
|
850
|
+
}
|
|
851
|
+
}
|
|
852
|
+
}
|
|
853
|
+
for (const [dependencyGroup, deferredPruning] of deferredPruningByDependencyGroup) {
|
|
854
|
+
if (failedDependencyGroups.has(dependencyGroup) ||
|
|
855
|
+
[...dependencyGroup].some((index) => results[index]?.status === 'failed')) {
|
|
856
|
+
continue;
|
|
857
|
+
}
|
|
858
|
+
for (const { device, state } of deferredPruning) {
|
|
859
|
+
await this.deviceMapper.pruneObsoleteSegmentChannels(device, state);
|
|
860
|
+
}
|
|
861
|
+
}
|
|
862
|
+
return results.filter((result) => result !== undefined);
|
|
863
|
+
}
|
|
864
|
+
enqueueProvisioning(operation) {
|
|
865
|
+
const result = this.adoptionQueue.then(operation);
|
|
866
|
+
this.adoptionQueue = result.then(() => undefined, () => undefined);
|
|
867
|
+
return result;
|
|
868
|
+
}
|
|
869
|
+
async tryRollback(description, operation, fallback) {
|
|
870
|
+
try {
|
|
871
|
+
return await operation();
|
|
310
872
|
}
|
|
311
873
|
catch (error) {
|
|
312
|
-
this.logger.error(`
|
|
874
|
+
this.logger.error(`WLED adoption rollback could not ${description}`, {
|
|
313
875
|
message: error instanceof Error ? error.message : String(error),
|
|
314
876
|
});
|
|
877
|
+
return fallback;
|
|
315
878
|
}
|
|
316
879
|
}
|
|
317
|
-
|
|
318
|
-
|
|
880
|
+
async restoreDeviceConnection(device) {
|
|
881
|
+
let state = devices_constants_1.ConnectionState.DISCONNECTED;
|
|
882
|
+
if (device.enabled && device.hostname && device.identifier) {
|
|
883
|
+
try {
|
|
884
|
+
await this.wledAdapter.connect(device.hostname, device.identifier, this.config.timeouts.connectionTimeout);
|
|
885
|
+
state = devices_constants_1.ConnectionState.CONNECTED;
|
|
886
|
+
}
|
|
887
|
+
catch (error) {
|
|
888
|
+
this.logger.warn(`Could not restore the WLED connection for ${device.identifier}`, {
|
|
889
|
+
resource: device.id,
|
|
890
|
+
message: error instanceof Error ? error.message : String(error),
|
|
891
|
+
});
|
|
892
|
+
}
|
|
893
|
+
}
|
|
894
|
+
await this.deviceConnectivityService.setConnectionState(device.id, { state });
|
|
895
|
+
}
|
|
896
|
+
async restoreDependencyGroupRegistrations(involvedHosts, registrations, devices) {
|
|
897
|
+
const belongsToGroup = (host) => [...involvedHosts].some((involvedHost) => this.endpointsEquivalent(host, involvedHost));
|
|
898
|
+
for (const registration of this.wledAdapter.getRegisteredDevices().filter(({ host }) => belongsToGroup(host))) {
|
|
899
|
+
this.wledAdapter.disconnect(registration.host, false);
|
|
900
|
+
}
|
|
901
|
+
for (const registration of registrations.filter(({ connected }) => connected)) {
|
|
902
|
+
if (registration.context) {
|
|
903
|
+
this.wledAdapter.connectWithContext(registration.host, registration.identifier, registration.context);
|
|
904
|
+
}
|
|
905
|
+
else {
|
|
906
|
+
await this.wledAdapter.connect(registration.host, registration.identifier, this.config.timeouts.connectionTimeout);
|
|
907
|
+
}
|
|
908
|
+
const restored = this.wledAdapter.getDevice(registration.host);
|
|
909
|
+
if (restored) {
|
|
910
|
+
restored.enabled = registration.enabled;
|
|
911
|
+
restored.lastSeen = registration.lastSeen;
|
|
912
|
+
}
|
|
913
|
+
}
|
|
914
|
+
const uniqueDevices = new Map(devices.map((device) => [device.id, device]));
|
|
915
|
+
for (const device of uniqueDevices.values()) {
|
|
916
|
+
const connected = registrations.some((registration) => registration.connected &&
|
|
917
|
+
registration.identifier === device.identifier &&
|
|
918
|
+
device.hostname !== null &&
|
|
919
|
+
this.endpointsEquivalent(registration.host, device.hostname));
|
|
920
|
+
await this.deviceConnectivityService.setConnectionState(device.id, {
|
|
921
|
+
state: connected ? devices_constants_1.ConnectionState.CONNECTED : devices_constants_1.ConnectionState.DISCONNECTED,
|
|
922
|
+
});
|
|
923
|
+
}
|
|
319
924
|
}
|
|
320
925
|
async getUnadedDiscoveredDevices() {
|
|
321
926
|
const discoveredDevices = this.mdnsDiscoverer.getDiscoveredDevices();
|
|
322
927
|
const databaseDevices = await this.devicesService.findAll(devices_wled_constants_1.DEVICES_WLED_TYPE);
|
|
323
928
|
const existingHostnames = new Set(databaseDevices.map((d) => d.hostname));
|
|
324
|
-
return discoveredDevices.filter((device) => !existingHostnames.
|
|
929
|
+
return discoveredDevices.filter((device) => ![...existingHostnames].some((hostname) => hostname !== null && this.endpointsEquivalent(hostname, this.discoveryEndpoint(device.host, device.port))));
|
|
930
|
+
}
|
|
931
|
+
discoveryEndpoint(host, port) {
|
|
932
|
+
const normalizedHost = this.normalizeHost(host);
|
|
933
|
+
const hasExplicitPort = /^\[[^\]]+\]:\d+$/.test(normalizedHost) || /^[^:]+:\d+$/.test(normalizedHost);
|
|
934
|
+
return port === 80 || hasExplicitPort ? normalizedHost : `${normalizedHost}:${port}`;
|
|
935
|
+
}
|
|
936
|
+
normalizeHost(host) {
|
|
937
|
+
const trimmed = host.trim();
|
|
938
|
+
if (!trimmed) {
|
|
939
|
+
throw new devices_wled_exceptions_1.WledValidationException('WLED hostname or IP address is required');
|
|
940
|
+
}
|
|
941
|
+
if (/^https?:\/\//i.test(trimmed)) {
|
|
942
|
+
let url;
|
|
943
|
+
try {
|
|
944
|
+
url = new URL(trimmed);
|
|
945
|
+
}
|
|
946
|
+
catch {
|
|
947
|
+
throw new devices_wled_exceptions_1.WledValidationException('WLED address must be a valid hostname or IP address');
|
|
948
|
+
}
|
|
949
|
+
if (url.pathname !== '/' || url.search || url.hash) {
|
|
950
|
+
throw new devices_wled_exceptions_1.WledValidationException('WLED address must not include a path, query, or fragment');
|
|
951
|
+
}
|
|
952
|
+
return url.host;
|
|
953
|
+
}
|
|
954
|
+
if (trimmed.includes('/') || trimmed.includes('?') || trimmed.includes('#')) {
|
|
955
|
+
throw new devices_wled_exceptions_1.WledValidationException('WLED address must be a hostname or IP address');
|
|
956
|
+
}
|
|
957
|
+
if (!trimmed.startsWith('[') && (trimmed.match(/:/g)?.length ?? 0) > 1) {
|
|
958
|
+
return `[${trimmed}]`;
|
|
959
|
+
}
|
|
960
|
+
return trimmed;
|
|
961
|
+
}
|
|
962
|
+
identifierFromMac(mac) {
|
|
963
|
+
const normalizedMac = this.normalizeMac(mac);
|
|
964
|
+
if (!normalizedMac) {
|
|
965
|
+
throw new devices_wled_exceptions_1.WledValidationException('WLED device did not report a valid MAC address');
|
|
966
|
+
}
|
|
967
|
+
return `wled-${normalizedMac}`;
|
|
968
|
+
}
|
|
969
|
+
findExistingDevice(devices, host, mac) {
|
|
970
|
+
if (mac) {
|
|
971
|
+
const normalizedMac = this.normalizeMac(mac);
|
|
972
|
+
if (normalizedMac) {
|
|
973
|
+
const canonicalIdentifier = `wled-${normalizedMac}`;
|
|
974
|
+
const legacyIdentifier = `wled-${normalizedMac.slice(-6)}`;
|
|
975
|
+
const legacyHostIdentifiers = this.legacyHostIdentifiers(host);
|
|
976
|
+
const identityCompatible = (device) => !this.hasContradictoryIdentity(device, normalizedMac);
|
|
977
|
+
const legacyDevices = devices.filter((device) => device.identifier === legacyIdentifier && identityCompatible(device));
|
|
978
|
+
return (devices.find((device) => device.identifier === canonicalIdentifier) ??
|
|
979
|
+
devices.find((device) => device.mac === normalizedMac) ??
|
|
980
|
+
devices.find((device) => this.deviceSerialMac(device) === normalizedMac) ??
|
|
981
|
+
legacyDevices.find((device) => device.hostname !== null && this.endpointsEquivalent(device.hostname, host)) ??
|
|
982
|
+
devices.find((device) => identityCompatible(device) &&
|
|
983
|
+
device.identifier !== null &&
|
|
984
|
+
legacyHostIdentifiers.has(device.identifier.toLowerCase()) &&
|
|
985
|
+
device.hostname !== null &&
|
|
986
|
+
this.endpointsEquivalent(device.hostname, host)) ??
|
|
987
|
+
devices.find((device) => identityCompatible(device) &&
|
|
988
|
+
device.identifier === null &&
|
|
989
|
+
device.hostname !== null &&
|
|
990
|
+
this.endpointsEquivalent(device.hostname, host)));
|
|
991
|
+
}
|
|
992
|
+
}
|
|
993
|
+
return devices.find((device) => device.hostname !== null && this.endpointsEquivalent(device.hostname, host));
|
|
994
|
+
}
|
|
995
|
+
normalizeMac(mac) {
|
|
996
|
+
if (!mac) {
|
|
997
|
+
return null;
|
|
998
|
+
}
|
|
999
|
+
const normalized = mac.replace(/[^a-fA-F0-9]/g, '').toLowerCase();
|
|
1000
|
+
return normalized.length === 12 ? normalized : null;
|
|
1001
|
+
}
|
|
1002
|
+
deviceSerialMac(device) {
|
|
1003
|
+
const serial = device.channels
|
|
1004
|
+
?.find((channel) => channel.identifier === devices_wled_constants_1.WLED_CHANNEL_IDENTIFIERS.DEVICE_INFORMATION)
|
|
1005
|
+
?.properties?.find((property) => property.identifier === devices_wled_constants_1.WLED_DEVICE_INFO_PROPERTY_IDENTIFIERS.SERIAL_NUMBER)
|
|
1006
|
+
?.value?.value;
|
|
1007
|
+
if (typeof serial !== 'string') {
|
|
1008
|
+
return null;
|
|
1009
|
+
}
|
|
1010
|
+
return this.normalizeMac(serial);
|
|
1011
|
+
}
|
|
1012
|
+
hasContradictoryIdentity(device, reportedMac) {
|
|
1013
|
+
const knownIdentities = [this.normalizeMac(device.mac), this.deviceSerialMac(device)].filter((identity) => identity !== null);
|
|
1014
|
+
return knownIdentities.some((identity) => identity !== reportedMac);
|
|
1015
|
+
}
|
|
1016
|
+
requiresCanonicalIdentity(device, host, mac) {
|
|
1017
|
+
if (!mac) {
|
|
1018
|
+
return false;
|
|
1019
|
+
}
|
|
1020
|
+
const canonicalIdentifier = this.identifierFromMac(mac);
|
|
1021
|
+
const identifier = device.identifier?.toLowerCase() ?? null;
|
|
1022
|
+
return (identifier === null ||
|
|
1023
|
+
identifier === `wled-${canonicalIdentifier.slice(-6)}` ||
|
|
1024
|
+
this.legacyHostIdentifiers(device.hostname ?? host).has(identifier));
|
|
1025
|
+
}
|
|
1026
|
+
endpointsEquivalent(first, second) {
|
|
1027
|
+
return this.canonicalEndpoint(first) === this.canonicalEndpoint(second);
|
|
1028
|
+
}
|
|
1029
|
+
canonicalEndpoint(endpoint) {
|
|
1030
|
+
const trimmed = endpoint.trim().toLowerCase();
|
|
1031
|
+
const urlHost = !trimmed.startsWith('[') && (trimmed.match(/:/g)?.length ?? 0) > 1 ? `[${trimmed}]` : trimmed;
|
|
1032
|
+
try {
|
|
1033
|
+
const url = new URL(`http://${urlHost}`);
|
|
1034
|
+
return `${url.hostname.replace(/\.$/, '')}${url.port ? `:${url.port}` : ''}`;
|
|
1035
|
+
}
|
|
1036
|
+
catch {
|
|
1037
|
+
}
|
|
1038
|
+
const bracketedIpv6 = trimmed.match(/^\[([^\]]+)](?::(\d+))?$/);
|
|
1039
|
+
if (bracketedIpv6) {
|
|
1040
|
+
const [, address, port] = bracketedIpv6;
|
|
1041
|
+
return port && port !== '80' ? `[${address}]:${port}` : `[${address}]`;
|
|
1042
|
+
}
|
|
1043
|
+
if ((trimmed.match(/:/g)?.length ?? 0) > 1) {
|
|
1044
|
+
return `[${trimmed}]`;
|
|
1045
|
+
}
|
|
1046
|
+
return trimmed.replace(/\.(?=:\d+$|$)/, '').replace(/:80$/, '');
|
|
1047
|
+
}
|
|
1048
|
+
legacyHostIdentifiers(endpoint) {
|
|
1049
|
+
const bracketedHost = endpoint.match(/^\[([^\]]+)](?::\d+)?$/)?.[1];
|
|
1050
|
+
const rawHost = bracketedHost ?? endpoint.replace(/:\d+$/, '');
|
|
1051
|
+
return new Set([endpoint, rawHost].map((host) => `wled-${host.replace(/\./g, '-')}`.toLowerCase()));
|
|
1052
|
+
}
|
|
1053
|
+
portFromHost(host) {
|
|
1054
|
+
const port = Number(host.match(/:(\d+)$/)?.[1] ?? 80);
|
|
1055
|
+
return Number.isInteger(port) && port > 0 && port <= 65535 ? port : 80;
|
|
325
1056
|
}
|
|
326
1057
|
get config() {
|
|
327
1058
|
if (!this.pluginConfig) {
|
|
@@ -354,9 +1085,11 @@ exports.WledService = WledService = __decorate([
|
|
|
354
1085
|
__metadata("design:paramtypes", [config_service_1.ConfigService,
|
|
355
1086
|
wled_client_adapter_service_1.WledClientAdapterService,
|
|
356
1087
|
device_mapper_service_1.WledDeviceMapperService,
|
|
1088
|
+
adoption_snapshot_service_1.WledAdoptionSnapshotService,
|
|
1089
|
+
hardware_identity_service_1.WledHardwareIdentityService,
|
|
357
1090
|
devices_service_1.DevicesService,
|
|
358
1091
|
wled_mdns_discoverer_service_1.WledMdnsDiscovererService,
|
|
359
1092
|
device_connectivity_service_1.DeviceConnectivityService,
|
|
360
|
-
|
|
1093
|
+
managed_service_manager_service_1.ManagedServiceManagerService])
|
|
361
1094
|
], WledService);
|
|
362
1095
|
//# sourceMappingURL=wled.service.js.map
|