matterbridge 2.1.0-dev.1 → 2.1.0-dev.3

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
@@ -21,7 +21,7 @@ The legacy old api have been removed.
21
21
  The frontend has a new dark and light mode. The dark mode is now the default mode.
22
22
  It is possible to change the mode (Classic, Dark or Light) in Settings, Matterbridge settings.
23
23
 
24
- ## [2.1.0.dev.1] - 2025-01-26
24
+ ## [2.1.0.dev.3] - 2025-01-27
25
25
 
26
26
  ### Added
27
27
 
@@ -32,6 +32,7 @@ It is possible to change the mode (Classic, Dark or Light) in Settings, Matterbr
32
32
  ### Changed
33
33
 
34
34
  - [package]: Update dependencies.
35
+ - [package]: Update matter.js to 0.12.1.
35
36
  - [package]: Update matter.js to 0.12.0.
36
37
  - [package]: Removed legacy imports.
37
38
 
@@ -213,7 +213,7 @@ function getBehavior(endpoint, cluster) {
213
213
  function addRequiredClusterServers(endpoint) {
214
214
  const requiredServerList = [];
215
215
  endpoint.log.debug(`addRequiredClusterServers for ${CYAN}${endpoint.maybeId}${db}`);
216
- endpoint.deviceTypes.values().forEach((deviceType) => {
216
+ Array.from(endpoint.deviceTypes.values()).forEach((deviceType) => {
217
217
  endpoint.log.debug(`- for deviceType: ${zb}${'0x' + deviceType.code.toString(16).padStart(4, '0')}${db}-${zb}${deviceType.name}${db}`);
218
218
  deviceType.requiredServerClusters.forEach((clusterId) => {
219
219
  if (!requiredServerList.includes(clusterId) && !endpoint.hasClusterServer(clusterId)) {
@@ -227,7 +227,7 @@ function addRequiredClusterServers(endpoint) {
227
227
  function addOptionalClusterServers(endpoint) {
228
228
  const optionalServerList = [];
229
229
  endpoint.log.debug(`addOptionalClusterServers for ${CYAN}${endpoint.maybeId}${db}`);
230
- endpoint.deviceTypes.values().forEach((deviceType) => {
230
+ Array.from(endpoint.deviceTypes.values()).forEach((deviceType) => {
231
231
  endpoint.log.debug(`- for deviceType: ${zb}${'0x' + deviceType.code.toString(16).padStart(4, '0')}${db}-${zb}${deviceType.name}${db}`);
232
232
  deviceType.optionalServerClusters.forEach((clusterId) => {
233
233
  if (!optionalServerList.includes(clusterId) && !endpoint.hasClusterServer(clusterId)) {
@@ -547,6 +547,12 @@ export class MatterbridgeEndpoint extends Endpoint {
547
547
  addOptionalClusterServers(this);
548
548
  return this;
549
549
  }
550
+ getAllClusterServers() {
551
+ return Object.values(this.behaviors.supported);
552
+ }
553
+ getAllClusterServerNames() {
554
+ return Object.keys(this.behaviors.supported);
555
+ }
550
556
  addChildDeviceType(endpointName, definition, options = {}, debug = false) {
551
557
  this.log.debug(`addChildDeviceType: ${CYAN}${endpointName}${db}`);
552
558
  let alreadyAdded = false;
@@ -8,7 +8,7 @@ export class MatterbridgePlatform {
8
8
  config = {};
9
9
  name = '';
10
10
  type = '';
11
- version = '';
11
+ version = '1.0.0';
12
12
  storage;
13
13
  context;
14
14
  selectDevice = new Map();
@@ -1,6 +1,3 @@
1
- import { MatterbridgeEndpoint } from './matterbridgeEndpoint.js';
2
1
  export const plg = '\u001B[38;5;33m';
3
2
  export const dev = '\u001B[38;5;79m';
4
3
  export const typ = '\u001B[38;5;207m';
5
- export class MatterbridgeDevice extends MatterbridgeEndpoint {
6
- }
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "matterbridge",
3
- "version": "2.1.0-dev.1",
3
+ "version": "2.1.0-dev.3",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "matterbridge",
9
- "version": "2.1.0-dev.1",
9
+ "version": "2.1.0-dev.3",
10
10
  "license": "Apache-2.0",
11
11
  "dependencies": {
12
- "@matter/main": "0.12.0",
12
+ "@matter/main": "0.12.1",
13
13
  "archiver": "7.0.1",
14
14
  "express": "4.21.2",
15
15
  "glob": "11.0.1",
@@ -47,65 +47,65 @@
47
47
  }
48
48
  },
49
49
  "node_modules/@matter/general": {
50
- "version": "0.12.0",
51
- "resolved": "https://registry.npmjs.org/@matter/general/-/general-0.12.0.tgz",
52
- "integrity": "sha512-D6XkH/17qbvbNclw8IG82QzBGXGkDTBCaHe3zIDsMBraVUcQzKbTFrSQIP4tzqU6R2NC7nkmMsqFBV7HRVwwyQ==",
50
+ "version": "0.12.1",
51
+ "resolved": "https://registry.npmjs.org/@matter/general/-/general-0.12.1.tgz",
52
+ "integrity": "sha512-26ZnXpcPeKUJ3xGJvJnkM7dMt32IlJ+5ZCoM8KN2FtXC2Z6EUBJMVxjSxXA4Wbg91wZvj/y/z0xkcEI3gcIOAA==",
53
53
  "license": "Apache-2.0",
54
54
  "dependencies": {
55
55
  "@noble/curves": "^1.8.1"
56
56
  }
57
57
  },
58
58
  "node_modules/@matter/main": {
59
- "version": "0.12.0",
60
- "resolved": "https://registry.npmjs.org/@matter/main/-/main-0.12.0.tgz",
61
- "integrity": "sha512-cqliR5nnFJCEXKUKcwI9rxPZQNcrJ8iFpd6bOOEQ2v85+dYFZGDOxOWHMo70EoQOqsu7lGozGWRq4m642iXIRw==",
59
+ "version": "0.12.1",
60
+ "resolved": "https://registry.npmjs.org/@matter/main/-/main-0.12.1.tgz",
61
+ "integrity": "sha512-TQscTaFzgtUy9R+tNDm1aIViW4qDiXVdnYZGTVWjWqPN/7wOtEO2IgwP3xk9c3bHNkEXPux6TfvPoAx7UkYUng==",
62
62
  "license": "Apache-2.0",
63
63
  "dependencies": {
64
- "@matter/general": "0.12.0",
65
- "@matter/model": "0.12.0",
66
- "@matter/node": "0.12.0",
67
- "@matter/protocol": "0.12.0",
68
- "@matter/types": "0.12.0",
64
+ "@matter/general": "0.12.1",
65
+ "@matter/model": "0.12.1",
66
+ "@matter/node": "0.12.1",
67
+ "@matter/protocol": "0.12.1",
68
+ "@matter/types": "0.12.1",
69
69
  "@noble/curves": "^1.8.1"
70
70
  },
71
71
  "optionalDependencies": {
72
- "@matter/nodejs": "0.12.0"
72
+ "@matter/nodejs": "0.12.1"
73
73
  }
74
74
  },
75
75
  "node_modules/@matter/model": {
76
- "version": "0.12.0",
77
- "resolved": "https://registry.npmjs.org/@matter/model/-/model-0.12.0.tgz",
78
- "integrity": "sha512-uJhdwWpSFV0wl84Q9nIj1Je8y2Y223XEqomVRNlzDEK450MxaQ/MAK1nEvi3BBTvoiNvAtSij+pIrzu5fYxnlg==",
76
+ "version": "0.12.1",
77
+ "resolved": "https://registry.npmjs.org/@matter/model/-/model-0.12.1.tgz",
78
+ "integrity": "sha512-UlUR7iRuBRadfuf4Qwo3OYi7WUrXJk4nddqsD2tBq7y1cA5zsnV3E85zVX/8iiiUSqAbx3rcAuWJ+CCjn0ikUA==",
79
79
  "license": "Apache-2.0",
80
80
  "dependencies": {
81
- "@matter/general": "0.12.0",
81
+ "@matter/general": "0.12.1",
82
82
  "@noble/curves": "^1.8.1"
83
83
  }
84
84
  },
85
85
  "node_modules/@matter/node": {
86
- "version": "0.12.0",
87
- "resolved": "https://registry.npmjs.org/@matter/node/-/node-0.12.0.tgz",
88
- "integrity": "sha512-J/wQaXSuN3/fZnyTpOE8brmv5mZE2co2yajTg9DmZDgi0EXWXCF97+2vemlPh6BXAszDas7FdN/1kXu2MEA9/Q==",
86
+ "version": "0.12.1",
87
+ "resolved": "https://registry.npmjs.org/@matter/node/-/node-0.12.1.tgz",
88
+ "integrity": "sha512-PtN1pRmMynPwwxaSZklCDwLt4uCz1o/moXi0PX2DU866JdkHaKPgLi+29PcalcDB2dMZbrcJTaimAhXcjPVkog==",
89
89
  "license": "Apache-2.0",
90
90
  "dependencies": {
91
- "@matter/general": "0.12.0",
92
- "@matter/model": "0.12.0",
93
- "@matter/protocol": "0.12.0",
94
- "@matter/types": "0.12.0",
91
+ "@matter/general": "0.12.1",
92
+ "@matter/model": "0.12.1",
93
+ "@matter/protocol": "0.12.1",
94
+ "@matter/types": "0.12.1",
95
95
  "@noble/curves": "^1.8.1"
96
96
  }
97
97
  },
98
98
  "node_modules/@matter/nodejs": {
99
- "version": "0.12.0",
100
- "resolved": "https://registry.npmjs.org/@matter/nodejs/-/nodejs-0.12.0.tgz",
101
- "integrity": "sha512-VZtZcW2UzXiAnYAwJ+9XPDqCfO3amlzgCPBDTXpUKti4HrO0v6U5LmydNRGoGkNUB9QABxLpiAmEId+URZ2r9Q==",
99
+ "version": "0.12.1",
100
+ "resolved": "https://registry.npmjs.org/@matter/nodejs/-/nodejs-0.12.1.tgz",
101
+ "integrity": "sha512-G4tPCzaCJMuly0yiIf+eOhz1ezSQQarETFtDuImE+9vicVyKKCL1eq5SviV5nx9DikIcalKMbKh6F6t21sslDA==",
102
102
  "license": "Apache-2.0",
103
103
  "optional": true,
104
104
  "dependencies": {
105
- "@matter/general": "0.12.0",
106
- "@matter/node": "0.12.0",
107
- "@matter/protocol": "0.12.0",
108
- "@matter/types": "0.12.0",
105
+ "@matter/general": "0.12.1",
106
+ "@matter/node": "0.12.1",
107
+ "@matter/protocol": "0.12.1",
108
+ "@matter/types": "0.12.1",
109
109
  "node-localstorage": "^3.0.5"
110
110
  },
111
111
  "engines": {
@@ -113,25 +113,25 @@
113
113
  }
114
114
  },
115
115
  "node_modules/@matter/protocol": {
116
- "version": "0.12.0",
117
- "resolved": "https://registry.npmjs.org/@matter/protocol/-/protocol-0.12.0.tgz",
118
- "integrity": "sha512-wtDZR/APxMWdf7hErRshWlgnjisnID66GQ9Xxlkq6U1BciXf8qIb8UyWxKN6LWWUhOLPJe6rcn8SnXt6t/q1mA==",
116
+ "version": "0.12.1",
117
+ "resolved": "https://registry.npmjs.org/@matter/protocol/-/protocol-0.12.1.tgz",
118
+ "integrity": "sha512-HOa5OdMsmmSjmtYA+wmBmS2poUeZqlcoA9fUk40kWla6yINJOyHZCgnPKARxXxm1qk95BEoLN3ovUIKoajkstQ==",
119
119
  "license": "Apache-2.0",
120
120
  "dependencies": {
121
- "@matter/general": "0.12.0",
122
- "@matter/model": "0.12.0",
123
- "@matter/types": "0.12.0",
121
+ "@matter/general": "0.12.1",
122
+ "@matter/model": "0.12.1",
123
+ "@matter/types": "0.12.1",
124
124
  "@noble/curves": "^1.8.1"
125
125
  }
126
126
  },
127
127
  "node_modules/@matter/types": {
128
- "version": "0.12.0",
129
- "resolved": "https://registry.npmjs.org/@matter/types/-/types-0.12.0.tgz",
130
- "integrity": "sha512-tS5amwLRymfnqMuVwJ+xYkXGthoBpYb6Dg6GE1IKvZeccl3xGQIYEvIw0rB806h/WkK97T6mB39hHNHliMLAIg==",
128
+ "version": "0.12.1",
129
+ "resolved": "https://registry.npmjs.org/@matter/types/-/types-0.12.1.tgz",
130
+ "integrity": "sha512-O4zyMGLUnoWQZ7P5TJDWrtTpdaG8xSDq1a5xO3e8pmc3I9w6LSoKciEqrjFvq9lT6gvj3hcts/64c0Rxn7NEIw==",
131
131
  "license": "Apache-2.0",
132
132
  "dependencies": {
133
- "@matter/general": "0.12.0",
134
- "@matter/model": "0.12.0",
133
+ "@matter/general": "0.12.1",
134
+ "@matter/model": "0.12.1",
135
135
  "@noble/curves": "^1.8.1"
136
136
  }
137
137
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "matterbridge",
3
- "version": "2.1.0-dev.1",
3
+ "version": "2.1.0-dev.3",
4
4
  "description": "Matterbridge plugin manager for Matter",
5
5
  "author": "https://github.com/Luligu",
6
6
  "license": "Apache-2.0",
@@ -74,7 +74,7 @@
74
74
  }
75
75
  },
76
76
  "dependencies": {
77
- "@matter/main": "0.12.0",
77
+ "@matter/main": "0.12.1",
78
78
  "archiver": "7.0.1",
79
79
  "express": "4.21.2",
80
80
  "glob": "11.0.1",