From 05035a281b12bb9bb2990c2bf1fb1e79f0d80e28 Mon Sep 17 00:00:00 2001 From: quinnter <45169425+quinnter@users.noreply.github.com> Date: Sat, 14 Jun 2025 09:55:14 +0100 Subject: [PATCH] Improved new dashboard dialog (#25676) * tidied cards and more translations * fix container heading padding * updated filter to use fusejs, changes to how list is localized --- .../dark/icon-dashboard-areas.svg | 36 ++ .../dark/icon-dashboard-default.svg | 63 ++++ .../dark/icon-dashboard-map.svg | 16 + .../dark/icon-dashboard-new.svg | 13 + .../dark/icon-dashboard-webpage.svg | 19 + .../light/icon-dashboard-areas.svg | 36 ++ .../light/icon-dashboard-default.svg | 63 ++++ .../light/icon-dashboard-map.svg | 16 + .../light/icon-dashboard-new.svg | 13 + .../light/icon-dashboard-webpage.svg | 16 + src/panels/config/dashboard/dashboard-card.ts | 84 +++++ .../config/dashboard/dialog-new-dashboard.ts | 328 ++++++++++++------ src/translations/en.json | 8 + 13 files changed, 610 insertions(+), 101 deletions(-) create mode 100644 public/static/images/dashboard-options/dark/icon-dashboard-areas.svg create mode 100644 public/static/images/dashboard-options/dark/icon-dashboard-default.svg create mode 100644 public/static/images/dashboard-options/dark/icon-dashboard-map.svg create mode 100644 public/static/images/dashboard-options/dark/icon-dashboard-new.svg create mode 100644 public/static/images/dashboard-options/dark/icon-dashboard-webpage.svg create mode 100644 public/static/images/dashboard-options/light/icon-dashboard-areas.svg create mode 100644 public/static/images/dashboard-options/light/icon-dashboard-default.svg create mode 100644 public/static/images/dashboard-options/light/icon-dashboard-map.svg create mode 100644 public/static/images/dashboard-options/light/icon-dashboard-new.svg create mode 100644 public/static/images/dashboard-options/light/icon-dashboard-webpage.svg create mode 100644 src/panels/config/dashboard/dashboard-card.ts diff --git a/public/static/images/dashboard-options/dark/icon-dashboard-areas.svg b/public/static/images/dashboard-options/dark/icon-dashboard-areas.svg new file mode 100644 index 0000000000..136bf63783 --- /dev/null +++ b/public/static/images/dashboard-options/dark/icon-dashboard-areas.svg @@ -0,0 +1,36 @@ + diff --git a/public/static/images/dashboard-options/dark/icon-dashboard-default.svg b/public/static/images/dashboard-options/dark/icon-dashboard-default.svg new file mode 100644 index 0000000000..6106e63db6 --- /dev/null +++ b/public/static/images/dashboard-options/dark/icon-dashboard-default.svg @@ -0,0 +1,63 @@ + diff --git a/public/static/images/dashboard-options/dark/icon-dashboard-map.svg b/public/static/images/dashboard-options/dark/icon-dashboard-map.svg new file mode 100644 index 0000000000..e5f4fab10f --- /dev/null +++ b/public/static/images/dashboard-options/dark/icon-dashboard-map.svg @@ -0,0 +1,16 @@ + diff --git a/public/static/images/dashboard-options/dark/icon-dashboard-new.svg b/public/static/images/dashboard-options/dark/icon-dashboard-new.svg new file mode 100644 index 0000000000..cf8a49544d --- /dev/null +++ b/public/static/images/dashboard-options/dark/icon-dashboard-new.svg @@ -0,0 +1,13 @@ + diff --git a/public/static/images/dashboard-options/dark/icon-dashboard-webpage.svg b/public/static/images/dashboard-options/dark/icon-dashboard-webpage.svg new file mode 100644 index 0000000000..e08ce03ed4 --- /dev/null +++ b/public/static/images/dashboard-options/dark/icon-dashboard-webpage.svg @@ -0,0 +1,19 @@ + diff --git a/public/static/images/dashboard-options/light/icon-dashboard-areas.svg b/public/static/images/dashboard-options/light/icon-dashboard-areas.svg new file mode 100644 index 0000000000..3ff70fef26 --- /dev/null +++ b/public/static/images/dashboard-options/light/icon-dashboard-areas.svg @@ -0,0 +1,36 @@ + diff --git a/public/static/images/dashboard-options/light/icon-dashboard-default.svg b/public/static/images/dashboard-options/light/icon-dashboard-default.svg new file mode 100644 index 0000000000..498656aa5a --- /dev/null +++ b/public/static/images/dashboard-options/light/icon-dashboard-default.svg @@ -0,0 +1,63 @@ + diff --git a/public/static/images/dashboard-options/light/icon-dashboard-map.svg b/public/static/images/dashboard-options/light/icon-dashboard-map.svg new file mode 100644 index 0000000000..3b8fe72669 --- /dev/null +++ b/public/static/images/dashboard-options/light/icon-dashboard-map.svg @@ -0,0 +1,16 @@ + diff --git a/public/static/images/dashboard-options/light/icon-dashboard-new.svg b/public/static/images/dashboard-options/light/icon-dashboard-new.svg new file mode 100644 index 0000000000..01ff900ca9 --- /dev/null +++ b/public/static/images/dashboard-options/light/icon-dashboard-new.svg @@ -0,0 +1,13 @@ + diff --git a/public/static/images/dashboard-options/light/icon-dashboard-webpage.svg b/public/static/images/dashboard-options/light/icon-dashboard-webpage.svg new file mode 100644 index 0000000000..819dcd918e --- /dev/null +++ b/public/static/images/dashboard-options/light/icon-dashboard-webpage.svg @@ -0,0 +1,16 @@ + diff --git a/src/panels/config/dashboard/dashboard-card.ts b/src/panels/config/dashboard/dashboard-card.ts new file mode 100644 index 0000000000..b737152442 --- /dev/null +++ b/src/panels/config/dashboard/dashboard-card.ts @@ -0,0 +1,84 @@ +import { LitElement, html, css } from "lit"; +import { customElement, property } from "lit/decorators"; +import "../../../components/ha-ripple"; + +@customElement("dashboard-card") +export class DashboardCard extends LitElement { + @property({ type: String }) name = ""; + + @property({ type: String }) description = ""; + + @property({ type: String }) img = ""; + + @property({ type: String }) alt = ""; + + render() { + return html` +
${this.description}
+