UNPKG

@scania/tegel

Version:
65 lines (60 loc) 2.95 kB
import { p as proxyCustomElement, H, h } from './p-28ef5186.js'; const linkCss = ":host{display:inline}:host ::slotted(*){all:unset;cursor:pointer;outline:none;color:var(--tds-link);text-decoration:underline}:host ::slotted(*:focus-visible){color:var(--tds-link-focus);text-decoration:none;outline:2px solid var(--tds-link-focus);outline-offset:-2px}:host ::slotted(*:active){color:var(--tds-link);text-decoration:underline;text-decoration-color:var(--tds-link)}:host ::slotted(*:hover){color:var(--tds-link-hover);text-decoration:underline;text-decoration-color:var(--tds-link-hover)}:host ::slotted(*:visited){color:var(--tds-link-visited);text-decoration-color:var(--tds-link-visited)}.disabled ::slotted(*),.disabled ::slotted(*:visited){color:var(--tds-link-disabled);text-decoration-color:var(--tds-link-disabled);pointer-events:none}.no-underline ::slotted(*){text-decoration:none}.no-underline:hover ::slotted(*){text-decoration:none}.standalone ::slotted(*){font:var(--tds-detail-02);letter-spacing:var(--tds-detail-02-ls)}"; const TdsLinkStyle0 = linkCss; const TdsLink$1 = /*@__PURE__*/ proxyCustomElement(class TdsLink extends H { constructor() { super(); this.__registerHost(); this.__attachShadow(); this.disabled = false; this.underline = true; this.standalone = false; } connectedCallback() { const links = this.host.querySelectorAll('a'); if (links.length > 1) { console.warn('tds-link is only intended to wrap one <a> tag'); } const link = links[0]; if (link) { if (this.disabled) { link.setAttribute('tabindex', '-1'); link.setAttribute('aria-disabled', 'true'); } else { link.removeAttribute('tabindex'); link.removeAttribute('aria-disabled'); } } } render() { return (h("span", { key: '7f0f25738cc23b6f1cb77be9dd80ea14b9b399bc', class: { 'disabled': this.disabled, 'no-underline': !this.underline, 'standalone': this.standalone, } }, h("slot", { key: '73203886b4064a43a2b3ede33ce650f280ebe9c5' }))); } get host() { return this; } static get style() { return TdsLinkStyle0; } }, [1, "tds-link", { "disabled": [4], "underline": [4], "standalone": [4] }]); function defineCustomElement$1() { if (typeof customElements === "undefined") { return; } const components = ["tds-link"]; components.forEach(tagName => { switch (tagName) { case "tds-link": if (!customElements.get(tagName)) { customElements.define(tagName, TdsLink$1); } break; } }); } defineCustomElement$1(); const TdsLink = TdsLink$1; const defineCustomElement = defineCustomElement$1; export { TdsLink, defineCustomElement };