mirror of
https://github.com/home-assistant/frontend.git
synced 2025-07-19 07:16:39 +00:00
Fix getting custom config parameters for Z-Wave JS (#23244)
This commit is contained in:
parent
f0ddc408e8
commit
9c04f57e35
@ -715,11 +715,13 @@ export const getZwaveNodeRawConfigParameter = (
|
|||||||
device_id: string,
|
device_id: string,
|
||||||
property: number
|
property: number
|
||||||
): Promise<number> =>
|
): Promise<number> =>
|
||||||
hass.callWS({
|
hass
|
||||||
type: "zwave_js/get_raw_config_parameter",
|
.callWS<{ value: number }>({
|
||||||
device_id,
|
type: "zwave_js/get_raw_config_parameter",
|
||||||
property,
|
device_id,
|
||||||
});
|
property,
|
||||||
|
})
|
||||||
|
.then((res) => res.value);
|
||||||
|
|
||||||
export const reinterviewZwaveNode = (
|
export const reinterviewZwaveNode = (
|
||||||
hass: HomeAssistant,
|
hass: HomeAssistant,
|
||||||
|
@ -11,6 +11,7 @@ import {
|
|||||||
getZwaveNodeRawConfigParameter,
|
getZwaveNodeRawConfigParameter,
|
||||||
setZwaveNodeRawConfigParameter,
|
setZwaveNodeRawConfigParameter,
|
||||||
} from "../../../../../data/zwave_js";
|
} from "../../../../../data/zwave_js";
|
||||||
|
import { fireEvent } from "../../../../../common/dom/fire_event";
|
||||||
|
|
||||||
@customElement("zwave_js-custom-param")
|
@customElement("zwave_js-custom-param")
|
||||||
class ZWaveJSCustomParam extends LitElement {
|
class ZWaveJSCustomParam extends LitElement {
|
||||||
@ -165,6 +166,10 @@ class ZWaveJSCustomParam extends LitElement {
|
|||||||
this._customParamNumber
|
this._customParamNumber
|
||||||
);
|
);
|
||||||
this._value = value;
|
this._value = value;
|
||||||
|
fireEvent(this, "new-value", {
|
||||||
|
property: this._customParamNumber,
|
||||||
|
value: this._value,
|
||||||
|
});
|
||||||
} catch (err: any) {
|
} catch (err: any) {
|
||||||
this._error = err?.message || "Unknown error";
|
this._error = err?.message || "Unknown error";
|
||||||
} finally {
|
} finally {
|
||||||
@ -206,6 +211,10 @@ class ZWaveJSCustomParam extends LitElement {
|
|||||||
this._valueSize,
|
this._valueSize,
|
||||||
this._valueFormat
|
this._valueFormat
|
||||||
);
|
);
|
||||||
|
fireEvent(this, "new-value", {
|
||||||
|
property: this._customParamNumber,
|
||||||
|
value: this._value,
|
||||||
|
});
|
||||||
} catch (err: any) {
|
} catch (err: any) {
|
||||||
this._error = err?.message || "Unknown error";
|
this._error = err?.message || "Unknown error";
|
||||||
} finally {
|
} finally {
|
||||||
@ -261,4 +270,10 @@ declare global {
|
|||||||
interface HTMLElementTagNameMap {
|
interface HTMLElementTagNameMap {
|
||||||
"zwave_js-custom-param": ZWaveJSCustomParam;
|
"zwave_js-custom-param": ZWaveJSCustomParam;
|
||||||
}
|
}
|
||||||
|
interface HASSDomEvents {
|
||||||
|
"new-value": {
|
||||||
|
property: number;
|
||||||
|
value: number;
|
||||||
|
};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -214,6 +214,7 @@ class ZWaveJSNodeConfig extends LitElement {
|
|||||||
<zwave_js-custom-param
|
<zwave_js-custom-param
|
||||||
.hass=${this.hass}
|
.hass=${this.hass}
|
||||||
.deviceId=${this.deviceId}
|
.deviceId=${this.deviceId}
|
||||||
|
@new-value=${this._handleNewValue}
|
||||||
></zwave_js-custom-param>
|
></zwave_js-custom-param>
|
||||||
</ha-card>
|
</ha-card>
|
||||||
</ha-config-section>
|
</ha-config-section>
|
||||||
@ -389,6 +390,10 @@ class ZWaveJSNodeConfig extends LitElement {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private _handleNewValue() {
|
||||||
|
this._fetchData();
|
||||||
|
}
|
||||||
|
|
||||||
private _switchToggled(ev) {
|
private _switchToggled(ev) {
|
||||||
this._setResult(ev.target.key, undefined);
|
this._setResult(ev.target.key, undefined);
|
||||||
this._updateConfigParameter(ev.target, ev.detail.value ? 1 : 0);
|
this._updateConfigParameter(ev.target, ev.detail.value ? 1 : 0);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user