@fastybird/smart-panel-backend 1.1.0-alpha.30 → 1.1.0-alpha.31

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.
Files changed (24) hide show
  1. package/dist/modules/devices/services/channels.properties.service.d.ts +1 -0
  2. package/dist/modules/devices/services/channels.properties.service.js +11 -0
  3. package/dist/modules/devices/services/channels.properties.service.js.map +1 -1
  4. package/dist/modules/devices/services/channels.service.d.ts +1 -0
  5. package/dist/modules/devices/services/channels.service.js +10 -0
  6. package/dist/modules/devices/services/channels.service.js.map +1 -1
  7. package/dist/modules/devices/services/devices.service.d.ts +1 -0
  8. package/dist/modules/devices/services/devices.service.js +3 -0
  9. package/dist/modules/devices/services/devices.service.js.map +1 -1
  10. package/dist/modules/devices/services/property-command-dispatch.service.js +6 -5
  11. package/dist/modules/devices/services/property-command-dispatch.service.js.map +1 -1
  12. package/dist/modules/devices/validators/channel-exists-constraint.validator.d.ts +1 -3
  13. package/dist/modules/devices/validators/channel-exists-constraint.validator.js +3 -14
  14. package/dist/modules/devices/validators/channel-exists-constraint.validator.js.map +1 -1
  15. package/dist/modules/devices/validators/channel-property-exists-constraint.validator.d.ts +1 -3
  16. package/dist/modules/devices/validators/channel-property-exists-constraint.validator.js +3 -14
  17. package/dist/modules/devices/validators/channel-property-exists-constraint.validator.js.map +1 -1
  18. package/dist/modules/devices/validators/device-exists-constraint.validator.js +1 -2
  19. package/dist/modules/devices/validators/device-exists-constraint.validator.js.map +1 -1
  20. package/dist/plugins/devices-shelly-ng/services/shelly-ng.service.d.ts +1 -0
  21. package/dist/plugins/devices-shelly-ng/services/shelly-ng.service.js +8 -2
  22. package/dist/plugins/devices-shelly-ng/services/shelly-ng.service.js.map +1 -1
  23. package/dist/tsconfig.build.tsbuildinfo +1 -1
  24. package/package.json +2 -2
@@ -1,10 +1,8 @@
1
1
  import { ValidationArguments, ValidationOptions, ValidatorConstraintInterface } from 'class-validator';
2
2
  import { ChannelsPropertiesService } from '../services/channels.properties.service';
3
- import { ChannelsService } from '../services/channels.service';
4
3
  export declare class ChannelPropertyExistsConstraintValidator implements ValidatorConstraintInterface {
5
- private readonly channelsService;
6
4
  private readonly channelsPropertiesService;
7
- constructor(channelsService: ChannelsService, channelsPropertiesService: ChannelsPropertiesService);
5
+ constructor(channelsPropertiesService: ChannelsPropertiesService);
8
6
  validate(propertyId: string | undefined, args: ValidationArguments): Promise<boolean>;
9
7
  defaultMessage(args: ValidationArguments): string;
10
8
  }
@@ -13,10 +13,8 @@ exports.ValidateChannelPropertyExists = exports.ChannelPropertyExistsConstraintV
13
13
  const class_validator_1 = require("class-validator");
14
14
  const common_1 = require("@nestjs/common");
15
15
  const channels_properties_service_1 = require("../services/channels.properties.service");
