From 32c6fb14dd9b65debc4d7f475ba9d548e9409ac3 Mon Sep 17 00:00:00 2001 From: Raman Gupta <7243222+raman325@users.noreply.github.com> Date: Mon, 26 Jul 2021 17:59:49 -0400 Subject: [PATCH] Re-add success/failure indicator on call service button in dev tools (#9600) * Re-add success/failure indicator on call service button in dev tools * move success outside of try block * Export HaProgressButton --- src/components/buttons/ha-progress-button.ts | 2 +- .../service/developer-tools-service.ts | 17 +++++++++++++---- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/src/components/buttons/ha-progress-button.ts b/src/components/buttons/ha-progress-button.ts index 259ee75310..ed6ec6ec86 100644 --- a/src/components/buttons/ha-progress-button.ts +++ b/src/components/buttons/ha-progress-button.ts @@ -5,7 +5,7 @@ import { customElement, property, query } from "lit/decorators"; import "../ha-circular-progress"; @customElement("ha-progress-button") -class HaProgressButton extends LitElement { +export class HaProgressButton extends LitElement { @property({ type: Boolean }) public disabled = false; @property({ type: Boolean }) public progress = false; diff --git a/src/panels/developer-tools/service/developer-tools-service.ts b/src/panels/developer-tools/service/developer-tools-service.ts index 282337d0c0..8ca0492192 100644 --- a/src/panels/developer-tools/service/developer-tools-service.ts +++ b/src/panels/developer-tools/service/developer-tools-service.ts @@ -9,7 +9,8 @@ import { computeDomain } from "../../../common/entity/compute_domain"; import { computeObjectId } from "../../../common/entity/compute_object_id"; import { hasTemplate } from "../../../common/string/has-template"; import { extractSearchParam } from "../../../common/url/search-params"; -import "../../../components/buttons/ha-progress-button"; +import { HaProgressButton } from "../../../components/buttons/ha-progress-button"; + import "../../../components/entity/ha-entity-picker"; import "../../../components/ha-card"; import "../../../components/ha-expansion-panel"; @@ -135,11 +136,15 @@ class HaPanelDevService extends LitElement { >` : ""} - + ${this.hass.localize( "ui.panel.developer-tools.tabs.services.call_service" )} - + @@ -295,7 +300,8 @@ class HaPanelDevService extends LitElement { } ); - private async _callService() { + private async _callService(ev) { + const button = ev.currentTarget as HaProgressButton; if (!this._serviceData?.service) { return; } @@ -310,6 +316,7 @@ class HaPanelDevService extends LitElement { return; } forwardHaptic("failure"); + button.actionError(); showToast(this, { message: this.hass.localize( @@ -318,7 +325,9 @@ class HaPanelDevService extends LitElement { this._serviceData.service ) + ` ${err.message}`, }); + return; } + button.actionSuccess(); } private _toggleYaml() {