matterbridge 1.6.5-dev.3 → 1.6.6-dev.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/CHANGELOG.md CHANGED
@@ -14,7 +14,18 @@ If you want to run Matterbridge in Home Assistant please use the official add-on
14
14
 
15
15
  Tamer (https://github.com/tammeryousef1006) has created the Matterbridge Discord group: https://discord.gg/QX58CDe6hd.
16
16
 
17
- ## [1.6.5] - 2024-12-01
17
+ ## [1.6.6] - 2024-12-05
18
+
19
+ ### Changed
20
+
21
+ - [plugin]: Removed check on types since we are moving to production plugins.
22
+ - [package]: Update dependencies.
23
+
24
+ <a href="https://www.buymeacoffee.com/luligugithub">
25
+ <img src="./yellow-button.png" alt="Buy me a coffee" width="120">
26
+ </a>
27
+
28
+ ## [1.6.5] - 2024-12-02
18
29
 
19
30
  ### Changed
20
31
 
@@ -607,26 +607,42 @@ export class MatterbridgeDevice extends extendPublicHandlerMethods(Device) {
607
607
  },
608
608
  }, {}));
609
609
  }
610
- getDefaultOnOffClusterServer(onOff = false) {
611
- return ClusterServer(OnOffCluster, {
610
+ getDefaultOnOffClusterServer(onOff = false, globalSceneControl = false, onTime = 0, offWaitTime = 0, startUpOnOff = null) {
611
+ return ClusterServer(OnOffCluster.with(OnOff.Feature.Lighting), {
612
612
  onOff,
613
+ globalSceneControl,
614
+ onTime,
615
+ offWaitTime,
616
+ startUpOnOff,
613
617
  }, {
614
618
  on: async (data) => {
615
- this.log.debug('Matter command: on onOff:', data.attributes.onOff.getLocal());
619
+ this.log.debug('Matter command: on');
616
620
  await this.commandHandler.executeHandler('on', data);
617
621
  },
618
622
  off: async (data) => {
619
- this.log.debug('Matter command: off onOff:', data.attributes.onOff.getLocal());
623
+ this.log.debug('Matter command: off');
620
624
  await this.commandHandler.executeHandler('off', data);
621
625
  },
622
626
  toggle: async (data) => {
623
- this.log.debug('Matter command: toggle onOff:', data.attributes.onOff.getLocal());
627
+ this.log.debug('Matter command: toggle');
624
628
  await this.commandHandler.executeHandler('toggle', data);
625
629
  },
630
+ offWithEffect: async (data) => {
631
+ this.log.debug('Matter command: offWithEffect', data.request);
632
+ await this.commandHandler.executeHandler('offWithEffect', data);
633
+ },
634
+ onWithRecallGlobalScene: async (data) => {
635
+ this.log.debug('Matter command: onWithRecallGlobalScene', data.request);
636
+ await this.commandHandler.executeHandler('onWithRecallGlobalScene', data);
637
+ },
638
+ onWithTimedOff: async (data) => {
639
+ this.log.debug('Matter command: onWithTimedOff', data.request);
640
+ await this.commandHandler.executeHandler('onWithTimedOff', data);
641
+ },
626
642
  }, {});
627
643
  }
628
- createDefaultOnOffClusterServer(onOff = false) {
629
- this.addClusterServer(this.getDefaultOnOffClusterServer(onOff));
644
+ createDefaultOnOffClusterServer(onOff = false, globalSceneControl = false, onTime = 0, offWaitTime = 0, startUpOnOff = null) {
645
+ this.addClusterServer(this.getDefaultOnOffClusterServer(onOff, globalSceneControl, onTime, offWaitTime, startUpOnOff));
630
646
  }
631
647
  getDefaultLevelControlClusterServer(currentLevel = 254, minLevel = 0, maxLevel = 254, onLevel = null) {
632
648
  return ClusterServer(LevelControlCluster.with(LevelControl.Feature.OnOff), {
@@ -1465,7 +1481,7 @@ export class MatterbridgeDevice extends extendPublicHandlerMethods(Device) {
1465
1481
  measurementMedium,
1466
1482
  }, {}, {});
1467
1483
  }
1468
- createDefaulPm1ConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1484
+ createDefaultPm1ConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1469
1485
  this.addClusterServer(this.getDefaultPm1ConcentrationMeasurementClusterServer(measuredValue, measurementUnit, measurementMedium));
1470
1486
  }
1471
1487
  getDefaultPm25ConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
@@ -1478,7 +1494,7 @@ export class MatterbridgeDevice extends extendPublicHandlerMethods(Device) {
1478
1494
  measurementMedium,
1479
1495
  }, {}, {});
1480
1496
  }
1481
- createDefaulPm25ConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1497
+ createDefaultPm25ConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1482
1498
  this.addClusterServer(this.getDefaultPm25ConcentrationMeasurementClusterServer(measuredValue, measurementUnit, measurementMedium));
1483
1499
  }
1484
1500
  getDefaultPm10ConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
@@ -1491,7 +1507,7 @@ export class MatterbridgeDevice extends extendPublicHandlerMethods(Device) {
1491
1507
  measurementMedium,
1492
1508
  }, {}, {});
