@matter-server/dashboard 0.6.1 → 0.6.2-alpha.0-20260421-bc2093e
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/README.md +19 -0
- package/dist/esm/client/models/descriptions.d.ts +10 -0
- package/dist/esm/client/models/descriptions.d.ts.map +1 -1
- package/dist/esm/client/models/descriptions.js +5684 -1881
- package/dist/esm/client/models/descriptions.js.map +1 -1
- package/dist/esm/components/dialog-box/dialog-box.d.ts.map +1 -1
- package/dist/esm/components/dialog-box/show-dialog-box.d.ts.map +1 -1
- package/dist/esm/components/dialogs/acl/model.d.ts.map +1 -1
- package/dist/esm/components/dialogs/binding/model.d.ts.map +1 -1
- package/dist/esm/components/dialogs/binding/node-binding-dialog.d.ts.map +1 -1
- package/dist/esm/components/dialogs/binding/show-node-binding-dialog.d.ts.map +1 -1
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-dialog.d.ts.map +1 -1
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-existing.d.ts.map +1 -1
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-thread.d.ts.map +1 -1
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-wifi.d.ts.map +1 -1
- package/dist/esm/components/dialogs/commission-node-dialog/show-commission-node-dialog.d.ts.map +1 -1
- package/dist/esm/components/dialogs/dev/attribute-write-dialog.d.ts +34 -0
- package/dist/esm/components/dialogs/dev/attribute-write-dialog.d.ts.map +1 -0
- package/dist/esm/components/dialogs/dev/attribute-write-dialog.js +187 -0
- package/dist/esm/components/dialogs/dev/attribute-write-dialog.js.map +6 -0
- package/dist/esm/components/dialogs/dev/command-invoke-dialog.d.ts +33 -0
- package/dist/esm/components/dialogs/dev/command-invoke-dialog.d.ts.map +1 -0
- package/dist/esm/components/dialogs/dev/command-invoke-dialog.js +221 -0
- package/dist/esm/components/dialogs/dev/command-invoke-dialog.js.map +6 -0
- package/dist/esm/components/dialogs/dev/parse-json-payload.d.ts +27 -0
- package/dist/esm/components/dialogs/dev/parse-json-payload.d.ts.map +1 -0
- package/dist/esm/components/dialogs/dev/parse-json-payload.js +25 -0
- package/dist/esm/components/dialogs/dev/parse-json-payload.js.map +6 -0
- package/dist/esm/components/dialogs/dev/show-attribute-write-dialog.d.ts +17 -0
- package/dist/esm/components/dialogs/dev/show-attribute-write-dialog.d.ts.map +1 -0
- package/dist/esm/components/dialogs/dev/show-attribute-write-dialog.js +21 -0
- package/dist/esm/components/dialogs/dev/show-attribute-write-dialog.js.map +6 -0
- package/dist/esm/components/dialogs/dev/show-command-invoke-dialog.d.ts +16 -0
- package/dist/esm/components/dialogs/dev/show-command-invoke-dialog.d.ts.map +1 -0
- package/dist/esm/components/dialogs/dev/show-command-invoke-dialog.js +20 -0
- package/dist/esm/components/dialogs/dev/show-command-invoke-dialog.js.map +6 -0
- package/dist/esm/components/dialogs/settings/log-level-dialog.d.ts +2 -11
- package/dist/esm/components/dialogs/settings/log-level-dialog.d.ts.map +1 -1
- package/dist/esm/components/dialogs/settings/log-level-dialog.js +13 -140
- package/dist/esm/components/dialogs/settings/log-level-dialog.js.map +1 -1
- package/dist/esm/components/dialogs/settings/log-level-section.d.ts +34 -0
- package/dist/esm/components/dialogs/settings/log-level-section.d.ts.map +1 -0
- package/dist/esm/components/dialogs/settings/log-level-section.js +181 -0
- package/dist/esm/components/dialogs/settings/log-level-section.js.map +6 -0
- package/dist/esm/components/dialogs/settings/settings-dialog.d.ts +31 -0
- package/dist/esm/components/dialogs/settings/settings-dialog.d.ts.map +1 -0
- package/dist/esm/components/dialogs/settings/settings-dialog.js +165 -0
- package/dist/esm/components/dialogs/settings/settings-dialog.js.map +6 -0
- package/dist/esm/components/dialogs/settings/show-log-level-dialog.d.ts.map +1 -1
- package/dist/esm/components/dialogs/settings/show-settings-dialog.d.ts +8 -0
- package/dist/esm/components/dialogs/settings/show-settings-dialog.d.ts.map +1 -0
- package/dist/esm/components/dialogs/settings/show-settings-dialog.js +15 -0
- package/dist/esm/components/dialogs/settings/show-settings-dialog.js.map +6 -0
- package/dist/esm/components/ha-svg-icon.d.ts.map +1 -1
- package/dist/esm/pages/cluster-commands/base-cluster-commands.d.ts.map +1 -1
- package/dist/esm/pages/cluster-commands/clusters/basic-information-commands.d.ts.map +1 -1
- package/dist/esm/pages/cluster-commands/clusters/level-control-commands.d.ts.map +1 -1
- package/dist/esm/pages/cluster-commands/clusters/on-off-commands.d.ts.map +1 -1
- package/dist/esm/pages/components/footer.d.ts.map +1 -1
- package/dist/esm/pages/components/header.d.ts +2 -0
- package/dist/esm/pages/components/header.d.ts.map +1 -1
- package/dist/esm/pages/components/header.js +47 -3
- package/dist/esm/pages/components/header.js.map +1 -1
- package/dist/esm/pages/components/node-details.d.ts.map +1 -1
- package/dist/esm/pages/components/server-details.d.ts.map +1 -1
- package/dist/esm/pages/matter-cluster-view.d.ts +13 -2
- package/dist/esm/pages/matter-cluster-view.d.ts.map +1 -1
- package/dist/esm/pages/matter-cluster-view.js +338 -4
- package/dist/esm/pages/matter-cluster-view.js.map +2 -2
- package/dist/esm/pages/matter-dashboard-app.d.ts.map +1 -1
- package/dist/esm/pages/matter-endpoint-view.d.ts.map +1 -1
- package/dist/esm/pages/matter-network-view.d.ts.map +1 -1
- package/dist/esm/pages/matter-node-view.d.ts.map +1 -1
- package/dist/esm/pages/matter-server-view.d.ts.map +1 -1
- package/dist/esm/pages/network/base-network-graph.d.ts.map +1 -1
- package/dist/esm/pages/network/device-panel.d.ts.map +1 -1
- package/dist/esm/pages/network/network-details.d.ts.map +1 -1
- package/dist/esm/pages/network/thread-graph.d.ts.map +1 -1
- package/dist/esm/pages/network/update-connections-dialog.d.ts.map +1 -1
- package/dist/esm/pages/network/wifi-graph.d.ts.map +1 -1
- package/dist/esm/util/clone_class.d.ts.map +1 -1
- package/dist/esm/util/dev-mode-service.d.ts +14 -0
- package/dist/esm/util/dev-mode-service.d.ts.map +1 -0
- package/dist/esm/util/dev-mode-service.js +37 -0
- package/dist/esm/util/dev-mode-service.js.map +6 -0
- package/dist/esm/util/fire_event.d.ts.map +1 -1
- package/dist/esm/util/prevent_default.d.ts.map +1 -1
- package/dist/esm/util/theme-service.d.ts.map +1 -1
- package/dist/web/index.html +6 -0
- package/dist/web/js/attribute-write-dialog-B1tIg_0G.js +166 -0
- package/dist/web/js/command-invoke-dialog-T_pcKaIB.js +192 -0
- package/dist/web/js/{commission-node-dialog-DfwKU9qk.js → commission-node-dialog-WS5qDOnU.js} +4 -4
- package/dist/web/js/{commission-node-existing-C7ITvNfj.js → commission-node-existing-Bb10H55l.js} +2 -2
- package/dist/web/js/{commission-node-thread-D-icSzto.js → commission-node-thread-B0wMe4Wq.js} +2 -2
- package/dist/web/js/{commission-node-wifi-DwUkXlWz.js → commission-node-wifi-Bjdqn47D.js} +2 -2
- package/dist/web/js/{dialog-box-BmpaTrvT.js → dialog-box-DtMt9N0h.js} +1 -1
- package/dist/web/js/{fire_event-2ZxL-AHZ.js → fire_event-BL87hqSP.js} +1 -1
- package/dist/web/js/main.js +2 -2
- package/dist/web/js/{matter-dashboard-app-BtHTmAPq.js → matter-dashboard-app-F5wNhZIe.js} +6200 -1897
- package/dist/web/js/{node-binding-dialog-MMx9rkCF.js → node-binding-dialog-BEs5k-yQ.js} +1 -1
- package/dist/web/js/parse-json-payload-DU9TWKdu.js +32 -0
- package/dist/web/js/{log-level-dialog-D4hubdib.js → settings-dialog-DNiYIToE.js} +583 -69
- package/package.json +29 -29
- package/src/client/models/descriptions.ts +5690 -1878
- package/src/components/dialogs/dev/attribute-write-dialog.ts +169 -0
- package/src/components/dialogs/dev/command-invoke-dialog.ts +204 -0
- package/src/components/dialogs/dev/parse-json-payload.ts +37 -0
- package/src/components/dialogs/dev/show-attribute-write-dialog.ts +30 -0
- package/src/components/dialogs/dev/show-command-invoke-dialog.ts +28 -0
- package/src/components/dialogs/settings/log-level-dialog.ts +15 -138
- package/src/components/dialogs/settings/log-level-section.ts +174 -0
- package/src/components/dialogs/settings/settings-dialog.ts +165 -0
- package/src/components/dialogs/settings/show-settings-dialog.ts +14 -0
- package/src/pages/components/header.ts +47 -3
- package/src/pages/matter-cluster-view.ts +366 -4
- package/src/tsconfig.json +7 -2
- package/src/util/dev-mode-service.ts +44 -0
package/README.md
CHANGED
|
@@ -101,3 +101,22 @@ Unknown devices show as "Router (external)" or "End Device (external)" based on
|
|
|
101
101
|
**Thread roles for external devices**: The Thread role (Leader, Router, End Device) can only be determined for devices commissioned to this fabric. External devices like Home Assistant's Thread Border Router will show as "Router (external)" even if they are the current Thread Leader. This is a fundamental Matter limitation - we cannot query attributes from devices on other fabrics.
|
|
102
102
|
|
|
103
103
|
**Leader role is dynamic**: In Thread networks, the Leader role can change via leader election. Any router can potentially become the Leader, so this status may change over time.
|
|
104
|
+
|
|
105
|
+
## Developer Mode
|
|
106
|
+
|
|
107
|
+
The dashboard has a built-in developer mode for raw, per-attribute and per-command interaction with a node. It is intended for people building or debugging Matter integrations — not for everyday control of devices.
|
|
108
|
+
|
|
109
|
+
### Enable / disable
|
|
110
|
+
|
|
111
|
+
- Append `?dev=on` (or any non-empty value) to the dashboard URL, or
|
|
112
|
+
- Open **Settings** from the header (cog icon) and toggle **Enable developer mode**.
|
|
113
|
+
|
|
114
|
+
Developer mode is browser-only and is not persisted. Reloading without the `?dev` parameter disables it. While active, a small **DEV** badge is shown in the header.
|
|
115
|
+
|
|
116
|
+
### What developer mode adds on a cluster view
|
|
117
|
+
|
|
118
|
+
- **Per-attribute Read button** — forces an immediate read of a single attribute. On success the icon briefly flashes; on failure the raw server error is shown in a popup.
|
|
119
|
+
- **Per-attribute Write button** — shown only for writable attributes. Opens an editor prefilled with the current value as JSON; pressing *Write* sends the exact value to the server.
|
|
120
|
+
- **Commands panel** (collapsed by default) — lists every command the cluster reports as supported. Each entry opens a payload editor; pressing *Invoke* sends the command and shows the server response as JSON, or the raw error if the invocation fails.
|
|
121
|
+
|
|
122
|
+
Unknown attributes (not present in the dashboard's metadata) cannot be written. Unknown commands (in the cluster's accepted list but missing from the metadata) are not listed. All server errors are shown verbatim so the exact response from the device is visible.
|
|
@@ -7,6 +7,13 @@ export interface ClusterAttributeDescription {
|
|
|
7
7
|
cluster_id: number;
|
|
8
8
|
label: string;
|
|
9
9
|
type: string;
|
|
10
|
+
writable: boolean;
|
|
11
|
+
}
|
|
12
|
+
export interface ClusterCommandDescription {
|
|
13
|
+
id: number;
|
|
14
|
+
cluster_id: number;
|
|
15
|
+
name: string;
|
|
16
|
+
label: string;
|
|
10
17
|
}
|
|
11
18
|
export interface ClusterDescription {
|
|
12
19
|
id: number;
|
|
@@ -14,6 +21,9 @@ export interface ClusterDescription {
|
|
|
14
21
|
attributes: {
|
|
15
22
|
[attribute_id: string]: ClusterAttributeDescription;
|
|
16
23
|
};
|
|
24
|
+
commands: {
|
|
25
|
+
[command_id: string]: ClusterCommandDescription;
|
|
26
|
+
};
|
|
17
27
|
}
|
|
18
28
|
export declare const device_types: Record<number, DeviceType>;
|
|
19
29
|
export declare const clusters: Record<number, ClusterDescription>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"descriptions.d.ts","sourceRoot":"","sources":["../../../../src/client/models/descriptions.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,UAAU;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,2BAA2B;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"descriptions.d.ts","sourceRoot":"","sources":["../../../../src/client/models/descriptions.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,UAAU;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,2BAA2B;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE;QAAE,CAAC,YAAY,EAAE,MAAM,GAAG,2BAA2B,CAAA;KAAE,CAAC;IACpE,QAAQ,EAAE;QAAE,CAAC,UAAU,EAAE,MAAM,GAAG,yBAAyB,CAAA;KAAE,CAAC;CACjE;AAED,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAiSnD,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CA0ndvD,CAAC"}
|