@matterbridge/core 3.5.6-dev-20260221-7ca0f7a → 3.5.6-dev-20260222-9aca698

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 (65) hide show
  1. package/dist/cli.js +1 -1
  2. package/dist/cliHistory.js +1 -1
  3. package/dist/deviceManager.d.ts +1 -1
  4. package/dist/deviceManager.js +3 -3
  5. package/dist/devices/airConditioner.d.ts +1 -1
  6. package/dist/devices/airConditioner.js +1 -1
  7. package/dist/devices/basicVideoPlayer.d.ts +3 -3
  8. package/dist/devices/basicVideoPlayer.js +4 -4
  9. package/dist/devices/batteryStorage.js +1 -1
  10. package/dist/devices/castingVideoPlayer.d.ts +1 -1
  11. package/dist/devices/castingVideoPlayer.js +2 -2
  12. package/dist/devices/dishwasher.d.ts +3 -3
  13. package/dist/devices/dishwasher.js +4 -4
  14. package/dist/devices/evse.d.ts +3 -3
  15. package/dist/devices/evse.js +5 -5
  16. package/dist/devices/export.d.ts +9 -9
  17. package/dist/devices/export.js +9 -9
  18. package/dist/devices/heatPump.js +1 -1
  19. package/dist/devices/laundryDryer.d.ts +2 -2
  20. package/dist/devices/laundryDryer.js +2 -2
  21. package/dist/devices/laundryWasher.d.ts +2 -2
  22. package/dist/devices/laundryWasher.js +3 -3
  23. package/dist/devices/microwaveOven.d.ts +2 -2
  24. package/dist/devices/microwaveOven.js +4 -4
  25. package/dist/devices/oven.d.ts +3 -3
  26. package/dist/devices/oven.js +4 -4
  27. package/dist/devices/refrigerator.d.ts +1 -1
  28. package/dist/devices/refrigerator.js +3 -3
  29. package/dist/devices/roboticVacuumCleaner.d.ts +6 -6
  30. package/dist/devices/roboticVacuumCleaner.js +8 -8
  31. package/dist/devices/solarPower.js +1 -1
  32. package/dist/devices/speaker.js +1 -1
  33. package/dist/devices/temperatureControl.d.ts +1 -1
  34. package/dist/devices/temperatureControl.js +1 -1
  35. package/dist/devices/waterHeater.d.ts +2 -2
  36. package/dist/devices/waterHeater.js +3 -3
  37. package/dist/export.d.ts +5 -5
  38. package/dist/export.js +5 -5
  39. package/dist/frontend.d.ts +1 -1
  40. package/dist/frontend.js +8 -8
  41. package/dist/helpers.js +3 -3
  42. package/dist/jestutils/jestHelpers.d.ts +13 -5
  43. package/dist/jestutils/jestHelpers.js +65 -7
  44. package/dist/matter/endpoints.d.ts +1 -1
  45. package/dist/matter/endpoints.js +1 -1
  46. package/dist/matterNode.d.ts +4 -4
  47. package/dist/matterNode.js +14 -14
  48. package/dist/matterbridge.d.ts +7 -7
  49. package/dist/matterbridge.js +14 -14
  50. package/dist/matterbridgeAccessoryPlatform.d.ts +1 -1
  51. package/dist/matterbridgeBehaviors.d.ts +28 -28
  52. package/dist/matterbridgeBehaviors.js +27 -27
  53. package/dist/matterbridgeDeviceTypes.js +2 -2
  54. package/dist/matterbridgeDynamicPlatform.d.ts +1 -1
  55. package/dist/matterbridgeEndpoint.d.ts +17 -17
  56. package/dist/matterbridgeEndpoint.js +50 -50
  57. package/dist/matterbridgeEndpointHelpers.d.ts +14 -14
  58. package/dist/matterbridgeEndpointHelpers.js +65 -65
  59. package/dist/matterbridgeEndpointTypes.d.ts +3 -3
  60. package/dist/matterbridgePlatform.d.ts +3 -3
  61. package/dist/matterbridgePlatform.js +5 -5
  62. package/dist/pluginManager.d.ts +4 -4
  63. package/dist/pluginManager.js +3 -3
  64. package/dist/spawn.js +2 -2
  65. package/package.json +5 -5
package/dist/cli.js CHANGED
@@ -1,7 +1,7 @@
1
1
  if (process.argv.includes('--loader') || process.argv.includes('-loader'))
2
2
  console.log('\u001B[32mCli loaded.\u001B[40;0m');
3
+ import { formatBytes, formatUptime, hasAnyParameter, hasParameter, inspectError, Inspector, Tracker } from '@matterbridge/utils';
3
4
  import { AnsiLogger } from 'node-ansi-logger';
4
- import { formatBytes, formatUptime, hasAnyParameter, hasParameter, Inspector, inspectError, Tracker } from '@matterbridge/utils';
5
5
  import { cliEmitter } from './cliEmitter.js';
6
6
  export let instance;
7
7
  export const tracker = new Tracker('Cli', false, false);
@@ -1,8 +1,8 @@
1
1
  if (process.argv.includes('--loader') || process.argv.includes('-loader'))
2
2
  console.log('\u001B[32mCli history loaded.\u001B[40;0m');
3
3
  import { writeFileSync } from 'node:fs';
4
- import path from 'node:path';
5
4
  import os from 'node:os';
5
+ import path from 'node:path';
6
6
  import { Tracker } from '@matterbridge/utils';
