@public-ui/components
Version:
Contains all web components that belong to KoliBri - The accessible HTML-Standard.
4 lines • 7.11 kB
JavaScript
/*!
* KoliBri - The accessible HTML-Standard
*/
import{h as t,H as i,r as s,g as a}from"./index-DyUiyxj3.js";import{d as e,w as o,Q as l,R as h,J as r,e as n,s as d}from"./common-BXXICkFX.js";import{s as c}from"./reuse-CX4AQDkS.js";import{v,a as m,b as p,c as u}from"./access-and-short-key-BlB0ZAri.js";import{v as b,a as f,b as _,c as y,d as j}from"./button-variant-BKr6oMet.js";import{v as k}from"./custom-class-B6h_ZSR7.js";import{v as A}from"./disabled-D0wfAqak.js";import{v as x}from"./hide-label-90DGA8H4.js";import{v as D}from"./icons-DpMX_jnF.js";import{v as B}from"./inline-eBYBtb1X.js";import{a as S}from"./label-Dkj9sxQK.js";import{v as g}from"./tooltip-align-P-7pyT1i.js";import{c as C}from"./clsx-eK3rPvPS.js";import{a as I}from"./component-names-B_kYyA8u.js";import"./Alert-w-XRy_I0.js";import"./i18n-CvQhdUrE.js";import{K}from"./Span-d_9gh2UX.js";import{d as T,K as w}from"./events-DHTi_wtD.js";import{p as V,a as L}from"./controller-D-keynM4.js";import{A as X}from"./associated.controller-ByKVIoVY.js";import"./align-C_bkzA-y.js";import"./tslib.es6-CxX45GIN.js";import"./bem-De7JANRY.js";import"./browser-DaourpHc.js";import"./Heading-C1x8c7QT.js";import"./i18n-B0tfVPMa.js";import"./Icon-Dy7mcWMM.js";import"./markdown-CaS836ev.js";import"./InternalUnderlinedBadgeText-B9d8aD7h.js";import"./isObject-DvSELytj.js";import"./bootstrap-bsjlQuLF.js";const M=(t,a)=>{e(t,"_ariaSelected",a)},E=(t,a)=>{o(t,"_on",t=>"object"==typeof t&&null!==t,new Set(["ButtonCallbacksPropType {Events.onClick, Events.onMouseDown}"]),a)},H=["button","reset","submit"],P=(t,a)=>{o(t,"_type",t=>"string"==typeof t&&H.includes(t),new Set([`KoliBriButtonType {${H.join(", ")}`]),a)},Q=class{async focus(){var t;return Promise.resolve(null===(t=this.buttonRef)||void 0===t?void 0:t.focus())}render(){var a;const e=c(this.state._label),s=null===(a=this.state._ariaDescription)||void 0===a?void 0:a.trim(),o=this.state._accessKey||this.state._shortKey,n=!0===this.state._disabled,r=!0===this.state._hideLabel;return t(i,{key:"99416124052f5a18686e2ea0fc8db9e9f9066a01"},t("button",{key:"07fe0e9be0846dd5609e707000dc9b6e86bdb348",ref:t=>this.buttonRef=t,accessKey:this.state._accessKey,"aria-controls":this.state._ariaControls,"aria-description":s||void 0,"aria-expanded":h(this.state._ariaExpanded),"aria-haspopup":this._ariaHasPopup,"aria-keyshortcuts":this.state._shortKey,"aria-label":r&&"string"==typeof this.state._label?this.state._label:void 0,"aria-selected":l(this.state._ariaSelected),class:C("kol-button",{"kol-button--disabled":n,[`kol-button--${this.state._buttonVariant}`]:"custom"!==this.state._buttonVariant,"kol-button--inline":!0===this.state._inline,"kol-button--standalone":!1===this.state._inline,"kol-button--hide-label":r,[this.state._customClass]:"custom"===this.state._buttonVariant&&"string"==typeof this.state._customClass&&this.state._customClass.length>0}),disabled:n,id:this.state._id,name:this.state._name,onClick:this.onClick,onMouseDown:this.onMouseDown,role:this.state._role,tabIndex:this.state._tabIndex,type:this.state._type},t(K,{key:"a72dca8e86940ccc9f9525b9f726dee12f6884a3",class:"kol-button__text",badgeText:o,icons:this.state._icons,hideLabel:r,label:e?"":this.state._label},t("slot",{key:"2d4a2a369fc496087ce41b021e771e7e9c421adf",name:"expert",slot:"expert"}))),r&&t(I,{key:"a6f0f7f8b41875c2a98f1125120e38c22afb8658",ref:t=>this.tooltipRef=t,"aria-hidden":"true",hidden:e,class:"kol-button__tooltip",_badgeText:o,_align:this.state._tooltipAlign,_label:"string"==typeof this.state._label?this.state._label:""}))}constructor(t){s(this,t),this.hideTooltip=()=>{var t;null===(t=this.tooltipRef)||void 0===t||t.hideTooltip()},this.onClick=t=>{var a,e;this.state._hideLabel&&this.hideTooltip(),"submit"===this.state._type?V({form:this.host}):"reset"===this.state._type?L({form:this.host}):(this.controller.setFormAssociatedValue(this.state._value),"function"==typeof(null===(a=this.state._on)||void 0===a?void 0:a.onClick)&&(r(t,this.buttonRef),null===(e=this.state._on)||void 0===e||e.onClick(t,this.state._value))),this.host&&T(this.host,w.click,this.state._value)},this.onMouseDown=t=>{var a,e,i;null===(i=null===(e=null===(a=this.state)||void 0===a?void 0:a._on)||void 0===e?void 0:e.onMouseDown)||void 0===i||i.call(e,t),this.host&&T(this.host,w.mousedown)},this._disabled=!1,this._hideLabel=!1,this._inline=!1,this._tooltipAlign="top",this._type="button",this._buttonVariant="normal",this.state={_icons:{},_label:"",_on:{},_type:"button",_buttonVariant:"normal"},this.controller=new X(this,"button",this.host)}validateAccessKey(t){v(this,t),m(t,this._shortKey)}validateAriaControls(t){b(this,t)}validateAriaDescription(t){f(this,t)}validateAriaExpanded(t){_(this,t)}validateAriaSelected(t){M(this,t)}validateCustomClass(t){k(this,t)}validateDisabled(t){A(this,t)}validateHideLabel(t){x(this,t)}validateIcons(t){D(this,t)}validateId(t){n(this,"_id",t)}validateInline(t){B(this,t,{defaultValue:!1})}validateLabel(t){S(this,t,{required:!0})}validateName(t){this.controller.validateName(t)}validateOn(t){E(this,t)}validateRole(t){y(this,t)}validateShortKey(t){p(this,t),m(this._accessKey,t)}validateSyncValueBySelector(t){this.controller.validateSyncValueBySelector(t)}validateTabIndex(t){u(this,t)}validateTooltipAlign(t){g(this,t)}validateType(t){P(this,t)}validateValue(t){d(this,"_value",t),this.controller.setFormAssociatedValue(this.state._value)}validateButtonVariant(t){j(this,t)}componentWillLoad(){this.validateAccessKey(this._accessKey),this.validateAriaControls(this._ariaControls),this.validateAriaDescription(this._ariaDescription),this.validateAriaExpanded(this._ariaExpanded),this.validateAriaSelected(this._ariaSelected),this.validateCustomClass(this._customClass),this.validateDisabled(this._disabled),this.validateHideLabel(this._hideLabel),this.validateIcons(this._icons),this.validateId(this._id),this.validateInline(this._inline),this.validateLabel(this._label),this.validateName(this._name),this.validateOn(this._on),this.validateRole(this._role),this.validateShortKey(this._shortKey),this.validateSyncValueBySelector(this._syncValueBySelector),this.validateTabIndex(this._tabIndex),this.validateTooltipAlign(this._tooltipAlign),this.validateType(this._type),this.validateValue(this._value),this.validateButtonVariant(this._buttonVariant),m(this._accessKey,this._shortKey)}get host(){return a(this)}static get watchers(){return{_accessKey:["validateAccessKey"],_ariaControls:["validateAriaControls"],_ariaDescription:["validateAriaDescription"],_ariaExpanded:["validateAriaExpanded"],_ariaSelected:["validateAriaSelected"],_customClass:["validateCustomClass"],_disabled:["validateDisabled"],_hideLabel:["validateHideLabel"],_icons:["validateIcons"],_id:["validateId"],_inline:["validateInline"],_label:["validateLabel"],_name:["validateName"],_on:["validateOn"],_role:["validateRole"],_shortKey:["validateShortKey"],_syncValueBySelector:["validateSyncValueBySelector"],_tabIndex:["validateTabIndex"],_tooltipAlign:["validateTooltipAlign"],_type:["validateType"],_value:["validateValue"],_buttonVariant:["validateButtonVariant"]}}};export{Q as kol_button_wc};