From 13ac14d44947e56125502c953dfa1a57eef53f58 Mon Sep 17 00:00:00 2001 From: Marc Mueller <30130371+cdce8p@users.noreply.github.com> Date: Wed, 24 Feb 2021 17:34:44 +0100 Subject: [PATCH] Add additional weblink attributes (#8295) --- src/panels/lovelace/entity-rows/types.ts | 2 ++ src/panels/lovelace/special-rows/hui-weblink-row.ts | 13 ++++++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/panels/lovelace/entity-rows/types.ts b/src/panels/lovelace/entity-rows/types.ts index b2eb451582..9890927485 100644 --- a/src/panels/lovelace/entity-rows/types.ts +++ b/src/panels/lovelace/entity-rows/types.ts @@ -29,6 +29,8 @@ export interface WeblinkConfig { name?: string; icon?: string; url: string; + new_tab?: boolean; + download?: boolean; } export interface TextConfig { type: "text"; diff --git a/src/panels/lovelace/special-rows/hui-weblink-row.ts b/src/panels/lovelace/special-rows/hui-weblink-row.ts index fed13977c9..6cdf9cc983 100644 --- a/src/panels/lovelace/special-rows/hui-weblink-row.ts +++ b/src/panels/lovelace/special-rows/hui-weblink-row.ts @@ -7,6 +7,7 @@ import { LitElement, TemplateResult, } from "lit-element"; +import { ifDefined } from "lit-html/directives/if-defined"; import "../../../components/ha-icon"; import { HomeAssistant } from "../../../types"; import { LovelaceRow, WeblinkConfig } from "../entity-rows/types"; @@ -37,8 +38,9 @@ class HuiWeblinkRow extends LitElement implements LovelaceRow { return html`
${this._config.name}
@@ -66,6 +68,15 @@ class HuiWeblinkRow extends LitElement implements LovelaceRow { } `; } + + protected _computeTargetValue(): string | undefined { + return this._config && + (this._config.url.indexOf("://") !== -1 || + this._config.new_tab === true || + this._config.download === true) + ? "_blank" + : undefined; + } } declare global {