7
7
  export function generateHistoryPage(options = {}) {
8
8
  const pageTitle = options.pageTitle ?? 'Matterbridge CPU & Memory History';
@@ -1,5 +1,5 @@
1
- import { LogLevel } from 'node-ansi-logger';
2
1
  import type { BaseDevice } from '@matterbridge/types';
2
+ import { LogLevel } from 'node-ansi-logger';
3
3
  import type { MatterbridgeEndpoint } from './matterbridgeEndpoint.js';
4
4
  export declare function toBaseDevice(device: MatterbridgeEndpoint | BaseDevice): BaseDevice;
5
5
  export declare class DeviceManager {
@@ -1,9 +1,9 @@
1
1
  if (process.argv.includes('--loader') || process.argv.includes('-loader'))
2
2
  console.log('\u001B[32mDevice Manager loaded.\u001B[40;0m');
3
- import { AnsiLogger, BLUE, CYAN, db, debugStringify, er } from 'node-ansi-logger';
4
- import { hasParameter } from '@matterbridge/utils';
5
- import { dev } from '@matterbridge/types';
6
3
  import { BroadcastServer } from '@matterbridge/thread';
4
+ import { dev } from '@matterbridge/types';
5
+ import { hasParameter } from '@matterbridge/utils';
6
+ import { AnsiLogger, BLUE, CYAN, db, debugStringify, er } from 'node-ansi-logger';
7
7
  export function toBaseDevice(device) {
8
8
  return {
9
9
  mode: device.mode,
@@ -1,5 +1,5 @@
1
- import { ThermostatUserInterfaceConfiguration } from '@matter/types/clusters/thermostat-user-interface-configuration';
2
1
  import { FanControl } from '@matter/types/clusters/fan-control';
2
+ import { ThermostatUserInterfaceConfiguration } from '@matter/types/clusters/thermostat-user-interface-configuration';
3
3
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
4
4
  export interface AirConditionerOptions {
5
5
  localTemperature?: number;
@@ -1,5 +1,5 @@
1
- import { ThermostatUserInterfaceConfiguration } from '@matter/types/clusters/thermostat-user-interface-configuration';
2
1
  import { FanControl } from '@matter/types/clusters/fan-control';
2
+ import { ThermostatUserInterfaceConfiguration } from '@matter/types/clusters/thermostat-user-interface-configuration';
3
3
  import { airConditioner, powerSource } from '../matterbridgeDeviceTypes.js';
4
4
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
5
5
  export class AirConditioner extends MatterbridgeEndpoint {
@@ -1,8 +1,8 @@
1
1
  import { MaybePromise } from '@matter/general';
2
- import { MediaPlayback } from '@matter/types/clusters/media-playback';
3
- import { KeypadInput } from '@matter/types/clusters/keypad-input';
4
- import { MediaPlaybackServer } from '@matter/node/behaviors/media-playback';
5
2
  import { KeypadInputServer } from '@matter/node/behaviors/keypad-input';
3
+ import { MediaPlaybackServer } from '@matter/node/behaviors/media-playback';
4
+ import { KeypadInput } from '@matter/types/clusters/keypad-input';
5
+ import { MediaPlayback } from '@matter/types/clusters/media-playback';
6
6
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
7
7
  export interface BasicVideoPlayerOptions {
8
8
  onOff?: boolean;
@@ -1,10 +1,10 @@
1
- import { MediaPlayback } from '@matter/types/clusters/media-playback';
2
- import { KeypadInput } from '@matter/types/clusters/keypad-input';
3
- import { MediaPlaybackServer } from '@matter/node/behaviors/media-playback';
4
1
  import { KeypadInputServer } from '@matter/node/behaviors/keypad-input';
2
+ import { MediaPlaybackServer } from '@matter/node/behaviors/media-playback';
3
+ import { KeypadInput } from '@matter/types/clusters/keypad-input';
4
+ import { MediaPlayback } from '@matter/types/clusters/media-playback';
5
+ import { MatterbridgeOnOffServer, MatterbridgeServer } from '../matterbridgeBehaviors.js';
5
6
  import { basicVideoPlayer, powerSource } from '../matterbridgeDeviceTypes.js';
6
7
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
7
- import { MatterbridgeOnOffServer, MatterbridgeServer } from '../matterbridgeBehaviors.js';
8
8
  export class BasicVideoPlayer extends MatterbridgeEndpoint {
9
9
  constructor(name, serial, options = {}) {
10
10
  const { onOff = false, playbackState = MediaPlayback.PlaybackState.NotPlaying } = options;
@@ -1,8 +1,8 @@
1
1
  import { PowerSourceTag } from '@matter/node';
2
2
  import { DeviceEnergyManagement } from '@matter/types/clusters/device-energy-management';
3
3
  import { PowerSource } from '@matter/types/clusters/power-source';
4
+ import { batteryStorage, deviceEnergyManagement, electricalSensor, powerSource } from '../matterbridgeDeviceTypes.js';
4
5
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
5
- import { deviceEnergyManagement, electricalSensor, batteryStorage, powerSource } from '../matterbridgeDeviceTypes.js';
6
6
  export class BatteryStorage extends MatterbridgeEndpoint {
7
7
  constructor(name, serial, batPercentRemaining = 100, batChargeLevel = PowerSource.BatChargeLevel.Ok, voltage = null, current = null, power = null, energyImported = null, energyExported = null, absMinPower = 0, absMaxPower = 0) {
8
8
  super([batteryStorage, electricalSensor, deviceEnergyManagement], { id: `${name.replaceAll(' ', '')}-${serial.replaceAll(' ', '')}` });
@@ -1,5 +1,5 @@
1
- import { MediaPlayback } from '@matter/types/clusters/media-playback';
2
1
  import { ContentLauncherServer } from '@matter/node/behaviors/content-launcher';
2
+ import { MediaPlayback } from '@matter/types/clusters/media-playback';
3
3
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
4
4
  export interface CastingVideoPlayerOptions {
5
5
  onOff?: boolean;
@@ -1,8 +1,8 @@
1
- import { MediaPlayback } from '@matter/types/clusters/media-playback';
2
1
  import { ContentLauncherServer } from '@matter/node/behaviors/content-launcher';
2
+ import { MediaPlayback } from '@matter/types/clusters/media-playback';
3
+ import { MatterbridgeServer } from '../matterbridgeBehaviors.js';
3
4
  import { castingVideoPlayer, powerSource } from '../matterbridgeDeviceTypes.js';
4
5
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
5
- import { MatterbridgeServer } from '../matterbridgeBehaviors.js';
6
6
  import { MatterbridgeKeypadInputServer, MatterbridgeMediaPlaybackServer } from './basicVideoPlayer.js';
7
7
  export class CastingVideoPlayer extends MatterbridgeEndpoint {
8
8
  constructor(name, serial, options = {}) {
@@ -1,8 +1,8 @@
1
1
  import { MaybePromise } from '@matter/general';
2
- import { OperationalState } from '@matter/types/clusters/operational-state';
3
- import { ModeBase } from '@matter/types/clusters/mode-base';
4
- import { DishwasherMode } from '@matter/types/clusters/dishwasher-mode';
5
2
  import { DishwasherModeServer } from '@matter/node/behaviors/dishwasher-mode';
3
+ import { DishwasherMode } from '@matter/types/clusters/dishwasher-mode';
4
+ import { ModeBase } from '@matter/types/clusters/mode-base';
5
+ import { OperationalState } from '@matter/types/clusters/operational-state';
6
6
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
7
7
  export declare class Dishwasher extends MatterbridgeEndpoint {
8
8
  constructor(name: string, serial: string, currentMode?: number, supportedModes?: DishwasherMode.ModeOption[], selectedTemperatureLevel?: number, supportedTemperatureLevels?: string[], temperatureSetpoint?: number, minTemperature?: number, maxTemperature?: number, step?: number, operationalState?: OperationalState.OperationalStateEnum);
@@ -1,10 +1,10 @@
1
- import { ModeBase } from '@matter/types/clusters/mode-base';
2
- import { DishwasherMode } from '@matter/types/clusters/dishwasher-mode';
3
- import { DishwasherModeServer } from '@matter/node/behaviors/dishwasher-mode';
4
1
  import { DishwasherAlarmServer } from '@matter/node/behaviors/dishwasher-alarm';
2
+ import { DishwasherModeServer } from '@matter/node/behaviors/dishwasher-mode';
3
+ import { DishwasherMode } from '@matter/types/clusters/dishwasher-mode';
4
+ import { ModeBase } from '@matter/types/clusters/mode-base';
5
+ import { MatterbridgeOnOffServer, MatterbridgeServer } from '../matterbridgeBehaviors.js';
5
6
  import { dishwasher, powerSource } from '../matterbridgeDeviceTypes.js';
6
7
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
7
- import { MatterbridgeOnOffServer, MatterbridgeServer } from '../matterbridgeBehaviors.js';
8
8
  import { createLevelTemperatureControlClusterServer, createNumberTemperatureControlClusterServer } from './temperatureControl.js';
9
9
  export class Dishwasher extends MatterbridgeEndpoint {
10
10
  constructor(name, serial, currentMode, supportedModes, selectedTemperatureLevel, supportedTemperatureLevels, temperatureSetpoint, minTemperature, maxTemperature, step, operationalState) {
@@ -1,9 +1,9 @@
1
1
  import { MaybePromise } from '@matter/general';
2
- import { EnergyEvseMode } from '@matter/types/clusters/energy-evse-mode';
3
- import { EnergyEvse } from '@matter/types/clusters/energy-evse';
4
- import { ModeBase } from '@matter/types/clusters/mode-base';
5
2
  import { EnergyEvseServer } from '@matter/node/behaviors/energy-evse';
6
3
  import { EnergyEvseModeServer } from '@matter/node/behaviors/energy-evse-mode';
4
+ import { EnergyEvse } from '@matter/types/clusters/energy-evse';
5
+ import { EnergyEvseMode } from '@matter/types/clusters/energy-evse-mode';
6
+ import { ModeBase } from '@matter/types/clusters/mode-base';
7
7
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
8
8
  export declare class Evse extends MatterbridgeEndpoint {
9
9
  constructor(name: string, serial: string, currentMode?: number, supportedModes?: EnergyEvseMode.ModeOption[], state?: EnergyEvse.State, supplyState?: EnergyEvse.SupplyState, faultState?: EnergyEvse.FaultState, voltage?: number | bigint | null, current?: number | bigint | null, power?: number | bigint | null, energy?: number | bigint | null, absMinPower?: number, absMaxPower?: number);
@@ -1,12 +1,12 @@
1
- import { EnergyEvseMode } from '@matter/types/clusters/energy-evse-mode';
2
- import { EnergyEvse } from '@matter/types/clusters/energy-evse';
3
- import { DeviceEnergyManagement } from '@matter/types/clusters/device-energy-management';
4
- import { ModeBase } from '@matter/types/clusters/mode-base';
5
1
  import { EnergyEvseServer } from '@matter/node/behaviors/energy-evse';
6
2
  import { EnergyEvseModeServer } from '@matter/node/behaviors/energy-evse-mode';
7
- import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
3
+ import { DeviceEnergyManagement } from '@matter/types/clusters/device-energy-management';
4
+ import { EnergyEvse } from '@matter/types/clusters/energy-evse';
5
+ import { EnergyEvseMode } from '@matter/types/clusters/energy-evse-mode';
6
+ import { ModeBase } from '@matter/types/clusters/mode-base';
8
7
  import { MatterbridgeServer } from '../matterbridgeBehaviors.js';
9
8
  import { deviceEnergyManagement, electricalSensor, evse, powerSource } from '../matterbridgeDeviceTypes.js';
9
+ import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
10
10
  export class Evse extends MatterbridgeEndpoint {
11
11
  constructor(name, serial, currentMode, supportedModes, state, supplyState, faultState, voltage = null, current = null, power = null, energy = null, absMinPower, absMaxPower) {
12
12
  super([evse, powerSource, electricalSensor, deviceEnergyManagement], { id: `${name.replaceAll(' ', '')}-${serial.replaceAll(' ', '')}` });
@@ -1,18 +1,18 @@
1
- export * from './speaker.js';
2
1
  export * from './basicVideoPlayer.js';
3
2
  export * from './castingVideoPlayer.js';
3
+ export * from './speaker.js';
4
4
  export * from './roboticVacuumCleaner.js';
5
- export * from './laundryWasher.js';
6
- export * from './laundryDryer.js';
7
- export * from './extractorHood.js';
5
+ export * from './airConditioner.js';
6
+ export * from './cooktop.js';
8
7
  export * from './dishwasher.js';
8
+ export * from './extractorHood.js';
9
+ export * from './laundryDryer.js';
10
+ export * from './laundryWasher.js';
9
11
  export * from './microwaveOven.js';
10
12
  export * from './oven.js';
11
- export * from './cooktop.js';
12
13
  export * from './refrigerator.js';
13
- export * from './airConditioner.js';
14
- export * from './waterHeater.js';
15
- export * from './evse.js';
16
- export * from './solarPower.js';
17
14
  export * from './batteryStorage.js';
15
+ export * from './evse.js';
18
16
  export * from './heatPump.js';
17
+ export * from './solarPower.js';
18
+ export * from './waterHeater.js';
@@ -1,18 +1,18 @@
1
- export * from './speaker.js';
2
1
  export * from './basicVideoPlayer.js';
3
2
  export * from './castingVideoPlayer.js';
3
+ export * from './speaker.js';
4
4
  export * from './roboticVacuumCleaner.js';
5
- export * from './laundryWasher.js';
6
- export * from './laundryDryer.js';
7
- export * from './extractorHood.js';
5
+ export * from './airConditioner.js';
6
+ export * from './cooktop.js';
8
7
  export * from './dishwasher.js';
8
+ export * from './extractorHood.js';
9
+ export * from './laundryDryer.js';
10
+ export * from './laundryWasher.js';
9
11
  export * from './microwaveOven.js';
10
12
  export * from './oven.js';
11
- export * from './cooktop.js';
12
13
  export * from './refrigerator.js';
13
- export * from './airConditioner.js';
14
- export * from './waterHeater.js';
15
- export * from './evse.js';
16
- export * from './solarPower.js';
17
14
  export * from './batteryStorage.js';
15
+ export * from './evse.js';
18
16
  export * from './heatPump.js';
17
+ export * from './solarPower.js';
18
+ export * from './waterHeater.js';
@@ -1,7 +1,7 @@
1
1
  import { NumberTag, PowerSourceTag } from '@matter/node';
2
2
  import { DeviceEnergyManagement } from '@matter/types/clusters/device-energy-management';
3
+ import { deviceEnergyManagement, electricalSensor, heatPump, powerSource, temperatureSensor, thermostatDevice } from '../matterbridgeDeviceTypes.js';
3
4
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
4
- import { deviceEnergyManagement, electricalSensor, powerSource, heatPump, temperatureSensor, thermostatDevice } from '../matterbridgeDeviceTypes.js';
5
5
  export class HeatPump extends MatterbridgeEndpoint {
6
6
  constructor(name, serial, voltage = null, current = null, power = null, energyImported = null, absMinPower = 0, absMaxPower = 0) {
7
7
  super([heatPump, powerSource, electricalSensor, deviceEnergyManagement], {
@@ -1,6 +1,6 @@
1
- import { OperationalState } from '@matter/types/clusters/operational-state';
2
- import { LaundryWasherMode } from '@matter/types/clusters/laundry-washer-mode';
3
1
  import { LaundryDryerControls } from '@matter/types/clusters/laundry-dryer-controls';
2
+ import { LaundryWasherMode } from '@matter/types/clusters/laundry-washer-mode';
3
+ import { OperationalState } from '@matter/types/clusters/operational-state';
4
4
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
5
5
  export declare class LaundryDryer extends MatterbridgeEndpoint {
6
6
  constructor(name: string, serial: string, currentMode?: number, supportedModes?: LaundryWasherMode.ModeOption[], selectedTemperatureLevel?: number, supportedTemperatureLevels?: string[], temperatureSetpoint?: number, minTemperature?: number, maxTemperature?: number, step?: number, operationalState?: OperationalState.OperationalStateEnum);
@@ -1,6 +1,6 @@
1
- import { LaundryWasherMode } from '@matter/types/clusters/laundry-washer-mode';
2
- import { LaundryDryerControls } from '@matter/types/clusters/laundry-dryer-controls';
3
1
  import { LaundryDryerControlsServer } from '@matter/node/behaviors/laundry-dryer-controls';
2
+ import { LaundryDryerControls } from '@matter/types/clusters/laundry-dryer-controls';
3
+ import { LaundryWasherMode } from '@matter/types/clusters/laundry-washer-mode';
4
4
  import { laundryDryer, powerSource } from '../matterbridgeDeviceTypes.js';
5
5
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
6
6
  import { MatterbridgeLaundryWasherModeServer } from './laundryWasher.js';
@@ -1,9 +1,9 @@
1
1
  import { MaybePromise } from '@matter/general';
2
- import { OperationalState } from '@matter/types/clusters/operational-state';
2
+ import { LaundryWasherModeServer } from '@matter/node/behaviors/laundry-washer-mode';
3
3
  import { LaundryWasherControls } from '@matter/types/clusters/laundry-washer-controls';
4
4
  import { LaundryWasherMode } from '@matter/types/clusters/laundry-washer-mode';
5
5
  import { ModeBase } from '@matter/types/clusters/mode-base';
6
- import { LaundryWasherModeServer } from '@matter/node/behaviors/laundry-washer-mode';
6
+ import { OperationalState } from '@matter/types/clusters/operational-state';
7
7
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
8
8
  export declare class LaundryWasher extends MatterbridgeEndpoint {
9
9
  constructor(name: string, serial: string, currentMode?: number, supportedModes?: LaundryWasherMode.ModeOption[], spinSpeedCurrent?: number, spinSpeeds?: string[], numberOfRinses?: LaundryWasherControls.NumberOfRinses, supportedRinses?: LaundryWasherControls.NumberOfRinses[], selectedTemperatureLevel?: number, supportedTemperatureLevels?: string[], temperatureSetpoint?: number, minTemperature?: number, maxTemperature?: number, step?: number, operationalState?: OperationalState.OperationalStateEnum);
@@ -1,11 +1,11 @@
1
+ import { LaundryWasherControlsServer } from '@matter/node/behaviors/laundry-washer-controls';
2
+ import { LaundryWasherModeServer } from '@matter/node/behaviors/laundry-washer-mode';
1
3
  import { LaundryWasherControls } from '@matter/types/clusters/laundry-washer-controls';
2
4
  import { LaundryWasherMode } from '@matter/types/clusters/laundry-washer-mode';
3
5
  import { ModeBase } from '@matter/types/clusters/mode-base';
4
- import { LaundryWasherModeServer } from '@matter/node/behaviors/laundry-washer-mode';
5
- import { LaundryWasherControlsServer } from '@matter/node/behaviors/laundry-washer-controls';
6
+ import { MatterbridgeOnOffServer, MatterbridgeServer } from '../matterbridgeBehaviors.js';
6
7
  import { laundryWasher, powerSource } from '../matterbridgeDeviceTypes.js';
7
8
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
8
- import { MatterbridgeOnOffServer, MatterbridgeServer } from '../matterbridgeBehaviors.js';
9
9
  import { createLevelTemperatureControlClusterServer, createNumberTemperatureControlClusterServer } from './temperatureControl.js';
10
10
  export class LaundryWasher extends MatterbridgeEndpoint {
11
11
  constructor(name, serial, currentMode, supportedModes, spinSpeedCurrent, spinSpeeds, numberOfRinses, supportedRinses, selectedTemperatureLevel, supportedTemperatureLevels, temperatureSetpoint, minTemperature, maxTemperature, step, operationalState) {
@@ -1,7 +1,7 @@
1
1
  import { MaybePromise } from '@matter/general';
2
- import { MicrowaveOvenMode } from '@matter/types/clusters/microwave-oven-mode';
3
- import { MicrowaveOvenControl } from '@matter/types/clusters/microwave-oven-control';
4
2
  import { MicrowaveOvenControlServer } from '@matter/node/behaviors/microwave-oven-control';
3
+ import { MicrowaveOvenControl } from '@matter/types/clusters/microwave-oven-control';
4
+ import { MicrowaveOvenMode } from '@matter/types/clusters/microwave-oven-mode';
5
5
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
6
6
  export declare class MicrowaveOven extends MatterbridgeEndpoint {
7
7
  constructor(name: string, serial: string, currentMode?: number, supportedModes?: MicrowaveOvenMode.ModeOption[], selectedWattIndex?: number, supportedWatts?: number[], cookTime?: number, maxCookTime?: number);
@@ -1,11 +1,11 @@
1
- import { OperationalState } from '@matter/types/clusters/operational-state';
2
- import { MicrowaveOvenMode } from '@matter/types/clusters/microwave-oven-mode';
3
- import { MicrowaveOvenControl } from '@matter/types/clusters/microwave-oven-control';
4
1
  import { MicrowaveOvenControlServer } from '@matter/node/behaviors/microwave-oven-control';
5
2
  import { MicrowaveOvenModeServer } from '@matter/node/behaviors/microwave-oven-mode';
3
+ import { MicrowaveOvenControl } from '@matter/types/clusters/microwave-oven-control';
4
+ import { MicrowaveOvenMode } from '@matter/types/clusters/microwave-oven-mode';
5
+ import { OperationalState } from '@matter/types/clusters/operational-state';
6
+ import { MatterbridgeOperationalStateServer, MatterbridgeServer } from '../matterbridgeBehaviors.js';
6
7
  import { microwaveOven, powerSource } from '../matterbridgeDeviceTypes.js';
7
8
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
8
- import { MatterbridgeServer, MatterbridgeOperationalStateServer } from '../matterbridgeBehaviors.js';
9
9
  export class MicrowaveOven extends MatterbridgeEndpoint {
10
10
  constructor(name, serial, currentMode = 1, supportedModes = [
11
11
  { label: 'Auto', mode: 1, modeTags: [{ value: MicrowaveOvenMode.ModeTag.Auto }] },
@@ -1,10 +1,10 @@
1
1
  import { MaybePromise } from '@matter/general';
2
+ import { OvenCavityOperationalStateServer } from '@matter/node/behaviors/oven-cavity-operational-state';
3
+ import { OvenModeServer } from '@matter/node/behaviors/oven-mode';
2
4
  import { Semtag } from '@matter/types';
3
5
  import { ModeBase } from '@matter/types/clusters/mode-base';
4
- import { OvenMode } from '@matter/types/clusters/oven-mode';
5
6
  import { OperationalState } from '@matter/types/clusters/operational-state';
6
- import { OvenModeServer } from '@matter/node/behaviors/oven-mode';
7
- import { OvenCavityOperationalStateServer } from '@matter/node/behaviors/oven-cavity-operational-state';
7
+ import { OvenMode } from '@matter/types/clusters/oven-mode';
8
8
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
9
9
  export declare class Oven extends MatterbridgeEndpoint {
10
10
  constructor(name: string, serial: string);
@@ -1,11 +1,11 @@
1
+ import { OvenCavityOperationalStateServer } from '@matter/node/behaviors/oven-cavity-operational-state';
2
+ import { OvenModeServer } from '@matter/node/behaviors/oven-mode';
1
3
  import { ModeBase } from '@matter/types/clusters/mode-base';
2
- import { OvenMode } from '@matter/types/clusters/oven-mode';
3
4
  import { OperationalState } from '@matter/types/clusters/operational-state';
4
- import { OvenModeServer } from '@matter/node/behaviors/oven-mode';
5
- import { OvenCavityOperationalStateServer } from '@matter/node/behaviors/oven-cavity-operational-state';
5
+ import { OvenMode } from '@matter/types/clusters/oven-mode';
6
+ import { MatterbridgeServer } from '../matterbridgeBehaviors.js';
6
7
  import { oven, powerSource, temperatureControlledCabinetHeater } from '../matterbridgeDeviceTypes.js';
7
8
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
8
- import { MatterbridgeServer } from '../matterbridgeBehaviors.js';
9
9
  import { createLevelTemperatureControlClusterServer } from './temperatureControl.js';
10
10
  export class Oven extends MatterbridgeEndpoint {
11
11
  constructor(name, serial) {
@@ -1,8 +1,8 @@
1
1
  import { MaybePromise } from '@matter/general';
2
+ import { RefrigeratorAndTemperatureControlledCabinetModeServer } from '@matter/node/behaviors/refrigerator-and-temperature-controlled-cabinet-mode';
2
3
  import { Semtag } from '@matter/types';
3
4
  import { ModeBase } from '@matter/types/clusters/mode-base';
4
5
  import { RefrigeratorAndTemperatureControlledCabinetMode } from '@matter/types/clusters/refrigerator-and-temperature-controlled-cabinet-mode';
5
- import { RefrigeratorAndTemperatureControlledCabinetModeServer } from '@matter/node/behaviors/refrigerator-and-temperature-controlled-cabinet-mode';
6
6
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
7
7
  export declare class Refrigerator extends MatterbridgeEndpoint {
8
8
  constructor(name: string, serial: string);
@@ -1,10 +1,10 @@
1
+ import { RefrigeratorAlarmServer } from '@matter/node/behaviors/refrigerator-alarm';
2
+ import { RefrigeratorAndTemperatureControlledCabinetModeServer } from '@matter/node/behaviors/refrigerator-and-temperature-controlled-cabinet-mode';
1
3
  import { ModeBase } from '@matter/types/clusters/mode-base';
2
4
  import { RefrigeratorAndTemperatureControlledCabinetMode } from '@matter/types/clusters/refrigerator-and-temperature-controlled-cabinet-mode';
3
- import { RefrigeratorAndTemperatureControlledCabinetModeServer } from '@matter/node/behaviors/refrigerator-and-temperature-controlled-cabinet-mode';
4
- import { RefrigeratorAlarmServer } from '@matter/node/behaviors/refrigerator-alarm';
5
+ import { MatterbridgeServer } from '../matterbridgeBehaviors.js';
5
6
  import { powerSource, refrigerator, temperatureControlledCabinetCooler } from '../matterbridgeDeviceTypes.js';
6
7
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
7
- import { MatterbridgeServer } from '../matterbridgeBehaviors.js';
8
8
  import { createLevelTemperatureControlClusterServer } from './temperatureControl.js';
9
9
  export class Refrigerator extends MatterbridgeEndpoint {
10
10
  constructor(name, serial) {
@@ -1,13 +1,13 @@
1
1
  import { MaybePromise } from '@matter/general';
2
- import { RvcRunMode } from '@matter/types/clusters/rvc-run-mode';
2
+ import { RvcCleanModeServer } from '@matter/node/behaviors/rvc-clean-mode';
3
+ import { RvcOperationalStateServer } from '@matter/node/behaviors/rvc-operational-state';
4
+ import { RvcRunModeServer } from '@matter/node/behaviors/rvc-run-mode';
5
+ import { ModeBase } from '@matter/types/clusters/mode-base';
6
+ import { OperationalState } from '@matter/types/clusters/operational-state';
3
7
  import { RvcCleanMode } from '@matter/types/clusters/rvc-clean-mode';
4
8
  import { RvcOperationalState } from '@matter/types/clusters/rvc-operational-state';
9
+ import { RvcRunMode } from '@matter/types/clusters/rvc-run-mode';
5
10
  import { ServiceArea } from '@matter/types/clusters/service-area';
6
- import { ModeBase } from '@matter/types/clusters/mode-base';
7
- import { OperationalState } from '@matter/types/clusters/operational-state';
8
- import { RvcRunModeServer } from '@matter/node/behaviors/rvc-run-mode';
9
- import { RvcOperationalStateServer } from '@matter/node/behaviors/rvc-operational-state';
10
- import { RvcCleanModeServer } from '@matter/node/behaviors/rvc-clean-mode';
11
11
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
12
12
  export declare class RoboticVacuumCleaner extends MatterbridgeEndpoint {
13
13
  constructor(name: string, serial: string, mode?: 'server' | 'matter' | undefined, currentRunMode?: number, supportedRunModes?: RvcRunMode.ModeOption[], currentCleanMode?: number, supportedCleanModes?: RvcCleanMode.ModeOption[], currentPhase?: number | null, phaseList?: string[] | null, operationalState?: RvcOperationalState.OperationalState, operationalStateList?: RvcOperationalState.OperationalStateStruct[], supportedAreas?: ServiceArea.Area[], selectedAreas?: number[], currentArea?: number, supportedMaps?: ServiceArea.Map[]);
@@ -1,17 +1,17 @@
1
1
  import { AreaNamespaceTag } from '@matter/node';
2
+ import { RvcCleanModeServer } from '@matter/node/behaviors/rvc-clean-mode';
3
+ import { RvcOperationalStateServer } from '@matter/node/behaviors/rvc-operational-state';
4
+ import { RvcRunModeServer } from '@matter/node/behaviors/rvc-run-mode';
5
+ import { ModeBase } from '@matter/types/clusters/mode-base';
6
+ import { OperationalState } from '@matter/types/clusters/operational-state';
2
7
  import { PowerSource } from '@matter/types/clusters/power-source';
3
- import { RvcRunMode } from '@matter/types/clusters/rvc-run-mode';
4
8
  import { RvcCleanMode } from '@matter/types/clusters/rvc-clean-mode';
5
9
  import { RvcOperationalState } from '@matter/types/clusters/rvc-operational-state';
10
+ import { RvcRunMode } from '@matter/types/clusters/rvc-run-mode';
6
11
  import { ServiceArea } from '@matter/types/clusters/service-area';
7
- import { ModeBase } from '@matter/types/clusters/mode-base';
8
- import { OperationalState } from '@matter/types/clusters/operational-state';
9
- import { RvcRunModeServer } from '@matter/node/behaviors/rvc-run-mode';
10
- import { RvcOperationalStateServer } from '@matter/node/behaviors/rvc-operational-state';
11
- import { RvcCleanModeServer } from '@matter/node/behaviors/rvc-clean-mode';
12
- import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
13
- import { powerSource, roboticVacuumCleaner } from '../matterbridgeDeviceTypes.js';
14
12
  import { MatterbridgeServer, MatterbridgeServiceAreaServer } from '../matterbridgeBehaviors.js';
13
+ import { powerSource, roboticVacuumCleaner } from '../matterbridgeDeviceTypes.js';
14
+ import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
15
15
  export class RoboticVacuumCleaner extends MatterbridgeEndpoint {
16
16
  constructor(name, serial, mode = undefined, currentRunMode, supportedRunModes, currentCleanMode, supportedCleanModes, currentPhase = null, phaseList = null, operationalState, operationalStateList, supportedAreas, selectedAreas, currentArea, supportedMaps) {
17
17
  super([roboticVacuumCleaner, powerSource], { id: `${name.replaceAll(' ', '')}-${serial.replaceAll(' ', '')}`, mode });
@@ -1,7 +1,7 @@
1
1
  import { PowerSourceTag } from '@matter/node';
2
2
  import { DeviceEnergyManagement } from '@matter/types/clusters/device-energy-management';
3
+ import { deviceEnergyManagement, electricalSensor, powerSource, solarPower } from '../matterbridgeDeviceTypes.js';
3
4
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
4
- import { deviceEnergyManagement, electricalSensor, solarPower, powerSource } from '../matterbridgeDeviceTypes.js';
5
5
  export class SolarPower extends MatterbridgeEndpoint {
6
6
  constructor(name, serial, voltage = null, current = null, power = null, energyExported = null, absMinPower = 0, absMaxPower = 0) {
7
7
  super([solarPower, powerSource, electricalSensor, deviceEnergyManagement], {
@@ -1,5 +1,5 @@
1
- import { OnOff } from '@matter/types/clusters/on-off';
2
1
  import { LevelControl } from '@matter/types/clusters/level-control';
2
+ import { OnOff } from '@matter/types/clusters/on-off';
3
3
  import { speakerDevice } from '../matterbridgeDeviceTypes.js';
4
4
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
5
5
  export class Speaker extends MatterbridgeEndpoint {
@@ -1,6 +1,6 @@
1
1
  import { MaybePromise } from '@matter/general';
2
- import { TemperatureControl } from '@matter/types/clusters/temperature-control';
3
2
  import { TemperatureControlServer } from '@matter/node/behaviors/temperature-control';
3
+ import { TemperatureControl } from '@matter/types/clusters/temperature-control';
4
4
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
5
5
  export declare function createLevelTemperatureControlClusterServer(endpoint: MatterbridgeEndpoint, selectedTemperatureLevel?: number, supportedTemperatureLevels?: string[]): MatterbridgeEndpoint;
6
6
  export declare function createNumberTemperatureControlClusterServer(endpoint: MatterbridgeEndpoint, temperatureSetpoint?: number, minTemperature?: number, maxTemperature?: number, step?: number): MatterbridgeEndpoint;
@@ -1,5 +1,5 @@
1
- import { TemperatureControl } from '@matter/types/clusters/temperature-control';
2
1
  import { TemperatureControlServer } from '@matter/node/behaviors/temperature-control';
2
+ import { TemperatureControl } from '@matter/types/clusters/temperature-control';
3
3
  import { MatterbridgeServer } from '../matterbridgeBehaviors.js';
4
4
  export function createLevelTemperatureControlClusterServer(endpoint, selectedTemperatureLevel = 1, supportedTemperatureLevels = ['Cold', 'Warm', 'Hot', '30°', '40°', '60°', '80°']) {
5
5
  endpoint.behaviors.require(MatterbridgeLevelTemperatureControlServer.with(TemperatureControl.Feature.TemperatureLevel), {
@@ -1,9 +1,9 @@
1
1
  import { MaybePromise } from '@matter/general';
2
+ import { WaterHeaterManagementServer } from '@matter/node/behaviors/water-heater-management';
3
+ import { WaterHeaterModeServer } from '@matter/node/behaviors/water-heater-mode';
2
4
  import { ModeBase } from '@matter/types/clusters/mode-base';
3
5
  import { WaterHeaterManagement } from '@matter/types/clusters/water-heater-management';
4
6
  import { WaterHeaterMode } from '@matter/types/clusters/water-heater-mode';
5
- import { WaterHeaterManagementServer } from '@matter/node/behaviors/water-heater-management';
6
- import { WaterHeaterModeServer } from '@matter/node/behaviors/water-heater-mode';
7
7
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
8
8
  export declare class WaterHeater extends MatterbridgeEndpoint {
9
9
  constructor(name: string, serial: string, waterTemperature?: number, targetWaterTemperature?: number, minHeatSetpointLimit?: number, maxHeatSetpointLimit?: number, heaterTypes?: {
@@ -1,9 +1,9 @@
1
+ import { WaterHeaterManagementServer } from '@matter/node/behaviors/water-heater-management';
2
+ import { WaterHeaterModeServer } from '@matter/node/behaviors/water-heater-mode';
3
+ import { DeviceEnergyManagement } from '@matter/types/clusters/device-energy-management';
1
4
  import { ModeBase } from '@matter/types/clusters/mode-base';
2
5
  import { WaterHeaterManagement } from '@matter/types/clusters/water-heater-management';
3
6
  import { WaterHeaterMode } from '@matter/types/clusters/water-heater-mode';
4
- import { DeviceEnergyManagement } from '@matter/types/clusters/device-energy-management';
5
- import { WaterHeaterManagementServer } from '@matter/node/behaviors/water-heater-management';
6
- import { WaterHeaterModeServer } from '@matter/node/behaviors/water-heater-mode';
7
7
  import { MatterbridgeServer } from '../matterbridgeBehaviors.js';
8
8
  import { electricalSensor, powerSource, waterHeater } from '../matterbridgeDeviceTypes.js';
9
9
  import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
package/dist/export.d.ts CHANGED
@@ -1,9 +1,9 @@
1
+ export { addVirtualDevice } from './helpers.js';
2
+ export * from './matterbridgeAccessoryPlatform.js';
3
+ export * from './matterbridgeBehaviors.js';
4
+ export * from './matterbridgeDeviceTypes.js';
5
+ export * from './matterbridgeDynamicPlatform.js';
1
6
  export * from './matterbridgeEndpoint.js';
2
7
  export * from './matterbridgeEndpointHelpers.js';
3
8
  export * from './matterbridgeEndpointTypes.js';
4
- export * from './matterbridgeBehaviors.js';
5
- export * from './matterbridgeDeviceTypes.js';
6
9
  export * from './matterbridgePlatform.js';
7
- export * from './matterbridgeAccessoryPlatform.js';
8
- export * from './matterbridgeDynamicPlatform.js';
9
- export { addVirtualDevice } from './helpers.js';
package/dist/export.js CHANGED
@@ -1,11 +1,11 @@
1
1
  if (process.argv.includes('--loader') || process.argv.includes('-loader'))
2
2
  console.log('\u001B[32mIndex loaded.\u001B[40;0m');
3
+ export { addVirtualDevice } from './helpers.js';
4
+ export * from './matterbridgeAccessoryPlatform.js';
5
+ export * from './matterbridgeBehaviors.js';
6
+ export * from './matterbridgeDeviceTypes.js';
7
+ export * from './matterbridgeDynamicPlatform.js';
3
8
  export * from './matterbridgeEndpoint.js';
4
9
  export * from './matterbridgeEndpointHelpers.js';
5
10
  export * from './matterbridgeEndpointTypes.js';
6
- export * from './matterbridgeBehaviors.js';
7
- export * from './matterbridgeDeviceTypes.js';
8
11
  export * from './matterbridgePlatform.js';
9
- export * from './matterbridgeAccessoryPlatform.js';
10
- export * from './matterbridgeDynamicPlatform.js';
11
- export { addVirtualDevice } from './helpers.js';
@@ -1,7 +1,7 @@
1
1
  import EventEmitter from 'node:events';
2
- import { LogLevel } from 'node-ansi-logger';
3
2
  import { EndpointNumber } from '@matter/types/datatype';
4
3
  import type { ApiMatter, RefreshRequiredChanged, WsMessageBroadcast } from '@matterbridge/types';
4
+ import { LogLevel } from 'node-ansi-logger';
5
5
  import type { Matterbridge } from './matterbridge.js';
6
6
  interface FrontendEvents {
7
7
  server_listening: [protocol: string, port: number, address?: string];
package/dist/frontend.js CHANGED
@@ -1,21 +1,21 @@
1
1
  if (process.argv.includes('--loader') || process.argv.includes('-loader'))
2
2
  console.log('\u001B[32mFrontend loaded.\u001B[40;0m');
3
+ import EventEmitter from 'node:events';
3
4
  import os from 'node:os';
4
5
  import path from 'node:path';
5
- import EventEmitter from 'node:events';
6
- import { AnsiLogger, stringify, debugStringify, CYAN, db, er, nf, rs, UNDERLINE, UNDERLINEOFF, YELLOW, nt } from 'node-ansi-logger';
7
- import { Logger, Diagnostic, LogDestination, LogLevel as MatterLogLevel, LogFormat as MatterLogFormat, Lifecycle } from '@matter/general';
6
+ import { Diagnostic, Lifecycle, LogDestination, LogFormat as MatterLogFormat, Logger, LogLevel as MatterLogLevel } from '@matter/general';
8
7
  import { DeviceAdvertiser, DeviceCommissioner, FabricManager } from '@matter/protocol';
9
- import { FabricIndex } from '@matter/types/datatype';
10
- import { CommissioningOptions } from '@matter/types/commissioning';
11
8
  import { BridgedDeviceBasicInformation } from '@matter/types/clusters/bridged-device-basic-information';
12
9
  import { PowerSource } from '@matter/types/clusters/power-source';
13
- import { createZip, formatBytes, formatPercent, formatUptime, getParameter, hasParameter, inspectError, isValidArray, isValidBoolean, isValidNumber, isValidObject, isValidString, wait, withTimeout, } from '@matterbridge/utils';
14
- import { MATTER_LOGGER_FILE, MATTER_STORAGE_NAME, MATTERBRIDGE_DIAGNOSTIC_FILE, MATTERBRIDGE_HISTORY_FILE, MATTERBRIDGE_LOGGER_FILE, NODE_STORAGE_DIR, plg, } from '@matterbridge/types';
10
+ import { CommissioningOptions } from '@matter/types/commissioning';
11
+ import { FabricIndex } from '@matter/types/datatype';
15
12
  import { BroadcastServer } from '@matterbridge/thread';
16
- import { capitalizeFirstLetter, getAttribute } from './matterbridgeEndpointHelpers.js';
13
+ import { MATTER_LOGGER_FILE, MATTER_STORAGE_NAME, MATTERBRIDGE_DIAGNOSTIC_FILE, MATTERBRIDGE_HISTORY_FILE, MATTERBRIDGE_LOGGER_FILE, NODE_STORAGE_DIR, plg, } from '@matterbridge/types';
14
+ import { createZip, formatBytes, formatPercent, formatUptime, getParameter, hasParameter, inspectError, isValidArray, isValidBoolean, isValidNumber, isValidObject, isValidString, wait, withTimeout, } from '@matterbridge/utils';
15
+ import { AnsiLogger, CYAN, db, debugStringify, er, nf, nt, rs, stringify, UNDERLINE, UNDERLINEOFF, YELLOW } from 'node-ansi-logger';
17
16
  import { cliEmitter, lastOsCpuUsage, lastProcessCpuUsage } from './cliEmitter.js';
18
17
  import { generateHistoryPage } from './cliHistory.js';
18
+ import { capitalizeFirstLetter, getAttribute } from './matterbridgeEndpointHelpers.js';
19
19
  export class Frontend extends EventEmitter {
20
20
  matterbridge;
21
21
  log;