@public-ui/components
Version:
Contains all web components that belong to KoliBri - The accessible HTML-Standard.
4 lines • 2.8 kB
JavaScript
/*!
* KoliBri - The accessible HTML-Standard
*/
"use strict";var index=require("./index-C3uXtd6W.js"),clsx=require("./clsx-CkZlkaek.js"),componentNames=require("./component-names-Bu9hV7OT.js"),common=require("./common-1pTy2kta.js"),label=require("./label-6ELpV3zN.js"),events=require("./events-Cd8febUV.js"),tooltipOpenTracking=require("./tooltip-open-tracking-Ba0udJRU.js");const validateWidth=(a,t,e)=>{common.watchString(a,"_width",t,Object.assign({defaultValue:"100%"},e))},DialogVariantPropTypeOptions=["blank","card"],validateDialogVariant=(a,t)=>{common.watchValidator(a,"_variant",a=>"string"==typeof a&&DialogVariantPropTypeOptions.includes(a),new Set(DialogVariantPropTypeOptions),t)},KolDialogWc=class{constructor(a){index.registerInstance(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&&events.dispatchDomEvent(this.host,events.KolEvent.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 index.h("dialog",{key:"288b2934310b2d34013f55e0f4636263e2be22aa","aria-label":this.state._label,class:clsx.clsx("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:tooltipOpenTracking.handleCancelOverlay,onClose:this.handleNativeCloseEvent.bind(this),ref:a=>{this.refDialog=a},style:{width:this.state._width}},"blank"===this.state._variant&&index.h("slot",{key:"08ea19cdd17c7dcd6fcdb58b1d083665268285a8"}),"card"===this.state._variant&&index.h(componentNames.KolCardWcTag,{key:"2801d5a45ea0e99406b1710dbfa76c320970ed0d",_label:this.state._label,_hasCloser:!0,_on:this.on},index.h("slot",{key:"447c1819769635b6b8c7891d252da2ac9b9ece36"})))}validateLabel(a){label.validateLabel(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),common.setState(this,"_on",t)}}validateWidth(a){validateWidth(this,a)}validateVariant(a){validateDialogVariant(this,a)}componentWillLoad(){this.validateLabel(this._label),this.validateOn(this._on),this.validateWidth(this._width),this.validateVariant(this._variant)}get host(){return index.getElement(this)}static get watchers(){return{_label:["validateLabel"],_on:["validateOn"],_width:["validateWidth"],_variant:["validateVariant"]}}};exports.kol_dialog_wc=KolDialogWc;