ha-frontend/src/panels/lovelace/editor/card-editor/show-edit-card-dialog.ts

27 lines
889 B
TypeScript

import { fireEvent } from "../../../../common/dom/fire_event";
import type { LovelaceCardConfig } from "../../../../data/lovelace/config/card";
import type { LovelaceConfig } from "../../../../data/lovelace/config/types";
export interface EditCardDialogParams {
lovelaceConfig: LovelaceConfig;
preSaveConfig?: (
config: LovelaceCardConfig
) => LovelaceCardConfig | Promise<LovelaceCardConfig>;
saveConfig: (config: LovelaceConfig) => void;
path: [number] | [number, number];
cardConfig?: LovelaceCardConfig;
}
export const importEditCardDialog = () => import("./hui-dialog-edit-card");
export const showEditCardDialog = (
element: HTMLElement,
editCardDialogParams: EditCardDialogParams
): void => {
fireEvent(element, "show-dialog", {
dialogTag: "hui-dialog-edit-card",
dialogImport: importEditCardDialog,
dialogParams: editCardDialogParams,
});
};