From 392a87f33a2fa6bd9f00a09704f87a339a8f49c4 Mon Sep 17 00:00:00 2001 From: Petar Petrov Date: Thu, 18 Dec 2025 09:15:16 +0200 Subject: [PATCH] refactor --- .../hui-picture-elements-card-editor.ts | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/src/panels/lovelace/editor/config-elements/hui-picture-elements-card-editor.ts b/src/panels/lovelace/editor/config-elements/hui-picture-elements-card-editor.ts index 3d2396401f..9bbdf96bae 100644 --- a/src/panels/lovelace/editor/config-elements/hui-picture-elements-card-editor.ts +++ b/src/panels/lovelace/editor/config-elements/hui-picture-elements-card-editor.ts @@ -104,14 +104,6 @@ export class HuiPictureElementsCardEditor this._handleSubElementChanged(updateEvent); } - private _configWithPreviewCallback( - config: PictureElementsCardConfig - ): PictureElementsCardConfig { - const configWithCallback = { ...config }; - (configWithCallback as any)[PREVIEW_CLICK_CALLBACK] = this._onPreviewClick; - return configWithCallback; - } - private _schema = memoizeOne( (localize: LocalizeFunc) => [ @@ -236,6 +228,7 @@ export class HuiPictureElementsCardEditor return; } + // no need to attach the preview click callback here, no element is being edited fireEvent(this, "config-changed", { config: ev.detail.value }); } @@ -246,11 +239,10 @@ export class HuiPictureElementsCardEditor const config = { ...this._config, elements: ev.detail.elements as LovelaceElementConfig[], + [PREVIEW_CLICK_CALLBACK]: this._onPreviewClick, } as PictureElementsCardConfig; - fireEvent(this, "config-changed", { - config: this._configWithPreviewCallback(config), - }); + fireEvent(this, "config-changed", { config }); const newLength = ev.detail.elements?.length || 0; if (newLength === oldLength + 1) { @@ -290,7 +282,10 @@ export class HuiPictureElementsCardEditor }; fireEvent(this, "config-changed", { - config: this._configWithPreviewCallback(this._config), + config: { + ...this._config, + [PREVIEW_CLICK_CALLBACK]: this._onPreviewClick, + }, }); }