@public-ui/components
Version:
Contains all web components that belong to KoliBri - The accessible HTML-Standard.
4 lines • 2.77 kB
JavaScript
/*!
* KoliBri - The accessible HTML-Standard
*/
import{_ as __rest}from"./tslib.es6-CxX45GIN.js";import{h,F as Fragment}from"./index-BTX696j0.js";import{c as clsx}from"./clsx-eK3rPvPS.js";import"./common-BXXICkFX.js";import{b as buildBadgeTextString,s as showExpertSlot}from"./reuse-CX4AQDkS.js";import{b as FormFieldTooltipFc,K as KolFormFieldLabelFc,c as KolFormFieldHintFc,g as getMsgType,i as isMsgDefinedAndInputTouched}from"./FormFieldStateWrapper-D0MLneaJ.js";const InputContainer=(e,l)=>{var{class:o}=e,t=__rest(e,["class"]);return h("div",Object.assign({class:clsx("kol-field-control__input",o)},t),l)},KolFieldControlFc=(e,l)=>{const{class:o,id:t,disabled:i,label:s,hideLabel:r,labelAlign:n,renderNoTooltip:a,hint:d,renderNoHint:c,tooltipAlign:p,accessKey:b,shortKey:g,msg:F,touched:u,required:_,readonly:f,fieldControlInputProps:m,fieldControlLabelProps:y,fieldControlTooltipProps:C,fieldControlHintProps:K}=e,j=__rest(e,["class","id","disabled","label","hideLabel","labelAlign","renderNoTooltip","hint","renderNoHint","tooltipAlign","accessKey","shortKey","msg","touched","required","readonly","fieldControlInputProps","fieldControlLabelProps","fieldControlTooltipProps","fieldControlHintProps"]),k=!c,x=!a,T=showExpertSlot(s),B=x&&!T&&r,P=buildBadgeTextString(b,g),A=[h(Fragment,null,h(InputContainer,Object.assign({},m),l),B&&h(FormFieldTooltipFc,Object.assign({},C||{},{id:t,label:s,align:p,badgeText:P}))),h(KolFormFieldLabelFc,Object.assign({},y||{},{id:t,baseClassName:"kol-field-control",class:clsx(null==y?void 0:y.class,{"kol-field-control__label--visually-hidden":Boolean(r)}),hasExpertSlot:T,label:s,accessKey:b,shortKey:g}))];"left"===n&&A.reverse();const S={"kol-field-control--disabled":Boolean(i),"kol-field-control--required":Boolean(_),"kol-field-control--touched":Boolean(u),"kol-field-control--hide-label":Boolean(r),"kol-field-control--read-only":Boolean(f),[`kol-field-control--${getMsgType(F)}`]:Boolean(isMsgDefinedAndInputTouched(F,u)),[`kol-field-control--label-align-${n}`]:Boolean(n)};return h("div",Object.assign({class:clsx("kol-field-control",S,o)},j),A,k&&h(KolFormFieldHintFc,Object.assign({},K||{},{baseClassName:"kol-field-control",id:t,hint:d})))};function getFieldControlProps(e){const l={id:e._id,disabled:e._disabled,msg:e._msg,hint:e._hint,label:e._label,hideLabel:e._hideLabel,touched:e._touched};return"_required"in e&&(l.required=e._required),"_readOnly"in e&&(l.readonly=e._readOnly),"_labelAlign"in e&&(l.labelAlign=e._labelAlign),"_accessKey"in e&&(l.accessKey=e._accessKey),"_shortKey"in e&&(l.shortKey=e._shortKey),l}const FieldControlStateWrapper=(e,l)=>{var{state:o}=e,t=__rest(e,["state"]);return h(KolFieldControlFc,Object.assign({},getFieldControlProps(o),t),l)};export{FieldControlStateWrapper as F};