16
- const channels_service_1 = require("../services/channels.service");
17
16
  let ChannelPropertyExistsConstraintValidator = class ChannelPropertyExistsConstraintValidator {
18
- constructor(channelsService, channelsPropertiesService) {
19
- this.channelsService = channelsService;
17
+ constructor(channelsPropertiesService) {
20
18
  this.channelsPropertiesService = channelsPropertiesService;
21
19
  }
22
20
  async validate(propertyId, args) {
@@ -24,15 +22,7 @@ let ChannelPropertyExistsConstraintValidator = class ChannelPropertyExistsConstr
24
22
  return false;
25
23
  const dto = args.object;
26
24
  const channelId = typeof dto?.channel === 'string' ? dto.channel : undefined;
27
- if (!channelId) {
28
- const propertyExists = await this.channelsPropertiesService.findOne(propertyId);
29
- return !!propertyExists;
30
- }
31
- const channelExists = await this.channelsService.findOne(channelId);
32
- if (!channelExists)
33
- return false;
34
- const propertyExists = await this.channelsPropertiesService.findOne(propertyId, channelId);
35
- return !!propertyExists;
25
+ return this.channelsPropertiesService.exists(propertyId, channelId);
36
26
  }
37
27
  defaultMessage(args) {
38
28
  return `[{"field":"${args.property}","reason":"${args.property.charAt(0).toUpperCase() + args.property.slice(1)} does not exist or does not belong to the specified channel."}]`;
@@ -42,8 +32,7 @@ exports.ChannelPropertyExistsConstraintValidator = ChannelPropertyExistsConstrai
42
32
  exports.ChannelPropertyExistsConstraintValidator = ChannelPropertyExistsConstraintValidator = __decorate([
43
33
  (0, common_1.Injectable)(),
44
34
  (0, class_validator_1.ValidatorConstraint)({ name: 'ChannelPropertyExistsValidation', async: true }),
45
- __metadata("design:paramtypes", [channels_service_1.ChannelsService,
46
- channels_properties_service_1.ChannelsPropertiesService])
35
+ __metadata("design:paramtypes", [channels_properties_service_1.ChannelsPropertiesService])
47
36
  ], ChannelPropertyExistsConstraintValidator);
48
37
  const ValidateChannelPropertyExists = (validationOptions) => {
49
38
  return function (object, propertyName) {
@@ -1 +1 @@
1
- {"version":3,"file":"channel-property-exists-constraint.validator.js","sourceRoot":"","sources":["../../../../src/modules/devices/validators/channel-property-exists-constraint.validator.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAMyB;AAEzB,2CAA4C;AAE5C,yFAAoF;AACpF,mEAA+D;AAIxD,IAAM,wCAAwC,GAA9C,MAAM,wCAAwC;IACpD,YACkB,eAAgC,EAChC,yBAAoD;QADpD,oBAAe,GAAf,eAAe,CAAiB;QAChC,8BAAyB,GAAzB,yBAAyB,CAA2B;IACnE,CAAC;IAEJ,KAAK,CAAC,QAAQ,CAAC,UAA8B,EAAE,IAAyB;QACvE,IAAI,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QAE9B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAiC,CAAC;QAGnD,MAAM,SAAS,GAAG,OAAO,GAAG,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;QAE7E,IAAI,CAAC,SAAS,EAAE,CAAC;YAEhB,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAEhF,OAAO,CAAC,CAAC,cAAc,CAAC;QACzB,CAAC;QAGD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACpE,IAAI,CAAC,aAAa;YAAE,OAAO,KAAK,CAAC;QAGjC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QAE3F,OAAO,CAAC,CAAC,cAAc,CAAC;IACzB,CAAC;IAED,cAAc,CAAC,IAAyB;QACvC,OAAO,cAAc,IAAI,CAAC,QAAQ,eAAe,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,iEAAiE,CAAC;IAClL,CAAC;CACD,CAAA;AAlCY,4FAAwC;mDAAxC,wCAAwC;IAFpD,IAAA,mBAAU,GAAE;IACZ,IAAA,qCAAmB,EAAC,EAAE,IAAI,EAAE,iCAAiC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;qCAG1C,kCAAe;QACL,uDAAyB;GAH1D,wCAAwC,CAkCpD;AAEM,MAAM,6BAA6B,GAAG,CAAC,iBAAqC,EAAE,EAAE;IACtF,OAAO,UAAU,MAAc,EAAE,YAAoB;QACpD,IAAA,mCAAiB,EAAC;YACjB,IAAI,EAAE,+BAA+B;YACrC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY;YACZ,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,EAAE;YACf,SAAS,EAAE,wCAAwC;SACnD,CAAC,CAAC;IACJ,CAAC,CAAC;AACH,CAAC,CAAC;AAXW,QAAA,6BAA6B,iCAWxC"}
1
+ {"version":3,"file":"channel-property-exists-constraint.validator.js","sourceRoot":"","sources":["../../../../src/modules/devices/validators/channel-property-exists-constraint.validator.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAMyB;AAEzB,2CAA4C;AAE5C,yFAAoF;AAI7E,IAAM,wCAAwC,GAA9C,MAAM,wCAAwC;IACpD,YAA6B,yBAAoD;QAApD,8BAAyB,GAAzB,yBAAyB,CAA2B;IAAG,CAAC;IAErF,KAAK,CAAC,QAAQ,CAAC,UAA8B,EAAE,IAAyB;QACvE,IAAI,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QAE9B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAiC,CAAC;QAGnD,MAAM,SAAS,GAAG,OAAO,GAAG,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;QAE7E,OAAO,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACrE,CAAC;IAED,cAAc,CAAC,IAAyB;QACvC,OAAO,cAAc,IAAI,CAAC,QAAQ,eAAe,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,iEAAiE,CAAC;IAClL,CAAC;CACD,CAAA;AAjBY,4FAAwC;mDAAxC,wCAAwC;IAFpD,IAAA,mBAAU,GAAE;IACZ,IAAA,qCAAmB,EAAC,EAAE,IAAI,EAAE,iCAAiC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;qCAErB,uDAAyB;GADrE,wCAAwC,CAiBpD;AAEM,MAAM,6BAA6B,GAAG,CAAC,iBAAqC,EAAE,EAAE;IACtF,OAAO,UAAU,MAAc,EAAE,YAAoB;QACpD,IAAA,mCAAiB,EAAC;YACjB,IAAI,EAAE,+BAA+B;YACrC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY;YACZ,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,EAAE;YACf,SAAS,EAAE,wCAAwC;SACnD,CAAC,CAAC;IACJ,CAAC,CAAC;AACH,CAAC,CAAC;AAXW,QAAA,6BAA6B,iCAWxC"}
@@ -20,8 +20,7 @@ let DeviceExistsConstraintValidator = class DeviceExistsConstraintValidator {
20
20
  async validate(deviceId) {
21
21
  if (!deviceId)
22
22
  return false;
23
- const deviceExists = await this.devicesService.findOne(deviceId);
24
- return !!deviceExists;
23
+ return this.devicesService.exists(deviceId);
25
24
  }
26
25
  defaultMessage(args) {
27
26
  return `[{"field":"${args.property}","reason":"${args.property.charAt(0).toUpperCase() + args.property.slice(1)} does not exist."}]`;
@@ -1 +1 @@
1
- {"version":3,"file":"device-exists-constraint.validator.js","sourceRoot":"","sources":["../../../../src/modules/devices/validators/device-exists-constraint.validator.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAMyB;AAEzB,2CAA4C;AAE5C,iEAA6D;AAItD,IAAM,+BAA+B,GAArC,MAAM,+BAA+B;IAC3C,YAA6B,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;IAAG,CAAC;IAE/D,KAAK,CAAC,QAAQ,CAAC,QAA4B;QAC1C,IAAI,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QAG5B,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEjE,OAAO,CAAC,CAAC,YAAY,CAAC;IACvB,CAAC;IAED,cAAc,CAAC,IAAyB;QACvC,OAAO,cAAc,IAAI,CAAC,QAAQ,eAAe,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,qBAAqB,CAAC;IACtI,CAAC;CACD,CAAA;AAfY,0EAA+B;0CAA/B,+BAA+B;IAF3C,IAAA,mBAAU,GAAE;IACZ,IAAA,qCAAmB,EAAC,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;qCAEvB,gCAAc;GAD/C,+BAA+B,CAe3C;AAEM,MAAM,oBAAoB,GAAG,CAAC,iBAAqC,EAAE,EAAE;IAC7E,OAAO,UAAU,MAAc,EAAE,YAAoB;QACpD,IAAA,mCAAiB,EAAC;YACjB,IAAI,EAAE,sBAAsB;YAC5B,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY;YACZ,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,EAAE;YACf,SAAS,EAAE,+BAA+B;SAC1C,CAAC,CAAC;IACJ,CAAC,CAAC;AACH,CAAC,CAAC;AAXW,QAAA,oBAAoB,wBAW/B"}
1
+ {"version":3,"file":"device-exists-constraint.validator.js","sourceRoot":"","sources":["../../../../src/modules/devices/validators/device-exists-constraint.validator.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAMyB;AAEzB,2CAA4C;AAE5C,iEAA6D;AAItD,IAAM,+BAA+B,GAArC,MAAM,+BAA+B;IAC3C,YAA6B,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;IAAG,CAAC;IAE/D,KAAK,CAAC,QAAQ,CAAC,QAA4B;QAC1C,IAAI,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QAE5B,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAED,cAAc,CAAC,IAAyB;QACvC,OAAO,cAAc,IAAI,CAAC,QAAQ,eAAe,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,qBAAqB,CAAC;IACtI,CAAC;CACD,CAAA;AAZY,0EAA+B;0CAA/B,+BAA+B;IAF3C,IAAA,mBAAU,GAAE;IACZ,IAAA,qCAAmB,EAAC,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;qCAEvB,gCAAc;GAD/C,+BAA+B,CAY3C;AAEM,MAAM,oBAAoB,GAAG,CAAC,iBAAqC,EAAE,EAAE;IAC7E,OAAO,UAAU,MAAc,EAAE,YAAoB;QACpD,IAAA,mCAAiB,EAAC;YACjB,IAAI,EAAE,sBAAsB;YAC5B,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY;YACZ,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,EAAE;YACf,SAAS,EAAE,+BAA+B;SAC1C,CAAC,CAAC;IACJ,CAAC,CAAC;AACH,CAAC,CAAC;AAXW,QAAA,oBAAoB,wBAW/B"}
@@ -57,6 +57,7 @@ export declare class ShellyNgService extends BaseManagedExtensionService {
57
57
  protected handleAddedDevice: (device: Device) => void;
58
58
  private processDiscoveryQueue;
59
59
  private processDiscoveredDevice;
60
+ private isCurrentDiscovery;
60
61
  protected handleRemovedDevice: (device: Device) => void;
61
62
  protected handleExcludedDevice: (deviceId: DeviceId) => void;
62
63
  protected handleUnknownDevice: (deviceId: DeviceId, model: string) => void;
@@ -385,14 +385,17 @@ let ShellyNgService = ShellyNgService_1 = class ShellyNgService extends base_man
385
385
  }
386
386
  }
387
387
  async processDiscoveredDevice(device, generation) {
388
+ if (!this.isCurrentDiscovery(device, generation)) {
389
+ return;
390
+ }
388
391
  const sysDevice = await this.devicesService.findOneBy('identifier', device.id, devices_shelly_ng_constants_1.DEVICES_SHELLY_NG_TYPE);
389
- if (this.discoveryGeneration !== generation) {
392
+ if (!this.isCurrentDiscovery(device, generation)) {
390
393
  return;
391
394
  }
392
395
  if (sysDevice !== null) {
393
396
  await this.deviceManagerService.createOrUpdate(sysDevice.id);
394
397
  }
395
- if (this.discoveryGeneration !== generation) {
398
+ if (!this.isCurrentDiscovery(device, generation)) {
396
399
  return;
397
400
  }
398
401
  const existingDelegate = this.delegatesRegistryService.get(device.id);
@@ -415,6 +418,9 @@ let ShellyNgService = ShellyNgService_1 = class ShellyNgService extends base_man
415
418
  }
416
419
  }
417
420
  }
421
+ isCurrentDiscovery(device, generation) {
422
+ return this.discoveryGeneration === generation && this.shellies?.get(device.id) === device;
423
+ }
418
424
  getKnownDevices() {
419
425
  if (typeof this.shellies === 'undefined') {
420
426
  return [];
@@ -1 +1 @@
1
- {"version":3,"file":"shelly-ng.service.js","sourceRoot":"","sources":["../../../../src/plugins/devices-shelly-ng/services/shelly-ng.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shelly-ng.service.js","sourceRoot":"","sources":["../../../../src/plugins/devices-shelly-ng/services/shelly-ng.service.ts"],"names":[],"mappings":"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"}