UNPKG

@sandlada/mdc

Version:

@sandlada/mdc is an open source component library that follows the Material Design 3 design specifications.

8 lines 2.09 kB
import{customElement as e}from"../../node_modules/@lit/reactive-element/decorators/custom-element.js";import{property as t}from"../../node_modules/@lit/reactive-element/decorators/property.js";import"../../node_modules/lit/decorators.js";import{html as n}from"../../node_modules/lit-html/lit-html.js";import{LitElement as r}from"../../node_modules/lit-element/lit-element.js";import"../../node_modules/lit/index.js";import{composeMixin as i}from"../../utils/compose-mixin/compose-mixin.js";import a from"../../_virtual/_@oxc-project_runtime@0.144.0/helpers/esm/decorate.js";import{mixinDelegatesAria as o}from"../../utils/aria/delegate.js";import{styleMap as s}from"../../node_modules/lit-html/directives/style-map.js";import"../../node_modules/lit/directives/style-map.js";import{styles as c}from"./icon.style.js"; /** * @license * Copyright 2025 Sandlada & Kai Orion * SPDX-License-Identifier: MIT */ let l=class extends i(o)(r){constructor(...e){super(...e),this.name=void 0,this.filled=!1,this.weight=400,this.grade=0,this.opticalSize=24}static{this.styles=c}render(){let e={"font-variation-settings":`'FILL' ${+!!this.filled}, 'wght' ${this.weight}, 'GRAD' ${this.grade}, 'opsz' ${this.opticalSize}`};return n`<span class="icon-container" style="${s(e)}">${this.name?this.name:n`<slot></slot>`}</span>`}connectedCallback(){super.connectedCallback(),this.updateAriaState()}updated(e){super.updated(e),(e.has(`ariaLabel`)||e.has(`ariaLabelledBy`))&&this.updateAriaState()}updateAriaState(){let e=this.hasAttribute(`aria-label`)||this.hasAttribute(`aria-labelledby`);this.getAttribute(`aria-hidden`)!==`false`&&(e?this.removeAttribute(`aria-hidden`):this.setAttribute(`aria-hidden`,`true`))}};a([t({type:String})],l.prototype,`name`,void 0),a([t({type:Boolean,reflect:!0})],l.prototype,`filled`,void 0),a([t({type:Number,reflect:!0})],l.prototype,`weight`,void 0),a([t({type:Number,reflect:!0})],l.prototype,`grade`,void 0),a([t({type:Number,attribute:`optical-size`,reflect:!0})],l.prototype,`opticalSize`,void 0),l=a([e(`mdc-icon`)],l);export{l as MDCIcon}; //# sourceMappingURL=icon.js.map