diff --git a/src/components/device/ha-device-automation-picker.ts b/src/components/device/ha-device-automation-picker.ts index f72400f249..67819e8d8f 100644 --- a/src/components/device/ha-device-automation-picker.ts +++ b/src/components/device/ha-device-automation-picker.ts @@ -11,7 +11,7 @@ import { sortDeviceAutomations, } from "../../data/device/device_automation"; import type { EntityRegistryEntry } from "../../data/entity/entity_registry"; -import type { HomeAssistant } from "../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../types"; import "../ha-generic-picker"; import "../ha-md-select"; import "../ha-md-select-option"; @@ -192,7 +192,7 @@ export abstract class HaDeviceAutomationPicker< this._renderEmpty = false; } - private _automationChanged(ev: CustomEvent<{ value: string }>) { + private _automationChanged(ev: ValueChangedEvent) { ev.stopPropagation(); const value = ev.detail.value; if (!value || NO_AUTOMATION_KEY === value) { diff --git a/src/components/ha-areas-floors-display-editor.ts b/src/components/ha-areas-floors-display-editor.ts index 29b6034346..57662905c1 100644 --- a/src/components/ha-areas-floors-display-editor.ts +++ b/src/components/ha-areas-floors-display-editor.ts @@ -9,7 +9,7 @@ import { computeFloorName } from "../common/entity/compute_floor_name"; import { getAreaContext } from "../common/entity/context/get_area_context"; import type { FloorRegistryEntry } from "../data/floor_registry"; import { getFloors } from "../panels/lovelace/strategies/areas/helpers/areas-strategy-helper"; -import type { HomeAssistant } from "../types"; +import type { HomeAssistant, ValueChangedEvent } from "../types"; import "./ha-expansion-panel"; import "./ha-floor-icon"; import "./ha-items-display-editor"; @@ -200,7 +200,7 @@ export class HaAreasFloorsDisplayEditor extends LitElement { fireEvent(this, "value-changed", { value: newValue }); } - private async _areaDisplayChanged(ev: CustomEvent<{ value: DisplayValue }>) { + private async _areaDisplayChanged(ev: ValueChangedEvent) { ev.stopPropagation(); const value = ev.detail.value; const currentFloorId = (ev.currentTarget as any).floorId; diff --git a/src/components/ha-target-picker.ts b/src/components/ha-target-picker.ts index 07ce936827..50eed8dbb1 100644 --- a/src/components/ha-target-picker.ts +++ b/src/components/ha-target-picker.ts @@ -53,7 +53,7 @@ import { multiTermSortedSearch, type FuseWeightedKey, } from "../resources/fuseMultiTerm"; -import type { HomeAssistant } from "../types"; +import type { HomeAssistant, ValueChangedEvent } from "../types"; import { brandsUrl } from "../util/brands-url"; import type { HaDevicePickerDeviceFilterFunc } from "./device/ha-device-picker"; import "./ha-generic-picker"; @@ -403,7 +403,7 @@ export class HaTargetPicker extends SubscribeMixin(LitElement) { `; } - private _targetPicked(ev: CustomEvent<{ value: string }>) { + private _targetPicked(ev: ValueChangedEvent) { ev.stopPropagation(); const value = ev.detail.value; if (value.startsWith(CREATE_ID)) { diff --git a/src/dialogs/more-info/controls/more-info-date.ts b/src/dialogs/more-info/controls/more-info-date.ts index d88bd342f1..31d11aa251 100644 --- a/src/dialogs/more-info/controls/more-info-date.ts +++ b/src/dialogs/more-info/controls/more-info-date.ts @@ -5,7 +5,7 @@ import "../../../components/ha-date-input"; import "../../../components/ha-time-input"; import { setDateValue } from "../../../data/date"; import { isUnavailableState, UNAVAILABLE } from "../../../data/entity/entity"; -import type { HomeAssistant } from "../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../types"; @customElement("more-info-date") class MoreInfoDate extends LitElement { @@ -31,7 +31,7 @@ class MoreInfoDate extends LitElement { `; } - private _dateChanged(ev: CustomEvent<{ value: string }>): void { + private _dateChanged(ev: ValueChangedEvent): void { if (ev.detail.value) { setDateValue(this.hass!, this.stateObj!.entity_id, ev.detail.value); } diff --git a/src/dialogs/more-info/controls/more-info-datetime.ts b/src/dialogs/more-info/controls/more-info-datetime.ts index e6f4e5726c..8107698ba8 100644 --- a/src/dialogs/more-info/controls/more-info-datetime.ts +++ b/src/dialogs/more-info/controls/more-info-datetime.ts @@ -6,7 +6,7 @@ import "../../../components/ha-date-input"; import "../../../components/ha-time-input"; import { setDateTimeValue } from "../../../data/datetime"; import { isUnavailableState, UNAVAILABLE } from "../../../data/entity/entity"; -import type { HomeAssistant } from "../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../types"; @customElement("more-info-datetime") class MoreInfoDatetime extends LitElement { @@ -45,7 +45,7 @@ class MoreInfoDatetime extends LitElement { ev.stopPropagation(); } - private _timeChanged(ev: CustomEvent<{ value: string }>): void { + private _timeChanged(ev: ValueChangedEvent): void { if (ev.detail.value) { const dateObj = new Date(this.stateObj!.state); const newTime = ev.detail.value.split(":").map(Number); @@ -55,7 +55,7 @@ class MoreInfoDatetime extends LitElement { } } - private _dateChanged(ev: CustomEvent<{ value: string }>): void { + private _dateChanged(ev: ValueChangedEvent): void { if (ev.detail.value) { const dateObj = new Date(this.stateObj!.state); const newDate = ev.detail.value.split("-").map(Number); diff --git a/src/dialogs/more-info/controls/more-info-input_datetime.ts b/src/dialogs/more-info/controls/more-info-input_datetime.ts index c80340afbe..e755958e59 100644 --- a/src/dialogs/more-info/controls/more-info-input_datetime.ts +++ b/src/dialogs/more-info/controls/more-info-input_datetime.ts @@ -8,7 +8,7 @@ import { setInputDateTimeValue, stateToIsoDateString, } from "../../../data/input_datetime"; -import type { HomeAssistant } from "../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../types"; @customElement("more-info-input_datetime") class MoreInfoInputDatetime extends LitElement { @@ -55,7 +55,7 @@ class MoreInfoInputDatetime extends LitElement { ev.stopPropagation(); } - private _timeChanged(ev: CustomEvent<{ value: string }>): void { + private _timeChanged(ev: ValueChangedEvent): void { setInputDateTimeValue( this.hass!, this.stateObj!.entity_id, @@ -66,7 +66,7 @@ class MoreInfoInputDatetime extends LitElement { ); } - private _dateChanged(ev: CustomEvent<{ value: string }>): void { + private _dateChanged(ev: ValueChangedEvent): void { setInputDateTimeValue( this.hass!, this.stateObj!.entity_id, diff --git a/src/dialogs/more-info/controls/more-info-time.ts b/src/dialogs/more-info/controls/more-info-time.ts index f60512f32f..9157cf06fb 100644 --- a/src/dialogs/more-info/controls/more-info-time.ts +++ b/src/dialogs/more-info/controls/more-info-time.ts @@ -5,7 +5,7 @@ import "../../../components/ha-date-input"; import "../../../components/ha-time-input"; import { isUnavailableState, UNAVAILABLE } from "../../../data/entity/entity"; import { setTimeValue } from "../../../data/time"; -import type { HomeAssistant } from "../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../types"; @customElement("more-info-time") class MoreInfoTime extends LitElement { @@ -35,7 +35,7 @@ class MoreInfoTime extends LitElement { ev.stopPropagation(); } - private _timeChanged(ev: CustomEvent<{ value: string }>): void { + private _timeChanged(ev: ValueChangedEvent): void { if (ev.detail.value) { setTimeValue(this.hass!, this.stateObj!.entity_id, ev.detail.value); } diff --git a/src/dialogs/sidebar/dialog-edit-sidebar.ts b/src/dialogs/sidebar/dialog-edit-sidebar.ts index 70b7383ce9..66593670bb 100644 --- a/src/dialogs/sidebar/dialog-edit-sidebar.ts +++ b/src/dialogs/sidebar/dialog-edit-sidebar.ts @@ -30,7 +30,7 @@ import { getPanelIconPath, getPanelTitle, } from "../../data/panel"; -import type { HomeAssistant } from "../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../types"; import { showConfirmationDialog } from "../generic/show-dialog-box"; @customElement("dialog-edit-sidebar") @@ -206,7 +206,7 @@ class DialogEditSidebar extends LitElement { `; } - private _changed(ev: CustomEvent<{ value: DisplayValue }>): void { + private _changed(ev: ValueChangedEvent): void { const { order = [], hidden = [] } = ev.detail.value; this._order = [...order]; this._hidden = [...hidden]; diff --git a/src/panels/config/automation/action/types/ha-automation-action-wait_for_trigger.ts b/src/panels/config/automation/action/types/ha-automation-action-wait_for_trigger.ts index 939d79bf83..496e00d60a 100644 --- a/src/panels/config/automation/action/types/ha-automation-action-wait_for_trigger.ts +++ b/src/panels/config/automation/action/types/ha-automation-action-wait_for_trigger.ts @@ -8,7 +8,7 @@ import "../../../../../components/ha-duration-input"; import "../../../../../components/ha-formfield"; import "../../../../../components/ha-textfield"; import type { WaitForTriggerAction } from "../../../../../data/script"; -import type { HomeAssistant } from "../../../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../../../types"; import "../../trigger/ha-automation-trigger"; import type { ActionElement } from "../ha-automation-action-row"; import { handleChangeEvent } from "../ha-automation-action-row"; @@ -78,7 +78,7 @@ export class HaWaitForTriggerAction `; } - private _timeoutChanged(ev: CustomEvent<{ value: TimeChangedEvent }>): void { + private _timeoutChanged(ev: ValueChangedEvent): void { ev.stopPropagation(); const value = ev.detail.value; fireEvent(this, "value-changed", { diff --git a/src/panels/config/automation/add-automation-element-dialog.ts b/src/panels/config/automation/add-automation-element-dialog.ts index 5d0db1d5b4..2dfc1f17ad 100644 --- a/src/panels/config/automation/add-automation-element-dialog.ts +++ b/src/panels/config/automation/add-automation-element-dialog.ts @@ -114,7 +114,7 @@ import { } from "../../../data/trigger"; import type { HassDialog } from "../../../dialogs/make-dialog-manager"; import { KeyboardShortcutMixin } from "../../../mixins/keyboard-shortcut-mixin"; -import type { HomeAssistant } from "../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../types"; import { isMac } from "../../../util/is_mac"; import { showToast } from "../../../util/toast"; import "./add-automation-element/ha-automation-add-from-target"; @@ -1752,7 +1752,7 @@ class DialogAddAutomationElement this.closeDialog(); } - private _selected(ev: CustomEvent<{ value: string }>) { + private _selected(ev: ValueChangedEvent) { let target: HassServiceTarget | undefined; if ( this._tab === "targets" && @@ -1766,7 +1766,7 @@ class DialogAddAutomationElement } private _handleTargetSelected = ( - ev: CustomEvent<{ value: SingleHassServiceTarget }> + ev: ValueChangedEvent ) => { this._targetItems = undefined; this._loadItemsError = false; diff --git a/src/panels/config/automation/ha-automation-editor.ts b/src/panels/config/automation/ha-automation-editor.ts index 1d77f6fc87..9c59cc3960 100644 --- a/src/panels/config/automation/ha-automation-editor.ts +++ b/src/panels/config/automation/ha-automation-editor.ts @@ -77,7 +77,12 @@ import "../../../layouts/hass-subpage"; import { KeyboardShortcutMixin } from "../../../mixins/keyboard-shortcut-mixin"; import { PreventUnsavedMixin } from "../../../mixins/prevent-unsaved-mixin"; import { haStyle } from "../../../resources/styles"; -import type { Entries, HomeAssistant, Route } from "../../../types"; +import type { + Entries, + HomeAssistant, + Route, + ValueChangedEvent, +} from "../../../types"; import { isMac } from "../../../util/is_mac"; import { showToast } from "../../../util/toast"; import { showAssignCategoryDialog } from "../category/show-dialog-assign-category"; @@ -753,7 +758,7 @@ export class HaAutomationEditor extends PreventUnsavedMixin( } } - private _valueChanged(ev: CustomEvent<{ value: AutomationConfig }>) { + private _valueChanged(ev: ValueChangedEvent) { ev.stopPropagation(); if (this._config) { diff --git a/src/panels/config/automation/manual-automation-editor.ts b/src/panels/config/automation/manual-automation-editor.ts index af0bca93fd..9b74df7ef6 100644 --- a/src/panels/config/automation/manual-automation-editor.ts +++ b/src/panels/config/automation/manual-automation-editor.ts @@ -54,7 +54,7 @@ import { import { configEntriesContext } from "../../../data/context"; import { getActionType, type Action } from "../../../data/script"; import { SubscribeMixin } from "../../../mixins/subscribe-mixin"; -import type { HomeAssistant } from "../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../types"; import { documentationUrl } from "../../../util/documentation-url"; import { showToast } from "../../../util/toast"; import "./action/ha-automation-action"; @@ -383,7 +383,7 @@ export class HaManualAutomationEditor extends SubscribeMixin(LitElement) { this._sidebarElement?.focus(); } - private _sidebarConfigChanged(ev: CustomEvent<{ value: SidebarConfig }>) { + private _sidebarConfigChanged(ev: ValueChangedEvent) { ev.stopPropagation(); if (!this._sidebarConfig) { return; diff --git a/src/panels/config/backup/components/config/ha-backup-config-schedule.ts b/src/panels/config/backup/components/config/ha-backup-config-schedule.ts index e572b7a442..7501075802 100644 --- a/src/panels/config/backup/components/config/ha-backup-config-schedule.ts +++ b/src/panels/config/backup/components/config/ha-backup-config-schedule.ts @@ -28,7 +28,7 @@ import { sortWeekdays, } from "../../../../../data/backup"; import type { SupervisorUpdateConfig } from "../../../../../data/supervisor/update"; -import type { HomeAssistant } from "../../../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../../../types"; import { documentationUrl } from "../../../../../util/documentation-url"; import "./ha-backup-config-retention"; @@ -405,7 +405,7 @@ class HaBackupConfigSchedule extends LitElement { }); } - private _retentionChanged(ev: CustomEvent<{ value: Retention }>) { + private _retentionChanged(ev: ValueChangedEvent) { ev.stopPropagation(); const retention = ev.detail.value; diff --git a/src/panels/config/backup/ha-config-backup-location.ts b/src/panels/config/backup/ha-config-backup-location.ts index e5998ca2a2..1f833cd361 100644 --- a/src/panels/config/backup/ha-config-backup-location.ts +++ b/src/panels/config/backup/ha-config-backup-location.ts @@ -25,7 +25,7 @@ import { updateBackupConfig, } from "../../../data/backup"; import "../../../layouts/hass-subpage"; -import type { HomeAssistant } from "../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../types"; import { showConfirmationDialog } from "../../lovelace/custom-card-helpers"; import "./components/config/ha-backup-config-retention"; import "./components/ha-backup-data-picker"; @@ -284,7 +284,7 @@ class HaConfigBackupDetails extends LitElement { } } - private _retentionChanged(ev: CustomEvent<{ value: Retention }>) { + private _retentionChanged(ev: ValueChangedEvent) { const retention = ev.detail.value; this._updateAgentConfig({ retention, diff --git a/src/panels/config/core/ai-task-pref.ts b/src/panels/config/core/ai-task-pref.ts index 2bfdd937a4..e84c013440 100644 --- a/src/panels/config/core/ai-task-pref.ts +++ b/src/panels/config/core/ai-task-pref.ts @@ -14,7 +14,7 @@ import { saveAITaskPreferences, type AITaskPreferences, } from "../../../data/ai_task"; -import type { HomeAssistant } from "../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../types"; import { brandsUrl } from "../../../util/brands-url"; import { documentationUrl } from "../../../util/documentation-url"; import { computeDomain } from "../../../common/entity/compute_domain"; @@ -137,7 +137,7 @@ export class AITaskPref extends LitElement { `; } - private _handlePrefChange(ev: CustomEvent<{ value: string | undefined }>) { + private _handlePrefChange(ev: ValueChangedEvent) { const input = ev.target as HaEntityPicker; const key = input.dataset.name as keyof AITaskPreferences; const value = ev.detail.value || null; diff --git a/src/panels/config/energy/dialogs/dialog-energy-battery-settings.ts b/src/panels/config/energy/dialogs/dialog-energy-battery-settings.ts index 25b16a83e7..0f35f27d82 100644 --- a/src/panels/config/energy/dialogs/dialog-energy-battery-settings.ts +++ b/src/panels/config/energy/dialogs/dialog-energy-battery-settings.ts @@ -20,7 +20,7 @@ import { import { getSensorDeviceClassConvertibleUnits } from "../../../../data/sensor"; import type { HassDialog } from "../../../../dialogs/make-dialog-manager"; import { haStyle, haStyleDialog } from "../../../../resources/styles"; -import type { HomeAssistant } from "../../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../../types"; import type { EnergySettingsBatteryDialogParams } from "./show-dialogs-energy"; const energyUnitClasses = ["energy"]; @@ -361,11 +361,11 @@ export class DialogEnergyBatterySettings } } - private _statisticToChanged(ev: CustomEvent<{ value: string }>) { + private _statisticToChanged(ev: ValueChangedEvent) { this._source = { ...this._source!, stat_energy_to: ev.detail.value }; } - private _statisticFromChanged(ev: CustomEvent<{ value: string }>) { + private _statisticFromChanged(ev: ValueChangedEvent) { this._source = { ...this._source!, stat_energy_from: ev.detail.value }; } @@ -376,26 +376,26 @@ export class DialogEnergyBatterySettings this._powerConfig = {}; } - private _standardPowerChanged(ev: CustomEvent<{ value: string }>) { + private _standardPowerChanged(ev: ValueChangedEvent) { this._powerConfig = { stat_rate: ev.detail.value, }; } - private _invertedPowerChanged(ev: CustomEvent<{ value: string }>) { + private _invertedPowerChanged(ev: ValueChangedEvent) { this._powerConfig = { stat_rate_inverted: ev.detail.value, }; } - private _dischargePowerChanged(ev: CustomEvent<{ value: string }>) { + private _dischargePowerChanged(ev: ValueChangedEvent) { this._powerConfig = { ...this._powerConfig, stat_rate_from: ev.detail.value, }; } - private _chargePowerChanged(ev: CustomEvent<{ value: string }>) { + private _chargePowerChanged(ev: ValueChangedEvent) { this._powerConfig = { ...this._powerConfig, stat_rate_to: ev.detail.value, diff --git a/src/panels/config/energy/dialogs/dialog-energy-device-settings-water.ts b/src/panels/config/energy/dialogs/dialog-energy-device-settings-water.ts index cfc508d55e..c522d25661 100644 --- a/src/panels/config/energy/dialogs/dialog-energy-device-settings-water.ts +++ b/src/panels/config/energy/dialogs/dialog-energy-device-settings-water.ts @@ -16,7 +16,7 @@ import { getStatisticLabel } from "../../../../data/recorder"; import { getSensorDeviceClassConvertibleUnits } from "../../../../data/sensor"; import type { HassDialog } from "../../../../dialogs/make-dialog-manager"; import { haStyleDialog } from "../../../../resources/styles"; -import type { HomeAssistant } from "../../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../../types"; import type { EnergySettingsDeviceWaterDialogParams } from "./show-dialogs-energy"; const volumeUnitClasses = ["volume"]; @@ -199,7 +199,7 @@ export class DialogEnergyDeviceSettingsWater `; } - private _statisticChanged(ev: CustomEvent<{ value: string }>) { + private _statisticChanged(ev: ValueChangedEvent) { if (!ev.detail.value) { this._device = undefined; return; diff --git a/src/panels/config/energy/dialogs/dialog-energy-device-settings.ts b/src/panels/config/energy/dialogs/dialog-energy-device-settings.ts index 4369c45c1b..910d5f4922 100644 --- a/src/panels/config/energy/dialogs/dialog-energy-device-settings.ts +++ b/src/panels/config/energy/dialogs/dialog-energy-device-settings.ts @@ -19,7 +19,7 @@ import { getStatisticLabel } from "../../../../data/recorder"; import { getSensorDeviceClassConvertibleUnits } from "../../../../data/sensor"; import type { HassDialog } from "../../../../dialogs/make-dialog-manager"; import { haStyleDialog } from "../../../../resources/styles"; -import type { HomeAssistant } from "../../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../../types"; import type { EnergySettingsDeviceDialogParams } from "./show-dialogs-energy"; const energyUnitClasses = ["energy"]; @@ -225,7 +225,7 @@ export class DialogEnergyDeviceSettings `; } - private _statisticChanged(ev: CustomEvent<{ value: string }>) { + private _statisticChanged(ev: ValueChangedEvent) { if (!ev.detail.value) { this._device = undefined; return; @@ -234,7 +234,7 @@ export class DialogEnergyDeviceSettings this._computePossibleParents(); } - private _powerStatisticChanged(ev: CustomEvent<{ value: string }>) { + private _powerStatisticChanged(ev: ValueChangedEvent) { if (!this._device) { return; } diff --git a/src/panels/config/energy/dialogs/dialog-energy-gas-settings.ts b/src/panels/config/energy/dialogs/dialog-energy-gas-settings.ts index dc121b9fdf..44fb3a3887 100644 --- a/src/panels/config/energy/dialogs/dialog-energy-gas-settings.ts +++ b/src/panels/config/energy/dialogs/dialog-energy-gas-settings.ts @@ -25,7 +25,7 @@ import { import { getSensorDeviceClassConvertibleUnits } from "../../../../data/sensor"; import type { HassDialog } from "../../../../dialogs/make-dialog-manager"; import { haStyle, haStyleDialog } from "../../../../resources/styles"; -import type { HomeAssistant } from "../../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../../types"; import type { EnergySettingsGasDialogParams } from "./show-dialogs-energy"; const gasDeviceClasses = ["gas", "energy"]; @@ -331,7 +331,7 @@ export class DialogEnergyGasSettings }; } - private async _statisticChanged(ev: CustomEvent<{ value: string }>) { + private async _statisticChanged(ev: ValueChangedEvent) { if (ev.detail.value) { const metadata = await getStatisticMetadata(this.hass, [ev.detail.value]); this._pickedDisplayUnit = getDisplayUnit( diff --git a/src/panels/config/energy/dialogs/dialog-energy-grid-flow-settings.ts b/src/panels/config/energy/dialogs/dialog-energy-grid-flow-settings.ts index 9bcfb9a20d..25bf92153a 100644 --- a/src/panels/config/energy/dialogs/dialog-energy-grid-flow-settings.ts +++ b/src/panels/config/energy/dialogs/dialog-energy-grid-flow-settings.ts @@ -24,7 +24,7 @@ import { isExternalStatistic } from "../../../../data/recorder"; import { getSensorDeviceClassConvertibleUnits } from "../../../../data/sensor"; import type { HassDialog } from "../../../../dialogs/make-dialog-manager"; import { haStyleDialog } from "../../../../resources/styles"; -import type { HomeAssistant } from "../../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../../types"; import type { EnergySettingsGridFlowDialogParams } from "./show-dialogs-energy"; const energyUnitClasses = ["energy"]; @@ -325,7 +325,7 @@ export class DialogEnergyGridFlowSettings }; } - private async _statisticChanged(ev: CustomEvent<{ value: string }>) { + private async _statisticChanged(ev: ValueChangedEvent) { if ( ev.detail.value && isExternalStatistic(ev.detail.value) && diff --git a/src/panels/config/energy/dialogs/dialog-energy-grid-power-settings.ts b/src/panels/config/energy/dialogs/dialog-energy-grid-power-settings.ts index 54839994d5..55f89c7c2f 100644 --- a/src/panels/config/energy/dialogs/dialog-energy-grid-power-settings.ts +++ b/src/panels/config/energy/dialogs/dialog-energy-grid-power-settings.ts @@ -17,7 +17,7 @@ import { energyStatisticHelpUrl } from "../../../../data/energy"; import { getSensorDeviceClassConvertibleUnits } from "../../../../data/sensor"; import type { HassDialog } from "../../../../dialogs/make-dialog-manager"; import { haStyleDialog } from "../../../../resources/styles"; -import type { HomeAssistant } from "../../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../../types"; import type { EnergySettingsGridPowerDialogParams } from "./show-dialogs-energy"; const powerUnitClasses = ["power"]; @@ -287,26 +287,26 @@ export class DialogEnergyGridPowerSettings this._powerConfig = {}; } - private _standardStatisticChanged(ev: CustomEvent<{ value: string }>) { + private _standardStatisticChanged(ev: ValueChangedEvent) { this._powerConfig = { stat_rate: ev.detail.value, }; } - private _invertedStatisticChanged(ev: CustomEvent<{ value: string }>) { + private _invertedStatisticChanged(ev: ValueChangedEvent) { this._powerConfig = { stat_rate_inverted: ev.detail.value, }; } - private _fromStatisticChanged(ev: CustomEvent<{ value: string }>) { + private _fromStatisticChanged(ev: ValueChangedEvent) { this._powerConfig = { ...this._powerConfig, stat_rate_from: ev.detail.value, }; } - private _toStatisticChanged(ev: CustomEvent<{ value: string }>) { + private _toStatisticChanged(ev: ValueChangedEvent) { this._powerConfig = { ...this._powerConfig, stat_rate_to: ev.detail.value, diff --git a/src/panels/config/energy/dialogs/dialog-energy-solar-settings.ts b/src/panels/config/energy/dialogs/dialog-energy-solar-settings.ts index 80a2f2312d..7798477db1 100644 --- a/src/panels/config/energy/dialogs/dialog-energy-solar-settings.ts +++ b/src/panels/config/energy/dialogs/dialog-energy-solar-settings.ts @@ -23,7 +23,7 @@ import { getSensorDeviceClassConvertibleUnits } from "../../../../data/sensor"; import { showConfigFlowDialog } from "../../../../dialogs/config-flow/show-dialog-config-flow"; import type { HassDialog } from "../../../../dialogs/make-dialog-manager"; import { haStyle, haStyleDialog } from "../../../../resources/styles"; -import type { HomeAssistant } from "../../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../../types"; import { brandsUrl } from "../../../../util/brands-url"; import type { EnergySettingsSolarDialogParams } from "./show-dialogs-energy"; @@ -285,11 +285,11 @@ export class DialogEnergySolarSettings }); } - private _statisticChanged(ev: CustomEvent<{ value: string }>) { + private _statisticChanged(ev: ValueChangedEvent) { this._source = { ...this._source!, stat_energy_from: ev.detail.value }; } - private _powerStatisticChanged(ev: CustomEvent<{ value: string }>) { + private _powerStatisticChanged(ev: ValueChangedEvent) { this._source = { ...this._source!, stat_rate: ev.detail.value }; } diff --git a/src/panels/config/energy/dialogs/dialog-energy-water-settings.ts b/src/panels/config/energy/dialogs/dialog-energy-water-settings.ts index 037dfd9b77..e81328fa35 100644 --- a/src/panels/config/energy/dialogs/dialog-energy-water-settings.ts +++ b/src/panels/config/energy/dialogs/dialog-energy-water-settings.ts @@ -21,7 +21,7 @@ import { isExternalStatistic } from "../../../../data/recorder"; import { getSensorDeviceClassConvertibleUnits } from "../../../../data/sensor"; import type { HassDialog } from "../../../../dialogs/make-dialog-manager"; import { haStyle, haStyleDialog } from "../../../../resources/styles"; -import type { HomeAssistant } from "../../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../../types"; import type { EnergySettingsWaterDialogParams } from "./show-dialogs-energy"; @customElement("dialog-energy-water-settings") @@ -277,7 +277,7 @@ export class DialogEnergyWaterSettings }; } - private async _statisticChanged(ev: CustomEvent<{ value: string }>) { + private async _statisticChanged(ev: ValueChangedEvent) { if ( ev.detail.value && isExternalStatistic(ev.detail.value) && diff --git a/src/panels/config/integrations/integration-panels/zwave_js/zwave_js-node-config.ts b/src/panels/config/integrations/integration-panels/zwave_js/zwave_js-node-config.ts index 96b9d35757..5eb83da413 100644 --- a/src/panels/config/integrations/integration-panels/zwave_js/zwave_js-node-config.ts +++ b/src/panels/config/integrations/integration-panels/zwave_js/zwave_js-node-config.ts @@ -43,7 +43,11 @@ import "../../../../../layouts/hass-error-screen"; import "../../../../../layouts/hass-loading-screen"; import "../../../../../layouts/hass-tabs-subpage"; import { haStyle } from "../../../../../resources/styles"; -import type { HomeAssistant, Route } from "../../../../../types"; +import type { + HomeAssistant, + Route, + ValueChangedEvent, +} from "../../../../../types"; import "../../../ha-config-section"; import { configTabs } from "./zwave_js-config-router"; import "./zwave_js-custom-param"; @@ -547,7 +551,7 @@ class ZWaveJSNodeConfig extends LitElement { id: string, item: ZWaveJSNodeConfigParam ) { - return (ev: CustomEvent<{ value: number }>) => + return (ev: ValueChangedEvent) => this._numericInputChanged({ ...ev, target: { diff --git a/src/panels/config/logs/ha-config-logs.ts b/src/panels/config/logs/ha-config-logs.ts index dcc995d931..4ee5f96b79 100644 --- a/src/panels/config/logs/ha-config-logs.ts +++ b/src/panels/config/logs/ha-config-logs.ts @@ -27,7 +27,7 @@ import { showAlertDialog } from "../../../dialogs/generic/show-dialog-box"; import "../../../layouts/hass-subpage"; import { mdiHomeAssistant } from "../../../resources/home-assistant-logo-svg"; import { haStyle } from "../../../resources/styles"; -import type { HomeAssistant, Route } from "../../../types"; +import type { HomeAssistant, Route, ValueChangedEvent } from "../../../types"; import "./error-log-card"; import "./system-log-card"; import type { SystemLogCard } from "./system-log-card"; @@ -201,7 +201,7 @@ export class HaConfigLogs extends LitElement { this.providerPicker?.open(); } - private _handleDropdownSelect(ev: CustomEvent<{ value: string }>) { + private _handleDropdownSelect(ev: ValueChangedEvent) { const provider = ev.detail?.value; if (!provider) { return; diff --git a/src/panels/config/script/manual-script-editor.ts b/src/panels/config/script/manual-script-editor.ts index af57ee71fd..895034e17f 100644 --- a/src/panels/config/script/manual-script-editor.ts +++ b/src/panels/config/script/manual-script-editor.ts @@ -51,7 +51,7 @@ import { normalizeScriptConfig, } from "../../../data/script"; import { SubscribeMixin } from "../../../mixins/subscribe-mixin"; -import type { HomeAssistant } from "../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../types"; import { documentationUrl } from "../../../util/documentation-url"; import { showToast } from "../../../util/toast"; import "../automation/action/ha-automation-action"; @@ -543,7 +543,7 @@ export class HaManualScriptEditor extends SubscribeMixin(LitElement) { this._sidebarElement?.focus(); } - private _sidebarConfigChanged(ev: CustomEvent<{ value: SidebarConfig }>) { + private _sidebarConfigChanged(ev: ValueChangedEvent) { ev.stopPropagation(); if (!this._sidebarConfig) { return; diff --git a/src/panels/lovelace/editor/config-elements/elements/hui-service-button-element-editor.ts b/src/panels/lovelace/editor/config-elements/elements/hui-service-button-element-editor.ts index 9cd2088342..b6c06a48da 100644 --- a/src/panels/lovelace/editor/config-elements/elements/hui-service-button-element-editor.ts +++ b/src/panels/lovelace/editor/config-elements/elements/hui-service-button-element-editor.ts @@ -7,7 +7,7 @@ import "../../../../../components/ha-form/ha-form"; import type { SchemaUnion } from "../../../../../components/ha-form/types"; import "../../../../../components/ha-service-control"; import type { ServiceAction } from "../../../../../data/script"; -import type { HomeAssistant } from "../../../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../../../types"; import type { ServiceButtonElementConfig } from "../../../elements/types"; import type { LovelacePictureElementEditor } from "../../../types"; @@ -78,7 +78,7 @@ export class HuiServiceButtonElementEditor }); } - private _serviceDataChanged(ev: CustomEvent<{ value: ServiceAction }>): void { + private _serviceDataChanged(ev: ValueChangedEvent): void { const config: ServiceButtonElementConfig = { ...this._config!, action: ev.detail.value.action, diff --git a/src/panels/lovelace/entity-rows/hui-date-entity-row.ts b/src/panels/lovelace/entity-rows/hui-date-entity-row.ts index 0a8554a618..be5718e8fe 100644 --- a/src/panels/lovelace/entity-rows/hui-date-entity-row.ts +++ b/src/panels/lovelace/entity-rows/hui-date-entity-row.ts @@ -4,7 +4,7 @@ import { customElement, property, state } from "lit/decorators"; import "../../../components/ha-date-input"; import { setDateValue } from "../../../data/date"; import { isUnavailableState, UNAVAILABLE } from "../../../data/entity/entity"; -import type { HomeAssistant } from "../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../types"; import { hasConfigOrEntityChanged } from "../common/has-changed"; import "../components/hui-generic-entity-row"; import { createEntityNotFoundWarning } from "../components/hui-warning"; @@ -59,7 +59,7 @@ class HuiDateEntityRow extends LitElement implements LovelaceRow { `; } - private _dateChanged(ev: CustomEvent<{ value: string }>): void { + private _dateChanged(ev: ValueChangedEvent): void { if (ev.detail.value) { setDateValue(this.hass!, this._config!.entity, ev.detail.value); } diff --git a/src/panels/lovelace/entity-rows/hui-datetime-entity-row.ts b/src/panels/lovelace/entity-rows/hui-datetime-entity-row.ts index 815942cef3..48eb0cd500 100644 --- a/src/panels/lovelace/entity-rows/hui-datetime-entity-row.ts +++ b/src/panels/lovelace/entity-rows/hui-datetime-entity-row.ts @@ -6,7 +6,7 @@ import "../../../components/ha-date-input"; import "../../../components/ha-time-input"; import { setDateTimeValue } from "../../../data/datetime"; import { isUnavailableState, UNAVAILABLE } from "../../../data/entity/entity"; -import type { HomeAssistant } from "../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../types"; import { computeLovelaceEntityName } from "../common/entity/compute-lovelace-entity-name"; import { hasConfigOrEntityChanged } from "../common/has-changed"; import "../components/hui-generic-entity-row"; @@ -90,7 +90,7 @@ class HuiInputDatetimeEntityRow extends LitElement implements LovelaceRow { ev.stopPropagation(); } - private _timeChanged(ev: CustomEvent<{ value: string }>): void { + private _timeChanged(ev: ValueChangedEvent): void { if (ev.detail.value) { const stateObj = this.hass!.states[this._config!.entity]; const dateObj = new Date(stateObj.state); @@ -101,7 +101,7 @@ class HuiInputDatetimeEntityRow extends LitElement implements LovelaceRow { } } - private _dateChanged(ev: CustomEvent<{ value: string }>): void { + private _dateChanged(ev: ValueChangedEvent): void { if (ev.detail.value) { const stateObj = this.hass!.states[this._config!.entity]; const dateObj = new Date(stateObj.state); diff --git a/src/panels/lovelace/entity-rows/hui-input-datetime-entity-row.ts b/src/panels/lovelace/entity-rows/hui-input-datetime-entity-row.ts index d058126b25..57cafeb18f 100644 --- a/src/panels/lovelace/entity-rows/hui-input-datetime-entity-row.ts +++ b/src/panels/lovelace/entity-rows/hui-input-datetime-entity-row.ts @@ -8,7 +8,7 @@ import { setInputDateTimeValue, stateToIsoDateString, } from "../../../data/input_datetime"; -import type { HomeAssistant } from "../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../types"; import { computeLovelaceEntityName } from "../common/entity/compute-lovelace-entity-name"; import { hasConfigOrEntityChanged } from "../common/has-changed"; import "../components/hui-generic-entity-row"; @@ -101,7 +101,7 @@ class HuiInputDatetimeEntityRow extends LitElement implements LovelaceRow { ev.stopPropagation(); } - private _timeChanged(ev: CustomEvent<{ value: string }>): void { + private _timeChanged(ev: ValueChangedEvent): void { const stateObj = this.hass!.states[this._config!.entity]; setInputDateTimeValue( this.hass!, @@ -111,7 +111,7 @@ class HuiInputDatetimeEntityRow extends LitElement implements LovelaceRow { ); } - private _dateChanged(ev: CustomEvent<{ value: string }>): void { + private _dateChanged(ev: ValueChangedEvent): void { const stateObj = this.hass!.states[this._config!.entity]; setInputDateTimeValue( diff --git a/src/panels/lovelace/entity-rows/hui-time-entity-row.ts b/src/panels/lovelace/entity-rows/hui-time-entity-row.ts index 97bd1e7fb7..6f9c027cb7 100644 --- a/src/panels/lovelace/entity-rows/hui-time-entity-row.ts +++ b/src/panels/lovelace/entity-rows/hui-time-entity-row.ts @@ -5,7 +5,7 @@ import "../../../components/ha-date-input"; import "../../../components/ha-time-input"; import { isUnavailableState, UNAVAILABLE } from "../../../data/entity/entity"; import { setTimeValue } from "../../../data/time"; -import type { HomeAssistant } from "../../../types"; +import type { HomeAssistant, ValueChangedEvent } from "../../../types"; import { hasConfigOrEntityChanged } from "../common/has-changed"; import "../components/hui-generic-entity-row"; import { createEntityNotFoundWarning } from "../components/hui-warning"; @@ -64,7 +64,7 @@ class HuiTimeEntityRow extends LitElement implements LovelaceRow { ev.stopPropagation(); } - private _timeChanged(ev: CustomEvent<{ value: string }>): void { + private _timeChanged(ev: ValueChangedEvent): void { if (ev.detail.value) { const stateObj = this.hass!.states[this._config!.entity]; setTimeValue(this.hass!, stateObj.entity_id, ev.detail.value);