From f1c360c55047ecc98b88536813b478aeadad448c Mon Sep 17 00:00:00 2001 From: Petar Petrov Date: Mon, 30 Dec 2024 12:54:00 +0200 Subject: [PATCH] Add `getGridOptions` to history and statistics graph cards (#23476) --- src/panels/lovelace/cards/hui-history-graph-card.ts | 10 +++++++++- src/panels/lovelace/cards/hui-statistics-graph-card.ts | 10 +++++++++- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/src/panels/lovelace/cards/hui-history-graph-card.ts b/src/panels/lovelace/cards/hui-history-graph-card.ts index 490180ac91..95d6004b13 100644 --- a/src/panels/lovelace/cards/hui-history-graph-card.ts +++ b/src/panels/lovelace/cards/hui-history-graph-card.ts @@ -16,7 +16,7 @@ import { getSensorNumericDeviceClasses } from "../../../data/sensor"; import type { HomeAssistant } from "../../../types"; import { hasConfigOrEntitiesChanged } from "../common/has-changed"; import { processConfigEntities } from "../common/process-config-entities"; -import type { LovelaceCard } from "../types"; +import type { LovelaceCard, LovelaceGridOptions } from "../types"; import type { HistoryGraphCardConfig } from "./types"; import { createSearchParam } from "../../../common/url/search-params"; @@ -56,6 +56,14 @@ export class HuiHistoryGraphCard extends LitElement implements LovelaceCard { return this._config?.title ? 2 : 0 + 2 * (this._entityIds?.length || 1); } + getGridOptions(): LovelaceGridOptions { + return { + columns: 12, + min_columns: 6, + min_rows: (this._config?.entities?.length || 1) * 2, + }; + } + public setConfig(config: HistoryGraphCardConfig): void { if (!config.entities || !Array.isArray(config.entities)) { throw new Error("Entities need to be an array"); diff --git a/src/panels/lovelace/cards/hui-statistics-graph-card.ts b/src/panels/lovelace/cards/hui-statistics-graph-card.ts index aafd5b22f1..4e703dafb4 100644 --- a/src/panels/lovelace/cards/hui-statistics-graph-card.ts +++ b/src/panels/lovelace/cards/hui-statistics-graph-card.ts @@ -18,7 +18,7 @@ import type { HomeAssistant } from "../../../types"; import { findEntities } from "../common/find-entities"; import { hasConfigOrEntitiesChanged } from "../common/has-changed"; import { processConfigEntities } from "../common/process-config-entities"; -import type { LovelaceCard } from "../types"; +import type { LovelaceCard, LovelaceGridOptions } from "../types"; import type { StatisticsGraphCardConfig } from "./types"; export const DEFAULT_DAYS_TO_SHOW = 30; @@ -93,6 +93,14 @@ export class HuiStatisticsGraphCard extends LitElement implements LovelaceCard { ); } + getGridOptions(): LovelaceGridOptions { + return { + columns: 12, + min_columns: 9, + min_rows: 4, + }; + } + public setConfig(config: StatisticsGraphCardConfig): void { if (!config.entities || !Array.isArray(config.entities)) { throw new Error("Entities need to be an array");