1493
1509
  }
1494
- createDefaulPm10ConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1510
+ createDefaultPm10ConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1495
1511
  this.addClusterServer(this.getDefaultPm10ConcentrationMeasurementClusterServer(measuredValue, measurementUnit, measurementMedium));
1496
1512
  }
1497
1513
  getDefaultOzoneConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ugm3, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
@@ -1504,7 +1520,7 @@ export class MatterbridgeDevice extends extendPublicHandlerMethods(Device) {
1504
1520
  measurementMedium,
1505
1521
  }, {}, {});
1506
1522
  }
1507
- createDefaulOzoneConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ugm3, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1523
+ createDefaultOzoneConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ugm3, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1508
1524
  this.addClusterServer(this.getDefaultOzoneConcentrationMeasurementClusterServer(measuredValue, measurementUnit, measurementMedium));
1509
1525
  }
1510
1526
  getDefaultRadonConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
@@ -1517,7 +1533,7 @@ export class MatterbridgeDevice extends extendPublicHandlerMethods(Device) {
1517
1533
  measurementMedium,
1518
1534
  }, {}, {});
1519
1535
  }
1520
- createDefaulRadonConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1536
+ createDefaultRadonConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1521
1537
  this.addClusterServer(this.getDefaultRadonConcentrationMeasurementClusterServer(measuredValue, measurementUnit, measurementMedium));
1522
1538
  }
1523
1539
  getDefaultNitrogenDioxideConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ugm3, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
@@ -1530,7 +1546,7 @@ export class MatterbridgeDevice extends extendPublicHandlerMethods(Device) {
1530
1546
  measurementMedium,
1531
1547
  }, {}, {});
1532
1548
  }
1533
- createDefaulNitrogenDioxideConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ugm3, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1549
+ createDefaultNitrogenDioxideConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ugm3, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1534
1550
  this.addClusterServer(this.getDefaultNitrogenDioxideConcentrationMeasurementClusterServer(measuredValue, measurementUnit, measurementMedium));
1535
1551
  }
