matterbridge-example-accessory-platform 2.0.16 → 3.0.0-dev-20260615-0dd1aa4
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 +20 -2
- package/README.md +20 -2
- package/dist/module.js +4 -4
- package/npm-shrinkwrap.json +2 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -9,9 +9,11 @@
|
|
|
9
9
|

|
|
10
10
|

|
|
11
11
|
[](https://codecov.io/gh/Luligu/matterbridge-example-accessory-platformr)
|
|
12
|
-
[](https://vitest.dev)
|
|
13
|
+
[](https://oxc.rs/docs/guide/usage/formatter.html)
|
|
14
|
+
[](https://oxc.rs/docs/guide/usage/linter.html)
|
|
14
15
|
[](https://www.typescriptlang.org/)
|
|
16
|
+
[](https://github.com/microsoft/typescript-go)
|
|
15
17
|
[](https://nodejs.org/)
|
|
16
18
|
[](https://matterbridge.io)
|
|
17
19
|
|
|
@@ -28,6 +30,22 @@ If you like this project and find it useful, please consider giving it a star on
|
|
|
28
30
|
|
|
29
31
|
<a href="https://www.buymeacoffee.com/luligugithub"><img src="https://matterbridge.io/assets/bmc-button.svg" alt="Buy me a coffee" width="120"></a>
|
|
30
32
|
|
|
33
|
+
## Repository setup
|
|
34
|
+
|
|
35
|
+
> **Note:** This repository uses a new toolchain. It replaces the traditional TypeScript / ESLint / Prettier / Jest stack with a faster, lighter setup.
|
|
36
|
+
|
|
37
|
+
- **No `typescript` package** — replaced by [TypeScript Native](https://github.com/microsoft/typescript-go). The `typescript` package is kept only as a publish-time dependency while tsgo is still in preview.
|
|
38
|
+
- **No ESLint, no Prettier** — replaced by the [oxc](https://oxc.rs) stack: [oxlint](https://oxc.rs/docs/guide/usage/linter.html) for linting and [oxfmt](https://oxc.rs/docs/guide/usage/formatter.html) for formatting.
|
|
39
|
+
- **No Jest** — replaced by [Vitest](https://vitest.dev), which is much faster and natively supports ESM without extra configuration.
|
|
40
|
+
- **Far fewer development dependencies** — the number of installed packages drops from **~600** to **~100**. A clean install is much faster.
|
|
41
|
+
- **Much faster linting and formatting** — oxlint and oxfmt run in a fraction of the time required by the ESLint / Prettier pipeline.
|
|
42
|
+
- **Much faster builds** — tsgo compiles the project in a fraction of the time required by the standard `tsc` build.
|
|
43
|
+
- **Editor support** — use the VS Code extensions for tsgo and oxc to get the same experience in the editor.
|
|
44
|
+
|
|
45
|
+
## [3.0.0] - Dev branch
|
|
46
|
+
|
|
47
|
+
<a href="https://www.buymeacoffee.com/luligugithub"><img src="https://matterbridge.io/assets/bmc-button.svg" alt="Buy me a coffee" width="80"></a>
|
|
48
|
+
|
|
31
49
|
## [2.0.16] - 2026-05-06
|
|
32
50
|
|
|
33
51
|
### Breaking changes
|
package/README.md
CHANGED
|
@@ -7,9 +7,11 @@
|
|
|
7
7
|

|
|
8
8
|

|
|
9
9
|
[](https://codecov.io/gh/Luligu/matterbridge-example-accessory-platform)
|
|
10
|
-
[](https://vitest.dev)
|
|
11
|
+
[](https://oxc.rs/docs/guide/usage/formatter.html)
|
|
12
|
+
[](https://oxc.rs/docs/guide/usage/linter.html)
|
|
12
13
|
[](https://www.typescriptlang.org/)
|
|
14
|
+
[](https://github.com/microsoft/typescript-go)
|
|
13
15
|
[](https://nodejs.org/)
|
|
14
16
|
[](https://matterbridge.io)
|
|
15
17
|
|
|
@@ -35,3 +37,19 @@ If you like this project and find it useful, please consider giving it a star on
|
|
|
35
37
|
### Matterbridge
|
|
36
38
|
|
|
37
39
|
See the guidelines on [Matterbridge](https://matterbridge.io) for more information.
|
|
40
|
+
|
|
41
|
+
## Repository setup
|
|
42
|
+
|
|
43
|
+
> **Note:** This repository uses a new toolchain. It replaces the traditional TypeScript / ESLint / Prettier / Jest stack with a faster, lighter setup.
|
|
44
|
+
|
|
45
|
+
- **No `typescript` package** — replaced by [TypeScript Native](https://github.com/microsoft/typescript-go). The `typescript` package is kept only as a publish-time dependency while tsgo is still in preview.
|
|
46
|
+
- **No ESLint, no Prettier** — replaced by the [oxc](https://oxc.rs) stack: [oxlint](https://oxc.rs/docs/guide/usage/linter.html) for linting and [oxfmt](https://oxc.rs/docs/guide/usage/formatter.html) for formatting.
|
|
47
|
+
- **No Jest** — replaced by [Vitest](https://vitest.dev), which is much faster and natively supports ESM without extra configuration.
|
|
48
|
+
- **Far fewer development dependencies** — the number of installed packages drops from **~600** to **~100**. A clean install is much faster.
|
|
49
|
+
- **Much faster linting and formatting** — oxlint and oxfmt run in a fraction of the time required by the ESLint / Prettier pipeline.
|
|
50
|
+
- **Much faster builds** — tsgo compiles the project in a fraction of the time required by the standard `tsc` build.
|
|
51
|
+
- **Editor support** — use the VS Code extensions for tsgo and oxc to get the same experience in the editor.
|
|
52
|
+
|
|
53
|
+
## Style guide
|
|
54
|
+
|
|
55
|
+
See also the [Style Guide](./STYLEGUIDE.md) for JSDoc, naming, and logging conventions used in this repository.
|
package/dist/module.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { windowCovering, MatterbridgeAccessoryPlatform, MatterbridgeEndpoint, powerSource } from 'matterbridge';
|
|
2
2
|
import { WindowCovering } from 'matterbridge/matter/clusters';
|
|
3
3
|
import { fireAndForget, isValidNumber } from 'matterbridge/utils';
|
|
4
4
|
export default function initializePlugin(matterbridge, log, config) {
|
|
@@ -16,9 +16,9 @@ export class ExampleMatterbridgeAccessoryPlatform extends MatterbridgeAccessoryP
|
|
|
16
16
|
}
|
|
17
17
|
async onStart(reason) {
|
|
18
18
|
this.log.info('onStart called with reason:', reason ?? 'none');
|
|
19
|
-
this.cover = new MatterbridgeEndpoint([
|
|
19
|
+
this.cover = new MatterbridgeEndpoint([windowCovering, powerSource], { id: 'Cover example device' }, this.config.debug)
|
|
20
20
|
.createDefaultIdentifyClusterServer()
|
|
21
|
-
.createDefaultBasicInformationClusterServer('Cover example device', `0x59108853594`, 0xfff1, 'Matterbridge', 0x0001, 'Matterbridge Cover', parseInt(this.version.replace(/\D/g, '')), this.version, parseInt(this.matterbridge.matterbridgeVersion.replace(/\D/g, '')), this.matterbridge.matterbridgeVersion)
|
|
21
|
+
.createDefaultBasicInformationClusterServer('Cover example device', `0x59108853594`, 0xfff1, 'Matterbridge', 0x0001, 'Matterbridge Cover', Number.parseInt(this.version.replace(/\D/g, '')), this.version, Number.parseInt(this.matterbridge.matterbridgeVersion.replace(/\D/g, '')), this.matterbridge.matterbridgeVersion)
|
|
22
22
|
.createDefaultWindowCoveringClusterServer(10000)
|
|
23
23
|
.createDefaultPowerSourceWiredClusterServer()
|
|
24
24
|
.addRequiredClusters();
|
|
@@ -78,7 +78,7 @@ export class ExampleMatterbridgeAccessoryPlatform extends MatterbridgeAccessoryP
|
|
|
78
78
|
this.coverInterval = undefined;
|
|
79
79
|
await super.onShutdown(reason);
|
|
80
80
|
this.log.info('onShutdown called with reason:', reason ?? 'none');
|
|
81
|
-
if (this.config.unregisterOnShutdown
|
|
81
|
+
if (this.config.unregisterOnShutdown)
|
|
82
82
|
await this.unregisterAllDevices();
|
|
83
83
|
}
|
|
84
84
|
async intervalHandler() {
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "matterbridge-example-accessory-platform",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.0-dev-20260615-0dd1aa4",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "matterbridge-example-accessory-platform",
|
|
9
|
-
"version": "
|
|
9
|
+
"version": "3.0.0-dev-20260615-0dd1aa4",
|
|
10
10
|
"license": "Apache-2.0",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"node-ansi-logger": "3.2.1",
|