@matter-server/dashboard 0.2.7-alpha.0-20260118-993a1c7 → 0.2.7-alpha.0-20260118-45c7af0

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.
Files changed (30) hide show
  1. package/dist/esm/components/dialogs/settings/log-level-dialog.d.ts +33 -0
  2. package/dist/esm/components/dialogs/settings/log-level-dialog.d.ts.map +1 -0
  3. package/dist/esm/components/dialogs/settings/log-level-dialog.js +185 -0
  4. package/dist/esm/components/dialogs/settings/log-level-dialog.js.map +6 -0
  5. package/dist/esm/components/dialogs/settings/show-log-level-dialog.d.ts +8 -0
  6. package/dist/esm/components/dialogs/settings/show-log-level-dialog.d.ts.map +1 -0
  7. package/dist/esm/components/dialogs/settings/show-log-level-dialog.js +15 -0
  8. package/dist/esm/components/dialogs/settings/show-log-level-dialog.js.map +6 -0
  9. package/dist/esm/pages/components/header.d.ts +1 -0
  10. package/dist/esm/pages/components/header.d.ts.map +1 -1
  11. package/dist/esm/pages/components/header.js +13 -1
  12. package/dist/esm/pages/components/header.js.map +1 -1
  13. package/dist/web/js/{commission-node-dialog-DGw5qDgH.js → commission-node-dialog-CoaDIV2Y.js} +5 -5
  14. package/dist/web/js/{commission-node-existing-CHyyeC8y.js → commission-node-existing-DEU_mJjO.js} +5 -4
  15. package/dist/web/js/{commission-node-thread-iRDSlidy.js → commission-node-thread-DZ6DghSs.js} +5 -4
  16. package/dist/web/js/{commission-node-wifi-C4YNR3bG.js → commission-node-wifi-DOyin0q3.js} +5 -4
  17. package/dist/web/js/{dialog-box-ag-xOaYh.js → dialog-box-B5sunUPv.js} +2 -2
  18. package/dist/web/js/{fire_event-BeiEbHcE.js → fire_event-C9Duc1j-.js} +1 -1
  19. package/dist/web/js/log-level-dialog-B7LsZYUL.js +3232 -0
  20. package/dist/web/js/main.js +24 -1
  21. package/dist/web/js/{matter-dashboard-app-BxQ4W_uT.js → matter-dashboard-app-DlHSE_Qh.js} +81 -5
  22. package/dist/web/js/{node-binding-dialog-ClziphM0.js → node-binding-dialog-BifZsigR.js} +4 -3
  23. package/dist/web/js/outlined-text-field-D2BOt1yD.js +968 -0
  24. package/dist/web/js/{prevent_default-Bs2sUnny.js → prevent_default-CuW2EnKR.js} +1 -1
  25. package/dist/web/js/validator-MOJiFndw.js +1122 -0
  26. package/package.json +4 -4
  27. package/src/components/dialogs/settings/log-level-dialog.ts +179 -0
  28. package/src/components/dialogs/settings/show-log-level-dialog.ts +14 -0
  29. package/src/pages/components/header.ts +16 -1
  30. package/dist/web/js/outlined-text-field-B-CiqgEJ.js +0 -2086
@@ -146,6 +146,8 @@ class Connection {
146
146
  };
147
147
  this.socket.onclose = () => {
148
148
  console.log("WebSocket Closed");
149
+ this.socket = void 0;
150
+ this.serverInfo = void 0;
149
151
  onConnectionLost();
150
152
  };
151
153
  this.socket.onerror = error => {
@@ -170,6 +172,7 @@ class Connection {
170
172
  this.socket.close();
171
173
  this.socket = void 0;
172
174
  }
175
+ this.serverInfo = void 0;
173
176
  }
174
177
  sendMessage(message) {
175
178
  if (!this.socket) {
@@ -428,6 +431,26 @@ class MatterClient {
428
431
  label
429
432
  });
430
433
  }