1536
1552
  getDefaultFanControlClusterServer(fanMode = FanControl.FanMode.Off) {
@@ -1,4 +1,4 @@
1
- import { AirQuality, BooleanState, BooleanStateConfiguration, BridgedDeviceBasicInformation, CarbonDioxideConcentrationMeasurement, CarbonMonoxideConcentrationMeasurement, ColorControl, DeviceEnergyManagement, DeviceEnergyManagementMode, DoorLock, ElectricalEnergyMeasurement, ElectricalPowerMeasurement, EnergyPreference, FanControl, FlowMeasurement, FormaldehydeConcentrationMeasurement, Groups, Identify, IlluminanceMeasurement, LevelControl, ModeSelect, NitrogenDioxideConcentrationMeasurement, OccupancySensing, OnOff, OzoneConcentrationMeasurement, Pm10ConcentrationMeasurement, Pm1ConcentrationMeasurement, Pm25ConcentrationMeasurement, PowerSource, PowerTopology, PressureMeasurement, RadonConcentrationMeasurement, RelativeHumidityMeasurement, SmokeCoAlarm, SwitchCluster, TemperatureMeasurement, Thermostat, ThermostatUserInterfaceConfiguration, TimeSynchronization, TotalVolatileOrganicCompoundsConcentrationMeasurement, WindowCovering, ValveConfigurationAndControl, HepaFilterMonitoring, ActivatedCarbonFilterMonitoring, Actions, FixedLabel, RvcRunMode, RvcOperationalState, RvcCleanMode, } from '@matter/main/clusters';
1
+ import { AirQuality, BooleanState, BooleanStateConfiguration, BridgedDeviceBasicInformation, CarbonDioxideConcentrationMeasurement, CarbonMonoxideConcentrationMeasurement, ColorControl, DeviceEnergyManagement, DeviceEnergyManagementMode, DoorLock, ElectricalEnergyMeasurement, ElectricalPowerMeasurement, EnergyPreference, FanControl, FlowMeasurement, FormaldehydeConcentrationMeasurement, Groups, Identify, IlluminanceMeasurement, LevelControl, ModeSelect, NitrogenDioxideConcentrationMeasurement, OccupancySensing, OnOff, OzoneConcentrationMeasurement, Pm10ConcentrationMeasurement, Pm1ConcentrationMeasurement, Pm25ConcentrationMeasurement, PowerSource, PowerTopology, PressureMeasurement, RadonConcentrationMeasurement, RelativeHumidityMeasurement, SmokeCoAlarm, SwitchCluster, TemperatureMeasurement, Thermostat, ThermostatUserInterfaceConfiguration, TimeSynchronization, TotalVolatileOrganicCompoundsConcentrationMeasurement, WindowCovering, ValveConfigurationAndControl, HepaFilterMonitoring, ActivatedCarbonFilterMonitoring, Actions, FixedLabel, RvcRunMode, RvcOperationalState, RvcCleanMode, ScenesManagement, } from '@matter/main/clusters';
2
2
  import { DeviceClasses, DeviceTypeDefinition } from '@project-chip/matter.js/device';
3
3
  export const bridge = DeviceTypeDefinition({
4
4
  name: 'MA-aggregator',
@@ -261,6 +261,14 @@ export const airPurifier = DeviceTypeDefinition({
261
261
  requiredServerClusters: [Identify.Cluster.id, FanControl.Cluster.id],
262
262
  optionalServerClusters: [Groups.Cluster.id, HepaFilterMonitoring.Cluster.id, ActivatedCarbonFilterMonitoring.Cluster.id],
263
263
  });
264
+ export const airConditioner = DeviceTypeDefinition({
265
+ name: 'MA-airConditioner',
266
+ code: 0x72,
267
+ deviceClass: DeviceClasses.Simple,
268
+ revision: 2,
269
+ requiredServerClusters: [Identify.Cluster.id, OnOff.Cluster.id, Thermostat.Cluster.id],
270
+ optionalServerClusters: [Groups.Cluster.id, ScenesManagement.Cluster.id, FanControl.Cluster.id, ThermostatUserInterfaceConfiguration.Cluster.id, TemperatureMeasurement.Cluster.id, RelativeHumidityMeasurement.Cluster.id],
271
+ });
264
272
  export const electricalSensor = DeviceTypeDefinition({
265
273
  name: 'MA-electricalSensor',
266
274
  code: 0x0510,
@@ -124,8 +124,14 @@ export class MatterbridgeEndpoint extends Endpoint {
124
124
  return MatterbridgeOnOffServer.with('Lighting');
125
125
  if (clusterId === LevelControl.Cluster.id)
126
126
  return MatterbridgeLevelControlServer;
127
- if (clusterId === ColorControl.Cluster.id)
127
+ if (clusterId === ColorControl.Cluster.id && type === 'CompleteColorControl')
128
128
  return MatterbridgeColorControlServer;
129
+ if (clusterId === ColorControl.Cluster.id && type === 'XyColorControl')
130
+ return MatterbridgeColorControlServer.with('Xy');
131
+ if (clusterId === ColorControl.Cluster.id && type === 'HueSaturationColorControl')
132
+ return MatterbridgeColorControlServer.with('HueSaturation');
133
+ if (clusterId === ColorControl.Cluster.id && type === 'ColorTemperatureColorControl')
134
+ return MatterbridgeColorControlServer.with('ColorTemperature');
129
135
  if (clusterId === DoorLock.Cluster.id)
130
136
  return MatterbridgeDoorLockServer;
131
137
  if (clusterId === Thermostat.Cluster.id && type === 'AutoModeThermostat')
@@ -405,6 +411,14 @@ export class MatterbridgeEndpoint extends Endpoint {
405
411
  this.log.debug(`****cluster ${hk}${'0x' + cluster.id.toString(16).padStart(4, '0')}${db}-${hk}${getClusterNameById(cluster.id)}${db} already added`);
406
412
  }
407
413
  let type = undefined;
414
+ if (cluster.id === ColorControl.Cluster.id && cluster.isAttributeSupportedByName('currentX') && !cluster.isAttributeSupportedByName('currentHue') && !cluster.isAttributeSupportedByName('colorTemperatureMireds'))
415
+ type = 'XyColorControl';
416
+ else if (cluster.id === ColorControl.Cluster.id && cluster.isAttributeSupportedByName('currentHue') && !cluster.isAttributeSupportedByName('currentX') && !cluster.isAttributeSupportedByName('colorTemperatureMireds'))
417
+ type = 'HueSaturationColorControl';
418
+ else if (cluster.id === ColorControl.Cluster.id && cluster.isAttributeSupportedByName('colorTemperatureMireds') && !cluster.isAttributeSupportedByName('currentHue') && !cluster.isAttributeSupportedByName('currentX'))
419
+ type = 'ColorTemperatureColorControl';
420
+ else
421
+ type = 'CompleteColorControl';
408
422
  if (cluster.id === SwitchCluster.id && cluster.isEventSupportedByName('multiPressComplete'))
409
423
  type = 'MomentarySwitch';
410
424
  if (cluster.id === SwitchCluster.id && cluster.isEventSupportedByName('switchLatched'))
@@ -1622,7 +1636,7 @@ export class MatterbridgeEndpoint extends Endpoint {
1622
1636
  measurementMedium,
1623
1637
  }, {}, {});
1624
1638
  }
1625
- createDefaulPm1ConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1639
+ createDefaultPm1ConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1626
1640
  this.addClusterServer(this.getDefaultPm1ConcentrationMeasurementClusterServer(measuredValue, measurementUnit, measurementMedium));
1627
1641
  }
1628
1642
  getDefaultPm25ConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
@@ -1635,7 +1649,7 @@ export class MatterbridgeEndpoint extends Endpoint {
1635
1649
  measurementMedium,
1636
1650
  }, {}, {});
1637
1651
  }
1638
- createDefaulPm25ConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1652
+ createDefaultPm25ConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1639
1653
  this.addClusterServer(this.getDefaultPm25ConcentrationMeasurementClusterServer(measuredValue, measurementUnit, measurementMedium));
1640
1654
  }
