From 28834aaa5571005f972bc7300e00482001124ca0 Mon Sep 17 00:00:00 2001 From: Tom Carpenter Date: Tue, 24 Feb 2026 12:14:27 +0000 Subject: [PATCH] Ensure energy cards appear at end of card picker Add a new `sortAtEnd` option which will cause cards with this sort parameter to sink to the bottom of the card picker. --- .../editor/card-editor/hui-card-picker.ts | 6 ++++++ src/panels/lovelace/editor/lovelace-cards.ts | 16 ++++++++++++++++ src/panels/lovelace/editor/types.ts | 1 + 3 files changed, 23 insertions(+) diff --git a/src/panels/lovelace/editor/card-editor/hui-card-picker.ts b/src/panels/lovelace/editor/card-editor/hui-card-picker.ts index 2ac7a15311..fcac5d5bfe 100644 --- a/src/panels/lovelace/editor/card-editor/hui-card-picker.ts +++ b/src/panels/lovelace/editor/card-editor/hui-card-picker.ts @@ -282,6 +282,12 @@ export class HuiCardPicker extends LitElement { if (!a.isSuggested && b.isSuggested) { return 1; } + if (!a.sortAtEnd && b.sortAtEnd) { + return -1; + } + if (a.sortAtEnd && !b.sortAtEnd) { + return 1; + } return stringCompare( a.name || a.type, b.name || b.type, diff --git a/src/panels/lovelace/editor/lovelace-cards.ts b/src/panels/lovelace/editor/lovelace-cards.ts index 7cdce1af9e..f97e762809 100644 --- a/src/panels/lovelace/editor/lovelace-cards.ts +++ b/src/panels/lovelace/editor/lovelace-cards.ts @@ -48,66 +48,82 @@ export const coreCards: Card[] = [ { type: "energy-date-selection", showElement: true, + sortAtEnd: true, }, { type: "energy-distribution", showElement: false, + sortAtEnd: true, }, { type: "energy-usage-graph", showElement: false, + sortAtEnd: true, }, { type: "energy-solar-graph", showElement: false, + sortAtEnd: true, }, { type: "energy-gas-graph", showElement: false, + sortAtEnd: true, }, { type: "energy-water-graph", showElement: false, + sortAtEnd: true, }, { type: "power-sources-graph", showElement: false, + sortAtEnd: true, }, { type: "energy-devices-graph", showElement: false, + sortAtEnd: true, }, { type: "energy-devices-detail-graph", showElement: false, + sortAtEnd: true, }, { type: "energy-sankey", showElement: false, + sortAtEnd: true, }, { type: "power-sankey", showElement: false, + sortAtEnd: true, }, { type: "water-sankey", showElement: false, + sortAtEnd: true, }, { type: "energy-solar-consumed-gauge", showElement: false, + sortAtEnd: true, }, { type: "energy-self-sufficiency-gauge", showElement: false, + sortAtEnd: true, }, { type: "energy-grid-neutrality-gauge", showElement: false, + sortAtEnd: true, }, { type: "energy-carbon-consumed-gauge", showElement: false, + sortAtEnd: true, }, { type: "statistic", diff --git a/src/panels/lovelace/editor/types.ts b/src/panels/lovelace/editor/types.ts index 51d9bf59d1..e97294ecb9 100644 --- a/src/panels/lovelace/editor/types.ts +++ b/src/panels/lovelace/editor/types.ts @@ -67,6 +67,7 @@ export interface Card { name?: string; description?: string; showElement?: boolean; + sortAtEnd?: boolean; isCustom?: boolean; isSuggested?: boolean; }