@sandlada/mdc
Version:
@sandlada/mdc is an open source component library that follows the Material Design 3 design specifications.
2 lines (1 loc) • 1.11 kB
JavaScript
import{_ as e}from"../../tslib.es6-CmLYFWVC.js";import{x as t}from"../../lit-element-Ho-VPzO1.js";import{n as s}from"../../property-Ck1wIidx.js";import{r}from"../../state--U2hSgGK.js";import{e as a}from"../../class-map-DlMb2KKL.js";import{BaseFab as o}from"./base-fab.js";import"../../query-DifSdHBD.js";import"../../utils/event/form-label-activation.js";class l extends o{constructor(){super(...arguments),this.extended=!1,this.hasLabel=!1}render(){return t`<button class="${a(this.getRenderClasses())}"><mdc-ripple part="ripple"></mdc-ripple><mdc-focus-ring part="focus-ring"></mdc-focus-ring><mdc-elevation part="elevation"></mdc-elevation>${this.renderIcon()} ${this.renderLabel()}</button>`}renderLabel(){return t`<span class="label"><slot @slotchange="${this.handleLabelSlotChange}"></slot></span>`}getRenderClasses(){return{...super.getRenderClasses(),"has-label":this.hasLabel,extended:this.extended}}handleLabelSlotChange(e){this.hasLabel=e.target.assignedElements().length>0}}e([s({type:Boolean})],l.prototype,"extended",void 0),e([r()],l.prototype,"hasLabel",void 0);export{l as BaseExtendedFab};