1641
1655
  getDefaultPm10ConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
@@ -1648,7 +1662,7 @@ export class MatterbridgeEndpoint extends Endpoint {
1648
1662
  measurementMedium,
1649
1663
  }, {}, {});
1650
1664
  }
1651
- createDefaulPm10ConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1665
+ createDefaultPm10ConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1652
1666
  this.addClusterServer(this.getDefaultPm10ConcentrationMeasurementClusterServer(measuredValue, measurementUnit, measurementMedium));
1653
1667
  }
1654
1668
  getDefaultOzoneConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ugm3, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
@@ -1661,7 +1675,7 @@ export class MatterbridgeEndpoint extends Endpoint {
1661
1675
  measurementMedium,
1662
1676
  }, {}, {});
1663
1677
  }
1664
- createDefaulOzoneConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ugm3, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1678
+ createDefaultOzoneConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ugm3, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1665
1679
  this.addClusterServer(this.getDefaultOzoneConcentrationMeasurementClusterServer(measuredValue, measurementUnit, measurementMedium));
1666
1680
  }
1667
1681
  getDefaultRadonConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
@@ -1674,7 +1688,7 @@ export class MatterbridgeEndpoint extends Endpoint {
1674
1688
  measurementMedium,
1675
1689
  }, {}, {});
