UNPKG

@public-ui/components

Version:

Contains all web components that belong to KoliBri - The accessible HTML-Standard.

4 lines 2.42 kB
/*! * KoliBri - The accessible HTML-Standard */ import{r as t,h as a,g as i}from"./index-DyUiyxj3.js";import{c as s}from"./clsx-eK3rPvPS.js";import{g as o}from"./component-names-B_kYyA8u.js";import{e as l,w as e,s as d}from"./common-BXXICkFX.js";import{v as n}from"./label-Dkj9sxQK.js";import{d as r,K as h}from"./events-DHTi_wtD.js";import{h as c}from"./tooltip-open-tracking-rBbBgPWP.js";const v=(a,t,i)=>{l(a,"_width",t,Object.assign({defaultValue:"100%"},i))},b=["blank","card"],_=(a,t)=>{e(a,"_variant",a=>"string"==typeof a&&b.includes(a),new Set(b),t)},k=class{constructor(a){t(this,a),this.on={onClose:async()=>{await this.closeModal()}},this._width="100%",this._variant="blank",this.state={_label:"",_width:"100%"}}disconnectedCallback(){this.closeModal()}handleNativeCloseEvent(){var a,t;null===(t=null===(a=this.state._on)||void 0===a?void 0:a.onClose)||void 0===t||t.call(a),this.host&&r(this.host,h.close)}async openModal(){var a;null===(a=this.refDialog)||void 0===a||a.showModal()}async closeModal(){var a,t;null===(t=null===(a=this.refDialog)||void 0===a?void 0:a.close)||void 0===t||t.call(a)}render(){return a("dialog",{key:"288b2934310b2d34013f55e0f4636263e2be22aa","aria-label":this.state._label,class:s("kol-dialog","kol-modal",{"kol-dialog__blank":"blank"===this.state._variant,"kol-dialog__card":"card"===this.state._variant,"kol-modal__blank":"blank"===this.state._variant,"kol-modal__card":"card"===this.state._variant}),onCancel:c,onClose:this.handleNativeCloseEvent.bind(this),ref:a=>{this.refDialog=a},style:{width:this.state._width}},"blank"===this.state._variant&&a("slot",{key:"08ea19cdd17c7dcd6fcdb58b1d083665268285a8"}),"card"===this.state._variant&&a(o,{key:"2801d5a45ea0e99406b1710dbfa76c320970ed0d",_label:this.state._label,_hasCloser:!0,_on:this.on},a("slot",{key:"447c1819769635b6b8c7891d252da2ac9b9ece36"})))}validateLabel(a){n(this,a,{required:!0})}validateOn(a){if("object"==typeof a&&null!==a){const t={};"function"!=typeof a.onClose&&!0!==a.onClose||(t.onClose=a.onClose),d(this,"_on",t)}}validateWidth(a){v(this,a)}validateVariant(a){_(this,a)}componentWillLoad(){this.validateLabel(this._label),this.validateOn(this._on),this.validateWidth(this._width),this.validateVariant(this._variant)}get host(){return i(this)}static get watchers(){return{_label:["validateLabel"],_on:["validateOn"],_width:["validateWidth"],_variant:["validateVariant"]}}};export{k as kol_dialog_wc};