mirror of
https://github.com/home-assistant/frontend.git
synced 2025-04-25 13:57:21 +00:00
Provide stub config for entity-filter (#8121)
* Provide stub config for entity-filter * "card" option is optional since it has a default * Search dynamically for stub config entities
This commit is contained in:
parent
2c07a2c825
commit
01df01cd66
@ -8,6 +8,7 @@ import { LovelaceCardConfig } from "../../../data/lovelace";
|
||||
import { HomeAssistant } from "../../../types";
|
||||
import { computeCardSize } from "../common/compute-card-size";
|
||||
import { evaluateFilter } from "../common/evaluate-filter";
|
||||
import { findEntities } from "../common/find-entites";
|
||||
import { processConfigEntities } from "../common/process-config-entities";
|
||||
import { createCardElement } from "../create-element/create-card-element";
|
||||
import { EntityFilterEntityConfig } from "../entity-rows/types";
|
||||
@ -15,6 +16,30 @@ import { LovelaceCard } from "../types";
|
||||
import { EntityFilterCardConfig } from "./types";
|
||||
|
||||
class EntityFilterCard extends UpdatingElement implements LovelaceCard {
|
||||
public static getStubConfig(
|
||||
hass: HomeAssistant,
|
||||
entities: string[],
|
||||
entitiesFallback: string[]
|
||||
): EntityFilterCardConfig {
|
||||
const maxEntities = 3;
|
||||
const foundEntities = findEntities(
|
||||
hass,
|
||||
maxEntities,
|
||||
entities,
|
||||
entitiesFallback,
|
||||
["light", "switch", "sensor"]
|
||||
);
|
||||
|
||||
return {
|
||||
type: "entity-filter",
|
||||
entities: foundEntities,
|
||||
state_filter: [
|
||||
foundEntities[0] ? hass.states[foundEntities[0]].state : "",
|
||||
],
|
||||
card: { type: "entities" },
|
||||
};
|
||||
}
|
||||
|
||||
@property({ attribute: false }) public hass?: HomeAssistant;
|
||||
|
||||
@property() public isPanel = false;
|
||||
|
@ -92,7 +92,7 @@ export interface EntityFilterCardConfig extends LovelaceCardConfig {
|
||||
type: "entity-filter";
|
||||
entities: Array<EntityFilterEntityConfig | string>;
|
||||
state_filter: Array<{ key: string } | string>;
|
||||
card: Partial<LovelaceCardConfig>;
|
||||
card?: Partial<LovelaceCardConfig>;
|
||||
show_empty?: boolean;
|
||||
}
|
||||
|
||||
|
@ -2833,7 +2833,7 @@
|
||||
"image": "Image Path",
|
||||
"maximum": "Maximum",
|
||||
"manual": "Manual",
|
||||
"manual_description": "Need to add a custom card or just want to manually write the yaml?",
|
||||
"manual_description": "Need to add a custom card or just want to manually write the YAML?",
|
||||
"minimum": "Minimum",
|
||||
"name": "Name",
|
||||
"refresh_interval": "Refresh Interval",
|
||||
|
Loading…
x
Reference in New Issue
Block a user