UNPKG

@postnord/web-components

Version:
47 lines (42 loc) 3.72 kB
/*! * Built with Stencil * By PostNord. */ 'use strict'; var index = require('./index-CfUQZtlH.js'); const pnTextLinkCss = () => `${index.transformTag("pn-text-link")}{display:inline}${index.transformTag("pn-text-link")} .pn-text-link{border-radius:0.25em;color:#005d92;font-weight:500;text-decoration:underline;font-size:1em;transition-property:color, outline-color, text-decoration-color;transition-duration:0.2s;transition-timing-function:cubic-bezier(0.7, 0, 0.3, 1)}@media (prefers-reduced-motion: reduce){${index.transformTag("pn-text-link")} .pn-text-link{transition-duration:0s;transition-delay:0s}}${index.transformTag("pn-text-link")} .pn-text-link{outline:0.2rem solid transparent;outline-offset:0.2rem}${index.transformTag("pn-text-link")} .pn-text-link:focus-visible{outline-color:#005d92}${index.transformTag("pn-text-link")} .pn-text-link:hover{color:#0d234b;text-decoration-color:#0d234b}${index.transformTag("pn-text-link")} .pn-text-link[data-icon]{display:inline-flex;gap:0.25em;align-items:center;text-decoration-color:transparent;padding:0.1em;border-radius:0.5em}${index.transformTag("pn-text-link")} .pn-text-link[data-icon] .pn-icon-svg path{fill:#005d92}${index.transformTag("pn-text-link")} .pn-text-link[data-icon]:hover{text-decoration-color:#0d234b}${index.transformTag("pn-text-link")} .pn-text-link[data-icon]:hover .pn-icon-svg path,${index.transformTag("pn-text-link")} .pn-text-link[data-icon]:focus-visible .pn-icon-svg path{fill:#0d234b}${index.transformTag("pn-text-link")} .pn-text-link[data-icon][data-icon-left]{flex-direction:row-reverse}${index.transformTag("pn-text-link")} .pn-text-link[data-light]{color:#ffffff}${index.transformTag("pn-text-link")} .pn-text-link[data-light]:focus-visible{outline-color:#ffffff}${index.transformTag("pn-text-link")} .pn-text-link[data-light]:hover{text-decoration-color:#ffffff}${index.transformTag("pn-text-link")} .pn-text-link[data-light][data-icon] ${index.transformTag("pn-icon")} .pn-icon-svg path{fill:#ffffff}`; const PnTextLink = class { constructor(hostRef) { index.registerInstance(this, hostRef); } get hostElement() { return index.getElement(this); } /** The link text. @since v7.5.0 */ label; /** The URL string. */ href; /** Use the light version of the link. @category Visual */ light = false; /** SVG content of the icon. @category Visual */ icon; /** Align the icon on the left. @category Visual */ leftIcon = false; /** Treat the link as a download link. @category Link attributes */ download; /** Set the hreflang of the URL destination. @category Link attributes */ hreflang; /** Link media. @category Link attributes */ media; /** Set referrerpolicy on the link. @category Link attributes */ referrerpolicy; /** Set the rel of the link. @category Link attributes */ rel = 'noopener noreferrer'; /** Set the target of the link. @category Link attributes */ target; /** Set a unique html ID of the a element. @category Link attributes */ linkid; render() { return (index.h("a", { key: '9b582d89de39e3465ec6a1675f60f46d39b3c558', id: this.linkid, class: "pn-text-link", href: this.href, rel: this.rel, target: this.target, download: this.download, hreflang: this.hreflang, media: this.media, referrerPolicy: this.referrerpolicy, "data-icon": !!this.icon, "data-icon-left": this.leftIcon, "data-light": this.light }, this.label, index.h("slot", { key: '106155241d1f15bdaf19a74c8dc440372849a6f4' }), this.icon && index.h("pn-icon", { key: 'd6d197a8632a13b6a1e385504b6727cfb9c418fd', icon: this.icon }))); } }; PnTextLink.style = pnTextLinkCss(); exports.pn_text_link = PnTextLink;