UNPKG

@trimble-oss/moduswebcomponents

Version:

Modus Web Components is a modern, accessible UI library built with Stencil JS that provides reusable web components following Trimble's Modus design system. This updated version focuses on improved flexibility, enhanced theming options, comprehensive cust

1 lines 2.25 kB
import{r as o,h as r,e as s,g as c}from"./p-C1-Dpkp7.js";import{h as i}from"./p-tWS3Egrk.js";import{i as e,a as l,s as n}from"./p-DJ2rBB6r.js";const t=class{constructor(r){o(this,r),this.inheritedAttributes={},this.color="primary",this.customClass="",this.underline="always"}componentWillLoad(){i(this.el),this.inheritedAttributes=Object.assign(Object.assign({},e(this.el)),l(this.el,["title"]))}getClasses(){const o=["modus-wc-link"],r=(({color:o,underline:r})=>{let s="";if(o&&(s=`${s} modus-wc-link-color-${o}`),r)switch(r){case"hover":s=`${s} modus-wc-link-hover`;break;case"none":s=`${s} modus-wc-no-underline`}return s.trim()})({color:this.color,underline:this.underline});return r&&o.push(r),this.customClass&&o.push(this.customClass),o.join(" ")}getRelAttribute(){var o;const r=new Set((null!==(o=this.rel)&&void 0!==o?o:"").split(/\s+/).map((o=>o.trim())).filter(Boolean));return"_blank"===this.target&&(r.add("noopener"),r.add("noreferrer")),r.size>0?Array.from(r).join(" "):void 0}getHrefAttribute(){var o;const r=null===(o=this.href)||void 0===o?void 0:o.trim();if(r&&"undefined"!==r&&"null"!==r)return n(r)}render(){const o=this.getHrefAttribute();return r(s,{key:"22c340bcfde4e205d6ced4597e6404a2b08e8686"},r("a",Object.assign({key:"4925c2396ae4e7c7a86cf3b260370e5ef44aed7b",class:this.getClasses(),href:o,rel:this.getRelAttribute(),target:this.target},this.inheritedAttributes),r("slot",{key:"bbdddec44e7ab8dd94e7504739565dc6fd18a49e"})))}get el(){return c(this)}};t.style="modus-wc-link a.modus-wc-link.modus-wc-link-color-primary{color:var(--modus-wc-color-primary)}modus-wc-link a.modus-wc-link.modus-wc-link-color-secondary{color:var(--modus-wc-color-secondary)}modus-wc-link a.modus-wc-link.modus-wc-link-color-tertiary{color:var(--modus-wc-color-base-inverted)}modus-wc-link a.modus-wc-link.modus-wc-link-color-success{color:var(--modus-wc-color-success)}modus-wc-link a.modus-wc-link.modus-wc-link-color-info{color:var(--modus-wc-color-info)}modus-wc-link a.modus-wc-link.modus-wc-link-color-warning{color:var(--modus-wc-color-warning)}modus-wc-link a.modus-wc-link.modus-wc-link-color-danger{color:var(--modus-wc-color-error)}modus-wc-link a.modus-wc-link.modus-wc-link-color-inherit{color:inherit}";export{t as modus_wc_link}