From 2cda06e7a6eacf6e2de7a8a36e11262f73577dde Mon Sep 17 00:00:00 2001 From: Wendelin <12148533+wendevlin@users.noreply.github.com> Date: Wed, 8 Apr 2026 08:40:42 +0200 Subject: [PATCH] Introduce ha-progress-bar (#51453) * Replace mwc-linear-progress with ha-progress-bar * Update src/panels/lovelace/cards/hui-media-control-card.ts Co-authored-by: Petar Petrov * Remove duplicate import of ha-slider in hui-media-control-card.ts --------- Co-authored-by: Petar Petrov --- .../src/components/landing-page-logs.ts | 3 +- landing-page/src/ha-landing-page.ts | 4 +- package.json | 1 - src/components/ha-file-upload.ts | 11 ++- src/components/ha-slider.ts | 5 +- src/components/progress/ha-progress-bar.ts | 92 +++++++++++++++++++ .../{ => progress}/ha-progress-ring.ts | 0 src/dialogs/config-flow/step-flow-progress.ts | 2 +- .../more-info/controls/more-info-update.ts | 16 ++-- src/dialogs/restart/dialog-restart.ts | 9 +- src/dialogs/sidebar/dialog-edit-sidebar.ts | 1 - .../voice-assistant-setup-step-update.ts | 2 +- src/onboarding/ha-onboarding.ts | 28 +++--- .../onboarding-restore-backup-status.ts | 10 +- .../config/dashboard/ha-config-updates.ts | 2 +- ...-zwave_js-rebuild-network-routes-detail.ts | 1 - .../dialog-zwave_js-rebuild-network-routes.ts | 16 ++-- .../dialog-zwave_js-update-firmware-node.ts | 15 +-- .../zwave_js/zwave_js-config-dashboard.ts | 2 +- .../lovelace/cards/hui-media-control-card.ts | 36 ++++---- yarn.lock | 16 +--- 21 files changed, 174 insertions(+), 98 deletions(-) create mode 100644 src/components/progress/ha-progress-bar.ts rename src/components/{ => progress}/ha-progress-ring.ts (100%) diff --git a/landing-page/src/components/landing-page-logs.ts b/landing-page/src/components/landing-page-logs.ts index 01443cb64b..a5f031a2aa 100644 --- a/landing-page/src/components/landing-page-logs.ts +++ b/landing-page/src/components/landing-page-logs.ts @@ -1,6 +1,5 @@ -import "@material/mwc-linear-progress/mwc-linear-progress"; -import { mdiArrowCollapseDown, mdiDownload } from "@mdi/js"; import { IntersectionController } from "@lit-labs/observers/intersection-controller.js"; +import { mdiArrowCollapseDown, mdiDownload } from "@mdi/js"; import { LitElement, type PropertyValues, css, html, nothing } from "lit"; import { customElement, property, query, state } from "lit/decorators"; import { classMap } from "lit/directives/class-map"; diff --git a/landing-page/src/ha-landing-page.ts b/landing-page/src/ha-landing-page.ts index dfe9af8d61..b6f4bba9b9 100644 --- a/landing-page/src/ha-landing-page.ts +++ b/landing-page/src/ha-landing-page.ts @@ -1,4 +1,3 @@ -import "@material/mwc-linear-progress"; import { mdiOpenInNew } from "@mdi/js"; import { css, html, nothing, type PropertyValues } from "lit"; import { customElement, property, state } from "lit/decorators"; @@ -8,6 +7,7 @@ import "../../src/components/ha-button"; import "../../src/components/ha-fade-in"; import "../../src/components/ha-spinner"; import "../../src/components/ha-svg-icon"; +import "../../src/components/progress/ha-progress-bar"; import { makeDialogManager } from "../../src/dialogs/make-dialog-manager"; import "../../src/onboarding/onboarding-welcome-links"; import { onBoardingStyles } from "../../src/onboarding/styles"; @@ -60,7 +60,7 @@ class HaLandingPage extends LandingPageBaseElement { ${!networkIssue && !this._supervisorError ? html`

${this.localize("subheader")}

- + ` : nothing} ${networkIssue || this._networkInfoError diff --git a/package.json b/package.json index e0ff8dd73d..50b64a9776 100644 --- a/package.json +++ b/package.json @@ -67,7 +67,6 @@ "@material/mwc-drawer": "0.27.0", "@material/mwc-floating-label": "0.27.0", "@material/mwc-formfield": "patch:@material/mwc-formfield@npm%3A0.27.0#~/.yarn/patches/@material-mwc-formfield-npm-0.27.0-9528cb60f6.patch", - "@material/mwc-linear-progress": "0.27.0", "@material/mwc-list": "patch:@material/mwc-list@npm%3A0.27.0#~/.yarn/patches/@material-mwc-list-npm-0.27.0-5344fc9de4.patch", "@material/mwc-radio": "0.27.0", "@material/mwc-select": "0.27.0", diff --git a/src/components/ha-file-upload.ts b/src/components/ha-file-upload.ts index 6d57855c97..cbff4af912 100644 --- a/src/components/ha-file-upload.ts +++ b/src/components/ha-file-upload.ts @@ -1,4 +1,3 @@ -import "@material/mwc-linear-progress/mwc-linear-progress"; import { mdiDelete, mdiFileUpload } from "@mdi/js"; import type { PropertyValues, TemplateResult } from "lit"; import { LitElement, css, html, nothing } from "lit"; @@ -12,6 +11,7 @@ import type { HomeAssistant } from "../types"; import { bytesToString } from "../util/bytes-to-string"; import "./ha-button"; import "./ha-icon-button"; +import "./progress/ha-progress-bar"; declare global { interface HASSDomEvents { @@ -100,10 +100,11 @@ export class HaFileUpload extends LitElement { ` : nothing} - + .value=${this.progress} + loading + > ` : html`