diff --git a/src/panels/lovelace/editor/card-editor/hui-dialog-create-card.ts b/src/panels/lovelace/editor/card-editor/hui-dialog-create-card.ts index 1752a24174..4ce93735d4 100644 --- a/src/panels/lovelace/editor/card-editor/hui-dialog-create-card.ts +++ b/src/panels/lovelace/editor/card-editor/hui-dialog-create-card.ts @@ -21,6 +21,7 @@ import "./hui-entity-picker-table"; import { CreateCardDialogParams } from "./show-create-card-dialog"; import { showEditCardDialog } from "./show-edit-card-dialog"; import { showSuggestCardDialog } from "./show-suggest-card-dialog"; +import { computeCards } from "../../common/generate-lovelace-config"; declare global { interface HASSDomEvents { @@ -242,11 +243,17 @@ export class HuiCreateDialogCard } private _suggestCards(): void { + const cardConfig = computeCards( + this.hass.states, + this._selectedEntities, + {} + ); showSuggestCardDialog(this, { lovelaceConfig: this._params!.lovelaceConfig, saveConfig: this._params!.saveConfig, path: this._params!.path as [number], entities: this._selectedEntities, + cardConfig, }); this.closeDialog(); 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 de8021649d..ea43443d06 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 @@ -7,11 +7,11 @@ export interface SuggestCardDialogParams { yaml?: boolean; saveConfig?: (config: LovelaceConfig) => void; path?: [number]; - entities?: string[]; // Entities used to generate the card config. We pass this to create dialog when user chooses "Pick own" - cardConfig?: LovelaceCardConfig[]; // We can pass a suggested config + entities?: string[]; // We pass this to create dialog when user chooses "Pick own" + cardConfig: LovelaceCardConfig[]; // We can pass a suggested config } -const importsuggestCardDialog = () => import("./hui-dialog-suggest-card"); +const importSuggestCardDialog = () => import("./hui-dialog-suggest-card"); export const showSuggestCardDialog = ( element: HTMLElement, @@ -19,7 +19,7 @@ export const showSuggestCardDialog = ( ): void => { fireEvent(element, "show-dialog", { dialogTag: "hui-dialog-suggest-card", - dialogImport: importsuggestCardDialog, + dialogImport: importSuggestCardDialog, dialogParams: suggestCardDialogParams, }); }; diff --git a/src/panels/lovelace/editor/unused-entities/hui-unused-entities.ts b/src/panels/lovelace/editor/unused-entities/hui-unused-entities.ts index 18ce15b683..98cd3f3163 100644 --- a/src/panels/lovelace/editor/unused-entities/hui-unused-entities.ts +++ b/src/panels/lovelace/editor/unused-entities/hui-unused-entities.ts @@ -21,6 +21,7 @@ import "../card-editor/hui-entity-picker-table"; import { showSuggestCardDialog } from "../card-editor/show-suggest-card-dialog"; import { showSelectViewDialog } from "../select-view/show-select-view-dialog"; import { LovelaceConfig } from "../../../../data/lovelace/config/types"; +import { computeCards } from "../../common/generate-lovelace-config"; @customElement("hui-unused-entities") export class HuiUnusedEntities extends LitElement { @@ -126,12 +127,18 @@ export class HuiUnusedEntities extends LitElement { } private _addToLovelaceView(): void { + const cardConfig = computeCards( + this.hass.states, + this._selectedEntities, + {} + ); if (this.lovelace.config.views.length === 1) { showSuggestCardDialog(this, { lovelaceConfig: this.lovelace.config!, saveConfig: this.lovelace.saveConfig, path: [0], entities: this._selectedEntities, + cardConfig, }); return; } @@ -144,6 +151,7 @@ export class HuiUnusedEntities extends LitElement { saveConfig: this.lovelace.saveConfig, path: [viewIndex], entities: this._selectedEntities, + cardConfig, }); }, });