matterbridge 3.1.8-dev-20250726-f93c04c → 3.1.8-dev-20250726-82f77ee

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
@@ -12,10 +12,12 @@ If you like this project and find it useful, please consider giving it a star on
12
12
 
13
13
  ### Added
14
14
 
15
+ - [Jest]: Total coverage 100%.
15
16
  - [certification]: Improved certification management in pairing.json. Added pemToBuffer function for converting PEM strings to Uint8Array.
16
17
  - [workflow]: Update permissions and change GitHub token for Docker build triggers.
18
+ - [frontend]: Improved test units on Frontend class (total coverage 100%).
17
19
  - [frontend]: Bump version 2.7.1.
18
- - [frontend]: Added Changelog button when a new version is installed.
20
+ - [frontend]: Added Changelog button that appears in the frontend when a new version is installed.
19
21
  - [frontend]: Added restart plugin in childbridge mode.
20
22
 
21
23
  ### Changed
package/dist/frontend.js CHANGED
@@ -1131,9 +1131,16 @@ export class Frontend extends EventEmitter {
1131
1131
  }
1132
1132
  await this.matterbridge.plugins.load(plugin, true, 'The plugin has been restarted', true);
1133
1133
  plugin.restartRequired = false;
1134
- if (plugin.serverNode) {
1135
- await this.matterbridge.startServerNode(plugin.serverNode);
1134
+ let needRestart = 0;
1135
+ for (const plugin of this.matterbridge.plugins) {
1136
+ if (plugin.restartRequired)
1137
+ needRestart++;
1138
+ }
1139
+ if (needRestart === 0) {
1140
+ this.wssSendRestartNotRequired(true);
1136
1141
  }
1142
+ if (plugin.serverNode)
1143
+ await this.matterbridge.startServerNode(plugin.serverNode);
1137
1144
  this.wssSendSnackbarMessage(`Restarted plugin ${data.params.pluginName}`, 5, 'success');
1138
1145
  this.wssSendRefreshRequired('plugins');
1139
1146
  this.wssSendRefreshRequired('devices');
@@ -1689,6 +1696,17 @@ export class Frontend extends EventEmitter {
1689
1696
  }
1690
1697
  });
1691
1698
  }
1699
+ wssSendRestartNotRequired(snackbar = true) {
1700
+ this.log.debug('Sending a restart not required message to all connected clients');
1701
+ this.matterbridge.matterbridgeInformation.restartRequired = false;
1702
+ if (snackbar === true)
1703
+ this.wssSendCloseSnackbarMessage(`Restart required`);
1704
+ this.webSocketServer?.clients.forEach((client) => {
1705
+ if (client.readyState === WebSocket.OPEN) {
1706
+ client.send(JSON.stringify({ id: WS_ID_RESTART_NEEDED, src: 'Matterbridge', dst: 'Frontend', method: 'restart_not_required', params: {} }));
1707
+ }
1708
+ });
1709
+ }
1692
1710
  wssSendUpdateRequired() {
1693
1711
  this.log.debug('Sending an update required message to all connected clients');
1694
1712
  this.matterbridge.matterbridgeInformation.updateRequired = true;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "files": {
3
3
  "main.css": "./static/css/main.944b63c3.css",
4
- "main.js": "./static/js/main.bb47a7dc.js",
4
+ "main.js": "./static/js/main.87739fe8.js",
5
5
  "static/js/453.d855a71b.chunk.js": "./static/js/453.d855a71b.chunk.js",
6
6
  "static/media/roboto-latin-700-normal.woff2": "./static/media/roboto-latin-700-normal.c4d6cab43bec89049809.woff2",
7
7
  "static/media/roboto-latin-500-normal.woff2": "./static/media/roboto-latin-500-normal.599f66a60bdf974e578e.woff2",
@@ -77,11 +77,11 @@
77
77
  "static/media/roboto-greek-ext-300-normal.woff": "./static/media/roboto-greek-ext-300-normal.60729cafbded24073dfb.woff",
78
78
  "index.html": "./index.html",
79
79
  "main.944b63c3.css.map": "./static/css/main.944b63c3.css.map",
80
- "main.bb47a7dc.js.map": "./static/js/main.bb47a7dc.js.map",
80
+ "main.87739fe8.js.map": "./static/js/main.87739fe8.js.map",
81
81
  "453.d855a71b.chunk.js.map": "./static/js/453.d855a71b.chunk.js.map"
82
82
  },
83
83
  "entrypoints": [
84
84
  "static/css/main.944b63c3.css",
85
- "static/js/main.bb47a7dc.js"
85
+ "static/js/main.87739fe8.js"
86
86
  ]
87
87
  }
@@ -1 +1 @@
1
- <!doctype html><html lang="en"><head><meta charset="utf-8"/><base href="./"><link rel="icon" href="./matterbridge 32x32.png"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#000000"/><title>Matterbridge</title><link rel="manifest" href="./manifest.json"/><script defer="defer" src="./static/js/main.bb47a7dc.js"></script><link href="./static/css/main.944b63c3.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div></body></html>
1
+ <!doctype html><html lang="en"><head><meta charset="utf-8"/><base href="./"><link rel="icon" href="./matterbridge 32x32.png"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#000000"/><title>Matterbridge</title><link rel="manifest" href="./manifest.json"/><script defer="defer" src="./static/js/main.87739fe8.js"></script><link href="./static/css/main.944b63c3.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div></body></html>