@matter-server/dashboard 0.2.0-alpha.0-00000000-000000000
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/LICENSE +201 -0
- package/README.md +11 -0
- package/dist/esm/client/client-context.d.ts +10 -0
- package/dist/esm/client/client-context.d.ts.map +1 -0
- package/dist/esm/client/client-context.js +11 -0
- package/dist/esm/client/client-context.js.map +6 -0
- package/dist/esm/client/models/descriptions.d.ts +20 -0
- package/dist/esm/client/models/descriptions.d.ts.map +1 -0
- package/dist/esm/client/models/descriptions.js +10929 -0
- package/dist/esm/client/models/descriptions.js.map +6 -0
- package/dist/esm/components/dialog-box/dialog-box.d.ts +25 -0
- package/dist/esm/components/dialog-box/dialog-box.d.ts.map +1 -0
- package/dist/esm/components/dialog-box/dialog-box.js +66 -0
- package/dist/esm/components/dialog-box/dialog-box.js.map +6 -0
- package/dist/esm/components/dialog-box/show-dialog-box.d.ts +18 -0
- package/dist/esm/components/dialog-box/show-dialog-box.d.ts.map +1 -0
- package/dist/esm/components/dialog-box/show-dialog-box.js +22 -0
- package/dist/esm/components/dialog-box/show-dialog-box.js.map +6 -0
- package/dist/esm/components/dialogs/acl/model.d.ts +33 -0
- package/dist/esm/components/dialogs/acl/model.d.ts.map +1 -0
- package/dist/esm/components/dialogs/acl/model.js +79 -0
- package/dist/esm/components/dialogs/acl/model.js.map +6 -0
- package/dist/esm/components/dialogs/binding/model.d.ts +20 -0
- package/dist/esm/components/dialogs/binding/model.d.ts.map +1 -0
- package/dist/esm/components/dialogs/binding/model.js +45 -0
- package/dist/esm/components/dialogs/binding/model.js.map +6 -0
- package/dist/esm/components/dialogs/binding/node-binding-dialog.d.ts +49 -0
- package/dist/esm/components/dialogs/binding/node-binding-dialog.d.ts.map +1 -0
- package/dist/esm/components/dialogs/binding/node-binding-dialog.js +357 -0
- package/dist/esm/components/dialogs/binding/node-binding-dialog.js.map +6 -0
- package/dist/esm/components/dialogs/binding/show-node-binding-dialog.d.ts +8 -0
- package/dist/esm/components/dialogs/binding/show-node-binding-dialog.d.ts.map +1 -0
- package/dist/esm/components/dialogs/binding/show-node-binding-dialog.js +17 -0
- package/dist/esm/components/dialogs/binding/show-node-binding-dialog.js.map +6 -0
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-dialog.d.ts +31 -0
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-dialog.d.ts.map +1 -0
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-dialog.js +94 -0
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-dialog.js.map +6 -0
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-existing.d.ts +17 -0
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-existing.d.ts.map +1 -0
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-existing.js +64 -0
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-existing.js.map +6 -0
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-thread.d.ts +19 -0
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-thread.d.ts.map +1 -0
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-thread.js +91 -0
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-thread.js.map +6 -0
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-wifi.d.ts +20 -0
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-wifi.d.ts.map +1 -0
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-wifi.js +106 -0
- package/dist/esm/components/dialogs/commission-node-dialog/commission-node-wifi.js.map +6 -0
- package/dist/esm/components/dialogs/commission-node-dialog/show-commission-node-dialog.d.ts +8 -0
- package/dist/esm/components/dialogs/commission-node-dialog/show-commission-node-dialog.d.ts.map +1 -0
- package/dist/esm/components/dialogs/commission-node-dialog/show-commission-node-dialog.js +15 -0
- package/dist/esm/components/dialogs/commission-node-dialog/show-commission-node-dialog.js.map +6 -0
- package/dist/esm/components/ha-svg-icon.d.ts +19 -0
- package/dist/esm/components/ha-svg-icon.d.ts.map +1 -0
- package/dist/esm/components/ha-svg-icon.js +77 -0
- package/dist/esm/components/ha-svg-icon.js.map +6 -0
- package/dist/esm/entrypoint/main.d.ts +7 -0
- package/dist/esm/entrypoint/main.d.ts.map +1 -0
- package/dist/esm/entrypoint/main.js +45 -0
- package/dist/esm/entrypoint/main.js.map +6 -0
- package/dist/esm/package.json +3 -0
- package/dist/esm/pages/components/context.d.ts +9 -0
- package/dist/esm/pages/components/context.d.ts.map +1 -0
- package/dist/esm/pages/components/context.js +11 -0
- package/dist/esm/pages/components/context.js.map +6 -0
- package/dist/esm/pages/components/footer.d.ts +11 -0
- package/dist/esm/pages/components/footer.d.ts.map +1 -0
- package/dist/esm/pages/components/footer.js +52 -0
- package/dist/esm/pages/components/footer.js.map +6 -0
- package/dist/esm/pages/components/header.d.ts +27 -0
- package/dist/esm/pages/components/header.d.ts.map +1 -0
- package/dist/esm/pages/components/header.js +90 -0
- package/dist/esm/pages/components/header.js.map +6 -0
- package/dist/esm/pages/components/node-details.d.ts +29 -0
- package/dist/esm/pages/components/node-details.d.ts.map +1 -0
- package/dist/esm/pages/components/node-details.js +241 -0
- package/dist/esm/pages/components/node-details.js.map +6 -0
- package/dist/esm/pages/components/server-details.d.ts +24 -0
- package/dist/esm/pages/components/server-details.d.ts.map +1 -0
- package/dist/esm/pages/components/server-details.js +130 -0
- package/dist/esm/pages/components/server-details.js.map +6 -0
- package/dist/esm/pages/matter-cluster-view.d.ts +30 -0
- package/dist/esm/pages/matter-cluster-view.d.ts.map +1 -0
- package/dist/esm/pages/matter-cluster-view.js +154 -0
- package/dist/esm/pages/matter-cluster-view.js.map +6 -0
- package/dist/esm/pages/matter-dashboard-app.d.ts +27 -0
- package/dist/esm/pages/matter-dashboard-app.d.ts.map +1 -0
- package/dist/esm/pages/matter-dashboard-app.js +122 -0
- package/dist/esm/pages/matter-dashboard-app.js.map +6 -0
- package/dist/esm/pages/matter-endpoint-view.d.ts +29 -0
- package/dist/esm/pages/matter-endpoint-view.d.ts.map +1 -0
- package/dist/esm/pages/matter-endpoint-view.js +149 -0
- package/dist/esm/pages/matter-endpoint-view.js.map +6 -0
- package/dist/esm/pages/matter-node-view.d.ts +28 -0
- package/dist/esm/pages/matter-node-view.d.ts.map +1 -0
- package/dist/esm/pages/matter-node-view.js +122 -0
- package/dist/esm/pages/matter-node-view.js.map +6 -0
- package/dist/esm/pages/matter-server-view.d.ts +31 -0
- package/dist/esm/pages/matter-server-view.d.ts.map +1 -0
- package/dist/esm/pages/matter-server-view.js +113 -0
- package/dist/esm/pages/matter-server-view.js.map +6 -0
- package/dist/esm/util/clone_class.d.ts +7 -0
- package/dist/esm/util/clone_class.d.ts.map +1 -0
- package/dist/esm/util/clone_class.js +10 -0
- package/dist/esm/util/clone_class.js.map +6 -0
- package/dist/esm/util/fire_event.d.ts +34 -0
- package/dist/esm/util/fire_event.d.ts.map +1 -0
- package/dist/esm/util/fire_event.js +21 -0
- package/dist/esm/util/fire_event.js.map +6 -0
- package/dist/esm/util/prevent_default.d.ts +7 -0
- package/dist/esm/util/prevent_default.d.ts.map +1 -0
- package/dist/esm/util/prevent_default.js +10 -0
- package/dist/esm/util/prevent_default.js.map +6 -0
- package/dist/esm/util/routing.d.ts +10 -0
- package/dist/esm/util/routing.d.ts.map +1 -0
- package/dist/esm/util/routing.js +6 -0
- package/dist/esm/util/routing.js.map +6 -0
- package/dist/web/index.html +40 -0
- package/dist/web/js/commission-node-dialog-BJsfA4IV.js +78 -0
- package/dist/web/js/commission-node-dialog-DEZ3EqYO.js +78 -0
- package/dist/web/js/commission-node-existing-CzRtUgBm.js +50 -0
- package/dist/web/js/commission-node-existing-OK1ybPFI.js +50 -0
- package/dist/web/js/commission-node-thread-DLmclivF.js +75 -0
- package/dist/web/js/commission-node-thread-FcLFz84I.js +75 -0
- package/dist/web/js/commission-node-wifi-C8ho-UYb.js +88 -0
- package/dist/web/js/commission-node-wifi-C8iGfy7c.js +88 -0
- package/dist/web/js/dialog-box-BPz-oO3d.js +52 -0
- package/dist/web/js/dialog-box-DN32sjfR.js +52 -0
- package/dist/web/js/fire_event-BERTqZpV.js +169 -0
- package/dist/web/js/fire_event-BlsbXpOL.js +169 -0
- package/dist/web/js/main.js +547 -0
- package/dist/web/js/matter-dashboard-app-5UjO1Ik8.js +16068 -0
- package/dist/web/js/matter-dashboard-app-BazvuIIi.js +16068 -0
- package/dist/web/js/node-binding-dialog-2yitVn0R.js +443 -0
- package/dist/web/js/node-binding-dialog-Cw6QEmL3.js +443 -0
- package/dist/web/js/outlined-text-field-BMLYwwlc.js +2086 -0
- package/dist/web/js/outlined-text-field-Sqd4JHxo.js +2086 -0
- package/dist/web/js/prevent_default-BsT53c0u.js +814 -0
- package/dist/web/js/prevent_default-D4GG_QeD.js +814 -0
- package/package.json +54 -0
- package/src/client/client-context.ts +10 -0
- package/src/client/models/descriptions.ts +10948 -0
- package/src/components/dialog-box/dialog-box.ts +62 -0
- package/src/components/dialog-box/show-dialog-box.ts +32 -0
- package/src/components/dialogs/acl/model.ts +105 -0
- package/src/components/dialogs/binding/model.ts +58 -0
- package/src/components/dialogs/binding/node-binding-dialog.ts +419 -0
- package/src/components/dialogs/binding/show-node-binding-dialog.ts +16 -0
- package/src/components/dialogs/commission-node-dialog/commission-node-dialog.ts +102 -0
- package/src/components/dialogs/commission-node-dialog/commission-node-existing.ts +49 -0
- package/src/components/dialogs/commission-node-dialog/commission-node-thread.ts +76 -0
- package/src/components/dialogs/commission-node-dialog/commission-node-wifi.ts +90 -0
- package/src/components/dialogs/commission-node-dialog/show-commission-node-dialog.ts +14 -0
- package/src/components/ha-svg-icon.ts +66 -0
- package/src/entrypoint/main.ts +60 -0
- package/src/pages/components/context.ts +10 -0
- package/src/pages/components/footer.ts +39 -0
- package/src/pages/components/header.ts +87 -0
- package/src/pages/components/node-details.ts +252 -0
- package/src/pages/components/server-details.ts +124 -0
- package/src/pages/matter-cluster-view.ts +162 -0
- package/src/pages/matter-dashboard-app.ts +125 -0
- package/src/pages/matter-endpoint-view.ts +152 -0
- package/src/pages/matter-node-view.ts +126 -0
- package/src/pages/matter-server-view.ts +117 -0
- package/src/tsconfig.json +16 -0
- package/src/util/clone_class.ts +7 -0
- package/src/util/fire_event.ts +83 -0
- package/src/util/prevent_default.ts +7 -0
- package/src/util/routing.ts +10 -0
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025-2026 Open Home Foundation
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { MatterClient } from "@matter-server/ws-client";
|
|
7
|
+
async function main() {
|
|
8
|
+
import("../pages/matter-dashboard-app.js");
|
|
9
|
+
let url = "";
|
|
10
|
+
const isProductionServer = location.origin.includes(":5580") || location.href.includes("hassio_ingress") || location.href.includes("/api/ingress/");
|
|
11
|
+
if (!isProductionServer) {
|
|
12
|
+
let storageUrl = localStorage.getItem("matterURL");
|
|
13
|
+
if (!storageUrl) {
|
|
14
|
+
const urlParams = new URLSearchParams(window.location.search);
|
|
15
|
+
const suggestedUrl = urlParams.get("url");
|
|
16
|
+
storageUrl = prompt(
|
|
17
|
+
"Enter Websocket URL to a running Matter Server",
|
|
18
|
+
suggestedUrl || "ws://localhost:5580/ws"
|
|
19
|
+
);
|
|
20
|
+
if (!storageUrl) {
|
|
21
|
+
alert("Unable to connect without URL");
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
if (suggestedUrl) {
|
|
25
|
+
history.pushState({}, "", window.location.pathname);
|
|
26
|
+
}
|
|
27
|
+
localStorage.setItem("matterURL", storageUrl);
|
|
28
|
+
}
|
|
29
|
+
url = storageUrl;
|
|
30
|
+
} else {
|
|
31
|
+
let baseUrl = window.location.origin + window.location.pathname;
|
|
32
|
+
if (baseUrl.endsWith("/")) {
|
|
33
|
+
baseUrl = baseUrl.slice(0, -1);
|
|
34
|
+
}
|
|
35
|
+
url = baseUrl.replace("http", "ws") + "/ws";
|
|
36
|
+
console.log(`Connecting to Matter Server API using url: ${url}`);
|
|
37
|
+
}
|
|
38
|
+
const client = new MatterClient(url);
|
|
39
|
+
client.isProduction = isProductionServer;
|
|
40
|
+
const dashboard = document.createElement("matter-dashboard-app");
|
|
41
|
+
dashboard.client = client;
|
|
42
|
+
document.body.append(dashboard);
|
|
43
|
+
}
|
|
44
|
+
main();
|
|
45
|
+
//# sourceMappingURL=main.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/entrypoint/main.ts"],
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,oBAAoB;AAE7B,eAAe,OAAO;AAClB,SAAO,kCAAkC;AAEzC,MAAI,MAAM;AAGV,QAAM,qBACF,SAAS,OAAO,SAAS,OAAO,KAChC,SAAS,KAAK,SAAS,gBAAgB,KACvC,SAAS,KAAK,SAAS,eAAe;AAE1C,MAAI,CAAC,oBAAoB;AAErB,QAAI,aAAa,aAAa,QAAQ,WAAW;AACjD,QAAI,CAAC,YAAY;AACb,YAAM,YAAY,IAAI,gBAAgB,OAAO,SAAS,MAAM;AAC5D,YAAM,eAAe,UAAU,IAAI,KAAK;AACxC,mBAAa;AAAA,QACT;AAAA,QACA,gBAAgB;AAAA,MACpB;AACA,UAAI,CAAC,YAAY;AACb,cAAM,+BAA+B;AACrC;AAAA,MACJ;AACA,UAAI,cAAc;AAEd,gBAAQ,UAAU,CAAC,GAAG,IAAI,OAAO,SAAS,QAAQ;AAAA,MACtD;AACA,mBAAa,QAAQ,aAAa,UAAU;AAAA,IAChD;AACA,UAAM;AAAA,EACV,OAAO;AAGH,QAAI,UAAU,OAAO,SAAS,SAAS,OAAO,SAAS;AACvD,QAAI,QAAQ,SAAS,GAAG,GAAG;AACvB,gBAAU,QAAQ,MAAM,GAAG,EAAE;AAAA,IACjC;AACA,UAAM,QAAQ,QAAQ,QAAQ,IAAI,IAAI;AACtC,YAAQ,IAAI,8CAA8C,GAAG,EAAE;AAAA,EACnE;AAEA,QAAM,SAAS,IAAI,aAAa,GAAG;AACnC,SAAO,eAAe;AAEtB,QAAM,YAAY,SAAS,cAAc,sBAAsB;AAC/D,YAAU,SAAS;AACnB,WAAS,KAAK,OAAO,SAAS;AAClC;AAEA,KAAK;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../src/pages/components/context.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,eAAO,MAAM,cAAc;;CAAmC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025-2026 Open Home Foundation
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { createContext } from "@lit/context";
|
|
7
|
+
const bindingContext = createContext("binding");
|
|
8
|
+
export {
|
|
9
|
+
bindingContext
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025-2026 Open Home Foundation
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { LitElement } from "lit";
|
|
7
|
+
export declare class DashboardFooter extends LitElement {
|
|
8
|
+
protected render(): import("lit-html").TemplateResult<1>;
|
|
9
|
+
static styles: import("lit").CSSResult;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=footer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"footer.d.ts","sourceRoot":"","sources":["../../../../src/pages/components/footer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAG5C,qBACa,eAAgB,SAAQ,UAAU;cACxB,MAAM;IAWzB,OAAgB,MAAM,0BAepB;CACL"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __decorateClass = (decorators, target, key, kind) => {
|
|
4
|
+
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
|
|
5
|
+
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
6
|
+
if (decorator = decorators[i])
|
|
7
|
+
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
8
|
+
if (kind && result) __defProp(target, key, result);
|
|
9
|
+
return result;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* @license
|
|
13
|
+
* Copyright 2025-2026 Open Home Foundation
|
|
14
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
15
|
+
*/
|
|
16
|
+
import { LitElement, css, html } from "lit";
|
|
17
|
+
import { customElement } from "lit/decorators.js";
|
|
18
|
+
let DashboardFooter = class extends LitElement {
|
|
19
|
+
render() {
|
|
20
|
+
return html`
|
|
21
|
+
<div class="footer">
|
|
22
|
+
The OHF Matter Server is a project by the Open Home Foundation.
|
|
23
|
+
<a href="https://www.openhomefoundation.org/structure/#support-our-work" target="_blank"
|
|
24
|
+
>Support development</a
|
|
25
|
+
>
|
|
26
|
+
</div>
|
|
27
|
+
`;
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
DashboardFooter.styles = css`
|
|
31
|
+
.footer {
|
|
32
|
+
padding: 16px;
|
|
33
|
+
text-align: center;
|
|
34
|
+
font-size: 0.8em;
|
|
35
|
+
color: var(--md-sys-color-on-surface);
|
|
36
|
+
display: flex;
|
|
37
|
+
flex-direction: column;
|
|
38
|
+
position: relative;
|
|
39
|
+
clear: both;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.footer a {
|
|
43
|
+
color: var(--md-sys-color-on-surface);
|
|
44
|
+
}
|
|
45
|
+
`;
|
|
46
|
+
DashboardFooter = __decorateClass([
|
|
47
|
+
customElement("dashboard-footer")
|
|
48
|
+
], DashboardFooter);
|
|
49
|
+
export {
|
|
50
|
+
DashboardFooter
|
|
51
|
+
};
|
|
52
|
+
//# sourceMappingURL=footer.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/pages/components/footer.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,YAAY,KAAK,YAAY;AACtC,SAAS,qBAAqB;AAGvB,IAAM,kBAAN,cAA8B,WAAW;AAAA,EACzB,SAAS;AACxB,WAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQX;AAkBJ;AA5Ba,gBAYO,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAZhB,kBAAN;AAAA,EADN,cAAc,kBAAkB;AAAA,GACpB;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025-2026 Open Home Foundation
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import "@material/web/button/outlined-button";
|
|
7
|
+
import "@material/web/divider/divider";
|
|
8
|
+
import "@material/web/iconbutton/icon-button";
|
|
9
|
+
import "@material/web/list/list";
|
|
10
|
+
import "@material/web/list/list-item";
|
|
11
|
+
import { MatterClient } from "@matter-server/ws-client";
|
|
12
|
+
import { LitElement } from "lit";
|
|
13
|
+
import "../../components/ha-svg-icon";
|
|
14
|
+
interface HeaderAction {
|
|
15
|
+
label: string;
|
|
16
|
+
icon: string;
|
|
17
|
+
action: void;
|
|
18
|
+
}
|
|
19
|
+
export declare class DashboardHeader extends LitElement {
|
|
20
|
+
backButton?: string;
|
|
21
|
+
actions?: HeaderAction[];
|
|
22
|
+
client?: MatterClient;
|
|
23
|
+
protected render(): import("lit-html").TemplateResult<1>;
|
|
24
|
+
static styles: import("lit").CSSResult;
|
|
25
|
+
}
|
|
26
|
+
export {};
|
|
27
|
+
//# sourceMappingURL=header.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../../src/pages/components/header.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,sCAAsC,CAAC;AAC9C,OAAO,+BAA+B,CAAC;AACvC,OAAO,sCAAsC,CAAC;AAC9C,OAAO,yBAAyB,CAAC;AACjC,OAAO,8BAA8B,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;AAErD,OAAO,8BAA8B,CAAC;AAEtC,UAAU,YAAY;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,IAAI,CAAC;CAChB;AAED,qBACa,eAAgB,SAAQ,UAAU;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IAErC,MAAM,CAAC,EAAE,YAAY,CAAC;cAEV,MAAM;IAmCzB,OAAgB,MAAM,0BAoBpB;CACL"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __decorateClass = (decorators, target, key, kind) => {
|
|
4
|
+
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
|
|
5
|
+
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
6
|
+
if (decorator = decorators[i])
|
|
7
|
+
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
8
|
+
if (kind && result) __defProp(target, key, result);
|
|
9
|
+
return result;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* @license
|
|
13
|
+
* Copyright 2025-2026 Open Home Foundation
|
|
14
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
15
|
+
*/
|
|
16
|
+
import "@material/web/button/outlined-button";
|
|
17
|
+
import "@material/web/divider/divider";
|
|
18
|
+
import "@material/web/iconbutton/icon-button";
|
|
19
|
+
import "@material/web/list/list";
|
|
20
|
+
import "@material/web/list/list-item";
|
|
21
|
+
import { mdiArrowLeft, mdiLogout } from "@mdi/js";
|
|
22
|
+
import { LitElement, css, html, nothing } from "lit";
|
|
23
|
+
import { customElement, property } from "lit/decorators.js";
|
|
24
|
+
import "../../components/ha-svg-icon";
|
|
25
|
+
let DashboardHeader = class extends LitElement {
|
|
26
|
+
render() {
|
|
27
|
+
return html`
|
|
28
|
+
<div class="header">
|
|
29
|
+
<!-- optional back button -->
|
|
30
|
+
${this.backButton ? html` <a .href=${this.backButton}>
|
|
31
|
+
<md-icon-button>
|
|
32
|
+
<ha-svg-icon .path=${mdiArrowLeft}></ha-svg-icon>
|
|
33
|
+
</md-icon-button>
|
|
34
|
+
</a>` : ""}
|
|
35
|
+
|
|
36
|
+
<div>${this.title || ""}</div>
|
|
37
|
+
<div class="flex"></div>
|
|
38
|
+
<div class="actions">
|
|
39
|
+
${this.actions?.map((action) => {
|
|
40
|
+
return html`
|
|
41
|
+
<md-icon-button @click=${action.action} .title=${action.label}>
|
|
42
|
+
<ha-svg-icon .path=${action.icon}></ha-svg-icon>
|
|
43
|
+
</md-icon-button>
|
|
44
|
+
`;
|
|
45
|
+
})}
|
|
46
|
+
<!-- optional logout button -->
|
|
47
|
+
${this.client?.isProduction ? nothing : html`
|
|
48
|
+
<md-icon-button @click=${this.client?.disconnect}>
|
|
49
|
+
<ha-svg-icon .path=${mdiLogout}></ha-svg-icon>
|
|
50
|
+
</md-icon-button>
|
|
51
|
+
`}
|
|
52
|
+
</div>
|
|
53
|
+
</div>
|
|
54
|
+
`;
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
DashboardHeader.styles = css`
|
|
58
|
+
.header {
|
|
59
|
+
background-color: var(--md-sys-color-primary);
|
|
60
|
+
color: var(--md-sys-color-on-primary);
|
|
61
|
+
--icon-primary-color: var(--md-sys-color-on-primary);
|
|
62
|
+
font-weight: 400;
|
|
63
|
+
display: flex;
|
|
64
|
+
align-items: center;
|
|
65
|
+
padding-left: 18px;
|
|
66
|
+
padding-right: 8px;
|
|
67
|
+
height: 48px;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
md-icon-button {
|
|
71
|
+
margin-right: 8px;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.flex {
|
|
75
|
+
flex: 1;
|
|
76
|
+
}
|
|
77
|
+
`;
|
|
78
|
+
__decorateClass([
|
|
79
|
+
property()
|
|
80
|
+
], DashboardHeader.prototype, "backButton", 2);
|
|
81
|
+
__decorateClass([
|
|
82
|
+
property()
|
|
83
|
+
], DashboardHeader.prototype, "actions", 2);
|
|
84
|
+
DashboardHeader = __decorateClass([
|
|
85
|
+
customElement("dashboard-header")
|
|
86
|
+
], DashboardHeader);
|
|
87
|
+
export {
|
|
88
|
+
DashboardHeader
|
|
89
|
+
};
|
|
90
|
+
//# sourceMappingURL=header.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/pages/components/header.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;AAEP,SAAS,cAAc,iBAAiB;AACxC,SAAS,YAAY,KAAK,MAAM,eAAe;AAC/C,SAAS,eAAe,gBAAgB;AACxC,OAAO;AASA,IAAM,kBAAN,cAA8B,WAAW;AAAA,EAMzB,SAAS;AACxB,WAAO;AAAA;AAAA;AAAA,kBAGG,KAAK,aACD,iBAAiB,KAAK,UAAU;AAAA;AAAA,mDAEH,YAAY;AAAA;AAAA,8BAGzC,EAAE;AAAA;AAAA,uBAED,KAAK,SAAS,EAAE;AAAA;AAAA;AAAA,sBAGjB,KAAK,SAAS,IAAI,YAAU;AAC1B,aAAO;AAAA,qDACsB,OAAO,MAAM,WAAW,OAAO,KAAK;AAAA,qDACpC,OAAO,IAAI;AAAA;AAAA;AAAA,IAG5C,CAAC,CAAC;AAAA;AAAA,sBAEA,KAAK,QAAQ,eACT,UACA;AAAA,uDAC6B,KAAK,QAAQ,UAAU;AAAA,uDACvB,SAAS;AAAA;AAAA,2BAErC;AAAA;AAAA;AAAA;AAAA,EAIvB;AAuBJ;AA9Da,gBAyCO,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAxCN;AAAA,EAAlB,SAAS;AAAA,GADD,gBACU;AACA;AAAA,EAAlB,SAAS;AAAA,GAFD,gBAEU;AAFV,kBAAN;AAAA,EADN,cAAc,kBAAkB;AAAA,GACpB;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025-2026 Open Home Foundation
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import "@material/web/button/filled-button";
|
|
7
|
+
import "@material/web/button/outlined-button";
|
|
8
|
+
import "@material/web/button/text-button";
|
|
9
|
+
import "@material/web/divider/divider";
|
|
10
|
+
import "@material/web/iconbutton/icon-button";
|
|
11
|
+
import "@material/web/list/list";
|
|
12
|
+
import "@material/web/list/list-item";
|
|
13
|
+
import { MatterClient, MatterNode } from "@matter-server/ws-client";
|
|
14
|
+
import { LitElement } from "lit";
|
|
15
|
+
import "../../components/ha-svg-icon";
|
|
16
|
+
export declare class NodeDetails extends LitElement {
|
|
17
|
+
client: MatterClient;
|
|
18
|
+
node?: MatterNode;
|
|
19
|
+
private _updateInitiated;
|
|
20
|
+
endpoint: number;
|
|
21
|
+
protected render(): import("lit-html").TemplateResult<1>;
|
|
22
|
+
private _reinterview;
|
|
23
|
+
private _remove;
|
|
24
|
+
private _binding;
|
|
25
|
+
private _searchUpdate;
|
|
26
|
+
private _openCommissioningWindow;
|
|
27
|
+
static styles: import("lit").CSSResult;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=node-details.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node-details.d.ts","sourceRoot":"","sources":["../../../../src/pages/components/node-details.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,oCAAoC,CAAC;AAC5C,OAAO,sCAAsC,CAAC;AAC9C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,+BAA+B,CAAC;AACvC,OAAO,sCAAsC,CAAC;AAC9C,OAAO,yBAAyB,CAAC;AACjC,OAAO,8BAA8B,CAAC;AAItC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;AAKrD,OAAO,8BAA8B,CAAC;AAetC,qBACa,WAAY,SAAQ,UAAU;IAChC,MAAM,EAAG,YAAY,CAAC;IAEV,IAAI,CAAC,EAAE,UAAU,CAAC;IAGrC,OAAO,CAAC,gBAAgB,CAAkB;IAI1C,QAAQ,EAAG,MAAM,CAAC;cAEC,MAAM;YAoEX,YAAY;YAyBZ,OAAO;YAsBP,QAAQ;YAQR,aAAa;YAmCb,wBAAwB;IAwBtC,OAAgB,MAAM,0BAkBpB;CACL"}
|
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __decorateClass = (decorators, target, key, kind) => {
|
|
4
|
+
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
|
|
5
|
+
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
6
|
+
if (decorator = decorators[i])
|
|
7
|
+
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
8
|
+
if (kind && result) __defProp(target, key, result);
|
|
9
|
+
return result;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* @license
|
|
13
|
+
* Copyright 2025-2026 Open Home Foundation
|
|
14
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
15
|
+
*/
|
|
16
|
+
import "@material/web/button/filled-button";
|
|
17
|
+
import "@material/web/button/outlined-button";
|
|
18
|
+
import "@material/web/button/text-button";
|
|
19
|
+
import "@material/web/divider/divider";
|
|
20
|
+
import "@material/web/iconbutton/icon-button";
|
|
21
|
+
import "@material/web/list/list";
|
|
22
|
+
import "@material/web/list/list-item";
|
|
23
|
+
import { mdiChatProcessing, mdiLink, mdiShareVariant, mdiTrashCan, mdiUpdate } from "@mdi/js";
|
|
24
|
+
import { consume } from "@lit/context";
|
|
25
|
+
import { LitElement, css, html, nothing } from "lit";
|
|
26
|
+
import { customElement, property, state } from "lit/decorators.js";
|
|
27
|
+
import { showAlertDialog, showPromptDialog } from "../../components/dialog-box/show-dialog-box.js";
|
|
28
|
+
import { showNodeBindingDialog } from "../../components/dialogs/binding/show-node-binding-dialog.js";
|
|
29
|
+
import "../../components/ha-svg-icon";
|
|
30
|
+
import { getEndpointDeviceTypes } from "../matter-endpoint-view.js";
|
|
31
|
+
import { bindingContext } from "./context.js";
|
|
32
|
+
function getNodeDeviceTypes(node) {
|
|
33
|
+
const uniqueEndpoints = new Set(Object.keys(node.attributes).map((key) => Number(key.split("/")[0])));
|
|
34
|
+
const allDeviceTypes = /* @__PURE__ */ new Set();
|
|
35
|
+
uniqueEndpoints.forEach((endpointId) => {
|
|
36
|
+
getEndpointDeviceTypes(node, endpointId).forEach((deviceType) => {
|
|
37
|
+
allDeviceTypes.add(deviceType);
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
return Array.from(allDeviceTypes);
|
|
41
|
+
}
|
|
42
|
+
let NodeDetails = class extends LitElement {
|
|
43
|
+
constructor() {
|
|
44
|
+
super(...arguments);
|
|
45
|
+
this._updateInitiated = false;
|
|
46
|
+
}
|
|
47
|
+
render() {
|
|
48
|
+
if (!this.node) return html``;
|
|
49
|
+
const bindings = this.node.attributes[this.endpoint + "/30/0"];
|
|
50
|
+
return html`
|
|
51
|
+
<md-list>
|
|
52
|
+
<md-list-item>
|
|
53
|
+
<div slot="headline">
|
|
54
|
+
<b>Node ${this.node.node_id} ${this.node.nodeLabel}</b>
|
|
55
|
+
${this.node.available ? nothing : html`<span class="status">OFFLINE</span>`}
|
|
56
|
+
</div>
|
|
57
|
+
</md-list-item>
|
|
58
|
+
<md-list-item>
|
|
59
|
+
<div slot="supporting-text"><span class="left">VendorName: </span>${this.node.vendorName}</div>
|
|
60
|
+
<div slot="supporting-text"><span class="left">productName: </span>${this.node.productName}</div>
|
|
61
|
+
<div slot="supporting-text">
|
|
62
|
+
<span class="left">Commissioned: </span>${this.node.date_commissioned}
|
|
63
|
+
</div>
|
|
64
|
+
<div slot="supporting-text">
|
|
65
|
+
<span class="left">Last interviewed: </span>${this.node.last_interview}
|
|
66
|
+
</div>
|
|
67
|
+
<div slot="supporting-text"><span class="left">Is bridge: </span>${this.node.is_bridge}</div>
|
|
68
|
+
<div slot="supporting-text"><span class="left">Serialnumber: </span>${this.node.serialNumber}</div>
|
|
69
|
+
${this.node.is_bridge ? "" : html` <div slot="supporting-text">
|
|
70
|
+
<span class="left">All device types: </span>${getNodeDeviceTypes(this.node).map((deviceType) => {
|
|
71
|
+
return deviceType.label;
|
|
72
|
+
}).join(" / ")}
|
|
73
|
+
</div>`}
|
|
74
|
+
</md-list-item>
|
|
75
|
+
<md-list-item class="btn">
|
|
76
|
+
<md-outlined-button @click=${this._reinterview}
|
|
77
|
+
>Interview<ha-svg-icon slot="icon" .path=${mdiChatProcessing}></ha-svg-icon
|
|
78
|
+
></md-outlined-button>
|
|
79
|
+
${this._updateInitiated || (this.node.updateState || 0) > 1 ? html` <md-outlined-button disabled
|
|
80
|
+
>Update in progress (${this.node.updateStateProgress || 0}%)<ha-svg-icon
|
|
81
|
+
slot="icon"
|
|
82
|
+
.path=${mdiUpdate}
|
|
83
|
+
></ha-svg-icon
|
|
84
|
+
></md-outlined-button>` : html`<md-outlined-button @click=${this._searchUpdate}
|
|
85
|
+
>Update<ha-svg-icon slot="icon" .path=${mdiUpdate}></ha-svg-icon
|
|
86
|
+
></md-outlined-button>`}
|
|
87
|
+
${bindings ? html`
|
|
88
|
+
<md-outlined-button @click=${this._binding}>
|
|
89
|
+
Binding
|
|
90
|
+
<ha-svg-icon slot="icon" .path=${mdiLink}></ha-svg-icon>
|
|
91
|
+
</md-outlined-button>
|
|
92
|
+
` : nothing}
|
|
93
|
+
|
|
94
|
+
<md-outlined-button @click=${this._openCommissioningWindow}
|
|
95
|
+
>Share<ha-svg-icon slot="icon" .path=${mdiShareVariant}></ha-svg-icon
|
|
96
|
+
></md-outlined-button>
|
|
97
|
+
<md-outlined-button @click=${this._remove}
|
|
98
|
+
>Remove<ha-svg-icon slot="icon" .path=${mdiTrashCan}></ha-svg-icon
|
|
99
|
+
></md-outlined-button>
|
|
100
|
+
</md-list-item>
|
|
101
|
+
</md-list>
|
|
102
|
+
`;
|
|
103
|
+
}
|
|
104
|
+
async _reinterview() {
|
|
105
|
+
if (!await showPromptDialog({
|
|
106
|
+
title: "Reinterview",
|
|
107
|
+
text: "Are you sure you want to reinterview this node?",
|
|
108
|
+
confirmText: "Reinterview"
|
|
109
|
+
})) {
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
try {
|
|
113
|
+
await this.client.interviewNode(this.node.node_id);
|
|
114
|
+
showAlertDialog({
|
|
115
|
+
title: "Reinterview node",
|
|
116
|
+
text: "Success!"
|
|
117
|
+
});
|
|
118
|
+
location.reload();
|
|
119
|
+
} catch (err) {
|
|
120
|
+
showAlertDialog({
|
|
121
|
+
title: "Failed to reinterview node",
|
|
122
|
+
text: err.message
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
async _remove() {
|
|
127
|
+
if (!await showPromptDialog({
|
|
128
|
+
title: "Remove",
|
|
129
|
+
text: "Are you sure you want to remove this node?",
|
|
130
|
+
confirmText: "Remove"
|
|
131
|
+
})) {
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
try {
|
|
135
|
+
await this.client.removeNode(this.node.node_id);
|
|
136
|
+
location.replace("#");
|
|
137
|
+
} catch (err) {
|
|
138
|
+
showAlertDialog({
|
|
139
|
+
title: "Failed to remove node",
|
|
140
|
+
text: err.message
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
async _binding() {
|
|
145
|
+
try {
|
|
146
|
+
showNodeBindingDialog(this.client, this.node, this.endpoint);
|
|
147
|
+
} catch (err) {
|
|
148
|
+
console.log(err);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
async _searchUpdate() {
|
|
152
|
+
const nodeUpdate = await this.client.checkNodeUpdate(this.node.node_id);
|
|
153
|
+
if (!nodeUpdate) {
|
|
154
|
+
showAlertDialog({
|
|
155
|
+
title: "No update available",
|
|
156
|
+
text: "No update available for this node"
|
|
157
|
+
});
|
|
158
|
+
return;
|
|
159
|
+
}
|
|
160
|
+
if (!await showPromptDialog({
|
|
161
|
+
title: "Firmware update available",
|
|
162
|
+
text: `Found a firmware update for this node on ${nodeUpdate.update_source}.
|
|
163
|
+
Do you want to update this node to version ${nodeUpdate.software_version_string}?
|
|
164
|
+
Note that updating firmware is at your own risk and may cause the device to
|
|
165
|
+
malfunction or needs additional handling such as power cycling it and/or recommisisoning it.
|
|
166
|
+
Use with care.
|
|
167
|
+
${nodeUpdate.firmware_information}`,
|
|
168
|
+
confirmText: "Start Update"
|
|
169
|
+
})) {
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
172
|
+
try {
|
|
173
|
+
this._updateInitiated = true;
|
|
174
|
+
await this.client.updateNode(this.node.node_id, nodeUpdate.software_version);
|
|
175
|
+
} catch (err) {
|
|
176
|
+
showAlertDialog({
|
|
177
|
+
title: "Failed to update node",
|
|
178
|
+
text: err.message
|
|
179
|
+
});
|
|
180
|
+
} finally {
|
|
181
|
+
this._updateInitiated = false;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
async _openCommissioningWindow() {
|
|
185
|
+
if (!await showPromptDialog({
|
|
186
|
+
title: "Share device",
|
|
187
|
+
text: "Do you want to share this device with another Matter controller (open commissioning window)?",
|
|
188
|
+
confirmText: "Share"
|
|
189
|
+
})) {
|
|
190
|
+
return;
|
|
191
|
+
}
|
|
192
|
+
try {
|
|
193
|
+
const shareCode = await this.client.openCommissioningWindow(this.node.node_id);
|
|
194
|
+
showAlertDialog({
|
|
195
|
+
title: "Share device",
|
|
196
|
+
text: `Setup code: ${shareCode.setup_manual_code}`
|
|
197
|
+
});
|
|
198
|
+
} catch (err) {
|
|
199
|
+
showAlertDialog({
|
|
200
|
+
title: "Failed to open commissioning window on node",
|
|
201
|
+
text: err.message
|
|
202
|
+
});
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
};
|
|
206
|
+
NodeDetails.styles = css`
|
|
207
|
+
.btn {
|
|
208
|
+
--md-outlined-button-container-shape: 0px;
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
.left {
|
|
212
|
+
width: 30%;
|
|
213
|
+
display: inline-table;
|
|
214
|
+
}
|
|
215
|
+
.whitespace {
|
|
216
|
+
height: 15px;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
.status {
|
|
220
|
+
color: var(--danger-color);
|
|
221
|
+
font-weight: bold;
|
|
222
|
+
font-size: 0.8em;
|
|
223
|
+
}
|
|
224
|
+
`;
|
|
225
|
+
__decorateClass([
|
|
226
|
+
property()
|
|
227
|
+
], NodeDetails.prototype, "node", 2);
|
|
228
|
+
__decorateClass([
|
|
229
|
+
state()
|
|
230
|
+
], NodeDetails.prototype, "_updateInitiated", 2);
|
|
231
|
+
__decorateClass([
|
|
232
|
+
consume({ context: bindingContext }),
|
|
233
|
+
property({ attribute: false })
|
|
234
|
+
], NodeDetails.prototype, "endpoint", 2);
|
|
235
|
+
NodeDetails = __decorateClass([
|
|
236
|
+
customElement("node-details")
|
|
237
|
+
], NodeDetails);
|
|
238
|
+
export {
|
|
239
|
+
NodeDetails
|
|
240
|
+
};
|
|
241
|
+
//# sourceMappingURL=node-details.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/pages/components/node-details.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025-2026 Open Home Foundation
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import "@material/web/button/filled-button";
|
|
7
|
+
import "@material/web/button/outlined-button";
|
|
8
|
+
import "@material/web/button/text-button";
|
|
9
|
+
import "@material/web/divider/divider";
|
|
10
|
+
import "@material/web/iconbutton/icon-button";
|
|
11
|
+
import "@material/web/list/list";
|
|
12
|
+
import "@material/web/list/list-item";
|
|
13
|
+
import { MatterClient } from "@matter-server/ws-client";
|
|
14
|
+
import { LitElement } from "lit";
|
|
15
|
+
import "../../components/ha-svg-icon";
|
|
16
|
+
export declare class ServerDetails extends LitElement {
|
|
17
|
+
client?: MatterClient;
|
|
18
|
+
protected render(): import("lit-html").TemplateResult<1>;
|
|
19
|
+
private _commissionNode;
|
|
20
|
+
private _uploadDiagnosticsDumpFile;
|
|
21
|
+
private _onFileInput;
|
|
22
|
+
static styles: import("lit").CSSResult;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=server-details.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-details.d.ts","sourceRoot":"","sources":["../../../../src/pages/components/server-details.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,oCAAoC,CAAC;AAC5C,OAAO,sCAAsC,CAAC;AAC9C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,+BAA+B,CAAC;AACvC,OAAO,sCAAsC,CAAC;AAC9C,OAAO,yBAAyB,CAAC;AACjC,OAAO,8BAA8B,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;AAIrD,OAAO,8BAA8B,CAAC;AAEtC,qBACa,aAAc,SAAQ,UAAU;IAClC,MAAM,CAAC,EAAE,YAAY,CAAC;cAEV,MAAM;IA6CzB,OAAO,CAAC,eAAe;YAKT,0BAA0B;IAexC,OAAO,CAAC,YAAY,CAkBlB;IAEF,OAAgB,MAAM,0BAYpB;CACL"}
|