@gemafajarramadhan/dynamic-ui 1.2.12 → 1.2.14

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.
@@ -58800,7 +58800,7 @@ const mK = { class: "space-y-3" }, gK = {
58800
58800
  key: 1,
58801
58801
  type: "submit",
58802
58802
  disabled: t.loading,
58803
- 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"
58803
+ 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"
58804
58804
  }, [
58805
58805
  t.loading ? (v(), Z(g($t), {
58806
58806
  key: 0,
@@ -58813,7 +58813,7 @@ const mK = { class: "space-y-3" }, gK = {
58813
58813
  ], 2);
58814
58814
  };
58815
58815
  }
58816
- }), wQ = /* @__PURE__ */ Ta(xQ, [["__scopeId", "data-v-d7d48c7d"]]);
58816
+ }), wQ = /* @__PURE__ */ Ta(xQ, [["__scopeId", "data-v-d10736f3"]]);
58817
58817
  function LQ() {
58818
58818
  return { setPageTitle: (a) => {
58819
58819
  typeof document < "u" && (document.title = a || document.title), typeof window < "u" && window.dispatchEvent(
@@ -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(Bs),{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",VK,"*")):t.createCommentVNode("",!0)]),_:1},8,["for"])):t.createCommentVNode("",!0),t.createElementVNode("div",qK,[a.showValue?(t.openBlock(),t.createElementBlock("div",PK,[t.createElementVNode("span",DK,t.toDisplayString(r.valuePrefix)+t.toDisplayString(a.min)+t.toDisplayString(r.valueSuffix),1),t.createElementVNode("span",EK,t.toDisplayString(f.value),1),t.createElementVNode("span",TK,t.toDisplayString(r.valuePrefix)+t.toDisplayString(a.max)+t.toDisplayString(r.valueSuffix),1)])):t.createCommentVNode("",!0),t.createElementVNode("div",HK,[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:w,onMouseup:L,onTouchstart:w,onTouchend:L},null,42,jK)]),a.marks.length>0?(t.openBlock(),t.createElementBlock("div",OK,[(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:`${v(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",FK,t.toDisplayString(b.label),1)],4))),128))])):t.createCommentVNode("",!0)]),c.value?(t.openBlock(),t.createElementBlock("div",RK,[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]])}}),$K={class:"inline-flex items-center gap-3"},UK=["for"],WK={key:0,class:"text-red-500 ml-1"},GK=["id","name","aria-checked","aria-label","disabled"],KK={key:0,class:"absolute inset-0 flex items-center justify-center"},XK={class:"relative z-10 flex items-center gap-2"},ZK=["id","name","aria-checked","aria-label","disabled"],YK={key:0,class:"absolute inset-0 flex items-center justify-center"},QK=["for"],JK={key:0,class:"text-red-500 ml-1"},eX={name:"DCodeSwitch"},s_=t.defineComponent({...eX,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",$K,[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",WK,"*")):t.createCommentVNode("",!0)],10,UK)):t.createCommentVNode("",!0),t.createVNode(t.unref(sB),null,{default:t.withCtx(()=>[a.showTooltip?(t.openBlock(),t.createBlock(t.unref(rB),{key:0,"delay-duration":200},{default:t.withCtx(()=>[t.createVNode(t.unref(lB),{"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",KK,[...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,GK)]),_:1}),t.createVNode(t.unref(iB),{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",XK,[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",YK,[...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,ZK))]),_: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",JK,"*")):t.createCommentVNode("",!0)],10,QK)):t.createCommentVNode("",!0)]))}}),tX=["aria-busy"],aX={key:0,class:"h-4 w-32 rounded bg-gray-200 dark:bg-gray-700 animate-pulse"},nX={key:1,class:"flex justify-end"},oX={key:0,class:"ml-1 text-destructive"},rX={class:"relative w-full group"},iX={key:0,class:"absolute inset-y-0 left-4 flex items-center text-muted-foreground"},sX={key:1},lX={key:1,class:"absolute inset-y-0 right-4 flex items-center"},cX={key:2,class:"absolute inset-y-0 right-4 flex items-center"},dX={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"},hX={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 q;return((q=c.valueType)==null?void 0:q.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 q=n.required,$=n["aria-required"];return q===""||q===!0||q==="true"||($==="true"||$===!0)}),y=t.computed(()=>{const{label:q,class:$,id:Q,required:pe,"aria-required":qe,...ot}=n;return ot}),f=t.computed(()=>{var $,Q;const q={...y.value};return(($=c.valueType)==null?void 0:$.toLowerCase())==="number"&&(q.type="text",q.inputmode="numeric",q.pattern="[0-9]*"),((Q=c.valueType)==null?void 0:Q.toLowerCase())==="email"&&(q.type="email",q.inputmode="email"),o.value&&(q.type=r.value?"text":"password"),c.disabled&&(q.disabled=!0),q}),k=t.computed(()=>{const q=c.modelValue;return q==null||String(q).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"}}),w=t.ref(String(c.modelValue??""));t.watch(()=>c.modelValue,q=>{const $=String(q??"");$!==w.value&&(w.value=$)});const L=t.ref(!1),v=t.ref(!1),M=q=>q.split(/(\s+)/).map($=>{if($.trim()==="")return $;const Q=$.toLowerCase();return Q.charAt(0).toUpperCase()+Q.slice(1)}).join(""),C=q=>{const $=q.toLowerCase(),Q=$.search(new RegExp("\\p{L}","u"));return Q<0?$:$.slice(0,Q)+$.charAt(Q).toUpperCase()+$.slice(Q+1)},S=q=>{switch(c.textCase){case"uppercase":return q.toUpperCase();case"lowercase":return q.toLowerCase();case"titlecase":return M(q);case"sentencecase":return C(q);case"none":default:return q}},b=q=>{if(!q)return null;const $=Array.isArray(q)?q.join(""):q;return $?new Set($):null},x=t.computed(()=>b(c.allowChars)),I=(q,$)=>(q.lastIndex=0,q.test($)),D=q=>{var Mt;const $=(Mt=c.valueType)==null?void 0:Mt.toLowerCase();if($==="free"||$==="email"||$==="password")return!0;const Q=q===" ",pe=/\d/.test(q),qe=new RegExp("\\p{L}","u").test(q),ot=new RegExp("\\p{N}","u").test(q);return $==="number"?pe:$==="letter"?qe||c.allowSpaces&&Q:$==="letternumber"?qe||ot||c.allowSpaces&&Q:!0},B=q=>{let $="";for(const Q of q){const pe=!!x.value&&x.value.has(Q);c.pattern&&!pe&&!I(c.pattern,Q)||!pe&&!D(Q)||($+=Q)}return $},A=t.computed(()=>{const q=n.maxlength??n.maxLength;let $=Number.NaN;return typeof q=="number"?$=q:typeof q=="string"&&($=Number.parseInt(q,10)),Number.isFinite($)&&$>0?$:-1}),E=t.computed(()=>w.value.length),T=t.computed(()=>c.showCharCount?A.value>0:!1),U=q=>A.value>0?q.slice(0,A.value):q,j=q=>{const $=B(q),Q=c.applyTextCaseToValue?S($):$;return U(Q)};let O=null;const R=q=>{var $;if(q==="")return null;if((($=c.valueType)==null?void 0:$.toLowerCase())==="number"&&c.returnNumber){const Q=Number(q);return Number.isFinite(Q)?Q:null}return q},Y=q=>{w.value=q,s("update:modelValue",R(q))},z=(q,$)=>{const Q=U($);v.value=!0,q.value=Q,Y(Q),queueMicrotask(()=>v.value=!1)},V=(q,$)=>{const Q=q.selectionStart??q.value.length,pe=q.selectionEnd??q.value.length;if(A.value>0){const qe=q.value.length-(pe-Q),ot=A.value-qe;if(ot<=0)return;$=$.slice(0,ot)}q.setRangeText($,Q,pe,"end"),z(q,j(q.value))},W=q=>{var pe;if(!O||L.value||v.value||!((pe=q.inputType)!=null&&pe.startsWith("insert")))return;const $=q.data;if($==null)return;const Q=j($);Q!==$&&(q.preventDefault(),Q.length>0&&V(O,Q))},oe=q=>{var pe;if(!O||L.value||v.value)return;const $=((pe=q.clipboardData)==null?void 0:pe.getData("text"))??"",Q=j($);Q!==$&&(q.preventDefault(),Q.length>0&&V(O,Q))},ee=q=>{if(!O||L.value||v.value)return;const $=q.target,Q=$.value??"",pe=j(Q);pe===Q?Y(pe):z($,pe)},de=()=>L.value=!0,ce=()=>{if(L.value=!1,!O)return;const q=O.value??"",$=j(q);$===q?Y($):z(O,$)};t.onMounted(()=>{if(O=document.getElementById(u.value),!O)return;O.addEventListener("beforeinput",W),O.addEventListener("paste",oe),O.addEventListener("input",ee),O.addEventListener("compositionstart",de),O.addEventListener("compositionend",ce);const q=O.value??"",$=j(q);$===q?Y($):z(O,$)}),t.onBeforeUnmount(()=>{O&&(O.removeEventListener("beforeinput",W),O.removeEventListener("paste",oe),O.removeEventListener("input",ee),O.removeEventListener("compositionstart",de),O.removeEventListener("compositionend",ce),O=null)});const ue=()=>{w.value="",O&&(O.value=""),s("update:modelValue",null),s("clear")},ve=t.computed(()=>T.value&&E.value>0),le=t.computed(()=>`${E.value} / ${A.value}`),X=t.computed(()=>!!c.error);return(q,$)=>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",aX)):t.createCommentVNode("",!0),$[1]||($[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)),T.value?(t.openBlock(),t.createElementBlock("div",nX,[...$[0]||($[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(Bs),{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",oX,"*")):t.createCommentVNode("",!0)]),_:1},8,["for"])):t.createCommentVNode("",!0),t.createElementVNode("div",rX,[c.icon||c.prependInner||q.$slots["prepend-inner"]?(t.openBlock(),t.createElementBlock("div",iX,[t.renderSlot(q.$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",sX,t.toDisplayString(c.prependInner),1)):t.createCommentVNode("",!0)])])):t.createCommentVNode("",!0),t.createVNode(t.unref(o_),t.mergeProps({id:u.value,modelValue:w.value},f.value,{placeholder:c.placeholder,style:`text-transform: ${g.value}; padding-left: ${c.icon||c.prependInner||q.$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",X.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",lX,[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(cs):t.unref(Us)),{class:"w-4 h-4"}))])])):t.createCommentVNode("",!0),m.value&&!o.value?(t.openBlock(),t.createElementBlock("div",cX,[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&&!X.value?(t.openBlock(),t.createElementBlock("p",dX,t.toDisplayString(le.value),1)):t.createCommentVNode("",!0)]),X.value?(t.openBlock(),t.createElementBlock("p",hX,t.toDisplayString(c.error),1)):t.createCommentVNode("",!0)],64))],10,tX)),[[t.vShow,a.visible]])}}),uX=["aria-busy"],pX={key:0,class:"h-4 w-32 rounded bg-gray-200 dark:bg-gray-700 animate-pulse"},yX={key:0,class:"ml-1 text-destructive"},fX={class:"relative w-full group"},kX=["id","value"],mX={key:0,class:"absolute top-1 right-2"},gX={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"},bX={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 X=n.required,q=n["aria-required"];return X===""||X===!0||X==="true"||(q==="true"||q===!0)}),u=t.computed(()=>{const{label:X,class:q,id:$,required:Q,"aria-required":pe,...qe}=n;return qe}),p=t.computed(()=>{const X=n.maxlength;let q=Number.NaN;return typeof X=="number"?q=X:typeof X=="string"&&(q=Number.parseInt(X,10)),Number.isFinite(q)&&q>0?q:-1}),y=X=>p.value>0?X.slice(0,p.value):X,f=t.computed(()=>{const X=r.modelValue;return X==null||String(X).length===0}),k=t.computed(()=>r.clearable?r.hideClearWhenEmpty?!f.value:!0:!1),m=t.ref(String(r.modelValue??""));t.watch(()=>r.modelValue,X=>{const q=String(X??"");q!==m.value&&(m.value=q)});const g=t.ref(!1),w=t.ref(!1),L=X=>X.split(/(\s+)/).map(q=>{if(q.trim()==="")return q;const $=q.toLowerCase();return $.charAt(0).toUpperCase()+$.slice(1)}).join(""),v=X=>{const q=X.toLowerCase(),$=q.search(new RegExp("\\p{L}","u"));return $<0?q:q.slice(0,$)+q.charAt($).toUpperCase()+q.slice($+1)},M=X=>{switch(r.textCase){case"uppercase":return X.toUpperCase();case"lowercase":return X.toLowerCase();case"titlecase":return L(X);case"sentencecase":return v(X);case"none":default:return X}},C=t.computed(()=>{switch(r.textCase){case"uppercase":return"uppercase";case"lowercase":return"lowercase";default:return"none"}}),S=X=>{if(!X)return null;const q=Array.isArray(X)?X.join(""):X;return q?new Set(q):null},b=t.computed(()=>S(r.allowChars)),x=(X,q)=>(X.lastIndex=0,X.test(q)),I=X=>{if(X===`
8594
8594
  `)return r.valueType!=="number";if(r.valueType==="free")return!0;const q=X===" ",$=/\d/.test(X),Q=new RegExp("\\p{L}","u").test(X),pe=new RegExp("\\p{N}","u").test(X);return r.valueType==="number"?$:r.valueType==="letter"?Q||r.allowSpaces&&q:r.valueType==="letternumber"?Q||pe||r.allowSpaces&&q:!0},D=X=>{let q="";for(const $ of X){const Q=!!b.value&&b.value.has($);r.pattern&&!Q&&!x(r.pattern,$)||!Q&&!I($)||(q+=$)}return q},B=X=>{const q=D(X),$=r.applyTextCaseToValue?M(q):q;return y($)};let A=null;const E=X=>{if(X==="")return null;if(r.valueType==="number"&&r.returnNumber){const q=X.replaceAll(`
8595
- `,""),$=Number(q);return Number.isFinite($)?$:null}return X},T=X=>{m.value=X,o("update:modelValue",E(X))},U=(X,q)=>{const $=y(q);w.value=!0,X.value=$,T($),queueMicrotask(()=>w.value=!1)},j=(X,q)=>{const $=X.selectionStart??X.value.length,Q=X.selectionEnd??X.value.length;if(p.value>0){const pe=X.value.length-(Q-$),qe=p.value-pe;if(qe<=0)return;q=q.slice(0,qe)}X.setRangeText(q,$,Q,"end"),U(X,B(X.value))},O=X=>{var Q;if(!A||g.value||w.value||!((Q=X.inputType)!=null&&Q.startsWith("insert")))return;const q=X.data;if(q==null)return;const $=B(q);$!==q&&(X.preventDefault(),$.length>0&&j(A,$))},R=X=>{var Q;if(!A||g.value||w.value)return;const q=((Q=X.clipboardData)==null?void 0:Q.getData("text"))??"",$=B(q);$!==q&&(X.preventDefault(),$.length>0&&j(A,$))},Y=async X=>{if(!A||g.value||w.value)return;const q=X.target,$=q.value??"",Q=B($);if(Q===$){const pe=q.selectionStart??Q.length,qe=q.selectionEnd??Q.length;U(q,Q),await t.nextTick();try{q.setSelectionRange(pe,qe)}catch{}T(Q)}else{const pe=q.selectionStart??Q.length,qe=q.selectionEnd??Q.length;U(q,Q),await t.nextTick();try{q.setSelectionRange(pe,qe)}catch{}}},z=()=>g.value=!0,V=()=>{if(g.value=!1,!A)return;const X=A.value??"",q=B(X);q===X?T(q):U(A,q)};t.onMounted(()=>{if(A=document.getElementById(d.value),!A)return;A.addEventListener("beforeinput",O),A.addEventListener("paste",R),A.addEventListener("input",Y),A.addEventListener("compositionstart",z),A.addEventListener("compositionend",V);const X=A.value??"",q=B(X);q===X?T(q):U(A,q)}),t.onBeforeUnmount(()=>{A&&(A.removeEventListener("beforeinput",O),A.removeEventListener("paste",R),A.removeEventListener("input",Y),A.removeEventListener("compositionstart",z),A.removeEventListener("compositionend",V),A=null)});const W=()=>{m.value="",A&&(A.value=""),o("update:modelValue",null),o("clear")},oe=t.computed(()=>m.value.length),ee=t.computed(()=>r.showCharCount?p.value>0:!1),de=t.computed(()=>ee.value&&oe.value>0),ce=t.computed(()=>`${oe.value} / ${p.value}`),ue=t.computed(()=>!!r.error),ve=t.computed(()=>{const X=n.rows,q=typeof X=="number"?X:Number.parseInt(String(X??""),10);return Number.isFinite(q)&&q>0?q:3}),le=t.computed(()=>({height:`${ve.value*24+16}px`}));return(X,q)=>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",pX)):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(Bs),{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",yX,"*")):t.createCommentVNode("",!0)]),_:1},8,["for"])):t.createCommentVNode("",!0),t.createElementVNode("div",fX,[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,kX),k.value?(t.openBlock(),t.createElementBlock("div",mX,[t.createElementVNode("button",{type:"button",class:"text-muted-foreground hover:text-foreground text-sm leading-none","aria-label":"Clear textarea",onClick:W}," ✕ ")])):t.createCommentVNode("",!0),de.value&&!ue.value?(t.openBlock(),t.createElementBlock("p",gX,t.toDisplayString(ce.value),1)):t.createCommentVNode("",!0)]),ue.value?(t.openBlock(),t.createElementBlock("p",bX,t.toDisplayString(r.error),1)):t.createCommentVNode("",!0)],64))],10,uX)),[[t.vShow,s.value]])}}),$V=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(MX)({size:a.size,shape:a.shape}),e.class))},{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},8,["class"]))}}),UV=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))}}),WV=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))}}),MX=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"]))}}),xX={class:"bg-card text-card-foreground"},wX={class:"pb-6 px-3"},vX={key:0,class:"flex justify-center p-8"},CX={key:1,class:"p-8 text-center text-red-500"},LX={key:2,class:"relative"},SX={class:"space-y-6"},IX={class:"rounded-xl border bg-card text-card-foreground shadow"},_X={class:"p-4"},AX={class:"flex items-center justify-between gap-3"},BX={class:"font-medium"},zX={class:"text-xs text-muted-foreground"},VX={class:"mt-1 text-sm text-muted-foreground"},qX={class:"text-foreground"},PX={class:"text-foreground"},DX={class:"mt-1 text-xs text-muted-foreground"},EX={key:0,class:"mt-3 flex items-center gap-2 text-sm"},TX={class:"flex items-center justify-between gap-3"},HX={class:"font-medium"},jX={class:"text-xs text-muted-foreground"},OX={class:"mt-2 text-sm text-muted-foreground"},FX={class:"flex flex-wrap items-center justify-between gap-3"},RX={class:"flex items-center gap-3"},NX={class:"leading-tight"},$X={class:"text-sm font-medium"},UX={class:"text-xs text-muted-foreground"},WX={class:"flex items-center gap-2"},GX={key:2,class:"flex flex-col gap-3 sm:flex-row sm:items-start"},KX={class:"h-16 w-16 shrink-0 rounded-lg bg-muted flex items-center justify-center"},XX=["src"],ZX={class:"flex-1"},YX={class:"flex items-center justify-between gap-3"},QX={class:"font-medium"},JX={class:"text-xs text-muted-foreground"},eZ={class:"mt-1 text-sm text-muted-foreground"},tZ={class:"text-left sm:text-center"},aZ={class:"text-xs text-muted-foreground"},nZ={class:"text-left sm:text-center"},oZ={class:"text-xs text-muted-foreground"},rZ={class:"text-left sm:text-center"},iZ={class:"text-xs text-muted-foreground"},sZ={class:"flex items-center justify-between gap-3"},lZ={class:"font-medium"},cZ={class:"text-xs text-muted-foreground"},dZ={class:"mt-2 text-sm text-muted-foreground"},hZ={class:"mt-3 flex items-center gap-3"},uZ={class:"text-sm font-medium"},pZ={class:"flex items-start justify-between gap-3"},yZ={class:"font-medium"},fZ={class:"mt-3 grid gap-2 text-sm"},kZ={class:"flex items-center justify-between gap-3"},mZ={class:"flex items-center gap-2 text-muted-foreground"},gZ={class:"font-medium"},bZ={class:"flex items-center justify-between gap-3"},MZ={class:"flex items-center gap-2 text-muted-foreground"},xZ={class:"font-medium"},wZ={class:"flex items-center justify-between gap-3"},vZ={class:"flex items-center gap-2 text-muted-foreground"},CZ={class:"font-medium"},LZ={class:"flex items-center justify-between"},SZ={class:"flex items-center gap-2"},IZ={class:"flex items-start justify-between gap-3"},_Z={class:"flex items-center gap-2"},AZ={class:"font-medium"},BZ={class:"mt-2 text-sm text-muted-foreground"},zZ={key:0,class:"mt-1 text-sm text-muted-foreground"},VZ={class:"flex flex-wrap items-center justify-between gap-3"},qZ={class:"flex items-center gap-2"},PZ={class:"text-xs text-muted-foreground"},GV=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:ir,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",xX,[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",wX,[r.value?(t.openBlock(),t.createElementBlock("div",vX,[...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",CX,t.toDisplayString(i.value),1)):(t.openBlock(),t.createElementBlock("div",LX,[y[7]||(y[7]=t.createElementVNode("div",{class:"absolute left-4 top-0 h-full w-px bg-border"},null,-1)),t.createElementVNode("div",SX,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value,(g,w)=>(t.openBlock(),t.createElementBlock("div",{key:w,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",IX,[t.createElementVNode("div",_X,[g.type==="flight"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createElementVNode("div",AX,[t.createElementVNode("p",BX,t.toDisplayString(g.title),1),t.createElementVNode("p",zX,t.toDisplayString(g.meta),1)]),t.createElementVNode("p",VX,[t.createElementVNode("span",qX,t.toDisplayString(g.from),1),t.createVNode(t.unref(Ts),{class:"mx-2 inline h-4 w-4"}),t.createElementVNode("span",PX,t.toDisplayString(g.to),1)]),t.createElementVNode("p",DX,t.toDisplayString(g.time),1),g.fileName?(t.openBlock(),t.createElementBlock("div",EX,[t.createVNode(t.unref(ds),{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",TX,[t.createElementVNode("p",HX,t.toDisplayString(g.title),1),t.createElementVNode("p",jX,t.toDisplayString(g.meta),1)]),t.createElementVNode("p",OX,t.toDisplayString(g.desc),1),t.createVNode(t.unref(hS),{class:"my-4"}),t.createElementVNode("div",FX,[t.createElementVNode("div",RX,[t.createVNode(t.unref($V),{class:"h-10 w-10"},{default:t.withCtx(()=>[g.avatarUrl?(t.openBlock(),t.createBlock(t.unref(WV),{key:0,src:g.avatarUrl},null,8,["src"])):t.createCommentVNode("",!0),t.createVNode(t.unref(UV),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(u(g.personName??"")),1)]),_:2},1024)]),_:2},1024),t.createElementVNode("div",NX,[t.createElementVNode("p",$X,t.toDisplayString(g.personName),1),t.createElementVNode("p",UX,t.toDisplayString(g.personRole),1)])]),t.createElementVNode("div",WX,[t.createVNode(t.unref(Ee),{size:"icon",variant:"ghost"},{default:t.withCtx(()=>[t.createVNode(t.unref(hs),{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",GX,[t.createElementVNode("div",KX,[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,XX)):(t.openBlock(),t.createBlock(f,{key:1,class:"h-5 w-5 text-muted-foreground"}))]),t.createElementVNode("div",ZX,[t.createElementVNode("div",YX,[t.createElementVNode("p",QX,t.toDisplayString(g.title),1),t.createElementVNode("p",JX,t.toDisplayString(g.meta),1)]),t.createElementVNode("p",eZ,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",tZ,[y[1]||(y[1]=t.createElementVNode("p",{class:"text-sm font-medium"},"Customer",-1)),t.createElementVNode("p",aZ,t.toDisplayString(g.customer),1)]),t.createElementVNode("div",nZ,[y[2]||(y[2]=t.createElementVNode("p",{class:"text-sm font-medium"},"Price",-1)),t.createElementVNode("p",oZ,t.toDisplayString(g.price),1)]),t.createElementVNode("div",rZ,[y[3]||(y[3]=t.createElementVNode("p",{class:"text-sm font-medium"},"Quantity",-1)),t.createElementVNode("p",iZ,t.toDisplayString(g.qty),1)])],2)])])):g.type==="design"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:3},[t.createElementVNode("div",sZ,[t.createElementVNode("p",lZ,t.toDisplayString(g.title),1),t.createElementVNode("p",cZ,t.toDisplayString(g.meta),1)]),t.createElementVNode("p",dZ,t.toDisplayString(g.desc),1),t.createElementVNode("div",hZ,[t.createVNode(t.unref($V),{class:"h-10 w-10"},{default:t.withCtx(()=>[g.avatarUrl?(t.openBlock(),t.createBlock(t.unref(WV),{key:0,src:g.avatarUrl},null,8,["src"])):t.createCommentVNode("",!0),t.createVNode(t.unref(UV),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(u(g.personName??"")),1)]),_:2},1024)]),_:2},1024),t.createElementVNode("p",uZ,t.toDisplayString(g.personName),1)])],64)):g.type==="server"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:4},[t.createElementVNode("div",pZ,[t.createElementVNode("p",yZ,t.toDisplayString(g.title),1),t.createVNode(t.unref(Ia),{variant:"destructive",class:"h-6"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(g.chipText??""),1)]),_:2},1024)]),t.createElementVNode("div",fZ,[t.createElementVNode("div",kZ,[t.createElementVNode("div",mZ,[t.createVNode(t.unref(Ws),{class:"h-4 w-4"}),y[4]||(y[4]=t.createElementVNode("span",null,"IP Address",-1))]),t.createElementVNode("span",gZ,t.toDisplayString(g.ip),1)]),t.createElementVNode("div",bZ,[t.createElementVNode("div",MZ,[t.createVNode(t.unref(ls),{class:"h-4 w-4"}),y[5]||(y[5]=t.createElementVNode("span",null,"CPU",-1))]),t.createElementVNode("span",xZ,t.toDisplayString(g.cpu),1)]),t.createElementVNode("div",wZ,[t.createElementVNode("div",vZ,[t.createVNode(t.unref(ls),{class:"h-4 w-4"}),y[6]||(y[6]=t.createElementVNode("span",null,"Memory",-1))]),t.createElementVNode("span",CZ,t.toDisplayString(g.memory),1)])]),t.createVNode(t.unref(hS),{class:"my-4"}),t.createElementVNode("div",LZ,[t.createElementVNode("div",SZ,[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",IZ,[t.createElementVNode("div",_Z,[t.createVNode(m,{class:"h-4 w-4 text-muted-foreground"}),t.createElementVNode("p",AZ,t.toDisplayString(g.title),1)]),t.createVNode(t.unref(Ia),{variant:"destructive",class:"h-6"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(g.chipText),1)]),_:2},1024)]),t.createElementVNode("p",BZ,t.toDisplayString(g.desc1),1),g.desc2?(t.openBlock(),t.createElementBlock("p",zZ,t.toDisplayString(g.desc2),1)):t.createCommentVNode("",!0),t.createVNode(t.unref(hS),{class:"my-4"}),t.createElementVNode("div",VZ,[t.createElementVNode("div",qZ,[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(hs),{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",PZ,"Due date: "+t.toDisplayString(g.due),1)])],64)):t.createCommentVNode("",!0)])])]))),128))])]))])])}}}),DZ={class:"dcode-upload-file"},EZ={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"},TZ={key:0,class:"text-xs text-gray-500 mt-1"},HZ=["accept"],jZ={key:1,class:"text-xs text-red-600 mt-1"},KV=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",DZ,[a.label?(t.openBlock(),t.createBlock(n_,{key:0,label:a.label},null,8,["label"])):t.createCommentVNode("",!0),t.createElementVNode("div",EZ,[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",TZ,t.toDisplayString(a.accept),1)):t.createCommentVNode("",!0),t.createElementVNode("input",{type:"file",class:"hidden",onChange:o,accept:a.accept},null,40,HZ)]),a.errorMessage?(t.openBlock(),t.createElementBlock("p",jZ,t.toDisplayString(a.errorMessage),1)):t.createCommentVNode("",!0)]))}}),OZ=["onClick"],FZ={key:1,class:"mr-2 text-xs font-bold shrink-0 opacity-50"},RZ={class:"font-semibold text-sm whitespace-normal text-center leading-tight"},NZ={key:1},$Z={key:0,class:"text-white"},UZ={key:1},WZ={key:2},GZ=["disabled","onClick"],KZ={key:1,class:"mr-2 text-sm font-bold opacity-70"},XZ={class:"whitespace-normal text-sm text-center leading-tight"},ZZ={class:"flex flex-col flex-1 min-w-0"},YZ={class:"text-sm text-muted-foreground"},QZ={class:"px-1"},JZ=["disabled"],eY=["type"],tY=["disabled"],XV=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 w(b){if(typeof b.tab.fetchData=="function"){const T=await b.tab.fetchData(),U=(T==null?void 0:T.data)??T;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 D=k();let B;if(x.apiUrl)B=await i("","",D,{_url:x.apiUrl,_method:x.apiMethod,_data:x.apiParams??void 0});else{const T={...D,...x.apiParams};B=await i(x.apiModule,x.apiAction,T)}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),D=n.tabs[I];if(!D)return;const B=f(D);if(!(n.cache&&B.loaded&&!x)&&!B.loading){B.loading=!0,B.error=null;try{const A=await w({tabIndex:I,tab:D});B.data=A,B.loaded=!0,o("loaded",{tabIndex:I,tab:D,data:A})}catch(A){const E=typeof(A==null?void 0:A.message)=="string"&&A.message||typeof A=="string"&&A||"Failed to load tab data.";B.error=E,o("error",{tabIndex:I,tab:D,message:E})}finally{B.loading=!1}}}function v(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,D,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,E)=>(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",[E<c.value?"wizard-num-done":"",E===c.value?"wizard-num-active":E>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",NZ,[E<c.value?(t.openBlock(),t.createElementBlock("span",$Z,"✓")):(t.openBlock(),t.createElementBlock("span",UZ,t.toDisplayString(E+1),1))])):(t.openBlock(),t.createElementBlock("span",WZ))],2),t.createElementVNode("span",{class:t.normalizeClass(["text-xs font-semibold whitespace-normal px-2 py-1 rounded transition-colors text-left",E===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,E)=>(t.openBlock(),t.createElementBlock("div",{key:A.key,onClick:T=>v(E),style:t.normalizeStyle({zIndex:a.tabs.length-E}),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",[E>0?"pl-8":"",E===c.value?"wizard-step-active":E<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",FZ,t.toDisplayString(E+1),1)):t.createCommentVNode("",!0),t.createElementVNode("span",RZ,t.toDisplayString(A.title),1)],2),E<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",[E===c.value?"wizard-svg-active":E<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,OZ))),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,E)=>(t.openBlock(),t.createElementBlock("button",{key:A.key,type:"button",disabled:!g(E),onClick:T=>v(E),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&&E===a.tabs.length-1&&"border-r-0",E===c.value?"wizard-btn-active":"wizard-btn-pending",!g(E)&&"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",KZ,t.toDisplayString(E+1),1)):t.createCommentVNode("",!0),t.createElementVNode("span",XZ,t.toDisplayString(A.title),1)],10,GZ))),128))],2))],2)],2),a.isVertical?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(hS),{key:0})),t.createElementVNode("div",ZZ,[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:(D=y[h.value.key])==null?void 0:D.data,loaded:(B=y[h.value.key])==null?void 0:B.loaded,reload:M},()=>[t.createElementVNode("div",YZ,[x[2]||(x[2]=t.createTextVNode(" Slot ",-1)),t.createElementVNode("code",QZ,"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,JZ),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,eY)):(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 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,tY))],2)):t.createCommentVNode("",!0)])],2)}}}),[["__scopeId","data-v-d7d48c7d"]]);function aY(){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 nY={class:"w-full"},oY={class:"relative mx-auto min-h-[37.5rem]"},rY={key:"content",class:"w-full"},iY={class:"mb-6"},sY={class:"text-neutral-500 dark:text-neutral-400"},lY={key:"skeleton",class:"w-full"},cY={key:"error",class:"flex items-center justify-center p-20 text-red-500 w-full"},ZV=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}=aY(),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 w=async()=>{var b,x,I;f.value=!0;try{let D=e.layoutCode;o&&o.query&&typeof o.query=="object"&&"code"in o.query&&(D=o.query.code||e.layoutCode);let B=await i(`/api/auto-layout/form/form-dynamic?code=${D}`,"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=${D}`,"GET");if(A.status){const E=Array.isArray(A.data)?A.data[0]:A.data;E&&E.code&&(D=E.code,m.value=D,B=await i(`/api/auto-layout/form/form-dynamic?code=${D}`,"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(E=>{((E.propsForm||E.props||{}).fields||E.fields||[]).forEach(j=>{var R;const O=j.model||((R=j.props)==null?void 0:R.model)||j.key;O&&(A[O]=null)})}),p.value=A,f.value=!1,h.value&&u.value){k.value=!0;try{if((x=y.value.endpointGlobal)!=null&&x.apiUrl){const E=y.value.endpointGlobal.apiUrl,T=y.value.endpointGlobal.apiMethod||"GET",U={id:u.value},j=await s(E,T,U);if(j.status){const O=Array.isArray(j.data)?j.data[0]:j.data;p.value={...p.value,...O}}}else{const E=((I=y.value.endpoint)==null?void 0:I.detailUrl)||`/api/${m.value}/detail/${u.value}`,T=await i(E,"GET");if(T.status){let U=Array.isArray(T.data)?T.data[0]:T.data;if(T.payload){const O={...T.payload};if(Object.keys(O).forEach(R=>{U[R]!==void 0&&U[R]!==null&&(O[R]=U[R])}),!("id"in O)&&U.id){const R=Object.keys(O).find(Y=>Y.startsWith("id")&&Y.length>2&&!O[Y]);R&&(O[R]=U.id)}U=O}const j={...U};Object.keys(p.value).forEach(O=>{if(j[O]===void 0||j[O]===null){if(O.toLowerCase().startsWith("id")&&O.length>2){const Y=O.substring(2).toLowerCase(),z=Array.isArray(T.data)?T.data[0]:T.data,V=Object.keys(z).find(W=>W.toLowerCase()===Y);V&&z[V]&&typeof z[V]=="object"&&"id"in z[V]&&(j[O]=z[V].id)}if(O==="idSupervisor"){const Y=Array.isArray(T.data)?T.data[0]:T.data;Y.supervisorId&&(j[O]=Y.supervisorId)}}}),p.value={...p.value,...j}}}}catch(E){console.error("Failed to fetch record data:",E)}finally{k.value=!1}}}}catch(D){console.error("Failed to load form layout:",D),f.value=!1}},L=async b=>{var x,I,D;try{const B=(D=(I=(x=y.value.sections)==null?void 0:x[0])==null?void 0:I.propsForm)==null?void 0:D.endpointForm,A=y.value.endpointGlobal||y.value.endpoint,E=(B==null?void 0:B.submitUrl)||(A==null?void 0:A.submitUrl)||`/api/generic/${e.layoutCode}`,T=(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(E,T,U),r.back()}catch(B){console.error("Submit failed:",B)}},v=async(b,x)=>{if(b==="cancel"){M();return}const I=x.endpointPropAction||x.propsActionGlobal&&x.propsActionGlobal.endpointPropAction;if(I)try{f.value=!0;const D={...p.value};h.value&&x.model&&u.value&&(D[x.model]=u.value);const B=I.apiUrl,A=I.apiMethod||"POST";(await s(B,A,D)).status&&r.back()}catch(D){console.error("Action failed:",D)}finally{f.value=!1}},M=()=>{r.back()};return t.onMounted(()=>{w()}),t.onUnmounted(()=>{d("")}),(b,x)=>{const I=t.resolveComponent("DynamicForm"),D=t.resolveComponent("AutoLayoutSkeleton");return t.openBlock(),t.createElementBlock("div",nY,[t.createElementVNode("div",oY,[t.createVNode(t.Transition,{name:"fade",mode:"out-in"},{default:t.withCtx(()=>[!f.value&&y.value?(t.openBlock(),t.createElementBlock("div",rY,[t.createElementVNode("div",iY,[t.createElementVNode("p",sY,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:v,class:"w-full"},null,8,["schema","model","is-edit-mode","loading"])])):f.value?(t.openBlock(),t.createElementBlock("div",lY,[t.createVNode(D)])):(t.openBlock(),t.createElementBlock("div",cY," Failed to load form configuration for "+t.toDisplayString(e.layoutCode),1))]),_:1})])])}}}),[["__scopeId","data-v-fd9d71a6"]]),dY=(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)},hY=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(BA),t.normalizeProps(t.guardReactiveProps(t.unref(r))),{default:t.withCtx(()=>[t.renderSlot(i.$slots,"default")]),_:3},16))}}),uY=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(NA),null,{default:t.withCtx(()=>[t.createVNode(t.unref(RA),{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(OA),t.mergeProps({class:t.unref(be)(t.unref(gY)({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}))}}),pY=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(FA),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"]))}}),yY=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))}}),fY=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))}}),kY=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($A),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"]))}}),mY=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))}}),gY=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"}}),bY={class:"flex-1 overflow-hidden"},MY=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(hY),null,{default:t.withCtx(()=>[t.createVNode(t.unref(mY),{"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(pr),{class:"w-4 h-4"}),n[0]||(n[0]=t.createElementVNode("span",null,"Pencarian",-1))]),_:1})])]),_:3}),t.createVNode(t.unref(uY),{class:"flex flex-col h-full"},{default:t.withCtx(()=>[t.createVNode(t.unref(fY),{class:"flex-shrink-0"},{default:t.withCtx(()=>[t.createVNode(t.unref(kY),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.title),1)]),_:1}),t.createVNode(t.unref(pY),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.description),1)]),_:1})]),_:1}),t.createElementVNode("div",bY,[t.renderSlot(e.$slots,"default")]),t.createVNode(t.unref(yY),{class:"flex-shrink-0"},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"footer")]),_:3})]),_:3})]),_:3}))}}),xY={key:0},wY=["value","name"],YV=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",xY,[t.createElementVNode("input",{type:"hidden",value:i.value,name:a.field.model},null,8,wY)])):(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"]))}}),vY=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"]))}}),CY=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"]))}}),LY=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"]))}}),SY=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(Ms)({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(cn)),i[0]||(i[0]=t.createElementVNode("span",{class:"hidden sm:block"},"First",-1))])]),_:3},16,["class"]))}}),IY=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(Ms)({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"]))}}),_Y=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(Ms)({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(dn))])]),_:3},16,["class"]))}}),AY=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(Ms)({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(dn))])]),_:3},16,["class"]))}}),BY=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(Ms)({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(cn)),i[0]||(i[0]=t.createElementVNode("span",{class:"hidden sm:block"},"Previous",-1))])]),_:3},16,["class"]))}}),zY=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))}}),VY=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(EY)),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(DY))]),_:3},16,["class"])]),_:3}))}}),qY={class:"absolute right-2 flex h-3.5 w-3.5 items-center justify-center"},PY=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",qY,[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"]))}}),DY=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"]))}}),EY=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"]))}}),TY=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"]))}}),HY=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))}}),jY={class:"dcode-card animate-slide-up"},OY={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"},FY={class:"flex flex-col lg:flex-row lg:items-center lg:justify-between gap-4"},RY={key:0,class:"flex flex-col sm:flex-row items-start sm:items-center gap-2 flex-1 max-w-2xl"},NY={class:"relative w-full sm:w-64"},$Y={key:0,class:"relative"},UY={class:"flex flex-col h-full"},WY={key:0,class:"flex-1 overflow-y-auto py-4"},GY={class:"grid grid-cols-1 md:grid-cols-2 gap-4 px-1"},KY={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"},XY={class:"flex justify-end gap-2 w-full"},ZY={key:0,class:"font-medium text-sm text-neutral-600 dark:text-neutral-400"},YY={class:"overflow-auto custom-scrollbar relative max-h-[calc(100vh-17rem)]"},QY={class:"dcode-table w-full"},JY={class:"bg-primary-700 dark:bg-primary-900 sticky top-0 z-20 shadow-sm"},eQ=["onClick"],tQ={key:0,class:"flex items-center justify-center w-full"},aQ={key:0,class:"px-3 py-2 text-xs font-medium text-white dark:text-neutral-100 uppercase tracking-wider"},nQ={class:"bg-white dark:bg-zinc-900 divide-y divide-neutral-200 dark:divide-neutral-700"},oQ={key:0,class:"px-3 py-0.5"},rQ={key:1},iQ=["colspan"],sQ={class:"flex flex-col items-center gap-4"},lQ={class:"text-base font-medium text-neutral-700 dark:text-neutral-300"},cQ={class:"text-sm text-neutral-500 dark:text-neutral-400 mt-1"},dQ={class:"hover:bg-zinc-50 dark:hover:bg-zinc-800/50 transition-colors duration-150"},hQ={key:0,class:"flex items-center justify-center"},uQ={key:0,class:"px-3 py-0.5 !text-center"},pQ={key:0,class:"flex items-center justify-center gap-1.5"},yQ={key:0,class:"bg-zinc-50/50 dark:bg-zinc-800/30"},fQ=["colspan"],kQ={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"},mQ={class:"flex items-center gap-4"},gQ={class:"text-xs text-neutral-500 dark:text-neutral-400 font-medium"},bQ={class:"text-neutral-900 dark:text-neutral-100 font-medium"},MQ={class:"text-neutral-900 dark:text-neutral-100 font-medium"},xQ={class:"text-neutral-900 dark:text-neutral-100 font-medium"},wQ={class:"flex-shrink-0"},vQ={class:"space-y-4"},CQ={class:"text-gray-600 dark:text-gray-400"},LQ={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),w=t.ref(!0),L=t.ref([]),v=t.ref([]),M=t.ref([]),C=t.ref(!1),S=t.ref(!1),b=t.ref({}),x=t.ref(null),I=t.ref(null),D=t.ref(null),B=t.ref([]),A=t.computed(()=>{if(xt.value.length===0)return!1;const _=xt.value.map(H=>{const K=ce.value.find(N=>N.type==="CHECKBOX"),P=(K==null?void 0:K.keyCheckbox)||"id";return H[P]}).filter(H=>H!=null);return _.length===0?!1:_.every(H=>B.value.includes(H))}),E=t.computed(()=>{if(xt.value.length===0)return!1;const _=ce.value.find(N=>N.type==="CHECKBOX"),H=(_==null?void 0:_.keyCheckbox)||"id",K=xt.value.map(N=>N[H]).filter(N=>N!=null),P=K.filter(N=>B.value.includes(N)).length;return P>0&&P<K.length}),T=_=>{const H=ce.value.find(N=>N.type==="CHECKBOX"),K=(H==null?void 0:H.keyCheckbox)||"id",P=_[K];return P!==void 0&&B.value.includes(P)},U=_=>{const H=ce.value.find(N=>N.type==="CHECKBOX"),K=(H==null?void 0:H.keyCheckbox)||"id",P=xt.value.map(N=>N[K]).filter(N=>N!=null);if(_){const N=new Set([...B.value,...P]);B.value=Array.from(N)}else B.value=B.value.filter(N=>!P.includes(N))},j=(_,H)=>{const K=ce.value.find(Z=>Z.type==="CHECKBOX"),P=(K==null?void 0:K.keyCheckbox)||"id",N=_[P];N!=null&&(H?B.value.includes(N)||B.value.push(N):B.value=B.value.filter(Z=>Z!==N))};t.watch(B,_=>{var K;r("update:selection",_);const H=A.value||_.length>1;(K=v.value)!=null&&K.length&&v.value.forEach(P=>{var N;(N=P.fieldActionGlobal)!=null&&N.length&&P.fieldActionGlobal.forEach(Z=>{var Ge,rt;const fe=P.endpoint||((Ge=P.propsActionGlobal)==null?void 0:Ge.endpointPropAction)||P.propsActionGlobal,xe=(rt=fe==null?void 0:fe.keyParam)==null?void 0:rt[0];(xe&&Z.model===xe||!xe&&/^(id|ids|idAuditTrail)/i.test(Z.model))&&H&&Z.model&&(b.value[Z.model]=_)})})},{deep:!0});const O=_=>_&&typeof _=="string"&&_.trim()?_:void 0,R=t.computed(()=>{var _,H,K,P;return O((H=(_=g.value)==null?void 0:_.endpoint)==null?void 0:H.apiModule)||O((P=(K=g.value)==null?void 0:K.endpointGlobal)==null?void 0:P.apiModule)||o.apiModule}),Y=t.computed(()=>{var _,H,K,P;return O((H=(_=g.value)==null?void 0:_.endpoint)==null?void 0:H.apiAction)||O((P=(K=g.value)==null?void 0:K.endpointGlobal)==null?void 0:P.apiAction)||o.apiAction}),z=t.computed(()=>{var _,H,K,P;return O((H=(_=g.value)==null?void 0:_.endpoint)==null?void 0:H.apiMethod)||O((P=(K=g.value)==null?void 0:K.endpointGlobal)==null?void 0:P.apiMethod)||o.apiMethod||"POST"}),V=t.computed(()=>{var _,H,K,P;return O((H=(_=g.value)==null?void 0:_.endpoint)==null?void 0:H.apiUrl)||O((P=(K=g.value)==null?void 0:K.endpointGlobal)==null?void 0:P.apiUrl)||o.apiUrl}),W=t.computed(()=>o.permissionBase||""),oe=t.computed(()=>!M.value||M.value.length===0?[]:[...M.value].sort((_,H)=>(_.seq||0)-(H.seq||0))),ee=_=>{if(!_)return"col-span-1";const H=_.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"}[H]||"col-span-1"},de=()=>{let _=null;if(o.tableConfig&&(_=o.tableConfig),_){g.value=_,_.headers&&(m.value=_.headers.map(P=>{var fe,xe,Be,Ge,rt,mS,cq,dq,hq,uq;if(P.key==="action"||((fe=P.custom)==null?void 0:fe.type)==="ACTION"||((xe=P.custom)==null?void 0:xe.type)==="action"){const Aa=((Be=P.custom)==null?void 0:Be.actionCustom)||((Ge=P.custom)==null?void 0:Ge.action);return Aa&&(L.value=Aa.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 N;const Z=((rt=P.custom)==null?void 0:rt.conditionBadge)||((mS=P.custom)==null?void 0:mS.condition);return(((cq=P.custom)==null?void 0:cq.type)==="BADGE"||((dq=P.custom)==null?void 0:dq.type)==="badge")&&Z&&(N=Z.map(Aa=>({value:Aa.value,label:s.value==="id"?Aa.labelID:Aa.labelEN,color:Aa.color,variant:Aa.variant}))),{key:P.key,label:s.value==="id"?P.labelID:P.labelEN,width:P.width,align:P.align,sortable:!0,type:(hq=P.custom)==null?void 0:hq.type,condition:N,keyCheckbox:(uq=P.custom)==null?void 0:uq.keyCheckbox}}).filter(P=>P!==null));const H=_.filters||_.filter;H&&Array.isArray(H)&&(M.value=H.map(P=>({...P,props:P.propsFilters||P.props||{}})),M.value.forEach(P=>{k.value[P.model]=""}));const K=_.actionGlobal||_.action;console.log("[DEBUG] loadConfig rawActions:",K),K&&Array.isArray(K)?(v.value=K.map(P=>{const N=P.propsActionGlobal||P.props||{};return{key:N.key,permission:P.permission,label:s.value==="id"?N.labelID||"Action":N.labelEN||"Action",tooltip:s.value==="id"?N.tooltipID||N.labelID:N.tooltipEN||N.labelEN,icon:N.icon,variant:N.variant||"default",bgColor:N.bgColor,textColor:N.textColor,route:N.route,path:N.path,endpoint:N.endpointPropAction||P.endpoint,openDialog:P.openDialog||!1,fieldActionGlobal:(P.fieldActionGlobal||P.field||[]).map(Z=>{const fe=Z.propsFieldGlobal||Z.props||{};return{...Z,props:{...fe,endpoint:fe.endpointComponent||fe.endpoint}}})}}),console.log("[DEBUG] loadConfig headerActions set:",v.value)):console.log("[DEBUG] loadConfig no rawActions found"),_.pagination!==void 0&&(w.value=_.pagination)}};t.watch(()=>o.tableConfig,()=>{de()},{deep:!0,immediate:!0});const ce=t.computed(()=>o.dynamicColumns||o.configKey||o.tableConfig?m.value:o.columns||[]),ue=t.computed(()=>o.hasActions||L.value.length>0),ve=t.computed(()=>R.value||V.value?y.value:o.loading),le=t.computed(()=>!!R.value||!!V.value),X=t.computed(()=>[]),q=_=>{if(console.log("[DEBUG] hasAction called:",{actionCode:_,permissionChecker:!!o.permissionChecker,effectivePath:W.value}),o.permissionChecker){const H=o.permissionChecker(W.value,_);return console.log("[DEBUG] permissionChecker result:",H),H}return X.value.some(H=>H.code===_)},$=(_,H)=>{if(!_.visibilityCondition)return!0;const{field:K,operator:P,value:N}=_.visibilityCondition,Z=F(H,K);switch(P){case"equals":return Z===N;case"notEquals":return Z!==N;case"in":return Array.isArray(N)&&N.includes(Z);case"notIn":return Array.isArray(N)&&!N.includes(Z);case"greaterThan":return Z>N;case"lessThan":return Z<N;case"contains":return String(Z).includes(String(N));default:return!0}},Q=t.computed(()=>{if(console.log("[DEBUG] visibleHeaderActions:",{headerActions:v.value,ignorePermissions:o.ignorePermissions}),v.value.length===0)return v.value;const _=v.value.filter(H=>{if(o.ignorePermissions)return!0;if(!H.permission)return console.log("[DEBUG] Action no permission, showing:",H.label),!0;const K=q(H.permission);return console.log("[DEBUG] Action permission check:",{label:H.label,permission:H.permission,hasPerm:K}),K});return console.log("[DEBUG] Filtered header actions:",_.length),_}),pe=t.computed(()=>L.value.length===0?L.value:L.value.filter(_=>o.ignorePermissions||!_.permission?!0:q(_.permission))),qe=_=>pe.value.filter(H=>$(H,_)),ot=(_,H)=>{var N,Z;if(_.requiredCondition&&((N=_.propCustomCondition)==null?void 0:N.length)>0){const fe=F(H,"status"),xe=_.propCustomCondition.find(Be=>Be.value===fe);if(xe)return xe.bgColor||_.bgColor||"primary"}if(!_.dynamicColor||!_.colorCondition)return _.bgColor||"primary";const K=F(H,_.colorCondition.field),P=(Z=_.colorCondition.conditions)==null?void 0:Z.find(fe=>fe.value===K);return(P==null?void 0:P.bgColor)||_.bgColor||"primary"},Mt=_=>{const H=(_||"left").toLowerCase();return H==="center"?"justify-center":H==="right"?"justify-end":"justify-start"},oa={ToggleLeft:n1,SquarePen:Xe,Trash2:Ii,Eye:cs,CheckCircle:da,Plus:Qs,Download:$s,RefreshCw:us,Search:pr,SlidersHorizontal:a1},_a=_=>_?Gt[_]?Gt[_]:oa[_]||null:null,xt=t.computed(()=>le.value?p.value.map((_,H)=>({..._,no:(d.value-1)*h.value+H+1})):_e.value),$t=t.computed(()=>le.value?f.value:te.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:_}),F=(_,H)=>{if(!(!_||!H))return H in _?_[H]:H.split(".").reduce((K,P)=>K&&K[P],_)},te=t.computed(()=>{if(le.value)return[];if(!c.value)return o.data;const _=c.value.toLowerCase();return o.data.filter(H=>ce.value.some(K=>{const P=F(H,K.key);return P==null?!1:String(P).toLowerCase().includes(_)}))}),he=t.computed(()=>le.value?[]:u.value.key?[...te.value].sort((H,K)=>{const P=F(H,u.value.key),N=F(K,u.value.key);if(P===N)return 0;let Z=0;return typeof P=="number"&&typeof N=="number"?Z=P-N:Z=String(P).localeCompare(String(N)),u.value.direction==="asc"?Z:-Z}):te.value),_e=t.computed(()=>{if(le.value)return[];const _=(d.value-1)*h.value,H=_+h.value;return he.value.slice(_,H).map((K,P)=>({...K,no:_+P+1}))}),Pe=t.computed(()=>le.value?Object.values(k.value).some(_=>!!_):!!c.value),G=[10,25,50,100],J=()=>{le.value&&(k.value={...k.value,keyword:c.value},d.value=1,We())};let ae;const ye=()=>{o.enableQuickSearch&&(clearTimeout(ae),ae=setTimeout(()=>{J()},500))};let ze;const ra=()=>{clearTimeout(ze),ze=setTimeout(()=>{le.value&&We()},1e3)};t.watch(c,()=>{o.enableQuickSearch&&le.value&&ye()});const We=async()=>{if(le.value&&!(!R.value&&!V.value))try{y.value=!0;const _={page:d.value,perPage:h.value,...k.value,...o.apiParams};c.value&&(_.keyword=c.value),Object.keys(_).forEach(K=>{(_[K]===""||_[K]===null||_[K]===void 0)&&delete _[K]});let H;R.value?H=await i(R.value,Y.value,_):V.value&&(H=await i(V.value,z.value,_)),tq(H)}catch(_){console.error("DataTable fetch error",_),y.value=!1}},tq=_=>{console.log("DataTable handleResponseData:",_),_&&(o.dynamicColumns&&_.columns&&Array.isArray(_.columns)&&(m.value=_.columns.map(H=>({key:H.key||H.field||H.name,label:H.label||H.header||H.name,width:H.width,align:H.align||"LEFT",sortable:H.sortable!==!1,type:H.type,condition:H.condition,format:H.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(ae),clearTimeout(ze)});const yS=()=>{Object.keys(k.value).forEach(_=>{k.value[_]=""}),c.value="",d.value=1,We()},aq=()=>{d.value=1,We()},fS=(_,H)=>{const K=F(_,H.key);let P={variant:"secondary",class:"",label:K};if(H.condition){const N=H.condition.find(Z=>{const fe=(xe,Be)=>typeof xe=="string"&&typeof Be=="string"?xe.toLowerCase().trim()===Be.toLowerCase().trim():xe==Be;return typeof K=="object"&&K!==null?fe(Z.value,K.code)||fe(Z.value,K.id):fe(Z.value,K)});if(N){if(N.variant&&(P.variant=N.variant),P.label=N.label||(typeof K=="object"?K.name||K.code:K),N.color){const Z=N.color.toLowerCase(),fe=P.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[Z]&&(P.class=Be[Z]):Ge[Z]?P.variant=Ge[Z]:xe[Z]&&(P.class=xe[Z])}}else P.label=typeof K=="object"?(K==null?void 0:K.name)||(K==null?void 0:K.code)||"-":K}else P.label=typeof K=="object"?(K==null?void 0:K.name)||(K==null?void 0:K.code)||"-":K;return P},nq=_=>{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",_))},oq=_=>{h.value=_,d.value=1,le.value&&We()},rq=_=>{const H=Math.random()*15+75;if(_.width){const K=parseInt(String(_.width));return K<100?`${Math.floor(K*(Math.random()*.2+.7))}px`:`${H}%`}return`${H}%`},d_=()=>{c.value="",k.value={},d.value=1,We()},iq=_=>{var H;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=_,D.value=null,b.value={};const K=_.fieldActionGlobal||_.field||[];K.length&&K.forEach(P=>{var fe;const N=_.endpoint||((fe=_.propsActionGlobal)==null?void 0:fe.endpointPropAction)||_.propsActionGlobal,Z=N!=null&&N.keyParam&&N.keyParam.length>0?N.keyParam[0]:null;Z&&P.model===Z||!Z&&/^(id|ids|idAuditTrail)/i.test(P.model)?b.value[P.model]=B.value:b.value[P.model]||(b.value[P.model]="")}),S.value=!0}else r("action",{action:((H=_.propsActionCustom)==null?void 0:H.key)||_.key||"create",row:null,selection:B.value})},sq=(_,H)=>{if(_.requireConfirm){x.value={button:_,row:H},C.value=!0;return}if(_.openDialog){I.value=_,D.value=H,b.value={};const K=ce.value.find(N=>N.type==="CHECKBOX"),P=(K==null?void 0:K.keyCheckbox)||"id";_.fieldActionCustom&&_.fieldActionCustom.forEach(N=>{/^(id|ids|idAuditTrail)/i.test(N.model)?b.value[N.model]=[H[P]]:b.value[N.model]=""}),S.value=!0;return}h_(_,H)},h_=(_,H)=>{if(_.route){if(_.path){const P=_.route.startsWith("/")?_.route:"/"+_.route;sessionStorage.setItem(`layout_${P}`,_.path)}let K=_.route;K.includes(":")?K=K.replaceAll(/:([a-zA-Z0-9_]+)/g,(P,N)=>H[N]||H.id||N):H.id&&(K=`${K.replace(/\/$/,"")}/${H.id}`),_.path&&_.path,r("navigate",{route:K,path:_.path})}else if(_.endpoint&&_.endpoint.apiUrl){y.value=!0;const{apiUrl:K}=Ke(),P=_.endpoint.apiUrl,N=_.endpoint.apiMethod||"POST",Z={};_.endpoint.keyParam&&Array.isArray(_.endpoint.keyParam)&&_.endpoint.keyParam.forEach((fe,xe)=>{const Be=_.endpoint.model&&xe===0?_.endpoint.model:fe;H[fe]!==void 0&&(Z[Be]=H[fe])}),Object.keys(Z).length===0&&H.id&&(Z.id=H.id),K(P,N,Z).then(()=>{We(),r("action",{action:_.action||"success",row:H})}).catch(fe=>{console.error("Action Failed",fe)}).finally(()=>{y.value=!1})}else r("action",{action:_.action,row:H})},u_=()=>{x.value&&(h_(x.value.button,x.value.row),lq())},zQ=()=>{var _,H;if(I.value){const K=I.value,P=K.endpoint||((_=K.propsActionGlobal)==null?void 0:_.endpointPropAction)||K.propsActionGlobal;let N=(P==null?void 0:P.model)||(P!=null&&P.keyParam&&P.keyParam.length>0?P.keyParam[0]:null);if(!N){const Be=(K.fieldActionGlobal||K.fieldActionCustom||K.field||[]).find(Ge=>/^(id|ids|idAuditTrail)/i.test(Ge.model));N=Be?Be.model:"ids"}let Z=null,fe=!1;if(D.value){const xe=ce.value.find(rt=>rt.type==="CHECKBOX"),Be=(xe==null?void 0:xe.keyCheckbox)||"id",Ge=D.value[Be];P!=null&&P.apiUrl&&(Z={...b.value},Z[N]||(Z[N]=[Ge]),fe=!0)}else P!=null&&P.apiUrl&&(Z={...b.value},Z[N]||(Z[N]=B.value||[]),fe=!0);if(fe&&Z&&(P!=null&&P.apiUrl)){const{apiUrl:xe}=Ke(),Be=P.apiUrl,Ge=P.apiMethod||"POST";xe(Be,Ge,Z).then(()=>{S.value=!1,D.value||(B.value=[]),We(),r("action",{action:"success",row:null})}).catch(rt=>{console.error("Action Failed",rt)})}else if(D.value){const xe=ce.value.find(mS=>mS.type==="CHECKBOX"),Be=(xe==null?void 0:xe.keyCheckbox)||"id",Ge=D.value[Be],rt={...b.value};rt[N]||(rt[N]=[Ge]),r("action",{action:I.value.action,row:rt}),S.value=!1}else{const xe={...b.value};xe[N]||(xe[N]=B.value);const Be={action:((H=I.value.propsActionGlobal)==null?void 0:H.key)||I.value.key,row:xe,selection:B.value};r("action",Be),S.value=!1}}},lq=()=>{C.value=!1,x.value=null},VQ=t.computed(()=>x.value?x.value.button.confirmTitle||"Confirm":""),qQ=t.computed(()=>x.value?x.value.button.confirmMessage||"Confirm":"");e({fetchData:We,filters:k,resetFilters:yS,handleRefresh:d_});const kS=t.ref(""),PQ=_=>{if(!_)return"";const H=_.endpoint||_.endpointGlobal||{};return JSON.stringify({url:H.apiUrl||_.apiUrl,module:H.apiModule||_.apiModule,action:H.apiAction||_.apiAction,method:H.apiMethod||_.apiMethod,params:_.apiParams,socket:H.socket||_.socketEndpoint,socketParams:_.socketParams})};return t.watch(()=>o.tableConfig,()=>{if(o.tableConfig){de();const _=PQ(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(()=>v.value,_=>{console.log("[DEBUG] headerActions changed:",_.length,"items");const H=Q.value;console.log("[DEBUG] visibleHeaderActions evaluated:",H.length,"items")},{deep:!0}),t.onMounted(()=>{de(),le.value&&(o.tableConfig||(y.value=!0,We()))}),(_,H)=>{var K;return t.openBlock(),t.createElementBlock("div",jY,[t.createElementVNode("div",OY,[t.createElementVNode("div",FY,[a.nested?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",RY,[t.createElementVNode("div",NY,[t.createVNode(t.unref(pr),{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":H[0]||(H[0]=P=>c.value=P),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(J,["enter"])},null,8,["modelValue"])]),M.value.length>0?(t.openBlock(),t.createElementBlock("div",$Y,[t.createVNode(MY,null,{trigger:t.withCtx(()=>[t.createVNode(xs,{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",XY,[t.renderSlot(_.$slots,"filter-footer",{fetch:We,reset:yS})])]),default:t.withCtx(()=>[t.createElementVNode("div",UY,[t.renderSlot(_.$slots,"filter-form",{filters:k.value},()=>[M.value.length>0?(t.openBlock(),t.createElementBlock("div",WY,[t.createElementVNode("div",GY,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(oe.value,(P,N)=>(t.openBlock(),t.createElementBlock("div",{key:N,class:t.normalizeClass(ee(P.column))},[t.createVNode(YV,{field:P,modelValue:k.value[P.model],"onUpdate:modelValue":Z=>k.value[P.model]=Z},null,8,["field","modelValue","onUpdate:modelValue"])],2))),128))])])):t.createCommentVNode("",!0)]),M.value.length>0?(t.openBlock(),t.createElementBlock("div",KY,[t.createVNode(t.unref(Ee),{variant:"outline",onClick:yS,disabled:ve.value,class:"flex-1 w-full"},{default:t.withCtx(()=>[...H[8]||(H[8]=[t.createTextVNode(" Reset ",-1)])]),_:1},8,["disabled"]),t.createVNode(t.unref(Ee),{onClick:aq,disabled:ve.value,class:"flex-1 w-full"},{default:t.withCtx(()=>[...H[9]||(H[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",ZY)):t.createCommentVNode("",!0),a.nested?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(xs,{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(us),{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(Q.value,(P,N)=>(t.openBlock(),t.createBlock(xs,{key:N,icon:P.icon,text:P.label,tooltip:P.tooltip,variant:P.variant,"bg-color":P.bgColor,"text-color":P.textColor,class:"gap-2 h-9 shadow-lg shadow-primary-500/20 border-none text-xs font-medium",onClick:Z=>iq(P)},null,8,["icon","text","tooltip","variant","bg-color","text-color","onClick"]))),128)),t.renderSlot(_.$slots,"header-actions")],2)])]),t.createElementVNode("div",YY,[t.createElementVNode("table",QY,[t.createElementVNode("thead",JY,[t.createElementVNode("tr",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(ce.value,P=>(t.openBlock(),t.createElementBlock("th",{key:P.key,class:t.normalizeClass([P.align?`text-${P.align.toLowerCase()}`:"",P.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(P.width?{width:P.width}:{}),onClick:N=>P.sortable&&nq(P.key)},[P.type==="CHECKBOX"?(t.openBlock(),t.createElementBlock("div",tQ,[t.createVNode(q1,{"model-value":A.value,indeterminate:E.value,"onUpdate:modelValue":H[1]||(H[1]=N=>U(!!N)),onClick:H[2]||(H[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(P.align)])},[t.createElementVNode("span",null,t.toDisplayString(P.label),1)],2))],14,eQ))),128)),ue.value?(t.openBlock(),t.createElementBlock("th",aQ,[...H[10]||(H[10]=[t.createElementVNode("div",{class:"flex items-center justify-center w-full"}," Actions ",-1)])])):t.createCommentVNode("",!0)])]),t.createElementVNode("tbody",nQ,[ve.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(h.value,P=>(t.openBlock(),t.createElementBlock("tr",{key:`skeleton-${P}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(ce.value,N=>{var Z,fe;return t.openBlock(),t.createElementBlock("td",{key:N.key,class:t.normalizeClass([N.align?`text-${N.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(N.type??"")||N.condition?"h-5 rounded-full w-20":"h-4 rounded-md",((Z=N.align)==null?void 0:Z.toLowerCase())==="center"?"mx-auto":"",((fe=N.align)==null?void 0:fe.toLowerCase())==="right"?"ml-auto":""]]),style:t.normalizeStyle({width:["badge","BADGE"].includes(N.type??"")||N.condition?void 0:rq(N),backgroundSize:"200% 100%"})},null,6)],2)}),128)),a.hasActions?(t.openBlock(),t.createElementBlock("td",oQ,[...H[11]||(H[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",rQ,[t.createElementVNode("td",{colspan:ce.value.length+(ue.value?1:0),class:"text-center py-16"},[t.createElementVNode("div",sQ,[t.createElementVNode("div",null,[t.createElementVNode("p",lQ,t.toDisplayString(Pe.value?"No search results":"No data"),1),t.createElementVNode("p",cQ,t.toDisplayString(Pe.value?"Try changing keywords":"No data added"),1)])])],8,iQ)])):(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:2},t.renderList(xt.value,(P,N)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:N},[t.createElementVNode("tr",dQ,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(ce.value,Z=>(t.openBlock(),t.createElementBlock("td",{key:Z.key,class:t.normalizeClass([Z.align?`text-${Z.align}`:"text-left","px-3 py-0.5 text-sm text-neutral-900 dark:text-neutral-100"])},[t.renderSlot(_.$slots,`cell-${Z.key}`,{row:P,value:F(P,Z.key)},()=>[Z.type==="CHECKBOX"?(t.openBlock(),t.createElementBlock("div",hQ,[t.createVNode(q1,{"model-value":T(P),"onUpdate:modelValue":fe=>j(P,!!fe),onClick:H[3]||(H[3]=t.withModifiers(()=>{},["stop"]))},null,8,["model-value","onUpdate:modelValue"])])):Z.type==="badge"||Z.type==="BADGE"||Z.condition?(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["flex items-center gap-1.5 flex-wrap md:flex-nowrap",[Z.align?`justify-${Z.align}`:"justify-start"]])},[t.createVNode(t.unref(Ia),{variant:fS(P,Z).variant,class:t.normalizeClass([fS(P,Z).class,"whitespace-nowrap truncate max-w-[150px] inline-block"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(fS(P,Z).label),1)]),_:2},1032,["variant","class"])],2)):Z.key==="no"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[t.createTextVNode(t.toDisplayString((d.value-1)*h.value+N+1),1)],64)):Z.type==="date"||Z.type==="DATE"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:3},[t.createTextVNode(t.toDisplayString(F(P,Z.key)?t.unref(dY)(F(P,Z.key),"long"):"-"),1)],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:4},[t.createTextVNode(t.toDisplayString(Z.format?Z.format(F(P,Z.key)):F(P,Z.key)),1)],64))])],2))),128)),ue.value?(t.openBlock(),t.createElementBlock("td",uQ,[t.renderSlot(_.$slots,"actions",{row:P,buttons:qe(P),getButtonColor:ot,getIconComponent:_a},()=>[qe(P).length>0?(t.openBlock(),t.createElementBlock("div",pQ,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(qe(P),(Z,fe)=>(t.openBlock(),t.createElementBlock("div",{key:fe,class:"group relative"},[t.createVNode(xs,{tooltip:Z.tooltip||Z.label,icon:_a(Z.icon),size:"icon",variant:Z.variant||"ghost","bg-color":ot(Z,P),onClick:xe=>sq(Z,P)},null,8,["tooltip","icon","variant","bg-color","onClick"])]))),128))])):t.createCommentVNode("",!0)])])):t.createCommentVNode("",!0)]),_.$slots["expanded-row"]?(t.openBlock(),t.createElementBlock("tr",yQ,[t.createElementVNode("td",{colspan:ce.value.length+(ue.value?1:0),class:"px-0 py-0"},[t.renderSlot(_.$slots,"expanded-row",{row:P,index:N})],8,fQ)])):t.createCommentVNode("",!0)],64))),128))])])]),!ve.value&&xt.value.length>0&&a.showPagination&&w.value?(t.openBlock(),t.createElementBlock("div",kQ,[t.createElementVNode("div",mQ,[t.createVNode(t.unref(zY),{"model-value":String(h.value),"onUpdate:modelValue":H[4]||(H[4]=P=>oq(Number(P)))},{default:t.withCtx(()=>[t.createVNode(t.unref(TY),{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(HY),{placeholder:String(h.value)},null,8,["placeholder"])]),_:1}),t.createVNode(t.unref(VY),null,{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(G,P=>t.createVNode(t.unref(PY),{key:P,value:String(P)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(P),1)]),_:2},1032,["value"])),64))]),_:1})]),_:1},8,["model-value"]),H[16]||(H[16]=t.createElementVNode("div",{class:"h-5 w-px bg-zinc-300 dark:bg-zinc-600"},null,-1)),t.createElementVNode("span",gQ,[H[12]||(H[12]=t.createTextVNode(" Showing ",-1)),t.createElementVNode("span",bQ,t.toDisplayString(D1.value),1),H[13]||(H[13]=t.createTextVNode(" to ",-1)),t.createElementVNode("span",MQ,t.toDisplayString(E1.value),1),H[14]||(H[14]=t.createTextVNode(" of ",-1)),t.createElementVNode("span",xQ,t.toDisplayString($t.value),1),H[15]||(H[15]=t.createTextVNode(" items ",-1))])]),t.createElementVNode("div",wQ,[t.createVNode(t.unref(vY),{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(CY),{class:"flex items-center gap-1"},{default:t.withCtx(({items:P})=>[t.createVNode(t.unref(SY),{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(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:cursor-not-allowed"},{default:t.withCtx(()=>[t.createVNode(t.unref(cn),{class:"h-4 w-4"})]),_:1}),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(P,(N,Z)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[N.type==="page"?(t.openBlock(),t.createBlock(t.unref(IY),{key:Z,value:N.value,"as-child":""},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee),{class:"w-8 h-8 p-0 text-sm",variant:N.value===d.value?"default":"outline",disabled:N.value===d.value,onClick:fe=>c_(N.value)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(N.value),1)]),_:2},1032,["variant","disabled","onClick"])]),_:2},1032,["value"])):(t.openBlock(),t.createBlock(t.unref(LY),{key:N.type,index:Z},null,8,["index"]))],64))),256)),t.createVNode(t.unref(AY),{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.createVNode(t.unref(_Y),{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":H[5]||(H[5]=P=>C.value=P),title:VQ.value,icon:"AlertCircle","max-width":450,persistent:!1},{actions:t.withCtx(()=>[t.createVNode(t.unref(Ee),{variant:"outline",onClick:lq},{default:t.withCtx(()=>[...H[17]||(H[17]=[t.createTextVNode(" Cancel ",-1)])]),_:1}),t.createVNode(t.unref(Ee),{onClick:u_},{default:t.withCtx(()=>[...H[18]||(H[18]=[t.createTextVNode(" Yes ",-1)])]),_:1})]),default:t.withCtx(()=>[t.createElementVNode("div",vQ,[t.createElementVNode("p",CQ,t.toDisplayString(qQ.value),1)])]),_:1},8,["modelValue","title"]),t.createVNode(lS,{modelValue:S.value,"onUpdate:modelValue":H[7]||(H[7]=P=>S.value=P),title:((K=I.value)==null?void 0:K.label)||"Action",icon:"AlertCircle","max-width":450},{actions:t.withCtx(()=>[t.createVNode(t.unref(Ee),{variant:"outline",onClick:H[6]||(H[6]=P=>S.value=!1)},{default:t.withCtx(()=>[...H[19]||(H[19]=[t.createTextVNode(" Cancel ",-1)])]),_:1}),t.createVNode(t.unref(Ee),{onClick:zQ},{default:t.withCtx(()=>[...H[20]||(H[20]=[t.createTextVNode(" Save ",-1)])]),_:1})]),default:t.withCtx(()=>{var P,N;return[t.createElementVNode("div",LQ,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(((P=I.value)==null?void 0:P.fieldActionCustom)||((N=I.value)==null?void 0:N.fieldActionGlobal)||[],(Z,fe)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:fe},[Z.isHidden?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(ee(Z.column))},[t.createVNode(YV,{field:Z,modelValue:b.value[Z.model],"onUpdate:modelValue":xe=>b.value[Z.model]=xe},null,8,["field","modelValue","onUpdate:modelValue"])],2))],64))),128))])]}),_:1},8,["modelValue","title"])])}}}),SQ={class:"h-full flex flex-col"},IQ={key:1,class:"flex-1 flex items-center justify-center"},_Q={key:2,class:"flex-1 flex items-center justify-center text-red-500"},QV=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",SQ,[!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",IQ,[...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",_Q," Failed to load configuration for "+t.toDisplayString(n.layoutCode),1))]))}}),JV=t.defineCustomElement(ZV),eq=t.defineCustomElement(QV);typeof customElements<"u"&&(customElements.get("micro-dynamic-form")||customElements.define("micro-dynamic-form",JV),customElements.get("micro-dynamic-datatable")||customElements.define("micro-dynamic-datatable",eq));const AQ=[qS,j_,xs,rI,gV,q1,bV,GI,lS,EV,cS,TV,QI,HV,e_,a_,t_,n_,jV,r_,OV,FV,RV,NV,i_,s_,l_,dS,GV,KV,XV,uS],BQ={install(a,e={}){e&&Object.keys(e).length>0&&gq(e),AQ.forEach(n=>{n.name&&a.component(n.name,n)})}};ne.AutoLayoutDatatable=QV,ne.AutoLayoutForm=ZV,ne.DCodeAutoComplete=qS,ne.DCodeButton=xs,ne.DCodeCard=rI,ne.DCodeChart=gV,ne.DCodeCheckbox=q1,ne.DCodeCurrencyField=bV,ne.DCodeDatePicker=GI,ne.DCodeDialog=lS,ne.DCodeDialogCloseBtn=EV,ne.DCodeDropzone=cS,ne.DCodeFileField=TV,ne.DCodeFileResult=QI,ne.DCodeIconDropdown=HV,ne.DCodeImageCropperDialog=e_,ne.DCodeImageField=a_,ne.DCodeImageResult=t_,ne.DCodeInfiniteAutoComplete=j_,ne.DCodeLabel=n_,ne.DCodeMultiSelect=jV,ne.DCodeOtpInput=r_,ne.DCodeProgress=OV,ne.DCodeProgressBar=FV,ne.DCodeRadio=RV,ne.DCodeRadioCustom=NV,ne.DCodeSlider=i_,ne.DCodeSwitch=s_,ne.DCodeTextField=l_,ne.DCodeTextarea=dS,ne.DCodeTimelineWithIcons=GV,ne.DCodeUploadFile=KV,ne.DCodeWizard=XV,ne.DataTable=uS,ne.DataTableComponent=uS,ne.MicroDynamicDatatable=eq,ne.MicroDynamicForm=JV,ne.cn=be,ne.default=BQ,Object.defineProperties(ne,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
8595
+ `,""),$=Number(q);return Number.isFinite($)?$:null}return X},T=X=>{m.value=X,o("update:modelValue",E(X))},U=(X,q)=>{const $=y(q);w.value=!0,X.value=$,T($),queueMicrotask(()=>w.value=!1)},j=(X,q)=>{const $=X.selectionStart??X.value.length,Q=X.selectionEnd??X.value.length;if(p.value>0){const pe=X.value.length-(Q-$),qe=p.value-pe;if(qe<=0)return;q=q.slice(0,qe)}X.setRangeText(q,$,Q,"end"),U(X,B(X.value))},O=X=>{var Q;if(!A||g.value||w.value||!((Q=X.inputType)!=null&&Q.startsWith("insert")))return;const q=X.data;if(q==null)return;const $=B(q);$!==q&&(X.preventDefault(),$.length>0&&j(A,$))},R=X=>{var Q;if(!A||g.value||w.value)return;const q=((Q=X.clipboardData)==null?void 0:Q.getData("text"))??"",$=B(q);$!==q&&(X.preventDefault(),$.length>0&&j(A,$))},Y=async X=>{if(!A||g.value||w.value)return;const q=X.target,$=q.value??"",Q=B($);if(Q===$){const pe=q.selectionStart??Q.length,qe=q.selectionEnd??Q.length;U(q,Q),await t.nextTick();try{q.setSelectionRange(pe,qe)}catch{}T(Q)}else{const pe=q.selectionStart??Q.length,qe=q.selectionEnd??Q.length;U(q,Q),await t.nextTick();try{q.setSelectionRange(pe,qe)}catch{}}},z=()=>g.value=!0,V=()=>{if(g.value=!1,!A)return;const X=A.value??"",q=B(X);q===X?T(q):U(A,q)};t.onMounted(()=>{if(A=document.getElementById(d.value),!A)return;A.addEventListener("beforeinput",O),A.addEventListener("paste",R),A.addEventListener("input",Y),A.addEventListener("compositionstart",z),A.addEventListener("compositionend",V);const X=A.value??"",q=B(X);q===X?T(q):U(A,q)}),t.onBeforeUnmount(()=>{A&&(A.removeEventListener("beforeinput",O),A.removeEventListener("paste",R),A.removeEventListener("input",Y),A.removeEventListener("compositionstart",z),A.removeEventListener("compositionend",V),A=null)});const W=()=>{m.value="",A&&(A.value=""),o("update:modelValue",null),o("clear")},oe=t.computed(()=>m.value.length),ee=t.computed(()=>r.showCharCount?p.value>0:!1),de=t.computed(()=>ee.value&&oe.value>0),ce=t.computed(()=>`${oe.value} / ${p.value}`),ue=t.computed(()=>!!r.error),ve=t.computed(()=>{const X=n.rows,q=typeof X=="number"?X:Number.parseInt(String(X??""),10);return Number.isFinite(q)&&q>0?q:3}),le=t.computed(()=>({height:`${ve.value*24+16}px`}));return(X,q)=>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",pX)):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(Bs),{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",yX,"*")):t.createCommentVNode("",!0)]),_:1},8,["for"])):t.createCommentVNode("",!0),t.createElementVNode("div",fX,[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,kX),k.value?(t.openBlock(),t.createElementBlock("div",mX,[t.createElementVNode("button",{type:"button",class:"text-muted-foreground hover:text-foreground text-sm leading-none","aria-label":"Clear textarea",onClick:W}," ✕ ")])):t.createCommentVNode("",!0),de.value&&!ue.value?(t.openBlock(),t.createElementBlock("p",gX,t.toDisplayString(ce.value),1)):t.createCommentVNode("",!0)]),ue.value?(t.openBlock(),t.createElementBlock("p",bX,t.toDisplayString(r.error),1)):t.createCommentVNode("",!0)],64))],10,uX)),[[t.vShow,s.value]])}}),$V=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(MX)({size:a.size,shape:a.shape}),e.class))},{default:t.withCtx(()=>[t.renderSlot(n.$slots,"default")]),_:3},8,["class"]))}}),UV=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))}}),WV=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))}}),MX=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"]))}}),xX={class:"bg-card text-card-foreground"},wX={class:"pb-6 px-3"},vX={key:0,class:"flex justify-center p-8"},CX={key:1,class:"p-8 text-center text-red-500"},LX={key:2,class:"relative"},SX={class:"space-y-6"},IX={class:"rounded-xl border bg-card text-card-foreground shadow"},_X={class:"p-4"},AX={class:"flex items-center justify-between gap-3"},BX={class:"font-medium"},zX={class:"text-xs text-muted-foreground"},VX={class:"mt-1 text-sm text-muted-foreground"},qX={class:"text-foreground"},PX={class:"text-foreground"},DX={class:"mt-1 text-xs text-muted-foreground"},EX={key:0,class:"mt-3 flex items-center gap-2 text-sm"},TX={class:"flex items-center justify-between gap-3"},HX={class:"font-medium"},jX={class:"text-xs text-muted-foreground"},OX={class:"mt-2 text-sm text-muted-foreground"},FX={class:"flex flex-wrap items-center justify-between gap-3"},RX={class:"flex items-center gap-3"},NX={class:"leading-tight"},$X={class:"text-sm font-medium"},UX={class:"text-xs text-muted-foreground"},WX={class:"flex items-center gap-2"},GX={key:2,class:"flex flex-col gap-3 sm:flex-row sm:items-start"},KX={class:"h-16 w-16 shrink-0 rounded-lg bg-muted flex items-center justify-center"},XX=["src"],ZX={class:"flex-1"},YX={class:"flex items-center justify-between gap-3"},QX={class:"font-medium"},JX={class:"text-xs text-muted-foreground"},eZ={class:"mt-1 text-sm text-muted-foreground"},tZ={class:"text-left sm:text-center"},aZ={class:"text-xs text-muted-foreground"},nZ={class:"text-left sm:text-center"},oZ={class:"text-xs text-muted-foreground"},rZ={class:"text-left sm:text-center"},iZ={class:"text-xs text-muted-foreground"},sZ={class:"flex items-center justify-between gap-3"},lZ={class:"font-medium"},cZ={class:"text-xs text-muted-foreground"},dZ={class:"mt-2 text-sm text-muted-foreground"},hZ={class:"mt-3 flex items-center gap-3"},uZ={class:"text-sm font-medium"},pZ={class:"flex items-start justify-between gap-3"},yZ={class:"font-medium"},fZ={class:"mt-3 grid gap-2 text-sm"},kZ={class:"flex items-center justify-between gap-3"},mZ={class:"flex items-center gap-2 text-muted-foreground"},gZ={class:"font-medium"},bZ={class:"flex items-center justify-between gap-3"},MZ={class:"flex items-center gap-2 text-muted-foreground"},xZ={class:"font-medium"},wZ={class:"flex items-center justify-between gap-3"},vZ={class:"flex items-center gap-2 text-muted-foreground"},CZ={class:"font-medium"},LZ={class:"flex items-center justify-between"},SZ={class:"flex items-center gap-2"},IZ={class:"flex items-start justify-between gap-3"},_Z={class:"flex items-center gap-2"},AZ={class:"font-medium"},BZ={class:"mt-2 text-sm text-muted-foreground"},zZ={key:0,class:"mt-1 text-sm text-muted-foreground"},VZ={class:"flex flex-wrap items-center justify-between gap-3"},qZ={class:"flex items-center gap-2"},PZ={class:"text-xs text-muted-foreground"},GV=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:ir,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",xX,[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",wX,[r.value?(t.openBlock(),t.createElementBlock("div",vX,[...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",CX,t.toDisplayString(i.value),1)):(t.openBlock(),t.createElementBlock("div",LX,[y[7]||(y[7]=t.createElementVNode("div",{class:"absolute left-4 top-0 h-full w-px bg-border"},null,-1)),t.createElementVNode("div",SX,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value,(g,w)=>(t.openBlock(),t.createElementBlock("div",{key:w,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",IX,[t.createElementVNode("div",_X,[g.type==="flight"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createElementVNode("div",AX,[t.createElementVNode("p",BX,t.toDisplayString(g.title),1),t.createElementVNode("p",zX,t.toDisplayString(g.meta),1)]),t.createElementVNode("p",VX,[t.createElementVNode("span",qX,t.toDisplayString(g.from),1),t.createVNode(t.unref(Ts),{class:"mx-2 inline h-4 w-4"}),t.createElementVNode("span",PX,t.toDisplayString(g.to),1)]),t.createElementVNode("p",DX,t.toDisplayString(g.time),1),g.fileName?(t.openBlock(),t.createElementBlock("div",EX,[t.createVNode(t.unref(ds),{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",TX,[t.createElementVNode("p",HX,t.toDisplayString(g.title),1),t.createElementVNode("p",jX,t.toDisplayString(g.meta),1)]),t.createElementVNode("p",OX,t.toDisplayString(g.desc),1),t.createVNode(t.unref(hS),{class:"my-4"}),t.createElementVNode("div",FX,[t.createElementVNode("div",RX,[t.createVNode(t.unref($V),{class:"h-10 w-10"},{default:t.withCtx(()=>[g.avatarUrl?(t.openBlock(),t.createBlock(t.unref(WV),{key:0,src:g.avatarUrl},null,8,["src"])):t.createCommentVNode("",!0),t.createVNode(t.unref(UV),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(u(g.personName??"")),1)]),_:2},1024)]),_:2},1024),t.createElementVNode("div",NX,[t.createElementVNode("p",$X,t.toDisplayString(g.personName),1),t.createElementVNode("p",UX,t.toDisplayString(g.personRole),1)])]),t.createElementVNode("div",WX,[t.createVNode(t.unref(Ee),{size:"icon",variant:"ghost"},{default:t.withCtx(()=>[t.createVNode(t.unref(hs),{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",GX,[t.createElementVNode("div",KX,[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,XX)):(t.openBlock(),t.createBlock(f,{key:1,class:"h-5 w-5 text-muted-foreground"}))]),t.createElementVNode("div",ZX,[t.createElementVNode("div",YX,[t.createElementVNode("p",QX,t.toDisplayString(g.title),1),t.createElementVNode("p",JX,t.toDisplayString(g.meta),1)]),t.createElementVNode("p",eZ,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",tZ,[y[1]||(y[1]=t.createElementVNode("p",{class:"text-sm font-medium"},"Customer",-1)),t.createElementVNode("p",aZ,t.toDisplayString(g.customer),1)]),t.createElementVNode("div",nZ,[y[2]||(y[2]=t.createElementVNode("p",{class:"text-sm font-medium"},"Price",-1)),t.createElementVNode("p",oZ,t.toDisplayString(g.price),1)]),t.createElementVNode("div",rZ,[y[3]||(y[3]=t.createElementVNode("p",{class:"text-sm font-medium"},"Quantity",-1)),t.createElementVNode("p",iZ,t.toDisplayString(g.qty),1)])],2)])])):g.type==="design"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:3},[t.createElementVNode("div",sZ,[t.createElementVNode("p",lZ,t.toDisplayString(g.title),1),t.createElementVNode("p",cZ,t.toDisplayString(g.meta),1)]),t.createElementVNode("p",dZ,t.toDisplayString(g.desc),1),t.createElementVNode("div",hZ,[t.createVNode(t.unref($V),{class:"h-10 w-10"},{default:t.withCtx(()=>[g.avatarUrl?(t.openBlock(),t.createBlock(t.unref(WV),{key:0,src:g.avatarUrl},null,8,["src"])):t.createCommentVNode("",!0),t.createVNode(t.unref(UV),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(u(g.personName??"")),1)]),_:2},1024)]),_:2},1024),t.createElementVNode("p",uZ,t.toDisplayString(g.personName),1)])],64)):g.type==="server"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:4},[t.createElementVNode("div",pZ,[t.createElementVNode("p",yZ,t.toDisplayString(g.title),1),t.createVNode(t.unref(Ia),{variant:"destructive",class:"h-6"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(g.chipText??""),1)]),_:2},1024)]),t.createElementVNode("div",fZ,[t.createElementVNode("div",kZ,[t.createElementVNode("div",mZ,[t.createVNode(t.unref(Ws),{class:"h-4 w-4"}),y[4]||(y[4]=t.createElementVNode("span",null,"IP Address",-1))]),t.createElementVNode("span",gZ,t.toDisplayString(g.ip),1)]),t.createElementVNode("div",bZ,[t.createElementVNode("div",MZ,[t.createVNode(t.unref(ls),{class:"h-4 w-4"}),y[5]||(y[5]=t.createElementVNode("span",null,"CPU",-1))]),t.createElementVNode("span",xZ,t.toDisplayString(g.cpu),1)]),t.createElementVNode("div",wZ,[t.createElementVNode("div",vZ,[t.createVNode(t.unref(ls),{class:"h-4 w-4"}),y[6]||(y[6]=t.createElementVNode("span",null,"Memory",-1))]),t.createElementVNode("span",CZ,t.toDisplayString(g.memory),1)])]),t.createVNode(t.unref(hS),{class:"my-4"}),t.createElementVNode("div",LZ,[t.createElementVNode("div",SZ,[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",IZ,[t.createElementVNode("div",_Z,[t.createVNode(m,{class:"h-4 w-4 text-muted-foreground"}),t.createElementVNode("p",AZ,t.toDisplayString(g.title),1)]),t.createVNode(t.unref(Ia),{variant:"destructive",class:"h-6"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(g.chipText),1)]),_:2},1024)]),t.createElementVNode("p",BZ,t.toDisplayString(g.desc1),1),g.desc2?(t.openBlock(),t.createElementBlock("p",zZ,t.toDisplayString(g.desc2),1)):t.createCommentVNode("",!0),t.createVNode(t.unref(hS),{class:"my-4"}),t.createElementVNode("div",VZ,[t.createElementVNode("div",qZ,[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(hs),{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",PZ,"Due date: "+t.toDisplayString(g.due),1)])],64)):t.createCommentVNode("",!0)])])]))),128))])]))])])}}}),DZ={class:"dcode-upload-file"},EZ={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"},TZ={key:0,class:"text-xs text-gray-500 mt-1"},HZ=["accept"],jZ={key:1,class:"text-xs text-red-600 mt-1"},KV=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",DZ,[a.label?(t.openBlock(),t.createBlock(n_,{key:0,label:a.label},null,8,["label"])):t.createCommentVNode("",!0),t.createElementVNode("div",EZ,[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",TZ,t.toDisplayString(a.accept),1)):t.createCommentVNode("",!0),t.createElementVNode("input",{type:"file",class:"hidden",onChange:o,accept:a.accept},null,40,HZ)]),a.errorMessage?(t.openBlock(),t.createElementBlock("p",jZ,t.toDisplayString(a.errorMessage),1)):t.createCommentVNode("",!0)]))}}),OZ=["onClick"],FZ={key:1,class:"mr-2 text-xs font-bold shrink-0 opacity-50"},RZ={class:"font-semibold text-sm whitespace-normal text-center leading-tight"},NZ={key:1},$Z={key:0,class:"text-white"},UZ={key:1},WZ={key:2},GZ=["disabled","onClick"],KZ={key:1,class:"mr-2 text-sm font-bold opacity-70"},XZ={class:"whitespace-normal text-sm text-center leading-tight"},ZZ={class:"flex flex-col flex-1 min-w-0"},YZ={class:"text-sm text-muted-foreground"},QZ={class:"px-1"},JZ=["disabled"],eY=["type"],tY=["disabled"],XV=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 w(b){if(typeof b.tab.fetchData=="function"){const T=await b.tab.fetchData(),U=(T==null?void 0:T.data)??T;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 D=k();let B;if(x.apiUrl)B=await i("","",D,{_url:x.apiUrl,_method:x.apiMethod,_data:x.apiParams??void 0});else{const T={...D,...x.apiParams};B=await i(x.apiModule,x.apiAction,T)}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),D=n.tabs[I];if(!D)return;const B=f(D);if(!(n.cache&&B.loaded&&!x)&&!B.loading){B.loading=!0,B.error=null;try{const A=await w({tabIndex:I,tab:D});B.data=A,B.loaded=!0,o("loaded",{tabIndex:I,tab:D,data:A})}catch(A){const E=typeof(A==null?void 0:A.message)=="string"&&A.message||typeof A=="string"&&A||"Failed to load tab data.";B.error=E,o("error",{tabIndex:I,tab:D,message:E})}finally{B.loading=!1}}}function v(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,D,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,E)=>(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",[E<c.value?"wizard-num-done":"",E===c.value?"wizard-num-active":E>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",NZ,[E<c.value?(t.openBlock(),t.createElementBlock("span",$Z,"✓")):(t.openBlock(),t.createElementBlock("span",UZ,t.toDisplayString(E+1),1))])):(t.openBlock(),t.createElementBlock("span",WZ))],2),t.createElementVNode("span",{class:t.normalizeClass(["text-xs font-semibold whitespace-normal px-2 py-1 rounded transition-colors text-left",E===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,E)=>(t.openBlock(),t.createElementBlock("div",{key:A.key,onClick:T=>v(E),style:t.normalizeStyle({zIndex:a.tabs.length-E}),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",[E>0?"pl-8":"",E===c.value?"wizard-step-active":E<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",FZ,t.toDisplayString(E+1),1)):t.createCommentVNode("",!0),t.createElementVNode("span",RZ,t.toDisplayString(A.title),1)],2),E<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",[E===c.value?"wizard-svg-active":E<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,OZ))),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,E)=>(t.openBlock(),t.createElementBlock("button",{key:A.key,type:"button",disabled:!g(E),onClick:T=>v(E),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&&E===a.tabs.length-1&&"border-r-0",E===c.value?"wizard-btn-active":"wizard-btn-pending",!g(E)&&"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",KZ,t.toDisplayString(E+1),1)):t.createCommentVNode("",!0),t.createElementVNode("span",XZ,t.toDisplayString(A.title),1)],10,GZ))),128))],2))],2)],2),a.isVertical?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(hS),{key:0})),t.createElementVNode("div",ZZ,[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:(D=y[h.value.key])==null?void 0:D.data,loaded:(B=y[h.value.key])==null?void 0:B.loaded,reload:M},()=>[t.createElementVNode("div",YZ,[x[2]||(x[2]=t.createTextVNode(" Slot ",-1)),t.createElementVNode("code",QZ,"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,JZ),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,eY)):(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,tY))],2)):t.createCommentVNode("",!0)])],2)}}}),[["__scopeId","data-v-d10736f3"]]);function aY(){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 nY={class:"w-full"},oY={class:"relative mx-auto min-h-[37.5rem]"},rY={key:"content",class:"w-full"},iY={class:"mb-6"},sY={class:"text-neutral-500 dark:text-neutral-400"},lY={key:"skeleton",class:"w-full"},cY={key:"error",class:"flex items-center justify-center p-20 text-red-500 w-full"},ZV=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}=aY(),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 w=async()=>{var b,x,I;f.value=!0;try{let D=e.layoutCode;o&&o.query&&typeof o.query=="object"&&"code"in o.query&&(D=o.query.code||e.layoutCode);let B=await i(`/api/auto-layout/form/form-dynamic?code=${D}`,"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=${D}`,"GET");if(A.status){const E=Array.isArray(A.data)?A.data[0]:A.data;E&&E.code&&(D=E.code,m.value=D,B=await i(`/api/auto-layout/form/form-dynamic?code=${D}`,"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(E=>{((E.propsForm||E.props||{}).fields||E.fields||[]).forEach(j=>{var R;const O=j.model||((R=j.props)==null?void 0:R.model)||j.key;O&&(A[O]=null)})}),p.value=A,f.value=!1,h.value&&u.value){k.value=!0;try{if((x=y.value.endpointGlobal)!=null&&x.apiUrl){const E=y.value.endpointGlobal.apiUrl,T=y.value.endpointGlobal.apiMethod||"GET",U={id:u.value},j=await s(E,T,U);if(j.status){const O=Array.isArray(j.data)?j.data[0]:j.data;p.value={...p.value,...O}}}else{const E=((I=y.value.endpoint)==null?void 0:I.detailUrl)||`/api/${m.value}/detail/${u.value}`,T=await i(E,"GET");if(T.status){let U=Array.isArray(T.data)?T.data[0]:T.data;if(T.payload){const O={...T.payload};if(Object.keys(O).forEach(R=>{U[R]!==void 0&&U[R]!==null&&(O[R]=U[R])}),!("id"in O)&&U.id){const R=Object.keys(O).find(Y=>Y.startsWith("id")&&Y.length>2&&!O[Y]);R&&(O[R]=U.id)}U=O}const j={...U};Object.keys(p.value).forEach(O=>{if(j[O]===void 0||j[O]===null){if(O.toLowerCase().startsWith("id")&&O.length>2){const Y=O.substring(2).toLowerCase(),z=Array.isArray(T.data)?T.data[0]:T.data,V=Object.keys(z).find(W=>W.toLowerCase()===Y);V&&z[V]&&typeof z[V]=="object"&&"id"in z[V]&&(j[O]=z[V].id)}if(O==="idSupervisor"){const Y=Array.isArray(T.data)?T.data[0]:T.data;Y.supervisorId&&(j[O]=Y.supervisorId)}}}),p.value={...p.value,...j}}}}catch(E){console.error("Failed to fetch record data:",E)}finally{k.value=!1}}}}catch(D){console.error("Failed to load form layout:",D),f.value=!1}},L=async b=>{var x,I,D;try{const B=(D=(I=(x=y.value.sections)==null?void 0:x[0])==null?void 0:I.propsForm)==null?void 0:D.endpointForm,A=y.value.endpointGlobal||y.value.endpoint,E=(B==null?void 0:B.submitUrl)||(A==null?void 0:A.submitUrl)||`/api/generic/${e.layoutCode}`,T=(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(E,T,U),r.back()}catch(B){console.error("Submit failed:",B)}},v=async(b,x)=>{if(b==="cancel"){M();return}const I=x.endpointPropAction||x.propsActionGlobal&&x.propsActionGlobal.endpointPropAction;if(I)try{f.value=!0;const D={...p.value};h.value&&x.model&&u.value&&(D[x.model]=u.value);const B=I.apiUrl,A=I.apiMethod||"POST";(await s(B,A,D)).status&&r.back()}catch(D){console.error("Action failed:",D)}finally{f.value=!1}},M=()=>{r.back()};return t.onMounted(()=>{w()}),t.onUnmounted(()=>{d("")}),(b,x)=>{const I=t.resolveComponent("DynamicForm"),D=t.resolveComponent("AutoLayoutSkeleton");return t.openBlock(),t.createElementBlock("div",nY,[t.createElementVNode("div",oY,[t.createVNode(t.Transition,{name:"fade",mode:"out-in"},{default:t.withCtx(()=>[!f.value&&y.value?(t.openBlock(),t.createElementBlock("div",rY,[t.createElementVNode("div",iY,[t.createElementVNode("p",sY,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:v,class:"w-full"},null,8,["schema","model","is-edit-mode","loading"])])):f.value?(t.openBlock(),t.createElementBlock("div",lY,[t.createVNode(D)])):(t.openBlock(),t.createElementBlock("div",cY," Failed to load form configuration for "+t.toDisplayString(e.layoutCode),1))]),_:1})])])}}}),[["__scopeId","data-v-fd9d71a6"]]),dY=(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)},hY=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(BA),t.normalizeProps(t.guardReactiveProps(t.unref(r))),{default:t.withCtx(()=>[t.renderSlot(i.$slots,"default")]),_:3},16))}}),uY=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(NA),null,{default:t.withCtx(()=>[t.createVNode(t.unref(RA),{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(OA),t.mergeProps({class:t.unref(be)(t.unref(gY)({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}))}}),pY=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(FA),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"]))}}),yY=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))}}),fY=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))}}),kY=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($A),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"]))}}),mY=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))}}),gY=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"}}),bY={class:"flex-1 overflow-hidden"},MY=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(hY),null,{default:t.withCtx(()=>[t.createVNode(t.unref(mY),{"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(pr),{class:"w-4 h-4"}),n[0]||(n[0]=t.createElementVNode("span",null,"Pencarian",-1))]),_:1})])]),_:3}),t.createVNode(t.unref(uY),{class:"flex flex-col h-full"},{default:t.withCtx(()=>[t.createVNode(t.unref(fY),{class:"flex-shrink-0"},{default:t.withCtx(()=>[t.createVNode(t.unref(kY),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.title),1)]),_:1}),t.createVNode(t.unref(pY),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(a.description),1)]),_:1})]),_:1}),t.createElementVNode("div",bY,[t.renderSlot(e.$slots,"default")]),t.createVNode(t.unref(yY),{class:"flex-shrink-0"},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"footer")]),_:3})]),_:3})]),_:3}))}}),xY={key:0},wY=["value","name"],YV=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",xY,[t.createElementVNode("input",{type:"hidden",value:i.value,name:a.field.model},null,8,wY)])):(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"]))}}),vY=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"]))}}),CY=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"]))}}),LY=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"]))}}),SY=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(Ms)({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(cn)),i[0]||(i[0]=t.createElementVNode("span",{class:"hidden sm:block"},"First",-1))])]),_:3},16,["class"]))}}),IY=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(Ms)({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"]))}}),_Y=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(Ms)({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(dn))])]),_:3},16,["class"]))}}),AY=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(Ms)({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(dn))])]),_:3},16,["class"]))}}),BY=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(Ms)({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(cn)),i[0]||(i[0]=t.createElementVNode("span",{class:"hidden sm:block"},"Previous",-1))])]),_:3},16,["class"]))}}),zY=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))}}),VY=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(EY)),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(DY))]),_:3},16,["class"])]),_:3}))}}),qY={class:"absolute right-2 flex h-3.5 w-3.5 items-center justify-center"},PY=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",qY,[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"]))}}),DY=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"]))}}),EY=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"]))}}),TY=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"]))}}),HY=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))}}),jY={class:"dcode-card animate-slide-up"},OY={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"},FY={class:"flex flex-col lg:flex-row lg:items-center lg:justify-between gap-4"},RY={key:0,class:"flex flex-col sm:flex-row items-start sm:items-center gap-2 flex-1 max-w-2xl"},NY={class:"relative w-full sm:w-64"},$Y={key:0,class:"relative"},UY={class:"flex flex-col h-full"},WY={key:0,class:"flex-1 overflow-y-auto py-4"},GY={class:"grid grid-cols-1 md:grid-cols-2 gap-4 px-1"},KY={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"},XY={class:"flex justify-end gap-2 w-full"},ZY={key:0,class:"font-medium text-sm text-neutral-600 dark:text-neutral-400"},YY={class:"overflow-auto custom-scrollbar relative max-h-[calc(100vh-17rem)]"},QY={class:"dcode-table w-full"},JY={class:"bg-primary-700 dark:bg-primary-900 sticky top-0 z-20 shadow-sm"},eQ=["onClick"],tQ={key:0,class:"flex items-center justify-center w-full"},aQ={key:0,class:"px-3 py-2 text-xs font-medium text-white dark:text-neutral-100 uppercase tracking-wider"},nQ={class:"bg-white dark:bg-zinc-900 divide-y divide-neutral-200 dark:divide-neutral-700"},oQ={key:0,class:"px-3 py-0.5"},rQ={key:1},iQ=["colspan"],sQ={class:"flex flex-col items-center gap-4"},lQ={class:"text-base font-medium text-neutral-700 dark:text-neutral-300"},cQ={class:"text-sm text-neutral-500 dark:text-neutral-400 mt-1"},dQ={class:"hover:bg-zinc-50 dark:hover:bg-zinc-800/50 transition-colors duration-150"},hQ={key:0,class:"flex items-center justify-center"},uQ={key:0,class:"px-3 py-0.5 !text-center"},pQ={key:0,class:"flex items-center justify-center gap-1.5"},yQ={key:0,class:"bg-zinc-50/50 dark:bg-zinc-800/30"},fQ=["colspan"],kQ={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"},mQ={class:"flex items-center gap-4"},gQ={class:"text-xs text-neutral-500 dark:text-neutral-400 font-medium"},bQ={class:"text-neutral-900 dark:text-neutral-100 font-medium"},MQ={class:"text-neutral-900 dark:text-neutral-100 font-medium"},xQ={class:"text-neutral-900 dark:text-neutral-100 font-medium"},wQ={class:"flex-shrink-0"},vQ={class:"space-y-4"},CQ={class:"text-gray-600 dark:text-gray-400"},LQ={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),w=t.ref(!0),L=t.ref([]),v=t.ref([]),M=t.ref([]),C=t.ref(!1),S=t.ref(!1),b=t.ref({}),x=t.ref(null),I=t.ref(null),D=t.ref(null),B=t.ref([]),A=t.computed(()=>{if(xt.value.length===0)return!1;const _=xt.value.map(H=>{const K=ce.value.find(N=>N.type==="CHECKBOX"),P=(K==null?void 0:K.keyCheckbox)||"id";return H[P]}).filter(H=>H!=null);return _.length===0?!1:_.every(H=>B.value.includes(H))}),E=t.computed(()=>{if(xt.value.length===0)return!1;const _=ce.value.find(N=>N.type==="CHECKBOX"),H=(_==null?void 0:_.keyCheckbox)||"id",K=xt.value.map(N=>N[H]).filter(N=>N!=null),P=K.filter(N=>B.value.includes(N)).length;return P>0&&P<K.length}),T=_=>{const H=ce.value.find(N=>N.type==="CHECKBOX"),K=(H==null?void 0:H.keyCheckbox)||"id",P=_[K];return P!==void 0&&B.value.includes(P)},U=_=>{const H=ce.value.find(N=>N.type==="CHECKBOX"),K=(H==null?void 0:H.keyCheckbox)||"id",P=xt.value.map(N=>N[K]).filter(N=>N!=null);if(_){const N=new Set([...B.value,...P]);B.value=Array.from(N)}else B.value=B.value.filter(N=>!P.includes(N))},j=(_,H)=>{const K=ce.value.find(Z=>Z.type==="CHECKBOX"),P=(K==null?void 0:K.keyCheckbox)||"id",N=_[P];N!=null&&(H?B.value.includes(N)||B.value.push(N):B.value=B.value.filter(Z=>Z!==N))};t.watch(B,_=>{var K;r("update:selection",_);const H=A.value||_.length>1;(K=v.value)!=null&&K.length&&v.value.forEach(P=>{var N;(N=P.fieldActionGlobal)!=null&&N.length&&P.fieldActionGlobal.forEach(Z=>{var Ge,rt;const fe=P.endpoint||((Ge=P.propsActionGlobal)==null?void 0:Ge.endpointPropAction)||P.propsActionGlobal,xe=(rt=fe==null?void 0:fe.keyParam)==null?void 0:rt[0];(xe&&Z.model===xe||!xe&&/^(id|ids|idAuditTrail)/i.test(Z.model))&&H&&Z.model&&(b.value[Z.model]=_)})})},{deep:!0});const O=_=>_&&typeof _=="string"&&_.trim()?_:void 0,R=t.computed(()=>{var _,H,K,P;return O((H=(_=g.value)==null?void 0:_.endpoint)==null?void 0:H.apiModule)||O((P=(K=g.value)==null?void 0:K.endpointGlobal)==null?void 0:P.apiModule)||o.apiModule}),Y=t.computed(()=>{var _,H,K,P;return O((H=(_=g.value)==null?void 0:_.endpoint)==null?void 0:H.apiAction)||O((P=(K=g.value)==null?void 0:K.endpointGlobal)==null?void 0:P.apiAction)||o.apiAction}),z=t.computed(()=>{var _,H,K,P;return O((H=(_=g.value)==null?void 0:_.endpoint)==null?void 0:H.apiMethod)||O((P=(K=g.value)==null?void 0:K.endpointGlobal)==null?void 0:P.apiMethod)||o.apiMethod||"POST"}),V=t.computed(()=>{var _,H,K,P;return O((H=(_=g.value)==null?void 0:_.endpoint)==null?void 0:H.apiUrl)||O((P=(K=g.value)==null?void 0:K.endpointGlobal)==null?void 0:P.apiUrl)||o.apiUrl}),W=t.computed(()=>o.permissionBase||""),oe=t.computed(()=>!M.value||M.value.length===0?[]:[...M.value].sort((_,H)=>(_.seq||0)-(H.seq||0))),ee=_=>{if(!_)return"col-span-1";const H=_.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"}[H]||"col-span-1"},de=()=>{let _=null;if(o.tableConfig&&(_=o.tableConfig),_){g.value=_,_.headers&&(m.value=_.headers.map(P=>{var fe,xe,Be,Ge,rt,mS,cq,dq,hq,uq;if(P.key==="action"||((fe=P.custom)==null?void 0:fe.type)==="ACTION"||((xe=P.custom)==null?void 0:xe.type)==="action"){const Aa=((Be=P.custom)==null?void 0:Be.actionCustom)||((Ge=P.custom)==null?void 0:Ge.action);return Aa&&(L.value=Aa.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 N;const Z=((rt=P.custom)==null?void 0:rt.conditionBadge)||((mS=P.custom)==null?void 0:mS.condition);return(((cq=P.custom)==null?void 0:cq.type)==="BADGE"||((dq=P.custom)==null?void 0:dq.type)==="badge")&&Z&&(N=Z.map(Aa=>({value:Aa.value,label:s.value==="id"?Aa.labelID:Aa.labelEN,color:Aa.color,variant:Aa.variant}))),{key:P.key,label:s.value==="id"?P.labelID:P.labelEN,width:P.width,align:P.align,sortable:!0,type:(hq=P.custom)==null?void 0:hq.type,condition:N,keyCheckbox:(uq=P.custom)==null?void 0:uq.keyCheckbox}}).filter(P=>P!==null));const H=_.filters||_.filter;H&&Array.isArray(H)&&(M.value=H.map(P=>({...P,props:P.propsFilters||P.props||{}})),M.value.forEach(P=>{k.value[P.model]=""}));const K=_.actionGlobal||_.action;console.log("[DEBUG] loadConfig rawActions:",K),K&&Array.isArray(K)?(v.value=K.map(P=>{const N=P.propsActionGlobal||P.props||{};return{key:N.key,permission:P.permission,label:s.value==="id"?N.labelID||"Action":N.labelEN||"Action",tooltip:s.value==="id"?N.tooltipID||N.labelID:N.tooltipEN||N.labelEN,icon:N.icon,variant:N.variant||"default",bgColor:N.bgColor,textColor:N.textColor,route:N.route,path:N.path,endpoint:N.endpointPropAction||P.endpoint,openDialog:P.openDialog||!1,fieldActionGlobal:(P.fieldActionGlobal||P.field||[]).map(Z=>{const fe=Z.propsFieldGlobal||Z.props||{};return{...Z,props:{...fe,endpoint:fe.endpointComponent||fe.endpoint}}})}}),console.log("[DEBUG] loadConfig headerActions set:",v.value)):console.log("[DEBUG] loadConfig no rawActions found"),_.pagination!==void 0&&(w.value=_.pagination)}};t.watch(()=>o.tableConfig,()=>{de()},{deep:!0,immediate:!0});const ce=t.computed(()=>o.dynamicColumns||o.configKey||o.tableConfig?m.value:o.columns||[]),ue=t.computed(()=>o.hasActions||L.value.length>0),ve=t.computed(()=>R.value||V.value?y.value:o.loading),le=t.computed(()=>!!R.value||!!V.value),X=t.computed(()=>[]),q=_=>{if(console.log("[DEBUG] hasAction called:",{actionCode:_,permissionChecker:!!o.permissionChecker,effectivePath:W.value}),o.permissionChecker){const H=o.permissionChecker(W.value,_);return console.log("[DEBUG] permissionChecker result:",H),H}return X.value.some(H=>H.code===_)},$=(_,H)=>{if(!_.visibilityCondition)return!0;const{field:K,operator:P,value:N}=_.visibilityCondition,Z=F(H,K);switch(P){case"equals":return Z===N;case"notEquals":return Z!==N;case"in":return Array.isArray(N)&&N.includes(Z);case"notIn":return Array.isArray(N)&&!N.includes(Z);case"greaterThan":return Z>N;case"lessThan":return Z<N;case"contains":return String(Z).includes(String(N));default:return!0}},Q=t.computed(()=>{if(console.log("[DEBUG] visibleHeaderActions:",{headerActions:v.value,ignorePermissions:o.ignorePermissions}),v.value.length===0)return v.value;const _=v.value.filter(H=>{if(o.ignorePermissions)return!0;if(!H.permission)return console.log("[DEBUG] Action no permission, showing:",H.label),!0;const K=q(H.permission);return console.log("[DEBUG] Action permission check:",{label:H.label,permission:H.permission,hasPerm:K}),K});return console.log("[DEBUG] Filtered header actions:",_.length),_}),pe=t.computed(()=>L.value.length===0?L.value:L.value.filter(_=>o.ignorePermissions||!_.permission?!0:q(_.permission))),qe=_=>pe.value.filter(H=>$(H,_)),ot=(_,H)=>{var N,Z;if(_.requiredCondition&&((N=_.propCustomCondition)==null?void 0:N.length)>0){const fe=F(H,"status"),xe=_.propCustomCondition.find(Be=>Be.value===fe);if(xe)return xe.bgColor||_.bgColor||"primary"}if(!_.dynamicColor||!_.colorCondition)return _.bgColor||"primary";const K=F(H,_.colorCondition.field),P=(Z=_.colorCondition.conditions)==null?void 0:Z.find(fe=>fe.value===K);return(P==null?void 0:P.bgColor)||_.bgColor||"primary"},Mt=_=>{const H=(_||"left").toLowerCase();return H==="center"?"justify-center":H==="right"?"justify-end":"justify-start"},oa={ToggleLeft:n1,SquarePen:Xe,Trash2:Ii,Eye:cs,CheckCircle:da,Plus:Qs,Download:$s,RefreshCw:us,Search:pr,SlidersHorizontal:a1},_a=_=>_?Gt[_]?Gt[_]:oa[_]||null:null,xt=t.computed(()=>le.value?p.value.map((_,H)=>({..._,no:(d.value-1)*h.value+H+1})):_e.value),$t=t.computed(()=>le.value?f.value:te.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:_}),F=(_,H)=>{if(!(!_||!H))return H in _?_[H]:H.split(".").reduce((K,P)=>K&&K[P],_)},te=t.computed(()=>{if(le.value)return[];if(!c.value)return o.data;const _=c.value.toLowerCase();return o.data.filter(H=>ce.value.some(K=>{const P=F(H,K.key);return P==null?!1:String(P).toLowerCase().includes(_)}))}),he=t.computed(()=>le.value?[]:u.value.key?[...te.value].sort((H,K)=>{const P=F(H,u.value.key),N=F(K,u.value.key);if(P===N)return 0;let Z=0;return typeof P=="number"&&typeof N=="number"?Z=P-N:Z=String(P).localeCompare(String(N)),u.value.direction==="asc"?Z:-Z}):te.value),_e=t.computed(()=>{if(le.value)return[];const _=(d.value-1)*h.value,H=_+h.value;return he.value.slice(_,H).map((K,P)=>({...K,no:_+P+1}))}),Pe=t.computed(()=>le.value?Object.values(k.value).some(_=>!!_):!!c.value),G=[10,25,50,100],J=()=>{le.value&&(k.value={...k.value,keyword:c.value},d.value=1,We())};let ae;const ye=()=>{o.enableQuickSearch&&(clearTimeout(ae),ae=setTimeout(()=>{J()},500))};let ze;const ra=()=>{clearTimeout(ze),ze=setTimeout(()=>{le.value&&We()},1e3)};t.watch(c,()=>{o.enableQuickSearch&&le.value&&ye()});const We=async()=>{if(le.value&&!(!R.value&&!V.value))try{y.value=!0;const _={page:d.value,perPage:h.value,...k.value,...o.apiParams};c.value&&(_.keyword=c.value),Object.keys(_).forEach(K=>{(_[K]===""||_[K]===null||_[K]===void 0)&&delete _[K]});let H;R.value?H=await i(R.value,Y.value,_):V.value&&(H=await i(V.value,z.value,_)),tq(H)}catch(_){console.error("DataTable fetch error",_),y.value=!1}},tq=_=>{console.log("DataTable handleResponseData:",_),_&&(o.dynamicColumns&&_.columns&&Array.isArray(_.columns)&&(m.value=_.columns.map(H=>({key:H.key||H.field||H.name,label:H.label||H.header||H.name,width:H.width,align:H.align||"LEFT",sortable:H.sortable!==!1,type:H.type,condition:H.condition,format:H.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(ae),clearTimeout(ze)});const yS=()=>{Object.keys(k.value).forEach(_=>{k.value[_]=""}),c.value="",d.value=1,We()},aq=()=>{d.value=1,We()},fS=(_,H)=>{const K=F(_,H.key);let P={variant:"secondary",class:"",label:K};if(H.condition){const N=H.condition.find(Z=>{const fe=(xe,Be)=>typeof xe=="string"&&typeof Be=="string"?xe.toLowerCase().trim()===Be.toLowerCase().trim():xe==Be;return typeof K=="object"&&K!==null?fe(Z.value,K.code)||fe(Z.value,K.id):fe(Z.value,K)});if(N){if(N.variant&&(P.variant=N.variant),P.label=N.label||(typeof K=="object"?K.name||K.code:K),N.color){const Z=N.color.toLowerCase(),fe=P.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[Z]&&(P.class=Be[Z]):Ge[Z]?P.variant=Ge[Z]:xe[Z]&&(P.class=xe[Z])}}else P.label=typeof K=="object"?(K==null?void 0:K.name)||(K==null?void 0:K.code)||"-":K}else P.label=typeof K=="object"?(K==null?void 0:K.name)||(K==null?void 0:K.code)||"-":K;return P},nq=_=>{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",_))},oq=_=>{h.value=_,d.value=1,le.value&&We()},rq=_=>{const H=Math.random()*15+75;if(_.width){const K=parseInt(String(_.width));return K<100?`${Math.floor(K*(Math.random()*.2+.7))}px`:`${H}%`}return`${H}%`},d_=()=>{c.value="",k.value={},d.value=1,We()},iq=_=>{var H;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=_,D.value=null,b.value={};const K=_.fieldActionGlobal||_.field||[];K.length&&K.forEach(P=>{var fe;const N=_.endpoint||((fe=_.propsActionGlobal)==null?void 0:fe.endpointPropAction)||_.propsActionGlobal,Z=N!=null&&N.keyParam&&N.keyParam.length>0?N.keyParam[0]:null;Z&&P.model===Z||!Z&&/^(id|ids|idAuditTrail)/i.test(P.model)?b.value[P.model]=B.value:b.value[P.model]||(b.value[P.model]="")}),S.value=!0}else r("action",{action:((H=_.propsActionCustom)==null?void 0:H.key)||_.key||"create",row:null,selection:B.value})},sq=(_,H)=>{if(_.requireConfirm){x.value={button:_,row:H},C.value=!0;return}if(_.openDialog){I.value=_,D.value=H,b.value={};const K=ce.value.find(N=>N.type==="CHECKBOX"),P=(K==null?void 0:K.keyCheckbox)||"id";_.fieldActionCustom&&_.fieldActionCustom.forEach(N=>{/^(id|ids|idAuditTrail)/i.test(N.model)?b.value[N.model]=[H[P]]:b.value[N.model]=""}),S.value=!0;return}h_(_,H)},h_=(_,H)=>{if(_.route){if(_.path){const P=_.route.startsWith("/")?_.route:"/"+_.route;sessionStorage.setItem(`layout_${P}`,_.path)}let K=_.route;K.includes(":")?K=K.replaceAll(/:([a-zA-Z0-9_]+)/g,(P,N)=>H[N]||H.id||N):H.id&&(K=`${K.replace(/\/$/,"")}/${H.id}`),_.path&&_.path,r("navigate",{route:K,path:_.path})}else if(_.endpoint&&_.endpoint.apiUrl){y.value=!0;const{apiUrl:K}=Ke(),P=_.endpoint.apiUrl,N=_.endpoint.apiMethod||"POST",Z={};_.endpoint.keyParam&&Array.isArray(_.endpoint.keyParam)&&_.endpoint.keyParam.forEach((fe,xe)=>{const Be=_.endpoint.model&&xe===0?_.endpoint.model:fe;H[fe]!==void 0&&(Z[Be]=H[fe])}),Object.keys(Z).length===0&&H.id&&(Z.id=H.id),K(P,N,Z).then(()=>{We(),r("action",{action:_.action||"success",row:H})}).catch(fe=>{console.error("Action Failed",fe)}).finally(()=>{y.value=!1})}else r("action",{action:_.action,row:H})},u_=()=>{x.value&&(h_(x.value.button,x.value.row),lq())},zQ=()=>{var _,H;if(I.value){const K=I.value,P=K.endpoint||((_=K.propsActionGlobal)==null?void 0:_.endpointPropAction)||K.propsActionGlobal;let N=(P==null?void 0:P.model)||(P!=null&&P.keyParam&&P.keyParam.length>0?P.keyParam[0]:null);if(!N){const Be=(K.fieldActionGlobal||K.fieldActionCustom||K.field||[]).find(Ge=>/^(id|ids|idAuditTrail)/i.test(Ge.model));N=Be?Be.model:"ids"}let Z=null,fe=!1;if(D.value){const xe=ce.value.find(rt=>rt.type==="CHECKBOX"),Be=(xe==null?void 0:xe.keyCheckbox)||"id",Ge=D.value[Be];P!=null&&P.apiUrl&&(Z={...b.value},Z[N]||(Z[N]=[Ge]),fe=!0)}else P!=null&&P.apiUrl&&(Z={...b.value},Z[N]||(Z[N]=B.value||[]),fe=!0);if(fe&&Z&&(P!=null&&P.apiUrl)){const{apiUrl:xe}=Ke(),Be=P.apiUrl,Ge=P.apiMethod||"POST";xe(Be,Ge,Z).then(()=>{S.value=!1,D.value||(B.value=[]),We(),r("action",{action:"success",row:null})}).catch(rt=>{console.error("Action Failed",rt)})}else if(D.value){const xe=ce.value.find(mS=>mS.type==="CHECKBOX"),Be=(xe==null?void 0:xe.keyCheckbox)||"id",Ge=D.value[Be],rt={...b.value};rt[N]||(rt[N]=[Ge]),r("action",{action:I.value.action,row:rt}),S.value=!1}else{const xe={...b.value};xe[N]||(xe[N]=B.value);const Be={action:((H=I.value.propsActionGlobal)==null?void 0:H.key)||I.value.key,row:xe,selection:B.value};r("action",Be),S.value=!1}}},lq=()=>{C.value=!1,x.value=null},VQ=t.computed(()=>x.value?x.value.button.confirmTitle||"Confirm":""),qQ=t.computed(()=>x.value?x.value.button.confirmMessage||"Confirm":"");e({fetchData:We,filters:k,resetFilters:yS,handleRefresh:d_});const kS=t.ref(""),PQ=_=>{if(!_)return"";const H=_.endpoint||_.endpointGlobal||{};return JSON.stringify({url:H.apiUrl||_.apiUrl,module:H.apiModule||_.apiModule,action:H.apiAction||_.apiAction,method:H.apiMethod||_.apiMethod,params:_.apiParams,socket:H.socket||_.socketEndpoint,socketParams:_.socketParams})};return t.watch(()=>o.tableConfig,()=>{if(o.tableConfig){de();const _=PQ(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(()=>v.value,_=>{console.log("[DEBUG] headerActions changed:",_.length,"items");const H=Q.value;console.log("[DEBUG] visibleHeaderActions evaluated:",H.length,"items")},{deep:!0}),t.onMounted(()=>{de(),le.value&&(o.tableConfig||(y.value=!0,We()))}),(_,H)=>{var K;return t.openBlock(),t.createElementBlock("div",jY,[t.createElementVNode("div",OY,[t.createElementVNode("div",FY,[a.nested?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",RY,[t.createElementVNode("div",NY,[t.createVNode(t.unref(pr),{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":H[0]||(H[0]=P=>c.value=P),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(J,["enter"])},null,8,["modelValue"])]),M.value.length>0?(t.openBlock(),t.createElementBlock("div",$Y,[t.createVNode(MY,null,{trigger:t.withCtx(()=>[t.createVNode(xs,{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",XY,[t.renderSlot(_.$slots,"filter-footer",{fetch:We,reset:yS})])]),default:t.withCtx(()=>[t.createElementVNode("div",UY,[t.renderSlot(_.$slots,"filter-form",{filters:k.value},()=>[M.value.length>0?(t.openBlock(),t.createElementBlock("div",WY,[t.createElementVNode("div",GY,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(oe.value,(P,N)=>(t.openBlock(),t.createElementBlock("div",{key:N,class:t.normalizeClass(ee(P.column))},[t.createVNode(YV,{field:P,modelValue:k.value[P.model],"onUpdate:modelValue":Z=>k.value[P.model]=Z},null,8,["field","modelValue","onUpdate:modelValue"])],2))),128))])])):t.createCommentVNode("",!0)]),M.value.length>0?(t.openBlock(),t.createElementBlock("div",KY,[t.createVNode(t.unref(Ee),{variant:"outline",onClick:yS,disabled:ve.value,class:"flex-1 w-full"},{default:t.withCtx(()=>[...H[8]||(H[8]=[t.createTextVNode(" Reset ",-1)])]),_:1},8,["disabled"]),t.createVNode(t.unref(Ee),{onClick:aq,disabled:ve.value,class:"flex-1 w-full"},{default:t.withCtx(()=>[...H[9]||(H[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",ZY)):t.createCommentVNode("",!0),a.nested?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(xs,{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(us),{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(Q.value,(P,N)=>(t.openBlock(),t.createBlock(xs,{key:N,icon:P.icon,text:P.label,tooltip:P.tooltip,variant:P.variant,"bg-color":P.bgColor,"text-color":P.textColor,class:"gap-2 h-9 shadow-lg shadow-primary-500/20 border-none text-xs font-medium",onClick:Z=>iq(P)},null,8,["icon","text","tooltip","variant","bg-color","text-color","onClick"]))),128)),t.renderSlot(_.$slots,"header-actions")],2)])]),t.createElementVNode("div",YY,[t.createElementVNode("table",QY,[t.createElementVNode("thead",JY,[t.createElementVNode("tr",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(ce.value,P=>(t.openBlock(),t.createElementBlock("th",{key:P.key,class:t.normalizeClass([P.align?`text-${P.align.toLowerCase()}`:"",P.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(P.width?{width:P.width}:{}),onClick:N=>P.sortable&&nq(P.key)},[P.type==="CHECKBOX"?(t.openBlock(),t.createElementBlock("div",tQ,[t.createVNode(q1,{"model-value":A.value,indeterminate:E.value,"onUpdate:modelValue":H[1]||(H[1]=N=>U(!!N)),onClick:H[2]||(H[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(P.align)])},[t.createElementVNode("span",null,t.toDisplayString(P.label),1)],2))],14,eQ))),128)),ue.value?(t.openBlock(),t.createElementBlock("th",aQ,[...H[10]||(H[10]=[t.createElementVNode("div",{class:"flex items-center justify-center w-full"}," Actions ",-1)])])):t.createCommentVNode("",!0)])]),t.createElementVNode("tbody",nQ,[ve.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(h.value,P=>(t.openBlock(),t.createElementBlock("tr",{key:`skeleton-${P}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(ce.value,N=>{var Z,fe;return t.openBlock(),t.createElementBlock("td",{key:N.key,class:t.normalizeClass([N.align?`text-${N.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(N.type??"")||N.condition?"h-5 rounded-full w-20":"h-4 rounded-md",((Z=N.align)==null?void 0:Z.toLowerCase())==="center"?"mx-auto":"",((fe=N.align)==null?void 0:fe.toLowerCase())==="right"?"ml-auto":""]]),style:t.normalizeStyle({width:["badge","BADGE"].includes(N.type??"")||N.condition?void 0:rq(N),backgroundSize:"200% 100%"})},null,6)],2)}),128)),a.hasActions?(t.openBlock(),t.createElementBlock("td",oQ,[...H[11]||(H[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",rQ,[t.createElementVNode("td",{colspan:ce.value.length+(ue.value?1:0),class:"text-center py-16"},[t.createElementVNode("div",sQ,[t.createElementVNode("div",null,[t.createElementVNode("p",lQ,t.toDisplayString(Pe.value?"No search results":"No data"),1),t.createElementVNode("p",cQ,t.toDisplayString(Pe.value?"Try changing keywords":"No data added"),1)])])],8,iQ)])):(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:2},t.renderList(xt.value,(P,N)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:N},[t.createElementVNode("tr",dQ,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(ce.value,Z=>(t.openBlock(),t.createElementBlock("td",{key:Z.key,class:t.normalizeClass([Z.align?`text-${Z.align}`:"text-left","px-3 py-0.5 text-sm text-neutral-900 dark:text-neutral-100"])},[t.renderSlot(_.$slots,`cell-${Z.key}`,{row:P,value:F(P,Z.key)},()=>[Z.type==="CHECKBOX"?(t.openBlock(),t.createElementBlock("div",hQ,[t.createVNode(q1,{"model-value":T(P),"onUpdate:modelValue":fe=>j(P,!!fe),onClick:H[3]||(H[3]=t.withModifiers(()=>{},["stop"]))},null,8,["model-value","onUpdate:modelValue"])])):Z.type==="badge"||Z.type==="BADGE"||Z.condition?(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["flex items-center gap-1.5 flex-wrap md:flex-nowrap",[Z.align?`justify-${Z.align}`:"justify-start"]])},[t.createVNode(t.unref(Ia),{variant:fS(P,Z).variant,class:t.normalizeClass([fS(P,Z).class,"whitespace-nowrap truncate max-w-[150px] inline-block"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(fS(P,Z).label),1)]),_:2},1032,["variant","class"])],2)):Z.key==="no"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[t.createTextVNode(t.toDisplayString((d.value-1)*h.value+N+1),1)],64)):Z.type==="date"||Z.type==="DATE"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:3},[t.createTextVNode(t.toDisplayString(F(P,Z.key)?t.unref(dY)(F(P,Z.key),"long"):"-"),1)],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:4},[t.createTextVNode(t.toDisplayString(Z.format?Z.format(F(P,Z.key)):F(P,Z.key)),1)],64))])],2))),128)),ue.value?(t.openBlock(),t.createElementBlock("td",uQ,[t.renderSlot(_.$slots,"actions",{row:P,buttons:qe(P),getButtonColor:ot,getIconComponent:_a},()=>[qe(P).length>0?(t.openBlock(),t.createElementBlock("div",pQ,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(qe(P),(Z,fe)=>(t.openBlock(),t.createElementBlock("div",{key:fe,class:"group relative"},[t.createVNode(xs,{tooltip:Z.tooltip||Z.label,icon:_a(Z.icon),size:"icon",variant:Z.variant||"ghost","bg-color":ot(Z,P),onClick:xe=>sq(Z,P)},null,8,["tooltip","icon","variant","bg-color","onClick"])]))),128))])):t.createCommentVNode("",!0)])])):t.createCommentVNode("",!0)]),_.$slots["expanded-row"]?(t.openBlock(),t.createElementBlock("tr",yQ,[t.createElementVNode("td",{colspan:ce.value.length+(ue.value?1:0),class:"px-0 py-0"},[t.renderSlot(_.$slots,"expanded-row",{row:P,index:N})],8,fQ)])):t.createCommentVNode("",!0)],64))),128))])])]),!ve.value&&xt.value.length>0&&a.showPagination&&w.value?(t.openBlock(),t.createElementBlock("div",kQ,[t.createElementVNode("div",mQ,[t.createVNode(t.unref(zY),{"model-value":String(h.value),"onUpdate:modelValue":H[4]||(H[4]=P=>oq(Number(P)))},{default:t.withCtx(()=>[t.createVNode(t.unref(TY),{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(HY),{placeholder:String(h.value)},null,8,["placeholder"])]),_:1}),t.createVNode(t.unref(VY),null,{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(G,P=>t.createVNode(t.unref(PY),{key:P,value:String(P)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(P),1)]),_:2},1032,["value"])),64))]),_:1})]),_:1},8,["model-value"]),H[16]||(H[16]=t.createElementVNode("div",{class:"h-5 w-px bg-zinc-300 dark:bg-zinc-600"},null,-1)),t.createElementVNode("span",gQ,[H[12]||(H[12]=t.createTextVNode(" Showing ",-1)),t.createElementVNode("span",bQ,t.toDisplayString(D1.value),1),H[13]||(H[13]=t.createTextVNode(" to ",-1)),t.createElementVNode("span",MQ,t.toDisplayString(E1.value),1),H[14]||(H[14]=t.createTextVNode(" of ",-1)),t.createElementVNode("span",xQ,t.toDisplayString($t.value),1),H[15]||(H[15]=t.createTextVNode(" items ",-1))])]),t.createElementVNode("div",wQ,[t.createVNode(t.unref(vY),{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(CY),{class:"flex items-center gap-1"},{default:t.withCtx(({items:P})=>[t.createVNode(t.unref(SY),{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(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:cursor-not-allowed"},{default:t.withCtx(()=>[t.createVNode(t.unref(cn),{class:"h-4 w-4"})]),_:1}),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(P,(N,Z)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[N.type==="page"?(t.openBlock(),t.createBlock(t.unref(IY),{key:Z,value:N.value,"as-child":""},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee),{class:"w-8 h-8 p-0 text-sm",variant:N.value===d.value?"default":"outline",disabled:N.value===d.value,onClick:fe=>c_(N.value)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(N.value),1)]),_:2},1032,["variant","disabled","onClick"])]),_:2},1032,["value"])):(t.openBlock(),t.createBlock(t.unref(LY),{key:N.type,index:Z},null,8,["index"]))],64))),256)),t.createVNode(t.unref(AY),{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.createVNode(t.unref(_Y),{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":H[5]||(H[5]=P=>C.value=P),title:VQ.value,icon:"AlertCircle","max-width":450,persistent:!1},{actions:t.withCtx(()=>[t.createVNode(t.unref(Ee),{variant:"outline",onClick:lq},{default:t.withCtx(()=>[...H[17]||(H[17]=[t.createTextVNode(" Cancel ",-1)])]),_:1}),t.createVNode(t.unref(Ee),{onClick:u_},{default:t.withCtx(()=>[...H[18]||(H[18]=[t.createTextVNode(" Yes ",-1)])]),_:1})]),default:t.withCtx(()=>[t.createElementVNode("div",vQ,[t.createElementVNode("p",CQ,t.toDisplayString(qQ.value),1)])]),_:1},8,["modelValue","title"]),t.createVNode(lS,{modelValue:S.value,"onUpdate:modelValue":H[7]||(H[7]=P=>S.value=P),title:((K=I.value)==null?void 0:K.label)||"Action",icon:"AlertCircle","max-width":450},{actions:t.withCtx(()=>[t.createVNode(t.unref(Ee),{variant:"outline",onClick:H[6]||(H[6]=P=>S.value=!1)},{default:t.withCtx(()=>[...H[19]||(H[19]=[t.createTextVNode(" Cancel ",-1)])]),_:1}),t.createVNode(t.unref(Ee),{onClick:zQ},{default:t.withCtx(()=>[...H[20]||(H[20]=[t.createTextVNode(" Save ",-1)])]),_:1})]),default:t.withCtx(()=>{var P,N;return[t.createElementVNode("div",LQ,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(((P=I.value)==null?void 0:P.fieldActionCustom)||((N=I.value)==null?void 0:N.fieldActionGlobal)||[],(Z,fe)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:fe},[Z.isHidden?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(ee(Z.column))},[t.createVNode(YV,{field:Z,modelValue:b.value[Z.model],"onUpdate:modelValue":xe=>b.value[Z.model]=xe},null,8,["field","modelValue","onUpdate:modelValue"])],2))],64))),128))])]}),_:1},8,["modelValue","title"])])}}}),SQ={class:"h-full flex flex-col"},IQ={key:1,class:"flex-1 flex items-center justify-center"},_Q={key:2,class:"flex-1 flex items-center justify-center text-red-500"},QV=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",SQ,[!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",IQ,[...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",_Q," Failed to load configuration for "+t.toDisplayString(n.layoutCode),1))]))}}),JV=t.defineCustomElement(ZV),eq=t.defineCustomElement(QV);typeof customElements<"u"&&(customElements.get("micro-dynamic-form")||customElements.define("micro-dynamic-form",JV),customElements.get("micro-dynamic-datatable")||customElements.define("micro-dynamic-datatable",eq));const AQ=[qS,j_,xs,rI,gV,q1,bV,GI,lS,EV,cS,TV,QI,HV,e_,a_,t_,n_,jV,r_,OV,FV,RV,NV,i_,s_,l_,dS,GV,KV,XV,uS],BQ={install(a,e={}){e&&Object.keys(e).length>0&&gq(e),AQ.forEach(n=>{n.name&&a.component(n.name,n)})}};ne.AutoLayoutDatatable=QV,ne.AutoLayoutForm=ZV,ne.DCodeAutoComplete=qS,ne.DCodeButton=xs,ne.DCodeCard=rI,ne.DCodeChart=gV,ne.DCodeCheckbox=q1,ne.DCodeCurrencyField=bV,ne.DCodeDatePicker=GI,ne.DCodeDialog=lS,ne.DCodeDialogCloseBtn=EV,ne.DCodeDropzone=cS,ne.DCodeFileField=TV,ne.DCodeFileResult=QI,ne.DCodeIconDropdown=HV,ne.DCodeImageCropperDialog=e_,ne.DCodeImageField=a_,ne.DCodeImageResult=t_,ne.DCodeInfiniteAutoComplete=j_,ne.DCodeLabel=n_,ne.DCodeMultiSelect=jV,ne.DCodeOtpInput=r_,ne.DCodeProgress=OV,ne.DCodeProgressBar=FV,ne.DCodeRadio=RV,ne.DCodeRadioCustom=NV,ne.DCodeSlider=i_,ne.DCodeSwitch=s_,ne.DCodeTextField=l_,ne.DCodeTextarea=dS,ne.DCodeTimelineWithIcons=GV,ne.DCodeUploadFile=KV,ne.DCodeWizard=XV,ne.DataTable=uS,ne.DataTableComponent=uS,ne.MicroDynamicDatatable=eq,ne.MicroDynamicForm=JV,ne.cn=be,ne.default=BQ,Object.defineProperties(ne,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));