434
+ /**
435
+ * Get the current log levels for console and file logging.
436
+ * @returns The current log level configuration
437
+ */
438
+ async getLogLevel() {
439
+ return await this.sendCommand("get_loglevel", 0, {});
440
+ }
441
+ /**
442
+ * Set the log level for console and/or file logging.
443
+ * Changes are temporary and will be reset when the server restarts.
444
+ * @param consoleLoglevel Console log level to set (optional)
445
+ * @param fileLoglevel File log level to set, only applied if file logging is enabled (optional)
446
+ * @returns The log level configuration after the change
447
+ */
448
+ async setLogLevel(consoleLoglevel, fileLoglevel) {
449
+ return await this.sendCommand("set_loglevel", 0, {
450
+ console_loglevel: consoleLoglevel,
451
+ file_loglevel: fileLoglevel
452
+ });
453
+ }
431
454
  sendCommand(command, require_schema = void 0, args) {
432
455
  if (require_schema && this.serverInfo.schema_version < require_schema) {
433
456
  throw new InvalidServerVersion(`Command not available due to incompatible server version. Update the Matter Server to a version that supports at least api schema ${require_schema}.`);
@@ -641,7 +664,7 @@ const ThemeService = new ThemeServiceImpl();
641
664
  * SPDX-License-Identifier: Apache-2.0
642
665
  */
643
666
  async function main() {
644
- import('./matter-dashboard-app-BxQ4W_uT.js').then(function (n) { return n.s; });
667
+ import('./matter-dashboard-app-DlHSE_Qh.js').then(function (n) { return n.z; });
645
668
  let url = "";
646
669
  const isProductionServer = location.origin.includes(":5580") || location.href.includes("hassio_ingress") || location.href.includes("/api/ingress/");
647
670
  if (!isProductionServer) {
@@ -217,7 +217,7 @@ function c$3({
217
217
  }
218
218
 
219
219
  // Material Design Icons v7.4.47
220
- var mdiArrowLeft="M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z";var mdiBrightnessAuto="M14.3,16L13.6,14H10.4L9.7,16H7.8L11,7H13L16.2,16H14.3M20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31L23.31,12L20,8.69M10.85,12.65H13.15L12,9L10.85,12.65Z";var mdiChatProcessing="M12,3C17.5,3 22,6.58 22,11C22,15.42 17.5,19 12,19C10.76,19 9.57,18.82 8.47,18.5C5.55,21 2,21 2,21C4.33,18.67 4.7,17.1 4.75,16.5C3.05,15.07 2,13.13 2,11C2,6.58 6.5,3 12,3M17,12V10H15V12H17M13,12V10H11V12H13M9,12V10H7V12H9Z";var mdiChevronRight="M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z";var mdiFile="M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z";var mdiLink="M3.9,12C3.9,10.29 5.29,8.9 7,8.9H11V7H7A5,5 0 0,0 2,12A5,5 0 0,0 7,17H11V15.1H7C5.29,15.1 3.9,13.71 3.9,12M8,13H16V11H8V13M17,7H13V8.9H17C18.71,8.9 20.1,10.29 20.1,12C20.1,13.71 18.71,15.1 17,15.1H13V17H17A5,5 0 0,0 22,12A5,5 0 0,0 17,7Z";var mdiLogout="M17 7L15.59 8.41L18.17 11H8V13H18.17L15.59 15.58L17 17L22 12M4 5H12V3H4C2.9 3 2 3.9 2 5V19C2 20.1 2.9 21 4 21H12V19H4V5Z";var mdiPlus="M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z";var mdiRefresh="M17.65,6.35C16.2,4.9 14.21,4 12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20C15.73,20 18.84,17.45 19.73,14H17.65C16.83,16.33 14.61,18 12,18A6,6 0 0,1 6,12A6,6 0 0,1 12,6C13.66,6 15.14,6.69 16.22,7.78L13,11H20V4L17.65,6.35Z";var mdiShareVariant="M18,16.08C17.24,16.08 16.56,16.38 16.04,16.85L8.91,12.7C8.96,12.47 9,12.24 9,12C9,11.76 8.96,11.53 8.91,11.3L15.96,7.19C16.5,7.69 17.21,8 18,8A3,3 0 0,0 21,5A3,3 0 0,0 18,2A3,3 0 0,0 15,5C15,5.24 15.04,5.47 15.09,5.7L8.04,9.81C7.5,9.31 6.79,9 6,9A3,3 0 0,0 3,12A3,3 0 0,0 6,15C6.79,15 7.5,14.69 8.04,14.19L15.16,18.34C15.11,18.55 15.08,18.77 15.08,19C15.08,20.61 16.39,21.91 18,21.91C19.61,21.91 20.92,20.61 20.92,19A2.92,2.92 0 0,0 18,16.08Z";var mdiTrashCan="M9,3V4H4V6H5V19A2,2 0 0,0 7,21H17A2,2 0 0,0 19,19V6H20V4H15V3H9M9,8H11V17H9V8M13,8H15V17H13V8Z";var mdiUpdate="M21,10.12H14.22L16.96,7.3C14.23,4.6 9.81,4.5 7.08,7.2C4.35,9.91 4.35,14.28 7.08,17C9.81,19.7 14.23,19.7 16.96,17C18.32,15.65 19,14.08 19,12.1H21C21,14.08 20.12,16.65 18.36,18.39C14.85,21.87 9.15,21.87 5.64,18.39C2.14,14.92 2.11,9.28 5.62,5.81C9.13,2.34 14.76,2.34 18.27,5.81L21,3V10.12M12.5,8V12.25L16,14.33L15.28,15.54L11,13V8H12.5Z";var mdiWeatherNight="M17.75,4.09L15.22,6.03L16.13,9.09L13.5,7.28L10.87,9.09L11.78,6.03L9.25,4.09L12.44,4L13.5,1L14.56,4L17.75,4.09M21.25,11L19.61,12.25L20.2,14.23L18.5,13.06L16.8,14.23L17.39,12.25L15.75,11L17.81,10.95L18.5,9L19.19,10.95L21.25,11M18.97,15.95C19.8,15.87 20.69,17.05 20.16,17.8C19.84,18.25 19.5,18.67 19.08,19.07C15.17,23 8.84,23 4.94,19.07C1.03,15.17 1.03,8.83 4.94,4.93C5.34,4.53 5.76,4.17 6.21,3.85C6.96,3.32 8.14,4.21 8.06,5.04C7.79,7.9 8.75,10.87 10.95,13.06C13.14,15.26 16.1,16.22 18.97,15.95M17.33,17.97C14.5,17.81 11.7,16.64 9.53,14.5C7.36,12.31 6.2,9.5 6.04,6.68C3.23,9.82 3.34,14.64 6.35,17.66C9.37,20.67 14.19,20.78 17.33,17.97Z";var mdiWeatherSunny="M12,7A5,5 0 0,1 17,12A5,5 0 0,1 12,17A5,5 0 0,1 7,12A5,5 0 0,1 12,7M12,9A3,3 0 0,0 9,12A3,3 0 0,0 12,15A3,3 0 0,0 15,12A3,3 0 0,0 12,9M12,2L14.39,5.42C13.65,5.15 12.84,5 12,5C11.16,5 10.35,5.15 9.61,5.42L12,2M3.34,7L7.5,6.65C6.9,7.16 6.36,7.78 5.94,8.5C5.5,9.24 5.25,10 5.11,10.79L3.34,7M3.36,17L5.12,13.23C5.26,14 5.53,14.78 5.95,15.5C6.37,16.24 6.91,16.86 7.5,17.37L3.36,17M20.65,7L18.88,10.79C18.74,10 18.47,9.23 18.05,8.5C17.63,7.78 17.1,7.15 16.5,6.64L20.65,7M20.64,17L16.5,17.36C17.09,16.85 17.62,16.22 18.04,15.5C18.46,14.77 18.73,14 18.87,13.21L20.64,17M12,22L9.59,18.56C10.33,18.83 11.14,19 12,19C12.82,19 13.63,18.83 14.37,18.56L12,22Z";
220
+ var mdiArrowLeft="M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z";var mdiBrightnessAuto="M14.3,16L13.6,14H10.4L9.7,16H7.8L11,7H13L16.2,16H14.3M20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31L23.31,12L20,8.69M10.85,12.65H13.15L12,9L10.85,12.65Z";var mdiChatProcessing="M12,3C17.5,3 22,6.58 22,11C22,15.42 17.5,19 12,19C10.76,19 9.57,18.82 8.47,18.5C5.55,21 2,21 2,21C4.33,18.67 4.7,17.1 4.75,16.5C3.05,15.07 2,13.13 2,11C2,6.58 6.5,3 12,3M17,12V10H15V12H17M13,12V10H11V12H13M9,12V10H7V12H9Z";var mdiChevronRight="M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z";var mdiCog="M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z";var mdiFile="M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z";var mdiLink="M3.9,12C3.9,10.29 5.29,8.9 7,8.9H11V7H7A5,5 0 0,0 2,12A5,5 0 0,0 7,17H11V15.1H7C5.29,15.1 3.9,13.71 3.9,12M8,13H16V11H8V13M17,7H13V8.9H17C18.71,8.9 20.1,10.29 20.1,12C20.1,13.71 18.71,15.1 17,15.1H13V17H17A5,5 0 0,0 22,12A5,5 0 0,0 17,7Z";var mdiLogout="M17 7L15.59 8.41L18.17 11H8V13H18.17L15.59 15.58L17 17L22 12M4 5H12V3H4C2.9 3 2 3.9 2 5V19C2 20.1 2.9 21 4 21H12V19H4V5Z";var mdiPlus="M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z";var mdiRefresh="M17.65,6.35C16.2,4.9 14.21,4 12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20C15.73,20 18.84,17.45 19.73,14H17.65C16.83,16.33 14.61,18 12,18A6,6 0 0,1 6,12A6,6 0 0,1 12,6C13.66,6 15.14,6.69 16.22,7.78L13,11H20V4L17.65,6.35Z";var mdiShareVariant="M18,16.08C17.24,16.08 16.56,16.38 16.04,16.85L8.91,12.7C8.96,12.47 9,12.24 9,12C9,11.76 8.96,11.53 8.91,11.3L15.96,7.19C16.5,7.69 17.21,8 18,8A3,3 0 0,0 21,5A3,3 0 0,0 18,2A3,3 0 0,0 15,5C15,5.24 15.04,5.47 15.09,5.7L8.04,9.81C7.5,9.31 6.79,9 6,9A3,3 0 0,0 3,12A3,3 0 0,0 6,15C6.79,15 7.5,14.69 8.04,14.19L15.16,18.34C15.11,18.55 15.08,18.77 15.08,19C15.08,20.61 16.39,21.91 18,21.91C19.61,21.91 20.92,20.61 20.92,19A2.92,2.92 0 0,0 18,16.08Z";var mdiTrashCan="M9,3V4H4V6H5V19A2,2 0 0,0 7,21H17A2,2 0 0,0 19,19V6H20V4H15V3H9M9,8H11V17H9V8M13,8H15V17H13V8Z";var mdiUpdate="M21,10.12H14.22L16.96,7.3C14.23,4.6 9.81,4.5 7.08,7.2C4.35,9.91 4.35,14.28 7.08,17C9.81,19.7 14.23,19.7 16.96,17C18.32,15.65 19,14.08 19,12.1H21C21,14.08 20.12,16.65 18.36,18.39C14.85,21.87 9.15,21.87 5.64,18.39C2.14,14.92 2.11,9.28 5.62,5.81C9.13,2.34 14.76,2.34 18.27,5.81L21,3V10.12M12.5,8V12.25L16,14.33L15.28,15.54L11,13V8H12.5Z";var mdiWeatherNight="M17.75,4.09L15.22,6.03L16.13,9.09L13.5,7.28L10.87,9.09L11.78,6.03L9.25,4.09L12.44,4L13.5,1L14.56,4L17.75,4.09M21.25,11L19.61,12.25L20.2,14.23L18.5,13.06L16.8,14.23L17.39,12.25L15.75,11L17.81,10.95L18.5,9L19.19,10.95L21.25,11M18.97,15.95C19.8,15.87 20.69,17.05 20.16,17.8C19.84,18.25 19.5,18.67 19.08,19.07C15.17,23 8.84,23 4.94,19.07C1.03,15.17 1.03,8.83 4.94,4.93C5.34,4.53 5.76,4.17 6.21,3.85C6.96,3.32 8.14,4.21 8.06,5.04C7.79,7.9 8.75,10.87 10.95,13.06C13.14,15.26 16.1,16.22 18.97,15.95M17.33,17.97C14.5,17.81 11.7,16.64 9.53,14.5C7.36,12.31 6.2,9.5 6.04,6.68C3.23,9.82 3.34,14.64 6.35,17.66C9.37,20.67 14.19,20.78 17.33,17.97Z";var mdiWeatherSunny="M12,7A5,5 0 0,1 17,12A5,5 0 0,1 12,17A5,5 0 0,1 7,12A5,5 0 0,1 12,7M12,9A3,3 0 0,0 9,12A3,3 0 0,0 12,15A3,3 0 0,0 15,12A3,3 0 0,0 12,9M12,2L14.39,5.42C13.65,5.15 12.84,5 12,5C11.16,5 10.35,5.15 9.61,5.42L12,2M3.34,7L7.5,6.65C6.9,7.16 6.36,7.78 5.94,8.5C5.5,9.24 5.25,10 5.11,10.79L3.34,7M3.36,17L5.12,13.23C5.26,14 5.53,14.78 5.95,15.5C6.37,16.24 6.91,16.86 7.5,17.37L3.36,17M20.65,7L18.88,10.79C18.74,10 18.47,9.23 18.05,8.5C17.63,7.78 17.1,7.15 16.5,6.64L20.65,7M20.64,17L16.5,17.36C17.09,16.85 17.62,16.22 18.04,15.5C18.46,14.77 18.73,14 18.87,13.21L20.64,17M12,22L9.59,18.56C10.33,18.83 11.14,19 12,19C12.82,19 13.63,18.83 14.37,18.56L12,22Z";
221
221
 
222
222
  /**
223
223
  * @license
@@ -1477,6 +1477,58 @@ const EASING = {
1477
1477
  STANDARD: 'cubic-bezier(0.2, 0, 0, 1)',
1478
1478
  EMPHASIZED: 'cubic-bezier(.3,0,0,1)',
1479
1479
  EMPHASIZED_ACCELERATE: 'cubic-bezier(.3,0,.8,.15)'};
1480
+ /**
1481
+ * Creates an `AnimationSignal` that can be used to cancel a previous task.
1482
+ *
1483
+ * @example
1484
+ * class MyClass {
1485
+ * private labelAnimationSignal = createAnimationSignal();
1486
+ *
1487
+ * private async animateLabel() {
1488
+ * // Start of the task. Previous tasks will be canceled.
1489
+ * const signal = this.labelAnimationSignal.start();
1490
+ *
1491
+ * // Do async work...
1492
+ * if (signal.aborted) {
1493
+ * // Use AbortSignal to check if a request was made to abort after some
1494
+ * // asynchronous work.
1495
+ * return;
1496
+ * }
1497
+ *
1498
+ * const animation = this.animate(...);
1499
+ * // Add event listeners to be notified when the task should be canceled.
1500
+ * signal.addEventListener('abort', () => {
1501
+ * animation.cancel();
1502
+ * });
1503
+ *
1504
+ * animation.addEventListener('finish', () => {
1505
+ * // Tell the signal that the current task is finished.
1506
+ * this.labelAnimationSignal.finish();
1507
+ * });
1508
+ * }
1509
+ * }
1510
+ *
1511
+ * @return An `AnimationSignal`.
1512
+ */
1513
+ function createAnimationSignal() {
1514
+ // The current animation's AbortController
1515
+ let animationAbortController = null;
1516
+ return {
1517
+ start() {
1518
+ var _animationAbortContro;
1519
+ // Tell the previous animation to cancel.
1520
+ (_animationAbortContro = animationAbortController) === null || _animationAbortContro === void 0 || _animationAbortContro.abort();
1521
+ // Set up a new AbortController for the current animation.
1522
+ animationAbortController = new AbortController();
1523
+ // Provide the AbortSignal so that the caller can check aborted status
1524
+ // and add listeners.
1525
+ return animationAbortController.signal;
1526
+ },
1527
+ finish() {
1528
+ animationAbortController = null;
1529
+ }
1530
+ };
1531
+ }
1480
1532
 
1481
1533
  /**
1482
1534
  * @license
@@ -3950,6 +4002,19 @@ let MdListItem = class MdListItem extends ListItemEl {};
3950
4002
  MdListItem.styles = [styles$4];
3951
4003
  MdListItem = __decorate([t$1('md-list-item')], MdListItem);
3952
4004
 
4005
+ /**
4006
+ * @license
4007
+ * Copyright 2025-2026 Open Home Foundation
4008
+ * SPDX-License-Identifier: Apache-2.0
4009
+ */
4010
+ const showLogLevelDialog = async client => {
4011
+ var _document$querySelect;
4012
+ await import('./log-level-dialog-B7LsZYUL.js');
4013
+ const dialog = document.createElement("log-level-dialog");
4014
+ dialog.client = client;
4015
+ (_document$querySelect = document.querySelector("matter-dashboard-app")) === null || _document$querySelect === void 0 || _document$querySelect.renderRoot.appendChild(dialog);
4016
+ };
4017
+
3953
4018
  var __defProp$8 = Object.defineProperty;
3954
4019
  var __getOwnPropDesc$a = Object.getOwnPropertyDescriptor;
3955
4020
  var __decorateClass$b = (decorators, target, key, kind) => {
@@ -3979,6 +4044,11 @@ let DashboardHeader = class extends i$3 {
3979
4044
  _cycleTheme() {
3980
4045
  ThemeService.cycleTheme();
3981
4046
  }
4047
+ _openSettings() {
4048
+ if (this.client) {
4049
+ showLogLevelDialog(this.client);
4050
+ }
4051
+ }
3982
4052
  _getThemeIcon() {
3983
4053
  switch (this._themePreference) {
3984
4054
  case "light":
@@ -4020,6 +4090,12 @@ let DashboardHeader = class extends i$3 {
4020
4090
  </md-icon-button>
4021
4091
  `;
4022
4092
  })}
4093
+ <!-- settings button (only when connected) -->
4094
+ ${this.client ? b`
4095
+ <md-icon-button @click=${this._openSettings} title="Server Settings">
4096
+ <ha-svg-icon .path=${mdiCog}></ha-svg-icon>
4097
+ </md-icon-button>
4098
+ ` : A}
4023
4099
  <!-- theme toggle button -->
4024
4100
  <md-icon-button @click=${this._cycleTheme} .title=${this._getThemeTooltip()}>
4025
4101
  <ha-svg-icon .path=${this._getThemeIcon()}></ha-svg-icon>
@@ -15505,7 +15581,7 @@ const clusters = {
15505
15581
  * SPDX-License-Identifier: Apache-2.0
15506
15582
  */
15507
15583
  const showDialogBox = async (type, dialogParams) => {
15508
- await import('./dialog-box-ag-xOaYh.js');
15584
+ await import('./dialog-box-B5sunUPv.js');
15509
15585
  return new Promise(resolve => {
15510
15586
  const dialog = document.createElement("dialox-box");
15511
15587
  dialog.params = dialogParams;
@@ -15679,7 +15755,7 @@ MdTextButton = __decorate([t$1('md-text-button')], MdTextButton);
15679
15755
  */
15680
15756
  const showNodeBindingDialog = async (client, node, endpoint) => {
15681
15757
  var _document$querySelect;
15682
- await import('./node-binding-dialog-ClziphM0.js');
15758
+ await import('./node-binding-dialog-BifZsigR.js');
15683
15759
  const dialog = document.createElement("node-binding-dialog");
15684
15760
  dialog.client = client;
15685
15761
  dialog.node = node;
@@ -16674,7 +16750,7 @@ DashboardFooter = __decorateClass$3([t$1("dashboard-footer")], DashboardFooter);
16674
16750
  */
16675
16751
  const showCommissionNodeDialog = async client => {
16676
16752
  var _document$querySelect;
16677
- await import('./commission-node-dialog-DGw5qDgH.js');
16753
+ await import('./commission-node-dialog-CoaDIV2Y.js');
16678
16754
  const dialog = document.createElement("commission-node-dialog");
16679
16755
  dialog.client = client;
16680
16756
  (_document$querySelect = document.querySelector("matter-dashboard-app")) === null || _document$querySelect === void 0 || _document$querySelect.renderRoot.appendChild(dialog);
@@ -17071,4 +17147,4 @@ var matterDashboardApp = /*#__PURE__*/Object.freeze({
17071
17147
  __proto__: null
17072
17148
  });
17073
17149
 
17074
- export { A, D, EASING as E, __decorate as _, i$6 as a, b, c$3 as c, clientContext as d, e$5 as e, e$2 as f, e$3 as g, i$2 as h, i$3 as i, t as j, E as k, internals as l, mixinDelegatesAria as m, n$1 as n, o$2 as o, mixinElementInternals as p, i$1 as q, r$1 as r, matterDashboardApp as s, t$1 as t, u };
17150
+ export { A, D, EASING as E, ListController as L, NavigableKeys as N, __decorate as _, e$5 as a, getLastActivatableItem as b, createAnimationSignal as c, getFirstActivatableItem as d, e$6 as e, e$2 as f, getActiveItem as g, b as h, i$3 as i, i$6 as j, mixinElementInternals as k, i$1 as l, mixinDelegatesAria as m, n$1 as n, o$2 as o, c$3 as p, clientContext as q, r$1 as r, e$3 as s, t$1 as t, u, i$2 as v, t as w, E as x, internals as y, matterDashboardApp as z };
@@ -1,7 +1,8 @@
1
- import { a as i, c, n, d as clientContext, e, i as i$1, A, b, t } from './matter-dashboard-app-BxQ4W_uT.js';
2
- import { p as preventDefault } from './prevent_default-Bs2sUnny.js';
3
- import './outlined-text-field-B-CiqgEJ.js';
1
+ import { j as i, p as c, n, q as clientContext, a as e, i as i$1, A, h as b, t } from './matter-dashboard-app-DlHSE_Qh.js';
2
+ import { p as preventDefault } from './prevent_default-CuW2EnKR.js';
3
+ import './outlined-text-field-D2BOt1yD.js';
4
4
  import './main.js';
5
+ import './validator-MOJiFndw.js';
5
6
 
6
7
  var _staticBlock$1;
7
8
  /**