@matter-server/dashboard 0.5.10 → 0.5.11
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/dist/esm/components/dialog-box/dialog-box.d.ts.map +1 -1
- package/dist/esm/components/dialog-box/dialog-box.js.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-dialog.js +1 -7
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-dialog.js.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-existing.js +1 -3
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-existing.js.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-thread.js +7 -7
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-thread.js.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/commission-node-wifi.js +1 -3
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-wifi.js.map +1 -1
- package/dist/esm/components/dialogs/settings/log-level-dialog.d.ts.map +1 -1
- package/dist/esm/components/dialogs/settings/log-level-dialog.js +1 -3
- package/dist/esm/components/dialogs/settings/log-level-dialog.js.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/basic-information-commands.js +1 -3
- package/dist/esm/pages/cluster-commands/clusters/basic-information-commands.js.map +1 -1
- package/dist/esm/pages/components/footer.d.ts.map +1 -1
- package/dist/esm/pages/components/footer.js +3 -1
- package/dist/esm/pages/components/footer.js.map +1 -1
- package/dist/esm/pages/components/header.d.ts.map +1 -1
- 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/node-details.js +10 -13
- package/dist/esm/pages/components/node-details.js.map +1 -1
- package/dist/esm/pages/components/server-details.d.ts.map +1 -1
- package/dist/esm/pages/components/server-details.js +1 -3
- package/dist/esm/pages/components/server-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.map +1 -1
- package/dist/esm/pages/matter-network-view.d.ts.map +1 -1
- package/dist/esm/pages/matter-network-view.js +2 -2
- package/dist/esm/pages/matter-network-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.map +1 -1
- package/dist/esm/pages/matter-server-view.d.ts.map +1 -1
- package/dist/esm/pages/matter-server-view.js +1 -3
- package/dist/esm/pages/matter-server-view.js.map +1 -1
- package/dist/esm/pages/network/device-panel.d.ts.map +1 -1
- package/dist/esm/pages/network/device-panel.js.map +1 -1
- package/dist/esm/pages/network/network-details.d.ts.map +1 -1
- package/dist/esm/pages/network/network-details.js +73 -74
- package/dist/esm/pages/network/network-details.js.map +1 -1
- package/dist/esm/pages/network/thread-graph.d.ts.map +1 -1
- package/dist/esm/pages/network/thread-graph.js +1 -3
- package/dist/esm/pages/network/thread-graph.js.map +1 -1
- package/dist/esm/pages/network/update-connections-dialog.d.ts.map +1 -1
- package/dist/esm/pages/network/update-connections-dialog.js +2 -6
- package/dist/esm/pages/network/update-connections-dialog.js.map +1 -1
- package/dist/esm/pages/network/wifi-graph.d.ts.map +1 -1
- package/dist/esm/pages/network/wifi-graph.js +1 -3
- package/dist/esm/pages/network/wifi-graph.js.map +1 -1
- package/dist/web/js/{commission-node-dialog-B8btRo-u.js → commission-node-dialog-C3vakpfo.js} +5 -11
- package/dist/web/js/{commission-node-existing-DV3Mdryb.js → commission-node-existing-D3r5Plch.js} +3 -5
- package/dist/web/js/{commission-node-thread-CRmXG-l7.js → commission-node-thread-C9ECK9dL.js} +9 -9
- package/dist/web/js/{commission-node-wifi-B9czrkgM.js → commission-node-wifi-DlG5s0i_.js} +3 -5
- package/dist/web/js/{dialog-box-D1T172PR.js → dialog-box-Bi0vD6U9.js} +1 -1
- package/dist/web/js/{fire_event-CpzR8zJR.js → fire_event-Cy9Y-JEv.js} +1 -1
- package/dist/web/js/{log-level-dialog-Dlvacuei.js → log-level-dialog-B7jqYNxe.js} +2 -4
- package/dist/web/js/main.js +1 -1
- package/dist/web/js/{matter-dashboard-app-CJAvDfru.js → matter-dashboard-app-BiNu4m8W.js} +97 -115
- package/dist/web/js/{node-binding-dialog-CTsnRoFC.js → node-binding-dialog-BmjRJ8c2.js} +1 -1
- package/package.json +5 -5
- package/src/components/dialog-box/dialog-box.ts +9 -15
- package/src/components/dialogs/commission-node-dialog/commission-node-dialog.ts +7 -15
- package/src/components/dialogs/commission-node-dialog/commission-node-existing.ts +1 -7
- package/src/components/dialogs/commission-node-dialog/commission-node-thread.ts +7 -15
- package/src/components/dialogs/commission-node-dialog/commission-node-wifi.ts +4 -12
- package/src/components/dialogs/settings/log-level-dialog.ts +7 -13
- package/src/pages/cluster-commands/clusters/basic-information-commands.ts +3 -7
- package/src/pages/components/footer.ts +3 -1
- package/src/pages/components/header.ts +15 -25
- package/src/pages/components/node-details.ts +29 -46
- package/src/pages/components/server-details.ts +1 -7
- package/src/pages/matter-cluster-view.ts +5 -9
- package/src/pages/matter-network-view.ts +7 -11
- package/src/pages/matter-node-view.ts +3 -5
- package/src/pages/matter-server-view.ts +1 -7
- package/src/pages/network/device-panel.ts +3 -5
- package/src/pages/network/network-details.ts +146 -192
- package/src/pages/network/thread-graph.ts +1 -3
- package/src/pages/network/update-connections-dialog.ts +17 -31
- package/src/pages/network/wifi-graph.ts +1 -3
|
@@ -92,12 +92,9 @@ export class LogLevelDialog extends LitElement {
|
|
|
92
92
|
<md-dialog open @cancel=${preventDefault} @closed=${this._handleClosed}>
|
|
93
93
|
<div slot="headline">Server Log Settings</div>
|
|
94
94
|
<div slot="content">
|
|
95
|
-
${
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
<p class="loading">Loading...</p>
|
|
99
|
-
`
|
|
100
|
-
: html`
|
|
95
|
+
${this._loading
|
|
96
|
+
? html` <p class="loading">Loading...</p> `
|
|
97
|
+
: html`
|
|
101
98
|
<p class="hint">Changes are temporary and will be reset on the next server restart.</p>
|
|
102
99
|
<div class="form-field">
|
|
103
100
|
<label>Console Log Level</label>
|
|
@@ -114,9 +111,8 @@ export class LogLevelDialog extends LitElement {
|
|
|
114
111
|
)}
|
|
115
112
|
</md-outlined-select>
|
|
116
113
|
</div>
|
|
117
|
-
${
|
|
118
|
-
|
|
119
|
-
? html`
|
|
114
|
+
${this._fileLevel !== null
|
|
115
|
+
? html`
|
|
120
116
|
<div class="form-field">
|
|
121
117
|
<label>File Log Level</label>
|
|
122
118
|
<md-outlined-select name="file" .value=${this._fileLevel}>
|
|
@@ -133,10 +129,8 @@ export class LogLevelDialog extends LitElement {
|
|
|
133
129
|
</md-outlined-select>
|
|
134
130
|
</div>
|
|
135
131
|
`
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
`
|
|
139
|
-
}
|
|
132
|
+
: nothing}
|
|
133
|
+
`}
|
|
140
134
|
</div>
|
|
141
135
|
<div slot="actions">
|
|
142
136
|
<md-text-button @click=${this._close}>Cancel</md-text-button>
|
|
@@ -74,13 +74,9 @@ export class BasicInformationClusterCommands extends BaseClusterCommands {
|
|
|
74
74
|
<details class="command-panel">
|
|
75
75
|
<summary>Node Label</summary>
|
|
76
76
|
<div class="command-content">
|
|
77
|
-
${
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
<div class="offline-warning">Node is offline - cannot edit label</div>
|
|
81
|
-
`
|
|
82
|
-
: nothing
|
|
83
|
-
}
|
|
77
|
+
${!this._isNodeAvailable
|
|
78
|
+
? html` <div class="offline-warning">Node is offline - cannot edit label</div> `
|
|
79
|
+
: nothing}
|
|
84
80
|
<div class="command-row">
|
|
85
81
|
<md-outlined-text-field
|
|
86
82
|
label="Node Label"
|
|
@@ -13,7 +13,9 @@ export class DashboardFooter extends LitElement {
|
|
|
13
13
|
return html`
|
|
14
14
|
<div class="footer">
|
|
15
15
|
The OHF Matter Server is a project by the Open Home Foundation.
|
|
16
|
-
<a href="https://www.openhomefoundation.org/structure/#support-our-work" target="_blank"
|
|
16
|
+
<a href="https://www.openhomefoundation.org/structure/#support-our-work" target="_blank"
|
|
17
|
+
>Support development</a
|
|
18
|
+
>
|
|
17
19
|
</div>
|
|
18
20
|
`;
|
|
19
21
|
}
|
|
@@ -107,26 +107,22 @@ export class DashboardHeader extends LitElement {
|
|
|
107
107
|
aria-current=${this.activeView === "nodes" ? "page" : nothing}
|
|
108
108
|
>Nodes</a
|
|
109
109
|
>
|
|
110
|
-
${
|
|
111
|
-
|
|
112
|
-
? html`<a
|
|
110
|
+
${showThreadTab
|
|
111
|
+
? html`<a
|
|
113
112
|
href="#thread"
|
|
114
113
|
class="nav-tab ${this.activeView === "thread" ? "active" : ""}"
|
|
115
114
|
aria-current=${this.activeView === "thread" ? "page" : nothing}
|
|
116
115
|
>Thread</a
|
|
117
116
|
>`
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
showWifiTab
|
|
122
|
-
? html`<a
|
|
117
|
+
: nothing}
|
|
118
|
+
${showWifiTab
|
|
119
|
+
? html`<a
|
|
123
120
|
href="#wifi"
|
|
124
121
|
class="nav-tab ${this.activeView === "wifi" ? "active" : ""}"
|
|
125
122
|
aria-current=${this.activeView === "wifi" ? "page" : nothing}
|
|
126
123
|
>WiFi</a
|
|
127
124
|
>`
|
|
128
|
-
|
|
129
|
-
}
|
|
125
|
+
: nothing}
|
|
130
126
|
</nav>
|
|
131
127
|
`;
|
|
132
128
|
}
|
|
@@ -135,15 +131,13 @@ export class DashboardHeader extends LitElement {
|
|
|
135
131
|
return html`
|
|
136
132
|
<div class="header">
|
|
137
133
|
<!-- optional back button -->
|
|
138
|
-
${
|
|
139
|
-
this.backButton
|
|
140
|
-
? html` <a .href=${this.backButton}>
|
|
134
|
+
${this.backButton
|
|
135
|
+
? html` <a .href=${this.backButton}>
|
|
141
136
|
<md-icon-button>
|
|
142
137
|
<ha-svg-icon .path=${mdiArrowLeft}></ha-svg-icon>
|
|
143
138
|
</md-icon-button>
|
|
144
139
|
</a>`
|
|
145
|
-
|
|
146
|
-
}
|
|
140
|
+
: ""}
|
|
147
141
|
|
|
148
142
|
<div class="title">${this.title ?? ""}</div>
|
|
149
143
|
${this._renderNavTabs()}
|
|
@@ -156,29 +150,25 @@ export class DashboardHeader extends LitElement {
|
|
|
156
150
|
`;
|
|
157
151
|
})}
|
|
158
152
|
<!-- settings button (only when connected) -->
|
|
159
|
-
${
|
|
160
|
-
|
|
161
|
-
? html`
|
|
153
|
+
${this.client
|
|
154
|
+
? html`
|
|
162
155
|
<md-icon-button @click=${this._openSettings} title="Server Settings">
|
|
163
156
|
<ha-svg-icon .path=${mdiCog}></ha-svg-icon>
|
|
164
157
|
</md-icon-button>
|
|
165
158
|
`
|
|
166
|
-
|
|
167
|
-
}
|
|
159
|
+
: nothing}
|
|
168
160
|
<!-- theme toggle button -->
|
|
169
161
|
<md-icon-button @click=${this._cycleTheme} .title=${this._getThemeTooltip()}>
|
|
170
162
|
<ha-svg-icon .path=${this._getThemeIcon()}></ha-svg-icon>
|
|
171
163
|
</md-icon-button>
|
|
172
164
|
<!-- optional logout button (only when client exists and not in production) -->
|
|
173
|
-
${
|
|
174
|
-
|
|
175
|
-
? html`
|
|
165
|
+
${this.client && !this.client.isProduction
|
|
166
|
+
? html`
|
|
176
167
|
<md-icon-button @click=${this.client.disconnect}>
|
|
177
168
|
<ha-svg-icon .path=${mdiLogout}></ha-svg-icon>
|
|
178
169
|
</md-icon-button>
|
|
179
170
|
`
|
|
180
|
-
|
|
181
|
-
}
|
|
171
|
+
: nothing}
|
|
182
172
|
</div>
|
|
183
173
|
</div>
|
|
184
174
|
`;
|
|
@@ -81,13 +81,7 @@ export class NodeDetails extends LitElement {
|
|
|
81
81
|
<ha-svg-icon slot="start" class="device-icon" .path=${getDeviceIcon(this.node)}></ha-svg-icon>
|
|
82
82
|
<div slot="headline">
|
|
83
83
|
<b>${this.node.nodeLabel || "Node Info"}</b>
|
|
84
|
-
${
|
|
85
|
-
this.node.available
|
|
86
|
-
? nothing
|
|
87
|
-
: html`
|
|
88
|
-
<span class="status">OFFLINE</span>
|
|
89
|
-
`
|
|
90
|
-
}
|
|
84
|
+
${this.node.available ? nothing : html` <span class="status">OFFLINE</span> `}
|
|
91
85
|
</div>
|
|
92
86
|
</md-list-item>
|
|
93
87
|
<md-list-item>
|
|
@@ -101,56 +95,48 @@ export class NodeDetails extends LitElement {
|
|
|
101
95
|
</div>
|
|
102
96
|
<div slot="supporting-text"><span class="left">Is bridge: </span>${this.node.is_bridge}</div>
|
|
103
97
|
<div slot="supporting-text"><span class="left">Serialnumber: </span>${this.node.serialNumber}</div>
|
|
104
|
-
${
|
|
105
|
-
|
|
106
|
-
? html`<div slot="supporting-text">
|
|
98
|
+
${this.node.matter_version
|
|
99
|
+
? html`<div slot="supporting-text">
|
|
107
100
|
<span class="left">Matter version: </span>${this.node.matter_version}
|
|
108
101
|
</div>`
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
? ""
|
|
114
|
-
: html` <div slot="supporting-text">
|
|
102
|
+
: nothing}
|
|
103
|
+
${this.node.is_bridge
|
|
104
|
+
? ""
|
|
105
|
+
: html` <div slot="supporting-text">
|
|
115
106
|
<span class="left">All device types: </span>${getNodeDeviceTypes(this.node)
|
|
116
107
|
.map(deviceType => {
|
|
117
108
|
return deviceType.label;
|
|
118
109
|
})
|
|
119
110
|
.join(" / ")}
|
|
120
|
-
</div>`
|
|
121
|
-
}
|
|
111
|
+
</div>`}
|
|
122
112
|
</md-list-item>
|
|
123
113
|
<md-list-item>
|
|
124
114
|
<div class="btn-row">
|
|
125
115
|
<md-outlined-button @click=${handleAsync(() => this._reinterview())}
|
|
126
116
|
>Interview<ha-svg-icon slot="icon" .path=${mdiChatProcessing}></ha-svg-icon
|
|
127
117
|
></md-outlined-button>
|
|
128
|
-
${
|
|
129
|
-
|
|
130
|
-
? html` <md-outlined-button disabled
|
|
118
|
+
${this._updateInitiated
|
|
119
|
+
? html` <md-outlined-button disabled
|
|
131
120
|
>Checking for updates<ha-svg-icon slot="icon" .path=${mdiUpdate}></ha-svg-icon
|
|
132
121
|
></md-outlined-button>`
|
|
133
|
-
|
|
134
|
-
|
|
122
|
+
: (this.node.updateState ?? 0) > 1
|
|
123
|
+
? html` <md-outlined-button disabled
|
|
135
124
|
>${getUpdateStateLabel(
|
|
136
125
|
this.node.updateState!,
|
|
137
126
|
this.node.updateStateProgress,
|
|
138
127
|
)}<ha-svg-icon slot="icon" .path=${mdiUpdate}></ha-svg-icon
|
|
139
128
|
></md-outlined-button>`
|
|
140
|
-
|
|
129
|
+
: html`<md-outlined-button @click=${handleAsync(() => this._searchUpdate())}
|
|
141
130
|
>Update<ha-svg-icon slot="icon" .path=${mdiUpdate}></ha-svg-icon
|
|
142
|
-
></md-outlined-button>`
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
bindings
|
|
146
|
-
? html`
|
|
131
|
+
></md-outlined-button>`}
|
|
132
|
+
${bindings
|
|
133
|
+
? html`
|
|
147
134
|
<md-outlined-button @click=${handleAsync(() => this._binding())}>
|
|
148
135
|
Binding
|
|
149
136
|
<ha-svg-icon slot="icon" .path=${mdiLink}></ha-svg-icon>
|
|
150
137
|
</md-outlined-button>
|
|
151
138
|
`
|
|
152
|
-
|
|
153
|
-
}
|
|
139
|
+
: nothing}
|
|
154
140
|
|
|
155
141
|
<md-outlined-button @click=${handleAsync(() => this._openCommissioningWindow())}
|
|
156
142
|
>Share<ha-svg-icon slot="icon" .path=${mdiShareVariant}></ha-svg-icon
|
|
@@ -232,27 +218,24 @@ export class NodeDetails extends LitElement {
|
|
|
232
218
|
if (
|
|
233
219
|
!(await showPromptDialog({
|
|
234
220
|
title: "Firmware update available",
|
|
235
|
-
text: html`Found a firmware update for this node on
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
<p
|
|
241
|
-
style="
|
|
221
|
+
text: html`Found a firmware update for this node on <b>${nodeUpdate.update_source}</b>.
|
|
222
|
+
${isUnverifiedSource
|
|
223
|
+
? html`
|
|
224
|
+
<p
|
|
225
|
+
style="
|
|
242
226
|
background: var(--md-sys-color-error, #b3261e);
|
|
243
227
|
color: var(--md-sys-color-on-error, #fff);
|
|
244
228
|
padding: 8px 12px;
|
|
245
229
|
border-radius: 4px;
|
|
246
230
|
font-weight: bold;
|
|
247
231
|
"
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
}
|
|
232
|
+
>
|
|
233
|
+
Warning: This update was found on an unverified source. Updates from test-net or local
|
|
234
|
+
sources have not been certified and may contain untested firmware that could result in
|
|
235
|
+
non-functional devices. Applying these updates is entirely at your own risk.
|
|
236
|
+
</p>
|
|
237
|
+
`
|
|
238
|
+
: nothing}
|
|
256
239
|
<p>
|
|
257
240
|
Do you want to update this node to version
|
|
258
241
|
<b>${nodeUpdate.software_version_string}</b>?
|
|
@@ -32,13 +32,7 @@ export class ServerDetails extends LitElement {
|
|
|
32
32
|
<md-list-item>
|
|
33
33
|
<div slot="headline">
|
|
34
34
|
<b>Open Home Foundation Matter Server ${this.client.isProduction ? "" : `(${this.client.serverBaseAddress})`}</b>
|
|
35
|
-
${
|
|
36
|
-
this.client.connection.connected
|
|
37
|
-
? nothing
|
|
38
|
-
: html`
|
|
39
|
-
<span class="status">OFFLINE</span>
|
|
40
|
-
`
|
|
41
|
-
}
|
|
35
|
+
${this.client.connection.connected ? nothing : html` <span class="status">OFFLINE</span> `}
|
|
42
36
|
</div>
|
|
43
37
|
</md-list-item>
|
|
44
38
|
<md-list-item>
|
|
@@ -118,27 +118,23 @@ class MatterClusterView extends LitElement {
|
|
|
118
118
|
(attribute, index) => html`
|
|
119
119
|
<md-list-item class=${index % 2 === 1 ? "alternate-row" : ""}>
|
|
120
120
|
<div slot="headline">
|
|
121
|
-
${
|
|
122
|
-
|
|
123
|
-
"Custom/Unknown Attribute"
|
|
124
|
-
}
|
|
121
|
+
${clusters[this.cluster!]?.attributes[attribute.key]?.label ??
|
|
122
|
+
"Custom/Unknown Attribute"}
|
|
125
123
|
</div>
|
|
126
124
|
<div slot="supporting-text">
|
|
127
125
|
AttributeId: ${attribute.key} (${formatHex(attribute.key)}) - Value type:
|
|
128
126
|
${clusters[this.cluster!]?.attributes[attribute.key]?.type ?? "unknown"}
|
|
129
127
|
</div>
|
|
130
128
|
<div slot="end">
|
|
131
|
-
${
|
|
132
|
-
|
|
133
|
-
? html`<button
|
|
129
|
+
${toBigIntAwareJson(attribute.value).length > 30
|
|
130
|
+
? html`<button
|
|
134
131
|
@click=${() => {
|
|
135
132
|
this._showAttributeValue(attribute.value);
|
|
136
133
|
}}
|
|
137
134
|
>
|
|
138
135
|
Show value
|
|
139
136
|
</button>`
|
|
140
|
-
|
|
141
|
-
}
|
|
137
|
+
: html`<code>${toBigIntAwareJson(attribute.value)}</code>`}
|
|
142
138
|
</div>
|
|
143
139
|
</md-list-item>
|
|
144
140
|
`,
|
|
@@ -240,17 +240,13 @@ class MatterNetworkView extends LitElement {
|
|
|
240
240
|
</div>
|
|
241
241
|
</div>
|
|
242
242
|
</div>
|
|
243
|
-
${
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
: "No matching extended address found."
|
|
251
|
-
}
|
|
252
|
-
</div>`
|
|
253
|
-
}
|
|
243
|
+
${this._threadAddressSearchStatus === "idle"
|
|
244
|
+
? ""
|
|
245
|
+
: html`<div class="thread-search-status ${this._threadAddressSearchStatus}">
|
|
246
|
+
${this._threadAddressSearchStatus === "found"
|
|
247
|
+
? "Node highlighted."
|
|
248
|
+
: "No matching extended address found."}
|
|
249
|
+
</div>`}
|
|
254
250
|
<thread-graph
|
|
255
251
|
.nodes=${this.nodes}
|
|
256
252
|
@node-selected=${this._handleNodeSelected}
|
|
@@ -75,16 +75,14 @@ class MatterNodeView extends LitElement {
|
|
|
75
75
|
<div class="node-title-bar">
|
|
76
76
|
<ha-svg-icon class="node-icon" .path=${getDeviceIcon(this.node)}></ha-svg-icon>
|
|
77
77
|
<h2>Node ${this.node.node_id} <span class="node-id-hex">${nodeHex}</span></h2>
|
|
78
|
-
${
|
|
79
|
-
|
|
80
|
-
? html`
|
|
78
|
+
${showGraphButton
|
|
79
|
+
? html`
|
|
81
80
|
<a href=${graphUrl} class="show-in-graph-button" title="Show in ${graphViewType} graph">
|
|
82
81
|
<ha-svg-icon .path=${mdiGraphOutline}></ha-svg-icon>
|
|
83
82
|
<span class="button-text">Show in graph</span>
|
|
84
83
|
</a>
|
|
85
84
|
`
|
|
86
|
-
|
|
87
|
-
}
|
|
85
|
+
: ""}
|
|
88
86
|
</div>
|
|
89
87
|
<node-details .node=${this.node} .client=${this.client}></node-details>
|
|
90
88
|
</div>
|
|
@@ -97,13 +97,7 @@ class MatterServerView extends LitElement {
|
|
|
97
97
|
node.node_id,
|
|
98
98
|
)})</span
|
|
99
99
|
>
|
|
100
|
-
${
|
|
101
|
-
node.available
|
|
102
|
-
? ""
|
|
103
|
-
: html`
|
|
104
|
-
<span class="status">OFFLINE</span>
|
|
105
|
-
`
|
|
106
|
-
}
|
|
100
|
+
${node.available ? "" : html` <span class="status">OFFLINE</span> `}
|
|
107
101
|
</div>
|
|
108
102
|
<div slot="supporting-text">
|
|
109
103
|
${node.nodeLabel ? `${node.nodeLabel} | ` : nothing} ${node.vendorName} |
|
|
@@ -96,9 +96,8 @@ export class DevicePanel extends LitElement {
|
|
|
96
96
|
class="expand-icon"
|
|
97
97
|
></ha-svg-icon>
|
|
98
98
|
</div>
|
|
99
|
-
${
|
|
100
|
-
|
|
101
|
-
? html`
|
|
99
|
+
${this._isExpanded
|
|
100
|
+
? html`
|
|
102
101
|
<md-list class="device-list">
|
|
103
102
|
${this.nodeIds.map(nodeId => {
|
|
104
103
|
const node = this.nodes[nodeId.toString()];
|
|
@@ -114,8 +113,7 @@ export class DevicePanel extends LitElement {
|
|
|
114
113
|
})}
|
|
115
114
|
</md-list>
|
|
116
115
|
`
|
|
117
|
-
|
|
118
|
-
}
|
|
116
|
+
: nothing}
|
|
119
117
|
</div>
|
|
120
118
|
`;
|
|
121
119
|
}
|