manolis-ui 0.6.7 → 0.6.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -43,4 +43,4 @@
43
43
  *
44
44
  * This source code is licensed under the ISC license.
45
45
  * See the LICENSE file in the root directory of this source tree.
46
- */const me=F("SunIcon",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]),pe=(r,i)=>{const t=e.ref(null);return e.onMounted(()=>{if(typeof window<"u"){const l=window.localStorage.getItem(r);t.value=l?JSON.parse(l):i}}),e.watch(t,l=>{typeof window<"u"&&window.localStorage.setItem(r,JSON.stringify(l))}),t},ue={class:"swap-rotate swap"},fe=["true-value","false-value"],ge=e.defineComponent({__name:"theme-controller",props:{lightTheme:{default:"light"},darkTheme:{default:"dark"}},setup(r){const i=r,t=pe("theme",i.lightTheme);function l(n){typeof window<"u"&&window.document&&document.documentElement.setAttribute("data-theme",n)}return e.onMounted(()=>l(t.value?t.value:"")),e.watch(t,n=>{l(n)}),(n,o)=>(e.openBlock(),e.createElementBlock("label",ue,[e.withDirectives(e.createElementVNode("input",{type:"checkbox",class:"theme-controller","onUpdate:modelValue":o[0]||(o[0]=a=>e.isRef(t)?t.value=a:null),"true-value":i.lightTheme,"false-value":i.darkTheme},null,8,fe),[[e.vModelCheckbox,e.unref(t)]]),e.createVNode(e.unref(me),{class:"swap-off fill-current"}),e.createVNode(e.unref(de),{class:"swap-on fill-current"})]))}}),he=["name"],ke={class:"collapse-title font-bold text-2xl lg:text-4xl"},be={class:"collapse-content"},ye=["innerHTML"],we=e.defineComponent({__name:"accordion",props:{name:{},items:{},joinItems:{type:Boolean,default:!1},icon:{}},setup(r){const i=r;return(t,l)=>(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.items,(n,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["collapse border border-base-300",[t.icon?`collapse-${t.icon}`:"",{"join-item":t.joinItems}]]),key:o},[e.createElementVNode("input",{type:"radio",name:t.name,value:"true"},null,8,he),e.createElementVNode("div",ke,e.toDisplayString(n.title),1),e.createElementVNode("div",be,[e.createElementVNode("span",{innerHTML:n.content},null,8,ye)])],2))),128))}}),Be=["src"],Ee={class:"text-xl"},Ve=e.defineComponent({__name:"avatar",props:{image:{},onlineStatus:{default:"none"},initials:{},fullyRounded:{type:Boolean,default:!1}},setup(r){const i=r,t=e.ref(i.onlineStatus);return e.watch(()=>i.onlineStatus,l=>{l&&(t.value=l)}),(l,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["avatar",[{"avatar-online":t.value==="online"},{"avatar-offline":t.value==="offline"}]])},[l.image?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["rounded",[{"rounded-full":l.fullyRounded},{rounded:!l.fullyRounded}]])},[e.createElementVNode("img",{src:l.image,class:"w-full h-full"},null,8,Be)],2)):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["flex justify-center bg-neutral p-[25%] rounded w-16 text-neutral-content text-center",[{"rounded-full":l.fullyRounded},{rounded:!l.fullyRounded}]])},[e.createElementVNode("p",Ee,e.toDisplayString(l.initials),1)],2))],2))}}),Se=e.defineComponent({__name:"badge",props:{color:{default:"neutral"},outline:{type:Boolean,default:!1},size:{default:"medium"}},setup(r){const i=r,t={"extra small":"badge-xs",small:"badge-sm",medium:"badge-md",large:"badge-lg"},l={neutral:"badge-neutral",primary:"badge-primary",secondary:"badge-secondary",accent:"badge-accent",ghost:"badge-ghost",info:"badge-info",success:"badge-success",warning:"badge-warning",error:"badge-error"};return(n,o)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(["badge",t[i.size],l[i.color],{"badge-outline":i.outline}])},[e.renderSlot(n.$slots,"default")],2))}}),Ce=["src","alt"],$e={key:0,class:"card-body"},_e={key:0,class:"group-hover:text-primary text-lg text-left cursor-pointer card-title"},Ne={key:1,class:"text-left"},De={class:"flex-col flex-nowrap mt-auto card-actions"},xe={key:1,class:"card-body"},Me=e.defineComponent({__name:"card",props:{imgUrl:{default:""},alt:{default:"A beautiful picture that says something about this card"},title:{default:""},description:{default:""},outlined:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},class:{default:""},background:{default:"bg-base-100"},color:{default:""},imgHeight:{default:"h-44"}},setup(r){const i=r,t=e.ref(i.outlined);return e.watch(()=>i.outlined,l=>{t.value=l}),(l,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["group bg-base-100 shadow-xl rounded-sm min-w-64 max-w-full h-full card card-compact",[{"border-4 border-primary":t.value},l.color??"",l.background]])},[e.createElementVNode("figure",null,[l.imgUrl||l.imgUrl&&!l.loading?(e.openBlock(),e.createElementBlock("img",{key:0,src:l.imgUrl,alt:l.alt,class:e.normalizeClass(["rounded-sm w-full object-cover",[{hidden:l.loading},l.imgHeight]])},null,10,Ce)):e.createCommentVNode("",!0),l.loading&&l.imgUrl?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["w-full skeleton",l.imgHeight])},null,2)):e.createCommentVNode("",!0)]),l.loading?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",$e,[l.title?(e.openBlock(),e.createElementBlock("h2",_e,e.toDisplayString(l.title),1)):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"details"),l.description?(e.openBlock(),e.createElementBlock("p",Ne,e.toDisplayString(l.description),1)):e.createCommentVNode("",!0),e.createElementVNode("div",De,[e.renderSlot(l.$slots,"actions")])])),l.loading?(e.openBlock(),e.createElementBlock("div",xe,n[0]||(n[0]=[e.createElementVNode("div",{class:"flex flex-col gap-4 w-52"},[e.createElementVNode("div",{class:"w-28 h-4 skeleton"}),e.createElementVNode("div",{class:"w-full h-4 skeleton"}),e.createElementVNode("div",{class:"w-full h-4 skeleton"})],-1)]))):e.createCommentVNode("",!0)],2))}}),H=Symbol("CarouselItemStyle"),Te={class:"relative h-full"},Ie={key:0,class:"top-1/2 right-5 left-5 z-10 absolute flex justify-between -translate-y-1/2 transform"},ze={key:1,class:"bottom-5 z-10 absolute flex justify-center gap-2 py-2 w-full"},Le=["onClick","aria-label"],Oe=e.defineComponent({__name:"carousel",props:{showIndicators:{type:Boolean,default:!0},showNavigationButtons:{type:Boolean,default:!0},sliderOrientation:{type:String,default:"horizontal",required:!1,validator:r=>r=="horizontal"||r=="vertical"},initialSlide:{type:Number,default:0},slidesPerView:{type:Number,default:1,validator:r=>r>=1},gap:{type:Number,default:0,validator:r=>r>=0},slideDuration:{type:Number,default:300,validator:r=>r>=0}},setup(r,{expose:i}){const t=r,l=e.ref(t.initialSlide),n=e.ref(null),o=e.ref(!1),a=e.ref(0),g=e.computed(()=>({width:`calc((100% - ${t.slidesPerView>1?(t.slidesPerView-1)*t.gap:0}px) / ${t.slidesPerView})`}));e.provide(H,g);const c=()=>{n.value?a.value=n.value.children.length:a.value=0},d=async u=>{if(!n.value||t.slidesPerView<=0||o.value||(c(),a.value===0))return;const h=(u%a.value+a.value)%a.value,k=n.value,B=t.sliderOrientation==="vertical"?(k.offsetHeight-(t.slidesPerView-1)*t.gap)/t.slidesPerView:(k.offsetWidth-(t.slidesPerView-1)*t.gap)/t.slidesPerView;if(B<=0)return;const w=B+t.gap,V=h*w,C=t.sliderOrientation==="vertical"?k.scrollHeight-k.offsetHeight:k.scrollWidth-k.offsetWidth,T=Math.max(0,Math.min(V,C+.5));o.value=!0,k.style.scrollBehavior="auto";const z=t.sliderOrientation==="vertical"?k.scrollTop:k.scrollLeft,I=T-z;if(Math.abs(I)<1){o.value=!1,l.value=h;return}const y=performance.now(),_=S=>{const N=S-y,D=Math.min(1,N/t.slideDuration),P=D<.5?4*D*D*D:1-Math.pow(-2*D+2,3)/2,j=z+I*P;t.sliderOrientation==="vertical"?k.scrollTop=j:k.scrollLeft=j,D<1?requestAnimationFrame(_):(t.sliderOrientation==="vertical"?k.scrollTop=T:k.scrollLeft=T,l.value=h,o.value=!1)};requestAnimationFrame(_)},b=()=>{d(l.value+1)},$=()=>{d(l.value-1)},M=u=>{d(u)},p=()=>{if(!n.value||t.slidesPerView<=0||(c(),a.value===0))return;const u=n.value,h=t.sliderOrientation==="vertical"?u.offsetHeight:u.offsetWidth,k=t.slidesPerView>1?(t.slidesPerView-1)*t.gap:0,B=(h-k)/t.slidesPerView;if(B<=0)return;const w=Math.max(0,a.value-t.slidesPerView),V=Math.min(Math.max(0,t.initialSlide),w),C=V*(B+t.gap),T=t.sliderOrientation==="vertical"?u.scrollHeight-u.offsetHeight:u.scrollWidth-u.offsetWidth,z=Math.max(0,Math.min(C,T+.5));t.sliderOrientation==="vertical"?u.scrollTo({top:z,behavior:"auto"}):u.scrollTo({left:z,behavior:"auto"}),l.value=V};return e.onMounted(()=>{requestAnimationFrame(()=>{requestAnimationFrame(p)}),c()}),e.watch(()=>t.initialSlide,u=>{requestAnimationFrame(()=>d(u))}),e.watch(()=>[t.slidesPerView,t.gap],()=>{requestAnimationFrame(()=>{requestAnimationFrame(()=>{if(c(),a.value===0)return;const u=Math.max(0,a.value-t.slidesPerView),h=Math.min(l.value,u),k=t.slideDuration;t.slideDuration=0,d(h),t.slideDuration=k})})}),i({scrollToSlide:d}),(u,h)=>(e.openBlock(),e.createElementBlock("div",Te,[e.createElementVNode("div",{ref_key:"carouselContainer",ref:n,class:e.normalizeClass(["rounded w-full h-full overflow-x-scroll scroll-smooth carousel",[{"carousel-horizontal md:snap-none":r.sliderOrientation=="horizontal"},{"carousel-vertical":r.sliderOrientation=="vertical"}]]),style:e.normalizeStyle({gap:`${r.gap}px`})},[e.renderSlot(u.$slots,"default",{},void 0,!0)],6),r.showNavigationButtons?(e.openBlock(),e.createElementBlock("div",Ie,[e.createElementVNode("div",{onClick:$,role:"button","aria-label":"Previous Slide"},[e.renderSlot(u.$slots,"prevButton",{},()=>[h[0]||(h[0]=e.createElementVNode("button",{class:"btn btn-circle",tabindex:"-1"},"❮",-1))],!0)]),e.createElementVNode("div",{onClick:b,role:"button","aria-label":"Next Slide"},[e.renderSlot(u.$slots,"nextButton",{},()=>[h[1]||(h[1]=e.createElementVNode("button",{class:"btn btn-circle",tabindex:"-1"},"❯",-1))],!0)])])):e.createCommentVNode("",!0),r.showIndicators?(e.openBlock(),e.createElementBlock("div",ze,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(k,B)=>(e.openBlock(),e.createElementBlock("button",{key:`dot-${B}`,onClick:w=>M(B),class:e.normalizeClass(["btn btn-circle btn-xs",{"btn-active":B===l.value}]),"aria-label":`Go to slide ${B+1}`},null,10,Le))),128))])):e.createCommentVNode("",!0)]))}}),O=(r,i)=>{const t=r.__vccOpts||r;for(const[l,n]of i)t[l]=n;return t},Fe=O(Oe,[["__scopeId","data-v-db55a6a5"]]),Pe=O(e.defineComponent({__name:"carouselItem",setup(r){const i=e.inject(H,e.ref({}));return(t,l)=>(e.openBlock(),e.createElementBlock("div",{class:"w-full h-full carousel-item",style:e.normalizeStyle(e.unref(i))},[e.renderSlot(t.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-507384bc"]]),Ae={class:"flex gap-4 bg-base-100 w-full tabs tabs-boxed"},Ue=["onClick"],je={class:"text-sm"},Re={class:"md:block hidden opacity-35 text-xs truncate overflow-hidden ..."},qe={class:"hidden"},He={id:"advancedSearchMobile",class:"modal"},We={class:"modal-box"},Ke={class:"font-bold text-lg"},Ye=["checked"],Je={class:"flex justify-between items-center pr-4 w-full font-medium text-xl collapse-title"},Ge={class:"text-sm"},Xe={class:"flex place-content-center p-0 collapse-content"},Ze=O(e.defineComponent({__name:"advancedSearch",props:{searchOptions:{},currentCategory:{}},emits:["search","update:search-data"],setup(r,{emit:i}){const t=r,l=i,n=e.ref(null),o={datetime:e.defineAsyncComponent(()=>Promise.resolve().then(()=>wt))},a=e.ref({}),g=e.ref({left:"0px",top:"0px",transform:"translateX(0%)"}),c=e.ref(null);function d(u,h){var k,B,w;if((k=n.value)!=null&&k.name){l("update:search-data",{tab:n.value.name,data:u});return}if(t.searchOptions){let V=(w=(B=t.searchOptions)==null?void 0:B.find(C=>(C==null?void 0:C.category)===t.currentCategory))==null?void 0:w.tabs[h];V!==void 0&&(V.value=u,l("update:search-data",{tab:V==null?void 0:V.name,data:V==null?void 0:V.value}))}}function b(){l("search")}async function $(u){c.value&&!c.value.contains(u.target)&&(await e.nextTick(),n.value=null)}async function M(){if(typeof window<"u"&&window.innerWidth<=768){const u=document.getElementById("advancedSearchMobile");u?u.showModal():console.warn("Modal element not found.")}}async function p(u){var k;n.value=u,await e.nextTick();const h=a.value[u.name];if(h){const B=h.getBoundingClientRect(),w=((k=c.value)==null?void 0:k.getBoundingClientRect())||{left:0,top:0};window.innerWidth>768?g.value={left:`${B.left+B.width/2-w.left}px`,top:`${B.bottom-w.top}px`,transform:"translateX(-50%)"}:g.value={left:"50%",top:`${B.bottom-w.top}px`,transform:"translateX(-50%)"}}else console.error("Tab element not found for:",u.name)}return e.onMounted(()=>{document.addEventListener("click",$)}),e.onBeforeUnmount(()=>{document.removeEventListener("click",$)}),(u,h)=>{var k,B;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{ref_key:"searchContainer",ref:c,class:"w-full"},[e.createElementVNode("div",{class:"group/search relative flex place-items-center border-2 shadow-md p-2 border-base-300/25 rounded-sm w-full transition-all cursor-pointer md:cursor-auto",onClick:M},[e.createElementVNode("div",Ae,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(((k=t.searchOptions.find(w=>w.category===t.currentCategory))==null?void 0:k.tabs)||[],w=>{var V;return e.openBlock(),e.createElementBlock("button",{key:w.name,onClick:C=>p(w),class:e.normalizeClass([{"tab-active":((V=n.value)==null?void 0:V.name)===w.name},"group/searchitem relative after:top-0 after:-right-2 after:absolute first-of-type:flex-auto last-of-type:flex-auto md:after:content-[''] last-of-type:after:content-none after:content-none after:bg-base-200 hover:bg-base-200 p-1 rounded-sm w-auto after:w-[1px] after:h-10 text-start overflow-x-hidden pointer-events-none md:pointer-events-auto"]),ref_for:!0,ref:C=>a.value[w.name]=C},[e.createElementVNode("p",je,e.toDisplayString(w.name),1),e.createElementVNode("p",Re,e.toDisplayString(w.description),1)],10,Ue)}),128))]),n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"absolute flex shadow-sm mt-4 w-fit max-w-full transition-all tab-content",style:e.normalizeStyle(g.value)},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o[n.value.type]),e.mergeProps(n.value.props?n.value.props:null,{onUpdated:d}),null,16))],4)):e.createCommentVNode("",!0),e.createElementVNode("button",{title:"search",type:"submit",class:"ml-1 btn btn-primary btn-square",onClick:b},[e.createVNode(e.unref(q),{size:24,color:"white"})])]),e.createElementVNode("div",qe,[e.createElementVNode("button",{title:"search",onClick:h[0]||(h[0]=()=>{})},[e.createVNode(e.unref(q),{size:24,color:"white"})])])],512),e.createElementVNode("dialog",He,[e.createElementVNode("div",We,[e.renderSlot(u.$slots,"additionalForMobile",{},()=>[e.createElementVNode("h3",Ke,e.toDisplayString(u.currentCategory),1)],!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(((B=t.searchOptions.find(w=>w.category===t.currentCategory))==null?void 0:B.tabs)||[],(w,V)=>(e.openBlock(),e.createElementBlock("div",{class:"bg-base-200 my-4 collapse",key:w.name},[e.createElementVNode("input",{type:"radio",name:"my-accordion-1",checked:V===0},null,8,Ye),e.createElementVNode("div",Je,[e.createTextVNode(e.toDisplayString(w.name)+" ",1),e.createElementVNode("p",Ge,e.toDisplayString(w.description),1)]),e.createElementVNode("div",Xe,[h[1]||(h[1]=e.createElementVNode("br",null,null,-1)),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o[w.type]),e.mergeProps({ref_for:!0},w.props||{},{onUpdated:C=>d(C,V)}),null,16,["onUpdated"]))])]))),128)),e.createElementVNode("div",{class:"modal-action"},[e.createElementVNode("form",{method:"dialog"},[e.createElementVNode("button",{class:"btn btn-primary",onClick:b},"Close and Search")])])])])],64)}}}),[["__scopeId","data-v-08fa37eb"]]),Qe=["placeholder","value","id"],ve={class:"btn btn-ghost"},et=["id"],tt={key:0,class:"flex justify-between items-center place-content-center mb-4"},lt=["value"],nt=["value"],ot={key:1,class:"gap-2 grid grid-cols-7"},at=["onClick"],rt={key:2,class:"mt-4 lg:w-80"},st={key:0,class:"mb-2 font-bold text-lg"},it={key:1},ct={key:1,class:"flex gap-4"},dt=["value"],mt=["value"],pt={key:2,class:"flex flex-col gap-4"},ut={key:1,class:"flex gap-2"},ft=["value"],gt=["value"],ht={key:1,class:"flex gap-2"},kt=["value"],bt=["value"],yt={class:"flex gap-2 mt-4"},W=O({__name:"datetimePicker",props:{mode:{type:String,default:"datetime",validator:r=>["datetime","date","time"].includes(r)},range:{type:Boolean,default:!1},placeholder:{type:String,default:"Select date and time"},popup:{type:Boolean,default:!1},id:{type:String,default:"datetimepicker"},initialDate:{type:Object,default:()=>null}},emits:["updated"],setup(r,{emit:i}){const t=r;e.watch(()=>t.range,m=>{m?(o.value={start:null,end:null},a.value={start:null,end:null}):(o.value=null,a.value=null)});const l=i,n=e.ref(!1),o=e.ref(t.range?{start:null,end:null}:null),a=e.ref(t.range?{start:null,end:null}:null),g=e.ref(new Date().toLocaleString("default",{month:"long"})),c=e.ref(new Date().getFullYear()),d=e.ref(t.range?{start:0,end:0}:0),b=e.ref(t.range?{start:0,end:0}:0),$=e.ref(null),M=e.computed(()=>`${t.id}-input`),p=e.computed(()=>`${t.id}-popup`),u=e.computed(()=>t.mode==="date"||t.mode==="datetime"),h=e.computed(()=>t.mode==="time"||t.mode==="datetime");e.computed(()=>new Date(c.value,k.value));const k=e.computed(()=>y.indexOf(g.value)),B=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],w=e.computed(()=>new Date(c.value,k.value).getDay()),V=e.computed(()=>{const m=new Date(c.value,k.value+1,0).getDate();return Array.from({length:m},(f,s)=>new Date(c.value,k.value,s+1))}),C=e.computed(()=>Array.from({length:w.value},(m,f)=>f)),T=Array.from({length:24},(m,f)=>f),z=Array.from({length:60},(m,f)=>f),I=e.computed(()=>typeof navigator<"u"&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)),y=["January","February","March","April","May","June","July","August","September","October","November","December"],_=e.computed(()=>{const m=new Date().getFullYear();return Array.from({length:100},(f,s)=>m-50+s)}),S=e.computed(()=>{if(!u.value||!o.value)return"";if(t.range&&o.value.start&&o.value.end){const m=o.value.start.toLocaleDateString("en-US"),f=o.value.end.toLocaleDateString("en-US");return`${m} - ${f}`}return!t.range&&o.value?o.value.toLocaleDateString("en-US"):""}),N=m=>m instanceof Date?m:new Date(m),D=m=>m instanceof Date&&!isNaN(m),P=e.computed(()=>{if(!h.value)return"";const m=f=>{var R,A,J;const s=((R=d.value)==null?void 0:R[f])??d.value,L=((A=b.value)==null?void 0:A[f])??b.value;return I.value?((J=a.value)==null?void 0:J[f])??a.value:`${s.toString().padStart(2,"0")}:${L.toString().padStart(2,"0")}`};return t.range?`${m("start")} - ${m("end")}`:m()}),j=e.computed(()=>{const m=S.value,f=P.value;return`${m} ${f}`.trim()}),Il=()=>n.value=!n.value,K=()=>{x(),zl()},zl=()=>n.value=!1,Ll=()=>{o.value=t.range?{start:null,end:null}:null,a.value=t.range?{start:null,end:null}:null,x()},Ol=m=>{t.range?o.value.start&&o.value.end?o.value={start:m,end:null}:o.value.start?o.value.end=m:o.value.start=m:o.value=m,x()},Fl=m=>(m=N(m),t.range?o.value.start&&D(o.value.start)&&m.getTime()===o.value.start.getTime()||o.value.end&&D(o.value.end)&&m.getTime()===o.value.end.getTime():D(o.value)&&m.getTime()===o.value.getTime()),Pl=m=>{m=N(m);const f=new Date;return m.getDate()===f.getDate()&&m.getMonth()===f.getMonth()&&m.getFullYear()===f.getFullYear()},Al=m=>(m=N(m),t.range&&D(o.value.start)&&m.getTime()===o.value.start.getTime()),Ul=m=>(m=N(m),t.range&&D(o.value.end)&&m.getTime()===o.value.end.getTime()),jl=m=>{if(m=N(m),t.range&&D(o.value.start)&&D(o.value.end)){const f=o.value.start.getTime(),s=o.value.end.getTime(),L=m.getTime();return L>f&&L<s}return!1},Rl=()=>{let m=k.value-1;m<0&&(m=11,c.value--),g.value=y[m],x()},ql=()=>{let m=k.value+1;m>11&&(m=0,c.value++),g.value=y[m],x()},Y=m=>{$.value&&!$.value.contains(m.target)&&n.value==!0&&K()},x=()=>{let m={};const f=(s,L,R)=>{s instanceof Date&&!isNaN(s)||(s=new Date);const A=new Date(s);return A.setUTCHours(L,R,0,0),A.toISOString()};t.range?(m.from=f(o.value.start,d.value.start,b.value.start),m.to=f(o.value.end,d.value.end,b.value.end)):m=f(o.value,d.value,b.value),l("updated",m)};return e.onMounted(()=>{t.initialDate&&(t.range&&t.initialDate.start&&t.initialDate.end?o.value={start:new Date(t.initialDate.start),end:new Date(t.initialDate.end)}:t.initialDate.start&&(o.value={start:new Date(t.initialDate.start)})),t.range?(d.value.start=d.value.start??new Date().getHours(),d.value.end=d.value.end??new Date().getHours(),b.value.start=b.value.start??new Date().getMinutes(),b.value.end=b.value.end??new Date().getMinutes()):(d.value=d.value??new Date().getHours(),b.value=b.value??new Date().getMinutes())}),t.popup&&e.onMounted(()=>document.addEventListener("click",Y)),e.onUnmounted(()=>document.removeEventListener("click",Y)),(m,f)=>(e.openBlock(),e.createElementBlock("div",{class:"inline-block relative w-full lg:w-[360px]",ref_key:"pickerContainer",ref:$},[e.createElementVNode("div",{class:"flex items-center gap-2 cursor-pointer",onClick:Il},[r.popup?e.renderSlot(m.$slots,"default",{key:0},()=>[e.createElementVNode("input",{type:"text",class:"input-bordered w-full cursor-pointer input",placeholder:r.placeholder,value:j.value,readonly:"",id:M.value},null,8,Qe),e.createElementVNode("button",ve,[e.createVNode(e.unref(ie))])],!0):e.createCommentVNode("",!0)]),n.value||!r.popup?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["z-50 lg:bg-base-100 md:mt-2 md:p-4 px-4 rounded-md w-full",[{absolute:r.popup}]]),id:p.value},[u.value?(e.openBlock(),e.createElementBlock("div",tt,[e.createElementVNode("button",{class:"hidden md:block btn-outline btn btn-primary md:btn-sm",onClick:Rl},f[11]||(f[11]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 19l-7-7 7-7"})],-1)])),e.withDirectives(e.createElementVNode("select",{class:"border-none w-fit select","onUpdate:modelValue":f[0]||(f[0]=s=>g.value=s),onChange:x},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(y,(s,L)=>e.createElementVNode("option",{key:L,value:s},e.toDisplayString(s),9,lt)),64))],544),[[e.vModelSelect,g.value]]),e.withDirectives(e.createElementVNode("select",{class:"border-none w-24 select","onUpdate:modelValue":f[1]||(f[1]=s=>c.value=s),onChange:x},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(_.value,s=>(e.openBlock(),e.createElementBlock("option",{key:s,value:s},e.toDisplayString(s),9,nt))),128))],544),[[e.vModelSelect,c.value]]),e.createElementVNode("button",{class:"hidden md:block btn-outline btn btn-primary md:btn-sm",onClick:ql},f[12]||(f[12]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 5l7 7-7 7"})],-1)]))])):e.createCommentVNode("",!0),u.value?(e.openBlock(),e.createElementBlock("div",ot,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(B,s=>e.createElementVNode("div",{key:s,class:"text-center"},e.toDisplayString(s),1)),64)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,s=>(e.openBlock(),e.createElementBlock("div",{key:s,class:"text-center"}))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,s=>(e.openBlock(),e.createElementBlock("div",{key:s,class:e.normalizeClass(["hover:bg-primary-10 py-1 rounded-full text-center cursor-pointer",{"bg-primary text-primary-content":Fl(s),today:Pl(s),"range-start bg-primary text-primary-content":Al(s),"range-end bg-primary text-primary-content":Ul(s),"in-range bg-primary/20 hover:bg-primary/10":jl(s)}]),onClick:L=>Ol(s)},e.toDisplayString(s.getDate()),11,at))),128))])):e.createCommentVNode("",!0),h.value?(e.openBlock(),e.createElementBlock("div",rt,[t.range?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("h3",st,"Select Time")),t.range?(e.openBlock(),e.createElementBlock("div",pt,[e.createElementVNode("div",null,[f[13]||(f[13]=e.createElementVNode("p",{class:"font-bold"},"Start Time",-1)),I.value?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,type:"time",class:"input-bordered w-full input","onUpdate:modelValue":f[5]||(f[5]=s=>a.value.start=s),onChange:x},null,544)),[[e.vModelText,a.value.start]]):(e.openBlock(),e.createElementBlock("div",ut,[e.withDirectives(e.createElementVNode("select",{class:"w-full select-bordered select","onUpdate:modelValue":f[6]||(f[6]=s=>d.value.start=s),onChange:x},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(T),s=>(e.openBlock(),e.createElementBlock("option",{key:s,value:s},e.toDisplayString(s.toString().padStart(2,"0")),9,ft))),128))],544),[[e.vModelSelect,d.value.start,void 0,{number:!0}]]),e.withDirectives(e.createElementVNode("select",{class:"w-full select-bordered select","onUpdate:modelValue":f[7]||(f[7]=s=>b.value.start=s),onChange:x},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(z),s=>(e.openBlock(),e.createElementBlock("option",{key:s,value:s},e.toDisplayString(s.toString().padStart(2,"0")),9,gt))),128))],544),[[e.vModelSelect,b.value.start,void 0,{number:!0}]])]))]),e.createElementVNode("div",null,[f[14]||(f[14]=e.createElementVNode("p",{class:"font-bold"},"End Time",-1)),I.value?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,type:"time",class:"input-bordered w-full input","onUpdate:modelValue":f[8]||(f[8]=s=>a.value.end=s),onChange:x},null,544)),[[e.vModelText,a.value.end]]):(e.openBlock(),e.createElementBlock("div",ht,[e.withDirectives(e.createElementVNode("select",{class:"w-full select-bordered select","onUpdate:modelValue":f[9]||(f[9]=s=>d.value.end=s),onChange:x},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(T),s=>(e.openBlock(),e.createElementBlock("option",{key:s,value:s},e.toDisplayString(s.toString().padStart(2,"0")),9,kt))),128))],544),[[e.vModelSelect,d.value.end,void 0,{number:!0}]]),e.withDirectives(e.createElementVNode("select",{class:"w-full select-bordered select","onUpdate:modelValue":f[10]||(f[10]=s=>b.value.end=s),onChange:x},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(z),s=>(e.openBlock(),e.createElementBlock("option",{key:s,value:s},e.toDisplayString(s.toString().padStart(2,"0")),9,bt))),128))],544),[[e.vModelSelect,b.value.end,void 0,{number:!0}]])]))])])):(e.openBlock(),e.createElementBlock("div",it,[I.value?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,type:"time",class:"input-bordered w-full input","onUpdate:modelValue":f[2]||(f[2]=s=>a.value=s),onChange:x},null,544)),[[e.vModelText,a.value]]):(e.openBlock(),e.createElementBlock("div",ct,[e.withDirectives(e.createElementVNode("select",{class:"w-full select-bordered select","onUpdate:modelValue":f[3]||(f[3]=s=>d.value=s),onChange:x},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(T),s=>(e.openBlock(),e.createElementBlock("option",{key:s,value:s},e.toDisplayString(s.toString().padStart(2,"0")),9,dt))),128))],544),[[e.vModelSelect,d.value,void 0,{number:!0}]]),e.withDirectives(e.createElementVNode("select",{class:"w-full select-bordered select","onUpdate:modelValue":f[4]||(f[4]=s=>b.value=s),onChange:x},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(z),s=>(e.openBlock(),e.createElementBlock("option",{key:s,value:s},e.toDisplayString(s.toString().padStart(2,"0")),9,mt))),128))],544),[[e.vModelSelect,b.value,void 0,{number:!0}]])]))]))])):e.createCommentVNode("",!0),e.createElementVNode("div",yt,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-secondary",r.popup?"w-fit":"w-full"]),onClick:Ll},"Clear",2),r.popup?(e.openBlock(),e.createElementBlock("button",{key:0,class:"btn btn-primary btn-wide",onClick:K},"Close")):e.createCommentVNode("",!0)])],10,et)):e.createCommentVNode("",!0)],512))}},[["__scopeId","data-v-488ecabe"]]),wt=Object.freeze(Object.defineProperty({__proto__:null,default:W},Symbol.toStringTag,{value:"Module"})),Bt=["value","checked","onChange","disabled"],Et=e.defineComponent({__name:"rating",props:{initialRating:{default:0},numberOfStars:{default:5},halfStars:{type:Boolean,default:!0},isInteractive:{type:Boolean,default:!1},size:{default:"sm"}},setup(r){const i=r,t=e.ref(i.initialRating);e.watch(()=>i.initialRating,n=>{t.value=n});const l=n=>{t.value=n};return(n,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["rating",[`rating-${i.size}`,{"rating-half":n.halfStars}]])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.numberOfStars*(n.halfStars?2:1),a=>(e.openBlock(),e.createElementBlock("input",{key:a,type:"radio",value:n.halfStars?a*.5:a,checked:t.value===(n.halfStars?a*.5:a),onChange:g=>n.isInteractive?l(n.halfStars?a*.5:a):null,class:e.normalizeClass(["mask mask-star",{"bg-yellow-400":t.value>=(n.halfStars?a*.5:a),"mask-half-1":n.halfStars&&a%2!==0,"mask-half-2":n.halfStars&&a%2===0,"cursor-pointer":n.isInteractive,"cursor-default":!n.isInteractive}]),disabled:!n.isInteractive},null,42,Bt))),128))],2))}}),Vt={class:"badge"},St=["onClick"],Ct={class:"opacity-75"},$t=["placeholder"],_t=e.defineComponent({__name:"taginput",props:{modelValue:{},maxTagAmount:{},placeholder:{},class:{}},emits:["update:modelValue"],setup(r,{emit:i}){const t=r,l=i,n=e.ref([...t.modelValue]),o=t.maxTagAmount===void 0?-1:t.maxTagAmount,a=e.ref(null),g=e.ref(""),c=e.computed(()=>o<0||n.value.length<o),d=()=>{const p=g.value.trim();p&&!n.value.includes(p)&&(n.value.push(p),l("update:modelValue",n.value),g.value="")},b=p=>{n.value=n.value.filter(u=>u!==p),l("update:modelValue",n.value)},$=()=>{g.value===""&&(n.value.pop(),l("update:modelValue",n.value))},M=p=>{p.key==="Enter"?d():p.key==="Backspace"&&g.value===""&&$()};return e.watch(()=>t.modelValue,p=>{n.value=[...p]}),(p,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["flex flex-wrap gap-2 bg-base-100 shadow px-4 py-6 border border-base-content/20 rounded",p.$props.class])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,h=>e.renderSlot(p.$slots,"tag",{key:h,tag:h},()=>[e.createElementVNode("div",Vt,[e.createElementVNode("button",{class:"!px-1 !py-0 h-fit font-bold cursor-pointer",onClick:k=>b(h),"aria-label":"Remove tag"},"X",8,St),e.createElementVNode("span",Ct,e.toDisplayString(h),1)])])),128)),e.renderSlot(p.$slots,"input",{showInput:c.value},()=>[c.value?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,ref_key:"inputRef",ref:a,"onUpdate:modelValue":u[0]||(u[0]=h=>g.value=h),type:"text",placeholder:p.placeholder||"Type here",class:"h-full input input-ghost",onKeydown:M,"aria-label":"Add tags"},null,40,$t)),[[e.vModelText,g.value]]):e.createCommentVNode("",!0)])],2))}}),Nt={class:"w-full max-w-xs form-control"},Dt={key:0,class:"label"},xt={class:"label-text"},Mt=["value"],Tt={key:0,value:"",disabled:"",selected:""},It=["value"],zt=e.defineComponent({__name:"select",props:{options:{},label:{},placeholder:{},modelValue:{}},emits:["update:modelValue"],setup(r,{expose:i,emit:t}){console.log(r.placeholder);const n=t,o=e.ref(null),a=c=>{const d=c.target;n("update:modelValue",d.value)};return i({focusInput:()=>{var c;console.log("select.vue: focusInput method called."),(c=o.value)==null||c.focus()}}),(c,d)=>(e.openBlock(),e.createElementBlock("div",Nt,[c.label?(e.openBlock(),e.createElementBlock("label",Dt,[e.createElementVNode("span",xt,e.toDisplayString(c.label),1)])):e.createCommentVNode("",!0),e.createElementVNode("select",{ref_key:"selectElement",ref:o,class:"rounded-md w-full select-bordered select",value:c.modelValue,onChange:a},[c.placeholder?(e.openBlock(),e.createElementBlock("option",Tt,e.toDisplayString(c.placeholder),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.options,b=>(e.openBlock(),e.createElementBlock("option",{key:b.value,value:b.value},e.toDisplayString(b.text),9,It))),128))],40,Mt)]))}}),Lt={key:0,class:"label"},Ot={class:"label-text"},Ft=["onKeydown","aria-expanded","aria-activedescendant"],Pt=["placeholder"],At={class:"top-full z-10 absolute bg-base-100 shadow-lg mt-1 rounded-md w-full dropdown-content",role:"listbox"},Ut={class:"flex-nowrap p-0 w-[inherit] max-h-60 overflow-y-auto menu"},jt=["onMousedown","id","aria-selected"],Rt={key:1,class:"label"},qt={class:"label-text-alt"},Ht={__name:"filterableSelect",props:{options:{type:Array,required:!0,default:()=>[]},label:{type:String,default:""},placeholder:{type:String,default:"Select an option"},modelValue:{type:[String,Number,Object,null],default:null}},emits:["update:modelValue","select"],setup(r,{expose:i,emit:t}){const l=r,n=t,o=e.useSlots(),a=e.computed(()=>{const _=(o.default?o.default():[]).filter(S=>S.type!==e.Comment);return console.log("hasDefaultSlotContent computed:",_.length>0),_.length>0}),g=e.ref(""),c=e.ref(null),d=e.ref(!1),b=e.ref(null),$=e.ref(null),M=e.ref(null),p=e.ref(null),u=()=>{console.log("openDropdown called"),d.value=!0},h=()=>{console.log("closeDropdown called"),d.value=!1,p.value=null,a.value||(c.value&&g.value!==c.value.text?g.value=c.value.text:c.value||(g.value=""))},k=()=>{console.log("toggleDropdown called. Current isDropdownOpen:",d.value),d.value?h():u()},B=e.computed(()=>{const y=g.value.toLowerCase(),_=y===""&&!d.value?[]:l.options.filter(S=>S.text.toLowerCase().includes(y));return console.log("filteredOptions computed:",_.length,"options"),_});e.watch(()=>l.modelValue,(y,_)=>{if(console.log("modelValue changed:",y),y!==_&&h(),y==null)c.value=null,!d.value&&!a.value&&(g.value="");else{const S=l.options.find(N=>N.value===y);S?(c.value=S,!d.value&&!a.value&&(g.value=S.text)):(c.value=null,!d.value&&!a.value&&(g.value=""))}},{immediate:!0});const w=y=>{$.value&&!$.value.contains(y.target)&&(console.log("Clicked outside, closing dropdown"),h())},V=()=>{console.log("Activator blur detected"),setTimeout(()=>{$.value&&!$.value.contains(document.activeElement)?(console.log("Blur timeout finished, closing dropdown"),h()):console.log("Blur timeout finished, focus is still inside component")},100)};e.watch(d,y=>{console.log("isDropdownOpen watcher:",y),y?setTimeout(()=>{document.addEventListener("click",w)},0):document.removeEventListener("click",w)}),e.onBeforeUnmount(()=>{document.removeEventListener("click",w),window.removeEventListener("keydown",I)});const C=y=>{console.log("selectItem called with:",y),c.value=y,a.value||(g.value=y.text),n("update:modelValue",y.value),n("select",y)},T=()=>{console.log("selectFirstFiltered called"),B.value.length>0&&C(B.value[0])},z=()=>{d.value||u()},I=y=>{if(!d.value||B.value.length===0)return;const _=B.value.findIndex((N,D)=>"option-"+D===p.value);let S=-1;if(y.key==="ArrowDown")y.preventDefault(),S=(_+1)%B.value.length;else if(y.key==="ArrowUp")y.preventDefault(),S=(_-1+B.value.length)%B.value.length;else if(y.key==="Enter"&&p.value){y.preventDefault();const N=B.value.find((D,P)=>"option-"+P===p.value);N&&C(N);return}else if(y.key==="Escape"){y.preventDefault(),h(),M.value&&M.value.focus();return}else if(a.value)return;if(S!==-1){p.value="option-"+S;const N=document.getElementById(p.value);N&&requestAnimationFrame(()=>{N.scrollIntoView({block:"nearest",behavior:"smooth"})})}};return e.watch(d,y=>{y?(console.log("Adding window keydown listener"),window.addEventListener("keydown",I),!a.value&&!g.value&&c.value&&(g.value=c.value.text)):(console.log("Removing window keydown listener"),window.removeEventListener("keydown",I))}),e.onBeforeUnmount(()=>{document.removeEventListener("click",w),window.removeEventListener("keydown",I)}),i({isDropdownOpen:d,selectedItem:c,openDropdown:u,closeDropdown:h,toggleDropdown:k,selectItem:C,filterText:g,hasDefaultSlotContent:a}),(y,_)=>(e.openBlock(),e.createElementBlock("div",{class:"relative w-full max-w-xs form-control",ref_key:"componentRoot",ref:$},[r.label?(e.openBlock(),e.createElementBlock("label",Lt,[e.createElementVNode("span",Ot,e.toDisplayString(r.label),1)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["flex items-center input-bordered rounded-md w-fit cursor-pointer",{input:!a.value,select:!a.value}]),tabindex:"0",onFocus:u,onClick:k,onKeydown:[e.withKeys(e.withModifiers(T,["prevent"]),["enter"]),e.withKeys(e.withModifiers(T,["prevent"]),["space"])],onBlur:V,role:"combobox","aria-haspopup":"listbox","aria-expanded":d.value,"aria-activedescendant":p.value,"aria-autocomplete":"list",ref_key:"activatorWrapper",ref:M},[e.renderSlot(y.$slots,"default",{},()=>[a.value?e.createCommentVNode("",!0):e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,type:"text",placeholder:r.placeholder,class:"bg-transparent border-none focus:outline-none w-full","onUpdate:modelValue":_[0]||(_[0]=S=>g.value=S),ref_key:"filterInput",ref:b,onInput:z,tabindex:"-1"},null,40,Pt)),[[e.vModelText,g.value]])]),a.value?(e.openBlock(),e.createBlock(e.unref(ce),{key:0,class:e.normalizeClass({"rotate-180":d.value}),size:20},null,8,["class"])):e.createCommentVNode("",!0)],42,Ft),e.withDirectives(e.createElementVNode("div",At,[e.createElementVNode("ul",Ut,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(B.value,(S,N)=>(e.openBlock(),e.createElementBlock("li",{key:S.value,onMousedown:e.withModifiers(D=>C(S),["prevent"]),class:"hover:bg-base-200 rounded-md w-full cursor-pointer",id:"option-"+N,role:"option","aria-selected":c.value&&c.value.value===S.value},[e.createElementVNode("a",null,e.toDisplayString(S.text),1)],40,jt))),128))])],512),[[e.vShow,d.value&&B.value.length>0]]),c.value&&!d.value?(e.openBlock(),e.createElementBlock("div",Rt,[e.createElementVNode("span",qt,"Selected: "+e.toDisplayString(c.value.text),1)])):e.createCommentVNode("",!0)],512))}},Wt={class:"w-full max-w-xs form-control"},Kt={key:0,class:"label"},Yt={class:"label-text"},Jt=["type","placeholder","value"],Gt={key:1,class:"label"},Xt={class:"label-text-alt text-error validator-hint"},Zt={key:2,class:"label"},Qt={class:"label-text-alt text-success validator-hint"},vt=e.defineComponent({__name:"inputField",props:{modelValue:{default:""},label:{default:""},placeholder:{default:""},type:{default:"text"},rules:{default:()=>({})},successMessage:{default:""},size:{default:"md"},color:{default:""},style:{default:""}},emits:["update:modelValue","validate"],setup(r,{expose:i,emit:t}){const l=r,n=t,o=e.ref(null),a=e.ref(!1),g=e.ref(""),c=e.computed(()=>{var k,B,w,V;let p=!0,u="";const h=l.modelValue;return(k=l.rules)!=null&&k.required&&(h==null||h==="")&&(p=!1,u="This field is required."),p&&((B=l.rules)==null?void 0:B.minLength)!==void 0&&typeof h=="string"&&h.length<l.rules.minLength&&(p=!1,u=`Must be at least ${l.rules.minLength} characters.`),p&&((w=l.rules)==null?void 0:w.maxLength)!==void 0&&typeof h=="string"&&h.length>l.rules.maxLength&&(p=!1,u=`Cannot exceed ${l.rules.maxLength} characters.`),p&&((V=l.rules)!=null&&V.email)&&typeof h=="string"&&h&&(/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(h)||(p=!1,u="Please enter a valid email address.")),g.value=u,n("validate",p),p}),d=e.computed(()=>a.value&&!c.value),b=p=>{const u=p.target;n("update:modelValue",u.value),a.value&&c.value},$=()=>{a.value=!0,c.value};return e.watch(()=>l.modelValue,()=>{a.value&&c.value}),i({focusInput:()=>{var p;console.log("inputField.vue: focusInput method called."),(p=o.value)==null||p.focus()},isValid:c,isTouched:a,errorMessage:g}),(p,u)=>(e.openBlock(),e.createElementBlock("div",Wt,[p.label?(e.openBlock(),e.createElementBlock("label",Kt,[e.createElementVNode("span",Yt,e.toDisplayString(p.label),1)])):e.createCommentVNode("",!0),e.createElementVNode("input",{ref_key:"inputElement",ref:o,type:p.type,placeholder:p.placeholder,class:e.normalizeClass(["input-bordered rounded-md w-full input validator",{"input-xs":p.size==="xs","input-sm":p.size==="sm","input-md":p.size==="md","input-lg":p.size==="lg","input-xl":p.size==="xl","input-neutral":p.color==="neutral"&&!d.value,"input-primary":p.color==="primary"&&!d.value,"input-secondary":p.color==="secondary"&&!d.value,"input-accent":p.color==="accent"&&!d.value,"input-info":p.color==="info"&&!d.value,"input-success":p.color==="success"&&!d.value&&!(c.value&&a.value),"input-warning":p.color==="warning"&&!d.value,"input-ghost":p.style==="ghost","input-error":d.value}]),value:p.modelValue,onInput:b,onBlur:$},null,42,Jt),d.value?(e.openBlock(),e.createElementBlock("div",Gt,[e.createElementVNode("span",Xt,e.toDisplayString(g.value),1)])):c.value&&a.value&&p.successMessage?(e.openBlock(),e.createElementBlock("div",Zt,[e.createElementVNode("span",Qt,e.toDisplayString(p.successMessage),1)])):e.createCommentVNode("",!0)]))}}),el=e.defineComponent({__name:"loader",props:{loading:{type:Boolean,default:!0},size:{default:"md"},type:{default:"spinner"},color:{default:"primary"}},setup(r){const i=r,t=e.ref(i.loading);return e.watch(()=>i.loading,l=>{t.value=l}),(l,n)=>t.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["loading",[{"loading-xs":l.size==="xs"},{"loading-sm":l.size==="sm"},{"loading-md":l.size==="md"},{"loading-lg":l.size==="lg"},{"loading-xl":l.size==="xl"},{"loading-spinner":l.type==="spinner"},{"loading-dots":l.type==="dots"},{"loading-ring":l.type==="ring"},{"loading-balls":l.type==="balls"},{"loading-bars":l.type==="bars"},{"loading-infinity":l.type==="infinity"},{"text-primary":l.color==="primary"},{"text-secondary":l.color==="secondary"},{"text-accent":l.color==="accent"},{"text-neutral":l.color==="neutral"},{"text-info":l.color==="info"},{"text-success":l.color==="success"},{"text-warning":l.color==="warning"},{"text-error":l.color==="error"}]])},null,2)):e.createCommentVNode("",!0)}}),tl={class:"footer sm:footer-horizontal container"},ll={class:"footer-title"},nl=["href"],ol={key:0,class:"sm:hidden w-full"},al={class:"border-b-2 border-base-100 last:border-b-0 w-full"},rl={tabindex:"0",class:"collapse collapse-plus w-full"},sl={class:"collapse-title font-bold text-lg collapsible-footer-title"},il={class:"collapse-content flex w-full text-sm"},cl={class:"flex flex-col gap-2.5"},dl={class:"w-full"},ml=["href"],pl={class:"w-full"},ul=e.defineComponent({__name:"footer",props:{items:{},background:{},color:{},collapseOnMobile:{type:Boolean,default:!1}},setup(r){const i=r;return(t,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["mx-auto md:px-10 py-10 text-base-content",[t.background??"bg-base-200",t.color??"text-base-content"]])},[e.createElementVNode("footer",tl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.items,n=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass([{"hidden sm:grid":t.collapseOnMobile}])},[e.createElementVNode("h6",ll,e.toDisplayString(n.title),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.items,o=>(e.openBlock(),e.createElementBlock("a",{class:"link link-hover",href:o.link},e.toDisplayString(o.text),9,nl))),256))],2))),256)),t.collapseOnMobile?(e.openBlock(),e.createElementBlock("nav",ol,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.items,n=>(e.openBlock(),e.createElementBlock("ul",al,[e.createElementVNode("div",rl,[e.createElementVNode("div",sl,e.toDisplayString(n.title),1),e.createElementVNode("div",il,[e.createElementVNode("ul",cl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.items,o=>(e.openBlock(),e.createElementBlock("li",dl,[e.createElementVNode("a",{class:"w-full font-medium link link-hover",href:o.link},e.toDisplayString(o.text),9,ml)]))),256))])])])]))),256))])):e.createCommentVNode("",!0),e.createElementVNode("aside",pl,[e.renderSlot(t.$slots,"default")])])],2))}}),fl={},gl={class:"min-h-40 container hero"},hl={class:"px-0! text-center hero-content"},kl={class:"mt-9 text-4xl"};function bl(r,i){return e.openBlock(),e.createElementBlock("div",gl,[e.createElementVNode("div",hl,[e.createElementVNode("div",null,[e.createElementVNode("h1",kl,[e.renderSlot(r.$slots,"title",{},()=>[i[0]||(i[0]=e.createTextVNode("hero title"))])]),e.createElementVNode("p",null,[e.renderSlot(r.$slots,"description",{class:"py-9"})]),e.renderSlot(r.$slots,"call-to-action-block",{class:"max-w-full"},()=>[i[1]||(i[1]=e.createElementVNode("button",{class:"btn btn-primary"},"Call to action",-1))])])])])}const yl=O(fl,[["render",bl]]),wl={class:"flex flex-row place-content-center gap-4 categories"},Bl=["onClick"],El=e.defineComponent({__name:"categoryNavigation",props:{searchOptions:{},currentCategory:{}},emits:["update:currentCategory"],setup(r,{emit:i}){const t=r,l=i;function n(o){l("update:currentCategory",o)}return(o,a)=>(e.openBlock(),e.createElementBlock("div",wl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.searchOptions,g=>(e.openBlock(),e.createElementBlock("div",{key:g.category},[e.createElementVNode("button",{onClick:c=>n(g.category),class:e.normalizeClass(["truncate btn btn-ghost",{"font-semibold":t.currentCategory===g.category}])},e.toDisplayString(g.category),11,Bl)]))),128))]))}}),Vl={class:"md:flex hidden navbar-start"},Sl={class:"md:flex justify-center items-center hidden navbar-center"},Cl={class:"md:flex hidden navbar-end"},$l={class:"navbar-bottom md:flex hidden"},_l=O(e.defineComponent({__name:"navigationBar",props:{isCollapsed:{type:Boolean,default:!0}},setup(r){const i=r;return(t,l)=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(["place-items-start border-primary bg-base-100 px-5 py-5 border-b-4 transition-all navbar navigationbar",i.isCollapsed?"collapsed":""])},[e.createElementVNode("div",Vl,[e.renderSlot(t.$slots,"start",{},void 0,!0)]),e.createElementVNode("div",Sl,[e.renderSlot(t.$slots,"center",{},void 0,!0)]),e.createElementVNode("div",Cl,[e.renderSlot(t.$slots,"end",{},void 0,!0)]),e.createElementVNode("div",$l,[e.renderSlot(t.$slots,"bottom",{},void 0,!0)])],2))}}),[["__scopeId","data-v-8ddb2b45"]]),Nl={key:0,class:"hidden top-4 right-0 absolute md:flex gap-4"},Dl=["onClick","aria-selected"],xl={key:0,role:"tabpanel",class:"p-6 border-x-0 border-t-2 border-b-0 border-base-300 max-w-full overflow-x-auto tab-content"},Ml={class:"p-6 border-x-0 border-t-2 border-b-0 border-base-300 max-w-full"},Tl=e.defineComponent({__name:"tab",props:{items:{},withControlls:{type:Boolean,default:!1},rotateTabsAfter:{default:0},buttonOnlyMode:{type:Boolean,default:!1}},emits:["tab-changed"],setup(r,{emit:i}){const t=r,l=e.ref(t.items[0]),n=i;function o(c){l.value=c,n("tab-changed",c)}function a(){const d=(t.items.indexOf(l.value)+1)%t.items.length;o(t.items[d])}function g(){const d=(t.items.indexOf(l.value)-1+t.items.length)%t.items.length;o(t.items[d])}return e.onMounted(()=>{t.items&&o(t.items[0])}),e.onUnmounted(()=>{t.rotateTabsAfter&&t.rotateTabsAfter>0&&setInterval(()=>{a()},t.rotateTabsAfter*1e3)}),(c,d)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{role:"tablist",class:e.normalizeClass(["relative tabs-bordered w-full tabs tabs-lg",{"flex-nowrap overflow-x-auto":c.buttonOnlyMode}])},[c.withControlls?(e.openBlock(),e.createElementBlock("div",Nl,[e.createElementVNode("button",{onClick:d[0]||(d[0]=b=>g()),class:"cursor-pointer"},"Previous"),e.createElementVNode("button",{onClick:d[1]||(d[1]=b=>a()),class:"text-primary cursor-pointer"},"Next")])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.items,b=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("a",{type:"button",role:"tab",class:e.normalizeClass(["min-w-max tab",b===l.value?"bg-primary text-base-100":""]),onClick:$=>o(b),"aria-selected":l.value==b},e.toDisplayString(b),11,Dl),c.buttonOnlyMode?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",xl,[e.renderSlot(c.$slots,`${b}-tab`)]))],64))),256))],2),e.createElementVNode("div",Ml,[e.renderSlot(c.$slots,"default")])],64))}});E.Accordion=we,E.AdvancedSearch=Ze,E.Avatar=Ve,E.Badge=Se,E.ButtonComponent=X,E.Card=Me,E.Carousel=Fe,E.CarouselItem=Pe,E.CategoryNavigation=El,E.DatetimePicker=W,E.Dropdown=v,E.FilterableSelect=Ht,E.Footer=ul,E.Hero=yl,E.InputField=vt,E.Loader=el,E.Modal=le,E.NavigationBar=_l,E.Rating=Et,E.Selector=zt,E.Swap=ae,E.Tab=Tl,E.TagInput=_t,E.ThemeController=ge,Object.defineProperty(E,Symbol.toStringTag,{value:"Module"})});
46
+ */const me=F("SunIcon",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]),pe=(r,i)=>{const t=e.ref(null);return e.onMounted(()=>{if(typeof window<"u"){const l=window.localStorage.getItem(r);t.value=l?JSON.parse(l):i}}),e.watch(t,l=>{typeof window<"u"&&window.localStorage.setItem(r,JSON.stringify(l))}),t},ue={class:"swap-rotate swap"},fe=["true-value","false-value"],ge=e.defineComponent({__name:"theme-controller",props:{lightTheme:{default:"light"},darkTheme:{default:"dark"}},setup(r){const i=r,t=pe("theme",i.lightTheme);function l(n){typeof window<"u"&&window.document&&document.documentElement.setAttribute("data-theme",n)}return e.onMounted(()=>l(t.value?t.value:"")),e.watch(t,n=>{l(n)}),(n,o)=>(e.openBlock(),e.createElementBlock("label",ue,[e.withDirectives(e.createElementVNode("input",{type:"checkbox",class:"theme-controller","onUpdate:modelValue":o[0]||(o[0]=a=>e.isRef(t)?t.value=a:null),"true-value":i.lightTheme,"false-value":i.darkTheme},null,8,fe),[[e.vModelCheckbox,e.unref(t)]]),e.createVNode(e.unref(me),{class:"swap-off fill-current"}),e.createVNode(e.unref(de),{class:"swap-on fill-current"})]))}}),he=["name"],ke={class:"collapse-title font-bold text-2xl lg:text-4xl"},be={class:"collapse-content"},ye=["innerHTML"],we=e.defineComponent({__name:"accordion",props:{name:{},items:{},joinItems:{type:Boolean,default:!1},icon:{}},setup(r){const i=r;return(t,l)=>(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.items,(n,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["collapse border border-base-300",[t.icon?`collapse-${t.icon}`:"",{"join-item":t.joinItems}]]),key:o},[e.createElementVNode("input",{type:"radio",name:t.name,value:"true"},null,8,he),e.createElementVNode("div",ke,e.toDisplayString(n.title),1),e.createElementVNode("div",be,[e.createElementVNode("span",{innerHTML:n.content},null,8,ye)])],2))),128))}}),Be=["src"],Ee={class:"text-xl"},Ve=e.defineComponent({__name:"avatar",props:{image:{},onlineStatus:{default:"none"},initials:{},fullyRounded:{type:Boolean,default:!1}},setup(r){const i=r,t=e.ref(i.onlineStatus);return e.watch(()=>i.onlineStatus,l=>{l&&(t.value=l)}),(l,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["avatar",[{"avatar-online":t.value==="online"},{"avatar-offline":t.value==="offline"}]])},[l.image?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["rounded",[{"rounded-full":l.fullyRounded},{rounded:!l.fullyRounded}]])},[e.createElementVNode("img",{src:l.image,class:"w-full h-full"},null,8,Be)],2)):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["flex justify-center bg-neutral p-[25%] rounded w-16 text-neutral-content text-center",[{"rounded-full":l.fullyRounded},{rounded:!l.fullyRounded}]])},[e.createElementVNode("p",Ee,e.toDisplayString(l.initials),1)],2))],2))}}),Se=e.defineComponent({__name:"badge",props:{color:{default:"neutral"},outline:{type:Boolean,default:!1},size:{default:"medium"}},setup(r){const i=r,t={"extra small":"badge-xs",small:"badge-sm",medium:"badge-md",large:"badge-lg"},l={neutral:"badge-neutral",primary:"badge-primary",secondary:"badge-secondary",accent:"badge-accent",ghost:"badge-ghost",info:"badge-info",success:"badge-success",warning:"badge-warning",error:"badge-error"};return(n,o)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(["badge",t[i.size],l[i.color],{"badge-outline":i.outline}])},[e.renderSlot(n.$slots,"default")],2))}}),Ce=["src","alt"],$e={key:0,class:"card-body"},_e={key:0,class:"group-hover:text-primary text-lg text-left cursor-pointer card-title"},Ne={key:1,class:"text-left"},De={class:"flex-col flex-nowrap mt-auto card-actions"},xe={key:1,class:"card-body"},Me=e.defineComponent({__name:"card",props:{imgUrl:{default:""},alt:{default:"A beautiful picture that says something about this card"},title:{default:""},description:{default:""},outlined:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},class:{default:""},background:{default:"bg-base-100"},color:{default:""},imgHeight:{default:"h-44"}},setup(r){const i=r,t=e.ref(i.outlined);return e.watch(()=>i.outlined,l=>{t.value=l}),(l,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["group bg-base-100 shadow-xl rounded-sm min-w-64 max-w-full h-full card card-compact",[{"border-4 border-primary":t.value},l.color??"",l.background]])},[e.createElementVNode("figure",null,[l.imgUrl||l.imgUrl&&!l.loading?(e.openBlock(),e.createElementBlock("img",{key:0,src:l.imgUrl,alt:l.alt,class:e.normalizeClass(["rounded-sm w-full object-cover",[{hidden:l.loading},l.imgHeight]])},null,10,Ce)):e.createCommentVNode("",!0),l.loading&&l.imgUrl?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["w-full skeleton",l.imgHeight])},null,2)):e.createCommentVNode("",!0)]),l.loading?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",$e,[l.title?(e.openBlock(),e.createElementBlock("h2",_e,e.toDisplayString(l.title),1)):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"details"),l.description?(e.openBlock(),e.createElementBlock("p",Ne,e.toDisplayString(l.description),1)):e.createCommentVNode("",!0),e.createElementVNode("div",De,[e.renderSlot(l.$slots,"actions")])])),l.loading?(e.openBlock(),e.createElementBlock("div",xe,n[0]||(n[0]=[e.createElementVNode("div",{class:"flex flex-col gap-4 w-52"},[e.createElementVNode("div",{class:"w-28 h-4 skeleton"}),e.createElementVNode("div",{class:"w-full h-4 skeleton"}),e.createElementVNode("div",{class:"w-full h-4 skeleton"})],-1)]))):e.createCommentVNode("",!0)],2))}}),H=Symbol("CarouselItemStyle"),Te={class:"relative h-full"},Ie={key:0,class:"top-1/2 right-5 left-5 z-10 absolute flex justify-between -translate-y-1/2 transform"},ze={key:1,class:"bottom-5 z-10 absolute flex justify-center gap-2 py-2 w-full"},Le=["onClick","aria-label"],Oe=e.defineComponent({__name:"carousel",props:{showIndicators:{type:Boolean,default:!0},showNavigationButtons:{type:Boolean,default:!0},sliderOrientation:{type:String,default:"horizontal",required:!1,validator:r=>r=="horizontal"||r=="vertical"},initialSlide:{type:Number,default:0},slidesPerView:{type:Number,default:1,validator:r=>r>=1},gap:{type:Number,default:0,validator:r=>r>=0},slideDuration:{type:Number,default:300,validator:r=>r>=0}},setup(r,{expose:i}){const t=r,l=e.ref(t.initialSlide),n=e.ref(null),o=e.ref(!1),a=e.ref(0),g=e.computed(()=>({width:`calc((100% - ${t.slidesPerView>1?(t.slidesPerView-1)*t.gap:0}px) / ${t.slidesPerView})`}));e.provide(H,g);const c=()=>{n.value?a.value=n.value.children.length:a.value=0},d=async u=>{if(!n.value||t.slidesPerView<=0||o.value||(c(),a.value===0))return;const h=(u%a.value+a.value)%a.value,b=n.value,w=t.sliderOrientation==="vertical"?(b.offsetHeight-(t.slidesPerView-1)*t.gap)/t.slidesPerView:(b.offsetWidth-(t.slidesPerView-1)*t.gap)/t.slidesPerView;if(w<=0)return;const y=w+t.gap,V=h*y,C=t.sliderOrientation==="vertical"?b.scrollHeight-b.offsetHeight:b.scrollWidth-b.offsetWidth,T=Math.max(0,Math.min(V,C+.5));o.value=!0,b.style.scrollBehavior="auto";const z=t.sliderOrientation==="vertical"?b.scrollTop:b.scrollLeft,I=T-z;if(Math.abs(I)<1){o.value=!1,l.value=h;return}const B=performance.now(),D=S=>{const _=S-B,N=Math.min(1,_/t.slideDuration),P=N<.5?4*N*N*N:1-Math.pow(-2*N+2,3)/2,j=z+I*P;t.sliderOrientation==="vertical"?b.scrollTop=j:b.scrollLeft=j,N<1?requestAnimationFrame(D):(t.sliderOrientation==="vertical"?b.scrollTop=T:b.scrollLeft=T,l.value=h,o.value=!1)};requestAnimationFrame(D)},k=()=>{d(l.value+1)},$=()=>{d(l.value-1)},M=u=>{d(u)},p=()=>{if(!n.value||t.slidesPerView<=0||(c(),a.value===0))return;const u=n.value,h=t.sliderOrientation==="vertical"?u.offsetHeight:u.offsetWidth,b=t.slidesPerView>1?(t.slidesPerView-1)*t.gap:0,w=(h-b)/t.slidesPerView;if(w<=0)return;const y=Math.max(0,a.value-t.slidesPerView),V=Math.min(Math.max(0,t.initialSlide),y),C=V*(w+t.gap),T=t.sliderOrientation==="vertical"?u.scrollHeight-u.offsetHeight:u.scrollWidth-u.offsetWidth,z=Math.max(0,Math.min(C,T+.5));t.sliderOrientation==="vertical"?u.scrollTo({top:z,behavior:"auto"}):u.scrollTo({left:z,behavior:"auto"}),l.value=V};return e.onMounted(()=>{requestAnimationFrame(()=>{requestAnimationFrame(p)}),c()}),e.watch(()=>t.initialSlide,u=>{requestAnimationFrame(()=>d(u))}),e.watch(()=>[t.slidesPerView,t.gap],()=>{requestAnimationFrame(()=>{requestAnimationFrame(()=>{if(c(),a.value===0)return;const u=Math.max(0,a.value-t.slidesPerView),h=Math.min(l.value,u),b=t.slideDuration;t.slideDuration=0,d(h),t.slideDuration=b})})}),i({scrollToSlide:d}),(u,h)=>(e.openBlock(),e.createElementBlock("div",Te,[e.createElementVNode("div",{ref_key:"carouselContainer",ref:n,class:e.normalizeClass(["rounded w-full h-full overflow-x-scroll scroll-smooth carousel",[{"carousel-horizontal md:snap-none":r.sliderOrientation=="horizontal"},{"carousel-vertical":r.sliderOrientation=="vertical"}]]),style:e.normalizeStyle({gap:`${r.gap}px`})},[e.renderSlot(u.$slots,"default",{},void 0,!0)],6),r.showNavigationButtons?(e.openBlock(),e.createElementBlock("div",Ie,[e.createElementVNode("div",{onClick:$,role:"button","aria-label":"Previous Slide"},[e.renderSlot(u.$slots,"prevButton",{},()=>[h[0]||(h[0]=e.createElementVNode("button",{class:"btn btn-circle",tabindex:"-1"},"❮",-1))],!0)]),e.createElementVNode("div",{onClick:k,role:"button","aria-label":"Next Slide"},[e.renderSlot(u.$slots,"nextButton",{},()=>[h[1]||(h[1]=e.createElementVNode("button",{class:"btn btn-circle",tabindex:"-1"},"❯",-1))],!0)])])):e.createCommentVNode("",!0),r.showIndicators?(e.openBlock(),e.createElementBlock("div",ze,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(b,w)=>(e.openBlock(),e.createElementBlock("button",{key:`dot-${w}`,onClick:y=>M(w),class:e.normalizeClass(["btn btn-circle btn-xs",{"btn-active":w===l.value}]),"aria-label":`Go to slide ${w+1}`},null,10,Le))),128))])):e.createCommentVNode("",!0)]))}}),O=(r,i)=>{const t=r.__vccOpts||r;for(const[l,n]of i)t[l]=n;return t},Fe=O(Oe,[["__scopeId","data-v-db55a6a5"]]),Pe=O(e.defineComponent({__name:"carouselItem",setup(r){const i=e.inject(H,e.ref({}));return(t,l)=>(e.openBlock(),e.createElementBlock("div",{class:"w-full h-full carousel-item",style:e.normalizeStyle(e.unref(i))},[e.renderSlot(t.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-507384bc"]]),Ae={class:"flex gap-4 bg-base-100 w-full tabs tabs-boxed"},Ue=["onClick"],je={class:"text-sm"},Re={class:"md:block hidden opacity-35 text-xs truncate overflow-hidden ..."},qe={class:"hidden"},He={id:"advancedSearchMobile",class:"modal"},We={class:"modal-box"},Ke={class:"font-bold text-lg"},Ye=["checked"],Je={class:"flex justify-between items-center pr-4 w-full font-medium text-xl collapse-title"},Ge={class:"text-sm"},Xe={class:"flex place-content-center p-0 collapse-content"},Ze=O(e.defineComponent({__name:"advancedSearch",props:{searchOptions:{},currentCategory:{}},emits:["search","update:search-data"],setup(r,{emit:i}){const t=r,l=i,n=e.ref(null),o={datetime:e.defineAsyncComponent(()=>Promise.resolve().then(()=>wt))},a=e.ref({}),g=e.ref({left:"0px",top:"0px",transform:"translateX(0%)"}),c=e.ref(null);function d(u,h){var b,w,y;if((b=n.value)!=null&&b.name){l("update:search-data",{tab:n.value.name,data:u});return}if(t.searchOptions){let V=(y=(w=t.searchOptions)==null?void 0:w.find(C=>(C==null?void 0:C.category)===t.currentCategory))==null?void 0:y.tabs[h];V!==void 0&&(V.value=u,l("update:search-data",{tab:V==null?void 0:V.name,data:V==null?void 0:V.value}))}}function k(){l("search")}async function $(u){c.value&&!c.value.contains(u.target)&&(await e.nextTick(),n.value=null)}async function M(){if(typeof window<"u"&&window.innerWidth<=768){const u=document.getElementById("advancedSearchMobile");u?u.showModal():console.warn("Modal element not found.")}}async function p(u){var b;n.value=u,await e.nextTick();const h=a.value[u.name];if(h){const w=h.getBoundingClientRect(),y=((b=c.value)==null?void 0:b.getBoundingClientRect())||{left:0,top:0};window.innerWidth>768?g.value={left:`${w.left+w.width/2-y.left}px`,top:`${w.bottom-y.top}px`,transform:"translateX(-50%)"}:g.value={left:"50%",top:`${w.bottom-y.top}px`,transform:"translateX(-50%)"}}else console.error("Tab element not found for:",u.name)}return e.onMounted(()=>{document.addEventListener("click",$)}),e.onBeforeUnmount(()=>{document.removeEventListener("click",$)}),(u,h)=>{var b,w;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{ref_key:"searchContainer",ref:c,class:"w-full"},[e.createElementVNode("div",{class:"group/search relative flex place-items-center border-2 shadow-md p-2 border-base-300/25 rounded-sm w-full transition-all cursor-pointer md:cursor-auto",onClick:M},[e.createElementVNode("div",Ae,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(((b=t.searchOptions.find(y=>y.category===t.currentCategory))==null?void 0:b.tabs)||[],y=>{var V;return e.openBlock(),e.createElementBlock("button",{key:y.name,onClick:C=>p(y),class:e.normalizeClass([{"tab-active":((V=n.value)==null?void 0:V.name)===y.name},"group/searchitem relative after:top-0 after:-right-2 after:absolute first-of-type:flex-auto last-of-type:flex-auto md:after:content-[''] last-of-type:after:content-none after:content-none after:bg-base-200 hover:bg-base-200 p-1 rounded-sm w-auto after:w-[1px] after:h-10 text-start overflow-x-hidden pointer-events-none md:pointer-events-auto"]),ref_for:!0,ref:C=>a.value[y.name]=C},[e.createElementVNode("p",je,e.toDisplayString(y.name),1),e.createElementVNode("p",Re,e.toDisplayString(y.description),1)],10,Ue)}),128))]),n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"absolute flex shadow-sm mt-4 w-fit max-w-full transition-all tab-content",style:e.normalizeStyle(g.value)},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o[n.value.type]),e.mergeProps(n.value.props?n.value.props:null,{onUpdated:d}),null,16))],4)):e.createCommentVNode("",!0),e.createElementVNode("button",{title:"search",type:"submit",class:"ml-1 btn btn-primary btn-square",onClick:k},[e.createVNode(e.unref(q),{size:24,color:"white"})])]),e.createElementVNode("div",qe,[e.createElementVNode("button",{title:"search",onClick:h[0]||(h[0]=()=>{})},[e.createVNode(e.unref(q),{size:24,color:"white"})])])],512),e.createElementVNode("dialog",He,[e.createElementVNode("div",We,[e.renderSlot(u.$slots,"additionalForMobile",{},()=>[e.createElementVNode("h3",Ke,e.toDisplayString(u.currentCategory),1)],!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(((w=t.searchOptions.find(y=>y.category===t.currentCategory))==null?void 0:w.tabs)||[],(y,V)=>(e.openBlock(),e.createElementBlock("div",{class:"bg-base-200 my-4 collapse",key:y.name},[e.createElementVNode("input",{type:"radio",name:"my-accordion-1",checked:V===0},null,8,Ye),e.createElementVNode("div",Je,[e.createTextVNode(e.toDisplayString(y.name)+" ",1),e.createElementVNode("p",Ge,e.toDisplayString(y.description),1)]),e.createElementVNode("div",Xe,[h[1]||(h[1]=e.createElementVNode("br",null,null,-1)),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o[y.type]),e.mergeProps({ref_for:!0},y.props||{},{onUpdated:C=>d(C,V)}),null,16,["onUpdated"]))])]))),128)),e.createElementVNode("div",{class:"modal-action"},[e.createElementVNode("form",{method:"dialog"},[e.createElementVNode("button",{class:"btn btn-primary",onClick:k},"Close and Search")])])])])],64)}}}),[["__scopeId","data-v-08fa37eb"]]),Qe=["placeholder","value","id"],ve={class:"btn btn-ghost"},et=["id"],tt={key:0,class:"flex justify-between items-center place-content-center mb-4"},lt=["value"],nt=["value"],ot={key:1,class:"gap-2 grid grid-cols-7"},at=["onClick"],rt={key:2,class:"mt-4 lg:w-80"},st={key:0,class:"mb-2 font-bold text-lg"},it={key:1},ct={key:1,class:"flex gap-4"},dt=["value"],mt=["value"],pt={key:2,class:"flex flex-col gap-4"},ut={key:1,class:"flex gap-2"},ft=["value"],gt=["value"],ht={key:1,class:"flex gap-2"},kt=["value"],bt=["value"],yt={class:"flex gap-2 mt-4"},W=O({__name:"datetimePicker",props:{mode:{type:String,default:"datetime",validator:r=>["datetime","date","time"].includes(r)},range:{type:Boolean,default:!1},placeholder:{type:String,default:"Select date and time"},popup:{type:Boolean,default:!1},id:{type:String,default:"datetimepicker"},initialDate:{type:Object,default:()=>null}},emits:["updated"],setup(r,{emit:i}){const t=r;e.watch(()=>t.range,m=>{m?(o.value={start:null,end:null},a.value={start:null,end:null}):(o.value=null,a.value=null)});const l=i,n=e.ref(!1),o=e.ref(t.range?{start:null,end:null}:null),a=e.ref(t.range?{start:null,end:null}:null),g=e.ref(new Date().toLocaleString("default",{month:"long"})),c=e.ref(new Date().getFullYear()),d=e.ref(t.range?{start:0,end:0}:0),k=e.ref(t.range?{start:0,end:0}:0),$=e.ref(null),M=e.computed(()=>`${t.id}-input`),p=e.computed(()=>`${t.id}-popup`),u=e.computed(()=>t.mode==="date"||t.mode==="datetime"),h=e.computed(()=>t.mode==="time"||t.mode==="datetime");e.computed(()=>new Date(c.value,b.value));const b=e.computed(()=>B.indexOf(g.value)),w=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],y=e.computed(()=>new Date(c.value,b.value).getDay()),V=e.computed(()=>{const m=new Date(c.value,b.value+1,0).getDate();return Array.from({length:m},(f,s)=>new Date(c.value,b.value,s+1))}),C=e.computed(()=>Array.from({length:y.value},(m,f)=>f)),T=Array.from({length:24},(m,f)=>f),z=Array.from({length:60},(m,f)=>f),I=e.computed(()=>typeof navigator<"u"&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)),B=["January","February","March","April","May","June","July","August","September","October","November","December"],D=e.computed(()=>{const m=new Date().getFullYear();return Array.from({length:100},(f,s)=>m-50+s)}),S=e.computed(()=>{if(!u.value||!o.value)return"";if(t.range&&o.value.start&&o.value.end){const m=o.value.start.toLocaleDateString("en-US"),f=o.value.end.toLocaleDateString("en-US");return`${m} - ${f}`}return!t.range&&o.value?o.value.toLocaleDateString("en-US"):""}),_=m=>m instanceof Date?m:new Date(m),N=m=>m instanceof Date&&!isNaN(m),P=e.computed(()=>{if(!h.value)return"";const m=f=>{var R,A,J;const s=((R=d.value)==null?void 0:R[f])??d.value,L=((A=k.value)==null?void 0:A[f])??k.value;return I.value?((J=a.value)==null?void 0:J[f])??a.value:`${s.toString().padStart(2,"0")}:${L.toString().padStart(2,"0")}`};return t.range?`${m("start")} - ${m("end")}`:m()}),j=e.computed(()=>{const m=S.value,f=P.value;return`${m} ${f}`.trim()}),Ml=()=>n.value=!n.value,K=()=>{x(),Tl()},Tl=()=>n.value=!1,Il=()=>{o.value=t.range?{start:null,end:null}:null,a.value=t.range?{start:null,end:null}:null,x()},zl=m=>{t.range?o.value.start&&o.value.end?o.value={start:m,end:null}:o.value.start?o.value.end=m:o.value.start=m:o.value=m,x()},Ll=m=>(m=_(m),t.range?o.value.start&&N(o.value.start)&&m.getTime()===o.value.start.getTime()||o.value.end&&N(o.value.end)&&m.getTime()===o.value.end.getTime():N(o.value)&&m.getTime()===o.value.getTime()),Ol=m=>{m=_(m);const f=new Date;return m.getDate()===f.getDate()&&m.getMonth()===f.getMonth()&&m.getFullYear()===f.getFullYear()},Fl=m=>(m=_(m),t.range&&N(o.value.start)&&m.getTime()===o.value.start.getTime()),Pl=m=>(m=_(m),t.range&&N(o.value.end)&&m.getTime()===o.value.end.getTime()),Al=m=>{if(m=_(m),t.range&&N(o.value.start)&&N(o.value.end)){const f=o.value.start.getTime(),s=o.value.end.getTime(),L=m.getTime();return L>f&&L<s}return!1},Ul=()=>{let m=b.value-1;m<0&&(m=11,c.value--),g.value=B[m],x()},jl=()=>{let m=b.value+1;m>11&&(m=0,c.value++),g.value=B[m],x()},Y=m=>{$.value&&!$.value.contains(m.target)&&n.value==!0&&K()},x=()=>{let m={};const f=(s,L,R)=>{s instanceof Date&&!isNaN(s)||(s=new Date);const A=new Date(s);return A.setUTCHours(L,R,0,0),A.toISOString()};t.range?(m.from=f(o.value.start,d.value.start,k.value.start),m.to=f(o.value.end,d.value.end,k.value.end)):m=f(o.value,d.value,k.value),l("updated",m)};return e.onMounted(()=>{t.initialDate&&(t.range&&t.initialDate.start&&t.initialDate.end?o.value={start:new Date(t.initialDate.start),end:new Date(t.initialDate.end)}:t.initialDate.start&&(o.value={start:new Date(t.initialDate.start)})),t.range?(d.value.start=d.value.start??new Date().getHours(),d.value.end=d.value.end??new Date().getHours(),k.value.start=k.value.start??new Date().getMinutes(),k.value.end=k.value.end??new Date().getMinutes()):(d.value=d.value??new Date().getHours(),k.value=k.value??new Date().getMinutes())}),t.popup&&e.onMounted(()=>document.addEventListener("click",Y)),e.onUnmounted(()=>document.removeEventListener("click",Y)),(m,f)=>(e.openBlock(),e.createElementBlock("div",{class:"inline-block relative w-full lg:w-[360px]",ref_key:"pickerContainer",ref:$},[e.createElementVNode("div",{class:"flex items-center gap-2 cursor-pointer",onClick:Ml},[r.popup?e.renderSlot(m.$slots,"default",{key:0},()=>[e.createElementVNode("input",{type:"text",class:"input-bordered w-full cursor-pointer input",placeholder:r.placeholder,value:j.value,readonly:"",id:M.value},null,8,Qe),e.createElementVNode("button",ve,[e.createVNode(e.unref(ie))])],!0):e.createCommentVNode("",!0)]),n.value||!r.popup?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["z-50 lg:bg-base-100 md:mt-2 md:p-4 px-4 rounded-md w-full",[{absolute:r.popup}]]),id:p.value},[u.value?(e.openBlock(),e.createElementBlock("div",tt,[e.createElementVNode("button",{class:"hidden md:block btn-outline btn btn-primary md:btn-sm",onClick:Ul},f[11]||(f[11]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 19l-7-7 7-7"})],-1)])),e.withDirectives(e.createElementVNode("select",{class:"border-none w-fit select","onUpdate:modelValue":f[0]||(f[0]=s=>g.value=s),onChange:x},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(B,(s,L)=>e.createElementVNode("option",{key:L,value:s},e.toDisplayString(s),9,lt)),64))],544),[[e.vModelSelect,g.value]]),e.withDirectives(e.createElementVNode("select",{class:"border-none w-24 select","onUpdate:modelValue":f[1]||(f[1]=s=>c.value=s),onChange:x},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(D.value,s=>(e.openBlock(),e.createElementBlock("option",{key:s,value:s},e.toDisplayString(s),9,nt))),128))],544),[[e.vModelSelect,c.value]]),e.createElementVNode("button",{class:"hidden md:block btn-outline btn btn-primary md:btn-sm",onClick:jl},f[12]||(f[12]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 5l7 7-7 7"})],-1)]))])):e.createCommentVNode("",!0),u.value?(e.openBlock(),e.createElementBlock("div",ot,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(w,s=>e.createElementVNode("div",{key:s,class:"text-center"},e.toDisplayString(s),1)),64)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,s=>(e.openBlock(),e.createElementBlock("div",{key:s,class:"text-center"}))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,s=>(e.openBlock(),e.createElementBlock("div",{key:s,class:e.normalizeClass(["hover:bg-primary-10 py-1 rounded-full text-center cursor-pointer",{"bg-primary text-primary-content":Ll(s),today:Ol(s),"range-start bg-primary text-primary-content":Fl(s),"range-end bg-primary text-primary-content":Pl(s),"in-range bg-primary/20 hover:bg-primary/10":Al(s)}]),onClick:L=>zl(s)},e.toDisplayString(s.getDate()),11,at))),128))])):e.createCommentVNode("",!0),h.value?(e.openBlock(),e.createElementBlock("div",rt,[t.range?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("h3",st,"Select Time")),t.range?(e.openBlock(),e.createElementBlock("div",pt,[e.createElementVNode("div",null,[f[13]||(f[13]=e.createElementVNode("p",{class:"font-bold"},"Start Time",-1)),I.value?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,type:"time",class:"input-bordered w-full input","onUpdate:modelValue":f[5]||(f[5]=s=>a.value.start=s),onChange:x},null,544)),[[e.vModelText,a.value.start]]):(e.openBlock(),e.createElementBlock("div",ut,[e.withDirectives(e.createElementVNode("select",{class:"w-full select-bordered select","onUpdate:modelValue":f[6]||(f[6]=s=>d.value.start=s),onChange:x},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(T),s=>(e.openBlock(),e.createElementBlock("option",{key:s,value:s},e.toDisplayString(s.toString().padStart(2,"0")),9,ft))),128))],544),[[e.vModelSelect,d.value.start,void 0,{number:!0}]]),e.withDirectives(e.createElementVNode("select",{class:"w-full select-bordered select","onUpdate:modelValue":f[7]||(f[7]=s=>k.value.start=s),onChange:x},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(z),s=>(e.openBlock(),e.createElementBlock("option",{key:s,value:s},e.toDisplayString(s.toString().padStart(2,"0")),9,gt))),128))],544),[[e.vModelSelect,k.value.start,void 0,{number:!0}]])]))]),e.createElementVNode("div",null,[f[14]||(f[14]=e.createElementVNode("p",{class:"font-bold"},"End Time",-1)),I.value?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,type:"time",class:"input-bordered w-full input","onUpdate:modelValue":f[8]||(f[8]=s=>a.value.end=s),onChange:x},null,544)),[[e.vModelText,a.value.end]]):(e.openBlock(),e.createElementBlock("div",ht,[e.withDirectives(e.createElementVNode("select",{class:"w-full select-bordered select","onUpdate:modelValue":f[9]||(f[9]=s=>d.value.end=s),onChange:x},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(T),s=>(e.openBlock(),e.createElementBlock("option",{key:s,value:s},e.toDisplayString(s.toString().padStart(2,"0")),9,kt))),128))],544),[[e.vModelSelect,d.value.end,void 0,{number:!0}]]),e.withDirectives(e.createElementVNode("select",{class:"w-full select-bordered select","onUpdate:modelValue":f[10]||(f[10]=s=>k.value.end=s),onChange:x},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(z),s=>(e.openBlock(),e.createElementBlock("option",{key:s,value:s},e.toDisplayString(s.toString().padStart(2,"0")),9,bt))),128))],544),[[e.vModelSelect,k.value.end,void 0,{number:!0}]])]))])])):(e.openBlock(),e.createElementBlock("div",it,[I.value?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,type:"time",class:"input-bordered w-full input","onUpdate:modelValue":f[2]||(f[2]=s=>a.value=s),onChange:x},null,544)),[[e.vModelText,a.value]]):(e.openBlock(),e.createElementBlock("div",ct,[e.withDirectives(e.createElementVNode("select",{class:"w-full select-bordered select","onUpdate:modelValue":f[3]||(f[3]=s=>d.value=s),onChange:x},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(T),s=>(e.openBlock(),e.createElementBlock("option",{key:s,value:s},e.toDisplayString(s.toString().padStart(2,"0")),9,dt))),128))],544),[[e.vModelSelect,d.value,void 0,{number:!0}]]),e.withDirectives(e.createElementVNode("select",{class:"w-full select-bordered select","onUpdate:modelValue":f[4]||(f[4]=s=>k.value=s),onChange:x},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(z),s=>(e.openBlock(),e.createElementBlock("option",{key:s,value:s},e.toDisplayString(s.toString().padStart(2,"0")),9,mt))),128))],544),[[e.vModelSelect,k.value,void 0,{number:!0}]])]))]))])):e.createCommentVNode("",!0),e.createElementVNode("div",yt,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-secondary",r.popup?"w-fit":"w-full"]),onClick:Il},"Clear",2),r.popup?(e.openBlock(),e.createElementBlock("button",{key:0,class:"btn btn-primary btn-wide",onClick:K},"Close")):e.createCommentVNode("",!0)])],10,et)):e.createCommentVNode("",!0)],512))}},[["__scopeId","data-v-488ecabe"]]),wt=Object.freeze(Object.defineProperty({__proto__:null,default:W},Symbol.toStringTag,{value:"Module"})),Bt=["value","checked","onChange","disabled"],Et=e.defineComponent({__name:"rating",props:{initialRating:{default:0},numberOfStars:{default:5},halfStars:{type:Boolean,default:!0},isInteractive:{type:Boolean,default:!1},size:{default:"sm"}},setup(r){const i=r,t=e.ref(i.initialRating);e.watch(()=>i.initialRating,n=>{t.value=n});const l=n=>{t.value=n};return(n,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["rating",[`rating-${i.size}`,{"rating-half":n.halfStars}]])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.numberOfStars*(n.halfStars?2:1),a=>(e.openBlock(),e.createElementBlock("input",{key:a,type:"radio",value:n.halfStars?a*.5:a,checked:t.value===(n.halfStars?a*.5:a),onChange:g=>n.isInteractive?l(n.halfStars?a*.5:a):null,class:e.normalizeClass(["mask mask-star",{"bg-yellow-400":t.value>=(n.halfStars?a*.5:a),"mask-half-1":n.halfStars&&a%2!==0,"mask-half-2":n.halfStars&&a%2===0,"cursor-pointer":n.isInteractive,"cursor-default":!n.isInteractive}]),disabled:!n.isInteractive},null,42,Bt))),128))],2))}}),Vt={class:"badge"},St=["onClick"],Ct={class:"opacity-75"},$t=["placeholder"],_t=e.defineComponent({__name:"taginput",props:{modelValue:{},maxTagAmount:{},placeholder:{},class:{}},emits:["update:modelValue"],setup(r,{emit:i}){const t=r,l=i,n=e.ref([...t.modelValue]),o=t.maxTagAmount===void 0?-1:t.maxTagAmount,a=e.ref(null),g=e.ref(""),c=e.computed(()=>o<0||n.value.length<o),d=()=>{const p=g.value.trim();p&&!n.value.includes(p)&&(n.value.push(p),l("update:modelValue",n.value),g.value="")},k=p=>{n.value=n.value.filter(u=>u!==p),l("update:modelValue",n.value)},$=()=>{g.value===""&&(n.value.pop(),l("update:modelValue",n.value))},M=p=>{p.key==="Enter"?d():p.key==="Backspace"&&g.value===""&&$()};return e.watch(()=>t.modelValue,p=>{n.value=[...p]}),(p,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["flex flex-wrap gap-2 bg-base-100 shadow px-4 py-6 border border-base-content/20 rounded",p.$props.class])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,h=>e.renderSlot(p.$slots,"tag",{key:h,tag:h},()=>[e.createElementVNode("div",Vt,[e.createElementVNode("button",{class:"!px-1 !py-0 h-fit font-bold cursor-pointer",onClick:b=>k(h),"aria-label":"Remove tag"},"X",8,St),e.createElementVNode("span",Ct,e.toDisplayString(h),1)])])),128)),e.renderSlot(p.$slots,"input",{showInput:c.value},()=>[c.value?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,ref_key:"inputRef",ref:a,"onUpdate:modelValue":u[0]||(u[0]=h=>g.value=h),type:"text",placeholder:p.placeholder||"Type here",class:"h-full input input-ghost",onKeydown:M,"aria-label":"Add tags"},null,40,$t)),[[e.vModelText,g.value]]):e.createCommentVNode("",!0)])],2))}}),Nt={class:"w-full max-w-xs form-control"},Dt={key:0,class:"label"},xt={class:"label-text"},Mt=["value"],Tt={key:0,value:"",disabled:"",selected:""},It=["value"],zt=e.defineComponent({__name:"select",props:{options:{},label:{},placeholder:{},modelValue:{}},emits:["update:modelValue"],setup(r,{expose:i,emit:t}){console.log(r.placeholder);const n=t,o=e.ref(null),a=c=>{const d=c.target;n("update:modelValue",d.value)};return i({focusInput:()=>{var c;console.log("select.vue: focusInput method called."),(c=o.value)==null||c.focus()}}),(c,d)=>(e.openBlock(),e.createElementBlock("div",Nt,[c.label?(e.openBlock(),e.createElementBlock("label",Dt,[e.createElementVNode("span",xt,e.toDisplayString(c.label),1)])):e.createCommentVNode("",!0),e.createElementVNode("select",{ref_key:"selectElement",ref:o,class:"rounded-md w-full select-bordered select",value:c.modelValue,onChange:a},[c.placeholder?(e.openBlock(),e.createElementBlock("option",Tt,e.toDisplayString(c.placeholder),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.options,k=>(e.openBlock(),e.createElementBlock("option",{key:k.value,value:k.value},e.toDisplayString(k.text),9,It))),128))],40,Mt)]))}}),Lt={key:0,class:"label"},Ot={class:"label-text"},Ft=["onKeydown","aria-expanded","aria-activedescendant"],Pt=["placeholder"],At={class:"top-full z-10 absolute bg-base-100 shadow-lg mt-1 rounded-md w-full dropdown-content",role:"listbox"},Ut={class:"flex-nowrap p-0 w-[inherit] max-h-60 overflow-y-auto menu"},jt=["onMousedown","id","aria-selected"],Rt={__name:"filterableSelect",props:{options:{type:Array,required:!0,default:()=>[]},label:{type:String,default:""},placeholder:{type:String,default:"Select an option"},modelValue:{type:[String,Number,Object,null],default:null}},emits:["update:modelValue","select"],setup(r,{expose:i,emit:t}){const l=r,n=t,o=e.useSlots(),a=e.computed(()=>{const D=(o.default?o.default():[]).filter(S=>S.type!==e.Comment);return console.log("hasDefaultSlotContent computed:",D.length>0),D.length>0}),g=e.ref(""),c=e.ref(null),d=e.ref(!1),k=e.ref(null),$=e.ref(null),M=e.ref(null),p=e.ref(null),u=()=>{console.log("openDropdown called"),d.value=!0},h=()=>{console.log("closeDropdown called"),d.value=!1,p.value=null,a.value||(c.value&&g.value!==c.value.text?g.value=c.value.text:c.value||(g.value=""))},b=()=>{d.value?h():u()},w=e.computed(()=>{const B=g.value.toLowerCase();return B===""&&!d.value?[]:l.options.filter(S=>S.text.toLowerCase().includes(B))});e.watch(()=>l.modelValue,(B,D)=>{if(B!==D&&h(),B==null)c.value=null,!d.value&&!a.value&&(g.value="");else{const S=l.options.find(_=>_.value===B);S?(c.value=S,!d.value&&!a.value&&(g.value=S.text)):(c.value=null,!d.value&&!a.value&&(g.value=""))}},{immediate:!0});const y=B=>{$.value&&!$.value.contains(B.target)&&h()},V=()=>{setTimeout(()=>{$.value&&!$.value.contains(document.activeElement)&&h()},100)};e.watch(d,B=>{B?setTimeout(()=>{document.addEventListener("click",y)},0):document.removeEventListener("click",y)}),e.onBeforeUnmount(()=>{document.removeEventListener("click",y),window.removeEventListener("keydown",I)});const C=B=>{c.value=B,a.value||(g.value=B.text),n("update:modelValue",B.value),n("select",B)},T=()=>{w.value.length>0&&C(w.value[0])},z=()=>{d.value||u()},I=B=>{if(!d.value||w.value.length===0)return;const D=w.value.findIndex((_,N)=>"option-"+N===p.value);let S=-1;if(B.key==="ArrowDown")B.preventDefault(),S=(D+1)%w.value.length;else if(B.key==="ArrowUp")B.preventDefault(),S=(D-1+w.value.length)%w.value.length;else if(B.key==="Enter"&&p.value){B.preventDefault();const _=w.value.find((N,P)=>"option-"+P===p.value);_&&C(_);return}else if(B.key==="Escape"){B.preventDefault(),h(),M.value&&M.value.focus();return}else if(a.value)return;if(S!==-1){p.value="option-"+S;const _=document.getElementById(p.value);_&&requestAnimationFrame(()=>{_.scrollIntoView({block:"nearest",behavior:"smooth"})})}};return e.watch(d,B=>{B?(window.addEventListener("keydown",I),!a.value&&!g.value&&c.value&&(g.value=c.value.text)):(console.log("Removing window keydown listener"),window.removeEventListener("keydown",I))}),e.onBeforeUnmount(()=>{document.removeEventListener("click",y),window.removeEventListener("keydown",I)}),i({isDropdownOpen:d,selectedItem:c,openDropdown:u,closeDropdown:h,toggleDropdown:b,selectItem:C,filterText:g,hasDefaultSlotContent:a}),(B,D)=>(e.openBlock(),e.createElementBlock("div",{class:"relative w-full max-w-xs form-control",ref_key:"componentRoot",ref:$},[r.label?(e.openBlock(),e.createElementBlock("label",Lt,[e.createElementVNode("span",Ot,e.toDisplayString(r.label),1)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["flex items-center input-bordered rounded-md w-fit cursor-pointer",{input:!a.value,select:!a.value}]),tabindex:"0",onClick:u,onKeydown:[e.withKeys(e.withModifiers(T,["prevent"]),["enter"]),e.withKeys(e.withModifiers(T,["prevent"]),["space"])],onBlur:V,role:"combobox","aria-haspopup":"listbox","aria-expanded":d.value,"aria-activedescendant":p.value,"aria-autocomplete":"list",ref_key:"activatorWrapper",ref:M},[e.renderSlot(B.$slots,"default",{},()=>[a.value?e.createCommentVNode("",!0):e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,type:"text",placeholder:r.placeholder,class:"bg-transparent border-none focus:outline-none w-full","onUpdate:modelValue":D[0]||(D[0]=S=>g.value=S),ref_key:"filterInput",ref:k,onFocus:u,onInput:z,tabindex:"-1"},null,40,Pt)),[[e.vModelText,g.value]])]),a.value?(e.openBlock(),e.createBlock(e.unref(ce),{key:0,class:e.normalizeClass({"rotate-180":d.value}),size:20},null,8,["class"])):e.createCommentVNode("",!0)],42,Ft),e.withDirectives(e.createElementVNode("div",At,[e.createElementVNode("ul",Ut,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.value,(S,_)=>(e.openBlock(),e.createElementBlock("li",{key:S.value,onMousedown:e.withModifiers(N=>C(S),["prevent"]),class:"hover:bg-base-200 rounded-md w-full cursor-pointer",id:"option-"+_,role:"option","aria-selected":c.value&&c.value.value===S.value},[e.createElementVNode("a",null,e.toDisplayString(S.text),1)],40,jt))),128))])],512),[[e.vShow,d.value&&w.value.length>0]])],512))}},qt={class:"w-full max-w-xs form-control"},Ht={key:0,class:"label"},Wt={class:"label-text"},Kt=["type","placeholder","value"],Yt={key:1,class:"label"},Jt={class:"label-text-alt text-error validator-hint"},Gt={key:2,class:"label"},Xt={class:"label-text-alt text-success validator-hint"},Zt=e.defineComponent({__name:"inputField",props:{modelValue:{default:""},label:{default:""},placeholder:{default:""},type:{default:"text"},rules:{default:()=>({})},successMessage:{default:""},size:{default:"md"},color:{default:""},style:{default:""}},emits:["update:modelValue","validate"],setup(r,{expose:i,emit:t}){const l=r,n=t,o=e.ref(null),a=e.ref(!1),g=e.ref(""),c=e.computed(()=>{var b,w,y,V;let p=!0,u="";const h=l.modelValue;return(b=l.rules)!=null&&b.required&&(h==null||h==="")&&(p=!1,u="This field is required."),p&&((w=l.rules)==null?void 0:w.minLength)!==void 0&&typeof h=="string"&&h.length<l.rules.minLength&&(p=!1,u=`Must be at least ${l.rules.minLength} characters.`),p&&((y=l.rules)==null?void 0:y.maxLength)!==void 0&&typeof h=="string"&&h.length>l.rules.maxLength&&(p=!1,u=`Cannot exceed ${l.rules.maxLength} characters.`),p&&((V=l.rules)!=null&&V.email)&&typeof h=="string"&&h&&(/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(h)||(p=!1,u="Please enter a valid email address.")),g.value=u,n("validate",p),p}),d=e.computed(()=>a.value&&!c.value),k=p=>{const u=p.target;n("update:modelValue",u.value),a.value&&c.value},$=()=>{a.value=!0,c.value};return e.watch(()=>l.modelValue,()=>{a.value&&c.value}),i({focusInput:()=>{var p;console.log("inputField.vue: focusInput method called."),(p=o.value)==null||p.focus()},isValid:c,isTouched:a,errorMessage:g}),(p,u)=>(e.openBlock(),e.createElementBlock("div",qt,[p.label?(e.openBlock(),e.createElementBlock("label",Ht,[e.createElementVNode("span",Wt,e.toDisplayString(p.label),1)])):e.createCommentVNode("",!0),e.createElementVNode("input",{ref_key:"inputElement",ref:o,type:p.type,placeholder:p.placeholder,class:e.normalizeClass(["input-bordered rounded-md w-full input validator",{"input-xs":p.size==="xs","input-sm":p.size==="sm","input-md":p.size==="md","input-lg":p.size==="lg","input-xl":p.size==="xl","input-neutral":p.color==="neutral"&&!d.value,"input-primary":p.color==="primary"&&!d.value,"input-secondary":p.color==="secondary"&&!d.value,"input-accent":p.color==="accent"&&!d.value,"input-info":p.color==="info"&&!d.value,"input-success":p.color==="success"&&!d.value&&!(c.value&&a.value),"input-warning":p.color==="warning"&&!d.value,"input-ghost":p.style==="ghost","input-error":d.value}]),value:p.modelValue,onInput:k,onBlur:$},null,42,Kt),d.value?(e.openBlock(),e.createElementBlock("div",Yt,[e.createElementVNode("span",Jt,e.toDisplayString(g.value),1)])):c.value&&a.value&&p.successMessage?(e.openBlock(),e.createElementBlock("div",Gt,[e.createElementVNode("span",Xt,e.toDisplayString(p.successMessage),1)])):e.createCommentVNode("",!0)]))}}),Qt=e.defineComponent({__name:"loader",props:{loading:{type:Boolean,default:!0},size:{default:"md"},type:{default:"spinner"},color:{default:"primary"}},setup(r){const i=r,t=e.ref(i.loading);return e.watch(()=>i.loading,l=>{t.value=l}),(l,n)=>t.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["loading",[{"loading-xs":l.size==="xs"},{"loading-sm":l.size==="sm"},{"loading-md":l.size==="md"},{"loading-lg":l.size==="lg"},{"loading-xl":l.size==="xl"},{"loading-spinner":l.type==="spinner"},{"loading-dots":l.type==="dots"},{"loading-ring":l.type==="ring"},{"loading-balls":l.type==="balls"},{"loading-bars":l.type==="bars"},{"loading-infinity":l.type==="infinity"},{"text-primary":l.color==="primary"},{"text-secondary":l.color==="secondary"},{"text-accent":l.color==="accent"},{"text-neutral":l.color==="neutral"},{"text-info":l.color==="info"},{"text-success":l.color==="success"},{"text-warning":l.color==="warning"},{"text-error":l.color==="error"}]])},null,2)):e.createCommentVNode("",!0)}}),vt={class:"footer sm:footer-horizontal container"},el={class:"footer-title"},tl=["href"],ll={key:0,class:"sm:hidden w-full"},nl={class:"border-b-2 border-base-100 last:border-b-0 w-full"},ol={tabindex:"0",class:"collapse collapse-plus w-full"},al={class:"collapse-title font-bold text-lg collapsible-footer-title"},rl={class:"collapse-content flex w-full text-sm"},sl={class:"flex flex-col gap-2.5"},il={class:"w-full"},cl=["href"],dl={class:"w-full"},ml=e.defineComponent({__name:"footer",props:{items:{},background:{},color:{},collapseOnMobile:{type:Boolean,default:!1}},setup(r){const i=r;return(t,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["mx-auto md:px-10 py-10 text-base-content",[t.background??"bg-base-200",t.color??"text-base-content"]])},[e.createElementVNode("footer",vt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.items,n=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass([{"hidden sm:grid":t.collapseOnMobile}])},[e.createElementVNode("h6",el,e.toDisplayString(n.title),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.items,o=>(e.openBlock(),e.createElementBlock("a",{class:"link link-hover",href:o.link},e.toDisplayString(o.text),9,tl))),256))],2))),256)),t.collapseOnMobile?(e.openBlock(),e.createElementBlock("nav",ll,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.items,n=>(e.openBlock(),e.createElementBlock("ul",nl,[e.createElementVNode("div",ol,[e.createElementVNode("div",al,e.toDisplayString(n.title),1),e.createElementVNode("div",rl,[e.createElementVNode("ul",sl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.items,o=>(e.openBlock(),e.createElementBlock("li",il,[e.createElementVNode("a",{class:"w-full font-medium link link-hover",href:o.link},e.toDisplayString(o.text),9,cl)]))),256))])])])]))),256))])):e.createCommentVNode("",!0),e.createElementVNode("aside",dl,[e.renderSlot(t.$slots,"default")])])],2))}}),pl={},ul={class:"min-h-40 container hero"},fl={class:"px-0! text-center hero-content"},gl={class:"mt-9 text-4xl"};function hl(r,i){return e.openBlock(),e.createElementBlock("div",ul,[e.createElementVNode("div",fl,[e.createElementVNode("div",null,[e.createElementVNode("h1",gl,[e.renderSlot(r.$slots,"title",{},()=>[i[0]||(i[0]=e.createTextVNode("hero title"))])]),e.createElementVNode("p",null,[e.renderSlot(r.$slots,"description",{class:"py-9"})]),e.renderSlot(r.$slots,"call-to-action-block",{class:"max-w-full"},()=>[i[1]||(i[1]=e.createElementVNode("button",{class:"btn btn-primary"},"Call to action",-1))])])])])}const kl=O(pl,[["render",hl]]),bl={class:"flex flex-row place-content-center gap-4 categories"},yl=["onClick"],wl=e.defineComponent({__name:"categoryNavigation",props:{searchOptions:{},currentCategory:{}},emits:["update:currentCategory"],setup(r,{emit:i}){const t=r,l=i;function n(o){l("update:currentCategory",o)}return(o,a)=>(e.openBlock(),e.createElementBlock("div",bl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.searchOptions,g=>(e.openBlock(),e.createElementBlock("div",{key:g.category},[e.createElementVNode("button",{onClick:c=>n(g.category),class:e.normalizeClass(["truncate btn btn-ghost",{"font-semibold":t.currentCategory===g.category}])},e.toDisplayString(g.category),11,yl)]))),128))]))}}),Bl={class:"md:flex hidden navbar-start"},El={class:"md:flex justify-center items-center hidden navbar-center"},Vl={class:"md:flex hidden navbar-end"},Sl={class:"navbar-bottom md:flex hidden"},Cl=O(e.defineComponent({__name:"navigationBar",props:{isCollapsed:{type:Boolean,default:!0}},setup(r){const i=r;return(t,l)=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(["place-items-start border-primary bg-base-100 px-5 py-5 border-b-4 transition-all navbar navigationbar",i.isCollapsed?"collapsed":""])},[e.createElementVNode("div",Bl,[e.renderSlot(t.$slots,"start",{},void 0,!0)]),e.createElementVNode("div",El,[e.renderSlot(t.$slots,"center",{},void 0,!0)]),e.createElementVNode("div",Vl,[e.renderSlot(t.$slots,"end",{},void 0,!0)]),e.createElementVNode("div",Sl,[e.renderSlot(t.$slots,"bottom",{},void 0,!0)])],2))}}),[["__scopeId","data-v-8ddb2b45"]]),$l={key:0,class:"hidden top-4 right-0 absolute md:flex gap-4"},_l=["onClick","aria-selected"],Nl={key:0,role:"tabpanel",class:"p-6 border-x-0 border-t-2 border-b-0 border-base-300 max-w-full overflow-x-auto tab-content"},Dl={class:"p-6 border-x-0 border-t-2 border-b-0 border-base-300 max-w-full"},xl=e.defineComponent({__name:"tab",props:{items:{},withControlls:{type:Boolean,default:!1},rotateTabsAfter:{default:0},buttonOnlyMode:{type:Boolean,default:!1}},emits:["tab-changed"],setup(r,{emit:i}){const t=r,l=e.ref(t.items[0]),n=i;function o(c){l.value=c,n("tab-changed",c)}function a(){const d=(t.items.indexOf(l.value)+1)%t.items.length;o(t.items[d])}function g(){const d=(t.items.indexOf(l.value)-1+t.items.length)%t.items.length;o(t.items[d])}return e.onMounted(()=>{t.items&&o(t.items[0])}),e.onUnmounted(()=>{t.rotateTabsAfter&&t.rotateTabsAfter>0&&setInterval(()=>{a()},t.rotateTabsAfter*1e3)}),(c,d)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{role:"tablist",class:e.normalizeClass(["relative tabs-bordered w-full tabs tabs-lg",{"flex-nowrap overflow-x-auto":c.buttonOnlyMode}])},[c.withControlls?(e.openBlock(),e.createElementBlock("div",$l,[e.createElementVNode("button",{onClick:d[0]||(d[0]=k=>g()),class:"cursor-pointer"},"Previous"),e.createElementVNode("button",{onClick:d[1]||(d[1]=k=>a()),class:"text-primary cursor-pointer"},"Next")])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.items,k=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("a",{type:"button",role:"tab",class:e.normalizeClass(["min-w-max tab",k===l.value?"bg-primary text-base-100":""]),onClick:$=>o(k),"aria-selected":l.value==k},e.toDisplayString(k),11,_l),c.buttonOnlyMode?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Nl,[e.renderSlot(c.$slots,`${k}-tab`)]))],64))),256))],2),e.createElementVNode("div",Dl,[e.renderSlot(c.$slots,"default")])],64))}});E.Accordion=we,E.AdvancedSearch=Ze,E.Avatar=Ve,E.Badge=Se,E.ButtonComponent=X,E.Card=Me,E.Carousel=Fe,E.CarouselItem=Pe,E.CategoryNavigation=wl,E.DatetimePicker=W,E.Dropdown=v,E.FilterableSelect=Rt,E.Footer=ml,E.Hero=kl,E.InputField=Zt,E.Loader=Qt,E.Modal=le,E.NavigationBar=Cl,E.Rating=Et,E.Selector=zt,E.Swap=ae,E.Tab=xl,E.TagInput=_t,E.ThemeController=ge,Object.defineProperty(E,Symbol.toStringTag,{value:"Module"})});
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "manolis-ui",
3
3
  "private": false,
4
- "version": "0.6.7",
4
+ "version": "0.6.9",
5
5
  "type": "module",
6
6
  "files": [
7
7
  "dist/*"