mirror of
https://github.com/home-assistant/frontend.git
synced 2025-07-17 06:16:33 +00:00
Allow to add name in heading entity badge state content (#22161)
This commit is contained in:
parent
b6efedfc8d
commit
175f68e0cf
@ -37,6 +37,7 @@ export const DEFAULT_CONFIG: Partial<EntityHeadingBadgeConfig> = {
|
||||
const entityConfigStruct = object({
|
||||
type: optional(string()),
|
||||
entity: string(),
|
||||
name: optional(string()),
|
||||
icon: optional(string()),
|
||||
state_content: optional(union([string(), array(string())])),
|
||||
show_state: optional(boolean()),
|
||||
@ -86,6 +87,12 @@ export class HuiHeadingEntityEditor
|
||||
name: "",
|
||||
type: "grid",
|
||||
schema: [
|
||||
{
|
||||
name: "name",
|
||||
selector: {
|
||||
text: {},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "icon",
|
||||
selector: { icon: {} },
|
||||
@ -128,7 +135,7 @@ export class HuiHeadingEntityEditor
|
||||
},
|
||||
{
|
||||
name: "state_content",
|
||||
selector: { ui_state_content: {} },
|
||||
selector: { ui_state_content: { allow_name: true } },
|
||||
context: { filter_entity: "entity" },
|
||||
},
|
||||
],
|
||||
@ -269,6 +276,10 @@ export class HuiHeadingEntityEditor
|
||||
return this.hass!.localize(
|
||||
`ui.panel.lovelace.editor.card.heading.entity_config.${schema.name}_helper`
|
||||
);
|
||||
case "name":
|
||||
return this.hass!.localize(
|
||||
`ui.panel.lovelace.editor.card.heading.entity_config.name_helper`
|
||||
);
|
||||
default:
|
||||
return undefined;
|
||||
}
|
||||
|
@ -125,12 +125,15 @@ export class HuiEntityHeadingBadge
|
||||
"--icon-color": color,
|
||||
};
|
||||
|
||||
const name = config.name || stateObj.attributes.friendly_name;
|
||||
|
||||
return html`
|
||||
<ha-heading-badge
|
||||
.type=${hasAction(config.tap_action) ? "button" : "text"}
|
||||
@action=${this._handleAction}
|
||||
.actionHandler=${actionHandler()}
|
||||
style=${styleMap(style)}
|
||||
.title=${name}
|
||||
>
|
||||
${config.show_icon
|
||||
? html`
|
||||
@ -148,6 +151,7 @@ export class HuiEntityHeadingBadge
|
||||
.hass=${this.hass}
|
||||
.stateObj=${stateObj}
|
||||
.content=${config.state_content}
|
||||
.name=${config.name}
|
||||
></state-display>
|
||||
`
|
||||
: nothing}
|
||||
|
@ -16,6 +16,7 @@ export interface ErrorBadgeConfig extends LovelaceHeadingBadgeConfig {
|
||||
export interface EntityHeadingBadgeConfig extends LovelaceHeadingBadgeConfig {
|
||||
type?: "entity";
|
||||
entity: string;
|
||||
name?: string;
|
||||
state_content?: string | string[];
|
||||
icon?: string;
|
||||
show_state?: boolean;
|
||||
|
@ -6026,6 +6026,8 @@
|
||||
"entity_config": {
|
||||
"color": "[%key:ui::panel::lovelace::editor::card::tile::color%]",
|
||||
"color_helper": "[%key:ui::panel::lovelace::editor::card::tile::color_helper%]",
|
||||
"name": "[%key:ui::panel::lovelace::editor::card::generic::name%]",
|
||||
"name_helper": "Visible if selected in state content",
|
||||
"visibility": "Visibility",
|
||||
"visibility_explanation": "The entity will be shown when ALL conditions below are fulfilled. If no conditions are set, the entity will always be shown.",
|
||||
"appearance": "Appearance",
|
||||
|
Loading…
x
Reference in New Issue
Block a user