| Current Path : /home/users/unlimited/www/whatsapp-crm/public/build/assets/ |
| Current File : /home/users/unlimited/www/whatsapp-crm/public/build/assets/FormSelectCombo-66d92913.js |
import{u as L,o as I,f as de,K as pe,a as ce,H as Y,g as se,t as te,h as fe,m as be,b as X,O as me,d as $}from"./hidden-f79cef22.js";import{x as xe,a as k,u as ge}from"./use-text-value-ecd8c541.js";import{y as ye,c as Oe,l as Z,p as he}from"./use-outside-click-92c6377f.js";import{p as Se}from"./use-tree-walker-d52d0c0b.js";import{d as Re,e as Ce,r as Ie,a as Pe}from"./FormSelect-3a6ffebd.js";import{o as we,n as Ve,S as ke}from"./transition-f32a8133.js";import{D as Q,r as T,m,N as g,V as Te,q as oe,G as ee,I as ne,F as ae,S as le,R as Fe,H as K,W as Ae,o as j,c as _,a as M,t as q,f as U,g as H,n as z,u as E,j as ue,b as G,i as ie,e as Ee}from"./app-f1493ab2.js";function $e(a,P){return a===P}var Be=(a=>(a[a.Open=0]="Open",a[a.Closed=1]="Closed",a))(Be||{}),De=(a=>(a[a.Single=0]="Single",a[a.Multi=1]="Multi",a))(De||{}),Ne=(a=>(a[a.Pointer=0]="Pointer",a[a.Other=1]="Other",a))(Ne||{});let ve=Symbol("ComboboxContext");function W(a){let P=Ae(ve,null);if(P===null){let w=new Error(`<${a} /> is missing a parent <Combobox /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(w,W),w}return P}let je=Q({name:"Combobox",emits:{"update:modelValue":a=>!0},props:{as:{type:[Object,String],default:"template"},disabled:{type:[Boolean],default:!1},by:{type:[String,Function],default:()=>$e},modelValue:{type:[Object,String,Number,Boolean],default:void 0},defaultValue:{type:[Object,String,Number,Boolean],default:void 0},form:{type:String,optional:!0},name:{type:String,optional:!0},nullable:{type:Boolean,default:!1},multiple:{type:[Boolean],default:!1}},inheritAttrs:!1,setup(a,{slots:P,attrs:w,emit:V}){let e=T(1),t=T(null),x=T(null),o=T(null),r=T(null),f=T({static:!1,hold:!1}),n=T([]),p=T(null),s=T(1),S=T(!1);function F(u=d=>d){let d=p.value!==null?n.value[p.value]:null,c=me(u(n.value.slice()),b=>I(b.dataRef.domRef)),i=d?c.indexOf(d):null;return i===-1&&(i=null),{options:c,activeOptionIndex:i}}let B=m(()=>a.multiple?1:0),y=m(()=>a.nullable),[l,O]=Re(m(()=>a.modelValue),u=>V("update:modelValue",u),m(()=>a.defaultValue)),h=m(()=>l.value===void 0?L(B.value,{1:[],0:void 0}):l.value),A=null,R=null,v={comboboxState:e,value:h,mode:B,compare(u,d){if(typeof a.by=="string"){let c=a.by;return(u==null?void 0:u[c])===(d==null?void 0:d[c])}return a.by(u,d)},defaultValue:m(()=>a.defaultValue),nullable:y,inputRef:x,labelRef:t,buttonRef:o,optionsRef:r,disabled:m(()=>a.disabled),options:n,change(u){O(u)},activeOptionIndex:m(()=>{if(S.value&&p.value===null&&n.value.length>0){let u=n.value.findIndex(d=>!d.dataRef.disabled);u!==-1&&(p.value=u)}return p.value}),activationTrigger:s,optionsPropsRef:f,closeCombobox(){S.value=!1,!a.disabled&&e.value!==1&&(e.value=1,p.value=null)},openCombobox(){if(S.value=!0,a.disabled||e.value===0)return;let u=n.value.findIndex(d=>{let c=g(d.dataRef.value);return L(B.value,{0:()=>v.compare(g(v.value.value),g(c)),1:()=>g(v.value.value).some(i=>v.compare(g(i),g(c)))})});u!==-1&&(p.value=u),e.value=0},goToOption(u,d,c){S.value=!1,A!==null&&cancelAnimationFrame(A),A=requestAnimationFrame(()=>{if(a.disabled||r.value&&!f.value.static&&e.value===1)return;let i=F();if(i.activeOptionIndex===null){let C=i.options.findIndex(J=>!J.dataRef.disabled);C!==-1&&(i.activeOptionIndex=C)}let b=xe(u===k.Specific?{focus:k.Specific,id:d}:{focus:u},{resolveItems:()=>i.options,resolveActiveIndex:()=>i.activeOptionIndex,resolveId:C=>C.id,resolveDisabled:C=>C.dataRef.disabled});p.value=b,s.value=c??1,n.value=i.options})},selectOption(u){let d=n.value.find(i=>i.id===u);if(!d)return;let{dataRef:c}=d;O(L(B.value,{0:()=>c.value,1:()=>{let i=g(v.value.value).slice(),b=g(c.value),C=i.findIndex(J=>v.compare(b,g(J)));return C===-1?i.push(b):i.splice(C,1),i}}))},selectActiveOption(){if(v.activeOptionIndex.value===null)return;let{dataRef:u,id:d}=n.value[v.activeOptionIndex.value];O(L(B.value,{0:()=>u.value,1:()=>{let c=g(v.value.value).slice(),i=g(u.value),b=c.findIndex(C=>v.compare(i,g(C)));return b===-1?c.push(i):c.splice(b,1),c}})),v.goToOption(k.Specific,d)},registerOption(u,d){R&&cancelAnimationFrame(R);let c={id:u,dataRef:d},i=F(b=>(b.push(c),b));if(p.value===null){let b=d.value.value;L(B.value,{0:()=>v.compare(g(v.value.value),g(b)),1:()=>g(v.value.value).some(C=>v.compare(g(C),g(b)))})&&(i.activeOptionIndex=i.options.indexOf(c))}n.value=i.options,p.value=i.activeOptionIndex,s.value=1,i.options.some(b=>!I(b.dataRef.domRef))&&(R=requestAnimationFrame(()=>{let b=F();n.value=b.options,p.value=b.activeOptionIndex}))},unregisterOption(u){var d;v.activeOptionIndex.value!==null&&((d=v.options.value[v.activeOptionIndex.value])==null?void 0:d.id)===u&&(S.value=!0);let c=F(i=>{let b=i.findIndex(C=>C.id===u);return b!==-1&&i.splice(b,1),i});n.value=c.options,p.value=c.activeOptionIndex,s.value=1}};ye([x,o,r],()=>v.closeCombobox(),m(()=>e.value===0)),Te(ve,v),Oe(m(()=>L(e.value,{0:Z.Open,1:Z.Closed})));let D=m(()=>v.activeOptionIndex.value===null?null:n.value[v.activeOptionIndex.value].dataRef.value),N=m(()=>{var u;return(u=I(x))==null?void 0:u.closest("form")});return oe(()=>{ee([N],()=>{if(!N.value||a.defaultValue===void 0)return;function u(){v.change(a.defaultValue)}return N.value.addEventListener("reset",u),()=>{var d;(d=N.value)==null||d.removeEventListener("reset",u)}},{immediate:!0})}),()=>{let{name:u,disabled:d,form:c,...i}=a,b={open:e.value===0,disabled:d,activeIndex:v.activeOptionIndex.value,activeOption:D.value,value:h.value};return ne(ae,[...u!=null&&h.value!=null?Ce({[u]:h.value}).map(([C,J])=>ne(de,pe({features:ce.Hidden,key:C,as:"input",type:"hidden",hidden:!0,readOnly:!0,form:c,name:C,value:J}))):[],Y({theirProps:{...w,...se(i,["modelValue","defaultValue","nullable","multiple","onUpdate:modelValue","by"])},ourProps:{},slot:b,slots:P,attrs:w,name:"Combobox"})])}}}),Le=Q({name:"ComboboxButton",props:{as:{type:[Object,String],default:"button"},id:{type:String,default:()=>`headlessui-combobox-button-${te()}`}},setup(a,{attrs:P,slots:w,expose:V}){let e=W("ComboboxButton");V({el:e.buttonRef,$el:e.buttonRef});function t(r){e.disabled.value||(e.comboboxState.value===0?e.closeCombobox():(r.preventDefault(),e.openCombobox()),K(()=>{var f;return(f=I(e.inputRef))==null?void 0:f.focus({preventScroll:!0})}))}function x(r){switch(r.key){case $.ArrowDown:r.preventDefault(),r.stopPropagation(),e.comboboxState.value===1&&e.openCombobox(),K(()=>{var f;return(f=e.inputRef.value)==null?void 0:f.focus({preventScroll:!0})});return;case $.ArrowUp:r.preventDefault(),r.stopPropagation(),e.comboboxState.value===1&&(e.openCombobox(),K(()=>{e.value.value||e.goToOption(k.Last)})),K(()=>{var f;return(f=e.inputRef.value)==null?void 0:f.focus({preventScroll:!0})});return;case $.Escape:if(e.comboboxState.value!==0)return;r.preventDefault(),e.optionsRef.value&&!e.optionsPropsRef.value.static&&r.stopPropagation(),e.closeCombobox(),K(()=>{var f;return(f=e.inputRef.value)==null?void 0:f.focus({preventScroll:!0})});return}}let o=fe(m(()=>({as:a.as,type:P.type})),e.buttonRef);return()=>{var r,f;let n={open:e.comboboxState.value===0,disabled:e.disabled.value,value:e.value.value},{id:p,...s}=a,S={ref:e.buttonRef,id:p,type:o.value,tabindex:"-1","aria-haspopup":"listbox","aria-controls":(r=I(e.optionsRef))==null?void 0:r.id,"aria-expanded":e.comboboxState.value===0,"aria-labelledby":e.labelRef.value?[(f=I(e.labelRef))==null?void 0:f.id,p].join(" "):void 0,disabled:e.disabled.value===!0?!0:void 0,onKeydown:x,onClick:t};return Y({ourProps:S,theirProps:s,slot:n,attrs:P,slots:w,name:"ComboboxButton"})}}}),_e=Q({name:"ComboboxInput",props:{as:{type:[Object,String],default:"input"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},displayValue:{type:Function},defaultValue:{type:String,default:void 0},id:{type:String,default:()=>`headlessui-combobox-input-${te()}`}},emits:{change:a=>!0},setup(a,{emit:P,attrs:w,slots:V,expose:e}){let t=W("ComboboxInput"),x=m(()=>be(I(t.inputRef))),o={value:!1};e({el:t.inputRef,$el:t.inputRef});function r(){t.change(null);let l=I(t.optionsRef);l&&(l.scrollTop=0),t.goToOption(k.Nothing)}let f=m(()=>{var l;let O=t.value.value;return I(t.inputRef)?typeof a.displayValue<"u"&&O!==void 0?(l=a.displayValue(O))!=null?l:"":typeof O=="string"?O:"":""});oe(()=>{ee([f,t.comboboxState,x],([l,O],[h,A])=>{if(o.value)return;let R=I(t.inputRef);R&&((A===0&&O===1||l!==h)&&(R.value=l),requestAnimationFrame(()=>{var v;if(o.value||!R||((v=x.value)==null?void 0:v.activeElement)!==R)return;let{selectionStart:D,selectionEnd:N}=R;Math.abs((N??0)-(D??0))===0&&D===0&&R.setSelectionRange(R.value.length,R.value.length)}))},{immediate:!0}),ee([t.comboboxState],([l],[O])=>{if(l===0&&O===1){if(o.value)return;let h=I(t.inputRef);if(!h)return;let A=h.value,{selectionStart:R,selectionEnd:v,selectionDirection:D}=h;h.value="",h.value=A,D!==null?h.setSelectionRange(R,v,D):h.setSelectionRange(R,v)}})});let n=T(!1);function p(){n.value=!0}function s(){we().nextFrame(()=>{n.value=!1})}function S(l){switch(o.value=!0,l.key){case $.Enter:if(o.value=!1,t.comboboxState.value!==0||n.value)return;if(l.preventDefault(),l.stopPropagation(),t.activeOptionIndex.value===null){t.closeCombobox();return}t.selectActiveOption(),t.mode.value===0&&t.closeCombobox();break;case $.ArrowDown:return o.value=!1,l.preventDefault(),l.stopPropagation(),L(t.comboboxState.value,{0:()=>t.goToOption(k.Next),1:()=>t.openCombobox()});case $.ArrowUp:return o.value=!1,l.preventDefault(),l.stopPropagation(),L(t.comboboxState.value,{0:()=>t.goToOption(k.Previous),1:()=>{t.openCombobox(),K(()=>{t.value.value||t.goToOption(k.Last)})}});case $.Home:if(l.shiftKey)break;return o.value=!1,l.preventDefault(),l.stopPropagation(),t.goToOption(k.First);case $.PageUp:return o.value=!1,l.preventDefault(),l.stopPropagation(),t.goToOption(k.First);case $.End:if(l.shiftKey)break;return o.value=!1,l.preventDefault(),l.stopPropagation(),t.goToOption(k.Last);case $.PageDown:return o.value=!1,l.preventDefault(),l.stopPropagation(),t.goToOption(k.Last);case $.Escape:if(o.value=!1,t.comboboxState.value!==0)return;l.preventDefault(),t.optionsRef.value&&!t.optionsPropsRef.value.static&&l.stopPropagation(),t.nullable.value&&t.mode.value===0&&t.value.value===null&&r(),t.closeCombobox();break;case $.Tab:if(o.value=!1,t.comboboxState.value!==0)return;t.mode.value===0&&t.selectActiveOption(),t.closeCombobox();break}}function F(l){P("change",l),t.nullable.value&&t.mode.value===0&&l.target.value===""&&r(),t.openCombobox()}function B(){o.value=!1}let y=m(()=>{var l,O,h,A;return(A=(h=(O=a.defaultValue)!=null?O:t.defaultValue.value!==void 0?(l=a.displayValue)==null?void 0:l.call(a,t.defaultValue.value):null)!=null?h:t.defaultValue.value)!=null?A:""});return()=>{var l,O,h,A,R,v;let D={open:t.comboboxState.value===0},{id:N,displayValue:u,onChange:d,...c}=a,i={"aria-controls":(l=t.optionsRef.value)==null?void 0:l.id,"aria-expanded":t.comboboxState.value===0,"aria-activedescendant":t.activeOptionIndex.value===null||(O=t.options.value[t.activeOptionIndex.value])==null?void 0:O.id,"aria-labelledby":(R=(h=I(t.labelRef))==null?void 0:h.id)!=null?R:(A=I(t.buttonRef))==null?void 0:A.id,"aria-autocomplete":"list",id:N,onCompositionstart:p,onCompositionend:s,onKeydown:S,onInput:F,onBlur:B,role:"combobox",type:(v=w.type)!=null?v:"text",tabIndex:0,ref:t.inputRef,defaultValue:y.value,disabled:t.disabled.value===!0?!0:void 0};return Y({ourProps:i,theirProps:c,slot:D,attrs:w,slots:V,features:X.RenderStrategy|X.Static,name:"ComboboxInput"})}}}),Me=Q({name:"ComboboxOptions",props:{as:{type:[Object,String],default:"ul"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},hold:{type:[Boolean],default:!1}},setup(a,{attrs:P,slots:w,expose:V}){let e=W("ComboboxOptions"),t=`headlessui-combobox-options-${te()}`;V({el:e.optionsRef,$el:e.optionsRef}),le(()=>{e.optionsPropsRef.value.static=a.static}),le(()=>{e.optionsPropsRef.value.hold=a.hold});let x=he(),o=m(()=>x!==null?(x.value&Z.Open)===Z.Open:e.comboboxState.value===0);return Se({container:m(()=>I(e.optionsRef)),enabled:m(()=>e.comboboxState.value===0),accept(r){return r.getAttribute("role")==="option"?NodeFilter.FILTER_REJECT:r.hasAttribute("role")?NodeFilter.FILTER_SKIP:NodeFilter.FILTER_ACCEPT},walk(r){r.setAttribute("role","none")}}),()=>{var r,f,n;let p={open:e.comboboxState.value===0},s={"aria-labelledby":(n=(r=I(e.labelRef))==null?void 0:r.id)!=null?n:(f=I(e.buttonRef))==null?void 0:f.id,id:t,ref:e.optionsRef,role:"listbox","aria-multiselectable":e.mode.value===1?!0:void 0},S=se(a,["hold"]);return Y({ourProps:s,theirProps:S,slot:p,attrs:P,slots:w,features:X.RenderStrategy|X.Static,visible:o.value,name:"ComboboxOptions"})}}}),re=Q({name:"ComboboxOption",props:{as:{type:[Object,String],default:"li"},value:{type:[Object,String,Number,Boolean]},disabled:{type:Boolean,default:!1}},setup(a,{slots:P,attrs:w,expose:V}){let e=W("ComboboxOption"),t=`headlessui-combobox-option-${te()}`,x=T(null);V({el:x,$el:x});let o=m(()=>e.activeOptionIndex.value!==null?e.options.value[e.activeOptionIndex.value].id===t:!1),r=m(()=>L(e.mode.value,{0:()=>e.compare(g(e.value.value),g(a.value)),1:()=>g(e.value.value).some(y=>e.compare(g(y),g(a.value)))})),f=m(()=>({disabled:a.disabled,value:a.value,domRef:x}));oe(()=>e.registerOption(t,f)),Fe(()=>e.unregisterOption(t)),le(()=>{e.comboboxState.value===0&&o.value&&e.activationTrigger.value!==0&&K(()=>{var y,l;return(l=(y=I(x))==null?void 0:y.scrollIntoView)==null?void 0:l.call(y,{block:"nearest"})})});function n(y){if(a.disabled)return y.preventDefault();e.selectOption(t),e.mode.value===0&&e.closeCombobox(),Ve()||requestAnimationFrame(()=>{var l;return(l=I(e.inputRef))==null?void 0:l.focus()})}function p(){if(a.disabled)return e.goToOption(k.Nothing);e.goToOption(k.Specific,t)}let s=ge();function S(y){s.update(y)}function F(y){s.wasMoved(y)&&(a.disabled||o.value||e.goToOption(k.Specific,t,0))}function B(y){s.wasMoved(y)&&(a.disabled||o.value&&(e.optionsPropsRef.value.hold||e.goToOption(k.Nothing)))}return()=>{let{disabled:y}=a,l={active:o.value,selected:r.value,disabled:y},O={id:t,ref:x,role:"option",tabIndex:y===!0?void 0:-1,"aria-disabled":y===!0?!0:void 0,"aria-selected":r.value,disabled:void 0,onClick:n,onFocus:p,onPointerenter:S,onMouseenter:S,onPointermove:F,onMousemove:F,onPointerleave:B,onMouseleave:B};return Y({ourProps:O,theirProps:a,slot:l,attrs:w,slots:P,name:"ComboboxOption"})}}});const qe={for:"name",class:"block text-sm leading-6 text-gray-900"},Ue={class:"relative"},Ke={key:0,class:"relative cursor-default select-none py-2 px-4 text-gray-700"},He={key:1,class:"relative cursor-default select-none py-2 px-4 text-gray-700"},ze={key:0,class:"form-error text-[#b91c1c] text-xs"},et={__name:"FormSelectCombo",props:{modelValue:Object,name:String,className:String,placeholder:{type:String,default:"Select option"},options:{type:Array,default:()=>[]},loadOptions:Function,createOption:Function,error:String},emits:["update:modelValue"],setup(a,{emit:P}){const w=P,V=a,e=T([]),t=T(!1),x=m(()=>o.value===""?null:{missing:!0,label:o.value});let o=T("");ee(o,n=>{V.loadOptions&&(t.value=!0,V.loadOptions(n,p=>{e.value=Object.values(p).map(s=>({value:s.id,label:`${s.first_name} ${s.last_name}`})),t.value=!1}))},{immediate:!0});let r=m(()=>o.value===""?e.value:e.value.filter(n=>n.label.toLowerCase().replace(/\s+/g,"").includes(o.value.toLowerCase().replace(/\s+/g,""))));function f(n){w("update:modelValue",n),V.createOption&&(n!=null&&n.missing)&&(t.value=!0,V.createOption(n,p=>{w("update:modelValue",p),t.value=!1}))}return(n,p)=>(j(),_("div",{class:z(a.className)},[M("label",qe,q(a.name),1),M("div",null,[U(E(je),{by:"value","model-value":V.modelValue,"onUpdate:modelValue":f},{default:H(()=>[M("div",Ue,[M("div",{class:z(["relative w-full cursor-default overflow-hidden rounded-lg bg-white text-left ring-1 shadow-sm focus:outline-none focus-visible:ring-2 focus-visible:ring-white focus-visible:ring-opacity-75 focus-visible:ring-offset-2 focus-visible:ring-offset-teal-300 sm:text-sm",a.error?"ring-[#b91c1c]":"ring-gray-300"])},[U(E(_e),{class:"w-full border-none py-2 pl-3 pr-10 text-sm leading-5 text-gray-900 focus:outline-none focus:ring-0",displayValue:s=>s==null?void 0:s.label,onChange:p[0]||(p[0]=s=>ue(o)?o.value=s.target.value:o=s.target.value)},null,8,["displayValue"]),U(E(Le),{class:"absolute inset-y-0 right-0 flex items-center pr-2"},{default:H(()=>[U(E(Ie),{class:"h-5 w-5 text-gray-400","aria-hidden":"true"})]),_:1})],2),U(E(ke),{leave:"transition ease-in duration-100",leaveFrom:"opacity-100",leaveTo:"opacity-0",onAfterLeave:p[1]||(p[1]=s=>ue(o)?o.value="":o="")},{default:H(()=>[U(E(Me),{class:"absolute z-50 mt-1 max-h-60 w-full overflow-auto rounded-md bg-white py-1 text-base shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none sm:text-sm"},{default:H(()=>[E(r).length===0&&!t.value&&!x.value&&!V.createOption?(j(),_("div",Ke,q(n.$t("Nothing found")),1)):G("",!0),t.value?(j(),_("div",He,q(n.$t("Loading...")),1)):G("",!0),t.value?G("",!0):(j(),_(ae,{key:2},[x.value&&!E(r).length&&V.createOption?(j(),ie(E(re),{key:0,as:"template",value:x.value},{default:H(({active:s})=>[M("li",{class:z(["relative cursor-default select-none py-2 pl-10 pr-4",{"bg-teal-600 text-white":s,"text-gray-900":!s}])},q(n.$t("Create"))+' "'+q(x.value.label)+'" ',3)]),_:1},8,["value"])):G("",!0),(j(!0),_(ae,null,Ee(E(r),s=>(j(),ie(E(re),{as:"template",key:s.value,value:s},{default:H(({selected:S,active:F})=>[M("li",{class:z(["relative cursor-default select-none py-2 pl-10 pr-4",{"bg-teal-600 text-white":F,"text-gray-900":!F}])},[M("span",{class:z(["block truncate",{"font-medium":S,"font-normal":!S}])},q(s.label),3),S?(j(),_("span",{key:0,class:z(["absolute inset-y-0 left-0 flex items-center pl-3",{"text-white":F,"text-teal-600":!F}])},[U(E(Pe),{class:"h-5 w-5","aria-hidden":"true"})],2)):G("",!0)],2)]),_:2},1032,["value"]))),128))],64))]),_:1})]),_:1})])]),_:1},8,["model-value"])]),a.error?(j(),_("div",ze,q(a.error),1)):G("",!0)],2))}};export{et as _};