diff --git a/src/panels/config/devices/device-detail/ha-device-entities-card.ts b/src/panels/config/devices/device-detail/ha-device-entities-card.ts index 560816b0d4..1cfc9d90a6 100644 --- a/src/panels/config/devices/device-detail/ha-device-entities-card.ts +++ b/src/panels/config/devices/device-detail/ha-device-entities-card.ts @@ -187,7 +187,8 @@ export class HaDeviceEntitiesCard extends LitElement { this.hass, this.entities .filter((entity) => !entity.disabled_by) - .map((entity) => entity.entity_id) + .map((entity) => entity.entity_id), + this.deviceName ); } diff --git a/src/panels/lovelace/common/generate-lovelace-config.ts b/src/panels/lovelace/common/generate-lovelace-config.ts index 2860ca6dff..2c7b5d757e 100644 --- a/src/panels/lovelace/common/generate-lovelace-config.ts +++ b/src/panels/lovelace/common/generate-lovelace-config.ts @@ -20,7 +20,6 @@ import { AlarmPanelCardConfig, EntitiesCardConfig, HumidifierCardConfig, - LightCardConfig, PictureEntityCardConfig, ThermostatCardConfig, } from "../cards/types"; @@ -84,8 +83,7 @@ const splitByAreas = ( export const computeCards = ( states: Array<[string, HassEntity?]>, - entityCardOptions: Partial, - single = false + entityCardOptions: Partial ): LovelaceCardConfig[] => { const cards: LovelaceCardConfig[] = []; @@ -123,12 +121,6 @@ export const computeCards = ( entity: entityId, }; cards.push(cardConfig); - } else if (domain === "light" && single) { - const cardConfig: LightCardConfig = { - type: "light", - entity: entityId, - }; - cards.push(cardConfig); } else if (domain === "media_player") { const cardConfig = { type: "media-control", diff --git a/src/panels/lovelace/editor/add-entities-to-view.ts b/src/panels/lovelace/editor/add-entities-to-view.ts index cd6ccb873a..42ad5ac06d 100644 --- a/src/panels/lovelace/editor/add-entities-to-view.ts +++ b/src/panels/lovelace/editor/add-entities-to-view.ts @@ -13,8 +13,10 @@ import { showSelectViewDialog } from "./select-view/show-select-view-dialog"; export const addEntitiesToLovelaceView = async ( element: HTMLElement, hass: HomeAssistant, - entities: string[] + entities: string[], + cardTitle?: string ) => { + hass.loadFragmentTranslation("lovelace"); const dashboards = await fetchDashboards(hass); const storageDashs = dashboards.filter( @@ -30,6 +32,7 @@ export const addEntitiesToLovelaceView = async ( showSuggestCardDialog(element, { entities, yaml: true, + cardTitle, }); return; } @@ -68,6 +71,7 @@ export const addEntitiesToLovelaceView = async ( showSuggestCardDialog(element, { entities, yaml: true, + cardTitle, }); } else { // all storage dashboards are generated @@ -87,6 +91,7 @@ export const addEntitiesToLovelaceView = async ( if (!storageDashs.length && lovelaceConfig.views.length === 1) { showSuggestCardDialog(element, { + cardTitle, lovelaceConfig: lovelaceConfig!, saveConfig: async (newConfig: LovelaceConfig): Promise => { try { @@ -107,9 +112,11 @@ export const addEntitiesToLovelaceView = async ( lovelaceConfig, urlPath, allowDashboardChange: true, + actionLabel: hass.localize("ui.common.next"), dashboards, viewSelectedCallback: (newUrlPath, selectedDashConfig, viewIndex) => { showSuggestCardDialog(element, { + cardTitle, lovelaceConfig: selectedDashConfig, saveConfig: async (newConfig: LovelaceConfig): Promise => { try { diff --git a/src/panels/lovelace/editor/card-editor/hui-dialog-suggest-card.ts b/src/panels/lovelace/editor/card-editor/hui-dialog-suggest-card.ts index 3ba941d61e..142e82b234 100755 --- a/src/panels/lovelace/editor/card-editor/hui-dialog-suggest-card.ts +++ b/src/panels/lovelace/editor/card-editor/hui-dialog-suggest-card.ts @@ -35,8 +35,9 @@ export class HuiDialogSuggestCard extends LitElement { entityId, this.hass.states[entityId], ]), - {}, - true + { + title: params.cardTitle, + } ); if (!Object.isFrozen(this._cardConfig)) { this._cardConfig = deepFreeze(this._cardConfig); diff --git a/src/panels/lovelace/editor/card-editor/show-suggest-card-dialog.ts b/src/panels/lovelace/editor/card-editor/show-suggest-card-dialog.ts index b0555d6dfb..1d892dfb2b 100644 --- a/src/panels/lovelace/editor/card-editor/show-suggest-card-dialog.ts +++ b/src/panels/lovelace/editor/card-editor/show-suggest-card-dialog.ts @@ -2,6 +2,7 @@ import { fireEvent } from "../../../../common/dom/fire_event"; import { LovelaceCardConfig, LovelaceConfig } from "../../../../data/lovelace"; export interface SuggestCardDialogParams { + cardTitle?: string; lovelaceConfig?: LovelaceConfig; yaml?: boolean; saveConfig?: (config: LovelaceConfig) => void; diff --git a/src/panels/lovelace/editor/select-view/hui-dialog-select-view.ts b/src/panels/lovelace/editor/select-view/hui-dialog-select-view.ts index c6ede3156c..ff555d8e89 100644 --- a/src/panels/lovelace/editor/select-view/hui-dialog-select-view.ts +++ b/src/panels/lovelace/editor/select-view/hui-dialog-select-view.ts @@ -131,7 +131,7 @@ export class HuiDialogSelectView extends LitElement { ${this.hass!.localize("ui.common.cancel")} - ${this.hass!.localize("ui.common.move")} + ${this._params.actionLabel || this.hass!.localize("ui.common.move")} `; diff --git a/src/panels/lovelace/editor/select-view/show-select-view-dialog.ts b/src/panels/lovelace/editor/select-view/show-select-view-dialog.ts index 05d393c850..4287711de0 100644 --- a/src/panels/lovelace/editor/select-view/show-select-view-dialog.ts +++ b/src/panels/lovelace/editor/select-view/show-select-view-dialog.ts @@ -7,6 +7,7 @@ export interface SelectViewDialogParams { dashboards?: LovelaceDashboard[]; urlPath?: string | null; header?: string; + actionLabel?: string; viewSelectedCallback: ( urlPath: string | null, config: LovelaceConfig,