mirror of
https://github.com/home-assistant/frontend.git
synced 2025-07-25 18:26:35 +00:00
Revert "Allow overriding a sensor's precision" (#15305)
This commit is contained in:
parent
5aeaa65a89
commit
57289b0bbe
@ -30,7 +30,6 @@ export interface ExtEntityRegistryEntry extends EntityRegistryEntry {
|
|||||||
device_class?: string;
|
device_class?: string;
|
||||||
original_device_class?: string;
|
original_device_class?: string;
|
||||||
aliases: string[];
|
aliases: string[];
|
||||||
options: EntityRegistryOptions | null;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface UpdateEntityRegistryEntryResult {
|
export interface UpdateEntityRegistryEntryResult {
|
||||||
@ -40,7 +39,6 @@ export interface UpdateEntityRegistryEntryResult {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export interface SensorEntityOptions {
|
export interface SensorEntityOptions {
|
||||||
precision?: number | null;
|
|
||||||
unit_of_measurement?: string | null;
|
unit_of_measurement?: string | null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -56,12 +54,6 @@ export interface WeatherEntityOptions {
|
|||||||
wind_speed_unit?: string | null;
|
wind_speed_unit?: string | null;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface EntityRegistryOptions {
|
|
||||||
number?: NumberEntityOptions;
|
|
||||||
sensor?: SensorEntityOptions;
|
|
||||||
weather?: WeatherEntityOptions;
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface EntityRegistryEntryUpdateParams {
|
export interface EntityRegistryEntryUpdateParams {
|
||||||
name?: string | null;
|
name?: string | null;
|
||||||
icon?: string | null;
|
icon?: string | null;
|
||||||
|
@ -63,7 +63,6 @@ import {
|
|||||||
EntityRegistryEntry,
|
EntityRegistryEntry,
|
||||||
EntityRegistryEntryUpdateParams,
|
EntityRegistryEntryUpdateParams,
|
||||||
ExtEntityRegistryEntry,
|
ExtEntityRegistryEntry,
|
||||||
SensorEntityOptions,
|
|
||||||
fetchEntityRegistry,
|
fetchEntityRegistry,
|
||||||
removeEntityRegistryEntry,
|
removeEntityRegistryEntry,
|
||||||
updateEntityRegistryEntry,
|
updateEntityRegistryEntry,
|
||||||
@ -127,16 +126,6 @@ const OVERRIDE_WEATHER_UNITS = {
|
|||||||
|
|
||||||
const SWITCH_AS_DOMAINS = ["cover", "fan", "light", "lock", "siren"];
|
const SWITCH_AS_DOMAINS = ["cover", "fan", "light", "lock", "siren"];
|
||||||
|
|
||||||
const PRECISIONS = [0, 1, 2, 3, 4, 5, 6];
|
|
||||||
|
|
||||||
function precisionLabel(precision: number, _state?: string) {
|
|
||||||
const state_float =
|
|
||||||
_state === undefined || isNaN(parseFloat(_state))
|
|
||||||
? 0.0
|
|
||||||
: parseFloat(_state);
|
|
||||||
return state_float.toFixed(precision);
|
|
||||||
}
|
|
||||||
|
|
||||||
@customElement("entity-registry-settings")
|
@customElement("entity-registry-settings")
|
||||||
export class EntityRegistrySettings extends SubscribeMixin(LitElement) {
|
export class EntityRegistrySettings extends SubscribeMixin(LitElement) {
|
||||||
@property({ attribute: false }) public hass!: HomeAssistant;
|
@property({ attribute: false }) public hass!: HomeAssistant;
|
||||||
@ -165,8 +154,6 @@ export class EntityRegistrySettings extends SubscribeMixin(LitElement) {
|
|||||||
|
|
||||||
@state() private _unit_of_measurement?: string | null;
|
@state() private _unit_of_measurement?: string | null;
|
||||||
|
|
||||||
@state() private _precision?: number | null;
|
|
||||||
|
|
||||||
@state() private _precipitation_unit?: string | null;
|
@state() private _precipitation_unit?: string | null;
|
||||||
|
|
||||||
@state() private _pressure_unit?: string | null;
|
@state() private _pressure_unit?: string | null;
|
||||||
@ -264,10 +251,6 @@ export class EntityRegistrySettings extends SubscribeMixin(LitElement) {
|
|||||||
this._unit_of_measurement = stateObj?.attributes?.unit_of_measurement;
|
this._unit_of_measurement = stateObj?.attributes?.unit_of_measurement;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (domain === "sensor") {
|
|
||||||
this._precision = this.entry.options?.sensor?.precision;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (domain === "weather") {
|
if (domain === "weather") {
|
||||||
const stateObj: HassEntity | undefined =
|
const stateObj: HassEntity | undefined =
|
||||||
this.hass.states[this.entry.entity_id];
|
this.hass.states[this.entry.entity_id];
|
||||||
@ -485,44 +468,6 @@ export class EntityRegistrySettings extends SubscribeMixin(LitElement) {
|
|||||||
</ha-select>
|
</ha-select>
|
||||||
`
|
`
|
||||||
: ""}
|
: ""}
|
||||||
${domain === "sensor" &&
|
|
||||||
// Allow customizing the precision for a sensor with numerical device class,
|
|
||||||
// a unit of measurement or state class
|
|
||||||
((this._deviceClass &&
|
|
||||||
!["date", "enum", "timestamp"].includes(this._deviceClass)) ||
|
|
||||||
stateObj?.attributes.unit_of_measurement ||
|
|
||||||
stateObj?.attributes.state_class)
|
|
||||||
? html`
|
|
||||||
<ha-select
|
|
||||||
.label=${this.hass.localize(
|
|
||||||
"ui.dialogs.entity_registry.editor.precision"
|
|
||||||
)}
|
|
||||||
.value=${this._precision == null
|
|
||||||
? "default"
|
|
||||||
: this._precision.toString()}
|
|
||||||
naturalMenuWidth
|
|
||||||
fixedMenuPosition
|
|
||||||
@selected=${this._precisionChanged}
|
|
||||||
@closed=${stopPropagation}
|
|
||||||
>
|
|
||||||
<mwc-list-item .value=${"default"}
|
|
||||||
>${this.hass.localize(
|
|
||||||
"ui.dialogs.entity_registry.editor.precision_default"
|
|
||||||
)}</mwc-list-item
|
|
||||||
>
|
|
||||||
${PRECISIONS.map(
|
|
||||||
(precision) => html`
|
|
||||||
<mwc-list-item .value=${precision.toString()}>
|
|
||||||
${precisionLabel(
|
|
||||||
precision,
|
|
||||||
this.hass.states[this.entry.entity_id]?.state
|
|
||||||
)}
|
|
||||||
</mwc-list-item>
|
|
||||||
`
|
|
||||||
)}
|
|
||||||
</ha-select>
|
|
||||||
`
|
|
||||||
: ""}
|
|
||||||
${domain === "weather"
|
${domain === "weather"
|
||||||
? html`
|
? html`
|
||||||
<ha-select
|
<ha-select
|
||||||
@ -948,12 +893,6 @@ export class EntityRegistrySettings extends SubscribeMixin(LitElement) {
|
|||||||
this._precipitation_unit = ev.target.value;
|
this._precipitation_unit = ev.target.value;
|
||||||
}
|
}
|
||||||
|
|
||||||
private _precisionChanged(ev): void {
|
|
||||||
this._error = undefined;
|
|
||||||
this._precision =
|
|
||||||
ev.target.value === "default" ? null : Number(ev.target.value);
|
|
||||||
}
|
|
||||||
|
|
||||||
private _pressureUnitChanged(ev): void {
|
private _pressureUnitChanged(ev): void {
|
||||||
this._error = undefined;
|
this._error = undefined;
|
||||||
this._pressure_unit = ev.target.value;
|
this._pressure_unit = ev.target.value;
|
||||||
@ -1149,16 +1088,7 @@ export class EntityRegistrySettings extends SubscribeMixin(LitElement) {
|
|||||||
stateObj?.attributes?.unit_of_measurement !== this._unit_of_measurement
|
stateObj?.attributes?.unit_of_measurement !== this._unit_of_measurement
|
||||||
) {
|
) {
|
||||||
params.options_domain = domain;
|
params.options_domain = domain;
|
||||||
params.options = this.entry.options?.[domain] || {};
|
params.options = { unit_of_measurement: this._unit_of_measurement };
|
||||||
params.options.unit_of_measurement = this._unit_of_measurement;
|
|
||||||
}
|
|
||||||
if (
|
|
||||||
domain === "sensor" &&
|
|
||||||
this.entry.options?.[domain]?.precision !== this._precision
|
|
||||||
) {
|
|
||||||
params.options_domain = domain;
|
|
||||||
params.options = params.options || this.entry.options?.[domain] || {};
|
|
||||||
(params.options as SensorEntityOptions).precision = this._precision;
|
|
||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
domain === "weather" &&
|
domain === "weather" &&
|
||||||
|
@ -906,8 +906,6 @@
|
|||||||
"entity_id": "Entity ID",
|
"entity_id": "Entity ID",
|
||||||
"unit_of_measurement": "Unit of Measurement",
|
"unit_of_measurement": "Unit of Measurement",
|
||||||
"precipitation_unit": "Precipitation unit",
|
"precipitation_unit": "Precipitation unit",
|
||||||
"precision": "Precision",
|
|
||||||
"precision_default": "Use default",
|
|
||||||
"pressure_unit": "Barometric pressure unit",
|
"pressure_unit": "Barometric pressure unit",
|
||||||
"temperature_unit": "Temperature unit",
|
"temperature_unit": "Temperature unit",
|
||||||
"visibility_unit": "Visibility unit",
|
"visibility_unit": "Visibility unit",
|
||||||
|
Loading…
x
Reference in New Issue
Block a user