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 CHANGED
@@ -9,9 +9,11 @@
9
9
  ![Node.js CI](https://github.com/Luligu/matterbridge-example-accessory-platform/actions/workflows/build.yml/badge.svg)
10
10
  ![CodeQL](https://github.com/Luligu/matterbridge-example-accessory-platform/actions/workflows/codeql.yml/badge.svg)
11
11
  [![codecov](https://codecov.io/gh/Luligu/matterbridge-example-accessory-platform/branch/main/graph/badge.svg)](https://codecov.io/gh/Luligu/matterbridge-example-accessory-platformr)
12
- [![styled with prettier](https://img.shields.io/badge/styled_with-Prettier-f8bc45.svg?logo=prettier)](https://prettier.io/)
13
- [![linted with eslint](https://img.shields.io/badge/linted_with-ES_Lint-4B32C3.svg?logo=eslint)](https://eslint.org/)
12
+ [![tested with Vitest](https://img.shields.io/badge/tested_with-Vitest-6E9F18.svg?logo=vitest&logoColor=white)](https://vitest.dev)
13
+ [![styled with Oxc](https://img.shields.io/badge/styled_with-Oxc-9BE4E0.svg?logo=oxc&logoColor=white)](https://oxc.rs/docs/guide/usage/formatter.html)
14
+ [![linted with Oxc](https://img.shields.io/badge/linted_with-Oxc-9BE4E0.svg?logo=oxc&logoColor=white)](https://oxc.rs/docs/guide/usage/linter.html)
14
15
  [![TypeScript](https://img.shields.io/badge/TypeScript-3178C6?logo=typescript&logoColor=white)](https://www.typescriptlang.org/)
16
+ [![TypeScript Native](https://img.shields.io/badge/TypeScript_Native-3178C6?logo=typescript&logoColor=white)](https://github.com/microsoft/typescript-go)
15
17
  [![ESM](https://img.shields.io/badge/ESM-Node.js-339933?logo=node.js&logoColor=white)](https://nodejs.org/)
16
18
  [![matterbridge.io](https://img.shields.io/badge/matterbridge.io-online-brightgreen)](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
  ![Node.js CI](https://github.com/Luligu/matterbridge-example-accessory-platform/actions/workflows/build.yml/badge.svg)
8
8
  ![CodeQL](https://github.com/Luligu/matterbridge-example-accessory-platform/actions/workflows/codeql.yml/badge.svg)
9
9
  [![codecov](https://codecov.io/gh/Luligu/matterbridge-example-accessory-platform/branch/main/graph/badge.svg)](https://codecov.io/gh/Luligu/matterbridge-example-accessory-platform)
10
- [![styled with prettier](https://img.shields.io/badge/styled_with-Prettier-f8bc45.svg?logo=prettier)](https://prettier.io/)
11
- [![linted with eslint](https://img.shields.io/badge/linted_with-ES_Lint-4B32C3.svg?logo=eslint)](https://eslint.org/)
10
+ [![tested with Vitest](https://img.shields.io/badge/tested_with-Vitest-6E9F18.svg?logo=vitest&logoColor=white)](https://vitest.dev)
11
+ [![styled with Oxc](https://img.shields.io/badge/styled_with-Oxc-9BE4E0.svg?logo=oxc&logoColor=white)](https://oxc.rs/docs/guide/usage/formatter.html)
12
+ [![linted with Oxc](https://img.shields.io/badge/linted_with-Oxc-9BE4E0.svg?logo=oxc&logoColor=white)](https://oxc.rs/docs/guide/usage/linter.html)
12
13
  [![TypeScript](https://img.shields.io/badge/TypeScript-3178C6?logo=typescript&logoColor=white)](https://www.typescriptlang.org/)
14
+ [![TypeScript Native](https://img.shields.io/badge/TypeScript_Native-3178C6?logo=typescript&logoColor=white)](https://github.com/microsoft/typescript-go)
13
15
  [![ESM](https://img.shields.io/badge/ESM-Node.js-339933?logo=node.js&logoColor=white)](https://nodejs.org/)
14
16
  [![matterbridge.io](https://img.shields.io/badge/matterbridge.io-online-brightgreen)](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 { coverDevice, MatterbridgeAccessoryPlatform, MatterbridgeEndpoint, powerSource } from 'matterbridge';
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([coverDevice, powerSource], { id: 'Cover example device' }, this.config.debug)
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 === true)
81
+ if (this.config.unregisterOnShutdown)
82
82
  await this.unregisterAllDevices();
83
83
  }
84
84
  async intervalHandler() {
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "matterbridge-example-accessory-platform",
3
- "version": "2.0.16",
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": "2.0.16",
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",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "matterbridge-example-accessory-platform",
3
- "version": "2.0.16",
3
+ "version": "3.0.0-dev-20260615-0dd1aa4",
4
4
  "description": "Matterbridge accessory plugin",
5
5
  "author": "https://github.com/Luligu",
6
6
  "license": "Apache-2.0",