@gemafajarramadhan/dynamic-ui 1.2.18 → 1.2.20
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.
- package/dist/dynamic-ui.css +2 -2
- package/dist/dynamic-ui.es.js +26 -13
- package/dist/dynamic-ui.umd.js +3 -3
- package/package.json +1 -1
package/dist/dynamic-ui.umd.js
CHANGED
|
@@ -8499,7 +8499,7 @@
|
|
|
8499
8499
|
|
|
8500
8500
|
If you want to hide the \`${a}\`, you can wrap it with our VisuallyHidden component.
|
|
8501
8501
|
|
|
8502
|
-
For more information, see https://www.reka-ui.com/docs/components/${n}`,c=`Warning: Missing \`Description\` or \`aria-describedby="undefined"\` for ${e}.`;t.onMounted(()=>{var u;document.getElementById(o)||console.warn(s);const h=(u=i.value)==null?void 0:u.getAttribute("aria-describedby");r&&h&&(document.getElementById(r)||console.warn(c))})}var wT={},vT=t.defineComponent({__name:"DialogContentImpl",props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(a,{emit:e}){const n=a,o=e,r=Tt(),{forwardRef:i,currentElement:s}=ke();return r.titleId||(r.titleId=gs(void 0,"reka-dialog-title")),r.descriptionId||(r.descriptionId=gs(void 0,"reka-dialog-description")),t.onMounted(()=>{r.contentElement=s,at()!==document.body&&(r.triggerElement.value=at())}),wT.NODE_ENV!=="production"&&xT({titleName:"DialogTitle",contentName:"DialogContent",componentLink:"dialog.html#title",titleId:r.titleId,descriptionId:r.descriptionId,contentElement:s}),(c,d)=>(t.openBlock(),t.createBlock(t.unref(HA),{"as-child":"",loop:"",trapped:n.trapFocus,onMountAutoFocus:d[5]||(d[5]=h=>o("openAutoFocus",h)),onUnmountAutoFocus:d[6]||(d[6]=h=>o("closeAutoFocus",h))},{default:t.withCtx(()=>[t.createVNode(t.unref(YS),t.mergeProps({id:t.unref(r).contentId,ref:t.unref(i),as:c.as,"as-child":c.asChild,"disable-outside-pointer-events":c.disableOutsidePointerEvents,role:"dialog","aria-describedby":t.unref(r).descriptionId,"aria-labelledby":t.unref(r).titleId,"data-state":t.unref(gT)(t.unref(r).open.value)},c.$attrs,{onDismiss:d[0]||(d[0]=h=>t.unref(r).onOpenChange(!1)),onEscapeKeyDown:d[1]||(d[1]=h=>o("escapeKeyDown",h)),onFocusOutside:d[2]||(d[2]=h=>o("focusOutside",h)),onInteractOutside:d[3]||(d[3]=h=>o("interactOutside",h)),onPointerDownOutside:d[4]||(d[4]=h=>o("pointerDownOutside",h))}),{default:t.withCtx(()=>[t.renderSlot(c.$slots,"default")]),_:3},16,["id","as","as-child","disable-outside-pointer-events","aria-describedby","aria-labelledby","data-state"])]),_:3},8,["trapped"]))}}),OA=vT,CT=t.defineComponent({__name:"DialogContentModal",props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(a,{emit:e}){const n=a,o=e,r=Tt(),i=ML(o),{forwardRef:s,currentElement:c}=ke();return _A(c),(d,h)=>(t.openBlock(),t.createBlock(OA,t.mergeProps({...n,...t.unref(i)},{ref:t.unref(s),"trap-focus":t.unref(r).open.value,"disable-outside-pointer-events":!0,onCloseAutoFocus:h[0]||(h[0]=u=>{var p;u.defaultPrevented||(u.preventDefault(),(p=t.unref(r).triggerElement.value)==null||p.focus())}),onPointerDownOutside:h[1]||(h[1]=u=>{const p=u.detail.originalEvent,y=p.button===0&&p.ctrlKey===!0;(p.button===2||y)&&u.preventDefault()}),onFocusOutside:h[2]||(h[2]=u=>{u.preventDefault()})}),{default:t.withCtx(()=>[t.renderSlot(d.$slots,"default")]),_:3},16,["trap-focus"]))}}),LT=CT,ST=t.defineComponent({__name:"DialogContentNonModal",props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(a,{emit:e}){const n=a,r=ML(e);ke();const i=Tt(),s=t.ref(!1),c=t.ref(!1);return(d,h)=>(t.openBlock(),t.createBlock(OA,t.mergeProps({...n,...t.unref(r)},{"trap-focus":!1,"disable-outside-pointer-events":!1,onCloseAutoFocus:h[0]||(h[0]=u=>{var p;u.defaultPrevented||(s.value||(p=t.unref(i).triggerElement.value)==null||p.focus(),u.preventDefault()),s.value=!1,c.value=!1}),onInteractOutside:h[1]||(h[1]=u=>{var f;u.defaultPrevented||(s.value=!0,u.detail.originalEvent.type==="pointerdown"&&(c.value=!0));const p=u.target;((f=t.unref(i).triggerElement.value)==null?void 0:f.contains(p))&&u.preventDefault(),u.detail.originalEvent.type==="focusin"&&c.value&&u.preventDefault()})}),{default:t.withCtx(()=>[t.renderSlot(d.$slots,"default")]),_:3},16))}}),IT=ST,_T=t.defineComponent({__name:"DialogContent",props:{forceMount:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(a,{emit:e}){const n=a,o=e,r=Tt(),i=ML(o),{forwardRef:s}=ke();return(c,d)=>(t.openBlock(),t.createBlock(t.unref(CL),{present:c.forceMount||t.unref(r).open.value},{default:t.withCtx(()=>[t.unref(r).modal.value?(t.openBlock(),t.createBlock(LT,t.mergeProps({key:0,ref:t.unref(s)},{...n,...t.unref(i),...c.$attrs}),{default:t.withCtx(()=>[t.renderSlot(c.$slots,"default")]),_:3},16)):(t.openBlock(),t.createBlock(IT,t.mergeProps({key:1,ref:t.unref(s)},{...n,...t.unref(i),...c.$attrs}),{default:t.withCtx(()=>[t.renderSlot(c.$slots,"default")]),_:3},16))]),_:3},8,["present"]))}}),FA=_T,AT=t.defineComponent({__name:"DialogDescription",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"p"}},setup(a){const e=a;ke();const n=Tt();return(o,r)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{id:t.unref(n).descriptionId}),{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default")]),_:3},16,["id"]))}}),RA=AT,BT=t.defineComponent({__name:"DialogOverlayImpl",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=Tt();return CA(!0),ke(),(n,o)=>(t.openBlock(),t.createBlock(t.unref(we),{as:n.as,"as-child":n.asChild,"data-state":t.unref(e).open.value?"open":"closed",style:{"pointer-events":"auto"}},{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},8,["as","as-child","data-state"]))}}),VT=BT,zT=t.defineComponent({__name:"DialogOverlay",props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=Tt(),{forwardRef:n}=ke();return(o,r)=>{var i;return(i=t.unref(e))!=null&&i.modal.value?(t.openBlock(),t.createBlock(t.unref(CL),{key:0,present:o.forceMount||t.unref(e).open.value},{default:t.withCtx(()=>[t.createVNode(VT,t.mergeProps(o.$attrs,{ref:t.unref(n),as:o.as,"as-child":o.asChild}),{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default")]),_:3},16,["as","as-child"])]),_:3},8,["present"])):t.createCommentVNode("v-if",!0)}}}),NA=zT,qT=t.defineComponent({__name:"Teleport",props:{to:{type:null,required:!1,default:"body"},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(a){const e=xA();return(n,o)=>t.unref(e)||n.forceMount?(t.openBlock(),t.createBlock(t.Teleport,{key:0,to:n.to,disabled:n.disabled,defer:n.defer},[t.renderSlot(n.$slots,"default")],8,["to","disabled","defer"])):t.createCommentVNode("v-if",!0)}}),eI=qT,PT=t.defineComponent({__name:"DialogPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(eI),t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),$A=PT,DT=t.defineComponent({__name:"DialogTitle",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"h2"}},setup(a){const e=a,n=Tt();return ke(),(o,r)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{id:t.unref(n).titleId}),{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default")]),_:3},16,["id"]))}}),UA=DT,ET=t.defineComponent({__name:"DialogTrigger",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(a){const e=a,n=Tt(),{forwardRef:o,currentElement:r}=ke();return n.contentId||(n.contentId=gs(void 0,"reka-dialog-content")),t.onMounted(()=>{n.triggerElement.value=r.value}),(i,s)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{ref:t.unref(o),type:i.as==="button"?"button":void 0,"aria-haspopup":"dialog","aria-expanded":t.unref(n).open.value||!1,"aria-controls":t.unref(n).open.value?t.unref(n).contentId:void 0,"data-state":t.unref(n).open.value?"open":"closed",onClick:t.unref(n).onOpenToggle}),{default:t.withCtx(()=>[t.renderSlot(i.$slots,"default")]),_:3},16,["type","aria-expanded","aria-controls","data-state","onClick"]))}}),TT=ET;const[WA,HT]=st("AvatarRoot");var jT=t.defineComponent({__name:"AvatarRoot",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(a){return ke(),HT({imageLoadingStatus:t.ref("idle")}),(e,n)=>(t.openBlock(),t.createBlock(t.unref(we),{"as-child":e.asChild,as:e.as},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"default")]),_:3},8,["as-child","as"]))}}),OT=jT,FT=t.defineComponent({__name:"AvatarFallback",props:{delayMs:{type:Number,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(a){const e=a,n=WA();ke();const o=t.ref(e.delayMs===void 0);return t.watchEffect(r=>{if(e.delayMs&<){const i=window.setTimeout(()=>{o.value=!0},e.delayMs);r(()=>{window.clearTimeout(i)})}}),(r,i)=>o.value&&t.unref(n).imageLoadingStatus.value!=="loaded"?(t.openBlock(),t.createBlock(t.unref(we),{key:0,"as-child":r.asChild,as:r.as},{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default")]),_:3},8,["as-child","as"])):t.createCommentVNode("v-if",!0)}}),RT=FT;function GA(a,e){return a?e?(a.src!==e&&(a.src=e),a.complete&&a.naturalWidth>0?"loaded":"loading"):"error":"idle"}function NT(a,{referrerPolicy:e,crossOrigin:n}={}){const o=t.ref(!1),r=t.ref(null),i=t.computed(()=>o.value?(!r.value&<&&(r.value=new window.Image),r.value):null),s=t.ref(GA(i.value,a.value)),c=d=>()=>{o.value&&(s.value=d)};return t.onMounted(()=>{o.value=!0,t.watchEffect(d=>{const h=i.value;if(!h)return;s.value=GA(h,a.value);const u=c("loaded"),p=c("error");h.addEventListener("load",u),h.addEventListener("error",p),e!=null&&e.value&&(h.referrerPolicy=e.value),typeof(n==null?void 0:n.value)=="string"&&(h.crossOrigin=n.value),d(()=>{h.removeEventListener("load",u),h.removeEventListener("error",p)})})}),t.onUnmounted(()=>{o.value=!1}),s}var $T=t.defineComponent({__name:"AvatarImage",props:{src:{type:String,required:!0},referrerPolicy:{type:null,required:!1},crossOrigin:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"img"}},emits:["loadingStatusChange"],setup(a,{emit:e}){const n=a,o=e,{src:r,referrerPolicy:i,crossOrigin:s}=t.toRefs(n);ke();const c=WA(),d=NT(r,{referrerPolicy:i,crossOrigin:s});return t.watch(d,h=>{o("loadingStatusChange",h),h!=="idle"&&(c.imageLoadingStatus.value=h)},{immediate:!0}),(h,u)=>t.withDirectives((t.openBlock(),t.createBlock(t.unref(we),{role:"img","as-child":h.asChild,as:h.as,src:t.unref(r),referrerpolicy:t.unref(i),crossorigin:t.unref(s)},{default:t.withCtx(()=>[t.renderSlot(h.$slots,"default")]),_:3},8,["as-child","as","src","referrerpolicy","crossorigin"])),[[t.vShow,t.unref(d)==="loaded"]])}}),UT=$T;const KA="data-reka-collection-item";function bs(a={}){const{key:e="",isProvider:n=!1}=a,o=`${e}CollectionProvider`;let r;if(n){const u=t.ref(new Map);r={collectionRef:t.ref(),itemMap:u},t.provide(o,r)}else r=t.inject(o);const i=(u=!1)=>{const p=r.collectionRef.value;if(!p)return[];const y=Array.from(p.querySelectorAll(`[${KA}]`)),k=Array.from(r.itemMap.value.values()).sort((m,g)=>y.indexOf(m.ref)-y.indexOf(g.ref));return u?k:k.filter(m=>m.ref.dataset.disabled!=="")},s=t.defineComponent({name:"CollectionSlot",inheritAttrs:!1,setup(u,{slots:p,attrs:y}){const{primitiveElement:f,currentElement:k}=BA();return t.watch(k,()=>{r.collectionRef.value=k.value}),()=>t.h(ZS,{ref:f,...y},p)}}),c=t.defineComponent({name:"CollectionItem",inheritAttrs:!1,props:{value:{validator:()=>!0}},setup(u,{slots:p,attrs:y}){const{primitiveElement:f,currentElement:k}=BA();return t.watchEffect(m=>{if(k.value){const g=t.markRaw(k.value);r.itemMap.value.set(g,{ref:k.value,value:u.value}),m(()=>r.itemMap.value.delete(g))}}),()=>t.h(ZS,{...y,[KA]:"",ref:f},p)}}),d=t.computed(()=>Array.from(r.itemMap.value.values())),h=t.computed(()=>r.itemMap.value.size);return{getItems:i,reactiveItems:d,itemMapSize:h,CollectionSlot:s,CollectionItem:c}}var WT=t.defineComponent({__name:"VisuallyHidden",props:{feature:{type:String,required:!1,default:"focusable"},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(a){return(e,n)=>(t.openBlock(),t.createBlock(t.unref(we),{as:e.as,"as-child":e.asChild,"aria-hidden":e.feature==="focusable"?"true":void 0,"data-hidden":e.feature==="fully-hidden"?"":void 0,tabindex:e.feature==="fully-hidden"?"-1":void 0,style:{position:"absolute",border:0,width:"1px",height:"1px",padding:0,margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",clipPath:"inset(50%)",whiteSpace:"nowrap",wordWrap:"normal",top:"-1px",left:"-1px"}},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"default")]),_:3},8,["as","as-child","aria-hidden","data-hidden","tabindex"]))}}),XA=WT;const[ZA,GT]=st("PopperRoot");var KT=t.defineComponent({inheritAttrs:!1,__name:"PopperRoot",setup(a){const e=t.ref();return GT({anchor:e,onAnchorChange:n=>e.value=n}),(n,o)=>t.renderSlot(n.$slots,"default")}}),YA=KT,XT=t.defineComponent({__name:"PopperAnchor",props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=a,{forwardRef:n,currentElement:o}=ke(),r=ZA();return t.watchPostEffect(()=>{r.onAnchorChange(e.reference??o.value)}),(i,s)=>(t.openBlock(),t.createBlock(t.unref(we),{ref:t.unref(n),as:i.as,"as-child":i.asChild},{default:t.withCtx(()=>[t.renderSlot(i.$slots,"default")]),_:3},8,["as","as-child"]))}}),QA=XT;function ZT(a){return a!==null}function YT(a){return{name:"transformOrigin",options:a,fn(e){var g,v,L;const{placement:n,rects:o,middlewareData:r}=e,s=((g=r.arrow)==null?void 0:g.centerOffset)!==0,c=s?0:a.arrowWidth,d=s?0:a.arrowHeight,[h,u]=tI(n),p={start:"0%",center:"50%",end:"100%"}[u],y=(((v=r.arrow)==null?void 0:v.x)??0)+c/2,f=(((L=r.arrow)==null?void 0:L.y)??0)+d/2;let k="",m="";return h==="bottom"?(k=s?p:`${y}px`,m=`${-d}px`):h==="top"?(k=s?p:`${y}px`,m=`${o.floating.height+d}px`):h==="right"?(k=`${-d}px`,m=s?p:`${f}px`):h==="left"&&(k=`${o.floating.width+d}px`,m=s?p:`${f}px`),{data:{x:k,y:m}}}}}function tI(a){const[e,n="center"]=a.split("-");return[e,n]}const QT={side:"bottom",sideOffset:0,sideFlip:!0,align:"center",alignOffset:0,alignFlip:!0,arrowPadding:0,hideShiftedArrow:!0,avoidCollisions:!0,collisionBoundary:()=>[],collisionPadding:0,sticky:"partial",hideWhenDetached:!1,positionStrategy:"fixed",updatePositionStrategy:"optimized",prioritizePosition:!1},[NQ,JT]=st("PopperContent");var eH=t.defineComponent({inheritAttrs:!1,__name:"PopperContent",props:t.mergeDefaults({side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},{...QT}),emits:["placed"],setup(a,{emit:e}){const n=a,o=e,r=ZA(),{forwardRef:i,currentElement:s}=ke(),c=t.ref(),d=t.ref(),{width:h,height:u}=YE(d),p=t.computed(()=>n.side+(n.align!=="center"?`-${n.align}`:"")),y=t.computed(()=>typeof n.collisionPadding=="number"?n.collisionPadding:{top:0,right:0,bottom:0,left:0,...n.collisionPadding}),f=t.computed(()=>Array.isArray(n.collisionBoundary)?n.collisionBoundary:[n.collisionBoundary]),k=t.computed(()=>({padding:y.value,boundary:f.value.filter(ZT),altBoundary:f.value.length>0})),m=t.computed(()=>({mainAxis:n.sideFlip,crossAxis:n.alignFlip})),g=dE(()=>[X1({mainAxis:n.sideOffset+u.value,alignmentAxis:n.alignOffset}),n.prioritizePosition&&n.avoidCollisions&&Ds({...k.value,...m.value}),n.avoidCollisions&&Z1({mainAxis:!0,crossAxis:!!n.prioritizePosition,limiter:n.sticky==="partial"?mP():void 0,...k.value}),!n.prioritizePosition&&n.avoidCollisions&&Ds({...k.value,...m.value}),Y1({...k.value,apply:({elements:A,rects:P,availableWidth:D,availableHeight:U})=>{const{width:T,height:H}=P.reference,N=A.floating.style;N.setProperty("--reka-popper-available-width",`${D}px`),N.setProperty("--reka-popper-available-height",`${U}px`),N.setProperty("--reka-popper-anchor-width",`${T}px`),N.setProperty("--reka-popper-anchor-height",`${H}px`)}}),d.value&&MP({element:d.value,padding:n.arrowPadding}),YT({arrowWidth:h.value,arrowHeight:u.value}),n.hideWhenDetached&&fP({strategy:"referenceHidden",...k.value})]),v=t.computed(()=>n.reference??r.anchor.value),{floatingStyles:L,placement:w,isPositioned:M,middlewareData:C}=Q1(v,c,{strategy:n.positionStrategy,placement:p,whileElementsMounted:(...A)=>K1(...A,{layoutShift:!n.disableUpdateOnLayoutShift,animationFrame:n.updatePositionStrategy==="always"}),middleware:g}),S=t.computed(()=>tI(w.value)[0]),b=t.computed(()=>tI(w.value)[1]);t.watchPostEffect(()=>{M.value&&o("placed")});const x=t.computed(()=>{var P;const A=((P=C.value.arrow)==null?void 0:P.centerOffset)!==0;return n.hideShiftedArrow&&A}),I=t.ref("");t.watchEffect(()=>{s.value&&(I.value=window.getComputedStyle(s.value).zIndex)});const V=t.computed(()=>{var A;return((A=C.value.arrow)==null?void 0:A.x)??0}),B=t.computed(()=>{var A;return((A=C.value.arrow)==null?void 0:A.y)??0});return JT({placedSide:S,onArrowChange:A=>d.value=A,arrowX:V,arrowY:B,shouldHideArrow:x}),(A,P)=>{var D,U,T;return t.openBlock(),t.createElementBlock("div",{ref_key:"floatingRef",ref:c,"data-reka-popper-content-wrapper":"",style:t.normalizeStyle({...t.unref(L),transform:t.unref(M)?t.unref(L).transform:"translate(0, -200%)",minWidth:"max-content",zIndex:I.value,"--reka-popper-transform-origin":[(D=t.unref(C).transformOrigin)==null?void 0:D.x,(U=t.unref(C).transformOrigin)==null?void 0:U.y].join(" "),...((T=t.unref(C).hide)==null?void 0:T.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}})},[t.createVNode(t.unref(we),t.mergeProps({ref:t.unref(i)},A.$attrs,{"as-child":n.asChild,as:A.as,"data-side":S.value,"data-align":b.value,style:{animation:t.unref(M)?void 0:"none"}}),{default:t.withCtx(()=>[t.renderSlot(A.$slots,"default")]),_:3},16,["as-child","as","data-side","data-align","style"])],4)}}}),JA=eH;function tH(a){const e=bL({nonce:t.ref()});return t.computed(()=>{var n;return(a==null?void 0:a.value)||((n=e.nonce)==null?void 0:n.value)})}var aH=t.defineComponent({__name:"Label",props:{for:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"label"}},setup(a){const e=a;return ke(),(n,o)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{onMousedown:o[0]||(o[0]=r=>{!r.defaultPrevented&&r.detail>1&&r.preventDefault()})}),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),nH=aH,oH=t.defineComponent({__name:"PaginationEllipsis",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=a;return ke(),(n,o)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{"data-type":"ellipsis"}),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default",{},()=>[o[0]||(o[0]=t.createTextVNode("…"))])]),_:3},16))}}),rH=oH;const[Ms,iH]=st("PaginationRoot");var sH=t.defineComponent({__name:"PaginationRoot",props:{page:{type:Number,required:!1},defaultPage:{type:Number,required:!1,default:1},itemsPerPage:{type:Number,required:!0},total:{type:Number,required:!1,default:0},siblingCount:{type:Number,required:!1,default:2},disabled:{type:Boolean,required:!1},showEdges:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"nav"}},emits:["update:page"],setup(a,{emit:e}){const n=a,o=e,{siblingCount:r,disabled:i,showEdges:s}=t.toRefs(n);ke();const c=ks(n,"page",o,{defaultValue:n.defaultPage,passive:n.page===void 0}),d=t.computed(()=>Math.max(1,Math.ceil(n.total/(n.itemsPerPage||1))));return iH({page:c,onPageChange(h){c.value=h},pageCount:d,siblingCount:r,disabled:i,showEdges:s}),(h,u)=>(t.openBlock(),t.createBlock(t.unref(we),{as:h.as,"as-child":h.asChild},{default:t.withCtx(()=>[t.renderSlot(h.$slots,"default",{page:t.unref(c),pageCount:d.value})]),_:3},8,["as","as-child"]))}}),lH=sH,cH=t.defineComponent({__name:"PaginationFirst",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(a){const e=a,n=Ms();ke();const o=t.computed(()=>n.page.value===1||n.disabled.value);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{"aria-label":"First Page",type:r.as==="button"?"button":void 0,disabled:o.value,onClick:i[0]||(i[0]=s=>!o.value&&t.unref(n).onPageChange(1))}),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[i[1]||(i[1]=t.createTextVNode("First page"))])]),_:3},16,["type","disabled"]))}}),dH=cH,hH=t.defineComponent({__name:"PaginationLast",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(a){const e=a,n=Ms();ke();const o=t.computed(()=>n.page.value===n.pageCount.value||n.disabled.value);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{"aria-label":"Last Page",type:r.as==="button"?"button":void 0,disabled:o.value,onClick:i[0]||(i[0]=s=>!o.value&&t.unref(n).onPageChange(t.unref(n).pageCount.value))}),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[i[1]||(i[1]=t.createTextVNode("Last page"))])]),_:3},16,["type","disabled"]))}}),uH=hH;function ma(a,e){const n=e-a+1;return Array.from({length:n},(o,r)=>r+a)}function pH(a){return a.map(e=>typeof e=="number"?{type:"page",value:e}:{type:"ellipsis"})}const LL="ellipsis";function yH(a,e,n,o){const i=e,s=Math.max(a-n,1),c=Math.min(a+n,i);if(o){const h=Math.min(2*n+5,e)-2,u=s>3&&Math.abs(i-h-1+1)>2&&Math.abs(s-1)>2,p=c<i-2&&Math.abs(i-h)>2&&Math.abs(i-c)>2;if(!u&&p)return[...ma(1,h),LL,i];if(u&&!p){const f=ma(i-h+1,i);return[1,LL,...f]}if(u&&p){const f=ma(s,c);return[1,LL,...f,LL,i]}return ma(1,i)}else{const d=n*2+1;return e<d?ma(1,i):a<=n+1?ma(1,d):e-a<=n?ma(e-d+1,i):ma(s,c)}}var fH=t.defineComponent({__name:"PaginationList",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=a;ke();const n=Ms(),o=t.computed(()=>pH(yH(n.page.value,n.pageCount.value,n.siblingCount.value,n.showEdges.value)));return(r,i)=>(t.openBlock(),t.createBlock(t.unref(we),t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{items:o.value})]),_:3},16))}}),kH=fH,mH=t.defineComponent({__name:"PaginationListItem",props:{value:{type:Number,required:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(a){const e=a;ke();const n=Ms(),o=t.computed(()=>n.page.value===e.value),r=t.computed(()=>n.disabled.value);return(i,s)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{"data-type":"page","aria-label":`Page ${i.value}`,"aria-current":o.value?"page":void 0,"data-selected":o.value?"true":void 0,disabled:r.value,type:i.as==="button"?"button":void 0,onClick:s[0]||(s[0]=c=>!r.value&&t.unref(n).onPageChange(i.value))}),{default:t.withCtx(()=>[t.renderSlot(i.$slots,"default",{},()=>[t.createTextVNode(t.toDisplayString(i.value),1)])]),_:3},16,["aria-label","aria-current","data-selected","disabled","type"]))}}),gH=mH,bH=t.defineComponent({__name:"PaginationNext",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(a){const e=a;ke();const n=Ms(),o=t.computed(()=>n.page.value===n.pageCount.value||n.disabled.value);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{"aria-label":"Next Page",type:r.as==="button"?"button":void 0,disabled:o.value,onClick:i[0]||(i[0]=s=>!o.value&&t.unref(n).onPageChange(t.unref(n).page.value+1))}),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[i[1]||(i[1]=t.createTextVNode("Next page"))])]),_:3},16,["type","disabled"]))}}),MH=bH,xH=t.defineComponent({__name:"PaginationPrev",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(a){const e=a;ke();const n=Ms(),o=t.computed(()=>n.page.value===1||n.disabled.value);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{"aria-label":"Previous Page",type:r.as==="button"?"button":void 0,disabled:o.value,onClick:i[0]||(i[0]=s=>!o.value&&t.unref(n).onPageChange(t.unref(n).page.value-1))}),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[i[1]||(i[1]=t.createTextVNode("Prev page"))])]),_:3},16,["type","disabled"]))}}),wH=xH;const vH=[" ","Enter","ArrowUp","ArrowDown"],CH=[" ","Enter"],gt=10;function d1(a,e,n){return a===void 0?!1:Array.isArray(a)?a.some(o=>aI(o,e,n)):aI(a,e,n)}function aI(a,e,n){return a===void 0||e===void 0?!1:typeof a=="string"?a===e:typeof n=="function"?n(a,e):typeof n=="string"?(a==null?void 0:a[n])===(e==null?void 0:e[n]):cE(a,e)}function LH(a){return a==null||a===""||Array.isArray(a)&&a.length===0}const SH={key:0,value:""},[ga,eB]=st("SelectRoot");var IH=t.defineComponent({inheritAttrs:!1,__name:"SelectRoot",props:{open:{type:Boolean,required:!1,default:void 0},defaultOpen:{type:Boolean,required:!1},defaultValue:{type:null,required:!1},modelValue:{type:null,required:!1,default:void 0},by:{type:[String,Function],required:!1},dir:{type:String,required:!1},multiple:{type:Boolean,required:!1},autocomplete:{type:String,required:!1},disabled:{type:Boolean,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1}},emits:["update:modelValue","update:open"],setup(a,{emit:e}){const n=a,o=e,{required:r,disabled:i,multiple:s,dir:c}=t.toRefs(n),d=ks(n,"modelValue",o,{defaultValue:n.defaultValue??(s.value?[]:void 0),passive:n.modelValue===void 0,deep:!0}),h=ks(n,"open",o,{defaultValue:n.defaultOpen,passive:n.open===void 0}),u=t.ref(),p=t.ref(),y=t.ref({x:0,y:0}),f=t.computed(()=>{var M;return s.value&&Array.isArray(d.value)?((M=d.value)==null?void 0:M.length)===0:RS(d.value)});bs({isProvider:!0});const k=EE(c),m=HE(u),g=t.ref(new Set),v=t.computed(()=>Array.from(g.value).map(M=>M.value).join(";"));function L(M){if(s.value){const C=Array.isArray(d.value)?[...d.value]:[],S=C.findIndex(b=>aI(b,M,n.by));S===-1?C.push(M):C.splice(S,1),d.value=[...C]}else d.value=M}function w(M){return Array.from(g.value).find(C=>d1(M,C.value,n.by))}return eB({triggerElement:u,onTriggerChange:M=>{u.value=M},valueElement:p,onValueElementChange:M=>{p.value=M},contentId:"",modelValue:d,onValueChange:L,by:n.by,open:h,multiple:s,required:r,onOpenChange:M=>{h.value=M},dir:k,triggerPointerDownPosRef:y,disabled:i,isEmptyModelValue:f,optionsSet:g,onOptionAdd:M=>{const C=w(M.value);C&&g.value.delete(C),g.value.add(M)},onOptionRemove:M=>{const C=w(M.value);C&&g.value.delete(C)}}),(M,C)=>(t.openBlock(),t.createBlock(t.unref(YA),null,{default:t.withCtx(()=>[t.renderSlot(M.$slots,"default",{modelValue:t.unref(d),open:t.unref(h)}),t.unref(m)?(t.openBlock(),t.createBlock(BH,{key:v.value,"aria-hidden":"true",tabindex:"-1",multiple:t.unref(s),required:t.unref(r),name:M.name,autocomplete:M.autocomplete,disabled:t.unref(i),value:t.unref(d)},{default:t.withCtx(()=>[t.unref(RS)(t.unref(d))?(t.openBlock(),t.createElementBlock("option",SH)):t.createCommentVNode("v-if",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Array.from(g.value),S=>(t.openBlock(),t.createElementBlock("option",t.mergeProps({key:S.value??""},{ref_for:!0},S),null,16))),128))]),_:1},8,["multiple","required","name","autocomplete","disabled","value"])):t.createCommentVNode("v-if",!0)]),_:3}))}}),_H=IH,AH=t.defineComponent({__name:"BubbleSelect",props:{autocomplete:{type:String,required:!1},autofocus:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},form:{type:String,required:!1},multiple:{type:Boolean,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1},size:{type:Number,required:!1},value:{type:null,required:!1}},setup(a){const e=a,n=t.ref(),o=ga();t.watch(()=>e.value,(i,s)=>{const c=window.HTMLSelectElement.prototype,h=Object.getOwnPropertyDescriptor(c,"value").set;if(i!==s&&h&&n.value){const u=new Event("change",{bubbles:!0});h.call(n.value,i),n.value.dispatchEvent(u)}});function r(i){o.onValueChange(i.target.value)}return(i,s)=>(t.openBlock(),t.createBlock(t.unref(XA),{"as-child":""},{default:t.withCtx(()=>[t.createElementVNode("select",t.mergeProps({ref_key:"selectElement",ref:n},e,{onInput:r}),[t.renderSlot(i.$slots,"default")],16)]),_:3}))}}),BH=AH,VH=t.defineComponent({__name:"SelectPopperPosition",props:{side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1,default:"start"},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1,default:gt},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const n=Ze(a);return(o,r)=>(t.openBlock(),t.createBlock(t.unref(JA),t.mergeProps(t.unref(n),{style:{boxSizing:"border-box","--reka-select-content-transform-origin":"var(--reka-popper-transform-origin)","--reka-select-content-available-width":"var(--reka-popper-available-width)","--reka-select-content-available-height":"var(--reka-popper-available-height)","--reka-select-trigger-width":"var(--reka-popper-anchor-width)","--reka-select-trigger-height":"var(--reka-popper-anchor-height)"}}),{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default")]),_:3},16))}}),zH=VH;const qH={onViewportChange:()=>{},itemTextRefCallback:()=>{},itemRefCallback:()=>{}},[Wi,tB]=st("SelectContent");var PH=t.defineComponent({__name:"SelectContentImpl",props:{position:{type:String,required:!1,default:"item-aligned"},bodyLock:{type:Boolean,required:!1,default:!0},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1,default:"start"},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1,default:!0}},emits:["closeAutoFocus","escapeKeyDown","pointerDownOutside"],setup(a,{emit:e}){const n=a,o=e,r=ga();TE(),CA(n.bodyLock);const{CollectionSlot:i,getItems:s}=bs(),c=t.ref();_A(c);const{search:d,handleTypeaheadSearch:h}=AA(),u=t.ref(),p=t.ref(),y=t.ref(),f=t.ref(!1),k=t.ref(!1),m=t.ref(!1);function g(){p.value&&c.value&&jA([p.value,c.value])}t.watch(f,()=>{g()});const{onOpenChange:v,triggerPointerDownPosRef:L}=r;t.watchEffect(S=>{if(!c.value)return;let b={x:0,y:0};const x=V=>{var B,A;b={x:Math.abs(Math.round(V.pageX)-(((B=L.value)==null?void 0:B.x)??0)),y:Math.abs(Math.round(V.pageY)-(((A=L.value)==null?void 0:A.y)??0))}},I=V=>{var B;V.pointerType!=="touch"&&(b.x<=10&&b.y<=10?V.preventDefault():(B=c.value)!=null&&B.contains(V.target)||v(!1),document.removeEventListener("pointermove",x),L.value=null)};L.value!==null&&(document.addEventListener("pointermove",x),document.addEventListener("pointerup",I,{capture:!0,once:!0})),S(()=>{document.removeEventListener("pointermove",x),document.removeEventListener("pointerup",I,{capture:!0})})});function w(S){const b=S.ctrlKey||S.altKey||S.metaKey;if(S.key==="Tab"&&S.preventDefault(),!b&&S.key.length===1&&h(S.key,s()),["ArrowUp","ArrowDown","Home","End"].includes(S.key)){let I=[...s().map(V=>V.ref)];if(["ArrowUp","End"].includes(S.key)&&(I=I.slice().reverse()),["ArrowUp","ArrowDown"].includes(S.key)){const V=S.target,B=I.indexOf(V);I=I.slice(B+1)}setTimeout(()=>jA(I)),S.preventDefault()}}const M=t.computed(()=>n.position==="popper"?n:{}),C=Ze(M.value);return tB({content:c,viewport:u,onViewportChange:S=>{u.value=S},itemRefCallback:(S,b,x)=>{const I=!k.value&&!x,V=d1(r.modelValue.value,b,r.by);if(r.multiple.value){if(m.value)return;(V||I)&&(p.value=S,V&&(m.value=!0))}else(V||I)&&(p.value=S);I&&(k.value=!0)},selectedItem:p,selectedItemText:y,onItemLeave:()=>{var S;(S=c.value)==null||S.focus()},itemTextRefCallback:(S,b,x)=>{const I=!k.value&&!x;(d1(r.modelValue.value,b,r.by)||I)&&(y.value=S)},focusSelectedItem:g,position:n.position,isPositioned:f,searchRef:d}),(S,b)=>(t.openBlock(),t.createBlock(t.unref(i),null,{default:t.withCtx(()=>[t.createVNode(t.unref(HA),{"as-child":"",onMountAutoFocus:b[6]||(b[6]=t.withModifiers(()=>{},["prevent"])),onUnmountAutoFocus:b[7]||(b[7]=x=>{var I;o("closeAutoFocus",x),!x.defaultPrevented&&((I=t.unref(r).triggerElement.value)==null||I.focus({preventScroll:!0}),x.preventDefault())})},{default:t.withCtx(()=>[t.createVNode(t.unref(YS),{"as-child":"","disable-outside-pointer-events":S.disableOutsidePointerEvents,onFocusOutside:b[2]||(b[2]=t.withModifiers(()=>{},["prevent"])),onDismiss:b[3]||(b[3]=x=>t.unref(r).onOpenChange(!1)),onEscapeKeyDown:b[4]||(b[4]=x=>o("escapeKeyDown",x)),onPointerDownOutside:b[5]||(b[5]=x=>o("pointerDownOutside",x))},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(S.position==="popper"?zH:HH),t.mergeProps({...S.$attrs,...t.unref(C)},{id:t.unref(r).contentId,ref:x=>{const I=t.unref(Et)(x);I!=null&&I.hasAttribute("data-reka-popper-content-wrapper")?c.value=I.firstElementChild:c.value=I},role:"listbox","data-state":t.unref(r).open.value?"open":"closed",dir:t.unref(r).dir.value,style:{display:"flex",flexDirection:"column",outline:"none"},onContextmenu:b[0]||(b[0]=t.withModifiers(()=>{},["prevent"])),onPlaced:b[1]||(b[1]=x=>f.value=!0),onKeydown:w}),{default:t.withCtx(()=>[t.renderSlot(S.$slots,"default")]),_:3},16,["id","data-state","dir","onKeydown"]))]),_:3},8,["disable-outside-pointer-events"])]),_:3})]),_:3}))}}),DH=PH;const[nI,EH]=st("SelectItemAlignedPosition");var TH=t.defineComponent({inheritAttrs:!1,__name:"SelectItemAlignedPosition",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["placed"],setup(a,{emit:e}){const n=a,o=e,{getItems:r}=bs(),i=ga(),s=Wi(),c=t.ref(!1),d=t.ref(!0),h=t.ref(),{forwardRef:u,currentElement:p}=ke(),{viewport:y,selectedItem:f,selectedItemText:k,focusSelectedItem:m}=s;function g(){if(i.triggerElement.value&&i.valueElement.value&&h.value&&p.value&&(y!=null&&y.value)&&(f!=null&&f.value)&&(k!=null&&k.value)){const w=i.triggerElement.value.getBoundingClientRect(),M=p.value.getBoundingClientRect(),C=i.valueElement.value.getBoundingClientRect(),S=k.value.getBoundingClientRect();if(i.dir.value!=="rtl"){const ue=S.left-M.left,ve=C.left-ue,le=w.left-ve,G=w.width+le,z=Math.max(G,M.width),W=window.innerWidth-gt,ee=kA(ve,gt,Math.max(gt,W-z));h.value.style.minWidth=`${G}px`,h.value.style.left=`${ee}px`}else{const ue=M.right-S.right,ve=window.innerWidth-C.right-ue,le=window.innerWidth-w.right-ve,G=w.width+le,z=Math.max(G,M.width),W=window.innerWidth-gt,ee=kA(ve,gt,Math.max(gt,W-z));h.value.style.minWidth=`${G}px`,h.value.style.right=`${ee}px`}const b=r().map(ue=>ue.ref),x=window.innerHeight-gt*2,I=y.value.scrollHeight,V=window.getComputedStyle(p.value),B=Number.parseInt(V.borderTopWidth,10),A=Number.parseInt(V.paddingTop,10),P=Number.parseInt(V.borderBottomWidth,10),D=Number.parseInt(V.paddingBottom,10),U=B+A+I+D+P,T=Math.min(f.value.offsetHeight*5,U),H=window.getComputedStyle(y.value),N=Number.parseInt(H.paddingTop,10),Q=Number.parseInt(H.paddingBottom,10),j=w.top+w.height/2-gt,F=x-j,R=f.value.offsetHeight/2,Z=f.value.offsetTop+R,J=B+A+Z,re=U-J;if(J<=j){const ue=f.value===b[b.length-1];h.value.style.bottom="0px";const ve=p.value.clientHeight-y.value.offsetTop-y.value.offsetHeight,le=Math.max(F,R+(ue?Q:0)+ve+P),G=J+le;h.value.style.height=`${G}px`}else{const ue=f.value===b[0];h.value.style.top="0px";const le=Math.max(j,B+y.value.offsetTop+(ue?N:0)+R)+re;h.value.style.height=`${le}px`,y.value.scrollTop=J-j+y.value.offsetTop}h.value.style.margin=`${gt}px 0`,h.value.style.minHeight=`${T}px`,h.value.style.maxHeight=`${x}px`,o("placed"),requestAnimationFrame(()=>c.value=!0)}}const v=t.ref("");t.onMounted(async()=>{await t.nextTick(),g(),p.value&&(v.value=window.getComputedStyle(p.value).zIndex)});function L(w){w&&d.value===!0&&(g(),m==null||m(),d.value=!1)}return VE(i.triggerElement,()=>{g()}),EH({contentWrapper:h,shouldExpandOnScrollRef:c,onScrollButtonChange:L}),(w,M)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"contentWrapperElement",ref:h,style:t.normalizeStyle({display:"flex",flexDirection:"column",position:"fixed",zIndex:v.value})},[t.createVNode(t.unref(we),t.mergeProps({ref:t.unref(u),style:{boxSizing:"border-box",maxHeight:"100%"}},{...w.$attrs,...n}),{default:t.withCtx(()=>[t.renderSlot(w.$slots,"default")]),_:3},16)],4))}}),HH=TH,jH=t.defineComponent({inheritAttrs:!1,__name:"SelectProvider",props:{context:{type:Object,required:!0}},setup(a){return eB(a.context),tB(qH),(n,o)=>t.renderSlot(n.$slots,"default")}}),OH=jH;const FH={key:1};var RH=t.defineComponent({inheritAttrs:!1,__name:"SelectContent",props:{forceMount:{type:Boolean,required:!1},position:{type:String,required:!1},bodyLock:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:["closeAutoFocus","escapeKeyDown","pointerDownOutside"],setup(a,{emit:e}){const n=a,r=mt(n,e),i=ga(),s=t.ref();t.onMounted(()=>{s.value=new DocumentFragment});const c=t.ref(),d=t.computed(()=>n.forceMount||i.open.value),h=t.ref(d.value);return t.watch(d,()=>{setTimeout(()=>h.value=d.value)}),(u,p)=>{var y;return d.value||h.value||(y=c.value)!=null&&y.present?(t.openBlock(),t.createBlock(t.unref(CL),{key:0,ref_key:"presenceRef",ref:c,present:d.value},{default:t.withCtx(()=>[t.createVNode(DH,t.normalizeProps(t.guardReactiveProps({...t.unref(r),...u.$attrs})),{default:t.withCtx(()=>[t.renderSlot(u.$slots,"default")]),_:3},16)]),_:3},8,["present"])):s.value?(t.openBlock(),t.createElementBlock("div",FH,[(t.openBlock(),t.createBlock(t.Teleport,{to:s.value},[t.createVNode(OH,{context:t.unref(i)},{default:t.withCtx(()=>[t.renderSlot(u.$slots,"default")]),_:3},8,["context"])],8,["to"]))])):t.createCommentVNode("v-if",!0)}}}),NH=RH,$H=t.defineComponent({__name:"SelectIcon",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(a){return(e,n)=>(t.openBlock(),t.createBlock(t.unref(we),{"aria-hidden":"true",as:e.as,"as-child":e.asChild},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"default",{},()=>[n[0]||(n[0]=t.createTextVNode("▼"))])]),_:3},8,["as","as-child"]))}}),UH=$H;const[aB,WH]=st("SelectItem");var GH=t.defineComponent({__name:"SelectItem",props:{value:{type:null,required:!0},disabled:{type:Boolean,required:!1},textValue:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["select"],setup(a,{emit:e}){const n=a,o=e,{disabled:r}=t.toRefs(n),i=ga(),s=Wi(),{forwardRef:c,currentElement:d}=ke(),{CollectionItem:h}=bs(),u=t.computed(()=>{var M;return d1((M=i.modelValue)==null?void 0:M.value,n.value,i.by)}),p=t.ref(!1),y=t.ref(n.textValue??""),f=gs(void 0,"reka-select-item-text"),k="select.select";async function m(M){if(M.defaultPrevented)return;const C={originalEvent:M,value:n.value};FS(k,g,C)}async function g(M){await t.nextTick(),o("select",M),!M.defaultPrevented&&(r.value||(i.onValueChange(n.value),i.multiple.value||i.onOpenChange(!1)))}async function v(M){var C,S;await t.nextTick(),!M.defaultPrevented&&(r.value?(C=s.onItemLeave)==null||C.call(s):(S=M.currentTarget)==null||S.focus({preventScroll:!0}))}async function L(M){var C;await t.nextTick(),!M.defaultPrevented&&M.currentTarget===at()&&((C=s.onItemLeave)==null||C.call(s))}async function w(M){var S;await t.nextTick(),!(M.defaultPrevented||((S=s.searchRef)==null?void 0:S.value)!==""&&M.key===" ")&&(CH.includes(M.key)&&m(M),M.key===" "&&M.preventDefault())}if(n.value==="")throw new Error("A <SelectItem /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return t.onMounted(()=>{d.value&&s.itemRefCallback(d.value,n.value,n.disabled)}),WH({value:n.value,disabled:r,textId:f,isSelected:u,onItemTextChange:M=>{y.value=((y.value||(M==null?void 0:M.textContent))??"").trim()}}),(M,C)=>(t.openBlock(),t.createBlock(t.unref(h),{value:{textValue:y.value}},{default:t.withCtx(()=>[t.createVNode(t.unref(we),{ref:t.unref(c),role:"option","aria-labelledby":t.unref(f),"data-highlighted":p.value?"":void 0,"aria-selected":u.value,"data-state":u.value?"checked":"unchecked","aria-disabled":t.unref(r)||void 0,"data-disabled":t.unref(r)?"":void 0,tabindex:t.unref(r)?void 0:-1,as:M.as,"as-child":M.asChild,onFocus:C[0]||(C[0]=S=>p.value=!0),onBlur:C[1]||(C[1]=S=>p.value=!1),onPointerup:m,onPointerdown:C[2]||(C[2]=S=>{S.currentTarget.focus({preventScroll:!0})}),onTouchend:C[3]||(C[3]=t.withModifiers(()=>{},["prevent","stop"])),onPointermove:v,onPointerleave:L,onKeydown:w},{default:t.withCtx(()=>[t.renderSlot(M.$slots,"default")]),_:3},8,["aria-labelledby","data-highlighted","aria-selected","data-state","aria-disabled","data-disabled","tabindex","as","as-child"])]),_:3},8,["value"]))}}),KH=GH,XH=t.defineComponent({__name:"SelectItemIndicator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(a){const e=a,n=aB();return(o,r)=>t.unref(n).isSelected.value?(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps({key:0,"aria-hidden":"true"},e),{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default")]),_:3},16)):t.createCommentVNode("v-if",!0)}}),ZH=XH,YH=t.defineComponent({inheritAttrs:!1,__name:"SelectItemText",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(a){const e=a,n=ga(),o=Wi(),r=aB(),{forwardRef:i,currentElement:s}=ke(),c=t.computed(()=>{var d,h;return{value:r.value,disabled:r.disabled.value,textContent:((d=s.value)==null?void 0:d.textContent)??((h=r.value)==null?void 0:h.toString())??""}});return t.onMounted(()=>{s.value&&(r.onItemTextChange(s.value),o.itemTextRefCallback(s.value,r.value,r.disabled.value),n.onOptionAdd(c.value))}),t.onUnmounted(()=>{n.onOptionRemove(c.value)}),(d,h)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps({id:t.unref(r).textId,ref:t.unref(i)},{...e,...d.$attrs}),{default:t.withCtx(()=>[t.renderSlot(d.$slots,"default")]),_:3},16,["id"]))}}),QH=YH,JH=t.defineComponent({__name:"SelectPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(eI),t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),ej=JH,tj=t.defineComponent({__name:"SelectScrollButtonImpl",emits:["autoScroll"],setup(a,{emit:e}){const n=e,{getItems:o}=bs(),r=Wi(),i=t.ref(null);function s(){i.value!==null&&(window.clearInterval(i.value),i.value=null)}t.watchEffect(()=>{const h=o().map(u=>u.ref).find(u=>u===at());h==null||h.scrollIntoView({block:"nearest"})});function c(){i.value===null&&(i.value=window.setInterval(()=>{n("autoScroll")},50))}function d(){var h;(h=r.onItemLeave)==null||h.call(r),i.value===null&&(i.value=window.setInterval(()=>{n("autoScroll")},50))}return t.onBeforeUnmount(()=>s()),(h,u)=>{var p;return t.openBlock(),t.createBlock(t.unref(we),t.mergeProps({"aria-hidden":"true",style:{flexShrink:0}},(p=h.$parent)==null?void 0:p.$props,{onPointerdown:c,onPointermove:d,onPointerleave:u[0]||(u[0]=()=>{s()})}),{default:t.withCtx(()=>[t.renderSlot(h.$slots,"default")]),_:3},16)}}}),nB=tj,aj=t.defineComponent({__name:"SelectScrollDownButton",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=Wi(),n=e.position==="item-aligned"?nI():void 0,{forwardRef:o,currentElement:r}=ke(),i=t.ref(!1);return t.watchEffect(s=>{var c,d;if((c=e.viewport)!=null&&c.value&&((d=e.isPositioned)!=null&&d.value)){let u=function(){const p=h.scrollHeight-h.clientHeight;i.value=Math.ceil(h.scrollTop)<p};const h=e.viewport.value;u(),h.addEventListener("scroll",u),s(()=>h.removeEventListener("scroll",u))}}),t.watch(r,()=>{r.value&&(n==null||n.onScrollButtonChange(r.value))}),(s,c)=>i.value?(t.openBlock(),t.createBlock(nB,{key:0,ref:t.unref(o),onAutoScroll:c[0]||(c[0]=()=>{const{viewport:d,selectedItem:h}=t.unref(e);d!=null&&d.value&&(h!=null&&h.value)&&(d.value.scrollTop=d.value.scrollTop+h.value.offsetHeight)})},{default:t.withCtx(()=>[t.renderSlot(s.$slots,"default")]),_:3},512)):t.createCommentVNode("v-if",!0)}}),nj=aj,oj=t.defineComponent({__name:"SelectScrollUpButton",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=Wi(),n=e.position==="item-aligned"?nI():void 0,{forwardRef:o,currentElement:r}=ke(),i=t.ref(!1);return t.watchEffect(s=>{var c,d;if((c=e.viewport)!=null&&c.value&&((d=e.isPositioned)!=null&&d.value)){let u=function(){i.value=h.scrollTop>0};const h=e.viewport.value;u(),h.addEventListener("scroll",u),s(()=>h.removeEventListener("scroll",u))}}),t.watch(r,()=>{r.value&&(n==null||n.onScrollButtonChange(r.value))}),(s,c)=>i.value?(t.openBlock(),t.createBlock(nB,{key:0,ref:t.unref(o),onAutoScroll:c[0]||(c[0]=()=>{const{viewport:d,selectedItem:h}=t.unref(e);d!=null&&d.value&&(h!=null&&h.value)&&(d.value.scrollTop=d.value.scrollTop-h.value.offsetHeight)})},{default:t.withCtx(()=>[t.renderSlot(s.$slots,"default")]),_:3},512)):t.createCommentVNode("v-if",!0)}}),rj=oj,ij=t.defineComponent({__name:"SelectTrigger",props:{disabled:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(a){const e=a,n=ga(),{forwardRef:o,currentElement:r}=ke(),i=t.computed(()=>{var y;return((y=n.disabled)==null?void 0:y.value)||e.disabled});n.contentId||(n.contentId=gs(void 0,"reka-select-content")),t.onMounted(()=>{n.onTriggerChange(r.value)});const{getItems:s}=bs(),{search:c,handleTypeaheadSearch:d,resetTypeahead:h}=AA();function u(){i.value||(n.onOpenChange(!0),h())}function p(y){u(),n.triggerPointerDownPosRef.value={x:Math.round(y.pageX),y:Math.round(y.pageY)}}return(y,f)=>(t.openBlock(),t.createBlock(t.unref(QA),{"as-child":"",reference:y.reference},{default:t.withCtx(()=>{var k,m,g,v;return[t.createVNode(t.unref(we),{ref:t.unref(o),role:"combobox",type:y.as==="button"?"button":void 0,"aria-controls":t.unref(n).contentId,"aria-expanded":t.unref(n).open.value||!1,"aria-required":(k=t.unref(n).required)==null?void 0:k.value,"aria-autocomplete":"none",disabled:i.value,dir:(m=t.unref(n))==null?void 0:m.dir.value,"data-state":(g=t.unref(n))!=null&&g.open.value?"open":"closed","data-disabled":i.value?"":void 0,"data-placeholder":t.unref(LH)((v=t.unref(n).modelValue)==null?void 0:v.value)?"":void 0,"as-child":y.asChild,as:y.as,onClick:f[0]||(f[0]=L=>{var w;(w=L==null?void 0:L.currentTarget)==null||w.focus()}),onPointerdown:f[1]||(f[1]=L=>{if(L.pointerType==="touch")return L.preventDefault();const w=L.target;w.hasPointerCapture(L.pointerId)&&w.releasePointerCapture(L.pointerId),L.button===0&&L.ctrlKey===!1&&(p(L),L.preventDefault())}),onPointerup:f[2]||(f[2]=t.withModifiers(L=>{L.pointerType==="touch"&&p(L)},["prevent"])),onKeydown:f[3]||(f[3]=L=>{const w=t.unref(c)!=="";!(L.ctrlKey||L.altKey||L.metaKey)&&L.key.length===1&&w&&L.key===" "||(t.unref(d)(L.key,t.unref(s)()),t.unref(vH).includes(L.key)&&(u(),L.preventDefault()))})},{default:t.withCtx(()=>[t.renderSlot(y.$slots,"default")]),_:3},8,["type","aria-controls","aria-expanded","aria-required","disabled","dir","data-state","data-disabled","data-placeholder","as-child","as"])]}),_:3},8,["reference"]))}}),sj=ij,lj=t.defineComponent({__name:"SelectValue",props:{placeholder:{type:String,required:!1,default:""},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(a){const e=a,{forwardRef:n,currentElement:o}=ke(),r=ga();t.onMounted(()=>{r.valueElement=o});const i=t.computed(()=>{var u;let c=[];const d=Array.from(r.optionsSet.value),h=p=>d.find(y=>d1(p,y.value,r.by));return Array.isArray(r.modelValue.value)?c=r.modelValue.value.map(p=>{var y;return((y=h(p))==null?void 0:y.textContent)??""}):c=[((u=h(r.modelValue.value))==null?void 0:u.textContent)??""],c.filter(Boolean)}),s=t.computed(()=>i.value.length?i.value.join(", "):e.placeholder);return(c,d)=>(t.openBlock(),t.createBlock(t.unref(we),{ref:t.unref(n),as:c.as,"as-child":c.asChild,style:{pointerEvents:"none"},"data-placeholder":i.value.length?void 0:e.placeholder},{default:t.withCtx(()=>[t.renderSlot(c.$slots,"default",{selectedLabel:i.value,modelValue:t.unref(r).modelValue.value},()=>[t.createTextVNode(t.toDisplayString(s.value),1)])]),_:3},8,["as","as-child","data-placeholder"]))}}),cj=lj,dj=t.defineComponent({__name:"SelectViewport",props:{nonce:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=a,{nonce:n}=t.toRefs(e),o=tH(n),r=Wi(),i=r.position==="item-aligned"?nI():void 0,{forwardRef:s,currentElement:c}=ke();t.onMounted(()=>{r==null||r.onViewportChange(c.value)});const d=t.ref(0);function h(u){const p=u.currentTarget,{shouldExpandOnScrollRef:y,contentWrapper:f}=i??{};if(y!=null&&y.value&&(f!=null&&f.value)){const k=Math.abs(d.value-p.scrollTop);if(k>0){const m=window.innerHeight-gt*2,g=Number.parseFloat(f.value.style.minHeight),v=Number.parseFloat(f.value.style.height),L=Math.max(g,v);if(L<m){const w=L+k,M=Math.min(m,w),C=w-M;f.value.style.height=`${M}px`,f.value.style.bottom==="0px"&&(p.scrollTop=C>0?C:0,f.value.style.justifyContent="flex-end")}}}d.value=p.scrollTop}return(u,p)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(t.unref(we),t.mergeProps({ref:t.unref(s),"data-reka-select-viewport":"",role:"presentation"},{...u.$attrs,...e},{style:{position:"relative",flex:1,overflow:"hidden auto"},onScroll:h}),{default:t.withCtx(()=>[t.renderSlot(u.$slots,"default")]),_:3},16),t.createVNode(t.unref(we),{as:"style",nonce:t.unref(o)},{default:t.withCtx(()=>p[0]||(p[0]=[t.createTextVNode(" /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-reka-select-viewport] { scrollbar-width:none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } [data-reka-select-viewport]::-webkit-scrollbar { display: none; } ")])),_:1,__:[0]},8,["nonce"])],64))}}),hj=dj,uj=t.defineComponent({__name:"BaseSeparator",props:{orientation:{type:String,required:!1,default:"horizontal"},decorative:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=a,n=["horizontal","vertical"];function o(c){return n.includes(c)}const r=t.computed(()=>o(e.orientation)?e.orientation:"horizontal"),i=t.computed(()=>r.value==="vertical"?e.orientation:void 0),s=t.computed(()=>e.decorative?{role:"none"}:{"aria-orientation":i.value,role:"separator"});return(c,d)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps({as:c.as,"as-child":c.asChild,"data-orientation":r.value},s.value),{default:t.withCtx(()=>[t.renderSlot(c.$slots,"default")]),_:3},16,["as","as-child","data-orientation"]))}}),pj=uj,yj=t.defineComponent({__name:"Separator",props:{orientation:{type:String,required:!1,default:"horizontal"},decorative:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(pj,t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),fj=yj;const[oI,kj]=st("TooltipProvider");var mj=t.defineComponent({inheritAttrs:!1,__name:"TooltipProvider",props:{delayDuration:{type:Number,required:!1,default:700},skipDelayDuration:{type:Number,required:!1,default:300},disableHoverableContent:{type:Boolean,required:!1,default:!1},disableClosingTrigger:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},ignoreNonKeyboardFocus:{type:Boolean,required:!1,default:!1}},setup(a){const e=a,{delayDuration:n,skipDelayDuration:o,disableHoverableContent:r,disableClosingTrigger:i,ignoreNonKeyboardFocus:s,disabled:c}=t.toRefs(e);ke();const d=t.ref(!0),h=t.ref(!1),{start:u,stop:p}=MA(()=>{d.value=!0},o,{immediate:!1});return kj({isOpenDelayed:d,delayDuration:n,onOpen(){p(),d.value=!1},onClose(){u()},isPointerInTransitRef:h,disableHoverableContent:r,disableClosingTrigger:i,disabled:c,ignoreNonKeyboardFocus:s}),(y,f)=>t.renderSlot(y.$slots,"default")}}),gj=mj;const oB="tooltip.open",[SL,bj]=st("TooltipRoot");var Mj=t.defineComponent({__name:"TooltipRoot",props:{defaultOpen:{type:Boolean,required:!1,default:!1},open:{type:Boolean,required:!1,default:void 0},delayDuration:{type:Number,required:!1,default:void 0},disableHoverableContent:{type:Boolean,required:!1,default:void 0},disableClosingTrigger:{type:Boolean,required:!1,default:void 0},disabled:{type:Boolean,required:!1,default:void 0},ignoreNonKeyboardFocus:{type:Boolean,required:!1,default:void 0}},emits:["update:open"],setup(a,{emit:e}){const n=a,o=e;ke();const r=oI(),i=t.computed(()=>n.disableHoverableContent??r.disableHoverableContent.value),s=t.computed(()=>n.disableClosingTrigger??r.disableClosingTrigger.value),c=t.computed(()=>n.disabled??r.disabled.value),d=t.computed(()=>n.delayDuration??r.delayDuration.value),h=t.computed(()=>n.ignoreNonKeyboardFocus??r.ignoreNonKeyboardFocus.value),u=ks(n,"open",o,{defaultValue:n.defaultOpen,passive:n.open===void 0});t.watch(u,w=>{r.onClose&&(w?(r.onOpen(),document.dispatchEvent(new CustomEvent(oB))):r.onClose())});const p=t.ref(!1),y=t.ref(),f=t.computed(()=>u.value?p.value?"delayed-open":"instant-open":"closed"),{start:k,stop:m}=MA(()=>{p.value=!0,u.value=!0},d,{immediate:!1});function g(){m(),p.value=!1,u.value=!0}function v(){m(),u.value=!1}function L(){k()}return bj({contentId:"",open:u,stateAttribute:f,trigger:y,onTriggerChange(w){y.value=w},onTriggerEnter(){r.isOpenDelayed.value?L():g()},onTriggerLeave(){i.value?v():m()},onOpen:g,onClose:v,disableHoverableContent:i,disableClosingTrigger:s,disabled:c,ignoreNonKeyboardFocus:h}),(w,M)=>(t.openBlock(),t.createBlock(t.unref(YA),null,{default:t.withCtx(()=>[t.renderSlot(w.$slots,"default",{open:t.unref(u)})]),_:3}))}}),xj=Mj,wj=t.defineComponent({__name:"TooltipContentImpl",props:{ariaLabel:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},side:{type:null,required:!1,default:"top"},sideOffset:{type:Number,required:!1,default:0},align:{type:null,required:!1,default:"center"},alignOffset:{type:Number,required:!1},avoidCollisions:{type:Boolean,required:!1,default:!0},collisionBoundary:{type:null,required:!1,default:()=>[]},collisionPadding:{type:[Number,Object],required:!1,default:0},arrowPadding:{type:Number,required:!1,default:0},sticky:{type:String,required:!1,default:"partial"},hideWhenDetached:{type:Boolean,required:!1,default:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1}},emits:["escapeKeyDown","pointerDownOutside"],setup(a,{emit:e}){const n=a,o=e,r=SL(),{forwardRef:i,currentElement:s}=ke(),c=t.computed(()=>{var h;return n.ariaLabel||((h=s.value)==null?void 0:h.textContent)}),d=t.computed(()=>{const{ariaLabel:h,...u}=n;return u});return t.onMounted(()=>{l1(window,"scroll",h=>{const u=h.target;u!=null&&u.contains(r.trigger.value)&&r.onClose()}),l1(window,oB,r.onClose)}),(h,u)=>(t.openBlock(),t.createBlock(t.unref(YS),{"as-child":"","disable-outside-pointer-events":!1,onEscapeKeyDown:u[0]||(u[0]=p=>o("escapeKeyDown",p)),onPointerDownOutside:u[1]||(u[1]=p=>{var y;t.unref(r).disableClosingTrigger.value&&((y=t.unref(r).trigger.value)!=null&&y.contains(p.target))&&p.preventDefault(),o("pointerDownOutside",p)}),onFocusOutside:u[2]||(u[2]=t.withModifiers(()=>{},["prevent"])),onDismiss:u[3]||(u[3]=p=>t.unref(r).onClose())},{default:t.withCtx(()=>[t.createVNode(t.unref(JA),t.mergeProps({ref:t.unref(i),"data-state":t.unref(r).stateAttribute.value},{...h.$attrs,...d.value},{style:{"--reka-tooltip-content-transform-origin":"var(--reka-popper-transform-origin)","--reka-tooltip-content-available-width":"var(--reka-popper-available-width)","--reka-tooltip-content-available-height":"var(--reka-popper-available-height)","--reka-tooltip-trigger-width":"var(--reka-popper-anchor-width)","--reka-tooltip-trigger-height":"var(--reka-popper-anchor-height)"}}),{default:t.withCtx(()=>[t.renderSlot(h.$slots,"default"),t.createVNode(t.unref(XA),{id:t.unref(r).contentId,role:"tooltip"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(c.value),1)]),_:1},8,["id"])]),_:3},16,["data-state"])]),_:3}))}}),rB=wj,vj=t.defineComponent({__name:"TooltipContentHoverable",props:{ariaLabel:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1}},setup(a){const n=Ze(a),{forwardRef:o,currentElement:r}=ke(),{trigger:i,onClose:s}=SL(),c=oI(),{isPointerInTransit:d,onPointerExit:h}=jE(i,r);return c.isPointerInTransitRef=d,h(()=>{s()}),(u,p)=>(t.openBlock(),t.createBlock(rB,t.mergeProps({ref:t.unref(o)},t.unref(n)),{default:t.withCtx(()=>[t.renderSlot(u.$slots,"default")]),_:3},16))}}),Cj=vj,Lj=t.defineComponent({__name:"TooltipContent",props:{forceMount:{type:Boolean,required:!1},ariaLabel:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},side:{type:null,required:!1,default:"top"},sideOffset:{type:Number,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1}},emits:["escapeKeyDown","pointerDownOutside"],setup(a,{emit:e}){const n=a,o=e,r=SL(),i=mt(n,o),{forwardRef:s}=ke();return(c,d)=>(t.openBlock(),t.createBlock(t.unref(CL),{present:c.forceMount||t.unref(r).open.value},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(r).disableHoverableContent.value?rB:Cj),t.mergeProps({ref:t.unref(s)},t.unref(i)),{default:t.withCtx(()=>[t.renderSlot(c.$slots,"default")]),_:3},16))]),_:3},8,["present"]))}}),Sj=Lj,Ij=t.defineComponent({__name:"TooltipPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(eI),t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),_j=Ij,Aj=t.defineComponent({__name:"TooltipTrigger",props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(a){const e=a,n=SL(),o=oI();n.contentId||(n.contentId=gs(void 0,"reka-tooltip-content"));const{forwardRef:r,currentElement:i}=ke(),s=t.ref(!1),c=t.ref(!1),d=t.computed(()=>n.disabled.value?{}:{click:m,focus:f,pointermove:p,pointerleave:y,pointerdown:u,blur:k});t.onMounted(()=>{n.onTriggerChange(i.value)});function h(){setTimeout(()=>{s.value=!1},1)}function u(){n.open&&!n.disableClosingTrigger.value&&n.onClose(),s.value=!0,document.addEventListener("pointerup",h,{once:!0})}function p(g){g.pointerType!=="touch"&&!c.value&&!o.isPointerInTransitRef.value&&(n.onTriggerEnter(),c.value=!0)}function y(){n.onTriggerLeave(),c.value=!1}function f(g){var v,L;s.value||n.ignoreNonKeyboardFocus.value&&!((L=(v=g.target).matches)!=null&&L.call(v,":focus-visible"))||n.onOpen()}function k(){n.onClose()}function m(){n.disableClosingTrigger.value||n.onClose()}return(g,v)=>(t.openBlock(),t.createBlock(t.unref(QA),{"as-child":"",reference:g.reference},{default:t.withCtx(()=>[t.createVNode(t.unref(we),t.mergeProps({ref:t.unref(r),"aria-describedby":t.unref(n).open.value?t.unref(n).contentId:void 0,"data-state":t.unref(n).stateAttribute.value,as:g.as,"as-child":e.asChild,"data-grace-area-trigger":""},t.toHandlers(d.value)),{default:t.withCtx(()=>[t.renderSlot(g.$slots,"default")]),_:3},16,["aria-describedby","data-state","as","as-child"])]),_:3},8,["reference"]))}}),Bj=Aj;const Ee=t.defineComponent({__name:"Button",props:{variant:{},size:{},class:{type:[Boolean,null,String,Object,Array]},asChild:{type:Boolean},as:{default:"button"}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(we),{as:a.as,"as-child":a.asChild,class:t.normalizeClass(t.unref(be)(t.unref(xs)({variant:a.variant,size:a.size}),e.class))},{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},8,["as","as-child","class"]))}}),xs=i1("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",xs:"h-7 rounded px-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-8 w-8","icon-sm":"size-7","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}}),iB=t.defineComponent({__name:"Tooltip",props:{defaultOpen:{type:Boolean},open:{type:Boolean},delayDuration:{},disableHoverableContent:{type:Boolean},disableClosingTrigger:{type:Boolean},disabled:{type:Boolean},ignoreNonKeyboardFocus:{type:Boolean}},emits:["update:open"],setup(a,{emit:e}){const r=mt(a,e);return(i,s)=>(t.openBlock(),t.createBlock(t.unref(xj),t.normalizeProps(t.guardReactiveProps(t.unref(r))),{default:t.withCtx(()=>[t.renderSlot(i.$slots,"default")]),_:3},16))}}),sB=t.defineComponent({inheritAttrs:!1,__name:"TooltipContent",props:{forceMount:{type:Boolean},ariaLabel:{},asChild:{type:Boolean},as:{},side:{},sideOffset:{default:4},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},positionStrategy:{},updatePositionStrategy:{},class:{type:[Boolean,null,String,Object,Array]}},emits:["escapeKeyDown","pointerDownOutside"],setup(a,{emit:e}){const n=a,o=e,r=De(n,"class"),i=mt(r,o);return(s,c)=>(t.openBlock(),t.createBlock(t.unref(_j),null,{default:t.withCtx(()=>[t.createVNode(t.unref(Sj),t.mergeProps({...t.unref(i),...s.$attrs},{class:t.unref(be)("z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",n.class)}),{default:t.withCtx(()=>[t.renderSlot(s.$slots,"default")]),_:3},16,["class"])]),_:3}))}}),lB=t.defineComponent({__name:"TooltipProvider",props:{delayDuration:{},skipDelayDuration:{},disableHoverableContent:{type:Boolean},disableClosingTrigger:{type:Boolean},disabled:{type:Boolean},ignoreNonKeyboardFocus:{type:Boolean}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(gj),t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),cB=t.defineComponent({__name:"TooltipTrigger",props:{reference:{},asChild:{type:Boolean},as:{}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(Bj),t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),Vj={class:"relative z-10"},zj="font-medium transition-all duration-300 ease-in-out hover:-translate-y-0.5 hover:scale-[1.02] active:translate-y-0 active:scale-[0.98] shadow-[0_3px_0_0_rgba(0,0,0,0.12),0_12px_22px_-10px_rgba(0,0,0,0.35)] hover:shadow-[0_6px_20px_-4px_rgba(0,0,0,0.3),0_10px_40px_-10px_rgba(0,0,0,0.2)] active:shadow-[0_1px_0_0_rgba(0,0,0,0.2),0_4px_8px_-4px_rgba(0,0,0,0.35)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:opacity-60 disabled:cursor-not-allowed disabled:shadow-none disabled:translate-y-0 disabled:scale-100 relative overflow-hidden before:absolute before:inset-0 before:bg-white/20 before:translate-y-full before:transition-transform before:duration-300 hover:before:translate-y-0",qj=t.defineComponent({name:"DCodeButton",inheritAttrs:!1,__name:"DCodeButton",props:{icon:{},text:{default:""},variant:{default:"default"},size:{default:"default"},tooltip:{default:""},bgColor:{default:""},textColor:{default:""},borderColor:{default:""},rounded:{default:"lg"},borderStyle:{default:"solid"},disabled:{type:Boolean,default:!1},type:{default:"button"},visible:{type:Boolean,default:!0},skeleton:{type:Boolean,default:!1}},setup(a){const e=t.useAttrs(),n=a,o=t.computed(()=>n.icon&&Gt[n.icon]||null),r=t.computed(()=>!!n.tooltip),i=t.computed(()=>n.visible??!0),s=t.computed(()=>{const R=String(n.variant||"default").toLowerCase();return R==="tonal"?"secondary":R==="elevated"?"default":R}),c=t.computed(()=>String(n.bgColor||"").toLowerCase()),d=t.computed(()=>String(n.type||"button").toLowerCase()),h=t.computed(()=>{const{class:R,...Z}=e;return Z}),u=t.computed(()=>be(e.class)),p=t.computed(()=>((u.value??"").match(/\b(?:w|h|min-w|min-h|max-w|max-h)-[^\s]+\b/g)??[]).join(" ")),y=t.computed(()=>n.size==="sm"?"h-9":n.size==="lg"?"h-11":n.size==="icon"?"h-10 w-10":"h-10"),f=t.computed(()=>n.size==="icon"?"":!n.text&&n.icon?"w-10":"w-28"),k=t.computed(()=>n.rounded?n.rounded.startsWith("rounded")?n.rounded:{none:"rounded-none",sm:"rounded-sm",md:"rounded-md",lg:"rounded-lg",xl:"rounded-xl","2xl":"rounded-2xl","3xl":"rounded-3xl",full:"rounded-full"}[n.rounded]||`rounded-${n.rounded}`:""),m=t.computed(()=>!n.borderStyle||n.borderStyle==="solid"?"":{dashed:"border-2 border-dashed",dotted:"border-2 border-dotted",double:"border-4 border-double",none:"border-0 border-none"}[n.borderStyle]||""),g=t.computed(()=>be("inline-flex items-center justify-center bg-gray-200 dark:bg-gray-700 animate-pulse",k.value,y.value,f.value,p.value)),v=t.computed(()=>{const Z=(u.value??"").match(/\bbg-(?!gradient)([a-z-]+)(?:-(\d{2,3}))?\b/u);return Z?Z[0]:null}),L=t.computed(()=>{const Z=(u.value??"").match(/\bhover:bg-(?!gradient)([a-z-]+)(?:-(\d{2,3}))?\b/u);return Z?Z[0]:null}),w=t.computed(()=>!!v.value),M=t.computed(()=>/\bborder-/.test(u.value??"")),C=t.computed(()=>/\bhover:/.test(u.value??"")),S=t.computed(()=>{const R=u.value??"";return s.value!=="outline"?R:R.replaceAll(/\bbg-(?!gradient)[^\s]+\b/gu,"").replaceAll(/\bhover:bg-(?!gradient)[^\s]+\b/gu,"").replaceAll(/\s+/gu," ").trim()}),b=t.ref(null),x=R=>{const Z=R.match(/rgba?\((\d+),\s*(\d+),\s*(\d+)(?:,\s*([0-9.]+))?\)/u);return Z?{r:Number(Z[1]),g:Number(Z[2]),b:Number(Z[3]),a:Z[4]?Number(Z[4]):1}:null},I=(R,Z)=>{const J=x(R);if(!J)return R;const re=de=>Math.max(0,Math.min(255,Math.round(de)));return`rgba(${re(J.r*(1-Z))}, ${re(J.g*(1-Z))}, ${re(J.b*(1-Z))}, ${J.a})`},V=R=>{if(globalThis.window===void 0)return null;const Z=document.createElement("div");Z.className=R,Z.style.position="absolute",Z.style.visibility="hidden",Z.style.pointerEvents="none",Z.style.width="1px",Z.style.height="1px",document.body.appendChild(Z);const J=globalThis.getComputedStyle(Z).backgroundColor;return Z.remove(),!J||J==="transparent"||J==="rgba(0, 0, 0, 0)"?null:J},B=[50,100,200,300,400,500,600,700,800,900,950],A=R=>{const Z=B.indexOf(R);return Z===-1?R:B[Math.min(B.length-1,Z+2)]},P=(R,Z)=>{const J=sE[R];if(!J)return null;if(typeof J=="string")return J;if(!Z)return null;const re=J[Z];return typeof re=="string"?re:null},D=(R,Z=!1)=>{if(!R)return null;const J=Z?/\bhover:bg-(?!gradient)([a-z-]+)(?:-(\d{2,3}))?\b/u:/\bbg-(?!gradient)([a-z-]+)(?:-(\d{2,3}))?\b/u,re=R.match(J);return re?{colorName:re[1],shade:re[2]?Number.parseInt(re[2],10):null}:null},U=()=>{const R=v.value;if(!R){b.value=null;return}const Z=D(R),J=Z==null?void 0:Z.colorName,re=(Z==null?void 0:Z.shade)??null,de=(J?P(J,re):null)??V(R);if(!de){b.value=null;return}let ue;const ve=D(L.value,!0),le=ve?P(ve.colorName,ve.shade??null):null;if(le)ue=le;else if(J&&re){const G=A(re);ue=P(J,G)??I(de,.2)}else ue=I(de,.2);b.value={"--btn-color":de,"--btn-color-hover":ue}};t.onMounted(()=>{U()}),t.watch([v,L],async()=>{await t.nextTick(),U()});const T=t.computed(()=>{const R=/\bdark:bg-/.test(u.value??"");return!w.value||s.value==="outline"||R?"":b.value?"dcode-btn--fill dcode-btn--fill-hover":C.value?"":"hover:brightness-90"}),H=t.computed(()=>{if(!w.value||s.value!=="outline")return"";const R=["dcode-btn--outline","dcode-btn--outline-hover"];return M.value||R.push("border"),!b.value&&!C.value&&R.push("hover:brightness-90"),R.join(" ")}),N=t.computed(()=>b.value??void 0),Q={primary:{bg:"bg-blue-600",text:"text-white",hover:"hover:bg-blue-700",border:"border-blue-600"},success:{bg:"bg-green-600",text:"text-white",hover:"hover:bg-green-700",border:"border-green-600"},warning:{bg:"bg-yellow-500",text:"text-white",hover:"hover:bg-yellow-600",border:"border-yellow-500"},danger:{bg:"bg-red-600",text:"text-white",hover:"hover:bg-red-700",border:"border-red-600"},info:{bg:"bg-cyan-600",text:"text-white",hover:"hover:bg-cyan-700",border:"border-cyan-600"},purple:{bg:"bg-purple-600",text:"text-white",hover:"hover:bg-purple-700",border:"border-purple-600"},pink:{bg:"bg-pink-600",text:"text-white",hover:"hover:bg-pink-700",border:"border-pink-600"},"gradient-blue":{bg:"bg-gradient-to-r from-blue-500 to-cyan-500",text:"text-white",hover:"hover:from-blue-600 hover:to-cyan-600"},"gradient-purple":{bg:"bg-gradient-to-r from-purple-500 to-pink-500",text:"text-white",hover:"hover:from-purple-600 hover:to-pink-600"},"gradient-sunset":{bg:"bg-gradient-to-r from-orange-500 to-red-500",text:"text-white",hover:"hover:from-orange-600 hover:to-red-600"},"gradient-emerald":{bg:"bg-gradient-to-r from-emerald-500 to-teal-500",text:"text-white",hover:"hover:from-emerald-600 hover:to-teal-600"},transparent:{bg:"bg-transparent",text:"text-inherit",hover:"hover:bg-gray-100/10 hover:text-inherit dark:hover:bg-gray-800/10 dark:hover:text-inherit",border:"border-current"}},j=t.computed(()=>{const R=[],Z=c.value?Q[c.value]:null;if(Z)R.push(Z.bg,Z.hover),R.push(n.textColor||Z.text),n.borderColor?R.push(n.borderColor):Z.border&&R.push(Z.border);else if(c.value&&R.push(c.value),n.textColor&&R.push(n.textColor),n.borderColor)R.push(n.borderColor);else if(c.value&&c.value.startsWith("bg-")){const J=c.value.replace(/^bg-/,"border-");J!==c.value&&R.push(J)}return R.join(" ")}),F=t.computed(()=>be(zj,k.value,m.value,S.value,T.value,H.value,j.value));return(R,Z)=>i.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[a.skeleton?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(g.value),"aria-hidden":"true"},null,2)):(t.openBlock(),t.createBlock(t.unref(lB),{key:1,"delay-duration":0},{default:t.withCtx(()=>[r.value?(t.openBlock(),t.createBlock(t.unref(iB),{key:0},{default:t.withCtx(()=>[t.createVNode(t.unref(cB),{"as-child":""},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee),t.mergeProps({variant:s.value,size:n.size,disabled:n.disabled,type:d.value,class:F.value,style:N.value},h.value),{default:t.withCtx(()=>[o.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.value),{key:0,class:"h-[18px] w-[18px]"})):t.createCommentVNode("",!0),n.text?(t.openBlock(),t.createElementBlock("span",{key:1,class:t.normalizeClass(o.value?"ml-1":"")},t.toDisplayString(n.text),3)):t.createCommentVNode("",!0)]),_:1},16,["variant","size","disabled","type","class","style"])]),_:1}),t.createVNode(t.unref(sB),{side:"top","side-offset":8,class:"animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 bg-gray-900 dark:bg-gray-100 text-white dark:text-gray-900 px-3 py-2 rounded-lg text-sm font-medium shadow-xl border-0"},{default:t.withCtx(()=>[t.createElementVNode("span",Vj,t.toDisplayString(n.tooltip),1)]),_:1})]),_:1})):(t.openBlock(),t.createBlock(t.unref(Ee),t.mergeProps({key:1,variant:s.value,size:n.size,disabled:n.disabled,type:d.value,class:F.value,style:N.value},h.value),{default:t.withCtx(()=>[t.renderSlot(R.$slots,"default",{},()=>[o.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.value),{key:0,class:"h-[18px] w-[18px]"})):t.createCommentVNode("",!0),n.text?(t.openBlock(),t.createElementBlock("span",{key:1,class:t.normalizeClass(o.value?"ml-1":"")},t.toDisplayString(n.text),3)):t.createCommentVNode("",!0)],!0)]),_:3},16,["variant","size","disabled","type","class","style"]))]),_:3}))],64)):t.createCommentVNode("",!0)}}),Xt=(a,e)=>{const n=a.__vccOpts||a;for(const[o,r]of e)n[o]=r;return n},ws=Xt(qj,[["__scopeId","data-v-bae48fba"]]),Pj={key:0,class:"flex items-center justify-between mb-4"},Dj={class:"flex flex-col gap-1"},Ej={key:0,class:"text-lg font-semibold text-neutral-900 dark:text-neutral-50 leading-tight"},Tj={key:1,class:"text-sm text-neutral-500 dark:text-neutral-400"},Hj={key:0,class:"flex items-center gap-2"},jj={class:"relative z-10"},Oj={key:1,class:"mt-6 pt-6 border-t border-neutral-200 dark:border-neutral-800"},Fj={name:"DCodeCard"},rI=t.defineComponent({...Fj,props:{level:{default:1},title:{},subtitle:{},shadow:{type:Boolean,default:!1},border:{type:Boolean,default:!0},padding:{default:"p-6"}},setup(a){const e=a,n=t.computed(()=>{switch(e.level){case 2:return"bg-neutral-50 dark:bg-neutral-800";case 3:return"bg-neutral-100 dark:bg-neutral-700";case 1:default:return"bg-white dark:bg-neutral-900"}});return(o,r)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["transition-shadow duration-300 dcode-card",[n.value,a.padding,{"shadow-md":a.shadow},{"border-transparent":!a.border},{"border-neutral-200 dark:border-neutral-800":a.border&&a.level===1},{"border-neutral-300 dark:border-neutral-700":a.border&&a.level!==1}]])},[a.title||o.$slots.header||o.$slots.actions?(t.openBlock(),t.createElementBlock("div",Pj,[t.createElementVNode("div",Dj,[t.renderSlot(o.$slots,"header",{},()=>[a.title?(t.openBlock(),t.createElementBlock("h3",Ej,t.toDisplayString(a.title),1)):t.createCommentVNode("",!0),a.subtitle?(t.openBlock(),t.createElementBlock("p",Tj,t.toDisplayString(a.subtitle),1)):t.createCommentVNode("",!0)])]),o.$slots.actions?(t.openBlock(),t.createElementBlock("div",Hj,[t.renderSlot(o.$slots,"actions")])):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0),t.createElementVNode("div",jj,[t.renderSlot(o.$slots,"default")]),o.$slots.footer?(t.openBlock(),t.createElementBlock("div",Oj,[t.renderSlot(o.$slots,"footer")])):t.createCommentVNode("",!0)],2))}});/*!
|
|
8502
|
+
For more information, see https://www.reka-ui.com/docs/components/${n}`,c=`Warning: Missing \`Description\` or \`aria-describedby="undefined"\` for ${e}.`;t.onMounted(()=>{var u;document.getElementById(o)||console.warn(s);const h=(u=i.value)==null?void 0:u.getAttribute("aria-describedby");r&&h&&(document.getElementById(r)||console.warn(c))})}var wT={},vT=t.defineComponent({__name:"DialogContentImpl",props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(a,{emit:e}){const n=a,o=e,r=Tt(),{forwardRef:i,currentElement:s}=ke();return r.titleId||(r.titleId=gs(void 0,"reka-dialog-title")),r.descriptionId||(r.descriptionId=gs(void 0,"reka-dialog-description")),t.onMounted(()=>{r.contentElement=s,at()!==document.body&&(r.triggerElement.value=at())}),wT.NODE_ENV!=="production"&&xT({titleName:"DialogTitle",contentName:"DialogContent",componentLink:"dialog.html#title",titleId:r.titleId,descriptionId:r.descriptionId,contentElement:s}),(c,d)=>(t.openBlock(),t.createBlock(t.unref(HA),{"as-child":"",loop:"",trapped:n.trapFocus,onMountAutoFocus:d[5]||(d[5]=h=>o("openAutoFocus",h)),onUnmountAutoFocus:d[6]||(d[6]=h=>o("closeAutoFocus",h))},{default:t.withCtx(()=>[t.createVNode(t.unref(YS),t.mergeProps({id:t.unref(r).contentId,ref:t.unref(i),as:c.as,"as-child":c.asChild,"disable-outside-pointer-events":c.disableOutsidePointerEvents,role:"dialog","aria-describedby":t.unref(r).descriptionId,"aria-labelledby":t.unref(r).titleId,"data-state":t.unref(gT)(t.unref(r).open.value)},c.$attrs,{onDismiss:d[0]||(d[0]=h=>t.unref(r).onOpenChange(!1)),onEscapeKeyDown:d[1]||(d[1]=h=>o("escapeKeyDown",h)),onFocusOutside:d[2]||(d[2]=h=>o("focusOutside",h)),onInteractOutside:d[3]||(d[3]=h=>o("interactOutside",h)),onPointerDownOutside:d[4]||(d[4]=h=>o("pointerDownOutside",h))}),{default:t.withCtx(()=>[t.renderSlot(c.$slots,"default")]),_:3},16,["id","as","as-child","disable-outside-pointer-events","aria-describedby","aria-labelledby","data-state"])]),_:3},8,["trapped"]))}}),OA=vT,CT=t.defineComponent({__name:"DialogContentModal",props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(a,{emit:e}){const n=a,o=e,r=Tt(),i=ML(o),{forwardRef:s,currentElement:c}=ke();return _A(c),(d,h)=>(t.openBlock(),t.createBlock(OA,t.mergeProps({...n,...t.unref(i)},{ref:t.unref(s),"trap-focus":t.unref(r).open.value,"disable-outside-pointer-events":!0,onCloseAutoFocus:h[0]||(h[0]=u=>{var p;u.defaultPrevented||(u.preventDefault(),(p=t.unref(r).triggerElement.value)==null||p.focus())}),onPointerDownOutside:h[1]||(h[1]=u=>{const p=u.detail.originalEvent,y=p.button===0&&p.ctrlKey===!0;(p.button===2||y)&&u.preventDefault()}),onFocusOutside:h[2]||(h[2]=u=>{u.preventDefault()})}),{default:t.withCtx(()=>[t.renderSlot(d.$slots,"default")]),_:3},16,["trap-focus"]))}}),LT=CT,ST=t.defineComponent({__name:"DialogContentNonModal",props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(a,{emit:e}){const n=a,r=ML(e);ke();const i=Tt(),s=t.ref(!1),c=t.ref(!1);return(d,h)=>(t.openBlock(),t.createBlock(OA,t.mergeProps({...n,...t.unref(r)},{"trap-focus":!1,"disable-outside-pointer-events":!1,onCloseAutoFocus:h[0]||(h[0]=u=>{var p;u.defaultPrevented||(s.value||(p=t.unref(i).triggerElement.value)==null||p.focus(),u.preventDefault()),s.value=!1,c.value=!1}),onInteractOutside:h[1]||(h[1]=u=>{var f;u.defaultPrevented||(s.value=!0,u.detail.originalEvent.type==="pointerdown"&&(c.value=!0));const p=u.target;((f=t.unref(i).triggerElement.value)==null?void 0:f.contains(p))&&u.preventDefault(),u.detail.originalEvent.type==="focusin"&&c.value&&u.preventDefault()})}),{default:t.withCtx(()=>[t.renderSlot(d.$slots,"default")]),_:3},16))}}),IT=ST,_T=t.defineComponent({__name:"DialogContent",props:{forceMount:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(a,{emit:e}){const n=a,o=e,r=Tt(),i=ML(o),{forwardRef:s}=ke();return(c,d)=>(t.openBlock(),t.createBlock(t.unref(CL),{present:c.forceMount||t.unref(r).open.value},{default:t.withCtx(()=>[t.unref(r).modal.value?(t.openBlock(),t.createBlock(LT,t.mergeProps({key:0,ref:t.unref(s)},{...n,...t.unref(i),...c.$attrs}),{default:t.withCtx(()=>[t.renderSlot(c.$slots,"default")]),_:3},16)):(t.openBlock(),t.createBlock(IT,t.mergeProps({key:1,ref:t.unref(s)},{...n,...t.unref(i),...c.$attrs}),{default:t.withCtx(()=>[t.renderSlot(c.$slots,"default")]),_:3},16))]),_:3},8,["present"]))}}),FA=_T,AT=t.defineComponent({__name:"DialogDescription",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"p"}},setup(a){const e=a;ke();const n=Tt();return(o,r)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{id:t.unref(n).descriptionId}),{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default")]),_:3},16,["id"]))}}),RA=AT,BT=t.defineComponent({__name:"DialogOverlayImpl",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=Tt();return CA(!0),ke(),(n,o)=>(t.openBlock(),t.createBlock(t.unref(we),{as:n.as,"as-child":n.asChild,"data-state":t.unref(e).open.value?"open":"closed",style:{"pointer-events":"auto"}},{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},8,["as","as-child","data-state"]))}}),VT=BT,zT=t.defineComponent({__name:"DialogOverlay",props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=Tt(),{forwardRef:n}=ke();return(o,r)=>{var i;return(i=t.unref(e))!=null&&i.modal.value?(t.openBlock(),t.createBlock(t.unref(CL),{key:0,present:o.forceMount||t.unref(e).open.value},{default:t.withCtx(()=>[t.createVNode(VT,t.mergeProps(o.$attrs,{ref:t.unref(n),as:o.as,"as-child":o.asChild}),{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default")]),_:3},16,["as","as-child"])]),_:3},8,["present"])):t.createCommentVNode("v-if",!0)}}}),NA=zT,qT=t.defineComponent({__name:"Teleport",props:{to:{type:null,required:!1,default:"body"},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(a){const e=xA();return(n,o)=>t.unref(e)||n.forceMount?(t.openBlock(),t.createBlock(t.Teleport,{key:0,to:n.to,disabled:n.disabled,defer:n.defer},[t.renderSlot(n.$slots,"default")],8,["to","disabled","defer"])):t.createCommentVNode("v-if",!0)}}),eI=qT,PT=t.defineComponent({__name:"DialogPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(eI),t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),$A=PT,DT=t.defineComponent({__name:"DialogTitle",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"h2"}},setup(a){const e=a,n=Tt();return ke(),(o,r)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{id:t.unref(n).titleId}),{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default")]),_:3},16,["id"]))}}),UA=DT,ET=t.defineComponent({__name:"DialogTrigger",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(a){const e=a,n=Tt(),{forwardRef:o,currentElement:r}=ke();return n.contentId||(n.contentId=gs(void 0,"reka-dialog-content")),t.onMounted(()=>{n.triggerElement.value=r.value}),(i,s)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{ref:t.unref(o),type:i.as==="button"?"button":void 0,"aria-haspopup":"dialog","aria-expanded":t.unref(n).open.value||!1,"aria-controls":t.unref(n).open.value?t.unref(n).contentId:void 0,"data-state":t.unref(n).open.value?"open":"closed",onClick:t.unref(n).onOpenToggle}),{default:t.withCtx(()=>[t.renderSlot(i.$slots,"default")]),_:3},16,["type","aria-expanded","aria-controls","data-state","onClick"]))}}),TT=ET;const[WA,HT]=st("AvatarRoot");var jT=t.defineComponent({__name:"AvatarRoot",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(a){return ke(),HT({imageLoadingStatus:t.ref("idle")}),(e,n)=>(t.openBlock(),t.createBlock(t.unref(we),{"as-child":e.asChild,as:e.as},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"default")]),_:3},8,["as-child","as"]))}}),OT=jT,FT=t.defineComponent({__name:"AvatarFallback",props:{delayMs:{type:Number,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(a){const e=a,n=WA();ke();const o=t.ref(e.delayMs===void 0);return t.watchEffect(r=>{if(e.delayMs&<){const i=window.setTimeout(()=>{o.value=!0},e.delayMs);r(()=>{window.clearTimeout(i)})}}),(r,i)=>o.value&&t.unref(n).imageLoadingStatus.value!=="loaded"?(t.openBlock(),t.createBlock(t.unref(we),{key:0,"as-child":r.asChild,as:r.as},{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default")]),_:3},8,["as-child","as"])):t.createCommentVNode("v-if",!0)}}),RT=FT;function GA(a,e){return a?e?(a.src!==e&&(a.src=e),a.complete&&a.naturalWidth>0?"loaded":"loading"):"error":"idle"}function NT(a,{referrerPolicy:e,crossOrigin:n}={}){const o=t.ref(!1),r=t.ref(null),i=t.computed(()=>o.value?(!r.value&<&&(r.value=new window.Image),r.value):null),s=t.ref(GA(i.value,a.value)),c=d=>()=>{o.value&&(s.value=d)};return t.onMounted(()=>{o.value=!0,t.watchEffect(d=>{const h=i.value;if(!h)return;s.value=GA(h,a.value);const u=c("loaded"),p=c("error");h.addEventListener("load",u),h.addEventListener("error",p),e!=null&&e.value&&(h.referrerPolicy=e.value),typeof(n==null?void 0:n.value)=="string"&&(h.crossOrigin=n.value),d(()=>{h.removeEventListener("load",u),h.removeEventListener("error",p)})})}),t.onUnmounted(()=>{o.value=!1}),s}var $T=t.defineComponent({__name:"AvatarImage",props:{src:{type:String,required:!0},referrerPolicy:{type:null,required:!1},crossOrigin:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"img"}},emits:["loadingStatusChange"],setup(a,{emit:e}){const n=a,o=e,{src:r,referrerPolicy:i,crossOrigin:s}=t.toRefs(n);ke();const c=WA(),d=NT(r,{referrerPolicy:i,crossOrigin:s});return t.watch(d,h=>{o("loadingStatusChange",h),h!=="idle"&&(c.imageLoadingStatus.value=h)},{immediate:!0}),(h,u)=>t.withDirectives((t.openBlock(),t.createBlock(t.unref(we),{role:"img","as-child":h.asChild,as:h.as,src:t.unref(r),referrerpolicy:t.unref(i),crossorigin:t.unref(s)},{default:t.withCtx(()=>[t.renderSlot(h.$slots,"default")]),_:3},8,["as-child","as","src","referrerpolicy","crossorigin"])),[[t.vShow,t.unref(d)==="loaded"]])}}),UT=$T;const KA="data-reka-collection-item";function bs(a={}){const{key:e="",isProvider:n=!1}=a,o=`${e}CollectionProvider`;let r;if(n){const u=t.ref(new Map);r={collectionRef:t.ref(),itemMap:u},t.provide(o,r)}else r=t.inject(o);const i=(u=!1)=>{const p=r.collectionRef.value;if(!p)return[];const y=Array.from(p.querySelectorAll(`[${KA}]`)),k=Array.from(r.itemMap.value.values()).sort((m,g)=>y.indexOf(m.ref)-y.indexOf(g.ref));return u?k:k.filter(m=>m.ref.dataset.disabled!=="")},s=t.defineComponent({name:"CollectionSlot",inheritAttrs:!1,setup(u,{slots:p,attrs:y}){const{primitiveElement:f,currentElement:k}=BA();return t.watch(k,()=>{r.collectionRef.value=k.value}),()=>t.h(ZS,{ref:f,...y},p)}}),c=t.defineComponent({name:"CollectionItem",inheritAttrs:!1,props:{value:{validator:()=>!0}},setup(u,{slots:p,attrs:y}){const{primitiveElement:f,currentElement:k}=BA();return t.watchEffect(m=>{if(k.value){const g=t.markRaw(k.value);r.itemMap.value.set(g,{ref:k.value,value:u.value}),m(()=>r.itemMap.value.delete(g))}}),()=>t.h(ZS,{...y,[KA]:"",ref:f},p)}}),d=t.computed(()=>Array.from(r.itemMap.value.values())),h=t.computed(()=>r.itemMap.value.size);return{getItems:i,reactiveItems:d,itemMapSize:h,CollectionSlot:s,CollectionItem:c}}var WT=t.defineComponent({__name:"VisuallyHidden",props:{feature:{type:String,required:!1,default:"focusable"},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(a){return(e,n)=>(t.openBlock(),t.createBlock(t.unref(we),{as:e.as,"as-child":e.asChild,"aria-hidden":e.feature==="focusable"?"true":void 0,"data-hidden":e.feature==="fully-hidden"?"":void 0,tabindex:e.feature==="fully-hidden"?"-1":void 0,style:{position:"absolute",border:0,width:"1px",height:"1px",padding:0,margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",clipPath:"inset(50%)",whiteSpace:"nowrap",wordWrap:"normal",top:"-1px",left:"-1px"}},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"default")]),_:3},8,["as","as-child","aria-hidden","data-hidden","tabindex"]))}}),XA=WT;const[ZA,GT]=st("PopperRoot");var KT=t.defineComponent({inheritAttrs:!1,__name:"PopperRoot",setup(a){const e=t.ref();return GT({anchor:e,onAnchorChange:n=>e.value=n}),(n,o)=>t.renderSlot(n.$slots,"default")}}),YA=KT,XT=t.defineComponent({__name:"PopperAnchor",props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=a,{forwardRef:n,currentElement:o}=ke(),r=ZA();return t.watchPostEffect(()=>{r.onAnchorChange(e.reference??o.value)}),(i,s)=>(t.openBlock(),t.createBlock(t.unref(we),{ref:t.unref(n),as:i.as,"as-child":i.asChild},{default:t.withCtx(()=>[t.renderSlot(i.$slots,"default")]),_:3},8,["as","as-child"]))}}),QA=XT;function ZT(a){return a!==null}function YT(a){return{name:"transformOrigin",options:a,fn(e){var g,v,L;const{placement:n,rects:o,middlewareData:r}=e,s=((g=r.arrow)==null?void 0:g.centerOffset)!==0,c=s?0:a.arrowWidth,d=s?0:a.arrowHeight,[h,u]=tI(n),p={start:"0%",center:"50%",end:"100%"}[u],y=(((v=r.arrow)==null?void 0:v.x)??0)+c/2,f=(((L=r.arrow)==null?void 0:L.y)??0)+d/2;let k="",m="";return h==="bottom"?(k=s?p:`${y}px`,m=`${-d}px`):h==="top"?(k=s?p:`${y}px`,m=`${o.floating.height+d}px`):h==="right"?(k=`${-d}px`,m=s?p:`${f}px`):h==="left"&&(k=`${o.floating.width+d}px`,m=s?p:`${f}px`),{data:{x:k,y:m}}}}}function tI(a){const[e,n="center"]=a.split("-");return[e,n]}const QT={side:"bottom",sideOffset:0,sideFlip:!0,align:"center",alignOffset:0,alignFlip:!0,arrowPadding:0,hideShiftedArrow:!0,avoidCollisions:!0,collisionBoundary:()=>[],collisionPadding:0,sticky:"partial",hideWhenDetached:!1,positionStrategy:"fixed",updatePositionStrategy:"optimized",prioritizePosition:!1},[NQ,JT]=st("PopperContent");var eH=t.defineComponent({inheritAttrs:!1,__name:"PopperContent",props:t.mergeDefaults({side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},{...QT}),emits:["placed"],setup(a,{emit:e}){const n=a,o=e,r=ZA(),{forwardRef:i,currentElement:s}=ke(),c=t.ref(),d=t.ref(),{width:h,height:u}=YE(d),p=t.computed(()=>n.side+(n.align!=="center"?`-${n.align}`:"")),y=t.computed(()=>typeof n.collisionPadding=="number"?n.collisionPadding:{top:0,right:0,bottom:0,left:0,...n.collisionPadding}),f=t.computed(()=>Array.isArray(n.collisionBoundary)?n.collisionBoundary:[n.collisionBoundary]),k=t.computed(()=>({padding:y.value,boundary:f.value.filter(ZT),altBoundary:f.value.length>0})),m=t.computed(()=>({mainAxis:n.sideFlip,crossAxis:n.alignFlip})),g=dE(()=>[X1({mainAxis:n.sideOffset+u.value,alignmentAxis:n.alignOffset}),n.prioritizePosition&&n.avoidCollisions&&Ds({...k.value,...m.value}),n.avoidCollisions&&Z1({mainAxis:!0,crossAxis:!!n.prioritizePosition,limiter:n.sticky==="partial"?mP():void 0,...k.value}),!n.prioritizePosition&&n.avoidCollisions&&Ds({...k.value,...m.value}),Y1({...k.value,apply:({elements:A,rects:P,availableWidth:D,availableHeight:U})=>{const{width:T,height:H}=P.reference,N=A.floating.style;N.setProperty("--reka-popper-available-width",`${D}px`),N.setProperty("--reka-popper-available-height",`${U}px`),N.setProperty("--reka-popper-anchor-width",`${T}px`),N.setProperty("--reka-popper-anchor-height",`${H}px`)}}),d.value&&MP({element:d.value,padding:n.arrowPadding}),YT({arrowWidth:h.value,arrowHeight:u.value}),n.hideWhenDetached&&fP({strategy:"referenceHidden",...k.value})]),v=t.computed(()=>n.reference??r.anchor.value),{floatingStyles:L,placement:w,isPositioned:M,middlewareData:C}=Q1(v,c,{strategy:n.positionStrategy,placement:p,whileElementsMounted:(...A)=>K1(...A,{layoutShift:!n.disableUpdateOnLayoutShift,animationFrame:n.updatePositionStrategy==="always"}),middleware:g}),S=t.computed(()=>tI(w.value)[0]),b=t.computed(()=>tI(w.value)[1]);t.watchPostEffect(()=>{M.value&&o("placed")});const x=t.computed(()=>{var P;const A=((P=C.value.arrow)==null?void 0:P.centerOffset)!==0;return n.hideShiftedArrow&&A}),I=t.ref("");t.watchEffect(()=>{s.value&&(I.value=window.getComputedStyle(s.value).zIndex)});const V=t.computed(()=>{var A;return((A=C.value.arrow)==null?void 0:A.x)??0}),B=t.computed(()=>{var A;return((A=C.value.arrow)==null?void 0:A.y)??0});return JT({placedSide:S,onArrowChange:A=>d.value=A,arrowX:V,arrowY:B,shouldHideArrow:x}),(A,P)=>{var D,U,T;return t.openBlock(),t.createElementBlock("div",{ref_key:"floatingRef",ref:c,"data-reka-popper-content-wrapper":"",style:t.normalizeStyle({...t.unref(L),transform:t.unref(M)?t.unref(L).transform:"translate(0, -200%)",minWidth:"max-content",zIndex:I.value,"--reka-popper-transform-origin":[(D=t.unref(C).transformOrigin)==null?void 0:D.x,(U=t.unref(C).transformOrigin)==null?void 0:U.y].join(" "),...((T=t.unref(C).hide)==null?void 0:T.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}})},[t.createVNode(t.unref(we),t.mergeProps({ref:t.unref(i)},A.$attrs,{"as-child":n.asChild,as:A.as,"data-side":S.value,"data-align":b.value,style:{animation:t.unref(M)?void 0:"none"}}),{default:t.withCtx(()=>[t.renderSlot(A.$slots,"default")]),_:3},16,["as-child","as","data-side","data-align","style"])],4)}}}),JA=eH;function tH(a){const e=bL({nonce:t.ref()});return t.computed(()=>{var n;return(a==null?void 0:a.value)||((n=e.nonce)==null?void 0:n.value)})}var aH=t.defineComponent({__name:"Label",props:{for:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"label"}},setup(a){const e=a;return ke(),(n,o)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{onMousedown:o[0]||(o[0]=r=>{!r.defaultPrevented&&r.detail>1&&r.preventDefault()})}),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),nH=aH,oH=t.defineComponent({__name:"PaginationEllipsis",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=a;return ke(),(n,o)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{"data-type":"ellipsis"}),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default",{},()=>[o[0]||(o[0]=t.createTextVNode("…"))])]),_:3},16))}}),rH=oH;const[Ms,iH]=st("PaginationRoot");var sH=t.defineComponent({__name:"PaginationRoot",props:{page:{type:Number,required:!1},defaultPage:{type:Number,required:!1,default:1},itemsPerPage:{type:Number,required:!0},total:{type:Number,required:!1,default:0},siblingCount:{type:Number,required:!1,default:2},disabled:{type:Boolean,required:!1},showEdges:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"nav"}},emits:["update:page"],setup(a,{emit:e}){const n=a,o=e,{siblingCount:r,disabled:i,showEdges:s}=t.toRefs(n);ke();const c=ks(n,"page",o,{defaultValue:n.defaultPage,passive:n.page===void 0}),d=t.computed(()=>Math.max(1,Math.ceil(n.total/(n.itemsPerPage||1))));return iH({page:c,onPageChange(h){c.value=h},pageCount:d,siblingCount:r,disabled:i,showEdges:s}),(h,u)=>(t.openBlock(),t.createBlock(t.unref(we),{as:h.as,"as-child":h.asChild},{default:t.withCtx(()=>[t.renderSlot(h.$slots,"default",{page:t.unref(c),pageCount:d.value})]),_:3},8,["as","as-child"]))}}),lH=sH,cH=t.defineComponent({__name:"PaginationFirst",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(a){const e=a,n=Ms();ke();const o=t.computed(()=>n.page.value===1||n.disabled.value);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{"aria-label":"First Page",type:r.as==="button"?"button":void 0,disabled:o.value,onClick:i[0]||(i[0]=s=>!o.value&&t.unref(n).onPageChange(1))}),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[i[1]||(i[1]=t.createTextVNode("First page"))])]),_:3},16,["type","disabled"]))}}),dH=cH,hH=t.defineComponent({__name:"PaginationLast",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(a){const e=a,n=Ms();ke();const o=t.computed(()=>n.page.value===n.pageCount.value||n.disabled.value);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{"aria-label":"Last Page",type:r.as==="button"?"button":void 0,disabled:o.value,onClick:i[0]||(i[0]=s=>!o.value&&t.unref(n).onPageChange(t.unref(n).pageCount.value))}),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[i[1]||(i[1]=t.createTextVNode("Last page"))])]),_:3},16,["type","disabled"]))}}),uH=hH;function ma(a,e){const n=e-a+1;return Array.from({length:n},(o,r)=>r+a)}function pH(a){return a.map(e=>typeof e=="number"?{type:"page",value:e}:{type:"ellipsis"})}const LL="ellipsis";function yH(a,e,n,o){const i=e,s=Math.max(a-n,1),c=Math.min(a+n,i);if(o){const h=Math.min(2*n+5,e)-2,u=s>3&&Math.abs(i-h-1+1)>2&&Math.abs(s-1)>2,p=c<i-2&&Math.abs(i-h)>2&&Math.abs(i-c)>2;if(!u&&p)return[...ma(1,h),LL,i];if(u&&!p){const f=ma(i-h+1,i);return[1,LL,...f]}if(u&&p){const f=ma(s,c);return[1,LL,...f,LL,i]}return ma(1,i)}else{const d=n*2+1;return e<d?ma(1,i):a<=n+1?ma(1,d):e-a<=n?ma(e-d+1,i):ma(s,c)}}var fH=t.defineComponent({__name:"PaginationList",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=a;ke();const n=Ms(),o=t.computed(()=>pH(yH(n.page.value,n.pageCount.value,n.siblingCount.value,n.showEdges.value)));return(r,i)=>(t.openBlock(),t.createBlock(t.unref(we),t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{items:o.value})]),_:3},16))}}),kH=fH,mH=t.defineComponent({__name:"PaginationListItem",props:{value:{type:Number,required:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(a){const e=a;ke();const n=Ms(),o=t.computed(()=>n.page.value===e.value),r=t.computed(()=>n.disabled.value);return(i,s)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{"data-type":"page","aria-label":`Page ${i.value}`,"aria-current":o.value?"page":void 0,"data-selected":o.value?"true":void 0,disabled:r.value,type:i.as==="button"?"button":void 0,onClick:s[0]||(s[0]=c=>!r.value&&t.unref(n).onPageChange(i.value))}),{default:t.withCtx(()=>[t.renderSlot(i.$slots,"default",{},()=>[t.createTextVNode(t.toDisplayString(i.value),1)])]),_:3},16,["aria-label","aria-current","data-selected","disabled","type"]))}}),gH=mH,bH=t.defineComponent({__name:"PaginationNext",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(a){const e=a;ke();const n=Ms(),o=t.computed(()=>n.page.value===n.pageCount.value||n.disabled.value);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{"aria-label":"Next Page",type:r.as==="button"?"button":void 0,disabled:o.value,onClick:i[0]||(i[0]=s=>!o.value&&t.unref(n).onPageChange(t.unref(n).page.value+1))}),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[i[1]||(i[1]=t.createTextVNode("Next page"))])]),_:3},16,["type","disabled"]))}}),MH=bH,xH=t.defineComponent({__name:"PaginationPrev",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(a){const e=a;ke();const n=Ms(),o=t.computed(()=>n.page.value===1||n.disabled.value);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps(e,{"aria-label":"Previous Page",type:r.as==="button"?"button":void 0,disabled:o.value,onClick:i[0]||(i[0]=s=>!o.value&&t.unref(n).onPageChange(t.unref(n).page.value-1))}),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[i[1]||(i[1]=t.createTextVNode("Prev page"))])]),_:3},16,["type","disabled"]))}}),wH=xH;const vH=[" ","Enter","ArrowUp","ArrowDown"],CH=[" ","Enter"],gt=10;function d1(a,e,n){return a===void 0?!1:Array.isArray(a)?a.some(o=>aI(o,e,n)):aI(a,e,n)}function aI(a,e,n){return a===void 0||e===void 0?!1:typeof a=="string"?a===e:typeof n=="function"?n(a,e):typeof n=="string"?(a==null?void 0:a[n])===(e==null?void 0:e[n]):cE(a,e)}function LH(a){return a==null||a===""||Array.isArray(a)&&a.length===0}const SH={key:0,value:""},[ga,eB]=st("SelectRoot");var IH=t.defineComponent({inheritAttrs:!1,__name:"SelectRoot",props:{open:{type:Boolean,required:!1,default:void 0},defaultOpen:{type:Boolean,required:!1},defaultValue:{type:null,required:!1},modelValue:{type:null,required:!1,default:void 0},by:{type:[String,Function],required:!1},dir:{type:String,required:!1},multiple:{type:Boolean,required:!1},autocomplete:{type:String,required:!1},disabled:{type:Boolean,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1}},emits:["update:modelValue","update:open"],setup(a,{emit:e}){const n=a,o=e,{required:r,disabled:i,multiple:s,dir:c}=t.toRefs(n),d=ks(n,"modelValue",o,{defaultValue:n.defaultValue??(s.value?[]:void 0),passive:n.modelValue===void 0,deep:!0}),h=ks(n,"open",o,{defaultValue:n.defaultOpen,passive:n.open===void 0}),u=t.ref(),p=t.ref(),y=t.ref({x:0,y:0}),f=t.computed(()=>{var M;return s.value&&Array.isArray(d.value)?((M=d.value)==null?void 0:M.length)===0:RS(d.value)});bs({isProvider:!0});const k=EE(c),m=HE(u),g=t.ref(new Set),v=t.computed(()=>Array.from(g.value).map(M=>M.value).join(";"));function L(M){if(s.value){const C=Array.isArray(d.value)?[...d.value]:[],S=C.findIndex(b=>aI(b,M,n.by));S===-1?C.push(M):C.splice(S,1),d.value=[...C]}else d.value=M}function w(M){return Array.from(g.value).find(C=>d1(M,C.value,n.by))}return eB({triggerElement:u,onTriggerChange:M=>{u.value=M},valueElement:p,onValueElementChange:M=>{p.value=M},contentId:"",modelValue:d,onValueChange:L,by:n.by,open:h,multiple:s,required:r,onOpenChange:M=>{h.value=M},dir:k,triggerPointerDownPosRef:y,disabled:i,isEmptyModelValue:f,optionsSet:g,onOptionAdd:M=>{const C=w(M.value);C&&g.value.delete(C),g.value.add(M)},onOptionRemove:M=>{const C=w(M.value);C&&g.value.delete(C)}}),(M,C)=>(t.openBlock(),t.createBlock(t.unref(YA),null,{default:t.withCtx(()=>[t.renderSlot(M.$slots,"default",{modelValue:t.unref(d),open:t.unref(h)}),t.unref(m)?(t.openBlock(),t.createBlock(BH,{key:v.value,"aria-hidden":"true",tabindex:"-1",multiple:t.unref(s),required:t.unref(r),name:M.name,autocomplete:M.autocomplete,disabled:t.unref(i),value:t.unref(d)},{default:t.withCtx(()=>[t.unref(RS)(t.unref(d))?(t.openBlock(),t.createElementBlock("option",SH)):t.createCommentVNode("v-if",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Array.from(g.value),S=>(t.openBlock(),t.createElementBlock("option",t.mergeProps({key:S.value??""},{ref_for:!0},S),null,16))),128))]),_:1},8,["multiple","required","name","autocomplete","disabled","value"])):t.createCommentVNode("v-if",!0)]),_:3}))}}),_H=IH,AH=t.defineComponent({__name:"BubbleSelect",props:{autocomplete:{type:String,required:!1},autofocus:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},form:{type:String,required:!1},multiple:{type:Boolean,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1},size:{type:Number,required:!1},value:{type:null,required:!1}},setup(a){const e=a,n=t.ref(),o=ga();t.watch(()=>e.value,(i,s)=>{const c=window.HTMLSelectElement.prototype,h=Object.getOwnPropertyDescriptor(c,"value").set;if(i!==s&&h&&n.value){const u=new Event("change",{bubbles:!0});h.call(n.value,i),n.value.dispatchEvent(u)}});function r(i){o.onValueChange(i.target.value)}return(i,s)=>(t.openBlock(),t.createBlock(t.unref(XA),{"as-child":""},{default:t.withCtx(()=>[t.createElementVNode("select",t.mergeProps({ref_key:"selectElement",ref:n},e,{onInput:r}),[t.renderSlot(i.$slots,"default")],16)]),_:3}))}}),BH=AH,VH=t.defineComponent({__name:"SelectPopperPosition",props:{side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1,default:"start"},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1,default:gt},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const n=Ze(a);return(o,r)=>(t.openBlock(),t.createBlock(t.unref(JA),t.mergeProps(t.unref(n),{style:{boxSizing:"border-box","--reka-select-content-transform-origin":"var(--reka-popper-transform-origin)","--reka-select-content-available-width":"var(--reka-popper-available-width)","--reka-select-content-available-height":"var(--reka-popper-available-height)","--reka-select-trigger-width":"var(--reka-popper-anchor-width)","--reka-select-trigger-height":"var(--reka-popper-anchor-height)"}}),{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default")]),_:3},16))}}),zH=VH;const qH={onViewportChange:()=>{},itemTextRefCallback:()=>{},itemRefCallback:()=>{}},[Wi,tB]=st("SelectContent");var PH=t.defineComponent({__name:"SelectContentImpl",props:{position:{type:String,required:!1,default:"item-aligned"},bodyLock:{type:Boolean,required:!1,default:!0},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1,default:"start"},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1,default:!0}},emits:["closeAutoFocus","escapeKeyDown","pointerDownOutside"],setup(a,{emit:e}){const n=a,o=e,r=ga();TE(),CA(n.bodyLock);const{CollectionSlot:i,getItems:s}=bs(),c=t.ref();_A(c);const{search:d,handleTypeaheadSearch:h}=AA(),u=t.ref(),p=t.ref(),y=t.ref(),f=t.ref(!1),k=t.ref(!1),m=t.ref(!1);function g(){p.value&&c.value&&jA([p.value,c.value])}t.watch(f,()=>{g()});const{onOpenChange:v,triggerPointerDownPosRef:L}=r;t.watchEffect(S=>{if(!c.value)return;let b={x:0,y:0};const x=V=>{var B,A;b={x:Math.abs(Math.round(V.pageX)-(((B=L.value)==null?void 0:B.x)??0)),y:Math.abs(Math.round(V.pageY)-(((A=L.value)==null?void 0:A.y)??0))}},I=V=>{var B;V.pointerType!=="touch"&&(b.x<=10&&b.y<=10?V.preventDefault():(B=c.value)!=null&&B.contains(V.target)||v(!1),document.removeEventListener("pointermove",x),L.value=null)};L.value!==null&&(document.addEventListener("pointermove",x),document.addEventListener("pointerup",I,{capture:!0,once:!0})),S(()=>{document.removeEventListener("pointermove",x),document.removeEventListener("pointerup",I,{capture:!0})})});function w(S){const b=S.ctrlKey||S.altKey||S.metaKey;if(S.key==="Tab"&&S.preventDefault(),!b&&S.key.length===1&&h(S.key,s()),["ArrowUp","ArrowDown","Home","End"].includes(S.key)){let I=[...s().map(V=>V.ref)];if(["ArrowUp","End"].includes(S.key)&&(I=I.slice().reverse()),["ArrowUp","ArrowDown"].includes(S.key)){const V=S.target,B=I.indexOf(V);I=I.slice(B+1)}setTimeout(()=>jA(I)),S.preventDefault()}}const M=t.computed(()=>n.position==="popper"?n:{}),C=Ze(M.value);return tB({content:c,viewport:u,onViewportChange:S=>{u.value=S},itemRefCallback:(S,b,x)=>{const I=!k.value&&!x,V=d1(r.modelValue.value,b,r.by);if(r.multiple.value){if(m.value)return;(V||I)&&(p.value=S,V&&(m.value=!0))}else(V||I)&&(p.value=S);I&&(k.value=!0)},selectedItem:p,selectedItemText:y,onItemLeave:()=>{var S;(S=c.value)==null||S.focus()},itemTextRefCallback:(S,b,x)=>{const I=!k.value&&!x;(d1(r.modelValue.value,b,r.by)||I)&&(y.value=S)},focusSelectedItem:g,position:n.position,isPositioned:f,searchRef:d}),(S,b)=>(t.openBlock(),t.createBlock(t.unref(i),null,{default:t.withCtx(()=>[t.createVNode(t.unref(HA),{"as-child":"",onMountAutoFocus:b[6]||(b[6]=t.withModifiers(()=>{},["prevent"])),onUnmountAutoFocus:b[7]||(b[7]=x=>{var I;o("closeAutoFocus",x),!x.defaultPrevented&&((I=t.unref(r).triggerElement.value)==null||I.focus({preventScroll:!0}),x.preventDefault())})},{default:t.withCtx(()=>[t.createVNode(t.unref(YS),{"as-child":"","disable-outside-pointer-events":S.disableOutsidePointerEvents,onFocusOutside:b[2]||(b[2]=t.withModifiers(()=>{},["prevent"])),onDismiss:b[3]||(b[3]=x=>t.unref(r).onOpenChange(!1)),onEscapeKeyDown:b[4]||(b[4]=x=>o("escapeKeyDown",x)),onPointerDownOutside:b[5]||(b[5]=x=>o("pointerDownOutside",x))},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(S.position==="popper"?zH:HH),t.mergeProps({...S.$attrs,...t.unref(C)},{id:t.unref(r).contentId,ref:x=>{const I=t.unref(Et)(x);I!=null&&I.hasAttribute("data-reka-popper-content-wrapper")?c.value=I.firstElementChild:c.value=I},role:"listbox","data-state":t.unref(r).open.value?"open":"closed",dir:t.unref(r).dir.value,style:{display:"flex",flexDirection:"column",outline:"none"},onContextmenu:b[0]||(b[0]=t.withModifiers(()=>{},["prevent"])),onPlaced:b[1]||(b[1]=x=>f.value=!0),onKeydown:w}),{default:t.withCtx(()=>[t.renderSlot(S.$slots,"default")]),_:3},16,["id","data-state","dir","onKeydown"]))]),_:3},8,["disable-outside-pointer-events"])]),_:3})]),_:3}))}}),DH=PH;const[nI,EH]=st("SelectItemAlignedPosition");var TH=t.defineComponent({inheritAttrs:!1,__name:"SelectItemAlignedPosition",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["placed"],setup(a,{emit:e}){const n=a,o=e,{getItems:r}=bs(),i=ga(),s=Wi(),c=t.ref(!1),d=t.ref(!0),h=t.ref(),{forwardRef:u,currentElement:p}=ke(),{viewport:y,selectedItem:f,selectedItemText:k,focusSelectedItem:m}=s;function g(){if(i.triggerElement.value&&i.valueElement.value&&h.value&&p.value&&(y!=null&&y.value)&&(f!=null&&f.value)&&(k!=null&&k.value)){const w=i.triggerElement.value.getBoundingClientRect(),M=p.value.getBoundingClientRect(),C=i.valueElement.value.getBoundingClientRect(),S=k.value.getBoundingClientRect();if(i.dir.value!=="rtl"){const ue=S.left-M.left,ve=C.left-ue,le=w.left-ve,G=w.width+le,z=Math.max(G,M.width),W=window.innerWidth-gt,ee=kA(ve,gt,Math.max(gt,W-z));h.value.style.minWidth=`${G}px`,h.value.style.left=`${ee}px`}else{const ue=M.right-S.right,ve=window.innerWidth-C.right-ue,le=window.innerWidth-w.right-ve,G=w.width+le,z=Math.max(G,M.width),W=window.innerWidth-gt,ee=kA(ve,gt,Math.max(gt,W-z));h.value.style.minWidth=`${G}px`,h.value.style.right=`${ee}px`}const b=r().map(ue=>ue.ref),x=window.innerHeight-gt*2,I=y.value.scrollHeight,V=window.getComputedStyle(p.value),B=Number.parseInt(V.borderTopWidth,10),A=Number.parseInt(V.paddingTop,10),P=Number.parseInt(V.borderBottomWidth,10),D=Number.parseInt(V.paddingBottom,10),U=B+A+I+D+P,T=Math.min(f.value.offsetHeight*5,U),H=window.getComputedStyle(y.value),N=Number.parseInt(H.paddingTop,10),Q=Number.parseInt(H.paddingBottom,10),j=w.top+w.height/2-gt,F=x-j,R=f.value.offsetHeight/2,Z=f.value.offsetTop+R,J=B+A+Z,re=U-J;if(J<=j){const ue=f.value===b[b.length-1];h.value.style.bottom="0px";const ve=p.value.clientHeight-y.value.offsetTop-y.value.offsetHeight,le=Math.max(F,R+(ue?Q:0)+ve+P),G=J+le;h.value.style.height=`${G}px`}else{const ue=f.value===b[0];h.value.style.top="0px";const le=Math.max(j,B+y.value.offsetTop+(ue?N:0)+R)+re;h.value.style.height=`${le}px`,y.value.scrollTop=J-j+y.value.offsetTop}h.value.style.margin=`${gt}px 0`,h.value.style.minHeight=`${T}px`,h.value.style.maxHeight=`${x}px`,o("placed"),requestAnimationFrame(()=>c.value=!0)}}const v=t.ref("");t.onMounted(async()=>{await t.nextTick(),g(),p.value&&(v.value=window.getComputedStyle(p.value).zIndex)});function L(w){w&&d.value===!0&&(g(),m==null||m(),d.value=!1)}return VE(i.triggerElement,()=>{g()}),EH({contentWrapper:h,shouldExpandOnScrollRef:c,onScrollButtonChange:L}),(w,M)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"contentWrapperElement",ref:h,style:t.normalizeStyle({display:"flex",flexDirection:"column",position:"fixed",zIndex:v.value})},[t.createVNode(t.unref(we),t.mergeProps({ref:t.unref(u),style:{boxSizing:"border-box",maxHeight:"100%"}},{...w.$attrs,...n}),{default:t.withCtx(()=>[t.renderSlot(w.$slots,"default")]),_:3},16)],4))}}),HH=TH,jH=t.defineComponent({inheritAttrs:!1,__name:"SelectProvider",props:{context:{type:Object,required:!0}},setup(a){return eB(a.context),tB(qH),(n,o)=>t.renderSlot(n.$slots,"default")}}),OH=jH;const FH={key:1};var RH=t.defineComponent({inheritAttrs:!1,__name:"SelectContent",props:{forceMount:{type:Boolean,required:!1},position:{type:String,required:!1},bodyLock:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:["closeAutoFocus","escapeKeyDown","pointerDownOutside"],setup(a,{emit:e}){const n=a,r=mt(n,e),i=ga(),s=t.ref();t.onMounted(()=>{s.value=new DocumentFragment});const c=t.ref(),d=t.computed(()=>n.forceMount||i.open.value),h=t.ref(d.value);return t.watch(d,()=>{setTimeout(()=>h.value=d.value)}),(u,p)=>{var y;return d.value||h.value||(y=c.value)!=null&&y.present?(t.openBlock(),t.createBlock(t.unref(CL),{key:0,ref_key:"presenceRef",ref:c,present:d.value},{default:t.withCtx(()=>[t.createVNode(DH,t.normalizeProps(t.guardReactiveProps({...t.unref(r),...u.$attrs})),{default:t.withCtx(()=>[t.renderSlot(u.$slots,"default")]),_:3},16)]),_:3},8,["present"])):s.value?(t.openBlock(),t.createElementBlock("div",FH,[(t.openBlock(),t.createBlock(t.Teleport,{to:s.value},[t.createVNode(OH,{context:t.unref(i)},{default:t.withCtx(()=>[t.renderSlot(u.$slots,"default")]),_:3},8,["context"])],8,["to"]))])):t.createCommentVNode("v-if",!0)}}}),NH=RH,$H=t.defineComponent({__name:"SelectIcon",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(a){return(e,n)=>(t.openBlock(),t.createBlock(t.unref(we),{"aria-hidden":"true",as:e.as,"as-child":e.asChild},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"default",{},()=>[n[0]||(n[0]=t.createTextVNode("▼"))])]),_:3},8,["as","as-child"]))}}),UH=$H;const[aB,WH]=st("SelectItem");var GH=t.defineComponent({__name:"SelectItem",props:{value:{type:null,required:!0},disabled:{type:Boolean,required:!1},textValue:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["select"],setup(a,{emit:e}){const n=a,o=e,{disabled:r}=t.toRefs(n),i=ga(),s=Wi(),{forwardRef:c,currentElement:d}=ke(),{CollectionItem:h}=bs(),u=t.computed(()=>{var M;return d1((M=i.modelValue)==null?void 0:M.value,n.value,i.by)}),p=t.ref(!1),y=t.ref(n.textValue??""),f=gs(void 0,"reka-select-item-text"),k="select.select";async function m(M){if(M.defaultPrevented)return;const C={originalEvent:M,value:n.value};FS(k,g,C)}async function g(M){await t.nextTick(),o("select",M),!M.defaultPrevented&&(r.value||(i.onValueChange(n.value),i.multiple.value||i.onOpenChange(!1)))}async function v(M){var C,S;await t.nextTick(),!M.defaultPrevented&&(r.value?(C=s.onItemLeave)==null||C.call(s):(S=M.currentTarget)==null||S.focus({preventScroll:!0}))}async function L(M){var C;await t.nextTick(),!M.defaultPrevented&&M.currentTarget===at()&&((C=s.onItemLeave)==null||C.call(s))}async function w(M){var S;await t.nextTick(),!(M.defaultPrevented||((S=s.searchRef)==null?void 0:S.value)!==""&&M.key===" ")&&(CH.includes(M.key)&&m(M),M.key===" "&&M.preventDefault())}if(n.value==="")throw new Error("A <SelectItem /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return t.onMounted(()=>{d.value&&s.itemRefCallback(d.value,n.value,n.disabled)}),WH({value:n.value,disabled:r,textId:f,isSelected:u,onItemTextChange:M=>{y.value=((y.value||(M==null?void 0:M.textContent))??"").trim()}}),(M,C)=>(t.openBlock(),t.createBlock(t.unref(h),{value:{textValue:y.value}},{default:t.withCtx(()=>[t.createVNode(t.unref(we),{ref:t.unref(c),role:"option","aria-labelledby":t.unref(f),"data-highlighted":p.value?"":void 0,"aria-selected":u.value,"data-state":u.value?"checked":"unchecked","aria-disabled":t.unref(r)||void 0,"data-disabled":t.unref(r)?"":void 0,tabindex:t.unref(r)?void 0:-1,as:M.as,"as-child":M.asChild,onFocus:C[0]||(C[0]=S=>p.value=!0),onBlur:C[1]||(C[1]=S=>p.value=!1),onPointerup:m,onPointerdown:C[2]||(C[2]=S=>{S.currentTarget.focus({preventScroll:!0})}),onTouchend:C[3]||(C[3]=t.withModifiers(()=>{},["prevent","stop"])),onPointermove:v,onPointerleave:L,onKeydown:w},{default:t.withCtx(()=>[t.renderSlot(M.$slots,"default")]),_:3},8,["aria-labelledby","data-highlighted","aria-selected","data-state","aria-disabled","data-disabled","tabindex","as","as-child"])]),_:3},8,["value"]))}}),KH=GH,XH=t.defineComponent({__name:"SelectItemIndicator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(a){const e=a,n=aB();return(o,r)=>t.unref(n).isSelected.value?(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps({key:0,"aria-hidden":"true"},e),{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default")]),_:3},16)):t.createCommentVNode("v-if",!0)}}),ZH=XH,YH=t.defineComponent({inheritAttrs:!1,__name:"SelectItemText",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(a){const e=a,n=ga(),o=Wi(),r=aB(),{forwardRef:i,currentElement:s}=ke(),c=t.computed(()=>{var d,h;return{value:r.value,disabled:r.disabled.value,textContent:((d=s.value)==null?void 0:d.textContent)??((h=r.value)==null?void 0:h.toString())??""}});return t.onMounted(()=>{s.value&&(r.onItemTextChange(s.value),o.itemTextRefCallback(s.value,r.value,r.disabled.value),n.onOptionAdd(c.value))}),t.onUnmounted(()=>{n.onOptionRemove(c.value)}),(d,h)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps({id:t.unref(r).textId,ref:t.unref(i)},{...e,...d.$attrs}),{default:t.withCtx(()=>[t.renderSlot(d.$slots,"default")]),_:3},16,["id"]))}}),QH=YH,JH=t.defineComponent({__name:"SelectPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(eI),t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),ej=JH,tj=t.defineComponent({__name:"SelectScrollButtonImpl",emits:["autoScroll"],setup(a,{emit:e}){const n=e,{getItems:o}=bs(),r=Wi(),i=t.ref(null);function s(){i.value!==null&&(window.clearInterval(i.value),i.value=null)}t.watchEffect(()=>{const h=o().map(u=>u.ref).find(u=>u===at());h==null||h.scrollIntoView({block:"nearest"})});function c(){i.value===null&&(i.value=window.setInterval(()=>{n("autoScroll")},50))}function d(){var h;(h=r.onItemLeave)==null||h.call(r),i.value===null&&(i.value=window.setInterval(()=>{n("autoScroll")},50))}return t.onBeforeUnmount(()=>s()),(h,u)=>{var p;return t.openBlock(),t.createBlock(t.unref(we),t.mergeProps({"aria-hidden":"true",style:{flexShrink:0}},(p=h.$parent)==null?void 0:p.$props,{onPointerdown:c,onPointermove:d,onPointerleave:u[0]||(u[0]=()=>{s()})}),{default:t.withCtx(()=>[t.renderSlot(h.$slots,"default")]),_:3},16)}}}),nB=tj,aj=t.defineComponent({__name:"SelectScrollDownButton",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=Wi(),n=e.position==="item-aligned"?nI():void 0,{forwardRef:o,currentElement:r}=ke(),i=t.ref(!1);return t.watchEffect(s=>{var c,d;if((c=e.viewport)!=null&&c.value&&((d=e.isPositioned)!=null&&d.value)){let u=function(){const p=h.scrollHeight-h.clientHeight;i.value=Math.ceil(h.scrollTop)<p};const h=e.viewport.value;u(),h.addEventListener("scroll",u),s(()=>h.removeEventListener("scroll",u))}}),t.watch(r,()=>{r.value&&(n==null||n.onScrollButtonChange(r.value))}),(s,c)=>i.value?(t.openBlock(),t.createBlock(nB,{key:0,ref:t.unref(o),onAutoScroll:c[0]||(c[0]=()=>{const{viewport:d,selectedItem:h}=t.unref(e);d!=null&&d.value&&(h!=null&&h.value)&&(d.value.scrollTop=d.value.scrollTop+h.value.offsetHeight)})},{default:t.withCtx(()=>[t.renderSlot(s.$slots,"default")]),_:3},512)):t.createCommentVNode("v-if",!0)}}),nj=aj,oj=t.defineComponent({__name:"SelectScrollUpButton",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=Wi(),n=e.position==="item-aligned"?nI():void 0,{forwardRef:o,currentElement:r}=ke(),i=t.ref(!1);return t.watchEffect(s=>{var c,d;if((c=e.viewport)!=null&&c.value&&((d=e.isPositioned)!=null&&d.value)){let u=function(){i.value=h.scrollTop>0};const h=e.viewport.value;u(),h.addEventListener("scroll",u),s(()=>h.removeEventListener("scroll",u))}}),t.watch(r,()=>{r.value&&(n==null||n.onScrollButtonChange(r.value))}),(s,c)=>i.value?(t.openBlock(),t.createBlock(nB,{key:0,ref:t.unref(o),onAutoScroll:c[0]||(c[0]=()=>{const{viewport:d,selectedItem:h}=t.unref(e);d!=null&&d.value&&(h!=null&&h.value)&&(d.value.scrollTop=d.value.scrollTop-h.value.offsetHeight)})},{default:t.withCtx(()=>[t.renderSlot(s.$slots,"default")]),_:3},512)):t.createCommentVNode("v-if",!0)}}),rj=oj,ij=t.defineComponent({__name:"SelectTrigger",props:{disabled:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(a){const e=a,n=ga(),{forwardRef:o,currentElement:r}=ke(),i=t.computed(()=>{var y;return((y=n.disabled)==null?void 0:y.value)||e.disabled});n.contentId||(n.contentId=gs(void 0,"reka-select-content")),t.onMounted(()=>{n.onTriggerChange(r.value)});const{getItems:s}=bs(),{search:c,handleTypeaheadSearch:d,resetTypeahead:h}=AA();function u(){i.value||(n.onOpenChange(!0),h())}function p(y){u(),n.triggerPointerDownPosRef.value={x:Math.round(y.pageX),y:Math.round(y.pageY)}}return(y,f)=>(t.openBlock(),t.createBlock(t.unref(QA),{"as-child":"",reference:y.reference},{default:t.withCtx(()=>{var k,m,g,v;return[t.createVNode(t.unref(we),{ref:t.unref(o),role:"combobox",type:y.as==="button"?"button":void 0,"aria-controls":t.unref(n).contentId,"aria-expanded":t.unref(n).open.value||!1,"aria-required":(k=t.unref(n).required)==null?void 0:k.value,"aria-autocomplete":"none",disabled:i.value,dir:(m=t.unref(n))==null?void 0:m.dir.value,"data-state":(g=t.unref(n))!=null&&g.open.value?"open":"closed","data-disabled":i.value?"":void 0,"data-placeholder":t.unref(LH)((v=t.unref(n).modelValue)==null?void 0:v.value)?"":void 0,"as-child":y.asChild,as:y.as,onClick:f[0]||(f[0]=L=>{var w;(w=L==null?void 0:L.currentTarget)==null||w.focus()}),onPointerdown:f[1]||(f[1]=L=>{if(L.pointerType==="touch")return L.preventDefault();const w=L.target;w.hasPointerCapture(L.pointerId)&&w.releasePointerCapture(L.pointerId),L.button===0&&L.ctrlKey===!1&&(p(L),L.preventDefault())}),onPointerup:f[2]||(f[2]=t.withModifiers(L=>{L.pointerType==="touch"&&p(L)},["prevent"])),onKeydown:f[3]||(f[3]=L=>{const w=t.unref(c)!=="";!(L.ctrlKey||L.altKey||L.metaKey)&&L.key.length===1&&w&&L.key===" "||(t.unref(d)(L.key,t.unref(s)()),t.unref(vH).includes(L.key)&&(u(),L.preventDefault()))})},{default:t.withCtx(()=>[t.renderSlot(y.$slots,"default")]),_:3},8,["type","aria-controls","aria-expanded","aria-required","disabled","dir","data-state","data-disabled","data-placeholder","as-child","as"])]}),_:3},8,["reference"]))}}),sj=ij,lj=t.defineComponent({__name:"SelectValue",props:{placeholder:{type:String,required:!1,default:""},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(a){const e=a,{forwardRef:n,currentElement:o}=ke(),r=ga();t.onMounted(()=>{r.valueElement=o});const i=t.computed(()=>{var u;let c=[];const d=Array.from(r.optionsSet.value),h=p=>d.find(y=>d1(p,y.value,r.by));return Array.isArray(r.modelValue.value)?c=r.modelValue.value.map(p=>{var y;return((y=h(p))==null?void 0:y.textContent)??""}):c=[((u=h(r.modelValue.value))==null?void 0:u.textContent)??""],c.filter(Boolean)}),s=t.computed(()=>i.value.length?i.value.join(", "):e.placeholder);return(c,d)=>(t.openBlock(),t.createBlock(t.unref(we),{ref:t.unref(n),as:c.as,"as-child":c.asChild,style:{pointerEvents:"none"},"data-placeholder":i.value.length?void 0:e.placeholder},{default:t.withCtx(()=>[t.renderSlot(c.$slots,"default",{selectedLabel:i.value,modelValue:t.unref(r).modelValue.value},()=>[t.createTextVNode(t.toDisplayString(s.value),1)])]),_:3},8,["as","as-child","data-placeholder"]))}}),cj=lj,dj=t.defineComponent({__name:"SelectViewport",props:{nonce:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=a,{nonce:n}=t.toRefs(e),o=tH(n),r=Wi(),i=r.position==="item-aligned"?nI():void 0,{forwardRef:s,currentElement:c}=ke();t.onMounted(()=>{r==null||r.onViewportChange(c.value)});const d=t.ref(0);function h(u){const p=u.currentTarget,{shouldExpandOnScrollRef:y,contentWrapper:f}=i??{};if(y!=null&&y.value&&(f!=null&&f.value)){const k=Math.abs(d.value-p.scrollTop);if(k>0){const m=window.innerHeight-gt*2,g=Number.parseFloat(f.value.style.minHeight),v=Number.parseFloat(f.value.style.height),L=Math.max(g,v);if(L<m){const w=L+k,M=Math.min(m,w),C=w-M;f.value.style.height=`${M}px`,f.value.style.bottom==="0px"&&(p.scrollTop=C>0?C:0,f.value.style.justifyContent="flex-end")}}}d.value=p.scrollTop}return(u,p)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(t.unref(we),t.mergeProps({ref:t.unref(s),"data-reka-select-viewport":"",role:"presentation"},{...u.$attrs,...e},{style:{position:"relative",flex:1,overflow:"hidden auto"},onScroll:h}),{default:t.withCtx(()=>[t.renderSlot(u.$slots,"default")]),_:3},16),t.createVNode(t.unref(we),{as:"style",nonce:t.unref(o)},{default:t.withCtx(()=>p[0]||(p[0]=[t.createTextVNode(" /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-reka-select-viewport] { scrollbar-width:none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } [data-reka-select-viewport]::-webkit-scrollbar { display: none; } ")])),_:1,__:[0]},8,["nonce"])],64))}}),hj=dj,uj=t.defineComponent({__name:"BaseSeparator",props:{orientation:{type:String,required:!1,default:"horizontal"},decorative:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=a,n=["horizontal","vertical"];function o(c){return n.includes(c)}const r=t.computed(()=>o(e.orientation)?e.orientation:"horizontal"),i=t.computed(()=>r.value==="vertical"?e.orientation:void 0),s=t.computed(()=>e.decorative?{role:"none"}:{"aria-orientation":i.value,role:"separator"});return(c,d)=>(t.openBlock(),t.createBlock(t.unref(we),t.mergeProps({as:c.as,"as-child":c.asChild,"data-orientation":r.value},s.value),{default:t.withCtx(()=>[t.renderSlot(c.$slots,"default")]),_:3},16,["as","as-child","data-orientation"]))}}),pj=uj,yj=t.defineComponent({__name:"Separator",props:{orientation:{type:String,required:!1,default:"horizontal"},decorative:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(pj,t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),fj=yj;const[oI,kj]=st("TooltipProvider");var mj=t.defineComponent({inheritAttrs:!1,__name:"TooltipProvider",props:{delayDuration:{type:Number,required:!1,default:700},skipDelayDuration:{type:Number,required:!1,default:300},disableHoverableContent:{type:Boolean,required:!1,default:!1},disableClosingTrigger:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},ignoreNonKeyboardFocus:{type:Boolean,required:!1,default:!1}},setup(a){const e=a,{delayDuration:n,skipDelayDuration:o,disableHoverableContent:r,disableClosingTrigger:i,ignoreNonKeyboardFocus:s,disabled:c}=t.toRefs(e);ke();const d=t.ref(!0),h=t.ref(!1),{start:u,stop:p}=MA(()=>{d.value=!0},o,{immediate:!1});return kj({isOpenDelayed:d,delayDuration:n,onOpen(){p(),d.value=!1},onClose(){u()},isPointerInTransitRef:h,disableHoverableContent:r,disableClosingTrigger:i,disabled:c,ignoreNonKeyboardFocus:s}),(y,f)=>t.renderSlot(y.$slots,"default")}}),gj=mj;const oB="tooltip.open",[SL,bj]=st("TooltipRoot");var Mj=t.defineComponent({__name:"TooltipRoot",props:{defaultOpen:{type:Boolean,required:!1,default:!1},open:{type:Boolean,required:!1,default:void 0},delayDuration:{type:Number,required:!1,default:void 0},disableHoverableContent:{type:Boolean,required:!1,default:void 0},disableClosingTrigger:{type:Boolean,required:!1,default:void 0},disabled:{type:Boolean,required:!1,default:void 0},ignoreNonKeyboardFocus:{type:Boolean,required:!1,default:void 0}},emits:["update:open"],setup(a,{emit:e}){const n=a,o=e;ke();const r=oI(),i=t.computed(()=>n.disableHoverableContent??r.disableHoverableContent.value),s=t.computed(()=>n.disableClosingTrigger??r.disableClosingTrigger.value),c=t.computed(()=>n.disabled??r.disabled.value),d=t.computed(()=>n.delayDuration??r.delayDuration.value),h=t.computed(()=>n.ignoreNonKeyboardFocus??r.ignoreNonKeyboardFocus.value),u=ks(n,"open",o,{defaultValue:n.defaultOpen,passive:n.open===void 0});t.watch(u,w=>{r.onClose&&(w?(r.onOpen(),document.dispatchEvent(new CustomEvent(oB))):r.onClose())});const p=t.ref(!1),y=t.ref(),f=t.computed(()=>u.value?p.value?"delayed-open":"instant-open":"closed"),{start:k,stop:m}=MA(()=>{p.value=!0,u.value=!0},d,{immediate:!1});function g(){m(),p.value=!1,u.value=!0}function v(){m(),u.value=!1}function L(){k()}return bj({contentId:"",open:u,stateAttribute:f,trigger:y,onTriggerChange(w){y.value=w},onTriggerEnter(){r.isOpenDelayed.value?L():g()},onTriggerLeave(){i.value?v():m()},onOpen:g,onClose:v,disableHoverableContent:i,disableClosingTrigger:s,disabled:c,ignoreNonKeyboardFocus:h}),(w,M)=>(t.openBlock(),t.createBlock(t.unref(YA),null,{default:t.withCtx(()=>[t.renderSlot(w.$slots,"default",{open:t.unref(u)})]),_:3}))}}),xj=Mj,wj=t.defineComponent({__name:"TooltipContentImpl",props:{ariaLabel:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},side:{type:null,required:!1,default:"top"},sideOffset:{type:Number,required:!1,default:0},align:{type:null,required:!1,default:"center"},alignOffset:{type:Number,required:!1},avoidCollisions:{type:Boolean,required:!1,default:!0},collisionBoundary:{type:null,required:!1,default:()=>[]},collisionPadding:{type:[Number,Object],required:!1,default:0},arrowPadding:{type:Number,required:!1,default:0},sticky:{type:String,required:!1,default:"partial"},hideWhenDetached:{type:Boolean,required:!1,default:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1}},emits:["escapeKeyDown","pointerDownOutside"],setup(a,{emit:e}){const n=a,o=e,r=SL(),{forwardRef:i,currentElement:s}=ke(),c=t.computed(()=>{var h;return n.ariaLabel||((h=s.value)==null?void 0:h.textContent)}),d=t.computed(()=>{const{ariaLabel:h,...u}=n;return u});return t.onMounted(()=>{l1(window,"scroll",h=>{const u=h.target;u!=null&&u.contains(r.trigger.value)&&r.onClose()}),l1(window,oB,r.onClose)}),(h,u)=>(t.openBlock(),t.createBlock(t.unref(YS),{"as-child":"","disable-outside-pointer-events":!1,onEscapeKeyDown:u[0]||(u[0]=p=>o("escapeKeyDown",p)),onPointerDownOutside:u[1]||(u[1]=p=>{var y;t.unref(r).disableClosingTrigger.value&&((y=t.unref(r).trigger.value)!=null&&y.contains(p.target))&&p.preventDefault(),o("pointerDownOutside",p)}),onFocusOutside:u[2]||(u[2]=t.withModifiers(()=>{},["prevent"])),onDismiss:u[3]||(u[3]=p=>t.unref(r).onClose())},{default:t.withCtx(()=>[t.createVNode(t.unref(JA),t.mergeProps({ref:t.unref(i),"data-state":t.unref(r).stateAttribute.value},{...h.$attrs,...d.value},{style:{"--reka-tooltip-content-transform-origin":"var(--reka-popper-transform-origin)","--reka-tooltip-content-available-width":"var(--reka-popper-available-width)","--reka-tooltip-content-available-height":"var(--reka-popper-available-height)","--reka-tooltip-trigger-width":"var(--reka-popper-anchor-width)","--reka-tooltip-trigger-height":"var(--reka-popper-anchor-height)"}}),{default:t.withCtx(()=>[t.renderSlot(h.$slots,"default"),t.createVNode(t.unref(XA),{id:t.unref(r).contentId,role:"tooltip"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(c.value),1)]),_:1},8,["id"])]),_:3},16,["data-state"])]),_:3}))}}),rB=wj,vj=t.defineComponent({__name:"TooltipContentHoverable",props:{ariaLabel:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1}},setup(a){const n=Ze(a),{forwardRef:o,currentElement:r}=ke(),{trigger:i,onClose:s}=SL(),c=oI(),{isPointerInTransit:d,onPointerExit:h}=jE(i,r);return c.isPointerInTransitRef=d,h(()=>{s()}),(u,p)=>(t.openBlock(),t.createBlock(rB,t.mergeProps({ref:t.unref(o)},t.unref(n)),{default:t.withCtx(()=>[t.renderSlot(u.$slots,"default")]),_:3},16))}}),Cj=vj,Lj=t.defineComponent({__name:"TooltipContent",props:{forceMount:{type:Boolean,required:!1},ariaLabel:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},side:{type:null,required:!1,default:"top"},sideOffset:{type:Number,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1}},emits:["escapeKeyDown","pointerDownOutside"],setup(a,{emit:e}){const n=a,o=e,r=SL(),i=mt(n,o),{forwardRef:s}=ke();return(c,d)=>(t.openBlock(),t.createBlock(t.unref(CL),{present:c.forceMount||t.unref(r).open.value},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(r).disableHoverableContent.value?rB:Cj),t.mergeProps({ref:t.unref(s)},t.unref(i)),{default:t.withCtx(()=>[t.renderSlot(c.$slots,"default")]),_:3},16))]),_:3},8,["present"]))}}),Sj=Lj,Ij=t.defineComponent({__name:"TooltipPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(eI),t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),_j=Ij,Aj=t.defineComponent({__name:"TooltipTrigger",props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(a){const e=a,n=SL(),o=oI();n.contentId||(n.contentId=gs(void 0,"reka-tooltip-content"));const{forwardRef:r,currentElement:i}=ke(),s=t.ref(!1),c=t.ref(!1),d=t.computed(()=>n.disabled.value?{}:{click:m,focus:f,pointermove:p,pointerleave:y,pointerdown:u,blur:k});t.onMounted(()=>{n.onTriggerChange(i.value)});function h(){setTimeout(()=>{s.value=!1},1)}function u(){n.open&&!n.disableClosingTrigger.value&&n.onClose(),s.value=!0,document.addEventListener("pointerup",h,{once:!0})}function p(g){g.pointerType!=="touch"&&!c.value&&!o.isPointerInTransitRef.value&&(n.onTriggerEnter(),c.value=!0)}function y(){n.onTriggerLeave(),c.value=!1}function f(g){var v,L;s.value||n.ignoreNonKeyboardFocus.value&&!((L=(v=g.target).matches)!=null&&L.call(v,":focus-visible"))||n.onOpen()}function k(){n.onClose()}function m(){n.disableClosingTrigger.value||n.onClose()}return(g,v)=>(t.openBlock(),t.createBlock(t.unref(QA),{"as-child":"",reference:g.reference},{default:t.withCtx(()=>[t.createVNode(t.unref(we),t.mergeProps({ref:t.unref(r),"aria-describedby":t.unref(n).open.value?t.unref(n).contentId:void 0,"data-state":t.unref(n).stateAttribute.value,as:g.as,"as-child":e.asChild,"data-grace-area-trigger":""},t.toHandlers(d.value)),{default:t.withCtx(()=>[t.renderSlot(g.$slots,"default")]),_:3},16,["aria-describedby","data-state","as","as-child"])]),_:3},8,["reference"]))}}),Bj=Aj;const Ee=t.defineComponent({__name:"Button",props:{variant:{},size:{},class:{type:[Boolean,null,String,Object,Array]},asChild:{type:Boolean},as:{default:"button"}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(we),{as:a.as,"as-child":a.asChild,class:t.normalizeClass(t.unref(be)(t.unref(xs)({variant:a.variant,size:a.size}),e.class))},{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},8,["as","as-child","class"]))}}),xs=i1("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",xs:"h-7 rounded px-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-8 w-8","icon-sm":"size-7","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}}),iB=t.defineComponent({__name:"Tooltip",props:{defaultOpen:{type:Boolean},open:{type:Boolean},delayDuration:{},disableHoverableContent:{type:Boolean},disableClosingTrigger:{type:Boolean},disabled:{type:Boolean},ignoreNonKeyboardFocus:{type:Boolean}},emits:["update:open"],setup(a,{emit:e}){const r=mt(a,e);return(i,s)=>(t.openBlock(),t.createBlock(t.unref(xj),t.normalizeProps(t.guardReactiveProps(t.unref(r))),{default:t.withCtx(()=>[t.renderSlot(i.$slots,"default")]),_:3},16))}}),sB=t.defineComponent({inheritAttrs:!1,__name:"TooltipContent",props:{forceMount:{type:Boolean},ariaLabel:{},asChild:{type:Boolean},as:{},side:{},sideOffset:{default:4},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},positionStrategy:{},updatePositionStrategy:{},class:{type:[Boolean,null,String,Object,Array]}},emits:["escapeKeyDown","pointerDownOutside"],setup(a,{emit:e}){const n=a,o=e,r=De(n,"class"),i=mt(r,o);return(s,c)=>(t.openBlock(),t.createBlock(t.unref(_j),null,{default:t.withCtx(()=>[t.createVNode(t.unref(Sj),t.mergeProps({...t.unref(i),...s.$attrs},{class:t.unref(be)("z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",n.class)}),{default:t.withCtx(()=>[t.renderSlot(s.$slots,"default")]),_:3},16,["class"])]),_:3}))}}),lB=t.defineComponent({__name:"TooltipProvider",props:{delayDuration:{},skipDelayDuration:{},disableHoverableContent:{type:Boolean},disableClosingTrigger:{type:Boolean},disabled:{type:Boolean},ignoreNonKeyboardFocus:{type:Boolean}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(gj),t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),cB=t.defineComponent({__name:"TooltipTrigger",props:{reference:{},asChild:{type:Boolean},as:{}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(Bj),t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),Vj={class:"relative z-10"},zj="font-medium transition-all duration-300 ease-in-out hover:-translate-y-0.5 hover:scale-[1.02] active:translate-y-0 active:scale-[0.98] shadow-[0_3px_0_0_rgba(0,0,0,0.12),0_12px_22px_-10px_rgba(0,0,0,0.35)] hover:shadow-[0_6px_20px_-4px_rgba(0,0,0,0.3),0_10px_40px_-10px_rgba(0,0,0,0.2)] active:shadow-[0_1px_0_0_rgba(0,0,0,0.2),0_4px_8px_-4px_rgba(0,0,0,0.35)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:opacity-60 disabled:cursor-not-allowed disabled:shadow-none disabled:translate-y-0 disabled:scale-100 relative overflow-hidden before:absolute before:inset-0 before:bg-white/20 before:translate-y-full before:transition-transform before:duration-300 hover:before:translate-y-0",qj=t.defineComponent({name:"DCodeButton",inheritAttrs:!1,__name:"DCodeButton",props:{icon:{},text:{default:""},variant:{default:"default"},size:{default:"default"},tooltip:{default:""},bgColor:{default:""},textColor:{default:""},borderColor:{default:""},rounded:{default:"lg"},borderStyle:{default:"solid"},disabled:{type:Boolean,default:!1},type:{default:"button"},visible:{type:Boolean,default:!0},skeleton:{type:Boolean,default:!1}},setup(a){const e=t.useAttrs(),n=a,o=t.computed(()=>n.icon&&Gt[n.icon]||null),r=t.computed(()=>!!n.tooltip),i=t.computed(()=>n.visible??!0),s=t.computed(()=>{const R=String(n.variant||"default").toLowerCase();return R==="tonal"?"secondary":R==="elevated"?"default":R}),c=t.computed(()=>String(n.bgColor||"").toLowerCase()),d=t.computed(()=>String(n.type||"button").toLowerCase()),h=t.computed(()=>{const{class:R,...Z}=e;return Z}),u=t.computed(()=>be(e.class)),p=t.computed(()=>((u.value??"").match(/\b(?:w|h|min-w|min-h|max-w|max-h)-[^\s]+\b/g)??[]).join(" ")),y=t.computed(()=>n.size==="sm"?"h-9":n.size==="lg"?"h-11":n.size==="icon"?"h-10 w-10":"h-10"),f=t.computed(()=>n.size==="icon"?"":!n.text&&n.icon?"w-10":"w-28"),k=t.computed(()=>n.rounded?n.rounded.startsWith("rounded")?n.rounded:{none:"rounded-none",sm:"rounded-sm",md:"rounded-md",lg:"rounded-lg",xl:"rounded-xl","2xl":"rounded-2xl","3xl":"rounded-3xl",full:"rounded-full"}[n.rounded]||`rounded-${n.rounded}`:""),m=t.computed(()=>!n.borderStyle||n.borderStyle==="solid"?"":{dashed:"border-2 border-dashed",dotted:"border-2 border-dotted",double:"border-4 border-double",none:"border-0 border-none"}[n.borderStyle]||""),g=t.computed(()=>be("inline-flex items-center justify-center bg-gray-200 dark:bg-gray-700 animate-pulse",k.value,y.value,f.value,p.value)),v=t.computed(()=>{const Z=(u.value??"").match(/\bbg-(?!gradient)([a-z-]+)(?:-(\d{2,3}))?\b/u);return Z?Z[0]:null}),L=t.computed(()=>{const Z=(u.value??"").match(/\bhover:bg-(?!gradient)([a-z-]+)(?:-(\d{2,3}))?\b/u);return Z?Z[0]:null}),w=t.computed(()=>!!v.value),M=t.computed(()=>/\bborder-/.test(u.value??"")),C=t.computed(()=>/\bhover:/.test(u.value??"")),S=t.computed(()=>{const R=u.value??"";return s.value!=="outline"?R:R.replaceAll(/\bbg-(?!gradient)[^\s]+\b/gu,"").replaceAll(/\bhover:bg-(?!gradient)[^\s]+\b/gu,"").replaceAll(/\s+/gu," ").trim()}),b=t.ref(null),x=R=>{const Z=R.match(/rgba?\((\d+),\s*(\d+),\s*(\d+)(?:,\s*([0-9.]+))?\)/u);return Z?{r:Number(Z[1]),g:Number(Z[2]),b:Number(Z[3]),a:Z[4]?Number(Z[4]):1}:null},I=(R,Z)=>{const J=x(R);if(!J)return R;const re=de=>Math.max(0,Math.min(255,Math.round(de)));return`rgba(${re(J.r*(1-Z))}, ${re(J.g*(1-Z))}, ${re(J.b*(1-Z))}, ${J.a})`},V=R=>{if(globalThis.window===void 0)return null;const Z=document.createElement("div");Z.className=R,Z.style.position="absolute",Z.style.visibility="hidden",Z.style.pointerEvents="none",Z.style.width="1px",Z.style.height="1px",document.body.appendChild(Z);const J=globalThis.getComputedStyle(Z).backgroundColor;return Z.remove(),!J||J==="transparent"||J==="rgba(0, 0, 0, 0)"?null:J},B=[50,100,200,300,400,500,600,700,800,900,950],A=R=>{const Z=B.indexOf(R);return Z===-1?R:B[Math.min(B.length-1,Z+2)]},P=(R,Z)=>{const J=sE[R];if(!J)return null;if(typeof J=="string")return J;if(!Z)return null;const re=J[Z];return typeof re=="string"?re:null},D=(R,Z=!1)=>{if(!R)return null;const J=Z?/\bhover:bg-(?!gradient)([a-z-]+)(?:-(\d{2,3}))?\b/u:/\bbg-(?!gradient)([a-z-]+)(?:-(\d{2,3}))?\b/u,re=R.match(J);return re?{colorName:re[1],shade:re[2]?Number.parseInt(re[2],10):null}:null},U=()=>{const R=v.value;if(!R){b.value=null;return}const Z=D(R),J=Z==null?void 0:Z.colorName,re=(Z==null?void 0:Z.shade)??null,de=(J?P(J,re):null)??V(R);if(!de){b.value=null;return}let ue;const ve=D(L.value,!0),le=ve?P(ve.colorName,ve.shade??null):null;if(le)ue=le;else if(J&&re){const G=A(re);ue=P(J,G)??I(de,.2)}else ue=I(de,.2);b.value={"--btn-color":de,"--btn-color-hover":ue}};t.onMounted(()=>{U()}),t.watch([v,L],async()=>{await t.nextTick(),U()});const T=t.computed(()=>{const R=/\bdark:bg-/.test(u.value??"");return!w.value||s.value==="outline"||R?"":b.value?"dcode-btn--fill dcode-btn--fill-hover":C.value?"":"hover:brightness-90"}),H=t.computed(()=>{if(!w.value||s.value!=="outline")return"";const R=["dcode-btn--outline","dcode-btn--outline-hover"];return M.value||R.push("border"),!b.value&&!C.value&&R.push("hover:brightness-90"),R.join(" ")}),N=t.computed(()=>b.value??void 0),Q={primary:{bg:"bg-blue-600",text:"text-white",hover:"hover:bg-blue-700",border:"border-blue-900"},success:{bg:"bg-green-600",text:"text-white",hover:"hover:bg-green-700",border:"border-green-900"},warning:{bg:"bg-yellow-500",text:"text-white",hover:"hover:bg-yellow-600",border:"border-yellow-900"},danger:{bg:"bg-red-600",text:"text-white",hover:"hover:bg-red-700",border:"border-red-900"},info:{bg:"bg-cyan-600",text:"text-white",hover:"hover:bg-cyan-700",border:"border-cyan-900"},purple:{bg:"bg-purple-600",text:"text-white",hover:"hover:bg-purple-700",border:"border-purple-900"},pink:{bg:"bg-pink-600",text:"text-white",hover:"hover:bg-pink-700",border:"border-pink-900"},"gradient-blue":{bg:"bg-gradient-to-r from-blue-500 to-cyan-500",text:"text-white",hover:"hover:from-blue-600 hover:to-cyan-600"},"gradient-purple":{bg:"bg-gradient-to-r from-purple-500 to-pink-500",text:"text-white",hover:"hover:from-purple-600 hover:to-pink-600"},"gradient-sunset":{bg:"bg-gradient-to-r from-orange-500 to-red-500",text:"text-white",hover:"hover:from-orange-600 hover:to-red-600"},"gradient-emerald":{bg:"bg-gradient-to-r from-emerald-500 to-teal-500",text:"text-white",hover:"hover:from-emerald-600 hover:to-teal-600"},transparent:{bg:"bg-transparent",text:"text-inherit",hover:"hover:bg-gray-100/10 hover:text-inherit dark:hover:bg-gray-800/10 dark:hover:text-inherit",border:"border-current"}},j=t.computed(()=>{const R=[],Z=c.value?Q[c.value]:null;if(Z)R.push(Z.bg,Z.hover),R.push(n.textColor||Z.text),n.borderColor?R.push(n.borderColor):Z.border&&R.push(Z.border);else if(c.value&&R.push(c.value),n.textColor&&R.push(n.textColor),n.borderColor)R.push(n.borderColor);else if(c.value&&c.value.startsWith("bg-")){const J=c.value.replace(/^bg-/,"border-");J!==c.value&&R.push(J)}return R.join(" ")}),F=t.computed(()=>be(zj,k.value,m.value,S.value,T.value,H.value,j.value));return(R,Z)=>i.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[a.skeleton?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(g.value),"aria-hidden":"true"},null,2)):(t.openBlock(),t.createBlock(t.unref(lB),{key:1,"delay-duration":0},{default:t.withCtx(()=>[r.value?(t.openBlock(),t.createBlock(t.unref(iB),{key:0},{default:t.withCtx(()=>[t.createVNode(t.unref(cB),{"as-child":""},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee),t.mergeProps({variant:s.value,size:n.size,disabled:n.disabled,type:d.value,class:F.value,style:N.value},h.value),{default:t.withCtx(()=>[o.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.value),{key:0,class:"h-[18px] w-[18px]"})):t.createCommentVNode("",!0),n.text?(t.openBlock(),t.createElementBlock("span",{key:1,class:t.normalizeClass(o.value?"ml-1":"")},t.toDisplayString(n.text),3)):t.createCommentVNode("",!0)]),_:1},16,["variant","size","disabled","type","class","style"])]),_:1}),t.createVNode(t.unref(sB),{side:"top","side-offset":8,class:"animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 bg-gray-900 dark:bg-gray-100 text-white dark:text-gray-900 px-3 py-2 rounded-lg text-sm font-medium shadow-xl border-0"},{default:t.withCtx(()=>[t.createElementVNode("span",Vj,t.toDisplayString(n.tooltip),1)]),_:1})]),_:1})):(t.openBlock(),t.createBlock(t.unref(Ee),t.mergeProps({key:1,variant:s.value,size:n.size,disabled:n.disabled,type:d.value,class:F.value,style:N.value},h.value),{default:t.withCtx(()=>[t.renderSlot(R.$slots,"default",{},()=>[o.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.value),{key:0,class:"h-[18px] w-[18px]"})):t.createCommentVNode("",!0),n.text?(t.openBlock(),t.createElementBlock("span",{key:1,class:t.normalizeClass(o.value?"ml-1":"")},t.toDisplayString(n.text),3)):t.createCommentVNode("",!0)],!0)]),_:3},16,["variant","size","disabled","type","class","style"]))]),_:3}))],64)):t.createCommentVNode("",!0)}}),Xt=(a,e)=>{const n=a.__vccOpts||a;for(const[o,r]of e)n[o]=r;return n},ws=Xt(qj,[["__scopeId","data-v-a866d2a3"]]),Pj={key:0,class:"flex items-center justify-between mb-4"},Dj={class:"flex flex-col gap-1"},Ej={key:0,class:"text-lg font-semibold text-neutral-900 dark:text-neutral-50 leading-tight"},Tj={key:1,class:"text-sm text-neutral-500 dark:text-neutral-400"},Hj={key:0,class:"flex items-center gap-2"},jj={class:"relative z-10"},Oj={key:1,class:"mt-6 pt-6 border-t border-neutral-200 dark:border-neutral-800"},Fj={name:"DCodeCard"},rI=t.defineComponent({...Fj,props:{level:{default:1},title:{},subtitle:{},shadow:{type:Boolean,default:!1},border:{type:Boolean,default:!0},padding:{default:"p-6"}},setup(a){const e=a,n=t.computed(()=>{switch(e.level){case 2:return"bg-neutral-50 dark:bg-neutral-800";case 3:return"bg-neutral-100 dark:bg-neutral-700";case 1:default:return"bg-white dark:bg-neutral-900"}});return(o,r)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["transition-shadow duration-300 dcode-card",[n.value,a.padding,{"shadow-md":a.shadow},{"border-transparent":!a.border},{"border-neutral-200 dark:border-neutral-800":a.border&&a.level===1},{"border-neutral-300 dark:border-neutral-700":a.border&&a.level!==1}]])},[a.title||o.$slots.header||o.$slots.actions?(t.openBlock(),t.createElementBlock("div",Pj,[t.createElementVNode("div",Dj,[t.renderSlot(o.$slots,"header",{},()=>[a.title?(t.openBlock(),t.createElementBlock("h3",Ej,t.toDisplayString(a.title),1)):t.createCommentVNode("",!0),a.subtitle?(t.openBlock(),t.createElementBlock("p",Tj,t.toDisplayString(a.subtitle),1)):t.createCommentVNode("",!0)])]),o.$slots.actions?(t.openBlock(),t.createElementBlock("div",Hj,[t.renderSlot(o.$slots,"actions")])):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0),t.createElementVNode("div",jj,[t.renderSlot(o.$slots,"default")]),o.$slots.footer?(t.openBlock(),t.createElementBlock("div",Oj,[t.renderSlot(o.$slots,"footer")])):t.createCommentVNode("",!0)],2))}});/*!
|
|
8503
8503
|
* @kurkle/color v0.3.4
|
|
8504
8504
|
* https://github.com/kurkle/color#readme
|
|
8505
8505
|
* (c) 2024 Jukka Kurkela
|
|
@@ -8561,7 +8561,7 @@ For more information, see https://www.reka-ui.com/docs/components/${n}`,c=`Warni
|
|
|
8561
8561
|
.dcode-datepicker-menu .dp__menu_inner {
|
|
8562
8562
|
padding: 0 !important;
|
|
8563
8563
|
}
|
|
8564
|
-
`.trim();let r=document.getElementById(e);r||(r=document.createElement("style"),r.id=e,document.head.appendChild(r)),r.textContent=o}function CW(a,e=Ez){t.watch(a,n=>vW(n,e),{immediate:!0})}const LW={key:0,class:"h-4 w-32 rounded bg-gray-200 dark:bg-gray-700 animate-pulse"},SW={key:0,class:"ml-1 text-destructive"},IW=["disabled","onClick"],_W={class:"flex-shrink-0 px-2 text-sm text-muted-foreground select-none whitespace-nowrap"},AW=["id","value","placeholder","disabled","onClick","onFocus","onBlur","onInput","onKeydown","onKeypress","onPaste"],BW={class:"h-full p-2 flex flex-col gap-3 w-32"},VW={class:"flex items-center justify-end gap-2 w-full p-2"},zW={key:1,class:"text-xs text-destructive"},GI=t.defineComponent({name:"DCodeDatePicker",inheritAttrs:!1,__name:"DCodeDatePicker",props:{modelValue:{},range:{type:Boolean,default:!1},autoRangeDays:{default:null},disablePast:{type:Boolean,default:!1},maxDaysAhead:{default:null},placeholder:{default:"Pilih tanggal"},label:{},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},displayFormat:{default:"dd/MM/yyyy"},modelType:{default:"yyyy-MM-dd"},locale:{default:"en"},placement:{default:"bottom-start"},prependInner:{default:void 0},error:{default:null},selectLabel:{default:"Select"},cancelLabel:{default:"Cancel"},tone:{default:"primary"},skeleton:{type:Boolean,default:!1}},emits:["update:modelValue","change","clear"],setup(a,{emit:e}){const n=t.useAttrs(),o=a,r=e,i=Math.random().toString(36).slice(2,7),s=t.computed(()=>`dcode-datepicker-${n.id||o.label||"date-picker"}-${i}`),c=t.computed(()=>{const P=n.required,D=n["aria-required"];return P===""||P===!0||P==="true"||D==="true"||D===!0}),d=t.computed(()=>!!o.error),h=t.computed({get:()=>o.modelValue,set:P=>{r("update:modelValue",P),r("change",P)}}),u=t.computed(()=>o.locale==="en"?Iz:wW),p=t.computed(()=>o.range?2:!1),y=t.computed(()=>{if(!o.range)return!1;const P={partialRange:!1};return o.autoRangeDays&&o.autoRangeDays>0&&(P.maxRange=o.autoRangeDays,P.autoRange=o.autoRangeDays),P}),f=P=>{const D=new Date(P);return D.setHours(0,0,0,0),D},k=P=>{const D=new Date(P);return D.setHours(23,59,59,999),D},m=(P,D)=>{const U=new Date(P);return U.setDate(U.getDate()+D),U},g=t.computed(()=>{if(o.disablePast)return f(new Date)}),v=t.computed(()=>{if(o.maxDaysAhead&&o.maxDaysAhead>0)return k(m(new Date,o.maxDaysAhead))}),L=t.ref(null),w=t.ref(null),M=P=>{w.value={month:P.month,year:P.year}},C=t.ref(!1);let S=null;t.onMounted(()=>{const P=document.documentElement,D=()=>C.value=P.classList.contains("dark");D(),S=new MutationObserver(D),S.observe(P,{attributes:!0,attributeFilter:["class"]})}),t.onBeforeUnmount(()=>{S==null||S.disconnect(),S=null}),CW(t.toRef(o,"tone"));const b=P=>{const D=new Date(P),U=D.getDay(),T=D.getDate()-U+(U===0?-6:1);return D.setDate(T),f(D)},x=P=>{const D=b(P);return D.setDate(D.getDate()+6),k(D)},I=P=>{const D=new Date(P);return D.setDate(1),f(D)},V=P=>{const D=new Date(P);return D.setMonth(D.getMonth()+1),D.setDate(0),k(D)},B=t.computed(()=>{if(!o.range)return[];const P=new Date,D=f(P),U=b(P),T=x(P),H=I(P),N=V(P),Q=(j,F)=>{let R=j;o.disablePast&&R<D&&(R=D);let Z=F;if(o.autoRangeDays&&o.autoRangeDays>0){const J=k(m(R,o.autoRangeDays-1));Z>J&&(Z=J)}return Z<R&&(Z=k(new Date(R))),[R,Z]};return[{label:o.locale==="id"?"Minggu Ini":"This Week",range:Q(U,T)},{label:o.locale==="id"?"Bulan Ini":"This Month",range:Q(H,N)}]}),A=async P=>{var F,R;const D=o.modelType||"yyyy-MM-dd";if(P.length===0){h.value=null;return}if(P.length<2)return;const U=Pz(P[0],D),T=Pz(P[1],D);h.value=[U,T],await t.nextTick();const H=P[0],N=H.getMonth(),Q=H.getFullYear();w.value&&w.value.month===N&&w.value.year===Q||(F=L.value)==null||F.setMonthYear({month:N,year:Q}),(R=L.value)==null||R.openMenu()};return(P,D)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["flex flex-col gap-1 w-full",t.unref(n).class])},[a.skeleton?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[a.label?(t.openBlock(),t.createElementBlock("div",LW)):t.createCommentVNode("",!0),D[2]||(D[2]=t.createElementVNode("div",{class:"h-10 w-full rounded-lg bg-gray-200 dark:bg-gray-700 animate-pulse"},null,-1))],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[a.label?(t.openBlock(),t.createBlock(t.unref(La),{key:0,for:s.value,class:"text-sm font-medium"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.label)+" ",1),c.value?(t.openBlock(),t.createElementBlock("span",SW,"*")):t.createCommentVNode("",!0)]),_:1},8,["for"])):t.createCommentVNode("",!0),t.createVNode(t.unref(Je.VueDatePicker),{ref_key:"dpRef",ref:L,modelValue:h.value,"onUpdate:modelValue":D[1]||(D[1]=U=>h.value=U),dark:C.value,range:y.value,"multi-calendars":p.value,disabled:a.disabled,clearable:!1,"text-input":"","enable-time-picker":!1,"time-config":{enableTimePicker:!1},"auto-apply":!1,"action-row":{showPreview:!0,showNow:!1},locale:u.value,"model-type":a.modelType,formats:{input:a.displayFormat},"min-date":g.value,"max-date":v.value,"preset-ranges":B.value,floating:{placement:a.placement,offset:8,arrow:!1,flip:!1,shift:!0},teleport:!0,"menu-class-name":"dcode-datepicker-menu","calendar-class-name":"dcode-datepicker-calendar",onUpdateMonthYear:M},t.createSlots({"dp-input":t.withCtx(({value:U,onInput:T,onEnter:H,onTab:N,onBlur:Q,onFocus:j,onKeypress:F,onPaste:R,toggleMenu:Z})=>[t.createElementVNode("div",{class:t.normalizeClass(["flex items-center w-full h-10 rounded-lg border bg-white dark:bg-neutral-900 border-gray-300 dark:border-gray-700 overflow-hidden",[d.value?"border-destructive":"",a.disabled?"opacity-50 cursor-not-allowed":""]])},[t.createElementVNode("button",{type:"button",tabindex:"-1",disabled:a.disabled,class:"flex-shrink-0 flex items-center justify-center w-10 h-full text-muted-foreground hover:text-foreground transition-colors focus:outline-none",onClick:J=>Z()},[t.createVNode(t.unref(Hs),{class:"w-4 h-4 pointer-events-none"})],8,IW),D[4]||(D[4]=t.createElementVNode("span",{class:"w-px h-5 bg-gray-200 dark:bg-gray-700 flex-shrink-0"},null,-1)),a.prependInner?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createElementVNode("span",_W,t.toDisplayString(a.prependInner),1),D[3]||(D[3]=t.createElementVNode("span",{class:"w-px h-5 bg-gray-200 dark:bg-gray-700 flex-shrink-0"},null,-1))],64)):t.createCommentVNode("",!0),t.createElementVNode("input",{id:s.value,value:U,placeholder:a.placeholder,disabled:a.disabled,autocomplete:"off",readonly:"",class:t.normalizeClass(["flex-1 min-w-0 px-3 h-full bg-transparent text-sm text-foreground dark:text-gray-300 placeholder:text-muted-foreground outline-none",a.disabled?"cursor-not-allowed":"cursor-pointer"]),onClick:J=>Z(),onFocus:J=>j(),onBlur:J=>Q(),onInput:J=>T(J),onKeydown:[t.withKeys(J=>H(J),["enter"]),t.withKeys(J=>N(J),["tab"])],onKeypress:J=>F(J),onPaste:J=>R()},null,42,AW)],2)]),"action-buttons":t.withCtx(({selectDate:U,selectionDisabled:T})=>[t.createElementVNode("div",VW,[t.createVNode(t.unref(Ee),{type:"button",variant:"outline",onClick:D[0]||(D[0]=H=>{var N;return(N=L.value)==null?void 0:N.closeMenu()})},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.cancelLabel),1)]),_:1}),t.createVNode(t.unref(Ee),{type:"button",variant:"default",disabled:T,onClick:H=>U()},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.selectLabel),1)]),_:1},8,["disabled","onClick"])])]),_:2},[a.range?{name:"left-sidebar",fn:t.withCtx(()=>[t.createElementVNode("div",BW,[B.value.length?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(B.value,U=>(t.openBlock(),t.createBlock(t.unref(Ee),{key:U.label,type:"button",variant:"default",class:"w-full",onClick:T=>A(U.range)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(U.label),1)]),_:2},1032,["onClick"]))),128)):t.createCommentVNode("",!0)])]),key:"0"}:void 0]),1032,["modelValue","dark","range","multi-calendars","disabled","locale","model-type","formats","min-date","max-date","preset-ranges","floating"]),d.value?(t.openBlock(),t.createElementBlock("p",zW,t.toDisplayString(o.error),1)):t.createCommentVNode("",!0)],64))],2))}}),qW=t.defineComponent({__name:"Dialog",props:{open:{type:Boolean},defaultOpen:{type:Boolean},modal:{type:Boolean}},emits:["update:open"],setup(a,{emit:e}){const r=mt(a,e);return(i,s)=>(t.openBlock(),t.createBlock(t.unref(VA),t.normalizeProps(t.guardReactiveProps(t.unref(r))),{default:t.withCtx(()=>[t.renderSlot(i.$slots,"default")]),_:3},16))}}),PW=t.defineComponent({inheritAttrs:!1,__name:"DialogContent",props:{forceMount:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(a,{emit:e}){const n=a,o=e,r=De(n,"class"),i=mt(r,o);return(s,c)=>(t.openBlock(),t.createBlock(t.unref($A),null,{default:t.withCtx(()=>[t.createVNode(t.unref(NA),{class:"fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0"}),t.createVNode(t.unref(FA),t.mergeProps({...t.unref(i),...s.$attrs},{class:t.unref(be)("fixed left-1/2 top-1/2 z-50 grid w-full max-w-lg -translate-x-1/2 -translate-y-1/2 gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",n.class)}),{default:t.withCtx(()=>[t.renderSlot(s.$slots,"default"),t.createVNode(t.unref(zA),{class:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground"},{default:t.withCtx(()=>[t.createVNode(t.unref(it),{class:"w-4 h-4"}),c[0]||(c[0]=t.createElementVNode("span",{class:"sr-only"},"Close",-1))]),_:1})]),_:3},16,["class"])]),_:3}))}}),DW=t.defineComponent({__name:"DialogDescription",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(RA),t.mergeProps(t.unref(o),{class:t.unref(be)("text-sm text-muted-foreground",e.class)}),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default")]),_:3},16,["class"]))}}),EW=t.defineComponent({__name:"DialogTitle",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(UA),t.mergeProps(t.unref(o),{class:t.unref(be)("text-lg font-medium leading-none tracking-tight",e.class)}),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default")]),_:3},16,["class"]))}}),TW={class:"flex items-center gap-3"},HW={class:"flex justify-end gap-3"},lS=t.defineComponent({name:"DCodeDialog",inheritAttrs:!1,__name:"DCodeDialog",props:{modelValue:{type:Boolean,default:!1},title:{default:""},icon:{default:""},maxWidth:{default:500},persistent:{type:Boolean,default:!0},contentClass:{default:"p-5"},contentStyle:{default:()=>({})}},emits:["update:modelValue"],setup(a,{emit:e}){const n=a,o=e,r=t.useAttrs(),i=t.computed(()=>{const{style:h,...u}=r;return u}),s=t.computed(()=>({maxWidth:typeof n.maxWidth=="number"?`${n.maxWidth}px`:n.maxWidth,width:"100%"})),c=t.computed(()=>n.icon?Gt[n.icon]??null:null),d=h=>{o("update:modelValue",h)};return(h,u)=>(t.openBlock(),t.createBlock(t.unref(qW),{open:a.modelValue,"onUpdate:open":d},{default:t.withCtx(()=>[t.createVNode(t.unref(PW),t.mergeProps(i.value,{style:s.value,class:"p-0 overflow-hidden rounded-xl",onInteractOutside:u[0]||(u[0]=p=>a.persistent?p.preventDefault():null),onEscapeKeyDown:u[1]||(u[1]=p=>a.persistent?p.preventDefault():null)}),{default:t.withCtx(()=>[t.createVNode(rI,{padding:a.contentClass,border:"",shadow:"",class:"w-full !rounded-xl !border-0",level:1},t.createSlots({header:t.withCtx(()=>[t.createElementVNode("div",TW,[c.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(c.value),{key:0,class:"h-5 w-5"})):t.createCommentVNode("",!0),t.createVNode(t.unref(EW),{class:"text-base font-medium"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.title),1)]),_:1}),t.createVNode(t.unref(DW),{class:"hidden"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.title||"Dialog Content"),1)]),_:1})])]),actions:t.withCtx(()=>[t.renderSlot(h.$slots,"header-append")]),default:t.withCtx(()=>[t.createElementVNode("div",{style:t.normalizeStyle(a.contentStyle)},[t.renderSlot(h.$slots,"default")],4)]),_:2},[h.$slots.actions?{name:"footer",fn:t.withCtx(()=>[t.createElementVNode("div",HW,[t.renderSlot(h.$slots,"actions")])]),key:"0"}:void 0]),1032,["padding"])]),_:3},16,["style"])]),_:3},8,["open"]))}}),Tz=t.defineComponent({__name:"DCodeDialogCloseBtn",props:{icon:{default:"X"},iconSize:{default:22}},setup(a){const e=a,n=t.computed(()=>Gt[e.icon]??it);return(o,r)=>(t.openBlock(),t.createBlock(t.unref(Ee),{type:"button",variant:"secondary",size:"icon",class:"rounded-full shadow-sm"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(n.value),{size:Number(a.iconSize)},null,8,["size"]))]),_:1}))}}),jW=t.defineComponent({__name:"Alert",props:{class:{type:[Boolean,null,String,Object,Array]},variant:{}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(be)(t.unref(FW)({variant:a.variant}),e.class)),role:"alert"},[t.renderSlot(n.$slots,"default")],2))}}),OW=t.defineComponent({__name:"AlertDescription",props:{class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(be)("text-sm [&_p]:leading-relaxed",e.class))},[t.renderSlot(n.$slots,"default")],2))}}),FW=i1("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),_a=t.defineComponent({__name:"Badge",props:{variant:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(be)(t.unref(RW)({variant:a.variant}),e.class))},[t.renderSlot(n.$slots,"default")],2))}}),RW=i1("inline-flex gap-1 items-center rounded-full border px-2.5 py-0.5 text-xs font-medium transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}}),KI=t.defineComponent({__name:"Card",props:{class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(be)("rounded-xl border bg-card text-card-foreground shadow",e.class))},[t.renderSlot(n.$slots,"default")],2))}}),XI=t.defineComponent({__name:"CardContent",props:{class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(be)("p-6 pt-0",e.class))},[t.renderSlot(n.$slots,"default")],2))}}),ZI=t.defineComponent({__name:"CardHeader",props:{class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(be)("flex flex-col gap-y-1.5 p-6",e.class))},[t.renderSlot(n.$slots,"default")],2))}}),YI=t.defineComponent({__name:"CardTitle",props:{class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createElementBlock("h3",{class:t.normalizeClass(t.unref(be)("font-medium leading-none tracking-tight",e.class))},[t.renderSlot(n.$slots,"default")],2))}}),NW={class:"h-full w-full p-6 flex flex-col items-center justify-center text-center gap-2"},$W={class:"flex flex-wrap items-center justify-center gap-2"},UW=["accept","multiple"],cS=Xt(t.defineComponent({__name:"DCodeDropzone",props:{label:{default:"Upload File"},hint:{default:"Drag & drop file di sini atau klik area ini"},accept:{default:"*/*"},maxSizeMb:{default:2},mode:{default:"single"},disabled:{type:Boolean,default:!1},showSelected:{type:Boolean,default:!0},error:{default:null}},emits:["picked","picked:multiple","error"],setup(a,{emit:e}){const n=a,o=e,r=t.ref(null),i=t.ref(!1),s=t.ref(null),c=t.ref(null),d=t.ref(null);t.computed(()=>n.accept||"file/*");const h=t.computed(()=>n.error??s.value);function u(){var b;n.disabled||(b=r.value)==null||b.click()}function p(b){const x=b/1024,I=x/1024;return I>=1?`${I.toFixed(2)} MB`:x>=1?`${x.toFixed(1)} KB`:`${b} B`}function y(b){var I;if(!b)return"File tidak valid";if((I=n.accept)!=null&&I.includes("image/")&&!b.type.startsWith("image/"))return"Hanya file gambar yang diizinkan";const x=(n.maxSizeMb??2)*1024*1024;return b.size>x?`Ukuran file terlalu besar. Maks ${n.maxSizeMb}MB`:null}function f(b){c.value=b.name,d.value=b.size}function k(b){if(s.value=null,!b.length)return;if(n.mode==="single"){const I=b[0],V=y(I);if(V){s.value=V,o("error",V);return}n.showSelected&&f(I),o("picked",I);return}const x=[];for(const I of b){const V=y(I);if(V){s.value=V,o("error",V);return}x.push(I)}x.length&&(n.showSelected&&f(x[0]),o("picked:multiple",x))}function m(b){const x=b.target,I=Array.from(x.files??[]);k(I),x.value=""}function g(){n.disabled||(i.value=!0)}function v(){n.disabled||(i.value=!0)}function L(){i.value=!1}function w(b){var V,B;if(n.disabled)return;i.value=!1;const x=Array.from(((V=b.dataTransfer)==null?void 0:V.files)??[]),I=(B=n.accept)!=null&&B.includes("image/")?x.filter(A=>A.type.startsWith("image/")):x;k(I)}const M=t.computed(()=>(n.accept||"file/*").split(",").map(b=>b.trim()).filter(Boolean).map(b=>b==="image/*"?"IMAGE":b.replace(/^image\//,"").replace(/^\./,"")).join(", "));t.computed(()=>`${n.maxSizeMb??0}MB`);const C=t.ref(!1),S=t.computed(()=>{if(n.disabled||!C.value)return{};const b=document.documentElement.classList.contains("dark")||document.body.classList.contains("dark");return{borderColor:b?"hsl(var(--primary) / 0.5)":"hsl(var(--primary) / 0.6)",backgroundColor:b?"hsl(var(--primary) / 0.1)":"hsl(var(--primary) / 0.05)"}});return(b,x)=>(t.openBlock(),t.createBlock(t.unref(KI),{class:t.normalizeClass([a.disabled?"opacity-60":"","dark:bg-neutral-900 dark:border-neutral-800"])},{default:t.withCtx(()=>[t.createVNode(t.unref(ZI),{class:"pb-2"},{default:t.withCtx(()=>[t.createVNode(t.unref(YI),{class:"text-sm font-semibold dark:text-neutral-100"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.label),1)]),_:1})]),_:1}),t.createVNode(t.unref(XI),{class:"pt-2"},{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(["d-dropzone-area flex justify-center items-center rounded-xl border-2 border-dashed transition cursor-pointer select-none",[i.value?"is-dragging border-primary bg-primary/10 dark:bg-primary/20 -translate-y-[1px]":"border-border dark:border-neutral-700 bg-muted/30 dark:bg-neutral-800/50",a.disabled?"is-disabled":""]]),style:t.normalizeStyle([{minHeight:"190px"},S.value]),onClick:u,onDragenter:t.withModifiers(g,["prevent"]),onDragover:t.withModifiers(v,["prevent"]),onDragleave:t.withModifiers(L,["prevent"]),onDrop:t.withModifiers(w,["prevent"]),onMouseenter:x[0]||(x[0]=I=>C.value=!0),onMouseleave:x[1]||(x[1]=I=>C.value=!1)},[t.createElementVNode("div",NW,[x[2]||(x[2]=t.createElementVNode("div",{class:"text-sm font-medium dark:text-neutral-200"},"Drag & drop file di sini",-1)),x[3]||(x[3]=t.createElementVNode("div",{class:"text-xs text-muted-foreground dark:text-neutral-400"},"atau klik area ini untuk memilih file",-1)),t.createElementVNode("div",$W,[t.createVNode(t.unref(_a),{variant:"secondary",class:"text-[11px] dark:bg-neutral-700 dark:text-neutral-300"},{default:t.withCtx(()=>[t.createTextVNode(" Allowed: "+t.toDisplayString(M.value),1)]),_:1}),t.createVNode(t.unref(_a),{variant:"secondary",class:"text-[11px] dark:bg-neutral-700 dark:text-neutral-300"},{default:t.withCtx(()=>[t.createTextVNode(" Max: "+t.toDisplayString(n.maxSizeMb)+"MB ",1)]),_:1})]),a.showSelected&&c.value?(t.openBlock(),t.createBlock(t.unref(_a),{key:0,variant:"secondary",class:"mt-2 dark:bg-neutral-700 dark:text-neutral-300"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(c.value)+" • "+t.toDisplayString(d.value?p(d.value):""),1)]),_:1})):t.createCommentVNode("",!0)]),t.createElementVNode("input",{ref_key:"fileInputEl",ref:r,type:"file",class:"hidden",accept:a.accept,multiple:a.mode==="multiple",onChange:m},null,40,UW)],38),h.value?(t.openBlock(),t.createBlock(t.unref(jW),{key:0,variant:"destructive",class:"mt-3"},{default:t.withCtx(()=>[t.createVNode(t.unref(OW),{class:"text-sm"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(h.value),1)]),_:1})]),_:1})):t.createCommentVNode("",!0)]),_:1})]),_:1},8,["class"]))}}),[["__scopeId","data-v-218e1a20"]]),WW={key:0,class:"text-xs text-muted-foreground dark:text-neutral-400"},GW=["src"],KW={key:1,class:"h-full w-full flex flex-col items-center justify-center text-muted-foreground dark:text-neutral-400 gap-2 p-4 text-center"},XW={class:"space-y-0.5"},ZW={class:"text-sm font-medium truncate max-w-[180px] dark:text-neutral-200"},YW={class:"text-xs opacity-70"},QW=["disabled"],JW={key:1},eG=["disabled"],tG={class:"text-[11px] text-foreground/90 dark:text-neutral-200 space-y-1 whitespace-nowrap"},aG={class:"flex gap-2"},nG={class:"font-medium truncate"},oG={class:"flex gap-2"},rG={class:"font-medium"},iG={class:"flex gap-2"},sG={class:"font-medium truncate"},QI=Xt(t.defineComponent({__name:"DCodeFileResult",props:{file:{},title:{default:"File Terpilih"},description:{default:""},disabled:{type:Boolean,default:!1},previewHeight:{default:190},previewWidth:{default:220},showEdit:{type:Boolean,default:!0},showReplace:{type:Boolean,default:!0},showRemove:{type:Boolean,default:!0},forceFileIcon:{type:Boolean,default:!1}},emits:["edit","replace","remove"],setup(a,{emit:e}){const n=a,o=e,r=t.ref(null),i=t.computed(()=>n.forceFileIcon||!n.file?!1:(n.file.type||"").startsWith("image/"));t.watch(()=>n.file,f=>{r.value&&URL.revokeObjectURL(r.value),r.value=f?URL.createObjectURL(f):null},{immediate:!0}),t.onBeforeUnmount(()=>{r.value&&URL.revokeObjectURL(r.value),u&&u.disconnect()});function s(f){const k=f/1024,m=k/1024;return m>=1?`${m.toFixed(2)} MB`:k>=1?`${k.toFixed(1)} KB`:`${f} B`}const c=t.computed(()=>n.file?{name:n.file.name,size:s(n.file.size),type:n.file.type||"unknown"}:null),d=t.ref(!1),h=t.ref(!1);let u=null;const p=()=>{typeof document<"u"&&(h.value=document.documentElement.classList.contains("dark")||document.body.classList.contains("dark"))};t.onMounted(()=>{p(),typeof document<"u"&&(u=new MutationObserver(p),u.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),u.observe(document.body,{attributes:!0,attributeFilter:["class"]}))});const y=t.computed(()=>n.disabled||!d.value?{}:{borderColor:h.value?"hsl(var(--primary) / 0.4)":"hsl(var(--primary) / 0.5)",backgroundColor:h.value?"hsl(var(--primary) / 0.1)":"hsl(var(--primary) / 0.05)"});return(f,k)=>a.file?(t.openBlock(),t.createBlock(KI,{key:0,class:t.normalizeClass([a.disabled?"opacity-60 pointer-events-none":"","dark:bg-neutral-900 dark:border-neutral-800"])},{default:t.withCtx(()=>[t.createVNode(ZI,{class:"pb-2"},{default:t.withCtx(()=>[t.createVNode(YI,{class:"text-sm font-semibold dark:text-neutral-100"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.title),1)]),_:1}),a.description?(t.openBlock(),t.createElementBlock("div",WW,t.toDisplayString(a.description),1)):t.createCommentVNode("",!0)]),_:1}),t.createVNode(XI,{class:"pt-2"},{default:t.withCtx(()=>{var m,g,v,L,w;return[t.createElementVNode("div",{class:"d-result-preview-wrap relative rounded-xl overflow-hidden border-2 border-dashed transition-colors duration-200 bg-muted dark:bg-neutral-800/50 border-border dark:border-neutral-700 w-full",style:t.normalizeStyle([{height:`${a.previewHeight}px`},y.value]),onMouseenter:k[2]||(k[2]=M=>d.value=!0),onMouseleave:k[3]||(k[3]=M=>d.value=!1)},[i.value&&r.value?(t.openBlock(),t.createElementBlock("img",{key:0,src:r.value,alt:"Preview",class:"h-full w-full object-contain"},null,8,GW)):(t.openBlock(),t.createElementBlock("div",KW,[t.createVNode(t.unref(hs),{class:"w-10 h-10"}),t.createElementVNode("div",XW,[t.createElementVNode("p",ZW,t.toDisplayString((m=c.value)==null?void 0:m.name),1),t.createElementVNode("p",YW,t.toDisplayString((g=c.value)==null?void 0:g.size),1)])])),t.createElementVNode("div",{class:"d-action-buttons",style:t.normalizeStyle({position:"absolute",top:"8px",left:"8px",right:"8px",display:"flex",alignItems:"center",justifyContent:"space-between",zIndex:50,opacity:d.value?1:0,transition:"opacity 0.2s ease-in-out",pointerEvents:d.value?"auto":"none"})},[a.showEdit&&i.value?(t.openBlock(),t.createElementBlock("button",{key:0,disabled:a.disabled,class:"d-action-btn shadow-md",style:t.normalizeStyle({height:"32px",width:"32px",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"#eab308",color:"white",borderRadius:"8px",border:"1px solid rgba(255,255,255,0.4)",cursor:a.disabled?"not-allowed":"pointer",transition:"all 0.2s"}),onClick:k[0]||(k[0]=M=>o("edit"))},[t.createVNode(t.unref(sr),{style:{width:"16px",height:"16px"}})],12,QW)):(t.openBlock(),t.createElementBlock("div",JW)),a.showRemove?(t.openBlock(),t.createElementBlock("button",{key:2,disabled:a.disabled,class:"d-action-btn shadow-md",style:t.normalizeStyle({height:"32px",width:"32px",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"#ef4444",color:"white",borderRadius:"8px",border:"1px solid rgba(255,255,255,0.4)",cursor:a.disabled?"not-allowed":"pointer",transition:"all 0.2s"}),onClick:k[1]||(k[1]=M=>o("remove"))},[t.createVNode(t.unref(_i),{style:{width:"16px",height:"16px"}})],12,eG)):t.createCommentVNode("",!0)],4),t.createElementVNode("div",{class:"d-metadata-overlay",style:t.normalizeStyle({position:"absolute",left:"8px",bottom:"8px",zIndex:10,display:"inline-block",maxWidth:"calc(100% - 16px)",borderRadius:"12px",border:"1px solid rgba(0,0,0,0.1)",padding:"8px 12px",boxShadow:"0 10px 15px -3px rgba(0,0,0,0.1)",backdropFilter:"blur(8px)",transition:"all 0.2s ease-in-out",opacity:d.value?1:0,transform:d.value?"translateY(0) scale(1)":"translateY(4px) scale(0.99)",backgroundColor:h.value?"rgba(38, 38, 38, 0.8)":"rgba(255, 255, 255, 0.8)",color:h.value?"#e5e5e5":"#171717"})},[t.createElementVNode("div",tG,[t.createElementVNode("div",aG,[k[4]||(k[4]=t.createElementVNode("span",{class:"w-14 shrink-0 text-muted-foreground dark:text-neutral-400"},"Nama",-1)),t.createElementVNode("span",nG,t.toDisplayString((v=c.value)==null?void 0:v.name),1)]),t.createElementVNode("div",oG,[k[5]||(k[5]=t.createElementVNode("span",{class:"w-14 shrink-0 text-muted-foreground dark:text-neutral-400"},"Ukuran",-1)),t.createElementVNode("span",rG,t.toDisplayString((L=c.value)==null?void 0:L.size),1)]),t.createElementVNode("div",iG,[k[6]||(k[6]=t.createElementVNode("span",{class:"w-14 shrink-0 text-muted-foreground dark:text-neutral-400"},"Tipe",-1)),t.createElementVNode("span",sG,t.toDisplayString((w=c.value)==null?void 0:w.type),1)])])],4)],36)]}),_:1})]),_:1},8,["class"])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-21123eaf"]]);function JI(){const a=i=>{var d;const s={type:i.type||"info",title:i.title,message:i.message,duration:i.duration??3e3};typeof window<"u"&&window.dispatchEvent(new CustomEvent("micro:toast",{detail:s,bubbles:!0,composed:!0})),(s.type==="error"?console.error:s.type==="warning"?console.warn:console.log)(`[Toast][${(d=s.type)==null?void 0:d.toUpperCase()}]`,s.title||"",s.message)};return{show:a,success:(i,s)=>a({type:"success",message:i,title:s}),error:(i,s)=>a({type:"error",message:i,title:s}),warning:(i,s)=>a({type:"warning",message:i,title:s}),info:(i,s)=>a({type:"info",message:i,title:s})}}const lG={class:"space-y-3"},cG={key:1,class:"flex items-center justify-center p-6 border rounded-lg bg-muted/30 dark:bg-neutral-800/20 dark:border-neutral-800"},Hz=t.defineComponent({__name:"DCodeFileField",props:{modelValue:{default:null},label:{default:"Upload File"},hint:{},disabled:{type:Boolean,default:!1},previewHeight:{default:190},previewWidth:{default:void 0},allowedTypes:{default:null},accept:{default:"*/*"},minSizeMb:{default:null},maxSizeMb:{default:1},endpoint:{},uploadFn:{}},emits:["update:modelValue","error","uploaded"],setup(a,{emit:e}){const n=a,o=e,r=t.computed({get:()=>n.modelValue,set:S=>o("update:modelValue",S)}),i=t.ref(null),s=t.ref(null);function c(S){s.value=S,o("error",S)}function d(){s.value=null}const h=t.computed(()=>{const S=(n.allowedTypes??"").trim();return S?S.split(/[,\s;]+/g).map(x=>x.trim().toLowerCase()).filter(Boolean).map(x=>x.includes("/")||x.startsWith(".")?x:`.${x}`):[]});function u(S){const b=S.lastIndexOf(".");return b>=0?S.slice(b).toLowerCase():""}const p=t.computed(()=>{if(h.value.length){const S=h.value.filter(x=>x.startsWith("."));return[...h.value.filter(x=>x.includes("/")),...S].join(",")}return n.accept}),y=t.computed(()=>h.value.length?h.value.join(", "):n.accept||"Semua File");function f(S){if(h.value.length){const b=(S.type||"").toLowerCase(),x=u(S.name);return h.value.some(I=>I.includes("/")?b===I:I.startsWith(".")?x===I:x===`.${I}`)}if(n.accept){if(n.accept==="*/*")return!0;const b=n.accept.split(",").map(V=>V.trim().toLowerCase()),x=(S.type||"").toLowerCase(),I=u(S.name);return b.some(V=>{if(V.endsWith("/*")){const B=V.slice(0,-2);return x.startsWith(B)}return V.startsWith(".")?I===V:x===V})}return!0}function k(S){return S*1024*1024}async function m(S){return S?f(S)?n.minSizeMb!=null&&S.size<k(n.minSizeMb)?`Ukuran file terlalu kecil. Minimal ${n.minSizeMb}MB`:n.maxSizeMb!=null&&S.size>k(n.maxSizeMb)?`Ukuran file terlalu besar. Maks ${n.maxSizeMb}MB`:null:`File Type not allowed. Allowed: ${y.value}`:"File tidak valid"}const{DCodeApi:g}=Ke(),v=JI(),L=t.ref(!1);async function w(S){var b;if(n.uploadFn){try{L.value=!0;const x=await n.uploadFn(S);r.value=S,o("uploaded",x)}catch(x){console.error("Upload Error",x),v.error("Upload Failed",(x==null?void 0:x.message)||"Unknown error"),c((x==null?void 0:x.message)||"Upload Failed")}finally{L.value=!1}return}if(!((b=n.endpoint)!=null&&b.apiUrl)){r.value=S;return}if(typeof g!="function"){c("useApi() must expose DCodeApi()");return}try{L.value=!0;const x=new FormData;x.append("doc",S);const I=(n.endpoint.apiMethod||"POST").toUpperCase(),V=n.endpoint.apiUrl,B=await g("","",x,{_url:V,_method:I,withCredentials:!0,transformRequest:[(P,D)=>(D&&(delete D["Content-Type"],delete D["content-type"]),P)]}),A=(B==null?void 0:B.data)??B;r.value=S,o("uploaded",A)}catch(x){console.error("Upload Error",x),v.error("Upload Failed",(x==null?void 0:x.message)||"Unknown error"),c((x==null?void 0:x.message)||"Upload Failed")}finally{L.value=!1}}async function M(S){var x;if(n.disabled)return;d();const b=await m(S);if(b){c(b);return}i.value=S,n.uploadFn||(x=n.endpoint)!=null&&x.apiUrl?await w(S):r.value=S}function C(){d(),r.value=null,i.value=null}return t.watch(()=>n.modelValue,S=>{S&&!i.value&&(i.value=S),S||(i.value=null)},{immediate:!0}),(S,b)=>(t.openBlock(),t.createElementBlock("div",lG,[r.value?L.value?(t.openBlock(),t.createElementBlock("div",cG,[...b[1]||(b[1]=[t.createElementVNode("span",{class:"text-sm text-muted-foreground dark:text-neutral-400 animate-pulse"},"Uploading...",-1)])])):(t.openBlock(),t.createBlock(QI,{key:2,file:r.value,title:a.label,description:a.hint,disabled:a.disabled,"show-edit":!1,"show-replace":!1,"show-remove":!0,"force-file-icon":!0,"preview-height":a.previewHeight,"preview-width":a.previewWidth,onRemove:C},null,8,["file","title","description","disabled","preview-height","preview-width"])):(t.openBlock(),t.createBlock(cS,{key:0,label:a.label,hint:a.hint,accept:p.value,maxSizeMb:a.maxSizeMb,disabled:a.disabled||L.value,onPicked:M,error:s.value,onError:b[0]||(b[0]=x=>c(x))},null,8,["label","hint","accept","maxSizeMb","disabled","error"]))]))}}),dG=["for"],hG={key:0,class:"!ml-1 !text-destructive"},uG={class:"relative w-full block box-border"},pG={key:0,class:"absolute inset-y-0 left-3 flex items-center text-muted-foreground pointer-events-none z-10"},yG=["id","readonly","disabled","placeholder"],fG={class:"absolute inset-y-0 right-4 flex items-center z-10"},kG={key:1,class:"absolute z-50 mt-1 w-full rounded-xl border bg-white dark:bg-neutral-900 shadow-lg box-border"},mG={key:0,class:"flex items-center justify-center py-10 text-muted-foreground gap-2"},gG={key:1,class:"text-sm text-muted-foreground text-center"},bG=["onClick","title"],MG={class:"flex flex-col items-center justify-between gap-2 py-1 min-h-[72px]"},xG={class:"flex items-center justify-center flex-1"},wG={class:"text-[10px] leading-tight text-muted-foreground truncate w-full text-center block flex-shrink-0"},vG={key:3,class:"pt-2 text-[11px] text-muted-foreground text-center"},jz=t.defineComponent({name:"DCodeIconDropdown",__name:"DCodeIconDropdown",props:{modelValue:{},label:{},placeholder:{default:"Pilih icon…"},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},columns:{default:4},maxHeight:{default:"335px"},iconSize:{default:20},pageSize:{default:120}},emits:["update:modelValue","clear"],setup(a,{emit:e}){const n=a,o=e,r=Gt,i=t.ref(null),s=t.ref(null),c=Math.random().toString(36).slice(2,7),d=t.computed(()=>`dcode-icon-dropdown-${n.label||"icon-dropdown"}-${c}`),h=t.ref(!1),u=t.computed(()=>(n.modelValue??"").trim()||""),p=t.ref(""),y=t.ref(!1),f=t.ref(!1),k=t.ref(!1),m=t.shallowRef([]),g=t.ref(n.pageSize),v=new Set(["default","createLucideIcon","LucideIcon","Icon","icons","toKebabCase","camelCase","children","IconNode"]),L=async()=>{if(f.value||k.value)return;k.value=!0,await new Promise(F=>setTimeout(F,0));const j=Object.keys(r).filter(F=>!v.has(F)).filter(F=>/^[A-Z]/.test(F)).filter(F=>typeof r[F]=="function"||typeof r[F]=="object"&&r[F]).sort((F,R)=>F.localeCompare(R));m.value=j,f.value=!0,k.value=!1},w=t.computed(()=>!f.value||!u.value||!m.value.includes(u.value)?null:r[u.value]),M=t.ref(u.value),C=t.computed(()=>!!u.value&&!h.value),S=t.computed(()=>{if(!f.value)return[];const j=(p.value??"").trim().toLowerCase();return j?m.value.filter(F=>F.toLowerCase().includes(j)):m.value}),b=t.computed(()=>S.value.slice(0,g.value)),x=t.computed(()=>{const j=n.columns;return j<=2?"grid-cols-2":j===3?"grid-cols-3":j===4?"grid-cols-4":j===5?"grid-cols-5":j>=8?"grid-cols-8":"grid-cols-6"});t.computed(()=>n.clearable?"!pr-10":"!pr-3"),t.computed(()=>w.value&&!h.value?"!pl-12":"!pl-3");const I=async()=>{var j;await t.nextTick(),(j=s.value)==null||j.focus()},V=async j=>{if(n.disabled)return;const F=j!==!1;if(y.value){y.value=!1;return}h.value=!0,await L(),F&&(p.value="",M.value=""),g.value=n.pageSize,await I()},B=()=>{h.value=!1,p.value="",M.value=u.value,g.value=n.pageSize},A=async()=>{n.disabled||(h.value?B():await V())};let P=null;const D=async j=>{if(n.disabled)return;o("update:modelValue",null),h.value||await V(!1),P&&clearTimeout(P);const F=M.value;P=setTimeout(()=>{p.value=F},300)},U=j=>{n.disabled||(o("update:modelValue",j),B(),queueMicrotask(()=>{var F;return(F=s.value)==null?void 0:F.blur()}))},T=()=>{n.disabled||(o("update:modelValue",null),o("clear"),y.value=!0,B(),queueMicrotask(()=>{var j;return(j=s.value)==null?void 0:j.focus()}))},H=j=>{if(j.key==="Escape"){j.preventDefault(),B();return}if(j.key==="Enter"&&h.value){const F=S.value[0];F&&(j.preventDefault(),U(F))}},N=j=>{if(!h.value)return;const F=j.target;i.value&&!i.value.contains(F)&&B()},Q=j=>{const F=j.target;F.scrollTop+F.clientHeight>=F.scrollHeight-24&&g.value<S.value.length&&(g.value=Math.min(g.value+n.pageSize,S.value.length))};return t.onMounted(()=>{document.addEventListener("mousedown",N),queueMicrotask(()=>{var j;s.value=((j=i.value)==null?void 0:j.querySelector("input"))??null}),u.value&&L()}),t.onBeforeUnmount(()=>{document.removeEventListener("mousedown",N),P&&clearTimeout(P)}),t.watch(u,j=>{h.value||(M.value=j)}),t.watch(()=>p.value,()=>{g.value=n.pageSize}),(j,F)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"rootEl",ref:i,class:"!w-full !block !box-border"},[n.label?(t.openBlock(),t.createElementBlock("label",{key:0,for:d.value,class:"!text-sm !font-medium !mb-1 !block"},[t.createTextVNode(t.toDisplayString(n.label)+" ",1),n.required?(t.openBlock(),t.createElementBlock("span",hG,"*")):t.createCommentVNode("",!0)],8,dG)):t.createCommentVNode("",!0),t.createElementVNode("div",uG,[w.value&&!h.value?(t.openBlock(),t.createElementBlock("div",pG,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(w.value),{size:18}))])):t.createCommentVNode("",!0),t.withDirectives(t.createElementVNode("input",{id:d.value,"onUpdate:modelValue":F[0]||(F[0]=R=>M.value=R),readonly:C.value,disabled:n.disabled,placeholder:n.placeholder,class:t.normalizeClass(["w-full h-10 m-0 py-0 rounded-lg border bg-white dark:bg-neutral-900 text-foreground dark:text-gray-300 border-gray-300 dark:border-gray-700 pr-10 outline-none box-border truncate",[w.value&&!h.value?"pl-10":"pl-4",C.value?"cursor-pointer select-none":""]]),onClick:V,onFocus:V,onInput:D,onKeydown:H},null,42,yG),[[t.vModelText,M.value]]),t.createElementVNode("div",fG,[n.clearable&&u.value?(t.openBlock(),t.createElementBlock("button",{key:0,type:"button",class:"flex items-center justify-center p-1 m-0 bg-transparent border-0 text-muted-foreground hover:text-foreground transition cursor-pointer outline-none",onMousedown:F[1]||(F[1]=t.withModifiers(()=>{},["prevent"])),onClick:T,title:"Clear"},[t.createVNode(t.unref(it),{class:"h-4 w-4"})],32)):(t.openBlock(),t.createElementBlock("button",{key:1,type:"button",class:"flex items-center justify-center p-1 m-0 bg-transparent border-0 text-muted-foreground hover:text-foreground transition-transform cursor-pointer outline-none",onMousedown:F[2]||(F[2]=t.withModifiers(()=>{},["prevent"])),onClick:A,title:"Open"},[t.createVNode(t.unref(St),{class:"h-4 w-4"})],32))]),h.value?(t.openBlock(),t.createElementBlock("div",kG,[t.createElementVNode("div",{class:"p-2 overflow-auto",style:t.normalizeStyle({maxHeight:n.maxHeight}),onScroll:Q},[k.value?(t.openBlock(),t.createElementBlock("div",mG,[t.createVNode(t.unref(kt),{class:"h-4 w-4 animate-spin"}),F[3]||(F[3]=t.createElementVNode("span",{class:"text-sm"},"Loading icons…",-1))])):f.value&&S.value.length===0?(t.openBlock(),t.createElementBlock("div",gG," Icon tidak ditemukan ")):(t.openBlock(),t.createElementBlock("div",{key:2,class:t.normalizeClass(["grid gap-2",x.value])},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(b.value,R=>(t.openBlock(),t.createElementBlock("button",{key:R,type:"button",class:t.normalizeClass(["group rounded-lg border p-2 hover:bg-muted/40 transition",u.value===R?"ring-1 ring-primary":""]),onClick:Z=>U(R),title:R},[t.createElementVNode("div",MG,[t.createElementVNode("div",xG,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(r)[R]),{size:n.iconSize,class:"shrink-0"},null,8,["size"]))]),t.createElementVNode("span",wG,t.toDisplayString(R),1)])],10,bG))),128))],2)),f.value&&S.value.length>0?(t.openBlock(),t.createElementBlock("div",vG," Showing "+t.toDisplayString(b.value.length)+" / "+t.toDisplayString(S.value.length),1)):t.createCommentVNode("",!0)],36)])):t.createCommentVNode("",!0)])],512))}}),CG={key:0,class:"fixed inset-0 z-50 flex items-center justify-center p-4 sm:p-6"},LG={class:"flex items-center justify-between border-b dark:border-neutral-800 px-6 py-4"},SG={class:"relative overflow-auto p-0"},e_=t.defineComponent({__name:"DCodeImageCropperDialog",props:{modelValue:{type:Boolean},file:{},title:{default:"Resize & Crop Gambar"},description:{default:""},aspectRatio:{default:null},outputWidth:{default:null},outputHeight:{default:null},quality:{default:.92},autoOpenEditor:{type:Boolean,default:!1}},emits:["update:modelValue","done","cancel"],setup(a,{emit:e}){const n=a,o=e,r=t.computed({get:()=>n.modelValue,set:w=>o("update:modelValue",w)}),i=t.ref(null),s=t.ref(null);let c=null,d=!1,h=0,u=null;function p(){if(c){try{c.close()}catch{}c=null,u&&(u.disconnect(),u=null),i.value&&(i.value.innerHTML=""),s.value=null}}async function y(w,M,C,S,b){const x=await new Promise((B,A)=>{const P=URL.createObjectURL(w),D=new Image;D.onload=()=>{URL.revokeObjectURL(P),B(D)},D.onerror=U=>{URL.revokeObjectURL(P),A(U)},D.src=P}),I=document.createElement("canvas");I.width=M,I.height=C;const V=I.getContext("2d");return V?(V.drawImage(x,0,0,M,C),await new Promise(B=>{I.toBlob(A=>B(A||w),S,b)})):w}function f(){if(!c||!s.value)return;const w=c.getPlugin("Dashboard"),M=c.getFile(s.value);!w||!M||requestAnimationFrame(()=>{try{w.openFileEditor(M)}catch{try{w.openFileEditor(s.value)}catch{}}})}async function k(w){if(c){c.cancelAll(),s.value=null;try{const M=c.addFile({name:w.name,type:w.type,data:w,source:"Local",isRemote:!1});s.value=String(M)}catch{}}}function m(){if(!i.value)return;c&&p(),c=new kq({autoProceed:!1,restrictions:{maxNumberOfFiles:1,allowedFileTypes:["image/*"]}});const w=document.documentElement.classList.contains("dark");c.use(y_,{target:i.value,inline:!0,height:480,theme:w?"dark":"light",proudlyDisplayPoweredByUppy:!1,hideUploadButton:!0,hideRetryButton:!0,hidePauseResumeButton:!0,hideCancelButton:!0,showProgressDetails:!1}),u=new MutationObserver(()=>{if(!c)return;const M=document.documentElement.classList.contains("dark"),C=c.getPlugin("Dashboard");C&&C.setOptions({theme:M?"dark":"light"})}),u.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),c.use(mq,{target:y_,quality:n.quality,cropperOptions:{viewMode:1,dragMode:"move",autoCropArea:1,aspectRatio:n.aspectRatio==null?Number.NaN:n.aspectRatio}}),c.on("file-editor:cancel",()=>{r.value=!1}),c.on("file-added",M=>{s.value=(M==null?void 0:M.id)??null,n.autoOpenEditor&&setTimeout(()=>f(),80)}),c.on("file-editor:complete",async M=>{const C=++h;try{const S=M.data,b=S.type||M.type||"image/jpeg";let x=S;if(n.outputWidth&&n.outputHeight&&(x=await y(S,n.outputWidth,n.outputHeight,b,n.quality)),d||C!==h)return;const I=M.name||"edited-image.jpg",V=new File([x],I,{type:b});await g(V,"UPPY_EDITOR_COMPLETE"),o("done",V),r.value=!1}catch{}})}async function g(w,M="CROP_RESULT"){const C=URL.createObjectURL(w);try{const S=await new Promise((b,x)=>{const I=new Image;I.onload=()=>b(I),I.onerror=x,I.src=C});console.group(M),console.log("file:",w),console.table({name:w.name,type:w.type,sizeBytes:w.size,sizeMB:+(w.size/1024/1024).toFixed(3),width:S.naturalWidth,height:S.naturalHeight,ratio:+(S.naturalWidth/S.naturalHeight).toFixed(4)}),console.log("previewUrl:",C),console.groupEnd()}finally{URL.revokeObjectURL(C)}}t.watch(r,async w=>{d=!w,h++,w?(await t.nextTick(),m(),n.file&&await k(n.file)):p()},{flush:"post"}),t.watch(()=>n.file,async w=>{r.value&&w&&(await t.nextTick(),await k(w))}),t.onBeforeUnmount(()=>{d=!0,h++,p()});const v=w=>{w.key==="Escape"&&r.value&&(r.value=!1)};t.watch(r,w=>{w?globalThis.addEventListener("keydown",v):globalThis.removeEventListener("keydown",v)},{immediate:!0});const L=t.ref(!1);return(w,M)=>r.value?(t.openBlock(),t.createElementBlock("div",CG,[t.createVNode(t.Transition,{appear:"","enter-active-class":"duration-300 ease-out","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"duration-200 ease-in","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:t.withCtx(()=>[r.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"fixed inset-0 bg-black/60 backdrop-blur-sm transition-opacity",onClick:M[0]||(M[0]=C=>r.value=!1)})):t.createCommentVNode("",!0)]),_:1}),t.createVNode(t.Transition,{appear:"","enter-active-class":"duration-300 ease-out","enter-from-class":"opacity-0 scale-95 translate-y-4 sm:translate-y-0 sm:scale-95","enter-to-class":"opacity-100 scale-100 translate-y-0 sm:scale-100","leave-active-class":"duration-200 ease-in","leave-from-class":"opacity-100 scale-100 translate-y-0 sm:scale-100","leave-to-class":"opacity-0 scale-95 translate-y-4 sm:translate-y-0 sm:scale-95"},{default:t.withCtx(()=>[r.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"relative flex w-fit max-w-4xl flex-col overflow-hidden rounded-xl border border-border dark:border-neutral-800 bg-background dark:bg-neutral-900 shadow-2xl transition-all",onClick:M[4]||(M[4]=t.withModifiers(()=>{},["stop"]))},[t.createElementVNode("div",LG,[M[6]||(M[6]=t.createElementVNode("h3",{class:"text-lg font-semibold leading-none tracking-tight dark:text-neutral-100"}," Crop & Resize ",-1)),t.createElementVNode("button",{class:"d-close-btn rounded-sm dark:text-neutral-400 ring-offset-background transition-opacity focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",style:t.normalizeStyle({opacity:L.value?1:.7}),onClick:M[1]||(M[1]=C=>r.value=!1),onMouseenter:M[2]||(M[2]=C=>L.value=!0),onMouseleave:M[3]||(M[3]=C=>L.value=!1)},[t.createVNode(t.unref(it),{class:"h-4 w-4"}),M[5]||(M[5]=t.createElementVNode("span",{class:"sr-only"},"Close",-1))],36)]),t.createElementVNode("div",SG,[t.createElementVNode("div",{ref_key:"dashboardEl",ref:i,class:"uppy-wrap"},null,512)])])):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)}}),IG={key:0,class:"text-xs text-muted-foreground dark:text-neutral-400"},_G=["src"],AG=["disabled"],BG=["disabled"],VG={class:"text-[11px] text-foreground/90 dark:text-neutral-200 space-y-1 whitespace-nowrap"},zG={class:"flex gap-2"},qG={class:"font-medium truncate"},PG={class:"flex gap-2"},DG={class:"font-medium"},EG={class:"flex gap-2"},TG={class:"font-medium truncate"},t_=Xt(t.defineComponent({__name:"DCodeImageResult",props:{file:{},title:{default:"Hasil Gambar"},description:{default:""},disabled:{type:Boolean,default:!1},previewHeight:{default:190},previewWidth:{default:220},showEdit:{type:Boolean,default:!0},showReplace:{type:Boolean,default:!0},showRemove:{type:Boolean,default:!0}},emits:["edit","replace","remove"],setup(a,{emit:e}){const n=a,o=e,r=t.ref(null);t.watch(()=>n.file,y=>{r.value&&URL.revokeObjectURL(r.value),r.value=y?URL.createObjectURL(y):null},{immediate:!0}),t.onBeforeUnmount(()=>{r.value&&URL.revokeObjectURL(r.value),h&&h.disconnect()});function i(y){const f=y/1024,k=f/1024;return k>=1?`${k.toFixed(2)} MB`:f>=1?`${f.toFixed(1)} KB`:`${y} B`}const s=t.computed(()=>n.file?{name:n.file.name,size:i(n.file.size),type:n.file.type||"unknown"}:null),c=t.ref(!1),d=t.ref(!1);let h=null;const u=()=>{typeof document<"u"&&(d.value=document.documentElement.classList.contains("dark")||document.body.classList.contains("dark"))};t.onMounted(()=>{u(),typeof document<"u"&&(h=new MutationObserver(u),h.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),h.observe(document.body,{attributes:!0,attributeFilter:["class"]}))});const p=t.computed(()=>n.disabled||!c.value?{}:{borderColor:d.value?"hsl(var(--primary) / 0.4)":"hsl(var(--primary) / 0.5)",backgroundColor:d.value?"hsl(var(--primary) / 0.1)":"hsl(var(--primary) / 0.05)"});return(y,f)=>a.file?(t.openBlock(),t.createBlock(KI,{key:0,class:t.normalizeClass([a.disabled?"opacity-60 pointer-events-none":"","dark:bg-neutral-900 dark:border-neutral-800"])},{default:t.withCtx(()=>[t.createVNode(ZI,{class:"pb-2"},{default:t.withCtx(()=>[t.createVNode(YI,{class:"text-sm font-semibold dark:text-neutral-100"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.title),1)]),_:1}),a.description?(t.openBlock(),t.createElementBlock("div",IG,t.toDisplayString(a.description),1)):t.createCommentVNode("",!0)]),_:1}),t.createVNode(XI,{class:"pt-2"},{default:t.withCtx(()=>{var k,m,g;return[t.createElementVNode("div",{class:"d-result-preview-wrap relative rounded-xl overflow-hidden border-2 border-dashed transition-colors duration-200 bg-muted dark:bg-neutral-800/50 border-border dark:border-neutral-700 w-full",style:t.normalizeStyle([{height:`${a.previewHeight}px`},p.value]),onMouseenter:f[2]||(f[2]=v=>c.value=!0),onMouseleave:f[3]||(f[3]=v=>c.value=!1)},[r.value?(t.openBlock(),t.createElementBlock("img",{key:0,src:r.value,alt:"Preview",class:"h-full w-full object-contain"},null,8,_G)):t.createCommentVNode("",!0),t.createElementVNode("div",{class:"d-action-buttons",style:t.normalizeStyle({position:"absolute",top:"8px",left:"8px",right:"8px",display:"flex",alignItems:"center",justifyContent:"space-between",zIndex:50,opacity:c.value?1:0,transition:"opacity 0.2s ease-in-out",pointerEvents:c.value?"auto":"none"})},[a.showEdit?(t.openBlock(),t.createElementBlock("button",{key:0,disabled:a.disabled,class:"d-action-btn shadow-md",style:t.normalizeStyle({height:"32px",width:"32px",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"#eab308",color:"white",borderRadius:"8px",border:"1px solid rgba(255,255,255,0.4)",cursor:a.disabled?"not-allowed":"pointer",transition:"all 0.2s",boxShadow:"0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)"}),onClick:f[0]||(f[0]=v=>o("edit"))},[t.createVNode(t.unref(sr),{style:{width:"16px",height:"16px"}})],12,AG)):t.createCommentVNode("",!0),a.showRemove?(t.openBlock(),t.createElementBlock("button",{key:1,disabled:a.disabled,class:"d-action-btn shadow-md",style:t.normalizeStyle({height:"32px",width:"32px",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"#ef4444",color:"white",borderRadius:"8px",border:"1px solid rgba(255,255,255,0.4)",cursor:a.disabled?"not-allowed":"pointer",transition:"all 0.2s",boxShadow:"0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)"}),onClick:f[1]||(f[1]=v=>o("remove"))},[t.createVNode(t.unref(_i),{style:{width:"16px",height:"16px"}})],12,BG)):t.createCommentVNode("",!0)],4),t.createElementVNode("div",{class:"d-metadata-overlay",style:t.normalizeStyle({position:"absolute",left:"8px",bottom:"8px",zIndex:10,display:"inline-block",maxWidth:"calc(100% - 16px)",borderRadius:"12px",border:"1px solid rgba(0,0,0,0.1)",padding:"8px 12px",boxShadow:"0 10px 15px -3px rgba(0,0,0,0.1)",backdropFilter:"blur(8px)",transition:"all 0.2s ease-in-out",opacity:c.value?1:0,transform:c.value?"translateY(0) scale(1)":"translateY(4px) scale(0.99)",backgroundColor:d.value?"rgba(38, 38, 38, 0.8)":"rgba(255, 255, 255, 0.8)",color:d.value?"#e5e5e5":"#171717"})},[t.createElementVNode("div",VG,[t.createElementVNode("div",zG,[f[4]||(f[4]=t.createElementVNode("span",{class:"w-14 shrink-0 text-muted-foreground dark:text-neutral-400"},"Nama",-1)),t.createElementVNode("span",qG,t.toDisplayString((k=s.value)==null?void 0:k.name),1)]),t.createElementVNode("div",PG,[f[5]||(f[5]=t.createElementVNode("span",{class:"w-14 shrink-0 text-muted-foreground dark:text-neutral-400"},"Ukuran",-1)),t.createElementVNode("span",DG,t.toDisplayString((m=s.value)==null?void 0:m.size),1)]),t.createElementVNode("div",EG,[f[6]||(f[6]=t.createElementVNode("span",{class:"w-14 shrink-0 text-muted-foreground dark:text-neutral-400"},"Tipe",-1)),t.createElementVNode("span",TG,t.toDisplayString((g=s.value)==null?void 0:g.type),1)])])],4)],36)]}),_:1})]),_:1},8,["class"])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-349b562d"]]),HG={class:"space-y-3"},a_=t.defineComponent({__name:"DCodeImageField",props:{modelValue:{default:null},label:{default:"Upload Gambar"},hint:{default:"Drag & drop atau klik area ini"},disabled:{type:Boolean,default:!1},allowedTypes:{default:null},accept:{default:"image/*"},minSizeMb:{default:null},maxSizeMb:{default:1},title:{default:"Hasil Gambar"},description:{default:""},previewWidth:{default:360},previewHeight:{default:220},aspectRatio:{default:null},outputWidth:{default:null},outputHeight:{default:null},quality:{default:.92},autoOpenEditor:{type:Boolean,default:!0},minWidth:{default:null},minHeight:{default:null},maxWidth:{default:null},maxHeight:{default:null},endpoint:{},uploadFn:{},editUseOriginal:{type:Boolean,default:!1}},emits:["update:modelValue","error","uploaded"],setup(a,{emit:e}){const n=a,o=e,r=t.computed({get:()=>n.modelValue,set:T=>o("update:modelValue",T)}),i=t.ref(!1),s=t.ref(null),c=t.ref(null),d=t.ref(null);function h(T){d.value=T,o("error",T)}function u(){d.value=null}const p=t.computed(()=>{const T=(n.allowedTypes??"").trim();return T?T.split(/[,\s;]+/g).map(N=>N.trim().toLowerCase()).filter(Boolean).map(N=>N.includes("/")||N.startsWith(".")?N:`.${N}`):[]});function y(T){const H=T.lastIndexOf(".");return H>=0?T.slice(H).toLowerCase():""}const f=t.computed(()=>{if(p.value.length){const T=p.value.filter(N=>N.startsWith("."));return[...p.value.filter(N=>N.includes("/")),...T].join(",")}return n.accept||"image/*"}),k=t.computed(()=>p.value.length?p.value.join(", "):n.accept||"image/*");function m(T){if(p.value.length){const N=(T.type||"").toLowerCase(),Q=y(T.name);return p.value.some(j=>j.includes("/")?N===j:j.startsWith(".")?Q===j:Q===`.${j}`)}return(n.accept||"image/*").toLowerCase().includes("image/")?(T.type||"").toLowerCase().startsWith("image/"):!0}function g(T){return T*1024*1024}async function v(T){var H;return(H=T.type)!=null&&H.startsWith("image/")?await new Promise(N=>{const Q=URL.createObjectURL(T),j=new Image;j.onload=()=>{URL.revokeObjectURL(Q),N({w:j.naturalWidth,h:j.naturalHeight})},j.onerror=()=>{URL.revokeObjectURL(Q),N(null)},j.src=Q}):null}async function L(T){if(!(n.minWidth!=null||n.minHeight!=null||n.maxWidth!=null||n.maxHeight!=null))return null;const N=await v(T);return N?n.minWidth!=null&&N.w<n.minWidth?`Lebar gambar minimal ${n.minWidth}px`:n.minHeight!=null&&N.h<n.minHeight?`Tinggi gambar minimal ${n.minHeight}px`:n.maxWidth!=null&&N.w>n.maxWidth?`Lebar gambar maksimal ${n.maxWidth}px`:n.maxHeight!=null&&N.h>n.maxHeight?`Tinggi gambar maksimal ${n.maxHeight}px`:null:"Gagal membaca dimensi gambar"}async function w(T){return T?m(T)?n.minSizeMb!=null&&T.size<g(n.minSizeMb)?`Ukuran file terlalu kecil. Minimal ${n.minSizeMb}MB`:n.maxSizeMb!=null&&T.size>g(n.maxSizeMb)?`Ukuran file terlalu besar. Maks ${n.maxSizeMb}MB`:await L(T):`only Allowed: ${k.value}`:"File tidak valid"}function M(T){n.disabled||(s.value=T,i.value=!0)}async function C(T){if(n.disabled)return;u();const H=await w(T);if(H){h(H);return}c.value=T,M(T)}const{DCodeApi:S}=Ke(),b=JI(),x=t.ref(!1);t.ref(null);function I(T,H){return!T||!H?null:T.replace(/\/+$/,"")+"/"+H.replace(/^\/+/,"")}function V(T){var j;const H=(T==null?void 0:T.data)??T,N=(j=H==null?void 0:H.data)==null?void 0:j[0];if(!N)return null;const Q=I(N.server,N.url);return{...N,fullUrl:Q?encodeURI(Q):null}}async function B(T){var H;if(n.uploadFn){try{x.value=!0;const N=await n.uploadFn(T);r.value=T,o("uploaded",N)}catch(N){console.error("Upload Error",N),b.error("Upload Failed",(N==null?void 0:N.message)||"Unknown error"),h((N==null?void 0:N.message)||"Upload Failed")}finally{x.value=!1}return}if(!((H=n.endpoint)!=null&&H.apiUrl)){r.value=T;return}if(typeof S!="function"){h("useApi() must expose DCodeApi()");return}try{x.value=!0;const N=new FormData;N.append("doc",T);const Q=(n.endpoint.apiMethod||"POST").toUpperCase(),j=n.endpoint.apiUrl,F=await S("","",N,{_url:j,_method:Q,withCredentials:!0,transformRequest:[(Z,J)=>(J&&(delete J["Content-Type"],delete J["content-type"]),Z)]}),R=(F==null?void 0:F.data)??F;V(R),r.value=T,o("uploaded",R)}catch(N){console.error("Upload Error",N),b.error("Upload Failed",(N==null?void 0:N.message)||"Unknown error"),h((N==null?void 0:N.message)||"Upload Failed")}finally{x.value=!1}}async function A(T){var H;u(),n.uploadFn||(H=n.endpoint)!=null&&H.apiUrl?await B(T):r.value=T,i.value=!1,s.value=null}function P(){i.value=!1,s.value=null}async function D(){if(!r.value)return;u();const T=n.editUseOriginal?c.value??r.value:r.value,H=await w(T);if(H){h(H);return}M(T)}function U(){u(),r.value=null,s.value=null,i.value=!1,c.value=null}return t.watch(()=>n.modelValue,T=>{T&&!c.value&&(c.value=T),T||(c.value=null)},{immediate:!0}),(T,H)=>(t.openBlock(),t.createElementBlock("div",HG,[r.value?(t.openBlock(),t.createBlock(t_,{key:1,file:r.value,title:a.label,description:a.description,"preview-width":a.previewWidth,disabled:a.disabled,"show-edit":!0,"show-remove":!0,"show-replace":!1,onEdit:D,onRemove:U,"aspect-ratio":16/9},null,8,["file","title","description","preview-width","disabled"])):(t.openBlock(),t.createBlock(cS,{key:0,label:a.label,hint:a.hint,accept:f.value,maxSizeMb:a.maxSizeMb,disabled:a.disabled,onPicked:C,error:d.value,onError:H[0]||(H[0]=N=>h(N))},null,8,["label","hint","accept","maxSizeMb","disabled","error"])),t.createVNode(e_,{modelValue:i.value,"onUpdate:modelValue":H[1]||(H[1]=N=>i.value=N),file:s.value,title:a.title,description:a.description,"auto-open-editor":a.autoOpenEditor,"aspect-ratio":a.aspectRatio,"output-width":a.outputWidth,"output-height":a.outputHeight,quality:a.quality,onDone:A,onCancel:P},null,8,["modelValue","file","title","description","auto-open-editor","aspect-ratio","output-width","output-height","quality"])]))}}),n_=t.defineComponent({name:"DCodeLabel",inheritAttrs:!1,__name:"DCodeLabel",props:{label:{},text:{},textSize:{},textType:{},icon:{},iconClass:{}},setup(a){const e=t.useAttrs(),n=a,o=t.computed(()=>n.icon&&Gt[n.icon]||null),r=t.computed(()=>n.textSize?`text-${n.textSize}`:"text-xs"),i={xs:"w-3 h-3",sm:"w-3.5 h-3.5",base:"w-4 h-4",lg:"w-5 h-5",xl:"w-5 h-5","2xl":"w-6 h-6","3xl":"w-7 h-7","4xl":"w-8 h-8","5xl":"w-10 h-10","6xl":"w-12 h-12"},s=t.computed(()=>i[n.textSize??"xs"]??"w-3 h-3"),c=t.computed(()=>n.textType==="BOLD"?"font-bold":n.textType==="ITALIC"?"italic font-normal":"font-normal"),d=t.computed(()=>{const u=`${r.value} ${c.value} text-slate-600 ml-1 inline-flex items-center gap-1`,p=e.class??"";return[u,p].filter(Boolean).join(" ")}),h=t.computed(()=>{const{class:u,...p}=e;return p});return(u,p)=>(t.openBlock(),t.createElementBlock("span",t.mergeProps({class:d.value},h.value),[o.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.value),{key:0,class:t.normalizeClass(["shrink-0",s.value,a.iconClass])},null,8,["class"])):t.createCommentVNode("",!0),t.createTextVNode(" "+t.toDisplayString(a.label||a.text),1)],16))}}),o_=t.defineComponent({__name:"Input",props:{defaultValue:{},modelValue:{},class:{type:[Boolean,null,String,Object,Array]}},emits:["update:modelValue"],setup(a,{emit:e}){const n=a,r=ks(n,"modelValue",e,{passive:!0,defaultValue:n.defaultValue});return(i,s)=>t.withDirectives((t.openBlock(),t.createElementBlock("input",{"onUpdate:modelValue":s[0]||(s[0]=c=>t.isRef(r)?r.value=c:null),class:t.normalizeClass(t.unref(be)("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",n.class))},null,2)),[[t.vModelText,t.unref(r)]])}}),jG=["aria-busy"],OG={key:0,class:"h-4 w-32 rounded bg-gray-200 dark:bg-gray-700 animate-pulse"},FG={key:0,class:"ml-1 text-destructive"},RG={class:"min-w-0 flex-1 text-left"},NG={key:0,class:"flex flex-wrap gap-1.5"},$G={class:"max-w-[220px] truncate"},UG=["onClick"],WG={key:1,class:"text-muted-foreground truncate"},GG={class:"flex items-center gap-2 shrink-0"},KG={key:0,class:"p-2 border-b border-gray-200 dark:border-gray-800"},XG={key:0,class:"h-full flex items-center justify-center px-3 text-sm text-muted-foreground"},ZG=["disabled","onClick"],YG={class:"truncate"},QG={key:0,class:"text-primary-600 dark:text-primary-400"},JG={key:1,class:"h-full flex items-center justify-center text-sm text-muted-foreground"},eK={key:0},tK={key:1},aK={key:1,class:"text-xs text-destructive"},nK={name:"DCodeMultiSelect"},Oz=t.defineComponent({...nK,name:"DCodeMultiSelect",inheritAttrs:!1,props:{modelValue:{},items:{default:()=>[]},endpoint:{default:void 0},fetchItems:{},autoFetchOnOpen:{type:Boolean,default:!0},autoFetchOnMount:{type:Boolean,default:!1},refreshOnOpen:{type:Boolean,default:!1},label:{default:""},placeholder:{default:"Pilih data…"},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},searchable:{type:Boolean,default:!1},searchPlaceholder:{default:"Cari…"},visible:{type:Boolean,default:!0},skeleton:{type:Boolean,default:!1},maxChips:{default:2},maxSelected:{default:3},itemTitle:{type:[String,Function],default:"name"},itemValue:{type:[String,Function],default:"id"},returnObject:{type:Boolean,default:!1},virtual:{type:Boolean,default:!0},itemHeight:{default:40},maxRows:{default:5},overscan:{default:6},error:{default:null},required:{type:Boolean,default:!1}},emits:["update:modelValue","clear","max"],setup(a,{emit:e}){const n=t.useAttrs(),o=e,r=a,i=t.computed(()=>(r.label||n.label)??void 0),s=t.computed(()=>r.visible??!0),c=Math.random().toString(36).slice(2,7),d=t.computed(()=>`app-multiselect-${n.id||i.value||"field"}-${c}`),h=t.computed(()=>{if(r.required)return!0;const K=n.required,te=n["aria-required"];return K===""||K===!0||K==="true"||(te==="true"||te===!0)}),u=t.computed(()=>!!r.error);function p(K){return K?typeof r.itemTitle=="function"?r.itemTitle(K)??"":String((K==null?void 0:K[r.itemTitle])??""):""}function y(K){return K?typeof r.itemValue=="function"?r.itemValue(K):K==null?void 0:K[r.itemValue]:null}function f(K,te){return y(K)??te}const k=t.computed(()=>Array.isArray(r.modelValue)?r.modelValue:[]),m=t.computed(()=>{var K;return!!((K=r.endpoint)!=null&&K.apiUrl)||!!r.fetchItems}),g=t.ref([]),v=t.ref(!1),L=t.ref(!1),w=t.computed(()=>{var te;const K=(te=r.endpoint)==null?void 0:te.apiOptions;if(K)return typeof K=="function"?K():K}),M=t.computed(()=>{var ye,Ve;const K=((ye=r.endpoint)==null?void 0:ye.apiUrl)??"",te=(((Ve=r.endpoint)==null?void 0:Ve.apiMethod)??"GET").toUpperCase(),ne=JSON.stringify(w.value??null);return`${te} ${K} :: ${ne}`}),C=t.computed(()=>m.value?g.value:r.items||[]);async function S(){var K;if(m.value&&!(!((K=r.endpoint)!=null&&K.apiUrl)&&!r.fetchItems)&&!v.value){v.value=!0;try{let te;if(r.fetchItems){const ne=await r.fetchItems(),ye=(ne==null?void 0:ne.data)??ne;te=(ye==null?void 0:ye.data)??ye}else{const{DCodeApi:ne}=Ke();if(typeof ne!="function"){console.error("[DCodeMultiSelectChips] useApi() must expose DCodeApi()");return}const ye={page:1,perPage:100,...w.value||{}},Ve=await ne("","",ye,{_url:r.endpoint.apiUrl,_method:(r.endpoint.apiMethod||"GET").toUpperCase()}),ra=(Ve==null?void 0:Ve.data)??Ve;te=(ra==null?void 0:ra.data)??ra}g.value=Array.isArray(te)?te:[],L.value=!0}catch(te){console.error("[DCodeMultiSelectChips][fetchOptions] ERROR:",te),g.value=[]}finally{v.value=!1}}}t.watch(()=>M.value,()=>{g.value=[],L.value=!1}),t.onMounted(()=>{r.autoFetchOnMount&&m.value&&S()});const b=t.computed(()=>{const K=k.value;if(r.returnObject)return K;const te=new Map;for(const ne of C.value)te.set(y(ne),ne);return K.map(ne=>te.get(ne)??{[r.itemValue]:ne,[r.itemTitle]:String(ne)})}),x=t.computed(()=>r.maxChips===null?b.value:b.value.slice(0,r.maxChips));function I(K){const te=k.value;if(r.returnObject){const ne=y(K);return te.some(ye=>y(ye)===ne)}return te.includes(y(K))}const V=t.computed(()=>{if(r.maxSelected===null||r.maxSelected===void 0)return null;const K=Number(r.maxSelected);return Number.isFinite(K)&&K>0?K:null}),B=t.computed(()=>{const K=V.value;return K===null?!1:k.value.length>=K});function A(K){return!I(K)&&B.value}const P=t.computed(()=>{const K=k.value,te=new Set;if(r.returnObject)for(const ne of K)te.add(y(ne));else for(const ne of K)te.add(ne);return te}),D=t.computed(()=>{const K=P.value;return(C.value||[]).filter(te=>!K.has(y(te)))}),U=t.computed(()=>C.value.length===0?!1:D.value.length===0),T=t.ref(null),H=t.ref(null),N=t.ref(null),Q=t.ref(!1),j=t.ref(""),F=t.ref(0),R=t.ref(0),{floatingStyles:Z}=Q1(T,H,{whileElementsMounted:K1,placement:"bottom-start",middleware:[X1(8),Ds(),Z1({padding:8}),Y1({apply({rects:K,elements:te}){Object.assign(te.floating.style,{width:`${K.reference.width}px`,"--floating-width":`${K.reference.width}px`})}})]}),J=t.computed(()=>Z.value),re=t.computed(()=>{const K=Number(r.maxRows);return Number.isFinite(K)&&K>0?K:5});async function de(){r.disabled||(Q.value=!0,R.value=0,requestAnimationFrame(()=>{N.value&&(N.value.scrollTop=0),F.value=0}),m.value&&r.autoFetchOnOpen&&(r.refreshOnOpen||!L.value)&&!v.value&&await S())}function ue(){Q.value=!1}function ve(){Q.value?ue():de()}function le(K){var ne,ye;if(!Q.value)return;const te=K.target;(ne=T.value)!=null&&ne.contains(te)||(ye=H.value)!=null&&ye.contains(te)||ue()}t.onMounted(()=>document.addEventListener("mousedown",le)),t.onBeforeUnmount(()=>document.removeEventListener("mousedown",le));function G(K){if(r.disabled)return;if(A(K)){o("max");return}const te=[...k.value];if(r.returnObject){const ne=y(K);if(te.some(Ve=>y(Ve)===ne))return;o("update:modelValue",[...te,K])}else{const ne=y(K);if(te.includes(ne))return;o("update:modelValue",[...te,ne])}j.value="",R.value=0,requestAnimationFrame(()=>{N.value&&(N.value.scrollTop=0),F.value=0})}function z(K){if(r.disabled)return;const te=[...k.value];if(r.returnObject){const ne=y(K);o("update:modelValue",te.filter(ye=>y(ye)!==ne))}else{const ne=y(K);o("update:modelValue",te.filter(ye=>ye!==ne))}}function W(){r.disabled||(o("update:modelValue",[]),o("clear"),ue())}const ee=t.computed(()=>{const K=j.value.trim().toLowerCase(),te=D.value;return K?te.filter(ne=>p(ne).toLowerCase().includes(K)):te}),pe=t.computed(()=>ee.value.length);t.watch(Q,K=>{K||(j.value="")});const qe=t.computed(()=>{if(U.value)return r.itemHeight;const K=pe.value;return(K<=0?1:Math.min(K,re.value))*r.itemHeight}),ot=t.computed(()=>r.virtual?pe.value*r.itemHeight:0),Mt=t.computed(()=>r.virtual?Math.ceil(qe.value/r.itemHeight)+r.overscan:pe.value),oa=t.computed(()=>{if(!r.virtual)return 0;const K=Math.floor(F.value/r.itemHeight)-Math.floor(r.overscan/2);return Math.max(0,K)}),Aa=t.computed(()=>r.virtual?Math.min(pe.value,oa.value+Mt.value):pe.value),xt=t.computed(()=>r.virtual?oa.value*r.itemHeight:0),$t=t.computed(()=>{const K=ee.value;return r.virtual?K.slice(oa.value,Aa.value):K});function D1(K){const te=K.target;F.value=te.scrollTop}function E1(K){return K===R.value}function O(K){const te=N.value;if(!te||!r.virtual)return;const ne=K*r.itemHeight,ye=ne+r.itemHeight,Ve=te.scrollTop,ra=te.scrollTop+te.clientHeight;ne<Ve?te.scrollTop=ne:ye>ra&&(te.scrollTop=ye-te.clientHeight)}function ae(K){const te=Math.max(0,pe.value-1);R.value=Math.min(te,Math.max(0,R.value+K)),O(R.value)}function he(){const K=ee.value[R.value];K&&G(K)}const _e=t.computed(()=>r.clearable&&!r.disabled&&b.value.length>0),Pe=t.computed(()=>u.value?"border-red-500 ring-[0.5px] ring-red-500":Q.value?"border-gray-700 ring-[0.5px] ring-gray-700 dark:border-gray-300 dark:ring-gray-300":"");return(K,te)=>t.withDirectives((t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["flex flex-col gap-1 w-full",t.unref(n).class]),"aria-busy":r.skeleton},[r.skeleton?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[i.value?(t.openBlock(),t.createElementBlock("div",OG)):t.createCommentVNode("",!0),te[3]||(te[3]=t.createElementVNode("div",{class:"h-10 w-full rounded-lg bg-gray-200 dark:bg-gray-700 animate-pulse"},null,-1))],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[i.value?(t.openBlock(),t.createBlock(t.unref(La),{key:0,for:d.value,class:"text-sm font-medium"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(i.value)+" ",1),h.value?(t.openBlock(),t.createElementBlock("span",FG,"*")):t.createCommentVNode("",!0)]),_:1},8,["for"])):t.createCommentVNode("",!0),t.createElementVNode("div",{ref_key:"referenceEl",ref:T,class:"relative"},[t.createVNode(t.unref(Ee),{id:d.value,type:"button",variant:"outline",class:t.normalizeClass(["w-full justify-between h-auto min-h-10 px-3 py-2 transition border",["bg-white dark:bg-neutral-900 border-gray-300 dark:border-gray-700 text-foreground dark:text-gray-300",Pe.value]]),disabled:r.disabled,onClick:ve},{default:t.withCtx(()=>[t.createElementVNode("div",RG,[b.value.length?(t.openBlock(),t.createElementBlock("div",NG,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(x.value,(ne,ye)=>(t.openBlock(),t.createBlock(t.unref(_a),{key:`chip-${f(ne,ye)}`,variant:"secondary",class:"gap-1"},{default:t.withCtx(()=>[t.createElementVNode("span",$G,t.toDisplayString(p(ne)),1),r.disabled?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("button",{key:0,class:"ml-1 opacity-70 hover:opacity-100",onClick:t.withModifiers(Ve=>z(ne),["stop"]),"aria-label":"Remove"}," ✕ ",8,UG))]),_:2},1024))),128)),r.maxChips!==null&&b.value.length>r.maxChips?(t.openBlock(),t.createBlock(t.unref(_a),{key:0,variant:"secondary"},{default:t.withCtx(()=>[t.createTextVNode(" +"+t.toDisplayString(b.value.length-(r.maxChips??0)),1)]),_:1})):t.createCommentVNode("",!0)])):(t.openBlock(),t.createElementBlock("div",WG,t.toDisplayString(r.placeholder),1))]),t.createElementVNode("div",GG,[_e.value?(t.openBlock(),t.createElementBlock("button",{key:0,class:"text-muted-foreground hover:text-foreground",onClick:t.withModifiers(W,["stop"]),"aria-label":"Clear"}," ✕ ")):t.createCommentVNode("",!0),t.createVNode(t.unref(St),{class:"h-4 w-4 text-muted-foreground"})])]),_:1},8,["id","disabled","class"]),(t.openBlock(),t.createBlock(t.Teleport,{to:"body"},[Q.value?(t.openBlock(),t.createElementBlock("div",{key:0,ref_key:"floatingEl",ref:H,class:"-mt-1 z-[9999] w-[var(--floating-width)] rounded-lg border shadow-lg overflow-hidden bg-white dark:bg-neutral-900 border-gray-200 dark:border-gray-800",style:t.normalizeStyle(J.value)},[r.searchable&&!U.value?(t.openBlock(),t.createElementBlock("div",KG,[t.createVNode(t.unref(o_),{modelValue:j.value,"onUpdate:modelValue":te[0]||(te[0]=ne=>j.value=ne),placeholder:r.searchPlaceholder,class:"h-10",onKeydown:[te[1]||(te[1]=t.withKeys(t.withModifiers(ne=>ae(1),["prevent"]),["down"])),te[2]||(te[2]=t.withKeys(t.withModifiers(ne=>ae(-1),["prevent"]),["up"])),t.withKeys(t.withModifiers(he,["prevent"]),["enter"]),t.withKeys(t.withModifiers(ue,["prevent"]),["esc"])]},null,8,["modelValue","placeholder","onKeydown"])])):t.createCommentVNode("",!0),t.createElementVNode("div",{ref_key:"listEl",ref:N,class:"relative overflow-auto",style:t.normalizeStyle({height:qe.value+"px"}),onScroll:D1},[U.value?(t.openBlock(),t.createElementBlock("div",XG," All items have been selected ")):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[r.virtual?(t.openBlock(),t.createElementBlock("div",{key:0,style:t.normalizeStyle({height:ot.value+"px"})},null,4)):t.createCommentVNode("",!0),t.createElementVNode("div",{class:t.normalizeClass(r.virtual?"absolute left-0 top-0 w-full":""),style:t.normalizeStyle(r.virtual?{transform:`translateY(${xt.value}px)`}:void 0)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList($t.value,(ne,ye)=>(t.openBlock(),t.createElementBlock("button",{key:String(f(ne,oa.value+ye)),type:"button",class:t.normalizeClass(["w-full px-3 text-left text-sm flex items-center justify-between gap-3",[A(ne)?"cursor-not-allowed opacity-50":"hover:bg-neutral-50 dark:hover:bg-neutral-800/60",E1(oa.value+ye)?"bg-neutral-50 dark:bg-neutral-800/60":"",I(ne)?"font-semibold":"font-normal"]]),style:t.normalizeStyle({height:r.itemHeight+"px"}),disabled:r.disabled||A(ne),onClick:Ve=>G(ne)},[t.createElementVNode("span",YG,t.toDisplayString(p(ne)),1),I(ne)?(t.openBlock(),t.createElementBlock("span",QG,"✓")):t.createCommentVNode("",!0)],14,ZG))),128))],6),pe.value===0?(t.openBlock(),t.createElementBlock("div",JG,[v.value?(t.openBlock(),t.createElementBlock("span",eK,"Loading data…")):(t.openBlock(),t.createElementBlock("span",tK,"Tidak ada data"))])):t.createCommentVNode("",!0)],64))],36)],4)):t.createCommentVNode("",!0)]))],512),u.value?(t.openBlock(),t.createElementBlock("p",aK,t.toDisplayString(r.error),1)):t.createCommentVNode("",!0)],64))],10,jG)),[[t.vShow,s.value]])}}),oK={class:"space-y-4"},rK={key:0,class:"space-y-1"},iK={class:"text-base font-semibold text-gray-800"},sK={class:"text-sm text-gray-400"},lK={class:"flex items-center gap-2 flex-nowrap"},cK=["value","disabled","onKeydown","onInput","onPaste"],r_=t.defineComponent({name:"DCodeOtpInput",__name:"DCodeOtpInput",props:{modelValue:{default:""},totalInput:{default:6},default:{default:""},label:{default:""},endpoint:{},submitFn:{}},emits:["updateOtp","update:modelValue","complete","loading","success","error"],setup(a,{emit:e}){const n=a,o=e,r=t.ref([]),i=t.ref([]),s=t.ref(!1),{DCodeApi:c}=Ke(),d=JI(),h=t.computed(()=>{const w=Number(n.totalInput);return w&&w>0?w:6}),u=()=>{i.value=Array.from({length:h.value},(w,M)=>{var C;return((C=n.default)==null?void 0:C[M])??""}),o("updateOtp",i.value.join(""))};u(),t.watch(()=>[n.totalInput,n.default],()=>u());const p=w=>{w<0||w>=h.value||t.nextTick(()=>{var M;return(M=r.value[w])==null?void 0:M.focus()})},y=w=>w.match(/[a-zA-Z0-9]/)?w.match(/[a-zA-Z0-9]/)[0]:"";async function f(w){var M;if(o("complete",w),n.submitFn){try{s.value=!0,o("loading",!0);const C=await n.submitFn(w);o("success",C)}catch(C){console.error("OTP Submit Error",C),d.error("Submit Failed",(C==null?void 0:C.message)||"Unknown error"),o("error",(C==null?void 0:C.message)||"Submit Failed")}finally{s.value=!1,o("loading",!1)}return}if((M=n.endpoint)!=null&&M.apiUrl){if(typeof c!="function"){o("error","useApi() must expose DCodeApi()");return}try{s.value=!0,o("loading",!0);const C=(n.endpoint.apiMethod||"POST").toUpperCase(),S=n.endpoint.apiUrl,b=await c("","",{otp:w},{_url:S,_method:C,withCredentials:!0}),x=(b==null?void 0:b.data)??b;o("success",x)}catch(C){console.error("OTP Submit Error",C),d.error("Submit Failed",(C==null?void 0:C.message)||"Unknown error"),o("error",(C==null?void 0:C.message)||"Submit Failed")}finally{s.value=!1,o("loading",!1)}}}const k=(w,M)=>{i.value[w]=y(M);const C=i.value.join("");o("updateOtp",C),o("update:modelValue",C),C.length===h.value&&f(C)},m=(w,M)=>{const C=w.key,S=/^\d$/.test(C),b=/^[a-zA-Z]$/.test(C);if(C==="Backspace"){if(w.preventDefault(),i.value[M]){k(M,"");return}M>0&&(k(M-1,""),p(M-1));return}if(C==="ArrowLeft"){w.preventDefault(),p(M-1);return}if(C==="ArrowRight"){w.preventDefault(),p(M+1);return}if(S||b){w.preventDefault(),k(M,C),M<h.value-1&&p(M+1);return}C.length===1&&w.preventDefault()},g=(w,M)=>{const C=w.target,S=C.value??"",b=y(S);C.value=b,k(M,b),b&&M<h.value-1&&p(M+1)},v=(w,M)=>{var I;w.preventDefault();const S=(((I=w.clipboardData)==null?void 0:I.getData("text"))??"").replaceAll(/[^a-zA-Z0-9]/g,"");if(!S)return;let b=M;for(const V of S){if(b>=h.value)break;i.value[b]=V,b++}const x=i.value.join("");o("updateOtp",x),o("update:modelValue",x),x.length===h.value&&f(x),p(Math.min(b,h.value-1))},L=w=>M=>{r.value[w]=(M==null?void 0:M.$el)??M};return(w,M)=>(t.openBlock(),t.createElementBlock("div",oK,[n.label||h.value?(t.openBlock(),t.createElementBlock("div",rK,[t.createElementVNode("h6",iK,t.toDisplayString(n.label||"Masukkan kode keamanan"),1),t.createElementVNode("p",sK," Ketik "+t.toDisplayString(h.value)+" digit kode verifikasi Anda ",1)])):t.createCommentVNode("",!0),t.createElementVNode("div",lK,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,C=>(t.openBlock(),t.createElementBlock("input",{key:C,ref_for:!0,ref:L(C-1),value:i.value[C-1]||"",type:"text",inputmode:"text",maxlength:"1",autocomplete:"one-time-code","aria-label":"`OTP digit ${i}`",placeholder:"*",disabled:s.value,class:t.normalizeClass(["w-12 h-12 flex-none text-center text-xl font-bold rounded-xl border-2 transition-all duration-200 box-border p-0","focus:outline-none focus:scale-105 disabled:opacity-50 disabled:cursor-not-allowed",i.value[C-1]?"border-blue-500 bg-blue-50 text-blue-700 shadow-sm shadow-blue-100":"border-gray-200 bg-gray-50 text-gray-400 focus:border-blue-400 focus:bg-white focus:shadow-md focus:shadow-blue-50"]),onKeydown:S=>m(S,C-1),onInput:S=>g(S,C-1),onPaste:S=>v(S,C-1)},null,42,cK))),128))])]))}}),dK={class:"w-full"},hK={key:0,class:"flex items-center justify-between mb-2"},uK={key:0,class:"text-sm font-medium text-gray-700"},pK={key:1,class:"text-sm text-gray-600"},yK={name:"DCodeProgress"},Fz=t.defineComponent({...yK,name:"DCodeProgress",inheritAttrs:!1,props:{modelValue:{default:0},max:{default:100},label:{default:""},showValue:{type:Boolean,default:!1},color:{default:"blue"},size:{default:"md"},striped:{type:Boolean,default:!1},animated:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(a,{emit:e}){const n=a,o=t.computed(()=>Math.min(n.modelValue/n.max*100,100)),r=t.computed(()=>["w-full rounded-full overflow-hidden",{sm:"h-1",md:"h-2",lg:"h-3"}[n.size],"bg-gray-200"].join(" ")),i=t.computed(()=>{const c={blue:"bg-blue-500",green:"bg-green-500",red:"bg-red-500",yellow:"bg-yellow-500",purple:"bg-purple-500",gray:"bg-gray-500"},d=["h-full transition-all duration-300 ease-out",c[n.color]||c.blue];return n.striped&&d.push("bg-gradient-to-r from-transparent via-white/20 to-transparent"),n.animated&&d.push("animate-pulse"),d.join(" ")}),s=t.computed(()=>`${Math.round(o.value)}%`);return(c,d)=>(t.openBlock(),t.createElementBlock("div",dK,[a.label||a.showValue?(t.openBlock(),t.createElementBlock("div",hK,[a.label?(t.openBlock(),t.createElementBlock("span",uK,t.toDisplayString(a.label),1)):t.createCommentVNode("",!0),a.showValue?(t.openBlock(),t.createElementBlock("span",pK,t.toDisplayString(s.value),1)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0),t.createElementVNode("div",{class:t.normalizeClass(r.value)},[t.createElementVNode("div",{class:t.normalizeClass(i.value),style:t.normalizeStyle({width:`${o.value}%`})},null,6)],2)]))}}),fK={key:0,class:"fixed top-0 left-0 right-0 z-[10000] h-[3px]"},Rz=Xt(t.defineComponent({name:"DCodeProgressBar",__name:"DCodeProgressBar",props:{isApiLoading:{type:Boolean,default:!1},apiProgress:{default:0}},setup(a){return(e,n)=>(t.openBlock(),t.createBlock(t.Transition,{name:"fade"},{default:t.withCtx(()=>[a.isApiLoading?(t.openBlock(),t.createElementBlock("div",fK,[t.createElementVNode("div",{class:"h-full bg-primary-600 shadow-[0_0_15px_rgba(37,99,235,0.8)] transition-all duration-300 ease-out",style:t.normalizeStyle({width:`${a.apiProgress}%`})},null,4)])):t.createCommentVNode("",!0)]),_:1}))}}),[["__scopeId","data-v-85c68054"]]),kK={class:"grid gap-3"},mK={key:0,class:"ml-1 text-destructive"},gK={class:"flex flex-col"},bK={key:0,class:"flex items-center gap-2 text-sm text-gray-500 mb-2"},MK={class:"relative flex-shrink-0 mt-0.5"},xK=["id","name","value","checked","disabled","required","onChange"],wK=["onClick"],vK=["for"],CK={key:0,class:"ml-1 text-red-500"},LK={key:1,class:"flex items-center gap-1 text-sm text-red-500 mt-1"},Nz=t.defineComponent({name:"DCodeRadio",inheritAttrs:!1,__name:"DCodeRadio",props:{modelValue:{default:void 0},label:{default:""},itemTitle:{default:"name"},itemValue:{default:"id"},options:{default:()=>[]},apiUrl:{default:""},apiMethod:{default:"GET"},endpoint:{},dataPath:{default:""},layout:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},error:{default:null},size:{default:"md"},color:{default:"blue"},model:{default:"id"},id:{default:""}},emits:["update:modelValue","change"],setup(a,{emit:e}){t.useAttrs();const{apiUrl:n}=Ke(),o=e,r=a,i=t.ref([]),s=t.ref(!1),c=t.ref(null),d=async()=>{var M,C;const w=((M=r.endpoint)==null?void 0:M.apiUrl)||r.apiUrl;if(w){s.value=!0,c.value=null;try{const S={page:1,perPage:100},b=((C=r.endpoint)==null?void 0:C.apiMethod)||r.apiMethod,x=await n(w,b,S);let I=x;r.dataPath?I=r.dataPath.split(".").reduce((B,A)=>B&&B[A]!=="undefined"?B[A]:void 0,x):typeof x=="object"&&!Array.isArray(x)&&x.data&&(I=x.data),Array.isArray(I)?i.value=I:(console.warn("DCodeRadio: Format response tidak terdeteksi sebagai Array. Gunakan prop 'dataPath'."),c.value="Format respons data tidak valid. Array tidak ditemukan.")}catch(S){console.error("DCodeRadio fetch error:",S),c.value="Gagal memuat data dari endpoint."}finally{s.value=!1}}};t.onMounted(()=>{var w;((w=r.endpoint)!=null&&w.apiUrl||r.apiUrl)&&d()});const h=t.computed(()=>{if(r.options&&r.options.length>0)return r.options;if(i.value.length>0)return i.value;const w=r.itemValue||r.model||"id",M=r.itemTitle||(r.label===""?"name":r.label);return M&&r.label!==""?[{[w]:w,[M]:M}]:[]}),u=w=>{if(typeof w!="object")return w;const M=r.itemValue||r.model||"id";return w[M]},p=w=>{if(typeof w!="object")return String(w);const M=r.itemTitle||"name";return w[M]},y=t.computed(()=>r.model||`radio-group-${Math.random().toString(36).substr(2,9)}`),f=t.computed(()=>!!r.error||!!c.value),k=t.computed(()=>r.error||c.value),m=w=>w==null?r.modelValue===w:String(r.modelValue)===String(w),g=t.computed(()=>({sm:{radio:"w-3 h-3",label:"text-sm",container:"gap-2"},md:{radio:"w-4 h-4",label:"text-base",container:"gap-2"},lg:{radio:"w-5 h-5",label:"text-lg",container:"gap-3"}})[r.size]),v=(w,M)=>{M.target.checked&&(o("update:modelValue",w),o("change",w))},L=w=>{!r.disabled&&!m(w)&&(o("update:modelValue",w),o("change",w))};return(w,M)=>(t.openBlock(),t.createElementBlock("div",kK,[a.label?(t.openBlock(),t.createBlock(La,{key:0,class:"text-sm font-medium"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.label)+" ",1),a.required?(t.openBlock(),t.createElementBlock("span",mK,"*")):t.createCommentVNode("",!0)]),_:1})):t.createCommentVNode("",!0),t.createElementVNode("div",gK,[s.value?(t.openBlock(),t.createElementBlock("div",bK,[t.createVNode(t.unref(kt),{class:"w-4 h-4 animate-spin"}),M[0]||(M[0]=t.createTextVNode(" Sedang memuat opsi... ",-1))])):t.createCommentVNode("",!0),t.createElementVNode("div",{class:t.normalizeClass(["flex",a.layout?"flex-row flex-wrap gap-4":"flex-col gap-3"])},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,(C,S)=>(t.openBlock(),t.createElementBlock("div",{key:S,class:t.normalizeClass(["flex items-start",g.value.container,a.disabled?"opacity-50 cursor-not-allowed":"cursor-pointer"])},[t.createElementVNode("div",MK,[t.createElementVNode("input",{id:a.id?`${a.id}-${S}`:`${y.value}-${S}`,name:y.value,type:"radio",value:u(C),checked:m(u(C)),disabled:a.disabled,required:a.required&&S===0,onChange:b=>v(u(C),b),class:"w-5 h-5 text-blue-600 focus:ring-blue-500 border-gray-300"},null,40,xK)]),t.createElementVNode("div",{class:"flex-1 min-w-0",onClick:b=>L(u(C))},[t.createElementVNode("label",{for:a.id?`${a.id}-${S}`:`${y.value}-${S}`,class:t.normalizeClass([g.value.label,"font-medium cursor-pointer select-none text-foreground dark:text-gray-300",a.disabled?"cursor-not-allowed opacity-50":""])},[t.createTextVNode(t.toDisplayString(p(C))+" ",1),a.required&&h.value.length===1&&a.label?(t.openBlock(),t.createElementBlock("span",CK,"*")):t.createCommentVNode("",!0)],10,vK)],8,wK)],2))),128))],2),f.value&&k.value?(t.openBlock(),t.createElementBlock("div",LK,[t.createVNode(t.unref(It),{class:"w-4 h-4 flex-shrink-0"}),t.createTextVNode(" "+t.toDisplayString(k.value),1)])):t.createCommentVNode("",!0)])]))}}),SK={class:"grid gap-3"},IK={key:0,class:"ml-1 text-destructive"},_K={class:"flex flex-col"},AK={key:0,class:"flex items-center gap-2 text-sm text-gray-500 dark:text-neutral-400 mb-2"},BK=["onClick"],VK=["id","name","value","checked","disabled","required","onChange"],zK={key:1,class:"w-6 h-6",fill:"currentColor",viewBox:"0 0 20 20"},qK=["for"],PK={key:0,class:"ml-1 text-red-500"},DK={key:1,class:"flex items-center gap-1 text-sm text-red-500 mt-2"},$z=t.defineComponent({name:"DCodeRadioCustom",inheritAttrs:!1,__name:"DCodeRadioCustom",props:{modelValue:{default:void 0},icon:{},itemTitle:{default:"name"},itemValue:{default:"id"},label:{default:""},options:{default:()=>[]},apiUrl:{default:""},apiMethod:{default:"GET"},endpoint:{},dataPath:{default:""},layout:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},error:{default:null},size:{default:"md"},color:{default:"blue"},model:{default:"id"},id:{default:""}},emits:["update:modelValue","change"],setup(a,{emit:e}){t.useAttrs();const{apiUrl:n}=Ke(),o=e,r=a,i=t.ref(r.modelValue??void 0);t.watch(()=>r.modelValue,I=>{i.value=I},{immediate:!0});const s=t.ref([]),c=t.ref(!1),d=t.ref(null),h=async()=>{var V,B;const I=((V=r.endpoint)==null?void 0:V.apiUrl)||r.apiUrl;if(I){c.value=!0,d.value=null;try{const A={page:1,perPage:100},P=((B=r.endpoint)==null?void 0:B.apiMethod)||r.apiMethod,D=await n(I,P,A);let U=D;r.dataPath?U=r.dataPath.split(".").reduce((H,N)=>H&&H[N]!=="undefined"?H[N]:void 0,D):typeof D=="object"&&!Array.isArray(D)&&D.data&&(U=D.data),Array.isArray(U)?s.value=U:(console.warn("DCodeRadioCustom: Format response tidak terdeteksi sebagai Array. Gunakan prop 'dataPath'."),d.value="Format respons data tidak valid. Array tidak ditemukan.")}catch(A){console.error("DCodeRadioCustom fetch error:",A),d.value="Gagal memuat data dari endpoint."}finally{c.value=!1}}},u=t.ref(!1);let p=null;const y=()=>{typeof document<"u"&&(u.value=document.documentElement.classList.contains("dark")||document.body.classList.contains("dark"))};t.onMounted(()=>{var I;((I=r.endpoint)!=null&&I.apiUrl||r.apiUrl)&&h(),y(),typeof document<"u"&&(p=new MutationObserver(y),p.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),p.observe(document.body,{attributes:!0,attributeFilter:["class"]}))}),t.onBeforeUnmount(()=>{p&&p.disconnect()});const f=t.computed(()=>{if(r.options&&r.options.length>0)return r.options;if(s.value.length>0)return s.value;const I=r.itemValue||r.model||"id",V=r.itemTitle||(r.label===""?"name":r.label);return V&&r.label!==""?[{[I]:I,[V]:V}]:[]}),k=I=>{if(typeof I!="object")return I;const V=r.itemValue||r.model||"id";return I[V]},m=I=>{if(typeof I!="object")return String(I);const V=r.itemTitle||"name";return I[V]},g=Math.random().toString(36).slice(2,7),v=t.computed(()=>r.id?`radio-custom-${r.id}`:`radio-custom-${r.model}-${g}`),L=t.computed(()=>!!r.error||!!d.value),w=t.computed(()=>r.error||d.value),M=I=>{const V=i.value;return I==null?V===I:String(V)===String(I)},C=t.computed(()=>({sm:{radio:"w-3 h-3",label:"text-sm",container:"gap-2"},md:{radio:"w-4 h-4",label:"text-base",container:"gap-2"},lg:{radio:"w-5 h-5",label:"text-lg",container:"gap-3"}})[r.size]),S=t.computed(()=>r.icon&&Gt[r.icon]||null),b=(I,V)=>{V.target.checked&&(i.value=I,o("update:modelValue",I),o("change",I))},x=I=>{r.disabled||M(I)||(i.value=I,o("update:modelValue",I),o("change",I))};return(I,V)=>(t.openBlock(),t.createElementBlock("div",SK,[a.label?(t.openBlock(),t.createBlock(La,{key:0,class:"text-sm font-medium"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.label)+" ",1),a.required?(t.openBlock(),t.createElementBlock("span",IK,"*")):t.createCommentVNode("",!0)]),_:1})):t.createCommentVNode("",!0),t.createElementVNode("div",_K,[c.value?(t.openBlock(),t.createElementBlock("div",AK,[t.createVNode(t.unref(kt),{class:"w-4 h-4 animate-spin"}),V[0]||(V[0]=t.createTextVNode(" Sedang memuat opsi... ",-1))])):t.createCommentVNode("",!0),t.createElementVNode("div",{class:t.normalizeClass(["grid",a.layout?"grid-cols-2 sm:grid-cols-3":"grid-cols-1","gap-3"])},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,(B,A)=>(t.openBlock(),t.createElementBlock("div",{key:A,class:t.normalizeClass(["relative flex flex-col items-center justify-center gap-2 p-4 rounded-xl border-2 transition-all duration-200",M(k(B))?u.value?"border-primary-500 bg-primary-500/10 shadow-none":"border-primary-500 bg-primary-50 shadow-md shadow-primary-100":u.value?"border-neutral-700 bg-neutral-800 hover:border-neutral-600":"border-gray-200 bg-white hover:border-gray-300 hover:shadow-sm",a.disabled?"opacity-50 cursor-not-allowed":"cursor-pointer"]),onClick:P=>!a.disabled&&x(k(B))},[t.createElementVNode("input",{id:a.id?`${a.id}-${A}`:`${v.value}-${A}`,name:v.value,type:"radio",value:k(B),checked:M(k(B)),disabled:a.disabled,required:a.required&&A===0,onChange:P=>b(k(B),P),class:"sr-only",tabindex:"-1"},null,40,VK),t.createElementVNode("div",{class:t.normalizeClass(["w-10 h-10 rounded-full flex items-center justify-center transition-all duration-200",M(k(B))?u.value?"bg-primary-500/25 text-primary-400":"bg-primary-100 text-primary-600":u.value?"bg-neutral-700 text-neutral-500":"bg-gray-100 text-gray-400"])},[S.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(S.value),{key:0,class:"w-6 h-6"})):(t.openBlock(),t.createElementBlock("svg",zK,[...V[1]||(V[1]=[t.createElementVNode("circle",{cx:"10",cy:"10",r:"6"},null,-1)])]))],2),t.createElementVNode("label",{for:a.id?`${a.id}-${A}`:`${v.value}-${A}`,class:t.normalizeClass([C.value.label,"font-medium text-center leading-tight select-none transition-colors duration-200",M(k(B))?u.value?"text-primary-400":"text-primary-700":u.value?"text-neutral-300":"text-gray-700",a.disabled?"cursor-not-allowed":"cursor-pointer"])},[t.createTextVNode(t.toDisplayString(m(B))+" ",1),a.required&&f.value.length===1&&a.label?(t.openBlock(),t.createElementBlock("span",PK,"*")):t.createCommentVNode("",!0)],10,qK)],10,BK))),128))],2),L.value&&w.value?(t.openBlock(),t.createElementBlock("div",DK,[t.createVNode(t.unref(It),{class:"w-4 h-4 flex-shrink-0"}),t.createTextVNode(" "+t.toDisplayString(w.value),1)])):t.createCommentVNode("",!0)])]))}}),EK={key:0,class:"ml-1 text-destructive"},TK={class:"relative w-full"},HK={key:0,class:"mb-2 flex items-center justify-between"},jK={class:"text-sm text-muted-foreground"},OK={class:"text-sm font-medium text-foreground"},FK={class:"text-sm text-muted-foreground"},RK={class:"relative"},NK=["id","value","min","max","step","disabled","placeholder"],$K={key:1,class:"relative mt-2"},UK={class:"text-xs text-muted-foreground mt-1"},WK={key:1,class:"flex items-center gap-1 text-sm text-destructive"},GK={name:"DCodeSlider"},i_=t.defineComponent({...GK,name:"DCodeSlider",inheritAttrs:!1,props:{modelValue:{default:0},min:{default:0},max:{default:100},step:{default:1},disabled:{type:Boolean,default:!1},label:{default:""},placeholder:{default:""},required:{type:Boolean,default:!1},error:{default:null},showValue:{type:Boolean,default:!0},valuePrefix:{default:""},valueSuffix:{default:""},marks:{default:()=>[]},color:{default:"blue"},size:{default:"md"}},emits:["update:modelValue","change","input"],setup(a,{emit:e}){const n=t.useAttrs(),o=e,r=a,i=t.ref(),s=t.ref(!1),c=t.computed(()=>!!r.error),d=t.computed(()=>`slider-${Math.random().toString(36).substr(2,9)}`),h=t.computed(()=>(r.label||n.label)??void 0),u=t.computed(()=>!0),p=t.computed(()=>{const C={sm:"h-2",md:"h-2.5",lg:"h-3"},S={blue:"accent-blue-500",green:"accent-green-500",red:"accent-red-500",yellow:"accent-yellow-500",purple:"accent-purple-500",gray:"accent-gray-500"};return["w-full appearance-none bg-transparent rounded-lg outline-none transition-all cursor-pointer relative z-10","disabled:opacity-50 disabled:cursor-not-allowed",C[r.size],S[r.color]||S.blue,c.value?"accent-red-500":"",n.class].filter(Boolean).join(" ")}),y=t.computed(()=>["appearance-none bg-white border-2 border-current rounded-full cursor-pointer transition-all","hover:scale-110 focus:scale-110","shadow-md hover:shadow-lg focus:shadow-lg","focus:outline-none focus:ring-2 focus:ring-offset-2",{sm:"w-4 h-4",md:"w-5 h-5",lg:"w-6 h-6"}[r.size],r.color==="blue"?"focus:ring-blue-500":r.color==="green"?"focus:ring-green-500":r.color==="red"?"focus:ring-red-500":r.color==="yellow"?"focus:ring-yellow-500":r.color==="purple"?"focus:ring-purple-500":"focus:ring-gray-500"].join(" ")),f=t.computed(()=>`${r.valuePrefix}${r.modelValue}${r.valueSuffix}`),k=t.computed(()=>{const C=r.max-r.min;return(r.modelValue-r.min)/C*100}),m=C=>{const S=C.target,b=parseFloat(S.value);o("update:modelValue",b),o("input",b)},g=C=>{const S=C.target,b=parseFloat(S.value);o("change",b)},v=()=>{s.value=!0},L=()=>{s.value=!1},w=C=>{const S=r.max-r.min;return(C-r.min)/S*100},M=t.computed(()=>{const C={sm:16,md:20,lg:24};return`
|
|
8564
|
+
`.trim();let r=document.getElementById(e);r||(r=document.createElement("style"),r.id=e,document.head.appendChild(r)),r.textContent=o}function CW(a,e=Ez){t.watch(a,n=>vW(n,e),{immediate:!0})}const LW={key:0,class:"h-4 w-32 rounded bg-gray-200 dark:bg-gray-700 animate-pulse"},SW={key:0,class:"ml-1 text-destructive"},IW=["disabled","onClick"],_W={class:"flex-shrink-0 px-2 text-sm text-muted-foreground select-none whitespace-nowrap"},AW=["id","value","placeholder","disabled","onClick","onFocus","onBlur","onInput","onKeydown","onKeypress","onPaste"],BW={class:"h-full p-2 flex flex-col gap-3 w-32"},VW={class:"flex items-center justify-end gap-2 w-full p-2"},zW={key:1,class:"text-xs text-destructive"},GI=t.defineComponent({name:"DCodeDatePicker",inheritAttrs:!1,__name:"DCodeDatePicker",props:{modelValue:{},range:{type:Boolean,default:!1},autoRangeDays:{default:null},disablePast:{type:Boolean,default:!1},maxDaysAhead:{default:null},placeholder:{default:"Pilih tanggal"},label:{},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},displayFormat:{default:"dd/MM/yyyy"},modelType:{default:"yyyy-MM-dd"},locale:{default:"en"},placement:{default:"bottom-start"},prependInner:{default:void 0},error:{default:null},selectLabel:{default:"Select"},cancelLabel:{default:"Cancel"},tone:{default:"primary"},skeleton:{type:Boolean,default:!1}},emits:["update:modelValue","change","clear"],setup(a,{emit:e}){const n=t.useAttrs(),o=a,r=e,i=Math.random().toString(36).slice(2,7),s=t.computed(()=>`dcode-datepicker-${n.id||o.label||"date-picker"}-${i}`),c=t.computed(()=>{const P=n.required,D=n["aria-required"];return P===""||P===!0||P==="true"||D==="true"||D===!0}),d=t.computed(()=>!!o.error),h=t.computed({get:()=>o.modelValue,set:P=>{r("update:modelValue",P),r("change",P)}}),u=t.computed(()=>o.locale==="en"?Iz:wW),p=t.computed(()=>o.range?2:!1),y=t.computed(()=>{if(!o.range)return!1;const P={partialRange:!1};return o.autoRangeDays&&o.autoRangeDays>0&&(P.maxRange=o.autoRangeDays,P.autoRange=o.autoRangeDays),P}),f=P=>{const D=new Date(P);return D.setHours(0,0,0,0),D},k=P=>{const D=new Date(P);return D.setHours(23,59,59,999),D},m=(P,D)=>{const U=new Date(P);return U.setDate(U.getDate()+D),U},g=t.computed(()=>{if(o.disablePast)return f(new Date)}),v=t.computed(()=>{if(o.maxDaysAhead&&o.maxDaysAhead>0)return k(m(new Date,o.maxDaysAhead))}),L=t.ref(null),w=t.ref(null),M=P=>{w.value={month:P.month,year:P.year}},C=t.ref(!1);let S=null;t.onMounted(()=>{const P=document.documentElement,D=()=>C.value=P.classList.contains("dark");D(),S=new MutationObserver(D),S.observe(P,{attributes:!0,attributeFilter:["class"]})}),t.onBeforeUnmount(()=>{S==null||S.disconnect(),S=null}),CW(t.toRef(o,"tone"));const b=P=>{const D=new Date(P),U=D.getDay(),T=D.getDate()-U+(U===0?-6:1);return D.setDate(T),f(D)},x=P=>{const D=b(P);return D.setDate(D.getDate()+6),k(D)},I=P=>{const D=new Date(P);return D.setDate(1),f(D)},V=P=>{const D=new Date(P);return D.setMonth(D.getMonth()+1),D.setDate(0),k(D)},B=t.computed(()=>{if(!o.range)return[];const P=new Date,D=f(P),U=b(P),T=x(P),H=I(P),N=V(P),Q=(j,F)=>{let R=j;o.disablePast&&R<D&&(R=D);let Z=F;if(o.autoRangeDays&&o.autoRangeDays>0){const J=k(m(R,o.autoRangeDays-1));Z>J&&(Z=J)}return Z<R&&(Z=k(new Date(R))),[R,Z]};return[{label:o.locale==="id"?"Minggu Ini":"This Week",range:Q(U,T)},{label:o.locale==="id"?"Bulan Ini":"This Month",range:Q(H,N)}]}),A=async P=>{var F,R;const D=o.modelType||"yyyy-MM-dd";if(P.length===0){h.value=null;return}if(P.length<2)return;const U=Pz(P[0],D),T=Pz(P[1],D);h.value=[U,T],await t.nextTick();const H=P[0],N=H.getMonth(),Q=H.getFullYear();w.value&&w.value.month===N&&w.value.year===Q||(F=L.value)==null||F.setMonthYear({month:N,year:Q}),(R=L.value)==null||R.openMenu()};return(P,D)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["flex flex-col gap-1 w-full",t.unref(n).class])},[a.skeleton?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[a.label?(t.openBlock(),t.createElementBlock("div",LW)):t.createCommentVNode("",!0),D[2]||(D[2]=t.createElementVNode("div",{class:"h-10 w-full rounded-lg bg-gray-200 dark:bg-gray-700 animate-pulse"},null,-1))],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[a.label?(t.openBlock(),t.createBlock(t.unref(La),{key:0,for:s.value,class:"text-sm font-medium"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.label)+" ",1),c.value?(t.openBlock(),t.createElementBlock("span",SW,"*")):t.createCommentVNode("",!0)]),_:1},8,["for"])):t.createCommentVNode("",!0),t.createVNode(t.unref(Je.VueDatePicker),{ref_key:"dpRef",ref:L,modelValue:h.value,"onUpdate:modelValue":D[1]||(D[1]=U=>h.value=U),dark:C.value,range:y.value,"multi-calendars":p.value,disabled:a.disabled,clearable:!1,"text-input":"","enable-time-picker":!1,"time-config":{enableTimePicker:!1},"auto-apply":!1,"action-row":{showPreview:!0,showNow:!1},locale:u.value,"model-type":a.modelType,formats:{input:a.displayFormat},"min-date":g.value,"max-date":v.value,"preset-ranges":B.value,floating:{placement:a.placement,offset:8,arrow:!1,flip:!1,shift:!0},teleport:!0,"menu-class-name":"dcode-datepicker-menu","calendar-class-name":"dcode-datepicker-calendar",onUpdateMonthYear:M},t.createSlots({"dp-input":t.withCtx(({value:U,onInput:T,onEnter:H,onTab:N,onBlur:Q,onFocus:j,onKeypress:F,onPaste:R,toggleMenu:Z})=>[t.createElementVNode("div",{class:t.normalizeClass(["flex items-center w-full h-10 rounded-lg border bg-white dark:bg-neutral-900 border-gray-300 dark:border-gray-700 overflow-hidden",[d.value?"border-destructive":"",a.disabled?"opacity-50 cursor-not-allowed":""]])},[t.createElementVNode("button",{type:"button",tabindex:"-1",disabled:a.disabled,class:"flex-shrink-0 flex items-center justify-center w-10 h-full text-muted-foreground hover:text-foreground transition-colors focus:outline-none",onClick:J=>Z()},[t.createVNode(t.unref(Hs),{class:"w-4 h-4 pointer-events-none"})],8,IW),D[4]||(D[4]=t.createElementVNode("span",{class:"w-px h-5 bg-gray-200 dark:bg-gray-700 flex-shrink-0"},null,-1)),a.prependInner?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createElementVNode("span",_W,t.toDisplayString(a.prependInner),1),D[3]||(D[3]=t.createElementVNode("span",{class:"w-px h-5 bg-gray-200 dark:bg-gray-700 flex-shrink-0"},null,-1))],64)):t.createCommentVNode("",!0),t.createElementVNode("input",{id:s.value,value:U,placeholder:a.placeholder,disabled:a.disabled,autocomplete:"off",readonly:"",class:t.normalizeClass(["flex-1 min-w-0 px-3 h-full bg-transparent text-sm text-foreground dark:text-gray-300 placeholder:text-muted-foreground outline-none",a.disabled?"cursor-not-allowed":"cursor-pointer"]),onClick:J=>Z(),onFocus:J=>j(),onBlur:J=>Q(),onInput:J=>T(J),onKeydown:[t.withKeys(J=>H(J),["enter"]),t.withKeys(J=>N(J),["tab"])],onKeypress:J=>F(J),onPaste:J=>R()},null,42,AW)],2)]),"action-buttons":t.withCtx(({selectDate:U,selectionDisabled:T})=>[t.createElementVNode("div",VW,[t.createVNode(t.unref(Ee),{type:"button",variant:"outline",onClick:D[0]||(D[0]=H=>{var N;return(N=L.value)==null?void 0:N.closeMenu()})},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.cancelLabel),1)]),_:1}),t.createVNode(t.unref(Ee),{type:"button",variant:"default",disabled:T,onClick:H=>U()},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.selectLabel),1)]),_:1},8,["disabled","onClick"])])]),_:2},[a.range?{name:"left-sidebar",fn:t.withCtx(()=>[t.createElementVNode("div",BW,[B.value.length?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(B.value,U=>(t.openBlock(),t.createBlock(t.unref(Ee),{key:U.label,type:"button",variant:"default",class:"w-full",onClick:T=>A(U.range)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(U.label),1)]),_:2},1032,["onClick"]))),128)):t.createCommentVNode("",!0)])]),key:"0"}:void 0]),1032,["modelValue","dark","range","multi-calendars","disabled","locale","model-type","formats","min-date","max-date","preset-ranges","floating"]),d.value?(t.openBlock(),t.createElementBlock("p",zW,t.toDisplayString(o.error),1)):t.createCommentVNode("",!0)],64))],2))}}),qW=t.defineComponent({__name:"Dialog",props:{open:{type:Boolean},defaultOpen:{type:Boolean},modal:{type:Boolean}},emits:["update:open"],setup(a,{emit:e}){const r=mt(a,e);return(i,s)=>(t.openBlock(),t.createBlock(t.unref(VA),t.normalizeProps(t.guardReactiveProps(t.unref(r))),{default:t.withCtx(()=>[t.renderSlot(i.$slots,"default")]),_:3},16))}}),PW=t.defineComponent({inheritAttrs:!1,__name:"DialogContent",props:{forceMount:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(a,{emit:e}){const n=a,o=e,r=De(n,"class"),i=mt(r,o);return(s,c)=>(t.openBlock(),t.createBlock(t.unref($A),null,{default:t.withCtx(()=>[t.createVNode(t.unref(NA),{class:"fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0"}),t.createVNode(t.unref(FA),t.mergeProps({...t.unref(i),...s.$attrs},{class:t.unref(be)("fixed left-1/2 top-1/2 z-50 grid w-full max-w-lg -translate-x-1/2 -translate-y-1/2 gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",n.class)}),{default:t.withCtx(()=>[t.renderSlot(s.$slots,"default"),t.createVNode(t.unref(zA),{class:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground"},{default:t.withCtx(()=>[t.createVNode(t.unref(it),{class:"w-4 h-4"}),c[0]||(c[0]=t.createElementVNode("span",{class:"sr-only"},"Close",-1))]),_:1})]),_:3},16,["class"])]),_:3}))}}),DW=t.defineComponent({__name:"DialogDescription",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(RA),t.mergeProps(t.unref(o),{class:t.unref(be)("text-sm text-muted-foreground",e.class)}),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default")]),_:3},16,["class"]))}}),EW=t.defineComponent({__name:"DialogTitle",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(UA),t.mergeProps(t.unref(o),{class:t.unref(be)("text-lg font-medium leading-none tracking-tight",e.class)}),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default")]),_:3},16,["class"]))}}),TW={class:"flex items-center gap-3"},HW={class:"flex justify-end gap-3"},lS=t.defineComponent({name:"DCodeDialog",inheritAttrs:!1,__name:"DCodeDialog",props:{modelValue:{type:Boolean,default:!1},title:{default:""},icon:{default:""},maxWidth:{default:500},persistent:{type:Boolean,default:!0},contentClass:{default:"p-5"},contentStyle:{default:()=>({})}},emits:["update:modelValue"],setup(a,{emit:e}){const n=a,o=e,r=t.useAttrs(),i=t.computed(()=>{const{style:h,...u}=r;return u}),s=t.computed(()=>({maxWidth:typeof n.maxWidth=="number"?`${n.maxWidth}px`:n.maxWidth,width:"100%"})),c=t.computed(()=>n.icon?Gt[n.icon]??null:null),d=h=>{o("update:modelValue",h)};return(h,u)=>(t.openBlock(),t.createBlock(t.unref(qW),{open:a.modelValue,"onUpdate:open":d},{default:t.withCtx(()=>[t.createVNode(t.unref(PW),t.mergeProps(i.value,{style:s.value,class:"p-0 overflow-hidden rounded-xl",onInteractOutside:u[0]||(u[0]=p=>a.persistent?p.preventDefault():null),onEscapeKeyDown:u[1]||(u[1]=p=>a.persistent?p.preventDefault():null)}),{default:t.withCtx(()=>[t.createVNode(rI,{padding:a.contentClass,border:"",shadow:"",class:"w-full !rounded-xl !border-0",level:1},t.createSlots({header:t.withCtx(()=>[t.createElementVNode("div",TW,[c.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(c.value),{key:0,class:"h-5 w-5"})):t.createCommentVNode("",!0),t.createVNode(t.unref(EW),{class:"text-base font-medium"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.title),1)]),_:1}),t.createVNode(t.unref(DW),{class:"hidden"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.title||"Dialog Content"),1)]),_:1})])]),actions:t.withCtx(()=>[t.renderSlot(h.$slots,"header-append")]),default:t.withCtx(()=>[t.createElementVNode("div",{style:t.normalizeStyle(a.contentStyle)},[t.renderSlot(h.$slots,"default")],4)]),_:2},[h.$slots.actions?{name:"footer",fn:t.withCtx(()=>[t.createElementVNode("div",HW,[t.renderSlot(h.$slots,"actions")])]),key:"0"}:void 0]),1032,["padding"])]),_:3},16,["style"])]),_:3},8,["open"]))}}),Tz=t.defineComponent({name:"DCodeDialogCloseBtn",__name:"DCodeDialogCloseBtn",props:{icon:{default:"X"},iconSize:{default:22}},setup(a){const e=a,n=t.computed(()=>Gt[e.icon]??it);return(o,r)=>(t.openBlock(),t.createBlock(t.unref(Ee),{type:"button",variant:"secondary",size:"icon",class:"rounded-full shadow-sm"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(n.value),{size:Number(a.iconSize)},null,8,["size"]))]),_:1}))}}),jW=t.defineComponent({__name:"Alert",props:{class:{type:[Boolean,null,String,Object,Array]},variant:{}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(be)(t.unref(FW)({variant:a.variant}),e.class)),role:"alert"},[t.renderSlot(n.$slots,"default")],2))}}),OW=t.defineComponent({__name:"AlertDescription",props:{class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(be)("text-sm [&_p]:leading-relaxed",e.class))},[t.renderSlot(n.$slots,"default")],2))}}),FW=i1("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),_a=t.defineComponent({__name:"Badge",props:{variant:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(be)(t.unref(RW)({variant:a.variant}),e.class))},[t.renderSlot(n.$slots,"default")],2))}}),RW=i1("inline-flex gap-1 items-center rounded-full border px-2.5 py-0.5 text-xs font-medium transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}}),KI=t.defineComponent({__name:"Card",props:{class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(be)("rounded-xl border bg-card text-card-foreground shadow",e.class))},[t.renderSlot(n.$slots,"default")],2))}}),XI=t.defineComponent({__name:"CardContent",props:{class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(be)("p-6 pt-0",e.class))},[t.renderSlot(n.$slots,"default")],2))}}),ZI=t.defineComponent({__name:"CardHeader",props:{class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(be)("flex flex-col gap-y-1.5 p-6",e.class))},[t.renderSlot(n.$slots,"default")],2))}}),YI=t.defineComponent({__name:"CardTitle",props:{class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createElementBlock("h3",{class:t.normalizeClass(t.unref(be)("font-medium leading-none tracking-tight",e.class))},[t.renderSlot(n.$slots,"default")],2))}}),NW={class:"h-full w-full p-6 flex flex-col items-center justify-center text-center gap-2"},$W={class:"flex flex-wrap items-center justify-center gap-2"},UW=["accept","multiple"],cS=Xt(t.defineComponent({name:"DCodeDropzone",__name:"DCodeDropzone",props:{label:{default:"Upload File"},hint:{default:"Drag & drop file di sini atau klik area ini"},accept:{default:"*/*"},maxSizeMb:{default:2},mode:{default:"single"},disabled:{type:Boolean,default:!1},showSelected:{type:Boolean,default:!0},error:{default:null}},emits:["picked","picked:multiple","error"],setup(a,{emit:e}){const n=a,o=e,r=t.ref(null),i=t.ref(!1),s=t.ref(null),c=t.ref(null),d=t.ref(null);t.computed(()=>n.accept||"file/*");const h=t.computed(()=>n.error??s.value);function u(){var b;n.disabled||(b=r.value)==null||b.click()}function p(b){const x=b/1024,I=x/1024;return I>=1?`${I.toFixed(2)} MB`:x>=1?`${x.toFixed(1)} KB`:`${b} B`}function y(b){var I;if(!b)return"File tidak valid";if((I=n.accept)!=null&&I.includes("image/")&&!b.type.startsWith("image/"))return"Hanya file gambar yang diizinkan";const x=(n.maxSizeMb??2)*1024*1024;return b.size>x?`Ukuran file terlalu besar. Maks ${n.maxSizeMb}MB`:null}function f(b){c.value=b.name,d.value=b.size}function k(b){if(s.value=null,!b.length)return;if(n.mode==="single"){const I=b[0],V=y(I);if(V){s.value=V,o("error",V);return}n.showSelected&&f(I),o("picked",I);return}const x=[];for(const I of b){const V=y(I);if(V){s.value=V,o("error",V);return}x.push(I)}x.length&&(n.showSelected&&f(x[0]),o("picked:multiple",x))}function m(b){const x=b.target,I=Array.from(x.files??[]);k(I),x.value=""}function g(){n.disabled||(i.value=!0)}function v(){n.disabled||(i.value=!0)}function L(){i.value=!1}function w(b){var V,B;if(n.disabled)return;i.value=!1;const x=Array.from(((V=b.dataTransfer)==null?void 0:V.files)??[]),I=(B=n.accept)!=null&&B.includes("image/")?x.filter(A=>A.type.startsWith("image/")):x;k(I)}const M=t.computed(()=>(n.accept||"file/*").split(",").map(b=>b.trim()).filter(Boolean).map(b=>b==="image/*"?"IMAGE":b.replace(/^image\//,"").replace(/^\./,"")).join(", "));t.computed(()=>`${n.maxSizeMb??0}MB`);const C=t.ref(!1),S=t.computed(()=>{if(n.disabled||!C.value)return{};const b=document.documentElement.classList.contains("dark")||document.body.classList.contains("dark");return{borderColor:b?"hsl(var(--primary) / 0.5)":"hsl(var(--primary) / 0.6)",backgroundColor:b?"hsl(var(--primary) / 0.1)":"hsl(var(--primary) / 0.05)"}});return(b,x)=>(t.openBlock(),t.createBlock(t.unref(KI),{class:t.normalizeClass([a.disabled?"opacity-60":"","dark:bg-neutral-900 dark:border-neutral-800"])},{default:t.withCtx(()=>[t.createVNode(t.unref(ZI),{class:"pb-2"},{default:t.withCtx(()=>[t.createVNode(t.unref(YI),{class:"text-sm font-semibold dark:text-neutral-100"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.label),1)]),_:1})]),_:1}),t.createVNode(t.unref(XI),{class:"pt-2"},{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(["d-dropzone-area flex justify-center items-center rounded-xl border-2 border-dashed transition cursor-pointer select-none",[i.value?"is-dragging border-primary bg-primary/10 dark:bg-primary/20 -translate-y-[1px]":"border-border dark:border-neutral-700 bg-muted/30 dark:bg-neutral-800/50",a.disabled?"is-disabled":""]]),style:t.normalizeStyle([{minHeight:"190px"},S.value]),onClick:u,onDragenter:t.withModifiers(g,["prevent"]),onDragover:t.withModifiers(v,["prevent"]),onDragleave:t.withModifiers(L,["prevent"]),onDrop:t.withModifiers(w,["prevent"]),onMouseenter:x[0]||(x[0]=I=>C.value=!0),onMouseleave:x[1]||(x[1]=I=>C.value=!1)},[t.createElementVNode("div",NW,[x[2]||(x[2]=t.createElementVNode("div",{class:"text-sm font-medium dark:text-neutral-200"},"Drag & drop file di sini",-1)),x[3]||(x[3]=t.createElementVNode("div",{class:"text-xs text-muted-foreground dark:text-neutral-400"},"atau klik area ini untuk memilih file",-1)),t.createElementVNode("div",$W,[t.createVNode(t.unref(_a),{variant:"secondary",class:"text-[11px] dark:bg-neutral-700 dark:text-neutral-300"},{default:t.withCtx(()=>[t.createTextVNode(" Allowed: "+t.toDisplayString(M.value),1)]),_:1}),t.createVNode(t.unref(_a),{variant:"secondary",class:"text-[11px] dark:bg-neutral-700 dark:text-neutral-300"},{default:t.withCtx(()=>[t.createTextVNode(" Max: "+t.toDisplayString(n.maxSizeMb)+"MB ",1)]),_:1})]),a.showSelected&&c.value?(t.openBlock(),t.createBlock(t.unref(_a),{key:0,variant:"secondary",class:"mt-2 dark:bg-neutral-700 dark:text-neutral-300"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(c.value)+" • "+t.toDisplayString(d.value?p(d.value):""),1)]),_:1})):t.createCommentVNode("",!0)]),t.createElementVNode("input",{ref_key:"fileInputEl",ref:r,type:"file",class:"hidden",accept:a.accept,multiple:a.mode==="multiple",onChange:m},null,40,UW)],38),h.value?(t.openBlock(),t.createBlock(t.unref(jW),{key:0,variant:"destructive",class:"mt-3"},{default:t.withCtx(()=>[t.createVNode(t.unref(OW),{class:"text-sm"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(h.value),1)]),_:1})]),_:1})):t.createCommentVNode("",!0)]),_:1})]),_:1},8,["class"]))}}),[["__scopeId","data-v-02ca61c0"]]),WW={key:0,class:"text-xs text-muted-foreground dark:text-neutral-400"},GW=["src"],KW={key:1,class:"h-full w-full flex flex-col items-center justify-center text-muted-foreground dark:text-neutral-400 gap-2 p-4 text-center"},XW={class:"space-y-0.5"},ZW={class:"text-sm font-medium truncate max-w-[180px] dark:text-neutral-200"},YW={class:"text-xs opacity-70"},QW=["disabled"],JW={key:1},eG=["disabled"],tG={class:"text-[11px] text-foreground/90 dark:text-neutral-200 space-y-1 whitespace-nowrap"},aG={class:"flex gap-2"},nG={class:"font-medium truncate"},oG={class:"flex gap-2"},rG={class:"font-medium"},iG={class:"flex gap-2"},sG={class:"font-medium truncate"},QI=Xt(t.defineComponent({name:"DCodeFileResult",__name:"DCodeFileResult",props:{file:{},title:{default:"File Terpilih"},description:{default:""},disabled:{type:Boolean,default:!1},previewHeight:{default:190},previewWidth:{default:220},showEdit:{type:Boolean,default:!0},showReplace:{type:Boolean,default:!0},showRemove:{type:Boolean,default:!0},forceFileIcon:{type:Boolean,default:!1}},emits:["edit","replace","remove"],setup(a,{emit:e}){const n=a,o=e,r=t.ref(null),i=t.computed(()=>n.forceFileIcon||!n.file?!1:(n.file.type||"").startsWith("image/"));t.watch(()=>n.file,f=>{r.value&&URL.revokeObjectURL(r.value),r.value=f?URL.createObjectURL(f):null},{immediate:!0}),t.onBeforeUnmount(()=>{r.value&&URL.revokeObjectURL(r.value),u&&u.disconnect()});function s(f){const k=f/1024,m=k/1024;return m>=1?`${m.toFixed(2)} MB`:k>=1?`${k.toFixed(1)} KB`:`${f} B`}const c=t.computed(()=>n.file?{name:n.file.name,size:s(n.file.size),type:n.file.type||"unknown"}:null),d=t.ref(!1),h=t.ref(!1);let u=null;const p=()=>{typeof document<"u"&&(h.value=document.documentElement.classList.contains("dark")||document.body.classList.contains("dark"))};t.onMounted(()=>{p(),typeof document<"u"&&(u=new MutationObserver(p),u.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),u.observe(document.body,{attributes:!0,attributeFilter:["class"]}))});const y=t.computed(()=>n.disabled||!d.value?{}:{borderColor:h.value?"hsl(var(--primary) / 0.4)":"hsl(var(--primary) / 0.5)",backgroundColor:h.value?"hsl(var(--primary) / 0.1)":"hsl(var(--primary) / 0.05)"});return(f,k)=>a.file?(t.openBlock(),t.createBlock(KI,{key:0,class:t.normalizeClass([a.disabled?"opacity-60 pointer-events-none":"","dark:bg-neutral-900 dark:border-neutral-800"])},{default:t.withCtx(()=>[t.createVNode(ZI,{class:"pb-2"},{default:t.withCtx(()=>[t.createVNode(YI,{class:"text-sm font-semibold dark:text-neutral-100"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.title),1)]),_:1}),a.description?(t.openBlock(),t.createElementBlock("div",WW,t.toDisplayString(a.description),1)):t.createCommentVNode("",!0)]),_:1}),t.createVNode(XI,{class:"pt-2"},{default:t.withCtx(()=>{var m,g,v,L,w;return[t.createElementVNode("div",{class:"d-result-preview-wrap relative rounded-xl overflow-hidden border-2 border-dashed transition-colors duration-200 bg-muted dark:bg-neutral-800/50 border-border dark:border-neutral-700 w-full",style:t.normalizeStyle([{height:`${a.previewHeight}px`},y.value]),onMouseenter:k[2]||(k[2]=M=>d.value=!0),onMouseleave:k[3]||(k[3]=M=>d.value=!1)},[i.value&&r.value?(t.openBlock(),t.createElementBlock("img",{key:0,src:r.value,alt:"Preview",class:"h-full w-full object-contain"},null,8,GW)):(t.openBlock(),t.createElementBlock("div",KW,[t.createVNode(t.unref(hs),{class:"w-10 h-10"}),t.createElementVNode("div",XW,[t.createElementVNode("p",ZW,t.toDisplayString((m=c.value)==null?void 0:m.name),1),t.createElementVNode("p",YW,t.toDisplayString((g=c.value)==null?void 0:g.size),1)])])),t.createElementVNode("div",{class:"d-action-buttons",style:t.normalizeStyle({position:"absolute",top:"8px",left:"8px",right:"8px",display:"flex",alignItems:"center",justifyContent:"space-between",zIndex:50,opacity:d.value?1:0,transition:"opacity 0.2s ease-in-out",pointerEvents:d.value?"auto":"none"})},[a.showEdit&&i.value?(t.openBlock(),t.createElementBlock("button",{key:0,disabled:a.disabled,class:"d-action-btn shadow-md",style:t.normalizeStyle({height:"32px",width:"32px",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"#eab308",color:"white",borderRadius:"8px",border:"1px solid rgba(255,255,255,0.4)",cursor:a.disabled?"not-allowed":"pointer",transition:"all 0.2s"}),onClick:k[0]||(k[0]=M=>o("edit"))},[t.createVNode(t.unref(sr),{style:{width:"16px",height:"16px"}})],12,QW)):(t.openBlock(),t.createElementBlock("div",JW)),a.showRemove?(t.openBlock(),t.createElementBlock("button",{key:2,disabled:a.disabled,class:"d-action-btn shadow-md",style:t.normalizeStyle({height:"32px",width:"32px",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"#ef4444",color:"white",borderRadius:"8px",border:"1px solid rgba(255,255,255,0.4)",cursor:a.disabled?"not-allowed":"pointer",transition:"all 0.2s"}),onClick:k[1]||(k[1]=M=>o("remove"))},[t.createVNode(t.unref(_i),{style:{width:"16px",height:"16px"}})],12,eG)):t.createCommentVNode("",!0)],4),t.createElementVNode("div",{class:"d-metadata-overlay",style:t.normalizeStyle({position:"absolute",left:"8px",bottom:"8px",zIndex:10,display:"inline-block",maxWidth:"calc(100% - 16px)",borderRadius:"12px",border:"1px solid rgba(0,0,0,0.1)",padding:"8px 12px",boxShadow:"0 10px 15px -3px rgba(0,0,0,0.1)",backdropFilter:"blur(8px)",transition:"all 0.2s ease-in-out",opacity:d.value?1:0,transform:d.value?"translateY(0) scale(1)":"translateY(4px) scale(0.99)",backgroundColor:h.value?"rgba(38, 38, 38, 0.8)":"rgba(255, 255, 255, 0.8)",color:h.value?"#e5e5e5":"#171717"})},[t.createElementVNode("div",tG,[t.createElementVNode("div",aG,[k[4]||(k[4]=t.createElementVNode("span",{class:"w-14 shrink-0 text-muted-foreground dark:text-neutral-400"},"Nama",-1)),t.createElementVNode("span",nG,t.toDisplayString((v=c.value)==null?void 0:v.name),1)]),t.createElementVNode("div",oG,[k[5]||(k[5]=t.createElementVNode("span",{class:"w-14 shrink-0 text-muted-foreground dark:text-neutral-400"},"Ukuran",-1)),t.createElementVNode("span",rG,t.toDisplayString((L=c.value)==null?void 0:L.size),1)]),t.createElementVNode("div",iG,[k[6]||(k[6]=t.createElementVNode("span",{class:"w-14 shrink-0 text-muted-foreground dark:text-neutral-400"},"Tipe",-1)),t.createElementVNode("span",sG,t.toDisplayString((w=c.value)==null?void 0:w.type),1)])])],4)],36)]}),_:1})]),_:1},8,["class"])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-4f5c1d5e"]]);function JI(){const a=i=>{var d;const s={type:i.type||"info",title:i.title,message:i.message,duration:i.duration??3e3};typeof window<"u"&&window.dispatchEvent(new CustomEvent("micro:toast",{detail:s,bubbles:!0,composed:!0})),(s.type==="error"?console.error:s.type==="warning"?console.warn:console.log)(`[Toast][${(d=s.type)==null?void 0:d.toUpperCase()}]`,s.title||"",s.message)};return{show:a,success:(i,s)=>a({type:"success",message:i,title:s}),error:(i,s)=>a({type:"error",message:i,title:s}),warning:(i,s)=>a({type:"warning",message:i,title:s}),info:(i,s)=>a({type:"info",message:i,title:s})}}const lG={class:"space-y-3"},cG={key:1,class:"flex items-center justify-center p-6 border rounded-lg bg-muted/30 dark:bg-neutral-800/20 dark:border-neutral-800"},Hz=t.defineComponent({name:"DCodeFileField",inheritAttrs:!1,__name:"DCodeFileField",props:{modelValue:{default:null},label:{default:"Upload File"},hint:{},disabled:{type:Boolean,default:!1},previewHeight:{default:190},previewWidth:{default:void 0},allowedTypes:{default:null},accept:{default:"*/*"},minSizeMb:{default:null},maxSizeMb:{default:1},endpoint:{},uploadFn:{}},emits:["update:modelValue","error","uploaded"],setup(a,{emit:e}){const n=a,o=e,r=t.computed({get:()=>n.modelValue,set:S=>o("update:modelValue",S)}),i=t.ref(null),s=t.ref(null);function c(S){s.value=S,o("error",S)}function d(){s.value=null}const h=t.computed(()=>{const S=(n.allowedTypes??"").trim();return S?S.split(/[,\s;]+/g).map(x=>x.trim().toLowerCase()).filter(Boolean).map(x=>x.includes("/")||x.startsWith(".")?x:`.${x}`):[]});function u(S){const b=S.lastIndexOf(".");return b>=0?S.slice(b).toLowerCase():""}const p=t.computed(()=>{if(h.value.length){const S=h.value.filter(x=>x.startsWith("."));return[...h.value.filter(x=>x.includes("/")),...S].join(",")}return n.accept}),y=t.computed(()=>h.value.length?h.value.join(", "):n.accept||"Semua File");function f(S){if(h.value.length){const b=(S.type||"").toLowerCase(),x=u(S.name);return h.value.some(I=>I.includes("/")?b===I:I.startsWith(".")?x===I:x===`.${I}`)}if(n.accept){if(n.accept==="*/*")return!0;const b=n.accept.split(",").map(V=>V.trim().toLowerCase()),x=(S.type||"").toLowerCase(),I=u(S.name);return b.some(V=>{if(V.endsWith("/*")){const B=V.slice(0,-2);return x.startsWith(B)}return V.startsWith(".")?I===V:x===V})}return!0}function k(S){return S*1024*1024}async function m(S){return S?f(S)?n.minSizeMb!=null&&S.size<k(n.minSizeMb)?`Ukuran file terlalu kecil. Minimal ${n.minSizeMb}MB`:n.maxSizeMb!=null&&S.size>k(n.maxSizeMb)?`Ukuran file terlalu besar. Maks ${n.maxSizeMb}MB`:null:`File Type not allowed. Allowed: ${y.value}`:"File tidak valid"}const{DCodeApi:g}=Ke(),v=JI(),L=t.ref(!1);async function w(S){var b;if(n.uploadFn){try{L.value=!0;const x=await n.uploadFn(S);r.value=S,o("uploaded",x)}catch(x){console.error("Upload Error",x),v.error("Upload Failed",(x==null?void 0:x.message)||"Unknown error"),c((x==null?void 0:x.message)||"Upload Failed")}finally{L.value=!1}return}if(!((b=n.endpoint)!=null&&b.apiUrl)){r.value=S;return}if(typeof g!="function"){c("useApi() must expose DCodeApi()");return}try{L.value=!0;const x=new FormData;x.append("doc",S);const I=(n.endpoint.apiMethod||"POST").toUpperCase(),V=n.endpoint.apiUrl,B=await g("","",x,{_url:V,_method:I,withCredentials:!0,transformRequest:[(P,D)=>(D&&(delete D["Content-Type"],delete D["content-type"]),P)]}),A=(B==null?void 0:B.data)??B;r.value=S,o("uploaded",A)}catch(x){console.error("Upload Error",x),v.error("Upload Failed",(x==null?void 0:x.message)||"Unknown error"),c((x==null?void 0:x.message)||"Upload Failed")}finally{L.value=!1}}async function M(S){var x;if(n.disabled)return;d();const b=await m(S);if(b){c(b);return}i.value=S,n.uploadFn||(x=n.endpoint)!=null&&x.apiUrl?await w(S):r.value=S}function C(){d(),r.value=null,i.value=null}return t.watch(()=>n.modelValue,S=>{S&&!i.value&&(i.value=S),S||(i.value=null)},{immediate:!0}),(S,b)=>(t.openBlock(),t.createElementBlock("div",lG,[r.value?L.value?(t.openBlock(),t.createElementBlock("div",cG,[...b[1]||(b[1]=[t.createElementVNode("span",{class:"text-sm text-muted-foreground dark:text-neutral-400 animate-pulse"},"Uploading...",-1)])])):(t.openBlock(),t.createBlock(QI,{key:2,file:r.value,title:a.label,description:a.hint,disabled:a.disabled,"show-edit":!1,"show-replace":!1,"show-remove":!0,"force-file-icon":!0,"preview-height":a.previewHeight,"preview-width":a.previewWidth,onRemove:C},null,8,["file","title","description","disabled","preview-height","preview-width"])):(t.openBlock(),t.createBlock(cS,{key:0,label:a.label,hint:a.hint,accept:p.value,maxSizeMb:a.maxSizeMb,disabled:a.disabled||L.value,onPicked:M,error:s.value,onError:b[0]||(b[0]=x=>c(x))},null,8,["label","hint","accept","maxSizeMb","disabled","error"]))]))}}),dG=["for"],hG={key:0,class:"!ml-1 !text-destructive"},uG={class:"relative w-full block box-border"},pG={key:0,class:"absolute inset-y-0 left-3 flex items-center text-muted-foreground pointer-events-none z-10"},yG=["id","readonly","disabled","placeholder"],fG={class:"absolute inset-y-0 right-4 flex items-center z-10"},kG={key:1,class:"absolute z-50 mt-1 w-full rounded-xl border bg-white dark:bg-neutral-900 shadow-lg box-border"},mG={key:0,class:"flex items-center justify-center py-10 text-muted-foreground gap-2"},gG={key:1,class:"text-sm text-muted-foreground text-center"},bG=["onClick","title"],MG={class:"flex flex-col items-center justify-between gap-2 py-1 min-h-[72px]"},xG={class:"flex items-center justify-center flex-1"},wG={class:"text-[10px] leading-tight text-muted-foreground truncate w-full text-center block flex-shrink-0"},vG={key:3,class:"pt-2 text-[11px] text-muted-foreground text-center"},jz=t.defineComponent({name:"DCodeIconDropdown",__name:"DCodeIconDropdown",props:{modelValue:{},label:{},placeholder:{default:"Pilih icon…"},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},columns:{default:4},maxHeight:{default:"335px"},iconSize:{default:20},pageSize:{default:120}},emits:["update:modelValue","clear"],setup(a,{emit:e}){const n=a,o=e,r=Gt,i=t.ref(null),s=t.ref(null),c=Math.random().toString(36).slice(2,7),d=t.computed(()=>`dcode-icon-dropdown-${n.label||"icon-dropdown"}-${c}`),h=t.ref(!1),u=t.computed(()=>(n.modelValue??"").trim()||""),p=t.ref(""),y=t.ref(!1),f=t.ref(!1),k=t.ref(!1),m=t.shallowRef([]),g=t.ref(n.pageSize),v=new Set(["default","createLucideIcon","LucideIcon","Icon","icons","toKebabCase","camelCase","children","IconNode"]),L=async()=>{if(f.value||k.value)return;k.value=!0,await new Promise(F=>setTimeout(F,0));const j=Object.keys(r).filter(F=>!v.has(F)).filter(F=>/^[A-Z]/.test(F)).filter(F=>typeof r[F]=="function"||typeof r[F]=="object"&&r[F]).sort((F,R)=>F.localeCompare(R));m.value=j,f.value=!0,k.value=!1},w=t.computed(()=>!f.value||!u.value||!m.value.includes(u.value)?null:r[u.value]),M=t.ref(u.value),C=t.computed(()=>!!u.value&&!h.value),S=t.computed(()=>{if(!f.value)return[];const j=(p.value??"").trim().toLowerCase();return j?m.value.filter(F=>F.toLowerCase().includes(j)):m.value}),b=t.computed(()=>S.value.slice(0,g.value)),x=t.computed(()=>{const j=n.columns;return j<=2?"grid-cols-2":j===3?"grid-cols-3":j===4?"grid-cols-4":j===5?"grid-cols-5":j>=8?"grid-cols-8":"grid-cols-6"});t.computed(()=>n.clearable?"!pr-10":"!pr-3"),t.computed(()=>w.value&&!h.value?"!pl-12":"!pl-3");const I=async()=>{var j;await t.nextTick(),(j=s.value)==null||j.focus()},V=async j=>{if(n.disabled)return;const F=j!==!1;if(y.value){y.value=!1;return}h.value=!0,await L(),F&&(p.value="",M.value=""),g.value=n.pageSize,await I()},B=()=>{h.value=!1,p.value="",M.value=u.value,g.value=n.pageSize},A=async()=>{n.disabled||(h.value?B():await V())};let P=null;const D=async j=>{if(n.disabled)return;o("update:modelValue",null),h.value||await V(!1),P&&clearTimeout(P);const F=M.value;P=setTimeout(()=>{p.value=F},300)},U=j=>{n.disabled||(o("update:modelValue",j),B(),queueMicrotask(()=>{var F;return(F=s.value)==null?void 0:F.blur()}))},T=()=>{n.disabled||(o("update:modelValue",null),o("clear"),y.value=!0,B(),queueMicrotask(()=>{var j;return(j=s.value)==null?void 0:j.focus()}))},H=j=>{if(j.key==="Escape"){j.preventDefault(),B();return}if(j.key==="Enter"&&h.value){const F=S.value[0];F&&(j.preventDefault(),U(F))}},N=j=>{if(!h.value)return;const F=j.target;i.value&&!i.value.contains(F)&&B()},Q=j=>{const F=j.target;F.scrollTop+F.clientHeight>=F.scrollHeight-24&&g.value<S.value.length&&(g.value=Math.min(g.value+n.pageSize,S.value.length))};return t.onMounted(()=>{document.addEventListener("mousedown",N),queueMicrotask(()=>{var j;s.value=((j=i.value)==null?void 0:j.querySelector("input"))??null}),u.value&&L()}),t.onBeforeUnmount(()=>{document.removeEventListener("mousedown",N),P&&clearTimeout(P)}),t.watch(u,j=>{h.value||(M.value=j)}),t.watch(()=>p.value,()=>{g.value=n.pageSize}),(j,F)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"rootEl",ref:i,class:"!w-full !block !box-border"},[n.label?(t.openBlock(),t.createElementBlock("label",{key:0,for:d.value,class:"!text-sm !font-medium !mb-1 !block"},[t.createTextVNode(t.toDisplayString(n.label)+" ",1),n.required?(t.openBlock(),t.createElementBlock("span",hG,"*")):t.createCommentVNode("",!0)],8,dG)):t.createCommentVNode("",!0),t.createElementVNode("div",uG,[w.value&&!h.value?(t.openBlock(),t.createElementBlock("div",pG,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(w.value),{size:18}))])):t.createCommentVNode("",!0),t.withDirectives(t.createElementVNode("input",{id:d.value,"onUpdate:modelValue":F[0]||(F[0]=R=>M.value=R),readonly:C.value,disabled:n.disabled,placeholder:n.placeholder,class:t.normalizeClass(["w-full h-10 m-0 py-0 rounded-lg border bg-white dark:bg-neutral-900 text-foreground dark:text-gray-300 border-gray-300 dark:border-gray-700 pr-10 outline-none box-border truncate",[w.value&&!h.value?"pl-10":"pl-4",C.value?"cursor-pointer select-none":""]]),onClick:V,onFocus:V,onInput:D,onKeydown:H},null,42,yG),[[t.vModelText,M.value]]),t.createElementVNode("div",fG,[n.clearable&&u.value?(t.openBlock(),t.createElementBlock("button",{key:0,type:"button",class:"flex items-center justify-center p-1 m-0 bg-transparent border-0 text-muted-foreground hover:text-foreground transition cursor-pointer outline-none",onMousedown:F[1]||(F[1]=t.withModifiers(()=>{},["prevent"])),onClick:T,title:"Clear"},[t.createVNode(t.unref(it),{class:"h-4 w-4"})],32)):(t.openBlock(),t.createElementBlock("button",{key:1,type:"button",class:"flex items-center justify-center p-1 m-0 bg-transparent border-0 text-muted-foreground hover:text-foreground transition-transform cursor-pointer outline-none",onMousedown:F[2]||(F[2]=t.withModifiers(()=>{},["prevent"])),onClick:A,title:"Open"},[t.createVNode(t.unref(St),{class:"h-4 w-4"})],32))]),h.value?(t.openBlock(),t.createElementBlock("div",kG,[t.createElementVNode("div",{class:"p-2 overflow-auto",style:t.normalizeStyle({maxHeight:n.maxHeight}),onScroll:Q},[k.value?(t.openBlock(),t.createElementBlock("div",mG,[t.createVNode(t.unref(kt),{class:"h-4 w-4 animate-spin"}),F[3]||(F[3]=t.createElementVNode("span",{class:"text-sm"},"Loading icons…",-1))])):f.value&&S.value.length===0?(t.openBlock(),t.createElementBlock("div",gG," Icon tidak ditemukan ")):(t.openBlock(),t.createElementBlock("div",{key:2,class:t.normalizeClass(["grid gap-2",x.value])},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(b.value,R=>(t.openBlock(),t.createElementBlock("button",{key:R,type:"button",class:t.normalizeClass(["group rounded-lg border p-2 hover:bg-muted/40 transition",u.value===R?"ring-1 ring-primary":""]),onClick:Z=>U(R),title:R},[t.createElementVNode("div",MG,[t.createElementVNode("div",xG,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(r)[R]),{size:n.iconSize,class:"shrink-0"},null,8,["size"]))]),t.createElementVNode("span",wG,t.toDisplayString(R),1)])],10,bG))),128))],2)),f.value&&S.value.length>0?(t.openBlock(),t.createElementBlock("div",vG," Showing "+t.toDisplayString(b.value.length)+" / "+t.toDisplayString(S.value.length),1)):t.createCommentVNode("",!0)],36)])):t.createCommentVNode("",!0)])],512))}}),CG={key:0,class:"fixed inset-0 z-50 flex items-center justify-center p-4 sm:p-6"},LG={class:"flex items-center justify-between border-b dark:border-neutral-800 px-6 py-4"},SG={class:"relative overflow-auto p-0"},e_=t.defineComponent({name:"DCodeImageCropperDialog",inheritAttrs:!1,__name:"DCodeImageCropperDialog",props:{modelValue:{type:Boolean},file:{},title:{default:"Resize & Crop Gambar"},description:{default:""},aspectRatio:{default:null},outputWidth:{default:null},outputHeight:{default:null},quality:{default:.92},autoOpenEditor:{type:Boolean,default:!1}},emits:["update:modelValue","done","cancel"],setup(a,{emit:e}){const n=a,o=e,r=t.computed({get:()=>n.modelValue,set:w=>o("update:modelValue",w)}),i=t.ref(null),s=t.ref(null);let c=null,d=!1,h=0,u=null;function p(){if(c){try{c.close()}catch{}c=null,u&&(u.disconnect(),u=null),i.value&&(i.value.innerHTML=""),s.value=null}}async function y(w,M,C,S,b){const x=await new Promise((B,A)=>{const P=URL.createObjectURL(w),D=new Image;D.onload=()=>{URL.revokeObjectURL(P),B(D)},D.onerror=U=>{URL.revokeObjectURL(P),A(U)},D.src=P}),I=document.createElement("canvas");I.width=M,I.height=C;const V=I.getContext("2d");return V?(V.drawImage(x,0,0,M,C),await new Promise(B=>{I.toBlob(A=>B(A||w),S,b)})):w}function f(){if(!c||!s.value)return;const w=c.getPlugin("Dashboard"),M=c.getFile(s.value);!w||!M||requestAnimationFrame(()=>{try{w.openFileEditor(M)}catch{try{w.openFileEditor(s.value)}catch{}}})}async function k(w){if(c){c.cancelAll(),s.value=null;try{const M=c.addFile({name:w.name,type:w.type,data:w,source:"Local",isRemote:!1});s.value=String(M)}catch{}}}function m(){if(!i.value)return;c&&p(),c=new kq({autoProceed:!1,restrictions:{maxNumberOfFiles:1,allowedFileTypes:["image/*"]}});const w=document.documentElement.classList.contains("dark");c.use(y_,{target:i.value,inline:!0,height:480,theme:w?"dark":"light",proudlyDisplayPoweredByUppy:!1,hideUploadButton:!0,hideRetryButton:!0,hidePauseResumeButton:!0,hideCancelButton:!0,showProgressDetails:!1}),u=new MutationObserver(()=>{if(!c)return;const M=document.documentElement.classList.contains("dark"),C=c.getPlugin("Dashboard");C&&C.setOptions({theme:M?"dark":"light"})}),u.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),c.use(mq,{target:y_,quality:n.quality,cropperOptions:{viewMode:1,dragMode:"move",autoCropArea:1,aspectRatio:n.aspectRatio==null?Number.NaN:n.aspectRatio}}),c.on("file-editor:cancel",()=>{r.value=!1}),c.on("file-added",M=>{s.value=(M==null?void 0:M.id)??null,n.autoOpenEditor&&setTimeout(()=>f(),80)}),c.on("file-editor:complete",async M=>{const C=++h;try{const S=M.data,b=S.type||M.type||"image/jpeg";let x=S;if(n.outputWidth&&n.outputHeight&&(x=await y(S,n.outputWidth,n.outputHeight,b,n.quality)),d||C!==h)return;const I=M.name||"edited-image.jpg",V=new File([x],I,{type:b});await g(V,"UPPY_EDITOR_COMPLETE"),o("done",V),r.value=!1}catch{}})}async function g(w,M="CROP_RESULT"){const C=URL.createObjectURL(w);try{const S=await new Promise((b,x)=>{const I=new Image;I.onload=()=>b(I),I.onerror=x,I.src=C});console.group(M),console.log("file:",w),console.table({name:w.name,type:w.type,sizeBytes:w.size,sizeMB:+(w.size/1024/1024).toFixed(3),width:S.naturalWidth,height:S.naturalHeight,ratio:+(S.naturalWidth/S.naturalHeight).toFixed(4)}),console.log("previewUrl:",C),console.groupEnd()}finally{URL.revokeObjectURL(C)}}t.watch(r,async w=>{d=!w,h++,w?(await t.nextTick(),m(),n.file&&await k(n.file)):p()},{flush:"post"}),t.watch(()=>n.file,async w=>{r.value&&w&&(await t.nextTick(),await k(w))}),t.onBeforeUnmount(()=>{d=!0,h++,p()});const v=w=>{w.key==="Escape"&&r.value&&(r.value=!1)};t.watch(r,w=>{w?globalThis.addEventListener("keydown",v):globalThis.removeEventListener("keydown",v)},{immediate:!0});const L=t.ref(!1);return(w,M)=>r.value?(t.openBlock(),t.createElementBlock("div",CG,[t.createVNode(t.Transition,{appear:"","enter-active-class":"duration-300 ease-out","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"duration-200 ease-in","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:t.withCtx(()=>[r.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"fixed inset-0 bg-black/60 backdrop-blur-sm transition-opacity",onClick:M[0]||(M[0]=C=>r.value=!1)})):t.createCommentVNode("",!0)]),_:1}),t.createVNode(t.Transition,{appear:"","enter-active-class":"duration-300 ease-out","enter-from-class":"opacity-0 scale-95 translate-y-4 sm:translate-y-0 sm:scale-95","enter-to-class":"opacity-100 scale-100 translate-y-0 sm:scale-100","leave-active-class":"duration-200 ease-in","leave-from-class":"opacity-100 scale-100 translate-y-0 sm:scale-100","leave-to-class":"opacity-0 scale-95 translate-y-4 sm:translate-y-0 sm:scale-95"},{default:t.withCtx(()=>[r.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"relative flex w-fit max-w-4xl flex-col overflow-hidden rounded-xl border border-border dark:border-neutral-800 bg-background dark:bg-neutral-900 shadow-2xl transition-all",onClick:M[4]||(M[4]=t.withModifiers(()=>{},["stop"]))},[t.createElementVNode("div",LG,[M[6]||(M[6]=t.createElementVNode("h3",{class:"text-lg font-semibold leading-none tracking-tight dark:text-neutral-100"}," Crop & Resize ",-1)),t.createElementVNode("button",{class:"d-close-btn rounded-sm dark:text-neutral-400 ring-offset-background transition-opacity focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",style:t.normalizeStyle({opacity:L.value?1:.7}),onClick:M[1]||(M[1]=C=>r.value=!1),onMouseenter:M[2]||(M[2]=C=>L.value=!0),onMouseleave:M[3]||(M[3]=C=>L.value=!1)},[t.createVNode(t.unref(it),{class:"h-4 w-4"}),M[5]||(M[5]=t.createElementVNode("span",{class:"sr-only"},"Close",-1))],36)]),t.createElementVNode("div",SG,[t.createElementVNode("div",{ref_key:"dashboardEl",ref:i,class:"uppy-wrap"},null,512)])])):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)}}),IG={key:0,class:"text-xs text-muted-foreground dark:text-neutral-400"},_G=["src"],AG=["disabled"],BG=["disabled"],VG={class:"text-[11px] text-foreground/90 dark:text-neutral-200 space-y-1 whitespace-nowrap"},zG={class:"flex gap-2"},qG={class:"font-medium truncate"},PG={class:"flex gap-2"},DG={class:"font-medium"},EG={class:"flex gap-2"},TG={class:"font-medium truncate"},t_=Xt(t.defineComponent({name:"DCodeImageResult",__name:"DCodeImageResult",props:{file:{},title:{default:"Hasil Gambar"},description:{default:""},disabled:{type:Boolean,default:!1},previewHeight:{default:190},previewWidth:{default:220},showEdit:{type:Boolean,default:!0},showReplace:{type:Boolean,default:!0},showRemove:{type:Boolean,default:!0}},emits:["edit","replace","remove"],setup(a,{emit:e}){const n=a,o=e,r=t.ref(null);t.watch(()=>n.file,y=>{r.value&&URL.revokeObjectURL(r.value),r.value=y?URL.createObjectURL(y):null},{immediate:!0}),t.onBeforeUnmount(()=>{r.value&&URL.revokeObjectURL(r.value),h&&h.disconnect()});function i(y){const f=y/1024,k=f/1024;return k>=1?`${k.toFixed(2)} MB`:f>=1?`${f.toFixed(1)} KB`:`${y} B`}const s=t.computed(()=>n.file?{name:n.file.name,size:i(n.file.size),type:n.file.type||"unknown"}:null),c=t.ref(!1),d=t.ref(!1);let h=null;const u=()=>{typeof document<"u"&&(d.value=document.documentElement.classList.contains("dark")||document.body.classList.contains("dark"))};t.onMounted(()=>{u(),typeof document<"u"&&(h=new MutationObserver(u),h.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),h.observe(document.body,{attributes:!0,attributeFilter:["class"]}))});const p=t.computed(()=>n.disabled||!c.value?{}:{borderColor:d.value?"hsl(var(--primary) / 0.4)":"hsl(var(--primary) / 0.5)",backgroundColor:d.value?"hsl(var(--primary) / 0.1)":"hsl(var(--primary) / 0.05)"});return(y,f)=>a.file?(t.openBlock(),t.createBlock(KI,{key:0,class:t.normalizeClass([a.disabled?"opacity-60 pointer-events-none":"","dark:bg-neutral-900 dark:border-neutral-800"])},{default:t.withCtx(()=>[t.createVNode(ZI,{class:"pb-2"},{default:t.withCtx(()=>[t.createVNode(YI,{class:"text-sm font-semibold dark:text-neutral-100"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.title),1)]),_:1}),a.description?(t.openBlock(),t.createElementBlock("div",IG,t.toDisplayString(a.description),1)):t.createCommentVNode("",!0)]),_:1}),t.createVNode(XI,{class:"pt-2"},{default:t.withCtx(()=>{var k,m,g;return[t.createElementVNode("div",{class:"d-result-preview-wrap relative rounded-xl overflow-hidden border-2 border-dashed transition-colors duration-200 bg-muted dark:bg-neutral-800/50 border-border dark:border-neutral-700 w-full",style:t.normalizeStyle([{height:`${a.previewHeight}px`},p.value]),onMouseenter:f[2]||(f[2]=v=>c.value=!0),onMouseleave:f[3]||(f[3]=v=>c.value=!1)},[r.value?(t.openBlock(),t.createElementBlock("img",{key:0,src:r.value,alt:"Preview",class:"h-full w-full object-contain"},null,8,_G)):t.createCommentVNode("",!0),t.createElementVNode("div",{class:"d-action-buttons",style:t.normalizeStyle({position:"absolute",top:"8px",left:"8px",right:"8px",display:"flex",alignItems:"center",justifyContent:"space-between",zIndex:50,opacity:c.value?1:0,transition:"opacity 0.2s ease-in-out",pointerEvents:c.value?"auto":"none"})},[a.showEdit?(t.openBlock(),t.createElementBlock("button",{key:0,disabled:a.disabled,class:"d-action-btn shadow-md",style:t.normalizeStyle({height:"32px",width:"32px",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"#eab308",color:"white",borderRadius:"8px",border:"1px solid rgba(255,255,255,0.4)",cursor:a.disabled?"not-allowed":"pointer",transition:"all 0.2s",boxShadow:"0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)"}),onClick:f[0]||(f[0]=v=>o("edit"))},[t.createVNode(t.unref(sr),{style:{width:"16px",height:"16px"}})],12,AG)):t.createCommentVNode("",!0),a.showRemove?(t.openBlock(),t.createElementBlock("button",{key:1,disabled:a.disabled,class:"d-action-btn shadow-md",style:t.normalizeStyle({height:"32px",width:"32px",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"#ef4444",color:"white",borderRadius:"8px",border:"1px solid rgba(255,255,255,0.4)",cursor:a.disabled?"not-allowed":"pointer",transition:"all 0.2s",boxShadow:"0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)"}),onClick:f[1]||(f[1]=v=>o("remove"))},[t.createVNode(t.unref(_i),{style:{width:"16px",height:"16px"}})],12,BG)):t.createCommentVNode("",!0)],4),t.createElementVNode("div",{class:"d-metadata-overlay",style:t.normalizeStyle({position:"absolute",left:"8px",bottom:"8px",zIndex:10,display:"inline-block",maxWidth:"calc(100% - 16px)",borderRadius:"12px",border:"1px solid rgba(0,0,0,0.1)",padding:"8px 12px",boxShadow:"0 10px 15px -3px rgba(0,0,0,0.1)",backdropFilter:"blur(8px)",transition:"all 0.2s ease-in-out",opacity:c.value?1:0,transform:c.value?"translateY(0) scale(1)":"translateY(4px) scale(0.99)",backgroundColor:d.value?"rgba(38, 38, 38, 0.8)":"rgba(255, 255, 255, 0.8)",color:d.value?"#e5e5e5":"#171717"})},[t.createElementVNode("div",VG,[t.createElementVNode("div",zG,[f[4]||(f[4]=t.createElementVNode("span",{class:"w-14 shrink-0 text-muted-foreground dark:text-neutral-400"},"Nama",-1)),t.createElementVNode("span",qG,t.toDisplayString((k=s.value)==null?void 0:k.name),1)]),t.createElementVNode("div",PG,[f[5]||(f[5]=t.createElementVNode("span",{class:"w-14 shrink-0 text-muted-foreground dark:text-neutral-400"},"Ukuran",-1)),t.createElementVNode("span",DG,t.toDisplayString((m=s.value)==null?void 0:m.size),1)]),t.createElementVNode("div",EG,[f[6]||(f[6]=t.createElementVNode("span",{class:"w-14 shrink-0 text-muted-foreground dark:text-neutral-400"},"Tipe",-1)),t.createElementVNode("span",TG,t.toDisplayString((g=s.value)==null?void 0:g.type),1)])])],4)],36)]}),_:1})]),_:1},8,["class"])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-72c623f7"]]),HG={class:"space-y-3"},a_=t.defineComponent({name:"DCodeImageField",inheritAttrs:!1,__name:"DCodeImageField",props:{modelValue:{default:null},label:{default:"Upload Gambar"},hint:{default:"Drag & drop atau klik area ini"},disabled:{type:Boolean,default:!1},allowedTypes:{default:null},accept:{default:"image/*"},minSizeMb:{default:null},maxSizeMb:{default:1},title:{default:"Hasil Gambar"},description:{default:""},previewWidth:{default:360},previewHeight:{default:220},aspectRatio:{default:null},outputWidth:{default:null},outputHeight:{default:null},quality:{default:.92},autoOpenEditor:{type:Boolean,default:!0},minWidth:{default:null},minHeight:{default:null},maxWidth:{default:null},maxHeight:{default:null},endpoint:{},uploadFn:{},editUseOriginal:{type:Boolean,default:!1}},emits:["update:modelValue","error","uploaded"],setup(a,{emit:e}){const n=a,o=e,r=t.computed({get:()=>n.modelValue,set:T=>o("update:modelValue",T)}),i=t.ref(!1),s=t.ref(null),c=t.ref(null),d=t.ref(null);function h(T){d.value=T,o("error",T)}function u(){d.value=null}const p=t.computed(()=>{const T=(n.allowedTypes??"").trim();return T?T.split(/[,\s;]+/g).map(N=>N.trim().toLowerCase()).filter(Boolean).map(N=>N.includes("/")||N.startsWith(".")?N:`.${N}`):[]});function y(T){const H=T.lastIndexOf(".");return H>=0?T.slice(H).toLowerCase():""}const f=t.computed(()=>{if(p.value.length){const T=p.value.filter(N=>N.startsWith("."));return[...p.value.filter(N=>N.includes("/")),...T].join(",")}return n.accept||"image/*"}),k=t.computed(()=>p.value.length?p.value.join(", "):n.accept||"image/*");function m(T){if(p.value.length){const N=(T.type||"").toLowerCase(),Q=y(T.name);return p.value.some(j=>j.includes("/")?N===j:j.startsWith(".")?Q===j:Q===`.${j}`)}return(n.accept||"image/*").toLowerCase().includes("image/")?(T.type||"").toLowerCase().startsWith("image/"):!0}function g(T){return T*1024*1024}async function v(T){var H;return(H=T.type)!=null&&H.startsWith("image/")?await new Promise(N=>{const Q=URL.createObjectURL(T),j=new Image;j.onload=()=>{URL.revokeObjectURL(Q),N({w:j.naturalWidth,h:j.naturalHeight})},j.onerror=()=>{URL.revokeObjectURL(Q),N(null)},j.src=Q}):null}async function L(T){if(!(n.minWidth!=null||n.minHeight!=null||n.maxWidth!=null||n.maxHeight!=null))return null;const N=await v(T);return N?n.minWidth!=null&&N.w<n.minWidth?`Lebar gambar minimal ${n.minWidth}px`:n.minHeight!=null&&N.h<n.minHeight?`Tinggi gambar minimal ${n.minHeight}px`:n.maxWidth!=null&&N.w>n.maxWidth?`Lebar gambar maksimal ${n.maxWidth}px`:n.maxHeight!=null&&N.h>n.maxHeight?`Tinggi gambar maksimal ${n.maxHeight}px`:null:"Gagal membaca dimensi gambar"}async function w(T){return T?m(T)?n.minSizeMb!=null&&T.size<g(n.minSizeMb)?`Ukuran file terlalu kecil. Minimal ${n.minSizeMb}MB`:n.maxSizeMb!=null&&T.size>g(n.maxSizeMb)?`Ukuran file terlalu besar. Maks ${n.maxSizeMb}MB`:await L(T):`only Allowed: ${k.value}`:"File tidak valid"}function M(T){n.disabled||(s.value=T,i.value=!0)}async function C(T){if(n.disabled)return;u();const H=await w(T);if(H){h(H);return}c.value=T,M(T)}const{DCodeApi:S}=Ke(),b=JI(),x=t.ref(!1);t.ref(null);function I(T,H){return!T||!H?null:T.replace(/\/+$/,"")+"/"+H.replace(/^\/+/,"")}function V(T){var j;const H=(T==null?void 0:T.data)??T,N=(j=H==null?void 0:H.data)==null?void 0:j[0];if(!N)return null;const Q=I(N.server,N.url);return{...N,fullUrl:Q?encodeURI(Q):null}}async function B(T){var H;if(n.uploadFn){try{x.value=!0;const N=await n.uploadFn(T);r.value=T,o("uploaded",N)}catch(N){console.error("Upload Error",N),b.error("Upload Failed",(N==null?void 0:N.message)||"Unknown error"),h((N==null?void 0:N.message)||"Upload Failed")}finally{x.value=!1}return}if(!((H=n.endpoint)!=null&&H.apiUrl)){r.value=T;return}if(typeof S!="function"){h("useApi() must expose DCodeApi()");return}try{x.value=!0;const N=new FormData;N.append("doc",T);const Q=(n.endpoint.apiMethod||"POST").toUpperCase(),j=n.endpoint.apiUrl,F=await S("","",N,{_url:j,_method:Q,withCredentials:!0,transformRequest:[(Z,J)=>(J&&(delete J["Content-Type"],delete J["content-type"]),Z)]}),R=(F==null?void 0:F.data)??F;V(R),r.value=T,o("uploaded",R)}catch(N){console.error("Upload Error",N),b.error("Upload Failed",(N==null?void 0:N.message)||"Unknown error"),h((N==null?void 0:N.message)||"Upload Failed")}finally{x.value=!1}}async function A(T){var H;u(),n.uploadFn||(H=n.endpoint)!=null&&H.apiUrl?await B(T):r.value=T,i.value=!1,s.value=null}function P(){i.value=!1,s.value=null}async function D(){if(!r.value)return;u();const T=n.editUseOriginal?c.value??r.value:r.value,H=await w(T);if(H){h(H);return}M(T)}function U(){u(),r.value=null,s.value=null,i.value=!1,c.value=null}return t.watch(()=>n.modelValue,T=>{T&&!c.value&&(c.value=T),T||(c.value=null)},{immediate:!0}),(T,H)=>(t.openBlock(),t.createElementBlock("div",HG,[r.value?(t.openBlock(),t.createBlock(t_,{key:1,file:r.value,title:a.label,description:a.description,"preview-width":a.previewWidth,disabled:a.disabled,"show-edit":!0,"show-remove":!0,"show-replace":!1,onEdit:D,onRemove:U,"aspect-ratio":16/9},null,8,["file","title","description","preview-width","disabled"])):(t.openBlock(),t.createBlock(cS,{key:0,label:a.label,hint:a.hint,accept:f.value,maxSizeMb:a.maxSizeMb,disabled:a.disabled,onPicked:C,error:d.value,onError:H[0]||(H[0]=N=>h(N))},null,8,["label","hint","accept","maxSizeMb","disabled","error"])),t.createVNode(e_,{modelValue:i.value,"onUpdate:modelValue":H[1]||(H[1]=N=>i.value=N),file:s.value,title:a.title,description:a.description,"auto-open-editor":a.autoOpenEditor,"aspect-ratio":a.aspectRatio,"output-width":a.outputWidth,"output-height":a.outputHeight,quality:a.quality,onDone:A,onCancel:P},null,8,["modelValue","file","title","description","auto-open-editor","aspect-ratio","output-width","output-height","quality"])]))}}),n_=t.defineComponent({name:"DCodeLabel",inheritAttrs:!1,__name:"DCodeLabel",props:{label:{},text:{},textSize:{},textType:{},icon:{},iconClass:{}},setup(a){const e=t.useAttrs(),n=a,o=t.computed(()=>n.icon&&Gt[n.icon]||null),r=t.computed(()=>n.textSize?`text-${n.textSize}`:"text-xs"),i={xs:"w-3 h-3",sm:"w-3.5 h-3.5",base:"w-4 h-4",lg:"w-5 h-5",xl:"w-5 h-5","2xl":"w-6 h-6","3xl":"w-7 h-7","4xl":"w-8 h-8","5xl":"w-10 h-10","6xl":"w-12 h-12"},s=t.computed(()=>i[n.textSize??"xs"]??"w-3 h-3"),c=t.computed(()=>n.textType==="BOLD"?"font-bold":n.textType==="ITALIC"?"italic font-normal":"font-normal"),d=t.computed(()=>{const u=`${r.value} ${c.value} text-slate-600 ml-1 inline-flex items-center gap-1`,p=e.class??"";return[u,p].filter(Boolean).join(" ")}),h=t.computed(()=>{const{class:u,...p}=e;return p});return(u,p)=>(t.openBlock(),t.createElementBlock("span",t.mergeProps({class:d.value},h.value),[o.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.value),{key:0,class:t.normalizeClass(["shrink-0",s.value,a.iconClass])},null,8,["class"])):t.createCommentVNode("",!0),t.createTextVNode(" "+t.toDisplayString(a.label||a.text),1)],16))}}),o_=t.defineComponent({__name:"Input",props:{defaultValue:{},modelValue:{},class:{type:[Boolean,null,String,Object,Array]}},emits:["update:modelValue"],setup(a,{emit:e}){const n=a,r=ks(n,"modelValue",e,{passive:!0,defaultValue:n.defaultValue});return(i,s)=>t.withDirectives((t.openBlock(),t.createElementBlock("input",{"onUpdate:modelValue":s[0]||(s[0]=c=>t.isRef(r)?r.value=c:null),class:t.normalizeClass(t.unref(be)("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",n.class))},null,2)),[[t.vModelText,t.unref(r)]])}}),jG=["aria-busy"],OG={key:0,class:"h-4 w-32 rounded bg-gray-200 dark:bg-gray-700 animate-pulse"},FG={key:0,class:"ml-1 text-destructive"},RG={class:"min-w-0 flex-1 text-left"},NG={key:0,class:"flex flex-wrap gap-1.5"},$G={class:"max-w-[220px] truncate"},UG=["onClick"],WG={key:1,class:"text-muted-foreground truncate"},GG={class:"flex items-center gap-2 shrink-0"},KG={key:0,class:"p-2 border-b border-gray-200 dark:border-gray-800"},XG={key:0,class:"h-full flex items-center justify-center px-3 text-sm text-muted-foreground"},ZG=["disabled","onClick"],YG={class:"truncate"},QG={key:0,class:"text-primary-600 dark:text-primary-400"},JG={key:1,class:"h-full flex items-center justify-center text-sm text-muted-foreground"},eK={key:0},tK={key:1},aK={key:1,class:"text-xs text-destructive"},nK={name:"DCodeMultiSelect"},Oz=t.defineComponent({...nK,name:"DCodeMultiSelect",inheritAttrs:!1,props:{modelValue:{},items:{default:()=>[]},endpoint:{default:void 0},fetchItems:{},autoFetchOnOpen:{type:Boolean,default:!0},autoFetchOnMount:{type:Boolean,default:!1},refreshOnOpen:{type:Boolean,default:!1},label:{default:""},placeholder:{default:"Pilih data…"},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},searchable:{type:Boolean,default:!1},searchPlaceholder:{default:"Cari…"},visible:{type:Boolean,default:!0},skeleton:{type:Boolean,default:!1},maxChips:{default:2},maxSelected:{default:3},itemTitle:{type:[String,Function],default:"name"},itemValue:{type:[String,Function],default:"id"},returnObject:{type:Boolean,default:!1},virtual:{type:Boolean,default:!0},itemHeight:{default:40},maxRows:{default:5},overscan:{default:6},error:{default:null},required:{type:Boolean,default:!1}},emits:["update:modelValue","clear","max"],setup(a,{emit:e}){const n=t.useAttrs(),o=e,r=a,i=t.computed(()=>(r.label||n.label)??void 0),s=t.computed(()=>r.visible??!0),c=Math.random().toString(36).slice(2,7),d=t.computed(()=>`app-multiselect-${n.id||i.value||"field"}-${c}`),h=t.computed(()=>{if(r.required)return!0;const K=n.required,te=n["aria-required"];return K===""||K===!0||K==="true"||(te==="true"||te===!0)}),u=t.computed(()=>!!r.error);function p(K){return K?typeof r.itemTitle=="function"?r.itemTitle(K)??"":String((K==null?void 0:K[r.itemTitle])??""):""}function y(K){return K?typeof r.itemValue=="function"?r.itemValue(K):K==null?void 0:K[r.itemValue]:null}function f(K,te){return y(K)??te}const k=t.computed(()=>Array.isArray(r.modelValue)?r.modelValue:[]),m=t.computed(()=>{var K;return!!((K=r.endpoint)!=null&&K.apiUrl)||!!r.fetchItems}),g=t.ref([]),v=t.ref(!1),L=t.ref(!1),w=t.computed(()=>{var te;const K=(te=r.endpoint)==null?void 0:te.apiOptions;if(K)return typeof K=="function"?K():K}),M=t.computed(()=>{var ye,Ve;const K=((ye=r.endpoint)==null?void 0:ye.apiUrl)??"",te=(((Ve=r.endpoint)==null?void 0:Ve.apiMethod)??"GET").toUpperCase(),ne=JSON.stringify(w.value??null);return`${te} ${K} :: ${ne}`}),C=t.computed(()=>m.value?g.value:r.items||[]);async function S(){var K;if(m.value&&!(!((K=r.endpoint)!=null&&K.apiUrl)&&!r.fetchItems)&&!v.value){v.value=!0;try{let te;if(r.fetchItems){const ne=await r.fetchItems(),ye=(ne==null?void 0:ne.data)??ne;te=(ye==null?void 0:ye.data)??ye}else{const{DCodeApi:ne}=Ke();if(typeof ne!="function"){console.error("[DCodeMultiSelectChips] useApi() must expose DCodeApi()");return}const ye={page:1,perPage:100,...w.value||{}},Ve=await ne("","",ye,{_url:r.endpoint.apiUrl,_method:(r.endpoint.apiMethod||"GET").toUpperCase()}),ra=(Ve==null?void 0:Ve.data)??Ve;te=(ra==null?void 0:ra.data)??ra}g.value=Array.isArray(te)?te:[],L.value=!0}catch(te){console.error("[DCodeMultiSelectChips][fetchOptions] ERROR:",te),g.value=[]}finally{v.value=!1}}}t.watch(()=>M.value,()=>{g.value=[],L.value=!1}),t.onMounted(()=>{r.autoFetchOnMount&&m.value&&S()});const b=t.computed(()=>{const K=k.value;if(r.returnObject)return K;const te=new Map;for(const ne of C.value)te.set(y(ne),ne);return K.map(ne=>te.get(ne)??{[r.itemValue]:ne,[r.itemTitle]:String(ne)})}),x=t.computed(()=>r.maxChips===null?b.value:b.value.slice(0,r.maxChips));function I(K){const te=k.value;if(r.returnObject){const ne=y(K);return te.some(ye=>y(ye)===ne)}return te.includes(y(K))}const V=t.computed(()=>{if(r.maxSelected===null||r.maxSelected===void 0)return null;const K=Number(r.maxSelected);return Number.isFinite(K)&&K>0?K:null}),B=t.computed(()=>{const K=V.value;return K===null?!1:k.value.length>=K});function A(K){return!I(K)&&B.value}const P=t.computed(()=>{const K=k.value,te=new Set;if(r.returnObject)for(const ne of K)te.add(y(ne));else for(const ne of K)te.add(ne);return te}),D=t.computed(()=>{const K=P.value;return(C.value||[]).filter(te=>!K.has(y(te)))}),U=t.computed(()=>C.value.length===0?!1:D.value.length===0),T=t.ref(null),H=t.ref(null),N=t.ref(null),Q=t.ref(!1),j=t.ref(""),F=t.ref(0),R=t.ref(0),{floatingStyles:Z}=Q1(T,H,{whileElementsMounted:K1,placement:"bottom-start",middleware:[X1(8),Ds(),Z1({padding:8}),Y1({apply({rects:K,elements:te}){Object.assign(te.floating.style,{width:`${K.reference.width}px`,"--floating-width":`${K.reference.width}px`})}})]}),J=t.computed(()=>Z.value),re=t.computed(()=>{const K=Number(r.maxRows);return Number.isFinite(K)&&K>0?K:5});async function de(){r.disabled||(Q.value=!0,R.value=0,requestAnimationFrame(()=>{N.value&&(N.value.scrollTop=0),F.value=0}),m.value&&r.autoFetchOnOpen&&(r.refreshOnOpen||!L.value)&&!v.value&&await S())}function ue(){Q.value=!1}function ve(){Q.value?ue():de()}function le(K){var ne,ye;if(!Q.value)return;const te=K.target;(ne=T.value)!=null&&ne.contains(te)||(ye=H.value)!=null&&ye.contains(te)||ue()}t.onMounted(()=>document.addEventListener("mousedown",le)),t.onBeforeUnmount(()=>document.removeEventListener("mousedown",le));function G(K){if(r.disabled)return;if(A(K)){o("max");return}const te=[...k.value];if(r.returnObject){const ne=y(K);if(te.some(Ve=>y(Ve)===ne))return;o("update:modelValue",[...te,K])}else{const ne=y(K);if(te.includes(ne))return;o("update:modelValue",[...te,ne])}j.value="",R.value=0,requestAnimationFrame(()=>{N.value&&(N.value.scrollTop=0),F.value=0})}function z(K){if(r.disabled)return;const te=[...k.value];if(r.returnObject){const ne=y(K);o("update:modelValue",te.filter(ye=>y(ye)!==ne))}else{const ne=y(K);o("update:modelValue",te.filter(ye=>ye!==ne))}}function W(){r.disabled||(o("update:modelValue",[]),o("clear"),ue())}const ee=t.computed(()=>{const K=j.value.trim().toLowerCase(),te=D.value;return K?te.filter(ne=>p(ne).toLowerCase().includes(K)):te}),pe=t.computed(()=>ee.value.length);t.watch(Q,K=>{K||(j.value="")});const qe=t.computed(()=>{if(U.value)return r.itemHeight;const K=pe.value;return(K<=0?1:Math.min(K,re.value))*r.itemHeight}),ot=t.computed(()=>r.virtual?pe.value*r.itemHeight:0),Mt=t.computed(()=>r.virtual?Math.ceil(qe.value/r.itemHeight)+r.overscan:pe.value),oa=t.computed(()=>{if(!r.virtual)return 0;const K=Math.floor(F.value/r.itemHeight)-Math.floor(r.overscan/2);return Math.max(0,K)}),Aa=t.computed(()=>r.virtual?Math.min(pe.value,oa.value+Mt.value):pe.value),xt=t.computed(()=>r.virtual?oa.value*r.itemHeight:0),$t=t.computed(()=>{const K=ee.value;return r.virtual?K.slice(oa.value,Aa.value):K});function D1(K){const te=K.target;F.value=te.scrollTop}function E1(K){return K===R.value}function O(K){const te=N.value;if(!te||!r.virtual)return;const ne=K*r.itemHeight,ye=ne+r.itemHeight,Ve=te.scrollTop,ra=te.scrollTop+te.clientHeight;ne<Ve?te.scrollTop=ne:ye>ra&&(te.scrollTop=ye-te.clientHeight)}function ae(K){const te=Math.max(0,pe.value-1);R.value=Math.min(te,Math.max(0,R.value+K)),O(R.value)}function he(){const K=ee.value[R.value];K&&G(K)}const _e=t.computed(()=>r.clearable&&!r.disabled&&b.value.length>0),Pe=t.computed(()=>u.value?"border-red-500 ring-[0.5px] ring-red-500":Q.value?"border-gray-700 ring-[0.5px] ring-gray-700 dark:border-gray-300 dark:ring-gray-300":"");return(K,te)=>t.withDirectives((t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["flex flex-col gap-1 w-full",t.unref(n).class]),"aria-busy":r.skeleton},[r.skeleton?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[i.value?(t.openBlock(),t.createElementBlock("div",OG)):t.createCommentVNode("",!0),te[3]||(te[3]=t.createElementVNode("div",{class:"h-10 w-full rounded-lg bg-gray-200 dark:bg-gray-700 animate-pulse"},null,-1))],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[i.value?(t.openBlock(),t.createBlock(t.unref(La),{key:0,for:d.value,class:"text-sm font-medium"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(i.value)+" ",1),h.value?(t.openBlock(),t.createElementBlock("span",FG,"*")):t.createCommentVNode("",!0)]),_:1},8,["for"])):t.createCommentVNode("",!0),t.createElementVNode("div",{ref_key:"referenceEl",ref:T,class:"relative"},[t.createVNode(t.unref(Ee),{id:d.value,type:"button",variant:"outline",class:t.normalizeClass(["w-full justify-between h-auto min-h-10 px-3 py-2 transition border",["bg-white dark:bg-neutral-900 border-gray-300 dark:border-gray-700 text-foreground dark:text-gray-300",Pe.value]]),disabled:r.disabled,onClick:ve},{default:t.withCtx(()=>[t.createElementVNode("div",RG,[b.value.length?(t.openBlock(),t.createElementBlock("div",NG,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(x.value,(ne,ye)=>(t.openBlock(),t.createBlock(t.unref(_a),{key:`chip-${f(ne,ye)}`,variant:"secondary",class:"gap-1"},{default:t.withCtx(()=>[t.createElementVNode("span",$G,t.toDisplayString(p(ne)),1),r.disabled?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("button",{key:0,class:"ml-1 opacity-70 hover:opacity-100",onClick:t.withModifiers(Ve=>z(ne),["stop"]),"aria-label":"Remove"}," ✕ ",8,UG))]),_:2},1024))),128)),r.maxChips!==null&&b.value.length>r.maxChips?(t.openBlock(),t.createBlock(t.unref(_a),{key:0,variant:"secondary"},{default:t.withCtx(()=>[t.createTextVNode(" +"+t.toDisplayString(b.value.length-(r.maxChips??0)),1)]),_:1})):t.createCommentVNode("",!0)])):(t.openBlock(),t.createElementBlock("div",WG,t.toDisplayString(r.placeholder),1))]),t.createElementVNode("div",GG,[_e.value?(t.openBlock(),t.createElementBlock("button",{key:0,class:"text-muted-foreground hover:text-foreground",onClick:t.withModifiers(W,["stop"]),"aria-label":"Clear"}," ✕ ")):t.createCommentVNode("",!0),t.createVNode(t.unref(St),{class:"h-4 w-4 text-muted-foreground"})])]),_:1},8,["id","disabled","class"]),(t.openBlock(),t.createBlock(t.Teleport,{to:"body"},[Q.value?(t.openBlock(),t.createElementBlock("div",{key:0,ref_key:"floatingEl",ref:H,class:"-mt-1 z-[9999] w-[var(--floating-width)] rounded-lg border shadow-lg overflow-hidden bg-white dark:bg-neutral-900 border-gray-200 dark:border-gray-800",style:t.normalizeStyle(J.value)},[r.searchable&&!U.value?(t.openBlock(),t.createElementBlock("div",KG,[t.createVNode(t.unref(o_),{modelValue:j.value,"onUpdate:modelValue":te[0]||(te[0]=ne=>j.value=ne),placeholder:r.searchPlaceholder,class:"h-10",onKeydown:[te[1]||(te[1]=t.withKeys(t.withModifiers(ne=>ae(1),["prevent"]),["down"])),te[2]||(te[2]=t.withKeys(t.withModifiers(ne=>ae(-1),["prevent"]),["up"])),t.withKeys(t.withModifiers(he,["prevent"]),["enter"]),t.withKeys(t.withModifiers(ue,["prevent"]),["esc"])]},null,8,["modelValue","placeholder","onKeydown"])])):t.createCommentVNode("",!0),t.createElementVNode("div",{ref_key:"listEl",ref:N,class:"relative overflow-auto",style:t.normalizeStyle({height:qe.value+"px"}),onScroll:D1},[U.value?(t.openBlock(),t.createElementBlock("div",XG," All items have been selected ")):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[r.virtual?(t.openBlock(),t.createElementBlock("div",{key:0,style:t.normalizeStyle({height:ot.value+"px"})},null,4)):t.createCommentVNode("",!0),t.createElementVNode("div",{class:t.normalizeClass(r.virtual?"absolute left-0 top-0 w-full":""),style:t.normalizeStyle(r.virtual?{transform:`translateY(${xt.value}px)`}:void 0)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList($t.value,(ne,ye)=>(t.openBlock(),t.createElementBlock("button",{key:String(f(ne,oa.value+ye)),type:"button",class:t.normalizeClass(["w-full px-3 text-left text-sm flex items-center justify-between gap-3",[A(ne)?"cursor-not-allowed opacity-50":"hover:bg-neutral-50 dark:hover:bg-neutral-800/60",E1(oa.value+ye)?"bg-neutral-50 dark:bg-neutral-800/60":"",I(ne)?"font-semibold":"font-normal"]]),style:t.normalizeStyle({height:r.itemHeight+"px"}),disabled:r.disabled||A(ne),onClick:Ve=>G(ne)},[t.createElementVNode("span",YG,t.toDisplayString(p(ne)),1),I(ne)?(t.openBlock(),t.createElementBlock("span",QG,"✓")):t.createCommentVNode("",!0)],14,ZG))),128))],6),pe.value===0?(t.openBlock(),t.createElementBlock("div",JG,[v.value?(t.openBlock(),t.createElementBlock("span",eK,"Loading data…")):(t.openBlock(),t.createElementBlock("span",tK,"Tidak ada data"))])):t.createCommentVNode("",!0)],64))],36)],4)):t.createCommentVNode("",!0)]))],512),u.value?(t.openBlock(),t.createElementBlock("p",aK,t.toDisplayString(r.error),1)):t.createCommentVNode("",!0)],64))],10,jG)),[[t.vShow,s.value]])}}),oK={class:"space-y-4"},rK={key:0,class:"space-y-1"},iK={class:"text-base font-semibold text-gray-800"},sK={class:"text-sm text-gray-400"},lK={class:"flex items-center gap-2 flex-nowrap"},cK=["value","disabled","onKeydown","onInput","onPaste"],r_=t.defineComponent({name:"DCodeOtpInput",__name:"DCodeOtpInput",props:{modelValue:{default:""},totalInput:{default:6},default:{default:""},label:{default:""},endpoint:{},submitFn:{}},emits:["updateOtp","update:modelValue","complete","loading","success","error"],setup(a,{emit:e}){const n=a,o=e,r=t.ref([]),i=t.ref([]),s=t.ref(!1),{DCodeApi:c}=Ke(),d=JI(),h=t.computed(()=>{const w=Number(n.totalInput);return w&&w>0?w:6}),u=()=>{i.value=Array.from({length:h.value},(w,M)=>{var C;return((C=n.default)==null?void 0:C[M])??""}),o("updateOtp",i.value.join(""))};u(),t.watch(()=>[n.totalInput,n.default],()=>u());const p=w=>{w<0||w>=h.value||t.nextTick(()=>{var M;return(M=r.value[w])==null?void 0:M.focus()})},y=w=>w.match(/[a-zA-Z0-9]/)?w.match(/[a-zA-Z0-9]/)[0]:"";async function f(w){var M;if(o("complete",w),n.submitFn){try{s.value=!0,o("loading",!0);const C=await n.submitFn(w);o("success",C)}catch(C){console.error("OTP Submit Error",C),d.error("Submit Failed",(C==null?void 0:C.message)||"Unknown error"),o("error",(C==null?void 0:C.message)||"Submit Failed")}finally{s.value=!1,o("loading",!1)}return}if((M=n.endpoint)!=null&&M.apiUrl){if(typeof c!="function"){o("error","useApi() must expose DCodeApi()");return}try{s.value=!0,o("loading",!0);const C=(n.endpoint.apiMethod||"POST").toUpperCase(),S=n.endpoint.apiUrl,b=await c("","",{otp:w},{_url:S,_method:C,withCredentials:!0}),x=(b==null?void 0:b.data)??b;o("success",x)}catch(C){console.error("OTP Submit Error",C),d.error("Submit Failed",(C==null?void 0:C.message)||"Unknown error"),o("error",(C==null?void 0:C.message)||"Submit Failed")}finally{s.value=!1,o("loading",!1)}}}const k=(w,M)=>{i.value[w]=y(M);const C=i.value.join("");o("updateOtp",C),o("update:modelValue",C),C.length===h.value&&f(C)},m=(w,M)=>{const C=w.key,S=/^\d$/.test(C),b=/^[a-zA-Z]$/.test(C);if(C==="Backspace"){if(w.preventDefault(),i.value[M]){k(M,"");return}M>0&&(k(M-1,""),p(M-1));return}if(C==="ArrowLeft"){w.preventDefault(),p(M-1);return}if(C==="ArrowRight"){w.preventDefault(),p(M+1);return}if(S||b){w.preventDefault(),k(M,C),M<h.value-1&&p(M+1);return}C.length===1&&w.preventDefault()},g=(w,M)=>{const C=w.target,S=C.value??"",b=y(S);C.value=b,k(M,b),b&&M<h.value-1&&p(M+1)},v=(w,M)=>{var I;w.preventDefault();const S=(((I=w.clipboardData)==null?void 0:I.getData("text"))??"").replaceAll(/[^a-zA-Z0-9]/g,"");if(!S)return;let b=M;for(const V of S){if(b>=h.value)break;i.value[b]=V,b++}const x=i.value.join("");o("updateOtp",x),o("update:modelValue",x),x.length===h.value&&f(x),p(Math.min(b,h.value-1))},L=w=>M=>{r.value[w]=(M==null?void 0:M.$el)??M};return(w,M)=>(t.openBlock(),t.createElementBlock("div",oK,[n.label||h.value?(t.openBlock(),t.createElementBlock("div",rK,[t.createElementVNode("h6",iK,t.toDisplayString(n.label||"Masukkan kode keamanan"),1),t.createElementVNode("p",sK," Ketik "+t.toDisplayString(h.value)+" digit kode verifikasi Anda ",1)])):t.createCommentVNode("",!0),t.createElementVNode("div",lK,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,C=>(t.openBlock(),t.createElementBlock("input",{key:C,ref_for:!0,ref:L(C-1),value:i.value[C-1]||"",type:"text",inputmode:"text",maxlength:"1",autocomplete:"one-time-code","aria-label":"`OTP digit ${i}`",placeholder:"*",disabled:s.value,class:t.normalizeClass(["w-12 h-12 flex-none text-center text-xl font-bold rounded-xl border-2 transition-all duration-200 box-border p-0","focus:outline-none focus:scale-105 disabled:opacity-50 disabled:cursor-not-allowed",i.value[C-1]?"border-blue-500 bg-blue-50 text-blue-700 shadow-sm shadow-blue-100":"border-gray-200 bg-gray-50 text-gray-400 focus:border-blue-400 focus:bg-white focus:shadow-md focus:shadow-blue-50"]),onKeydown:S=>m(S,C-1),onInput:S=>g(S,C-1),onPaste:S=>v(S,C-1)},null,42,cK))),128))])]))}}),dK={class:"w-full"},hK={key:0,class:"flex items-center justify-between mb-2"},uK={key:0,class:"text-sm font-medium text-gray-700"},pK={key:1,class:"text-sm text-gray-600"},yK={name:"DCodeProgress"},Fz=t.defineComponent({...yK,name:"DCodeProgress",inheritAttrs:!1,props:{modelValue:{default:0},max:{default:100},label:{default:""},showValue:{type:Boolean,default:!1},color:{default:"blue"},size:{default:"md"},striped:{type:Boolean,default:!1},animated:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(a,{emit:e}){const n=a,o=t.computed(()=>Math.min(n.modelValue/n.max*100,100)),r=t.computed(()=>["w-full rounded-full overflow-hidden",{sm:"h-1",md:"h-2",lg:"h-3"}[n.size],"bg-gray-200"].join(" ")),i=t.computed(()=>{const c={blue:"bg-blue-500",green:"bg-green-500",red:"bg-red-500",yellow:"bg-yellow-500",purple:"bg-purple-500",gray:"bg-gray-500"},d=["h-full transition-all duration-300 ease-out",c[n.color]||c.blue];return n.striped&&d.push("bg-gradient-to-r from-transparent via-white/20 to-transparent"),n.animated&&d.push("animate-pulse"),d.join(" ")}),s=t.computed(()=>`${Math.round(o.value)}%`);return(c,d)=>(t.openBlock(),t.createElementBlock("div",dK,[a.label||a.showValue?(t.openBlock(),t.createElementBlock("div",hK,[a.label?(t.openBlock(),t.createElementBlock("span",uK,t.toDisplayString(a.label),1)):t.createCommentVNode("",!0),a.showValue?(t.openBlock(),t.createElementBlock("span",pK,t.toDisplayString(s.value),1)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0),t.createElementVNode("div",{class:t.normalizeClass(r.value)},[t.createElementVNode("div",{class:t.normalizeClass(i.value),style:t.normalizeStyle({width:`${o.value}%`})},null,6)],2)]))}}),fK={key:0,class:"fixed top-0 left-0 right-0 z-[10000] h-[3px]"},Rz=Xt(t.defineComponent({name:"DCodeProgressBar",__name:"DCodeProgressBar",props:{isApiLoading:{type:Boolean,default:!1},apiProgress:{default:0}},setup(a){return(e,n)=>(t.openBlock(),t.createBlock(t.Transition,{name:"fade"},{default:t.withCtx(()=>[a.isApiLoading?(t.openBlock(),t.createElementBlock("div",fK,[t.createElementVNode("div",{class:"h-full bg-primary-600 shadow-[0_0_15px_rgba(37,99,235,0.8)] transition-all duration-300 ease-out",style:t.normalizeStyle({width:`${a.apiProgress}%`})},null,4)])):t.createCommentVNode("",!0)]),_:1}))}}),[["__scopeId","data-v-85c68054"]]),kK={class:"grid gap-3"},mK={key:0,class:"ml-1 text-destructive"},gK={class:"flex flex-col"},bK={key:0,class:"flex items-center gap-2 text-sm text-gray-500 mb-2"},MK={class:"relative flex-shrink-0 mt-0.5"},xK=["id","name","value","checked","disabled","required","onChange"],wK=["onClick"],vK=["for"],CK={key:0,class:"ml-1 text-red-500"},LK={key:1,class:"flex items-center gap-1 text-sm text-red-500 mt-1"},Nz=t.defineComponent({name:"DCodeRadio",inheritAttrs:!1,__name:"DCodeRadio",props:{modelValue:{default:void 0},label:{default:""},itemTitle:{default:"name"},itemValue:{default:"id"},options:{default:()=>[]},apiUrl:{default:""},apiMethod:{default:"GET"},endpoint:{},dataPath:{default:""},layout:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},error:{default:null},size:{default:"md"},color:{default:"blue"},model:{default:"id"},id:{default:""}},emits:["update:modelValue","change"],setup(a,{emit:e}){t.useAttrs();const{apiUrl:n}=Ke(),o=e,r=a,i=t.ref([]),s=t.ref(!1),c=t.ref(null),d=async()=>{var M,C;const w=((M=r.endpoint)==null?void 0:M.apiUrl)||r.apiUrl;if(w){s.value=!0,c.value=null;try{const S={page:1,perPage:100},b=((C=r.endpoint)==null?void 0:C.apiMethod)||r.apiMethod,x=await n(w,b,S);let I=x;r.dataPath?I=r.dataPath.split(".").reduce((B,A)=>B&&B[A]!=="undefined"?B[A]:void 0,x):typeof x=="object"&&!Array.isArray(x)&&x.data&&(I=x.data),Array.isArray(I)?i.value=I:(console.warn("DCodeRadio: Format response tidak terdeteksi sebagai Array. Gunakan prop 'dataPath'."),c.value="Format respons data tidak valid. Array tidak ditemukan.")}catch(S){console.error("DCodeRadio fetch error:",S),c.value="Gagal memuat data dari endpoint."}finally{s.value=!1}}};t.onMounted(()=>{var w;((w=r.endpoint)!=null&&w.apiUrl||r.apiUrl)&&d()});const h=t.computed(()=>{if(r.options&&r.options.length>0)return r.options;if(i.value.length>0)return i.value;const w=r.itemValue||r.model||"id",M=r.itemTitle||(r.label===""?"name":r.label);return M&&r.label!==""?[{[w]:w,[M]:M}]:[]}),u=w=>{if(typeof w!="object")return w;const M=r.itemValue||r.model||"id";return w[M]},p=w=>{if(typeof w!="object")return String(w);const M=r.itemTitle||"name";return w[M]},y=t.computed(()=>r.model||`radio-group-${Math.random().toString(36).substr(2,9)}`),f=t.computed(()=>!!r.error||!!c.value),k=t.computed(()=>r.error||c.value),m=w=>w==null?r.modelValue===w:String(r.modelValue)===String(w),g=t.computed(()=>({sm:{radio:"w-3 h-3",label:"text-sm",container:"gap-2"},md:{radio:"w-4 h-4",label:"text-base",container:"gap-2"},lg:{radio:"w-5 h-5",label:"text-lg",container:"gap-3"}})[r.size]),v=(w,M)=>{M.target.checked&&(o("update:modelValue",w),o("change",w))},L=w=>{!r.disabled&&!m(w)&&(o("update:modelValue",w),o("change",w))};return(w,M)=>(t.openBlock(),t.createElementBlock("div",kK,[a.label?(t.openBlock(),t.createBlock(La,{key:0,class:"text-sm font-medium"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.label)+" ",1),a.required?(t.openBlock(),t.createElementBlock("span",mK,"*")):t.createCommentVNode("",!0)]),_:1})):t.createCommentVNode("",!0),t.createElementVNode("div",gK,[s.value?(t.openBlock(),t.createElementBlock("div",bK,[t.createVNode(t.unref(kt),{class:"w-4 h-4 animate-spin"}),M[0]||(M[0]=t.createTextVNode(" Sedang memuat opsi... ",-1))])):t.createCommentVNode("",!0),t.createElementVNode("div",{class:t.normalizeClass(["flex",a.layout?"flex-row flex-wrap gap-4":"flex-col gap-3"])},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,(C,S)=>(t.openBlock(),t.createElementBlock("div",{key:S,class:t.normalizeClass(["flex items-start",g.value.container,a.disabled?"opacity-50 cursor-not-allowed":"cursor-pointer"])},[t.createElementVNode("div",MK,[t.createElementVNode("input",{id:a.id?`${a.id}-${S}`:`${y.value}-${S}`,name:y.value,type:"radio",value:u(C),checked:m(u(C)),disabled:a.disabled,required:a.required&&S===0,onChange:b=>v(u(C),b),class:"w-5 h-5 text-blue-600 focus:ring-blue-500 border-gray-300"},null,40,xK)]),t.createElementVNode("div",{class:"flex-1 min-w-0",onClick:b=>L(u(C))},[t.createElementVNode("label",{for:a.id?`${a.id}-${S}`:`${y.value}-${S}`,class:t.normalizeClass([g.value.label,"font-medium cursor-pointer select-none text-foreground dark:text-gray-300",a.disabled?"cursor-not-allowed opacity-50":""])},[t.createTextVNode(t.toDisplayString(p(C))+" ",1),a.required&&h.value.length===1&&a.label?(t.openBlock(),t.createElementBlock("span",CK,"*")):t.createCommentVNode("",!0)],10,vK)],8,wK)],2))),128))],2),f.value&&k.value?(t.openBlock(),t.createElementBlock("div",LK,[t.createVNode(t.unref(It),{class:"w-4 h-4 flex-shrink-0"}),t.createTextVNode(" "+t.toDisplayString(k.value),1)])):t.createCommentVNode("",!0)])]))}}),SK={class:"grid gap-3"},IK={key:0,class:"ml-1 text-destructive"},_K={class:"flex flex-col"},AK={key:0,class:"flex items-center gap-2 text-sm text-gray-500 dark:text-neutral-400 mb-2"},BK=["onClick"],VK=["id","name","value","checked","disabled","required","onChange"],zK={key:1,class:"w-6 h-6",fill:"currentColor",viewBox:"0 0 20 20"},qK=["for"],PK={key:0,class:"ml-1 text-red-500"},DK={key:1,class:"flex items-center gap-1 text-sm text-red-500 mt-2"},$z=t.defineComponent({name:"DCodeRadioCustom",inheritAttrs:!1,__name:"DCodeRadioCustom",props:{modelValue:{default:void 0},icon:{},itemTitle:{default:"name"},itemValue:{default:"id"},label:{default:""},options:{default:()=>[]},apiUrl:{default:""},apiMethod:{default:"GET"},endpoint:{},dataPath:{default:""},layout:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},error:{default:null},size:{default:"md"},color:{default:"blue"},model:{default:"id"},id:{default:""}},emits:["update:modelValue","change"],setup(a,{emit:e}){t.useAttrs();const{apiUrl:n}=Ke(),o=e,r=a,i=t.ref(r.modelValue??void 0);t.watch(()=>r.modelValue,I=>{i.value=I},{immediate:!0});const s=t.ref([]),c=t.ref(!1),d=t.ref(null),h=async()=>{var V,B;const I=((V=r.endpoint)==null?void 0:V.apiUrl)||r.apiUrl;if(I){c.value=!0,d.value=null;try{const A={page:1,perPage:100},P=((B=r.endpoint)==null?void 0:B.apiMethod)||r.apiMethod,D=await n(I,P,A);let U=D;r.dataPath?U=r.dataPath.split(".").reduce((H,N)=>H&&H[N]!=="undefined"?H[N]:void 0,D):typeof D=="object"&&!Array.isArray(D)&&D.data&&(U=D.data),Array.isArray(U)?s.value=U:(console.warn("DCodeRadioCustom: Format response tidak terdeteksi sebagai Array. Gunakan prop 'dataPath'."),d.value="Format respons data tidak valid. Array tidak ditemukan.")}catch(A){console.error("DCodeRadioCustom fetch error:",A),d.value="Gagal memuat data dari endpoint."}finally{c.value=!1}}},u=t.ref(!1);let p=null;const y=()=>{typeof document<"u"&&(u.value=document.documentElement.classList.contains("dark")||document.body.classList.contains("dark"))};t.onMounted(()=>{var I;((I=r.endpoint)!=null&&I.apiUrl||r.apiUrl)&&h(),y(),typeof document<"u"&&(p=new MutationObserver(y),p.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),p.observe(document.body,{attributes:!0,attributeFilter:["class"]}))}),t.onBeforeUnmount(()=>{p&&p.disconnect()});const f=t.computed(()=>{if(r.options&&r.options.length>0)return r.options;if(s.value.length>0)return s.value;const I=r.itemValue||r.model||"id",V=r.itemTitle||(r.label===""?"name":r.label);return V&&r.label!==""?[{[I]:I,[V]:V}]:[]}),k=I=>{if(typeof I!="object")return I;const V=r.itemValue||r.model||"id";return I[V]},m=I=>{if(typeof I!="object")return String(I);const V=r.itemTitle||"name";return I[V]},g=Math.random().toString(36).slice(2,7),v=t.computed(()=>r.id?`radio-custom-${r.id}`:`radio-custom-${r.model}-${g}`),L=t.computed(()=>!!r.error||!!d.value),w=t.computed(()=>r.error||d.value),M=I=>{const V=i.value;return I==null?V===I:String(V)===String(I)},C=t.computed(()=>({sm:{radio:"w-3 h-3",label:"text-sm",container:"gap-2"},md:{radio:"w-4 h-4",label:"text-base",container:"gap-2"},lg:{radio:"w-5 h-5",label:"text-lg",container:"gap-3"}})[r.size]),S=t.computed(()=>r.icon&&Gt[r.icon]||null),b=(I,V)=>{V.target.checked&&(i.value=I,o("update:modelValue",I),o("change",I))},x=I=>{r.disabled||M(I)||(i.value=I,o("update:modelValue",I),o("change",I))};return(I,V)=>(t.openBlock(),t.createElementBlock("div",SK,[a.label?(t.openBlock(),t.createBlock(La,{key:0,class:"text-sm font-medium"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.label)+" ",1),a.required?(t.openBlock(),t.createElementBlock("span",IK,"*")):t.createCommentVNode("",!0)]),_:1})):t.createCommentVNode("",!0),t.createElementVNode("div",_K,[c.value?(t.openBlock(),t.createElementBlock("div",AK,[t.createVNode(t.unref(kt),{class:"w-4 h-4 animate-spin"}),V[0]||(V[0]=t.createTextVNode(" Sedang memuat opsi... ",-1))])):t.createCommentVNode("",!0),t.createElementVNode("div",{class:t.normalizeClass(["grid",a.layout?"grid-cols-2 sm:grid-cols-3":"grid-cols-1","gap-3"])},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,(B,A)=>(t.openBlock(),t.createElementBlock("div",{key:A,class:t.normalizeClass(["relative flex flex-col items-center justify-center gap-2 p-4 rounded-xl border-2 transition-all duration-200",M(k(B))?u.value?"border-primary-500 bg-primary-500/10 shadow-none":"border-primary-500 bg-primary-50 shadow-md shadow-primary-100":u.value?"border-neutral-700 bg-neutral-800 hover:border-neutral-600":"border-gray-200 bg-white hover:border-gray-300 hover:shadow-sm",a.disabled?"opacity-50 cursor-not-allowed":"cursor-pointer"]),onClick:P=>!a.disabled&&x(k(B))},[t.createElementVNode("input",{id:a.id?`${a.id}-${A}`:`${v.value}-${A}`,name:v.value,type:"radio",value:k(B),checked:M(k(B)),disabled:a.disabled,required:a.required&&A===0,onChange:P=>b(k(B),P),class:"sr-only",tabindex:"-1"},null,40,VK),t.createElementVNode("div",{class:t.normalizeClass(["w-10 h-10 rounded-full flex items-center justify-center transition-all duration-200",M(k(B))?u.value?"bg-primary-500/25 text-primary-400":"bg-primary-100 text-primary-600":u.value?"bg-neutral-700 text-neutral-500":"bg-gray-100 text-gray-400"])},[S.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(S.value),{key:0,class:"w-6 h-6"})):(t.openBlock(),t.createElementBlock("svg",zK,[...V[1]||(V[1]=[t.createElementVNode("circle",{cx:"10",cy:"10",r:"6"},null,-1)])]))],2),t.createElementVNode("label",{for:a.id?`${a.id}-${A}`:`${v.value}-${A}`,class:t.normalizeClass([C.value.label,"font-medium text-center leading-tight select-none transition-colors duration-200",M(k(B))?u.value?"text-primary-400":"text-primary-700":u.value?"text-neutral-300":"text-gray-700",a.disabled?"cursor-not-allowed":"cursor-pointer"])},[t.createTextVNode(t.toDisplayString(m(B))+" ",1),a.required&&f.value.length===1&&a.label?(t.openBlock(),t.createElementBlock("span",PK,"*")):t.createCommentVNode("",!0)],10,qK)],10,BK))),128))],2),L.value&&w.value?(t.openBlock(),t.createElementBlock("div",DK,[t.createVNode(t.unref(It),{class:"w-4 h-4 flex-shrink-0"}),t.createTextVNode(" "+t.toDisplayString(w.value),1)])):t.createCommentVNode("",!0)])]))}}),EK={key:0,class:"ml-1 text-destructive"},TK={class:"relative w-full"},HK={key:0,class:"mb-2 flex items-center justify-between"},jK={class:"text-sm text-muted-foreground"},OK={class:"text-sm font-medium text-foreground"},FK={class:"text-sm text-muted-foreground"},RK={class:"relative"},NK=["id","value","min","max","step","disabled","placeholder"],$K={key:1,class:"relative mt-2"},UK={class:"text-xs text-muted-foreground mt-1"},WK={key:1,class:"flex items-center gap-1 text-sm text-destructive"},GK={name:"DCodeSlider"},i_=t.defineComponent({...GK,name:"DCodeSlider",inheritAttrs:!1,props:{modelValue:{default:0},min:{default:0},max:{default:100},step:{default:1},disabled:{type:Boolean,default:!1},label:{default:""},placeholder:{default:""},required:{type:Boolean,default:!1},error:{default:null},showValue:{type:Boolean,default:!0},valuePrefix:{default:""},valueSuffix:{default:""},marks:{default:()=>[]},color:{default:"blue"},size:{default:"md"}},emits:["update:modelValue","change","input"],setup(a,{emit:e}){const n=t.useAttrs(),o=e,r=a,i=t.ref(),s=t.ref(!1),c=t.computed(()=>!!r.error),d=t.computed(()=>`slider-${Math.random().toString(36).substr(2,9)}`),h=t.computed(()=>(r.label||n.label)??void 0),u=t.computed(()=>!0),p=t.computed(()=>{const C={sm:"h-2",md:"h-2.5",lg:"h-3"},S={blue:"accent-blue-500",green:"accent-green-500",red:"accent-red-500",yellow:"accent-yellow-500",purple:"accent-purple-500",gray:"accent-gray-500"};return["w-full appearance-none bg-transparent rounded-lg outline-none transition-all cursor-pointer relative z-10","disabled:opacity-50 disabled:cursor-not-allowed",C[r.size],S[r.color]||S.blue,c.value?"accent-red-500":"",n.class].filter(Boolean).join(" ")}),y=t.computed(()=>["appearance-none bg-white border-2 border-current rounded-full cursor-pointer transition-all","hover:scale-110 focus:scale-110","shadow-md hover:shadow-lg focus:shadow-lg","focus:outline-none focus:ring-2 focus:ring-offset-2",{sm:"w-4 h-4",md:"w-5 h-5",lg:"w-6 h-6"}[r.size],r.color==="blue"?"focus:ring-blue-500":r.color==="green"?"focus:ring-green-500":r.color==="red"?"focus:ring-red-500":r.color==="yellow"?"focus:ring-yellow-500":r.color==="purple"?"focus:ring-purple-500":"focus:ring-gray-500"].join(" ")),f=t.computed(()=>`${r.valuePrefix}${r.modelValue}${r.valueSuffix}`),k=t.computed(()=>{const C=r.max-r.min;return(r.modelValue-r.min)/C*100}),m=C=>{const S=C.target,b=parseFloat(S.value);o("update:modelValue",b),o("input",b)},g=C=>{const S=C.target,b=parseFloat(S.value);o("change",b)},v=()=>{s.value=!0},L=()=>{s.value=!1},w=C=>{const S=r.max-r.min;return(C-r.min)/S*100},M=t.computed(()=>{const C={sm:16,md:20,lg:24};return`
|
|
8565
8565
|
input[type="range"]::-webkit-slider-thumb {
|
|
8566
8566
|
${y.value}
|
|
8567
8567
|
width: ${C[r.size]}px;
|
|
@@ -8592,4 +8592,4 @@ For more information, see https://www.reka-ui.com/docs/components/${n}`,c=`Warni
|
|
|
8592
8592
|
}
|
|
8593
8593
|
`});return(C,S)=>t.withDirectives((t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["flex flex-col gap-2 w-full",t.unref(n).class]),"aria-busy":!1},[h.value?(t.openBlock(),t.createBlock(t.unref(La),{key:0,for:d.value,class:"text-sm font-medium"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(h.value)+" ",1),a.required?(t.openBlock(),t.createElementBlock("span",EK,"*")):t.createCommentVNode("",!0)]),_:1},8,["for"])):t.createCommentVNode("",!0),t.createElementVNode("div",TK,[a.showValue?(t.openBlock(),t.createElementBlock("div",HK,[t.createElementVNode("span",jK,t.toDisplayString(r.valuePrefix)+t.toDisplayString(a.min)+t.toDisplayString(r.valueSuffix),1),t.createElementVNode("span",OK,t.toDisplayString(f.value),1),t.createElementVNode("span",FK,t.toDisplayString(r.valuePrefix)+t.toDisplayString(a.max)+t.toDisplayString(r.valueSuffix),1)])):t.createCommentVNode("",!0),t.createElementVNode("div",RK,[t.createElementVNode("div",{class:t.normalizeClass(["absolute top-1/2 -translate-y-1/2 w-full h-full bg-gray-200 rounded-lg pointer-events-none",[a.size==="sm"?"h-2":a.size==="md"?"h-2.5":"h-3"]])},[t.createElementVNode("div",{class:t.normalizeClass(["absolute top-0 left-0 h-full rounded-lg transition-all",[a.color==="blue"?"bg-blue-500":a.color==="green"?"bg-green-500":a.color==="red"?"bg-red-500":a.color==="yellow"?"bg-yellow-500":a.color==="purple"?"bg-purple-500":"bg-gray-500"]]),style:t.normalizeStyle({width:`${k.value}%`})},null,6)],2),t.createElementVNode("input",{id:d.value,ref_key:"sliderRef",ref:i,type:"range",value:a.modelValue,min:a.min,max:a.max,step:a.step,disabled:a.disabled,placeholder:a.placeholder,class:t.normalizeClass(p.value),onInput:m,onChange:g,onMousedown:v,onMouseup:L,onTouchstart:v,onTouchend:L},null,42,NK)]),a.marks.length>0?(t.openBlock(),t.createElementBlock("div",$K,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.marks,b=>(t.openBlock(),t.createElementBlock("div",{key:b.value,class:"absolute flex flex-col items-center",style:t.normalizeStyle({left:`${w(b.value)}%`,transform:"translateX(-50%)"})},[S[0]||(S[0]=t.createElementVNode("div",{class:"w-1 h-2 bg-gray-400 rounded-full"},null,-1)),t.createElementVNode("span",UK,t.toDisplayString(b.label),1)],4))),128))])):t.createCommentVNode("",!0)]),c.value?(t.openBlock(),t.createElementBlock("div",WK,[S[1]||(S[1]=t.createElementVNode("svg",{class:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[t.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)),t.createTextVNode(" "+t.toDisplayString(a.error),1)])):t.createCommentVNode("",!0),M.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent("style"),{key:2},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(M.value),1)]),_:1})):t.createCommentVNode("",!0)],2)),[[t.vShow,u.value]])}}),KK={class:"inline-flex items-center gap-3"},XK=["for"],ZK={key:0,class:"text-red-500 ml-1"},YK=["id","name","aria-checked","aria-label","disabled"],QK={key:0,class:"absolute inset-0 flex items-center justify-center"},JK={class:"relative z-10 flex items-center gap-2"},eX=["id","name","aria-checked","aria-label","disabled"],tX={key:0,class:"absolute inset-0 flex items-center justify-center"},aX=["for"],nX={key:0,class:"text-red-500 ml-1"},oX={name:"DCodeSwitch"},s_=t.defineComponent({...oX,props:{modelValue:{type:Boolean,default:!1},label:{default:""},disabled:{type:Boolean,default:!1},size:{default:"medium"},color:{default:"primary"},loading:{type:Boolean,default:!1},labelPosition:{default:"right"},id:{},name:{},required:{type:Boolean,default:!1},showTooltip:{type:Boolean,default:!1},tooltipActiveText:{default:"Aktif"},tooltipInactiveText:{default:"Tidak Aktif"}},emits:["update:modelValue","change"],setup(a,{emit:e}){const n=a,o=e,r=t.computed({get:()=>n.modelValue,set:p=>{!n.disabled&&!n.loading&&(o("update:modelValue",p),o("change",p))}}),i=t.computed(()=>{switch(n.size){case"small":return"w-9 h-5";case"large":return"w-14 h-7";default:return"w-11 h-6"}}),s=t.computed(()=>{switch(n.size){case"small":return"w-4 h-4";case"large":return"w-6 h-6";default:return"w-5 h-5"}}),c=t.computed(()=>{switch(n.size){case"small":return"translate-x-4";case"large":return"translate-x-7";default:return"translate-x-5"}}),d=t.computed(()=>{if(n.disabled)return"bg-gray-300";if(!r.value)return"bg-gray-200";switch(n.color){case"success":return"bg-green-500";case"warning":return"bg-yellow-500";case"danger":return"bg-red-500";default:return"bg-blue-500"}}),h=()=>{r.value=!r.value},u=t.computed(()=>r.value?n.tooltipActiveText:n.tooltipInactiveText);return(p,y)=>(t.openBlock(),t.createElementBlock("div",KK,[a.label&&a.labelPosition==="left"?(t.openBlock(),t.createElementBlock("label",{key:0,for:a.id,class:t.normalizeClass(["text-sm font-medium text-gray-700 cursor-pointer",{"opacity-50":a.disabled}])},[t.createTextVNode(t.toDisplayString(a.label)+" ",1),a.required?(t.openBlock(),t.createElementBlock("span",ZK,"*")):t.createCommentVNode("",!0)],10,XK)):t.createCommentVNode("",!0),t.createVNode(t.unref(lB),null,{default:t.withCtx(()=>[a.showTooltip?(t.openBlock(),t.createBlock(t.unref(iB),{key:0,"delay-duration":200},{default:t.withCtx(()=>[t.createVNode(t.unref(cB),{"as-child":""},{default:t.withCtx(()=>[t.createElementVNode("button",{type:"button",id:a.id,name:a.name,"aria-checked":r.value?"true":"false","aria-label":a.label||"Toggle switch",disabled:a.disabled||a.loading,class:t.normalizeClass([i.value,d.value,"relative inline-flex items-center rounded-full transition-all duration-300 ease-in-out focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500","hover:scale-105 active:scale-95",{"cursor-not-allowed opacity-50":a.disabled,"cursor-wait":a.loading,"cursor-pointer":!a.disabled&&!a.loading}]),onClick:h},[t.createElementVNode("span",{class:t.normalizeClass([s.value,r.value?c.value:"translate-x-0.5","inline-block transform rounded-full bg-white shadow-lg transition-all duration-300 ease-in-out","hover:shadow-xl flex items-center justify-center"])},[a.loading?(t.openBlock(),t.createElementBlock("span",QK,[...y[0]||(y[0]=[t.createElementVNode("svg",{class:"animate-spin h-3 w-3 text-gray-400",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},[t.createElementVNode("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}),t.createElementVNode("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})],-1)])])):t.createCommentVNode("",!0),t.createVNode(t.Transition,{"enter-active-class":"transition-all duration-200 ease-out","enter-from-class":"scale-0 rotate-90 opacity-0","enter-to-class":"scale-100 rotate-0 opacity-100","leave-active-class":"transition-all duration-150 ease-in","leave-from-class":"scale-100 rotate-0 opacity-100","leave-to-class":"scale-0 -rotate-90 opacity-0"},{default:t.withCtx(()=>[r.value&&!a.loading?(t.openBlock(),t.createBlock(t.unref(ca),{key:0,class:t.normalizeClass([a.size==="small"?"w-2.5 h-2.5":a.size==="large"?"w-4 h-4":"w-3 h-3","text-green-600 stroke-[3]"])},null,8,["class"])):!r.value&&!a.loading?(t.openBlock(),t.createBlock(t.unref(it),{key:1,class:t.normalizeClass([a.size==="small"?"w-2.5 h-2.5":a.size==="large"?"w-4 h-4":"w-3 h-3","text-gray-400 stroke-[3]"])},null,8,["class"])):t.createCommentVNode("",!0)]),_:1})],2)],10,YK)]),_:1}),t.createVNode(t.unref(sB),{side:"top","side-offset":8,class:t.normalizeClass(["animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 px-3 py-2 rounded-lg text-sm font-medium shadow-xl border-0",[r.value?"bg-green-600 dark:bg-green-500 text-white":"bg-gray-700 dark:bg-gray-600 text-white"]])},{default:t.withCtx(()=>[t.createElementVNode("span",JK,[t.createElementVNode("span",{class:t.normalizeClass(["inline-block w-2 h-2 rounded-full animate-pulse",r.value?"bg-green-200":"bg-gray-300"])},null,2),t.createTextVNode(" "+t.toDisplayString(u.value),1)])]),_:1},8,["class"])]),_:1})):(t.openBlock(),t.createElementBlock("button",{key:1,type:"button",id:a.id,name:a.name,"aria-checked":r.value?"true":"false","aria-label":a.label||"Toggle switch",disabled:a.disabled||a.loading,class:t.normalizeClass([i.value,d.value,"relative inline-flex items-center rounded-full transition-all duration-300 ease-in-out focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500","hover:scale-105 active:scale-95",{"cursor-not-allowed opacity-50":a.disabled,"cursor-wait":a.loading,"cursor-pointer":!a.disabled&&!a.loading}]),onClick:h},[t.createElementVNode("span",{class:t.normalizeClass([s.value,r.value?c.value:"translate-x-0.5","inline-block transform rounded-full bg-white shadow-lg transition-all duration-300 ease-in-out","hover:shadow-xl flex items-center justify-center"])},[a.loading?(t.openBlock(),t.createElementBlock("span",tX,[...y[1]||(y[1]=[t.createElementVNode("svg",{class:"animate-spin h-3 w-3 text-gray-400",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},[t.createElementVNode("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}),t.createElementVNode("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})],-1)])])):t.createCommentVNode("",!0),t.createVNode(t.Transition,{"enter-active-class":"transition-all duration-200 ease-out","enter-from-class":"scale-0 rotate-90 opacity-0","enter-to-class":"scale-100 rotate-0 opacity-100","leave-active-class":"transition-all duration-150 ease-in","leave-from-class":"scale-100 rotate-0 opacity-100","leave-to-class":"scale-0 -rotate-90 opacity-0"},{default:t.withCtx(()=>[r.value&&!a.loading?(t.openBlock(),t.createBlock(t.unref(ca),{key:0,class:t.normalizeClass([a.size==="small"?"w-2.5 h-2.5":a.size==="large"?"w-4 h-4":"w-3 h-3","text-green-600 stroke-[3]"])},null,8,["class"])):!r.value&&!a.loading?(t.openBlock(),t.createBlock(t.unref(it),{key:1,class:t.normalizeClass([a.size==="small"?"w-2.5 h-2.5":a.size==="large"?"w-4 h-4":"w-3 h-3","text-gray-400 stroke-[3]"])},null,8,["class"])):t.createCommentVNode("",!0)]),_:1})],2)],10,eX))]),_:1}),a.label&&a.labelPosition==="right"?(t.openBlock(),t.createElementBlock("label",{key:1,for:a.id,class:t.normalizeClass(["text-sm font-medium text-gray-700 cursor-pointer",{"opacity-50":a.disabled}])},[t.createTextVNode(t.toDisplayString(a.label)+" ",1),a.required?(t.openBlock(),t.createElementBlock("span",nX,"*")):t.createCommentVNode("",!0)],10,aX)):t.createCommentVNode("",!0)]))}}),rX=["aria-busy"],iX={key:0,class:"h-4 w-32 rounded bg-gray-200 dark:bg-gray-700 animate-pulse"},sX={key:1,class:"flex justify-end"},lX={key:0,class:"ml-1 text-destructive"},cX={class:"relative w-full group"},dX={key:0,class:"absolute inset-y-0 left-4 flex items-center text-muted-foreground"},hX={key:1},uX={key:1,class:"absolute inset-y-0 right-4 flex items-center"},pX={key:2,class:"absolute inset-y-0 right-4 flex items-center"},yX={key:3,class:"absolute top-full right-0 z-10 text-[11px] text-gray-500 dark:text-gray-400 opacity-0 transition-opacity pointer-events-none group-focus-within:opacity-100"},fX={key:1,class:"text-xs text-destructive"},l_=t.defineComponent({name:"DCodeTextField",inheritAttrs:!1,__name:"DCodeTextField",props:{modelValue:{},prependInner:{},clearable:{type:Boolean},hideClearWhenEmpty:{type:Boolean,default:!0},textCase:{default:"none"},applyTextCaseToValue:{type:Boolean,default:!0},valueType:{default:"free"},allowSpaces:{type:Boolean,default:!0},allowChars:{},pattern:{},visible:{type:Boolean,default:!0},skeleton:{type:Boolean,default:!1},showCharCount:{type:Boolean,default:!0},returnNumber:{type:Boolean,default:!1},error:{default:null},placeholder:{default:""},icon:{},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","clear"],setup(a,{emit:e}){const n=t.useAttrs(),o=t.computed(()=>{var z;return((z=c.valueType)==null?void 0:z.toLowerCase())==="password"||n.type==="password"}),r=t.ref(!1),i=()=>{r.value=!r.value},s=e,c=a,d=t.computed(()=>n.label);t.computed(()=>c.visible??!0);const h=Math.random().toString(36).slice(2,7),u=t.computed(()=>`app-text-field-${n.id||d.value||"field"}-${h}`),p=t.computed(()=>{const z=n.required,W=n["aria-required"];return z===""||z===!0||z==="true"||(W==="true"||W===!0)}),y=t.computed(()=>{const{label:z,class:W,id:ee,required:pe,"aria-required":qe,...ot}=n;return ot}),f=t.computed(()=>{var W,ee;const z={...y.value};return((W=c.valueType)==null?void 0:W.toLowerCase())==="number"&&(z.type="text",z.inputmode="numeric",z.pattern="[0-9]*"),((ee=c.valueType)==null?void 0:ee.toLowerCase())==="email"&&(z.type="email",z.inputmode="email"),o.value&&(z.type=r.value?"text":"password"),c.disabled&&(z.disabled=!0),z}),k=t.computed(()=>{const z=c.modelValue;return z==null||String(z).length===0}),m=t.computed(()=>c.clearable?c.hideClearWhenEmpty?!k.value:!0:!1),g=t.computed(()=>{switch(c.textCase){case"uppercase":return"uppercase";case"lowercase":return"lowercase";default:return"none"}}),v=t.ref(String(c.modelValue??""));t.watch(()=>c.modelValue,z=>{const W=String(z??"");W!==v.value&&(v.value=W)});const L=t.ref(!1),w=t.ref(!1),M=z=>z.split(/(\s+)/).map(W=>{if(W.trim()==="")return W;const ee=W.toLowerCase();return ee.charAt(0).toUpperCase()+ee.slice(1)}).join(""),C=z=>{const W=z.toLowerCase(),ee=W.search(new RegExp("\\p{L}","u"));return ee<0?W:W.slice(0,ee)+W.charAt(ee).toUpperCase()+W.slice(ee+1)},S=z=>{switch(c.textCase){case"uppercase":return z.toUpperCase();case"lowercase":return z.toLowerCase();case"titlecase":return M(z);case"sentencecase":return C(z);case"none":default:return z}},b=z=>{if(!z)return null;const W=Array.isArray(z)?z.join(""):z;return W?new Set(W):null},x=t.computed(()=>b(c.allowChars)),I=(z,W)=>(z.lastIndex=0,z.test(W)),V=z=>{var Mt;const W=(Mt=c.valueType)==null?void 0:Mt.toLowerCase();if(W==="free"||W==="email"||W==="password")return!0;const ee=z===" ",pe=/\d/.test(z),qe=new RegExp("\\p{L}","u").test(z),ot=new RegExp("\\p{N}","u").test(z);return W==="number"?pe:W==="letter"?qe||c.allowSpaces&&ee:W==="letternumber"?qe||ot||c.allowSpaces&&ee:!0},B=z=>{let W="";for(const ee of z){const pe=!!x.value&&x.value.has(ee);c.pattern&&!pe&&!I(c.pattern,ee)||!pe&&!V(ee)||(W+=ee)}return W},A=t.computed(()=>{const z=n.maxlength??n.maxLength;let W=Number.NaN;return typeof z=="number"?W=z:typeof z=="string"&&(W=Number.parseInt(z,10)),Number.isFinite(W)&&W>0?W:-1}),P=t.computed(()=>v.value.length),D=t.computed(()=>c.showCharCount?A.value>0:!1),U=z=>A.value>0?z.slice(0,A.value):z,T=z=>{const W=B(z),ee=c.applyTextCaseToValue?S(W):W;return U(ee)};let H=null;const N=z=>{var W;if(z==="")return null;if(((W=c.valueType)==null?void 0:W.toLowerCase())==="number"&&c.returnNumber){const ee=Number(z);return Number.isFinite(ee)?ee:null}return z},Q=z=>{v.value=z,s("update:modelValue",N(z))},j=(z,W)=>{const ee=U(W);w.value=!0,z.value=ee,Q(ee),queueMicrotask(()=>w.value=!1)},F=(z,W)=>{const ee=z.selectionStart??z.value.length,pe=z.selectionEnd??z.value.length;if(A.value>0){const qe=z.value.length-(pe-ee),ot=A.value-qe;if(ot<=0)return;W=W.slice(0,ot)}z.setRangeText(W,ee,pe,"end"),j(z,T(z.value))},R=z=>{var pe;if(!H||L.value||w.value||!((pe=z.inputType)!=null&&pe.startsWith("insert")))return;const W=z.data;if(W==null)return;const ee=T(W);ee!==W&&(z.preventDefault(),ee.length>0&&F(H,ee))},Z=z=>{var pe;if(!H||L.value||w.value)return;const W=((pe=z.clipboardData)==null?void 0:pe.getData("text"))??"",ee=T(W);ee!==W&&(z.preventDefault(),ee.length>0&&F(H,ee))},J=z=>{if(!H||L.value||w.value)return;const W=z.target,ee=W.value??"",pe=T(ee);pe===ee?Q(pe):j(W,pe)},re=()=>L.value=!0,de=()=>{if(L.value=!1,!H)return;const z=H.value??"",W=T(z);W===z?Q(W):j(H,W)};t.onMounted(()=>{if(H=document.getElementById(u.value),!H)return;H.addEventListener("beforeinput",R),H.addEventListener("paste",Z),H.addEventListener("input",J),H.addEventListener("compositionstart",re),H.addEventListener("compositionend",de);const z=H.value??"",W=T(z);W===z?Q(W):j(H,W)}),t.onBeforeUnmount(()=>{H&&(H.removeEventListener("beforeinput",R),H.removeEventListener("paste",Z),H.removeEventListener("input",J),H.removeEventListener("compositionstart",re),H.removeEventListener("compositionend",de),H=null)});const ue=()=>{v.value="",H&&(H.value=""),s("update:modelValue",null),s("clear")},ve=t.computed(()=>D.value&&P.value>0),le=t.computed(()=>`${P.value} / ${A.value}`),G=t.computed(()=>!!c.error);return(z,W)=>t.withDirectives((t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["flex flex-col gap-1 w-full",t.unref(n).class]),"aria-busy":c.skeleton},[c.skeleton?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[d.value?(t.openBlock(),t.createElementBlock("div",iX)):t.createCommentVNode("",!0),W[1]||(W[1]=t.createElementVNode("div",{class:"relative w-full"},[t.createElementVNode("div",{class:"h-10 w-full rounded-lg bg-gray-200 dark:bg-gray-700 animate-pulse"})],-1)),D.value?(t.openBlock(),t.createElementBlock("div",sX,[...W[0]||(W[0]=[t.createElementVNode("div",{class:"h-3 w-14 rounded bg-gray-200 dark:bg-gray-700 animate-pulse"},null,-1)])])):t.createCommentVNode("",!0)],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[d.value?(t.openBlock(),t.createBlock(t.unref(La),{key:0,for:u.value,class:"text-sm font-medium"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(d.value)+" ",1),p.value?(t.openBlock(),t.createElementBlock("span",lX,"*")):t.createCommentVNode("",!0)]),_:1},8,["for"])):t.createCommentVNode("",!0),t.createElementVNode("div",cX,[c.icon||c.prependInner||z.$slots["prepend-inner"]?(t.openBlock(),t.createElementBlock("div",dX,[t.renderSlot(z.$slots,"prepend-inner",{},()=>[c.icon?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(c.icon),{key:0,class:"h-4 w-4"})):c.prependInner?(t.openBlock(),t.createElementBlock("span",hX,t.toDisplayString(c.prependInner),1)):t.createCommentVNode("",!0)])])):t.createCommentVNode("",!0),t.createVNode(t.unref(o_),t.mergeProps({id:u.value,modelValue:v.value},f.value,{placeholder:c.placeholder,style:`text-transform: ${g.value}; padding-left: ${c.icon||c.prependInner||z.$slots["prepend-inner"]?"2.5rem":"0.75rem"} !important; padding-right: ${m.value||o.value?"2.5rem":"0.75rem"} !important;`,class:["w-full h-10 flex items-center gap-2 rounded-lg border py-2 bg-white dark:bg-neutral-900 text-foreground dark:text-gray-300 border-gray-300 dark:border-gray-700 focus-within:ring-1 focus-within:ring-white",G.value?"border-destructive focus:ring-destructive focus-visible:ring-destructive focus-visible:ring-[0.5px]":""]}),null,16,["id","modelValue","placeholder","style","class"]),o.value?(t.openBlock(),t.createElementBlock("div",uX,[t.createElementVNode("button",{type:"button",class:"text-muted-foreground hover:text-foreground",tabindex:"-1",onClick:i},[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.value?t.unref(ds):t.unref(Us)),{class:"w-4 h-4"}))])])):t.createCommentVNode("",!0),m.value&&!o.value?(t.openBlock(),t.createElementBlock("div",pX,[t.createElementVNode("button",{type:"button",class:"text-muted-foreground hover:text-foreground text-lg leading-none","aria-label":"Clear input",onClick:ue}," ✕ ")])):t.createCommentVNode("",!0),ve.value&&!G.value?(t.openBlock(),t.createElementBlock("p",yX,t.toDisplayString(le.value),1)):t.createCommentVNode("",!0)]),G.value?(t.openBlock(),t.createElementBlock("p",fX,t.toDisplayString(c.error),1)):t.createCommentVNode("",!0)],64))],10,rX)),[[t.vShow,a.visible]])}}),kX=["aria-busy"],mX={key:0,class:"h-4 w-32 rounded bg-gray-200 dark:bg-gray-700 animate-pulse"},gX={key:0,class:"ml-1 text-destructive"},bX={class:"relative w-full group"},MX=["id","value"],xX={key:0,class:"absolute top-1 right-2"},wX={key:1,class:"absolute top-full right-0 z-10 text-[11px] text-gray-500 dark:text-gray-400 opacity-0 transition-opacity pointer-events-none group-focus-within:opacity-100"},vX={key:1,class:"text-xs text-destructive"},dS=t.defineComponent({name:"DCodeTextarea",inheritAttrs:!1,__name:"DCodeTextarea",props:{modelValue:{},clearable:{type:Boolean},hideClearWhenEmpty:{type:Boolean,default:!0},textCase:{default:"none"},applyTextCaseToValue:{type:Boolean,default:!0},valueType:{default:"free"},allowSpaces:{type:Boolean,default:!0},allowChars:{},pattern:{},visible:{type:Boolean,default:!0},skeleton:{type:Boolean,default:!1},showCharCount:{type:Boolean,default:!0},returnNumber:{type:Boolean,default:!1},error:{default:null}},emits:["update:modelValue","clear"],setup(a,{emit:e}){const n=t.useAttrs(),o=e,r=a,i=t.computed(()=>n.label),s=t.computed(()=>r.visible??!0),c=Math.random().toString(36).slice(2,7),d=t.computed(()=>`app-textarea-${n.id||i.value||"field"}-${c}`),h=t.computed(()=>{const G=n.required,z=n["aria-required"];return G===""||G===!0||G==="true"||(z==="true"||z===!0)}),u=t.computed(()=>{const{label:G,class:z,id:W,required:ee,"aria-required":pe,...qe}=n;return qe}),p=t.computed(()=>{const G=n.maxlength;let z=Number.NaN;return typeof G=="number"?z=G:typeof G=="string"&&(z=Number.parseInt(G,10)),Number.isFinite(z)&&z>0?z:-1}),y=G=>p.value>0?G.slice(0,p.value):G,f=t.computed(()=>{const G=r.modelValue;return G==null||String(G).length===0}),k=t.computed(()=>r.clearable?r.hideClearWhenEmpty?!f.value:!0:!1),m=t.ref(String(r.modelValue??""));t.watch(()=>r.modelValue,G=>{const z=String(G??"");z!==m.value&&(m.value=z)});const g=t.ref(!1),v=t.ref(!1),L=G=>G.split(/(\s+)/).map(z=>{if(z.trim()==="")return z;const W=z.toLowerCase();return W.charAt(0).toUpperCase()+W.slice(1)}).join(""),w=G=>{const z=G.toLowerCase(),W=z.search(new RegExp("\\p{L}","u"));return W<0?z:z.slice(0,W)+z.charAt(W).toUpperCase()+z.slice(W+1)},M=G=>{switch(r.textCase){case"uppercase":return G.toUpperCase();case"lowercase":return G.toLowerCase();case"titlecase":return L(G);case"sentencecase":return w(G);case"none":default:return G}},C=t.computed(()=>{switch(r.textCase){case"uppercase":return"uppercase";case"lowercase":return"lowercase";default:return"none"}}),S=G=>{if(!G)return null;const z=Array.isArray(G)?G.join(""):G;return z?new Set(z):null},b=t.computed(()=>S(r.allowChars)),x=(G,z)=>(G.lastIndex=0,G.test(z)),I=G=>{if(G===`
|
|
8594
8594
|
`)return r.valueType!=="number";if(r.valueType==="free")return!0;const z=G===" ",W=/\d/.test(G),ee=new RegExp("\\p{L}","u").test(G),pe=new RegExp("\\p{N}","u").test(G);return r.valueType==="number"?W:r.valueType==="letter"?ee||r.allowSpaces&&z:r.valueType==="letternumber"?ee||pe||r.allowSpaces&&z:!0},V=G=>{let z="";for(const W of G){const ee=!!b.value&&b.value.has(W);r.pattern&&!ee&&!x(r.pattern,W)||!ee&&!I(W)||(z+=W)}return z},B=G=>{const z=V(G),W=r.applyTextCaseToValue?M(z):z;return y(W)};let A=null;const P=G=>{if(G==="")return null;if(r.valueType==="number"&&r.returnNumber){const z=G.replaceAll(`
|
|
8595
|
-
`,""),W=Number(z);return Number.isFinite(W)?W:null}return G},D=G=>{m.value=G,o("update:modelValue",P(G))},U=(G,z)=>{const W=y(z);v.value=!0,G.value=W,D(W),queueMicrotask(()=>v.value=!1)},T=(G,z)=>{const W=G.selectionStart??G.value.length,ee=G.selectionEnd??G.value.length;if(p.value>0){const pe=G.value.length-(ee-W),qe=p.value-pe;if(qe<=0)return;z=z.slice(0,qe)}G.setRangeText(z,W,ee,"end"),U(G,B(G.value))},H=G=>{var ee;if(!A||g.value||v.value||!((ee=G.inputType)!=null&&ee.startsWith("insert")))return;const z=G.data;if(z==null)return;const W=B(z);W!==z&&(G.preventDefault(),W.length>0&&T(A,W))},N=G=>{var ee;if(!A||g.value||v.value)return;const z=((ee=G.clipboardData)==null?void 0:ee.getData("text"))??"",W=B(z);W!==z&&(G.preventDefault(),W.length>0&&T(A,W))},Q=async G=>{if(!A||g.value||v.value)return;const z=G.target,W=z.value??"",ee=B(W);if(ee===W){const pe=z.selectionStart??ee.length,qe=z.selectionEnd??ee.length;U(z,ee),await t.nextTick();try{z.setSelectionRange(pe,qe)}catch{}D(ee)}else{const pe=z.selectionStart??ee.length,qe=z.selectionEnd??ee.length;U(z,ee),await t.nextTick();try{z.setSelectionRange(pe,qe)}catch{}}},j=()=>g.value=!0,F=()=>{if(g.value=!1,!A)return;const G=A.value??"",z=B(G);z===G?D(z):U(A,z)};t.onMounted(()=>{if(A=document.getElementById(d.value),!A)return;A.addEventListener("beforeinput",H),A.addEventListener("paste",N),A.addEventListener("input",Q),A.addEventListener("compositionstart",j),A.addEventListener("compositionend",F);const G=A.value??"",z=B(G);z===G?D(z):U(A,z)}),t.onBeforeUnmount(()=>{A&&(A.removeEventListener("beforeinput",H),A.removeEventListener("paste",N),A.removeEventListener("input",Q),A.removeEventListener("compositionstart",j),A.removeEventListener("compositionend",F),A=null)});const R=()=>{m.value="",A&&(A.value=""),o("update:modelValue",null),o("clear")},Z=t.computed(()=>m.value.length),J=t.computed(()=>r.showCharCount?p.value>0:!1),re=t.computed(()=>J.value&&Z.value>0),de=t.computed(()=>`${Z.value} / ${p.value}`),ue=t.computed(()=>!!r.error),ve=t.computed(()=>{const G=n.rows,z=typeof G=="number"?G:Number.parseInt(String(G??""),10);return Number.isFinite(z)&&z>0?z:3}),le=t.computed(()=>({height:`${ve.value*24+16}px`}));return(G,z)=>t.withDirectives((t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["flex flex-col gap-1 w-full",t.unref(n).class]),"aria-busy":r.skeleton},[r.skeleton?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[i.value?(t.openBlock(),t.createElementBlock("div",mX)):t.createCommentVNode("",!0),t.createElementVNode("div",{class:"w-full rounded-lg bg-gray-200 dark:bg-gray-700 animate-pulse",style:t.normalizeStyle(le.value)},null,4)],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[i.value?(t.openBlock(),t.createBlock(t.unref(La),{key:0,for:d.value,class:"text-sm font-medium"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(i.value)+" ",1),h.value?(t.openBlock(),t.createElementBlock("span",gX,"*")):t.createCommentVNode("",!0)]),_:1},8,["for"])):t.createCommentVNode("",!0),t.createElementVNode("div",bX,[t.createElementVNode("textarea",t.mergeProps({id:d.value,value:m.value},u.value,{style:`text-transform: ${C.value}; padding-right: ${k.value?"2.5rem":"0.75rem"} !important; padding-left: 0.75rem !important;`,class:["flex min-h-[120px] w-full rounded-lg border py-2 bg-white dark:bg-neutral-900 text-foreground dark:text-gray-300 border-gray-300 dark:border-gray-700 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",ue.value?"border-destructive focus-visible:ring-destructive":""]}),null,16,MX),k.value?(t.openBlock(),t.createElementBlock("div",xX,[t.createElementVNode("button",{type:"button",class:"text-muted-foreground hover:text-foreground text-sm leading-none","aria-label":"Clear textarea",onClick:R}," ✕ ")])):t.createCommentVNode("",!0),re.value&&!ue.value?(t.openBlock(),t.createElementBlock("p",wX,t.toDisplayString(de.value),1)):t.createCommentVNode("",!0)]),ue.value?(t.openBlock(),t.createElementBlock("p",vX,t.toDisplayString(r.error),1)):t.createCommentVNode("",!0)],64))],10,kX)),[[t.vShow,s.value]])}}),Uz=t.defineComponent({__name:"Avatar",props:{class:{type:[Boolean,null,String,Object,Array]},size:{default:"sm"},shape:{default:"circle"}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(OT),{class:t.normalizeClass(t.unref(be)(t.unref(CX)({size:a.size,shape:a.shape}),e.class))},{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},8,["class"]))}}),Wz=t.defineComponent({__name:"AvatarFallback",props:{delayMs:{},asChild:{type:Boolean},as:{}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(RT),t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),Gz=t.defineComponent({__name:"AvatarImage",props:{src:{},referrerPolicy:{},crossOrigin:{},asChild:{type:Boolean},as:{}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(UT),t.mergeProps(e,{class:"h-full w-full object-cover"}),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),CX=i1("inline-flex items-center justify-center font-normal text-foreground select-none shrink-0 bg-secondary overflow-hidden",{variants:{size:{sm:"h-10 w-10 text-xs",base:"h-16 w-16 text-2xl",lg:"h-32 w-32 text-5xl"},shape:{circle:"rounded-full",square:"rounded-md"}}}),hS=t.defineComponent({__name:"Separator",props:{orientation:{default:"horizontal"},decorative:{type:Boolean,default:!0},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class");return(o,r)=>(t.openBlock(),t.createBlock(t.unref(fj),t.mergeProps(t.unref(n),{class:t.unref(be)("shrink-0 bg-border",e.orientation==="horizontal"?"h-px w-full":"w-px h-full",e.class)}),null,16,["class"]))}}),LX={class:"bg-card text-card-foreground"},SX={class:"pb-6 px-3"},IX={key:0,class:"flex justify-center p-8"},_X={key:1,class:"p-8 text-center text-red-500"},AX={key:2,class:"relative"},BX={class:"space-y-6"},VX={class:"rounded-xl border bg-card text-card-foreground shadow"},zX={class:"p-4"},qX={class:"flex items-center justify-between gap-3"},PX={class:"font-medium"},DX={class:"text-xs text-muted-foreground"},EX={class:"mt-1 text-sm text-muted-foreground"},TX={class:"text-foreground"},HX={class:"text-foreground"},jX={class:"mt-1 text-xs text-muted-foreground"},OX={key:0,class:"mt-3 flex items-center gap-2 text-sm"},FX={class:"flex items-center justify-between gap-3"},RX={class:"font-medium"},NX={class:"text-xs text-muted-foreground"},$X={class:"mt-2 text-sm text-muted-foreground"},UX={class:"flex flex-wrap items-center justify-between gap-3"},WX={class:"flex items-center gap-3"},GX={class:"leading-tight"},KX={class:"text-sm font-medium"},XX={class:"text-xs text-muted-foreground"},ZX={class:"flex items-center gap-2"},YX={key:2,class:"flex flex-col gap-3 sm:flex-row sm:items-start"},QX={class:"h-16 w-16 shrink-0 rounded-lg bg-muted flex items-center justify-center"},JX=["src"],eZ={class:"flex-1"},tZ={class:"flex items-center justify-between gap-3"},aZ={class:"font-medium"},nZ={class:"text-xs text-muted-foreground"},oZ={class:"mt-1 text-sm text-muted-foreground"},rZ={class:"text-left sm:text-center"},iZ={class:"text-xs text-muted-foreground"},sZ={class:"text-left sm:text-center"},lZ={class:"text-xs text-muted-foreground"},cZ={class:"text-left sm:text-center"},dZ={class:"text-xs text-muted-foreground"},hZ={class:"flex items-center justify-between gap-3"},uZ={class:"font-medium"},pZ={class:"text-xs text-muted-foreground"},yZ={class:"mt-2 text-sm text-muted-foreground"},fZ={class:"mt-3 flex items-center gap-3"},kZ={class:"text-sm font-medium"},mZ={class:"flex items-start justify-between gap-3"},gZ={class:"font-medium"},bZ={class:"mt-3 grid gap-2 text-sm"},MZ={class:"flex items-center justify-between gap-3"},xZ={class:"flex items-center gap-2 text-muted-foreground"},wZ={class:"font-medium"},vZ={class:"flex items-center justify-between gap-3"},CZ={class:"flex items-center gap-2 text-muted-foreground"},LZ={class:"font-medium"},SZ={class:"flex items-center justify-between gap-3"},IZ={class:"flex items-center gap-2 text-muted-foreground"},_Z={class:"font-medium"},AZ={class:"flex items-center justify-between"},BZ={class:"flex items-center gap-2"},VZ={class:"flex items-start justify-between gap-3"},zZ={class:"flex items-center gap-2"},qZ={class:"font-medium"},PZ={class:"mt-2 text-sm text-muted-foreground"},DZ={key:0,class:"mt-1 text-sm text-muted-foreground"},EZ={class:"flex flex-wrap items-center justify-between gap-3"},TZ={class:"flex items-center gap-2"},HZ={class:"text-xs text-muted-foreground"},Kz=t.defineComponent({__name:"DCodeTimelineWithIcons",props:{items:{},apiUrl:{},apiMethod:{}},setup(a){const n=AE(_E).smaller("md");t.ref(!1);const o=a,r=t.ref(!1),i=t.ref(null),s=t.ref([]),c=t.computed(()=>s.value.length>0?s.value:o.items&&o.items.length>0?o.items:[]),d=async()=>{if(o.apiUrl){r.value=!0,i.value=null;try{const p=await fetch(o.apiUrl,{method:o.apiMethod||"GET",headers:{"Content-Type":"application/json"}});if(!p.ok)throw new Error(`Error: ${p.status} ${p.statusText}`);const y=await p.json();Array.isArray(y)?s.value=y:y.data&&Array.isArray(y.data)?s.value=y.data:y.items&&Array.isArray(y.items)?s.value=y.items:s.value=[]}catch(p){console.error("Failed to fetch timeline items:",p),i.value=p.message||"Failed to fetch data"}finally{r.value=!1}}};t.onMounted(()=>{o.apiUrl&&d()}),t.watch(()=>o.apiUrl,()=>{o.apiUrl?d():s.value=[]});const h=p=>{switch(p){case"flight":return{Icon:Ys,Circle:"bg-primary/10 text-primary border-primary/30"};case"interview":return{Icon:Ns,Circle:"bg-emerald-500/10 text-emerald-600 border-emerald-500/30"};case"product":return{Icon:t1,Circle:"bg-amber-500/10 text-amber-600 border-amber-500/30"};case"design":return{Icon:sr,Circle:"bg-sky-500/10 text-sky-600 border-sky-500/30"};case"server":return{Icon:Js,Circle:"bg-rose-500/10 text-rose-600 border-rose-500/30"};case"location":return{Icon:Ks,Circle:"bg-emerald-500/10 text-emerald-600 border-emerald-500/30"};default:return{Icon:Rs,Circle:"bg-primary/10 text-primary border-primary/30"}}},u=p=>p.split(" ").filter(Boolean).slice(0,2).map(y=>{var f;return(f=y[0])==null?void 0:f.toUpperCase()}).join("");return(p,y)=>{const f=t.resolveComponent("ShoppingCart"),k=t.resolveComponent("RefreshCcw"),m=t.resolveComponent("MapPin");return t.openBlock(),t.createElementBlock("div",LX,[y[8]||(y[8]=t.createElementVNode("div",{class:"flex flex-col space-y-1.5 py-6 px-3"},[t.createElementVNode("h3",{class:"leading-none tracking-tight text-lg font-medium"},"Timeline With Icons")],-1)),t.createElementVNode("div",SX,[r.value?(t.openBlock(),t.createElementBlock("div",IX,[...y[0]||(y[0]=[t.createElementVNode("div",{class:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary"},null,-1)])])):i.value?(t.openBlock(),t.createElementBlock("div",_X,t.toDisplayString(i.value),1)):(t.openBlock(),t.createElementBlock("div",AX,[y[7]||(y[7]=t.createElementVNode("div",{class:"absolute left-4 top-0 h-full w-px bg-border"},null,-1)),t.createElementVNode("div",BX,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value,(g,v)=>(t.openBlock(),t.createElementBlock("div",{key:v,class:"relative pl-14"},[t.createElementVNode("div",{class:t.normalizeClass(["absolute left-0 top-2 flex h-8 w-8 items-center justify-center rounded-full border",h(g.type).Circle])},[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(h(g.type).Icon),{class:"h-4 w-4"}))],2),t.createElementVNode("div",VX,[t.createElementVNode("div",zX,[g.type==="flight"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createElementVNode("div",qX,[t.createElementVNode("p",PX,t.toDisplayString(g.title),1),t.createElementVNode("p",DX,t.toDisplayString(g.meta),1)]),t.createElementVNode("p",EX,[t.createElementVNode("span",TX,t.toDisplayString(g.from),1),t.createVNode(t.unref(Ts),{class:"mx-2 inline h-4 w-4"}),t.createElementVNode("span",HX,t.toDisplayString(g.to),1)]),t.createElementVNode("p",jX,t.toDisplayString(g.time),1),g.fileName?(t.openBlock(),t.createElementBlock("div",OX,[t.createVNode(t.unref(hs),{class:"h-4 w-4 text-muted-foreground"}),t.createElementVNode("span",null,t.toDisplayString(g.fileName),1)])):t.createCommentVNode("",!0)],64)):g.type==="interview"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createElementVNode("div",FX,[t.createElementVNode("p",RX,t.toDisplayString(g.title),1),t.createElementVNode("p",NX,t.toDisplayString(g.meta),1)]),t.createElementVNode("p",$X,t.toDisplayString(g.desc),1),t.createVNode(t.unref(hS),{class:"my-4"}),t.createElementVNode("div",UX,[t.createElementVNode("div",WX,[t.createVNode(t.unref(Uz),{class:"h-10 w-10"},{default:t.withCtx(()=>[g.avatarUrl?(t.openBlock(),t.createBlock(t.unref(Gz),{key:0,src:g.avatarUrl},null,8,["src"])):t.createCommentVNode("",!0),t.createVNode(t.unref(Wz),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(u(g.personName??"")),1)]),_:2},1024)]),_:2},1024),t.createElementVNode("div",GX,[t.createElementVNode("p",KX,t.toDisplayString(g.personName),1),t.createElementVNode("p",XX,t.toDisplayString(g.personRole),1)])]),t.createElementVNode("div",ZX,[t.createVNode(t.unref(Ee),{size:"icon",variant:"ghost"},{default:t.withCtx(()=>[t.createVNode(t.unref(us),{class:"h-4 w-4"})]),_:1}),t.createVNode(t.unref(Ee),{size:"icon",variant:"ghost"},{default:t.withCtx(()=>[t.createVNode(t.unref(Zs),{class:"h-4 w-4"})]),_:1})])])],64)):g.type==="product"?(t.openBlock(),t.createElementBlock("div",YX,[t.createElementVNode("div",QX,[g.imgUrl?(t.openBlock(),t.createElementBlock("img",{key:0,src:g.imgUrl,class:"h-full w-full rounded-lg object-cover",alt:"product"},null,8,JX)):(t.openBlock(),t.createBlock(f,{key:1,class:"h-5 w-5 text-muted-foreground"}))]),t.createElementVNode("div",eZ,[t.createElementVNode("div",tZ,[t.createElementVNode("p",aZ,t.toDisplayString(g.title),1),t.createElementVNode("p",nZ,t.toDisplayString(g.meta),1)]),t.createElementVNode("p",oZ,t.toDisplayString(g.desc),1),t.createElementVNode("div",{class:t.normalizeClass(["mt-4 grid gap-3",t.unref(n)?"grid-cols-1":"grid-cols-3"])},[t.createElementVNode("div",rZ,[y[1]||(y[1]=t.createElementVNode("p",{class:"text-sm font-medium"},"Customer",-1)),t.createElementVNode("p",iZ,t.toDisplayString(g.customer),1)]),t.createElementVNode("div",sZ,[y[2]||(y[2]=t.createElementVNode("p",{class:"text-sm font-medium"},"Price",-1)),t.createElementVNode("p",lZ,t.toDisplayString(g.price),1)]),t.createElementVNode("div",cZ,[y[3]||(y[3]=t.createElementVNode("p",{class:"text-sm font-medium"},"Quantity",-1)),t.createElementVNode("p",dZ,t.toDisplayString(g.qty),1)])],2)])])):g.type==="design"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:3},[t.createElementVNode("div",hZ,[t.createElementVNode("p",uZ,t.toDisplayString(g.title),1),t.createElementVNode("p",pZ,t.toDisplayString(g.meta),1)]),t.createElementVNode("p",yZ,t.toDisplayString(g.desc),1),t.createElementVNode("div",fZ,[t.createVNode(t.unref(Uz),{class:"h-10 w-10"},{default:t.withCtx(()=>[g.avatarUrl?(t.openBlock(),t.createBlock(t.unref(Gz),{key:0,src:g.avatarUrl},null,8,["src"])):t.createCommentVNode("",!0),t.createVNode(t.unref(Wz),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(u(g.personName??"")),1)]),_:2},1024)]),_:2},1024),t.createElementVNode("p",kZ,t.toDisplayString(g.personName),1)])],64)):g.type==="server"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:4},[t.createElementVNode("div",mZ,[t.createElementVNode("p",gZ,t.toDisplayString(g.title),1),t.createVNode(t.unref(_a),{variant:"destructive",class:"h-6"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(g.chipText??""),1)]),_:2},1024)]),t.createElementVNode("div",bZ,[t.createElementVNode("div",MZ,[t.createElementVNode("div",xZ,[t.createVNode(t.unref(Ws),{class:"h-4 w-4"}),y[4]||(y[4]=t.createElementVNode("span",null,"IP Address",-1))]),t.createElementVNode("span",wZ,t.toDisplayString(g.ip),1)]),t.createElementVNode("div",vZ,[t.createElementVNode("div",CZ,[t.createVNode(t.unref(cs),{class:"h-4 w-4"}),y[5]||(y[5]=t.createElementVNode("span",null,"CPU",-1))]),t.createElementVNode("span",LZ,t.toDisplayString(g.cpu),1)]),t.createElementVNode("div",SZ,[t.createElementVNode("div",IZ,[t.createVNode(t.unref(cs),{class:"h-4 w-4"}),y[6]||(y[6]=t.createElementVNode("span",null,"Memory",-1))]),t.createElementVNode("span",_Z,t.toDisplayString(g.memory),1)])]),t.createVNode(t.unref(hS),{class:"my-4"}),t.createElementVNode("div",AZ,[t.createElementVNode("div",BZ,[t.createVNode(t.unref(Ee),{size:"icon",variant:"ghost"},{default:t.withCtx(()=>[t.createVNode(t.unref(e1),{class:"h-4 w-4"})]),_:1}),t.createVNode(t.unref(Ee),{size:"icon",variant:"ghost"},{default:t.withCtx(()=>[t.createVNode(k,{class:"h-4 w-4"})]),_:1})])])],64)):g.type==="location"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:5},[t.createElementVNode("div",VZ,[t.createElementVNode("div",zZ,[t.createVNode(m,{class:"h-4 w-4 text-muted-foreground"}),t.createElementVNode("p",qZ,t.toDisplayString(g.title),1)]),t.createVNode(t.unref(_a),{variant:"destructive",class:"h-6"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(g.chipText),1)]),_:2},1024)]),t.createElementVNode("p",PZ,t.toDisplayString(g.desc1),1),g.desc2?(t.openBlock(),t.createElementBlock("p",DZ,t.toDisplayString(g.desc2),1)):t.createCommentVNode("",!0),t.createVNode(t.unref(hS),{class:"my-4"}),t.createElementVNode("div",EZ,[t.createElementVNode("div",TZ,[t.createVNode(t.unref(Ee),{size:"icon",variant:"ghost"},{default:t.withCtx(()=>[t.createVNode(t.unref(Gs),{class:"h-4 w-4"})]),_:1}),t.createVNode(t.unref(Ee),{size:"icon",variant:"ghost"},{default:t.withCtx(()=>[t.createVNode(t.unref(us),{class:"h-4 w-4"})]),_:1}),t.createVNode(t.unref(Ee),{size:"icon",variant:"ghost"},{default:t.withCtx(()=>[t.createVNode(t.unref(o1),{class:"h-4 w-4"})]),_:1})]),t.createElementVNode("p",HZ,"Due date: "+t.toDisplayString(g.due),1)])],64)):t.createCommentVNode("",!0)])])]))),128))])]))])])}}}),jZ={class:"dcode-upload-file"},OZ={class:"border-2 border-dashed border-gray-300 dark:border-gray-700 rounded-lg p-6 flex flex-col items-center justify-center text-center hover:bg-gray-50 dark:hover:bg-gray-800 transition-colors cursor-pointer"},FZ={key:0,class:"text-xs text-gray-500 mt-1"},RZ=["accept"],NZ={key:1,class:"text-xs text-red-600 mt-1"},Xz=t.defineComponent({__name:"DCodeUploadFile",props:{label:{},accept:{},errorMessage:{},modelValue:{}},emits:["update:modelValue"],setup(a,{emit:e}){const n=e,o=r=>{var s;const i=(s=r.target.files)==null?void 0:s[0];i&&n("update:modelValue",i)};return(r,i)=>(t.openBlock(),t.createElementBlock("div",jZ,[a.label?(t.openBlock(),t.createBlock(n_,{key:0,label:a.label},null,8,["label"])):t.createCommentVNode("",!0),t.createElementVNode("div",OZ,[t.createVNode(t.unref(ha),{class:"w-8 h-8 text-gray-400 mb-2"}),i[0]||(i[0]=t.createElementVNode("p",{class:"text-sm text-gray-600 dark:text-gray-400"},[t.createElementVNode("span",{class:"font-medium text-primary-600"},"Click to upload"),t.createTextVNode(" or drag and drop ")],-1)),a.accept?(t.openBlock(),t.createElementBlock("p",FZ,t.toDisplayString(a.accept),1)):t.createCommentVNode("",!0),t.createElementVNode("input",{type:"file",class:"hidden",onChange:o,accept:a.accept},null,40,RZ)]),a.errorMessage?(t.openBlock(),t.createElementBlock("p",NZ,t.toDisplayString(a.errorMessage),1)):t.createCommentVNode("",!0)]))}}),$Z=["onClick"],UZ={key:1,class:"mr-2 text-xs font-bold shrink-0 opacity-50"},WZ={class:"font-semibold text-sm whitespace-normal text-center leading-tight"},GZ={key:1},KZ={key:0,class:"text-white"},XZ={key:1},ZZ={key:2},YZ=["disabled","onClick"],QZ={key:1,class:"mr-2 text-sm font-bold opacity-70"},JZ={class:"whitespace-normal text-sm text-center leading-tight"},eY={class:"flex flex-col flex-1 min-w-0"},tY={class:"text-sm text-muted-foreground"},aY={class:"px-1"},nY=["disabled"],oY=["type"],rY=["disabled"],Zz=Xt(t.defineComponent({__name:"DCodeWizard",props:{tabs:{},modelValue:{},defaultTab:{default:0},allowTabClick:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},cache:{type:Boolean,default:!0},autoFetchOnMount:{type:Boolean,default:!0},apiOptions:{type:[Object,Function],default:void 0},isVertical:{type:Boolean,default:!1},isWizard:{type:Boolean,default:!1},typeWizard:{default:"icon"},showNavigation:{type:Boolean,default:!0},submitText:{default:"Simpan"},loading:{type:Boolean,default:!1},isSubmit:{type:Boolean,default:!1}},emits:["update:modelValue","change","loaded","error"],setup(a,{emit:e}){const n=a,o=e,r=Ke(),i=r==null?void 0:r.DCodeApi;typeof i!="function"&&console.error("[DCodeWizardTabs] useApi() must expose DCodeApi()");const s=t.ref(n.defaultTab),c=t.computed({get(){var b;if(typeof n.modelValue=="string"){const x=(b=n.tabs)==null?void 0:b.findIndex(I=>I.key===n.modelValue);if(x!==void 0&&x>=0)return x}return(typeof n.modelValue=="number"?n.modelValue:void 0)??s.value},set(b){var x;if(s.value=b,typeof n.modelValue=="string"){const I=(x=n.tabs)==null?void 0:x[b];I?o("update:modelValue",I.key):o("update:modelValue",b)}else o("update:modelValue",b)}}),d=t.computed(()=>{var b;return((b=n.tabs)==null?void 0:b.length)??0}),h=t.computed(()=>{var b;return(b=n.tabs)==null?void 0:b[c.value]});function u(b){return d.value<=0?0:Math.min(Math.max(b,0),d.value-1)}function p(b){return b?typeof b=="string"?Gt[b]||null:b:null}const y=t.reactive({});function f(b){return y[b.key]||(y[b.key]={loaded:!1,loading:!1,data:null,error:null}),y[b.key]}function k(){if(n.apiOptions)return typeof n.apiOptions=="function"?n.apiOptions():n.apiOptions}function m(b){const x=b.endpoint||{};return{apiModule:b.apiModule||x.apiModule,apiAction:b.apiAction||x.apiAction,apiUrl:x.apiUrl,apiMethod:x.apiMethod||"GET",apiParams:b.apiParams}}function g(b){if(n.isWizard||!n.allowTabClick||n.disabled)return!1;const x=n.tabs[b];return!(!x||x.disabled)}async function v(b){if(typeof b.tab.fetchData=="function"){const D=await b.tab.fetchData(),U=(D==null?void 0:D.data)??D;return(U==null?void 0:U.data)??U}const x=m(b.tab);if(!(x.apiModule&&x.apiAction||x.apiUrl))return null;if(typeof i!="function")throw new Error("DCodeApi is not available");const V=k();let B;if(x.apiUrl)B=await i("","",V,{_url:x.apiUrl,_method:x.apiMethod,_data:x.apiParams??void 0});else{const D={...V,...x.apiParams};B=await i(x.apiModule,x.apiAction,D)}const A=(B==null?void 0:B.data)??B;return(A==null?void 0:A.data)??A}async function L(b,{force:x=!1}={}){const I=u(b),V=n.tabs[I];if(!V)return;const B=f(V);if(!(n.cache&&B.loaded&&!x)&&!B.loading){B.loading=!0,B.error=null;try{const A=await v({tabIndex:I,tab:V});B.data=A,B.loaded=!0,o("loaded",{tabIndex:I,tab:V,data:A})}catch(A){const P=typeof(A==null?void 0:A.message)=="string"&&A.message||typeof A=="string"&&A||"Failed to load tab data.";B.error=P,o("error",{tabIndex:I,tab:V,message:P})}finally{B.loading=!1}}}function w(b){const x=u(b);g(x)&&x!==c.value&&(c.value=x)}function M(b=c.value){return L(b,{force:!0})}function C(){const b=u(c.value-1);b!==c.value&&(c.value=b)}function S(){const b=u(c.value+1);b!==c.value&&(c.value=b)}return t.watch(()=>n.tabs,b=>{for(const x of b??[])f(x)},{immediate:!0}),t.watch(()=>c.value,async b=>{var I;const x=(I=n.tabs)==null?void 0:I[b];x&&o("change",{tabIndex:b,tab:x}),await L(b)},{immediate:!0}),t.watch(()=>n.autoFetchOnMount,async b=>{b&&await L(c.value)},{immediate:!0}),(b,x)=>{var I,V,B;return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["w-full rounded-lg border bg-card text-card-foreground shadow-sm",{"flex flex-row":a.isVertical}])},[t.createElementVNode("div",{class:t.normalizeClass(["flex flex-col space-y-1.5 p-6",{"w-64 border-r pr-0":a.isVertical,"pb-2":a.isWizard&&!a.isVertical}])},[t.createElementVNode("div",{class:t.normalizeClass({"mt-4":!a.isVertical||a.isWizard})},[a.isWizard?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["w-full relative flex overflow-visible rounded-lg",a.isVertical?"flex-col gap-2":""])},[a.isVertical?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:1},t.renderList(a.tabs,(A,P)=>(t.openBlock(),t.createElementBlock("div",{key:A.key,class:"relative z-10 box-border flex items-center gap-3 w-full pb-6 last:pb-0"},[t.createElementVNode("div",{class:t.normalizeClass(["w-8 h-8 rounded-full flex shrink-0 items-center justify-center font-bold text-sm border-2 transition-all bg-card",[P<c.value?"wizard-num-done":"",P===c.value?"wizard-num-active":P>c.value?"wizard-num-pending":""]])},[a.typeWizard==="icon"&&A.icon?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(p(A.icon)),{key:0,class:"w-4 h-4"})):a.typeWizard==="number"||!A.icon&&a.typeWizard!=="none"?(t.openBlock(),t.createElementBlock("span",GZ,[P<c.value?(t.openBlock(),t.createElementBlock("span",KZ,"✓")):(t.openBlock(),t.createElementBlock("span",XZ,t.toDisplayString(P+1),1))])):(t.openBlock(),t.createElementBlock("span",ZZ))],2),t.createElementVNode("span",{class:t.normalizeClass(["text-xs font-semibold whitespace-normal px-2 py-1 rounded transition-colors text-left",P===c.value?"wizard-text-active":"wizard-text-pending"])},t.toDisplayString(A.title),3)]))),128)):(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(a.tabs,(A,P)=>(t.openBlock(),t.createElementBlock("div",{key:A.key,onClick:D=>w(P),style:t.normalizeStyle({zIndex:a.tabs.length-P}),class:"relative flex-1 group"},[t.createElementVNode("div",{class:t.normalizeClass(["relative flex items-center justify-center min-h-[3rem] h-auto py-2 px-2 cursor-pointer transition-colors w-full",[P>0?"pl-8":"",P===c.value?"wizard-step-active":P<c.value?"wizard-step-done":"wizard-step-pending"]])},[a.typeWizard==="icon"&&A.icon?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(p(A.icon)),{key:0,class:"w-4 h-4 mr-2 shrink-0"})):a.typeWizard==="number"?(t.openBlock(),t.createElementBlock("span",UZ,t.toDisplayString(P+1),1)):t.createCommentVNode("",!0),t.createElementVNode("span",WZ,t.toDisplayString(A.title),1)],2),P<a.tabs.length-1?(t.openBlock(),t.createElementBlock("svg",{key:0,class:t.normalizeClass(["absolute top-0 -right-[15.5px] w-[16px] h-full transition-colors block z-10",[P===c.value?"wizard-svg-active":P<c.value?"wizard-svg-done":"wizard-svg-pending"]]),preserveAspectRatio:"none",viewBox:"0 0 16 48"},[...x[0]||(x[0]=[t.createElementVNode("polygon",{points:"0,0 16,24 0,48"},null,-1)])],2)):t.createCommentVNode("",!0)],12,$Z))),128))],2)):(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["flex w-full",a.isVertical?"flex-col gap-1":"flex-wrap border-b border-separate"])},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.tabs,(A,P)=>(t.openBlock(),t.createElementBlock("button",{key:A.key,type:"button",disabled:!g(P),onClick:D=>w(P),class:t.normalizeClass(["relative min-h-[3rem] h-auto py-2 flex items-center justify-center gap-2 px-4 transition-all rounded-none focus:outline-none focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2 wizard-btn-common",t.unref(be)("border-b border-r",!a.isVertical&&P===a.tabs.length-1&&"border-r-0",P===c.value?"wizard-btn-active":"wizard-btn-pending",!g(P)&&"opacity-60 cursor-not-allowed",a.isVertical?"w-full justify-start border-r-0":"flex-1")])},[a.typeWizard==="icon"&&A.icon?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(p(A.icon)),{key:0,class:"h-4 w-4 shrink-0"})):a.typeWizard==="number"?(t.openBlock(),t.createElementBlock("span",QZ,t.toDisplayString(P+1),1)):t.createCommentVNode("",!0),t.createElementVNode("span",JZ,t.toDisplayString(A.title),1)],10,YZ))),128))],2))],2)],2),a.isVertical?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(hS),{key:0})),t.createElementVNode("div",eY,[t.createElementVNode("div",{class:t.normalizeClass(["p-6 flex-1 min-w-0",{"pl-6":a.isVertical}])},[h.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[(I=y[h.value.key])!=null&&I.loading?t.renderSlot(b.$slots,"loading",{key:0,tab:h.value,tabIndex:c.value},()=>[x[1]||(x[1]=t.createElementVNode("div",{class:"rounded-lg border bg-muted/30 px-4 py-3 text-sm text-muted-foreground"},"Loading...",-1))],!0):t.renderSlot(b.$slots,`tab-${h.value.key}`,{key:1,tab:h.value,tabIndex:c.value,data:(V=y[h.value.key])==null?void 0:V.data,loaded:(B=y[h.value.key])==null?void 0:B.loaded,reload:M},()=>[t.createElementVNode("div",tY,[x[2]||(x[2]=t.createTextVNode(" Slot ",-1)),t.createElementVNode("code",aY,"tab-"+t.toDisplayString(h.value.key),1),x[3]||(x[3]=t.createTextVNode(" belum dibuat. ",-1))])],!0)],64)):t.createCommentVNode("",!0)],2),a.isWizard||a.showNavigation?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["flex items-center justify-between p-6 pt-0",{"pl-6":a.isVertical}])},[t.createElementVNode("button",{type:"button",onClick:C,disabled:c.value<=0,class:"relative inline-flex items-center justify-center gap-2 px-5 py-2.5 text-sm font-medium transition-all duration-300 rounded-lg bg-[#ffffff] border border-[#e2e8f0] text-[#334155] shadow-sm hover:bg-[#f8fafc] hover:text-[#0f172a] hover:-translate-y-0.5 hover:shadow disabled:opacity-50 disabled:cursor-not-allowed disabled:shadow-none disabled:hover:bg-[#ffffff] disabled:hover:text-[#334155] disabled:hover:translate-y-0 disabled:active:scale-100 dark:bg-[#18181b] dark:border-[#27272a] dark:text-[#d4d4d8] dark:hover:bg-[#27272a] dark:hover:border-[#3f3f46] dark:disabled:hover:bg-[#18181b] dark:disabled:hover:text-[#d4d4d8] focus:outline-none focus:ring-2 focus:ring-[#e2e8f0] focus:ring-offset-2 active:scale-95"}," Sebelumnya ",8,nY),c.value<d.value-1?(t.openBlock(),t.createElementBlock("button",{key:0,type:a.isSubmit?"submit":"button",onClick:S,class:"relative inline-flex items-center justify-center gap-2 px-6 py-2.5 text-sm font-medium text-[#ffffff] transition-all duration-300 rounded-lg shadow-md bg-[#2563eb] hover:bg-[#1d4ed8] hover:shadow-lg hover:-translate-y-0.5 disabled:opacity-50 disabled:cursor-not-allowed disabled:shadow-none disabled:hover:bg-[#2563eb] disabled:hover:translate-y-0 disabled:active:scale-100 focus:outline-none focus:ring-2 focus:ring-[#2563eb] focus:ring-offset-2 active:scale-95"}," Selanjutnya ",8,oY)):(t.openBlock(),t.createElementBlock("button",{key:1,type:"submit",disabled:a.loading,class:"relative inline-flex items-center justify-center gap-2 px-6 py-2.5 text-sm font-medium text-[#ffffff] transition-all duration-300 rounded-lg shadow-md bg-[#2563eb] hover:bg-[#1d4ed8] hover:shadow-lg hover:-translate-y-0.5 disabled:opacity-50 disabled:cursor-not-allowed disabled:shadow-none disabled:hover:bg-[#2563eb] disabled:hover:translate-y-0 disabled:active:scale-100 dark:bg-[#3b82f6] dark:hover:bg-[#2563eb] focus:outline-none focus:ring-2 focus:ring-[#2563eb] focus:ring-offset-2 active:scale-95"},[a.loading?(t.openBlock(),t.createBlock(t.unref(kt),{key:0,class:"w-4 h-4 mr-2 animate-spin"})):t.createCommentVNode("",!0),t.createTextVNode(" "+t.toDisplayString(a.submitText),1)],8,rY))],2)):t.createCommentVNode("",!0)])],2)}}}),[["__scopeId","data-v-d10736f3"]]);function iY(){return{setPageTitle:n=>{typeof document<"u"&&(document.title=n||document.title),typeof window<"u"&&window.dispatchEvent(new CustomEvent("micro:page-title",{detail:{title:n},bubbles:!0,composed:!0}))},setBreadcrumb:n=>{typeof window<"u"&&window.dispatchEvent(new CustomEvent("micro:breadcrumb",{detail:{items:n},bubbles:!0,composed:!0}))}}}const sY={class:"w-full"},lY={class:"relative mx-auto min-h-[37.5rem]"},cY={key:"content",class:"w-full"},dY={class:"mb-6"},hY={class:"text-neutral-500 dark:text-neutral-400"},uY={key:"skeleton",class:"w-full"},pY={key:"error",class:"flex items-center justify-center p-20 text-red-500 w-full"},Yz=Xt(t.defineComponent({__name:"AutoLayoutForm",props:{layoutCode:{}},setup(a){var C,S;const e=a,n=(S=(C=t.getCurrentInstance())==null?void 0:C.appContext)==null?void 0:S.app;n&&!n._context.provides[Symbol.for("vue-router-route-location")]&&n.provide(Symbol.for("vue-router-route-location"),{query:{},params:{},path:""});let o={query:{},params:{},path:""};try{const b=H1.useRoute();b&&(o=b)}catch{console.warn("useRoute not available, using fallback")}let r={back:()=>console.warn("Router back() not available"),push:()=>console.warn("Router push() not available")};try{const b=H1.useRouter();b&&(r=b)}catch{console.warn("useRouter not available, using fallback")}const{apiUrl:i,DCodeApi:s}=Ke();let c;try{c=MS.useI18n().locale}catch{c=t.ref("en")}const{setPageTitle:d}=iY(),h=t.computed(()=>o.params&&"id"in o.params?!0:o.path?/\/edit\/[^\/]+$/.test(o.path):!1),u=t.computed(()=>{if(o.params&&"id"in o.params)return o.params.id;if(!o.path)return null;const b=o.path.match(/\/edit\/([^\/]+)$/);return b?b[1]:null}),p=t.ref({}),y=t.ref(null),f=t.ref(!0),k=t.ref(!1),m=t.ref(e.layoutCode),g=t.computed(()=>{var I;if(!y.value)return"";const b=((I=c==null?void 0:c.value)==null?void 0:I.toLowerCase())||"en";return(b==="en"||b.startsWith("en-")?y.value.titleEN:y.value.titleID)||y.value.title||e.layoutCode});t.watch(g,b=>{b&&d(b)},{immediate:!0});const v=async()=>{var b,x,I;f.value=!0;try{let V=e.layoutCode;o&&o.query&&typeof o.query=="object"&&"code"in o.query&&(V=o.query.code||e.layoutCode);let B=await i(`/api/auto-layout/form/form-dynamic?code=${V}`,"GET");if(!B.status||!B.data||Array.isArray(B.data)&&B.data.length===0)try{const A=await i(`/api/auto-layout/datatable/form-dynamic?code=${V}`,"GET");if(A.status){const P=Array.isArray(A.data)?A.data[0]:A.data;P&&P.code&&(V=P.code,m.value=V,B=await i(`/api/auto-layout/form/form-dynamic?code=${V}`,"GET"))}}catch(A){console.warn("Failed to resolve layout code via datatable",A)}if(B.status){y.value=Array.isArray(B.data)?B.data[0]:B.data;const A={};if((b=y.value)!=null&&b.sections&&y.value.sections.forEach(P=>{((P.propsForm||P.props||{}).fields||P.fields||[]).forEach(T=>{var N;const H=T.model||((N=T.props)==null?void 0:N.model)||T.key;H&&(A[H]=null)})}),p.value=A,f.value=!1,h.value&&u.value){k.value=!0;try{if((x=y.value.endpointGlobal)!=null&&x.apiUrl){const P=y.value.endpointGlobal.apiUrl,D=y.value.endpointGlobal.apiMethod||"GET",U={id:u.value},T=await s(P,D,U);if(T.status){const H=Array.isArray(T.data)?T.data[0]:T.data;p.value={...p.value,...H}}}else{const P=((I=y.value.endpoint)==null?void 0:I.detailUrl)||`/api/${m.value}/detail/${u.value}`,D=await i(P,"GET");if(D.status){let U=Array.isArray(D.data)?D.data[0]:D.data;if(D.payload){const H={...D.payload};if(Object.keys(H).forEach(N=>{U[N]!==void 0&&U[N]!==null&&(H[N]=U[N])}),!("id"in H)&&U.id){const N=Object.keys(H).find(Q=>Q.startsWith("id")&&Q.length>2&&!H[Q]);N&&(H[N]=U.id)}U=H}const T={...U};Object.keys(p.value).forEach(H=>{if(T[H]===void 0||T[H]===null){if(H.toLowerCase().startsWith("id")&&H.length>2){const Q=H.substring(2).toLowerCase(),j=Array.isArray(D.data)?D.data[0]:D.data,F=Object.keys(j).find(R=>R.toLowerCase()===Q);F&&j[F]&&typeof j[F]=="object"&&"id"in j[F]&&(T[H]=j[F].id)}if(H==="idSupervisor"){const Q=Array.isArray(D.data)?D.data[0]:D.data;Q.supervisorId&&(T[H]=Q.supervisorId)}}}),p.value={...p.value,...T}}}}catch(P){console.error("Failed to fetch record data:",P)}finally{k.value=!1}}}}catch(V){console.error("Failed to load form layout:",V),f.value=!1}},L=async b=>{var x,I,V;try{const B=(V=(I=(x=y.value.sections)==null?void 0:x[0])==null?void 0:I.propsForm)==null?void 0:V.endpointForm,A=y.value.endpointGlobal||y.value.endpoint,P=(B==null?void 0:B.submitUrl)||(A==null?void 0:A.submitUrl)||`/api/generic/${e.layoutCode}`,D=(B==null?void 0:B.submitMethod)||(A==null?void 0:A.submitMethod)||(h.value?"PUT":"POST"),U={...b};h.value&&u.value&&!U.id&&(U.id=u.value),await i(P,D,U),r.back()}catch(B){console.error("Submit failed:",B)}},w=async(b,x)=>{if(b==="cancel"){M();return}const I=x.endpointPropAction||x.propsActionGlobal&&x.propsActionGlobal.endpointPropAction;if(I)try{f.value=!0;const V={...p.value};h.value&&x.model&&u.value&&(V[x.model]=u.value);const B=I.apiUrl,A=I.apiMethod||"POST";(await s(B,A,V)).status&&r.back()}catch(V){console.error("Action failed:",V)}finally{f.value=!1}},M=()=>{r.back()};return t.onMounted(()=>{v()}),t.onUnmounted(()=>{d("")}),(b,x)=>{const I=t.resolveComponent("DynamicForm"),V=t.resolveComponent("AutoLayoutSkeleton");return t.openBlock(),t.createElementBlock("div",sY,[t.createElementVNode("div",lY,[t.createVNode(t.Transition,{name:"fade",mode:"out-in"},{default:t.withCtx(()=>[!f.value&&y.value?(t.openBlock(),t.createElementBlock("div",cY,[t.createElementVNode("div",dY,[t.createElementVNode("p",hY,t.toDisplayString(y.value.description),1)]),t.createVNode(I,{schema:y.value,model:p.value,"is-edit-mode":h.value,loading:k.value,onSubmit:L,onCancel:M,onAction:w,class:"w-full"},null,8,["schema","model","is-edit-mode","loading"])])):f.value?(t.openBlock(),t.createElementBlock("div",uY,[t.createVNode(V)])):(t.openBlock(),t.createElementBlock("div",pY," Failed to load form configuration for "+t.toDisplayString(e.layoutCode),1))]),_:1})])])}}}),[["__scopeId","data-v-fd9d71a6"]]),yY=(a,e="short",n="id-ID")=>{const o=typeof a=="string"?new Date(a):a,r=d=>String(d).padStart(2,"0"),i=d=>`${r(d.getHours())}:${r(d.getMinutes())}:${r(d.getSeconds())}`,c={id:"id-ID",en:"en-GB"}[n]||n;return e==="time"?i(o):e==="datetime"?new Intl.DateTimeFormat(c,{day:"2-digit",month:"long",year:"numeric",hour:"2-digit",minute:"2-digit",second:"2-digit"}).format(o):e==="long"?new Intl.DateTimeFormat(c,{day:"2-digit",month:"long",year:"numeric",hour:"2-digit",minute:"2-digit"}).format(o):new Intl.DateTimeFormat(c,{day:"2-digit",month:"short",year:"numeric"}).format(o)},fY=t.defineComponent({__name:"Sheet",props:{open:{type:Boolean},defaultOpen:{type:Boolean},modal:{type:Boolean}},emits:["update:open"],setup(a,{emit:e}){const r=mt(a,e);return(i,s)=>(t.openBlock(),t.createBlock(t.unref(VA),t.normalizeProps(t.guardReactiveProps(t.unref(r))),{default:t.withCtx(()=>[t.renderSlot(i.$slots,"default")]),_:3},16))}}),kY=t.defineComponent({inheritAttrs:!1,__name:"SheetContent",props:{class:{type:[Boolean,null,String,Object,Array]},side:{},forceMount:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(a,{emit:e}){const n=a,o=e,r=De(n,"class","side"),i=mt(r,o);return(s,c)=>(t.openBlock(),t.createBlock(t.unref($A),null,{default:t.withCtx(()=>[t.createVNode(t.unref(NA),{class:"fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0"}),t.createVNode(t.unref(FA),t.mergeProps({class:t.unref(be)(t.unref(wY)({side:a.side}),n.class)},{...t.unref(i),...s.$attrs}),{default:t.withCtx(()=>[t.renderSlot(s.$slots,"default"),t.createVNode(t.unref(zA),{class:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary"},{default:t.withCtx(()=>[t.createVNode(t.unref(it),{class:"w-4 h-4"})]),_:1})]),_:3},16,["class"])]),_:3}))}}),mY=t.defineComponent({__name:"SheetDescription",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class");return(o,r)=>(t.openBlock(),t.createBlock(t.unref(RA),t.mergeProps({class:t.unref(be)("text-sm text-muted-foreground",e.class)},t.unref(n)),{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default")]),_:3},16,["class"]))}}),gY=t.defineComponent({__name:"SheetFooter",props:{class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(be)("flex flex-col-reverse sm:flex-row sm:justify-end sm:gap-x-2",e.class))},[t.renderSlot(n.$slots,"default")],2))}}),bY=t.defineComponent({__name:"SheetHeader",props:{class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(be)("flex flex-col gap-y-2 text-center sm:text-left",e.class))},[t.renderSlot(n.$slots,"default")],2))}}),MY=t.defineComponent({__name:"SheetTitle",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class");return(o,r)=>(t.openBlock(),t.createBlock(t.unref(UA),t.mergeProps({class:t.unref(be)("text-lg font-medium text-foreground",e.class)},t.unref(n)),{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default")]),_:3},16,["class"]))}}),xY=t.defineComponent({__name:"SheetTrigger",props:{asChild:{type:Boolean},as:{}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(TT),t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),wY=i1("fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500",{variants:{side:{top:"inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",bottom:"inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",left:"inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",right:"inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"}},defaultVariants:{side:"right"}}),vY={class:"flex-1 overflow-hidden"},CY=t.defineComponent({__name:"DataFilterSheet",props:{title:{default:"Filter Data"},description:{default:"Masukan parameter pencarian untuk memfilter data."}},setup(a){return(e,n)=>(t.openBlock(),t.createBlock(t.unref(fY),null,{default:t.withCtx(()=>[t.createVNode(t.unref(xY),{"as-child":""},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"trigger",{},()=>[t.createVNode(t.unref(Ee),{variant:"outline",class:"gap-2"},{default:t.withCtx(()=>[t.createVNode(t.unref(yr),{class:"w-4 h-4"}),n[0]||(n[0]=t.createElementVNode("span",null,"Pencarian",-1))]),_:1})])]),_:3}),t.createVNode(t.unref(kY),{class:"flex flex-col h-full"},{default:t.withCtx(()=>[t.createVNode(t.unref(bY),{class:"flex-shrink-0"},{default:t.withCtx(()=>[t.createVNode(t.unref(MY),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.title),1)]),_:1}),t.createVNode(t.unref(mY),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.description),1)]),_:1})]),_:1}),t.createElementVNode("div",vY,[t.renderSlot(e.$slots,"default")]),t.createVNode(t.unref(gY),{class:"flex-shrink-0"},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"footer")]),_:3})]),_:3})]),_:3}))}}),LY={key:0},SY=["value","name"],Qz=t.defineComponent({__name:"DynamicFilterField",props:{field:{},modelValue:{}},emits:["update:modelValue"],setup(a,{emit:e}){const{locale:n}=MS.useI18n(),o=a,r=e,i=t.ref(o.modelValue);t.watch(()=>o.modelValue,u=>{i.value=u});const s={DCodeTextField:l_,DCodeAutoComplete:qS,DCodeDatePicker:GI,DCodeTextarea:dS,DCodeTextArea:dS,DCodeCheckbox:q1,DCodeSwitch:s_,DCodeOtpInput:r_,DCodeImageField:a_,DCodeSlider:i_},c=t.computed(()=>{const u=o.field.component;return s[u]||null}),d=t.computed(()=>{const u=o.field.props,p={};return(u.labelID||u.labelEN)&&(p.label=n.value==="id"?u.labelID:u.labelEN),(u.placeholderID||u.placeholderEN)&&(p.placeholder=n.value==="id"?u.placeholderID:u.placeholderEN),u.required!==void 0&&(p.required=u.required),u.disabled!==void 0&&(p.disabled=u.disabled),u.readonly!==void 0&&(p.readonly=u.readonly),u.valueType&&(p.type=u.valueType),u.minLength!==void 0&&(p.minlength=u.minLength),u.maxLength!==void 0&&(p.maxlength=u.maxLength),u.min!==void 0&&(p.min=u.min),u.max!==void 0&&(p.max=u.max),u.options&&(p.options=u.options),u.endpoint&&(p.endpoint=u.endpoint),u.itemTitle&&(p.itemTitle=u.itemTitle),u.itemValue&&(p.itemValue=u.itemValue),u.returnObject!==void 0&&(p.returnObject=u.returnObject),u.clearable!==void 0&&(p.clearable=u.clearable),Object.keys(u).forEach(y=>{!["labelID","labelEN","placeholderID","placeholderEN"].includes(y)&&!p.hasOwnProperty(y)&&(p[y]=u[y])}),p}),h=u=>{i.value=u,r("update:modelValue",u)};return(u,p)=>a.field.isHidden?(t.openBlock(),t.createElementBlock("div",LY,[t.createElementVNode("input",{type:"hidden",value:i.value,name:a.field.model},null,8,SY)])):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(c.value),t.mergeProps({key:1},d.value,{modelValue:i.value,"onUpdate:modelValue":[p[0]||(p[0]=y=>i.value=y),h]}),null,16,["modelValue"]))}}),IY=t.defineComponent({__name:"Pagination",props:{page:{},defaultPage:{},itemsPerPage:{},total:{},siblingCount:{},disabled:{type:Boolean},showEdges:{type:Boolean},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},emits:["update:page"],setup(a,{emit:e}){const n=a,o=e,r=De(n,"class"),i=mt(r,o);return(s,c)=>(t.openBlock(),t.createBlock(t.unref(lH),t.mergeProps({"data-slot":"pagination"},t.unref(i),{class:n.class}),{default:t.withCtx(d=>[t.renderSlot(s.$slots,"default",t.normalizeProps(t.guardReactiveProps(d)))]),_:3},16,["class"]))}}),_Y=t.defineComponent({__name:"PaginationContent",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class");return(o,r)=>(t.openBlock(),t.createBlock(t.unref(kH),t.mergeProps({"data-slot":"pagination-content"},t.unref(n),{class:t.unref(be)("flex flex-row items-center gap-1",e.class)}),{default:t.withCtx(i=>[t.renderSlot(o.$slots,"default",t.normalizeProps(t.guardReactiveProps(i)))]),_:3},16,["class"]))}}),AY=t.defineComponent({__name:"PaginationEllipsis",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class");return(o,r)=>(t.openBlock(),t.createBlock(t.unref(rH),t.mergeProps({"data-slot":"pagination-ellipsis"},t.unref(n),{class:t.unref(be)("flex size-9 items-center justify-center",e.class)}),{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default",{},()=>[t.createVNode(t.unref(ua),{class:"size-4"}),r[0]||(r[0]=t.createElementVNode("span",{class:"sr-only"},"More pages",-1))])]),_:3},16,["class"]))}}),BY=t.defineComponent({__name:"PaginationFirst",props:{asChild:{type:Boolean},as:{},size:{default:"default"},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class","size"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(dH),t.mergeProps({"data-slot":"pagination-first",class:t.unref(be)(t.unref(xs)({variant:"ghost",size:a.size}),"gap-1 px-2.5 sm:pr-2.5",e.class)},t.unref(o)),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[t.createVNode(t.unref(dn)),i[0]||(i[0]=t.createElementVNode("span",{class:"hidden sm:block"},"First",-1))])]),_:3},16,["class"]))}}),VY=t.defineComponent({__name:"PaginationItem",props:{value:{},asChild:{type:Boolean},as:{},size:{default:"icon"},class:{type:[Boolean,null,String,Object,Array]},isActive:{type:Boolean}},setup(a){const e=a,n=De(e,"class","size","isActive");return(o,r)=>(t.openBlock(),t.createBlock(t.unref(gH),t.mergeProps({"data-slot":"pagination-item"},t.unref(n),{class:t.unref(be)(t.unref(xs)({variant:"ghost",size:a.size}),a.isActive?"bg-[#0056a1] dark:bg-[#003d75] text-white hover:bg-[#0056a1]/90 dark:hover:bg-[#003d75]/90 hover:text-white":"",e.class)}),{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default")]),_:3},16,["class"]))}}),zY=t.defineComponent({__name:"PaginationLast",props:{asChild:{type:Boolean},as:{},size:{default:"default"},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class","size"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(uH),t.mergeProps({"data-slot":"pagination-last",class:t.unref(be)(t.unref(xs)({variant:"ghost",size:a.size}),"gap-1 px-2.5 sm:pr-2.5",e.class)},t.unref(o)),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[i[0]||(i[0]=t.createElementVNode("span",{class:"hidden sm:block"},"Last",-1)),t.createVNode(t.unref(hn))])]),_:3},16,["class"]))}}),qY=t.defineComponent({__name:"PaginationNext",props:{asChild:{type:Boolean},as:{},size:{default:"default"},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class","size"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(MH),t.mergeProps({"data-slot":"pagination-next",class:t.unref(be)(t.unref(xs)({variant:"ghost",size:a.size}),"gap-1 px-2.5 sm:pr-2.5",e.class)},t.unref(o)),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[i[0]||(i[0]=t.createElementVNode("span",{class:"hidden sm:block"},"Next",-1)),t.createVNode(t.unref(hn))])]),_:3},16,["class"]))}}),PY=t.defineComponent({__name:"PaginationPrevious",props:{asChild:{type:Boolean},as:{},size:{default:"default"},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class","size"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(wH),t.mergeProps({"data-slot":"pagination-previous",class:t.unref(be)(t.unref(xs)({variant:"ghost",size:a.size}),"gap-1 px-2.5 sm:pr-2.5",e.class)},t.unref(o)),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[t.createVNode(t.unref(dn)),i[0]||(i[0]=t.createElementVNode("span",{class:"hidden sm:block"},"Previous",-1))])]),_:3},16,["class"]))}}),DY=t.defineComponent({__name:"Select",props:{open:{type:Boolean},defaultOpen:{type:Boolean},defaultValue:{},modelValue:{},by:{type:[String,Function]},dir:{},multiple:{type:Boolean},autocomplete:{},disabled:{type:Boolean},name:{},required:{type:Boolean}},emits:["update:modelValue","update:open"],setup(a,{emit:e}){const r=mt(a,e);return(i,s)=>(t.openBlock(),t.createBlock(t.unref(_H),t.normalizeProps(t.guardReactiveProps(t.unref(r))),{default:t.withCtx(()=>[t.renderSlot(i.$slots,"default")]),_:3},16))}}),EY=t.defineComponent({inheritAttrs:!1,__name:"SelectContent",props:{forceMount:{type:Boolean},position:{default:"popper"},bodyLock:{type:Boolean},side:{},sideOffset:{},sideFlip:{type:Boolean},align:{},alignOffset:{},alignFlip:{type:Boolean},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},hideShiftedArrow:{type:Boolean},sticky:{},hideWhenDetached:{type:Boolean},positionStrategy:{},updatePositionStrategy:{},disableUpdateOnLayoutShift:{type:Boolean},prioritizePosition:{type:Boolean},reference:{},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean},class:{type:[Boolean,null,String,Object,Array]}},emits:["closeAutoFocus","escapeKeyDown","pointerDownOutside"],setup(a,{emit:e}){const n=a,o=e,r=De(n,"class"),i=mt(r,o);return(s,c)=>(t.openBlock(),t.createBlock(t.unref(ej),null,{default:t.withCtx(()=>[t.createVNode(t.unref(NH),t.mergeProps({...t.unref(i),...s.$attrs},{class:t.unref(be)("relative z-50 max-h-96 min-w-32 overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",a.position==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",n.class)}),{default:t.withCtx(()=>[t.createVNode(t.unref(OY)),t.createVNode(t.unref(hj),{class:t.normalizeClass(t.unref(be)("p-1",a.position==="popper"&&"h-[--reka-select-trigger-height] w-full min-w-[--reka-select-trigger-width]"))},{default:t.withCtx(()=>[t.renderSlot(s.$slots,"default")]),_:3},8,["class"]),t.createVNode(t.unref(jY))]),_:3},16,["class"])]),_:3}))}}),TY={class:"absolute right-2 flex h-3.5 w-3.5 items-center justify-center"},HY=t.defineComponent({__name:"SelectItem",props:{value:{},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(KH),t.mergeProps(t.unref(o),{class:t.unref(be)("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e.class)}),{default:t.withCtx(()=>[t.createElementVNode("span",TY,[t.createVNode(t.unref(ZH),null,{default:t.withCtx(()=>[t.createVNode(t.unref(ca),{class:"h-4 w-4"})]),_:1})]),t.createVNode(t.unref(QH),null,{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default")]),_:3})]),_:3},16,["class"]))}}),jY=t.defineComponent({__name:"SelectScrollDownButton",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(nj),t.mergeProps(t.unref(o),{class:t.unref(be)("flex cursor-default items-center justify-center py-1",e.class)}),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[t.createVNode(t.unref(St))])]),_:3},16,["class"]))}}),OY=t.defineComponent({__name:"SelectScrollUpButton",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(rj),t.mergeProps(t.unref(o),{class:t.unref(be)("flex cursor-default items-center justify-center py-1",e.class)}),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[t.createVNode(t.unref(js))])]),_:3},16,["class"]))}}),FY=t.defineComponent({__name:"SelectTrigger",props:{disabled:{type:Boolean},reference:{},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(sj),t.mergeProps(t.unref(o),{class:t.unref(be)("flex h-9 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm ring-offset-background data-[placeholder]:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 [&>span]:truncate text-start",e.class)}),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default"),t.createVNode(t.unref(UH),{"as-child":""},{default:t.withCtx(()=>[t.createVNode(t.unref(St),{class:"w-4 h-4 opacity-50 shrink-0"})]),_:1})]),_:3},16,["class"]))}}),RY=t.defineComponent({__name:"SelectValue",props:{placeholder:{},asChild:{type:Boolean},as:{}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(cj),t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),NY={class:"dcode-card animate-slide-up"},$Y={class:"px-4 py-2 bg-primary-700 dark:bg-primary-900 border-b border-primary-500/30 dark:border-primary-900/50 rounded-t-xl relative z-30"},UY={class:"flex flex-col lg:flex-row lg:items-center lg:justify-between gap-4"},WY={key:0,class:"flex flex-col sm:flex-row items-start sm:items-center gap-2 flex-1 max-w-2xl"},GY={class:"relative w-full sm:w-64"},KY={key:0,class:"relative"},XY={class:"flex flex-col h-full"},ZY={key:0,class:"flex-1 overflow-y-auto py-4"},YY={class:"grid grid-cols-1 md:grid-cols-2 gap-4 px-1"},QY={key:0,class:"sticky bottom-0 left-0 right-0 bg-white dark:bg-zinc-900 border-t border-neutral-200 dark:border-neutral-700 p-4 flex gap-2"},JY={class:"flex justify-end gap-2 w-full"},eQ={key:0,class:"font-medium text-sm text-neutral-600 dark:text-neutral-400"},tQ={class:"overflow-auto custom-scrollbar relative max-h-[calc(100vh-17rem)]"},aQ={class:"dcode-table w-full"},nQ={class:"bg-primary-700 dark:bg-primary-900 sticky top-0 z-20 shadow-sm"},oQ=["onClick"],rQ={key:0,class:"flex items-center justify-center w-full"},iQ={key:0,class:"px-3 py-2 text-xs font-medium text-white dark:text-neutral-100 uppercase tracking-wider"},sQ={class:"bg-white dark:bg-zinc-900 divide-y divide-neutral-200 dark:divide-neutral-700"},lQ={key:0,class:"px-3 py-0.5"},cQ={key:1},dQ=["colspan"],hQ={class:"flex flex-col items-center gap-4"},uQ={class:"text-base font-medium text-neutral-700 dark:text-neutral-300"},pQ={class:"text-sm text-neutral-500 dark:text-neutral-400 mt-1"},yQ={class:"hover:bg-zinc-50 dark:hover:bg-zinc-800/50 transition-colors duration-150"},fQ={key:0,class:"flex items-center justify-center"},kQ={key:0,class:"px-3 py-0.5 !text-center"},mQ={key:0,class:"flex items-center justify-center gap-1.5"},gQ={key:0,class:"bg-zinc-50/50 dark:bg-zinc-800/30"},bQ=["colspan"],MQ={key:0,class:"px-4 py-3 bg-zinc-50/50 dark:bg-zinc-800/30 border-t border-neutral-200 dark:border-neutral-700 flex flex-col sm:flex-row items-center justify-between gap-4 w-full"},xQ={class:"flex items-center gap-4"},wQ={class:"text-xs text-neutral-500 dark:text-neutral-400 font-medium"},vQ={class:"text-neutral-900 dark:text-neutral-100 font-medium"},CQ={class:"text-neutral-900 dark:text-neutral-100 font-medium"},LQ={class:"text-neutral-900 dark:text-neutral-100 font-medium"},SQ={class:"flex-shrink-0"},IQ={class:"space-y-4"},_Q={class:"text-gray-600 dark:text-gray-400"},AQ={class:"grid grid-cols-1 md:grid-cols-2 gap-4 py-4 px-1"},uS=t.defineComponent({__name:"DataTable",props:{columns:{default:()=>[]},data:{default:()=>[]},perPage:{default:10},loading:{type:Boolean,default:!1},hasActions:{type:Boolean,default:!1},nested:{type:Boolean,default:!1},apiModule:{},apiAction:{default:"list"},apiMethod:{},apiUrl:{},permissionBase:{},apiParams:{default:()=>({})},configKey:{},tableConfig:{},dynamicColumns:{type:Boolean,default:!1},searchApiEndpoint:{},enableQuickSearch:{type:Boolean,default:!0},showPagination:{type:Boolean,default:!0},ignorePermissions:{type:Boolean,default:!1},userPermissions:{default:null},permissionChecker:{type:Function,default:void 0}},emits:["update:search","update:sort","update:page","create","export","action","update:selection","navigate"],setup(a,{expose:e,emit:n}){console.log("[DEBUG] DataTable.vue loaded - top level");const o=a,r=n,{apiUrl:i}=Ke(),{locale:s}=MS.useI18n(),c=t.ref(""),d=t.ref(1),h=t.ref(o.perPage),u=t.ref({key:"",direction:"asc"}),p=t.ref([]),y=t.ref(!1),f=t.ref(0),k=t.ref({}),m=t.ref([]),g=t.ref(null),v=t.ref(!0),L=t.ref([]),w=t.ref([]),M=t.ref([]),C=t.ref(!1),S=t.ref(!1),b=t.ref({}),x=t.ref(null),I=t.ref(null),V=t.ref(null),B=t.ref([]),A=t.computed(()=>{if(xt.value.length===0)return!1;const _=xt.value.map(E=>{const X=de.value.find($=>$.type==="CHECKBOX"),q=(X==null?void 0:X.keyCheckbox)||"id";return E[q]}).filter(E=>E!=null);return _.length===0?!1:_.every(E=>B.value.includes(E))}),P=t.computed(()=>{if(xt.value.length===0)return!1;const _=de.value.find($=>$.type==="CHECKBOX"),E=(_==null?void 0:_.keyCheckbox)||"id",X=xt.value.map($=>$[E]).filter($=>$!=null),q=X.filter($=>B.value.includes($)).length;return q>0&&q<X.length}),D=_=>{const E=de.value.find($=>$.type==="CHECKBOX"),X=(E==null?void 0:E.keyCheckbox)||"id",q=_[X];return q!==void 0&&B.value.includes(q)},U=_=>{const E=de.value.find($=>$.type==="CHECKBOX"),X=(E==null?void 0:E.keyCheckbox)||"id",q=xt.value.map($=>$[X]).filter($=>$!=null);if(_){const $=new Set([...B.value,...q]);B.value=Array.from($)}else B.value=B.value.filter($=>!q.includes($))},T=(_,E)=>{const X=de.value.find(Y=>Y.type==="CHECKBOX"),q=(X==null?void 0:X.keyCheckbox)||"id",$=_[q];$!=null&&(E?B.value.includes($)||B.value.push($):B.value=B.value.filter(Y=>Y!==$))};t.watch(B,_=>{var X;r("update:selection",_);const E=A.value||_.length>1;(X=w.value)!=null&&X.length&&w.value.forEach(q=>{var $;($=q.fieldActionGlobal)!=null&&$.length&&q.fieldActionGlobal.forEach(Y=>{var Ge,rt;const fe=q.endpoint||((Ge=q.propsActionGlobal)==null?void 0:Ge.endpointPropAction)||q.propsActionGlobal,xe=(rt=fe==null?void 0:fe.keyParam)==null?void 0:rt[0];(xe&&Y.model===xe||!xe&&/^(id|ids|idAuditTrail)/i.test(Y.model))&&E&&Y.model&&(b.value[Y.model]=_)})})},{deep:!0});const H=_=>_&&typeof _=="string"&&_.trim()?_:void 0,N=t.computed(()=>{var _,E,X,q;return H((E=(_=g.value)==null?void 0:_.endpoint)==null?void 0:E.apiModule)||H((q=(X=g.value)==null?void 0:X.endpointGlobal)==null?void 0:q.apiModule)||o.apiModule}),Q=t.computed(()=>{var _,E,X,q;return H((E=(_=g.value)==null?void 0:_.endpoint)==null?void 0:E.apiAction)||H((q=(X=g.value)==null?void 0:X.endpointGlobal)==null?void 0:q.apiAction)||o.apiAction}),j=t.computed(()=>{var _,E,X,q;return H((E=(_=g.value)==null?void 0:_.endpoint)==null?void 0:E.apiMethod)||H((q=(X=g.value)==null?void 0:X.endpointGlobal)==null?void 0:q.apiMethod)||o.apiMethod||"POST"}),F=t.computed(()=>{var _,E,X,q;return H((E=(_=g.value)==null?void 0:_.endpoint)==null?void 0:E.apiUrl)||H((q=(X=g.value)==null?void 0:X.endpointGlobal)==null?void 0:q.apiUrl)||o.apiUrl}),R=t.computed(()=>o.permissionBase||""),Z=t.computed(()=>!M.value||M.value.length===0?[]:[...M.value].sort((_,E)=>(_.seq||0)-(E.seq||0))),J=_=>{if(!_)return"col-span-1";const E=_.toLowerCase();return{full:"col-span-1 md:col-span-2",half:"col-span-1",third:"col-span-1","two-thirds":"col-span-1 md:col-span-2",two_thirds:"col-span-1 md:col-span-2"}[E]||"col-span-1"},re=()=>{let _=null;if(o.tableConfig&&(_=o.tableConfig),_){g.value=_,_.headers&&(m.value=_.headers.map(q=>{var fe,xe,Be,Ge,rt,mS,dq,hq,uq,pq;if(q.key==="action"||((fe=q.custom)==null?void 0:fe.type)==="ACTION"||((xe=q.custom)==null?void 0:xe.type)==="action"){const Ba=((Be=q.custom)==null?void 0:Be.actionCustom)||((Ge=q.custom)==null?void 0:Ge.action);return Ba&&(L.value=Ba.map(ia=>{const Fe=ia.propsActionCustom||ia.props||{},gS=ia.propCustomMessage||{};return{permission:ia.permission,label:s.value==="id"?Fe.labelID:Fe.labelEN,tooltip:s.value==="id"?Fe.tooltipID||Fe.labelID:Fe.tooltipEN||Fe.labelEN,icon:Fe.icon,variant:Fe.variant||"ghost",bgColor:Fe.bgColor,action:Fe.actionType||Fe.key,route:Fe.route,path:Fe.path,endpoint:Fe.endpointPropAction,requiredCondition:ia.requiredCondition||!1,propCustomCondition:ia.propCustomCondition||[],openDialog:ia.openDialog||!1,fieldActionCustom:(ia.fieldActionCustom||[]).map(bS=>{const p_=bS.propsFieldCustom||bS.propsFieldGlobal||bS.props||{};return{...bS,props:{...p_,endpoint:p_.endpointComponent||p_.endpoint}}}),requireConfirm:ia.requireConfirm||Fe.requireConfirm||!1,confirmTitle:s.value==="id"?gS.titleID||Fe.confirmTitleID||"Konfirmasi":gS.titleEN||Fe.confirmTitleEN||"Confirm",confirmMessage:s.value==="id"?gS.messageID||Fe.confirmMessageID||"Apakah Anda yakin?":gS.messageEN||Fe.confirmMessageEN||"Are you sure?"}})),null}let $;const Y=((rt=q.custom)==null?void 0:rt.conditionBadge)||((mS=q.custom)==null?void 0:mS.condition);return(((dq=q.custom)==null?void 0:dq.type)==="BADGE"||((hq=q.custom)==null?void 0:hq.type)==="badge")&&Y&&($=Y.map(Ba=>({value:Ba.value,label:s.value==="id"?Ba.labelID:Ba.labelEN,color:Ba.color,variant:Ba.variant}))),{key:q.key,label:s.value==="id"?q.labelID:q.labelEN,width:q.width,align:q.align,sortable:!0,type:(uq=q.custom)==null?void 0:uq.type,condition:$,keyCheckbox:(pq=q.custom)==null?void 0:pq.keyCheckbox}}).filter(q=>q!==null));const E=_.filters||_.filter;E&&Array.isArray(E)&&(M.value=E.map(q=>({...q,props:q.propsFilters||q.props||{}})),M.value.forEach(q=>{k.value[q.model]=""}));const X=_.actionGlobal||_.action;console.log("[DEBUG] loadConfig rawActions:",X),X&&Array.isArray(X)?(w.value=X.map(q=>{const $=q.propsActionGlobal||q.props||{};return{key:$.key,permission:q.permission,label:s.value==="id"?$.labelID||"Action":$.labelEN||"Action",tooltip:s.value==="id"?$.tooltipID||$.labelID:$.tooltipEN||$.labelEN,icon:$.icon,variant:$.variant||"default",bgColor:$.bgColor,textColor:$.textColor,route:$.route,path:$.path,endpoint:$.endpointPropAction||q.endpoint,openDialog:q.openDialog||!1,fieldActionGlobal:(q.fieldActionGlobal||q.field||[]).map(Y=>{const fe=Y.propsFieldGlobal||Y.props||{};return{...Y,props:{...fe,endpoint:fe.endpointComponent||fe.endpoint}}})}}),console.log("[DEBUG] loadConfig headerActions set:",w.value)):console.log("[DEBUG] loadConfig no rawActions found"),_.pagination!==void 0&&(v.value=_.pagination)}};t.watch(()=>o.tableConfig,()=>{re()},{deep:!0,immediate:!0});const de=t.computed(()=>o.dynamicColumns||o.configKey||o.tableConfig?m.value:o.columns||[]),ue=t.computed(()=>o.hasActions||L.value.length>0),ve=t.computed(()=>N.value||F.value?y.value:o.loading),le=t.computed(()=>!!N.value||!!F.value),G=t.computed(()=>[]),z=_=>{if(console.log("[DEBUG] hasAction called:",{actionCode:_,permissionChecker:!!o.permissionChecker,effectivePath:R.value}),o.permissionChecker){const E=o.permissionChecker(R.value,_);return console.log("[DEBUG] permissionChecker result:",E),E}return G.value.some(E=>E.code===_)},W=(_,E)=>{if(!_.visibilityCondition)return!0;const{field:X,operator:q,value:$}=_.visibilityCondition,Y=O(E,X);switch(q){case"equals":return Y===$;case"notEquals":return Y!==$;case"in":return Array.isArray($)&&$.includes(Y);case"notIn":return Array.isArray($)&&!$.includes(Y);case"greaterThan":return Y>$;case"lessThan":return Y<$;case"contains":return String(Y).includes(String($));default:return!0}},ee=t.computed(()=>{if(console.log("[DEBUG] visibleHeaderActions:",{headerActions:w.value,ignorePermissions:o.ignorePermissions}),w.value.length===0)return w.value;const _=w.value.filter(E=>{if(o.ignorePermissions)return!0;if(!E.permission)return console.log("[DEBUG] Action no permission, showing:",E.label),!0;const X=z(E.permission);return console.log("[DEBUG] Action permission check:",{label:E.label,permission:E.permission,hasPerm:X}),X});return console.log("[DEBUG] Filtered header actions:",_.length),_}),pe=t.computed(()=>L.value.length===0?L.value:L.value.filter(_=>o.ignorePermissions||!_.permission?!0:z(_.permission))),qe=_=>pe.value.filter(E=>W(E,_)),ot=(_,E)=>{var $,Y;if(_.requiredCondition&&(($=_.propCustomCondition)==null?void 0:$.length)>0){const fe=O(E,"status"),xe=_.propCustomCondition.find(Be=>Be.value===fe);if(xe)return xe.bgColor||_.bgColor||"primary"}if(!_.dynamicColor||!_.colorCondition)return _.bgColor||"primary";const X=O(E,_.colorCondition.field),q=(Y=_.colorCondition.conditions)==null?void 0:Y.find(fe=>fe.value===X);return(q==null?void 0:q.bgColor)||_.bgColor||"primary"},Mt=_=>{const E=(_||"left").toLowerCase();return E==="center"?"justify-center":E==="right"?"justify-end":"justify-start"},oa={ToggleLeft:n1,SquarePen:Xe,Trash2:_i,Eye:ds,CheckCircle:da,Plus:Qs,Download:$s,RefreshCw:ps,Search:yr,SlidersHorizontal:a1},Aa=_=>_?Gt[_]?Gt[_]:oa[_]||null:null,xt=t.computed(()=>le.value?p.value.map((_,E)=>({..._,no:(d.value-1)*h.value+E+1})):_e.value),$t=t.computed(()=>le.value?f.value:ae.value.length),D1=t.computed(()=>$t.value===0?0:(d.value-1)*h.value+1),E1=t.computed(()=>{const _=d.value*h.value;return _>$t.value?$t.value:_}),O=(_,E)=>{if(!(!_||!E))return E in _?_[E]:E.split(".").reduce((X,q)=>X&&X[q],_)},ae=t.computed(()=>{if(le.value)return[];if(!c.value)return o.data;const _=c.value.toLowerCase();return o.data.filter(E=>de.value.some(X=>{const q=O(E,X.key);return q==null?!1:String(q).toLowerCase().includes(_)}))}),he=t.computed(()=>le.value?[]:u.value.key?[...ae.value].sort((E,X)=>{const q=O(E,u.value.key),$=O(X,u.value.key);if(q===$)return 0;let Y=0;return typeof q=="number"&&typeof $=="number"?Y=q-$:Y=String(q).localeCompare(String($)),u.value.direction==="asc"?Y:-Y}):ae.value),_e=t.computed(()=>{if(le.value)return[];const _=(d.value-1)*h.value,E=_+h.value;return he.value.slice(_,E).map((X,q)=>({...X,no:_+q+1}))}),Pe=t.computed(()=>le.value?Object.values(k.value).some(_=>!!_):!!c.value),K=[10,25,50,100],te=()=>{le.value&&(k.value={...k.value,keyword:c.value},d.value=1,We())};let ne;const ye=()=>{o.enableQuickSearch&&(clearTimeout(ne),ne=setTimeout(()=>{te()},500))};let Ve;const ra=()=>{clearTimeout(Ve),Ve=setTimeout(()=>{le.value&&We()},1e3)};t.watch(c,()=>{o.enableQuickSearch&&le.value&&ye()});const We=async()=>{if(le.value&&!(!N.value&&!F.value))try{y.value=!0;const _={page:d.value,perPage:h.value,...k.value,...o.apiParams};c.value&&(_.keyword=c.value),Object.keys(_).forEach(X=>{(_[X]===""||_[X]===null||_[X]===void 0)&&delete _[X]});let E;N.value?E=await i(N.value,Q.value,_):F.value&&(E=await i(F.value,j.value,_)),aq(E)}catch(_){console.error("DataTable fetch error",_),y.value=!1}},aq=_=>{console.log("DataTable handleResponseData:",_),_&&(o.dynamicColumns&&_.columns&&Array.isArray(_.columns)&&(m.value=_.columns.map(E=>({key:E.key||E.field||E.name,label:E.label||E.header||E.name,width:E.width,align:E.align||"LEFT",sortable:E.sortable!==!1,type:E.type,condition:E.condition,format:E.format}))),_.data&&Array.isArray(_.data)?(p.value=_.data,_.totalData?f.value=_.totalData:_.maxPage?f.value=_.maxPage*h.value:f.value=_.data.length*(_.maxPage||1)):Array.isArray(_)?(p.value=_,f.value=_.length):_.users?(p.value=_.users,f.value=_.users.length):_.items&&Array.isArray(_.items)?(p.value=_.items,f.value=_.total||_.totalItems||_.items.length):_.list&&Array.isArray(_.list)?(p.value=_.list,f.value=_.total||_.list.length):_.rows&&Array.isArray(_.rows)?(p.value=_.rows,f.value=_.count||_.total||_.rows.length):_.result&&Array.isArray(_.result)?(p.value=_.result,f.value=_.total||_.count||_.result.length):(console.warn("DataTable: Unknown response format",_),p.value=[],f.value=0)),y.value=!1};t.onUnmounted(()=>{clearTimeout(ne),clearTimeout(Ve)});const yS=()=>{Object.keys(k.value).forEach(_=>{k.value[_]=""}),c.value="",d.value=1,We()},nq=()=>{d.value=1,We()},fS=(_,E)=>{const X=O(_,E.key);let q={variant:"secondary",class:"",label:X};if(E.condition){const $=E.condition.find(Y=>{const fe=(xe,Be)=>typeof xe=="string"&&typeof Be=="string"?xe.toLowerCase().trim()===Be.toLowerCase().trim():xe==Be;return typeof X=="object"&&X!==null?fe(Y.value,X.code)||fe(Y.value,X.id):fe(Y.value,X)});if($){if($.variant&&(q.variant=$.variant),q.label=$.label||(typeof X=="object"?X.name||X.code:X),$.color){const Y=$.color.toLowerCase(),fe=q.variant==="outline",xe={success:"bg-green-500 hover:bg-green-600 border-transparent text-white shadow",warning:"bg-yellow-500 hover:bg-yellow-600 border-transparent text-white shadow",info:"bg-blue-500 hover:bg-blue-600 border-transparent text-white shadow"},Be={success:"text-green-600 border-green-600 hover:bg-green-50",warning:"text-yellow-600 border-yellow-600 hover:bg-yellow-50",info:"text-blue-600 border-blue-600 hover:bg-blue-50",danger:"text-red-600 border-red-600 hover:bg-red-50",destructive:"text-red-600 border-red-600 hover:bg-red-50",primary:"text-primary-600 border-primary-600 hover:bg-primary-50",secondary:"text-neutral-600 border-neutral-600 hover:bg-zinc-50"},Ge={danger:"destructive",secondary:"secondary",primary:"default"};fe?Be[Y]&&(q.class=Be[Y]):Ge[Y]?q.variant=Ge[Y]:xe[Y]&&(q.class=xe[Y])}}else q.label=typeof X=="object"?(X==null?void 0:X.name)||(X==null?void 0:X.code)||"-":X}else q.label=typeof X=="object"?(X==null?void 0:X.name)||(X==null?void 0:X.code)||"-":X;return q},oq=_=>{u.value.key===_?u.value.direction=u.value.direction==="asc"?"desc":"asc":(u.value.key=_,u.value.direction="asc"),r("update:sort",u.value)},c_=_=>{_!==d.value&&(d.value=_,le.value&&We(),r("update:page",_))},rq=_=>{h.value=_,d.value=1,le.value&&We()},iq=_=>{const E=Math.random()*15+75;if(_.width){const X=parseInt(String(_.width));return X<100?`${Math.floor(X*(Math.random()*.2+.7))}px`:`${E}%`}return`${E}%`},d_=()=>{c.value="",k.value={},d.value=1,We()},sq=_=>{var E;if(console.log("[DEBUG] handleHeaderAction called:",_),_.route||_.path)console.log("[DEBUG] Emitting navigate:",{route:_.route,path:_.path}),r("navigate",{route:_.route,path:_.path,key:_.key});else if(_.openDialog){I.value=_,V.value=null,b.value={};const X=_.fieldActionGlobal||_.field||[];X.length&&X.forEach(q=>{var fe;const $=_.endpoint||((fe=_.propsActionGlobal)==null?void 0:fe.endpointPropAction)||_.propsActionGlobal,Y=$!=null&&$.keyParam&&$.keyParam.length>0?$.keyParam[0]:null;Y&&q.model===Y||!Y&&/^(id|ids|idAuditTrail)/i.test(q.model)?b.value[q.model]=B.value:b.value[q.model]||(b.value[q.model]="")}),S.value=!0}else r("action",{action:((E=_.propsActionCustom)==null?void 0:E.key)||_.key||"create",row:null,selection:B.value})},lq=(_,E)=>{if(_.requireConfirm){x.value={button:_,row:E},C.value=!0;return}if(_.openDialog){I.value=_,V.value=E,b.value={};const X=de.value.find($=>$.type==="CHECKBOX"),q=(X==null?void 0:X.keyCheckbox)||"id";_.fieldActionCustom&&_.fieldActionCustom.forEach($=>{/^(id|ids|idAuditTrail)/i.test($.model)?b.value[$.model]=[E[q]]:b.value[$.model]=""}),S.value=!0;return}h_(_,E)},h_=(_,E)=>{if(_.route){if(_.path){const q=_.route.startsWith("/")?_.route:"/"+_.route;sessionStorage.setItem(`layout_${q}`,_.path)}let X=_.route;X.includes(":")?X=X.replaceAll(/:([a-zA-Z0-9_]+)/g,(q,$)=>E[$]||E.id||$):E.id&&(X=`${X.replace(/\/$/,"")}/${E.id}`),_.path&&_.path,r("navigate",{route:X,path:_.path})}else if(_.endpoint&&_.endpoint.apiUrl){y.value=!0;const{apiUrl:X}=Ke(),q=_.endpoint.apiUrl,$=_.endpoint.apiMethod||"POST",Y={};_.endpoint.keyParam&&Array.isArray(_.endpoint.keyParam)&&_.endpoint.keyParam.forEach((fe,xe)=>{const Be=_.endpoint.model&&xe===0?_.endpoint.model:fe;E[fe]!==void 0&&(Y[Be]=E[fe])}),Object.keys(Y).length===0&&E.id&&(Y.id=E.id),X(q,$,Y).then(()=>{We(),r("action",{action:_.action||"success",row:E})}).catch(fe=>{console.error("Action Failed",fe)}).finally(()=>{y.value=!1})}else r("action",{action:_.action,row:E})},u_=()=>{x.value&&(h_(x.value.button,x.value.row),cq())},DQ=()=>{var _,E;if(I.value){const X=I.value,q=X.endpoint||((_=X.propsActionGlobal)==null?void 0:_.endpointPropAction)||X.propsActionGlobal;let $=(q==null?void 0:q.model)||(q!=null&&q.keyParam&&q.keyParam.length>0?q.keyParam[0]:null);if(!$){const Be=(X.fieldActionGlobal||X.fieldActionCustom||X.field||[]).find(Ge=>/^(id|ids|idAuditTrail)/i.test(Ge.model));$=Be?Be.model:"ids"}let Y=null,fe=!1;if(V.value){const xe=de.value.find(rt=>rt.type==="CHECKBOX"),Be=(xe==null?void 0:xe.keyCheckbox)||"id",Ge=V.value[Be];q!=null&&q.apiUrl&&(Y={...b.value},Y[$]||(Y[$]=[Ge]),fe=!0)}else q!=null&&q.apiUrl&&(Y={...b.value},Y[$]||(Y[$]=B.value||[]),fe=!0);if(fe&&Y&&(q!=null&&q.apiUrl)){const{apiUrl:xe}=Ke(),Be=q.apiUrl,Ge=q.apiMethod||"POST";xe(Be,Ge,Y).then(()=>{S.value=!1,V.value||(B.value=[]),We(),r("action",{action:"success",row:null})}).catch(rt=>{console.error("Action Failed",rt)})}else if(V.value){const xe=de.value.find(mS=>mS.type==="CHECKBOX"),Be=(xe==null?void 0:xe.keyCheckbox)||"id",Ge=V.value[Be],rt={...b.value};rt[$]||(rt[$]=[Ge]),r("action",{action:I.value.action,row:rt}),S.value=!1}else{const xe={...b.value};xe[$]||(xe[$]=B.value);const Be={action:((E=I.value.propsActionGlobal)==null?void 0:E.key)||I.value.key,row:xe,selection:B.value};r("action",Be),S.value=!1}}},cq=()=>{C.value=!1,x.value=null},EQ=t.computed(()=>x.value?x.value.button.confirmTitle||"Confirm":""),TQ=t.computed(()=>x.value?x.value.button.confirmMessage||"Confirm":"");e({fetchData:We,filters:k,resetFilters:yS,handleRefresh:d_});const kS=t.ref(""),HQ=_=>{if(!_)return"";const E=_.endpoint||_.endpointGlobal||{};return JSON.stringify({url:E.apiUrl||_.apiUrl,module:E.apiModule||_.apiModule,action:E.apiAction||_.apiAction,method:E.apiMethod||_.apiMethod,params:_.apiParams,socket:E.socket||_.socketEndpoint,socketParams:_.socketParams})};return t.watch(()=>o.tableConfig,()=>{if(o.tableConfig){re();const _=HQ(o.tableConfig);_!==kS.value&&(!kS.value&&le.value?(kS.value=_,We()):(kS.value=_,le.value&&ra()))}},{deep:!0,immediate:!0}),t.watch(()=>o.apiModule,()=>{le.value&&We()}),t.watch(()=>o.apiParams,()=>{le.value&&We()},{deep:!0}),t.watch(()=>w.value,_=>{console.log("[DEBUG] headerActions changed:",_.length,"items");const E=ee.value;console.log("[DEBUG] visibleHeaderActions evaluated:",E.length,"items")},{deep:!0}),t.onMounted(()=>{re(),le.value&&(o.tableConfig||(y.value=!0,We()))}),(_,E)=>{var X;return t.openBlock(),t.createElementBlock("div",NY,[t.createElementVNode("div",$Y,[t.createElementVNode("div",UY,[a.nested?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",WY,[t.createElementVNode("div",GY,[t.createVNode(t.unref(yr),{class:"absolute left-2.5 top-2.5 h-4 w-4 text-neutral-500 dark:text-neutral-400"}),t.createVNode(t.unref(o_),{modelValue:c.value,"onUpdate:modelValue":E[0]||(E[0]=q=>c.value=q),placeholder:"Search...",style:{"padding-left":"2.25rem !important"},class:"h-9 bg-white/95 dark:bg-zinc-800/95 border-white/30 dark:border-neutral-700/50 text-neutral-900 dark:text-neutral-100 placeholder:text-neutral-500 dark:placeholder:text-neutral-400",onKeyup:t.withKeys(te,["enter"])},null,8,["modelValue"])]),M.value.length>0?(t.openBlock(),t.createElementBlock("div",KY,[t.createVNode(CY,null,{trigger:t.withCtx(()=>[t.createVNode(ws,{variant:"secondary",icon:"SlidersHorizontal",tooltip:"Advance Search",class:"gap-2 h-9 w-full sm:w-auto justify-center bg-white/95 dark:bg-zinc-800/95 text-neutral-700 dark:text-neutral-300 hover:bg-zinc-50 dark:hover:bg-zinc-800 border border-white/30 dark:border-neutral-700/50 shadow-sm backdrop-blur-sm text-xs font-medium"})]),footer:t.withCtx(()=>[t.createElementVNode("div",JY,[t.renderSlot(_.$slots,"filter-footer",{fetch:We,reset:yS})])]),default:t.withCtx(()=>[t.createElementVNode("div",XY,[t.renderSlot(_.$slots,"filter-form",{filters:k.value},()=>[M.value.length>0?(t.openBlock(),t.createElementBlock("div",ZY,[t.createElementVNode("div",YY,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Z.value,(q,$)=>(t.openBlock(),t.createElementBlock("div",{key:$,class:t.normalizeClass(J(q.column))},[t.createVNode(Qz,{field:q,modelValue:k.value[q.model],"onUpdate:modelValue":Y=>k.value[q.model]=Y},null,8,["field","modelValue","onUpdate:modelValue"])],2))),128))])])):t.createCommentVNode("",!0)]),M.value.length>0?(t.openBlock(),t.createElementBlock("div",QY,[t.createVNode(t.unref(Ee),{variant:"outline",onClick:yS,disabled:ve.value,class:"flex-1 w-full"},{default:t.withCtx(()=>[...E[8]||(E[8]=[t.createTextVNode(" Reset ",-1)])]),_:1},8,["disabled"]),t.createVNode(t.unref(Ee),{onClick:nq,disabled:ve.value,class:"flex-1 w-full"},{default:t.withCtx(()=>[...E[9]||(E[9]=[t.createTextVNode(" Search ",-1)])]),_:1},8,["disabled"])])):t.createCommentVNode("",!0)])]),_:3})])):t.createCommentVNode("",!0)])),t.createElementVNode("div",{class:t.normalizeClass(["flex items-center gap-2 flex-wrap",{"w-full justify-between":a.nested}])},[a.nested?(t.openBlock(),t.createElementBlock("span",eQ)):t.createCommentVNode("",!0),a.nested?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(ws,{key:1,variant:"secondary",icon:"RefreshCw",text:"Refresh",tooltip:"Refresh",class:"gap-2 h-9 bg-white/95 dark:bg-zinc-800/95 text-neutral-700 dark:text-neutral-300 hover:bg-white dark:hover:bg-zinc-800 border border-white/30 dark:border-neutral-700/50 shadow-sm backdrop-blur-sm text-xs font-medium",onClick:d_,disabled:ve.value},{icon:t.withCtx(()=>[t.createVNode(t.unref(ps),{class:t.normalizeClass(["w-3.5 h-3.5",{"animate-spin":ve.value}])},null,8,["class"])]),_:1},8,["disabled"])),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(ee.value,(q,$)=>(t.openBlock(),t.createBlock(ws,{key:$,icon:q.icon,text:q.label,tooltip:q.tooltip,variant:q.variant,"bg-color":q.bgColor,"text-color":q.textColor,class:"gap-2 h-9 shadow-lg shadow-primary-500/20 border-none text-xs font-medium",onClick:Y=>sq(q)},null,8,["icon","text","tooltip","variant","bg-color","text-color","onClick"]))),128)),t.renderSlot(_.$slots,"header-actions")],2)])]),t.createElementVNode("div",tQ,[t.createElementVNode("table",aQ,[t.createElementVNode("thead",nQ,[t.createElementVNode("tr",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(de.value,q=>(t.openBlock(),t.createElementBlock("th",{key:q.key,class:t.normalizeClass([q.align?`text-${q.align.toLowerCase()}`:"",q.sortable?"cursor-pointer select-none":"","px-3 py-2 text-xs font-black text-white dark:text-neutral-100 uppercase tracking-wider transition-colors duration-150"]),style:t.normalizeStyle(q.width?{width:q.width}:{}),onClick:$=>q.sortable&&oq(q.key)},[q.type==="CHECKBOX"?(t.openBlock(),t.createElementBlock("div",rQ,[t.createVNode(q1,{"model-value":A.value,indeterminate:P.value,"onUpdate:modelValue":E[1]||(E[1]=$=>U(!!$)),onClick:E[2]||(E[2]=t.withModifiers(()=>{},["stop"]))},null,8,["model-value","indeterminate"])])):(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["flex items-center gap-2 w-full",Mt(q.align)])},[t.createElementVNode("span",null,t.toDisplayString(q.label),1)],2))],14,oQ))),128)),ue.value?(t.openBlock(),t.createElementBlock("th",iQ,[...E[10]||(E[10]=[t.createElementVNode("div",{class:"flex items-center justify-center w-full"}," Actions ",-1)])])):t.createCommentVNode("",!0)])]),t.createElementVNode("tbody",sQ,[ve.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(h.value,q=>(t.openBlock(),t.createElementBlock("tr",{key:`skeleton-${q}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(de.value,$=>{var Y,fe;return t.openBlock(),t.createElementBlock("td",{key:$.key,class:t.normalizeClass([$.align?`text-${$.align.toLowerCase()}`:"text-left","px-3 py-0.5"])},[t.createElementVNode("div",{class:t.normalizeClass(["bg-gradient-to-r from-neutral-200 via-neutral-300 to-neutral-200 dark:from-neutral-700 dark:via-neutral-600 dark:to-neutral-700 animate-shimmer",[["badge","BADGE"].includes($.type??"")||$.condition?"h-5 rounded-full w-20":"h-4 rounded-md",((Y=$.align)==null?void 0:Y.toLowerCase())==="center"?"mx-auto":"",((fe=$.align)==null?void 0:fe.toLowerCase())==="right"?"ml-auto":""]]),style:t.normalizeStyle({width:["badge","BADGE"].includes($.type??"")||$.condition?void 0:iq($),backgroundSize:"200% 100%"})},null,6)],2)}),128)),a.hasActions?(t.openBlock(),t.createElementBlock("td",lQ,[...E[11]||(E[11]=[t.createElementVNode("div",{class:"flex items-center justify-center gap-1.5"},[t.createElementVNode("div",{class:"w-9 h-9 bg-zinc-200 dark:bg-zinc-700 rounded-xl animate-pulse"}),t.createElementVNode("div",{class:"w-9 h-9 bg-zinc-200 dark:bg-zinc-700 rounded-xl animate-pulse delay-75"}),t.createElementVNode("div",{class:"w-9 h-9 bg-zinc-200 dark:bg-zinc-700 rounded-xl animate-pulse delay-150"})],-1)])])):t.createCommentVNode("",!0)]))),128)):xt.value.length===0?(t.openBlock(),t.createElementBlock("tr",cQ,[t.createElementVNode("td",{colspan:de.value.length+(ue.value?1:0),class:"text-center py-16"},[t.createElementVNode("div",hQ,[t.createElementVNode("div",null,[t.createElementVNode("p",uQ,t.toDisplayString(Pe.value?"No search results":"No data"),1),t.createElementVNode("p",pQ,t.toDisplayString(Pe.value?"Try changing keywords":"No data added"),1)])])],8,dQ)])):(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:2},t.renderList(xt.value,(q,$)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:$},[t.createElementVNode("tr",yQ,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(de.value,Y=>(t.openBlock(),t.createElementBlock("td",{key:Y.key,class:t.normalizeClass([Y.align?`text-${Y.align}`:"text-left","px-3 py-0.5 text-sm text-neutral-900 dark:text-neutral-100"])},[t.renderSlot(_.$slots,`cell-${Y.key}`,{row:q,value:O(q,Y.key)},()=>[Y.type==="CHECKBOX"?(t.openBlock(),t.createElementBlock("div",fQ,[t.createVNode(q1,{"model-value":D(q),"onUpdate:modelValue":fe=>T(q,!!fe),onClick:E[3]||(E[3]=t.withModifiers(()=>{},["stop"]))},null,8,["model-value","onUpdate:modelValue"])])):Y.type==="badge"||Y.type==="BADGE"||Y.condition?(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["flex items-center gap-1.5 flex-wrap md:flex-nowrap",[Y.align?`justify-${Y.align}`:"justify-start"]])},[t.createVNode(t.unref(_a),{variant:fS(q,Y).variant,class:t.normalizeClass([fS(q,Y).class,"whitespace-nowrap truncate max-w-[150px] inline-block"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(fS(q,Y).label),1)]),_:2},1032,["variant","class"])],2)):Y.key==="no"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[t.createTextVNode(t.toDisplayString((d.value-1)*h.value+$+1),1)],64)):Y.type==="date"||Y.type==="DATE"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:3},[t.createTextVNode(t.toDisplayString(O(q,Y.key)?t.unref(yY)(O(q,Y.key),"long"):"-"),1)],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:4},[t.createTextVNode(t.toDisplayString(Y.format?Y.format(O(q,Y.key)):O(q,Y.key)),1)],64))])],2))),128)),ue.value?(t.openBlock(),t.createElementBlock("td",kQ,[t.renderSlot(_.$slots,"actions",{row:q,buttons:qe(q),getButtonColor:ot,getIconComponent:Aa},()=>[qe(q).length>0?(t.openBlock(),t.createElementBlock("div",mQ,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(qe(q),(Y,fe)=>(t.openBlock(),t.createElementBlock("div",{key:fe,class:"group relative"},[t.createVNode(ws,{tooltip:Y.tooltip||Y.label,icon:Aa(Y.icon),size:"icon",variant:Y.variant||"ghost","bg-color":ot(Y,q),onClick:xe=>lq(Y,q)},null,8,["tooltip","icon","variant","bg-color","onClick"])]))),128))])):t.createCommentVNode("",!0)])])):t.createCommentVNode("",!0)]),_.$slots["expanded-row"]?(t.openBlock(),t.createElementBlock("tr",gQ,[t.createElementVNode("td",{colspan:de.value.length+(ue.value?1:0),class:"px-0 py-0"},[t.renderSlot(_.$slots,"expanded-row",{row:q,index:$})],8,bQ)])):t.createCommentVNode("",!0)],64))),128))])])]),!ve.value&&xt.value.length>0&&a.showPagination&&v.value?(t.openBlock(),t.createElementBlock("div",MQ,[t.createElementVNode("div",xQ,[t.createVNode(t.unref(DY),{"model-value":String(h.value),"onUpdate:modelValue":E[4]||(E[4]=q=>rq(Number(q)))},{default:t.withCtx(()=>[t.createVNode(t.unref(FY),{class:"h-8 w-[70px] bg-white dark:bg-zinc-800 border-neutral-200 dark:border-neutral-700"},{default:t.withCtx(()=>[t.createVNode(t.unref(RY),{placeholder:String(h.value)},null,8,["placeholder"])]),_:1}),t.createVNode(t.unref(EY),null,{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(K,q=>t.createVNode(t.unref(HY),{key:q,value:String(q)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(q),1)]),_:2},1032,["value"])),64))]),_:1})]),_:1},8,["model-value"]),E[16]||(E[16]=t.createElementVNode("div",{class:"h-5 w-px bg-zinc-300 dark:bg-zinc-600"},null,-1)),t.createElementVNode("span",wQ,[E[12]||(E[12]=t.createTextVNode(" Showing ",-1)),t.createElementVNode("span",vQ,t.toDisplayString(D1.value),1),E[13]||(E[13]=t.createTextVNode(" to ",-1)),t.createElementVNode("span",CQ,t.toDisplayString(E1.value),1),E[14]||(E[14]=t.createTextVNode(" of ",-1)),t.createElementVNode("span",LQ,t.toDisplayString($t.value),1),E[15]||(E[15]=t.createTextVNode(" items ",-1))])]),t.createElementVNode("div",SQ,[t.createVNode(t.unref(IY),{total:$t.value,"items-per-page":h.value,"sibling-count":1,"show-edges":"",page:d.value,"onUpdate:page":c_,class:"scale-90 origin-right"},{default:t.withCtx(()=>[t.createVNode(t.unref(_Y),{class:"flex items-center gap-1"},{default:t.withCtx(({items:q})=>[t.createVNode(t.unref(BY),{class:"w-8 h-8 p-0 flex items-center justify-center border border-neutral-200 dark:border-neutral-700 rounded-md bg-white dark:bg-zinc-800 text-neutral-900 dark:text-neutral-100 hover:bg-zinc-100 dark:hover:bg-zinc-700 disabled:opacity-50 disabled:cursor-not-allowed"},{default:t.withCtx(()=>[t.createVNode(t.unref(Os),{class:"h-4 w-4"})]),_:1}),t.createVNode(t.unref(PY),{class:"w-8 h-8 p-0 flex items-center justify-center border border-neutral-200 dark:border-neutral-700 rounded-md bg-white dark:bg-zinc-800 text-neutral-900 dark:text-neutral-100 hover:bg-zinc-100 dark:hover:bg-zinc-700 disabled:cursor-not-allowed"},{default:t.withCtx(()=>[t.createVNode(t.unref(dn),{class:"h-4 w-4"})]),_:1}),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(q,($,Y)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[$.type==="page"?(t.openBlock(),t.createBlock(t.unref(VY),{key:Y,value:$.value,"as-child":""},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee),{class:"w-8 h-8 p-0 text-sm",variant:$.value===d.value?"default":"outline",disabled:$.value===d.value,onClick:fe=>c_($.value)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString($.value),1)]),_:2},1032,["variant","disabled","onClick"])]),_:2},1032,["value"])):(t.openBlock(),t.createBlock(t.unref(AY),{key:$.type,index:Y},null,8,["index"]))],64))),256)),t.createVNode(t.unref(qY),{class:"w-8 h-8 p-0 flex items-center justify-center border border-neutral-200 dark:border-neutral-700 rounded-md bg-white dark:bg-zinc-800 text-neutral-900 dark:text-neutral-100 hover:bg-zinc-100 dark:hover:bg-zinc-700 disabled:cursor-not-allowed"},{default:t.withCtx(()=>[t.createVNode(t.unref(hn),{class:"h-4 w-4"})]),_:1}),t.createVNode(t.unref(zY),{class:"w-8 h-8 p-0 flex items-center justify-center border border-neutral-200 dark:border-neutral-700 rounded-md bg-white dark:bg-zinc-800 text-neutral-900 dark:text-neutral-100 hover:bg-zinc-100 dark:hover:bg-zinc-700 disabled:cursor-not-allowed"},{default:t.withCtx(()=>[t.createVNode(t.unref(Fs),{class:"h-4 w-4"})]),_:1})]),_:1})]),_:1},8,["total","items-per-page","page"])])])):t.createCommentVNode("",!0),t.createVNode(lS,{modelValue:C.value,"onUpdate:modelValue":E[5]||(E[5]=q=>C.value=q),title:EQ.value,icon:"AlertCircle","max-width":450,persistent:!1},{actions:t.withCtx(()=>[t.createVNode(t.unref(Ee),{variant:"outline",onClick:cq},{default:t.withCtx(()=>[...E[17]||(E[17]=[t.createTextVNode(" Cancel ",-1)])]),_:1}),t.createVNode(t.unref(Ee),{onClick:u_},{default:t.withCtx(()=>[...E[18]||(E[18]=[t.createTextVNode(" Yes ",-1)])]),_:1})]),default:t.withCtx(()=>[t.createElementVNode("div",IQ,[t.createElementVNode("p",_Q,t.toDisplayString(TQ.value),1)])]),_:1},8,["modelValue","title"]),t.createVNode(lS,{modelValue:S.value,"onUpdate:modelValue":E[7]||(E[7]=q=>S.value=q),title:((X=I.value)==null?void 0:X.label)||"Action",icon:"AlertCircle","max-width":450},{actions:t.withCtx(()=>[t.createVNode(t.unref(Ee),{variant:"outline",onClick:E[6]||(E[6]=q=>S.value=!1)},{default:t.withCtx(()=>[...E[19]||(E[19]=[t.createTextVNode(" Cancel ",-1)])]),_:1}),t.createVNode(t.unref(Ee),{onClick:DQ},{default:t.withCtx(()=>[...E[20]||(E[20]=[t.createTextVNode(" Save ",-1)])]),_:1})]),default:t.withCtx(()=>{var q,$;return[t.createElementVNode("div",AQ,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(((q=I.value)==null?void 0:q.fieldActionCustom)||(($=I.value)==null?void 0:$.fieldActionGlobal)||[],(Y,fe)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:fe},[Y.isHidden?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(J(Y.column))},[t.createVNode(Qz,{field:Y,modelValue:b.value[Y.model],"onUpdate:modelValue":xe=>b.value[Y.model]=xe},null,8,["field","modelValue","onUpdate:modelValue"])],2))],64))),128))])]}),_:1},8,["modelValue","title"])])}}}),BQ={class:"h-full flex flex-col"},VQ={key:1,class:"flex-1 flex items-center justify-center"},zQ={key:2,class:"flex-1 flex items-center justify-center text-red-500"},Jz=t.defineComponent({__name:"AutoLayoutDatatable",props:{layoutCode:{},userPermissions:{},permissionBase:{}},emits:["action","navigate"],setup(a,{emit:e}){const n=a,o=e,r=H1.useRoute();H1.useRouter();const{apiUrl:i}=Ke(),s=t.inject("hasActionAccess",()=>!1),c=t.inject("userPermissions",null),d=t.ref(null),h=t.ref(!0),u=t.ref(null),p=async()=>{var k;h.value=!0;try{const m=await i(`/api/auto-layout/datatable/form-dynamic?code=${n.layoutCode}`,"GET");m.status&&(d.value=Array.isArray(m.data)?m.data[0]:m.data,console.log("[DEBUG] AutoLayoutDatatable config loaded:",d.value),console.log("[DEBUG] actionGlobal in config:",(k=d.value)==null?void 0:k.actionGlobal))}catch(m){console.error("Gagal Menampilkan Datatable:",m)}finally{h.value=!1}},y=k=>{k.action==="add"&&console.log("[AutoLayoutDatatable] Add action triggered"),console.log("Aksi:",k.action,k)},f=k=>{console.log("[DEBUG] AutoLayoutDatatable handleNavigate:",k);let m=k.route;if(m||(m=`/${((r==null?void 0:r.path)||"").split("/")[1]||"product"}/create`),m){const g=k.path?{code:k.path}:{};console.log("[DEBUG] Emitting navigate to parent:",{path:m,query:g}),o("navigate",{route:m,query:g})}else console.warn("[DEBUG] No route or path provided for navigation")};return t.onMounted(()=>{p()}),(k,m)=>(t.openBlock(),t.createElementBlock("div",BQ,[!h.value&&d.value?(t.openBlock(),t.createBlock(uS,{key:0,ref_key:"dtRef",ref:u,"api-url":`/api/auto-layout/datatable/form-dynamic?code=${n.layoutCode}`,"api-method":"GET","table-config":d.value,"permission-base":n.permissionBase||"","user-permissions":n.userPermissions||t.unref(c),"permission-checker":t.unref(s),onAction:y,onNavigate:f},{"header-actions":t.withCtx(()=>[...m[0]||(m[0]=[])]),_:1},8,["api-url","table-config","permission-base","user-permissions","permission-checker"])):h.value?(t.openBlock(),t.createElementBlock("div",VQ,[...m[1]||(m[1]=[t.createElementVNode("i",{class:"mdi mdi-loading mdi-spin text-4xl text-primary-600"},null,-1)])])):(t.openBlock(),t.createElementBlock("div",zQ," Failed to load configuration for "+t.toDisplayString(n.layoutCode),1))]))}}),eq=t.defineCustomElement(Yz),tq=t.defineCustomElement(Jz);typeof customElements<"u"&&(customElements.get("micro-dynamic-form")||customElements.define("micro-dynamic-form",eq),customElements.get("micro-dynamic-datatable")||customElements.define("micro-dynamic-datatable",tq));const qQ=[qS,O_,ws,rI,bz,q1,Mz,GI,lS,Tz,cS,Hz,QI,jz,e_,a_,t_,n_,Oz,r_,Fz,Rz,Nz,$z,i_,s_,l_,dS,Kz,Xz,Zz,uS],PQ={install(a,e={}){e&&Object.keys(e).length>0&&f_(e),qQ.forEach(n=>{n.name&&a.component(n.name,n)})}};oe.AutoLayoutDatatable=Jz,oe.AutoLayoutForm=Yz,oe.DCodeAutoComplete=qS,oe.DCodeButton=ws,oe.DCodeCard=rI,oe.DCodeChart=bz,oe.DCodeCheckbox=q1,oe.DCodeCurrencyField=Mz,oe.DCodeDatePicker=GI,oe.DCodeDialog=lS,oe.DCodeDialogCloseBtn=Tz,oe.DCodeDropzone=cS,oe.DCodeFileField=Hz,oe.DCodeFileResult=QI,oe.DCodeIconDropdown=jz,oe.DCodeImageCropperDialog=e_,oe.DCodeImageField=a_,oe.DCodeImageResult=t_,oe.DCodeInfiniteAutoComplete=O_,oe.DCodeLabel=n_,oe.DCodeMultiSelect=Oz,oe.DCodeOtpInput=r_,oe.DCodeProgress=Fz,oe.DCodeProgressBar=Rz,oe.DCodeRadio=Nz,oe.DCodeRadioCustom=$z,oe.DCodeSlider=i_,oe.DCodeSwitch=s_,oe.DCodeTextField=l_,oe.DCodeTextarea=dS,oe.DCodeTimelineWithIcons=Kz,oe.DCodeUploadFile=Xz,oe.DCodeWizard=Zz,oe.DataTable=uS,oe.DataTableComponent=uS,oe.MicroDynamicDatatable=tq,oe.MicroDynamicForm=eq,oe.cn=be,oe.default=PQ,oe.setApiConfig=f_,Object.defineProperties(oe,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
|
|
8595
|
+
`,""),W=Number(z);return Number.isFinite(W)?W:null}return G},D=G=>{m.value=G,o("update:modelValue",P(G))},U=(G,z)=>{const W=y(z);v.value=!0,G.value=W,D(W),queueMicrotask(()=>v.value=!1)},T=(G,z)=>{const W=G.selectionStart??G.value.length,ee=G.selectionEnd??G.value.length;if(p.value>0){const pe=G.value.length-(ee-W),qe=p.value-pe;if(qe<=0)return;z=z.slice(0,qe)}G.setRangeText(z,W,ee,"end"),U(G,B(G.value))},H=G=>{var ee;if(!A||g.value||v.value||!((ee=G.inputType)!=null&&ee.startsWith("insert")))return;const z=G.data;if(z==null)return;const W=B(z);W!==z&&(G.preventDefault(),W.length>0&&T(A,W))},N=G=>{var ee;if(!A||g.value||v.value)return;const z=((ee=G.clipboardData)==null?void 0:ee.getData("text"))??"",W=B(z);W!==z&&(G.preventDefault(),W.length>0&&T(A,W))},Q=async G=>{if(!A||g.value||v.value)return;const z=G.target,W=z.value??"",ee=B(W);if(ee===W){const pe=z.selectionStart??ee.length,qe=z.selectionEnd??ee.length;U(z,ee),await t.nextTick();try{z.setSelectionRange(pe,qe)}catch{}D(ee)}else{const pe=z.selectionStart??ee.length,qe=z.selectionEnd??ee.length;U(z,ee),await t.nextTick();try{z.setSelectionRange(pe,qe)}catch{}}},j=()=>g.value=!0,F=()=>{if(g.value=!1,!A)return;const G=A.value??"",z=B(G);z===G?D(z):U(A,z)};t.onMounted(()=>{if(A=document.getElementById(d.value),!A)return;A.addEventListener("beforeinput",H),A.addEventListener("paste",N),A.addEventListener("input",Q),A.addEventListener("compositionstart",j),A.addEventListener("compositionend",F);const G=A.value??"",z=B(G);z===G?D(z):U(A,z)}),t.onBeforeUnmount(()=>{A&&(A.removeEventListener("beforeinput",H),A.removeEventListener("paste",N),A.removeEventListener("input",Q),A.removeEventListener("compositionstart",j),A.removeEventListener("compositionend",F),A=null)});const R=()=>{m.value="",A&&(A.value=""),o("update:modelValue",null),o("clear")},Z=t.computed(()=>m.value.length),J=t.computed(()=>r.showCharCount?p.value>0:!1),re=t.computed(()=>J.value&&Z.value>0),de=t.computed(()=>`${Z.value} / ${p.value}`),ue=t.computed(()=>!!r.error),ve=t.computed(()=>{const G=n.rows,z=typeof G=="number"?G:Number.parseInt(String(G??""),10);return Number.isFinite(z)&&z>0?z:3}),le=t.computed(()=>({height:`${ve.value*24+16}px`}));return(G,z)=>t.withDirectives((t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["flex flex-col gap-1 w-full",t.unref(n).class]),"aria-busy":r.skeleton},[r.skeleton?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[i.value?(t.openBlock(),t.createElementBlock("div",mX)):t.createCommentVNode("",!0),t.createElementVNode("div",{class:"w-full rounded-lg bg-gray-200 dark:bg-gray-700 animate-pulse",style:t.normalizeStyle(le.value)},null,4)],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[i.value?(t.openBlock(),t.createBlock(t.unref(La),{key:0,for:d.value,class:"text-sm font-medium"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(i.value)+" ",1),h.value?(t.openBlock(),t.createElementBlock("span",gX,"*")):t.createCommentVNode("",!0)]),_:1},8,["for"])):t.createCommentVNode("",!0),t.createElementVNode("div",bX,[t.createElementVNode("textarea",t.mergeProps({id:d.value,value:m.value},u.value,{style:`text-transform: ${C.value}; padding-right: ${k.value?"2.5rem":"0.75rem"} !important; padding-left: 0.75rem !important;`,class:["flex min-h-[120px] w-full rounded-lg border py-2 bg-white dark:bg-neutral-900 text-foreground dark:text-gray-300 border-gray-300 dark:border-gray-700 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",ue.value?"border-destructive focus-visible:ring-destructive":""]}),null,16,MX),k.value?(t.openBlock(),t.createElementBlock("div",xX,[t.createElementVNode("button",{type:"button",class:"text-muted-foreground hover:text-foreground text-sm leading-none","aria-label":"Clear textarea",onClick:R}," ✕ ")])):t.createCommentVNode("",!0),re.value&&!ue.value?(t.openBlock(),t.createElementBlock("p",wX,t.toDisplayString(de.value),1)):t.createCommentVNode("",!0)]),ue.value?(t.openBlock(),t.createElementBlock("p",vX,t.toDisplayString(r.error),1)):t.createCommentVNode("",!0)],64))],10,kX)),[[t.vShow,s.value]])}}),Uz=t.defineComponent({__name:"Avatar",props:{class:{type:[Boolean,null,String,Object,Array]},size:{default:"sm"},shape:{default:"circle"}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(OT),{class:t.normalizeClass(t.unref(be)(t.unref(CX)({size:a.size,shape:a.shape}),e.class))},{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},8,["class"]))}}),Wz=t.defineComponent({__name:"AvatarFallback",props:{delayMs:{},asChild:{type:Boolean},as:{}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(RT),t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),Gz=t.defineComponent({__name:"AvatarImage",props:{src:{},referrerPolicy:{},crossOrigin:{},asChild:{type:Boolean},as:{}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(UT),t.mergeProps(e,{class:"h-full w-full object-cover"}),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),CX=i1("inline-flex items-center justify-center font-normal text-foreground select-none shrink-0 bg-secondary overflow-hidden",{variants:{size:{sm:"h-10 w-10 text-xs",base:"h-16 w-16 text-2xl",lg:"h-32 w-32 text-5xl"},shape:{circle:"rounded-full",square:"rounded-md"}}}),hS=t.defineComponent({__name:"Separator",props:{orientation:{default:"horizontal"},decorative:{type:Boolean,default:!0},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class");return(o,r)=>(t.openBlock(),t.createBlock(t.unref(fj),t.mergeProps(t.unref(n),{class:t.unref(be)("shrink-0 bg-border",e.orientation==="horizontal"?"h-px w-full":"w-px h-full",e.class)}),null,16,["class"]))}}),LX={class:"bg-card text-card-foreground"},SX={class:"pb-6 px-3"},IX={key:0,class:"flex justify-center p-8"},_X={key:1,class:"p-8 text-center text-red-500"},AX={key:2,class:"relative"},BX={class:"space-y-6"},VX={class:"rounded-xl border bg-card text-card-foreground shadow"},zX={class:"p-4"},qX={class:"flex items-center justify-between gap-3"},PX={class:"font-medium"},DX={class:"text-xs text-muted-foreground"},EX={class:"mt-1 text-sm text-muted-foreground"},TX={class:"text-foreground"},HX={class:"text-foreground"},jX={class:"mt-1 text-xs text-muted-foreground"},OX={key:0,class:"mt-3 flex items-center gap-2 text-sm"},FX={class:"flex items-center justify-between gap-3"},RX={class:"font-medium"},NX={class:"text-xs text-muted-foreground"},$X={class:"mt-2 text-sm text-muted-foreground"},UX={class:"flex flex-wrap items-center justify-between gap-3"},WX={class:"flex items-center gap-3"},GX={class:"leading-tight"},KX={class:"text-sm font-medium"},XX={class:"text-xs text-muted-foreground"},ZX={class:"flex items-center gap-2"},YX={key:2,class:"flex flex-col gap-3 sm:flex-row sm:items-start"},QX={class:"h-16 w-16 shrink-0 rounded-lg bg-muted flex items-center justify-center"},JX=["src"],eZ={class:"flex-1"},tZ={class:"flex items-center justify-between gap-3"},aZ={class:"font-medium"},nZ={class:"text-xs text-muted-foreground"},oZ={class:"mt-1 text-sm text-muted-foreground"},rZ={class:"text-left sm:text-center"},iZ={class:"text-xs text-muted-foreground"},sZ={class:"text-left sm:text-center"},lZ={class:"text-xs text-muted-foreground"},cZ={class:"text-left sm:text-center"},dZ={class:"text-xs text-muted-foreground"},hZ={class:"flex items-center justify-between gap-3"},uZ={class:"font-medium"},pZ={class:"text-xs text-muted-foreground"},yZ={class:"mt-2 text-sm text-muted-foreground"},fZ={class:"mt-3 flex items-center gap-3"},kZ={class:"text-sm font-medium"},mZ={class:"flex items-start justify-between gap-3"},gZ={class:"font-medium"},bZ={class:"mt-3 grid gap-2 text-sm"},MZ={class:"flex items-center justify-between gap-3"},xZ={class:"flex items-center gap-2 text-muted-foreground"},wZ={class:"font-medium"},vZ={class:"flex items-center justify-between gap-3"},CZ={class:"flex items-center gap-2 text-muted-foreground"},LZ={class:"font-medium"},SZ={class:"flex items-center justify-between gap-3"},IZ={class:"flex items-center gap-2 text-muted-foreground"},_Z={class:"font-medium"},AZ={class:"flex items-center justify-between"},BZ={class:"flex items-center gap-2"},VZ={class:"flex items-start justify-between gap-3"},zZ={class:"flex items-center gap-2"},qZ={class:"font-medium"},PZ={class:"mt-2 text-sm text-muted-foreground"},DZ={key:0,class:"mt-1 text-sm text-muted-foreground"},EZ={class:"flex flex-wrap items-center justify-between gap-3"},TZ={class:"flex items-center gap-2"},HZ={class:"text-xs text-muted-foreground"},Kz=t.defineComponent({name:"DCodeTimelineWithIcons",__name:"DCodeTimelineWithIcons",props:{items:{},apiUrl:{},apiMethod:{}},setup(a){const n=AE(_E).smaller("md");t.ref(!1);const o=a,r=t.ref(!1),i=t.ref(null),s=t.ref([]),c=t.computed(()=>s.value.length>0?s.value:o.items&&o.items.length>0?o.items:[]),d=async()=>{if(o.apiUrl){r.value=!0,i.value=null;try{const p=await fetch(o.apiUrl,{method:o.apiMethod||"GET",headers:{"Content-Type":"application/json"}});if(!p.ok)throw new Error(`Error: ${p.status} ${p.statusText}`);const y=await p.json();Array.isArray(y)?s.value=y:y.data&&Array.isArray(y.data)?s.value=y.data:y.items&&Array.isArray(y.items)?s.value=y.items:s.value=[]}catch(p){console.error("Failed to fetch timeline items:",p),i.value=p.message||"Failed to fetch data"}finally{r.value=!1}}};t.onMounted(()=>{o.apiUrl&&d()}),t.watch(()=>o.apiUrl,()=>{o.apiUrl?d():s.value=[]});const h=p=>{switch(p){case"flight":return{Icon:Ys,Circle:"bg-primary/10 text-primary border-primary/30"};case"interview":return{Icon:Ns,Circle:"bg-emerald-500/10 text-emerald-600 border-emerald-500/30"};case"product":return{Icon:t1,Circle:"bg-amber-500/10 text-amber-600 border-amber-500/30"};case"design":return{Icon:sr,Circle:"bg-sky-500/10 text-sky-600 border-sky-500/30"};case"server":return{Icon:Js,Circle:"bg-rose-500/10 text-rose-600 border-rose-500/30"};case"location":return{Icon:Ks,Circle:"bg-emerald-500/10 text-emerald-600 border-emerald-500/30"};default:return{Icon:Rs,Circle:"bg-primary/10 text-primary border-primary/30"}}},u=p=>p.split(" ").filter(Boolean).slice(0,2).map(y=>{var f;return(f=y[0])==null?void 0:f.toUpperCase()}).join("");return(p,y)=>{const f=t.resolveComponent("ShoppingCart"),k=t.resolveComponent("RefreshCcw"),m=t.resolveComponent("MapPin");return t.openBlock(),t.createElementBlock("div",LX,[y[8]||(y[8]=t.createElementVNode("div",{class:"flex flex-col space-y-1.5 py-6 px-3"},[t.createElementVNode("h3",{class:"leading-none tracking-tight text-lg font-medium"},"Timeline With Icons")],-1)),t.createElementVNode("div",SX,[r.value?(t.openBlock(),t.createElementBlock("div",IX,[...y[0]||(y[0]=[t.createElementVNode("div",{class:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary"},null,-1)])])):i.value?(t.openBlock(),t.createElementBlock("div",_X,t.toDisplayString(i.value),1)):(t.openBlock(),t.createElementBlock("div",AX,[y[7]||(y[7]=t.createElementVNode("div",{class:"absolute left-4 top-0 h-full w-px bg-border"},null,-1)),t.createElementVNode("div",BX,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value,(g,v)=>(t.openBlock(),t.createElementBlock("div",{key:v,class:"relative pl-14"},[t.createElementVNode("div",{class:t.normalizeClass(["absolute left-0 top-2 flex h-8 w-8 items-center justify-center rounded-full border",h(g.type).Circle])},[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(h(g.type).Icon),{class:"h-4 w-4"}))],2),t.createElementVNode("div",VX,[t.createElementVNode("div",zX,[g.type==="flight"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createElementVNode("div",qX,[t.createElementVNode("p",PX,t.toDisplayString(g.title),1),t.createElementVNode("p",DX,t.toDisplayString(g.meta),1)]),t.createElementVNode("p",EX,[t.createElementVNode("span",TX,t.toDisplayString(g.from),1),t.createVNode(t.unref(Ts),{class:"mx-2 inline h-4 w-4"}),t.createElementVNode("span",HX,t.toDisplayString(g.to),1)]),t.createElementVNode("p",jX,t.toDisplayString(g.time),1),g.fileName?(t.openBlock(),t.createElementBlock("div",OX,[t.createVNode(t.unref(hs),{class:"h-4 w-4 text-muted-foreground"}),t.createElementVNode("span",null,t.toDisplayString(g.fileName),1)])):t.createCommentVNode("",!0)],64)):g.type==="interview"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createElementVNode("div",FX,[t.createElementVNode("p",RX,t.toDisplayString(g.title),1),t.createElementVNode("p",NX,t.toDisplayString(g.meta),1)]),t.createElementVNode("p",$X,t.toDisplayString(g.desc),1),t.createVNode(t.unref(hS),{class:"my-4"}),t.createElementVNode("div",UX,[t.createElementVNode("div",WX,[t.createVNode(t.unref(Uz),{class:"h-10 w-10"},{default:t.withCtx(()=>[g.avatarUrl?(t.openBlock(),t.createBlock(t.unref(Gz),{key:0,src:g.avatarUrl},null,8,["src"])):t.createCommentVNode("",!0),t.createVNode(t.unref(Wz),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(u(g.personName??"")),1)]),_:2},1024)]),_:2},1024),t.createElementVNode("div",GX,[t.createElementVNode("p",KX,t.toDisplayString(g.personName),1),t.createElementVNode("p",XX,t.toDisplayString(g.personRole),1)])]),t.createElementVNode("div",ZX,[t.createVNode(t.unref(Ee),{size:"icon",variant:"ghost"},{default:t.withCtx(()=>[t.createVNode(t.unref(us),{class:"h-4 w-4"})]),_:1}),t.createVNode(t.unref(Ee),{size:"icon",variant:"ghost"},{default:t.withCtx(()=>[t.createVNode(t.unref(Zs),{class:"h-4 w-4"})]),_:1})])])],64)):g.type==="product"?(t.openBlock(),t.createElementBlock("div",YX,[t.createElementVNode("div",QX,[g.imgUrl?(t.openBlock(),t.createElementBlock("img",{key:0,src:g.imgUrl,class:"h-full w-full rounded-lg object-cover",alt:"product"},null,8,JX)):(t.openBlock(),t.createBlock(f,{key:1,class:"h-5 w-5 text-muted-foreground"}))]),t.createElementVNode("div",eZ,[t.createElementVNode("div",tZ,[t.createElementVNode("p",aZ,t.toDisplayString(g.title),1),t.createElementVNode("p",nZ,t.toDisplayString(g.meta),1)]),t.createElementVNode("p",oZ,t.toDisplayString(g.desc),1),t.createElementVNode("div",{class:t.normalizeClass(["mt-4 grid gap-3",t.unref(n)?"grid-cols-1":"grid-cols-3"])},[t.createElementVNode("div",rZ,[y[1]||(y[1]=t.createElementVNode("p",{class:"text-sm font-medium"},"Customer",-1)),t.createElementVNode("p",iZ,t.toDisplayString(g.customer),1)]),t.createElementVNode("div",sZ,[y[2]||(y[2]=t.createElementVNode("p",{class:"text-sm font-medium"},"Price",-1)),t.createElementVNode("p",lZ,t.toDisplayString(g.price),1)]),t.createElementVNode("div",cZ,[y[3]||(y[3]=t.createElementVNode("p",{class:"text-sm font-medium"},"Quantity",-1)),t.createElementVNode("p",dZ,t.toDisplayString(g.qty),1)])],2)])])):g.type==="design"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:3},[t.createElementVNode("div",hZ,[t.createElementVNode("p",uZ,t.toDisplayString(g.title),1),t.createElementVNode("p",pZ,t.toDisplayString(g.meta),1)]),t.createElementVNode("p",yZ,t.toDisplayString(g.desc),1),t.createElementVNode("div",fZ,[t.createVNode(t.unref(Uz),{class:"h-10 w-10"},{default:t.withCtx(()=>[g.avatarUrl?(t.openBlock(),t.createBlock(t.unref(Gz),{key:0,src:g.avatarUrl},null,8,["src"])):t.createCommentVNode("",!0),t.createVNode(t.unref(Wz),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(u(g.personName??"")),1)]),_:2},1024)]),_:2},1024),t.createElementVNode("p",kZ,t.toDisplayString(g.personName),1)])],64)):g.type==="server"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:4},[t.createElementVNode("div",mZ,[t.createElementVNode("p",gZ,t.toDisplayString(g.title),1),t.createVNode(t.unref(_a),{variant:"destructive",class:"h-6"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(g.chipText??""),1)]),_:2},1024)]),t.createElementVNode("div",bZ,[t.createElementVNode("div",MZ,[t.createElementVNode("div",xZ,[t.createVNode(t.unref(Ws),{class:"h-4 w-4"}),y[4]||(y[4]=t.createElementVNode("span",null,"IP Address",-1))]),t.createElementVNode("span",wZ,t.toDisplayString(g.ip),1)]),t.createElementVNode("div",vZ,[t.createElementVNode("div",CZ,[t.createVNode(t.unref(cs),{class:"h-4 w-4"}),y[5]||(y[5]=t.createElementVNode("span",null,"CPU",-1))]),t.createElementVNode("span",LZ,t.toDisplayString(g.cpu),1)]),t.createElementVNode("div",SZ,[t.createElementVNode("div",IZ,[t.createVNode(t.unref(cs),{class:"h-4 w-4"}),y[6]||(y[6]=t.createElementVNode("span",null,"Memory",-1))]),t.createElementVNode("span",_Z,t.toDisplayString(g.memory),1)])]),t.createVNode(t.unref(hS),{class:"my-4"}),t.createElementVNode("div",AZ,[t.createElementVNode("div",BZ,[t.createVNode(t.unref(Ee),{size:"icon",variant:"ghost"},{default:t.withCtx(()=>[t.createVNode(t.unref(e1),{class:"h-4 w-4"})]),_:1}),t.createVNode(t.unref(Ee),{size:"icon",variant:"ghost"},{default:t.withCtx(()=>[t.createVNode(k,{class:"h-4 w-4"})]),_:1})])])],64)):g.type==="location"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:5},[t.createElementVNode("div",VZ,[t.createElementVNode("div",zZ,[t.createVNode(m,{class:"h-4 w-4 text-muted-foreground"}),t.createElementVNode("p",qZ,t.toDisplayString(g.title),1)]),t.createVNode(t.unref(_a),{variant:"destructive",class:"h-6"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(g.chipText),1)]),_:2},1024)]),t.createElementVNode("p",PZ,t.toDisplayString(g.desc1),1),g.desc2?(t.openBlock(),t.createElementBlock("p",DZ,t.toDisplayString(g.desc2),1)):t.createCommentVNode("",!0),t.createVNode(t.unref(hS),{class:"my-4"}),t.createElementVNode("div",EZ,[t.createElementVNode("div",TZ,[t.createVNode(t.unref(Ee),{size:"icon",variant:"ghost"},{default:t.withCtx(()=>[t.createVNode(t.unref(Gs),{class:"h-4 w-4"})]),_:1}),t.createVNode(t.unref(Ee),{size:"icon",variant:"ghost"},{default:t.withCtx(()=>[t.createVNode(t.unref(us),{class:"h-4 w-4"})]),_:1}),t.createVNode(t.unref(Ee),{size:"icon",variant:"ghost"},{default:t.withCtx(()=>[t.createVNode(t.unref(o1),{class:"h-4 w-4"})]),_:1})]),t.createElementVNode("p",HZ,"Due date: "+t.toDisplayString(g.due),1)])],64)):t.createCommentVNode("",!0)])])]))),128))])]))])])}}}),jZ={class:"dcode-upload-file"},OZ={class:"border-2 border-dashed border-gray-300 dark:border-gray-700 rounded-lg p-6 flex flex-col items-center justify-center text-center hover:bg-gray-50 dark:hover:bg-gray-800 transition-colors cursor-pointer"},FZ={key:0,class:"text-xs text-gray-500 mt-1"},RZ=["accept"],NZ={key:1,class:"text-xs text-red-600 mt-1"},Xz=t.defineComponent({name:"DCodeUploadFile",__name:"DCodeUploadFile",props:{label:{},accept:{},errorMessage:{},modelValue:{}},emits:["update:modelValue"],setup(a,{emit:e}){const n=e,o=r=>{var s;const i=(s=r.target.files)==null?void 0:s[0];i&&n("update:modelValue",i)};return(r,i)=>(t.openBlock(),t.createElementBlock("div",jZ,[a.label?(t.openBlock(),t.createBlock(n_,{key:0,label:a.label},null,8,["label"])):t.createCommentVNode("",!0),t.createElementVNode("div",OZ,[t.createVNode(t.unref(ha),{class:"w-8 h-8 text-gray-400 mb-2"}),i[0]||(i[0]=t.createElementVNode("p",{class:"text-sm text-gray-600 dark:text-gray-400"},[t.createElementVNode("span",{class:"font-medium text-primary-600"},"Click to upload"),t.createTextVNode(" or drag and drop ")],-1)),a.accept?(t.openBlock(),t.createElementBlock("p",FZ,t.toDisplayString(a.accept),1)):t.createCommentVNode("",!0),t.createElementVNode("input",{type:"file",class:"hidden",onChange:o,accept:a.accept},null,40,RZ)]),a.errorMessage?(t.openBlock(),t.createElementBlock("p",NZ,t.toDisplayString(a.errorMessage),1)):t.createCommentVNode("",!0)]))}}),$Z=["onClick"],UZ={key:1,class:"mr-2 text-xs font-bold shrink-0 opacity-50"},WZ={class:"font-semibold text-sm whitespace-normal text-center leading-tight"},GZ={key:1},KZ={key:0,class:"text-white"},XZ={key:1},ZZ={key:2},YZ=["disabled","onClick"],QZ={key:1,class:"mr-2 text-sm font-bold opacity-70"},JZ={class:"whitespace-normal text-sm text-center leading-tight"},eY={class:"flex flex-col flex-1 min-w-0"},tY={class:"text-sm text-muted-foreground"},aY={class:"px-1"},nY=["disabled"],oY=["type"],rY=["disabled"],Zz=Xt(t.defineComponent({name:"DCodeWizard",__name:"DCodeWizard",props:{tabs:{},modelValue:{},defaultTab:{default:0},allowTabClick:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},cache:{type:Boolean,default:!0},autoFetchOnMount:{type:Boolean,default:!0},apiOptions:{type:[Object,Function],default:void 0},isVertical:{type:Boolean,default:!1},isWizard:{type:Boolean,default:!1},typeWizard:{default:"icon"},showNavigation:{type:Boolean,default:!0},submitText:{default:"Simpan"},loading:{type:Boolean,default:!1},isSubmit:{type:Boolean,default:!1}},emits:["update:modelValue","change","loaded","error"],setup(a,{emit:e}){const n=a,o=e,r=Ke(),i=r==null?void 0:r.DCodeApi;typeof i!="function"&&console.error("[DCodeWizardTabs] useApi() must expose DCodeApi()");const s=t.ref(n.defaultTab),c=t.computed({get(){var b;if(typeof n.modelValue=="string"){const x=(b=n.tabs)==null?void 0:b.findIndex(I=>I.key===n.modelValue);if(x!==void 0&&x>=0)return x}return(typeof n.modelValue=="number"?n.modelValue:void 0)??s.value},set(b){var x;if(s.value=b,typeof n.modelValue=="string"){const I=(x=n.tabs)==null?void 0:x[b];I?o("update:modelValue",I.key):o("update:modelValue",b)}else o("update:modelValue",b)}}),d=t.computed(()=>{var b;return((b=n.tabs)==null?void 0:b.length)??0}),h=t.computed(()=>{var b;return(b=n.tabs)==null?void 0:b[c.value]});function u(b){return d.value<=0?0:Math.min(Math.max(b,0),d.value-1)}function p(b){return b?typeof b=="string"?Gt[b]||null:b:null}const y=t.reactive({});function f(b){return y[b.key]||(y[b.key]={loaded:!1,loading:!1,data:null,error:null}),y[b.key]}function k(){if(n.apiOptions)return typeof n.apiOptions=="function"?n.apiOptions():n.apiOptions}function m(b){const x=b.endpoint||{};return{apiModule:b.apiModule||x.apiModule,apiAction:b.apiAction||x.apiAction,apiUrl:x.apiUrl,apiMethod:x.apiMethod||"GET",apiParams:b.apiParams}}function g(b){if(n.isWizard||!n.allowTabClick||n.disabled)return!1;const x=n.tabs[b];return!(!x||x.disabled)}async function v(b){if(typeof b.tab.fetchData=="function"){const D=await b.tab.fetchData(),U=(D==null?void 0:D.data)??D;return(U==null?void 0:U.data)??U}const x=m(b.tab);if(!(x.apiModule&&x.apiAction||x.apiUrl))return null;if(typeof i!="function")throw new Error("DCodeApi is not available");const V=k();let B;if(x.apiUrl)B=await i("","",V,{_url:x.apiUrl,_method:x.apiMethod,_data:x.apiParams??void 0});else{const D={...V,...x.apiParams};B=await i(x.apiModule,x.apiAction,D)}const A=(B==null?void 0:B.data)??B;return(A==null?void 0:A.data)??A}async function L(b,{force:x=!1}={}){const I=u(b),V=n.tabs[I];if(!V)return;const B=f(V);if(!(n.cache&&B.loaded&&!x)&&!B.loading){B.loading=!0,B.error=null;try{const A=await v({tabIndex:I,tab:V});B.data=A,B.loaded=!0,o("loaded",{tabIndex:I,tab:V,data:A})}catch(A){const P=typeof(A==null?void 0:A.message)=="string"&&A.message||typeof A=="string"&&A||"Failed to load tab data.";B.error=P,o("error",{tabIndex:I,tab:V,message:P})}finally{B.loading=!1}}}function w(b){const x=u(b);g(x)&&x!==c.value&&(c.value=x)}function M(b=c.value){return L(b,{force:!0})}function C(){const b=u(c.value-1);b!==c.value&&(c.value=b)}function S(){const b=u(c.value+1);b!==c.value&&(c.value=b)}return t.watch(()=>n.tabs,b=>{for(const x of b??[])f(x)},{immediate:!0}),t.watch(()=>c.value,async b=>{var I;const x=(I=n.tabs)==null?void 0:I[b];x&&o("change",{tabIndex:b,tab:x}),await L(b)},{immediate:!0}),t.watch(()=>n.autoFetchOnMount,async b=>{b&&await L(c.value)},{immediate:!0}),(b,x)=>{var I,V,B;return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["w-full rounded-lg border bg-card text-card-foreground shadow-sm",{"flex flex-row":a.isVertical}])},[t.createElementVNode("div",{class:t.normalizeClass(["flex flex-col space-y-1.5 p-6",{"w-64 border-r pr-0":a.isVertical,"pb-2":a.isWizard&&!a.isVertical}])},[t.createElementVNode("div",{class:t.normalizeClass({"mt-4":!a.isVertical||a.isWizard})},[a.isWizard?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["w-full relative flex overflow-visible rounded-lg",a.isVertical?"flex-col gap-2":""])},[a.isVertical?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:1},t.renderList(a.tabs,(A,P)=>(t.openBlock(),t.createElementBlock("div",{key:A.key,class:"relative z-10 box-border flex items-center gap-3 w-full pb-6 last:pb-0"},[t.createElementVNode("div",{class:t.normalizeClass(["w-8 h-8 rounded-full flex shrink-0 items-center justify-center font-bold text-sm border-2 transition-all bg-card",[P<c.value?"wizard-num-done":"",P===c.value?"wizard-num-active":P>c.value?"wizard-num-pending":""]])},[a.typeWizard==="icon"&&A.icon?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(p(A.icon)),{key:0,class:"w-4 h-4"})):a.typeWizard==="number"||!A.icon&&a.typeWizard!=="none"?(t.openBlock(),t.createElementBlock("span",GZ,[P<c.value?(t.openBlock(),t.createElementBlock("span",KZ,"✓")):(t.openBlock(),t.createElementBlock("span",XZ,t.toDisplayString(P+1),1))])):(t.openBlock(),t.createElementBlock("span",ZZ))],2),t.createElementVNode("span",{class:t.normalizeClass(["text-xs font-semibold whitespace-normal px-2 py-1 rounded transition-colors text-left",P===c.value?"wizard-text-active":"wizard-text-pending"])},t.toDisplayString(A.title),3)]))),128)):(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(a.tabs,(A,P)=>(t.openBlock(),t.createElementBlock("div",{key:A.key,onClick:D=>w(P),style:t.normalizeStyle({zIndex:a.tabs.length-P}),class:"relative flex-1 group"},[t.createElementVNode("div",{class:t.normalizeClass(["relative flex items-center justify-center min-h-[3rem] h-auto py-2 px-2 cursor-pointer transition-colors w-full",[P>0?"pl-8":"",P===c.value?"wizard-step-active":P<c.value?"wizard-step-done":"wizard-step-pending"]])},[a.typeWizard==="icon"&&A.icon?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(p(A.icon)),{key:0,class:"w-4 h-4 mr-2 shrink-0"})):a.typeWizard==="number"?(t.openBlock(),t.createElementBlock("span",UZ,t.toDisplayString(P+1),1)):t.createCommentVNode("",!0),t.createElementVNode("span",WZ,t.toDisplayString(A.title),1)],2),P<a.tabs.length-1?(t.openBlock(),t.createElementBlock("svg",{key:0,class:t.normalizeClass(["absolute top-0 -right-[15.5px] w-[16px] h-full transition-colors block z-10",[P===c.value?"wizard-svg-active":P<c.value?"wizard-svg-done":"wizard-svg-pending"]]),preserveAspectRatio:"none",viewBox:"0 0 16 48"},[...x[0]||(x[0]=[t.createElementVNode("polygon",{points:"0,0 16,24 0,48"},null,-1)])],2)):t.createCommentVNode("",!0)],12,$Z))),128))],2)):(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["flex w-full",a.isVertical?"flex-col gap-1":"flex-wrap border-b border-separate"])},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.tabs,(A,P)=>(t.openBlock(),t.createElementBlock("button",{key:A.key,type:"button",disabled:!g(P),onClick:D=>w(P),class:t.normalizeClass(["relative min-h-[3rem] h-auto py-2 flex items-center justify-center gap-2 px-4 transition-all rounded-none focus:outline-none focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2 wizard-btn-common",t.unref(be)("border-b border-r",!a.isVertical&&P===a.tabs.length-1&&"border-r-0",P===c.value?"wizard-btn-active":"wizard-btn-pending",!g(P)&&"opacity-60 cursor-not-allowed",a.isVertical?"w-full justify-start border-r-0":"flex-1")])},[a.typeWizard==="icon"&&A.icon?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(p(A.icon)),{key:0,class:"h-4 w-4 shrink-0"})):a.typeWizard==="number"?(t.openBlock(),t.createElementBlock("span",QZ,t.toDisplayString(P+1),1)):t.createCommentVNode("",!0),t.createElementVNode("span",JZ,t.toDisplayString(A.title),1)],10,YZ))),128))],2))],2)],2),a.isVertical?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(hS),{key:0})),t.createElementVNode("div",eY,[t.createElementVNode("div",{class:t.normalizeClass(["p-6 flex-1 min-w-0",{"pl-6":a.isVertical}])},[h.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[(I=y[h.value.key])!=null&&I.loading?t.renderSlot(b.$slots,"loading",{key:0,tab:h.value,tabIndex:c.value},()=>[x[1]||(x[1]=t.createElementVNode("div",{class:"rounded-lg border bg-muted/30 px-4 py-3 text-sm text-muted-foreground"},"Loading...",-1))],!0):t.renderSlot(b.$slots,`tab-${h.value.key}`,{key:1,tab:h.value,tabIndex:c.value,data:(V=y[h.value.key])==null?void 0:V.data,loaded:(B=y[h.value.key])==null?void 0:B.loaded,reload:M},()=>[t.createElementVNode("div",tY,[x[2]||(x[2]=t.createTextVNode(" Slot ",-1)),t.createElementVNode("code",aY,"tab-"+t.toDisplayString(h.value.key),1),x[3]||(x[3]=t.createTextVNode(" belum dibuat. ",-1))])],!0)],64)):t.createCommentVNode("",!0)],2),a.isWizard||a.showNavigation?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["flex items-center justify-between p-6 pt-0",{"pl-6":a.isVertical}])},[t.createElementVNode("button",{type:"button",onClick:C,disabled:c.value<=0,class:"relative inline-flex items-center justify-center gap-2 px-5 py-2.5 text-sm font-medium transition-all duration-300 rounded-lg bg-[#ffffff] border border-[#e2e8f0] text-[#334155] shadow-sm hover:bg-[#f8fafc] hover:text-[#0f172a] hover:-translate-y-0.5 hover:shadow disabled:opacity-50 disabled:cursor-not-allowed disabled:shadow-none disabled:hover:bg-[#ffffff] disabled:hover:text-[#334155] disabled:hover:translate-y-0 disabled:active:scale-100 dark:bg-[#18181b] dark:border-[#27272a] dark:text-[#d4d4d8] dark:hover:bg-[#27272a] dark:hover:border-[#3f3f46] dark:disabled:hover:bg-[#18181b] dark:disabled:hover:text-[#d4d4d8] focus:outline-none focus:ring-2 focus:ring-[#e2e8f0] focus:ring-offset-2 active:scale-95"}," Sebelumnya ",8,nY),c.value<d.value-1?(t.openBlock(),t.createElementBlock("button",{key:0,type:a.isSubmit?"submit":"button",onClick:S,class:"relative inline-flex items-center justify-center gap-2 px-6 py-2.5 text-sm font-medium text-[#ffffff] transition-all duration-300 rounded-lg shadow-md bg-[#2563eb] hover:bg-[#1d4ed8] hover:shadow-lg hover:-translate-y-0.5 disabled:opacity-50 disabled:cursor-not-allowed disabled:shadow-none disabled:hover:bg-[#2563eb] disabled:hover:translate-y-0 disabled:active:scale-100 focus:outline-none focus:ring-2 focus:ring-[#2563eb] focus:ring-offset-2 active:scale-95"}," Selanjutnya ",8,oY)):(t.openBlock(),t.createElementBlock("button",{key:1,type:"submit",disabled:a.loading,class:"relative inline-flex items-center justify-center gap-2 px-6 py-2.5 text-sm font-medium text-[#ffffff] transition-all duration-300 rounded-lg shadow-md bg-[#2563eb] hover:bg-[#1d4ed8] hover:shadow-lg hover:-translate-y-0.5 disabled:opacity-50 disabled:cursor-not-allowed disabled:shadow-none disabled:hover:bg-[#2563eb] disabled:hover:translate-y-0 disabled:active:scale-100 dark:bg-[#3b82f6] dark:hover:bg-[#2563eb] focus:outline-none focus:ring-2 focus:ring-[#2563eb] focus:ring-offset-2 active:scale-95"},[a.loading?(t.openBlock(),t.createBlock(t.unref(kt),{key:0,class:"w-4 h-4 mr-2 animate-spin"})):t.createCommentVNode("",!0),t.createTextVNode(" "+t.toDisplayString(a.submitText),1)],8,rY))],2)):t.createCommentVNode("",!0)])],2)}}}),[["__scopeId","data-v-9379f062"]]);function iY(){return{setPageTitle:n=>{typeof document<"u"&&(document.title=n||document.title),typeof window<"u"&&window.dispatchEvent(new CustomEvent("micro:page-title",{detail:{title:n},bubbles:!0,composed:!0}))},setBreadcrumb:n=>{typeof window<"u"&&window.dispatchEvent(new CustomEvent("micro:breadcrumb",{detail:{items:n},bubbles:!0,composed:!0}))}}}const sY={class:"w-full"},lY={class:"relative mx-auto min-h-[37.5rem]"},cY={key:"content",class:"w-full"},dY={class:"mb-6"},hY={class:"text-neutral-500 dark:text-neutral-400"},uY={key:"skeleton",class:"w-full"},pY={key:"error",class:"flex items-center justify-center p-20 text-red-500 w-full"},Yz=Xt(t.defineComponent({__name:"AutoLayoutForm",props:{layoutCode:{}},setup(a){var C,S;const e=a,n=(S=(C=t.getCurrentInstance())==null?void 0:C.appContext)==null?void 0:S.app;n&&!n._context.provides[Symbol.for("vue-router-route-location")]&&n.provide(Symbol.for("vue-router-route-location"),{query:{},params:{},path:""});let o={query:{},params:{},path:""};try{const b=H1.useRoute();b&&(o=b)}catch{console.warn("useRoute not available, using fallback")}let r={back:()=>console.warn("Router back() not available"),push:()=>console.warn("Router push() not available")};try{const b=H1.useRouter();b&&(r=b)}catch{console.warn("useRouter not available, using fallback")}const{apiUrl:i,DCodeApi:s}=Ke();let c;try{c=MS.useI18n().locale}catch{c=t.ref("en")}const{setPageTitle:d}=iY(),h=t.computed(()=>o.params&&"id"in o.params?!0:o.path?/\/edit\/[^\/]+$/.test(o.path):!1),u=t.computed(()=>{if(o.params&&"id"in o.params)return o.params.id;if(!o.path)return null;const b=o.path.match(/\/edit\/([^\/]+)$/);return b?b[1]:null}),p=t.ref({}),y=t.ref(null),f=t.ref(!0),k=t.ref(!1),m=t.ref(e.layoutCode),g=t.computed(()=>{var I;if(!y.value)return"";const b=((I=c==null?void 0:c.value)==null?void 0:I.toLowerCase())||"en";return(b==="en"||b.startsWith("en-")?y.value.titleEN:y.value.titleID)||y.value.title||e.layoutCode});t.watch(g,b=>{b&&d(b)},{immediate:!0});const v=async()=>{var b,x,I;f.value=!0;try{let V=e.layoutCode;o&&o.query&&typeof o.query=="object"&&"code"in o.query&&(V=o.query.code||e.layoutCode);let B=await i(`/api/auto-layout/form/form-dynamic?code=${V}`,"GET");if(!B.status||!B.data||Array.isArray(B.data)&&B.data.length===0)try{const A=await i(`/api/auto-layout/datatable/form-dynamic?code=${V}`,"GET");if(A.status){const P=Array.isArray(A.data)?A.data[0]:A.data;P&&P.code&&(V=P.code,m.value=V,B=await i(`/api/auto-layout/form/form-dynamic?code=${V}`,"GET"))}}catch(A){console.warn("Failed to resolve layout code via datatable",A)}if(B.status){y.value=Array.isArray(B.data)?B.data[0]:B.data;const A={};if((b=y.value)!=null&&b.sections&&y.value.sections.forEach(P=>{((P.propsForm||P.props||{}).fields||P.fields||[]).forEach(T=>{var N;const H=T.model||((N=T.props)==null?void 0:N.model)||T.key;H&&(A[H]=null)})}),p.value=A,f.value=!1,h.value&&u.value){k.value=!0;try{if((x=y.value.endpointGlobal)!=null&&x.apiUrl){const P=y.value.endpointGlobal.apiUrl,D=y.value.endpointGlobal.apiMethod||"GET",U={id:u.value},T=await s(P,D,U);if(T.status){const H=Array.isArray(T.data)?T.data[0]:T.data;p.value={...p.value,...H}}}else{const P=((I=y.value.endpoint)==null?void 0:I.detailUrl)||`/api/${m.value}/detail/${u.value}`,D=await i(P,"GET");if(D.status){let U=Array.isArray(D.data)?D.data[0]:D.data;if(D.payload){const H={...D.payload};if(Object.keys(H).forEach(N=>{U[N]!==void 0&&U[N]!==null&&(H[N]=U[N])}),!("id"in H)&&U.id){const N=Object.keys(H).find(Q=>Q.startsWith("id")&&Q.length>2&&!H[Q]);N&&(H[N]=U.id)}U=H}const T={...U};Object.keys(p.value).forEach(H=>{if(T[H]===void 0||T[H]===null){if(H.toLowerCase().startsWith("id")&&H.length>2){const Q=H.substring(2).toLowerCase(),j=Array.isArray(D.data)?D.data[0]:D.data,F=Object.keys(j).find(R=>R.toLowerCase()===Q);F&&j[F]&&typeof j[F]=="object"&&"id"in j[F]&&(T[H]=j[F].id)}if(H==="idSupervisor"){const Q=Array.isArray(D.data)?D.data[0]:D.data;Q.supervisorId&&(T[H]=Q.supervisorId)}}}),p.value={...p.value,...T}}}}catch(P){console.error("Failed to fetch record data:",P)}finally{k.value=!1}}}}catch(V){console.error("Failed to load form layout:",V),f.value=!1}},L=async b=>{var x,I,V;try{const B=(V=(I=(x=y.value.sections)==null?void 0:x[0])==null?void 0:I.propsForm)==null?void 0:V.endpointForm,A=y.value.endpointGlobal||y.value.endpoint,P=(B==null?void 0:B.submitUrl)||(A==null?void 0:A.submitUrl)||`/api/generic/${e.layoutCode}`,D=(B==null?void 0:B.submitMethod)||(A==null?void 0:A.submitMethod)||(h.value?"PUT":"POST"),U={...b};h.value&&u.value&&!U.id&&(U.id=u.value),await i(P,D,U),r.back()}catch(B){console.error("Submit failed:",B)}},w=async(b,x)=>{if(b==="cancel"){M();return}const I=x.endpointPropAction||x.propsActionGlobal&&x.propsActionGlobal.endpointPropAction;if(I)try{f.value=!0;const V={...p.value};h.value&&x.model&&u.value&&(V[x.model]=u.value);const B=I.apiUrl,A=I.apiMethod||"POST";(await s(B,A,V)).status&&r.back()}catch(V){console.error("Action failed:",V)}finally{f.value=!1}},M=()=>{r.back()};return t.onMounted(()=>{v()}),t.onUnmounted(()=>{d("")}),(b,x)=>{const I=t.resolveComponent("DynamicForm"),V=t.resolveComponent("AutoLayoutSkeleton");return t.openBlock(),t.createElementBlock("div",sY,[t.createElementVNode("div",lY,[t.createVNode(t.Transition,{name:"fade",mode:"out-in"},{default:t.withCtx(()=>[!f.value&&y.value?(t.openBlock(),t.createElementBlock("div",cY,[t.createElementVNode("div",dY,[t.createElementVNode("p",hY,t.toDisplayString(y.value.description),1)]),t.createVNode(I,{schema:y.value,model:p.value,"is-edit-mode":h.value,loading:k.value,onSubmit:L,onCancel:M,onAction:w,class:"w-full"},null,8,["schema","model","is-edit-mode","loading"])])):f.value?(t.openBlock(),t.createElementBlock("div",uY,[t.createVNode(V)])):(t.openBlock(),t.createElementBlock("div",pY," Failed to load form configuration for "+t.toDisplayString(e.layoutCode),1))]),_:1})])])}}}),[["__scopeId","data-v-fd9d71a6"]]),yY=(a,e="short",n="id-ID")=>{const o=typeof a=="string"?new Date(a):a,r=d=>String(d).padStart(2,"0"),i=d=>`${r(d.getHours())}:${r(d.getMinutes())}:${r(d.getSeconds())}`,c={id:"id-ID",en:"en-GB"}[n]||n;return e==="time"?i(o):e==="datetime"?new Intl.DateTimeFormat(c,{day:"2-digit",month:"long",year:"numeric",hour:"2-digit",minute:"2-digit",second:"2-digit"}).format(o):e==="long"?new Intl.DateTimeFormat(c,{day:"2-digit",month:"long",year:"numeric",hour:"2-digit",minute:"2-digit"}).format(o):new Intl.DateTimeFormat(c,{day:"2-digit",month:"short",year:"numeric"}).format(o)},fY=t.defineComponent({__name:"Sheet",props:{open:{type:Boolean},defaultOpen:{type:Boolean},modal:{type:Boolean}},emits:["update:open"],setup(a,{emit:e}){const r=mt(a,e);return(i,s)=>(t.openBlock(),t.createBlock(t.unref(VA),t.normalizeProps(t.guardReactiveProps(t.unref(r))),{default:t.withCtx(()=>[t.renderSlot(i.$slots,"default")]),_:3},16))}}),kY=t.defineComponent({inheritAttrs:!1,__name:"SheetContent",props:{class:{type:[Boolean,null,String,Object,Array]},side:{},forceMount:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(a,{emit:e}){const n=a,o=e,r=De(n,"class","side"),i=mt(r,o);return(s,c)=>(t.openBlock(),t.createBlock(t.unref($A),null,{default:t.withCtx(()=>[t.createVNode(t.unref(NA),{class:"fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0"}),t.createVNode(t.unref(FA),t.mergeProps({class:t.unref(be)(t.unref(wY)({side:a.side}),n.class)},{...t.unref(i),...s.$attrs}),{default:t.withCtx(()=>[t.renderSlot(s.$slots,"default"),t.createVNode(t.unref(zA),{class:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary"},{default:t.withCtx(()=>[t.createVNode(t.unref(it),{class:"w-4 h-4"})]),_:1})]),_:3},16,["class"])]),_:3}))}}),mY=t.defineComponent({__name:"SheetDescription",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class");return(o,r)=>(t.openBlock(),t.createBlock(t.unref(RA),t.mergeProps({class:t.unref(be)("text-sm text-muted-foreground",e.class)},t.unref(n)),{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default")]),_:3},16,["class"]))}}),gY=t.defineComponent({__name:"SheetFooter",props:{class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(be)("flex flex-col-reverse sm:flex-row sm:justify-end sm:gap-x-2",e.class))},[t.renderSlot(n.$slots,"default")],2))}}),bY=t.defineComponent({__name:"SheetHeader",props:{class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(t.unref(be)("flex flex-col gap-y-2 text-center sm:text-left",e.class))},[t.renderSlot(n.$slots,"default")],2))}}),MY=t.defineComponent({__name:"SheetTitle",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class");return(o,r)=>(t.openBlock(),t.createBlock(t.unref(UA),t.mergeProps({class:t.unref(be)("text-lg font-medium text-foreground",e.class)},t.unref(n)),{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default")]),_:3},16,["class"]))}}),xY=t.defineComponent({__name:"SheetTrigger",props:{asChild:{type:Boolean},as:{}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(TT),t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),wY=i1("fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500",{variants:{side:{top:"inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",bottom:"inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",left:"inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",right:"inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"}},defaultVariants:{side:"right"}}),vY={class:"flex-1 overflow-hidden"},CY=t.defineComponent({__name:"DataFilterSheet",props:{title:{default:"Filter Data"},description:{default:"Masukan parameter pencarian untuk memfilter data."}},setup(a){return(e,n)=>(t.openBlock(),t.createBlock(t.unref(fY),null,{default:t.withCtx(()=>[t.createVNode(t.unref(xY),{"as-child":""},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"trigger",{},()=>[t.createVNode(t.unref(Ee),{variant:"outline",class:"gap-2"},{default:t.withCtx(()=>[t.createVNode(t.unref(yr),{class:"w-4 h-4"}),n[0]||(n[0]=t.createElementVNode("span",null,"Pencarian",-1))]),_:1})])]),_:3}),t.createVNode(t.unref(kY),{class:"flex flex-col h-full"},{default:t.withCtx(()=>[t.createVNode(t.unref(bY),{class:"flex-shrink-0"},{default:t.withCtx(()=>[t.createVNode(t.unref(MY),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.title),1)]),_:1}),t.createVNode(t.unref(mY),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.description),1)]),_:1})]),_:1}),t.createElementVNode("div",vY,[t.renderSlot(e.$slots,"default")]),t.createVNode(t.unref(gY),{class:"flex-shrink-0"},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"footer")]),_:3})]),_:3})]),_:3}))}}),LY={key:0},SY=["value","name"],Qz=t.defineComponent({__name:"DynamicFilterField",props:{field:{},modelValue:{}},emits:["update:modelValue"],setup(a,{emit:e}){const{locale:n}=MS.useI18n(),o=a,r=e,i=t.ref(o.modelValue);t.watch(()=>o.modelValue,u=>{i.value=u});const s={DCodeTextField:l_,DCodeAutoComplete:qS,DCodeDatePicker:GI,DCodeTextarea:dS,DCodeTextArea:dS,DCodeCheckbox:q1,DCodeSwitch:s_,DCodeOtpInput:r_,DCodeImageField:a_,DCodeSlider:i_},c=t.computed(()=>{const u=o.field.component;return s[u]||null}),d=t.computed(()=>{const u=o.field.props,p={};return(u.labelID||u.labelEN)&&(p.label=n.value==="id"?u.labelID:u.labelEN),(u.placeholderID||u.placeholderEN)&&(p.placeholder=n.value==="id"?u.placeholderID:u.placeholderEN),u.required!==void 0&&(p.required=u.required),u.disabled!==void 0&&(p.disabled=u.disabled),u.readonly!==void 0&&(p.readonly=u.readonly),u.valueType&&(p.type=u.valueType),u.minLength!==void 0&&(p.minlength=u.minLength),u.maxLength!==void 0&&(p.maxlength=u.maxLength),u.min!==void 0&&(p.min=u.min),u.max!==void 0&&(p.max=u.max),u.options&&(p.options=u.options),u.endpoint&&(p.endpoint=u.endpoint),u.itemTitle&&(p.itemTitle=u.itemTitle),u.itemValue&&(p.itemValue=u.itemValue),u.returnObject!==void 0&&(p.returnObject=u.returnObject),u.clearable!==void 0&&(p.clearable=u.clearable),Object.keys(u).forEach(y=>{!["labelID","labelEN","placeholderID","placeholderEN"].includes(y)&&!p.hasOwnProperty(y)&&(p[y]=u[y])}),p}),h=u=>{i.value=u,r("update:modelValue",u)};return(u,p)=>a.field.isHidden?(t.openBlock(),t.createElementBlock("div",LY,[t.createElementVNode("input",{type:"hidden",value:i.value,name:a.field.model},null,8,SY)])):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(c.value),t.mergeProps({key:1},d.value,{modelValue:i.value,"onUpdate:modelValue":[p[0]||(p[0]=y=>i.value=y),h]}),null,16,["modelValue"]))}}),IY=t.defineComponent({__name:"Pagination",props:{page:{},defaultPage:{},itemsPerPage:{},total:{},siblingCount:{},disabled:{type:Boolean},showEdges:{type:Boolean},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},emits:["update:page"],setup(a,{emit:e}){const n=a,o=e,r=De(n,"class"),i=mt(r,o);return(s,c)=>(t.openBlock(),t.createBlock(t.unref(lH),t.mergeProps({"data-slot":"pagination"},t.unref(i),{class:n.class}),{default:t.withCtx(d=>[t.renderSlot(s.$slots,"default",t.normalizeProps(t.guardReactiveProps(d)))]),_:3},16,["class"]))}}),_Y=t.defineComponent({__name:"PaginationContent",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class");return(o,r)=>(t.openBlock(),t.createBlock(t.unref(kH),t.mergeProps({"data-slot":"pagination-content"},t.unref(n),{class:t.unref(be)("flex flex-row items-center gap-1",e.class)}),{default:t.withCtx(i=>[t.renderSlot(o.$slots,"default",t.normalizeProps(t.guardReactiveProps(i)))]),_:3},16,["class"]))}}),AY=t.defineComponent({__name:"PaginationEllipsis",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class");return(o,r)=>(t.openBlock(),t.createBlock(t.unref(rH),t.mergeProps({"data-slot":"pagination-ellipsis"},t.unref(n),{class:t.unref(be)("flex size-9 items-center justify-center",e.class)}),{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default",{},()=>[t.createVNode(t.unref(ua),{class:"size-4"}),r[0]||(r[0]=t.createElementVNode("span",{class:"sr-only"},"More pages",-1))])]),_:3},16,["class"]))}}),BY=t.defineComponent({__name:"PaginationFirst",props:{asChild:{type:Boolean},as:{},size:{default:"default"},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class","size"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(dH),t.mergeProps({"data-slot":"pagination-first",class:t.unref(be)(t.unref(xs)({variant:"ghost",size:a.size}),"gap-1 px-2.5 sm:pr-2.5",e.class)},t.unref(o)),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[t.createVNode(t.unref(dn)),i[0]||(i[0]=t.createElementVNode("span",{class:"hidden sm:block"},"First",-1))])]),_:3},16,["class"]))}}),VY=t.defineComponent({__name:"PaginationItem",props:{value:{},asChild:{type:Boolean},as:{},size:{default:"icon"},class:{type:[Boolean,null,String,Object,Array]},isActive:{type:Boolean}},setup(a){const e=a,n=De(e,"class","size","isActive");return(o,r)=>(t.openBlock(),t.createBlock(t.unref(gH),t.mergeProps({"data-slot":"pagination-item"},t.unref(n),{class:t.unref(be)(t.unref(xs)({variant:"ghost",size:a.size}),a.isActive?"bg-[#0056a1] dark:bg-[#003d75] text-white hover:bg-[#0056a1]/90 dark:hover:bg-[#003d75]/90 hover:text-white":"",e.class)}),{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default")]),_:3},16,["class"]))}}),zY=t.defineComponent({__name:"PaginationLast",props:{asChild:{type:Boolean},as:{},size:{default:"default"},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class","size"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(uH),t.mergeProps({"data-slot":"pagination-last",class:t.unref(be)(t.unref(xs)({variant:"ghost",size:a.size}),"gap-1 px-2.5 sm:pr-2.5",e.class)},t.unref(o)),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[i[0]||(i[0]=t.createElementVNode("span",{class:"hidden sm:block"},"Last",-1)),t.createVNode(t.unref(hn))])]),_:3},16,["class"]))}}),qY=t.defineComponent({__name:"PaginationNext",props:{asChild:{type:Boolean},as:{},size:{default:"default"},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class","size"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(MH),t.mergeProps({"data-slot":"pagination-next",class:t.unref(be)(t.unref(xs)({variant:"ghost",size:a.size}),"gap-1 px-2.5 sm:pr-2.5",e.class)},t.unref(o)),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[i[0]||(i[0]=t.createElementVNode("span",{class:"hidden sm:block"},"Next",-1)),t.createVNode(t.unref(hn))])]),_:3},16,["class"]))}}),PY=t.defineComponent({__name:"PaginationPrevious",props:{asChild:{type:Boolean},as:{},size:{default:"default"},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class","size"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(wH),t.mergeProps({"data-slot":"pagination-previous",class:t.unref(be)(t.unref(xs)({variant:"ghost",size:a.size}),"gap-1 px-2.5 sm:pr-2.5",e.class)},t.unref(o)),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[t.createVNode(t.unref(dn)),i[0]||(i[0]=t.createElementVNode("span",{class:"hidden sm:block"},"Previous",-1))])]),_:3},16,["class"]))}}),DY=t.defineComponent({__name:"Select",props:{open:{type:Boolean},defaultOpen:{type:Boolean},defaultValue:{},modelValue:{},by:{type:[String,Function]},dir:{},multiple:{type:Boolean},autocomplete:{},disabled:{type:Boolean},name:{},required:{type:Boolean}},emits:["update:modelValue","update:open"],setup(a,{emit:e}){const r=mt(a,e);return(i,s)=>(t.openBlock(),t.createBlock(t.unref(_H),t.normalizeProps(t.guardReactiveProps(t.unref(r))),{default:t.withCtx(()=>[t.renderSlot(i.$slots,"default")]),_:3},16))}}),EY=t.defineComponent({inheritAttrs:!1,__name:"SelectContent",props:{forceMount:{type:Boolean},position:{default:"popper"},bodyLock:{type:Boolean},side:{},sideOffset:{},sideFlip:{type:Boolean},align:{},alignOffset:{},alignFlip:{type:Boolean},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},hideShiftedArrow:{type:Boolean},sticky:{},hideWhenDetached:{type:Boolean},positionStrategy:{},updatePositionStrategy:{},disableUpdateOnLayoutShift:{type:Boolean},prioritizePosition:{type:Boolean},reference:{},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean},class:{type:[Boolean,null,String,Object,Array]}},emits:["closeAutoFocus","escapeKeyDown","pointerDownOutside"],setup(a,{emit:e}){const n=a,o=e,r=De(n,"class"),i=mt(r,o);return(s,c)=>(t.openBlock(),t.createBlock(t.unref(ej),null,{default:t.withCtx(()=>[t.createVNode(t.unref(NH),t.mergeProps({...t.unref(i),...s.$attrs},{class:t.unref(be)("relative z-50 max-h-96 min-w-32 overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",a.position==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",n.class)}),{default:t.withCtx(()=>[t.createVNode(t.unref(OY)),t.createVNode(t.unref(hj),{class:t.normalizeClass(t.unref(be)("p-1",a.position==="popper"&&"h-[--reka-select-trigger-height] w-full min-w-[--reka-select-trigger-width]"))},{default:t.withCtx(()=>[t.renderSlot(s.$slots,"default")]),_:3},8,["class"]),t.createVNode(t.unref(jY))]),_:3},16,["class"])]),_:3}))}}),TY={class:"absolute right-2 flex h-3.5 w-3.5 items-center justify-center"},HY=t.defineComponent({__name:"SelectItem",props:{value:{},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(KH),t.mergeProps(t.unref(o),{class:t.unref(be)("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e.class)}),{default:t.withCtx(()=>[t.createElementVNode("span",TY,[t.createVNode(t.unref(ZH),null,{default:t.withCtx(()=>[t.createVNode(t.unref(ca),{class:"h-4 w-4"})]),_:1})]),t.createVNode(t.unref(QH),null,{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default")]),_:3})]),_:3},16,["class"]))}}),jY=t.defineComponent({__name:"SelectScrollDownButton",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(nj),t.mergeProps(t.unref(o),{class:t.unref(be)("flex cursor-default items-center justify-center py-1",e.class)}),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[t.createVNode(t.unref(St))])]),_:3},16,["class"]))}}),OY=t.defineComponent({__name:"SelectScrollUpButton",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(rj),t.mergeProps(t.unref(o),{class:t.unref(be)("flex cursor-default items-center justify-center py-1",e.class)}),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default",{},()=>[t.createVNode(t.unref(js))])]),_:3},16,["class"]))}}),FY=t.defineComponent({__name:"SelectTrigger",props:{disabled:{type:Boolean},reference:{},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(a){const e=a,n=De(e,"class"),o=Ze(n);return(r,i)=>(t.openBlock(),t.createBlock(t.unref(sj),t.mergeProps(t.unref(o),{class:t.unref(be)("flex h-9 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm ring-offset-background data-[placeholder]:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 [&>span]:truncate text-start",e.class)}),{default:t.withCtx(()=>[t.renderSlot(r.$slots,"default"),t.createVNode(t.unref(UH),{"as-child":""},{default:t.withCtx(()=>[t.createVNode(t.unref(St),{class:"w-4 h-4 opacity-50 shrink-0"})]),_:1})]),_:3},16,["class"]))}}),RY=t.defineComponent({__name:"SelectValue",props:{placeholder:{},asChild:{type:Boolean},as:{}},setup(a){const e=a;return(n,o)=>(t.openBlock(),t.createBlock(t.unref(cj),t.normalizeProps(t.guardReactiveProps(e)),{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},16))}}),NY={class:"dcode-card animate-slide-up"},$Y={class:"px-4 py-2 bg-primary-700 dark:bg-primary-900 border-b border-primary-500/30 dark:border-primary-900/50 rounded-t-xl relative z-30"},UY={class:"flex flex-col lg:flex-row lg:items-center lg:justify-between gap-4"},WY={key:0,class:"flex flex-col sm:flex-row items-start sm:items-center gap-2 flex-1 max-w-2xl"},GY={class:"relative w-full sm:w-64"},KY={key:0,class:"relative"},XY={class:"flex flex-col h-full"},ZY={key:0,class:"flex-1 overflow-y-auto py-4"},YY={class:"grid grid-cols-1 md:grid-cols-2 gap-4 px-1"},QY={key:0,class:"sticky bottom-0 left-0 right-0 bg-white dark:bg-zinc-900 border-t border-neutral-200 dark:border-neutral-700 p-4 flex gap-2"},JY={class:"flex justify-end gap-2 w-full"},eQ={key:0,class:"font-medium text-sm text-neutral-600 dark:text-neutral-400"},tQ={class:"overflow-auto custom-scrollbar relative max-h-[calc(100vh-17rem)]"},aQ={class:"dcode-table w-full"},nQ={class:"bg-primary-700 dark:bg-primary-900 sticky top-0 z-20 shadow-sm"},oQ=["onClick"],rQ={key:0,class:"flex items-center justify-center w-full"},iQ={key:0,class:"px-3 py-2 text-xs font-medium text-white dark:text-neutral-100 uppercase tracking-wider"},sQ={class:"bg-white dark:bg-zinc-900 divide-y divide-neutral-200 dark:divide-neutral-700"},lQ={key:0,class:"px-3 py-0.5"},cQ={key:1},dQ=["colspan"],hQ={class:"flex flex-col items-center gap-4"},uQ={class:"text-base font-medium text-neutral-700 dark:text-neutral-300"},pQ={class:"text-sm text-neutral-500 dark:text-neutral-400 mt-1"},yQ={class:"hover:bg-zinc-50 dark:hover:bg-zinc-800/50 transition-colors duration-150"},fQ={key:0,class:"flex items-center justify-center"},kQ={key:0,class:"px-3 py-0.5 !text-center"},mQ={key:0,class:"flex items-center justify-center gap-1.5"},gQ={key:0,class:"bg-zinc-50/50 dark:bg-zinc-800/30"},bQ=["colspan"],MQ={key:0,class:"px-4 py-3 bg-zinc-50/50 dark:bg-zinc-800/30 border-t border-neutral-200 dark:border-neutral-700 flex flex-col sm:flex-row items-center justify-between gap-4 w-full"},xQ={class:"flex items-center gap-4"},wQ={class:"text-xs text-neutral-500 dark:text-neutral-400 font-medium"},vQ={class:"text-neutral-900 dark:text-neutral-100 font-medium"},CQ={class:"text-neutral-900 dark:text-neutral-100 font-medium"},LQ={class:"text-neutral-900 dark:text-neutral-100 font-medium"},SQ={class:"flex-shrink-0"},IQ={class:"space-y-4"},_Q={class:"text-gray-600 dark:text-gray-400"},AQ={class:"grid grid-cols-1 md:grid-cols-2 gap-4 py-4 px-1"},uS=t.defineComponent({name:"DataTable",__name:"DataTable",props:{columns:{default:()=>[]},data:{default:()=>[]},perPage:{default:10},loading:{type:Boolean,default:!1},hasActions:{type:Boolean,default:!1},nested:{type:Boolean,default:!1},apiModule:{},apiAction:{default:"list"},apiMethod:{},apiUrl:{},permissionBase:{},apiParams:{default:()=>({})},configKey:{},tableConfig:{},dynamicColumns:{type:Boolean,default:!1},searchApiEndpoint:{},enableQuickSearch:{type:Boolean,default:!0},showPagination:{type:Boolean,default:!0},ignorePermissions:{type:Boolean,default:!1},userPermissions:{default:null},permissionChecker:{type:Function,default:void 0}},emits:["update:search","update:sort","update:page","create","export","action","update:selection","navigate"],setup(a,{expose:e,emit:n}){console.log("[DEBUG] DataTable.vue loaded - top level");const o=a,r=n,{apiUrl:i}=Ke(),{locale:s}=MS.useI18n(),c=t.ref(""),d=t.ref(1),h=t.ref(o.perPage),u=t.ref({key:"",direction:"asc"}),p=t.ref([]),y=t.ref(!1),f=t.ref(0),k=t.ref({}),m=t.ref([]),g=t.ref(null),v=t.ref(!0),L=t.ref([]),w=t.ref([]),M=t.ref([]),C=t.ref(!1),S=t.ref(!1),b=t.ref({}),x=t.ref(null),I=t.ref(null),V=t.ref(null),B=t.ref([]),A=t.computed(()=>{if(xt.value.length===0)return!1;const _=xt.value.map(E=>{const X=de.value.find($=>$.type==="CHECKBOX"),q=(X==null?void 0:X.keyCheckbox)||"id";return E[q]}).filter(E=>E!=null);return _.length===0?!1:_.every(E=>B.value.includes(E))}),P=t.computed(()=>{if(xt.value.length===0)return!1;const _=de.value.find($=>$.type==="CHECKBOX"),E=(_==null?void 0:_.keyCheckbox)||"id",X=xt.value.map($=>$[E]).filter($=>$!=null),q=X.filter($=>B.value.includes($)).length;return q>0&&q<X.length}),D=_=>{const E=de.value.find($=>$.type==="CHECKBOX"),X=(E==null?void 0:E.keyCheckbox)||"id",q=_[X];return q!==void 0&&B.value.includes(q)},U=_=>{const E=de.value.find($=>$.type==="CHECKBOX"),X=(E==null?void 0:E.keyCheckbox)||"id",q=xt.value.map($=>$[X]).filter($=>$!=null);if(_){const $=new Set([...B.value,...q]);B.value=Array.from($)}else B.value=B.value.filter($=>!q.includes($))},T=(_,E)=>{const X=de.value.find(Y=>Y.type==="CHECKBOX"),q=(X==null?void 0:X.keyCheckbox)||"id",$=_[q];$!=null&&(E?B.value.includes($)||B.value.push($):B.value=B.value.filter(Y=>Y!==$))};t.watch(B,_=>{var X;r("update:selection",_);const E=A.value||_.length>1;(X=w.value)!=null&&X.length&&w.value.forEach(q=>{var $;($=q.fieldActionGlobal)!=null&&$.length&&q.fieldActionGlobal.forEach(Y=>{var Ge,rt;const fe=q.endpoint||((Ge=q.propsActionGlobal)==null?void 0:Ge.endpointPropAction)||q.propsActionGlobal,xe=(rt=fe==null?void 0:fe.keyParam)==null?void 0:rt[0];(xe&&Y.model===xe||!xe&&/^(id|ids|idAuditTrail)/i.test(Y.model))&&E&&Y.model&&(b.value[Y.model]=_)})})},{deep:!0});const H=_=>_&&typeof _=="string"&&_.trim()?_:void 0,N=t.computed(()=>{var _,E,X,q;return H((E=(_=g.value)==null?void 0:_.endpoint)==null?void 0:E.apiModule)||H((q=(X=g.value)==null?void 0:X.endpointGlobal)==null?void 0:q.apiModule)||o.apiModule}),Q=t.computed(()=>{var _,E,X,q;return H((E=(_=g.value)==null?void 0:_.endpoint)==null?void 0:E.apiAction)||H((q=(X=g.value)==null?void 0:X.endpointGlobal)==null?void 0:q.apiAction)||o.apiAction}),j=t.computed(()=>{var _,E,X,q;return H((E=(_=g.value)==null?void 0:_.endpoint)==null?void 0:E.apiMethod)||H((q=(X=g.value)==null?void 0:X.endpointGlobal)==null?void 0:q.apiMethod)||o.apiMethod||"POST"}),F=t.computed(()=>{var _,E,X,q;return H((E=(_=g.value)==null?void 0:_.endpoint)==null?void 0:E.apiUrl)||H((q=(X=g.value)==null?void 0:X.endpointGlobal)==null?void 0:q.apiUrl)||o.apiUrl}),R=t.computed(()=>o.permissionBase||""),Z=t.computed(()=>!M.value||M.value.length===0?[]:[...M.value].sort((_,E)=>(_.seq||0)-(E.seq||0))),J=_=>{if(!_)return"col-span-1";const E=_.toLowerCase();return{full:"col-span-1 md:col-span-2",half:"col-span-1",third:"col-span-1","two-thirds":"col-span-1 md:col-span-2",two_thirds:"col-span-1 md:col-span-2"}[E]||"col-span-1"},re=()=>{let _=null;if(o.tableConfig&&(_=o.tableConfig),_){g.value=_,_.headers&&(m.value=_.headers.map(q=>{var fe,xe,Be,Ge,rt,mS,dq,hq,uq,pq;if(q.key==="action"||((fe=q.custom)==null?void 0:fe.type)==="ACTION"||((xe=q.custom)==null?void 0:xe.type)==="action"){const Ba=((Be=q.custom)==null?void 0:Be.actionCustom)||((Ge=q.custom)==null?void 0:Ge.action);return Ba&&(L.value=Ba.map(ia=>{const Fe=ia.propsActionCustom||ia.props||{},gS=ia.propCustomMessage||{};return{permission:ia.permission,label:s.value==="id"?Fe.labelID:Fe.labelEN,tooltip:s.value==="id"?Fe.tooltipID||Fe.labelID:Fe.tooltipEN||Fe.labelEN,icon:Fe.icon,variant:Fe.variant||"ghost",bgColor:Fe.bgColor,action:Fe.actionType||Fe.key,route:Fe.route,path:Fe.path,endpoint:Fe.endpointPropAction,requiredCondition:ia.requiredCondition||!1,propCustomCondition:ia.propCustomCondition||[],openDialog:ia.openDialog||!1,fieldActionCustom:(ia.fieldActionCustom||[]).map(bS=>{const p_=bS.propsFieldCustom||bS.propsFieldGlobal||bS.props||{};return{...bS,props:{...p_,endpoint:p_.endpointComponent||p_.endpoint}}}),requireConfirm:ia.requireConfirm||Fe.requireConfirm||!1,confirmTitle:s.value==="id"?gS.titleID||Fe.confirmTitleID||"Konfirmasi":gS.titleEN||Fe.confirmTitleEN||"Confirm",confirmMessage:s.value==="id"?gS.messageID||Fe.confirmMessageID||"Apakah Anda yakin?":gS.messageEN||Fe.confirmMessageEN||"Are you sure?"}})),null}let $;const Y=((rt=q.custom)==null?void 0:rt.conditionBadge)||((mS=q.custom)==null?void 0:mS.condition);return(((dq=q.custom)==null?void 0:dq.type)==="BADGE"||((hq=q.custom)==null?void 0:hq.type)==="badge")&&Y&&($=Y.map(Ba=>({value:Ba.value,label:s.value==="id"?Ba.labelID:Ba.labelEN,color:Ba.color,variant:Ba.variant}))),{key:q.key,label:s.value==="id"?q.labelID:q.labelEN,width:q.width,align:q.align,sortable:!0,type:(uq=q.custom)==null?void 0:uq.type,condition:$,keyCheckbox:(pq=q.custom)==null?void 0:pq.keyCheckbox}}).filter(q=>q!==null));const E=_.filters||_.filter;E&&Array.isArray(E)&&(M.value=E.map(q=>({...q,props:q.propsFilters||q.props||{}})),M.value.forEach(q=>{k.value[q.model]=""}));const X=_.actionGlobal||_.action;console.log("[DEBUG] loadConfig rawActions:",X),X&&Array.isArray(X)?(w.value=X.map(q=>{const $=q.propsActionGlobal||q.props||{};return{key:$.key,permission:q.permission,label:s.value==="id"?$.labelID||"Action":$.labelEN||"Action",tooltip:s.value==="id"?$.tooltipID||$.labelID:$.tooltipEN||$.labelEN,icon:$.icon,variant:$.variant||"default",bgColor:$.bgColor,textColor:$.textColor,route:$.route,path:$.path,endpoint:$.endpointPropAction||q.endpoint,openDialog:q.openDialog||!1,fieldActionGlobal:(q.fieldActionGlobal||q.field||[]).map(Y=>{const fe=Y.propsFieldGlobal||Y.props||{};return{...Y,props:{...fe,endpoint:fe.endpointComponent||fe.endpoint}}})}}),console.log("[DEBUG] loadConfig headerActions set:",w.value)):console.log("[DEBUG] loadConfig no rawActions found"),_.pagination!==void 0&&(v.value=_.pagination)}};t.watch(()=>o.tableConfig,()=>{re()},{deep:!0,immediate:!0});const de=t.computed(()=>o.dynamicColumns||o.configKey||o.tableConfig?m.value:o.columns||[]),ue=t.computed(()=>o.hasActions||L.value.length>0),ve=t.computed(()=>N.value||F.value?y.value:o.loading),le=t.computed(()=>!!N.value||!!F.value),G=t.computed(()=>[]),z=_=>{if(console.log("[DEBUG] hasAction called:",{actionCode:_,permissionChecker:!!o.permissionChecker,effectivePath:R.value}),o.permissionChecker){const E=o.permissionChecker(R.value,_);return console.log("[DEBUG] permissionChecker result:",E),E}return G.value.some(E=>E.code===_)},W=(_,E)=>{if(!_.visibilityCondition)return!0;const{field:X,operator:q,value:$}=_.visibilityCondition,Y=O(E,X);switch(q){case"equals":return Y===$;case"notEquals":return Y!==$;case"in":return Array.isArray($)&&$.includes(Y);case"notIn":return Array.isArray($)&&!$.includes(Y);case"greaterThan":return Y>$;case"lessThan":return Y<$;case"contains":return String(Y).includes(String($));default:return!0}},ee=t.computed(()=>{if(console.log("[DEBUG] visibleHeaderActions:",{headerActions:w.value,ignorePermissions:o.ignorePermissions}),w.value.length===0)return w.value;const _=w.value.filter(E=>{if(o.ignorePermissions)return!0;if(!E.permission)return console.log("[DEBUG] Action no permission, showing:",E.label),!0;const X=z(E.permission);return console.log("[DEBUG] Action permission check:",{label:E.label,permission:E.permission,hasPerm:X}),X});return console.log("[DEBUG] Filtered header actions:",_.length),_}),pe=t.computed(()=>L.value.length===0?L.value:L.value.filter(_=>o.ignorePermissions||!_.permission?!0:z(_.permission))),qe=_=>pe.value.filter(E=>W(E,_)),ot=(_,E)=>{var $,Y;if(_.requiredCondition&&(($=_.propCustomCondition)==null?void 0:$.length)>0){const fe=O(E,"status"),xe=_.propCustomCondition.find(Be=>Be.value===fe);if(xe)return xe.bgColor||_.bgColor||"primary"}if(!_.dynamicColor||!_.colorCondition)return _.bgColor||"primary";const X=O(E,_.colorCondition.field),q=(Y=_.colorCondition.conditions)==null?void 0:Y.find(fe=>fe.value===X);return(q==null?void 0:q.bgColor)||_.bgColor||"primary"},Mt=_=>{const E=(_||"left").toLowerCase();return E==="center"?"justify-center":E==="right"?"justify-end":"justify-start"},oa={ToggleLeft:n1,SquarePen:Xe,Trash2:_i,Eye:ds,CheckCircle:da,Plus:Qs,Download:$s,RefreshCw:ps,Search:yr,SlidersHorizontal:a1},Aa=_=>_?Gt[_]?Gt[_]:oa[_]||null:null,xt=t.computed(()=>le.value?p.value.map((_,E)=>({..._,no:(d.value-1)*h.value+E+1})):_e.value),$t=t.computed(()=>le.value?f.value:ae.value.length),D1=t.computed(()=>$t.value===0?0:(d.value-1)*h.value+1),E1=t.computed(()=>{const _=d.value*h.value;return _>$t.value?$t.value:_}),O=(_,E)=>{if(!(!_||!E))return E in _?_[E]:E.split(".").reduce((X,q)=>X&&X[q],_)},ae=t.computed(()=>{if(le.value)return[];if(!c.value)return o.data;const _=c.value.toLowerCase();return o.data.filter(E=>de.value.some(X=>{const q=O(E,X.key);return q==null?!1:String(q).toLowerCase().includes(_)}))}),he=t.computed(()=>le.value?[]:u.value.key?[...ae.value].sort((E,X)=>{const q=O(E,u.value.key),$=O(X,u.value.key);if(q===$)return 0;let Y=0;return typeof q=="number"&&typeof $=="number"?Y=q-$:Y=String(q).localeCompare(String($)),u.value.direction==="asc"?Y:-Y}):ae.value),_e=t.computed(()=>{if(le.value)return[];const _=(d.value-1)*h.value,E=_+h.value;return he.value.slice(_,E).map((X,q)=>({...X,no:_+q+1}))}),Pe=t.computed(()=>le.value?Object.values(k.value).some(_=>!!_):!!c.value),K=[10,25,50,100],te=()=>{le.value&&(k.value={...k.value,keyword:c.value},d.value=1,We())};let ne;const ye=()=>{o.enableQuickSearch&&(clearTimeout(ne),ne=setTimeout(()=>{te()},500))};let Ve;const ra=()=>{clearTimeout(Ve),Ve=setTimeout(()=>{le.value&&We()},1e3)};t.watch(c,()=>{o.enableQuickSearch&&le.value&&ye()});const We=async()=>{if(le.value&&!(!N.value&&!F.value))try{y.value=!0;const _={page:d.value,perPage:h.value,...k.value,...o.apiParams};c.value&&(_.keyword=c.value),Object.keys(_).forEach(X=>{(_[X]===""||_[X]===null||_[X]===void 0)&&delete _[X]});let E;N.value?E=await i(N.value,Q.value,_):F.value&&(E=await i(F.value,j.value,_)),aq(E)}catch(_){console.error("DataTable fetch error",_),y.value=!1}},aq=_=>{console.log("DataTable handleResponseData:",_),_&&(o.dynamicColumns&&_.columns&&Array.isArray(_.columns)&&(m.value=_.columns.map(E=>({key:E.key||E.field||E.name,label:E.label||E.header||E.name,width:E.width,align:E.align||"LEFT",sortable:E.sortable!==!1,type:E.type,condition:E.condition,format:E.format}))),_.data&&Array.isArray(_.data)?(p.value=_.data,_.totalData?f.value=_.totalData:_.maxPage?f.value=_.maxPage*h.value:f.value=_.data.length*(_.maxPage||1)):Array.isArray(_)?(p.value=_,f.value=_.length):_.users?(p.value=_.users,f.value=_.users.length):_.items&&Array.isArray(_.items)?(p.value=_.items,f.value=_.total||_.totalItems||_.items.length):_.list&&Array.isArray(_.list)?(p.value=_.list,f.value=_.total||_.list.length):_.rows&&Array.isArray(_.rows)?(p.value=_.rows,f.value=_.count||_.total||_.rows.length):_.result&&Array.isArray(_.result)?(p.value=_.result,f.value=_.total||_.count||_.result.length):(console.warn("DataTable: Unknown response format",_),p.value=[],f.value=0)),y.value=!1};t.onUnmounted(()=>{clearTimeout(ne),clearTimeout(Ve)});const yS=()=>{Object.keys(k.value).forEach(_=>{k.value[_]=""}),c.value="",d.value=1,We()},nq=()=>{d.value=1,We()},fS=(_,E)=>{const X=O(_,E.key);let q={variant:"secondary",class:"",label:X};if(E.condition){const $=E.condition.find(Y=>{const fe=(xe,Be)=>typeof xe=="string"&&typeof Be=="string"?xe.toLowerCase().trim()===Be.toLowerCase().trim():xe==Be;return typeof X=="object"&&X!==null?fe(Y.value,X.code)||fe(Y.value,X.id):fe(Y.value,X)});if($){if($.variant&&(q.variant=$.variant),q.label=$.label||(typeof X=="object"?X.name||X.code:X),$.color){const Y=$.color.toLowerCase(),fe=q.variant==="outline",xe={success:"bg-green-500 hover:bg-green-600 border-transparent text-white shadow",warning:"bg-yellow-500 hover:bg-yellow-600 border-transparent text-white shadow",info:"bg-blue-500 hover:bg-blue-600 border-transparent text-white shadow"},Be={success:"text-green-600 border-green-600 hover:bg-green-50",warning:"text-yellow-600 border-yellow-600 hover:bg-yellow-50",info:"text-blue-600 border-blue-600 hover:bg-blue-50",danger:"text-red-600 border-red-600 hover:bg-red-50",destructive:"text-red-600 border-red-600 hover:bg-red-50",primary:"text-primary-600 border-primary-600 hover:bg-primary-50",secondary:"text-neutral-600 border-neutral-600 hover:bg-zinc-50"},Ge={danger:"destructive",secondary:"secondary",primary:"default"};fe?Be[Y]&&(q.class=Be[Y]):Ge[Y]?q.variant=Ge[Y]:xe[Y]&&(q.class=xe[Y])}}else q.label=typeof X=="object"?(X==null?void 0:X.name)||(X==null?void 0:X.code)||"-":X}else q.label=typeof X=="object"?(X==null?void 0:X.name)||(X==null?void 0:X.code)||"-":X;return q},oq=_=>{u.value.key===_?u.value.direction=u.value.direction==="asc"?"desc":"asc":(u.value.key=_,u.value.direction="asc"),r("update:sort",u.value)},c_=_=>{_!==d.value&&(d.value=_,le.value&&We(),r("update:page",_))},rq=_=>{h.value=_,d.value=1,le.value&&We()},iq=_=>{const E=Math.random()*15+75;if(_.width){const X=parseInt(String(_.width));return X<100?`${Math.floor(X*(Math.random()*.2+.7))}px`:`${E}%`}return`${E}%`},d_=()=>{c.value="",k.value={},d.value=1,We()},sq=_=>{var E;if(console.log("[DEBUG] handleHeaderAction called:",_),_.route||_.path)console.log("[DEBUG] Emitting navigate:",{route:_.route,path:_.path}),r("navigate",{route:_.route,path:_.path,key:_.key});else if(_.openDialog){I.value=_,V.value=null,b.value={};const X=_.fieldActionGlobal||_.field||[];X.length&&X.forEach(q=>{var fe;const $=_.endpoint||((fe=_.propsActionGlobal)==null?void 0:fe.endpointPropAction)||_.propsActionGlobal,Y=$!=null&&$.keyParam&&$.keyParam.length>0?$.keyParam[0]:null;Y&&q.model===Y||!Y&&/^(id|ids|idAuditTrail)/i.test(q.model)?b.value[q.model]=B.value:b.value[q.model]||(b.value[q.model]="")}),S.value=!0}else r("action",{action:((E=_.propsActionCustom)==null?void 0:E.key)||_.key||"create",row:null,selection:B.value})},lq=(_,E)=>{if(_.requireConfirm){x.value={button:_,row:E},C.value=!0;return}if(_.openDialog){I.value=_,V.value=E,b.value={};const X=de.value.find($=>$.type==="CHECKBOX"),q=(X==null?void 0:X.keyCheckbox)||"id";_.fieldActionCustom&&_.fieldActionCustom.forEach($=>{/^(id|ids|idAuditTrail)/i.test($.model)?b.value[$.model]=[E[q]]:b.value[$.model]=""}),S.value=!0;return}h_(_,E)},h_=(_,E)=>{if(_.route){if(_.path){const q=_.route.startsWith("/")?_.route:"/"+_.route;sessionStorage.setItem(`layout_${q}`,_.path)}let X=_.route;X.includes(":")?X=X.replaceAll(/:([a-zA-Z0-9_]+)/g,(q,$)=>E[$]||E.id||$):E.id&&(X=`${X.replace(/\/$/,"")}/${E.id}`),_.path&&_.path,r("navigate",{route:X,path:_.path})}else if(_.endpoint&&_.endpoint.apiUrl){y.value=!0;const{apiUrl:X}=Ke(),q=_.endpoint.apiUrl,$=_.endpoint.apiMethod||"POST",Y={};_.endpoint.keyParam&&Array.isArray(_.endpoint.keyParam)&&_.endpoint.keyParam.forEach((fe,xe)=>{const Be=_.endpoint.model&&xe===0?_.endpoint.model:fe;E[fe]!==void 0&&(Y[Be]=E[fe])}),Object.keys(Y).length===0&&E.id&&(Y.id=E.id),X(q,$,Y).then(()=>{We(),r("action",{action:_.action||"success",row:E})}).catch(fe=>{console.error("Action Failed",fe)}).finally(()=>{y.value=!1})}else r("action",{action:_.action,row:E})},u_=()=>{x.value&&(h_(x.value.button,x.value.row),cq())},DQ=()=>{var _,E;if(I.value){const X=I.value,q=X.endpoint||((_=X.propsActionGlobal)==null?void 0:_.endpointPropAction)||X.propsActionGlobal;let $=(q==null?void 0:q.model)||(q!=null&&q.keyParam&&q.keyParam.length>0?q.keyParam[0]:null);if(!$){const Be=(X.fieldActionGlobal||X.fieldActionCustom||X.field||[]).find(Ge=>/^(id|ids|idAuditTrail)/i.test(Ge.model));$=Be?Be.model:"ids"}let Y=null,fe=!1;if(V.value){const xe=de.value.find(rt=>rt.type==="CHECKBOX"),Be=(xe==null?void 0:xe.keyCheckbox)||"id",Ge=V.value[Be];q!=null&&q.apiUrl&&(Y={...b.value},Y[$]||(Y[$]=[Ge]),fe=!0)}else q!=null&&q.apiUrl&&(Y={...b.value},Y[$]||(Y[$]=B.value||[]),fe=!0);if(fe&&Y&&(q!=null&&q.apiUrl)){const{apiUrl:xe}=Ke(),Be=q.apiUrl,Ge=q.apiMethod||"POST";xe(Be,Ge,Y).then(()=>{S.value=!1,V.value||(B.value=[]),We(),r("action",{action:"success",row:null})}).catch(rt=>{console.error("Action Failed",rt)})}else if(V.value){const xe=de.value.find(mS=>mS.type==="CHECKBOX"),Be=(xe==null?void 0:xe.keyCheckbox)||"id",Ge=V.value[Be],rt={...b.value};rt[$]||(rt[$]=[Ge]),r("action",{action:I.value.action,row:rt}),S.value=!1}else{const xe={...b.value};xe[$]||(xe[$]=B.value);const Be={action:((E=I.value.propsActionGlobal)==null?void 0:E.key)||I.value.key,row:xe,selection:B.value};r("action",Be),S.value=!1}}},cq=()=>{C.value=!1,x.value=null},EQ=t.computed(()=>x.value?x.value.button.confirmTitle||"Confirm":""),TQ=t.computed(()=>x.value?x.value.button.confirmMessage||"Confirm":"");e({fetchData:We,filters:k,resetFilters:yS,handleRefresh:d_});const kS=t.ref(""),HQ=_=>{if(!_)return"";const E=_.endpoint||_.endpointGlobal||{};return JSON.stringify({url:E.apiUrl||_.apiUrl,module:E.apiModule||_.apiModule,action:E.apiAction||_.apiAction,method:E.apiMethod||_.apiMethod,params:_.apiParams,socket:E.socket||_.socketEndpoint,socketParams:_.socketParams})};return t.watch(()=>o.tableConfig,()=>{if(o.tableConfig){re();const _=HQ(o.tableConfig);_!==kS.value&&(!kS.value&&le.value?(kS.value=_,We()):(kS.value=_,le.value&&ra()))}},{deep:!0,immediate:!0}),t.watch(()=>o.apiModule,()=>{le.value&&We()}),t.watch(()=>o.apiParams,()=>{le.value&&We()},{deep:!0}),t.watch(()=>w.value,_=>{console.log("[DEBUG] headerActions changed:",_.length,"items");const E=ee.value;console.log("[DEBUG] visibleHeaderActions evaluated:",E.length,"items")},{deep:!0}),t.onMounted(()=>{re(),le.value&&(o.tableConfig||(y.value=!0,We()))}),(_,E)=>{var X;return t.openBlock(),t.createElementBlock("div",NY,[t.createElementVNode("div",$Y,[t.createElementVNode("div",UY,[a.nested?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",WY,[t.createElementVNode("div",GY,[t.createVNode(t.unref(yr),{class:"absolute left-2.5 top-2.5 h-4 w-4 text-neutral-500 dark:text-neutral-400"}),t.createVNode(t.unref(o_),{modelValue:c.value,"onUpdate:modelValue":E[0]||(E[0]=q=>c.value=q),placeholder:"Search...",style:{"padding-left":"2.25rem !important"},class:"h-9 bg-white/95 dark:bg-zinc-800/95 border-white/30 dark:border-neutral-700/50 text-neutral-900 dark:text-neutral-100 placeholder:text-neutral-500 dark:placeholder:text-neutral-400",onKeyup:t.withKeys(te,["enter"])},null,8,["modelValue"])]),M.value.length>0?(t.openBlock(),t.createElementBlock("div",KY,[t.createVNode(CY,null,{trigger:t.withCtx(()=>[t.createVNode(ws,{variant:"secondary",icon:"SlidersHorizontal",tooltip:"Advance Search",class:"gap-2 h-9 w-full sm:w-auto justify-center bg-white/95 dark:bg-zinc-800/95 text-neutral-700 dark:text-neutral-300 hover:bg-zinc-50 dark:hover:bg-zinc-800 border border-white/30 dark:border-neutral-700/50 shadow-sm backdrop-blur-sm text-xs font-medium"})]),footer:t.withCtx(()=>[t.createElementVNode("div",JY,[t.renderSlot(_.$slots,"filter-footer",{fetch:We,reset:yS})])]),default:t.withCtx(()=>[t.createElementVNode("div",XY,[t.renderSlot(_.$slots,"filter-form",{filters:k.value},()=>[M.value.length>0?(t.openBlock(),t.createElementBlock("div",ZY,[t.createElementVNode("div",YY,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Z.value,(q,$)=>(t.openBlock(),t.createElementBlock("div",{key:$,class:t.normalizeClass(J(q.column))},[t.createVNode(Qz,{field:q,modelValue:k.value[q.model],"onUpdate:modelValue":Y=>k.value[q.model]=Y},null,8,["field","modelValue","onUpdate:modelValue"])],2))),128))])])):t.createCommentVNode("",!0)]),M.value.length>0?(t.openBlock(),t.createElementBlock("div",QY,[t.createVNode(t.unref(Ee),{variant:"outline",onClick:yS,disabled:ve.value,class:"flex-1 w-full"},{default:t.withCtx(()=>[...E[8]||(E[8]=[t.createTextVNode(" Reset ",-1)])]),_:1},8,["disabled"]),t.createVNode(t.unref(Ee),{onClick:nq,disabled:ve.value,class:"flex-1 w-full"},{default:t.withCtx(()=>[...E[9]||(E[9]=[t.createTextVNode(" Search ",-1)])]),_:1},8,["disabled"])])):t.createCommentVNode("",!0)])]),_:3})])):t.createCommentVNode("",!0)])),t.createElementVNode("div",{class:t.normalizeClass(["flex items-center gap-2 flex-wrap",{"w-full justify-between":a.nested}])},[a.nested?(t.openBlock(),t.createElementBlock("span",eQ)):t.createCommentVNode("",!0),a.nested?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(ws,{key:1,variant:"secondary",icon:"RefreshCw",text:"Refresh",tooltip:"Refresh",class:"gap-2 h-9 bg-white/95 dark:bg-zinc-800/95 text-neutral-700 dark:text-neutral-300 hover:bg-white dark:hover:bg-zinc-800 border border-white/30 dark:border-neutral-700/50 shadow-sm backdrop-blur-sm text-xs font-medium",onClick:d_,disabled:ve.value},{icon:t.withCtx(()=>[t.createVNode(t.unref(ps),{class:t.normalizeClass(["w-3.5 h-3.5",{"animate-spin":ve.value}])},null,8,["class"])]),_:1},8,["disabled"])),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(ee.value,(q,$)=>(t.openBlock(),t.createBlock(ws,{key:$,icon:q.icon,text:q.label,tooltip:q.tooltip,variant:q.variant,"bg-color":q.bgColor,"text-color":q.textColor,class:"gap-2 h-9 shadow-lg shadow-primary-500/20 border-none text-xs font-medium",onClick:Y=>sq(q)},null,8,["icon","text","tooltip","variant","bg-color","text-color","onClick"]))),128)),t.renderSlot(_.$slots,"header-actions")],2)])]),t.createElementVNode("div",tQ,[t.createElementVNode("table",aQ,[t.createElementVNode("thead",nQ,[t.createElementVNode("tr",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(de.value,q=>(t.openBlock(),t.createElementBlock("th",{key:q.key,class:t.normalizeClass([q.align?`text-${q.align.toLowerCase()}`:"",q.sortable?"cursor-pointer select-none":"","px-3 py-2 text-xs font-black text-white dark:text-neutral-100 uppercase tracking-wider transition-colors duration-150"]),style:t.normalizeStyle(q.width?{width:q.width}:{}),onClick:$=>q.sortable&&oq(q.key)},[q.type==="CHECKBOX"?(t.openBlock(),t.createElementBlock("div",rQ,[t.createVNode(q1,{"model-value":A.value,indeterminate:P.value,"onUpdate:modelValue":E[1]||(E[1]=$=>U(!!$)),onClick:E[2]||(E[2]=t.withModifiers(()=>{},["stop"]))},null,8,["model-value","indeterminate"])])):(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["flex items-center gap-2 w-full",Mt(q.align)])},[t.createElementVNode("span",null,t.toDisplayString(q.label),1)],2))],14,oQ))),128)),ue.value?(t.openBlock(),t.createElementBlock("th",iQ,[...E[10]||(E[10]=[t.createElementVNode("div",{class:"flex items-center justify-center w-full"}," Actions ",-1)])])):t.createCommentVNode("",!0)])]),t.createElementVNode("tbody",sQ,[ve.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(h.value,q=>(t.openBlock(),t.createElementBlock("tr",{key:`skeleton-${q}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(de.value,$=>{var Y,fe;return t.openBlock(),t.createElementBlock("td",{key:$.key,class:t.normalizeClass([$.align?`text-${$.align.toLowerCase()}`:"text-left","px-3 py-0.5"])},[t.createElementVNode("div",{class:t.normalizeClass(["bg-gradient-to-r from-neutral-200 via-neutral-300 to-neutral-200 dark:from-neutral-700 dark:via-neutral-600 dark:to-neutral-700 animate-shimmer",[["badge","BADGE"].includes($.type??"")||$.condition?"h-5 rounded-full w-20":"h-4 rounded-md",((Y=$.align)==null?void 0:Y.toLowerCase())==="center"?"mx-auto":"",((fe=$.align)==null?void 0:fe.toLowerCase())==="right"?"ml-auto":""]]),style:t.normalizeStyle({width:["badge","BADGE"].includes($.type??"")||$.condition?void 0:iq($),backgroundSize:"200% 100%"})},null,6)],2)}),128)),a.hasActions?(t.openBlock(),t.createElementBlock("td",lQ,[...E[11]||(E[11]=[t.createElementVNode("div",{class:"flex items-center justify-center gap-1.5"},[t.createElementVNode("div",{class:"w-9 h-9 bg-zinc-200 dark:bg-zinc-700 rounded-xl animate-pulse"}),t.createElementVNode("div",{class:"w-9 h-9 bg-zinc-200 dark:bg-zinc-700 rounded-xl animate-pulse delay-75"}),t.createElementVNode("div",{class:"w-9 h-9 bg-zinc-200 dark:bg-zinc-700 rounded-xl animate-pulse delay-150"})],-1)])])):t.createCommentVNode("",!0)]))),128)):xt.value.length===0?(t.openBlock(),t.createElementBlock("tr",cQ,[t.createElementVNode("td",{colspan:de.value.length+(ue.value?1:0),class:"text-center py-16"},[t.createElementVNode("div",hQ,[t.createElementVNode("div",null,[t.createElementVNode("p",uQ,t.toDisplayString(Pe.value?"No search results":"No data"),1),t.createElementVNode("p",pQ,t.toDisplayString(Pe.value?"Try changing keywords":"No data added"),1)])])],8,dQ)])):(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:2},t.renderList(xt.value,(q,$)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:$},[t.createElementVNode("tr",yQ,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(de.value,Y=>(t.openBlock(),t.createElementBlock("td",{key:Y.key,class:t.normalizeClass([Y.align?`text-${Y.align}`:"text-left","px-3 py-0.5 text-sm text-neutral-900 dark:text-neutral-100"])},[t.renderSlot(_.$slots,`cell-${Y.key}`,{row:q,value:O(q,Y.key)},()=>[Y.type==="CHECKBOX"?(t.openBlock(),t.createElementBlock("div",fQ,[t.createVNode(q1,{"model-value":D(q),"onUpdate:modelValue":fe=>T(q,!!fe),onClick:E[3]||(E[3]=t.withModifiers(()=>{},["stop"]))},null,8,["model-value","onUpdate:modelValue"])])):Y.type==="badge"||Y.type==="BADGE"||Y.condition?(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["flex items-center gap-1.5 flex-wrap md:flex-nowrap",[Y.align?`justify-${Y.align}`:"justify-start"]])},[t.createVNode(t.unref(_a),{variant:fS(q,Y).variant,class:t.normalizeClass([fS(q,Y).class,"whitespace-nowrap truncate max-w-[150px] inline-block"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(fS(q,Y).label),1)]),_:2},1032,["variant","class"])],2)):Y.key==="no"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[t.createTextVNode(t.toDisplayString((d.value-1)*h.value+$+1),1)],64)):Y.type==="date"||Y.type==="DATE"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:3},[t.createTextVNode(t.toDisplayString(O(q,Y.key)?t.unref(yY)(O(q,Y.key),"long"):"-"),1)],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:4},[t.createTextVNode(t.toDisplayString(Y.format?Y.format(O(q,Y.key)):O(q,Y.key)),1)],64))])],2))),128)),ue.value?(t.openBlock(),t.createElementBlock("td",kQ,[t.renderSlot(_.$slots,"actions",{row:q,buttons:qe(q),getButtonColor:ot,getIconComponent:Aa},()=>[qe(q).length>0?(t.openBlock(),t.createElementBlock("div",mQ,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(qe(q),(Y,fe)=>(t.openBlock(),t.createElementBlock("div",{key:fe,class:"group relative"},[t.createVNode(ws,{tooltip:Y.tooltip||Y.label,icon:Aa(Y.icon),size:"icon",variant:Y.variant||"ghost","bg-color":ot(Y,q),onClick:xe=>lq(Y,q)},null,8,["tooltip","icon","variant","bg-color","onClick"])]))),128))])):t.createCommentVNode("",!0)])])):t.createCommentVNode("",!0)]),_.$slots["expanded-row"]?(t.openBlock(),t.createElementBlock("tr",gQ,[t.createElementVNode("td",{colspan:de.value.length+(ue.value?1:0),class:"px-0 py-0"},[t.renderSlot(_.$slots,"expanded-row",{row:q,index:$})],8,bQ)])):t.createCommentVNode("",!0)],64))),128))])])]),!ve.value&&xt.value.length>0&&a.showPagination&&v.value?(t.openBlock(),t.createElementBlock("div",MQ,[t.createElementVNode("div",xQ,[t.createVNode(t.unref(DY),{"model-value":String(h.value),"onUpdate:modelValue":E[4]||(E[4]=q=>rq(Number(q)))},{default:t.withCtx(()=>[t.createVNode(t.unref(FY),{class:"h-8 w-[70px] bg-white dark:bg-zinc-800 border-neutral-200 dark:border-neutral-700"},{default:t.withCtx(()=>[t.createVNode(t.unref(RY),{placeholder:String(h.value)},null,8,["placeholder"])]),_:1}),t.createVNode(t.unref(EY),null,{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(K,q=>t.createVNode(t.unref(HY),{key:q,value:String(q)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(q),1)]),_:2},1032,["value"])),64))]),_:1})]),_:1},8,["model-value"]),E[16]||(E[16]=t.createElementVNode("div",{class:"h-5 w-px bg-zinc-300 dark:bg-zinc-600"},null,-1)),t.createElementVNode("span",wQ,[E[12]||(E[12]=t.createTextVNode(" Showing ",-1)),t.createElementVNode("span",vQ,t.toDisplayString(D1.value),1),E[13]||(E[13]=t.createTextVNode(" to ",-1)),t.createElementVNode("span",CQ,t.toDisplayString(E1.value),1),E[14]||(E[14]=t.createTextVNode(" of ",-1)),t.createElementVNode("span",LQ,t.toDisplayString($t.value),1),E[15]||(E[15]=t.createTextVNode(" items ",-1))])]),t.createElementVNode("div",SQ,[t.createVNode(t.unref(IY),{total:$t.value,"items-per-page":h.value,"sibling-count":1,"show-edges":"",page:d.value,"onUpdate:page":c_,class:"scale-90 origin-right"},{default:t.withCtx(()=>[t.createVNode(t.unref(_Y),{class:"flex items-center gap-1"},{default:t.withCtx(({items:q})=>[t.createVNode(t.unref(BY),{class:"w-8 h-8 p-0 flex items-center justify-center border border-neutral-200 dark:border-neutral-700 rounded-md bg-white dark:bg-zinc-800 text-neutral-900 dark:text-neutral-100 hover:bg-zinc-100 dark:hover:bg-zinc-700 disabled:opacity-50 disabled:cursor-not-allowed"},{default:t.withCtx(()=>[t.createVNode(t.unref(Os),{class:"h-4 w-4"})]),_:1}),t.createVNode(t.unref(PY),{class:"w-8 h-8 p-0 flex items-center justify-center border border-neutral-200 dark:border-neutral-700 rounded-md bg-white dark:bg-zinc-800 text-neutral-900 dark:text-neutral-100 hover:bg-zinc-100 dark:hover:bg-zinc-700 disabled:cursor-not-allowed"},{default:t.withCtx(()=>[t.createVNode(t.unref(dn),{class:"h-4 w-4"})]),_:1}),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(q,($,Y)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[$.type==="page"?(t.openBlock(),t.createBlock(t.unref(VY),{key:Y,value:$.value,"as-child":""},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee),{class:"w-8 h-8 p-0 text-sm",variant:$.value===d.value?"default":"outline",disabled:$.value===d.value,onClick:fe=>c_($.value)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString($.value),1)]),_:2},1032,["variant","disabled","onClick"])]),_:2},1032,["value"])):(t.openBlock(),t.createBlock(t.unref(AY),{key:$.type,index:Y},null,8,["index"]))],64))),256)),t.createVNode(t.unref(qY),{class:"w-8 h-8 p-0 flex items-center justify-center border border-neutral-200 dark:border-neutral-700 rounded-md bg-white dark:bg-zinc-800 text-neutral-900 dark:text-neutral-100 hover:bg-zinc-100 dark:hover:bg-zinc-700 disabled:cursor-not-allowed"},{default:t.withCtx(()=>[t.createVNode(t.unref(hn),{class:"h-4 w-4"})]),_:1}),t.createVNode(t.unref(zY),{class:"w-8 h-8 p-0 flex items-center justify-center border border-neutral-200 dark:border-neutral-700 rounded-md bg-white dark:bg-zinc-800 text-neutral-900 dark:text-neutral-100 hover:bg-zinc-100 dark:hover:bg-zinc-700 disabled:cursor-not-allowed"},{default:t.withCtx(()=>[t.createVNode(t.unref(Fs),{class:"h-4 w-4"})]),_:1})]),_:1})]),_:1},8,["total","items-per-page","page"])])])):t.createCommentVNode("",!0),t.createVNode(lS,{modelValue:C.value,"onUpdate:modelValue":E[5]||(E[5]=q=>C.value=q),title:EQ.value,icon:"AlertCircle","max-width":450,persistent:!1},{actions:t.withCtx(()=>[t.createVNode(t.unref(Ee),{variant:"outline",onClick:cq},{default:t.withCtx(()=>[...E[17]||(E[17]=[t.createTextVNode(" Cancel ",-1)])]),_:1}),t.createVNode(t.unref(Ee),{onClick:u_},{default:t.withCtx(()=>[...E[18]||(E[18]=[t.createTextVNode(" Yes ",-1)])]),_:1})]),default:t.withCtx(()=>[t.createElementVNode("div",IQ,[t.createElementVNode("p",_Q,t.toDisplayString(TQ.value),1)])]),_:1},8,["modelValue","title"]),t.createVNode(lS,{modelValue:S.value,"onUpdate:modelValue":E[7]||(E[7]=q=>S.value=q),title:((X=I.value)==null?void 0:X.label)||"Action",icon:"AlertCircle","max-width":450},{actions:t.withCtx(()=>[t.createVNode(t.unref(Ee),{variant:"outline",onClick:E[6]||(E[6]=q=>S.value=!1)},{default:t.withCtx(()=>[...E[19]||(E[19]=[t.createTextVNode(" Cancel ",-1)])]),_:1}),t.createVNode(t.unref(Ee),{onClick:DQ},{default:t.withCtx(()=>[...E[20]||(E[20]=[t.createTextVNode(" Save ",-1)])]),_:1})]),default:t.withCtx(()=>{var q,$;return[t.createElementVNode("div",AQ,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(((q=I.value)==null?void 0:q.fieldActionCustom)||(($=I.value)==null?void 0:$.fieldActionGlobal)||[],(Y,fe)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:fe},[Y.isHidden?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(J(Y.column))},[t.createVNode(Qz,{field:Y,modelValue:b.value[Y.model],"onUpdate:modelValue":xe=>b.value[Y.model]=xe},null,8,["field","modelValue","onUpdate:modelValue"])],2))],64))),128))])]}),_:1},8,["modelValue","title"])])}}}),BQ={class:"h-full flex flex-col"},VQ={key:1,class:"flex-1 flex items-center justify-center"},zQ={key:2,class:"flex-1 flex items-center justify-center text-red-500"},Jz=t.defineComponent({__name:"AutoLayoutDatatable",props:{layoutCode:{},userPermissions:{},permissionBase:{}},emits:["action","navigate"],setup(a,{emit:e}){const n=a,o=e,r=H1.useRoute();H1.useRouter();const{apiUrl:i}=Ke(),s=t.inject("hasActionAccess",()=>!1),c=t.inject("userPermissions",null),d=t.ref(null),h=t.ref(!0),u=t.ref(null),p=async()=>{var k;h.value=!0;try{const m=await i(`/api/auto-layout/datatable/form-dynamic?code=${n.layoutCode}`,"GET");m.status&&(d.value=Array.isArray(m.data)?m.data[0]:m.data,console.log("[DEBUG] AutoLayoutDatatable config loaded:",d.value),console.log("[DEBUG] actionGlobal in config:",(k=d.value)==null?void 0:k.actionGlobal))}catch(m){console.error("Gagal Menampilkan Datatable:",m)}finally{h.value=!1}},y=k=>{k.action==="add"&&console.log("[AutoLayoutDatatable] Add action triggered"),console.log("Aksi:",k.action,k)},f=k=>{console.log("[DEBUG] AutoLayoutDatatable handleNavigate:",k);let m=k.route;if(m||(m=`/${((r==null?void 0:r.path)||"").split("/")[1]||"product"}/create`),m){const g=k.path?{code:k.path}:{};console.log("[DEBUG] Emitting navigate to parent:",{path:m,query:g}),o("navigate",{route:m,query:g})}else console.warn("[DEBUG] No route or path provided for navigation")};return t.onMounted(()=>{p()}),(k,m)=>(t.openBlock(),t.createElementBlock("div",BQ,[!h.value&&d.value?(t.openBlock(),t.createBlock(uS,{key:0,ref_key:"dtRef",ref:u,"api-url":`/api/auto-layout/datatable/form-dynamic?code=${n.layoutCode}`,"api-method":"GET","table-config":d.value,"permission-base":n.permissionBase||"","user-permissions":n.userPermissions||t.unref(c),"permission-checker":t.unref(s),onAction:y,onNavigate:f},{"header-actions":t.withCtx(()=>[...m[0]||(m[0]=[])]),_:1},8,["api-url","table-config","permission-base","user-permissions","permission-checker"])):h.value?(t.openBlock(),t.createElementBlock("div",VQ,[...m[1]||(m[1]=[t.createElementVNode("i",{class:"mdi mdi-loading mdi-spin text-4xl text-primary-600"},null,-1)])])):(t.openBlock(),t.createElementBlock("div",zQ," Failed to load configuration for "+t.toDisplayString(n.layoutCode),1))]))}}),eq=t.defineCustomElement(Yz),tq=t.defineCustomElement(Jz);typeof customElements<"u"&&(customElements.get("micro-dynamic-form")||customElements.define("micro-dynamic-form",eq),customElements.get("micro-dynamic-datatable")||customElements.define("micro-dynamic-datatable",tq));const qQ=[qS,O_,ws,rI,bz,q1,Mz,GI,lS,Tz,cS,Hz,QI,jz,e_,a_,t_,n_,Oz,r_,Fz,Rz,Nz,$z,i_,s_,l_,dS,Kz,Xz,Zz,uS],PQ={install(a,e={}){e&&Object.keys(e).length>0&&f_(e),qQ.forEach(n=>{n.name&&a.component(n.name,n)})}};oe.AutoLayoutDatatable=Jz,oe.AutoLayoutForm=Yz,oe.DCodeAutoComplete=qS,oe.DCodeButton=ws,oe.DCodeCard=rI,oe.DCodeChart=bz,oe.DCodeCheckbox=q1,oe.DCodeCurrencyField=Mz,oe.DCodeDatePicker=GI,oe.DCodeDialog=lS,oe.DCodeDialogCloseBtn=Tz,oe.DCodeDropzone=cS,oe.DCodeFileField=Hz,oe.DCodeFileResult=QI,oe.DCodeIconDropdown=jz,oe.DCodeImageCropperDialog=e_,oe.DCodeImageField=a_,oe.DCodeImageResult=t_,oe.DCodeInfiniteAutoComplete=O_,oe.DCodeLabel=n_,oe.DCodeMultiSelect=Oz,oe.DCodeOtpInput=r_,oe.DCodeProgress=Fz,oe.DCodeProgressBar=Rz,oe.DCodeRadio=Nz,oe.DCodeRadioCustom=$z,oe.DCodeSlider=i_,oe.DCodeSwitch=s_,oe.DCodeTextField=l_,oe.DCodeTextarea=dS,oe.DCodeTimelineWithIcons=Kz,oe.DCodeUploadFile=Xz,oe.DCodeWizard=Zz,oe.DataTable=uS,oe.DataTableComponent=uS,oe.MicroDynamicDatatable=tq,oe.MicroDynamicForm=eq,oe.cn=be,oe.default=PQ,oe.setApiConfig=f_,Object.defineProperties(oe,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
|