1676
1690
  }
1677
- createDefaulRadonConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1691
+ createDefaultRadonConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ppm, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1678
1692
  this.addClusterServer(this.getDefaultRadonConcentrationMeasurementClusterServer(measuredValue, measurementUnit, measurementMedium));
1679
1693
  }
1680
1694
  getDefaultNitrogenDioxideConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ugm3, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
@@ -1687,7 +1701,7 @@ export class MatterbridgeEndpoint extends Endpoint {
1687
1701
  measurementMedium,
1688
1702
  }, {}, {});
1689
1703
  }
1690
- createDefaulNitrogenDioxideConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ugm3, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1704
+ createDefaultNitrogenDioxideConcentrationMeasurementClusterServer(measuredValue = 0, measurementUnit = ConcentrationMeasurement.MeasurementUnit.Ugm3, measurementMedium = ConcentrationMeasurement.MeasurementMedium.Air) {
1691
1705
  this.addClusterServer(this.getDefaultNitrogenDioxideConcentrationMeasurementClusterServer(measuredValue, measurementUnit, measurementMedium));
1692
1706
  }
1693
1707
  getDefaultFanControlClusterServer(fanMode = FanControl.FanMode.Off) {
@@ -111,10 +111,6 @@ export class PluginManager {
111
111
  this.log.error(`Plugin at ${packageJsonPath} has no main entrypoint in package.json`);
112
112
  return null;
113
113
  }
114
- if (!packageJson.types) {
115
- this.log.error(`Plugin at ${packageJsonPath} has no types in package.json`);
116
- return null;
117
- }
118
114
  const checkForProjectChipPackages = (dependencies) => {
119
115
  return Object.keys(dependencies).filter((pkg) => pkg.startsWith('@project-chip') || pkg.startsWith('@matter'));
120
116
  };
@@ -181,8 +177,6 @@ export class PluginManager {
181
177
  this.log.error(`Plugin ${plg}${plugin.name}${er} is not a module`);
182
178
  if (!packageJson.main)
183
179
  this.log.error(`Plugin ${plg}${plugin.name}${er} has no main entrypoint in package.json`);
184
- if (!packageJson.types)
185
- this.log.error(`Plugin ${plg}${plugin.name}${er} has no types in package.json`);
186
180
  plugin.name = packageJson.name || 'Unknown name';
187
181
  plugin.version = packageJson.version || '1.0.0';
188
182
  plugin.description = packageJson.description || 'Unknown description';
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "matterbridge",
3
- "version": "1.6.5-dev.3",
3
+ "version": "1.6.6-dev.1",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "matterbridge",
9
- "version": "1.6.5-dev.3",
9
+ "version": "1.6.6-dev.1",
10
10
  "license": "Apache-2.0",
11
11
  "dependencies": {
12
12
  "@matter/main": "0.11.8",
@@ -24,7 +24,7 @@
24
24
  "matterbridge": "dist/cli.js"
25
25
  },
26
26
  "engines": {
27
- "node": ">=18.0.0"
27
+ "node": ">=18.0.0 <19.0.0 || >=20.0.0 <21.0.0 || >=22.0.0 <23.0.0"
28
28
  },
29
29
  "funding": {
30
30
  "type": "buymeacoffee",
@@ -978,10 +978,13 @@
978
978
  }
979
979
  },
980
980
  "node_modules/has-proto": {
981
- "version": "1.0.3",
982
- "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz",
983
- "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==",
981
+ "version": "1.1.0",
982
+ "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.1.0.tgz",
983
+ "integrity": "sha512-QLdzI9IIO1Jg7f9GT1gXpPpXArAn6cS31R1eEZqz08Gc+uQ8/XiqHWt17Fiw+2p6oTTIq5GXEpQkAlA88YRl/Q==",
984
984
  "license": "MIT",
985
+ "dependencies": {
986
+ "call-bind": "^1.0.7"
987
+ },
985
988
  "engines": {
986
989
  "node": ">= 0.4"
987
990
  },
@@ -990,9 +993,9 @@
990
993
  }
991
994
  },
