@matter-server/dashboard 0.3.3 → 0.3.4
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 +76 -0
- package/dist/esm/pages/components/node-details.js +1 -1
- package/dist/esm/pages/components/node-details.js.map +1 -1
- package/dist/esm/pages/matter-cluster-view.d.ts.map +1 -1
- package/dist/esm/pages/matter-cluster-view.js +9 -4
- package/dist/esm/pages/matter-cluster-view.js.map +1 -1
- package/dist/esm/pages/matter-endpoint-view.d.ts.map +1 -1
- package/dist/esm/pages/matter-endpoint-view.js +8 -2
- package/dist/esm/pages/matter-endpoint-view.js.map +1 -1
- package/dist/esm/pages/matter-node-view.d.ts.map +1 -1
- package/dist/esm/pages/matter-node-view.js +17 -3
- package/dist/esm/pages/matter-node-view.js.map +1 -1
- package/dist/esm/pages/network/base-network-graph.d.ts.map +1 -1
- package/dist/esm/pages/network/base-network-graph.js +10 -2
- package/dist/esm/pages/network/base-network-graph.js.map +1 -1
- package/dist/esm/pages/network/device-icons.js +1 -1
- package/dist/esm/pages/network/network-details.d.ts +31 -1
- package/dist/esm/pages/network/network-details.d.ts.map +1 -1
- package/dist/esm/pages/network/network-details.js +233 -15
- package/dist/esm/pages/network/network-details.js.map +1 -1
- package/dist/esm/pages/network/network-types.d.ts +6 -0
- package/dist/esm/pages/network/network-types.d.ts.map +1 -1
- package/dist/esm/pages/network/network-utils.d.ts +26 -0
- package/dist/esm/pages/network/network-utils.d.ts.map +1 -1
- package/dist/esm/pages/network/network-utils.js +71 -3
- package/dist/esm/pages/network/network-utils.js.map +1 -1
- package/dist/esm/pages/network/thread-graph.d.ts.map +1 -1
- package/dist/esm/pages/network/thread-graph.js +5 -2
- package/dist/esm/pages/network/thread-graph.js.map +1 -1
- package/dist/esm/pages/network/update-connections-dialog.d.ts +55 -0
- package/dist/esm/pages/network/update-connections-dialog.d.ts.map +1 -0
- package/dist/esm/pages/network/update-connections-dialog.js +284 -0
- package/dist/esm/pages/network/update-connections-dialog.js.map +6 -0
- package/dist/esm/pages/network/wifi-graph.d.ts.map +1 -1
- package/dist/esm/pages/network/wifi-graph.js +5 -3
- package/dist/esm/pages/network/wifi-graph.js.map +1 -1
- package/dist/esm/util/format_hex.d.ts +18 -0
- package/dist/esm/util/format_hex.d.ts.map +1 -1
- package/dist/esm/util/format_hex.js +21 -1
- package/dist/esm/util/format_hex.js.map +1 -1
- package/dist/web/js/{commission-node-dialog-B1_khzZb.js → commission-node-dialog-CcMuttYO.js} +5 -5
- package/dist/web/js/{commission-node-existing-RpdajrwF.js → commission-node-existing-CqTRDMAr.js} +2 -2
- package/dist/web/js/{commission-node-thread-5f2itkTG.js → commission-node-thread-DgwtTVwK.js} +2 -2
- package/dist/web/js/{commission-node-wifi-DZ_pWqsa.js → commission-node-wifi-XaN2SEnE.js} +2 -2
- package/dist/web/js/{dialog-box-DEUxM4B1.js → dialog-box-COpDD8i7.js} +2 -2
- package/dist/web/js/{fire_event-BczBMT8E.js → fire_event-mDYWi2sw.js} +1 -1
- package/dist/web/js/{log-level-dialog-Cr3PfX1X.js → log-level-dialog-Bc32kZVw.js} +2 -2
- package/dist/web/js/main.js +1 -1
- package/dist/web/js/{matter-dashboard-app-BuCe_Jxf.js → matter-dashboard-app-CrBHT4fT.js} +1824 -208
- package/dist/web/js/{node-binding-dialog-DMiHNDLA.js → node-binding-dialog-C8fqOJiB.js} +2 -2
- package/dist/web/js/prevent_default-D-ohDGsN.js +8 -0
- package/package.json +4 -4
- package/src/pages/components/node-details.ts +1 -1
- package/src/pages/matter-cluster-view.ts +11 -4
- package/src/pages/matter-endpoint-view.ts +10 -3
- package/src/pages/matter-node-view.ts +19 -4
- package/src/pages/network/base-network-graph.ts +17 -3
- package/src/pages/network/device-icons.ts +1 -1
- package/src/pages/network/network-details.ts +281 -16
- package/src/pages/network/network-types.ts +6 -0
- package/src/pages/network/network-utils.ts +109 -0
- package/src/pages/network/thread-graph.ts +7 -1
- package/src/pages/network/update-connections-dialog.ts +327 -0
- package/src/pages/network/wifi-graph.ts +4 -3
- package/src/util/format_hex.ts +39 -0
- package/dist/web/js/prevent_default-D4FX_PIh.js +0 -774
package/README.md
CHANGED
|
@@ -25,3 +25,79 @@ You can also set the theme via URL query parameter:
|
|
|
25
25
|
- `?theme=system` - Switch to system auto-detect
|
|
26
26
|
|
|
27
27
|
The query parameter will override and save the preference to localStorage.
|
|
28
|
+
|
|
29
|
+
## Network Visualization
|
|
30
|
+
|
|
31
|
+
The Network page displays a visual graph of your Matter network topology, showing Thread and WiFi connections between devices.
|
|
32
|
+
|
|
33
|
+
### Understanding Node Colors
|
|
34
|
+
|
|
35
|
+
Node colors indicate device status:
|
|
36
|
+
|
|
37
|
+
- **Grey**: Online device (commissioned to this fabric)
|
|
38
|
+
- **Blue**: Currently selected node
|
|
39
|
+
- **Red**: Offline device (not responding)
|
|
40
|
+
- **Orange**: Unknown/external device (not commissioned to this fabric, detected in neighbor tables)
|
|
41
|
+
|
|
42
|
+
### Understanding Connection Lines
|
|
43
|
+
|
|
44
|
+
Connection lines represent the communication links between devices:
|
|
45
|
+
|
|
46
|
+
- **Solid lines**: Connections to online devices
|
|
47
|
+
- **Dashed lines**: Connections to offline or unknown devices (based on last known data)
|
|
48
|
+
- **Line colors** indicate signal quality:
|
|
49
|
+
- **Green**: Strong signal (RSSI > -60 dBm or LQI > 200)
|
|
50
|
+
- **Yellow/Orange**: Medium signal (RSSI > -75 dBm or LQI > 100)
|
|
51
|
+
- **Red**: Weak signal
|
|
52
|
+
|
|
53
|
+
### Thread Network Details
|
|
54
|
+
|
|
55
|
+
When you click on a Thread device, the details panel shows network information:
|
|
56
|
+
|
|
57
|
+
- **Thread Role**: The device's role in the Thread network (Router, End Device, etc.)
|
|
58
|
+
- **Direct neighbors**: Number of devices in the neighbor table (direct RF neighbors)
|
|
59
|
+
- **Routable destinations**: Number of destinations in the route table (routers only)
|
|
60
|
+
|
|
61
|
+
#### Connection Details
|
|
62
|
+
|
|
63
|
+
Each connection shows:
|
|
64
|
+
|
|
65
|
+
- **LQI (Link Quality Indicator)**: 0-255, higher is better. Derived from RF signal quality.
|
|
66
|
+
- **RSSI (Received Signal Strength)**: In dBm, closer to 0 is stronger (e.g., -50 dBm is better than -80 dBm).
|
|
67
|
+
- **Bidir (Bidirectional LQI)**: Average of inbound and outbound LQI from the route table. Only available for router connections.
|
|
68
|
+
- **Cost (Path Cost)**: Number of hops to reach the destination. 1 = direct link, higher = multi-hop route.
|
|
69
|
+
|
|
70
|
+
#### Data Sources
|
|
71
|
+
|
|
72
|
+
Thread devices maintain two tables:
|
|
73
|
+
|
|
74
|
+
1. **Neighbor Table** (0/53/7): Direct RF neighbors visible to the device. All Thread devices have this.
|
|
75
|
+
2. **Route Table** (0/53/8): Routing paths to other nodes. Only routers maintain this table.
|
|
76
|
+
|
|
77
|
+
The visualization combines both tables directly from the devices to provide the most complete picture of your network.
|
|
78
|
+
|
|
79
|
+
### Update Connections
|
|
80
|
+
|
|
81
|
+
Click the refresh button in the device details panel to update network data:
|
|
82
|
+
|
|
83
|
+
- **Online devices**: Refreshes neighbor and route tables from the selected device
|
|
84
|
+
- **Include neighbors**: Optionally refresh data from connected online neighbors too
|
|
85
|
+
- **Offline devices**: Updates data from online neighbors that can see the offline device
|
|
86
|
+
|
|
87
|
+
This is useful when network topology changes or when you want the latest signal quality readings.
|
|
88
|
+
|
|
89
|
+
### Unknown Devices
|
|
90
|
+
|
|
91
|
+
Devices that appear in neighbor tables but are not commissioned to your fabric are shown as "Unknown" with an orange icon. These could be:
|
|
92
|
+
|
|
93
|
+
- Devices commissioned to a different fabric (e.g., Home Assistant's Thread Border Router)
|
|
94
|
+
- Border routers from other Thread networks
|
|
95
|
+
- Thread devices in pairing mode
|
|
96
|
+
|
|
97
|
+
Unknown devices show as "Router (external)" or "End Device (external)" based on their radio behavior (rxOnWhenIdle). Since they're not commissioned to this fabric, we cannot query their actual Thread role (Leader, Router, etc.).
|
|
98
|
+
|
|
99
|
+
### Limitations
|
|
100
|
+
|
|
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
|
+
|
|
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.
|
|
@@ -69,7 +69,7 @@ let NodeDetails = class extends LitElement {
|
|
|
69
69
|
<md-list>
|
|
70
70
|
<md-list-item>
|
|
71
71
|
<div slot="headline">
|
|
72
|
-
<b
|
|
72
|
+
<b>${this.node.nodeLabel || "Node Info"}</b>
|
|
73
73
|
${this.node.available ? nothing : html`<span class="status">OFFLINE</span>`}
|
|
74
74
|
</div>
|
|
75
75
|
</md-list-item>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/pages/components/node-details.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;AACP,SAAS,mBAAmB,SAAS,iBAAiB,aAAa,iBAAiB;AAEpF,SAAS,eAAe;AAExB,SAAS,YAAY,KAAK,MAAM,eAAe;AAC/C,SAAS,eAAe,UAAU,aAAa;AAE/C,SAAS,iBAAiB,wBAAwB;AAClD,SAAS,6BAA6B;AACtC,OAAO;AACP,SAAS,mBAAmB;AAC5B,SAAS,8BAA8B;AACvC,SAAS,sBAAsB;AAG/B,MAAM,sBAA8C;AAAA,EAChD,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AACP;AAEA,SAAS,oBAAoBA,QAAe,UAA2B;AACnE,QAAM,QAAQ,oBAAoBA,MAAK,KAAK,YAAYA,MAAK;AAE7D,MAAIA,WAAU,KAAK,aAAa,QAAW;AACvC,WAAO,GAAG,KAAK,KAAK,QAAQ;AAAA,EAChC;AACA,SAAO;AACX;AAEA,SAAS,mBAAmB,MAAgC;AACxD,QAAM,kBAAkB,IAAI,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,IAAI,SAAO,OAAO,IAAI,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;AAClG,QAAM,iBAAkC,oBAAI,IAAI;AAChD,kBAAgB,QAAQ,gBAAc;AAClC,2BAAuB,MAAM,UAAU,EAAE,QAAQ,gBAAc;AAC3D,qBAAe,IAAI,UAAU;AAAA,IACjC,CAAC;AAAA,EACL,CAAC;AACD,SAAO,MAAM,KAAK,cAAc;AACpC;AAGO,IAAM,cAAN,cAA0B,WAAW;AAAA,EAArC;AAAA;AAMH,SAAQ,mBAA4B;AAAA;AAAA,EAMjB,SAAS;AACxB,QAAI,CAAC,KAAK,KAAM,QAAO;AAEvB,UAAM,WAAW,KAAK,KAAK,WAAW,KAAK,WAAW,OAAO;AAE7D,WAAO;AAAA;AAAA;AAAA;AAAA,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["state"]
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"matter-cluster-view.d.ts","sourceRoot":"","sources":["../../../src/pages/matter-cluster-view.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,+BAA+B,CAAC;AACvC,OAAO,sCAAsC,CAAC;AAC9C,OAAO,yBAAyB,CAAC;AACjC,OAAO,8BAA8B,CAAC;AACtC,OAAO,
|
|
1
|
+
{"version":3,"file":"matter-cluster-view.d.ts","sourceRoot":"","sources":["../../../src/pages/matter-cluster-view.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,+BAA+B,CAAC;AACvC,OAAO,sCAAsC,CAAC;AAC9C,OAAO,yBAAyB,CAAC;AACjC,OAAO,8BAA8B,CAAC;AACtC,OAAO,EAAgB,YAAY,EAAE,UAAU,EAAqB,MAAM,0BAA0B,CAAC;AACrG,OAAO,EAAa,UAAU,EAAE,MAAM,KAAK,CAAC;AAK5C,OAAO,2BAA2B,CAAC;AACnC,OAAO,kCAAkC,CAAC;AAM1C,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,qBAAqB;QAC3B,qBAAqB,EAAE,iBAAiB,CAAC;KAC5C;CACJ;AA+BD,cACM,iBAAkB,SAAQ,UAAU;IAC/B,MAAM,EAAG,YAAY,CAAC;IAGtB,IAAI,CAAC,EAAE,UAAU,CAAC;IAIlB,QAAQ,EAAG,MAAM,CAAC;IAGlB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEf,MAAM;YAyED,mBAAmB;IAQjC,OAAO,CAAC,sBAAsB;IAkBrB,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAgBxD,OAAO,CAAC,OAAO;IAIf,OAAgB,MAAM,0BAwCpB;CACL"}
|
|
@@ -18,8 +18,8 @@ import "@material/web/divider/divider";
|
|
|
18
18
|
import "@material/web/iconbutton/icon-button";
|
|
19
19
|
import "@material/web/list/list";
|
|
20
20
|
import "@material/web/list/list-item";
|
|
21
|
-
import { toBigIntAwareJson } from "@matter-server/ws-client";
|
|
22
|
-
import {
|
|
21
|
+
import { isTestNodeId, toBigIntAwareJson } from "@matter-server/ws-client";
|
|
22
|
+
import { css, html, LitElement } from "lit";
|
|
23
23
|
import { customElement, property } from "lit/decorators.js";
|
|
24
24
|
import { unsafeHTML } from "lit/directives/unsafe-html.js";
|
|
25
25
|
import { clusters } from "../client/models/descriptions.js";
|
|
@@ -27,7 +27,7 @@ import { showAlertDialog } from "../components/dialog-box/show-dialog-box.js";
|
|
|
27
27
|
import "../components/ha-svg-icon";
|
|
28
28
|
import "../pages/components/node-details";
|
|
29
29
|
import { bindingContext } from "./components/context.js";
|
|
30
|
-
import { formatHex } from "../util/format_hex.js";
|
|
30
|
+
import { formatHex, formatNodeAddress, getEffectiveFabricIndex } from "../util/format_hex.js";
|
|
31
31
|
import { getClusterCommandsTag } from "./cluster-commands/index.js";
|
|
32
32
|
const GLOBAL_ATTRIBUTE_MIN = 65520;
|
|
33
33
|
const GLOBAL_ATTRIBUTE_MAX = 65535;
|
|
@@ -55,9 +55,14 @@ let MatterClusterView = class extends LitElement {
|
|
|
55
55
|
<button @click=${this._goBack}>Back</button>
|
|
56
56
|
`;
|
|
57
57
|
}
|
|
58
|
+
const fabricIndex = getEffectiveFabricIndex(
|
|
59
|
+
this.client.serverInfo.fabric_index,
|
|
60
|
+
isTestNodeId(this.node.node_id)
|
|
61
|
+
);
|
|
62
|
+
const nodeHex = formatNodeAddress(fabricIndex, this.node.node_id);
|
|
58
63
|
return html`
|
|
59
64
|
<dashboard-header
|
|
60
|
-
.title=${`Node ${this.node.node_id} | Endpoint ${this.endpoint} | Cluster ${this.cluster}`}
|
|
65
|
+
.title=${`Node ${this.node.node_id} ${nodeHex} | Endpoint ${this.endpoint} | Cluster ${this.cluster}`}
|
|
61
66
|
.backButton=${`#node/${this.node.node_id}/${this.endpoint}`}
|
|
62
67
|
.client=${this.client}
|
|
63
68
|
></dashboard-header>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/pages/matter-cluster-view.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,eAAe;AACxB,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;AACP,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"matter-endpoint-view.d.ts","sourceRoot":"","sources":["../../../src/pages/matter-endpoint-view.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,+BAA+B,CAAC;AACvC,OAAO,sCAAsC,CAAC;AAC9C,OAAO,yBAAyB,CAAC;AACjC,OAAO,8BAA8B,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"matter-endpoint-view.d.ts","sourceRoot":"","sources":["../../../src/pages/matter-endpoint-view.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,+BAA+B,CAAC;AACvC,OAAO,sCAAsC,CAAC;AAC9C,OAAO,yBAAyB,CAAC;AACjC,OAAO,8BAA8B,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAgB,MAAM,0BAA0B,CAAC;AAElF,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAG5C,OAAO,EAAE,UAAU,EAA0B,MAAM,kCAAkC,CAAC;AACtF,OAAO,2BAA2B,CAAC;AAGnC,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,qBAAqB;QAC3B,sBAAsB,EAAE,kBAAkB,CAAC;KAC9C;CACJ;AAcD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU,EAAE,CAOvF;AAED,cACM,kBAAmB,SAAQ,UAAU;IAChC,MAAM,EAAG,YAAY,CAAC;IAGtB,IAAI,CAAC,EAAE,UAAU,CAAC;IAGlB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAEhB,MAAM;IA8Df,OAAO,CAAC,OAAO;IAIf,OAAgB,MAAM,0BAoCpB;CACL"}
|
|
@@ -17,13 +17,14 @@ import "@material/web/divider/divider";
|
|
|
17
17
|
import "@material/web/iconbutton/icon-button";
|
|
18
18
|
import "@material/web/list/list";
|
|
19
19
|
import "@material/web/list/list-item";
|
|
20
|
+
import { isTestNodeId } from "@matter-server/ws-client";
|
|
20
21
|
import { mdiChevronRight } from "@mdi/js";
|
|
21
22
|
import { LitElement, css, html } from "lit";
|
|
22
23
|
import { customElement, property } from "lit/decorators.js";
|
|
23
24
|
import { guard } from "lit/directives/guard.js";
|
|
24
25
|
import { clusters, device_types } from "../client/models/descriptions.js";
|
|
25
26
|
import "../components/ha-svg-icon";
|
|
26
|
-
import { formatHex } from "../util/format_hex.js";
|
|
27
|
+
import { formatHex, formatNodeAddress, getEffectiveFabricIndex } from "../util/format_hex.js";
|
|
27
28
|
function getUniqueClusters(node, endpoint) {
|
|
28
29
|
return Array.from(
|
|
29
30
|
new Set(
|
|
@@ -49,9 +50,14 @@ let MatterEndpointView = class extends LitElement {
|
|
|
49
50
|
<button @click=${this._goBack}>Back</button>
|
|
50
51
|
`;
|
|
51
52
|
}
|
|
53
|
+
const fabricIndex = getEffectiveFabricIndex(
|
|
54
|
+
this.client.serverInfo.fabric_index,
|
|
55
|
+
isTestNodeId(this.node.node_id)
|
|
56
|
+
);
|
|
57
|
+
const nodeHex = formatNodeAddress(fabricIndex, this.node.node_id);
|
|
52
58
|
return html`
|
|
53
59
|
<dashboard-header
|
|
54
|
-
.title=${`Node ${this.node.node_id} | Endpoint ${this.endpoint}`}
|
|
60
|
+
.title=${`Node ${this.node.node_id} ${nodeHex} | Endpoint ${this.endpoint}`}
|
|
55
61
|
.backButton=${`#node/${this.node.node_id}`}
|
|
56
62
|
.client=${this.client}
|
|
57
63
|
></dashboard-header>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/pages/matter-endpoint-view.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"matter-node-view.d.ts","sourceRoot":"","sources":["../../../src/pages/matter-node-view.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,+BAA+B,CAAC;AACvC,OAAO,sCAAsC,CAAC;AAC9C,OAAO,yBAAyB,CAAC;AACjC,OAAO,8BAA8B,CAAC;AACtC,OAAO,
|
|
1
|
+
{"version":3,"file":"matter-node-view.d.ts","sourceRoot":"","sources":["../../../src/pages/matter-node-view.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,+BAA+B,CAAC;AACvC,OAAO,sCAAsC,CAAC;AAC9C,OAAO,yBAAyB,CAAC;AACjC,OAAO,8BAA8B,CAAC;AACtC,OAAO,EAAgB,YAAY,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAElF,OAAO,EAAa,UAAU,EAAE,MAAM,KAAK,CAAC;AAG5C,OAAO,2BAA2B,CAAC;AAEnC,OAAO,qBAAqB,CAAC;AAC7B,OAAO,2BAA2B,CAAC;AAInC,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,qBAAqB;QAC3B,kBAAkB,EAAE,cAAc,CAAC;KACtC;CACJ;AASD,cACM,cAAe,SAAQ,UAAU;IAC5B,MAAM,EAAG,YAAY,CAAC;IAGtB,IAAI,CAAC,EAAE,UAAU,CAAC;IAEhB,MAAM;IA8Ef,OAAO,CAAC,OAAO;IAIf,OAAgB,MAAM,0BAyFpB;CACL"}
|
|
@@ -17,11 +17,13 @@ import "@material/web/divider/divider";
|
|
|
17
17
|
import "@material/web/iconbutton/icon-button";
|
|
18
18
|
import "@material/web/list/list";
|
|
19
19
|
import "@material/web/list/list-item";
|
|
20
|
+
import { isTestNodeId } from "@matter-server/ws-client";
|
|
20
21
|
import { mdiChevronRight, mdiGraphOutline } from "@mdi/js";
|
|
21
|
-
import {
|
|
22
|
+
import { css, html, LitElement } from "lit";
|
|
22
23
|
import { customElement, property } from "lit/decorators.js";
|
|
23
24
|
import { guard } from "lit/directives/guard.js";
|
|
24
25
|
import "../components/ha-svg-icon";
|
|
26
|
+
import { formatNodeAddress, getEffectiveFabricIndex } from "../util/format_hex.js";
|
|
25
27
|
import "./components/header";
|
|
26
28
|
import "./components/node-details";
|
|
27
29
|
import { getEndpointDeviceTypes } from "./matter-endpoint-view.js";
|
|
@@ -43,9 +45,14 @@ let MatterNodeView = class extends LitElement {
|
|
|
43
45
|
const showGraphButton = networkType === "thread" || networkType === "wifi" || networkType === "ethernet";
|
|
44
46
|
const graphViewType = networkType === "ethernet" ? "wifi" : networkType;
|
|
45
47
|
const graphUrl = showGraphButton ? `#${graphViewType}/${this.node.node_id}` : null;
|
|
48
|
+
const fabricIndex = getEffectiveFabricIndex(
|
|
49
|
+
this.client.serverInfo.fabric_index,
|
|
50
|
+
isTestNodeId(this.node.node_id)
|
|
51
|
+
);
|
|
52
|
+
const nodeHex = formatNodeAddress(fabricIndex, this.node.node_id);
|
|
46
53
|
return html`
|
|
47
54
|
<dashboard-header
|
|
48
|
-
.title=${
|
|
55
|
+
.title=${`Node ${this.node.node_id} ${nodeHex}`}
|
|
49
56
|
.client=${this.client}
|
|
50
57
|
backButton="#"
|
|
51
58
|
></dashboard-header>
|
|
@@ -53,7 +60,7 @@ let MatterNodeView = class extends LitElement {
|
|
|
53
60
|
<!-- node details section -->
|
|
54
61
|
<div class="container">
|
|
55
62
|
<div class="node-title-bar">
|
|
56
|
-
<h2>Node ${this.node.node_id}</h2>
|
|
63
|
+
<h2>Node ${this.node.node_id} <span class="node-id-hex">${nodeHex}</span></h2>
|
|
57
64
|
${showGraphButton ? html`
|
|
58
65
|
<a href=${graphUrl} class="show-in-graph-button" title="Show in ${graphViewType} graph">
|
|
59
66
|
<ha-svg-icon .path=${mdiGraphOutline}></ha-svg-icon>
|
|
@@ -141,6 +148,13 @@ MatterNodeView.styles = css`
|
|
|
141
148
|
color: var(--md-sys-color-on-background, #333);
|
|
142
149
|
}
|
|
143
150
|
|
|
151
|
+
.node-id-hex {
|
|
152
|
+
font-size: 0.75em;
|
|
153
|
+
font-weight: 400;
|
|
154
|
+
color: var(--md-sys-color-on-surface-variant, #666);
|
|
155
|
+
font-family: monospace;
|
|
156
|
+
}
|
|
157
|
+
|
|
144
158
|
.show-in-graph-button {
|
|
145
159
|
display: inline-flex;
|
|
146
160
|
align-items: center;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/pages/matter-node-view.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-network-graph.d.ts","sourceRoot":"","sources":["../../../../src/pages/network/base-network-graph.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAO,MAAM,KAAK,CAAC;AAGtC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE7E;;;GAGG;AACH,8BAAsB,gBAAiB,SAAQ,UAAU;IAE9C,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAM;IAG9C,SAAS,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAQ;IAEzD,SAAS,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC7B,SAAS,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACpD,SAAS,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACpD,SAAS,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC;IACtC,SAAS,CAAC,eAAe,CAAC,EAAE,cAAc,CAAC;IAC3C,SAAS,CAAC,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IACzC,SAAS,CAAC,oBAAoB,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;IAE/D,oEAAoE;IACpE,OAAO,CAAC,mBAAmB,CAAgE;IAE3F,SAAS,CAAC,aAAa,IAAI,MAAM;IAIjC,SAAS,CAAC,mBAAmB,IAAI,MAAM;IAIvC;;OAEG;IACH,SAAS,CAAC,kBAAkB,IAAI,GAAG;IAoB1B,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAc/D;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAmB3B,wDAAwD;IACxD,SAAS,CAAC,qBAAqB,IAAI,IAAI;IAS9B,YAAY,IAAI,IAAI;
|
|
1
|
+
{"version":3,"file":"base-network-graph.d.ts","sourceRoot":"","sources":["../../../../src/pages/network/base-network-graph.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAO,MAAM,KAAK,CAAC;AAGtC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE7E;;;GAGG;AACH,8BAAsB,gBAAiB,SAAQ,UAAU;IAE9C,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAM;IAG9C,SAAS,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAQ;IAEzD,SAAS,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC7B,SAAS,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACpD,SAAS,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACpD,SAAS,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC;IACtC,SAAS,CAAC,eAAe,CAAC,EAAE,cAAc,CAAC;IAC3C,SAAS,CAAC,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IACzC,SAAS,CAAC,oBAAoB,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;IAE/D,oEAAoE;IACpE,OAAO,CAAC,mBAAmB,CAAgE;IAE3F,SAAS,CAAC,aAAa,IAAI,MAAM;IAIjC,SAAS,CAAC,mBAAmB,IAAI,MAAM;IAIvC;;OAEG;IACH,SAAS,CAAC,kBAAkB,IAAI,GAAG;IAoB1B,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAc/D;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAmB3B,wDAAwD;IACxD,SAAS,CAAC,qBAAqB,IAAI,IAAI;IAS9B,YAAY,IAAI,IAAI;IAkDpB,oBAAoB,IAAI,IAAI;IAgBrC,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAyFpC;;OAEG;IACI,OAAO,IAAI,OAAO;IAIzB;;OAEG;IACI,GAAG,IAAI,IAAI;IASlB;;OAEG;IACI,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAkBhD,SAAS,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI;IAUrE;;OAEG;IACH,SAAS,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAqE9D;;OAEG;IACH,SAAS,CAAC,gBAAgB,IAAI,IAAI;IA8BlC;;OAEG;IACH,SAAS,CAAC,wBAAwB,IAAI,IAAI;IAI1C;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,YAAY,IAAI,IAAI;IAEvC,OAAgB,MAAM,0BAuCpB;CACL"}
|
|
@@ -110,15 +110,23 @@ class BaseNetworkGraph extends LitElement {
|
|
|
110
110
|
this._resizeObserver.observe(this._container);
|
|
111
111
|
}
|
|
112
112
|
this._themeUnsubscribe = ThemeService.subscribe(() => {
|
|
113
|
-
if (this._network) {
|
|
113
|
+
if (this._network && this._nodesDataSet) {
|
|
114
|
+
const fontColor = this._getFontColor();
|
|
114
115
|
this._network.setOptions({
|
|
115
116
|
nodes: {
|
|
116
117
|
font: {
|
|
117
|
-
color:
|
|
118
|
+
color: fontColor
|
|
118
119
|
}
|
|
119
120
|
}
|
|
120
121
|
});
|
|
121
122
|
this._updateGraph();
|
|
123
|
+
const allNodes = this._nodesDataSet.get();
|
|
124
|
+
const nodeUpdates = allNodes.map((node) => ({
|
|
125
|
+
id: node.id,
|
|
126
|
+
font: { color: fontColor }
|
|
127
|
+
}));
|
|
128
|
+
this._nodesDataSet.update(nodeUpdates);
|
|
129
|
+
this._network.redraw();
|
|
122
130
|
}
|
|
123
131
|
});
|
|
124
132
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/pages/network/base-network-graph.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,SAAS,YAAY,WAAW;AAChC,SAAS,UAAU,aAAa;AAEhC,SAAS,SAAS,eAAe;AACjC,SAAS,oBAAoB;AAOtB,MAAe,yBAAyB,WAAW;AAAA,EAAnD;AAAA;AAEH,SAAO,QAAoC,CAAC;AAG5C,SAAU,kBAA0C;AAWpD;AAAA,SAAQ,sBAAyE,oBAAI,IAAI;AAAA;AAAA,EAE/E,gBAAwB;AAC9B,WAAO,aAAa,mBAAmB,SAAS,YAAY;AAAA,EAChE;AAAA,EAEU,sBAA8B;AACpC,WAAO,aAAa,mBAAmB,SAAS,YAAY;AAAA,EAChE;AAAA;AAAA;AAAA;AAAA,EAKU,qBAA0B;AAChC,WAAO;AAAA,MACH,SAAS;AAAA,MACT,QAAQ;AAAA,MACR,kBAAkB;AAAA,QACd,uBAAuB;AAAA,QACvB,gBAAgB;AAAA,QAChB,cAAc;AAAA,QACd,gBAAgB;AAAA,QAChB,SAAS;AAAA,QACT,cAAc;AAAA,MAClB;AAAA,MACA,eAAe;AAAA,QACX,SAAS;AAAA,QACT,YAAY;AAAA,QACZ,gBAAgB;AAAA,MACpB;AAAA,IACJ;AAAA,EACJ;AAAA,EAES,QAAQ,mBAA+C;AAC5D,UAAM,QAAQ,iBAAiB;AAI/B,QAAI,CAAC,KAAK,cAAc,CAAC,KAAK,iBAAiB;AAC3C,WAAK,oBAAoB;AAAA,IAC7B;AAEA,QAAI,kBAAkB,IAAI,OAAO,GAAG;AAChC,WAAK,sBAAsB;AAAA,IAC/B;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA,EAMQ,sBAA4B;AAChC,UAAM,YAAY,KAAK,YAAY,cAAc,kBAAkB;AACnE,QAAI,WAAW;AACX,WAAK,aAAa;AAClB,WAAK,kBAAkB,IAAI,eAAe,aAAW;AACjD,cAAM,QAAQ,QAAQ,CAAC;AACvB,YAAI,SAAS,MAAM,YAAY,QAAQ,KAAK,MAAM,YAAY,SAAS,GAAG;AACtE,cAAI,CAAC,KAAK,UAAU;AAChB,iBAAK,mBAAmB;AAAA,UAC5B,OAAO;AACH,iBAAK,SAAS,QAAQ,GAAG,MAAM,YAAY,KAAK,MAAM,GAAG,MAAM,YAAY,MAAM,IAAI;AACrF,iBAAK,SAAS,OAAO;AAAA,UACzB;AAAA,QACJ;AAAA,MACJ,CAAC;AACD,WAAK,gBAAgB,QAAQ,KAAK,UAAU;AAAA,IAChD;AAAA,EACJ;AAAA;AAAA,EAGU,wBAA8B;AACpC,QAAI,KAAK,sBAAsB;AAC3B,mBAAa,KAAK,oBAAoB;AAAA,IAC1C;AACA,SAAK,uBAAuB,WAAW,MAAM;AACzC,WAAK,aAAa;AAAA,IACtB,GAAG,GAAG;AAAA,EACV;AAAA,EAES,eAAqB;AAC1B,SAAK,aAAa,KAAK,YAAY,cAAc,kBAAkB;AACnE,QAAI,KAAK,YAAY;AAEjB,WAAK,kBAAkB,IAAI,eAAe,aAAW;AACjD,cAAM,QAAQ,QAAQ,CAAC;AACvB,YAAI,SAAS,MAAM,YAAY,QAAQ,KAAK,MAAM,YAAY,SAAS,GAAG;AACtE,cAAI,CAAC,KAAK,UAAU;AAChB,iBAAK,mBAAmB;AAAA,UAC5B,OAAO;AAEH,iBAAK,SAAS,QAAQ,GAAG,MAAM,YAAY,KAAK,MAAM,GAAG,MAAM,YAAY,MAAM,IAAI;AACrF,iBAAK,SAAS,OAAO;AAAA,UACzB;AAAA,QACJ;AAAA,MACJ,CAAC;AACD,WAAK,gBAAgB,QAAQ,KAAK,UAAU;AAAA,IAChD;AAGA,SAAK,oBAAoB,aAAa,UAAU,MAAM;AAClD,UAAI,KAAK,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -182,7 +182,7 @@ function createUnknownDeviceIconDataUrl(isRouter = false, isSelected = false) {
|
|
|
182
182
|
return createIconDataUrl(iconPath, color);
|
|
183
183
|
}
|
|
184
184
|
function createWiFiRouterIconDataUrl(isSelected = false) {
|
|
185
|
-
const color = isSelected ? "#1976d2" : "#
|
|
185
|
+
const color = isSelected ? "#1976d2" : "#ff9800";
|
|
186
186
|
return createIconDataUrl(mdiWifi, color);
|
|
187
187
|
}
|
|
188
188
|
export {
|
|
@@ -4,9 +4,10 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import "@material/web/divider/divider";
|
|
7
|
-
import type
|
|
7
|
+
import { type MatterNode } from "@matter-server/ws-client";
|
|
8
8
|
import { LitElement, TemplateResult } from "lit";
|
|
9
9
|
import "../../components/ha-svg-icon";
|
|
10
|
+
import "./update-connections-dialog.js";
|
|
10
11
|
declare global {
|
|
11
12
|
interface HTMLElementTagNameMap {
|
|
12
13
|
"network-details": NetworkDetails;
|
|
@@ -25,6 +26,8 @@ export declare class NetworkDetails extends LitElement {
|
|
|
25
26
|
bssid: string;
|
|
26
27
|
connectedNodes: string[];
|
|
27
28
|
}>;
|
|
29
|
+
private client;
|
|
30
|
+
private _showUpdateDialog;
|
|
28
31
|
private _handleClose;
|
|
29
32
|
private _handleSelectNode;
|
|
30
33
|
/** Handle keyboard interaction for clickable elements (Enter/Space activates) */
|
|
@@ -32,6 +35,11 @@ export declare class NetworkDetails extends LitElement {
|
|
|
32
35
|
private _formatExtAddress;
|
|
33
36
|
private _getSignalIcon;
|
|
34
37
|
private _getSignalIconFromColor;
|
|
38
|
+
/**
|
|
39
|
+
* Format a node ID as hex for Matter log format display.
|
|
40
|
+
* Returns format like "@1:7b" for node ID 123.
|
|
41
|
+
*/
|
|
42
|
+
private _formatNodeIdHex;
|
|
35
43
|
private _renderWiFiInfo;
|
|
36
44
|
private _renderThreadInfo;
|
|
37
45
|
private _renderNodeInfo;
|
|
@@ -40,6 +48,28 @@ export declare class NetworkDetails extends LitElement {
|
|
|
40
48
|
*/
|
|
41
49
|
private _findNeighborEntry;
|
|
42
50
|
private _renderUnknownDeviceInfo;
|
|
51
|
+
/**
|
|
52
|
+
* Determine if update connections button should be shown.
|
|
53
|
+
*/
|
|
54
|
+
private _canUpdateConnections;
|
|
55
|
+
/**
|
|
56
|
+
* Get the type of the currently selected node for dialog variant.
|
|
57
|
+
*/
|
|
58
|
+
private _getSelectedNodeType;
|
|
59
|
+
/**
|
|
60
|
+
* Get online neighbors for a Thread node.
|
|
61
|
+
*/
|
|
62
|
+
private _getOnlineNeighbors;
|
|
63
|
+
/**
|
|
64
|
+
* Get online nodes that see an unknown device.
|
|
65
|
+
*/
|
|
66
|
+
private _getOnlineSeenByNodes;
|
|
67
|
+
/**
|
|
68
|
+
* Get the name of the selected node for display in dialog.
|
|
69
|
+
*/
|
|
70
|
+
private _getSelectedNodeName;
|
|
71
|
+
private _handleUpdateConnections;
|
|
72
|
+
private _handleDialogClose;
|
|
43
73
|
private _renderWiFiAccessPointInfo;
|
|
44
74
|
render(): TemplateResult<1>;
|
|
45
75
|
static styles: import("lit").CSSResult;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network-details.d.ts","sourceRoot":"","sources":["../../../../src/pages/network/network-details.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"network-details.d.ts","sourceRoot":"","sources":["../../../../src/pages/network/network-details.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,+BAA+B,CAAC;AACvC,OAAO,EAAmC,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE5F,OAAO,EAAE,UAAU,EAAE,cAAc,EAAsB,MAAM,KAAK,CAAC;AAGrE,OAAO,8BAA8B,CAAC;AAqBtC,OAAO,gCAAgC,CAAC;AAExC,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,qBAAqB;QAC3B,iBAAiB,EAAE,cAAc,CAAC;KACrC;CACJ;AAED,qBACa,cAAe,SAAQ,UAAU;IAEnC,cAAc,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAQ;IAG9C,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAM;IAGvC,cAAc,EAAE,GAAG,CACtB,MAAM,EACN;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAC1F,CAAa;IAGP,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAa;IAG9F,OAAO,CAAC,MAAM,CAAgB;IAG9B,OAAO,CAAC,iBAAiB,CAAkB;IAE3C,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,iBAAiB;IAUzB,iFAAiF;IACjF,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,uBAAuB;IAM/B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,eAAe;IAwDvB,OAAO,CAAC,iBAAiB;IA4GzB,OAAO,CAAC,eAAe;IAqDvB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAW1B,OAAO,CAAC,wBAAwB;IA4FhC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAuB7B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAY5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAwB3B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAc7B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAU5B,OAAO,CAAC,wBAAwB;IAIhC,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,0BAA0B;IAgEzB,MAAM;IAkIf,OAAgB,MAAM,0BAwQpB;CACL"}
|