@fastybird/smart-panel-backend 1.1.0-alpha.40 → 1.1.0-alpha.42
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 +1 -1
- package/dist/app.module.js.map +1 -1
- package/dist/common/utils/cancellable-exec.utils.d.ts +5 -0
- package/dist/common/utils/cancellable-exec.utils.js +34 -0
- package/dist/common/utils/cancellable-exec.utils.js.map +1 -0
- package/dist/common/utils/remote-access-observation.utils.d.ts +11 -0
- package/dist/common/utils/remote-access-observation.utils.js +89 -0
- package/dist/common/utils/remote-access-observation.utils.js.map +1 -0
- package/dist/modules/auth/auth.module.js +4 -0
- package/dist/modules/auth/auth.module.js.map +1 -1
- package/dist/modules/auth/guards/auth.guard.js +8 -13
- package/dist/modules/auth/guards/auth.guard.js.map +1 -1
- package/dist/modules/auth/services/token-metadata.service.d.ts +42 -0
- package/dist/modules/auth/services/token-metadata.service.js +202 -0
- package/dist/modules/auth/services/token-metadata.service.js.map +1 -0
- package/dist/modules/auth/services/token-usage.service.d.ts +22 -0
- package/dist/modules/auth/services/token-usage.service.js +93 -0
- package/dist/modules/auth/services/token-usage.service.js.map +1 -0
- package/dist/modules/auth/services/tokens.service.d.ts +8 -2
- package/dist/modules/auth/services/tokens.service.js +16 -10
- package/dist/modules/auth/services/tokens.service.js.map +1 -1
- package/dist/modules/devices/devices.module.js +7 -0
- package/dist/modules/devices/devices.module.js.map +1 -1
- package/dist/modules/devices/dto/property-command.dto.js +2 -8
- package/dist/modules/devices/dto/property-command.dto.js.map +1 -1
- package/dist/modules/devices/services/device-command-graph.service.d.ts +18 -0
- package/dist/modules/devices/services/device-command-graph.service.js +92 -0
- package/dist/modules/devices/services/device-command-graph.service.js.map +1 -0
- package/dist/modules/devices/services/devices.service.js +2 -17
- package/dist/modules/devices/services/devices.service.js.map +1 -1
- package/dist/modules/devices/services/property-command-dispatch.service.d.ts +5 -3
- package/dist/modules/devices/services/property-command-dispatch.service.js +15 -12
- package/dist/modules/devices/services/property-command-dispatch.service.js.map +1 -1
- package/dist/modules/devices/services/property-command.service.d.ts +7 -5
- package/dist/modules/devices/services/property-command.service.js +41 -20
- package/dist/modules/devices/services/property-command.service.js.map +1 -1
- package/dist/modules/devices/services/property-metadata.service.d.ts +9 -2
- package/dist/modules/devices/services/property-metadata.service.js +67 -17
- package/dist/modules/devices/services/property-metadata.service.js.map +1 -1
- package/dist/modules/devices/utils/device-graph-query.utils.d.ts +3 -0
- package/dist/modules/devices/utils/device-graph-query.utils.js +23 -0
- package/dist/modules/devices/utils/device-graph-query.utils.js.map +1 -0
- package/dist/modules/devices/validators/property-command-target-constraint.validator.d.ts +9 -0
- package/dist/modules/devices/validators/property-command-target-constraint.validator.js +58 -0
- package/dist/modules/devices/validators/property-command-target-constraint.validator.js.map +1 -0
- package/dist/modules/remote-access/controllers/remote-access.controller.js +9 -5
- package/dist/modules/remote-access/controllers/remote-access.controller.js.map +1 -1
- package/dist/modules/remote-access/models/provider.model.d.ts +3 -0
- package/dist/modules/remote-access/models/provider.model.js +23 -0
- package/dist/modules/remote-access/models/provider.model.js.map +1 -1
- package/dist/modules/remote-access/models/status.model.d.ts +2 -0
- package/dist/modules/remote-access/models/status.model.js +18 -1
- package/dist/modules/remote-access/models/status.model.js.map +1 -1
- package/dist/modules/remote-access/models/urls.model.d.ts +2 -0
- package/dist/modules/remote-access/models/urls.model.js +17 -0
- package/dist/modules/remote-access/models/urls.model.js.map +1 -1
- package/dist/modules/remote-access/platforms/remote-access-provider.platform.d.ts +18 -1
- package/dist/modules/remote-access/remote-access.constants.d.ts +2 -1
- package/dist/modules/remote-access/remote-access.constants.js +2 -1
- package/dist/modules/remote-access/remote-access.constants.js.map +1 -1
- package/dist/modules/remote-access/services/remote-access-proxy-contribution.service.d.ts +1 -0
- package/dist/modules/remote-access/services/remote-access-proxy-contribution.service.js +4 -1
- package/dist/modules/remote-access/services/remote-access-proxy-contribution.service.js.map +1 -1
- package/dist/modules/remote-access/services/remote-access-status.service.d.ts +40 -8
- package/dist/modules/remote-access/services/remote-access-status.service.js +314 -65
- package/dist/modules/remote-access/services/remote-access-status.service.js.map +1 -1
- package/dist/modules/remote-access/services/remote-access-url.service.d.ts +2 -2
- package/dist/modules/remote-access/services/remote-access-url.service.js +4 -2
- package/dist/modules/remote-access/services/remote-access-url.service.js.map +1 -1
- package/dist/modules/spaces/services/module-reset.service.d.ts +5 -1
- package/dist/modules/spaces/services/module-reset.service.js +10 -2
- package/dist/modules/spaces/services/module-reset.service.js.map +1 -1
- package/dist/modules/spaces/services/space-activity.service.d.ts +14 -0
- package/dist/modules/spaces/services/space-activity.service.js +56 -0
- package/dist/modules/spaces/services/space-activity.service.js.map +1 -0
- package/dist/modules/spaces/spaces.module.js +5 -0
- package/dist/modules/spaces/spaces.module.js.map +1 -1
- package/dist/modules/spaces/subscribers/space-activity.subscriber.d.ts +17 -0
- package/dist/modules/spaces/subscribers/space-activity.subscriber.js +89 -0
- package/dist/modules/spaces/subscribers/space-activity.subscriber.js.map +1 -0
- package/dist/modules/websocket/gateway/websocket.gateway.js +1 -0
- package/dist/modules/websocket/gateway/websocket.gateway.js.map +1 -1
- package/dist/modules/websocket/services/ws-auth.service.js +12 -28
- package/dist/modules/websocket/services/ws-auth.service.js.map +1 -1
- package/dist/plugins/devices-virtual/platforms/virtual-device.platform.d.ts +3 -8
- package/dist/plugins/devices-virtual/platforms/virtual-device.platform.js +6 -36
- package/dist/plugins/devices-virtual/platforms/virtual-device.platform.js.map +1 -1
- package/dist/plugins/remote-access-cloudflare-tunnel/controllers/setup.controller.d.ts +5 -3
- package/dist/plugins/remote-access-cloudflare-tunnel/controllers/setup.controller.js +20 -8
- package/dist/plugins/remote-access-cloudflare-tunnel/controllers/setup.controller.js.map +1 -1
- package/dist/plugins/remote-access-cloudflare-tunnel/controllers/status.controller.d.ts +3 -5
- package/dist/plugins/remote-access-cloudflare-tunnel/controllers/status.controller.js +11 -10
- package/dist/plugins/remote-access-cloudflare-tunnel/controllers/status.controller.js.map +1 -1
- package/dist/plugins/remote-access-cloudflare-tunnel/models/status.model.d.ts +2 -0
- package/dist/plugins/remote-access-cloudflare-tunnel/models/status.model.js +17 -0
- package/dist/plugins/remote-access-cloudflare-tunnel/models/status.model.js.map +1 -1
- package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflare-tunnel-managed.service.d.ts +20 -2
- package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflare-tunnel-managed.service.js +105 -48
- package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflare-tunnel-managed.service.js.map +1 -1
- package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflare-tunnel-provider.service.d.ts +13 -1
- package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflare-tunnel-provider.service.js +8 -2
- package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflare-tunnel-provider.service.js.map +1 -1
- package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflared-cli.service.d.ts +1 -1
- package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflared-cli.service.js +12 -24
- package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflared-cli.service.js.map +1 -1
- package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflared-metrics.service.d.ts +1 -1
- package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflared-metrics.service.js +5 -2
- package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflared-metrics.service.js.map +1 -1
- package/dist/plugins/remote-access-tailscale/controllers/setup.controller.d.ts +10 -5
- package/dist/plugins/remote-access-tailscale/controllers/setup.controller.js +105 -15
- package/dist/plugins/remote-access-tailscale/controllers/setup.controller.js.map +1 -1
- package/dist/plugins/remote-access-tailscale/controllers/status.controller.d.ts +5 -4
- package/dist/plugins/remote-access-tailscale/controllers/status.controller.js +19 -9
- package/dist/plugins/remote-access-tailscale/controllers/status.controller.js.map +1 -1
- package/dist/plugins/remote-access-tailscale/models/status.model.d.ts +16 -0
- package/dist/plugins/remote-access-tailscale/models/status.model.js +100 -1
- package/dist/plugins/remote-access-tailscale/models/status.model.js.map +1 -1
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.constants.d.ts +2 -0
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.constants.js +3 -1
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.constants.js.map +1 -1
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.exceptions.d.ts +17 -1
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.exceptions.js +33 -1
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.exceptions.js.map +1 -1
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.openapi.d.ts +2 -2
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.openapi.js +1 -0
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.openapi.js.map +1 -1
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.plugin.js +2 -0
- package/dist/plugins/remote-access-tailscale/remote-access-tailscale.plugin.js.map +1 -1
- package/dist/plugins/remote-access-tailscale/services/tailscale-cli.service.d.ts +8 -4
- package/dist/plugins/remote-access-tailscale/services/tailscale-cli.service.js +58 -14
- package/dist/plugins/remote-access-tailscale/services/tailscale-cli.service.js.map +1 -1
- package/dist/plugins/remote-access-tailscale/services/tailscale-login.service.d.ts +8 -3
- package/dist/plugins/remote-access-tailscale/services/tailscale-login.service.js +175 -151
- package/dist/plugins/remote-access-tailscale/services/tailscale-login.service.js.map +1 -1
- package/dist/plugins/remote-access-tailscale/services/tailscale-node-managed.service.d.ts +51 -7
- package/dist/plugins/remote-access-tailscale/services/tailscale-node-managed.service.js +481 -101
- package/dist/plugins/remote-access-tailscale/services/tailscale-node-managed.service.js.map +1 -1
- package/dist/plugins/remote-access-tailscale/services/tailscale-operation-coordinator.service.d.ts +33 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-operation-coordinator.service.js +167 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-operation-coordinator.service.js.map +1 -0
- package/dist/plugins/remote-access-tailscale/services/tailscale-provider.service.d.ts +13 -1
- package/dist/plugins/remote-access-tailscale/services/tailscale-provider.service.js +8 -2
- package/dist/plugins/remote-access-tailscale/services/tailscale-provider.service.js.map +1 -1
- package/dist/plugins/remote-access-tailscale/services/tailscale-serve.service.d.ts +1 -1
- package/dist/plugins/remote-access-tailscale/services/tailscale-serve.service.js +7 -6
- package/dist/plugins/remote-access-tailscale/services/tailscale-serve.service.js.map +1 -1
- package/dist/plugins/remote-access-tailscale/services/tailscale-setup.service.d.ts +1 -3
- package/dist/plugins/remote-access-tailscale/services/tailscale-setup.service.js +9 -11
- package/dist/plugins/remote-access-tailscale/services/tailscale-setup.service.js.map +1 -1
- package/dist/plugins/remote-access-tailscale/utils/tailscale-control.utils.d.ts +5 -0
- package/dist/plugins/remote-access-tailscale/utils/tailscale-control.utils.js +36 -0
- package/dist/plugins/remote-access-tailscale/utils/tailscale-control.utils.js.map +1 -0
- package/dist/plugins/spaces-home-control/listeners/space-activity.listener.d.ts +6 -7
- package/dist/plugins/spaces-home-control/listeners/space-activity.listener.js +19 -44
- package/dist/plugins/spaces-home-control/listeners/space-activity.listener.js.map +1 -1
- package/dist/plugins/spaces-home-control/listeners/space-climate-state.listener.d.ts +4 -4
- package/dist/plugins/spaces-home-control/listeners/space-climate-state.listener.js +9 -22
- package/dist/plugins/spaces-home-control/listeners/space-climate-state.listener.js.map +1 -1
- package/dist/plugins/spaces-home-control/listeners/space-lighting-state.listener.d.ts +4 -4
- package/dist/plugins/spaces-home-control/listeners/space-lighting-state.listener.js +9 -22
- package/dist/plugins/spaces-home-control/listeners/space-lighting-state.listener.js.map +1 -1
- package/dist/plugins/spaces-home-control/listeners/space-sensor-state.listener.d.ts +4 -4
- package/dist/plugins/spaces-home-control/listeners/space-sensor-state.listener.js +9 -22
- package/dist/plugins/spaces-home-control/listeners/space-sensor-state.listener.js.map +1 -1
- package/dist/plugins/spaces-home-control/services/space-climate-state.service.d.ts +3 -5
- package/dist/plugins/spaces-home-control/services/space-climate-state.service.js +9 -12
- package/dist/plugins/spaces-home-control/services/space-climate-state.service.js.map +1 -1
- package/dist/plugins/spaces-home-control/services/space-lighting-state.service.d.ts +3 -5
- package/dist/plugins/spaces-home-control/services/space-lighting-state.service.js +7 -10
- package/dist/plugins/spaces-home-control/services/space-lighting-state.service.js.map +1 -1
- package/dist/plugins/spaces-home-control/services/space-sensor-state.service.d.ts +3 -5
- package/dist/plugins/spaces-home-control/services/space-sensor-state.service.js +7 -10
- package/dist/plugins/spaces-home-control/services/space-sensor-state.service.js.map +1 -1
- package/dist/plugins/spaces-home-control/services/space-state-read.service.d.ts +47 -0
- package/dist/plugins/spaces-home-control/services/space-state-read.service.js +262 -0
- package/dist/plugins/spaces-home-control/services/space-state-read.service.js.map +1 -0
- package/dist/plugins/spaces-home-control/spaces-home-control.plugin.js +4 -0
- package/dist/plugins/spaces-home-control/spaces-home-control.plugin.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-access-url.service.js","sourceRoot":"","sources":["../../../../src/modules/remote-access/services/remote-access-url.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4CAAoB;AACpB,0EAAmC;AAEnC,2CAA4C;AAC5C,2CAAoE;AACpE,yDAA+D;AAE/D,mDAA+D;AAC/D,qEAAiE;AACjE,mEAA4D;AAC5D,oEAA6E;AAC7E,yEAAqE;AAGrE,wEAAkF;AAClF,0EAAsE;AAEtE,iFAA2E;AAqCpE,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAKlC,YACkB,aAA4B,EAC5B,iBAAoC,EACpC,aAAwC,EACxC,YAA2B;QAH3B,kBAAa,GAAb,aAAa,CAAe;QAC5B,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,kBAAa,GAAb,aAAa,CAA2B;QACxC,iBAAY,GAAZ,YAAY,CAAe;QAR5B,WAAM,GAAG,IAAA,8BAAqB,EAAC,mDAAyB,EAAE,wBAAwB,CAAC,CAAC;QAE7F,iBAAY,GAAoC,IAAI,CAAC;IAO1D,CAAC;IAGJ,OAAO;QACN,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,eAAe,CAA0B,mDAAyB,CAAC,CAAC;QACtG,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAEjD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACrB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"remote-access-url.service.js","sourceRoot":"","sources":["../../../../src/modules/remote-access/services/remote-access-url.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
import { Repository } from 'typeorm';
|
|
2
|
+
import { PropertyMetadataService } from '../../devices/services/property-metadata.service';
|
|
2
3
|
import { SpaceEntity } from '../entities/space.entity';
|
|
4
|
+
import { SpaceActivityService } from './space-activity.service';
|
|
3
5
|
export declare class SpacesModuleResetService {
|
|
4
6
|
private readonly spacesRepository;
|
|
7
|
+
private readonly activity;
|
|
8
|
+
private readonly propertyMetadata;
|
|
5
9
|
private readonly logger;
|
|
6
|
-
constructor(spacesRepository: Repository<SpaceEntity
|
|
10
|
+
constructor(spacesRepository: Repository<SpaceEntity>, activity: SpaceActivityService, propertyMetadata: PropertyMetadataService);
|
|
7
11
|
reset(): Promise<{
|
|
8
12
|
success: boolean;
|
|
9
13
|
reason?: string;
|
|
@@ -17,17 +17,23 @@ const typeorm_1 = require("typeorm");
|
|
|
17
17
|
const common_1 = require("@nestjs/common");
|
|
18
18
|
const typeorm_2 = require("@nestjs/typeorm");
|
|
19
19
|
const extension_logger_service_1 = require("../../../common/logger/extension-logger.service");
|
|
20
|
+
const property_metadata_service_1 = require("../../devices/services/property-metadata.service");
|
|
20
21
|
const space_entity_1 = require("../entities/space.entity");
|
|
21
22
|
const spaces_constants_1 = require("../spaces.constants");
|
|
23
|
+
const space_activity_service_1 = require("./space-activity.service");
|
|
22
24
|
let SpacesModuleResetService = class SpacesModuleResetService {
|
|
23
|
-
constructor(spacesRepository) {
|
|
25
|
+
constructor(spacesRepository, activity, propertyMetadata) {
|
|
24
26
|
this.spacesRepository = spacesRepository;
|
|
27
|
+
this.activity = activity;
|
|
28
|
+
this.propertyMetadata = propertyMetadata;
|
|
25
29
|
this.logger = (0, extension_logger_service_1.createExtensionLogger)(spaces_constants_1.SPACES_MODULE_NAME, 'SpacesModuleResetService');
|
|
26
30
|
}
|
|
27
31
|
async reset() {
|
|
28
32
|
this.logger.log('[RESET] Starting spaces module factory reset');
|
|
29
33
|
try {
|
|
30
34
|
await this.spacesRepository.clear();
|
|
35
|
+
this.propertyMetadata.invalidate();
|
|
36
|
+
this.activity.clear();
|
|
31
37
|
this.logger.log('[RESET] Spaces module factory reset completed successfully');
|
|
32
38
|
return { success: true };
|
|
33
39
|
}
|
|
@@ -42,6 +48,8 @@ exports.SpacesModuleResetService = SpacesModuleResetService;
|
|
|
42
48
|
exports.SpacesModuleResetService = SpacesModuleResetService = __decorate([
|
|
43
49
|
(0, common_1.Injectable)(),
|
|
44
50
|
__param(0, (0, typeorm_2.InjectRepository)(space_entity_1.SpaceEntity)),
|
|
45
|
-
__metadata("design:paramtypes", [typeorm_1.Repository
|
|
51
|
+
__metadata("design:paramtypes", [typeorm_1.Repository,
|
|
52
|
+
space_activity_service_1.SpaceActivityService,
|
|
53
|
+
property_metadata_service_1.PropertyMetadataService])
|
|
46
54
|
], SpacesModuleResetService);
|
|
47
55
|
//# sourceMappingURL=module-reset.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module-reset.service.js","sourceRoot":"","sources":["../../../../src/modules/spaces/services/module-reset.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,qCAAqC;AAErC,2CAA4C;AAC5C,6CAAmD;AAEnD,8FAAwF;AACxF,2DAAuD;AACvD,0DAAyD;
|
|
1
|
+
{"version":3,"file":"module-reset.service.js","sourceRoot":"","sources":["../../../../src/modules/spaces/services/module-reset.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,qCAAqC;AAErC,2CAA4C;AAC5C,6CAAmD;AAEnD,8FAAwF;AACxF,gGAA2F;AAC3F,2DAAuD;AACvD,0DAAyD;AAEzD,qEAAgE;AAGzD,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IAGpC,YAEC,gBAA0D,EACzC,QAA8B,EAC9B,gBAAyC;QAFzC,qBAAgB,GAAhB,gBAAgB,CAAyB;QACzC,aAAQ,GAAR,QAAQ,CAAsB;QAC9B,qBAAgB,GAAhB,gBAAgB,CAAyB;QAN1C,WAAM,GAAG,IAAA,gDAAqB,EAAC,qCAAkB,EAAE,0BAA0B,CAAC,CAAC;IAO7F,CAAC;IAEJ,KAAK,CAAC,KAAK;QACV,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;QAEhE,IAAI,CAAC;YAEJ,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;YAEpC,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC;YACnC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YAEtB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC;YAE9E,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC1B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,GAAG,GAAG,KAAc,CAAC;YAE3B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+CAA+C,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAEhF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC;QAChD,CAAC;IACF,CAAC;CACD,CAAA;AA/BY,4DAAwB;mCAAxB,wBAAwB;IADpC,IAAA,mBAAU,GAAE;IAKV,WAAA,IAAA,0BAAgB,EAAC,0BAAW,CAAC,CAAA;qCACK,oBAAU;QAClB,6CAAoB;QACZ,mDAAuB;GAP/C,wBAAwB,CA+BpC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { OnModuleDestroy } from '@nestjs/common';
|
|
2
|
+
import { SpaceEntity } from '../entities/space.entity';
|
|
3
|
+
export declare class SpaceActivityService implements OnModuleDestroy {
|
|
4
|
+
private readonly activity;
|
|
5
|
+
private readonly deletedGenerations;
|
|
6
|
+
private generation;
|
|
7
|
+
private clearGeneration;
|
|
8
|
+
getGeneration(): number;
|
|
9
|
+
record(spaceId: string, observedAt: Date, generation?: number): void;
|
|
10
|
+
readLatest(space: Pick<SpaceEntity, 'id' | 'lastActivityAt'>): Date | string | null;
|
|
11
|
+
delete(spaceId: string): void;
|
|
12
|
+
clear(): void;
|
|
13
|
+
onModuleDestroy(): void;
|
|
14
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.SpaceActivityService = void 0;
|
|
10
|
+
const common_1 = require("@nestjs/common");
|
|
11
|
+
let SpaceActivityService = class SpaceActivityService {
|
|
12
|
+
constructor() {
|
|
13
|
+
this.activity = new Map();
|
|
14
|
+
this.deletedGenerations = new Map();
|
|
15
|
+
this.generation = 0;
|
|
16
|
+
this.clearGeneration = 0;
|
|
17
|
+
}
|
|
18
|
+
getGeneration() {
|
|
19
|
+
return this.generation;
|
|
20
|
+
}
|
|
21
|
+
record(spaceId, observedAt, generation = this.generation) {
|
|
22
|
+
const deletedGeneration = this.deletedGenerations.get(spaceId) ?? 0;
|
|
23
|
+
if (generation < this.clearGeneration || generation < deletedGeneration)
|
|
24
|
+
return;
|
|
25
|
+
const timestamp = observedAt.getTime();
|
|
26
|
+
if (!Number.isFinite(timestamp))
|
|
27
|
+
return;
|
|
28
|
+
this.activity.set(spaceId, Math.max(timestamp, this.activity.get(spaceId) ?? timestamp));
|
|
29
|
+
}
|
|
30
|
+
readLatest(space) {
|
|
31
|
+
const recorded = this.activity.get(space.id);
|
|
32
|
+
if (recorded === undefined)
|
|
33
|
+
return space.lastActivityAt;
|
|
34
|
+
const persisted = space.lastActivityAt instanceof Date ? space.lastActivityAt.getTime() : Date.parse(space.lastActivityAt ?? '');
|
|
35
|
+
return new Date(Number.isFinite(persisted) ? Math.max(recorded, persisted) : recorded);
|
|
36
|
+
}
|
|
37
|
+
delete(spaceId) {
|
|
38
|
+
this.generation += 1;
|
|
39
|
+
this.deletedGenerations.set(spaceId, this.generation);
|
|
40
|
+
this.activity.delete(spaceId);
|
|
41
|
+
}
|
|
42
|
+
clear() {
|
|
43
|
+
this.generation += 1;
|
|
44
|
+
this.clearGeneration = this.generation;
|
|
45
|
+
this.deletedGenerations.clear();
|
|
46
|
+
this.activity.clear();
|
|
47
|
+
}
|
|
48
|
+
onModuleDestroy() {
|
|
49
|
+
this.clear();
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
exports.SpaceActivityService = SpaceActivityService;
|
|
53
|
+
exports.SpaceActivityService = SpaceActivityService = __decorate([
|
|
54
|
+
(0, common_1.Injectable)()
|
|
55
|
+
], SpaceActivityService);
|
|
56
|
+
//# sourceMappingURL=space-activity.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"space-activity.service.js","sourceRoot":"","sources":["../../../../src/modules/spaces/services/space-activity.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA6D;AAUtD,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAA1B;QACW,aAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;QACrC,uBAAkB,GAAG,IAAI,GAAG,EAAkB,CAAC;QACxD,eAAU,GAAG,CAAC,CAAC;QACf,oBAAe,GAAG,CAAC,CAAC;IAyC7B,CAAC;IAvCA,aAAa;QACZ,OAAO,IAAI,CAAC,UAAU,CAAC;IACxB,CAAC;IAED,MAAM,CAAC,OAAe,EAAE,UAAgB,EAAE,UAAU,GAAG,IAAI,CAAC,UAAU;QAErE,MAAM,iBAAiB,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACpE,IAAI,UAAU,GAAG,IAAI,CAAC,eAAe,IAAI,UAAU,GAAG,iBAAiB;YAAE,OAAO;QAChF,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC;YAAE,OAAO;QACxC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC;IAC1F,CAAC;IAED,UAAU,CAAC,KAAiD;QAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7C,IAAI,QAAQ,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC,cAAc,CAAC;QAExD,MAAM,SAAS,GACd,KAAK,CAAC,cAAc,YAAY,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC;QAChH,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,CAAC,OAAe;QACrB,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;QAErB,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACtD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK;QACJ,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;QACrB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC;QACvC,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;IAED,eAAe;QACd,IAAI,CAAC,KAAK,EAAE,CAAC;IACd,CAAC;CACD,CAAA;AA7CY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,mBAAU,GAAE;GACA,oBAAoB,CA6ChC"}
|
|
@@ -38,6 +38,7 @@ const space_role_entity_1 = require("./entities/space-role.entity");
|
|
|
38
38
|
const space_entity_1 = require("./entities/space.entity");
|
|
39
39
|
const config_model_1 = require("./models/config.model");
|
|
40
40
|
const module_reset_service_1 = require("./services/module-reset.service");
|
|
41
|
+
const space_activity_service_1 = require("./services/space-activity.service");
|
|
41
42
|
const space_create_builder_registry_service_1 = require("./services/space-create-builder-registry.service");
|
|
42
43
|
const space_relations_loader_registry_service_1 = require("./services/space-relations-loader-registry.service");
|
|
43
44
|
const space_roles_type_mapper_service_1 = require("./services/space-roles-type-mapper.service");
|
|
@@ -46,6 +47,7 @@ const spaces_type_mapper_service_1 = require("./services/spaces-type-mapper.serv
|
|
|
46
47
|
const spaces_service_1 = require("./services/spaces.service");
|
|
47
48
|
const spaces_constants_1 = require("./spaces.constants");
|
|
48
49
|
const spaces_openapi_1 = require("./spaces.openapi");
|
|
50
|
+
const space_activity_subscriber_1 = require("./subscribers/space-activity.subscriber");
|
|
49
51
|
let SpacesModule = class SpacesModule {
|
|
50
52
|
constructor(swaggerRegistry, extensionsService, modulesMapperService, moduleReset, factoryResetRegistry) {
|
|
51
53
|
this.swaggerRegistry = swaggerRegistry;
|
|
@@ -139,6 +141,8 @@ exports.SpacesModule = SpacesModule = __decorate([
|
|
|
139
141
|
controllers: [spaces_controller_1.SpacesController, spaces_domain_controller_1.SpacesDomainController],
|
|
140
142
|
providers: [
|
|
141
143
|
spaces_service_1.SpacesService,
|
|
144
|
+
space_activity_service_1.SpaceActivityService,
|
|
145
|
+
space_activity_subscriber_1.SpaceActivitySubscriber,
|
|
142
146
|
spaces_bulk_service_1.SpacesBulkService,
|
|
143
147
|
spaces_type_mapper_service_1.SpacesTypeMapperService,
|
|
144
148
|
space_roles_type_mapper_service_1.SpaceRolesTypeMapperService,
|
|
@@ -148,6 +152,7 @@ exports.SpacesModule = SpacesModule = __decorate([
|
|
|
148
152
|
],
|
|
149
153
|
exports: [
|
|
150
154
|
spaces_service_1.SpacesService,
|
|
155
|
+
space_activity_service_1.SpaceActivityService,
|
|
151
156
|
spaces_bulk_service_1.SpacesBulkService,
|
|
152
157
|
spaces_type_mapper_service_1.SpacesTypeMapperService,
|
|
153
158
|
space_roles_type_mapper_service_1.SpaceRolesTypeMapperService,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spaces.module.js","sourceRoot":"","sources":["../../../src/modules/spaces/spaces.module.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAsD;AACtD,6CAAgD;AAEhD,qHAAgH;AAChH,oGAA+F;AAC/F,sIAA+H;AAC/H,oHAA8G;AAC9G,kHAA4G;AAC5G,sHAAgH;AAChH,wIAAiI;AACjI,kHAA4G;AAC5G,oGAA+F;AAC/F,gGAA0F;AAC1F,8DAA0D;AAC1D,uEAAiF;AACjF,0EAAqE;AACrE,kFAA8E;AAC9E,8DAA0D;AAC1D,2DAAoD;AACpD,+EAAiE;AACjE,yGAAmG;AACnG,sGAAgG;AAChG,wDAAoD;AAEpD,uEAAmE;AACnE,+DAAgE;AAChE,oEAA+D;AAC/D,0DAAsD;AACtD,wDAA0D;AAC1D,0EAA2E;AAC3E,4GAAqG;AACrG,gHAAyG;AACzG,gGAAyF;AACzF,wEAAmE;AACnE,sFAAgF;AAChF,8DAA0D;AAC1D,yDAAuH;AACvH,qDAA+D;
|
|
1
|
+
{"version":3,"file":"spaces.module.js","sourceRoot":"","sources":["../../../src/modules/spaces/spaces.module.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { DataSource, EntitySubscriberInterface, RemoveEvent, TransactionCommitEvent, TransactionRollbackEvent, TransactionStartEvent } from 'typeorm';
|
|
2
|
+
import { OnModuleDestroy } from '@nestjs/common';
|
|
3
|
+
import { SpaceEntity } from '../entities/space.entity';
|
|
4
|
+
import { SpaceActivityService } from '../services/space-activity.service';
|
|
5
|
+
export declare class SpaceActivitySubscriber implements EntitySubscriberInterface<SpaceEntity>, OnModuleDestroy {
|
|
6
|
+
private readonly activity;
|
|
7
|
+
private readonly dataSource;
|
|
8
|
+
private readonly pendingRemovals;
|
|
9
|
+
constructor(activity: SpaceActivityService, dataSource: DataSource);
|
|
10
|
+
listenTo(): typeof SpaceEntity;
|
|
11
|
+
afterLoad(space: SpaceEntity): void;
|
|
12
|
+
afterTransactionStart(event: TransactionStartEvent): void;
|
|
13
|
+
afterRemove(event: RemoveEvent<SpaceEntity>): void;
|
|
14
|
+
afterTransactionCommit(event: TransactionCommitEvent): void;
|
|
15
|
+
afterTransactionRollback(event: TransactionRollbackEvent): void;
|
|
16
|
+
onModuleDestroy(): void;
|
|
17
|
+
}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.SpaceActivitySubscriber = void 0;
|
|
13
|
+
const typeorm_1 = require("typeorm");
|
|
14
|
+
const common_1 = require("@nestjs/common");
|
|
15
|
+
const space_entity_1 = require("../entities/space.entity");
|
|
16
|
+
const space_activity_service_1 = require("../services/space-activity.service");
|
|
17
|
+
let SpaceActivitySubscriber = class SpaceActivitySubscriber {
|
|
18
|
+
constructor(activity, dataSource) {
|
|
19
|
+
this.activity = activity;
|
|
20
|
+
this.dataSource = dataSource;
|
|
21
|
+
this.pendingRemovals = new WeakMap();
|
|
22
|
+
this.dataSource.subscribers.push(this);
|
|
23
|
+
}
|
|
24
|
+
listenTo() {
|
|
25
|
+
return space_entity_1.SpaceEntity;
|
|
26
|
+
}
|
|
27
|
+
afterLoad(space) {
|
|
28
|
+
space.lastActivityAt = this.activity.readLatest(space);
|
|
29
|
+
}
|
|
30
|
+
afterTransactionStart(event) {
|
|
31
|
+
const levels = this.pendingRemovals.get(event.queryRunner) ?? [];
|
|
32
|
+
levels.push(new Set());
|
|
33
|
+
this.pendingRemovals.set(event.queryRunner, levels);
|
|
34
|
+
}
|
|
35
|
+
afterRemove(event) {
|
|
36
|
+
const id = typeof event.entityId === 'string' ? event.entityId : (event.entity?.id ?? event.databaseEntity?.id);
|
|
37
|
+
if (event.queryRunner.isTransactionActive) {
|
|
38
|
+
const levels = this.pendingRemovals.get(event.queryRunner) ?? [new Set()];
|
|
39
|
+
const pending = levels.at(-1);
|
|
40
|
+
if (pending === null)
|
|
41
|
+
return;
|
|
42
|
+
if (id)
|
|
43
|
+
pending.add(id);
|
|
44
|
+
else
|
|
45
|
+
levels[levels.length - 1] = null;
|
|
46
|
+
this.pendingRemovals.set(event.queryRunner, levels);
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
if (id)
|
|
50
|
+
this.activity.delete(id);
|
|
51
|
+
else
|
|
52
|
+
this.activity.clear();
|
|
53
|
+
}
|
|
54
|
+
afterTransactionCommit(event) {
|
|
55
|
+
const levels = this.pendingRemovals.get(event.queryRunner);
|
|
56
|
+
const pending = levels?.pop();
|
|
57
|
+
if (levels?.length) {
|
|
58
|
+
const parent = levels.at(-1);
|
|
59
|
+
if (pending === null)
|
|
60
|
+
levels[levels.length - 1] = null;
|
|
61
|
+
else
|
|
62
|
+
pending?.forEach((id) => parent?.add(id));
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
this.pendingRemovals.delete(event.queryRunner);
|
|
66
|
+
if (pending === null)
|
|
67
|
+
this.activity.clear();
|
|
68
|
+
else
|
|
69
|
+
pending?.forEach((id) => this.activity.delete(id));
|
|
70
|
+
}
|
|
71
|
+
afterTransactionRollback(event) {
|
|
72
|
+
const levels = this.pendingRemovals.get(event.queryRunner);
|
|
73
|
+
levels?.pop();
|
|
74
|
+
if (!levels?.length)
|
|
75
|
+
this.pendingRemovals.delete(event.queryRunner);
|
|
76
|
+
}
|
|
77
|
+
onModuleDestroy() {
|
|
78
|
+
const index = this.dataSource.subscribers.indexOf(this);
|
|
79
|
+
if (index >= 0)
|
|
80
|
+
this.dataSource.subscribers.splice(index, 1);
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
exports.SpaceActivitySubscriber = SpaceActivitySubscriber;
|
|
84
|
+
exports.SpaceActivitySubscriber = SpaceActivitySubscriber = __decorate([
|
|
85
|
+
(0, common_1.Injectable)(),
|
|
86
|
+
__metadata("design:paramtypes", [space_activity_service_1.SpaceActivityService,
|
|
87
|
+
typeorm_1.DataSource])
|
|
88
|
+
], SpaceActivitySubscriber);
|
|
89
|
+
//# sourceMappingURL=space-activity.subscriber.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"space-activity.subscriber.js","sourceRoot":"","sources":["../../../../src/modules/spaces/subscribers/space-activity.subscriber.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket.gateway.js","sourceRoot":"","sources":["../../../../src/modules/websocket/gateway/websocket.gateway.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"websocket.gateway.js","sourceRoot":"","sources":["../../../../src/modules/websocket/gateway/websocket.gateway.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAoD;AACpD,qDAA0C;AAC1C,yCAA2C;AAE3C,yDAAsD;AACtD,iDAAiD;AACjD,mDAS4B;AAE5B,mDAA+D;AAC/D,2EAAmE;AACnE,sFAAiF;AACjF,8DAA2D;AAC3D,iEAAuD;AAEvD,oEAA+D;AAC/D,kEAA6D;AAC7D,wDAAsE;AACtE,6GAAuG;AACvG,+FAAyF;AACzF,iEAA4D;AAC5D,gEAOgC;AAChC,kEAAuE;AAYhE,IAAM,gBAAgB,wBAAtB,MAAM,gBAAgB;IAO5B,YACkB,oBAAiD,EACjD,YAA2B,EAC3B,aAA4B,EAC5B,oBAA0C,EAC1C,2BAA+D;QAJ/D,yBAAoB,GAApB,oBAAoB,CAA6B;QACjD,iBAAY,GAAZ,YAAY,CAAe;QAC3B,kBAAa,GAAb,aAAa,CAAe;QAC5B,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,gCAA2B,GAA3B,2BAA2B,CAAoC;QAXzE,mBAAc,GAAG,KAAK,CAAC;QAId,WAAM,GAAG,IAAA,8BAAqB,EAAC,2CAAqB,EAAE,kBAAkB,CAAC,CAAC;QAS1F,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,KAAa,EAAE,OAA4B,EAAE,EAAE;YACvE,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,MAAM;QACL,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,cAAc,CAAC;IAC5B,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,IAAI,CAAC,CAAC;IACtF,CAAC;IAED,mBAAmB,CAAC,IAAY;QAC/B,OAAO,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC;IACnE,CAAC;IAED,SAAS,CAAC,MAAe;QACxB,MAAM,EAAE,GAAG,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QASjC,EAAE,EAAE,GAAG,CAAC,CAAC,MAAc,EAAE,IAA2B,EAAQ,EAAE;YAC7D,IAAI,CAAC,aAAa;iBAChB,cAAc,CAAC,MAAM,CAAC;iBACtB,IAAI,CAAC,CAAC,SAAS,EAAQ,EAAE;gBACzB,IAAI,CAAC,SAAS,EAAE,CAAC;oBAChB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6CAA6C,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;oBAEhG,IAAI,CAAC,IAAI,mDAA4B,CAAC,cAAc,CAAC,CAAC,CAAC;oBAEvD,OAAO;gBACR,CAAC;gBAED,IAAI,EAAE,CAAC;YACR,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,KAAc,EAAQ,EAAE;gBAC/B,MAAM,GAAG,GAAG,KAAc,CAAC;gBAE3B,IAAI,CAAC,MAAM,CAAC,IAAI,CACf,6CAA6C,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,KAAK,GAAG,CAAC,OAAO,EAAE,CAC7F,CAAC;gBAIF,IAAI,CAAC,IAAI,mDAA4B,CAAC,cAAc,CAAC,CAAC,CAAC;YACxD,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;IACjD,CAAC;IAID,KAAK,CAAC,gBAAgB,CAAC,MAAc;QACpC,IAAI,CAAC;YAIJ,IAAI,CAAC,2BAA2B,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,2BAA2B,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;YAC9F,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,qBAAqB,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;YAElD,MAAM,MAAM,CAAC,IAAI,CAAC,yCAAmB,CAAC,CAAC;YAEvC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAkB,CAAC;YAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC;YAE7E,IAAI,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,SAAS,KAAK,+BAAc,CAAC,OAAO,EAAE,CAAC;gBACjH,MAAM,MAAM,CAAC,IAAI,CAAC,2CAAqB,CAAC,CAAC;gBAGzC,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;oBACxB,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;gBACpD,CAAC;YACF,CAAC;YAMD,IACC,UAAU,CAAC,IAAI;gBACf,UAAU,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM;gBAC/B,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,KAAK,0BAAQ,CAAC,KAAK,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,KAAK,0BAAQ,CAAC,KAAK,CAAC,EACnF,CAAC;gBACF,MAAM,MAAM,CAAC,IAAI,CAAC,gCAAU,CAAC,CAAC;YAC/B,CAAC;YAGD,MAAM,WAAW,GAAG,IAAA,4BAAU,EAAC,2BAAW,EAAE;gBAC3C,SAAS,EAAE,MAAM,CAAC,EAAE;gBACpB,UAAU,EAAE,QAAQ,IAAI,IAAI;gBAC5B,IAAI,EAAE,UAAU,CAAC,IAAI,IAAI,IAAI;gBAC7B,UAAU,EAAE,iCAAiB,CAAC,SAAS;gBACvC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACnC,CAAC,CAAC;YAEH,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,iCAAW,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;QACnE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,GAAG,GAAG,KAAc,CAAC;YAI3B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,MAAM,CAAC,EAAE,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAE3E,MAAM,CAAC,UAAU,EAAE,CAAC;QACrB,CAAC;IACF,CAAC;IAED,gBAAgB,CAAC,MAAc;QAC9B,IAAI,CAAC,2BAA2B,CAAC,GAAG,EAAE,CACrC,IAAI,CAAC,2BAA2B,CAAC,iBAAiB,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAChF,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,wBAAwB,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QAErD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAkB,CAAC;QAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC;QAG7E,MAAM,WAAW,GAAG,IAAA,4BAAU,EAAC,2BAAW,EAAE;YAC3C,SAAS,EAAE,MAAM,CAAC,EAAE;YACpB,UAAU,EAAE,QAAQ,IAAI,IAAI;YAC5B,IAAI,EAAE,UAAU,CAAC,IAAI,IAAI,IAAI;YAC7B,UAAU,EAAE,iCAAiB,CAAC,YAAY;YAC1C,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACnC,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,iCAAW,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC;IACtE,CAAC;IAGK,AAAN,KAAK,CAAC,uBAAuB,CACb,QAA2B,EACvB,MAAc;QAEjC,IAAI,CAAC;YACJ,MAAM,MAAM,CAAC,IAAI,CAAC,mCAAa,CAAC,CAAC;YAEjC,OAAO,IAAI,CAAC;QACb,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,GAAG,GAAG,KAAc,CAAC;YAE3B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;YAE9F,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC;IAGK,AAAN,KAAK,CAAC,aAAa,CACH,OAA0B,EACtB,MAAc;QAEjC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QAEnC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,qBAAqB,KAAK,iBAAiB,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QACxE,IAAI,CAAC,2BAA2B,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,2BAA2B,CAAC,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;QAE7G,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,KAAK,EAAE,CAAC,CAAC;YAEvD,MAAM,MAAM,GAAG,IAAA,4BAAU,EAAC,qCAAgB,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,KAAK,qBAAqB,EAAE,CAAC,CAAC;YAChH,IAAI,CAAC,2BAA2B,CAAC,GAAG,EAAE,CACrC,IAAI,CAAC,2BAA2B,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAC9E,CAAC;YAEF,OAAO,MAAM,CAAC;QACf,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAEtD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAkB,CAAC;YAE7C,MAAM,OAAO,GAAG,CACf,MAAM,OAAO,CAAC,GAAG,CAChB,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE;gBACvD,IAAI,CAAC;oBACJ,IAAI,aAAa,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;wBAC1F,IAAI,CAAC,2BAA2B,CAAC,GAAG,EAAE,CACrC,IAAI,CAAC,2BAA2B,CAAC,oBAAoB,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAC5E,CAAC;wBACF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,0BAA0B,EAAE,CAAC;oBAC9E,CAAC;oBAED,IAAI,CAAC,2BAA2B,CAAC,GAAG,EAAE,CACrC,IAAI,CAAC,2BAA2B,CAAC,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAC1E,CAAC;oBACF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;oBACzD,IAAI,CAAC,2BAA2B,CAAC,GAAG,EAAE,CACrC,IAAI,CAAC,2BAA2B,CAAC,oBAAoB,CACpD,MAAM,EACN,OAAO,EACP,IAAI,EACJ,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CACvC,CACD,CAAC;oBAEF,OAAO,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;gBAClE,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,MAAM,GAAG,GAAG,KAAc,CAAC;oBAC3B,IAAI,CAAC,2BAA2B,CAAC,GAAG,EAAE,CACrC,IAAI,CAAC,2BAA2B,CAAC,oBAAoB,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,CACxF,CAAC;oBAEF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,IAAI,GAAG,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;oBAEpF,IAAI,KAAK,YAAY,mDAA4B,EAAE,CAAC;wBACnD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;oBACjE,CAAC;oBAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;gBACpE,CAAC;YACF,CAAC,CAAC,CACF,CACD,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC;YAEtC,MAAM,MAAM,GAAG,IAAA,4BAAU,EACxB,qCAAgB,EAChB,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,4BAA4B,EAAE,OAAO,EAAE,EAChE,EAAE,uBAAuB,EAAE,KAAK,EAAE,CAClC,CAAC;YACF,IAAI,CAAC,2BAA2B,CAAC,GAAG,EAAE,CACrC,IAAI,CAAC,2BAA2B,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAC3E,CAAC;YAEF,OAAO,MAAM,CAAC;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,GAAG,GAAG,KAAc,CAAC;YAE3B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;YAEhG,MAAM,MAAM,GAAG,IAAA,4BAAU,EAAC,qCAAgB,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,2BAA2B,KAAK,EAAE,EAAE,CAAC,CAAC;YAC9G,IAAI,CAAC,2BAA2B,CAAC,GAAG,EAAE,CACrC,IAAI,CAAC,2BAA2B,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAC9E,CAAC;YAEF,OAAO,MAAM,CAAC;QACf,CAAC;IACF,CAAC;IAEM,WAAW,CAAC,KAAa,EAAE,OAA4B;QAC7D,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO;QACR,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;YAEzD,OAAO;QACR,CAAC;QAED,MAAM,OAAO,GAAG;YACf,KAAK;YACL,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YACvC,QAAQ,EAAE;gBACT,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACnC;SACD,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAElE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACpC,CAAC;IAGO,2BAA2B,CAAC,QAAoB;QACvD,IAAI,CAAC;YACJ,QAAQ,EAAE,CAAC;QACZ,CAAC;QAAC,MAAM,CAAC;QAET,CAAC;IACF,CAAC;IAuDO,kBAAkB,CAAC,GAAY;QACtC,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC7C,OAAO,GAAG,CAAC;QACZ,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;QACzD,CAAC;QAED,MAAM,SAAS,GAA4B,EAAE,CAAC;QAC9C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAA8B,CAAC,EAAE,CAAC;YAC3E,IAAI,kBAAgB,CAAC,sBAAsB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACtD,SAAS,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC;YAC/B,CAAC;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACxD,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACjD,CAAC;iBAAM,CAAC;gBACP,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACxB,CAAC;QACF,CAAC;QAED,OAAO,SAAS,CAAC;IAClB,CAAC;IAQO,uBAAuB,CAAC,OAAgB;QAC/C,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;IACzD,CAAC;IAEO,cAAc,CAAC,KAAa,EAAE,OAA4B;QACjE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO;QACR,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;YAEzD,OAAO;QACR,CAAC;QAGD,IAAI,kBAAgB,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YACzF,OAAO;QACR,CAAC;QAED,MAAM,OAAO,GAAG;YACf,KAAK;YACL,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YACvC,QAAQ,EAAE;gBACT,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACnC;SACD,CAAC;QAGF,MAAM,SAAS,GAAI,OAA+C,EAAE,UAAgC,CAAC;QACrG,MAAM,iBAAiB,GACtB,kBAAgB,CAAC,+BAA+B,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,SAAS,CAAC;QAE1G,IAAI,iBAAiB,EAAE,CAAC;YACvB,MAAM,WAAW,GAAG,WAAW,SAAS,EAAE,CAAC;YAE3C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,WAAW,KAAK,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAGzG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACnD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,mCAAa,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAErD,OAAO;QACR,CAAC;QAID,IAAI,kBAAgB,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YAC3F,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAEzF,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,gCAAU,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAElD,OAAO;QACR,CAAC;QAGD,IAAI,kBAAgB,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YAC9F,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAE5F,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,mCAAa,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAErD,OAAO;QACR,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAE1F,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,2CAAqB,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,mCAAa,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;IAEO,gBAAgB,CAAC,OAA4B;QAEpD,MAAM,aAAa,GAAG,CAAC,IAAa,EAAW,EAAE;YAEhD,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACzC,OAAO,IAAI,CAAC;YACb,CAAC;YAGD,IAAI,IAAA,yBAAO,EAAC,IAAI,CAAC,EAAE,CAAC;gBACnB,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAChC,CAAC;YAGD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAE9B,IAAI,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAClE,OAAO,IAAA,mCAAe,EAAC,IAAI,EAAE;wBAC5B,uBAAuB,EAAE,IAAI;wBAC7B,iBAAiB,EAAE,KAAK;wBACxB,gBAAgB,EAAE,KAAK;wBACvB,MAAM,EAAE,CAAC,KAAK,CAAC;wBACf,mBAAmB,EAAE,IAAI;qBACzB,CAAC,CAAC;gBACJ,CAAC;gBAGD,MAAM,MAAM,GAA4B,EAAE,CAAC;gBAE3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBACjD,MAAM,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;gBACpC,CAAC;gBAED,OAAO,MAAM,CAAC;YACf,CAAC;YAGD,OAAO,IAAI,CAAC;QACb,CAAC,CAAC;QAEF,OAAO,aAAa,CAAC,OAAO,CAAwB,CAAC;IACtD,CAAC;;AA1eW,4CAAgB;AA2SJ,wCAAuB,GAAG;IACjD,MAAM;IACN,cAAc;IACd,WAAW;IACX,YAAY;IACZ,YAAY;IACZ,SAAS;IACT,aAAa;IACb,yCAAyC;CACzC,AAT8C,CAS7C;AAGsB,gDAA+B,GAAG;IACzD,uBAAuB;CACvB,AAFsD,CAErD;AAGsB,6CAA4B,GAAG;IACtD,6BAA6B;CAC7B,AAFmD,CAElD;AAMsB,0CAAyB,GAAG;IACnD,sBAAsB;IACtB,qBAAqB;IACrB,uBAAuB;CACvB,AAJgD,CAI/C;AAEsB,uCAAsB,GAAG,IAAI,GAAG,CAAC;IACxD,SAAS;IACT,UAAU;IACV,WAAW;IACX,eAAe;IACf,kBAAkB;IAClB,UAAU;IACV,OAAO;IACP,QAAQ;CACR,CAAC,AAT4C,CAS3C;AA/Uc;IADhB,IAAA,4BAAe,GAAE;8BACO,kBAAM;gDAAC;AAsJ1B;IADL,IAAA,6BAAgB,EAAC,oBAAoB,CAAC;IAErC,WAAA,IAAA,wBAAW,GAAE,CAAA;IACb,WAAA,IAAA,4BAAe,GAAE,CAAA;;qCADO,uCAAiB;QACf,kBAAM;;+DAajC;AAGK;IADL,IAAA,6BAAgB,EAAC,SAAS,CAAC;IAE1B,WAAA,IAAA,wBAAW,GAAE,CAAA;IACb,WAAA,IAAA,4BAAe,GAAE,CAAA;;qCADM,uCAAiB;QACd,kBAAM;;qDAwFjC;2BAtQW,gBAAgB;IAN5B,IAAA,wBAAY,GAAE;IACd,IAAA,6BAAgB,EAAC;QACjB,IAAI,EAAE;YACL,MAAM,EAAE,GAAG;SACX;KACD,CAAC;qCASuC,4DAA2B;QACnC,6BAAa;QACZ,+BAAa;QACN,6CAAoB;QACb,0EAAkC;GAZrE,gBAAgB,CA2e5B"}
|
|
@@ -15,7 +15,6 @@ const jwt_1 = require("@nestjs/jwt");
|
|
|
15
15
|
const logger_1 = require("../../../common/logger");
|
|
16
16
|
const transform_utils_1 = require("../../../common/utils/transform.utils");
|
|
17
17
|
const auth_constants_1 = require("../../auth/auth.constants");
|
|
18
|
-
const auth_entity_1 = require("../../auth/entities/auth.entity");
|
|
19
18
|
const tokens_service_1 = require("../../auth/services/tokens.service");
|
|
20
19
|
const token_utils_1 = require("../../auth/utils/token.utils");
|
|
21
20
|
const mcp_constants_1 = require("../../mcp/mcp.constants");
|
|
@@ -64,22 +63,17 @@ let WsAuthService = class WsAuthService {
|
|
|
64
63
|
return this.validateLongLiveToken(client, token);
|
|
65
64
|
}
|
|
66
65
|
async validateUserAccessToken(client, token, userId) {
|
|
67
|
-
const storedAccessToken = await this.tokensService.
|
|
66
|
+
const storedAccessToken = await this.tokensService.findAuthenticationAccessToken(userId, (0, token_utils_1.hashToken)(token));
|
|
68
67
|
if (!storedAccessToken) {
|
|
69
68
|
this.logger.warn('Access token not found in database');
|
|
70
69
|
throw new websocket_exceptions_1.WebsocketNotAllowedException('Token not found');
|
|
71
70
|
}
|
|
72
|
-
if (storedAccessToken.revoked || storedAccessToken.
|
|
71
|
+
if (storedAccessToken.revoked || storedAccessToken.refreshRevoked) {
|
|
73
72
|
this.logger.warn('Access token is revoked');
|
|
74
73
|
throw new websocket_exceptions_1.WebsocketNotAllowedException('Token revoked');
|
|
75
74
|
}
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
user = await this.usersService.getOneOrThrow(userId);
|
|
79
|
-
}
|
|
80
|
-
catch (error) {
|
|
81
|
-
const err = error;
|
|
82
|
-
this.logger.warn('Token valid, but user not found', { message: err.message, stack: err.stack });
|
|
75
|
+
const user = storedAccessToken.owner;
|
|
76
|
+
if (!user || user.id !== userId) {
|
|
83
77
|
throw new websocket_exceptions_1.WebsocketNotAllowedException('Invalid user');
|
|
84
78
|
}
|
|
85
79
|
client.data['user'] = (0, transform_utils_1.toInstance)(client_user_dto_1.ClientUserDto, { id: user.id, role: user.role, type: 'user' });
|
|
@@ -87,14 +81,7 @@ let WsAuthService = class WsAuthService {
|
|
|
87
81
|
return true;
|
|
88
82
|
}
|
|
89
83
|
async validateDisplayToken(client, token, displayId) {
|
|
90
|
-
const
|
|
91
|
-
let storedToken = null;
|
|
92
|
-
for (const displayToken of displayTokens) {
|
|
93
|
-
if ((0, token_utils_1.hashToken)(token) === displayToken.hashedToken) {
|
|
94
|
-
storedToken = displayToken;
|
|
95
|
-
break;
|
|
96
|
-
}
|
|
97
|
-
}
|
|
84
|
+
const storedToken = await this.tokensService.findAuthenticationTokenByHash((0, token_utils_1.hashToken)(token));
|
|
98
85
|
if (!storedToken) {
|
|
99
86
|
this.logger.warn('Display token not found in database');
|
|
100
87
|
throw new websocket_exceptions_1.WebsocketNotAllowedException('Token not found');
|
|
@@ -107,6 +94,9 @@ let WsAuthService = class WsAuthService {
|
|
|
107
94
|
this.logger.warn('Display token is expired');
|
|
108
95
|
throw new websocket_exceptions_1.WebsocketNotAllowedException('Token expired');
|
|
109
96
|
}
|
|
97
|
+
if (storedToken.ownerType !== auth_constants_1.TokenOwnerType.DISPLAY || storedToken.ownerId !== displayId) {
|
|
98
|
+
throw new websocket_exceptions_1.WebsocketNotAllowedException('Invalid display token owner');
|
|
99
|
+
}
|
|
110
100
|
client.data['user'] = (0, transform_utils_1.toInstance)(client_user_dto_1.ClientUserDto, {
|
|
111
101
|
id: storedToken.ownerId,
|
|
112
102
|
role: users_constants_1.UserRole.USER,
|
|
@@ -116,18 +106,9 @@ let WsAuthService = class WsAuthService {
|
|
|
116
106
|
});
|
|
117
107
|
this.logger.debug(`Display authentication successful for display=${displayId}`);
|
|
118
108
|
return true;
|
|
119
|
-
this.logger.debug(`Token authentication successful (ownerType=${storedToken.ownerType})`);
|
|
120
|
-
return true;
|
|
121
109
|
}
|
|
122
110
|
async validateLongLiveToken(client, token) {
|
|
123
|
-
const
|
|
124
|
-
let storedLongLiveToken = null;
|
|
125
|
-
for (const longLiveToken of storedLongLiveTokens) {
|
|
126
|
-
if ((0, token_utils_1.hashToken)(token) === longLiveToken.hashedToken) {
|
|
127
|
-
storedLongLiveToken = longLiveToken;
|
|
128
|
-
break;
|
|
129
|
-
}
|
|
130
|
-
}
|
|
111
|
+
const storedLongLiveToken = await this.tokensService.findAuthenticationTokenByHash((0, token_utils_1.hashToken)(token));
|
|
131
112
|
if (!storedLongLiveToken) {
|
|
132
113
|
this.logger.warn('Long-live token not found');
|
|
133
114
|
throw new websocket_exceptions_1.WebsocketNotAllowedException('Unknown token');
|
|
@@ -140,6 +121,9 @@ let WsAuthService = class WsAuthService {
|
|
|
140
121
|
this.logger.warn('Long-live token is expired');
|
|
141
122
|
throw new websocket_exceptions_1.WebsocketNotAllowedException('Token expired');
|
|
142
123
|
}
|
|
124
|
+
if (storedLongLiveToken.ownerType === auth_constants_1.TokenOwnerType.MCP) {
|
|
125
|
+
throw new websocket_exceptions_1.WebsocketNotAllowedException('MCP credentials cannot authenticate WebSocket connections');
|
|
126
|
+
}
|
|
143
127
|
let role = users_constants_1.UserRole.USER;
|
|
144
128
|
if (storedLongLiveToken.ownerType === auth_constants_1.TokenOwnerType.USER && storedLongLiveToken.ownerId) {
|
|
145
129
|
const user = await this.usersService.findOne(storedLongLiveToken.ownerId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ws-auth.service.js","sourceRoot":"","sources":["../../../../src/modules/websocket/services/ws-auth.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,2CAA4C;AAC5C,qCAAyC;AAEzC,mDAA+D;AAC/D,2EAAmE;AACnE,8DAA2D;AAC3D,
|
|
1
|
+
{"version":3,"file":"ws-auth.service.js","sourceRoot":"","sources":["../../../../src/modules/websocket/services/ws-auth.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,12 @@
|
|
|
1
1
|
import { IDevicePlatform, IDevicePropertyData } from '../../../modules/devices/platforms/device.platform';
|
|
2
|
-
import {
|
|
3
|
-
import { ChannelsService } from '../../../modules/devices/services/channels.service';
|
|
4
|
-
import { DevicesService } from '../../../modules/devices/services/devices.service';
|
|
2
|
+
import { DeviceCommandGraphService } from '../../../modules/devices/services/device-command-graph.service';
|
|
5
3
|
import { PlatformRegistryService } from '../../../modules/devices/services/platform.registry.service';
|
|
6
4
|
export declare class VirtualDevicePlatform implements IDevicePlatform {
|
|
7
|
-
private readonly
|
|
8
|
-
private readonly channelsService;
|
|
9
|
-
private readonly channelsPropertiesService;
|
|
5
|
+
private readonly graphs;
|
|
10
6
|
private readonly platformRegistryService;
|
|
11
7
|
private readonly logger;
|
|
12
|
-
constructor(
|
|
8
|
+
constructor(graphs: DeviceCommandGraphService, platformRegistryService: PlatformRegistryService);
|
|
13
9
|
getType(): string;
|
|
14
10
|
process(data: IDevicePropertyData): Promise<boolean>;
|
|
15
11
|
processBatch(updates: IDevicePropertyData[]): Promise<boolean>;
|
|
16
|
-
private resolveSource;
|
|
17
12
|
}
|
|
@@ -13,17 +13,13 @@ exports.VirtualDevicePlatform = void 0;
|
|
|
13
13
|
const common_1 = require("@nestjs/common");
|
|
14
14
|
const extension_logger_service_1 = require("../../../common/logger/extension-logger.service");
|
|
15
15
|
const devices_constants_1 = require("../../../modules/devices/devices.constants");
|
|
16
|
-
const
|
|
17
|
-
const channels_service_1 = require("../../../modules/devices/services/channels.service");
|
|
18
|
-
const devices_service_1 = require("../../../modules/devices/services/devices.service");
|
|
16
|
+
const device_command_graph_service_1 = require("../../../modules/devices/services/device-command-graph.service");
|
|
19
17
|
const platform_registry_service_1 = require("../../../modules/devices/services/platform.registry.service");
|
|
20
18
|
const devices_virtual_constants_1 = require("../devices-virtual.constants");
|
|
21
19
|
const devices_virtual_entity_1 = require("../entities/devices-virtual.entity");
|
|
22
20
|
let VirtualDevicePlatform = class VirtualDevicePlatform {
|
|
23
|
-
constructor(
|
|
24
|
-
this.
|
|
25
|
-
this.channelsService = channelsService;
|
|
26
|
-
this.channelsPropertiesService = channelsPropertiesService;
|
|
21
|
+
constructor(graphs, platformRegistryService) {
|
|
22
|
+
this.graphs = graphs;
|
|
27
23
|
this.platformRegistryService = platformRegistryService;
|
|
28
24
|
this.logger = (0, extension_logger_service_1.createExtensionLogger)(devices_virtual_constants_1.DEVICES_VIRTUAL_PLUGIN_NAME, 'VirtualDevicePlatform');
|
|
29
25
|
}
|
|
@@ -54,8 +50,9 @@ let VirtualDevicePlatform = class VirtualDevicePlatform {
|
|
|
54
50
|
this.logger.warn(`Property id=${property.id} has no source, it was deleted`);
|
|
55
51
|
return false;
|
|
56
52
|
}
|
|
57
|
-
const resolved = await this.
|
|
53
|
+
const resolved = await this.graphs.findPropertyTarget(property.sourcePropertyId);
|
|
58
54
|
if (!resolved) {
|
|
55
|
+
this.logger.warn(`Source property id=${property.sourcePropertyId} has no complete device graph`);
|
|
59
56
|
return false;
|
|
60
57
|
}
|
|
61
58
|
const { device, channel, property: sourceProperty } = resolved;
|
|
@@ -89,38 +86,11 @@ let VirtualDevicePlatform = class VirtualDevicePlatform {
|
|
|
89
86
|
}
|
|
90
87
|
return true;
|
|
91
88
|
}
|
|
92
|
-
async resolveSource(sourcePropertyId) {
|
|
93
|
-
const property = await this.channelsPropertiesService.findOne(sourcePropertyId);
|
|
94
|
-
if (!property) {
|
|
95
|
-
this.logger.warn(`Source property id=${sourcePropertyId} not found`);
|
|
96
|
-
return null;
|
|
97
|
-
}
|
|
98
|
-
const channelId = typeof property.channel === 'string' ? property.channel : property.channel?.id;
|
|
99
|
-
const parent = typeof property.channel === 'string' ? await this.channelsService.findOne(property.channel) : property.channel;
|
|
100
|
-
if (!parent) {
|
|
101
|
-
this.logger.warn(`Source channel for property id=${sourcePropertyId} not found`);
|
|
102
|
-
return null;
|
|
103
|
-
}
|
|
104
|
-
const deviceId = typeof parent.device === 'string' ? parent.device : parent.device?.id;
|
|
105
|
-
const device = deviceId ? await this.devicesService.findOne(deviceId) : null;
|
|
106
|
-
if (!device) {
|
|
107
|
-
this.logger.warn(`Source device for property id=${sourcePropertyId} not found`);
|
|
108
|
-
return null;
|
|
109
|
-
}
|
|
110
|
-
const channel = device.channels.find((candidate) => candidate.id === channelId);
|
|
111
|
-
if (!channel) {
|
|
112
|
-
this.logger.warn(`Source channel for property id=${sourcePropertyId} is no longer on device id=${device.id}`);
|
|
113
|
-
return null;
|
|
114
|
-
}
|
|
115
|
-
return { device, channel, property };
|
|
116
|
-
}
|
|
117
89
|
};
|
|
118
90
|
exports.VirtualDevicePlatform = VirtualDevicePlatform;
|
|
119
91
|
exports.VirtualDevicePlatform = VirtualDevicePlatform = __decorate([
|
|
120
92
|
(0, common_1.Injectable)(),
|
|
121
|
-
__metadata("design:paramtypes", [
|
|
122
|
-
channels_service_1.ChannelsService,
|
|
123
|
-
channels_properties_service_1.ChannelsPropertiesService,
|
|
93
|
+
__metadata("design:paramtypes", [device_command_graph_service_1.DeviceCommandGraphService,
|
|
124
94
|
platform_registry_service_1.PlatformRegistryService])
|
|
125
95
|
], VirtualDevicePlatform);
|
|
126
96
|
//# sourceMappingURL=virtual-device.platform.js.map
|