matterbridge 2.1.0-dev.9 → 2.1.0
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 +14 -3
- package/dist/frontend.js +70 -17
- package/dist/matterbridge.js +3 -0
- package/dist/matterbridgeBehaviors.js +5 -0
- package/dist/matterbridgeEndpoint.js +2 -2
- package/npm-shrinkwrap.json +44 -44
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -16,18 +16,30 @@ Tamer (https://github.com/tammeryousef1006) has created the Matterbridge Discord
|
|
|
16
16
|
### Breaking Changes
|
|
17
17
|
|
|
18
18
|
Starting from v. 2.0.0 Matterbridge is running only in mode edge (no parameter needed and no badge in the frontend).
|
|
19
|
+
|
|
19
20
|
With this release v. 2.1.0, the legacy old api of matter.js have been completely removed from Matterbridge and from all plugins.
|
|
21
|
+
|
|
20
22
|
For this reason there is no compatibility for old versions of the plugins.
|
|
23
|
+
|
|
21
24
|
You need to update all plugins you use and Matterbridge in the same moment.
|
|
25
|
+
|
|
22
26
|
I suggest to first update all plugins without restarting and then to update Matterbridge so when it restarts, all versions will be the latest.
|
|
23
27
|
|
|
24
|
-
|
|
28
|
+
Compatibility list:
|
|
29
|
+
matterbridge-shelly v. 1.1.5
|
|
30
|
+
matterbridge-zigbee2mqtt v. 2.4.4
|
|
31
|
+
matterbridge-somfy-tahoma v. 1.2.3
|
|
32
|
+
matterbridge-hass v. 0.0.8
|
|
33
|
+
|
|
34
|
+
## [2.1.0] - 2025-02-02
|
|
25
35
|
|
|
26
36
|
### Added
|
|
27
37
|
|
|
28
38
|
- [matterbridge]: Add MatterbridgeModeSelectServer.
|
|
39
|
+
- [matterbridge]: Add MatterbridgeSwitchServer.
|
|
29
40
|
- [frontend]: Add api/advertise to turn on matter advertising in bridge mode.
|
|
30
41
|
- [frontend]: Frontend v.2.4.0.
|
|
42
|
+
- [matterbridge]: Added deep memory scan details.
|
|
31
43
|
|
|
32
44
|
### Changed
|
|
33
45
|
|
|
@@ -35,8 +47,7 @@ I suggest to first update all plugins without restarting and then to update Matt
|
|
|
35
47
|
- [package]: Update dependencies.
|
|
36
48
|
- [package]: Update matter.js to 0.12.0.
|
|
37
49
|
- [package]: Update matter.js to 0.12.1.
|
|
38
|
-
|
|
39
|
-
### Fixed
|
|
50
|
+
- [package]: Update matter.js to 0.12.2.
|
|
40
51
|
|
|
41
52
|
<a href="https://www.buymeacoffee.com/luligugithub">
|
|
42
53
|
<img src="./yellow-button.png" alt="Buy me a coffee" width="120">
|
package/dist/frontend.js
CHANGED
|
@@ -7,7 +7,7 @@ import os from 'os';
|
|
|
7
7
|
import path from 'path';
|
|
8
8
|
import { promises as fs } from 'fs';
|
|
9
9
|
import { AnsiLogger, CYAN, db, debugStringify, er, nf, rs, stringify, UNDERLINE, UNDERLINEOFF, wr, YELLOW } from './logger/export.js';
|
|
10
|
-
import { createZip, hasParameter, isValidNumber, isValidObject, isValidString } from './utils/utils.js';
|
|
10
|
+
import { createZip, getIntParameter, hasParameter, isValidNumber, isValidObject, isValidString } from './utils/utils.js';
|
|
11
11
|
import { plg } from './matterbridgeTypes.js';
|
|
12
12
|
import { MatterbridgeEndpoint } from './matterbridgeEndpoint.js';
|
|
13
13
|
export const WS_ID_LOG = 0;
|
|
@@ -22,10 +22,16 @@ export class Frontend {
|
|
|
22
22
|
httpServer;
|
|
23
23
|
httpsServer;
|
|
24
24
|
webSocketServer;
|
|
25
|
+
memoryData = [];
|
|
26
|
+
memoryInterval;
|
|
27
|
+
memoryTimeout;
|
|
25
28
|
constructor(matterbridge) {
|
|
26
29
|
this.matterbridge = matterbridge;
|
|
27
30
|
this.log = new AnsiLogger({ logName: 'Frontend', logTimestampFormat: 4, logLevel: hasParameter('debug') ? "debug" : "info" });
|
|
28
31
|
}
|
|
32
|
+
set logLevel(logLevel) {
|
|
33
|
+
this.log.logLevel = logLevel;
|
|
34
|
+
}
|
|
29
35
|
async start(port = 8283) {
|
|
30
36
|
this.port = port;
|
|
31
37
|
this.log.debug(`Initializing the frontend ${hasParameter('ssl') ? 'https' : 'http'} server on port ${YELLOW}${this.port}${db}`);
|
|
@@ -155,6 +161,9 @@ export class Frontend {
|
|
|
155
161
|
this.webSocketServer.on('error', (ws, error) => {
|
|
156
162
|
this.log.error(`WebSocketServer error: ${error}`);
|
|
157
163
|
});
|
|
164
|
+
if (hasParameter('memorydump')) {
|
|
165
|
+
this.startMemoryDump();
|
|
166
|
+
}
|
|
158
167
|
this.expressApp.post('/api/login', express.json(), async (req, res) => {
|
|
159
168
|
const { password } = req.body;
|
|
160
169
|
this.log.debug('The frontend sent /api/login', password);
|
|
@@ -190,29 +199,24 @@ export class Frontend {
|
|
|
190
199
|
});
|
|
191
200
|
this.expressApp.get('/memory', async (req, res) => {
|
|
192
201
|
this.log.debug('Express received /memory');
|
|
193
|
-
const formatMemoryUsage = (bytes) => {
|
|
194
|
-
const kb = bytes / 1024;
|
|
195
|
-
const mb = kb / 1024;
|
|
196
|
-
return mb >= 1 ? `${mb.toFixed(2)} MB` : `${kb.toFixed(2)} KB`;
|
|
197
|
-
};
|
|
198
202
|
const memoryUsageRaw = process.memoryUsage();
|
|
199
203
|
const memoryUsage = {
|
|
200
|
-
rss: formatMemoryUsage(memoryUsageRaw.rss),
|
|
201
|
-
heapTotal: formatMemoryUsage(memoryUsageRaw.heapTotal),
|
|
202
|
-
heapUsed: formatMemoryUsage(memoryUsageRaw.heapUsed),
|
|
203
|
-
external: formatMemoryUsage(memoryUsageRaw.external),
|
|
204
|
-
arrayBuffers: formatMemoryUsage(memoryUsageRaw.arrayBuffers),
|
|
204
|
+
rss: this.formatMemoryUsage(memoryUsageRaw.rss),
|
|
205
|
+
heapTotal: this.formatMemoryUsage(memoryUsageRaw.heapTotal),
|
|
206
|
+
heapUsed: this.formatMemoryUsage(memoryUsageRaw.heapUsed),
|
|
207
|
+
external: this.formatMemoryUsage(memoryUsageRaw.external),
|
|
208
|
+
arrayBuffers: this.formatMemoryUsage(memoryUsageRaw.arrayBuffers),
|
|
205
209
|
};
|
|
206
210
|
const { default: v8 } = await import('node:v8');
|
|
207
211
|
const heapStatsRaw = v8.getHeapStatistics();
|
|
208
212
|
const heapSpacesRaw = v8.getHeapSpaceStatistics();
|
|
209
|
-
const heapStats = Object.fromEntries(Object.entries(heapStatsRaw).map(([key, value]) => [key, formatMemoryUsage(value)]));
|
|
213
|
+
const heapStats = Object.fromEntries(Object.entries(heapStatsRaw).map(([key, value]) => [key, this.formatMemoryUsage(value)]));
|
|
210
214
|
const heapSpaces = heapSpacesRaw.map((space) => ({
|
|
211
215
|
...space,
|
|
212
|
-
space_size: formatMemoryUsage(space.space_size),
|
|
213
|
-
space_used_size: formatMemoryUsage(space.space_used_size),
|
|
214
|
-
space_available_size: formatMemoryUsage(space.space_available_size),
|
|
215
|
-
physical_space_size: formatMemoryUsage(space.physical_space_size),
|
|
216
|
+
space_size: this.formatMemoryUsage(space.space_size),
|
|
217
|
+
space_used_size: this.formatMemoryUsage(space.space_used_size),
|
|
218
|
+
space_available_size: this.formatMemoryUsage(space.space_available_size),
|
|
219
|
+
physical_space_size: this.formatMemoryUsage(space.physical_space_size),
|
|
216
220
|
}));
|
|
217
221
|
const { default: module } = await import('module');
|
|
218
222
|
const loadedModules = module._cache ? Object.keys(module._cache).sort() : [];
|
|
@@ -478,7 +482,9 @@ export class Frontend {
|
|
|
478
482
|
this.log.logLevel = "fatal";
|
|
479
483
|
}
|
|
480
484
|
await this.matterbridge.nodeContext?.set('matterbridgeLogLevel', this.log.logLevel);
|
|
485
|
+
this.matterbridge.log.logLevel = this.log.logLevel;
|
|
481
486
|
MatterbridgeEndpoint.logLevel = this.log.logLevel;
|
|
487
|
+
this.matterbridge.devices.logLevel = this.log.logLevel;
|
|
482
488
|
this.matterbridge.plugins.logLevel = this.log.logLevel;
|
|
483
489
|
for (const plugin of this.matterbridge.plugins) {
|
|
484
490
|
if (!plugin.platform || !plugin.platform.config)
|
|
@@ -779,11 +785,58 @@ export class Frontend {
|
|
|
779
785
|
});
|
|
780
786
|
this.webSocketServer = undefined;
|
|
781
787
|
}
|
|
788
|
+
if (hasParameter('memorydump')) {
|
|
789
|
+
this.stopMemoryDump();
|
|
790
|
+
}
|
|
791
|
+
}
|
|
792
|
+
formatMemoryUsage = (bytes) => {
|
|
793
|
+
const kb = bytes / 1024;
|
|
794
|
+
const mb = kb / 1024;
|
|
795
|
+
return mb >= 1 ? `${mb.toFixed(2)} MB` : `${kb.toFixed(2)} KB`;
|
|
796
|
+
};
|
|
797
|
+
startMemoryDump() {
|
|
798
|
+
clearInterval(this.memoryInterval);
|
|
799
|
+
clearTimeout(this.memoryTimeout);
|
|
800
|
+
const interval = () => {
|
|
801
|
+
const memoryUsageRaw = process.memoryUsage();
|
|
802
|
+
this.memoryData.push(memoryUsageRaw);
|
|
803
|
+
const memoryUsage = {
|
|
804
|
+
rss: this.formatMemoryUsage(memoryUsageRaw.rss),
|
|
805
|
+
heapTotal: this.formatMemoryUsage(memoryUsageRaw.heapTotal),
|
|
806
|
+
heapUsed: this.formatMemoryUsage(memoryUsageRaw.heapUsed),
|
|
807
|
+
external: this.formatMemoryUsage(memoryUsageRaw.external),
|
|
808
|
+
arrayBuffers: this.formatMemoryUsage(memoryUsageRaw.arrayBuffers),
|
|
809
|
+
};
|
|
810
|
+
this.log.debug(`***Memory usage rss ${CYAN}${memoryUsage.rss}${db} heapTotal ${CYAN}${memoryUsage.heapTotal}${db} heapUsed ${CYAN}${memoryUsage.heapUsed}${db} external ${memoryUsage.external} arrayBuffers ${memoryUsage.arrayBuffers}`);
|
|
811
|
+
};
|
|
812
|
+
interval();
|
|
813
|
+
this.memoryInterval = setInterval(interval, getIntParameter('memorydump') ?? 1000);
|
|
814
|
+
this.memoryInterval.unref();
|
|
815
|
+
this.memoryTimeout = setTimeout(() => {
|
|
816
|
+
this.stopMemoryDump();
|
|
817
|
+
}, 360000);
|
|
818
|
+
this.memoryTimeout.unref();
|
|
819
|
+
}
|
|
820
|
+
stopMemoryDump() {
|
|
821
|
+
clearInterval(this.memoryInterval);
|
|
822
|
+
this.memoryInterval = undefined;
|
|
823
|
+
clearTimeout(this.memoryTimeout);
|
|
824
|
+
this.memoryTimeout = undefined;
|
|
825
|
+
for (const memory of this.memoryData) {
|
|
826
|
+
const memoryUsage = {
|
|
827
|
+
rss: this.formatMemoryUsage(memory.rss),
|
|
828
|
+
heapTotal: this.formatMemoryUsage(memory.heapTotal),
|
|
829
|
+
heapUsed: this.formatMemoryUsage(memory.heapUsed),
|
|
830
|
+
external: this.formatMemoryUsage(memory.external),
|
|
831
|
+
arrayBuffers: this.formatMemoryUsage(memory.arrayBuffers),
|
|
832
|
+
};
|
|
833
|
+
console.log(`${YELLOW}Memory usage${db} rss ${CYAN}${memoryUsage.rss}${db} heapTotal ${CYAN}${memoryUsage.heapTotal}${db} heapUsed ${CYAN}${memoryUsage.heapUsed}${db} external ${memoryUsage.external} arrayBuffers ${memoryUsage.arrayBuffers}${rs}`);
|
|
834
|
+
}
|
|
782
835
|
}
|
|
783
836
|
async getApiSettings() {
|
|
784
837
|
this.matterbridge.matterbridgeInformation.bridgeMode = this.matterbridge.bridgeMode;
|
|
785
838
|
this.matterbridge.matterbridgeInformation.restartMode = this.matterbridge.restartMode;
|
|
786
|
-
this.matterbridge.matterbridgeInformation.loggerLevel = this.log.logLevel;
|
|
839
|
+
this.matterbridge.matterbridgeInformation.loggerLevel = this.matterbridge.log.logLevel;
|
|
787
840
|
this.matterbridge.matterbridgeInformation.matterLoggerLevel = Logger.defaultLogLevel;
|
|
788
841
|
this.matterbridge.matterbridgeInformation.mattermdnsinterface = this.matterbridge.mdnsInterface;
|
|
789
842
|
this.matterbridge.matterbridgeInformation.matteripv4address = this.matterbridge.ipv4address;
|
package/dist/matterbridge.js
CHANGED
|
@@ -310,7 +310,9 @@ export class Matterbridge extends EventEmitter {
|
|
|
310
310
|
}
|
|
311
311
|
this.plugins = new PluginManager(this);
|
|
312
312
|
await this.plugins.loadFromStorage();
|
|
313
|
+
this.plugins.logLevel = this.log.logLevel;
|
|
313
314
|
this.devices = new DeviceManager(this, this.nodeContext);
|
|
315
|
+
this.devices.logLevel = this.log.logLevel;
|
|
314
316
|
for (const plugin of this.plugins) {
|
|
315
317
|
const packageJson = await this.plugins.parse(plugin);
|
|
316
318
|
if (packageJson === null && !hasParameter('add') && !hasParameter('remove') && !hasParameter('enable') && !hasParameter('disable') && !hasParameter('reset') && !hasParameter('factoryreset')) {
|
|
@@ -495,6 +497,7 @@ export class Matterbridge extends EventEmitter {
|
|
|
495
497
|
}
|
|
496
498
|
if (getIntParameter('frontend') !== 0 || getIntParameter('frontend') === undefined)
|
|
497
499
|
await this.frontend.start(getIntParameter('frontend'));
|
|
500
|
+
this.frontend.logLevel = this.log.logLevel;
|
|
498
501
|
this.checkUpdateInterval = setInterval(() => {
|
|
499
502
|
this.getMatterbridgeLatestVersion();
|
|
500
503
|
for (const plugin of this.plugins) {
|
|
@@ -18,6 +18,7 @@ import { ThermostatServer } from '@matter/main/behaviors/thermostat';
|
|
|
18
18
|
import { ValveConfigurationAndControlServer } from '@matter/main/behaviors/valve-configuration-and-control';
|
|
19
19
|
import { ModeSelectServer } from '@matter/main/behaviors/mode-select';
|
|
20
20
|
import { SmokeCoAlarmServer } from '@matter/main/behaviors/smoke-co-alarm';
|
|
21
|
+
import { SwitchServer } from '@matter/main/behaviors/switch';
|
|
21
22
|
export class MatterbridgeBehaviorDevice {
|
|
22
23
|
log;
|
|
23
24
|
commandHandler;
|
|
@@ -338,3 +339,7 @@ export class MatterbridgeBooleanStateConfigurationServer extends BooleanStateCon
|
|
|
338
339
|
super.enableDisableAlarm({ alarmsToEnableDisable });
|
|
339
340
|
}
|
|
340
341
|
}
|
|
342
|
+
export class MatterbridgeSwitchServer extends SwitchServer {
|
|
343
|
+
initialize() {
|
|
344
|
+
}
|
|
345
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AnsiLogger, BLUE, CYAN, YELLOW, db, debugStringify, er, hk, or, zb } from './logger/export.js';
|
|
2
2
|
import { bridgedNode } from './matterbridgeDeviceTypes.js';
|
|
3
3
|
import { isValidNumber, isValidObject } from './utils/utils.js';
|
|
4
|
-
import { MatterbridgeBehavior, MatterbridgeBehaviorDevice, MatterbridgeIdentifyServer, MatterbridgeOnOffServer, MatterbridgeLevelControlServer, MatterbridgeColorControlServer, MatterbridgeWindowCoveringServer, MatterbridgeThermostatServer, MatterbridgeFanControlServer, MatterbridgeDoorLockServer, MatterbridgeModeSelectServer, MatterbridgeValveConfigurationAndControlServer, MatterbridgeSmokeCoAlarmServer, MatterbridgeBooleanStateConfigurationServer, } from './matterbridgeBehaviors.js';
|
|
4
|
+
import { MatterbridgeBehavior, MatterbridgeBehaviorDevice, MatterbridgeIdentifyServer, MatterbridgeOnOffServer, MatterbridgeLevelControlServer, MatterbridgeColorControlServer, MatterbridgeWindowCoveringServer, MatterbridgeThermostatServer, MatterbridgeFanControlServer, MatterbridgeDoorLockServer, MatterbridgeModeSelectServer, MatterbridgeValveConfigurationAndControlServer, MatterbridgeSmokeCoAlarmServer, MatterbridgeBooleanStateConfigurationServer, MatterbridgeSwitchServer, } from './matterbridgeBehaviors.js';
|
|
5
5
|
import { addClusterServers, addFixedLabel, addOptionalClusterServers, addRequiredClusterServers, addUserLabel, capitalizeFirstLetter, createUniqueId, getBehavior, getBehaviourTypesFromClusterClientIds, getBehaviourTypesFromClusterServerIds, getDefaultFlowMeasurementClusterServer, getDefaultIlluminanceMeasurementClusterServer, getDefaultPressureMeasurementClusterServer, getDefaultRelativeHumidityMeasurementClusterServer, getDefaultTemperatureMeasurementClusterServer, getDefaultOccupancySensingClusterServer, lowercaseFirstLetter, updateAttribute, getClusterId, getAttributeId, setAttribute, getAttribute, } from './matterbridgeEndpointHelpers.js';
|
|
6
6
|
import { Endpoint, Lifecycle, MutableEndpoint, NamedHandler, SupportedBehaviors, VendorId } from '@matter/main';
|
|
7
7
|
import { getClusterNameById, MeasurementType } from '@matter/main/types';
|
|
@@ -824,7 +824,7 @@ export class MatterbridgeEndpoint extends Endpoint {
|
|
|
824
824
|
return this;
|
|
825
825
|
}
|
|
826
826
|
createDefaultSwitchClusterServer() {
|
|
827
|
-
this.behaviors.require(
|
|
827
|
+
this.behaviors.require(MatterbridgeSwitchServer.with(Switch.Feature.MomentarySwitch, Switch.Feature.MomentarySwitchRelease, Switch.Feature.MomentarySwitchLongPress, Switch.Feature.MomentarySwitchMultiPress).enable({
|
|
828
828
|
events: { initialPress: true, longPress: true, shortRelease: true, longRelease: true, multiPressOngoing: true, multiPressComplete: true },
|
|
829
829
|
}), {
|
|
830
830
|
numberOfPositions: 2,
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "matterbridge",
|
|
3
|
-
"version": "2.1.0
|
|
3
|
+
"version": "2.1.0",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "matterbridge",
|
|
9
|
-
"version": "2.1.0
|
|
9
|
+
"version": "2.1.0",
|
|
10
10
|
"license": "Apache-2.0",
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@matter/main": "0.12.
|
|
12
|
+
"@matter/main": "0.12.2",
|
|
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.
|
|
51
|
-
"resolved": "https://registry.npmjs.org/@matter/general/-/general-0.12.
|
|
52
|
-
"integrity": "sha512-
|
|
50
|
+
"version": "0.12.2",
|
|
51
|
+
"resolved": "https://registry.npmjs.org/@matter/general/-/general-0.12.2.tgz",
|
|
52
|
+
"integrity": "sha512-D8S2CQHD7KI8L9lxeRgFCLDziXZRAEHqAJei7e0d5Jqh5thPH6S2HUcSX+je6EZDFTshguMgboW09lhXnUR8lA==",
|
|
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.
|
|
60
|
-
"resolved": "https://registry.npmjs.org/@matter/main/-/main-0.12.
|
|
61
|
-
"integrity": "sha512-
|
|
59
|
+
"version": "0.12.2",
|
|
60
|
+
"resolved": "https://registry.npmjs.org/@matter/main/-/main-0.12.2.tgz",
|
|
61
|
+
"integrity": "sha512-bMHBLKmXpLmV/bkOxyhc+j+BhagFg5W6x/TJjfdZv0dZolkD1yT5zGZClmdGaLhhvyuYEKGKlecCM9uQksgxnA==",
|
|
62
62
|
"license": "Apache-2.0",
|
|
63
63
|
"dependencies": {
|
|
64
|
-
"@matter/general": "0.12.
|
|
65
|
-
"@matter/model": "0.12.
|
|
66
|
-
"@matter/node": "0.12.
|
|
67
|
-
"@matter/protocol": "0.12.
|
|
68
|
-
"@matter/types": "0.12.
|
|
64
|
+
"@matter/general": "0.12.2",
|
|
65
|
+
"@matter/model": "0.12.2",
|
|
66
|
+
"@matter/node": "0.12.2",
|
|
67
|
+
"@matter/protocol": "0.12.2",
|
|
68
|
+
"@matter/types": "0.12.2",
|
|
69
69
|
"@noble/curves": "^1.8.1"
|
|
70
70
|
},
|
|
71
71
|
"optionalDependencies": {
|
|
72
|
-
"@matter/nodejs": "0.12.
|
|
72
|
+
"@matter/nodejs": "0.12.2"
|
|
73
73
|
}
|
|
74
74
|
},
|
|
75
75
|
"node_modules/@matter/model": {
|
|
76
|
-
"version": "0.12.
|
|
77
|
-
"resolved": "https://registry.npmjs.org/@matter/model/-/model-0.12.
|
|
78
|
-
"integrity": "sha512-
|
|
76
|
+
"version": "0.12.2",
|
|
77
|
+
"resolved": "https://registry.npmjs.org/@matter/model/-/model-0.12.2.tgz",
|
|
78
|
+
"integrity": "sha512-xM8hwqVepb6YpvjE9jXacA4YypPHJm0latei7YTZystgvh8lUHDk5dkLELyrXzbNYTs//LMPAbj6SIsz9CorPA==",
|
|
79
79
|
"license": "Apache-2.0",
|
|
80
80
|
"dependencies": {
|
|
81
|
-
"@matter/general": "0.12.
|
|
81
|
+
"@matter/general": "0.12.2",
|
|
82
82
|
"@noble/curves": "^1.8.1"
|
|
83
83
|
}
|
|
84
84
|
},
|
|
85
85
|
"node_modules/@matter/node": {
|
|
86
|
-
"version": "0.12.
|
|
87
|
-
"resolved": "https://registry.npmjs.org/@matter/node/-/node-0.12.
|
|
88
|
-
"integrity": "sha512
|
|
86
|
+
"version": "0.12.2",
|
|
87
|
+
"resolved": "https://registry.npmjs.org/@matter/node/-/node-0.12.2.tgz",
|
|
88
|
+
"integrity": "sha512-/VHnBHf6bFf6fVP6SvTrJDtKCzfZ6j5DTuEPRQFbdH1ph7OGyzVXjVRwoLPTzo2XT/VrTPcFNB38UNxTky1zQA==",
|
|
89
89
|
"license": "Apache-2.0",
|
|
90
90
|
"dependencies": {
|
|
91
|
-
"@matter/general": "0.12.
|
|
92
|
-
"@matter/model": "0.12.
|
|
93
|
-
"@matter/protocol": "0.12.
|
|
94
|
-
"@matter/types": "0.12.
|
|
91
|
+
"@matter/general": "0.12.2",
|
|
92
|
+
"@matter/model": "0.12.2",
|
|
93
|
+
"@matter/protocol": "0.12.2",
|
|
94
|
+
"@matter/types": "0.12.2",
|
|
95
95
|
"@noble/curves": "^1.8.1"
|
|
96
96
|
}
|
|
97
97
|
},
|
|
98
98
|
"node_modules/@matter/nodejs": {
|
|
99
|
-
"version": "0.12.
|
|
100
|
-
"resolved": "https://registry.npmjs.org/@matter/nodejs/-/nodejs-0.12.
|
|
101
|
-
"integrity": "sha512-
|
|
99
|
+
"version": "0.12.2",
|
|
100
|
+
"resolved": "https://registry.npmjs.org/@matter/nodejs/-/nodejs-0.12.2.tgz",
|
|
101
|
+
"integrity": "sha512-sMnczk+3+7tr5OQDntPP7TuZP83/jC9jG713J1iJxU77cv/GMKIecKfAOrbFl50Ga+4zZTfIV9Mpekn50IT0ig==",
|
|
102
102
|
"license": "Apache-2.0",
|
|
103
103
|
"optional": true,
|
|
104
104
|
"dependencies": {
|
|
105
|
-
"@matter/general": "0.12.
|
|
106
|
-
"@matter/node": "0.12.
|
|
107
|
-
"@matter/protocol": "0.12.
|
|
108
|
-
"@matter/types": "0.12.
|
|
105
|
+
"@matter/general": "0.12.2",
|
|
106
|
+
"@matter/node": "0.12.2",
|
|
107
|
+
"@matter/protocol": "0.12.2",
|
|
108
|
+
"@matter/types": "0.12.2",
|
|
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.
|
|
117
|
-
"resolved": "https://registry.npmjs.org/@matter/protocol/-/protocol-0.12.
|
|
118
|
-
"integrity": "sha512-
|
|
116
|
+
"version": "0.12.2",
|
|
117
|
+
"resolved": "https://registry.npmjs.org/@matter/protocol/-/protocol-0.12.2.tgz",
|
|
118
|
+
"integrity": "sha512-BhfPqRgnNy+Fx6VWffFtA8aGdspvzxp+TY5PJpAqExBLwGB/kc/knagOOfLvSjSyT/gdZmIxep3Iw2ycm7UYYA==",
|
|
119
119
|
"license": "Apache-2.0",
|
|
120
120
|
"dependencies": {
|
|
121
|
-
"@matter/general": "0.12.
|
|
122
|
-
"@matter/model": "0.12.
|
|
123
|
-
"@matter/types": "0.12.
|
|
121
|
+
"@matter/general": "0.12.2",
|
|
122
|
+
"@matter/model": "0.12.2",
|
|
123
|
+
"@matter/types": "0.12.2",
|
|
124
124
|
"@noble/curves": "^1.8.1"
|
|
125
125
|
}
|
|
126
126
|
},
|
|
127
127
|
"node_modules/@matter/types": {
|
|
128
|
-
"version": "0.12.
|
|
129
|
-
"resolved": "https://registry.npmjs.org/@matter/types/-/types-0.12.
|
|
130
|
-
"integrity": "sha512-
|
|
128
|
+
"version": "0.12.2",
|
|
129
|
+
"resolved": "https://registry.npmjs.org/@matter/types/-/types-0.12.2.tgz",
|
|
130
|
+
"integrity": "sha512-sTujir3YTDrbFnkccCrc9zdSx4AGRHdOeVBLPvVORNieHoKlBeKLBtCA9GsjRbbpnmSrpPe9Fl6z1MkCWblAmw==",
|
|
131
131
|
"license": "Apache-2.0",
|
|
132
132
|
"dependencies": {
|
|
133
|
-
"@matter/general": "0.12.
|
|
134
|
-
"@matter/model": "0.12.
|
|
133
|
+
"@matter/general": "0.12.2",
|
|
134
|
+
"@matter/model": "0.12.2",
|
|
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
|
|
3
|
+
"version": "2.1.0",
|
|
4
4
|
"description": "Matterbridge plugin manager for Matter",
|
|
5
5
|
"author": "https://github.com/Luligu",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -94,7 +94,7 @@
|
|
|
94
94
|
}
|
|
95
95
|
},
|
|
96
96
|
"dependencies": {
|
|
97
|
-
"@matter/main": "0.12.
|
|
97
|
+
"@matter/main": "0.12.2",
|
|
98
98
|
"archiver": "7.0.1",
|
|
99
99
|
"express": "4.21.2",
|
|
100
100
|
"glob": "11.0.1",
|