From 0544027c381aeab625fc9fb60e5d98d9346e045d Mon Sep 17 00:00:00 2001 From: Charles Garwood Date: Sat, 3 Aug 2019 14:19:25 -0400 Subject: [PATCH] Fix zwave-node-values component (#3452) * Fix zwave-node-values * lint --- src/data/zwave.ts | 11 ++++++---- src/panels/config/zwave/zwave-values.ts | 29 +++++++++++++------------ 2 files changed, 22 insertions(+), 18 deletions(-) diff --git a/src/data/zwave.ts b/src/data/zwave.ts index f41567edbc..77740c8051 100644 --- a/src/data/zwave.ts +++ b/src/data/zwave.ts @@ -5,10 +5,13 @@ export interface ZWaveNetworkStatus { } export interface ZWaveValue { - index: number; - instance: number; - label: string; - poll_intensity: number; + key: number; + value: { + index: number; + instance: number; + label: string; + poll_intensity: number; + }; } export interface ZWaveConfigItem { diff --git a/src/panels/config/zwave/zwave-values.ts b/src/panels/config/zwave/zwave-values.ts index 2beda32122..8428b28c0b 100644 --- a/src/panels/config/zwave/zwave-values.ts +++ b/src/panels/config/zwave/zwave-values.ts @@ -23,7 +23,7 @@ import { ZWaveValue } from "../../../data/zwave"; @customElement("zwave-values") export class ZwaveValues extends LitElement { @property() public hass!: HomeAssistant; - @property() private _values: ZWaveValue[] = []; + @property() public values: ZWaveValue[] = []; @property() private _selectedValue: number = -1; protected render(): TemplateResult | void { @@ -34,7 +34,7 @@ export class ZwaveValues extends LitElement { >
@@ -42,19 +42,11 @@ export class ZwaveValues extends LitElement { slot="dropdown-content" .selected=${this._selectedValue} > - ${this._values.map( + ${this.values.map( (item) => html` - ${item.label} - (${this.hass.localize( - "ui.panel.config.zwave.common.instance" - )}: - ${item.instance}, - ${this.hass.localize( - "ui.panel.config.zwave.common.index" - )}: - ${item.index}) + + ${this._computeCaption(item)} + ` )} @@ -110,6 +102,15 @@ export class ZwaveValues extends LitElement { `, ]; } + + private _computeCaption(item) { + let out = `${item.value.label}`; + out += ` (${this.hass.localize("ui.panel.config.zwave.common.instance")}:`; + out += ` ${item.value.instance},`; + out += ` ${this.hass.localize("ui.panel.config.zwave.common.index")}:`; + out += ` ${item.value.index})`; + return out; + } } declare global {