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; }