992
995
  "node_modules/has-symbols": {
993
- "version": "1.0.3",
994
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
995
- "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
996
+ "version": "1.1.0",
997
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
998
+ "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
996
999
  "license": "MIT",
997
1000
  "engines": {
998
1001
  "node": ">= 0.4"
@@ -1714,9 +1717,9 @@
1714
1717
  }
1715
1718
  },
1716
1719
  "node_modules/streamx": {
1717
- "version": "2.20.2",
1718
- "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.20.2.tgz",
1719
- "integrity": "sha512-aDGDLU+j9tJcUdPGOaHmVF1u/hhI+CsGkT02V3OKlHDV7IukOI+nTWAGkiZEKCO35rWN1wIr4tS7YFr1f4qSvA==",
1720
+ "version": "2.21.0",
1721
+ "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.21.0.tgz",
1722
+ "integrity": "sha512-Qz6MsDZXJ6ur9u+b+4xCG18TluU7PGlRfXVAAjNiGsFrBUt/ioyLkxbFaKJygoPs+/kW4VyBj0bSj89Qu0IGyg==",
1720
1723
  "license": "MIT",
1721
1724
  "dependencies": {
1722
1725
  "fast-fifo": "^1.3.2",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "matterbridge",
3
- "version": "1.6.5-dev.3",
3
+ "version": "1.6.6-dev.1",
4
4
  "description": "Matterbridge plugin manager for Matter",
5
5
  "author": "https://github.com/Luligu",
6
6
  "license": "Apache-2.0",
@@ -46,7 +46,7 @@
46
46
  "matterbridge": "dist/cli.js"
47
47
  },
48
48
  "engines": {
49
- "node": ">=18.0.0"
49
+ "node": ">=18.0.0 <19.0.0 || >=20.0.0 <21.0.0 || >=22.0.0 <23.0.0"
50
50
  },
51
51
  "exports": {
52
52
  ".": {
@@ -8,12 +8,6 @@
8
8
  "sourceMap": false,
9
9
  "removeComments": true
10
10
  },
11
- "include": [
12
- "src/**/*.ts"
13
- ],
14
- "exclude": [
15
- "**/*.spec.ts",
16
- "**/*.test.ts",
17
- "**/__test__/*"
18
- ]
19
- }
11
+ "include": ["src/**/*.ts"],
12
+ "exclude": ["**/*.spec.ts", "**/*.test.ts", "**/__test__/*"]
13
+ }