@gemafajarramadhan/dynamic-ui 1.3.70 → 1.3.72

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.
@@ -146,4 +146,4 @@ https://github.com/highlightjs/highlight.js/issues/2277`),v=B,I=A),F===void 0&&(
146
146
  `,""),J=Number(z);return Number.isFinite(J)?J:null}return j},Z=j=>{g.value=j,r("update:modelValue",H(j))},U=(j,z)=>{const J=p(z);b.value=!0,j.value=J,Z(J),queueMicrotask(()=>b.value=!1)},B=(j,z)=>{const J=j.selectionStart??j.value.length,le=j.selectionEnd??j.value.length;if(f.value>0){const ye=j.value.length-(le-J),oe=f.value-ye;if(oe<=0)return;z=z.slice(0,oe)}j.setRangeText(z,J,le,"end"),U(j,M(j.value))},A=j=>{var ye;const z=P.value;if(!z||k.value||b.value||!((ye=j.inputType)!=null&&ye.startsWith("insert")))return;const J=j.data;if(J==null)return;const le=M(J);le!==J&&(j.preventDefault(),le.length>0&&B(z,le))},F=j=>{var ye;const z=P.value;if(!z||k.value||b.value)return;const J=((ye=j.clipboardData)==null?void 0:ye.getData("text"))??"",le=M(J);le!==J&&(j.preventDefault(),le.length>0&&B(z,le))},I=async j=>{const z=P.value;if(!z||k.value||b.value)return;const J=z.value??"",le=M(J);if(le===J){const ye=z.selectionStart??le.length,oe=z.selectionEnd??le.length;U(z,le),await e.nextTick();try{z.setSelectionRange(ye,oe)}catch{}Z(le)}else{const ye=z.selectionStart??le.length,oe=z.selectionEnd??le.length;U(z,le),await e.nextTick();try{z.setSelectionRange(ye,oe)}catch{}}},v=()=>k.value=!0,L=()=>{k.value=!1;const j=P.value;if(!j)return;const z=j.value??"",J=M(z);J===z?Z(J):U(j,J)};e.onMounted(()=>{const j=P.value;if(!j)return;const z=j.value??"",J=M(z);J===z?Z(J):U(j,J)}),e.onBeforeUnmount(()=>{});const R=()=>{g.value="",P.value&&(P.value.value=""),r("update:modelValue",null),r("clear")},O=e.computed(()=>g.value.length),W=e.computed(()=>a.showCharCount?f.value>0:!1),K=e.computed(()=>W.value&&O.value>0),ne=e.computed(()=>`${O.value} / ${f.value}`),q=e.computed(()=>!!a.error),Q=e.computed(()=>{const j=n.rows,z=typeof j=="number"?j:Number.parseInt(String(j??""),10);return Number.isFinite(z)&&z>0?z:3}),ae=e.computed(()=>({height:`${Q.value*24+16}px`}));return(j,z)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["flex flex-col gap-1 w-full",[e.unref(n).class,a.disabled?"cursor-not-allowed":""]]),"aria-busy":a.skeleton},[a.skeleton?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[s.value?(e.openBlock(),e.createElementBlock("div",Nv)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:"w-full rounded-lg bg-gray-200 dark:bg-gray-700 animate-pulse",style:e.normalizeStyle(ae.value)},null,4)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[s.value?(e.openBlock(),e.createElementBlock("label",{key:0,for:c.value,class:"text-sm font-medium"},[e.createTextVNode(e.toDisplayString(s.value)+" ",1),d.value?(e.openBlock(),e.createElementBlock("span",Mv,"*")):e.createCommentVNode("",!0)],8,Vv)):e.createCommentVNode("",!0),e.createElementVNode("div",Tv,[e.createElementVNode("textarea",e.mergeProps({id:c.value,ref_key:"textareaRef",ref:P,value:g.value},u.value,{onInput:I,onBeforeinput:A,onPaste:F,onCompositionstart:v,onCompositionend:L,style:`text-transform: ${N.value}; padding-right: ${h.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-800 text-foreground dark:text-gray-300 border-gray-300 dark:border-neutral-700/50 focus:ring-1 focus:ring-neutral-400 dark:focus:ring-neutral-600 text-sm placeholder:text-muted-foreground focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 readonly:bg-neutral-50/50 dark:readonly:bg-neutral-900/30",q.value?"border-destructive focus-visible:ring-destructive focus:ring-destructive":""]}),null,16,Pv),h.value?(e.openBlock(),e.createElementBlock("div",Rv,[e.createElementVNode("button",{type:"button",class:"text-muted-foreground hover:text-foreground text-sm leading-none","aria-label":"Clear textarea",onClick:R}," ✕ ")])):e.createCommentVNode("",!0),K.value&&!q.value?(e.openBlock(),e.createElementBlock("p",Ov,e.toDisplayString(ne.value),1)):e.createCommentVNode("",!0)]),q.value?(e.openBlock(),e.createElementBlock("p",Fv,e.toDisplayString(a.error),1)):e.createCommentVNode("",!0)],64))],10,Dv)),[[e.vShow,i.value]])}}),$v={key:0,class:"inline-block"},On=ht(e.defineComponent({name:"DCodeBadge",inheritAttrs:!1,__name:"DCodeBadge",props:{text:{default:""},variant:{default:"default"},size:{default:"sm"},icon:{},dot:{type:Boolean,default:!1},pill:{type:Boolean,default:!1},color:{},skeleton:{type:Boolean,default:!1},visible:{type:Boolean,default:!0},class:{}},setup(t){const o=t,n=e.computed(()=>To(o.icon,Tt)),r=e.computed(()=>o.visible??!0),a=e.computed(()=>{const f={xs:"px-1.5 py-0.5 text-[10px] gap-1",sm:"px-2.5 py-0.5 text-xs gap-1.5",md:"px-3 py-1 text-sm gap-2",lg:"px-4 py-1.5 text-base gap-2.5"};return f[o.size]||f.sm}),s=e.computed(()=>{const f={xs:"w-1 h-1",sm:"w-1.5 h-1.5",md:"w-2 h-2",lg:"w-2.5 h-2.5"};return f[o.size]||f.sm}),i=e.computed(()=>{const f={xs:"w-2.5 h-2.5",sm:"w-3 h-3",md:"w-4 h-4",lg:"w-5 h-5"};return f[o.size]||f.sm}),l=e.computed(()=>{var m;const f={default:"bg-primary text-primary-foreground border-transparent shadow hover:bg-primary/80",DEFAULT:"bg-primary text-primary-foreground border-transparent shadow hover:bg-primary/80",secondary:"bg-secondary text-secondary-foreground border-transparent hover:bg-secondary/80",SECONDARY:"bg-secondary text-secondary-foreground border-transparent hover:bg-secondary/80",destructive:"bg-destructive text-destructive-foreground border-transparent shadow hover:bg-destructive/80",DESTRUCTIVE:"bg-destructive text-destructive-foreground border-transparent shadow hover:bg-destructive/80",success:"bg-success-500 text-white border-transparent shadow-sm hover:bg-success-600",SUCCESS:"bg-success-500 text-white border-transparent shadow-sm hover:bg-success-600",warning:"bg-warning-500 text-white border-transparent shadow-sm hover:bg-warning-600",WARNING:"bg-warning-500 text-white border-transparent shadow-sm hover:bg-warning-600",info:"bg-blue-500 text-white border-transparent shadow-sm hover:bg-blue-600",INFO:"bg-blue-500 text-white border-transparent shadow-sm hover:bg-blue-600",danger:"bg-red-500 text-white border-transparent shadow-sm hover:bg-red-600",DANGER:"bg-red-500 text-white border-transparent shadow-sm hover:bg-red-600",outline:"bg-transparent border-border text-foreground",OUTLINE:"bg-transparent border-border text-foreground",tonal:"bg-primary/10 text-primary border-transparent hover:bg-primary/20",TONAL:"bg-primary/10 text-primary border-transparent hover:bg-primary/20",ghost:"bg-transparent text-muted-foreground border-transparent hover:bg-accent hover:text-accent-foreground",GHOST:"bg-transparent text-muted-foreground border-transparent hover:bg-accent hover:text-accent-foreground",purple:"bg-purple-600 text-white border-transparent shadow-sm hover:bg-purple-700",PURPLE:"bg-purple-600 text-white border-transparent shadow-sm hover:bg-purple-700",pink:"bg-pink-600 text-white border-transparent shadow-sm hover:bg-pink-700",PINK:"bg-pink-600 text-white border-transparent shadow-sm hover:bg-pink-700",dark:"bg-gray-900 text-white border-transparent shadow-sm hover:bg-gray-950",light:"bg-gray-100 text-gray-900 border-gray-200 hover:bg-gray-200 dark:bg-gray-800 dark:text-gray-100 dark:border-gray-700",link:"bg-transparent text-blue-600 border-transparent hover:underline hover:text-blue-700",LINK:"bg-transparent text-blue-600 border-transparent hover:underline hover:text-blue-700",elevated:"bg-white text-gray-900 border-gray-200 shadow-md hover:shadow-lg dark:bg-gray-800 dark:text-gray-100 dark:border-gray-700",ELEVATED:"bg-white text-gray-900 border-gray-200 shadow-md hover:shadow-lg dark:bg-gray-800 dark:text-gray-100 dark:border-gray-700"};let p=f[o.variant]||f.default;if(o.color){const h=o.color.toLowerCase().replace(/_/g,"-"),g=((m=o.variant)==null?void 0:m.toLowerCase())||"default",b={primary:{bg:"bg-primary",text:"text-primary-foreground",border:"border-transparent",hover:"hover:bg-primary/80"},success:{bg:"bg-success-500",text:"text-white",border:"border-transparent",hover:"hover:bg-success-600"},warning:{bg:"bg-warning-500",text:"text-white",border:"border-transparent",hover:"hover:bg-warning-600"},danger:{bg:"bg-red-500",text:"text-white",border:"border-transparent",hover:"hover:bg-red-600"},info:{bg:"bg-blue-500",text:"text-white",border:"border-transparent",hover:"hover:bg-blue-600"},purple:{bg:"bg-purple-600",text:"text-white",border:"border-transparent",hover:"hover:bg-purple-700"},pink:{bg:"bg-pink-600",text:"text-white",border:"border-transparent",hover:"hover:bg-pink-700"},"gradient-blue":{bg:"bg-gradient-to-r from-blue-500 to-cyan-500",text:"text-white",border:"border-transparent",hover:"hover:from-blue-600 hover:to-cyan-600"},"gradient-purple":{bg:"bg-gradient-to-r from-purple-500 to-pink-500",text:"text-white",border:"border-transparent",hover:"hover:from-purple-600 hover:to-pink-600"},"gradient-sunset":{bg:"bg-gradient-to-r from-orange-500 to-red-500",text:"text-white",border:"border-transparent",hover:"hover:from-orange-600 hover:to-red-600"},"gradient-emerald":{bg:"bg-gradient-to-r from-emerald-500 to-teal-500",text:"text-white",border:"border-transparent",hover:"hover:from-emerald-600 hover:to-teal-600"}}[h];if(b)switch(g){case"outline":return`${b.border} ${b.text} ${b.hover.replace("hover:bg-","hover:bg-").replace("500","50").replace("600","50")}`;case"tonal":return`${b.bg}/10 ${b.text} ${b.border} ${b.hover.replace("hover:bg-","hover:bg-").replace("500","20").replace("600","20")}`;case"ghost":return`bg-transparent ${b.text} border-transparent hover:bg-accent hover:text-accent-foreground`;case"link":return`bg-transparent ${b.text} border-transparent hover:underline hover:${b.text.replace("text-","text-").replace("-600","-700").replace("-500","-600")}`;case"elevated":return`bg-white ${b.text} border-gray-200 shadow-md hover:shadow-lg dark:bg-gray-800 dark:border-gray-700`;default:return`${b.bg} ${b.text} ${b.border} shadow-sm ${b.hover}`}}return p}),c=e.computed(()=>{const f={default:"bg-primary-foreground",DEFAULT:"bg-primary-foreground",secondary:"bg-secondary-foreground",SECONDARY:"bg-secondary-foreground",destructive:"bg-destructive-foreground",DESTRUCTIVE:"bg-destructive-foreground",success:"bg-white",SUCCESS:"bg-white",warning:"bg-white",WARNING:"bg-white",info:"bg-white",INFO:"bg-white",danger:"bg-white",DANGER:"bg-white",outline:"bg-primary",OUTLINE:"bg-primary",tonal:"bg-primary",TONAL:"bg-primary",ghost:"bg-muted-foreground",GHOST:"bg-muted-foreground",purple:"bg-white",PURPLE:"bg-white",pink:"bg-white",PINK:"bg-white",dark:"bg-white",light:"bg-gray-900",link:"bg-blue-600",LINK:"bg-blue-600",elevated:"bg-gray-900",ELEVATED:"bg-gray-900"};if(o.color){const p=o.color.toLowerCase().replace(/_/g,"-"),m={primary:"bg-primary-foreground",success:"bg-white",warning:"bg-white",danger:"bg-white",info:"bg-white",purple:"bg-white",pink:"bg-white","gradient-blue":"bg-white","gradient-purple":"bg-white","gradient-sunset":"bg-white","gradient-emerald":"bg-white"};if(m[p])return m[p]}return f[o.variant]||"bg-current"}),d=e.computed(()=>{const f={xs:"h-4 w-10",sm:"h-5 w-14",md:"h-6 w-18",lg:"h-7 w-24"};return Ye(f[o.size]||f.sm,"rounded animate-pulse bg-muted")}),u=e.computed(()=>Ye("inline-flex items-center font-semibold border transition-all duration-300 select-none focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",o.pill?"rounded-full":"rounded-md",a.value,l.value,o.class));return(f,p)=>r.value?(e.openBlock(),e.createElementBlock("div",$v,[t.skeleton?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(d.value)},null,2)):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(u.value)},[t.dot?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["rounded-full animate-pulse",s.value,c.value])},null,2)):e.createCommentVNode("",!0),n.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value),{key:1,class:e.normalizeClass(["flex-shrink-0",i.value]),"stroke-width":"2.5"},null,8,["class"])):e.createCommentVNode("",!0),e.renderSlot(f.$slots,"default",{},()=>[e.createElementVNode("span",null,e.toDisplayString(t.text),1)],!0)],2))])):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-b5a6309d"]]),Lv=e.defineComponent({__name:"Avatar",props:{class:{type:[Boolean,null,String,Object,Array]},size:{default:"sm"},shape:{default:"circle"}},setup(t){const o=t;return(n,r)=>(e.openBlock(),e.createBlock(e.unref(Oe.AvatarRoot),{class:e.normalizeClass(e.unref(Ye)(e.unref(jv)({size:t.size,shape:t.shape}),o.class))},{default:e.withCtx(()=>[e.renderSlot(n.$slots,"default")]),_:3},8,["class"]))}}),Iv=e.defineComponent({__name:"AvatarFallback",props:{delayMs:{},asChild:{type:Boolean},as:{}},setup(t){const o=t;return(n,r)=>(e.openBlock(),e.createBlock(e.unref(Oe.AvatarFallback),e.normalizeProps(e.guardReactiveProps(o)),{default:e.withCtx(()=>[e.renderSlot(n.$slots,"default")]),_:3},16))}}),zv=e.defineComponent({__name:"AvatarImage",props:{src:{},referrerPolicy:{},crossOrigin:{},asChild:{type:Boolean},as:{}},setup(t){const o=t;return(n,r)=>(e.openBlock(),e.createBlock(e.unref(Oe.AvatarImage),e.mergeProps(o,{class:"h-full w-full object-cover"}),{default:e.withCtx(()=>[e.renderSlot(n.$slots,"default")]),_:3},16))}}),jv=Qr("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"}}}),Uv={class:"bg-card text-card-foreground"},Wv={class:"flex flex-col space-y-1.5 py-6 px-4"},Hv={class:"leading-none tracking-tight text-lg font-bold"},qv={class:"pb-10 px-4"},Kv={key:0,class:"flex flex-col items-center justify-center py-20 gap-3"},Gv={key:1,class:"bg-destructive/10 border border-destructive/20 p-8 rounded-2xl text-center space-y-3"},Xv={class:"text-sm font-bold text-destructive"},Yv={key:2,class:"relative"},Jv={class:"space-y-14 px-1"},Qv={key:0,class:"ml-14 md:ml-0 mb-8 md:flex md:justify-center"},Zv={class:"flex flex-col sm:flex-row sm:items-center gap-4 md:bg-white dark:md:bg-neutral-900 md:px-6 md:py-2 md:rounded-full md:shadow-sm md:border md:border-neutral-200 dark:md:border-neutral-800"},eA={class:"inline-flex items-center gap-2 px-3 py-1.5 rounded-full bg-neutral-50 dark:bg-neutral-900 border border-neutral-200 dark:border-neutral-800 text-[10px] font-black uppercase tracking-widest text-neutral-500 shadow-sm"},tA={key:0,class:"opacity-40"},oA={key:0,class:"flex items-center gap-3 text-[10px] font-bold text-neutral-400 uppercase tracking-tight"},nA={key:0,class:"flex items-center gap-1.5"},rA={key:1,class:"bg-primary/5 text-primary px-2 py-0.5 rounded border border-primary/10"},aA={key:1,class:"space-y-8"},sA={class:"timeline-card-wrapper"},iA={class:"timeline-card-content"},lA={class:"p-4 sm:p-5"},cA={class:"text-base font-extrabold text-neutral-900 dark:text-neutral-100 group-hover:text-primary transition-colors"},dA={class:"text-[11px] font-medium text-neutral-400 font-mono tracking-tighter"},uA={class:"text-[10px] font-black uppercase text-neutral-400 tracking-widest"},fA={class:"leading-tight"},pA={class:"text-xs font-black text-neutral-800 dark:text-neutral-200 uppercase tracking-tight"},mA={class:"text-[10px] font-bold text-neutral-400"},hA={key:3,class:"flex flex-col items-center justify-center py-24 text-center"},gA={class:"p-6 rounded-full bg-neutral-50 dark:bg-neutral-900 shadow-inner mb-4 border border-dashed border-neutral-200 dark:border-neutral-800"},el=ht(e.defineComponent({name:"DCodeTimelineWithIcons",__name:"DCodeTimelineWithIcons",props:{items:{},apiUrl:{},apiModule:{},apiAction:{},apiMethod:{default:"GET"},apiParams:{},endpoint:{},title:{default:"Timeline With Icons"},dummyMode:{type:Boolean,default:!1}},setup(t){const o=t,{DCodeApi:n}=e.inject("externalApi")||{},r=e.ref(!1),a=e.ref(null),s=e.ref([]),i=e.computed(()=>{if(s.value.length>0)return s.value;if(o.items){if(Array.isArray(o.items))return o.items;const g=o.items;if(g.data&&Array.isArray(g.data))return g.data;if(g.payload&&Array.isArray(g.payload))return g.payload}return[]}),l=async()=>{var x,C,V,N,w,y;if(o.dummyMode){s.value=[{name:"Phase 1: Initialization",noRef:"P-001",startTime:new Date().toISOString(),endTime:new Date().toISOString(),duration:3600,detail:[{id:1,noRef:"DET-001",name:"Initial Check",startTime:new Date().toISOString(),endTime:new Date().toISOString(),duration:600,status:"Completed",color:"success",desc:"System health check performed successfully."}]}];return}const g=o.apiUrl||((x=o.endpoint)==null?void 0:x.apiUrl),k=o.apiModule||((C=o.endpoint)==null?void 0:C.apiModule),b=o.apiAction||((V=o.endpoint)==null?void 0:V.apiAction),E=o.apiMethod||((N=o.endpoint)==null?void 0:N.apiMethod)||"GET";if(!(!g&&!k)){r.value=!0,a.value=null;try{let _;k&&b?_=await n(k,b,o.apiParams):g&&(_=await n(g,E,o.apiParams));let D=[];_&&(Array.isArray(_.data)?D=_.data:Array.isArray(_.payload)?D=_.payload:Array.isArray(_)?D=_:(w=_.data)!=null&&w.items&&Array.isArray(_.data.items)?D=_.data.items:(y=_.payload)!=null&&y.items&&Array.isArray(_.payload.items)?D=_.payload.items:Array.isArray(_.items)&&(D=_.items)),D.length>0?s.value=D:s.value=[]}catch(_){console.error("Failed to fetch timeline items:",_),a.value=_.message||"Failed to fetch data"}finally{r.value=!1}}};e.onMounted(()=>{var b,E;const g=o.apiUrl||((b=o.endpoint)==null?void 0:b.apiUrl),k=o.apiModule||((E=o.endpoint)==null?void 0:E.apiModule);(g||k)&&l()}),e.watch([()=>o.apiUrl,()=>o.apiModule,()=>o.apiAction,()=>o.apiParams,()=>o.endpoint],()=>{var b,E;const g=o.apiUrl||((b=o.endpoint)==null?void 0:b.apiUrl),k=o.apiModule||((E=o.endpoint)==null?void 0:E.apiModule);g||k?l():s.value=[]},{deep:!0});const c=g=>{if(!g)return"-";try{return ja(Wf(g),"MMMM dd, yyyy HH:mm")}catch{return g}},d=g=>{if(!g)return"-";try{return ja(Wf(g),"HH:mm")}catch{return g}},u=g=>{if(!g&&g!==0)return"-";if(g<60)return`${g}s`;const k=Math.floor(g/60),b=g%60;if(k<60)return`${k}m ${b}s`;const E=Math.floor(k/60),x=k%60;return`${E}h ${x}m`},f=(g,k=be.Circle)=>g&&To(g,Tt)||k,p=g=>{const k={primary:"bg-blue-500/10 text-blue-600 border-blue-200 dark:border-blue-900/30",success:"bg-emerald-500/10 text-emerald-600 border-emerald-200 dark:border-emerald-900/30",emerald:"bg-emerald-500/10 text-emerald-600 border-emerald-200 dark:border-emerald-900/30",warning:"bg-amber-500/10 text-amber-600 border-amber-200 dark:border-amber-900/30",amber:"bg-amber-500/10 text-amber-600 border-amber-200 dark:border-amber-900/30",danger:"bg-rose-500/10 text-rose-600 border-rose-200 dark:border-rose-900/30",rose:"bg-rose-500/10 text-rose-600 border-rose-200 dark:border-rose-900/30",info:"bg-sky-500/10 text-sky-600 border-sky-200 dark:border-sky-900/30",sky:"bg-sky-500/10 text-sky-600 border-sky-200 dark:border-sky-900/30",secondary:"bg-slate-500/10 text-slate-600 border-slate-200 dark:border-slate-800/30"};return k[g||"primary"]||k.primary},m=g=>({primary:"default",success:"success",emerald:"success",warning:"warning",amber:"warning",danger:"destructive",rose:"destructive",info:"info",sky:"info",secondary:"secondary"})[g||"secondary"]||"secondary",h=g=>(g==null?void 0:g.split(" ").filter(Boolean).slice(0,2).map(k=>{var b;return(b=k[0])==null?void 0:b.toUpperCase()}).join(""))||"??";return(g,k)=>(e.openBlock(),e.createElementBlock("div",Uv,[e.createElementVNode("div",Wv,[e.createElementVNode("h3",Hv,e.toDisplayString(t.title),1)]),e.createElementVNode("div",qv,[r.value?(e.openBlock(),e.createElementBlock("div",Kv,[e.createVNode(e.unref(be.Loader2),{class:"w-8 h-8 text-primary animate-spin"}),k[0]||(k[0]=e.createElementVNode("p",{class:"text-xs font-bold uppercase tracking-widest text-muted-foreground animate-pulse"},"Syncing CBAS Data...",-1))])):a.value?(e.openBlock(),e.createElementBlock("div",Gv,[e.createVNode(e.unref(be.AlertCircle),{class:"w-8 h-8 text-destructive mx-auto"}),e.createElementVNode("p",Xv,e.toDisplayString(a.value),1),e.createElementVNode("button",{onClick:l,class:"text-xs font-black uppercase underline tracking-wider opacity-60 hover:opacity-100"},"Retry Synchronization")])):i.value.length>0?(e.openBlock(),e.createElementBlock("div",Yv,[k[2]||(k[2]=e.createElementVNode("div",{class:"absolute left-4 md:left-1/2 top-0 h-full w-px bg-neutral-200 dark:bg-neutral-800 -translate-x-1/2"},null,-1)),e.createElementVNode("div",Jv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,(b,E)=>(e.openBlock(),e.createElementBlock("div",{key:E,class:"relative"},[b&&b.name?(e.openBlock(),e.createElementBlock("div",Qv,[e.createElementVNode("div",Zv,[e.createElementVNode("div",eA,[e.createTextVNode(" Phase: "+e.toDisplayString(b.name)+" ",1),b.noRef?(e.openBlock(),e.createElementBlock("span",tA,"#"+e.toDisplayString(b.noRef),1)):e.createCommentVNode("",!0)]),b.duration||b.startTime?(e.openBlock(),e.createElementBlock("div",oA,[b.startTime?(e.openBlock(),e.createElementBlock("div",nA,[e.createVNode(e.unref(be.Clock),{class:"w-3 h-3"}),e.createTextVNode(" "+e.toDisplayString(d(b.startTime))+" - "+e.toDisplayString(d(b.endTime)),1)])):e.createCommentVNode("",!0),b.duration?(e.openBlock(),e.createElementBlock("div",rA," Total: "+e.toDisplayString(u(b.duration)),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),b&&b.detail&&b.detail.length>0?(e.openBlock(),e.createElementBlock("div",aA,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.detail,(x,C)=>(e.openBlock(),e.createElementBlock("div",{key:x.id||C,class:e.normalizeClass(["timeline-item-container",[C%2===0?"is-even":"is-odd"]])},[k[1]||(k[1]=e.createElementVNode("div",{class:"timeline-vertical-line"},null,-1)),e.createElementVNode("div",{class:e.normalizeClass(["timeline-node-icon",p(x.color)])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(f(x.icon)),{class:"h-4 w-4"}))],2),e.createElementVNode("div",sA,[e.createElementVNode("div",iA,[e.createElementVNode("div",lA,[e.createElementVNode("div",{class:e.normalizeClass(["flex flex-col sm:flex-row sm:items-start justify-between gap-4",C%2===0?"md:flex-row-reverse md:text-right":""])},[e.createElementVNode("div",{class:e.normalizeClass(["space-y-1",C%2===0?"md:items-end":""])},[e.createElementVNode("div",{class:e.normalizeClass(["flex items-center gap-2",C%2===0?"md:justify-end":""])},[e.createElementVNode("h4",cA,e.toDisplayString(x.name),1),x.status?(e.openBlock(),e.createBlock(On,{key:0,variant:m(x.color),class:"h-4 px-1.5 text-[8px] uppercase font-black tracking-widest"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(x.status),1)]),_:2},1032,["variant"])):e.createCommentVNode("",!0)],2),e.createElementVNode("p",dA," #"+e.toDisplayString(x.noRef),1)],2),e.createElementVNode("div",{class:e.normalizeClass(["text-left sm:text-right shrink-0",C%2===0?"md:text-left":""])},[e.createElementVNode("p",uA,e.toDisplayString(c(x.startTime)),1),e.createElementVNode("p",{class:e.normalizeClass(["mt-1 text-[11px] font-bold text-primary flex items-center justify-start sm:justify-end gap-1.5",C%2===0?"md:justify-start":""])},[e.createVNode(e.unref(be.Clock),{class:"w-3 h-3"}),e.createTextVNode(" "+e.toDisplayString(u(x.duration)),1)],2)],2)],2),x.desc?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["mt-4 text-sm text-neutral-600 dark:text-neutral-400 leading-relaxed font-medium",C%2===0?"md:text-right":""])},e.toDisplayString(x.desc),3)):e.createCommentVNode("",!0),x.personName?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["mt-4 pt-4 border-t border-neutral-100 dark:border-neutral-800 flex items-center gap-3",C%2===0?"md:flex-row-reverse md:text-right":""])},[e.createVNode(e.unref(Lv),{class:"h-9 w-9 border-2 border-background shadow-inner"},{default:e.withCtx(()=>[x.avatarUrl?(e.openBlock(),e.createBlock(e.unref(zv),{key:0,src:x.avatarUrl},null,8,["src"])):e.createCommentVNode("",!0),e.createVNode(e.unref(Iv),{class:"bg-neutral-100 text-neutral-400 text-[10px] font-bold"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(h(x.personName)),1)]),_:2},1024)]),_:2},1024),e.createElementVNode("div",fA,[e.createElementVNode("p",pA,e.toDisplayString(x.personName),1),e.createElementVNode("p",mA,e.toDisplayString(x.personRole||"Process Specialist"),1)])],2)):e.createCommentVNode("",!0)])])])],2))),128))])):e.createCommentVNode("",!0)]))),128))])])):(e.openBlock(),e.createElementBlock("div",hA,[e.createElementVNode("div",gA,[e.createVNode(e.unref(be.Clock),{class:"w-12 h-12 text-neutral-300 dark:text-neutral-700 stroke-[1.5]"})]),k[3]||(k[3]=e.createElementVNode("h4",{class:"text-sm font-bold text-neutral-400 uppercase tracking-widest mb-1"},"No activity detected",-1)),k[4]||(k[4]=e.createElementVNode("p",{class:"text-[10px] font-medium text-neutral-300 dark:text-neutral-600 uppercase"},"The timeline history is currently empty",-1))]))])]))}}),[["__scopeId","data-v-c10925af"]]),bA={class:"dcode-upload-file"},yA={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"},kA={key:0,class:"text-xs text-gray-500 mt-1"},xA=["accept"],wA={key:1,class:"text-xs text-red-600 mt-1"},op=e.defineComponent({name:"DCodeUploadFile",__name:"DCodeUploadFile",props:{label:{},accept:{},errorMessage:{},modelValue:{}},emits:["update:modelValue"],setup(t,{emit:o}){const n=o,r=a=>{var i;const s=(i=a.target.files)==null?void 0:i[0];s&&n("update:modelValue",s)};return(a,s)=>(e.openBlock(),e.createElementBlock("div",bA,[t.label?(e.openBlock(),e.createBlock(pn,{key:0,label:t.label},null,8,["label"])):e.createCommentVNode("",!0),e.createElementVNode("div",yA,[e.createVNode(e.unref(be.UploadCloud),{class:"w-8 h-8 text-gray-400 mb-2"}),s[0]||(s[0]=e.createElementVNode("p",{class:"text-sm text-gray-600 dark:text-gray-400"},[e.createElementVNode("span",{class:"font-medium text-primary-600"},"Click to upload"),e.createTextVNode(" or drag and drop ")],-1)),t.accept?(e.openBlock(),e.createElementBlock("p",kA,e.toDisplayString(t.accept),1)):e.createCommentVNode("",!0),e.createElementVNode("input",{type:"file",class:"hidden",onChange:r,accept:t.accept},null,40,xA)]),t.errorMessage?(e.openBlock(),e.createElementBlock("p",wA,e.toDisplayString(t.errorMessage),1)):e.createCommentVNode("",!0)]))}}),CA=e.defineComponent({__name:"Separator",props:{orientation:{default:"horizontal"},decorative:{type:Boolean,default:!0},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(t){const o=t,n=ft.reactiveOmit(o,"class");return(r,a)=>(e.openBlock(),e.createBlock(e.unref(Oe.Separator),e.mergeProps(e.unref(n),{class:e.unref(Ye)("shrink-0 bg-border",o.orientation==="horizontal"?"h-px w-full":"w-px h-full",o.class)}),null,16,["class"]))}}),EA=["onClick"],SA={key:1,class:"mr-2 text-xs font-bold shrink-0 opacity-50"},_A={class:"font-semibold text-sm whitespace-normal text-center leading-tight"},BA={key:1},vA={key:0,class:"text-white"},AA={key:1},DA={key:2},NA=["disabled","onClick"],VA={key:1,class:"mr-2 text-sm font-bold opacity-70"},MA={class:"whitespace-normal text-sm text-center leading-tight"},TA={class:"flex flex-col flex-1 min-w-0"},PA={class:"rounded-lg border bg-muted/30 px-4 py-3 text-sm text-muted-foreground flex items-center gap-2"},RA={class:"text-sm text-muted-foreground"},OA={class:"px-1"},FA=["disabled"],$A=["type","disabled"],LA=["disabled"],tl=ht(e.defineComponent({name:"DCodeWizard",__name:"DCodeWizard",props:{tabs:{},modelValue:{},defaultTab:{default:0},allowTabClick:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},cache:{type:Boolean,default:!0},autoFetchOnMount:{type:Boolean,default:!0},apiOptions:{type:[Object,Function],default:void 0},isVertical:{type:Boolean,default:!1},isWizard:{type:Boolean,default:!1},typeWizard:{default:"icon"},showNavigation:{type:Boolean,default:!0},submitText:{default:"Simpan"},loading:{type:Boolean,default:!1},isSubmit:{type:Boolean,default:!1},beforeNext:{},beforePrev:{}},emits:["update:modelValue","change","loaded","error"],setup(t,{emit:o}){const n=t,r=o,a=e.inject("externalApi")||{},s=a==null?void 0:a.DCodeApi;typeof s!="function"&&console.error("[DCodeWizardTabs] useApi() must expose DCodeApi()");const i=e.ref(n.defaultTab),l=e.computed({get(){var _;if(typeof n.modelValue=="string"){const D=(_=n.tabs)==null?void 0:_.findIndex(T=>T.key===n.modelValue);if(D!==void 0&&D>=0)return D}return(typeof n.modelValue=="number"?n.modelValue:void 0)??i.value},set(_){var D;if(i.value=_,typeof n.modelValue=="string"){const T=(D=n.tabs)==null?void 0:D[_];T?r("update:modelValue",T.key):r("update:modelValue",_)}else r("update:modelValue",_)}}),c=e.computed(()=>{var _;return((_=n.tabs)==null?void 0:_.length)??0}),d=e.computed(()=>{var _;return(_=n.tabs)==null?void 0:_[l.value]});function u(_){return c.value<=0?0:Math.min(Math.max(_,0),c.value-1)}function f(_){return _?typeof _=="string"?To(_,Tt):_:null}const p=e.reactive({});function m(_){return p[_.key]||(p[_.key]={loaded:!1,loading:!1,data:null,error:null}),p[_.key]}function h(){if(n.apiOptions)return typeof n.apiOptions=="function"?n.apiOptions():n.apiOptions}function g(_){const D=_.endpoint||{};return{apiModule:_.apiModule||D.apiModule,apiAction:_.apiAction||D.apiAction,apiUrl:D.apiUrl,apiMethod:D.apiMethod||"GET",apiParams:_.apiParams}}function k(_){if(n.isWizard||!n.allowTabClick||n.disabled)return!1;const D=n.tabs[_];return!(!D||D.disabled)}async function b(_){if(typeof _.tab.fetchData=="function"){const U=await _.tab.fetchData(),B=(U==null?void 0:U.data)??U;return(B==null?void 0:B.data)??B}const D=g(_.tab);if(!(D.apiModule&&D.apiAction||D.apiUrl))return null;if(typeof s!="function")throw new Error("DCodeApi is not available");const M=h();let P;if(D.apiUrl)P=await s("","",M,{_url:D.apiUrl,_method:D.apiMethod,_data:D.apiParams??void 0});else{const U={...M,...D.apiParams};P=await s(D.apiModule,D.apiAction,U)}const H=(P==null?void 0:P.data)??P;return(H==null?void 0:H.data)??H}async function E(_,{force:D=!1}={}){const T=u(_),M=n.tabs[T];if(!M)return;const P=m(M);if(!(n.cache&&P.loaded&&!D)&&!P.loading){P.loading=!0,P.error=null;try{const H=await b({tabIndex:T,tab:M});P.data=H,P.loaded=!0,r("loaded",{tabIndex:T,tab:M,data:H})}catch(H){const Z=typeof(H==null?void 0:H.message)=="string"&&H.message||typeof H=="string"&&H||"Failed to load tab data.";P.error=Z,r("error",{tabIndex:T,tab:M,message:Z})}finally{P.loading=!1}}}function x(_){const D=u(_);k(D)&&D!==l.value&&(l.value=D)}function C(_=l.value){return E(_,{force:!0})}const V=e.ref(!1),N=e.ref(!1);async function w(){if(n.beforePrev&&d.value){N.value=!0;try{if(!await n.beforePrev(d.value))return}finally{N.value=!1}}const _=u(l.value-1);_!==l.value&&(l.value=_)}async function y(){if(n.beforeNext&&d.value){V.value=!0;try{if(!await n.beforeNext(d.value))return}finally{V.value=!1}}const _=u(l.value+1);_!==l.value&&(l.value=_)}return e.watch(()=>n.tabs,_=>{for(const D of _??[])m(D)},{immediate:!0}),e.watch(()=>l.value,async _=>{var T;const D=(T=n.tabs)==null?void 0:T[_];D&&r("change",{tabIndex:_,tab:D}),await E(_)},{immediate:!0}),e.watch(()=>n.autoFetchOnMount,async _=>{_&&await E(l.value)},{immediate:!0}),(_,D)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["w-full rounded-lg border bg-card text-card-foreground shadow-sm",{"flex flex-row":t.isVertical}])},[e.createElementVNode("div",{class:e.normalizeClass(["flex flex-col space-y-1.5 p-6",{"w-64 border-r pr-0":t.isVertical,"pb-2":t.isWizard&&!t.isVertical}])},[e.createElementVNode("div",{class:e.normalizeClass({"mt-4":!t.isVertical||t.isWizard})},[t.isWizard?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["w-full relative flex overflow-visible rounded-lg",t.isVertical?"flex-col gap-2":""])},[t.isVertical?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(t.tabs,(T,M)=>(e.openBlock(),e.createElementBlock("div",{key:T.key,class:"relative z-10 box-border flex items-center gap-3 w-full pb-6 last:pb-0"},[e.createElementVNode("div",{class:e.normalizeClass(["w-8 h-8 rounded-full flex shrink-0 items-center justify-center font-bold text-sm border-2 transition-all bg-card",[M<l.value?"border-[#2563eb] bg-[#2563eb] text-white dark:border-[#1e3a8a] dark:bg-[#1e3a8a]":M===l.value?"border-[#2563eb] text-[#2563eb] shadow-[0_0_0_2px_rgba(37,99,235,0.2)] dark:border-[#1e3a8a] dark:text-[#3b82f6] dark:shadow-[0_0_0_2px_rgba(30,58,138,0.2)]":"border-[#e2e8f0] text-[#94a3b8] dark:border-[#3f3f46] dark:text-[#71717a]"]])},[t.typeWizard==="icon"&&T.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(f(T.icon)),{key:0,class:"w-4 h-4"})):t.typeWizard==="number"||!T.icon&&t.typeWizard!=="none"?(e.openBlock(),e.createElementBlock("span",BA,[M<l.value?(e.openBlock(),e.createElementBlock("span",vA,"✓")):(e.openBlock(),e.createElementBlock("span",AA,e.toDisplayString(M+1),1))])):(e.openBlock(),e.createElementBlock("span",DA))],2),e.createElementVNode("span",{class:e.normalizeClass(["text-xs font-semibold whitespace-normal px-2 py-1 rounded transition-colors text-left",M===l.value?"text-[#2563eb] dark:text-[#3b82f6]":"text-[#64748b] dark:text-[#a1a1aa]"])},e.toDisplayString(T.title),3)]))),128)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.tabs,(T,M)=>(e.openBlock(),e.createElementBlock("div",{key:T.key,onClick:P=>x(M),style:e.normalizeStyle({zIndex:t.tabs.length-M}),class:"relative flex-1 group"},[e.createElementVNode("div",{class:e.normalizeClass(["relative flex items-center justify-center min-h-[3rem] h-auto py-2 px-2 cursor-pointer transition-colors w-full",[M>0?"pl-8":"",M===l.value?"bg-[#2563eb] text-white dark:bg-[#1e3a8a]":M<l.value?"bg-[#eff6ff] text-[#2563eb] hover:bg-[#dbeafe] dark:bg-[#191d2c] dark:text-[#3b82f6] dark:hover:bg-[#1e263d]":"bg-[#f8fafc] text-[#64748b] hover:bg-[#f1f5f9] hover:text-[#334155] dark:bg-[#18181b] dark:text-[#a1a1aa] dark:hover:bg-[#27272a] dark:hover:text-[#d4d4d8]"]])},[t.typeWizard==="icon"&&T.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(f(T.icon)),{key:0,class:"w-4 h-4 mr-2 shrink-0"})):t.typeWizard==="number"?(e.openBlock(),e.createElementBlock("span",SA,e.toDisplayString(M+1),1)):e.createCommentVNode("",!0),e.createElementVNode("span",_A,e.toDisplayString(T.title),1)],2),M<t.tabs.length-1?(e.openBlock(),e.createElementBlock("svg",{key:0,class:e.normalizeClass(["absolute top-0 -right-[15.5px] w-[16px] h-full transition-colors block z-10",[M===l.value?"fill-[#2563eb] text-[#2563eb] dark:fill-[#1e3a8a] dark:text-[#1e3a8a]":M<l.value?"fill-[#eff6ff] text-[#eff6ff] group-hover:fill-[#dbeafe] group-hover:text-[#dbeafe] dark:fill-[#191d2c] dark:text-[#191d2c] dark:group-hover:fill-[#1e263d] dark:group-hover:text-[#1e263d]":"fill-[#f8fafc] text-[#f8fafc] group-hover:fill-[#f1f5f9] group-hover:text-[#f1f5f9] dark:fill-[#18181b] dark:text-[#18181b] dark:group-hover:fill-[#27272a] dark:group-hover:text-[#27272a]"]]),preserveAspectRatio:"none",viewBox:"0 0 16 48"},[...D[0]||(D[0]=[e.createElementVNode("polygon",{points:"0,0 16,24 0,48"},null,-1)])],2)):e.createCommentVNode("",!0)],12,EA))),128))],2)):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["flex w-full",t.isVertical?"flex-col gap-1":"flex-wrap border-b border-separate"])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.tabs,(T,M)=>(e.openBlock(),e.createElementBlock("button",{key:T.key,type:"button",disabled:!k(M),onClick:P=>x(M),class:e.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 border-[#e2e8f0] dark:border-[#3f3f46]",e.unref(Ye)("border-b border-r",!t.isVertical&&M===t.tabs.length-1&&"border-r-0",M===l.value?"bg-[#2563eb]/[0.08] text-[#2563eb] font-semibold dark:bg-[#191d2c] dark:text-[#3b82f6]":"bg-transparent text-[#64748b] hover:bg-[#f1f5f9] hover:text-[#334155] dark:text-[#a1a1aa] dark:hover:bg-[#27272a] dark:hover:text-[#f4f4f5]",!k(M)&&"opacity-60 cursor-not-allowed",t.isVertical?"w-full justify-start border-r-0":"flex-1")])},[t.typeWizard==="icon"&&T.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(f(T.icon)),{key:0,class:"h-4 w-4 shrink-0"})):t.typeWizard==="number"?(e.openBlock(),e.createElementBlock("span",VA,e.toDisplayString(M+1),1)):e.createCommentVNode("",!0),e.createElementVNode("span",MA,e.toDisplayString(T.title),1)],10,NA))),128))],2))],2)],2),t.isVertical?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(CA),{key:0})),e.createElementVNode("div",TA,[e.createElementVNode("div",{class:e.normalizeClass(["p-6 flex-1 min-w-0",{"pl-6":t.isVertical}])},[e.createVNode(e.Transition,{name:"wizard-fade",mode:"out-in"},{default:e.withCtx(()=>{var T,M,P,H;return[(e.openBlock(),e.createElementBlock("div",{key:((T=d.value)==null?void 0:T.key)||l.value,class:"w-full"},[d.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[(M=p[d.value.key])!=null&&M.loading?e.renderSlot(_.$slots,"loading",{key:0,tab:d.value,tabIndex:l.value},()=>[e.createElementVNode("div",PA,[e.createVNode(e.unref(be.Loader2),{class:"w-4 h-4 animate-spin"}),D[1]||(D[1]=e.createTextVNode(" Loading... ",-1))])],!0):e.renderSlot(_.$slots,`tab-${d.value.key}`,{key:1,tab:d.value,tabIndex:l.value,data:(P=p[d.value.key])==null?void 0:P.data,loaded:(H=p[d.value.key])==null?void 0:H.loaded,reload:C},()=>[e.createElementVNode("div",RA,[D[2]||(D[2]=e.createTextVNode(" Slot ",-1)),e.createElementVNode("code",OA,"tab-"+e.toDisplayString(d.value.key),1),D[3]||(D[3]=e.createTextVNode(" belum dibuat. ",-1))])],!0)],64)):e.createCommentVNode("",!0)]))]}),_:3})],2),t.isWizard||t.isVertical&&t.showNavigation?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["flex items-center justify-between p-6 pt-0",{"pl-6":t.isVertical}])},[e.createElementVNode("button",{type:"button",onClick:w,disabled:l.value<=0||N.value||t.loading,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"},[N.value?(e.openBlock(),e.createBlock(e.unref(be.Loader2),{key:0,class:"w-4 h-4 animate-spin"})):e.createCommentVNode("",!0),D[4]||(D[4]=e.createTextVNode(" Sebelumnya ",-1))],8,FA),l.value<c.value-1?(e.openBlock(),e.createElementBlock("button",{key:0,type:t.isSubmit?"submit":"button",onClick:y,disabled:V.value||t.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"},[V.value?(e.openBlock(),e.createBlock(e.unref(be.Loader2),{key:0,class:"w-4 h-4 animate-spin"})):e.createCommentVNode("",!0),D[5]||(D[5]=e.createTextVNode(" Selanjutnya ",-1))],8,$A)):t.isWizard?(e.openBlock(),e.createElementBlock("button",{key:1,type:"submit",disabled:t.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-[#1e3a8a] dark:hover:bg-[#1e40af] focus:outline-none focus:ring-2 focus:ring-[#2563eb] focus:ring-offset-2 active:scale-95"},[t.loading?(e.openBlock(),e.createBlock(e.unref(be.Loader2),{key:0,class:"w-4 h-4 mr-2 animate-spin"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(t.submitText),1)],8,LA)):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0)])],2))}}),[["__scopeId","data-v-922a749b"]]),IA={class:"permission-menu w-full space-y-4"},zA={class:"bg-neutral-50/50 dark:bg-neutral-900/30 border-b border-neutral-200/60 dark:border-neutral-700/30 text-neutral-900 dark:text-neutral-100 p-4"},jA={class:"flex items-center justify-between"},UA={class:"flex items-center gap-3 flex-1"},WA=["onClick"],HA={key:1,class:"w-7"},qA={key:2,class:"flex-shrink-0"},KA={class:"text-lg font-semibold flex-1"},GA={key:0,class:"p-4 bg-gray-50 dark:bg-zinc-900/50 border-b border-gray-200 dark:border-neutral-700"},XA={class:"text-xs font-semibold text-gray-600 dark:text-neutral-400 uppercase tracking-wide mb-3"},YA={class:"grid grid-cols-2 sm:grid-cols-3 md:grid-cols-6 gap-2 w-full"},JA=["checked","onChange"],QA={class:"text-sm font-medium text-gray-700 dark:text-neutral-300 group-hover:text-blue-700 dark:group-hover:text-primary-400"},ZA={key:0,class:"p-4 space-y-3 bg-gray-50 dark:bg-zinc-900/30"},eD={class:"text-sm font-semibold text-gray-700 dark:text-neutral-300 mb-3 flex items-center gap-2"},tD={class:"bg-neutral-50 dark:bg-neutral-900/30 border-b border-neutral-200/60 dark:border-neutral-700/30 text-neutral-900 dark:text-neutral-100 p-3"},oD={class:"flex items-center justify-between"},nD={class:"flex items-center gap-3 flex-1"},rD={key:0,class:"flex-shrink-0"},aD={class:"text-base font-semibold flex-1"},sD={key:1,class:"text-xs bg-white/20 px-2 py-1 rounded font-mono hidden sm:inline-block"},iD={class:"flex items-center gap-2 px-2.5 py-1 bg-white/20 hover:bg-white/30 rounded-lg cursor-pointer transition-colors"},lD=["checked","onChange"],cD={class:"text-xs font-medium"},dD={key:0,class:"p-3"},uD={class:"grid grid-cols-2 sm:grid-cols-3 md:grid-cols-6 gap-2 w-full"},fD=["checked","onChange"],pD={class:"text-xs font-medium text-gray-700 dark:text-neutral-300 group-hover:text-pink-700 dark:group-hover:text-pink-400"},ol=ht(e.defineComponent({__name:"DCodePermissionMenu",props:{menuList:{default:()=>[]},enableParentControl:{type:Boolean,default:!1},showIcons:{type:Boolean,default:!0},modelValue:{default:()=>[]},treeData:{default:()=>[]}},emits:["permission-change","menu-check","update:modelValue"],setup(t,{expose:o,emit:n}){const{t:r}=Dt.useI18n(),a=t,s=n,i=e.computed(()=>a.menuList&&a.menuList.length>0?a.menuList:a.treeData||[]),l=e.ref(new Map),c=e.ref(new Set),d=D=>D.detail&&D.detail.length>0,u=D=>D.code==="VIEW"||D.name.toUpperCase()==="VIEW",f=(D=!0)=>{(M=>{M.forEach(P=>{const H=d(P);P.permission.forEach(Z=>{const U=`${P.id}-${Z.id}-parent`;if(!l.value.has(U)){let B=!1;D&&(B=P.checked??!1),l.value.set(U,B)}}),H&&P.detail.forEach(Z=>{Z.permission.forEach(U=>{const B=`${Z.id}-${U.id}-child`;l.value.has(B)||l.value.set(B,D?Z.checked??!1:!1)})})})})(i.value)},p=()=>{console.log("[DCodePermissionMenu] initializeFromModelValue called. modelValue:",a.modelValue),l.value.clear(),f(!1),a.modelValue&&a.modelValue.length>0&&a.modelValue.forEach(D=>{const T=D.menuId,M=D.actionsIds;i.value.forEach(P=>{P.id===T&&M.forEach(H=>{const Z=`${T}-${H}-parent`;l.value.set(Z,!0)}),P.detail&&P.detail.length>0&&P.detail.forEach(H=>{H.id===T&&M.forEach(Z=>{const U=`${T}-${Z}-child`;l.value.set(U,!0)})})})})};p(),e.watch(()=>a.modelValue,()=>{p()},{deep:!0}),e.watch(()=>i.value.length,(D,T)=>{T===0&&D>0&&p()});const m=D=>{c.value.has(D)?c.value.delete(D):c.value.add(D)},h=D=>c.value.has(D),g=(D,T,M=!1)=>{const P=`${D}-${T}-${M?"child":"parent"}`;return l.value.get(P)??!1},k=()=>{const D=N();s("update:modelValue",D.permissions)},b=(D,T,M,P=!1)=>{const H=M.target.checked,Z=`${D}-${T}-${P?"child":"parent"}`;l.value.set(Z,H),s("permission-change",D,T,H,!P),k()},E=D=>d(D)?D.permission.filter(u):D.permission,x=(D,T,M)=>{const P=M.target.checked;T.permission.forEach(H=>{if(u(H)){const U=`${T.id}-${H.id}-child`;l.value.set(U,P);return}const Z=`${T.id}-${H.id}-child`;l.value.set(Z,P)}),l.value=new Map(l.value),s("menu-check",T.id,P),k()},C=(D,T=!1)=>{const M=T?D.permission:E(D);return!M||M.length===0?!1:M.every(P=>{const H=`${D.id}-${P.id}-${T?"child":"parent"}`;return l.value.get(H)??!1})},V=()=>{const D={};return i.value.forEach(T=>{var M;D[T.id]={name:T.name,parentPermissions:T.permission.map(P=>({id:P.id,name:P.name,checked:g(T.id,P.id,!1)})),children:((M=T.detail)==null?void 0:M.map(P=>({id:P.id,name:P.name,permissions:P.permission.map(H=>({id:H.id,name:H.name,checked:g(P.id,H.id,!0)}))})))||[]}}),D},N=()=>{const D=[],T=(M,P=!1)=>{const H=[];M.permission.forEach(Z=>{const U=`${M.id}-${Z.id}-${P?"child":"parent"}`;(l.value.get(U)??!1)&&H.push(Z.id)}),H.length>0&&D.push({menuId:M.id,actionsIds:H})};return i.value.forEach(M=>{T(M,!1),M.detail&&M.detail.length>0&&M.detail.forEach(P=>{T(P,!0)})}),{permissions:D}};return o({getCurrentStates:V,getPermissionsForDatabase:N,getAllPermissionsWithStatus:()=>{const D=[],T=(M,P=!1)=>{const H=M.permission.map(U=>{const B=`${M.id}-${U.id}-${P?"child":"parent"}`,A=l.value.get(B)??!1;return{id:U.id,name:U.name,checked:A}}),Z=H.filter(U=>U.checked).map(U=>U.id);D.push({menuId:M.id,menuName:M.name,actionsIds:Z,actions:H})};return i.value.forEach(M=>{T(M,!1),M.detail&&M.detail.length>0&&M.detail.forEach(P=>{T(P,!0)})}),{permissions:D}},permissionStates:l,expandAll:()=>{i.value.forEach(D=>{d(D)&&c.value.add(D.id)})},collapseAll:()=>{c.value.clear()}}),(D,T)=>(e.openBlock(),e.createElementBlock("div",IA,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,M=>(e.openBlock(),e.createElementBlock("div",{key:M.id,class:e.normalizeClass(["dcode-card overflow-hidden",{"border-l-4 border-l-blue-500":d(M)}])},[e.createElementVNode("div",zA,[e.createElementVNode("div",jA,[e.createElementVNode("div",UA,[d(M)?(e.openBlock(),e.createElementBlock("button",{key:0,onClick:P=>m(M.id),type:"button",class:"p-1 hover:bg-white/20 rounded-lg transition-colors"},[h(M.id)?(e.openBlock(),e.createBlock(e.unref(be.ChevronDown),{key:0,class:"w-5 h-5"})):(e.openBlock(),e.createBlock(e.unref(be.ChevronRight),{key:1,class:"w-5 h-5"}))],8,WA)):(e.openBlock(),e.createElementBlock("div",HA)),t.showIcons&&M.icon?(e.openBlock(),e.createElementBlock("span",qA,[e.createElementVNode("i",{class:e.normalizeClass([M.icon,"text-2xl"])},null,2)])):e.createCommentVNode("",!0),e.createElementVNode("h3",KA,e.toDisplayString(M.name),1)])])]),M.permission&&M.permission.length>0?(e.openBlock(),e.createElementBlock("div",GA,[e.createElementVNode("h4",XA,e.toDisplayString(e.unref(r)("common.permissions"))+": ",1),e.createElementVNode("div",YA,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(E(M),P=>(e.openBlock(),e.createElementBlock("label",{key:P.id,class:"flex items-center gap-2 px-3 py-2 bg-white dark:bg-neutral-800 border border-gray-200 dark:border-neutral-700/50 rounded-lg cursor-pointer hover:border-blue-400 dark:hover:border-primary-500 hover:bg-blue-50 dark:hover:bg-neutral-900/50 transition-all group"},[e.createElementVNode("input",{type:"checkbox",checked:g(M.id,P.id,!1),onChange:H=>b(M.id,P.id,H,!1),class:"w-4 h-4 text-blue-600 border-gray-300 dark:border-neutral-600 dark:bg-zinc-800 rounded focus:ring-blue-500 dark:focus:ring-blue-600 cursor-pointer"},null,40,JA),e.createElementVNode("span",QA,e.toDisplayString(P.name),1)]))),128))])])):e.createCommentVNode("",!0),e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-300 ease-out","enter-from-class":"opacity-0 max-h-0","enter-to-class":"opacity-100 max-h-[5000px]","leave-active-class":"transition-all duration-300 ease-in","leave-from-class":"opacity-100 max-h-[5000px]","leave-to-class":"opacity-0 max-h-0"},{default:e.withCtx(()=>[d(M)&&h(M.id)?(e.openBlock(),e.createElementBlock("div",ZA,[e.createElementVNode("h4",eD,[T[0]||(T[0]=e.createElementVNode("span",{class:"w-1 h-4 bg-blue-500 rounded"},null,-1)),e.createTextVNode(" "+e.toDisplayString(e.unref(r)("common.subMenus")),1)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(M.detail,P=>(e.openBlock(),e.createElementBlock("div",{key:P.id,class:"bg-white dark:bg-neutral-800 rounded-lg border border-gray-200 dark:border-neutral-700/50 overflow-hidden shadow-sm hover:shadow transition-shadow"},[e.createElementVNode("div",tD,[e.createElementVNode("div",oD,[e.createElementVNode("div",nD,[t.showIcons&&P.icon?(e.openBlock(),e.createElementBlock("span",rD,[e.createElementVNode("i",{class:e.normalizeClass([P.icon,"text-xl"])},null,2)])):e.createCommentVNode("",!0),e.createElementVNode("h5",aD,e.toDisplayString(P.name),1),P.path?(e.openBlock(),e.createElementBlock("span",sD,e.toDisplayString(P.path),1)):e.createCommentVNode("",!0),e.createElementVNode("label",iD,[e.createElementVNode("input",{type:"checkbox",checked:C(P,!0),onChange:H=>x(M,P,H),class:"w-3.5 h-3.5 text-pink-600 border-gray-300 dark:border-neutral-600 dark:bg-zinc-800 rounded focus:ring-pink-500 dark:focus:ring-pink-600 cursor-pointer"},null,40,lD),e.createElementVNode("span",cD,e.toDisplayString(e.unref(r)("common.selectAll")),1)])])])]),P.permission&&P.permission.length>0?(e.openBlock(),e.createElementBlock("div",dD,[e.createElementVNode("div",uD,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(P.permission,H=>(e.openBlock(),e.createElementBlock("label",{key:H.id,class:"flex items-center gap-2 px-2.5 py-1.5 bg-gray-50 dark:bg-zinc-900/50 border border-gray-200 dark:border-neutral-700 rounded-md cursor-pointer hover:border-pink-400 dark:hover:border-pink-500 hover:bg-pink-50 dark:hover:bg-pink-900/20 transition-all group"},[e.createElementVNode("input",{type:"checkbox",checked:g(P.id,H.id,!0),onChange:Z=>b(P.id,H.id,Z,!0),class:"w-3.5 h-3.5 text-pink-600 border-gray-300 dark:border-neutral-600 dark:bg-zinc-800 rounded focus:ring-pink-500 dark:focus:ring-pink-600 cursor-pointer"},null,40,fD),e.createElementVNode("span",pD,e.toDisplayString(H.name),1)]))),128))])])):e.createCommentVNode("",!0)]))),128))])):e.createCommentVNode("",!0)]),_:2},1024)],2))),128))]))}}),[["__scopeId","data-v-d20eb07e"]]),mD={class:"space-y-4"},hD={key:0,class:"block text-sm font-medium text-neutral-700 dark:text-neutral-300 mb-2"},gD={key:0,class:"text-danger-500"},bD={key:1,class:"flex items-center justify-center p-8 bg-white dark:bg-gray-800 rounded-lg shadow"},yD={class:"text-neutral-600 dark:text-neutral-400"},kD={key:2,class:"p-6 bg-white dark:bg-gray-800 rounded-lg shadow text-center"},xD={class:"text-neutral-500 dark:text-neutral-400"},wD={key:3,class:"space-y-3"},CD={class:"flex items-center justify-between p-4 bg-neutral-50 dark:bg-neutral-800 border-b border-neutral-200 dark:border-neutral-700"},ED={class:"flex items-center gap-3"},SD={class:"font-medium text-gray-900 dark:text-gray-100 text-base"},_D={class:"text-xs text-gray-500 dark:text-gray-400 mt-0.5"},BD={class:"flex items-center gap-2 text-sm font-medium"},vD={class:"px-2.5 py-1 rounded-full bg-primary-100 dark:bg-primary-900 text-primary-700 dark:text-primary-300"},AD={class:"p-4"},DD={class:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-3"},ND={class:"ml-2 flex-1 min-w-0"},VD=["for"],MD={key:0,class:"text-xs text-gray-500 dark:text-gray-400 mt-0.5 line-clamp-2"},TD={key:4,class:"mt-1 text-xs text-danger-600"},nl=e.defineComponent({__name:"DCodeTreePermissions",props:{modelValue:{},label:{},required:{type:Boolean},disabled:{type:Boolean},error:{},treeData:{}},emits:["update:modelValue"],setup(t,{emit:o}){const n=t,r=o,{t:a}=Dt.useI18n(),s=e.ref(!0),i=e.ref([]),l=e.ref({}),c=e.ref([]),d=e.ref({}),u=b=>{if(!b)return[];if(Array.isArray(b)&&b.length>0&&b[0].module&&Array.isArray(b[0].permissions))return b.map(E=>({menuId:E.menuId,module:E.module,label:E.label||E.module,permissions:E.permissions}));if(Array.isArray(b)&&b.length>0&&b[0].key){const E={};return b.forEach(x=>{const C=x.key,V=C&&C.includes(".")?C.split(".")[0]:"other";E[V]||(E[V]={menuId:0,module:V,label:V,permissions:[]}),E[V].permissions.push({id:x.id,key:x.key,label:x.label,description:x.description})}),Object.values(E)}if(Array.isArray(b)&&b.length>0&&b[0].id&&b[0].name&&Array.isArray(b[0].permission)){const E=[],x=(C,V="")=>{const N=V?`${V}.${C.name}`:C.name,w=N.toLowerCase().replace(/\s+/g,"_"),y=[];if(C.detail&&Array.isArray(C.detail)&&C.detail.forEach(_=>{y.push(_.id)}),C.permission&&C.permission.length>0){const _=C.permission.map(D=>({id:D.id,key:`${w}.${D.name.toLowerCase().replace(/\s+/g,"_")}`,label:`${D.name} ${C.name}`,description:`Permission to ${D.name.toLowerCase()} ${C.name.toLowerCase()}`}));E.push({menuId:C.id,module:w,label:C.name,permissions:_,subMenuIds:y.length>0?y:void 0})}C.detail&&Array.isArray(C.detail)&&C.detail.forEach(_=>{x(_,N)})};return b.forEach(C=>x(C)),E}return b.data?u(b.data):[]},f=async()=>{s.value=!0;try{let b;n.treeData&&n.treeData.length>0?b=n.treeData:b=[];const E=u(b);i.value=E;const x={},C=[],V={};E.forEach(w=>{w.permissions.forEach(y=>{const _=typeof y.id=="string"?parseInt(y.id):y.id;V[_]=w.menuId})});const N=new Set;n.modelValue&&Array.isArray(n.modelValue)&&n.modelValue.forEach(w=>{C.push(w.menuId),w.actionsIds&&Array.isArray(w.actionsIds)&&w.actionsIds.forEach(y=>N.add(y))}),E.forEach(w=>w.permissions.forEach(y=>{const _=typeof y.id=="string"?parseInt(y.id):y.id;x[_]=N.has(_)})),l.value=x,c.value=C,d.value=V}catch{i.value=[]}finally{s.value=!1}},p=b=>b.permissions.filter(E=>{const x=typeof E.id=="string"?parseInt(E.id):E.id;return l.value[x]}).length,m=b=>b.permissions.every(E=>{const x=typeof E.id=="string"?parseInt(E.id):E.id;return l.value[x]}),h=b=>{const E=p(b);return E>0&&E<b.permissions.length},g=e.ref(!1),k=(b,E)=>{g.value=!0,b.permissions.map(V=>typeof V.id=="string"?parseInt(V.id):V.id),b.permissions.forEach(V=>{const N=typeof V.id=="string"?parseInt(V.id):V.id;l.value[N]=E});let x=n.modelValue?[...n.modelValue]:[],C=[b.menuId];b.subMenuIds&&b.subMenuIds.length>0&&(C=[...C,...b.subMenuIds],b.subMenuIds.forEach(V=>{const N=i.value.find(w=>w.menuId===V);N&&N.permissions.forEach(w=>{const y=typeof w.id=="string"?parseInt(w.id):w.id;l.value[y]=E})})),E?C.forEach(V=>{const N=i.value.find(w=>w.menuId===V);if(N){const w=N.permissions.map(_=>typeof _.id=="string"?parseInt(_.id):_.id),y=x.findIndex(_=>_.menuId===V);y!==-1?x[y]={menuId:V,actionsIds:w}:x.push({menuId:V,actionsIds:w})}}):x=x.filter(V=>!C.includes(V.menuId)),c.value=x.map(V=>V.menuId),r("update:modelValue",x),setTimeout(()=>{g.value=!1},100)};return e.watch(()=>n.modelValue,b=>{if(!b)return;const E=new Set,x=[];b.forEach(C=>{x.push(C.menuId),C.actionsIds&&Array.isArray(C.actionsIds)&&C.actionsIds.forEach(V=>E.add(V))}),Object.keys(l.value).forEach(C=>{const V=parseInt(C);l.value[V]=E.has(V)}),c.value=x}),e.watch(()=>n.treeData,b=>{b&&b.length>0&&f()},{deep:!0}),e.watch(l,(b,E)=>{if(g.value)return;if(Object.keys(b).map(C=>parseInt(C)).filter(C=>b[C]!==(E==null?void 0:E[C])).length>0){let C=n.modelValue?[...n.modelValue]:[];const V={};Object.keys(b).forEach(N=>{const w=parseInt(N);if(b[w]){const y=d.value[w];y!==void 0&&(V[y]||(V[y]=[]),V[y].push(w))}}),Object.keys(V).forEach(N=>{const w=parseInt(N),y=V[w],_=C.findIndex(D=>D.menuId===w);_!==-1?C[_]={menuId:w,actionsIds:y}:C.push({menuId:w,actionsIds:y})}),C=C.filter(N=>V[N.menuId]&&V[N.menuId].length>0),c.value=C.map(N=>N.menuId),r("update:modelValue",C)}},{deep:!0}),e.onMounted(f),(b,E)=>(e.openBlock(),e.createElementBlock("div",mD,[t.label?(e.openBlock(),e.createElementBlock("label",hD,[e.createTextVNode(e.toDisplayString(t.label)+" ",1),t.required?(e.openBlock(),e.createElementBlock("span",gD,"*")):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),s.value?(e.openBlock(),e.createElementBlock("div",bD,[e.createVNode(e.unref(be.Loader2),{class:"animate-spin text-primary-600 mr-2",size:24}),e.createElementVNode("span",yD,e.toDisplayString(e.unref(a)("common.loadingPermissions")),1)])):i.value.length===0?(e.openBlock(),e.createElementBlock("div",kD,[e.createElementVNode("p",xD,e.toDisplayString(e.unref(a)("common.noPermissions")),1)])):(e.openBlock(),e.createElementBlock("div",wD,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,x=>(e.openBlock(),e.createElementBlock("div",{key:x.module,class:"bg-white dark:bg-neutral-800 rounded-lg border border-neutral-200/60 dark:border-neutral-700/50 shadow-sm hover:shadow-md transition-shadow"},[e.createElementVNode("div",CD,[e.createElementVNode("div",ED,[e.createVNode(un,{modelValue:m(x),indeterminate:h(x),"onUpdate:modelValue":C=>k(x,!!C),disabled:t.disabled},null,8,["modelValue","indeterminate","onUpdate:modelValue","disabled"]),e.createElementVNode("div",null,[e.createElementVNode("div",SD,e.toDisplayString(x.label||x.module),1),e.createElementVNode("div",_D,e.toDisplayString(p(x))+" "+e.toDisplayString(e.unref(a)("common.from"))+" "+e.toDisplayString(x.permissions.length)+" "+e.toDisplayString(e.unref(a)("common.selected")),1)])]),e.createElementVNode("div",BD,[e.createElementVNode("div",vD,e.toDisplayString(p(x))+"/"+e.toDisplayString(x.permissions.length),1)])]),e.createElementVNode("div",AD,[e.createElementVNode("div",DD,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(x.permissions,C=>(e.openBlock(),e.createElementBlock("div",{key:C.id,class:"flex items-start p-2 rounded hover:bg-gray-50 dark:hover:bg-gray-750 transition-colors"},[e.createVNode(un,{modelValue:l.value[typeof C.id=="string"?parseInt(C.id):C.id],"onUpdate:modelValue":V=>l.value[typeof C.id=="string"?parseInt(C.id):C.id]=V,disabled:t.disabled,class:"flex-shrink-0"},null,8,["modelValue","onUpdate:modelValue","disabled"]),e.createElementVNode("div",ND,[e.createElementVNode("label",{for:`perm-${C.id}`,class:"text-sm font-medium text-gray-700 dark:text-gray-300 cursor-pointer block"},e.toDisplayString(C.label||C.key),9,VD),C.description?(e.openBlock(),e.createElementBlock("p",MD,e.toDisplayString(C.description),1)):e.createCommentVNode("",!0)])]))),128))])])]))),128))])),t.error?(e.openBlock(),e.createElementBlock("p",TD,e.toDisplayString(t.error),1)):e.createCommentVNode("",!0)]))}});function je(t){if(!t)return"";const o=t.propsForm||t.propsFormStep||t.propsTable||t.propsTableStep||t.propsDataTableWizard||t.propsWizard||t.props||{};return t.modelKey||o.modelKey||o.modelDatatable||t.key||o.key||t.id||""}const Fe=(t,o)=>{if(o&&!(!t||typeof t!="object"))return t[o]!==void 0?t[o]:o.split(".").reduce((n,r)=>n==null?void 0:n[r],t)},Qe=(t,o,n)=>{if(!o)return;const r=o.split(".");let a=t;for(let s=0;s<r.length-1;s++){const i=r[s];(a[i]===void 0||a[i]===null||typeof a[i]!="object")&&(a[i]={}),a=a[i]}a[r[r.length-1]]=n},So=t=>{const o=e.toRaw(t);if(o==null)return o;if(Array.isArray(o))return o.map(n=>So(n));if(typeof o=="object"){if(o instanceof Date||o instanceof File||o instanceof Blob)return o;if(Object.getPrototypeOf(o)===Object.prototype||Object.getPrototypeOf(o)===null){const n={};return Object.keys(o).forEach(r=>n[r]=So(o[r])),n}}return o},Ya=t=>{if(!t||typeof t!="object")return[];if("var"in t)return[t.var];let o=[];return Object.values(t).forEach(n=>{Array.isArray(n)?n.forEach(r=>{o=o.concat(Ya(r))}):typeof n=="object"&&(o=o.concat(Ya(n)))}),o},np=t=>t?[...t].sort((o,n)=>(o.seq||0)-(n.seq||0)):[],Nr=(t,o={},n="")=>(!t||typeof t!="object"||Object.keys(t).forEach(r=>{const a=t[r],s=n?`${n}.${r}`:r;o[s]=a,a&&typeof a=="object"&&!Array.isArray(a)&&!a._isLogicValue&&Nr(a,o,s)}),o),_o=(t,o)=>{if(!(!t||typeof t!="object")){if(t[o]!==void 0)return t[o];if(Array.isArray(t))for(const n of t){const r=_o(n,o);if(r!==void 0)return r}else for(const n of Object.keys(t))if(typeof t[n]=="object"){const r=_o(t[n],o);if(r!==void 0)return r}}},rl=(t,o)=>{Object.keys(o).forEach(n=>{o[n]&&typeof o[n]=="object"&&!Array.isArray(o[n])?(t[n]||(t[n]={}),rl(t[n],o[n])):t[n]=o[n]})},Bo=(t,o)=>{if(!t||typeof t!="string"||t.startsWith("http")||!o||typeof o!="string")return t;const n=o.replace(/\/$/,""),r=t.startsWith("/")?t:`/${t}`;return`${n}${r}`},Vr=t=>{if(!t||typeof t!="object")return!0;const o=["no","action","_index","_isLogicValue"];return!Object.entries(t).some(([n,r])=>o.includes(n)?!1:r!=null&&r!==""?Array.isArray(r)?r.length>0:typeof r=="object"&&!(r instanceof Date)?Object.values(r).some(a=>a!=null&&a!==""):!0:!1)},PD={key:0,class:"fixed inset-0 z-[100] flex justify-end"},RD={key:0,class:"relative w-full max-w-sm h-full bg-white dark:bg-slate-900 shadow-2xl flex flex-col border-l border-gray-200 dark:border-gray-800"},OD={class:"px-6 py-4 border-b border-gray-100 dark:border-gray-800 flex items-center justify-between"},FD={class:"text-lg font-semibold text-gray-900 dark:text-gray-100"},$D={key:0,class:"text-sm text-gray-500 dark:text-gray-400 mt-1"},LD={class:"flex-1 overflow-y-auto p-6 scrollbar-thin scrollbar-thumb-gray-200 dark:scrollbar-thumb-gray-800"},ID=e.defineComponent({__name:"DataFilterSheet",props:{title:{default:"Filter Data"},description:{default:"Masukan parameter pencarian untuk memfilter data."}},setup(t,{expose:o}){const n=e.ref(!1),r=()=>{n.value=!0,document.body.style.overflow="hidden"},a=()=>{n.value=!1,document.body.style.overflow=""};return o({open:r,close:a}),(s,i)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",{onClick:r},[e.renderSlot(s.$slots,"trigger",{},()=>[e.createVNode(at,{variant:"outline",class:"gap-2",icon:"Search",text:"Pencarian"})])]),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[n.value?(e.openBlock(),e.createElementBlock("div",PD,[e.createVNode(e.Transition,{appear:"","enter-active-class":"transition-opacity duration-300 ease-out","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"transition-opacity duration-200 ease-in","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:e.withCtx(()=>[n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 bg-black/40 backdrop-blur-sm",onClick:a})):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.Transition,{appear:"","enter-active-class":"transition-transform duration-300 ease-out","enter-from-class":"translate-x-full","enter-to-class":"translate-x-0","leave-active-class":"transition-transform duration-200 ease-in","leave-from-class":"translate-x-0","leave-to-class":"translate-x-full"},{default:e.withCtx(()=>[n.value?(e.openBlock(),e.createElementBlock("div",RD,[e.createElementVNode("div",OD,[e.createElementVNode("div",null,[e.createElementVNode("h3",FD,e.toDisplayString(t.title),1),t.description?(e.openBlock(),e.createElementBlock("p",$D,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)]),e.createVNode(at,{variant:"ghost",size:"icon",onClick:a,icon:"X",class:"text-gray-400 hover:text-gray-600"})]),e.createElementVNode("div",LD,[e.renderSlot(s.$slots,"default")])])):e.createCommentVNode("",!0)]),_:3})])):e.createCommentVNode("",!0)]))]))}}),zD={key:0,class:"robot-list-wrapper"},jD={class:"overflow-hidden rounded-2xl border border-neutral-200 dark:border-neutral-800 bg-white dark:bg-neutral-900 shadow-sm"},UD={class:"w-full text-left border-collapse"},WD={class:"divide-y divide-neutral-100 dark:divide-neutral-800"},HD={class:"px-6 py-4"},qD={class:"flex items-center gap-4"},KD={class:"w-10 h-10 rounded-xl bg-primary-50 dark:bg-primary-500/10 flex items-center justify-center border border-primary-100 dark:border-primary-500/20"},GD={class:"text-sm font-black text-neutral-900 dark:text-neutral-100"},XD={class:"text-[10px] font-bold text-neutral-400 uppercase tracking-wider"},YD={class:"px-6 py-4"},JD={class:"space-y-1"},QD={class:"flex items-center gap-2"},ZD={class:"text-xs font-bold text-neutral-700 dark:text-neutral-300"},eN={class:"flex items-center gap-2"},tN={class:"text-[10px] font-medium text-neutral-500"},oN={class:"px-6 py-4"},nN={class:"space-y-1"},rN={class:"flex items-center gap-2"},aN={class:"text-xs font-bold text-neutral-700 dark:text-neutral-300"},sN={class:"flex items-center gap-2"},iN={class:"text-[10px] font-medium text-neutral-500"},lN={class:"px-6 py-4 text-center"},cN={class:"px-6 py-4 text-center"},dN={class:"px-6 py-4 text-right"},uN={class:"text-[10px] font-black text-neutral-900 dark:text-neutral-100 mb-0.5"},fN={class:"text-[9px] font-bold text-neutral-400"},pN={key:0,class:"flex flex-col items-center justify-center py-16"},mN={key:1,class:"flex items-center justify-center py-16"},Ja=ht(e.defineComponent({name:"DCodeRobotList",__name:"DCodeRobotList",props:{title:{default:"Robot Monitoring"},modelValue:{default:()=>[]},visible:{type:Boolean,default:!0},dummyMode:{type:Boolean,default:!1},endpoint:{default:()=>({})},socketEndpoint:{},socketParams:{}},emits:["update:modelValue"],setup(t,{emit:o}){const n=t,r=o,a=[{id:1,code:"SUPERVISOR",name:"ROBOT SUPERVISOR",url:"http://110.239.67.31:9104",urlStream:"http://110.239.67.31:9106",operator:{id:1,name:"Rizky",code:"rizkymuhammad@skbf.co.id"},supervisor:{id:2,name:"Denis",code:"denis.atmawijaya@skbf.co.id"},robotRole:{id:252,code:"APPV",name:"ROBOT ROLE APPROVER"},channel:{id:248,code:"WP",name:"WEB PORTAL"},status:{id:15,code:"AKT",name:"AKTIF"},healthStatus:"UP",statusProcessing:"IDLE",idle:!0,connected:!0,lastUpdate:"2026-05-12 11:07:41"},{id:2,code:"OPERATOR",name:"ROBOT OPERATOR",url:"http://110.239.67.31:9103",urlStream:"http://110.239.67.31:9105",operator:{id:1,name:"Rizky",code:"rizkymuhammad@skbf.co.id"},supervisor:{id:2,name:"Denis",code:"denis.atmawijaya@skbf.co.id"},robotRole:{id:251,code:"REQ",name:"ROBOT ROLE REQUESTOR"},channel:{id:248,code:"WP",name:"WEB PORTAL"},status:{id:15,code:"AKT",name:"AKTIF"},healthStatus:"UP",statusProcessing:"IDLE",idle:!0,connected:!0,lastUpdate:"2026-05-12 11:07:45"}],s=e.ref(n.dummyMode?a:n.modelValue||[]),i=e.ref(!1),l=e.ref(""),c=e.inject("externalApi")||{},{DCodeApi:d}=c,u=c.socket||c.managedSocket,f=u==null?void 0:u.on,p=u==null?void 0:u.off,m=(u==null?void 0:u.send)||(u==null?void 0:u.emit),h=(u==null?void 0:u.connect)||(u==null?void 0:u.init),g=e.computed(()=>{var w;return u?typeof u.isConnected=="function"?u.isConnected():typeof u.isConnected=="boolean"?u.isConnected:((w=u.isConnected)==null?void 0:w.value)!==void 0?u.isConnected.value:!0:!1}),k=e.computed(()=>{var w;return((w=n.endpoint)==null?void 0:w.socket)||n.socketEndpoint}),b=e.computed(()=>n.socketParams||{}),E=w=>{if(!w)return;const y=(w==null?void 0:w.data)??(w==null?void 0:w.result)??w,_=(y==null?void 0:y.data)??(y==null?void 0:y.items)??(y==null?void 0:y.list)??(y==null?void 0:y.rows)??y;Array.isArray(_)?(s.value=_,r("update:modelValue",s.value)):typeof _=="object"&&_!==null?(s.value=[_],r("update:modelValue",s.value)):x()};e.watch(()=>k.value,(w,y)=>{!f||!p||n.dummyMode||(y&&p(y,E),w&&(h&&h(),f(w,E),g.value&&m&&m(w,b.value)))},{immediate:!0}),e.watch(()=>g.value,w=>{w&&k.value&&m&&!n.dummyMode&&m(k.value,b.value)}),e.onUnmounted(()=>{p&&k.value&&p(k.value,E)});const x=async()=>{var w;if(n.dummyMode){s.value=a,r("update:modelValue",s.value);return}if(!(!((w=n.endpoint)!=null&&w.apiUrl)||typeof d!="function")){i.value=!0;try{const y=await d("","",{},{_url:n.endpoint.apiUrl,_method:n.endpoint.apiMethod||"GET"}),_=(y==null?void 0:y.data)??y,D=(_==null?void 0:_.data)??_;s.value=Array.isArray(D)?D:[D],r("update:modelValue",s.value)}catch(y){console.error("[DCodeRobotList] Fetch data failed:",y)}finally{i.value=!1}}},C=e.computed(()=>{if(!l.value)return s.value;const w=l.value.toLowerCase();return s.value.filter(y=>{var _,D,T,M,P,H;return((_=y.code||y.robotCode)==null?void 0:_.toLowerCase().includes(w))||((D=y.name)==null?void 0:D.toLowerCase().includes(w))||((T=y.healthStatus)==null?void 0:T.toLowerCase().includes(w))||((M=y.statusProcessing)==null?void 0:M.toLowerCase().includes(w))||((H=(P=y.operator)==null?void 0:P.name)==null?void 0:H.toLowerCase().includes(w))})});e.watch(()=>n.modelValue,w=>{n.dummyMode||w&&w.length>0&&(s.value=w)},{immediate:!0}),e.onMounted(()=>{x()});const V=w=>{if(!w)return"secondary";switch(w.toUpperCase()){case"UP":return"success";case"DOWN":return"destructive";case"OFFLINE":return"destructive";case"IDLE":return"warning";default:return"secondary"}},N=w=>{if(!w)return"ghost";switch(w.toUpperCase()){case"IDLE":return"ghost";case"BUSY":case"PROCESSING":return"info";default:return"ghost"}};return(w,y)=>t.visible?(e.openBlock(),e.createElementBlock("div",zD,[e.createElementVNode("div",jD,[e.createElementVNode("table",UD,[y[0]||(y[0]=e.createElementVNode("thead",null,[e.createElementVNode("tr",{class:"bg-neutral-50 dark:bg-neutral-800/50 border-b border-neutral-100 dark:border-neutral-800"},[e.createElementVNode("th",{class:"px-6 py-4 text-[10px] font-black uppercase tracking-widest text-neutral-400"},"Robot Info"),e.createElementVNode("th",{class:"px-6 py-4 text-[10px] font-black uppercase tracking-widest text-neutral-400"},"Operator & SPV"),e.createElementVNode("th",{class:"px-6 py-4 text-[10px] font-black uppercase tracking-widest text-neutral-400"},"Role & Channel"),e.createElementVNode("th",{class:"px-6 py-4 text-[10px] font-black uppercase tracking-widest text-neutral-400 text-center"},"Health"),e.createElementVNode("th",{class:"px-6 py-4 text-[10px] font-black uppercase tracking-widest text-neutral-400 text-center"},"Processing"),e.createElementVNode("th",{class:"px-6 py-4 text-[10px] font-black uppercase tracking-widest text-neutral-400 text-right"},"Last Update")])],-1)),e.createElementVNode("tbody",WD,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,_=>{var D,T,M,P,H,Z;return e.openBlock(),e.createElementBlock("tr",{key:_.id||_.code,class:"group hover:bg-neutral-50/50 dark:hover:bg-neutral-800/30 transition-colors"},[e.createElementVNode("td",HD,[e.createElementVNode("div",qD,[e.createElementVNode("div",KD,[e.createVNode(e.unref(be.Terminal),{class:"w-5 h-5 text-primary-500"})]),e.createElementVNode("div",null,[e.createElementVNode("div",GD,e.toDisplayString(_.name),1),e.createElementVNode("div",XD,e.toDisplayString(_.code),1)])])]),e.createElementVNode("td",YD,[e.createElementVNode("div",JD,[e.createElementVNode("div",QD,[e.createVNode(e.unref(be.User),{class:"w-3 h-3 text-neutral-400"}),e.createElementVNode("span",ZD,e.toDisplayString(((D=_.operator)==null?void 0:D.name)||"-"),1)]),e.createElementVNode("div",eN,[e.createVNode(e.unref(be.ShieldCheck),{class:"w-3 h-3 text-neutral-400"}),e.createElementVNode("span",tN,e.toDisplayString(((T=_.supervisor)==null?void 0:T.name)||"-"),1)])])]),e.createElementVNode("td",oN,[e.createElementVNode("div",nN,[e.createElementVNode("div",rN,[e.createVNode(e.unref(be.Settings),{class:"w-3 h-3 text-neutral-400"}),e.createElementVNode("span",aN,e.toDisplayString(((M=_.robotRole)==null?void 0:M.name)||"-"),1)]),e.createElementVNode("div",sN,[e.createVNode(e.unref(be.Globe),{class:"w-3 h-3 text-neutral-400"}),e.createElementVNode("span",iN,e.toDisplayString(((P=_.channel)==null?void 0:P.name)||"-"),1)])])]),e.createElementVNode("td",lN,[e.createVNode(On,{variant:V(_.healthStatus),pill:"",class:"px-3 py-1 text-[9px] font-black uppercase tracking-wider"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(_.healthStatus),1)]),_:2},1032,["variant"])]),e.createElementVNode("td",cN,[e.createVNode(On,{variant:N(_.statusProcessing),size:"xs",pill:"",class:"px-2 py-0.5 text-[9px] font-black uppercase"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(_.statusProcessing),1)]),_:2},1032,["variant"])]),e.createElementVNode("td",dN,[e.createElementVNode("div",uN,e.toDisplayString(((H=_.lastUpdate)==null?void 0:H.split(" ")[1])||"-"),1),e.createElementVNode("div",fN,e.toDisplayString(((Z=_.lastUpdate)==null?void 0:Z.split(" ")[0])||"-"),1)])])}),128))])]),C.value.length===0&&!i.value?(e.openBlock(),e.createElementBlock("div",pN,[e.createVNode(e.unref(be.Activity),{class:"w-10 h-10 text-neutral-200 dark:text-neutral-800 mb-4"}),y[1]||(y[1]=e.createElementVNode("h3",{class:"text-sm font-black text-neutral-400 uppercase tracking-widest"},"No Robots Found",-1))])):e.createCommentVNode("",!0),i.value&&s.value.length===0?(e.openBlock(),e.createElementBlock("div",mN,[e.createVNode(e.unref(be.RefreshCw),{class:"w-8 h-8 text-primary-500 animate-spin"})])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-b2313e6f"]]),hN={key:0},gN=["value","name"],bN=e.defineComponent({__name:"DynamicFilterField",props:{field:{},modelValue:{},disabled:{type:Boolean},required:{type:Boolean},readonly:{type:Boolean},options:{},dynamicLabels:{},dynamicLength:{}},emits:["update:modelValue"],setup(t,{emit:o}){const{locale:n}=Dt.useI18n(),r=t,a=o,s=e.ref(r.modelValue);e.watch(()=>r.modelValue,u=>{s.value=u});const i={DCodeTextField:Sn,DCodeAutoComplete:qr,DCodeDatePicker:Wa,DCodeTextarea:Rn,DCodeTextArea:Rn,DCodeCheckbox:un,DCodeSwitch:Xa,DCodeOtpInput:Ka,DCodeImageField:qa,DCodeSlider:Ga,DCodeRobotList:Ja},l=e.computed(()=>{const u=r.field.component;return i[u]||null}),c=e.computed(()=>{var p,m,h,g;const u=r.field.props,f={};return(u.labelID||u.labelEN||u.labelKR)&&(f.label=n.value==="kr"||n.value==="ko"?u.labelKR||u.labelEN:n.value==="id"?u.labelID:u.labelEN,r.field.component==="DCodeSwitch"&&(f.title=f.label)),(u.placeholderID||u.placeholderEN||u.placeholderKR)&&(f.placeholder=n.value==="kr"||n.value==="ko"?u.placeholderKR||u.placeholderEN:n.value==="id"?u.placeholderID:u.placeholderEN),(r.required!==void 0||u.required!==void 0)&&(f.required=r.required!==void 0?r.required:u.required),(r.disabled!==void 0||u.disabled!==void 0)&&(f.disabled=r.disabled!==void 0?r.disabled:u.disabled),(r.readonly!==void 0||u.readonly!==void 0)&&(f.readonly=r.readonly!==void 0?r.readonly:u.readonly),u.valueType&&(f.type=u.valueType),(((p=r.dynamicLength)==null?void 0:p.minLength)!==void 0||u.minLength!==void 0)&&(f.minLength=((m=r.dynamicLength)==null?void 0:m.minLength)??u.minLength),(((h=r.dynamicLength)==null?void 0:h.maxLength)!==void 0||u.maxLength!==void 0)&&(f.maxLength=((g=r.dynamicLength)==null?void 0:g.maxLength)??u.maxLength),u.min!==void 0&&(f.min=u.min),u.max!==void 0&&(f.max=u.max),(r.options||u.options)&&(f.options=r.options||u.options),u.endpoint&&(f.endpoint=u.endpoint),u.itemTitle&&(f.itemTitle=u.itemTitle),u.itemValue&&(f.itemValue=u.itemValue),u.returnObject!==void 0&&(f.returnObject=u.returnObject),u.clearable!==void 0&&(f.clearable=u.clearable),Object.keys(u).forEach(k=>{!["labelID","labelEN","labelKR","placeholderID","placeholderEN","placeholderKR"].includes(k)&&!f.hasOwnProperty(k)&&(f[k]=u[k])}),r.dynamicLabels&&((r.dynamicLabels.labelID||r.dynamicLabels.labelEN||r.dynamicLabels.labelKR)&&(f.label=n.value==="kr"||n.value==="ko"?r.dynamicLabels.labelKR||r.dynamicLabels.labelEN:n.value==="id"?r.dynamicLabels.labelID:r.dynamicLabels.labelEN,r.field.component==="DCodeSwitch"&&(f.title=f.label)),(r.dynamicLabels.placeholderID||r.dynamicLabels.placeholderEN||r.dynamicLabels.placeholderKR)&&(f.placeholder=n.value==="kr"||n.value==="ko"?r.dynamicLabels.placeholderKR||r.dynamicLabels.placeholderEN:n.value==="id"?r.dynamicLabels.placeholderID:r.dynamicLabels.placeholderEN)),f}),d=u=>{s.value=u,a("update:modelValue",u)};return(u,f)=>t.field.isHidden?(e.openBlock(),e.createElementBlock("div",hN,[e.createElementVNode("input",{type:"hidden",value:s.value,name:t.field.model},null,8,gN)])):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l.value),e.mergeProps({key:1},c.value,{modelValue:s.value,"onUpdate:modelValue":[f[0]||(f[0]=p=>s.value=p),d]}),null,16,["modelValue"]))}}),yN={class:"flex items-center gap-2 shrink-0"},kN={class:"flex-1 text-right overflow-hidden flex items-center justify-end gap-2"},xN=["title"],wN=["href"],CN={class:"truncate max-w-[150px]"},EN=["title"],al=ht(e.defineComponent({name:"DCodeStaticLabel",__name:"DCodeStaticLabel",props:{label:{},modelValue:{},value:{},icon:{},color:{},valueType:{},prefix:{},suffix:{},type:{},locale:{default:"id-ID"},badgeColor:{default:"secondary"},placeholder:{default:"-"}},setup(t){const o=t,n=e.ref(!1),r=e.computed(()=>o.modelValue??o.value),a=e.computed(()=>(o.valueType||o.type||"text").toUpperCase()),s=e.computed(()=>{const c=o.color||"secondary",d={primary:"border-blue-200 text-blue-700 dark:text-blue-400 dark:border-blue-900/50",success:"border-green-200 text-green-700 dark:text-green-400 dark:border-green-900/50",warning:"border-yellow-200 text-yellow-700 dark:text-yellow-400 dark:border-yellow-900/50",danger:"border-red-200 text-red-700 dark:text-red-400 dark:border-red-900/50",info:"border-cyan-200 text-cyan-700 dark:text-cyan-400 dark:border-cyan-900/50",secondary:"border-slate-200 text-slate-700 dark:border-slate-700/50 dark:text-slate-200",dark:"border-b border-gray-300 text-gray-900 dark:text-gray-100 dark:border-gray-700"};return d[c]||d.secondary}),i=e.computed(()=>{const c=o.badgeColor||"secondary",d={primary:"bg-blue-50 border-blue-200 text-blue-700 dark:bg-blue-950/20 dark:border-blue-900/50 dark:text-blue-400",success:"bg-green-50 border-green-200 text-green-700 dark:bg-green-950/20 dark:border-green-900/50 dark:text-green-400",warning:"bg-yellow-50 border-yellow-200 text-yellow-700 dark:bg-yellow-950/20 dark:border-yellow-900/50 dark:text-yellow-400",danger:"bg-red-50 border-red-200 text-red-700 dark:bg-red-950/20 dark:border-red-900/50 dark:text-red-400",info:"bg-cyan-50 border-cyan-200 text-cyan-700 dark:bg-cyan-950/20 dark:border-cyan-900/50 dark:text-cyan-400",secondary:"bg-slate-50 border-slate-200 text-slate-700 dark:bg-slate-900/20 dark:border-slate-800 dark:text-slate-200",dark:"bg-neutral-100 border-neutral-300 text-neutral-900 dark:bg-neutral-800 dark:border-neutral-700 dark:text-neutral-100"};return d[c]||d.secondary}),l=e.computed(()=>{const c=r.value;if(c==null||c==="")return o.placeholder;let d="";switch(a.value){case"DATE":d=Is(c,"short",o.locale);break;case"DATETIME":d=Is(c,"datetime",o.locale);break;case"CURRENCY":const p=o.prefix||"IDR";d=Vc(c,p);break;case"BOOLEAN":typeof c=="boolean"?d=o.locale.startsWith("id")?c?"Ya":"Tidak":c?"Yes":"No":d=String(c);break;case"NUMBER":const m=Number(c);d=isNaN(m)?String(c):new Intl.NumberFormat(o.locale).format(m);break;case"PASSWORD":d=n.value?String(c):"•".repeat(String(c).length||8);break;case"FILE":typeof c=="string"?d=c.split("/").pop()||"Attachment":d=c.name??c.label??"Attachment";break;default:typeof c=="object"&&c!==null?d=c.name??c.label??c.code??c.value??c.id??JSON.stringify(c):d=String(c);break}const u=a.value!=="CURRENCY"&&o.prefix?o.prefix:"",f=o.suffix||"";return`${u}${d}${f}`});return(c,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["flex flex-row justify-between items-center gap-4 py-3 px-0 border-b transition-all duration-300 rounded-none bg-transparent",s.value])},[e.createElementVNode("div",yN,[e.createVNode(pn,{label:t.label,icon:t.icon,class:"text-xs font-semibold text-neutral-500 dark:text-neutral-400 uppercase tracking-wider"},null,8,["label","icon"])]),e.createElementVNode("div",kN,[e.renderSlot(c.$slots,"value",{},()=>[a.value==="PASSWORD"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("span",{class:"text-sm font-mono font-medium truncate block",title:String(r.value||"")},e.toDisplayString(l.value),9,xN),e.createElementVNode("button",{type:"button",class:"p-1 hover:bg-neutral-100 dark:hover:bg-neutral-800 rounded transition-colors text-neutral-500 hover:text-neutral-800 dark:hover:text-neutral-200",onClick:d[0]||(d[0]=u=>n.value=!n.value)},[n.value?(e.openBlock(),e.createBlock(e.unref(be.EyeOff),{key:1,class:"w-4 h-4"})):(e.openBlock(),e.createBlock(e.unref(be.Eye),{key:0,class:"w-4 h-4"}))])],64)):a.value==="BADGE"?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(["inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-semibold border transition-all duration-200",i.value])},e.toDisplayString(l.value),3)):a.value==="FILE"&&r.value&&r.value!==t.placeholder?(e.openBlock(),e.createElementBlock("a",{key:2,href:String(r.value),target:"_blank",class:"inline-flex items-center gap-1.5 text-xs font-semibold text-blue-600 dark:text-blue-400 hover:underline transition-all"},[e.createVNode(e.unref(be.FileText),{class:"w-3.5 h-3.5"}),e.createElementVNode("span",CN,e.toDisplayString(l.value),1),e.createVNode(e.unref(be.Download),{class:"w-3 h-3 text-neutral-400"})],8,wN)):(e.openBlock(),e.createElementBlock("span",{key:3,class:"text-sm font-medium truncate block",title:l.value},e.toDisplayString(l.value),9,EN))],!0)])],2))}}),[["__scopeId","data-v-0315a6a1"]]),SN={class:"w-full"},_N={key:0,class:"flex flex-col"},BN={key:0,class:"flex flex-col items-center justify-center p-20 bg-neutral-50 dark:bg-neutral-900/50 rounded-xl border border-neutral-200 dark:border-neutral-800"},vN={key:1,class:"flex flex-col items-center justify-center p-12 bg-red-50 dark:bg-red-950/30 rounded-xl border border-red-100 dark:border-red-900/50"},AN={class:"text-xs font-bold text-red-600 dark:text-red-400 uppercase tracking-wider mb-3"},DN={key:2,class:"flex flex-col items-center justify-center p-16 bg-neutral-50/50 dark:bg-neutral-900/20 rounded-2xl border-2 border-dashed border-neutral-200 dark:border-neutral-800 transition-colors"},NN={class:"p-4 rounded-full bg-neutral-100 dark:bg-neutral-800 mb-4"},VN={class:"text-sm font-semibold text-neutral-500 dark:text-neutral-400"},MN={key:3,class:"flex flex-col gap-6"},TN={class:"text-base font-bold text-neutral-900 dark:text-neutral-100 flex items-center gap-2"},PN={key:0,class:"px-2 py-0.5 rounded-full bg-primary/10 text-primary text-[10px] font-semibold uppercase tracking-wider"},RN={class:"flex items-center gap-4 text-xs text-neutral-500 dark:text-neutral-400 font-medium"},ON={class:"flex items-center gap-1.5"},FN={class:"flex items-center gap-1.5"},$N={class:"hidden sm:inline-block px-1.5 py-0.5 rounded bg-neutral-100 dark:bg-neutral-800 border border-neutral-200 dark:border-neutral-700 font-mono text-[10px]"},LN={key:0,class:"grid grid-cols-1 md:grid-cols-2 gap-4"},IN={key:0,class:"flex flex-col gap-2 group/img"},zN={class:"relative overflow-hidden rounded-lg border border-neutral-200 dark:border-neutral-700 bg-neutral-100 dark:bg-neutral-900 aspect-video shadow-sm transition-transform duration-300 group-hover/img:shadow-md"},jN=["src","alt"],UN={key:1,class:"flex flex-col gap-2 group/img"},WN={class:"relative overflow-hidden rounded-lg border border-neutral-200 dark:border-neutral-700 bg-neutral-100 dark:bg-neutral-900 aspect-video shadow-sm transition-transform duration-300 group-hover/img:shadow-md"},HN=["src","alt"],qN={key:1,class:"p-4 text-center text-xs text-neutral-400 dark:text-neutral-500 italic"},KN={key:1,class:"space-y-2 group"},GN={key:0,class:"flex flex-col items-center justify-center p-20 bg-neutral-50 dark:bg-neutral-900/50 rounded-xl border border-neutral-200 dark:border-neutral-800"},XN={key:1,class:"flex flex-col items-center justify-center p-12 bg-red-50 dark:bg-red-950/30 rounded-xl border border-red-100 dark:border-red-900/50"},YN={class:"text-xs font-bold text-red-600 dark:text-red-400 uppercase tracking-wider mb-3"},JN={key:2,class:"flex flex-col items-center justify-center p-16 bg-neutral-50/50 dark:bg-neutral-900/20 rounded-2xl border-2 border-dashed border-neutral-200 dark:border-neutral-800 transition-colors"},QN={class:"p-4 rounded-full bg-neutral-100 dark:bg-neutral-800 mb-4"},ZN={class:"text-sm font-semibold text-neutral-500 dark:text-neutral-400"},e5=["src","alt"],t5={class:"flex flex-col gap-1 text-[11px] leading-tight"},o5={class:"flex gap-2 min-w-0"},n5={class:"font-bold text-neutral-900 dark:text-neutral-100 break-all flex-1"},r5={key:0,class:"flex gap-2 min-w-0 border-t border-neutral-200/50 dark:border-neutral-700/50 pt-1 mt-0.5"},a5={class:"font-semibold text-neutral-800 dark:text-neutral-200 break-all flex-1"},s5={key:1,class:"flex gap-2 min-w-0 border-t border-neutral-200/50 dark:border-neutral-700/50 pt-1 mt-0.5"},i5={class:"font-semibold text-neutral-800 dark:text-neutral-200 break-all flex-1"},sl=ht(e.defineComponent({name:"DCodeStaticImage",__name:"DCodeStaticImage",props:{items:{},timelineData:{},endpoint:{},apiUrl:{},apiModule:{},apiAction:{},apiMethod:{default:"GET"},apiParams:{default:()=>({})},baseUrl:{},alt:{default:"Image"},label:{},aspectRatio:{default:"16/9"},width:{},height:{},fit:{default:"cover"},rounded:{type:Boolean,default:!1},allowPreview:{type:Boolean,default:!0},columns:{default:3},gap:{default:"0.5rem"},title:{default:"Static Image / Evidence"},dummyMode:{type:Boolean,default:!1}},setup(t){const{t:o}=Dt.useI18n(),n=t,{DCodeApi:r}=e.inject("externalApi")||{},a=e.ref(!1),s=e.ref(""),i=e.ref([]),l=e.computed(()=>{if(i.value.length>0)return i.value;if(n.items){if(Array.isArray(n.items))return n.items;const E=n.items;if(E.data&&Array.isArray(E.data))return E.data;if(E.payload&&Array.isArray(E.payload))return E.payload}return[]}),c=async()=>{var y;if(n.dummyMode){i.value=[{name:"Evidence Sample",noRef:"DUM-001",startTime:new Date().toISOString(),endTime:new Date().toISOString(),duration:36e5,detail:[{id:1,noRef:"EV-001",name:"Initial Condition",startTime:new Date().toISOString(),endTime:new Date().toISOString(),duration:18e5,beforeUrl:"https://placehold.co/600x400/f3f4f6/6b7280?text=Before+Sample",afterUrl:"https://placehold.co/600x400/ecfdf5/059669?text=After+Sample"}]}];return}const E=n.endpoint||{},x=E.apiUrl||n.apiUrl,C=E.apiModule||n.apiModule,V=E.apiAction||n.apiAction,N=(E.apiMethod||n.apiMethod||"GET").toUpperCase(),w=E.apiParams||n.apiParams||{};if(!(!x&&!C)){a.value=!0,s.value="";try{let _;C&&V?_=await r(C,V,w):x&&(_=await r(x,N,w));let D=[];_&&(Array.isArray(_.data)?D=_.data:Array.isArray(_.payload)?D=_.payload:Array.isArray(_)?D=_:(y=_.data)!=null&&y.items&&Array.isArray(_.data.items)&&(D=_.data.items)),D.length>0?i.value=D:i.value=[]}catch(_){console.error("[DCodeStaticImage] Error loading data:",_),s.value=_.message||"Failed to load images data"}finally{a.value=!1}}};e.watch([()=>n.endpoint,()=>n.apiUrl,()=>n.apiModule],()=>{c()},{deep:!0}),e.onMounted(()=>{c()});const d=e.computed(()=>n.timelineData&&n.timelineData.length>0?n.timelineData:l.value),u=e.computed(()=>{const E=d.value;let x=[];return E.forEach(C=>{C.detail&&Array.isArray(C.detail)?x=x.concat(C.detail):(C.beforeUrl||C.afterUrl||C.url||C.src)&&x.push(C)}),x}),f=e.computed(()=>!!(l.value.some(x=>x.detail&&Array.isArray(x.detail)||x.beforeUrl||x.afterUrl)||(n.apiUrl||n.apiModule)&&(a.value||s.value))),p=e.computed(()=>l.value.map(x=>{if(typeof x=="string")return{src:x,alt:n.alt};const C=x.src||x.url||x.path||x.beforeUrl||x.afterUrl||"";return{...x,src:C,alt:x.alt||x.label||n.alt}}).filter(x=>!!x.src)),m=e.computed(()=>({display:"grid",gridTemplateColumns:`repeat(${n.columns}, minmax(0, 1fr))`,gap:n.gap,width:n.width||"100%"})),h=e.computed(()=>["w-full h-full transition-all duration-500",n.rounded?"rounded-xl":"rounded-none",n.fit==="cover"?"object-cover":n.fit==="contain"?"object-contain":n.fit==="fill"?"object-fill":"object-none"].join(" ")),g=E=>E?new Date(E).toLocaleTimeString("id-ID",{hour:"2-digit",minute:"2-digit",second:"2-digit"}):"",k=E=>E?new Date(E).toLocaleDateString("id-ID",{day:"numeric",month:"short",year:"numeric"}):"",b=E=>{if(E<1e3)return`${E}ms`;const x=Math.floor(E/1e3);return x<60?`${x}s`:`${Math.floor(x/60)}m ${x%60}s`};return(E,x)=>(e.openBlock(),e.createElementBlock("div",SN,[f.value?(e.openBlock(),e.createElementBlock("div",_N,[a.value?(e.openBlock(),e.createElementBlock("div",BN,[e.createVNode(e.unref(be.Loader2),{class:"h-8 w-8 text-primary animate-spin mb-3"}),x[0]||(x[0]=e.createElementVNode("p",{class:"text-[10px] font-black uppercase tracking-widest text-neutral-400 animate-pulse"},"Syncing Visual Data...",-1))])):s.value?(e.openBlock(),e.createElementBlock("div",vN,[e.createVNode(e.unref(be.AlertTriangle),{class:"h-8 w-8 text-red-500 mb-4 opacity-80"}),e.createElementVNode("span",AN,e.toDisplayString(s.value),1),e.createElementVNode("button",{onClick:c,class:"text-[10px] font-black uppercase underline tracking-wider opacity-60 hover:opacity-100"},"Retry Fetching")])):u.value.length===0?(e.openBlock(),e.createElementBlock("div",DN,[e.createElementVNode("div",NN,[e.createVNode(e.unref(be.ImageIcon),{class:"h-8 w-8 text-neutral-400 dark:text-neutral-500 opacity-60"})]),e.createElementVNode("span",VN,e.toDisplayString(e.unref(o)("common.noData")),1),x[1]||(x[1]=e.createElementVNode("p",{class:"text-[10px] text-neutral-400 dark:text-neutral-500 mt-1 uppercase tracking-widest font-medium"},"No visual records found",-1))])):(e.openBlock(),e.createElementBlock("div",MN,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,(C,V)=>(e.openBlock(),e.createElementBlock("div",{key:V,class:"flex flex-col gap-4"},[e.createVNode(co,null,{header:e.withCtx(()=>[e.createElementVNode("h4",TN,[e.createTextVNode(e.toDisplayString(C.name)+" ",1),C.noRef?(e.openBlock(),e.createElementBlock("span",PN,e.toDisplayString(C.noRef),1)):e.createCommentVNode("",!0)])]),actions:e.withCtx(()=>[e.createElementVNode("div",RN,[e.createElementVNode("span",ON,[e.createVNode(e.unref(be.Calendar),{class:"w-3.5 h-3.5"}),e.createTextVNode(" "+e.toDisplayString(k(C.startTime)),1)]),e.createElementVNode("span",FN,[e.createVNode(e.unref(be.Clock),{class:"w-3.5 h-3.5"}),e.createTextVNode(" "+e.toDisplayString(g(C.startTime))+" - "+e.toDisplayString(g(C.endTime)),1)]),e.createElementVNode("span",$N,e.toDisplayString(b(C.duration)),1)])]),default:e.withCtx(()=>[C.beforeUrl||C.afterUrl?(e.openBlock(),e.createElementBlock("div",LN,[C.beforeUrl?(e.openBlock(),e.createElementBlock("div",IN,[x[2]||(x[2]=e.createElementVNode("div",{class:"flex items-center justify-between"},[e.createElementVNode("span",{class:"text-[11px] font-bold uppercase tracking-wider text-neutral-500 dark:text-neutral-400 bg-neutral-200 dark:bg-neutral-800 px-2 py-0.5 rounded-md"},"Before")],-1)),e.createElementVNode("div",zN,[e.createElementVNode("img",{src:C.beforeUrl,alt:C.name+" Before",class:"w-full object-contain bg-white/50 dark:bg-black/20",loading:"lazy"},null,8,jN)])])):e.createCommentVNode("",!0),C.afterUrl?(e.openBlock(),e.createElementBlock("div",UN,[x[3]||(x[3]=e.createElementVNode("div",{class:"flex items-center justify-between"},[e.createElementVNode("span",{class:"text-[11px] font-bold uppercase tracking-wider text-green-600 dark:text-green-400 bg-green-100 dark:bg-green-900/30 px-2 py-0.5 rounded-md border border-green-200 dark:border-green-800/50"},"After")],-1)),e.createElementVNode("div",WN,[e.createElementVNode("img",{src:C.afterUrl,alt:C.name+" After",class:"w-full object-contain bg-white/50 dark:bg-black/20",loading:"lazy"},null,8,HN)])])):e.createCommentVNode("",!0)])):(e.openBlock(),e.createElementBlock("div",qN," No images captured for this step. "))]),_:2},1024)]))),128))]))])):(e.openBlock(),e.createElementBlock("div",KN,[a.value?(e.openBlock(),e.createElementBlock("div",GN,[e.createVNode(e.unref(be.Loader2),{class:"h-8 w-8 text-primary animate-spin mb-3"}),x[4]||(x[4]=e.createElementVNode("p",{class:"text-[10px] font-black uppercase tracking-widest text-neutral-400 animate-pulse"},"Syncing Visual Data...",-1))])):s.value?(e.openBlock(),e.createElementBlock("div",XN,[e.createVNode(e.unref(be.AlertTriangle),{class:"h-8 w-8 text-red-500 mb-4 opacity-80"}),e.createElementVNode("span",YN,e.toDisplayString(s.value),1),e.createElementVNode("button",{onClick:c,class:"text-[10px] font-black uppercase underline tracking-wider opacity-60 hover:opacity-100"},"Retry Fetching")])):p.value.length===0?(e.openBlock(),e.createElementBlock("div",JN,[e.createElementVNode("div",QN,[e.createVNode(e.unref(be.ImageIcon),{class:"h-8 w-8 text-neutral-400 dark:text-neutral-500 opacity-60"})]),e.createElementVNode("span",ZN,e.toDisplayString(e.unref(o)("common.noData")),1),x[5]||(x[5]=e.createElementVNode("p",{class:"text-[10px] text-neutral-400 dark:text-neutral-500 mt-1 uppercase tracking-widest font-medium"},"No visual records found",-1))])):(e.openBlock(),e.createElementBlock("div",{key:3,style:e.normalizeStyle(m.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,(C,V)=>{var N;return e.openBlock(),e.createElementBlock("div",{key:V,class:"flex flex-col space-y-1 group/item"},[e.createElementVNode("div",{class:e.normalizeClass(["relative overflow-hidden bg-neutral-100 dark:bg-neutral-900 border border-neutral-200 dark:border-neutral-800 transition-all duration-300 transform hover:scale-[1.02] hover:z-10",[t.rounded?"rounded-xl":"rounded-none"]]),style:e.normalizeStyle({aspectRatio:t.aspectRatio})},[e.createElementVNode("img",{src:C.src,alt:C.alt,class:e.normalizeClass(h.value),loading:"lazy"},null,10,e5),e.createElementVNode("div",{class:e.normalizeClass(["absolute bottom-2 left-2 right-2 p-3 rounded-xl border border-neutral-200/50 dark:border-neutral-700/50 shadow-xl opacity-0 translate-y-2 group-hover/item:opacity-100 group-hover/item:translate-y-0 transition-all duration-300 z-10 select-none",["dark:bg-neutral-900/80"]]),style:{background:"rgba(255, 255, 255, 0.85)","backdrop-filter":"blur(8px)"}},[e.createElementVNode("div",t5,[e.createElementVNode("div",o5,[x[6]||(x[6]=e.createElementVNode("span",{class:"w-12 shrink-0 text-neutral-500 font-medium tracking-tight"},"Name",-1)),e.createElementVNode("span",n5,e.toDisplayString(((N=C.src)==null?void 0:N.split("/").pop())||"Untitled"),1)]),C.label?(e.openBlock(),e.createElementBlock("div",r5,[x[7]||(x[7]=e.createElementVNode("span",{class:"w-12 shrink-0 text-neutral-500 font-medium tracking-tight"},"Label",-1)),e.createElementVNode("span",a5,e.toDisplayString(C.label),1)])):e.createCommentVNode("",!0),t.label?(e.openBlock(),e.createElementBlock("div",s5,[x[8]||(x[8]=e.createElementVNode("span",{class:"w-12 shrink-0 text-neutral-500 font-medium tracking-tight"},"Gallery",-1)),e.createElementVNode("span",i5,e.toDisplayString(t.label),1)])):e.createCommentVNode("",!0)])])],6)])}),128))],4))]))]))}}),[["__scopeId","data-v-6f5d926f"]]),l5={class:"flex-1 flex flex-col min-h-[300px]"},c5={key:0,class:"flex-1 flex flex-col items-center justify-center p-10"},d5={key:1,class:"flex-1 flex flex-col items-center justify-center p-10"},u5={class:"bg-red-50 dark:bg-red-950/30 text-red-600 dark:text-red-400 p-6 rounded-lg max-w-md text-center border border-red-100 dark:border-red-900/50"},f5={class:"text-sm opacity-90"},p5={key:2,class:"flex-1 overflow-hidden flex items-center justify-center relative bg-neutral-50/30 dark:bg-neutral-950/20"},m5={class:"w-full h-full p-6 overflow-auto flex items-center justify-center"},h5=["src"],g5=["innerHTML"],b5={key:2,class:"whitespace-pre-wrap font-mono text-xs p-4 rounded bg-neutral-50 dark:bg-neutral-800 border border-neutral-200 dark:border-neutral-700 max-w-full overflow-auto text-neutral-700 dark:text-neutral-300"},y5={key:3,class:"text-neutral-400 dark:text-neutral-600 text-sm italic"},il=ht(e.defineComponent({name:"DCodeWorkflowDiagram",__name:"DCodeWorkflowDiagram",props:{auditId:{},fetcher:{},apiModule:{},apiAction:{},apiUrl:{},apiMethod:{default:"POST"},apiParams:{default:()=>({})},height:{default:"auto"},baseUrl:{default:void 0},withAuth:{type:Boolean,default:!1},endpoint:{},dummyMode:{type:Boolean,default:!1}},setup(t){const o=t,{t:n}=Dt.useI18n(),{apiUrl:r}=e.inject("externalApi")||{},a=e.ref(!1),s=e.ref(""),i=e.ref(""),l=e.ref(!1),c=e.ref(""),d=e.computed(()=>i.value.trim().toLowerCase().startsWith("<svg")),u=()=>{c.value&&c.value.startsWith("blob:")&&URL.revokeObjectURL(c.value),c.value=""};e.onUnmounted(()=>{u()});const f=async()=>{if(o.dummyMode){a.value=!1,s.value="",i.value="",l.value=!0,u(),c.value="https://placehold.co/800x400/f9fafb/6b7280?text=Workflow+Diagram+Preview";return}const p=o.endpoint||{},m=p.apiUrl||o.apiUrl,h=(p.apiMethod||o.apiMethod||"GET").toUpperCase(),g=o.apiModule&&o.apiAction||m;if(!o.fetcher&&!g){s.value="Fetcher or API configuration is required";return}a.value=!0,s.value="",i.value="",l.value=!1,u();try{let k;if(o.fetcher)k=await o.fetcher({auditId:o.auditId});else{let E="";if(m)if(m.startsWith("http"))E=m;else if(o.baseUrl){const V=o.baseUrl.replace(/\/$/,""),N=m.startsWith("/")?m:`/${m}`;E=`${V}${N}`}else E=m;else if(o.apiModule&&o.apiAction){const V=`/${o.apiModule}/${o.apiAction}`;o.baseUrl?E=`${o.baseUrl.replace(/\/$/,"")}${V}`:E=V}const x={...o.apiParams};o.auditId&&!x.id&&(x.id=o.auditId),o.auditId&&!x.auditId&&(x.auditId=o.auditId),k=await r(E,h,x,{withCredentials:!0,responseType:"blob",headers:{Accept:"image/png"}})}if(k.size===0)throw new Error("Diagram received but empty (0 bytes).");const b=k.type||"";if(b.startsWith("image/svg")||b.includes("svg")){const E=await k.text();i.value=E}else b.startsWith("text/")?i.value=await k.text():(l.value=!0,c.value=URL.createObjectURL(k))}catch(k){console.error("[DCodeWorkflowDiagram] Error loading diagram:",k),s.value=k.message||"Failed to load diagram"}finally{a.value=!1}};return e.watch(()=>o.auditId,()=>{f()}),e.onMounted(()=>{f()}),(p,m)=>(e.openBlock(),e.createElementBlock("div",{class:"dcode-workflow-diagram flex flex-col bg-white dark:bg-neutral-900 border border-neutral-200 dark:border-neutral-800 rounded-xl overflow-hidden shadow-sm",style:e.normalizeStyle({height:t.height})},[e.createElementVNode("div",l5,[a.value?(e.openBlock(),e.createElementBlock("div",c5,[e.createVNode(e.unref(be.Loader2),{class:"h-10 w-10 text-primary animate-spin mb-4"}),m[0]||(m[0]=e.createElementVNode("span",{class:"text-sm text-neutral-500 dark:text-neutral-400"},"Loading diagram...",-1))])):s.value?(e.openBlock(),e.createElementBlock("div",d5,[e.createElementVNode("div",u5,[e.createVNode(e.unref(be.AlertTriangle),{class:"h-10 w-10 mx-auto mb-3 opacity-80"}),m[2]||(m[2]=e.createElementVNode("h4",{class:"text-base font-bold mb-2"},"Error",-1)),e.createElementVNode("p",f5,e.toDisplayString(s.value),1),e.createVNode(at,{variant:"outline",size:"sm",class:"mt-4 mx-auto border-red-200 dark:border-red-800 hover:bg-red-100 dark:hover:bg-red-900/50",onClick:f},{default:e.withCtx(()=>[e.createVNode(e.unref(be.RefreshCw),{class:"h-3.5 w-3.5 mr-2"}),m[1]||(m[1]=e.createTextVNode(" Try Again ",-1))]),_:1})])])):(e.openBlock(),e.createElementBlock("div",p5,[e.createElementVNode("div",m5,[l.value?(e.openBlock(),e.createElementBlock("img",{key:0,src:c.value,alt:"Workflow Diagram",class:"max-w-full h-auto object-contain shadow-sm rounded border border-neutral-200 dark:border-neutral-800"},null,8,h5)):d.value?(e.openBlock(),e.createElementBlock("div",{key:1,innerHTML:i.value,class:"svg-viewer w-full h-full flex items-center justify-center"},null,8,g5)):i.value?(e.openBlock(),e.createElementBlock("div",b5,e.toDisplayString(i.value),1)):(e.openBlock(),e.createElementBlock("div",y5," No diagram data available "))])]))])],4))}}),[["__scopeId","data-v-1cc56f04"]]),k5={key:0,class:"flex items-center justify-between px-4 py-3 border-b border-gray-100 bg-white dark:border-neutral-700/50 dark:bg-neutral-900/50 backdrop-blur-sm sticky top-0 z-10"},x5={class:"flex items-center gap-3 overflow-hidden"},w5={class:"flex h-8 w-8 items-center justify-center rounded-lg bg-primary/10 text-primary"},C5={class:"text-sm font-semibold text-gray-700 dark:text-neutral-200 truncate"},E5={class:"flex items-center gap-1.5 ml-4"},S5={class:"relative flex-1 w-full overflow-hidden bg-gray-50 dark:bg-neutral-950/20"},_5={key:0,class:"absolute inset-0 z-20 flex flex-col items-center justify-center gap-3 bg-white/90 backdrop-blur-sm dark:bg-neutral-900/90"},B5={class:"relative flex items-center justify-center"},v5={key:1,class:"flex h-full w-full flex-col items-center justify-center gap-4 p-8 text-center"},A5={class:"rounded-2xl bg-amber-50 p-4 dark:bg-amber-900/20"},D5={class:"max-w-md"},N5={class:"text-lg font-bold text-gray-900 dark:text-neutral-100"},V5={class:"mt-2 text-sm leading-relaxed text-gray-500 dark:text-neutral-400"},M5={class:"flex flex-wrap justify-center gap-3 mt-2"},T5=["src"],P5={key:1,class:"flex h-full w-full flex-col items-center justify-center gap-4 p-8 text-center bg-gray-50/50 dark:bg-neutral-900/30"},R5={class:"rounded-2xl bg-white p-5 shadow-sm dark:bg-neutral-800"},ll=ht(e.defineComponent({name:"DCodePdfViewer",__name:"DCodePdfViewer",props:{itemValue:{default:null},modelValue:{default:null},label:{default:"PDF Viewer"},baseUrl:{default:""},height:{default:"700px"},showDownload:{type:Boolean,default:!0},showFullscreen:{type:Boolean,default:!0}},setup(t){const o=t,{DCodeApi:n}=e.inject("externalApi")||{},r=e.computed(()=>{let w="",y="",_=!1;const D=H=>{H&&(typeof H=="string"?(H.includes("/")||H.startsWith("http")||H.startsWith("data:"))&&(w=H):typeof H=="object"&&H!==null&&(w=H.url||H.path||H.link||"",y=H.server||H.baseUrl||H.base_url||""))};if(o.itemValue&&typeof o.itemValue=="string"&&o.modelValue&&typeof o.modelValue=="object"){const H=o.itemValue.split(".");let Z=o.modelValue,U,B=!0;for(const A of H)if(Z&&typeof Z=="object"&&A in Z)U=Z,Z=Z[A];else{B=!1;break}B&&Z!==void 0&&Z!==null&&(D(Z),_=!0,!y&&U&&(y=U.server||U.baseUrl||U.base_url||""))}if(w||(o.modelValue&&typeof o.modelValue!="object"?D(o.modelValue):!_&&o.itemValue&&D(o.itemValue)),!w||typeof w!="string"||w.trim()==="")return null;const T=typeof window<"u"?window.location.protocol:"https:",M=T==="https:";w.startsWith("//")&&(w=`${T}${w}`);const P=o.baseUrl||y;if(P&&!w.startsWith("http")&&!w.startsWith("data:")){let H=P.trim().replace(/\/$/,"");if(!H)return null;M&&H.startsWith("http:")?H=H.replace("http:","https:"):H.startsWith("//")&&(H=`${T}${H}`);const Z=w.startsWith("/")?w:`/${w}`;w=`${H}${Z}`}try{const H=new URL(w,window.location.origin);if(H.pathname==="/"||H.pathname===""||H.href===window.location.origin+"/")return null}catch{if(!w.startsWith("data:")&&!w.startsWith("blob:"))return null}return M&&w.startsWith("http:")&&(w=w.replace("http:","https:")),w}),a=e.computed(()=>typeof window>"u"?!1:window.location.protocol==="https:"&&typeof r.value=="string"&&r.value.startsWith("http:")),s=e.ref(!0),i=e.ref(!1),l=e.ref(!1),c=e.ref(null),d=e.ref(null),u=e.ref(!1);let f=null;const p=()=>{d.value&&(URL.revokeObjectURL(d.value),d.value=null)},m=async w=>{if(w){u.value=!0,s.value=!0,i.value=!1;try{if(typeof n=="function")try{const D=await n(w,"GET",{},{responseType:"blob"}),T=D instanceof Blob?D:(D==null?void 0:D.data)instanceof Blob?D.data:new Blob([(D==null?void 0:D.data)||D],{type:"application/pdf"});if(T&&T.size>0){p(),d.value=URL.createObjectURL(T),u.value=!1,s.value=!1;return}}catch(D){console.warn("DCodePdfViewer: DCodeApi fetch failed, trying native fetch",D)}const y=await fetch(w);if(!y.ok)throw new Error(`HTTP error! status: ${y.status}`);const _=await y.blob();p(),d.value=URL.createObjectURL(_)}catch(y){console.error("DCodePdfViewer: Blob fetch failed, falling back to direct URL",y),i.value=!0}finally{u.value=!1,s.value=!1}}},h=e.computed(()=>{const w=o.height;return{height:l.value?"100vh":typeof w=="number"?`${w}px`:w,minHeight:l.value?"100vh":"500px"}}),g=()=>{f&&(clearTimeout(f),f=null)},k=()=>{if(g(),a.value&&!d.value&&!u.value){m(r.value);return}f=setTimeout(()=>{s.value&&(s.value=!1,i.value=!0)},1e4)},b=()=>{g(),s.value=!1,i.value=!1},E=()=>{g(),s.value=!1,i.value=!0},x=()=>{c.value&&(document.fullscreenElement?(document.exitFullscreen(),l.value=!1):(c.value.requestFullscreen().catch(w=>{console.error(`Error attempting to enable full-screen mode: ${w.message}`)}),l.value=!0))},C=()=>{l.value=!!document.fullscreenElement};e.onMounted(()=>{document.addEventListener("fullscreenchange",C),r.value&&k()}),e.onBeforeUnmount(()=>{document.removeEventListener("fullscreenchange",C),g(),p()}),e.watch(()=>r.value,w=>{p(),w&&(s.value=!0,i.value=!1,a.value?m(w):k())},{immediate:!0});const V=()=>{r.value&&window.open(r.value,"_blank")},N=()=>{if(!r.value)return;const w=document.createElement("a");w.href=r.value,w.download=o.label||"document.pdf",w.target="_blank",document.body.appendChild(w),w.click(),document.body.removeChild(w)};return(w,y)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"containerRef",ref:c,class:e.normalizeClass(["d-pdf-viewer-container relative w-full overflow-hidden flex flex-col rounded-xl border border-gray-200 bg-white dark:border-neutral-700/50 dark:bg-neutral-900",{"fixed inset-0 z-[9999] rounded-none !h-screen":l.value}]),style:e.normalizeStyle(h.value)},[r.value?(e.openBlock(),e.createElementBlock("div",k5,[e.createElementVNode("div",x5,[e.createElementVNode("div",w5,[e.createVNode(e.unref(be.FileText),{class:"h-4 w-4"})]),e.createElementVNode("span",C5,e.toDisplayString(t.label),1)]),e.createElementVNode("div",E5,[e.createElementVNode("button",{type:"button",onClick:V,class:"flex h-8 w-8 items-center justify-center rounded-lg text-gray-500 transition-all hover:bg-gray-100 hover:text-primary dark:text-neutral-400 dark:hover:bg-neutral-800",title:"Buka di Tab Baru"},[e.createVNode(e.unref(be.ExternalLink),{class:"h-4 w-4"})]),t.showDownload?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",onClick:N,class:"flex h-8 w-8 items-center justify-center rounded-lg text-gray-500 transition-all hover:bg-gray-100 hover:text-primary dark:text-neutral-400 dark:hover:bg-neutral-800",title:"Unduh PDF"},[e.createVNode(e.unref(be.Download),{class:"h-4 w-4"})])):e.createCommentVNode("",!0),t.showFullscreen?(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",onClick:x,class:"flex h-8 w-8 items-center justify-center rounded-lg text-gray-500 transition-all hover:bg-gray-100 hover:text-primary dark:text-neutral-400 dark:hover:bg-neutral-800",title:"Layar Penuh"},[l.value?(e.openBlock(),e.createBlock(e.unref(be.Minimize2),{key:0,class:"h-4 w-4"})):(e.openBlock(),e.createBlock(e.unref(be.Maximize2),{key:1,class:"h-4 w-4"}))])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),e.createElementVNode("div",S5,[r.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[s.value?(e.openBlock(),e.createElementBlock("div",_5,[e.createElementVNode("div",B5,[y[0]||(y[0]=e.createElementVNode("div",{class:"h-12 w-12 rounded-full border-4 border-primary/20 border-t-primary animate-spin"},null,-1)),e.createVNode(e.unref(be.Loader2),{class:"absolute h-5 w-5 animate-pulse text-primary"})]),y[1]||(y[1]=e.createElementVNode("p",{class:"text-sm font-medium text-gray-600 dark:text-neutral-300"},"Menyiapkan dokumen...",-1))])):e.createCommentVNode("",!0),(i.value||a.value)&&!d.value&&!u.value?(e.openBlock(),e.createElementBlock("div",v5,[e.createElementVNode("div",A5,[e.createVNode(e.unref(be.FileWarning),{class:"h-10 w-10 text-amber-500 dark:text-amber-400"})]),e.createElementVNode("div",D5,[e.createElementVNode("h3",N5,e.toDisplayString(a.value?"Keamanan Browser Memblokir":"Gagal Memuat PDF"),1),e.createElementVNode("p",V5,[a.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(" Dokumen ini berasal dari sumber yang tidak aman (HTTP) dan diblokir oleh browser (HTTPS). Silakan buka di tab baru atau unduh file untuk melihatnya. ")],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(" Kami tidak dapat menampilkan dokumen secara langsung. Ini bisa terjadi karena file tidak ditemukan, masalah jaringan, atau batasan akses dari server. ")],64))])]),e.createElementVNode("div",M5,[e.createElementVNode("button",{onClick:V,class:"flex items-center gap-2 rounded-xl bg-primary px-5 py-2.5 text-sm font-semibold text-white shadow-sm transition-all hover:bg-primary/90 hover:shadow-md"},[e.createVNode(e.unref(be.ExternalLink),{class:"h-4 w-4"}),y[2]||(y[2]=e.createTextVNode(" Buka di Tab Baru ",-1))]),t.showDownload?(e.openBlock(),e.createElementBlock("button",{key:0,onClick:N,class:"flex items-center gap-2 rounded-xl border border-gray-200 bg-white px-5 py-2.5 text-sm font-semibold text-gray-700 shadow-sm transition-all hover:bg-gray-50 dark:border-neutral-700 dark:bg-neutral-800 dark:text-neutral-200 dark:hover:bg-neutral-700"},[e.createVNode(e.unref(be.Download),{class:"h-4 w-4"}),y[3]||(y[3]=e.createTextVNode(" Unduh Dokumen ",-1))])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),!a.value||d.value?e.withDirectives((e.openBlock(),e.createElementBlock("iframe",{key:2,src:`${d.value||r.value}#toolbar=0&navpanes=0&scrollbar=1`,class:"h-full w-full border-none bg-gray-50 dark:bg-neutral-900",onLoad:b,onError:E},null,40,T5)),[[e.vShow,!i.value&&!s.value]]):e.createCommentVNode("",!0)],64)):(e.openBlock(),e.createElementBlock("div",P5,[e.createElementVNode("div",R5,[e.createVNode(e.unref(be.FileWarning),{class:"h-10 w-10 text-gray-300 dark:text-neutral-600"})]),y[4]||(y[4]=e.createElementVNode("div",null,[e.createElementVNode("p",{class:"text-lg font-bold text-gray-700 dark:text-neutral-200"},"Belum ada file PDF"),e.createElementVNode("p",{class:"mt-1 text-sm text-gray-500 dark:text-neutral-400 max-w-xs leading-relaxed"}," Silakan unggah dokumen terlebih dahulu atau periksa ketersediaan file pada sistem. ")],-1))]))])],6))}}),[["__scopeId","data-v-49ec8019"]]),O5={key:0},F5=["value","name"],$5={key:1,class:"flex flex-col gap-1"},L5={class:"text-xs font-medium text-neutral-500 dark:text-neutral-400"},I5=["src"],z5={key:1,class:"text-sm text-neutral-400 italic"},j5={key:2,class:"text-sm text-neutral-800 dark:text-neutral-100 font-medium"},U5={key:3,class:"text-xs text-neutral-400 italic"},Fn=e.defineComponent({__name:"DynamicFormField",props:{field:{},modelValue:{default:null},formData:{default:()=>({})},required:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},options:{default:()=>[]},error:{default:null},dynamicLabels:{default:null},dynamicLength:{default:null},baseUrl:{default:void 0},viewOnly:{type:Boolean,default:!1},skeleton:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},dummyMode:{type:Boolean}},emits:["update:modelValue"],setup(t,{emit:o}){let n=e.ref("en");try{n=Dt.useI18n().locale}catch{}const r=t,a=o,s=e.ref(r.modelValue);e.watch(()=>r.modelValue,b=>{s.value=b});const i={DCodeTextField:Sn,DCodeAutoComplete:qr,DCodeInfiniteAutoComplete:Vs,DCodeDatePicker:Wa,DCodeTextarea:Rn,DCodeTextArea:Rn,DCodeCheckbox:un,DCodeSwitch:Xa,DCodeOtpInput:Ka,DCodeImageField:qa,DCodeSlider:Ga,DCodeRadio:Qi,DCodeButton:at,DCodeRadioCustom:Zi,DCodeDynamicUploadList:Wi,DCodeMultiSelect:Ji,DCodeCurrencyField:Ii,DCodePercentField:zi,DCodePermissionMenu:ol,DCodeTreePermissions:nl,DCodeCardCheckboxList:Li,DCodeBeforeAfter:Ys,DCodeListLabels:Js,DCodeStaticLabel:al,DCodeStaticImage:sl,DCodeFileField:Gi,DCodeWorkflowDiagram:il,DCodeTimelineWithIcons:el,DCodePdfViewer:ll,DCodeRobotList:Ja},l=e.computed(()=>{const b=r.field.component;return i[b]||null}),c=e.computed(()=>{var E;const b=((E=r.field.component)==null?void 0:E.toLowerCase())||"";return b.includes("image")||b.includes("upload")}),d=e.computed(()=>{var E;const b=((E=r.field.component)==null?void 0:E.toLowerCase())||"";return b.includes("switch")||b.includes("checkbox")}),u=e.computed(()=>{var V,N,w;const b=r.field.props||r.field.propsFieldCustom||r.field.propsFieldGlobal||{},E=((V=r.dynamicLabels)==null?void 0:V.labelID)||b.labelID,x=((N=r.dynamicLabels)==null?void 0:N.labelEN)||b.labelEN,C=((w=r.dynamicLabels)==null?void 0:w.labelKR)||b.labelKR;return n.value==="kr"||n.value==="ko"?C||x||E||r.field.model:n.value==="id"?E||x||r.field.model:x||E||r.field.model}),f=e.computed(()=>{const b=r.modelValue;return b==null||b===""?null:Array.isArray(b)?b.map(E=>typeof E=="object"&&E!==null?E.label||E.name||E.code||E.value||JSON.stringify(E):String(E)).join(", "):typeof b=="object"?b.label||b.name||b.code||b.value||b.id||JSON.stringify(b):String(b)}),p=e.inject("dynamicFormContext",null),m=(b,E)=>{const x={label:"",placeholder:""},C=(E==null?void 0:E.labelID)||b.labelID,V=(E==null?void 0:E.labelEN)||b.labelEN,N=(E==null?void 0:E.labelKR)||b.labelKR;(C||V||N)&&(x.label=n.value==="kr"||n.value==="ko"?N||V:n.value==="id"?C:V);const w=(E==null?void 0:E.placeholderID)||b.placeholderID,y=(E==null?void 0:E.placeholderEN)||b.placeholderEN,_=(E==null?void 0:E.placeholderKR)||b.placeholderKR;return(w||y||_)&&(x.placeholder=n.value==="kr"||n.value==="ko"?_||y:n.value==="id"?w:y),x},h=b=>{const E=b.endpoint||b.endpointComponent||b.endpointReference||{};if(!E.apiUrl&&!E.socket)return{};const x=p!=null&&p.resolveKeyParams?p.resolveKeyParams(E.keyParam||[],void 0,r.field,r.formData):{};let C=E.apiUrl;if(C){const V=typeof(p==null?void 0:p.resolvedBaseUrl)=="object"&&"value"in p.resolvedBaseUrl?p.resolvedBaseUrl.value:p==null?void 0:p.resolvedBaseUrl,N=r.baseUrl||V;if(N&&typeof N=="string"&&typeof C=="string"&&!C.startsWith("http")){const w=N.replace(/\/$/,""),y=C.startsWith("/")?C:`/${C}`;C=`${w}${y}`}}return{endpoint:{apiUrl:C,apiMethod:E.apiMethod||"GET",socket:E.socket},...Object.keys(x).length?{apiParams:x}:{}}},g=e.computed(()=>{var y,_,D;const b=r.field.props||r.field.propsFieldCustom||r.field.propsFieldGlobal||{},E={},x=m(b,r.dynamicLabels);x.label&&(E.label=x.label,r.field.component==="DCodeButton"&&(E.text=x.label),r.field.component==="DCodeSwitch"&&(E.title=x.label)),x.placeholder&&(E.placeholder=x.placeholder),E.required=r.required!==void 0?r.required:b.required??!1,E.readonly=r.readonly!==void 0?r.readonly:b.readonly??!1,["disabled","readonly","clearable","icon","returnObject","itemTitle","itemValue","maxValue","minValue","sizeFile","typeFile","treeData","menuList","enableParentControl","showIcons","dataBefore","dataAfter","range","autoRangeDays","disablePast","maxDaysAhead","displayFormat","modelType","placement","prependInner","selectLabel","cancelLabel","tone","skeleton","allowedTypes","maxSizeMb","minSizeMb","bgColor","variant","size","rounded","borderColor","borderStyle","type","valueType","textCase","prefix","suffix","allowChars","allowSpaces","pattern","showCharCount","returnNumber","applyTextCaseToValue","socketEndpoint","socketParams"].forEach(T=>{b[T]!==void 0&&b[T]!==null&&(E[T]=b[T])}),r.skeleton&&(E.skeleton=!0),E.minLength=((y=r.dynamicLength)==null?void 0:y.minLength)??b.minLength,E.maxLength=((_=r.dynamicLength)==null?void 0:_.maxLength)??b.maxLength,b.valueType&&(E.type=b.valueType),r.error&&(E.error=r.error),Object.assign(E,h(b));const V=b.endpointReference||b.endpointPropAction||{};if(V.apiUrl){let T=V.apiUrl;if(r.baseUrl&&typeof T=="string"&&!T.startsWith("http")){const M=r.baseUrl.replace(/\/$/,""),P=T.startsWith("/")?T:`/${T}`;T=`${M}${P}`}E.endpointReference={...V,apiUrl:T}}const N=((D=p==null?void 0:p.rawItemsCache)==null?void 0:D[r.field.key])||[];if((r.options&&r.options.length>0||b.items&&b.items.length>0||b.options&&b.options.length>0||N.length>0)&&(E.items=r.options||b.items||b.options||N,E.options=E.items,r.field.component!=="DCodeDynamicUploadList"&&(delete E.endpoint,delete E.apiParams,delete E.apiUrl)),r.baseUrl&&(E.baseUrl=r.baseUrl),r.loading&&(E.loading=!0),r.dummyMode&&(E.dummyMode=r.dummyMode),r.field.component==="DCodePdfViewer"){const T=b.itemValue;if(T&&typeof T=="string"){const M=T.split(".");let P=r.formData,H;for(const Z of M)H=P,P=P==null?void 0:P[Z];if(P!=null&&(E.itemValue=P,typeof P=="string"&&!P.startsWith("http")&&H)){const Z=H.server||H.baseUrl||H.base_url;Z&&(E.baseUrl=Z)}}}return E}),k=b=>{s.value=b,a("update:modelValue",b)};return(b,E)=>t.field.isHidden?(e.openBlock(),e.createElementBlock("div",O5,[e.createElementVNode("input",{type:"hidden",value:s.value,name:t.field.model},null,8,F5)])):t.viewOnly?(e.openBlock(),e.createElementBlock("div",$5,[e.createElementVNode("span",L5,e.toDisplayString(u.value),1),c.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[f.value?(e.openBlock(),e.createElementBlock("img",{key:0,src:f.value,class:"h-16 w-16 rounded-md object-cover border border-neutral-200",alt:""},null,8,I5)):(e.openBlock(),e.createElementBlock("span",z5,"-"))],64)):d.value?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(["inline-flex items-center gap-1 text-sm font-medium",f.value?"text-green-600 dark:text-green-400":"text-neutral-400"])},e.toDisplayString(f.value?"✓ Ya":"✗ Tidak"),3)):(e.openBlock(),e.createElementBlock("span",j5,e.toDisplayString(f.value||"-"),1))])):l.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l.value),e.mergeProps({key:2},g.value,{"model-value":s.value,"onUpdate:modelValue":k}),null,16,["model-value"])):(e.openBlock(),e.createElementBlock("div",U5," Unknown field: "+e.toDisplayString(t.field.component),1))}}),W5=e.defineComponent({__name:"Input",props:{defaultValue:{},modelValue:{},class:{type:[Boolean,null,String,Object,Array]}},emits:["update:modelValue"],setup(t,{emit:o}){const n=t,r=o,a=ft.useVModel(n,"modelValue",r,{passive:!0,defaultValue:n.defaultValue});return(s,i)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{"onUpdate:modelValue":i[0]||(i[0]=l=>e.isRef(a)?a.value=l:null),class:e.normalizeClass(e.unref(Ye)("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",n.class))},null,2)),[[e.vModelText,e.unref(a)]])}}),H5=e.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(t,{emit:o}){const n=t,r=o,a=ft.reactiveOmit(n,"class"),s=Oe.useForwardPropsEmits(a,r);return(i,l)=>(e.openBlock(),e.createBlock(e.unref(Oe.PaginationRoot),e.mergeProps({"data-slot":"pagination"},e.unref(s),{class:n.class}),{default:e.withCtx(c=>[e.renderSlot(i.$slots,"default",e.normalizeProps(e.guardReactiveProps(c)))]),_:3},16,["class"]))}}),q5=e.defineComponent({__name:"PaginationContent",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(t){const o=t,n=ft.reactiveOmit(o,"class");return(r,a)=>(e.openBlock(),e.createBlock(e.unref(Oe.PaginationList),e.mergeProps({"data-slot":"pagination-content"},e.unref(n),{class:e.unref(Ye)("flex flex-row items-center gap-1",o.class)}),{default:e.withCtx(s=>[e.renderSlot(r.$slots,"default",e.normalizeProps(e.guardReactiveProps(s)))]),_:3},16,["class"]))}}),K5=e.defineComponent({__name:"PaginationEllipsis",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(t){const o=t,n=ft.reactiveOmit(o,"class");return(r,a)=>(e.openBlock(),e.createBlock(e.unref(Oe.PaginationEllipsis),e.mergeProps({"data-slot":"pagination-ellipsis"},e.unref(n),{class:e.unref(Ye)("flex size-9 items-center justify-center",o.class)}),{default:e.withCtx(()=>[e.renderSlot(r.$slots,"default",{},()=>[e.createVNode(e.unref(be.MoreHorizontal),{class:"size-4"}),a[0]||(a[0]=e.createElementVNode("span",{class:"sr-only"},"More pages",-1))])]),_:3},16,["class"]))}}),G5=e.defineComponent({__name:"PaginationFirst",props:{asChild:{type:Boolean},as:{},size:{default:"default"},class:{type:[Boolean,null,String,Object,Array]}},setup(t){const o=t,n=ft.reactiveOmit(o,"class","size"),r=Oe.useForwardProps(n);return(a,s)=>(e.openBlock(),e.createBlock(e.unref(Oe.PaginationFirst),e.mergeProps({"data-slot":"pagination-first",class:e.unref(Ye)(e.unref(kn)({variant:"ghost",size:t.size}),"gap-1 px-2.5 sm:pr-2.5",o.class)},e.unref(r)),{default:e.withCtx(()=>[e.renderSlot(a.$slots,"default",{},()=>[e.createVNode(e.unref(be.ChevronLeftIcon)),s[0]||(s[0]=e.createElementVNode("span",{class:"hidden sm:block"},"First",-1))])]),_:3},16,["class"]))}}),X5=e.defineComponent({__name:"PaginationItem",props:{value:{},asChild:{type:Boolean},as:{},size:{default:"icon"},class:{type:[Boolean,null,String,Object,Array]},isActive:{type:Boolean}},setup(t){const o=t,n=ft.reactiveOmit(o,"class","size","isActive");return(r,a)=>(e.openBlock(),e.createBlock(e.unref(Oe.PaginationListItem),e.mergeProps({"data-slot":"pagination-item"},e.unref(n),{class:e.unref(Ye)(e.unref(kn)({variant:"ghost",size:t.size}),t.isActive?"bg-[#0056a1] dark:bg-[#003d75] text-white hover:bg-[#0056a1]/90 dark:hover:bg-[#003d75]/90 hover:text-white":"",o.class)}),{default:e.withCtx(()=>[e.renderSlot(r.$slots,"default")]),_:3},16,["class"]))}}),Y5=e.defineComponent({__name:"PaginationLast",props:{asChild:{type:Boolean},as:{},size:{default:"default"},class:{type:[Boolean,null,String,Object,Array]}},setup(t){const o=t,n=ft.reactiveOmit(o,"class","size"),r=Oe.useForwardProps(n);return(a,s)=>(e.openBlock(),e.createBlock(e.unref(Oe.PaginationLast),e.mergeProps({"data-slot":"pagination-last",class:e.unref(Ye)(e.unref(kn)({variant:"ghost",size:t.size}),"gap-1 px-2.5 sm:pr-2.5",o.class)},e.unref(r)),{default:e.withCtx(()=>[e.renderSlot(a.$slots,"default",{},()=>[s[0]||(s[0]=e.createElementVNode("span",{class:"hidden sm:block"},"Last",-1)),e.createVNode(e.unref(be.ChevronRightIcon))])]),_:3},16,["class"]))}}),J5=e.defineComponent({__name:"PaginationNext",props:{asChild:{type:Boolean},as:{},size:{default:"default"},class:{type:[Boolean,null,String,Object,Array]}},setup(t){const o=t,n=ft.reactiveOmit(o,"class","size"),r=Oe.useForwardProps(n);return(a,s)=>(e.openBlock(),e.createBlock(e.unref(Oe.PaginationNext),e.mergeProps({"data-slot":"pagination-next",class:e.unref(Ye)(e.unref(kn)({variant:"ghost",size:t.size}),"gap-1 px-2.5 sm:pr-2.5",o.class)},e.unref(r)),{default:e.withCtx(()=>[e.renderSlot(a.$slots,"default",{},()=>[s[0]||(s[0]=e.createElementVNode("span",{class:"hidden sm:block"},"Next",-1)),e.createVNode(e.unref(be.ChevronRightIcon))])]),_:3},16,["class"]))}}),Q5=e.defineComponent({__name:"PaginationPrevious",props:{asChild:{type:Boolean},as:{},size:{default:"default"},class:{type:[Boolean,null,String,Object,Array]}},setup(t){const o=t,n=ft.reactiveOmit(o,"class","size"),r=Oe.useForwardProps(n);return(a,s)=>(e.openBlock(),e.createBlock(e.unref(Oe.PaginationPrev),e.mergeProps({"data-slot":"pagination-previous",class:e.unref(Ye)(e.unref(kn)({variant:"ghost",size:t.size}),"gap-1 px-2.5 sm:pr-2.5",o.class)},e.unref(r)),{default:e.withCtx(()=>[e.renderSlot(a.$slots,"default",{},()=>[e.createVNode(e.unref(be.ChevronLeftIcon)),s[0]||(s[0]=e.createElementVNode("span",{class:"hidden sm:block"},"Previous",-1))])]),_:3},16,["class"]))}}),Z5=e.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(t,{emit:o}){const n=t,r=o,a=Oe.useForwardPropsEmits(n,r);return(s,i)=>(e.openBlock(),e.createBlock(e.unref(Oe.SelectRoot),e.normalizeProps(e.guardReactiveProps(e.unref(a))),{default:e.withCtx(()=>[e.renderSlot(s.$slots,"default")]),_:3},16))}}),eV=e.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(t,{emit:o}){const n=t,r=o,a=ft.reactiveOmit(n,"class"),s=Oe.useForwardPropsEmits(a,r);return(i,l)=>(e.openBlock(),e.createBlock(e.unref(Oe.SelectPortal),null,{default:e.withCtx(()=>[e.createVNode(e.unref(Oe.SelectContent),e.mergeProps({...e.unref(s),...i.$attrs},{class:e.unref(Ye)("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",t.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:e.withCtx(()=>[e.createVNode(e.unref(rV)),e.createVNode(e.unref(Oe.SelectViewport),{class:e.normalizeClass(e.unref(Ye)("p-1",t.position==="popper"&&"h-[--reka-select-trigger-height] w-full min-w-[--reka-select-trigger-width]"))},{default:e.withCtx(()=>[e.renderSlot(i.$slots,"default")]),_:3},8,["class"]),e.createVNode(e.unref(nV))]),_:3},16,["class"])]),_:3}))}}),tV={class:"absolute right-2 flex h-3.5 w-3.5 items-center justify-center"},oV=e.defineComponent({__name:"SelectItem",props:{value:{},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(t){const o=t,n=ft.reactiveOmit(o,"class"),r=Oe.useForwardProps(n);return(a,s)=>(e.openBlock(),e.createBlock(e.unref(Oe.SelectItem),e.mergeProps(e.unref(r),{class:e.unref(Ye)("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",o.class)}),{default:e.withCtx(()=>[e.createElementVNode("span",tV,[e.createVNode(e.unref(Oe.SelectItemIndicator),null,{default:e.withCtx(()=>[e.createVNode(e.unref(be.Check),{class:"h-4 w-4"})]),_:1})]),e.createVNode(e.unref(Oe.SelectItemText),null,{default:e.withCtx(()=>[e.renderSlot(a.$slots,"default")]),_:3})]),_:3},16,["class"]))}}),nV=e.defineComponent({__name:"SelectScrollDownButton",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(t){const o=t,n=ft.reactiveOmit(o,"class"),r=Oe.useForwardProps(n);return(a,s)=>(e.openBlock(),e.createBlock(e.unref(Oe.SelectScrollDownButton),e.mergeProps(e.unref(r),{class:e.unref(Ye)("flex cursor-default items-center justify-center py-1",o.class)}),{default:e.withCtx(()=>[e.renderSlot(a.$slots,"default",{},()=>[e.createVNode(e.unref(be.ChevronDown))])]),_:3},16,["class"]))}}),rV=e.defineComponent({__name:"SelectScrollUpButton",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(t){const o=t,n=ft.reactiveOmit(o,"class"),r=Oe.useForwardProps(n);return(a,s)=>(e.openBlock(),e.createBlock(e.unref(Oe.SelectScrollUpButton),e.mergeProps(e.unref(r),{class:e.unref(Ye)("flex cursor-default items-center justify-center py-1",o.class)}),{default:e.withCtx(()=>[e.renderSlot(a.$slots,"default",{},()=>[e.createVNode(e.unref(be.ChevronUp))])]),_:3},16,["class"]))}}),aV=e.defineComponent({__name:"SelectTrigger",props:{disabled:{type:Boolean},reference:{},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(t){const o=t,n=ft.reactiveOmit(o,"class"),r=Oe.useForwardProps(n);return(a,s)=>(e.openBlock(),e.createBlock(e.unref(Oe.SelectTrigger),e.mergeProps(e.unref(r),{class:e.unref(Ye)("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",o.class)}),{default:e.withCtx(()=>[e.renderSlot(a.$slots,"default"),e.createVNode(e.unref(Oe.SelectIcon),{"as-child":""},{default:e.withCtx(()=>[e.createVNode(e.unref(be.ChevronDown),{class:"w-4 h-4 opacity-50 shrink-0"})]),_:1})]),_:3},16,["class"]))}}),sV=e.defineComponent({__name:"SelectValue",props:{placeholder:{},asChild:{type:Boolean},as:{}},setup(t){const o=t;return(n,r)=>(e.openBlock(),e.createBlock(e.unref(Oe.SelectValue),e.normalizeProps(e.guardReactiveProps(o)),{default:e.withCtx(()=>[e.renderSlot(n.$slots,"default")]),_:3},16))}}),Mr={TOP_LEFT:"top-left",TOP_RIGHT:"top-right",TOP_CENTER:"top-center",BOTTOM_LEFT:"bottom-left",BOTTOM_RIGHT:"bottom-right",BOTTOM_CENTER:"bottom-center"},$n={LIGHT:"light",DARK:"dark",COLORED:"colored",AUTO:"auto"},At={INFO:"info",SUCCESS:"success",WARNING:"warning",ERROR:"error",DEFAULT:"default"},iV={BOUNCE:"bounce",SLIDE:"slide",FLIP:"flip",ZOOM:"zoom",NONE:"none"},lV={dangerouslyHTMLString:!1,multiple:!0,position:Mr.TOP_RIGHT,autoClose:5e3,transition:"bounce",hideProgressBar:!1,pauseOnHover:!0,pauseOnFocusLoss:!0,closeOnClick:!0,className:"",bodyClassName:"",style:{},progressClassName:"",progressStyle:{},role:"alert",theme:"light"},cV={rtl:!1,newestOnTop:!1,toastClassName:""},rp={...lV,...cV};At.DEFAULT;var Je=(t=>(t[t.COLLAPSE_DURATION=300]="COLLAPSE_DURATION",t[t.DEBOUNCE_DURATION=50]="DEBOUNCE_DURATION",t.CSS_NAMESPACE="Toastify",t))(Je||{}),cl=(t=>(t.ENTRANCE_ANIMATION_END="d",t))(cl||{});const dV={enter:"Toastify--animate Toastify__bounce-enter",exit:"Toastify--animate Toastify__bounce-exit",appendPosition:!0},uV={enter:"Toastify--animate Toastify__slide-enter",exit:"Toastify--animate Toastify__slide-exit",appendPosition:!0},fV={enter:"Toastify--animate Toastify__zoom-enter",exit:"Toastify--animate Toastify__zoom-exit"},pV={enter:"Toastify--animate Toastify__flip-enter",exit:"Toastify--animate Toastify__flip-exit"},ap="Toastify--animate Toastify__none-enter";function sp(t,o=!1){var n;let r=dV;if(!t||typeof t=="string")switch(t){case"flip":r=pV;break;case"zoom":r=fV;break;case"slide":r=uV;break}else r=t;if(o)r.enter=ap;else if(r.enter===ap){const a=(n=r.exit.split("__")[1])==null?void 0:n.split("-")[0];r.enter=`Toastify--animate Toastify__${a}-enter`}return r}function mV(t){return t.containerId||String(t.position)}const Qa="will-unmount";function hV(t=Mr.TOP_RIGHT){return!!document.querySelector(`.${Je.CSS_NAMESPACE}__toast-container--${t}`)}function gV(t=Mr.TOP_RIGHT){return`${Je.CSS_NAMESPACE}__toast-container--${t}`}function bV(t,o,n=!1){const r=[`${Je.CSS_NAMESPACE}__toast-container`,`${Je.CSS_NAMESPACE}__toast-container--${t}`,n?`${Je.CSS_NAMESPACE}__toast-container--rtl`:null].filter(Boolean).join(" ");return In(o)?o({position:t,rtl:n,defaultClassName:r}):`${r} ${o||""}`}function yV(t){var o;const{position:n,containerClassName:r,rtl:a=!1,style:s={}}=t,i=Je.CSS_NAMESPACE,l=gV(n),c=document.querySelector(`.${i}`),d=document.querySelector(`.${l}`),u=!!d&&!((o=d.className)!=null&&o.includes(Qa)),f=c||document.createElement("div"),p=document.createElement("div");p.className=bV(n,r,a),p.dataset.testid=`${Je.CSS_NAMESPACE}__toast-container--${n}`,p.id=mV(t);for(const m in s)if(Object.prototype.hasOwnProperty.call(s,m)){const h=s[m];p.style[m]=h}return c||(f.className=Je.CSS_NAMESPACE,document.body.appendChild(f)),u||f.appendChild(p),p}function dl(t){var o,n,r;const a=typeof t=="string"?t:((o=t.currentTarget)==null?void 0:o.id)||((n=t.target)==null?void 0:n.id),s=document.getElementById(a);s&&s.removeEventListener("animationend",dl,!1);try{Tr[a].unmount(),(r=document.getElementById(a))==null||r.remove(),delete Tr[a],delete kt[a]}catch{}}const Tr=e.reactive({});function kV(t,o){const n=document.getElementById(String(o));n&&(Tr[n.id]=t)}function ul(t,o=!0){const n=String(t);if(!Tr[n])return;const r=document.getElementById(n);r&&r.classList.add(Qa),o?(wV(t),r&&r.addEventListener("animationend",dl,!1)):dl(n),Ut.items=Ut.items.filter(a=>a.containerId!==t)}function xV(t){for(const o in Tr)ul(o,t);Ut.items=[]}function ip(t,o){const n=document.getElementById(t.toastId);if(n){let r=t;r={...r,...sp(r.transition)};const a=r.appendPosition?`${r.exit}--${r.position}`:r.exit;n.className+=` ${a}`,o&&o(n)}}function wV(t){for(const o in kt)if(o===t)for(const n of kt[o]||[])ip(n)}function CV(t){const o=Ln().find(n=>n.toastId===t);return o==null?void 0:o.containerId}function fl(t){return document.getElementById(t)}function EV(t){const o=fl(t.containerId);return o&&o.classList.contains(Qa)}function lp(t){var o;const n=e.isVNode(t.content)?e.toRaw(t.content.props):null;return n??e.toRaw((o=t.data)!=null?o:{})}function SV(t){return t?Ut.items.filter(o=>o.containerId===t).length>0:Ut.items.length>0}function _V(){if(Ut.items.length>0){const t=Ut.items.shift();Za(t==null?void 0:t.toastContent,t==null?void 0:t.toastProps)}}const kt=e.reactive({}),Ut=e.reactive({items:[]});function Ln(){const t=e.toRaw(kt);return Object.values(t).reduce((o,n)=>[...o,...n],[])}function BV(t){return Ln().find(o=>o.toastId===t)}function Za(t,o={}){if(EV(o)){const n=fl(o.containerId);n&&n.addEventListener("animationend",pl.bind(null,t,o),!1)}else pl(t,o)}function pl(t,o={}){const n=fl(o.containerId);n&&n.removeEventListener("animationend",pl.bind(null,t,o),!1);const r=kt[o.containerId]||[],a=r.length>0;if(!a&&!hV(o.position)){const s=yV(o),i=e.createApp(YV,o);o.useHandler&&o.useHandler(i),i.mount(s),kV(i,s.id)}a&&!o.updateId&&(o.position=r[0].position),e.nextTick(()=>{o.updateId?$t.update(o):$t.add(t,o)})}const $t={add(t,o){const{containerId:n=""}=o;n&&(kt[n]=kt[n]||[],kt[n].find(r=>r.toastId===o.toastId)||setTimeout(()=>{var r,a;o.newestOnTop?(r=kt[n])==null||r.unshift(o):(a=kt[n])==null||a.push(o),o.onOpen&&o.onOpen(lp(o))},o.delay||0))},remove(t){if(t){const o=CV(t);if(o){const n=kt[o];let r=n.find(a=>a.toastId===t);kt[o]=n.filter(a=>a.toastId!==t),!kt[o].length&&!SV(o)&&ul(o,!1),_V(),e.nextTick(()=>{r!=null&&r.onClose&&(r.onClose(lp(r)),r=void 0)})}}},update(t={}){const{containerId:o=""}=t;if(o&&t.updateId){kt[o]=kt[o]||[];const n=kt[o].find(s=>s.toastId===t.toastId),r=(n==null?void 0:n.position)!==t.position||(n==null?void 0:n.transition)!==t.transition,a={...t,disabledEnterTransition:!r,updateId:void 0};$t.dismissForce(t==null?void 0:t.toastId),setTimeout(()=>{Le(a.content,a)},t.delay||0)}},clear(t,o=!0){t?ul(t,o):xV(o)},dismissCallback(t){var o;const n=(o=t.currentTarget)==null?void 0:o.id,r=document.getElementById(n);r&&(r.removeEventListener("animationend",$t.dismissCallback,!1),setTimeout(()=>{$t.remove(n)}))},dismiss(t){if(t){const o=Ln();for(const n of o)if(n.toastId===t){ip(n,r=>{r.addEventListener("animationend",$t.dismissCallback,!1)});break}}},dismissForce(t){if(t){const o=Ln();for(const n of o)if(n.toastId===t){const r=document.getElementById(t);r&&(r.remove(),r.removeEventListener("animationend",$t.dismissCallback,!1),$t.remove(t));break}}}},vV=e.reactive({useHandler:void 0}),cp=e.reactive({}),es=e.reactive({});function dp(){return Math.random().toString(36).substring(2,9)}function AV(t){return typeof t=="number"&&!isNaN(t)}function ml(t){return typeof t=="string"}function In(t){return typeof t=="function"}function ts(...t){return e.mergeProps(...t)}function os(t){return typeof t=="object"&&(!!(t!=null&&t.render)||!!(t!=null&&t.setup)||typeof(t==null?void 0:t.type)=="object")}function DV(t={}){cp[`${Je.CSS_NAMESPACE}-default-options`]=t}function up(){return cp[`${Je.CSS_NAMESPACE}-default-options`]||rp}function NV(){const t=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches;return document.documentElement.classList.contains("dark")||t?"dark":"light"}var ns=(t=>(t[t.Enter=0]="Enter",t[t.Exit=1]="Exit",t))(ns||{});const fp={containerId:{type:[String,Number],required:!1,default:""},clearOnUrlChange:{type:Boolean,required:!1,default:!0},disabledEnterTransition:{type:Boolean,required:!1,default:!1},dangerouslyHTMLString:{type:Boolean,required:!1,default:!1},multiple:{type:Boolean,required:!1,default:!0},limit:{type:Number,required:!1,default:void 0},position:{type:String,required:!1,default:Mr.TOP_LEFT},bodyClassName:{type:String,required:!1,default:""},autoClose:{type:[Number,Boolean],required:!1,default:!1},closeButton:{type:[Boolean,Function,Object],required:!1,default:void 0},transition:{type:[String,Object],required:!1,default:"bounce"},hideProgressBar:{type:Boolean,required:!1,default:!1},pauseOnHover:{type:Boolean,required:!1,default:!0},pauseOnFocusLoss:{type:Boolean,required:!1,default:!0},closeOnClick:{type:Boolean,required:!1,default:!0},progress:{type:Number,required:!1,default:void 0},progressClassName:{type:String,required:!1,default:""},toastStyle:{type:Object,required:!1,default(){return{}}},progressStyle:{type:Object,required:!1,default(){return{}}},role:{type:String,required:!1,default:"alert"},theme:{type:String,required:!1,default:$n.AUTO},content:{type:[String,Object,Function],required:!1,default:""},toastId:{type:[String,Number],required:!1,default:""},data:{type:[Object,String],required:!1,default(){return{}}},type:{type:String,required:!1,default:At.DEFAULT},icon:{type:[Boolean,String,Number,Object,Function],required:!1,default:void 0},delay:{type:Number,required:!1,default:void 0},onOpen:{type:Function,required:!1,default:void 0},onClose:{type:Function,required:!1,default:void 0},onClick:{type:Function,required:!1,default:void 0},isLoading:{type:Boolean,required:!1,default:void 0},rtl:{type:Boolean,required:!1,default:!1},toastClassName:{type:String,required:!1,default:""},updateId:{type:[String,Number],required:!1,default:""},contentProps:{type:Object,required:!1,default:null},expandCustomProps:{type:Boolean,required:!1,default:!1}},VV={autoClose:{type:[Number,Boolean],required:!0},isRunning:{type:Boolean,required:!1,default:void 0},type:{type:String,required:!1,default:At.DEFAULT},theme:{type:String,required:!1,default:$n.AUTO},hide:{type:Boolean,required:!1,default:void 0},className:{type:[String,Function],required:!1,default:""},controlledProgress:{type:Boolean,required:!1,default:void 0},rtl:{type:Boolean,required:!1,default:void 0},isIn:{type:Boolean,required:!1,default:void 0},progress:{type:Number,required:!1,default:void 0},closeToast:{type:Function,required:!1,default:void 0}},MV=e.defineComponent({name:"ProgressBar",props:VV,setup(t,{attrs:o}){const n=e.ref(),r=e.computed(()=>t.hide?"true":"false"),a=e.computed(()=>({...o.style||{},animationDuration:`${t.autoClose===!0?5e3:t.autoClose}ms`,animationPlayState:t.isRunning?"running":"paused",opacity:t.hide||t.autoClose===!1?0:1,transform:t.controlledProgress?`scaleX(${t.progress})`:"none"})),s=e.computed(()=>[`${Je.CSS_NAMESPACE}__progress-bar`,t.controlledProgress?`${Je.CSS_NAMESPACE}__progress-bar--controlled`:`${Je.CSS_NAMESPACE}__progress-bar--animated`,`${Je.CSS_NAMESPACE}__progress-bar-theme--${t.theme}`,`${Je.CSS_NAMESPACE}__progress-bar--${t.type}`,t.rtl?`${Je.CSS_NAMESPACE}__progress-bar--rtl`:null].filter(Boolean).join(" ")),i=e.computed(()=>`${s.value} ${(o==null?void 0:o.class)||""}`),l=()=>{n.value&&(n.value.onanimationend=null,n.value.ontransitionend=null)},c=()=>{t.isIn&&t.closeToast&&t.autoClose!==!1&&(t.closeToast(),l())},d=e.computed(()=>t.controlledProgress?null:c),u=e.computed(()=>t.controlledProgress?c:null);return e.watchEffect(()=>{n.value&&(l(),n.value.onanimationend=d.value,n.value.ontransitionend=u.value)}),()=>e.createVNode("div",{ref:n,role:"progressbar","aria-hidden":r.value,"aria-label":"notification timer",class:i.value,style:a.value},null)}}),TV=e.defineComponent({name:"CloseButton",inheritAttrs:!1,props:{theme:{type:String,required:!1,default:$n.AUTO},type:{type:String,required:!1,default:$n.LIGHT},ariaLabel:{type:String,required:!1,default:"close"},closeToast:{type:Function,required:!1,default:void 0}},setup(t){return()=>e.createVNode("button",{class:`${Je.CSS_NAMESPACE}__close-button ${Je.CSS_NAMESPACE}__close-button--${t.theme}`,type:"button",onClick:o=>{o.stopPropagation(),t.closeToast&&t.closeToast(o)},"aria-label":t.ariaLabel},[e.createVNode("svg",{"aria-hidden":"true",viewBox:"0 0 14 16"},[e.createVNode("path",{"fill-rule":"evenodd",d:"M7.71 8.23l3.75 3.75-1.48 1.48-3.75-3.75-3.75 3.75L1 11.98l3.75-3.75L1 4.48 2.48 3l3.75 3.75L9.98 3l1.48 1.48-3.75 3.75z"},null)])])}}),rs=({theme:t,type:o,path:n,...r})=>e.createVNode("svg",e.mergeProps({viewBox:"0 0 24 24",width:"100%",height:"100%",style:{fill:t==="colored"?"currentColor":`var(--toastify-icon-color-${o})`}},r),[e.createVNode("path",{d:n},null)]);function PV(t){return e.createVNode(rs,e.mergeProps(t,{path:"M23.32 17.191L15.438 2.184C14.728.833 13.416 0 11.996 0c-1.42 0-2.733.833-3.443 2.184L.533 17.448a4.744 4.744 0 000 4.368C1.243 23.167 2.555 24 3.975 24h16.05C22.22 24 24 22.044 24 19.632c0-.904-.251-1.746-.68-2.44zm-9.622 1.46c0 1.033-.724 1.823-1.698 1.823s-1.698-.79-1.698-1.822v-.043c0-1.028.724-1.822 1.698-1.822s1.698.79 1.698 1.822v.043zm.039-12.285l-.84 8.06c-.057.581-.408.943-.897.943-.49 0-.84-.367-.896-.942l-.84-8.065c-.057-.624.25-1.095.779-1.095h1.91c.528.005.84.476.784 1.1z"}),null)}function RV(t){return e.createVNode(rs,e.mergeProps(t,{path:"M12 0a12 12 0 1012 12A12.013 12.013 0 0012 0zm.25 5a1.5 1.5 0 11-1.5 1.5 1.5 1.5 0 011.5-1.5zm2.25 13.5h-4a1 1 0 010-2h.75a.25.25 0 00.25-.25v-4.5a.25.25 0 00-.25-.25h-.75a1 1 0 010-2h1a2 2 0 012 2v4.75a.25.25 0 00.25.25h.75a1 1 0 110 2z"}),null)}function OV(t){return e.createVNode(rs,e.mergeProps(t,{path:"M12 0a12 12 0 1012 12A12.014 12.014 0 0012 0zm6.927 8.2l-6.845 9.289a1.011 1.011 0 01-1.43.188l-4.888-3.908a1 1 0 111.25-1.562l4.076 3.261 6.227-8.451a1 1 0 111.61 1.183z"}),null)}function FV(t){return e.createVNode(rs,e.mergeProps(t,{path:"M11.983 0a12.206 12.206 0 00-8.51 3.653A11.8 11.8 0 000 12.207 11.779 11.779 0 0011.8 24h.214A12.111 12.111 0 0024 11.791 11.766 11.766 0 0011.983 0zM10.5 16.542a1.476 1.476 0 011.449-1.53h.027a1.527 1.527 0 011.523 1.47 1.475 1.475 0 01-1.449 1.53h-.027a1.529 1.529 0 01-1.523-1.47zM11 12.5v-6a1 1 0 012 0v6a1 1 0 11-2 0z"}),null)}function $V(){return e.createVNode("div",{class:`${Je.CSS_NAMESPACE}__spinner`},null)}const as={info:RV,warning:PV,success:OV,error:FV,spinner:$V},LV=t=>t in as;function IV({theme:t,type:o,isLoading:n,icon:r}){let a;const s=!!n||o==="loading",i={theme:t,type:o};if(s&&(r===void 0||typeof r=="boolean"))return as.spinner();if(r!==!1){if(os(r))a=e.toRaw(r);else if(In(r)){const l=r;i.type=s?"loading":o,a=l(i),a=!a&&s?as.spinner():a}else e.isVNode(r)?a=e.cloneVNode(r,i):ml(r)||AV(r)?a=r:LV(o)&&(a=as[o](i));return a}}const zV=()=>{};function jV(t,o,n=Je.COLLAPSE_DURATION){const{scrollHeight:r,style:a}=t,s=n;requestAnimationFrame(()=>{a.minHeight="initial",a.height=r+"px",a.transition=`all ${s}ms`,requestAnimationFrame(()=>{a.height="0",a.padding="0",a.margin="0",setTimeout(o,s)})})}function UV(t){const o=e.ref(!1),n=e.ref(!1),r=e.ref(!1),a=e.ref(ns.Enter),s=e.reactive({...t,appendPosition:t.appendPosition||!1,collapse:typeof t.collapse>"u"?!0:t.collapse,collapseDuration:t.collapseDuration||Je.COLLAPSE_DURATION}),i=s.done||zV,l=e.computed(()=>s.appendPosition?`${s.enter}--${s.position}`:s.enter),c=e.computed(()=>s.appendPosition?`${s.exit}--${s.position}`:s.exit),d=e.computed(()=>t.pauseOnHover?{onMouseenter:k,onMouseleave:g}:{});function u(){const E=l.value.split(" ");p().addEventListener(cl.ENTRANCE_ANIMATION_END,g,{once:!0});const x=V=>{const N=p();V.target===N&&(N.dispatchEvent(new Event(cl.ENTRANCE_ANIMATION_END)),N.removeEventListener("animationend",x),N.removeEventListener("animationcancel",x),a.value===ns.Enter&&V.type!=="animationcancel"&&N.classList.remove(...E))},C=()=>{const V=p();V.classList.add(...E),V.addEventListener("animationend",x),V.addEventListener("animationcancel",x)};t.pauseOnFocusLoss&&m(),C()}function f(){if(!p())return;const E=()=>{const C=p();C.removeEventListener("animationend",E),s.collapse?jV(C,i,s.collapseDuration):i()},x=()=>{const C=p();a.value=ns.Exit,C&&(C.className+=` ${c.value}`,C.addEventListener("animationend",E))};n.value||(r.value?E():setTimeout(x))}function p(){return t.toastRef.value}function m(){document.hasFocus()||k(),window.addEventListener("focus",g),window.addEventListener("blur",k)}function h(){window.removeEventListener("focus",g),window.removeEventListener("blur",k)}function g(){(!t.loading.value||t.isLoading===void 0)&&(o.value=!0)}function k(){o.value=!1}function b(E){E&&(E.stopPropagation(),E.preventDefault()),n.value=!1}return e.watchEffect(f),e.watchEffect(()=>{const E=Ln();n.value=E.findIndex(x=>x.toastId===s.toastId)>-1}),e.watchEffect(()=>{t.isLoading!==void 0&&(t.loading.value?k():g())}),e.onMounted(u),e.onUnmounted(()=>{t.pauseOnFocusLoss&&h()}),{isIn:n,isRunning:o,hideToast:b,eventHandlers:d}}function WV(t){if(!t||typeof t!="object"||Array.isArray(t)||t.__v_isVNode)return!1;const o=t;return["title","content"].some(n=>n in o)}const HV=e.defineComponent({name:"ToastItem",inheritAttrs:!1,props:fp,setup(t){const o=e.ref(),n=e.computed(()=>!!t.isLoading),r=e.computed(()=>t.progress!==void 0&&t.progress!==null),a=e.computed(()=>IV(t)),s=e.computed(()=>[`${Je.CSS_NAMESPACE}__toast`,`${Je.CSS_NAMESPACE}__toast-theme--${t.theme}`,`${Je.CSS_NAMESPACE}__toast--${t.type}`,t.rtl?`${Je.CSS_NAMESPACE}__toast--rtl`:void 0,t.toastClassName||""].filter(Boolean).join(" ")),{isRunning:i,isIn:l,hideToast:c,eventHandlers:d}=UV({toastRef:o,loading:n,done:()=>{$t.remove(t.toastId)},...sp(t.transition,t.disabledEnterTransition),...t});function u(){const f=t.content;if(WV(f)){const p=[];return f.title!==void 0&&p.push(e.createVNode("div",{"data-testid":"toast-text-title",class:`${Je.CSS_NAMESPACE}__toast-text-title`},[f.title])),f.content!==void 0&&p.push(e.createVNode("div",{"data-testid":"toast-text-content",class:`${Je.CSS_NAMESPACE}__toast-text-content`},[f.content])),e.createVNode("div",{"data-testid":"toast-text-content-wrapper",class:`${Je.CSS_NAMESPACE}__toast-text`},[p])}return os(f)?e.h(e.toRaw(f),{toastProps:e.toRaw(t),closeToast:c,data:t.data,...t.expandCustomProps?t.contentProps:{contentProps:t.contentProps||{}}}):In(f)?f({toastProps:e.toRaw(t),closeToast:c,data:t.data}):t.dangerouslyHTMLString?e.h("div",{innerHTML:f}):f}return()=>e.createVNode("div",e.mergeProps({id:t.toastId,class:s.value,style:t.toastStyle||{},ref:o,"data-testid":`toast-item-${t.toastId}`,onClick:f=>{t.closeOnClick&&c(),t.onClick&&t.onClick(f)}},d.value),[e.createVNode("div",{role:t.role,"data-testid":"toast-body",class:`${Je.CSS_NAMESPACE}__toast-body ${t.bodyClassName||""}`},[a.value!=null&&e.createVNode("div",{"data-testid":`toast-icon-${t.type}`,class:[`${Je.CSS_NAMESPACE}__toast-icon`,t.isLoading?"":`${Je.CSS_NAMESPACE}--animate-icon ${Je.CSS_NAMESPACE}__zoom-enter`].join(" ")},[os(a.value)?e.h(e.toRaw(a.value),{theme:t.theme,type:t.type}):In(a.value)?a.value({theme:t.theme,type:t.type}):a.value]),e.createVNode("div",{"data-testid":"toast-content"},[u()])]),(t.closeButton===void 0||t.closeButton===!0)&&e.createVNode(TV,{theme:t.theme,closeToast:f=>{f.stopPropagation(),f.preventDefault(),c()}},null),os(t.closeButton)?e.h(e.toRaw(t.closeButton),{closeToast:c,type:t.type,theme:t.theme}):In(t.closeButton)?t.closeButton({closeToast:c,type:t.type,theme:t.theme}):null,e.createVNode(MV,{className:t.progressClassName,style:t.progressStyle,rtl:t.rtl,theme:t.theme,isIn:l.value,type:t.type,hide:t.hideProgressBar,isRunning:i.value,autoClose:t.autoClose,controlledProgress:r.value,progress:t.progress,closeToast:t.isLoading?void 0:c},null)])}}),ss="vue3-toastify:url-change";let is=0,Pr;function qV(){if(!(typeof window>"u")&&es.lastUrl!==window.location.href){es.lastUrl=window.location.href;const t=n=>typeof n.clearOnUrlChange=="boolean"?n.clearOnUrlChange:up().clearOnUrlChange!==!1,o=Object.values(kt).reduce((n,r)=>(Array.isArray(r)&&n.push(...r),n),[]);for(const n of o)n.toastId&&t(n)&&$t.dismiss(n.toastId);Ut.items=Ut.items.filter(n=>!t(n.toastProps))}}function KV(){const{history:t}=window,o=t.pushState,n=t.replaceState;return t.pushState=function(...r){const a=o.apply(this,r);return window.dispatchEvent(new Event(ss)),a},t.replaceState=function(...r){const a=n.apply(this,r);return window.dispatchEvent(new Event(ss)),a},()=>{t.pushState=o,t.replaceState=n}}function GV(){if(typeof window>"u"||Pr)return;const t=KV(),o=()=>qV();window.addEventListener(ss,o),window.addEventListener("popstate",o),window.addEventListener("hashchange",o),Pr=()=>{t(),window.removeEventListener(ss,o),window.removeEventListener("popstate",o),window.removeEventListener("hashchange",o),Pr=void 0}}function XV(){Pr&&(Pr(),es.lastUrl="")}const YV=e.defineComponent({name:"ToastifyContainer",inheritAttrs:!1,props:fp,setup(t){const o=e.computed(()=>t.containerId),n=e.computed(()=>kt[o.value]||[]),r=e.computed(()=>n.value.filter(a=>a.position===t.position));return e.onMounted(()=>{typeof window<"u"&&(is+=1,GV())}),e.onUnmounted(()=>{typeof window<"u"&&is>0&&(is-=1,is===0&&XV())}),()=>e.createVNode(e.Fragment,null,[r.value.map(a=>{const{toastId:s=""}=a;return e.createVNode(HV,e.mergeProps({key:s},a),null)})])}});let hl=!1;const pp={isLoading:!0,autoClose:!1,closeOnClick:!1,closeButton:!1,draggable:!1};function mp(){const t=[];return Ln().forEach(o=>{const n=document.getElementById(o.containerId);n&&!n.classList.contains(Qa)&&t.push(o)}),t}function JV(t){const o=mp().length,n=t??0;return n>0&&o+Ut.items.length>=n}function QV(t){JV(t.limit)&&!t.updateId&&Ut.items.push({toastId:t.toastId,containerId:t.containerId,toastContent:t.content,toastProps:t})}function jo(t,o,n={}){if(hl)return;n=ts(up(),{type:o},e.toRaw(n)),(!n.toastId||typeof n.toastId!="string"&&typeof n.toastId!="number")&&(n.toastId=dp()),n={...n,...n.type==="loading"?pp:{},content:t,containerId:n.containerId||String(n.position)};const r=Number(n==null?void 0:n.progress);return!isNaN(r)&&r<0&&(n.progress=0),r>1&&(n.progress=1),n.theme==="auto"&&(n.theme=NV()),QV(n),es.lastUrl=window.location.href,n.multiple?Ut.items.length?n.updateId&&Za(t,n):Za(t,n):(hl=!0,Le.clearAll(void 0,!1),setTimeout(()=>{Za(t,n)},0),setTimeout(()=>{hl=!1},390)),n.toastId}const Le=(t,o)=>jo(t,At.DEFAULT,o);Le.info=(t,o)=>jo(t,At.DEFAULT,{...o,type:At.INFO}),Le.error=(t,o)=>jo(t,At.DEFAULT,{...o,type:At.ERROR}),Le.warning=(t,o)=>jo(t,At.DEFAULT,{...o,type:At.WARNING}),Le.warn=Le.warning,Le.success=(t,o)=>jo(t,At.DEFAULT,{...o,type:At.SUCCESS}),Le.loading=(t,o)=>jo(t,At.DEFAULT,ts(o,pp)),Le.dark=(t,o)=>jo(t,At.DEFAULT,ts(o,{theme:$n.DARK})),Le.remove=t=>{t?$t.dismiss(t):$t.clear()},Le.clearAll=(t,o)=>{e.nextTick(()=>{$t.clear(t,o)})},Le.isActive=t=>{let o=!1;return o=mp().findIndex(n=>n.toastId===t)>-1,o},Le.update=(t,o={})=>{setTimeout(()=>{const n=BV(t);if(n){const r=e.toRaw(n),{content:a}=r,s={...r,...o,toastId:o.toastId||t,updateId:dp()},i=s.render||a;delete s.render,jo(i,s.type,s)}},0)},Le.done=t=>{Le.update(t,{isLoading:!1,progress:1})},Le.promise=ZV;function ZV(t,{pending:o,error:n,success:r},a){var s,i,l;let c;const d={...a||{},autoClose:!1};o&&(c=ml(o)?Le.loading(o,d):Le.loading(o.render,{...d,...o}));const u={autoClose:(s=a==null?void 0:a.autoClose)!=null?s:!0,closeOnClick:(i=a==null?void 0:a.closeOnClick)!=null?i:!0,closeButton:(l=a==null?void 0:a.autoClose)!=null?l:null,isLoading:void 0,draggable:null,delay:100},f=(m,h,g)=>{if(h==null){Le.remove(c);return}const k={type:m,...u,...a,data:g},b=ml(h)?{render:h}:h;return c?Le.update(c,{...k,...b,isLoading:!1}):Le(b.render,{...k,...b,isLoading:!1}),g},p=In(t)?t():t;return p.then(m=>{f("success",r,m)}).catch(m=>{f("error",n,m)}),p}Le.POSITION=Mr,Le.THEME=$n,Le.TYPE=At,Le.TRANSITIONS=iV;const eM={install(t,o={}){vV.useHandler=o.useHandler||(()=>{}),tM(o)}};typeof window<"u"&&(window.Vue3Toastify=eM);function tM(t={}){const o=ts(rp,t);DV(o)}const oM={v:"4.8.0",meta:{g:"LottieFiles AE ",a:"",k:"",d:"",tc:""},fr:25,ip:0,op:273,w:500,h:500,nm:"not_found",ddd:0,assets:JSON.parse('[{"id":"image_0","w":175,"h":173,"u":"","p":"data:image/png;base64,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","e":1},{"id":"image_1","w":85,"h":85,"u":"","p":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFUAAABVCAYAAAA49ahaAAAACXBIWXMAAAABAAAAAQBPJcTWAAAAJHpUWHRDcmVhdG9yAAAImXNMyU9KVXBMK0ktUnBNS0tNLikGAEF6Bs5qehXFAAAEE0lEQVR4nO2d/XXaMBTF72OB0AnqThA6Qd0JygalEzQj0A3aCUo3gAnqbEAmKNmATHD7hyTqEuMvycgW73cOJzYY83zzJMuS3pNgJJDMAWT2tQAwb/jKEcDe/RWRYjjruiGxfpjkEkBuX/eBTvsEI/QWQCEix0DnHS8klyS3JI+8DluSK5JNXj8tSGYk11cUsoojyQ3JLLYeXlgxNxGFvMT0xCU5p/HMsbPhFKoFmjozZjHvypHkQ2zdKqHxzm1kgXwoGLBK8G5S0bQvtwDuvK2JywuABxHZ+J5o5vNlmqLzG9MXFDDX8JPkd98T9fZUkhsAn30NGCk7AKu+Dw+9RE1cUMcTgLyPsJ1FJblHuMfKsdNL2E51qvXQWxEUMNdasGN7trWoN1Lkq7iHad20ppWo9i5/i4I6PlinakVjnWrbob89DEqJL23asbWi2rrkgDTaoSF4gblx7esOair+G6igZe5gNKnloqg0PfOfAhqUCvck13UHVBZ/LfaNvABYiMih6sNLnvoAFbSOOwAX+wheeartAvszoEEp8bFqFLfKU9eDm5IO66o3//NU9dJevPLWc09dXc2UdFidv3HuqUfoDaoPb8o9WSdPte1SFbQfq/LO7NIHSidW5Z1T8dei78079zAwA7ToB2LpNlzxz+PYkRS521BRw5G7DQEAkoxmSlq8F5H9zPbsK2HIAFP8s6hmpMUCUFFDcxJ1EdmQlJgDRtTxT3ydDhngOetPecVbQEUdBC3+A6CiDsAMZihaCYjWqQOgooblGTCiph8Uez0OgBG1dgab0okjoJ4amj2gnhqaA6Cd1KExndR25ymqKYngZlg7UbUK8OfRbThRO4W0KJWcNHSiFnHsSIrCbcwAwE6u2sWyJgGeyxEr5cdUrQL6synvlOdSafBEf96VgypOnmqrAPXW7uzOo1R0ero/9dPTreK/rmjQ1Hmsik7RkB8/2oX8qLe2ptJLAQ2j9OH9pWjqyuEU2xJYD2nRxPlRF57eFO9fAPgQ2qKJ8wwT7Huxc79p4G8FEzGs/KMxX1WtqPamNc4Eg3H41iZNc6u8VDZV21dfiybOTkSWzYd1SPZFcovbzVTRKelXF1HnMH2Gt5TsC+iRRa1TWrobFLZVdp9zOk37sf+tHLcxUOg8tPP4Xd+slHOYbsJU27C9M1ICPSeoichRRHKk2Uewg4eggOesPxFZAfiCdB4QvonIchQrWZBckNwPlYX7Chw41shHxl95og/fOfZ8/zQrUUwhPX1BclqBeSRza/jYKDjWot4WGnHHsIbKllMX8xyaVSseeN0b2oGmns+uea1RFvmyF1le5CvksM0j/i3yFWU2Y7SV08rQ3DAymIhutxRdBhvrWcEzzBiaW5LuALMknU4JTZW/U1qiUwiP8oYAAAAASUVORK5CYII=","e":1},{"id":"image_2","w":186,"h":242,"u":"","p":"data:image/png;base64,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","e":1},{"id":"image_3","w":216,"h":260,"u":"","p":"data:image/png;base64,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","e":1},{"id":"comp_0","layers":[{"ddd":0,"ind":1,"ty":2,"nm":"magnify","refId":"image_0","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":0,"s":[0]},{"i":{"x":[0.833],"y":[1]},"o":{"x":[0.167],"y":[0]},"t":42,"s":[75]},{"i":{"x":[0.833],"y":[1]},"o":{"x":[0.167],"y":[0]},"t":90,"s":[8]},{"i":{"x":[0.833],"y":[1]},"o":{"x":[0.167],"y":[0]},"t":121,"s":[32]},{"i":{"x":[0.833],"y":[1]},"o":{"x":[0.167],"y":[0]},"t":134,"s":[32]},{"i":{"x":[0.833],"y":[1]},"o":{"x":[0.167],"y":[0]},"t":164,"s":[53]},{"i":{"x":[0.833],"y":[1]},"o":{"x":[0.167],"y":[0]},"t":183,"s":[53]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.167],"y":[0]},"t":219,"s":[53]},{"t":272,"s":[0]}],"ix":10},"p":{"a":1,"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":0,"s":[333.752,339.42,0],"to":[-26,-25,0],"ti":[-4.333,25,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":42,"s":[177.752,189.42,0],"to":[4.333,-25,0],"ti":[-25.667,-23.333,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0},"t":90,"s":[359.752,189.42,0],"to":[25.667,23.333,0],"ti":[4.667,-23.333,0]},{"i":{"x":0.667,"y":0.667},"o":{"x":0.167,"y":0.167},"t":121,"s":[331.752,329.42,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0},"t":134,"s":[331.752,329.42,0],"to":[-28.333,4.667,0],"ti":[28.333,-4.667,0]},{"i":{"x":0.667,"y":0.667},"o":{"x":0.167,"y":0.167},"t":164,"s":[161.752,357.42,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0},"t":183,"s":[161.752,357.42,0],"to":[0,-24.333,0],"ti":[-28.667,3,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0},"t":219,"s":[161.752,211.42,0],"to":[28.667,-3,0],"ti":[-28.667,-21.333,0]},{"t":272,"s":[333.752,339.42,0]}],"ix":2},"a":{"a":0,"k":[87.194,86.29,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ip":0,"op":750,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":2,"nm":"glass 2","parent":1,"refId":"image_1","sr":1,"ks":{"o":{"a":0,"k":20,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[68.687,68.686,0],"ix":2},"a":{"a":0,"k":[42.065,42.066,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ip":0,"op":750,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":2,"nm":"glass","parent":1,"td":1,"refId":"image_1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[68.687,68.686,0],"ix":2},"a":{"a":0,"k":[42.065,42.066,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ip":0,"op":750,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":0,"nm":"paper","tt":1,"refId":"comp_1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[250,250,0],"ix":2},"a":{"a":0,"k":[250,250,0],"ix":1},"s":{"a":0,"k":[125,125,100],"ix":6}},"ao":0,"w":500,"h":500,"ip":0,"op":750,"st":0,"bm":0},{"ddd":0,"ind":5,"ty":0,"nm":"paper","refId":"comp_1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[250,250,0],"ix":2},"a":{"a":0,"k":[250,250,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":500,"h":500,"ip":0,"op":750,"st":0,"bm":0}]},{"id":"comp_1","layers":[{"ddd":0,"ind":1,"ty":2,"nm":"paper_1","refId":"image_2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[263.625,231.897,0],"ix":2},"a":{"a":0,"k":[92.771,120.853,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ip":0,"op":750,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":2,"nm":"paper_2","refId":"image_3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[214.478,258.49,0],"ix":2},"a":{"a":0,"k":[107.933,130,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ip":0,"op":750,"st":0,"bm":0}]}]'),layers:[{ddd:0,ind:1,ty:0,nm:"not_found 2",refId:"comp_0",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[250,250,0],ix:2},a:{a:0,k:[250,250,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,w:500,h:500,ip:0,op:273,st:0,bm:0}],markers:[]};var ls={exports:{}},nM=ls.exports,hp;function rM(){return hp||(hp=1,(function(t,o){(function(n,r){t.exports=r()})(nM,function(){Array.isArray||(Array.isArray=function(s){return Object.prototype.toString.call(s)==="[object Array]"});function n(s){for(var i=[],l=0,c=s.length;l<c;l++)i.indexOf(s[l])===-1&&i.push(s[l]);return i}var r={},a={"==":function(s,i){return s==i},"===":function(s,i){return s===i},"!=":function(s,i){return s!=i},"!==":function(s,i){return s!==i},">":function(s,i){return s>i},">=":function(s,i){return s>=i},"<":function(s,i,l){return l===void 0?s<i:s<i&&i<l},"<=":function(s,i,l){return l===void 0?s<=i:s<=i&&i<=l},"!!":function(s){return r.truthy(s)},"!":function(s){return!r.truthy(s)},"%":function(s,i){return s%i},log:function(s){return console.log(s),s},in:function(s,i){return!i||typeof i.indexOf>"u"?!1:i.indexOf(s)!==-1},cat:function(){return Array.prototype.join.call(arguments,"")},substr:function(s,i,l){if(l<0){var c=String(s).substr(i);return c.substr(0,c.length+l)}return String(s).substr(i,l)},"+":function(){return Array.prototype.reduce.call(arguments,function(s,i){return parseFloat(s,10)+parseFloat(i,10)},0)},"*":function(){return Array.prototype.reduce.call(arguments,function(s,i){return parseFloat(s,10)*parseFloat(i,10)})},"-":function(s,i){return i===void 0?-s:s-i},"/":function(s,i){return s/i},min:function(){return Math.min.apply(this,arguments)},max:function(){return Math.max.apply(this,arguments)},merge:function(){return Array.prototype.reduce.call(arguments,function(s,i){return s.concat(i)},[])},var:function(s,i){var l=i===void 0?null:i,c=this;if(typeof s>"u"||s===""||s===null)return c;for(var d=String(s).split("."),u=0;u<d.length;u++)if(c==null||(c=c[d[u]],c===void 0))return l;return c},missing:function(){for(var s=[],i=Array.isArray(arguments[0])?arguments[0]:arguments,l=0;l<i.length;l++){var c=i[l],d=r.apply({var:c},this);(d===null||d==="")&&s.push(c)}return s},missing_some:function(s,i){var l=r.apply({missing:i},this);return i.length-l.length>=s?[]:l}};return r.is_logic=function(s){return typeof s=="object"&&s!==null&&!Array.isArray(s)&&Object.keys(s).length===1},r.truthy=function(s){return Array.isArray(s)&&s.length===0?!1:!!s},r.get_operator=function(s){return Object.keys(s)[0]},r.get_values=function(s){return s[r.get_operator(s)]},r.apply=function(s,i){if(Array.isArray(s))return s.map(function(k){return r.apply(k,i)});if(!r.is_logic(s))return s;var l=r.get_operator(s),c=s[l],d,u,f,p,m;if(Array.isArray(c)||(c=[c]),l==="if"||l=="?:"){for(d=0;d<c.length-1;d+=2)if(r.truthy(r.apply(c[d],i)))return r.apply(c[d+1],i);return c.length===d+1?r.apply(c[d],i):null}else if(l==="and"){for(d=0;d<c.length;d+=1)if(u=r.apply(c[d],i),!r.truthy(u))return u;return u}else if(l==="or"){for(d=0;d<c.length;d+=1)if(u=r.apply(c[d],i),r.truthy(u))return u;return u}else{if(l==="filter")return p=r.apply(c[0],i),f=c[1],Array.isArray(p)?p.filter(function(k){return r.truthy(r.apply(f,k))}):[];if(l==="map")return p=r.apply(c[0],i),f=c[1],Array.isArray(p)?p.map(function(k){return r.apply(f,k)}):[];if(l==="reduce")return p=r.apply(c[0],i),f=c[1],m=typeof c[2]<"u"?r.apply(c[2],i):null,Array.isArray(p)?p.reduce(function(k,b){return r.apply(f,{current:b,accumulator:k})},m):m;if(l==="all"){if(p=r.apply(c[0],i),f=c[1],!Array.isArray(p)||!p.length)return!1;for(d=0;d<p.length;d+=1)if(!r.truthy(r.apply(f,p[d])))return!1;return!0}else if(l==="none"){if(p=r.apply(c[0],i),f=c[1],!Array.isArray(p)||!p.length)return!0;for(d=0;d<p.length;d+=1)if(r.truthy(r.apply(f,p[d])))return!1;return!0}else if(l==="some"){if(p=r.apply(c[0],i),f=c[1],!Array.isArray(p)||!p.length)return!1;for(d=0;d<p.length;d+=1)if(r.truthy(r.apply(f,p[d])))return!0;return!1}}if(c=c.map(function(k){return r.apply(k,i)}),a.hasOwnProperty(l)&&typeof a[l]=="function")return a[l].apply(i,c);if(l.indexOf(".")>0){var h=String(l).split("."),g=a;for(d=0;d<h.length;d++){if(!g.hasOwnProperty(h[d]))throw new Error("Unrecognized operation "+l+" (failed at "+h.slice(0,d+1).join(".")+")");g=g[h[d]]}return g.apply(i,c)}throw new Error("Unrecognized operation "+l)},r.uses_data=function(s){var i=[];if(r.is_logic(s)){var l=r.get_operator(s),c=s[l];Array.isArray(c)||(c=[c]),l==="var"?i.push(c[0]):c.forEach(function(d){i.push.apply(i,r.uses_data(d))})}return n(i)},r.add_operation=function(s,i){a[s]=i},r.rm_operation=function(s){delete a[s]},r.rule_like=function(s,i){if(i===s||i==="@")return!0;if(i==="number")return typeof s=="number";if(i==="string")return typeof s=="string";if(i==="array")return Array.isArray(s)&&!r.is_logic(s);if(r.is_logic(i)){if(r.is_logic(s)){var l=r.get_operator(i),c=r.get_operator(s);if(l==="@"||l===c)return r.rule_like(r.get_values(s,!1),r.get_values(i,!1))}return!1}if(Array.isArray(i))if(Array.isArray(s)){if(i.length!==s.length)return!1;for(var d=0;d<i.length;d+=1)if(!r.rule_like(s[d],i[d]))return!1;return!0}else return!1;return!1},r})})(ls)),ls.exports}var aM=rM();const no=_c(aM);function gp(){const t=n=>n&&typeof n=="object"&&n._isLogicValue;no.add_operation("var",function(n,r){const a=r===void 0?null:r,s=this;if(n===void 0||n===""||n===null)return s;if(s&&typeof s=="object"&&s._resolveLogicVar){const c=s._resolveLogicVar(String(n));if(c!==void 0)return c}const i=String(n).split(".");let l=s;for(let c=0;c<i.length;c++)if(l==null||(l=l[i[c]],l===void 0))return a;return l}),no.add_operation("length",n=>n==null?0:t(n)?String(n.id||n.code||"").length:typeof n=="string"?n.length:typeof n=="number"?String(n).length:Array.isArray(n)?n.length:typeof n=="object"?Object.keys(n).length:0),["+","-","*","/",">","<",">=","<="].forEach(n=>{no.add_operation(n,(...r)=>{const a=l=>t(l)?Number(l.id)||0:typeof l=="string"&&l.trim()!==""&&!isNaN(Number(l))?Number(l):l;if(n==="+"||n==="*"||n==="-"||n==="/")return r.reduce((l,c,d)=>{const u=a(c)||0;if(d===0)return u;switch(n){case"+":return l+u;case"-":return l-u;case"*":return l*u;case"/":return u!==0?l/u:0;default:return l}},n==="*"||n==="/"?1:0);const s=a(r[0]),i=a(r[1]);switch(n){case">":return s>i;case"<":return s<i;case">=":return s>=i;case"<=":return s<=i;default:return 0}})}),no.add_operation("==",(n,r)=>{if(n==null)return r==null;if(r==null)return n==null;const a=l=>t(l)?[String(l.code),String(l.id),String(l.value)]:[String(l)],[s,i]=[a(n),a(r)];return s.some(l=>i.some(c=>l===c))}),no.add_operation("!=",(n,r)=>n==null&&r==null?!1:n==null||r===null||r===void 0?!0:t(n)&&t(r)?!(String(n.id)===String(r.id)||String(n.code)===String(r.code)):t(n)?!(String(n.code)===String(r)||String(n.id)===String(r)):t(r)?!(String(r.code)===String(n)||String(r.id)===String(n)):String(n)!==String(r)),no.add_operation("calculate_age",(n,r,a="years")=>{if(!n)return null;const s=new Date(n),i=r&&r!==null&&r!=="null"?new Date(r):new Date;if(isNaN(s.getTime())||isNaN(i.getTime()))return null;const l=s<=i,[c,d]=l?[s,i]:[i,s];let u=d.getFullYear()-c.getFullYear(),f=d.getMonth()-c.getMonth(),p=d.getDate()-c.getDate();if(p<0){f--;const g=new Date(d.getFullYear(),d.getMonth(),0);p+=g.getDate()}f<0&&(u--,f+=12);const m=f,h=l?1:-1;if(a==="years")return u*h;if(a==="months")return m*h;if(a==="days"){const g=d.getTime()-c.getTime();return Math.floor(g/(1e3*60*60*24))*h}return u*h})}function gl({formData:t,errors:o,fieldMap:n,rawItemsCache:r,activeSchema:a,locale:s,tableRowFormData:i,revealedSectionIds:l,revealedFieldModels:c}){const d=e.computed(()=>{var A;for(const F in r)(A=r[F])==null||A.length;return f(t)}),u=(A,F,I,v)=>{var q,Q,ae,j;if(F==null||typeof F=="object"&&F._isLogicValue)return F;let L=I;if(!L){const z=(Q=(q=n.value)==null?void 0:q.paths)==null?void 0:Q.get(A),J=(j=(ae=n.value)==null?void 0:ae.models)==null?void 0:j.get(A),le=z||(Array.isArray(J)?J[0]:null);L=le==null?void 0:le.field}if(!L)return F;const R=L.props||L.propsFieldCustom||L.propsFieldGlobal||{},O=r[L.key]||R.items||R.options;if(!O||!Array.isArray(O))return["DCodeAutoComplete","DCodeSelect","DCodeRadio","DCodeRadioCustom"].includes(L.component)||!!(R.endpoint||R.endpointReference||R.items)?{id:(v==null?void 0:v.id)??F,code:(v==null?void 0:v.code)??F,value:(v==null?void 0:v.value)??F,_isLogicValue:!0,_isFallback:!0}:F;const W=R.itemValue||"code",K=O.find(z=>String(z[W])===String(F)||String(z.code)===String(F)||String(z.id)===String(F)),ne=["DCodeAutoComplete","DCodeSelect","DCodeRadio","DCodeRadioCustom"].includes(L.component)||!!(R.endpoint||R.endpointReference||R.items);return K?{...K,id:K.id??K[W]??F,code:K.code??K[W]??F,_isLogicValue:!0}:ne?{id:(v==null?void 0:v.id)??F,code:(v==null?void 0:v.code)??F,value:(v==null?void 0:v.value)??F,_isLogicValue:!0,_isFallback:!0}:F},f=(A,F,I="LOGIC")=>{const v=(L,R)=>{var W,K,ne,q,Q,ae,j,z,J,le,ye,oe;if(L==null||typeof L=="object"&&L._isLogicValue||typeof L=="boolean"||(ge=>{var ce;return!ge||typeof ge!="object"?!1:ge instanceof File||ge instanceof Blob||((ce=ge.constructor)==null?void 0:ce.name)==="File"||ge.size!==void 0&&typeof ge.name=="string"})(L))return L;if(typeof L=="number"||typeof L=="string")return R&&(((K=(W=n.value)==null?void 0:W.paths)==null?void 0:K.has(R))||((q=(ne=n.value)==null?void 0:ne.models)==null?void 0:q.has(R)))?u(R,L):L;if(typeof L=="object"&&!Array.isArray(L)){const ge=R?((ae=(Q=n.value)==null?void 0:Q.paths)==null?void 0:ae.get(R))||((J=(z=(j=n.value)==null?void 0:j.models)==null?void 0:z.get(R))==null?void 0:J[0]):null,ce=ge==null?void 0:ge.field;if(ce&&(["DCodeAutoComplete","DCodeSelect","DCodeRadio","DCodeRadioCustom"].includes(ce.component)||!!((le=ce.props)!=null&&le.endpoint||(ye=ce.props)!=null&&ye.endpointReference||(oe=ce.props)!=null&&oe.items))){const ke=(L==null?void 0:L.id)??(L==null?void 0:L.code)??(L==null?void 0:L.value)??(L==null?void 0:L.key)??L,he=typeof ke=="string"||typeof ke=="number"?u(R,ke,ce,L):ke;if(he&&typeof he=="object")return{...L,...he,_isLogicValue:!0}}return L}return L};return F!=null&&F.includes(".")&&F.split(".").slice(0,-1).join("."),new Proxy(A,{get(L,R){var q,Q,ae,j;if(R==="_isNormalizedProxy")return!0;if(typeof R!="string")return L[R];if(R==="_resolveLogicVar")return z=>{var ye,oe;const J=(oe=(ye=n.value)==null?void 0:ye.paths)==null?void 0:oe.get(z);if(J){const ge=Fe(t,J.path);if(ge!==void 0)return v(ge,z)}if(z.includes(".")){const ge=z.split(".");let ce=A;for(const de of ge){if(ce==null)return;ce=ce[de]}if(ce!==void 0)return ce}const le=A[z];if(le!==void 0)return le};const O=F?`${F}.${R}`:R;I!=="VISIBILITY-SILENT"&&!R.startsWith("__v_")&&R!=="_isNormalizedProxy"&&console.log(`[Proxy][GET] ${O} (Target: ${F||"ROOT"}, Debug: ${I})`);const W=(Q=(q=n.value)==null?void 0:q.paths)==null?void 0:Q.get(O);if(W){const z=Fe(t,W.path);if(z&&typeof z=="object"&&!Array.isArray(z)&&!z._isLogicValue&&!z._isNormalizedProxy)return f(z,O,I);if(z!==void 0)return v(z,O)}const K=(j=(ae=n.value)==null?void 0:ae.models)==null?void 0:j.get(R);if(Array.isArray(K)&&K.length>0){const z=F!=null&&F.includes(".")?F.split(".").slice(0,-1).join("."):F;if(z){const ye=K.find(oe=>{var ge;return(ge=oe==null?void 0:oe.path)==null?void 0:ge.startsWith(`${z}.`)});if(ye){const oe=Fe(t,ye.path);if(oe&&typeof oe=="object"&&!Array.isArray(oe)&&!oe._isLogicValue&&!oe._isNormalizedProxy)return f(oe,O,I);if(oe!==void 0)return v(oe,R)}}const J=K[0],le=Fe(t,J.path);if(le&&typeof le=="object"&&!Array.isArray(le)&&!le._isLogicValue&&!le._isNormalizedProxy)return f(le,O,I);if(le!==void 0)return v(le,R)}let ne=L[R];if(ne===void 0&&i&&typeof R=="string"&&(ne=i[R],ne===void 0&&R.includes(".")&&(ne=Fe(i,R))),ne===void 0&&typeof R=="string"){const z=Object.keys(L).some(J=>J.startsWith(`${R}.`));if(!z&&i&&Object.keys(i).some(le=>le.startsWith(`${R}.`)))return f(i,O,I);if(z)return f(L,O,I)}if((R==="id"||R==="code")&&ne===void 0){const J=L[R==="id"?"code":"id"];J!==void 0&&(ne=J)}return ne&&typeof ne=="object"&&!Array.isArray(ne)&&!ne._isLogicValue&&!ne._isNormalizedProxy?f(ne,O,I):v(ne,O)}})},p=e.ref(new Set);function m(){gp()}function h(A,F,I="LOGIC",v){const L=F?F._isNormalizedProxy?F:f(F,v,I):d.value;if(A==null||typeof A=="object"&&Object.keys(A).length===0)return!0;if(typeof A=="boolean")return A;if(typeof A=="string")try{return!!new Function("formData",`return ${A};`)(L)}catch{return!1}const R=W=>{var Q,ae;if(!W||typeof W!="object")return W;if(Array.isArray(W))return W.map(R);const K=Object.keys(W)[0],ne=W[K];if(["==","!=","in","!==","==="].includes(K)&&Array.isArray(ne)&&ne.length===2){let j=ne[0],z=ne[1];if((Q=j==null?void 0:j.var)!=null&&Q.endsWith(".id")&&typeof z=="string"&&isNaN(Number(z))){const J=j.var.replace(/\.id$/,".code");return{[K]:[{var:J},z]}}if((ae=z==null?void 0:z.var)!=null&&ae.endsWith(".id")&&typeof j=="string"&&isNaN(Number(j))){const J=z.var.replace(/\.id$/,".code");return{[K]:[j,{var:J}]}}}const q={};for(const j in W)q[j]=R(W[j]);return q},O=R(A);JSON.stringify(O)!==JSON.stringify(A)&&I!=="VISIBILITY-SILENT"&&console.log("[evaluateLogic][AUTO-HEAL] Migrated rule from .id to .code for consistency:",JSON.stringify(O));try{m();const W=no.apply(O,L);let K=W;return typeof W=="number"&&isNaN(W)&&(K=void 0),I!=="VISIBILITY-SILENT"&&console.log(`[evaluateLogic][${I}] Rule:`,JSON.stringify(A),"Result:",K),K}catch(W){console.error(`[DynamicForm][ERROR][${I}] Logic evaluation failed:`,W,{rule:A,contextPath:v});return}}function g(A,F,I,v){return A==null?null:Array.isArray(A)?A.find(L=>!L.condition||h(L.condition,F,I,v))||null:typeof A=="object"&&A!==null&&A.condition&&!A._isLogicValue?h(A.condition,F,I,v)?A:null:A}function k(A,F,I){var O;if(A.isHidden||c&&c[A.model])return!0;const v=F?f(F,I):d.value,L=(O=A.logic)==null?void 0:O.visibleRule;if(L==null)return!0;const R=g(L,v,`VISIBLE-${A.model}`,I);return R===null?!0:typeof R=="object"?!!h(R,v,`VISIBLE-${A.model}`,I):!!R}function b(A,F,I){var O,W,K;const v=F?f(F,I):d.value,L=(O=A.logic)==null?void 0:O.requiredRule;if(L==null)return((W=A.props)==null?void 0:W.required)||!1;const R=g(L,v,`REQUIRED-${A.model}`,I);return R===null?((K=A.props)==null?void 0:K.required)||!1:typeof R=="object"?"required"in R?!!R.required:!!h(R,v,`REQUIRED-${A.model}`,I):!!R}function E(A,F,I){var O,W,K;const v=F?f(F,I):d.value,L=(O=A.logic)==null?void 0:O.disabledRule;if(L==null)return((W=A.props)==null?void 0:W.disabled)||!1;const R=g(L,v,`DISABLED-${A.model}`,I);return R===null?((K=A.props)==null?void 0:K.disabled)||!1:typeof R=="object"?"disabled"in R?!!R.disabled:!!h(R,v,`DISABLED-${A.model}`,I):!!R}function x(A,F,I){var O,W,K;const v=F?f(F,I):d.value,L=(O=A.logic)==null?void 0:O.readonlyRule;if(L==null)return((W=A.props)==null?void 0:W.readonly)||!1;const R=g(L,v,`READONLY-${A.model}`,I);return R===null?((K=A.props)==null?void 0:K.readonly)||!1:typeof R=="object"?!!h(R,v,`READONLY-${A.model}`,I):!!R}function C(A,F,I){var O,W;if(A.isHidden||((O=A.logic)==null?void 0:O.hiddenRule)===!0)return!0;const v=(W=A.logic)==null?void 0:W.hiddenRule;if(v==null)return!1;const L=F?f(F,I):d.value,R=g(v,L,`HIDDEN-${A.model}`,I);return R===null?!1:typeof R=="object"?!!h(R,L,`HIDDEN-${A.model}`,I):!!R}function V(A){var R;const F=A.propsForm||A.propsFormStep||A.propsTable||A.propsTableStep||A.propsDataTableWizard||A.propsWizard||A.props||{};let I=s.value==="kr"||s.value==="ko"?F.titleKR||A.titleKR||F.titleEN||A.titleEN||A.labelEN||F.titleID||A.titleID||A.labelID:s.value==="id"?F.titleID||A.titleID||A.labelID:F.titleEN||A.titleEN||A.labelEN,v=s.value==="kr"||s.value==="ko"?F.descriptionKR||A.descriptionKR||F.descriptionEN||A.descriptionEN||F.descriptionID||A.descriptionID:s.value==="id"?F.descriptionID||A.descriptionID:F.descriptionEN||A.descriptionEN;const L=g((R=A.logic||F.logic)==null?void 0:R.labelingRule,d.value,"LABEL-SEC");return L&&(I=s.value==="kr"||s.value==="ko"?L.labelKR||L.titleKR||L.labelEN||L.titleEN||L.title||L.labelID||L.titleID:s.value==="id"?L.labelID||L.titleID||L.title:L.labelEN||L.titleEN||L.title,v=s.value==="kr"||s.value==="ko"?L.descriptionKR||L.descriptionEN||L.descriptionID:s.value==="id"?L.descriptionID:L.descriptionEN),{title:I,description:v}}function N(A,F){var W;if(!A)return!0;const I=A.propsForm||A.propsFormStep||A.propsTable||A.propsTableStep||A.propsDataTableWizard||A.propsWizard||A.props||{},v=(W=A.logic||I.logic)==null?void 0:W.visibleRule,L=F?f(F):d.value;if(v!=null){const K=g(v,L,"VISIBLE-SEC");let ne=!0;if(K===null?ne=!0:typeof K=="object"?ne=!!h(K,L,"VISIBLE-SEC"):ne=!!K,l){const q=je(A);if(q&&l[q])return!0}return ne}const R=je(A);if(R&&p.value.has(R))return!!(l&&l[R]);const O=I.fields||A.fields||[];return O.length===0||O.some(K=>k(K,F))}function w(A,F){var L;const I=F?f(F):d.value;return g((L=A.logic)==null?void 0:L.labelingRule,I,`LABEL-${A.model}`)||null}function y(A,F){var R;const I=F?f(F):d.value,v=(R=A.logic)==null?void 0:R.lengthRule;if(!v){const O=A.props||A.propsFieldCustom||A.propsFieldGlobal||{};return O.minLength!==void 0||O.maxLength!==void 0?{minLength:O.minLength,maxLength:O.maxLength}:null}const L=g(v,I,`LENGTH-${A.model}`);if(!L){const O=A.props||A.propsFieldCustom||A.propsFieldGlobal||{};return{minLength:O.minLength,maxLength:O.maxLength}}return typeof L=="object"&&L!==null&&!L._isLogicValue?"maxLength"in L||"minLength"in L?L:h(L,I,`LENGTH-${A.model}`):L}function _(A,F,I){var q,Q;const v=F?f(F,I):d.value,L=(q=A.logic)==null?void 0:q.defaultValueRule;if(L==null)return;const R=g(L,v,`DEFAULT-VAL-${A.model}`,I);if(R===null)return;let O=R;typeof R=="object"&&R!==null&&"value"in R&&!R._isLogicValue&&(O=R.value);let W;return typeof O=="object"&&O!==null&&!O._isLogicValue?W=h(O,v,`DEFAULT-VAL-${A.model}`,I):W=O,((A.props||A.propsFieldCustom||A.propsFieldGlobal||{}).returnObject||((Q=A.logic)==null?void 0:Q.returnObject))&&(typeof W=="string"||typeof W=="number")?u(A.model,W,A):W}function D(A,F,I){var Q;const v=A.props||{},L=r[A.key]||v.items||v.options||[];if(!((Q=A.logic)!=null&&Q.optionsFilterRule))return L;const R=F?f(F,I,`FILTER-${A.model}`):d.value,O=g(A.logic.optionsFilterRule,R,`FILTER-${A.model}`,I);if(!O)return L;const W=O.options||O.items;if(W&&Array.isArray(W))return W;if(!O.values)return L;const K=new Set((O.values||[]).map(String)),ne=v.itemValue||"id";return L.filter(ae=>ae==null?!1:typeof ae!="object"?K.has(String(ae)):[ne,"code","id","value","key"].some(j=>{const z=ae[j];return z!=null&&K.has(String(z))}))}function T(A){var I;return(((I=A.propsWizard)==null?void 0:I.propsSteps)||[]).filter(v=>N(v)).map((v,L)=>{var ne,q,Q;const R=v.sectionsWizard||v.sections||[],W=(Array.isArray(R)?R:[R]).map(ae=>{var z;let j=(z=ae.type)==null?void 0:z.toUpperCase();return j||(ae.propsForm||ae.propsFormStep||ae.fields?j="FORM":ae.propsTable||ae.propsTableStep||ae.propsDataTableWizard||ae.isDataTable?j="TABLE":ae.propsButton||ae.propsButtonStep?j="BUTTON":j="UNKNOWN"),{...ae,type:j}}),K=V(v);return{key:v.modelKey||v.key||`step-${L}`,title:K.title,description:K.description,icon:v.icon||void 0,sections:W,actions:((ne=v.propsComponent)==null?void 0:ne.actionComponent)||v.actionComponent||[],isSubmit:v.isSubmit||!1,endpointActionStepNext:v.endpointActionStepNext,endpointActionStepPrev:v.endpointActionStepPrev,fieldMapping:((q=v.propsStep)==null?void 0:q.fieldMapping)||v.fieldMapping||{},responseMapping:((Q=v.propsStep)==null?void 0:Q.responseMapping)||v.responseMapping||{}}})}function M(){var A;if((A=a.value)!=null&&A.sections)for(let F=0;F<3;F++){let I=!1;if(a.value.sections.forEach(v=>{const L=(R,O)=>{var q,Q;const W=O;((R.propsForm||R.propsFormStep||R.propsTable||R.propsTableStep||R.propsDataTableWizard||R.props||{}).fields||R.fields||[]).forEach(ae=>{if(!ae.logic||typeof ae.logic!="object")return;Object.keys(ae.logic).filter(z=>z.toLowerCase().includes("calculaterule")&&ae.logic[z]&&typeof ae.logic[z]=="object").forEach(z=>{const J=ae.logic[z],le=Object.keys(J)[0];if(!le)return;const ye=W?`${W}.${le}`:le,oe=h(J[le],t,`CALC-${le}`,ye),ge=Fe(t,ye);oe!==void 0&&ge!==oe&&(Qe(t,ye,oe),I=!0)})}),((q=R.type)==null?void 0:q.toUpperCase())==="WIZARD"&&(((Q=R.propsWizard)==null?void 0:Q.propsSteps)||[]).forEach(j=>{const z=j.key||j.id,J=j.sectionsWizard||j.sections||[];(Array.isArray(J)?J:[J]).forEach(ye=>L(ye,z))})};L(v)}),!I)break}}function P(A,F){if(!k(A)||!b(A))return!1;const I=F?`${F}.${A.model}`:A.model,v=n.value.paths.get(I),L=v?Fe(t,v.path):t[A.model];return Array.isArray(L)?L.length===0:L==null||L===""}function H(A){return A.sections.flatMap(I=>(I.propsForm||I.propsTable||I.props||{}).fields||I.fields||[]).some(I=>P(I,A.key))}function Z(A){var v;if(!N(A))return!1;const F=je(A);return(((v=A.propsForm)==null?void 0:v.fields)||A.fields||[]).some(L=>P(L,F))?!0:A.type==="WIZARD"?T(A).some(H):!1}const U=e.computed(()=>{var A;return(A=a.value)!=null&&A.sections?Object.keys(o).length>0?!0:a.value.sections.some(Z):!1});function B(A){const F=new Set,I=(A==null?void 0:A.sections)||[];function v(L){L.forEach(R=>{var K;((R.propsForm||R.propsFormStep||R.propsTable||R.propsTableStep||R.props||{}).fields||R.fields||[]).forEach(ne=>{var Q,ae;(Array.isArray((Q=ne.logic)==null?void 0:Q.fetchRule)?ne.logic.fetchRule:[(ae=ne.logic)==null?void 0:ae.fetchRule].filter(Boolean)).forEach(j=>{Array.isArray(j.revealSections)&&j.revealSections.forEach(z=>F.add(z))})}),R.type==="WIZARD"&&((K=R.propsWizard)!=null&&K.propsSteps)&&R.propsWizard.propsSteps.forEach(ne=>{Array.isArray(ne.sectionsWizard)?v(ne.sectionsWizard):ne.sectionsWizard&&v([ne.sectionsWizard])})})}v(I),p.value=F}return e.watch(()=>a.value,A=>{B(A)},{deep:!0}),B(a.value),{normalizedData:d,getNormalizedData:f,evaluateLogic:h,resolveActiveRule:g,resolveValueIdentifier:u,getFilteredItems:D,isFieldVisible:k,isFieldRequired:b,isFieldDisabled:E,isFieldReadonly:x,isFieldHidden:C,resolveSectionLabels:V,isSectionVisible:N,resolveFieldLabels:w,resolveFieldLength:y,resolveDefaultValue:_,getWizardTabs:T,applyCalculations:M,isSubmitDisabled:U,resolveSectionGridClass:A=>{const F={1:"grid-cols-1",2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5",6:"grid-cols-6",7:"grid-cols-7",8:"grid-cols-8",9:"grid-cols-9",10:"grid-cols-10",11:"grid-cols-11",12:"grid-cols-12"},I={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3",4:"md:grid-cols-4",5:"md:grid-cols-5",6:"md:grid-cols-6",7:"md:grid-cols-7",8:"md:grid-cols-8",9:"md:grid-cols-9",10:"md:grid-cols-10",11:"md:grid-cols-11",12:"md:grid-cols-12"},L=(R=>{const O=String(R||"FULL").toUpperCase(),W=Number.parseInt(O);if(!Number.isNaN(W)&&W>0)return Math.min(12,W);switch(O){case"FULL":case"ONE":return 1;case"HALF":case"TWO":return 2;case"THIRD":case"THREE":return 3;case"TWO-THIRD":case"TWO-THIRDS":return 3;case"QUARTER":case"QUARTED":case"FOUR":return 4;case"THREE-QUARTER":case"THREE-QUARTERS":return 4;default:return 1}})(A);return`${F[L]||"grid-cols-1"} ${I[L]||"md:grid-cols-1"}`},resolveFieldColumnClass:(A,F="FULL")=>{var q;const I={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3",4:"md:col-span-4",5:"md:col-span-5",6:"md:col-span-6",7:"md:col-span-7",8:"md:col-span-8",9:"md:col-span-9",10:"md:col-span-10",11:"md:col-span-11",12:"md:col-span-12"},L=(Q=>{const ae=String(Q||"FULL").toUpperCase(),j=parseInt(ae);if(!isNaN(j)&&j>0)return Math.min(12,j);switch(ae){case"FULL":case"ONE":return 1;case"HALF":case"TWO":return 2;case"THIRD":case"THREE":return 3;case"TWO-THIRD":case"TWO-THIRDS":return 3;case"QUARTER":case"QUARTED":case"FOUR":return 4;case"THREE-QUARTER":case"THREE-QUARTERS":return 4;default:return 1}})(F),R=A.column||((q=A.props)==null?void 0:q.colSpan)||"FULL";let O=1;const W=String(R).toUpperCase(),K=parseInt(W);if(!isNaN(K)&&K>0)O=K;else switch(W){case"FULL":case"ONE":O=1;break;case"HALF":case"TWO":O=2;break;case"THIRD":case"THREE":O=3;break;case"QUARTER":case"QUARTED":case"FOUR":O=4;break;case"TWO-THIRD":case"TWO-THIRDS":O=2;break;case"THREE-QUARTER":case"THREE-QUARTERS":O=3;break;default:O=1}const ne=Math.min(L,O);return L===1?"col-span-1":`col-span-1 ${I[ne]||"md:col-span-1"}`}}}const sM={class:"dcode-card animate-slide-up"},iM={key:0,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"},lM={key:0,class:"mb-3 flex items-center gap-2"},cM={class:"font-bold text-sm text-white dark:text-neutral-100 uppercase tracking-wider"},dM={class:"flex flex-col sm:flex-row sm:items-center sm:justify-between items-start gap-4"},uM={key:0,class:"flex flex-col sm:flex-row items-start sm:items-center gap-2 flex-1 xl:max-w-[15vw] md:max-w-[20vw] max-w-[30vw]"},fM={class:"relative w-full sm:w-64"},pM={key:0,class:"relative"},mM={class:"flex flex-col h-full"},hM={key:0,class:"flex-1 overflow-y-auto py-4"},gM={class:"grid grid-cols-1 gap-4 px-1"},bM={key:0,class:"sticky bottom-0 left-0 right-0 bg-transparent border-t border-neutral-200 dark:border-neutral-700 pt-4"},yM={class:"grid grid-cols-2 gap-3 w-full"},kM={class:"overflow-auto custom-scrollbar relative max-h-[calc(100vh-17rem)]"},xM={class:"dcode-table w-full"},wM={class:"bg-primary-700 dark:bg-primary-900 sticky top-0 z-20 shadow-sm"},CM=["onClick"],EM={key:0,class:"flex items-center justify-center w-full"},SM=["checked","indeterminate"],_M={key:0,class:"px-3 py-2 text-xs font-medium text-white dark:text-neutral-100 uppercase tracking-wider"},BM={class:"flex items-center justify-center w-full"},vM={class:"bg-white dark:bg-zinc-900 divide-y divide-neutral-200 dark:divide-neutral-700"},AM={key:0,class:"px-3 py-3"},DM={key:1},NM=["colspan"],VM={class:"flex flex-col items-center gap-2"},MM={class:"text-base font-medium text-neutral-700 dark:text-neutral-300"},TM={class:"text-sm text-neutral-500 dark:text-neutral-400 mt-1"},PM={class:"hover:bg-zinc-50 dark:hover:bg-zinc-800/50 transition-colors duration-150"},RM={key:0,class:"flex items-center justify-center w-full"},OM=["checked","onChange"],FM=["href","target"],$M={key:0,class:"text-[10px]"},LM={key:0,class:"px-3 py-0.5 !text-center"},IM={key:0,class:"flex items-center justify-center gap-1.5"},zM={key:0,class:"bg-zinc-50/50 dark:bg-zinc-800/30"},jM=["colspan"],UM={key:1,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"},WM={class:"flex items-center gap-4"},HM={class:"text-xs text-neutral-500 dark:text-neutral-400 font-medium"},qM={class:"text-neutral-900 dark:text-neutral-100 font-medium"},KM={class:"text-neutral-900 dark:text-neutral-100 font-medium"},GM={class:"text-neutral-900 dark:text-neutral-100 font-medium"},XM={class:"flex-shrink-0"},YM={class:"space-y-4"},JM={class:"text-gray-600 dark:text-gray-400"},QM={key:0,class:"absolute inset-0 z-10 bg-white/50 dark:bg-neutral-900/50 flex items-center justify-center backdrop-blur-[1px]"},ZM={class:"flex flex-col items-center gap-2"},eT={class:"text-xs font-medium text-neutral-500"},tT={key:1,class:"mb-2 p-3 bg-amber-50 dark:bg-amber-900/20 border border-amber-100 dark:border-amber-900/30 rounded-lg flex items-center gap-3"},oT={class:"p-1.5 bg-amber-100 dark:bg-amber-900/40 rounded-md text-amber-600 dark:text-amber-400"},nT={class:"flex flex-col gap-0.5"},rT={class:"text-[10px] font-bold uppercase tracking-wider text-amber-500/70 dark:text-amber-400/50"},aT={class:"text-xs text-amber-700 dark:text-amber-300 leading-relaxed font-medium transition-all"},sT={class:"flex items-end gap-2"},zn=e.defineComponent({name:"DataTable",__name:"DataTable",props:{columns:{default:()=>[]},data:{default:()=>[]},perPage:{default:10},page:{},startIndex:{},endIndex:{},remotePagination:{type:Boolean},totalItems:{},loading:{type:Boolean,default:!1},hasActions:{type:Boolean,default:!1},nested:{type:Boolean,default:!1},apiModule:{},apiAction:{default:"list"},apiMethod:{},apiUrl:{},permissionBase:{},apiParams:{default:()=>({})},socketEndpoint:{},socketParams:{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},permissions:{default:void 0},checkPermission:{type:Function,default:void 0},menuPermissions:{default:()=>[]},dummyMode:{type:Boolean,default:!1},baseUrl:{default:void 0},controlled:{type:Boolean,default:!1},tokenCores:{default:()=>[]},selectedTokenCore:{default:void 0},filters:{},accept:{}},emits:["update:search","update:sort","update:page","update:perPage","update:startIndex","update:endIndex","create","export","action","update:selection","selection-change","navigate","search","reset","update:filters"],setup(t,{expose:o,emit:n}){var Qp,Zp,em,tm,om,nm;const r=t,a=n,s=e.getCurrentInstance(),i=e.inject("externalApi")||{},l=e.inject("dynamicFormContext",null),{apiUrl:c}=i,{locale:d}=Dt.useI18n(),u=i.socket||i.managedSocket,f=u==null?void 0:u.on,p=u==null?void 0:u.off,m=(u==null?void 0:u.send)||(u==null?void 0:u.emit),h=(u==null?void 0:u.connect)||(u==null?void 0:u.init),g=e.computed(()=>{var S;return u?typeof u.isConnected=="function"?u.isConnected():typeof u.isConnected=="boolean"?u.isConnected:((S=u.isConnected)==null?void 0:S.value)!==void 0?u.isConnected.value:!0:(l&&(l.tableRowFormData||(l.tableRowFormData=e.reactive({}))),!1)}),k=e.inject("hasActionAccess",void 0),b=e.inject("userPermissions",null),E=e.inject("baseUrl",""),x=e.computed(()=>{var ee,re,pe;const S=r.selectedTokenCore||(l==null?void 0:l.selectedTokenCore);if(typeof(S==null?void 0:S.address)=="string")return S.address;if(typeof r.baseUrl=="string"&&r.baseUrl!=="")return r.baseUrl;const $=l==null?void 0:l.resolvedBaseUrl,X=typeof $=="object"&&$!==null&&"value"in $?$.value:$;if(typeof X=="string"&&X!=="")return X;const G=r.tokenCores&&r.tokenCores.length>0?r.tokenCores:(l==null?void 0:l.tokenCores)||[],Y=((ee=Q.value)==null?void 0:ee.idTokenCore)||((re=r.tableConfig)==null?void 0:re.idTokenCore);if(Y&&Array.isArray(G)&&G.length>0){const Se=String(Y),$e=G.find(qe=>String(qe.id)===Se);if($e!=null&&$e.address)return $e.address}return E||((pe=window.CONFIG)==null?void 0:pe.apiUrl)||""});let C={query:{},params:{},path:""};try{const S=Ho.useRoute();S?C=S:(em=(Zp=(Qp=s==null?void 0:s.appContext)==null?void 0:Qp.config)==null?void 0:Zp.globalProperties)!=null&&em.$route&&(C=s.appContext.config.globalProperties.$route)}catch(S){console.warn("useRoute not available, using fallback",S)}let V={back:()=>console.warn("Router back() not available"),push:S=>{console.warn("Router push() logic called from fallback:",S),typeof S=="string"&&S.startsWith("/")&&(globalThis.location.href=S)}};try{const S=Ho.useRouter();S?V=S:(nm=(om=(tm=s==null?void 0:s.appContext)==null?void 0:tm.config)==null?void 0:om.globalProperties)!=null&&nm.$router&&(V=s.appContext.config.globalProperties.$router)}catch(S){console.warn("useRouter not available, using fallback",S)}const N=e.ref(""),w=e.ref(r.page||1),y=e.ref(r.perPage),_=e.ref({key:"",direction:"asc"}),D=e.ref([]),T=e.ref(!1),M=e.ref(0),P=e.ref(null),H=e.ref(!0),Z=e.ref(!0),U=e.ref(!0),B=e.ref([]),A=e.ref([]),F=e.ref(!1),I=e.ref(!1),v=e.ref(!1),L=e.ref(null),R=e.ref(r.filters?{...r.filters}:{});e.watch(()=>r.filters,S=>{S&&(R.value={...S})},{deep:!0}),e.watch(R,S=>{a("update:filters",S)},{deep:!0});const O=e.ref([]),W=e.computed(()=>!O.value||O.value.length===0?[]:[...O.value].sort((S,$)=>(S.seq||0)-($.seq||0))),K=S=>{const $={paths:new Map,models:new Map},X=G=>{G.forEach(Y=>{if(Y.model){const re={field:Y,path:Y.model};$.paths.set(Y.model,re);const pe=$.models.get(Y.model)||[];pe.push(re),$.models.set(Y.model,pe)}const ee=Y.fields||Y.props&&Y.props.fields;Array.isArray(ee)&&X(ee)})};return X(S),$},ne=e.computed(()=>K(W.value)),q=e.computed(()=>({sections:[{fields:W.value}]})),Q=e.ref(null),ae=e.ref(null),j=e.ref(null),z=e.reactive({}),J=e.reactive({}),le=e.reactive({}),ye=e.computed(()=>{var Y,ee;if(!Q.value)return!1;const S=Q.value,$=(S.key||"").toLowerCase(),X=(S.permission||"").toUpperCase(),G=(S.actionType||((Y=S.propsActionGlobal)==null?void 0:Y.actionType)||((ee=S.propsActionCustom)==null?void 0:ee.actionType)||"").toUpperCase();return $==="detail"||$.includes("view")||X==="VIEW"||G==="READ"||G==="VIEW"});e.watch(z,S=>{l!=null&&l.tableRowFormData&&Object.keys(S).forEach($=>{l.tableRowFormData[$]=S[$]})},{deep:!0,immediate:!0});const oe=e.computed(()=>{if(!Q.value)return[];const S=Q.value;return[...S.fieldActionCustom||[],...S.fieldActionGlobal||[],...S.field||[]].map(X=>{const G=X.key||X.model,Y=X.props||X.propsFieldGlobal||X.propsFieldCustom||{};return{...X,props:{...Y,items:le[G]||Y.items||[]}}})}),ge=e.computed(()=>K(oe.value)),ce=e.computed(()=>({sections:[{fields:oe.value}]})),de=e.computed(()=>d.value),{isFieldVisible:ke,isFieldRequired:he,isFieldDisabled:Ee,isFieldReadonly:Be,isFieldHidden:we,resolveFieldLabels:De,resolveFieldLength:te,getFilteredItems:se,applyCalculations:ue,getNormalizedData:Ce,resolveDefaultValue:ie,resolveSectionGridClass:fe,resolveFieldColumnClass:me}=gl({formData:z,errors:J,fieldMap:ge,rawItemsCache:le,activeSchema:ce,locale:de}),{isFieldVisible:_e,isFieldRequired:Ie,isFieldDisabled:vt,isFieldReadonly:Mt,resolveFieldLabels:vo,resolveFieldLength:wl,getFilteredItems:Sp,resolveFieldColumnClass:_p}=gl({formData:R,errors:{},fieldMap:ne,rawItemsCache:{},activeSchema:q,locale:de}),Bp=e.computed(()=>{if(Hn.value||O.value.some(X=>{if(!_e(X))return!1;const G=R.value[X.model],Y=wl(X);return!!(Ie(X)&&(G==null||G==="")||G&&(Y==null?void 0:Y.minLength)!==void 0&&String(G).length<Number(Y.minLength))}))return!0;const $=O.value.filter(X=>_e(X));return!!($.length>0&&$.every(G=>!R.value[G.model]))}),Uo=e.ref([]),vp=e.computed(()=>{var X,G,Y;if(!((X=Q.value)!=null&&X.dialogConfig))return((G=Q.value)==null?void 0:G.label)||"Action";const S=Q.value.dialogConfig;return(d.value==="kr"||d.value==="ko"?S.titleKR||S.titleEN:d.value==="id"?S.titleID:S.titleEN)||((Y=Q.value)==null?void 0:Y.label)||"Action"}),Ap=e.computed(()=>{var $;if(!(($=Q.value)!=null&&$.dialogConfig))return null;const S=Q.value.dialogConfig;return d.value==="kr"||d.value==="ko"?S.descriptionKR||S.descriptionEN:d.value==="id"?S.descriptionID:S.descriptionEN}),Dp=e.computed(()=>{var G,Y,ee,re,pe;if((oe.value||[]).some(Se=>Se.component==="DCodePdfViewer"||Se.component==="DCodeWorkflowDiagram"))return"95vw";if(!((G=Q.value)!=null&&G.dialogConfig)&&!((Y=Q.value)!=null&&Y.openDialog))return 450;const X=String(((re=(ee=Q.value)==null?void 0:ee.dialogConfig)==null?void 0:re.layoutColumns)||((pe=Q.value)==null?void 0:pe.layoutColumns)||"1").toUpperCase();return X==="FULL"||X==="1"||X==="ONE"?450:800}),jn=async(S,$=!1)=>{console.log(`[prefetchDialogFieldItems][START] ${S.key||S.model}`,{force:$});const X=S.propsFieldGlobal||S.propsFieldCustom||S.propsFilters||S.props||{},G=X.endpointComponent||X.endpointReference||X.endpoint;if(!(G!=null&&G.apiUrl)){console.log(`[prefetchDialogFieldItems][EXIT] No apiUrl for ${S.key||S.model}`);return}const Y=S.component||"";if(["DCodeWorkflowDiagram","DCodeStaticImage","DCodeTimelineWithIcons"].includes(Y)){console.log(`[prefetchDialogFieldItems][EXIT] Skipping for component type ${Y}`);return}const re=S.key||S.model;if(!$&&le[re]){console.log(`[prefetchDialogFieldItems][EXIT] Already in cache for ${re}`);return}const pe=G;if(!(pe!=null&&pe.apiUrl)){console.log(`[prefetchDialogFieldItems][EXIT] Resolved ep has no apiUrl for ${re}`);return}!r.baseUrl&&!pe.apiUrl.startsWith("http")&&console.warn(`[prefetchDialogFieldItems][WARNING] No baseUrl provided for ${re}, attempting relative fetch.`);try{const Se=x.value;!Se&&!pe.apiUrl.startsWith("http")&&console.warn(`[prefetchDialogFieldItems][PROCEED] No explicit baseUrl found for ${re}, letting apiUrl wrapper handle relative path.`);const $e=Bo(pe.apiUrl,Se);console.log(`[prefetchDialogFieldItems][FETCHING] ${re}.
147
147
  BaseUrl: ${Se||"NONE"}, Final: ${$e}`);const qe={page:1,perPage:100};if(Array.isArray(pe.keyParam)){let Ue=!1;if(pe.keyParam.forEach(ut=>{let et="",Ct="";if(typeof ut=="string")et=ut,Ct=ut;else if(typeof ut=="object"&&ut!==null){const Re=Object.entries(ut)[0];Re&&(et=Re[0],Ct=Re[1])}if(!et||!Ct)return;const We=Ce(z)[Ct];We==null||We===""?Ue=!0:qe[et]=We&&typeof We=="object"?We.id??We.code??We.value??We:We}),Ue){le[re]=[];return}}const xe={...pe.config||{}};pe.accept&&(xe.headers||(xe.headers={}),xe.headers.Accept=pe.accept,xe.headers.accept=pe.accept);const Pe=await c($e,pe.apiMethod||"GET",qe,xe),ve=(Pe==null?void 0:Pe.data)||Pe;console.log(`[prefetchDialogFieldItems][RESPONSE] ${re}`,ve);let Ge=[];Array.isArray(ve)?Ge=ve:ve&&(Ge=[ve]),console.log(`[prefetchDialogFieldItems][STORE] ${re} items count: ${Ge.length}`),le[re]=Ge}catch(Se){console.error(`[prefetchDialogFieldItems] Error fetching items for ${re}:`,Se),le[re]=[]}};e.watch(z,(S,$)=>{I.value&&(ue(),oe.value.forEach(X=>{const G=X.props||{},Y=G.endpoint||G.endpointReference;Array.isArray(Y==null?void 0:Y.keyParam)&&Y.keyParam.length>0&&jn(X,!0)}))},{deep:!0});const ds=()=>{oe.value.length&&oe.value.forEach(S=>{var X;const $=ie(S,z);if($!=null){const G=z[S.model],ee=(S.props||{}).returnObject||((X=S.logic)==null?void 0:X.returnObject);(G==null||G===""||ee&&(typeof G=="string"||typeof G=="number")&&(typeof $=="object"&&$!==null))&&(z[S.model]=$)}})};e.watch(le,()=>{I.value&&ds()},{deep:!0});const xt=e.ref([]),Un=e.ref(new Map),Cl=e.computed(()=>Array.from(Un.value.values())),Wo=e.computed(()=>{var X,G,Y,ee,re,pe,Se,$e,qe;const S=Wt.value.find(xe=>["CHECKBOX","checkbox"].includes(xe.type??""));return(S==null?void 0:S.keyCheckbox)||((Y=(G=(X=P.value)==null?void 0:X.endpointTable)==null?void 0:G.keyParam)==null?void 0:Y[0])||((pe=(re=(ee=P.value)==null?void 0:ee.endpointGlobal)==null?void 0:re.keyParam)==null?void 0:pe[0])||((qe=($e=(Se=P.value)==null?void 0:Se.endpoint)==null?void 0:$e.keyParam)==null?void 0:qe[0])||"id"}),Np=()=>{const S=Wt.value.find($=>["CHECKBOX","checkbox"].includes($.type??""));return(S==null?void 0:S.keyPayload)||null},El=e.computed(()=>{const S=Wo.value,$=ro.value.map(X=>X[S]).filter(X=>X!=null);return ro.value.length>0&&$.length===0&&console.warn(`[DataTable] selectionKey "${S}" returned no IDs for ${ro.value.length} rows. Selection may not work.`),$}),us=e.computed(()=>new Set(xt.value.map(S=>String(S)))),Vp=e.computed(()=>{const S=El.value;if(S.length===0)return!1;const $=us.value;return S.every(X=>$.has(String(X)))}),QT=e.computed(()=>{const S=El.value;if(S.length===0)return!1;const $=us.value,X=S.filter(G=>$.has(String(G))).length;return X>0&&X<S.length}),ZT=S=>{const $=S[Wo.value];return $!=null&&us.value.has(String($))},e3=S=>{var G;const $=typeof S=="boolean"?S:((G=S==null?void 0:S.target)==null?void 0:G.checked)??!!S,X=El.value;if($){const Y=us.value,ee=[...xt.value];ro.value.forEach(re=>{const pe=re[Wo.value];pe!=null&&!Y.has(String(pe))&&(ee.push(pe),Un.value.set(String(pe),re))}),xt.value=ee}else{const Y=new Set(X.map(ee=>String(ee)));xt.value=xt.value.filter(ee=>!Y.has(String(ee))),Y.forEach(ee=>{Un.value.delete(ee)})}},t3=(S,$)=>{var ee;const X=typeof $=="boolean"?$:((ee=$==null?void 0:$.target)==null?void 0:ee.checked)??!!$,G=S[Wo.value];if(G==null)return;const Y=String(G);X?xt.value.some(re=>String(re)===Y)||(xt.value.push(G),Un.value.set(Y,S)):(xt.value=xt.value.filter(re=>String(re)!==Y),Un.value.delete(Y))};e.watch(xt,S=>{var G;const $=Np();if($){const Y={[$]:S};a("update:selection",Y)}else a("update:selection",S);a("selection-change",Cl.value);const X=Vp.value||S.length>1;(G=A.value)!=null&&G.length&&A.value.forEach(Y=>{var ee;(ee=Y.fieldActionGlobal)!=null&&ee.length&&Y.fieldActionGlobal.forEach(re=>{var xe,Pe;const pe=Y.endpoint||((xe=Y.propsActionGlobal)==null?void 0:xe.endpointPropAction)||Y.propsActionGlobal,Se=(Pe=pe==null?void 0:pe.keyParam)==null?void 0:Pe[0],$e=["DCodeAutoComplete","DCodeInfiniteAutoComplete","DCodeMultiSelect","DCodeSelect"].includes(re.component);(Se&&re.model===Se||!Se&&/^(id|ids|idAuditTrail|idAppRequest)$/i.test(re.model))&&X&&(!$e||Se&&re.model===Se)&&re.model&&(z[re.model]=S)})})},{deep:!0});const o3=S=>{const $=(Y,ee,re)=>{if(!ee)return;const pe=ee.split(".");let Se=Y;for(let $e=0;$e<pe.length-1;$e++){const qe=pe[$e];Se[qe]||(Se[qe]={}),Se=Se[qe]}Se[pe[pe.length-1]]=re},X=(Y,ee)=>{if(Array.isArray(Y.condition)&&Y.condition.length>0)return Y.condition[ee%Y.condition.length].value;const re=["Active","Pending","Inactive","Success","Failed"];return re[ee%re.length]},G=(Y,ee,re)=>{var qe,xe,Pe,ve;if(["no","action"].includes(ee.key)||["ACTION","action"].includes(ee.type))return;const Se=(ee.type||"").toUpperCase(),$e=`Data ${ee.label} ${re+1}`;if(Se==="BADGE"||ee.condition){$(Y,ee.key,X(ee,re));return}switch(Se){case"CHECKBOX":$(Y,ee.keyCheckbox||"id",re+1);break;case"HYPERLINK":$(Y,ee.key,`Link ${re+1}`),(xe=(qe=ee.propsCustom)==null?void 0:qe[0])!=null&&xe.urlLink&&$(Y,ee.propsCustom[0].urlLink,`https://example.com/page/${re+1}`);break;case"CURRENCY":$(Y,ee.key,1e6+re*5e4);break;case"DATE":case"DATA":$(Y,ee.key,new Date(Date.now()-re*864e5).toISOString().split("T")[0]);break;case"DATETIME":$(Y,ee.key,new Date(Date.now()-re*36e5).toISOString());break;case"TEXT":(ve=(Pe=ee.propsCustom)==null?void 0:Pe[0])!=null&&ve.value?$(Y,`${ee.key}.${ee.propsCustom[0].value}`,$e):$(Y,ee.key,$e);break;default:$(Y,ee.key,$e)}};return Array.from({length:S}).map((Y,ee)=>{const re={id:ee+1,no:ee+1};return Wt.value.forEach(pe=>G(re,pe,ee)),re})},Rr=S=>String(S)==="true"||S===!0,ct=S=>S&&typeof S=="string"&&S.trim()?S:void 0,fs=e.computed(()=>{var S,$,X,G,Y,ee;return ct(($=(S=P.value)==null?void 0:S.endpoint)==null?void 0:$.apiModule)||ct((G=(X=P.value)==null?void 0:X.endpointTable)==null?void 0:G.apiModule)||ct((ee=(Y=P.value)==null?void 0:Y.endpointGlobal)==null?void 0:ee.apiModule)||r.apiModule}),n3=e.computed(()=>{var S,$,X,G,Y,ee;return ct(($=(S=P.value)==null?void 0:S.endpoint)==null?void 0:$.apiAction)||ct((G=(X=P.value)==null?void 0:X.endpointTable)==null?void 0:G.apiAction)||ct((ee=(Y=P.value)==null?void 0:Y.endpointGlobal)==null?void 0:ee.apiAction)||r.apiAction}),r3=e.computed(()=>{var S,$,X,G,Y,ee,re,pe;return ct(($=(S=P.value)==null?void 0:S.endpoint)==null?void 0:$.apiMethod)||ct((G=(X=P.value)==null?void 0:X.endpointSection)==null?void 0:G.apiMethod)||ct((ee=(Y=P.value)==null?void 0:Y.endpointTable)==null?void 0:ee.apiMethod)||ct((pe=(re=P.value)==null?void 0:re.endpointGlobal)==null?void 0:pe.apiMethod)||r.apiMethod||"GET"}),ps=e.computed(()=>{var S,$,X,G,Y,ee,re,pe;return ct(($=(S=P.value)==null?void 0:S.endpoint)==null?void 0:$.apiUrl)||ct((G=(X=P.value)==null?void 0:X.endpointSection)==null?void 0:G.apiUrl)||ct((ee=(Y=P.value)==null?void 0:Y.endpointTable)==null?void 0:ee.apiUrl)||ct((pe=(re=P.value)==null?void 0:re.endpointGlobal)==null?void 0:pe.apiUrl)||r.apiUrl}),Sl=e.computed(()=>{var S,$,X,G,Y,ee,re,pe;return ct(($=(S=P.value)==null?void 0:S.endpoint)==null?void 0:$.accept)||ct((G=(X=P.value)==null?void 0:X.endpointSection)==null?void 0:G.accept)||ct((ee=(Y=P.value)==null?void 0:Y.endpointTable)==null?void 0:ee.accept)||ct((pe=(re=P.value)==null?void 0:re.endpointGlobal)==null?void 0:pe.accept)||r.accept}),Wn=e.computed(()=>{var S,$,X,G,Y,ee,re,pe;return ct(($=(S=P.value)==null?void 0:S.endpoint)==null?void 0:$.socket)||ct((G=(X=P.value)==null?void 0:X.endpointSection)==null?void 0:G.socket)||ct((ee=(Y=P.value)==null?void 0:Y.endpointTable)==null?void 0:ee.socket)||ct((pe=(re=P.value)==null?void 0:re.endpointGlobal)==null?void 0:pe.socket)||r.socketEndpoint}),_l=e.computed(()=>{var S,$,X,G,Y,ee,re,pe;return(($=(S=P.value)==null?void 0:S.endpoint)==null?void 0:$.socketParams)||((G=(X=P.value)==null?void 0:X.endpointSection)==null?void 0:G.socketParams)||((ee=(Y=P.value)==null?void 0:Y.endpointTable)==null?void 0:ee.socketParams)||((pe=(re=P.value)==null?void 0:re.endpointGlobal)==null?void 0:pe.socketParams)||r.socketParams||{}}),Mp=e.computed(()=>!!Wn.value),a3=e.computed(()=>{var S;return r.permissionBase||((S=P.value)==null?void 0:S.permissionBase)||""});function Bl(){let S=null;if(r.tableConfig&&(S=r.tableConfig),S){P.value=S,B.value=[],A.value=[],v.value=!1,S.headers?Uo.value=S.headers.map(G=>{var Se,$e,qe,xe,Pe,ve,Ge,Ue,ut;const Y=(((Se=G.custom)==null?void 0:Se.type)||G.type||"").toUpperCase();if(G.key==="action"||Y==="ACTION"){Rr(G.isHidden)&&(v.value=!0);const et=(($e=G.custom)==null?void 0:$e.actionCustom)||((qe=G.custom)==null?void 0:qe.action);if(et){const Ct=et.map(We=>{const Re=We.propsActionCustom||We.props||{},it=We.propCustomMessage||{};return{permission:We.permission,label:d.value==="kr"||d.value==="ko"?Re.labelKR||Re.labelEN:d.value==="id"?Re.labelID:Re.labelEN,tooltip:d.value==="kr"||d.value==="ko"?Re.tooltipKR||Re.labelKR||Re.tooltipEN||Re.labelEN:d.value==="id"?Re.tooltipID||Re.labelID:Re.tooltipEN||Re.labelEN,icon:Re.icon,variant:Re.variant||"ghost",bgColor:Re.bgColor,action:Re.actionType||Re.key,actionType:Re.actionType,route:Re.route,path:Re.path,borderStyle:Re.borderStyle,borderColor:Re.borderColor,rounded:Re.rounded,endpoint:Fr(We),propsActionCustom:Re,_customMsg:it,requiredCondition:We.requiredCondition||!1,propCustomCondition:We.propCustomCondition||[],fieldMapping:We.fieldMapping||Re.fieldMapping||null,openDialog:We.openDialog??Re.openDialog??!1,dialogConfig:We.dialogConfig||Re.dialogConfig||null,layoutColumns:We.layoutColumns||Re.layoutColumns||We.layout||Re.layout,fieldActionCustom:(We.fieldActionCustom||[]).map(yt=>{const ao=yt.propsFieldCustom||yt.propsFieldGlobal||yt.propsFilters||yt.props||{};return{...yt,props:{...ao,items:le[yt.key]||le[yt.model]||ao.items,endpoint:ao.endpointComponent||ao.endpoint}}}),condition:We.visibleRule||We.propCustomCondition||Re.visibleRule||Re.propCustomCondition||null,requireConfirm:We.requireConfirm||Re.requireConfirm||!1,confirmTitle:d.value==="kr"||d.value==="ko"?it.titleKR||Re.confirmTitleKR||"확인":d.value==="id"?it.titleID||Re.confirmTitleID||"Konfirmasi":it.titleEN||Re.confirmTitleEN||"Confirm",confirmMessage:d.value==="kr"||d.value==="ko"?it.messageKR||Re.confirmMessageKR||"정말로 진행하시겠습니까?":d.value==="id"?it.messageID||Re.confirmMessageID||"Apakah Anda yakin?":it.messageEN||Re.confirmMessageEN||"Are you sure?",isHidden:We.isHidden||Re.isHidden,routeBack:Re.routeBack,pathBack:Re.pathBack}});B.value.push(...Ct)}return null}let re;const pe=((xe=G.custom)==null?void 0:xe.conditionBadge)||((Pe=G.custom)==null?void 0:Pe.condition);return Y==="BADGE"&&pe&&(re=pe.map(et=>({value:et.value,label:d.value==="kr"||d.value==="ko"?et.labelKR||et.labelEN:d.value==="id"?et.labelID:et.labelEN,labelID:et.labelID,labelEN:et.labelEN,labelKR:et.labelKR,color:et.color||et.bgColor,variant:et.variant,logic:et.logic||et.conditionRule||null}))),{key:G.key,label:(d.value==="kr"||d.value==="ko"?G.labelKR||G.labelEN:d.value==="id"?G.labelID:G.labelEN)||G.label||G.labelKR||G.labelEN||G.labelID,width:G.width,align:G.align,sortable:!["CHECKBOX","checkbox"].includes(Y),type:((ve=G.custom)==null?void 0:ve.type)||G.type,condition:re,keyCheckbox:(Ge=G.custom)==null?void 0:Ge.keyCheckbox,keyPayload:(Ue=G.custom)==null?void 0:Ue.keyPayload,propsCustom:(ut=G.custom)==null?void 0:ut.propsCustom,isHidden:G.isHidden}}).filter(G=>G!==null):Uo.value=[];const $=S.filters||S.filter;$&&Array.isArray($)&&(O.value=$.map(G=>({...G,props:G.propsFilters||G.props||{}})),O.value.forEach(G=>{R.value[G.model]=""}));const X=S.actionTableGlobal||S.actionGlobal||S.actionSection||S.actionGlobalStep||S.action;X&&Array.isArray(X)&&(A.value=X.map(G=>{const Y=G.propsActionGlobal||G.props||{},ee=G.propCustomMessage||{};return{key:Y.key,permission:G.permission,actionType:G.actionType||Y.actionType||Y.type||G.permission,label:d.value==="kr"||d.value==="ko"?Y.labelKR||"Action":d.value==="id"?Y.labelID||"Action":Y.labelEN||"Action",tooltip:d.value==="kr"||d.value==="ko"?Y.tooltipKR||Y.labelKR||Y.tooltipEN||Y.labelEN:d.value==="id"?Y.tooltipID||Y.labelID:Y.tooltipEN||Y.labelEN,icon:Y.icon,variant:Y.variant||"default",bgColor:Y.bgColor,textColor:Y.textColor,route:Y.route,path:Y.path,borderStyle:Y.borderStyle,borderColor:Y.borderColor,rounded:Y.rounded,endpoint:Y.endpointDialogActionSave||Y.endpointDialogAction||Y.endpointAction||Y.endpointPropAction||G.endpoint,propsActionGlobal:Y,_customMsg:ee,fieldMapping:G.fieldMapping||Y.fieldMapping||null,visibleRule:G.visibleRule||Y.visibleRule||G.propCustomCondition||Y.propCustomCondition||null,openDialog:G.openDialog??Y.openDialog??!1,dialogConfig:G.dialogConfig||Y.dialogConfig||null,layoutColumns:G.layoutColumns||Y.layoutColumns||G.layout||Y.layout,requireConfirm:G.requireConfirm||Y.requireConfirm||!1,confirmTitle:d.value==="kr"||d.value==="ko"?ee.titleKR||Y.confirmTitleKR||"확인":d.value==="id"?ee.titleID||Y.confirmTitleID||"Konfirmasi":ee.titleEN||Y.confirmTitleEN||"Confirm",confirmMessage:d.value==="kr"||d.value==="ko"?ee.messageKR||Y.confirmMessageKR||"정말로 진행하시겠습니까?":d.value==="id"?ee.messageID||Y.confirmMessageID||"Apakah Anda yakin?":ee.messageEN||Y.confirmMessageEN||"Are you sure?",fieldActionGlobal:(G.fieldActionGlobal||G.fieldActionCustom||G.field||[]).map(re=>{const pe=re.propsFieldCustom||re.propsFieldGlobal||re.propsFilters||re.props||{};return{...re,props:{...pe,items:le[re.key]||le[re.model]||pe.items,endpoint:pe.endpointComponent||pe.endpoint}}}),isHidden:G.isHidden||Y.isHidden,routeBack:Y.routeBack,pathBack:Y.pathBack}})),S.pagination!==void 0&&(H.value=S.pagination),S.showQuickSearch!==void 0?Z.value=S.showQuickSearch:Z.value=!0,S.showRefresh!==void 0?U.value=S.showRefresh:U.value=!0}}e.watch(()=>r.tableConfig,()=>{Bl()},{deep:!0,immediate:!0}),e.watch(d,()=>{const S=P.value;if(S&&(B.value.length&&(B.value=B.value.map($=>{const X=$.propsActionCustom||{},G=$._customMsg||{};return{...$,label:d.value==="kr"||d.value==="ko"?X.labelKR||X.labelEN||"":d.value==="id"?X.labelID:X.labelEN,tooltip:d.value==="kr"||d.value==="ko"?X.tooltipKR||X.labelKR||X.tooltipEN||X.labelEN:d.value==="id"?X.tooltipID||X.labelID:X.tooltipEN||X.labelEN,confirmTitle:d.value==="kr"||d.value==="ko"?G.titleKR||X.confirmTitleKR||"확인":d.value==="id"?G.titleID||X.confirmTitleID||"Konfirmasi":G.titleEN||X.confirmTitleEN||"Confirm",confirmMessage:d.value==="kr"||d.value==="ko"?G.messageKR||X.confirmMessageKR||"정말로 진행하시겠습니까?":d.value==="id"?G.messageID||X.confirmMessageID||"Apakah Anda yakin?":G.messageEN||X.confirmMessageEN||"Are you sure?"}})),A.value.length&&(A.value=A.value.map($=>{const X=$.propsActionGlobal||{},G=$._customMsg||{};return{...$,label:d.value==="kr"||d.value==="ko"?X.labelKR||"Action":d.value==="id"?X.labelID||"Action":X.labelEN||"Action",tooltip:d.value==="kr"||d.value==="ko"?X.tooltipKR||X.labelKR||X.tooltipEN||X.labelEN:d.value==="id"?X.tooltipID||X.labelID:X.tooltipEN||X.labelEN,confirmTitle:d.value==="kr"||d.value==="ko"?G.titleKR||X.confirmTitleKR||"확인":d.value==="id"?G.titleID||X.confirmTitleID||"Konfirmasi":G.titleEN||X.confirmTitleEN||"Confirm",confirmMessage:d.value==="kr"||d.value==="ko"?G.messageKR||X.confirmMessageKR||"정말로 진행하시겠습니까?":d.value==="id"?G.messageID||X.confirmMessageID||"Apakah Anda yakin?":G.messageEN||X.confirmMessageEN||"Are you sure?"}})),Uo.value.length)){const $=S.headers||[];Uo.value=Uo.value.map(X=>{var Y;const G=$.find(ee=>ee.key===X.key);return G?{...X,label:d.value==="kr"||d.value==="ko"?G.labelKR||G.labelEN||G.label:(d.value==="id"?G.labelID:G.labelEN)||G.label||G.labelID||G.labelEN,condition:(Y=X.condition)==null?void 0:Y.map(ee=>({...ee,label:d.value==="kr"||d.value==="ko"?ee.labelKR||ee.labelEN||ee.label:d.value==="id"?ee.labelID||ee.label:ee.labelEN||ee.label}))}:X})}});const Wt=e.computed(()=>{let S=[];return r.dynamicColumns||r.configKey||r.tableConfig?S=Uo.value:S=r.columns||[],S.filter($=>!Rr($.isHidden))}),Or=e.computed(()=>v.value?!1:r.hasActions||Rp.value.length>0),Hn=e.computed(()=>r.dummyMode?!1:!!(r.loading||T.value)),bt=e.computed(()=>!!fs.value||!!ps.value||Mp.value||r.remotePagination),s3=e.computed(()=>[]),i3=S=>{var Y;if(!((Y=r.menuPermissions)!=null&&Y.length))return;const $=r.menuPermissions.find(ee=>C.path.startsWith(ee.path));if(!($!=null&&$.actions))return;const X=S.toUpperCase(),G=$.actions.find(ee=>ee.code===X);return G==null?void 0:G.checked},vl=(S,$,X)=>{let G=S($,X);return!G&&X!==X.toLowerCase()&&(G=S($,X.toLowerCase())),G},l3=(S,$)=>Array.isArray(b)?[S,S.toLowerCase()].flatMap(Y=>[Y,`${$}_${Y}`,`${$}.${Y}`]).some(Y=>b.includes(Y)):!1,c3=(S,$,X)=>{let G=vl(S,$,X);if(G)return!0;if(C.path){const ee=C.path.split("/").find(Boolean)[0];ee&&ee!==$&&(G=vl(S,ee,X))}return G||($!==""&&(G=vl(S,"",X)),G)?!0:l3(X,$)},Tp=S=>{if(!S)return!0;const $=i3(S);if($!==void 0)return $;const X=a3.value,G=r.permissionChecker||k;if(G)return c3(G,X,S);const Y=S.toUpperCase();return s3.value.some(ee=>ee.code===Y)},d3=(S,$)=>{if(S.condition)try{return no.apply(S.condition,$)}catch(re){return console.warn("Row action jsonLogic error:",re),!1}if(!S.visibilityCondition)return!0;const{field:X,operator:G,value:Y}=S.visibilityCondition,ee=rt($,X);switch(G){case"equals":return ee===Y;case"notEquals":return ee!==Y;case"in":return Array.isArray(Y)&&Y.includes(ee);case"notIn":return Array.isArray(Y)&&!Y.includes(ee);case"greaterThan":return ee>Y;case"lessThan":return ee<Y;case"contains":return String(ee).includes(String(Y));default:return!0}},Pp=e.computed(()=>{if(A.value.length===0)return[];const S=r.dummyMode||C.query.preview==="true"||C.query.dummy==="true";return A.value.filter($=>{var X;if($.isHidden===!0||$.isHidden==="true")return!1;if($.visibleRule)try{const G=ro.value[0]||{};if(!no.apply($.visibleRule,G))return!1}catch(G){console.warn("Header action visibility logic error:",G)}if(r.ignorePermissions||S||(X=P.value)!=null&&X.ignorePermissions||!$.permission)return!0;if(r.checkPermission){let G=r.checkPermission($.permission);if(!G&&$.permission!==$.permission.toLowerCase()&&(G=r.checkPermission($.permission.toLowerCase())),G!==void 0)return!!G}return r.permissions?r.permissions.includes($.permission):!!Tp($.permission)})}),Rp=e.computed(()=>B.value.length===0?B.value:B.value.filter(S=>S.isHidden===!0||S.isHidden==="true"?!1:r.ignorePermissions||r.dummyMode||!S.permission?!0:r.checkPermission?r.checkPermission(S.permission):r.permissions?r.permissions.includes(S.permission):Tp(S.permission))),Al=S=>Rp.value.filter($=>d3($,S)),Op=(S,$)=>{var Y,ee;if(S.requiredCondition&&((Y=S.propCustomCondition)==null?void 0:Y.length)>0){const re=rt($,"status"),pe=S.propCustomCondition.find(Se=>Se.value===re);if(pe)return pe.bgColor||S.bgColor||"primary"}if(!S.dynamicColor||!S.colorCondition)return S.bgColor||"primary";const X=rt($,S.colorCondition.field),G=(ee=S.colorCondition.conditions)==null?void 0:ee.find(re=>re.value===X);return(G==null?void 0:G.bgColor)||S.bgColor||"primary"},u3=S=>{const $=(S||"left").toLowerCase();return $==="center"?"justify-center":$==="right"?"justify-end":"justify-start"},f3={ToggleLeft:be.ToggleLeft,SquarePen:be.SquarePen,Trash2:be.Trash2,Eye:be.Eye,CheckCircle:be.CheckCircle,Plus:be.Plus,Download:be.Download,RefreshCw:be.RefreshCw,Search:be.Search,SlidersHorizontal:be.SlidersHorizontal},p3=S=>S&&(To(S,Tt)||f3[S])||null,ro=e.computed(()=>r.dummyMode?Wt.value.length>0?o3(5):[]:g3.value),ms=e.computed(()=>r.dummyMode?5:r.remotePagination&&r.totalItems!==void 0?r.totalItems:bt.value&&D.value.length>0?M.value:Dl.value.length),m3=e.computed(()=>ms.value===0?0:(w.value-1)*y.value+1),h3=e.computed(()=>{const S=w.value*y.value;return Math.min(S,ms.value)}),rt=(S,$)=>{if(!S||!$)return;if($.includes(".")){const Y=$.split(".").reduce((ee,re)=>ee&&ee[re],S);if(Y!=null)return Y}if($ in S)return S[$];const X=$.split(".").reduce((Y,ee)=>Y&&Y[ee],S);if(X!=null)return X;const G=$.split(".");if(G.length>1){const Y=G[G.length-1];if(Y in S)return S[Y]}return X},Dl=e.computed(()=>{let X=(bt.value&&D.value.length>0?D.value:r.data||[]).filter(G=>!G||typeof G!="object"?!1:Wt.value.some(Y=>{if(["no","action"].includes(Y.key)||["ACTION","action","CHECKBOX"].includes(Y.type||""))return!1;const re=rt(G,Y.key);return re!=null&&re!==""}));if(N.value){const G=N.value.toLowerCase();X=X.filter(Y=>Wt.value.some(ee=>{const re=rt(Y,ee.key);return re==null?!1:String(re).toLowerCase().includes(G)}))}return!bt.value&&Object.keys(R.value).length>0&&(X=X.filter(G=>Object.entries(R.value).every(([Y,ee])=>{if(ee==null||ee==="")return!0;const re=rt(G,Y);if(re==null)return!1;const pe=String(re).toLowerCase(),Se=String(ee).toLowerCase();return pe.includes(Se)}))),X}),Fp=e.computed(()=>_.value.key?[...Dl.value].sort(($,X)=>{const G=rt($,_.value.key),Y=rt(X,_.value.key);if(G===Y)return 0;let ee=0;return typeof G=="number"&&typeof Y=="number"?ee=G-Y:ee=String(G).localeCompare(String(Y)),_.value.direction==="asc"?ee:-ee}):Dl.value),g3=e.computed(()=>{if(bt.value)return Fp.value.map((X,G)=>({...X,no:(w.value-1)*y.value+G+1}));const S=(w.value-1)*y.value,$=S+y.value;return Fp.value.slice(S,$).map((X,G)=>({...X,no:S+G+1}))}),b3=(S,$)=>{var Y,ee,re,pe;const X=rt(S,$.key);if(X==null||X==="")return"-";if(($.type==="TEXT"||$.type==="text")&&((ee=(Y=$.propsCustom)==null?void 0:Y[0])!=null&&ee.value)){const Se=$.propsCustom[0].value;if(X&&typeof X=="object")return rt(X,Se)||"-";const $e=$.key.split(".").reduce((qe,xe)=>qe&&qe[xe],S);if($e&&typeof $e=="object")return rt($e,Se)||"-"}if(["DATE","date","DATETIME","datetime","DATA","data"].includes($.type||"")){const Se=($.type||"").toUpperCase()==="DATETIME";return Is(X,Se?"datetime":"long")}if($.type==="CURRENCY"||$.type==="currency"){const Se=((pe=(re=$.propsCustom)==null?void 0:re[0])==null?void 0:pe.value)||"IDR";return Vc(X,Se)}return $.format?$.format(X):X},$p=e.computed(()=>bt.value?Object.values(R.value).some(S=>!!S):!!N.value),y3=[10,25,50,100],Lp=()=>{bt.value&&(R.value={...R.value,keyword:N.value},w.value=1,wt())};let Nl;const k3=()=>{r.enableQuickSearch&&(clearTimeout(Nl),Nl=setTimeout(()=>{Lp()},500))};let Vl;const Ip=()=>{clearTimeout(Vl),Vl=setTimeout(()=>{bt.value&&wt()},500)};e.watch(N,()=>{r.enableQuickSearch&&bt.value&&k3()}),e.watch(()=>r.baseUrl,S=>{S&&(console.log(`[DataTable] baseUrl resolved to ${S}. Re-triggering prefetch for actions.`),A.value.forEach($=>{($.fieldActionCustom||$.fieldActionGlobal||$.field||[]).forEach(G=>jn(G))}),B.value.forEach($=>{($.fieldActionCustom||$.fieldActionGlobal||$.field||[]).forEach(G=>jn(G))}))});const wt=async()=>{var X,G;if(r.dummyMode||!bt.value||T.value||!fs.value&&!ps.value)return;const S=r.data&&r.data.length>0,$=w.value===1&&Object.keys(R.value).length===0&&!N.value;if(!(S&&$&&!D.value.length&&!T.value))try{T.value=!0;const Y={page:w.value,perPage:y.value,...R.value,...r.apiParams};N.value&&(Y.keyword=N.value),Object.keys(Y).forEach(re=>{(Y[re]===""||Y[re]===null||Y[re]===void 0)&&delete Y[re]});let ee;if(fs.value)ee=await c(fs.value,n3.value,Y);else if(ps.value){let re=ps.value;if(r.baseUrl&&typeof r.baseUrl=="string"&&typeof re=="string"&&!re.startsWith("http")){const Se=r.baseUrl.replace(/\/$/,""),$e=re.startsWith("/")?re:`/${re}`;re=`${Se}${$e}`}const pe={...((G=(X=P.value)==null?void 0:X.endpoint)==null?void 0:G.config)||{}};Sl.value&&(pe.headers||(pe.headers={}),pe.headers.Accept=Sl.value,pe.headers.accept=Sl.value),ee=await c(re,r3.value,Y,pe)}jp(ee)}catch(Y){console.error("DataTable fetch error",Y),T.value=!1}},x3=S=>{r.dynamicColumns&&Array.isArray(S==null?void 0:S.columns)&&(Uo.value=S.columns.map($=>({key:$.key||$.field||$.name,label:$.label||$.header||$.name,width:$.width,align:$.align||"LEFT",sortable:$.sortable!==!1,type:$.type,condition:$.condition,format:$.format})))},zp={data:(S,$)=>{var X;return S.totalData||(S.maxPage?S.maxPage*$:(((X=S.data)==null?void 0:X.length)||0)*(S.maxPage||1))},users:S=>{var $;return(($=S.users)==null?void 0:$.length)||0},items:S=>{var $;return S.total||S.totalItems||(($=S.items)==null?void 0:$.length)||0},list:S=>{var $;return S.total||(($=S.list)==null?void 0:$.length)||0},rows:S=>{var $;return S.count||S.total||(($=S.rows)==null?void 0:$.length)||0},result:S=>{var $;return S.total||S.count||(($=S.result)==null?void 0:$.length)||0}},jp=S=>{if(S){x3(S);const $=Object.keys(zp).find(X=>S[X]&&Array.isArray(S[X]));$?(D.value=S[$],M.value=zp[$](S,y.value)):Array.isArray(S)?(D.value=S,M.value=S.length):S&&S.status===!0&&(S.data===null||S.data===void 0)?(D.value=[],M.value=0):(console.warn("DataTable: Unknown response format",S),D.value=[],M.value=0)}T.value=!1};e.onUnmounted(()=>{clearTimeout(Nl),clearTimeout(Vl)});const Up=()=>{Object.keys(R.value).forEach(S=>{R.value[S]=""}),a("reset"),Wp()},Wp=()=>{w.value=1,a("search",R.value),wt()},Ml=(S,$)=>S==null||$===void 0||$===null?!1:typeof S=="string"&&typeof $=="string"?S.toLowerCase().trim()===$.toLowerCase().trim():S==$,w3=S=>{if(typeof S=="boolean")return S?"true":"false";if(typeof S=="object"&&S!==null){const $=S,X=["code","id","name","value","val","label","key","status","statusRequest.name","description"];for(const G of X){const Y=rt($,G);if(Y!=null)return String(Y).toLowerCase().trim()}return""}return typeof S=="string"?S.toLowerCase().trim():String(S??"").toLowerCase().trim()},C3=(S,$)=>{const X=String($).toLowerCase();return S?["true","1","yes","active","aktif","AKT","enabled","on"].includes(X):["false","0","no","inactive","non active","NAK","disabled","off"].includes(X)},E3=(S,$,X,G)=>{if(S.logic||typeof S.value=="object"&&S.value!==null)try{return no.apply(S.logic||S.value,$)}catch(ee){return console.warn("Badge logic error:",ee),!1}const Y=w3(X);if(Ml(S.value,Y)||typeof X=="object"&&X!==null&&["code","id","name","value","val","label","key","status","statusRequest.name","description"].some(re=>Ml(S.value,rt(X,re))))return!0;if(typeof X=="boolean")return C3(X,S.value);if(G.includes(".")){const ee=G.split(".").slice(0,-1).join("."),re=rt($,ee);if(re&&typeof re=="object"&&["code","id","name","value","val","label","key","status","statusRequest.name","description"].some(Se=>Ml(S.value,rt(re,Se))))return!0}return!1},hs=(S,$)=>{var pe;const X=rt(S,$.key),Y=[...Array.isArray($.condition)?$.condition:[],...Array.isArray($.propsCustom)?$.propsCustom:[],...Array.isArray((pe=$.custom)==null?void 0:pe.propsCustom)?$.custom.propsCustom:[]].find(Se=>E3(Se,S,X,$.key)),ee=Se=>typeof Se=="object"?(Se==null?void 0:Se.name)||(Se==null?void 0:Se.code)||"-":Se,re={variant:(Y==null?void 0:Y.variant)||"secondary",class:"",label:ee(X),color:Y==null?void 0:Y.color};return Y&&(Y.labelEN||Y.labelID)&&(re.label=d.value==="id"?Y.labelID||Y.labelEN:Y.labelEN||Y.labelID),re},S3=S=>{_.value.key===S?_.value.direction=_.value.direction==="asc"?"desc":"asc":(_.value.key=S,_.value.direction="asc"),a("update:sort",_.value)},Hp=S=>{if(S===w.value)return;w.value=S,bt.value&&wt();const $=(S-1)*y.value+1,X=S*y.value;a("update:page",S),a("update:startIndex",$),a("update:endIndex",X)},_3=S=>{y.value=S,w.value=1,bt.value&&wt();const $=1,X=S;a("update:perPage",S),a("update:page",1),a("update:startIndex",$),a("update:endIndex",X)},qp=()=>{N.value="",R.value={},w.value=1,wt()},B3=S=>{var G,Y;if(!S)return S;const $=Wt.value.find(ee=>ee.key===S.model),X=["DCodeAutoComplete","DCodeInfiniteAutoComplete","DCodeMultiSelect"].includes(S.component);if((Y=(G=$==null?void 0:$.propsCustom)==null?void 0:G[0])!=null&&Y.value&&X){const ee={...S},re=S.props||S.propsFieldGlobal||S.propsFieldCustom||{};return ee.props={...re,returnObject:!0},ee}return S};function Fr(S){if(!S)return null;const $=S.propsActionCustom||S.props||S.propsActionGlobal||{},X=[S.endpointPropAction,$.endpointPropAction,S.endpointAction,$.endpointAction,S.endpointDialogActionSave,$.endpointDialogActionSave,S.endpointDialogAction,$.endpointDialogAction,S.endpoint,$.endpoint];for(const G of X)if(G&&typeof G=="object"&&G.apiUrl&&G.apiUrl!=="")return G;return X.find(G=>G&&typeof G=="object")||null}const Kp=S=>{var $;if(S.requireConfirm){L.value={button:S,row:null},F.value=!0;return}if(S.route&&!r.dummyMode){if(S.path){const X=S.route.startsWith("/")?S.route:"/"+S.route;sessionStorage.setItem(`layout_${X}`,S.path)}V==null||V.push(S.route)}else if(S.openDialog||r.dummyMode&&S.route){Q.value=S,ae.value=null,j.value=null,Object.keys(z).forEach(G=>delete z[G]);const X=S.fieldActionGlobal||S.fieldActionCustom||S.field||[];X.length&&X.forEach(G=>{jn(G);const Y=Fr(S),ee=Y!=null&&Y.keyParam&&Y.keyParam.length>0?Y.keyParam[0]:null,re=["DCodeAutoComplete","DCodeInfiniteAutoComplete","DCodeMultiSelect","DCodeSelect"].includes(G.component),pe=ee&&G.model===ee,Se=!ee&&/^(id|ids|idAuditTrail|idAppRequest)$/i.test(G.model);if(pe||Se&&!re)z[G.model]=xt.value;else if(z[G.model]===void 0||z[G.model]===""){const $e=ie(G,z);z[G.model]=$e!==void 0?$e:null}}),I.value=!0,setTimeout(()=>{ds()},50)}else a("action",{action:(($=S.propsActionCustom)==null?void 0:$.key)||S.key||"create",row:null,selection:xt.value})},v3=(S,$)=>{Wo.value;const X=Nr($);Object.keys(X).forEach(Y=>{z[Y]=X[Y]}),S.fieldMapping&&typeof S.fieldMapping=="object"&&Object.entries(S.fieldMapping).forEach(([Y,ee])=>{if(typeof ee=="string"){const re=rt($,Y);re!==void 0&&(z[ee]=re)}});const G=oe.value;console.log(`[initializeDialogData] Processing ${G.length} fields:`,G.map(Y=>Y.key||Y.model)),G.length>0&&G.forEach(Y=>{jn(Y,!0);const ee=Y.model||Y.key;if(!ee)return;const re=["DCodeAutoComplete","DCodeInfiniteAutoComplete","DCodeMultiSelect","DCodeSelect"].includes(Y.component);if(/^(id|ids|idAuditTrail|idAppRequest)$/i.test(ee)&&(!re||ee==="idAppRequest")){const pe=$[Wo.value]||X[ee]||$.id;z[ee]=/id$|idAppRequest|idSlikLogin/i.test(ee)?pe:[pe]}else if(S.action==="showToken"&&ee==="token")z[ee]=$.token??X.token??"";else{let pe=rt($,ee);if(pe==null){const Se=ee.includes(".")?ee.split(".").pop():null;Se&&(pe=rt($,Se))}if(pe!=null)z[ee]=pe;else{const Se=ie(Y,z);z[ee]=Se!==void 0?Se:null}}}),setTimeout(()=>{ds()},50)},A3=(S,$)=>{const X={};if($.keyParam&&Array.isArray($.keyParam)&&$.keyParam.forEach((G,Y)=>{if(typeof G=="string"){const ee=$.model&&Y===0?$.model:G,re=rt(S,G);re!==void 0&&(X[ee]=re)}else typeof G=="object"&&G!==null&&Object.entries(G).forEach(([ee,re])=>{const pe=rt(S,re);pe!==void 0&&(X[ee]=pe)})}),Object.keys(X).length===0&&S){const G=Wo.value;S[G]?X[G]=S[G]:S.id&&(X.id=S.id)}return X},D3=S=>{let $=S;$.item&&($=$.item),Array.isArray($)&&($=$[0]||{});const X=Nr($);if(Object.keys(X).forEach(G=>{z[G]=X[G]}),Object.keys($).forEach(G=>{ae.value&&(ae.value[G]=$[G])}),!z.token){const G=Object.keys($).find(Y=>Y.toLowerCase().includes("token"));G&&(z.token=$[G])}},N3=(S,$,X,G,Y)=>{const ee=(S==null?void 0:S.data)??(S==null?void 0:S.result)??S;ee&&typeof ee=="object"?D3(ee):typeof ee=="string"&&"token"in z&&(z.token=ee),G&&Y!=="delete"&&a("action",{action:$.action||Y,row:ae.value||X})},V3=async(S,$,X,G,Y)=>{T.value=!0;const ee=A3($,X);try{const re={...X.config||{}};X.accept&&(re.headers||(re.headers={}),re.headers.Accept=X.accept,re.headers.accept=X.accept);const pe=await c(X.apiUrl,"GET",ee,re);N3(pe,S,$,G,Y)}catch(re){console.error("Fetch Data Failed",re)}finally{T.value=!1}},Gp=async(S,$,X)=>{var G;if(S.requireConfirm){L.value={button:S,row:$},F.value=!0;return}if(S.openDialog){Q.value=S,ae.value=$,j.value=X!==void 0?X:null,Object.keys(z).forEach(Se=>delete z[Se]),v3(S,$);const Y=S.propsActionCustom||S.props||S.propsActionGlobal||{},ee=Fr(S),re=(S.actionType||S.permission||"").toLowerCase(),pe=/detail|view|edit|update|delete|destroy/i.test(re)||/detail|view|edit|update|delete|destroy/i.test(S.action||"");if(I.value=!0,pe&&!(ee!=null&&ee.apiUrl)){(!k||!S.permission||k("",S.permission))&&a("action",{action:S.action||re,row:$});return}((G=ee==null?void 0:ee.apiMethod)==null?void 0:G.toUpperCase())==="GET"&&ee.apiUrl&&(ee===S.endpointDialogActionSave||ee===Y.endpointDialogActionSave||V3(S,$,ee,pe,re));return}F3(S,$)},M3=(S,$)=>{let X=S.route;return X.includes(":")?X.replaceAll(/:(\w+)/g,(G,Y)=>($?$[Y]||$.id:null)||Y):$!=null&&$.id?`${X.replace(/\/$/,"")}/${$.id}`:X},T3=(S,$,X)=>{if(!S.fieldMapping||typeof S.fieldMapping!="object")return;const G=[];if(Object.entries(S.fieldMapping).forEach(([Y,ee])=>{if(typeof ee=="string"){const re=rt($,Y);if(re===void 0)G.push(Y);else{let pe=re;re&&typeof re=="object"&&!Array.isArray(re)&&/id|code|idSlik|idOperator|idSupervisor/i.test(ee)&&(pe=re.id??re.code??re.value??re),X[ee]=pe}}}),G.length>0){const Y=d.value||"en",ee=Y==="id"?"Masalah Sinkronisasi Data":"Data Synchronization Issue",re=Y==="id"?`Terdapat ketidaksesuaian skema pada field: ${G.join(", ")}. Harap hubungi tim pengembang.`:`Schema mismatch detected in fields: ${G.join(", ")}. Please contact the development team.`;Le.warning(`${ee}: ${re}`,{autoClose:5e3,position:"top-right"})}},P3=(S,$)=>{if(S.path){const Y=S.route.startsWith("/")?S.route:"/"+S.route;sessionStorage.setItem(`layout_${Y}`,S.path)}let X=M3(S,$);const G=S.path?{code:S.path}:{};if(X&&X.includes("?")){const[Y,ee]=X.split("?");X=Y;const re=new URLSearchParams(ee);for(const[pe,Se]of re.entries())G[pe]=Se}V==null||V.push({path:X,query:G})},R3=(S,$,X)=>{const G={};return T3(S,$,G),X.keyParam&&Array.isArray(X.keyParam)&&X.keyParam.forEach((Y,ee)=>{if(typeof Y=="string"){const re=X.model&&ee===0?X.model:Y,pe=rt($,Y);pe!==void 0&&(G[re]=pe)}else typeof Y=="object"&&Y!==null&&Object.entries(Y).forEach(([re,pe])=>{const Se=rt($,pe);Se!==void 0&&(G[re]=Se)})}),Object.keys(G).length===0&&$&&$.id&&(G.id=$.id),G},O3=(S,$,X)=>{T.value=!0;const G=R3(S,$,X),Y=Le.loading(d.value==="id"?"Memproses...":"Processing..."),ee=X.responseType==="blob"||X.responseType==="arraybuffer"||X.accept&&!X.accept.includes("json")||X.apiUrl&&(X.apiUrl.includes("/export")||X.apiUrl.includes("/download"))||S.actionType==="EXPORT"||S.permission==="EXPORT",re={...X.config||{}};X.accept&&(re.headers||(re.headers={}),re.headers.Accept=X.accept,re.headers.accept=X.accept),ee&&(re.responseType=X.responseType||"blob"),c(X.apiUrl,X.apiMethod||"POST",G,re).then(pe=>{var qe;if(ee&&(pe instanceof Blob||((qe=pe==null?void 0:pe.constructor)==null?void 0:qe.name)==="Blob"||(pe==null?void 0:pe.size)!==void 0)){const xe=pe instanceof Blob?pe:new Blob([pe],{type:X.accept||"application/octet-stream"});if(xe.type==="application/json"){const We=new FileReader;We.onload=()=>{try{const it=JSON.parse(We.result).message||(d.value==="id"?"Gagal mengunduh file":"Failed to download file");Le.update(Y,{render:it,type:"error",isLoading:!1,autoClose:5e3})}catch{const it=window.URL.createObjectURL(xe),yt=document.createElement("a");yt.href=it;const gs=`${S.label||S.text||S.tooltip||"Export"}_${new Date().toISOString().slice(0,10)}.pdf`;yt.setAttribute("download",gs),document.body.appendChild(yt),yt.click(),yt.remove(),window.URL.revokeObjectURL(it),Le.update(Y,{render:d.value==="id"?"File berhasil diunduh!":"File downloaded successfully!",type:"success",isLoading:!1,autoClose:2e3})}},We.readAsText(xe);return}const Pe=window.URL.createObjectURL(xe),ve=document.createElement("a");ve.href=Pe;let Ge="bin";const Ue=(X.accept||"").toLowerCase(),ut=(X.apiUrl||"").toLowerCase();Ue.includes("pdf")?Ge="pdf":Ue.includes("excel")||Ue.includes("sheet")||Ue.includes("spreadsheet")||Ue.includes("xlsx")?Ge="xlsx":Ue.includes("csv")?Ge="csv":Ue.includes("zip")?Ge="zip":ut.includes("pdf")?Ge="pdf":ut.includes("excel")||ut.includes("xlsx")?Ge="xlsx":ut.includes("csv")?Ge="csv":ut.includes("zip")&&(Ge="zip");const Ct=`${S.label||S.text||S.tooltip||"Export"}_${new Date().toISOString().slice(0,10)}.${Ge}`;ve.setAttribute("download",Ct),document.body.appendChild(ve),ve.click(),ve.remove(),window.URL.revokeObjectURL(Pe),Le.update(Y,{render:d.value==="id"?"File berhasil diunduh!":"File downloaded successfully!",type:"success",isLoading:!1,autoClose:2e3}),wt(),a("action",{action:S.action||"success",row:$});return}const Se=(pe==null?void 0:pe.status)===!0,$e=(pe==null?void 0:pe.message)||(Se?d.value==="id"?"Sukses":"Success":d.value==="id"?"Gagal":"Failed");Le.update(Y,{render:$e,type:Se?"success":"error",isLoading:!1,autoClose:Se?2e3:5e3}),Se&&(wt(),a("action",{action:S.action||"success",row:$}))}).catch(pe=>{console.error("Action Failed",pe),Le.update(Y,{render:pe.message||"Action failed",type:"error",isLoading:!1,autoClose:5e3})}).finally(()=>{T.value=!1})},F3=(S,$)=>{if(S.route)P3(S,$);else{const X=Fr(S);X!=null&&X.apiUrl?O3(S,$,X):a("action",{action:S.action,row:$})}},$3=()=>{if(L.value){const{button:S,row:$}=L.value;Xp(),$===null?Kp({...S,requireConfirm:!1}):Gp({...S,requireConfirm:!1},$)}},L3=(S,$)=>{let X=$==null?void 0:$.model;if(!X&&($!=null&&$.keyParam)&&$.keyParam.length>0){const re=$.keyParam[0];typeof re=="string"?X=re:typeof re=="object"&&re!==null&&(X=Object.keys(re)[0])}if(X)return X;const G=Np();if(G)return G;const ee=(S.fieldActionGlobal||S.fieldActionCustom||S.field||[]).find(re=>{const pe=["DCodeAutoComplete","DCodeInfiniteAutoComplete","DCodeMultiSelect","DCodeSelect"].includes(re.component);return/^(id|ids|idAuditTrail|idAppRequest)$/i.test(re.model)&&!pe});return ee?ee.model:"ids"},I3=(S,$,X)=>{let G={...z};const Y=S.fieldMapping;if(ae.value){const ee=Wo.value,re=ae.value[ee];G[X]||(/id$|idAppRequest|idSlikLogin/i.test(X)||$!=null&&$.model?G[X]=re:G[X]=[re])}else G[X]||(G[X]=xt.value||[]);if(Y&&typeof Y=="object"){const ee={},re=Object.keys(Y),pe=(S.fieldActionCustom||[]).map($e=>$e.model);[...new Set([...pe,X])].forEach($e=>{$e&&!re.includes($e)&&G[$e]!==void 0&&(ee[$e]=G[$e])}),Object.entries(Y).forEach(([$e,qe])=>{if(typeof qe=="string"){const xe=rt(G,$e)??(ae.value?rt(ae.value,$e):void 0);if(xe!==void 0){let Pe=xe;xe&&typeof xe=="object"&&!Array.isArray(xe)&&/id|code|idSlik|idOperator|idSupervisor/i.test(qe)&&(Pe=xe.id??xe.code??xe.value??xe),ee[qe]=/id$|idAppRequest|idSlikLogin/i.test(qe)&&Array.isArray(Pe)?Pe[0]:Pe}}}),G=ee}return G},z3=(S,$,X)=>{const G=Le.loading(d.value==="id"?"Memproses...":"Processing..."),Y=$.responseType==="blob"||$.responseType==="arraybuffer"||$.accept&&!$.accept.includes("json")||$.apiUrl&&($.apiUrl.includes("/export")||$.apiUrl.includes("/download"))||S.actionType==="EXPORT"||S.permission==="EXPORT",ee={...$.config||{}};$.accept&&(ee.headers||(ee.headers={}),ee.headers.Accept=$.accept,ee.headers.accept=$.accept),Y&&(ee.responseType=$.responseType||"blob"),c($.apiUrl,$.apiMethod||"POST",X,ee).then(re=>{var $e;if(Y&&(re instanceof Blob||(($e=re==null?void 0:re.constructor)==null?void 0:$e.name)==="Blob"||(re==null?void 0:re.size)!==void 0)){const qe=re instanceof Blob?re:new Blob([re],{type:$.accept||"application/octet-stream"});if(qe.type==="application/json"){const Ct=new FileReader;Ct.onload=()=>{try{const Re=JSON.parse(Ct.result).message||(d.value==="id"?"Gagal mengunduh file":"Failed to download file");Le.update(G,{render:Re,type:"error",isLoading:!1,autoClose:5e3})}catch{const Re=window.URL.createObjectURL(qe),it=document.createElement("a");it.href=Re;const ao=`${S.label||S.text||S.tooltip||"Export"}_${new Date().toISOString().slice(0,10)}.pdf`;it.setAttribute("download",ao),document.body.appendChild(it),it.click(),it.remove(),window.URL.revokeObjectURL(Re),Le.update(G,{render:d.value==="id"?"File berhasil diunduh!":"File downloaded successfully!",type:"success",isLoading:!1,autoClose:2e3})}},Ct.readAsText(qe);return}const xe=window.URL.createObjectURL(qe),Pe=document.createElement("a");Pe.href=xe;let ve="bin";const Ge=($.accept||"").toLowerCase(),Ue=($.apiUrl||"").toLowerCase();Ge.includes("pdf")?ve="pdf":Ge.includes("excel")||Ge.includes("sheet")||Ge.includes("spreadsheet")||Ge.includes("xlsx")?ve="xlsx":Ge.includes("csv")?ve="csv":Ge.includes("zip")?ve="zip":Ue.includes("pdf")?ve="pdf":Ue.includes("excel")||Ue.includes("xlsx")?ve="xlsx":Ue.includes("csv")?ve="csv":Ue.includes("zip")&&(ve="zip");const et=`${S.label||S.text||S.tooltip||"Export"}_${new Date().toISOString().slice(0,10)}.${ve}`;Pe.setAttribute("download",et),document.body.appendChild(Pe),Pe.click(),Pe.remove(),window.URL.revokeObjectURL(xe),Le.update(G,{render:d.value==="id"?"File berhasil diunduh!":"File downloaded successfully!",type:"success",isLoading:!1,autoClose:2e3}),I.value=!1,ae.value||(xt.value=[]),mn.value="",wt(),a("action",{action:"success",row:null}),Tl(S);return}const pe=(re==null?void 0:re.status)===!0,Se=(re==null?void 0:re.message)||(pe?d.value==="id"?"Sukses":"Success":d.value==="id"?"Gagal":"Failed");Le.update(G,{render:Se,type:pe?"success":"error",isLoading:!1,autoClose:pe?2e3:5e3}),pe&&(I.value=!1,ae.value||(xt.value=[]),mn.value="",wt(),a("action",{action:"success",row:null}),Tl(S))}).catch(re=>{console.error("Action Failed",re),Le.update(G,{render:re.message||"Action failed",type:"error",isLoading:!1,autoClose:5e3})})},Tl=S=>{var X,G;const $=(S==null?void 0:S.routeBack)||(S==null?void 0:S.pathBack)||((X=P.value)==null?void 0:X.routeBack)||((G=P.value)==null?void 0:G.pathBack);$&&V.push($)},j3=(S,$)=>{var G,Y,ee,re,pe;const X={...z};if(ae.value){const Se=((G=r.tableConfig)==null?void 0:G.modelDatatable)||((Y=P.value)==null?void 0:Y.modelDatatable)||S.modelDatatable;a("action",{action:((ee=S.propsActionGlobal)==null?void 0:ee.key)||S.key||$,row:X,originalRow:ae.value,rowIndex:j.value,isLocalSave:!0,actionType:"UPDATE",modelDatatable:Se})}else{const Se=((re=P.value)==null?void 0:re.modelDatatable)||r.apiModule||S.modelDatatable;a("action",{action:((pe=S.propsActionGlobal)==null?void 0:pe.key)||S.key||$,row:X,selection:xt.value,isLocalSave:!0,actionType:"CREATE",modelDatatable:Se})}I.value=!1,ae.value||(xt.value=[]),Tl(S)},U3=()=>{var ee,re,pe,Se;if(!Q.value)return;const S=Q.value,$=Fr(S),X=(S.actionType||S.permission||"").toLowerCase(),G=!!((ee=S.endpointDialogActionSave)!=null&&ee.apiUrl||(pe=(re=S.propsActionGlobal)==null?void 0:re.endpointDialogActionSave)!=null&&pe.apiUrl);if(($==null?void 0:$.apiUrl)&&(((Se=$.apiMethod)==null?void 0:Se.toUpperCase())!=="GET"||G)){const $e=L3(S,$),qe=I3(S,$,$e);z3(S,$,qe)}else j3(S,X)},W3=S=>{const $=z[S];$&&Mg(String($)).then(()=>{Le.success("Berhasil disalin!",{autoClose:2e3,theme:"dark",pauseOnHover:!1})}).catch(X=>{console.error("Failed to copy",X)})},Xp=()=>{F.value=!1,L.value=null},H3=e.computed(()=>L.value?L.value.button.confirmTitle||"Confirm":""),q3=e.computed(()=>L.value?L.value.button.confirmMessage||"Confirm":"");o({fetchData:wt,filters:R,resetFilters:Up,handleRefresh:qp,currentPage:w,currentPerPage:y});const mn=e.ref(""),Yp=S=>{if(!S&&!r.apiParams)return"";const $=(S==null?void 0:S.endpoint)||(S==null?void 0:S.endpointTable)||(S==null?void 0:S.endpointGlobal)||{};return JSON.stringify({url:$.apiUrl||(S==null?void 0:S.apiUrl)||r.apiUrl,module:$.apiModule||(S==null?void 0:S.apiModule)||r.apiModule,action:$.apiAction||(S==null?void 0:S.apiAction)||r.apiAction,method:$.apiMethod||(S==null?void 0:S.apiMethod)||r.apiMethod,params:(S==null?void 0:S.apiParams)||r.apiParams,socket:$.socket||(S==null?void 0:S.socketEndpoint)||r.socketEndpoint,socketParams:(S==null?void 0:S.socketParams)||r.socketParams})};e.watch(()=>r.tableConfig,()=>{if(r.tableConfig){Bl();const S=Yp(r.tableConfig);S!==mn.value&&(!r.controlled&&bt.value?(mn.value=S,console.log("[DataTable] Triggering internal auto-fetch due to config change."),Ip()):r.controlled&&(mn.value=S,console.log("[DataTable] Skipping internal fetch (Controlled Mode).")))}},{deep:!0,immediate:!0}),e.watch(()=>r.apiModule,()=>{bt.value&&wt()});const Jp=S=>{if(w.value!==1)return;const $=S&&(S.data||S.items||S.list||S.rows||S.result);Array.isArray(S)||$?jp(S):wt()};return e.watch(()=>Wn.value,(S,$)=>{!f||!p||($&&p($,Jp),S&&(h&&h(),f(S,Jp),g.value&&m&&m(S,_l.value)))},{immediate:!0}),e.watch(()=>g.value,S=>{S&&Wn.value&&m&&m(Wn.value,_l.value)}),e.watch(()=>r.socketParams,()=>{Mp.value&&(g.value&&Wn.value&&m&&m(Wn.value,_l.value),wt())},{deep:!0}),e.watch(()=>r.apiParams,(S,$)=>{JSON.stringify(S)!==JSON.stringify($)&&bt.value&&Ip()},{deep:!0}),e.watch(()=>r.page,S=>{S!==void 0&&S!==w.value&&(w.value=S,bt.value&&wt())}),e.watch(()=>r.perPage,S=>{S!==void 0&&S!==y.value&&(y.value=S,bt.value&&wt())}),e.watch(()=>r.startIndex,S=>{if(S!==void 0){const $=Math.floor((S-1)/y.value)+1;$!==w.value&&(w.value=$,bt.value&&wt())}}),e.watch(()=>A.value,S=>{Pp.value},{deep:!0}),e.onMounted(()=>{if(Bl(),bt.value&&!r.controlled){const S=Yp(P.value||r.tableConfig);S!==mn.value&&(mn.value=S,T.value=!0,wt())}}),(S,$)=>{var X,G,Y,ee,re,pe,Se,$e,qe;return e.openBlock(),e.createElementBlock("div",sM,[Rr((X=P.value)==null?void 0:X.isHidden)?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",iM,[t.nested?(e.openBlock(),e.createElementBlock("div",lM,[$[9]||($[9]=e.createElementVNode("div",{class:"h-4 w-1 bg-white/50 rounded-full"},null,-1)),e.createElementVNode("span",cM,e.toDisplayString(e.unref(d)==="kr"||e.unref(d)==="ko"?((G=P.value)==null?void 0:G.titleKR)||((Y=P.value)==null?void 0:Y.titleEN)||((ee=P.value)==null?void 0:ee.titleID):e.unref(d)==="id"?(re=P.value)==null?void 0:re.titleID:((pe=P.value)==null?void 0:pe.titleEN)||((Se=P.value)==null?void 0:Se.titleID)),1)])):e.createCommentVNode("",!0),e.createElementVNode("div",dM,[!t.nested||t.dummyMode||Z.value?(e.openBlock(),e.createElementBlock("div",uM,[e.createElementVNode("div",fM,[e.createVNode(e.unref(be.Search),{class:"absolute left-2.5 top-2.5 h-4 w-4 text-neutral-500 dark:text-neutral-400"}),e.createVNode(e.unref(W5),{modelValue:N.value,"onUpdate:modelValue":$[0]||($[0]=xe=>N.value=xe),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:e.withKeys(Lp,["enter"])},null,8,["modelValue"])]),O.value.length>0||S.$slots["filter-form"]?(e.openBlock(),e.createElementBlock("div",pM,[e.createVNode(ID,null,{trigger:e.withCtx(()=>[e.createVNode(at,{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"})]),default:e.withCtx(()=>[e.createElementVNode("div",mM,[e.renderSlot(S.$slots,"filter-form",{filters:R.value},()=>[O.value.length>0?(e.openBlock(),e.createElementBlock("div",hM,[e.createElementVNode("div",gM,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(W.value,(xe,Pe)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:Pe},[e.unref(_e)(xe)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(_p)(xe,"1"))},[e.createVNode(bN,{field:xe,modelValue:R.value[xe.model],"onUpdate:modelValue":ve=>R.value[xe.model]=ve,disabled:e.unref(vt)(xe),required:e.unref(Ie)(xe),readonly:e.unref(Mt)(xe),options:e.unref(Sp)(xe),"dynamic-labels":e.unref(vo)(xe),"dynamic-length":e.unref(wl)(xe)},null,8,["field","modelValue","onUpdate:modelValue","disabled","required","readonly","options","dynamic-labels","dynamic-length"])],2)):e.createCommentVNode("",!0)],64))),128))])])):e.createCommentVNode("",!0)]),O.value.length>0||S.$slots["filter-form"]?(e.openBlock(),e.createElementBlock("div",bM,[e.createElementVNode("div",yM,[e.createVNode(e.unref(yn),{variant:"outline",onClick:Up,disabled:Hn.value,class:"w-full gap-2"},{default:e.withCtx(()=>[e.createVNode(e.unref(be.RefreshCw),{class:"w-4 h-4"}),$[10]||($[10]=e.createTextVNode(" Reset ",-1))]),_:1},8,["disabled"]),e.createVNode(e.unref(yn),{onClick:Wp,disabled:Bp.value,class:"w-full gap-2"},{default:e.withCtx(()=>[e.createVNode(e.unref(be.Search),{class:"w-4 h-4"}),$[11]||($[11]=e.createTextVNode(" Search ",-1))]),_:1},8,["disabled"])])])):e.createCommentVNode("",!0)])]),_:3})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["flex items-center gap-2 flex-wrap",{"ml-auto":t.nested}])},[(!t.nested||t.dummyMode||U.value)&&bt.value?(e.openBlock(),e.createBlock(at,{key:0,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:qp,disabled:Hn.value},{icon:e.withCtx(()=>[e.createVNode(e.unref(be.RefreshCw),{class:e.normalizeClass(["w-3.5 h-3.5",{"animate-spin":Hn.value}])},null,8,["class"])]),_:1},8,["disabled"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Pp.value,(xe,Pe)=>(e.openBlock(),e.createBlock(at,{key:Pe,icon:xe.icon,text:xe.label,tooltip:xe.tooltip,variant:xe.variant,"bg-color":xe.bgColor,"text-color":xe.textColor,"border-style":xe.borderStyle||"none","border-color":xe.borderColor,rounded:xe.rounded||"md",class:e.normalizeClass(["gap-2 h-9 shadow-lg shadow-primary-500/20 text-xs font-medium",{"border-none":!xe.borderStyle||xe.borderStyle==="none"}]),onClick:ve=>Kp(xe)},null,8,["icon","text","tooltip","variant","bg-color","text-color","border-style","border-color","rounded","class","onClick"]))),128)),e.renderSlot(S.$slots,"header-actions")],2)])])),e.createElementVNode("div",kM,[e.createElementVNode("table",xM,[e.createElementVNode("thead",wM,[e.createElementVNode("tr",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Wt.value,xe=>(e.openBlock(),e.createElementBlock("th",{key:xe.key,class:e.normalizeClass([xe.align?`text-${xe.align.toLowerCase()}`:"text-left",xe.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:e.normalizeStyle(xe.width?{width:xe.width}:{}),onClick:Pe=>xe.sortable&&S3(xe.key)},[["CHECKBOX","checkbox"].includes(xe.type??"")&&!Rr(xe.isHidden)?(e.openBlock(),e.createElementBlock("div",EM,[e.createElementVNode("input",{type:"checkbox",class:"h-4 w-4 rounded border-white/30 bg-transparent text-white focus:ring-offset-primary-700 focus:ring-white cursor-pointer accent-primary-500",checked:Vp.value,indeterminate:QT.value,onChange:$[1]||($[1]=Pe=>e3(Pe.target.checked)),onClick:$[2]||($[2]=e.withModifiers(()=>{},["stop"]))},null,40,SM)])):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["flex items-center gap-2 w-full",u3(xe.align)])},[e.createElementVNode("span",null,e.toDisplayString(xe.label),1)],2))],14,CM))),128)),Or.value?(e.openBlock(),e.createElementBlock("th",_M,[e.createElementVNode("div",BM,e.toDisplayString(e.unref(d)==="kr"||e.unref(d)==="ko"?"작업":e.unref(d)==="id"?"Aksi":"Actions"),1)])):e.createCommentVNode("",!0)])]),e.createElementVNode("tbody",vM,[Hn.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(ro.value.length>0?ro.value.length:Math.max(y.value,5),xe=>(e.openBlock(),e.createElementBlock("tr",{key:`skeleton-${xe}`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Wt.value,Pe=>{var ve,Ge;return e.openBlock(),e.createElementBlock("td",{key:Pe.key,class:e.normalizeClass([Pe.align?`text-${Pe.align.toLowerCase()}`:"text-left","px-3 py-3"])},[e.createElementVNode("div",{class:e.normalizeClass(["animate-shimmer rounded-md",[["badge","BADGE"].includes(Pe.type??"")||Pe.condition?"h-6 w-24 rounded-full":"h-5 w-full max-w-[80%]",((ve=Pe.align)==null?void 0:ve.toLowerCase())==="center"?"mx-auto":"",((Ge=Pe.align)==null?void 0:Ge.toLowerCase())==="right"?"ml-auto":""]])},null,2)],2)}),128)),Or.value?(e.openBlock(),e.createElementBlock("td",AM,[...$[12]||($[12]=[e.createElementVNode("div",{class:"flex items-center justify-center gap-1.5"},[e.createElementVNode("div",{class:"w-8 h-8 bg-zinc-200/50 dark:bg-zinc-800/50 rounded-lg animate-pulse"}),e.createElementVNode("div",{class:"w-8 h-8 bg-zinc-200/50 dark:bg-zinc-800/50 rounded-lg animate-pulse delay-75"})],-1)])])):e.createCommentVNode("",!0)]))),128)):ro.value.length===0?(e.openBlock(),e.createElementBlock("tr",DM,[e.createElementVNode("td",{colspan:Wt.value.length+(Or.value?1:0),class:"text-center py-16"},[e.createElementVNode("div",VM,[e.createVNode(e.unref(im.Vue3Lottie),{animationData:e.unref(oM),height:200,width:200},null,8,["animationData"]),e.createElementVNode("div",null,[e.createElementVNode("p",MM,e.toDisplayString($p.value?"No search results":"No data"),1),e.createElementVNode("p",TM,e.toDisplayString($p.value?"Try changing keywords":"No data added"),1)])])],8,NM)])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(ro.value,(xe,Pe)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:Pe},[e.createElementVNode("tr",PM,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Wt.value,ve=>(e.openBlock(),e.createElementBlock("td",{key:ve.key,class:e.normalizeClass([ve.align?`text-${ve.align.toLowerCase()}`:"text-left","px-3 py-0.5 text-sm text-neutral-900 dark:text-neutral-100"])},[e.renderSlot(S.$slots,`cell-${ve.key}`,{row:xe,value:rt(xe,ve.key)},()=>{var Ge,Ue,ut,et,Ct,We,Re,it;return[["CHECKBOX","checkbox"].includes(ve.type??"")&&!Rr(ve.isHidden)?(e.openBlock(),e.createElementBlock("div",RM,[e.createElementVNode("input",{type:"checkbox",class:"h-4 w-4 rounded border-neutral-300 dark:border-neutral-700 bg-white dark:bg-zinc-800 text-primary-600 focus:ring-primary-500 cursor-pointer",checked:ZT(xe),onChange:yt=>t3(xe,yt.target.checked),onClick:$[3]||($[3]=e.withModifiers(()=>{},["stop"]))},null,40,OM)])):ve.type==="badge"||ve.type==="BADGE"||((Ge=ve.custom)==null?void 0:Ge.type)==="badge"||((Ue=ve.custom)==null?void 0:Ue.type)==="BADGE"||ve.condition?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["flex items-center gap-1.5 flex-wrap md:flex-nowrap",[ve.align?`justify-${ve.align.toLowerCase()}`:"justify-start"]])},[e.createVNode(On,{variant:hs(xe,ve).variant,color:hs(xe,ve).color,class:e.normalizeClass([hs(xe,ve).class,"whitespace-nowrap truncate max-w-[150px] inline-block"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(hs(xe,ve).label),1)]),_:2},1032,["variant","color","class"])],2)):ve.key==="no"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[e.createTextVNode(e.toDisplayString((w.value-1)*y.value+Pe+1),1)],64)):ve.type==="HYPERLINK"||ve.type==="hyperlink"?(e.openBlock(),e.createElementBlock("a",{key:3,href:rt(xe,(et=(ut=ve.propsCustom)==null?void 0:ut[0])==null?void 0:et.urlLink)||"#",target:((We=(Ct=ve.propsCustom)==null?void 0:Ct[0])==null?void 0:We.target)||"_blank",class:"text-blue-600 dark:text-blue-400 hover:underline inline-flex items-center gap-1 font-medium"},[e.createTextVNode(e.toDisplayString(rt(xe,ve.key)||"-")+" ",1),((it=(Re=ve.propsCustom)==null?void 0:Re[0])==null?void 0:it.target)==="_blank"?(e.openBlock(),e.createElementBlock("span",$M,[...$[13]||($[13]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[e.createElementVNode("path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"}),e.createElementVNode("polyline",{points:"15 3 21 3 21 9"}),e.createElementVNode("line",{x1:"10",y1:"14",x2:"21",y2:"3"})],-1)])])):e.createCommentVNode("",!0)],8,FM)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:4},[e.createTextVNode(e.toDisplayString(b3(xe,ve)),1)],64))]})],2))),128)),Or.value?(e.openBlock(),e.createElementBlock("td",LM,[e.renderSlot(S.$slots,"actions",{row:xe,buttons:Al(xe),getButtonColor:Op,getIconComponent:p3},()=>[Al(xe).length>0?(e.openBlock(),e.createElementBlock("div",IM,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Al(xe),(ve,Ge)=>(e.openBlock(),e.createElementBlock("div",{key:Ge,class:"group relative"},[e.createVNode(at,{tooltip:ve.tooltip||ve.label,icon:ve.icon,text:ve.icon?"":ve.label||(e.unref(d)==="id"?"Aksi":"Action"),size:ve.icon?"icon":"sm",rounded:ve.rounded||"sm","border-style":ve.borderStyle||"none","border-color":ve.borderColor,variant:ve.variant||"ghost","bg-color":Op(ve,xe),onClick:Ue=>Gp(ve,xe,Pe)},null,8,["tooltip","icon","text","size","rounded","border-style","border-color","variant","bg-color","onClick"])]))),128))])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)]),S.$slots["expanded-row"]?(e.openBlock(),e.createElementBlock("tr",zM,[e.createElementVNode("td",{colspan:Wt.value.length+(Or.value?1:0),class:"px-0 py-0"},[e.renderSlot(S.$slots,"expanded-row",{row:xe,index:Pe})],8,jM)])):e.createCommentVNode("",!0)],64))),128))])])]),!Hn.value&&ro.value.length>0&&t.showPagination&&H.value?(e.openBlock(),e.createElementBlock("div",UM,[e.createElementVNode("div",WM,[e.createVNode(e.unref(Z5),{"model-value":String(y.value),"onUpdate:modelValue":$[4]||($[4]=xe=>_3(Number(xe)))},{default:e.withCtx(()=>[e.createVNode(e.unref(aV),{class:"h-8 w-[70px] bg-white dark:bg-zinc-800 border-neutral-200 dark:border-neutral-700"},{default:e.withCtx(()=>[e.createVNode(e.unref(sV),{placeholder:String(y.value)},null,8,["placeholder"])]),_:1}),e.createVNode(e.unref(eV),null,{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(y3,xe=>e.createVNode(e.unref(oV),{key:xe,value:String(xe)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(xe),1)]),_:2},1032,["value"])),64))]),_:1})]),_:1},8,["model-value"]),$[18]||($[18]=e.createElementVNode("div",{class:"h-5 w-px bg-zinc-300 dark:bg-zinc-600"},null,-1)),e.createElementVNode("span",HM,[$[14]||($[14]=e.createTextVNode(" Showing ",-1)),e.createElementVNode("span",qM,e.toDisplayString(m3.value),1),$[15]||($[15]=e.createTextVNode(" to ",-1)),e.createElementVNode("span",KM,e.toDisplayString(h3.value),1),$[16]||($[16]=e.createTextVNode(" of ",-1)),e.createElementVNode("span",GM,e.toDisplayString(ms.value),1),$[17]||($[17]=e.createTextVNode(" items ",-1))])]),e.createElementVNode("div",XM,[e.createVNode(e.unref(H5),{total:ms.value,"items-per-page":y.value,"sibling-count":1,"show-edges":"",page:w.value,"onUpdate:page":Hp,class:"scale-90 origin-right"},{default:e.withCtx(()=>[e.createVNode(e.unref(q5),{class:"flex items-center gap-1"},{default:e.withCtx(({items:xe})=>[e.createVNode(e.unref(G5),{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:e.withCtx(()=>[e.createVNode(e.unref(be.ChevronsLeft),{class:"h-4 w-4"})]),_:1}),e.createVNode(e.unref(Q5),{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:e.withCtx(()=>[e.createVNode(e.unref(be.ChevronLeft),{class:"h-4 w-4"})]),_:1}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(xe,(Pe,ve)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[Pe.type==="page"?(e.openBlock(),e.createBlock(e.unref(X5),{key:ve,value:Pe.value,"as-child":""},{default:e.withCtx(()=>[e.createVNode(e.unref(yn),{class:"w-8 h-8 p-0 text-sm",variant:Pe.value===w.value?"default":"outline",disabled:Pe.value===w.value,onClick:Ge=>Hp(Pe.value)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(Pe.value),1)]),_:2},1032,["variant","disabled","onClick"])]),_:2},1032,["value"])):(e.openBlock(),e.createBlock(e.unref(K5),{key:Pe.type,index:ve},null,8,["index"]))],64))),256)),e.createVNode(e.unref(J5),{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:e.withCtx(()=>[e.createVNode(e.unref(be.ChevronRight),{class:"h-4 w-4"})]),_:1}),e.createVNode(e.unref(Y5),{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:e.withCtx(()=>[e.createVNode(e.unref(be.ChevronsRight),{class:"h-4 w-4"})]),_:1})]),_:1})]),_:1},8,["total","items-per-page","page"])])])):e.createCommentVNode("",!0),e.createVNode(Eo,{modelValue:F.value,"onUpdate:modelValue":$[5]||($[5]=xe=>F.value=xe),title:H3.value,icon:"AlertCircle","max-width":Dp.value,persistent:!1},{actions:e.withCtx(()=>[e.createVNode(at,{variant:"outline",onClick:Xp,text:"Cancel"}),e.createVNode(at,{variant:"default",onClick:$3,text:"Yes"})]),default:e.withCtx(()=>[e.createElementVNode("div",YM,[e.createElementVNode("p",JM,e.toDisplayString(q3.value),1)])]),_:1},8,["modelValue","title","max-width"]),e.createVNode(Eo,{modelValue:I.value,"onUpdate:modelValue":$[8]||($[8]=xe=>I.value=xe),title:vp.value,description:Ap.value,icon:"AlertCircle",size:(((qe=($e=Q.value)==null?void 0:$e.dialogConfig)==null?void 0:qe.layoutSize)||"md").toLowerCase()},{actions:e.withCtx(()=>{var xe,Pe;return[e.createVNode(at,{variant:"outline",onClick:$[6]||($[6]=ve=>I.value=!1),text:ye.value?e.unref(d)==="id"?"Tutup":"Close":e.unref(d)==="id"?"Batal":"Cancel"},null,8,["text"]),!ye.value&&!(t.dummyMode&&((xe=Q.value)!=null&&xe.route))?(e.openBlock(),e.createBlock(at,{key:0,variant:"default",onClick:U3,text:"Save"})):e.createCommentVNode("",!0),!ye.value&&t.dummyMode&&((Pe=Q.value)!=null&&Pe.route)?(e.openBlock(),e.createBlock(at,{key:1,variant:"default",onClick:$[7]||($[7]=ve=>I.value=!1),text:e.unref(d)==="id"?"Tutup":"Close"},null,8,["text"])):e.createCommentVNode("",!0)]}),default:e.withCtx(()=>{var xe,Pe,ve,Ge;return[e.createElementVNode("div",{class:e.normalizeClass(["grid gap-4 py-4 px-1 relative",e.unref(fe)(((Pe=(xe=Q.value)==null?void 0:xe.dialogConfig)==null?void 0:Pe.layoutColumns)||((ve=Q.value)==null?void 0:ve.layoutColumns))])},[T.value?(e.openBlock(),e.createElementBlock("div",QM,[e.createElementVNode("div",ZM,[$[19]||($[19]=e.createElementVNode("div",{class:"w-8 h-8 border-4 border-primary border-t-transparent rounded-full animate-spin"},null,-1)),e.createElementVNode("span",eT,e.toDisplayString(e.unref(d)==="id"?"Memuat data...":"Loading data..."),1)])])):e.createCommentVNode("",!0),t.dummyMode&&((Ge=Q.value)!=null&&Ge.route)?(e.openBlock(),e.createElementBlock("div",tT,[e.createElementVNode("div",oT,[e.createVNode(e.unref(be.Search),{class:"w-4 h-4"})]),e.createElementVNode("div",nT,[e.createElementVNode("span",rT,e.toDisplayString(e.unref(d)==="id"?"Info Navigasi":"Navigation Info"),1),e.createElementVNode("p",aT,e.toDisplayString(e.unref(d)==="id"?`Aksi ini akan mengarah ke rute: ${Q.value.route}`:`This action will navigate
148
148
  to:
149
- ${Q.value.route}`),1)])])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(oe.value,(Ue,ut)=>{var et,Ct,We,Re,it,yt,ao;return e.openBlock(),e.createElementBlock(e.Fragment,{key:ut},[!Ue.isHidden&&!e.unref(we)(Ue)&&e.unref(ke)(Ue)&&!(t.dummyMode&&((et=Q.value)!=null&&et.route))?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(me)(Ue,((We=(Ct=Q.value)==null?void 0:Ct.dialogConfig)==null?void 0:We.layoutColumns)||((Re=Q.value)==null?void 0:Re.layoutColumns)))},[e.createElementVNode("div",sT,[e.createVNode(Fn,{class:"flex-1 w-full",field:B3(Ue),"model-value":z[Ue.model],"form-data":z,required:e.unref(he)(Ue),disabled:e.unref(Ee)(Ue),readonly:e.unref(Be)(Ue),options:e.unref(se)(Ue),"dynamic-labels":e.unref(De)(Ue),"dynamic-length":e.unref(te)(Ue),"dummy-mode":t.dummyMode,"onUpdate:modelValue":gs=>z[Ue.model]=gs},null,8,["field","model-value","form-data","required","disabled","readonly","options","dynamic-labels","dynamic-length","dummy-mode","onUpdate:modelValue"]),Ue.isCopyable||(it=Ue.props)!=null&&it.isCopyable||((yt=Q.value)==null?void 0:yt.action)==="showToken"||((ao=Q.value)==null?void 0:ao.action)==="copyToken"?(e.openBlock(),e.createBlock(at,{key:0,icon:"Copy",variant:"outline",class:"h-10 w-10 p-0 flex-shrink-0",tooltip:"Salin",onClick:gs=>W3(Ue.model)},null,8,["onClick"])):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0)],64)}),128))],2)]}),_:1},8,["modelValue","title","description","size"])])}}});function iT(){const t=e.reactive({}),o=e.reactive({}),n=e.reactive({}),r=e.reactive({}),a=e.ref(!1),s=e.reactive({}),i=e.reactive({}),l=e.reactive({}),c=e.ref(!1),d=e.ref(null),u=e.reactive({}),f=e.reactive({}),p=e.reactive({}),m=e.reactive({}),h=e.reactive({}),g=e.reactive({}),k=e.reactive({visible:!1,title:"",message:"",action:null,showCancel:!0,okText:"",cancelText:"",isBlocking:!1,redirectUrl:""});return{formData:t,tableRowFormData:o,errors:n,touched:r,isSubmitted:a,fieldErrors:s,wizardState:i,inlineState:l,isSubmitting:c,internalSchema:d,rawItemsCache:u,revealedSectionIds:f,revealedFieldModels:p,wizardResponses:m,sectionLoading:h,fieldLoading:g,confirmDialog:k}}function lT({formData:t,locale:o,errors:n,fieldMap:r,activeSchema:a,isSectionVisible:s,isFieldVisible:i,isFieldRequired:l,resolveFieldLength:c}){const d=(f,p,m)=>{const h=f.props||f.propsFieldCustom||f.propsFieldGlobal||{},g=p==null?"":String(p).trim();if(l(f,m)&&g==="")return o.value==="kr"||o.value==="ko"?"필수 입력 항목입니다":o.value==="id"?"Wajib diisi":"Required";if(g==="")return null;const k=c==null?void 0:c(f,m),b=Number((k==null?void 0:k.minLength)??h.minLength),E=Number((k==null?void 0:k.maxLength)??h.maxLength);if(!Number.isNaN(b)&&b>0&&g.length<b)return o.value==="kr"||o.value==="ko"?`최소 ${b}자여야 합니다`:o.value==="id"?`Minimal ${b} karakter`:`Minimum ${b} characters`;if(!Number.isNaN(E)&&E>0&&g.length>E)return o.value==="kr"||o.value==="ko"?`최대 ${E}자여야 합니다`:o.value==="id"?`Maksimal ${E} karakter`:`Maximum ${E} characters`;if(h.regex)try{if(!new RegExp(h.regex).test(g))return h.regexMessage||(o.value==="kr"||o.value==="ko"?"올바르지 않은 형식입니다":o.value==="id"?"Format tidak valid":"Invalid format")}catch{console.warn(`[DynamicForm] Invalid validation regex for field ${f.model}:`,h.regex)}return null};return{validateField:d,validateAll:()=>{var m,h;let f=!0;const p=(g,k)=>{var C;if(!s(g))return;const b=je(g)||k;((g.propsForm||g.propsFormStep||g.propsTable||g.propsTableStep||g.props||{}).fields||g.fields||[]).forEach(V=>{if(V.model&&i(V)){const N=b?`${b}.${V.model}`:V.model,w=r.value.paths.get(N),y=w?Fe(t,w.path):t[V.model],_=d(V,y);_&&(n[N]=_,f=!1)}}),(g.type==="WIZARD"||g.isWizard)&&(((C=g.propsWizard)==null?void 0:C.propsSteps)||[]).forEach(N=>{const w=N.key||N.id;N.sectionsWizard&&(Array.isArray(N.sectionsWizard)?N.sectionsWizard:[N.sectionsWizard]).forEach(_=>p(_,w))})};return(h=(m=a.value)==null?void 0:m.sections)==null||h.forEach(g=>p(g)),f}}}function cT({formData:t,activeSchema:o,isSectionVisible:n,isFieldVisible:r,isFieldHidden:a,getWizardTabs:s,fieldMap:i,rawItemsCache:l}){const c=()=>{var g;const m=[],h=k=>{k==null||k.forEach(b=>{if(b.type==="TABLE"||b.propsTable||b.propsTableStep||b.propsDataTableWizard){const C=b.propsTable||b.propsTableStep||b.propsDataTableWizard||b,V=C.modelKey||C.modelDatatable||je(b);V&&m.push({key:V,subFields:(C.headers||[]).map(N=>N.key)})}((b.propsForm||b.propsFormStep||b.propsTable||b.propsTableStep||b.propsDataTableWizard||b.props||{}).fields||b.fields||[]).forEach(C=>{var N,w;const V=["DCodeDynamicUploadList","DCodeUploadList","DCodeDataTable","DCodeDynamicFormList"].includes(C.component);if(C.model&&((N=C.props)!=null&&N.multiple||((w=C.props)==null?void 0:w.valueType)==="array"||V)){const y=C.component.includes("Upload")?["id","filename","document","typeDocument","idDocumentType"]:["id"];m.push({key:C.model,subFields:y})}}),b.type==="WIZARD"&&s(b).forEach(C=>h(C.sections))})};return h((g=o.value)==null?void 0:g.sections),m};return{getCleanPayload:()=>{var g;if(!((g=o.value)!=null&&g.sections))return{...t};const m={},h=new Set;return o.value.sections.forEach(k=>{if(!n(k))return;const E=je(k),x=(y,_)=>{if(y.model&&(r(y,void 0,_)||a(y,void 0,_))){const D=_?`${_}.${y.model}`:y.model;let T=Fe(t,D)??t[y.model]??_o(t,y.model);if(["DCodeAutoComplete","DCodeSelect","DCodeRadio","DCodeRadioCustom"].includes(y.component)&&T!==null&&T!==void 0&&typeof T!="object"){const P=l[y.key];if(Array.isArray(P)){const H=P.find(Z=>String(Z.code)===String(T)||String(Z.id)===String(T)||String(Z.name)===String(T));if(H){const U=(y.props||y.propsFieldCustom||y.propsFieldGlobal||{}).itemValue||"id";T=H[U]??H.id??H.code??T}}}Qe(m,D,So(T)??null),h.add(y.model)}},C=k.propsForm||k.propsFormStep||k.propsTable||k.propsTableStep||k.propsDataTableWizard||k.props||{},V=k.type==="WIZARD";(C.fields||k.fields||[]).forEach(y=>x(y,V?E||C.key:void 0)),k.type==="WIZARD"&&s(k).forEach(y=>y.sections.forEach(_=>{const D=je(_),T=D?`${y.key}.${D}`:y.key;if(_.type==="TABLE"||_.propsTable||_.propsTableStep||_.propsDataTableWizard){const P=_.propsTable||_.propsTableStep||_.propsDataTableWizard||_,H=P.modelKey||P.modelDatatable||D;if(H){const Z=`${y.key}.${H}`,U=Fe(t,Z)||Fe(t,H)||[];if(Array.isArray(U)){const B=P.headers||[],A=U.filter(F=>Vr(F)?!1:B.length>0?B.some(I=>{if(I.key==="no"||I.key==="action")return!1;let v=Fe(F,I.key);if(v!=null&&v!=="")return!0;const L=I.key.includes(".")?I.key.split(".").pop():null;return!!(L&&(v=Fe(F,L),v!=null&&v!==""))}):!0);Qe(m,Z,So(A)),console.log(`[SUBMIT][WIZARD-TABLE][${Z}] Payload before sanitize:`,U.length,"after:",A.length)}else Qe(m,Z,[]);h.add(Z)}}else((_.propsForm||_.propsFormStep||_.propsTable||_.propsTableStep||_.propsDataTableWizard||_.props||{}).fields||_.fields||[]).forEach(Z=>x(Z,T))}));const N=k.propsTable||k.propsTableStep||k.propsDataTableWizard,w=(N==null?void 0:N.modelKey)||(N==null?void 0:N.modelDatatable)||E;if(w&&(k.type==="TABLE"||k.propsTable||k.propsTableStep||k.propsDataTableWizard)){const y=Fe(t,w)||[];if(Array.isArray(y)){const _=(N==null?void 0:N.headers)||[],D=y.filter(T=>Vr(T)?!1:_.length>0?_.some(M=>{if(M.key==="no"||M.key==="action")return!1;let P=Fe(T,M.key);if(P!=null&&P!=="")return!0;const H=M.key.includes(".")?M.key.split(".").pop():null;return!!(H&&(P=Fe(T,H),P!=null&&P!==""))}):!0);m[w]=So(D),console.log(`[SUBMIT][${w}] Payload before sanitize:`,y.length,"after:",D.length)}else m[w]=[];h.add(w)}}),["id","_id"].forEach(k=>{t[k]!==void 0&&!h.has(k)&&(m[k]=So(t[k]))}),m},applyFieldMapping:(m,h)=>{const g={},k=(b,E)=>{var x,C;if(b==null)return b;if(typeof b=="object")return b._isLogicValue?b.id:b.id??b.code??b.value??b;if(E&&l&&(i!=null&&i.value)){const V=(C=(x=i.value.models)==null?void 0:x.get(E))==null?void 0:C[0],N=V==null?void 0:V.field;if(N){const w=l[N.key];if(Array.isArray(w)){const y=w.find(_=>String(_.code)===String(b)||String(_.id)===String(b));if(y&&y.id!==void 0)return y.id}}}return Array.isArray(b)&&b.length===1?k(b[0],E):b};return Object.entries(h).forEach(([b,E])=>{if(typeof E=="string"){const x=Fe(m,b)??m[b]??Fe(t,b)??t[b]??_o(m,b)??_o(t,b);x!==void 0&&(g[E]=k(x,b))}else if(Array.isArray(E)&&E.length>0){const x=E[0];let C=Fe(m,b)??m[b]??Fe(t,b)??t[b]??_o(m,b)??_o(t,b);if(!Array.isArray(C)||C.length===0){const V=typeof x=="string"?[x]:Object.keys(x),N=c().find(w=>V.some(y=>w.subFields.includes(y)));if(N){const w=Fe(m,N.key)??m[N.key]??Fe(t,N.key)??t[N.key]??_o(m,N.key)??_o(t,N.key);Array.isArray(w)&&w.length>0&&(C=w)}}if(Array.isArray(C)){if(typeof x=="string")g[b]=C.map(V=>{const w=So(V)[x]??V[x]??null;return k(w,x)}).filter(V=>V!=null);else if(typeof x=="object"&&x!==null){const V=Object.entries(x);if(V.length===1&&typeof V[0][1]=="string"){const[w,y]=V[0];g[y]=C.map(_=>{const T=So(_)[w]??_[w]??null;return k(T,w)}).filter(_=>_!=null)}else g[b]=C.map(w=>{const y={},_=So(w);return V.forEach(([D,T])=>{const M=_[D]??_[T]??w[D]??null;y[T]=k(M,D)}),y}).filter(w=>!Vr(w))}}}}),g},handleResponseMapping:(m,h,g)=>{if(!m||!h)return;const k=m,b=(m==null?void 0:m.data)!==void 0?m.data:m,E=Array.isArray(b)?b[0]:b;Object.entries(h).forEach(([x,C])=>{if(typeof x!="string"||typeof C!="string")return;const V=(w,y)=>{if(!(!y||!w||typeof y!="string")){if(y in w)return w[y];try{return y.split(".").reduce((_,D)=>_&&_[D],w)}catch{return}}},N=V(k,x)??V(k,C)??(b&&typeof b=="object"?V(b,x)??V(b,C):void 0)??(E&&typeof E=="object"?V(E,x)??V(E,C):void 0);if(N!==void 0){const w=g&&!C.includes(".")?`${g}.${C}`:C;Qe(t,w,N)}})},handleClearMapping:(m,h)=>{m&&Object.values(m).forEach(g=>{if(typeof g!="string")return;const k=h&&!g.includes(".")?`${h}.${g}`:g;Qe(t,k,null)})},getFormArrayModels:c}}function dT({state:t,props:o,emit:n,apiUrl:r,router:a,locale:s,mapping:i,validation:l,fieldMap:c,activeSchema:d,resolvedBaseUrl:u,resolveKeyParams:f}){const p=x=>{if(o.dummyMode)return!0;if(x.permission&&o.checkPermission){let C=o.checkPermission(x.permission);if(!C&&x.permission!==x.permission.toLowerCase()&&(C=o.checkPermission(x.permission.toLowerCase())),!C)return!1}return x.permission==="CREATE"?!o.isEditMode:x.permission==="UPDATE"?o.isEditMode:!0},m=x=>{var C,V,N,w,y,_;x.requireConfirm?(t.confirmDialog.title=s.value==="kr"||s.value==="ko"?((C=x.propCustomMessage)==null?void 0:C.titleKR)||"확인":s.value==="id"?((V=x.propCustomMessage)==null?void 0:V.titleID)||"Konfirmasi":((N=x.propCustomMessage)==null?void 0:N.titleEN)||"Confirm",t.confirmDialog.message=s.value==="kr"||s.value==="ko"?((w=x.propCustomMessage)==null?void 0:w.messageKR)||"계속하시겠습니까?":s.value==="id"?((y=x.propCustomMessage)==null?void 0:y.messageID)||"Lanjutkan?":((_=x.propCustomMessage)==null?void 0:_.messageEN)||"Continue?",t.confirmDialog.action=x,t.confirmDialog.visible=!0):g(x)},h=()=>{const x=t.confirmDialog.redirectUrl;if(t.confirmDialog.visible=!1,t.confirmDialog.action&&(typeof t.confirmDialog.action=="function"?t.confirmDialog.action():typeof t.confirmDialog.action.callback=="function"?t.confirmDialog.action.callback():g(t.confirmDialog.action)),x&&a){const C=x.startsWith("/")?x:"/"+x;a.push(C)}t.confirmDialog.redirectUrl="",t.confirmDialog.isBlocking=!1},g=async x=>{var _,D,T;const C=x.propsActionGlobal||x.props||{},V=i.getCleanPayload(),N=C.fieldMapping||x.fieldMapping||{},w=i.applyFieldMapping(V,N);n("action",x,w);const y=C.endpointDialogActionSave||x.endpointDialogActionSave||C.endpointDialogAction||x.endpointDialogAction||C.endpointAction||x.endpointAction||C.endpointPropAction||x.endpointPropAction||C.endpoint||x.endpoint;if((C.type==="SUBMIT"||C.type==="ACTION")&&(y!=null&&y.apiUrl)){if(o.dummyMode){Le.info(s.value==="kr"||s.value==="ko"?"제출 작업 시뮬레이션 (더미 모드)":s.value==="id"?"Simulasi aksi Submit (Dummy Mode)":"Action Submit simulated (Dummy Mode)",{autoClose:2e3}),n("success",{dummy:!0});return}const M=Le.loading(s.value==="kr"||s.value==="ko"?"처리 중...":s.value==="id"?"Memproses...":"Processing..."),P=Bo(y.apiUrl,u.value);try{let H={...w};if(f&&Array.isArray(y.keyParam)){const I=f(y.keyParam);console.log("[SUBMIT] Resolved keyParams for action:",I),Object.assign(H,I)}const Z=y.responseType==="blob"||y.responseType==="arraybuffer"||y.accept&&!y.accept.includes("json")||y.apiUrl&&(y.apiUrl.includes("/export")||y.apiUrl.includes("/download"))||x.actionType==="EXPORT"||x.permission==="EXPORT"||C.type==="EXPORT"||C.permission==="EXPORT",U={...y.config};y.accept&&(U.headers||(U.headers={}),U.headers.Accept=y.accept,U.headers.accept=y.accept),Z&&(U.responseType=y.responseType||"blob"),console.log("[SUBMIT] Starting API call to:",P,"with payload/params:",H,"and config:",U);const B=await r(P,y.apiMethod||"POST",H,U);if(console.log("[SUBMIT] API response received:",B),Z&&(B instanceof Blob||((_=B==null?void 0:B.constructor)==null?void 0:_.name)==="Blob"||(B==null?void 0:B.size)!==void 0)){const I=B instanceof Blob?B:new Blob([B],{type:y.accept||"application/octet-stream"});if(I.type==="application/json"){const q=new FileReader;q.onload=()=>{try{const ae=JSON.parse(q.result).message||(s.value==="id"?"Gagal mengunduh file":"Failed to download file");Le.update(M,{render:ae,type:"error",isLoading:!1,autoClose:5e3})}catch{const ae=window.URL.createObjectURL(I),j=document.createElement("a");j.href=ae;const J=`${x.label||C.labelID||C.labelEN||"Export"}_${new Date().toISOString().slice(0,10)}.pdf`;j.setAttribute("download",J),document.body.appendChild(j),j.click(),j.remove(),window.URL.revokeObjectURL(ae),Le.update(M,{render:s.value==="id"?"File berhasil diunduh!":"File downloaded successfully!",type:"success",isLoading:!1,autoClose:2e3})}},q.readAsText(I),t.isSubmitting.value=!1;return}const v=window.URL.createObjectURL(I),L=document.createElement("a");L.href=v;let R="bin";const O=(y.accept||"").toLowerCase(),W=(y.apiUrl||"").toLowerCase();O.includes("pdf")?R="pdf":O.includes("excel")||O.includes("sheet")||O.includes("spreadsheet")||O.includes("xlsx")?R="xlsx":O.includes("csv")?R="csv":O.includes("zip")?R="zip":W.includes("pdf")?R="pdf":W.includes("excel")||W.includes("xlsx")?R="xlsx":W.includes("csv")?R="csv":W.includes("zip")&&(R="zip");const ne=`${x.label||C.labelID||C.labelEN||"Export"}_${new Date().toISOString().slice(0,10)}.${R}`;L.setAttribute("download",ne),document.body.appendChild(L),L.click(),L.remove(),window.URL.revokeObjectURL(v),Le.update(M,{render:s.value==="id"?"File berhasil diunduh!":"File downloaded successfully!",type:"success",isLoading:!1,autoClose:2e3}),t.isSubmitting.value=!1,n("success",B);return}const A=(B==null?void 0:B.status)===!0;console.log("[SUBMIT] response.status:",B==null?void 0:B.status),console.log("[SUBMIT] isSuccess evaluated as:",A);const F=(B==null?void 0:B.message)||(A?s.value==="kr"||s.value==="ko"?"성공":s.value==="id"?"Sukses":"Success":s.value==="kr"||s.value==="ko"?"실패":s.value==="id"?"Gagal":"Failed");if(Le.update(M,{render:F,type:A?"success":"error",isLoading:!1,autoClose:A?2e3:5e3}),A){if(console.log("[SUBMIT] Success condition passed"),(C.fieldMapping||x.fieldMapping)&&(console.log("[SUBMIT] Applying field mapping for response"),i.handleResponseMapping(B,C.fieldMapping||x.fieldMapping)),n("success",B),a){const I=C.routeBack;console.log("[SUBMIT] routeBack value:",I);const v=L=>{if(!L){console.log("[SUBMIT] No path provided for navigation");return}const R=L.startsWith("/")?L:"/"+L;console.log("[SUBMIT] Triggering router.push to:",R),setTimeout(()=>{a.push(R).then(()=>{console.log("[SUBMIT] Router push success")}).catch(O=>{console.error("[SUBMIT] Router push failed:",O)})},150)};if(I)v(I);else{console.log("[SUBMIT] routeBack missing, attempting directory-up fallback");const O=((((D=a.currentRoute)==null?void 0:D.value)||a.currentRoute||{}).path||"/").split("/").filter(Boolean);O.length>1?(O.pop(),v("/"+O.join("/"))):v("/")}}try{let I=(B==null?void 0:B.data)||(B==null?void 0:B.payload)||B;if(Array.isArray(I)&&I.length>0&&(I=I[0]),I&&typeof I=="object"&&a){const L={...(((T=a.currentRoute)==null?void 0:T.value)||a.currentRoute||{}).query||{}};let R=!1;const O=Nr(I),W=["status","success","code","message","error","errorCode","errorMessage"];if(Object.entries(O).forEach(([K,ne])=>{!W.includes(K)&&ne!==null&&ne!==void 0&&(typeof ne=="string"||typeof ne=="number"||typeof ne=="boolean")&&L[K]!==String(ne)&&(L[K]=String(ne),R=!0)}),R&&typeof window<"u"&&window.history){const K=new URL(window.location.href);Object.entries(L).forEach(([ne,q])=>{q!=null&&K.searchParams.set(ne,String(q))}),window.history.replaceState(window.history.state,"",K.toString())}}}catch(I){console.warn("[SUBMIT] Failed to update query params:",I)}}else console.log("[SUBMIT] Success condition failed (status is not true). Navigation aborted."),n("error",B)}catch(H){console.error("[SUBMIT] Critical error during action execution. Navigation aborted.",H),Le.error(H.message||"Action failed"),n("error",H)}finally{t.isSubmitting.value=!1}return}else if(C.type==="SUBMIT"){if(o.dummyMode){Le.info(s.value==="kr"||s.value==="ko"?"제출 작업 시뮬레이션 (더미 모드)":s.value==="id"?"Simulasi aksi Submit (Dummy Mode)":"Action Submit simulated (Dummy Mode)",{autoClose:2e3});return}n("submit",w)}C.keyRedirect&&C.route&&a&&(console.log("[SUBMIT] Triggering synchronous keyRedirect navigation to:",C.route),a.push(C.route))};return{isActionVisible:p,handleGlobalButtonClick:m,confirmAction:h,performAction:g,handleSubmit:async()=>{var x,C;if(o.dummyMode){Le.info(s.value==="kr"||s.value==="ko"?"제출 작업 시뮬레이션 (더미 모드)":s.value==="id"?"Simulasi aksi Submit (Dummy Mode)":"Action Submit simulated (Dummy Mode)",{autoClose:2e3});return}if(t.isSubmitted.value=!0,!!l.validateAll()){t.isSubmitting.value=!0;try{const V=i.getCleanPayload(),N=(((x=d.value)==null?void 0:x.actions)||[]).find(y=>{var _;return y.type==="SUBMIT"||y.key==="SUBMIT"||((_=y.propsActionGlobal)==null?void 0:_.type)==="SUBMIT"}),w=(N==null?void 0:N.fieldMapping)||((C=N==null?void 0:N.propsActionGlobal)==null?void 0:C.fieldMapping);n("submit",w?i.applyFieldMapping(V,w):V)}finally{t.isSubmitting.value=!1}}},handleCancel:()=>n("cancel"),handleFieldUpdate:(x,C,V)=>{var T;let N=x;const w=c.value.models.get(x);w&&w.length>0&&(N=(V&&w.find(P=>P.path.startsWith(`${V}.`))||w[0]).path);const y=Fe(t.formData,N),_=M=>M==null||M===""||Array.isArray(M)&&M.length===0?null:M;JSON.stringify(_(C))!==JSON.stringify(_(y))&&(t.touched[N]=!0),V?Qe(t.formData,N,C):t.formData[x]=C;const D=(T=c.value.paths.get(N))==null?void 0:T.field;if(D){const M=l.validateField(D,C);M?t.errors[N]=M:delete t.errors[N]}}}}function uT(t){const{formData:o,emit:n,mapping:r,validation:a,locale:s,logic:i,state:l,activeSchema:c,prefetchFieldItems:d,triggerFetchRule:u}=t,f=e.ref(!1),p=e.ref(""),m=e.ref("Plus"),h=e.ref([]),g=e.ref("md"),k=(l==null?void 0:l.tableRowFormData)||e.reactive({});console.log("[useFormTable][DEBUG] Init. State passed:",!!l,"Identity Match:",k===(l==null?void 0:l.tableRowFormData)),console.log("[useFormTable][DEBUG] tableRowFormData keys:",Object.keys(k));const b=e.reactive({}),E=e.ref(""),x=e.ref(null),C=e.ref(!1),V=e.ref(null),N=e.ref(!1),w=new Map,y=()=>{!i||!h.value.length||h.value.forEach(v=>{var ae,j,z,J;const L=v.model;if(!L)return;const R=v.key||L,O=L,W={visibleRule:(ae=v.logic)==null?void 0:ae.visibleRule,disabledRule:(j=v.logic)==null?void 0:j.disabledRule,optionsFilterRule:(z=v.logic)==null?void 0:z.optionsFilterRule,lengthRule:(J=v.logic)==null?void 0:J.lengthRule},K={},ne=v.props||v.propsFieldCustom||v.propsFieldGlobal||{},q=ne.endpoint||ne.endpointReference||ne.endpointComponent||ne.endpointPropAction;if(Object.entries(W).forEach(([le,ye])=>{if(!ye)return;let oe;le==="visibleRule"?oe=i.isFieldVisible(v,k):le==="disabledRule"?oe=i.isFieldDisabled(v,k):le==="optionsFilterRule"?oe=i.getFilteredItems(v,k):le==="lengthRule"&&(oe=i.resolveFieldLength(v,k));const ge=JSON.stringify(oe);K[le]=ge;const ce=w.get(R);(ce==null?void 0:ce[le])!==void 0&&ce[le]!==ge&&(le==="visibleRule"&&oe===!1||le==="disabledRule"&&oe===!0||le==="optionsFilterRule"||le==="lengthRule")&&(k[O]=null)}),Array.isArray(q==null?void 0:q.keyParam)&&q.keyParam.forEach(le=>{var de;let ye,oe;if(typeof le=="string")ye=k[le],oe=`kp-${le}`;else if(typeof le=="object"&&le!==null)ye=Object.values(le).map(he=>k[he]),oe=`kp-${JSON.stringify(le)}`;else return;const ge=JSON.stringify(ye);K[oe]=ge;const ce=w.get(R);if(ce==null||ce[oe],ge!==(ce==null?void 0:ce[oe])){d&&d(v,!0,O,k),u&&((de=v.props)!=null&&de.fetchRule)&&u(v,v.props.fetchRule,O,k);const ke=(ce==null?void 0:ce[oe])==="null"||(ce==null?void 0:ce[oe])==="undefined"||!ce,he=ge==="null"||ge==="undefined",Ee=typeof le=="string"&&(le===v.key||le===v.model);(!ke||he)&&!Ee&&(k[O]=null)}}),w.set(R,K),!i.isFieldVisible(v,k)){const le=k[O];le!=null&&le!==""&&(k[O]=null)}})},_=()=>{!i||!h.value.length||(y(),h.value.forEach(v=>{var K,ne,q;const L=v.model;if(!L)return;const R=i.resolveDefaultValue(v,k);if(R!=null){const Q=k[L],j=(v.props||v.propsFieldCustom||v.propsFieldGlobal||{}).returnObject||((K=v.logic)==null?void 0:K.returnObject);(Q==null||Q===""||j&&(typeof Q=="string"||typeof Q=="number")&&(typeof R=="object"&&R!==null))&&(k[L]=R)}const O=v.props||v.propsFieldCustom||v.propsFieldGlobal||{},W=((ne=v.logic)==null?void 0:ne.autoSelect)||O.autoSelect||"single";if(W!=="none"&&(l!=null&&l.rawItemsCache)){const Q=l.rawItemsCache[v.key]||[];if(Q.length>0){const ae=k[L];if(ae==null||ae===""){const j=O.returnObject||((q=v.logic)==null?void 0:q.returnObject),z=Q[0];if(W==="single"&&Q.length===1){const J=j?z:z.id??z.value??z.code;k[L]=J}else if(W==="first"){const J=j?z:z.id??z.value??z.code;k[L]=J}}}}}))};e.watch(()=>({...l==null?void 0:l.rawItemsCache}),()=>{f.value&&_()},{deep:!0});const D=v=>{var L;return!(v!=null&&v.apiUrl)&&!((L=v==null?void 0:v.endpointTable)!=null&&L.apiUrl)},T=v=>{if(!v)return!1;const L=(v.key||"").toLowerCase(),R=(v.permission||"").toUpperCase();return L==="detail"||L.includes("view")||R==="VIEW"},M=v=>{var W,K;const L=v.modelKey||v.modelDatatable,R=v.key||v.id,O=(c==null?void 0:c.value)||((W=l==null?void 0:l.internalSchema)==null?void 0:W.value)||((K=i==null?void 0:i.activeSchema)==null?void 0:K.value);if(O!=null&&O.sections&&R){const ne=(Q,ae)=>{var j;for(const z of Q)if(z.type==="WIZARD"&&((j=z.propsWizard)!=null&&j.propsSteps))for(const J of z.propsWizard.propsSteps){const le=Array.isArray(J.sectionsWizard)?J.sectionsWizard:J.sectionsWizard?[J.sectionsWizard]:[];if(le.some(ge=>{var de,ke,he,Ee;return(ge.key||ge.id||((de=ge.propsTable)==null?void 0:de.key)||((ke=ge.propsTableStep)==null?void 0:ke.key)||((he=ge.propsForm)==null?void 0:he.key)||((Ee=ge.propsFormStep)==null?void 0:Ee.key))===ae}))return J.modelKey||J.key||null;const oe=ne(le,ae);if(oe)return oe}return null},q=ne(O.sections,R);if(q){const Q=`${q}.${L||R}`;return console.log(`[resolveTableDataKey][WIZARD-MATCH] Resolved nested path: "${Q}" for section: "${R}"`),Q}}return L&&Fe(o,L)!==void 0?L:R&&Fe(o,R)!==void 0?R:Fe(o,"data")!==void 0?"data":L||R},P=v=>{if(!v)return[];const L=M(v),R=Fe(o,L);if(!Array.isArray(R))return[];const O=v.headers||[],W=R.filter(K=>Vr(K)?!1:O.length===0?!0:O.some(q=>{var z,J,le;if(q.key==="no"||q.key==="action")return!1;let Q=Fe(K,q.key);if(Q!=null&&Q!=="")return!0;const ae=q.key.includes(".")?q.key.split(".").pop():null;if(ae&&(Q=Fe(K,ae),Q!=null&&Q!==""))return!0;const j=(le=(J=(z=q.custom)==null?void 0:z.propsCustom)==null?void 0:J[0])==null?void 0:le.value;return!!(j&&j!==q.key&&j!==ae&&(Q=Fe(K,j),Q!=null&&Q!==""))}));return R.length>0&&(console.log(`[TABLE][${L}] Raw rows:`,R.length,"Filtered rows:",W.length),R.length!==W.length&&console.log(`[TABLE][${L}] Filtered out ${R.length-W.length} rows (empty or mismatch).`)),W},H=v=>{var R,O;if((R=v.fields)!=null&&R.length)return v.fields;const L=(v.actionTableGlobal||[]).find(W=>W.permission==="CREATE"||(W.key||"").toLowerCase().includes("add"));return(O=L==null?void 0:L.fieldActionGlobal)!=null&&O.length?L.fieldActionGlobal:(v.headers||[]).filter(W=>W.key&&W.key!=="no").map(W=>({key:W.key,model:W.key,component:"DCodeTextField"}))},Z=(v,L)=>{V.value={propsTable:v,row:L},N.value=!0},U=()=>{if(!V.value)return;const{propsTable:v,row:L}=V.value;N.value=!1;const R=M(v),O=Fe(o,R);if(Array.isArray(O)){const W=O.indexOf(L);if(W!==-1)O.splice(W,1);else{const K=JSON.stringify(L,(q,Q)=>["no","_index"].includes(q)?void 0:Q),ne=O.findIndex(q=>JSON.stringify(q,(Q,ae)=>["no","_index"].includes(Q)?void 0:ae)===K);ne!==-1&&O.splice(ne,1)}Qe(o,R,[...O]),n("update:model",r.getCleanPayload())}},B=(v,L)=>{console.log(`[useFormTable][DEBUG] Updating ${v} with:`,L,"Target Object Keys:",Object.keys(k)),k[v]=L,_();const R=h.value.find(O=>O.model===v);if(R){const O=a.validateField(R,L);O?b[v]=O:delete b[v]}},A=(v,L,R)=>{var ne,q;const O="[FORM-TABLE-TRACER]";console.log(`${O} Starting openTableRowDialog`,{sectionKey:v.modelKey||v.key||v.id,action:L.key||L.permission,hasRowData:!!R}),R&&console.log(`${O} Raw Row Data Received:`,JSON.parse(JSON.stringify(R))),E.value=M(v),console.log(`${O} Resolved activeTableKey: "${E.value}"`),C.value=T(L),x.value=null,p.value=s.value==="id"?L.labelID||"Tambah Data":L.labelEN||"Add Data",m.value=L.icon||"Plus";const W=(((ne=L.dialogConfig)==null?void 0:ne.layoutSize)||"md").toLowerCase();g.value=W,console.log(`[useFormTable][DEBUG] Opening Dialog with size: "${W}" (from ${(q=L.dialogConfig)==null?void 0:q.layoutSize})`);const K=L.fieldActionCustom||L.fieldActionGlobal||H(v);h.value=K,console.log(`${O} Dialog Fields Count:`,K.length),Object.keys(k).forEach(Q=>{k[Q]=null}),Object.keys(b).forEach(Q=>delete b[Q]),w.clear(),K.forEach((Q,ae)=>{const j=Q.model||Q.key;if(!j){console.warn(`${O} Field at index ${ae} is missing a model/key!`);return}let z=R?Fe(R,j):null,J="DEEP_MATCH";if(R&&z==null){const le=j.includes(".")?j.split(".").pop():null;le&&(z=Fe(R,le),z!=null&&(J=`LEAF_MATCH("${le}")`))}R&&console.log(`${O} Field "${j}" [${J}] -> Resolved Value:`,z),k[j]=z??null}),console.log(`${O} Final tableRowFormData prepared:`,JSON.parse(JSON.stringify(k))),f.value=!0,setTimeout(()=>{console.log(`${O} Triggering initial scanDialogLogic...`),_()},10)};return{tableDialogOpen:f,tableDialogTitle:p,tableDialogIcon:m,tableDialogFields:h,tableRowFormData:k,tableRowErrors:b,activeTableKey:E,editingRowIndex:x,tableDialogViewOnly:C,confirmDeletePending:V,confirmDeleteOpen:N,tableDialogSize:g,isTemporaryTable:D,isActionViewOnly:T,tableRows:P,resolveTableFields:H,confirmTableDelete:Z,executeTableDelete:U,handleTableRowUpdate:B,openTableRowDialog:A,handleDataTableAction:(v,L)=>{var Q,ae,j,z,J,le,ye,oe,ge;const{action:R,row:O}=L,W=R.toLowerCase();if(L.isLocalSave||L.actionType==="CREATE"||L.actionType==="UPDATE"){const ce=L.modelDatatable||M(v);if(ce&&O&&typeof O=="object"){const de=Fe(o,ce)||[],ke=Array.isArray(de)?[...de]:[];if(L.actionType==="UPDATE"){let he=L.rowIndex!==void 0&&L.rowIndex!==null?L.rowIndex:-1;if(he===-1&&(he=L.originalRow?ke.indexOf(L.originalRow):-1),he===-1){const Ee=JSON.stringify(L.originalRow||{},(Be,we)=>["no","_index"].includes(Be)?void 0:we);he=ke.findIndex(Be=>JSON.stringify(Be,(we,De)=>["no","_index"].includes(we)?void 0:De)===Ee)}he!==-1?ke[he]={...O}:ke.push({...O})}else ke.push({...O});if(Qe(o,ce,[...ke]),l!=null&&l.formData&&Qe(l.formData,ce,[...ke]),n("update:modelValue",{...o}),n("update:model",{...o}),r!=null&&r.getCleanPayload){const he=r.getCleanPayload();n("update:modelValue",he),n("update:model",he)}}return}if(/delete|trash/i.test(R)){const ce=M(v),de=Fe(o,ce);if(Array.isArray(de)){const ke=de.indexOf(O);if(ke!==-1)de.splice(ke,1);else{const he=JSON.stringify(O,(Be,we)=>["no","_index"].includes(Be)?void 0:we),Ee=de.findIndex(Be=>JSON.stringify(Be,(we,De)=>["no","_index"].includes(we)?void 0:De)===he);Ee!==-1&&de.splice(Ee,1)}n("update:model",r.getCleanPayload())}return}let K=null;const ne=ce=>Array.isArray(ce)?ce.find(de=>{var Ee,Be,we,De;const ke=(de.key||((Ee=de.propsActionGlobal)==null?void 0:Ee.key)||((Be=de.propsActionCustom)==null?void 0:Be.key)||"").toLowerCase(),he=(de.actionType||((we=de.propsActionGlobal)==null?void 0:we.actionType)||((De=de.propsActionCustom)==null?void 0:De.actionType)||"").toLowerCase();return ke===W||he===W}):null;K=ne(v.actionTableGlobal)||ne(v.actionTableLine),!K&&Array.isArray(v.headers)&&v.headers.forEach(ce=>{var de;if(((de=ce.custom)==null?void 0:de.type)==="ACTION"){const ke=ne(ce.custom.actionCustom);ke&&(K=ke)}});const q=((K==null?void 0:K.actionType)||((Q=K==null?void 0:K.propsActionGlobal)==null?void 0:Q.actionType)||((ae=K==null?void 0:K.propsActionCustom)==null?void 0:ae.actionType)||(K==null?void 0:K.permission)||"").toLowerCase();if(q==="delete"||q==="destroy"){const ce=(K==null?void 0:K.endpoint)||((j=K==null?void 0:K.propsActionGlobal)==null?void 0:j.endpointPropAction)||((z=K==null?void 0:K.propsActionCustom)==null?void 0:z.endpointPropAction);if(!(ce!=null&&ce.apiUrl)){const de=M(v),ke=Fe(o,de);if(Array.isArray(ke)){let he=-1;if(O&&(he=ke.indexOf(O),he===-1)){const Ee=JSON.stringify(O,(Be,we)=>["no","_index"].includes(Be)?void 0:we);he=ke.findIndex(Be=>JSON.stringify(Be,(we,De)=>["no","_index"].includes(we)?void 0:De)===Ee)}he!==-1&&(ke.splice(he,1),Qe(o,de,[...ke]),n("update:model",r.getCleanPayload()))}return}}if(q==="view"||q==="detail"||/detail|view/i.test(R)){A(v,K||{key:"detail",permission:"VIEW"},O);return}if((q==="update"||q==="create"||q==="edit"||q==="add"||/edit|add|create|update/i.test(R))&&(K==null?void 0:K.openDialog)!==!1){if(q==="create"||q==="add"||/add|create/i.test(R))A(v,K||{key:"create",permission:"CREATE"});else{const de=M(v),ke=Fe(o,de);let he=Array.isArray(ke)?ke.indexOf(O):-1;if(he===-1&&Array.isArray(ke)){const Ee=JSON.stringify(O,(Be,we)=>["no","_index"].includes(Be)?void 0:we);he=ke.findIndex(Be=>JSON.stringify(Be,(we,De)=>["no","_index"].includes(we)?void 0:De)===Ee)}x.value=he!==-1?he:null,A(v,K||{key:"edit",permission:"UPDATE"},O)}return}if(O&&typeof O=="object"&&!((J=K==null?void 0:K.endpoint)!=null&&J.apiUrl)&&!((ye=(le=K==null?void 0:K.propsActionGlobal)==null?void 0:le.endpointPropAction)!=null&&ye.apiUrl)){const ce=v.modelDatatable,de=Fe(o,ce)||[],ke=Array.isArray(de)?[...de]:[],he=(oe=v.headers)==null?void 0:oe.find(De=>{var te;return((te=De.custom)==null?void 0:te.type)==="CHECKBOX"||De.keyCheckbox}),Ee=(he==null?void 0:he.keyCheckbox)||((ge=he==null?void 0:he.custom)==null?void 0:ge.keyCheckbox)||"id";let Be=-1;O[Ee]&&(Be=ke.findIndex(De=>De[Ee]===O[Ee])),Be===-1?ke.push({...O}):ke.splice(Be,1,{...O}),Qe(o,ce,ke),n("update:model",r.getCleanPayload())}},saveTableRow:()=>{console.log("[SAVE-TRACER] Starting saveTableRow",{activeTableKey:E.value,editingIndex:x.value});let L=!0;if(h.value.forEach(K=>{const ne=a.validateField(K,k[K.model]);ne&&(b[K.model]=ne,L=!1)}),!L)return;const R=E.value;if(!R)return;const O=Fe(o,R)||[],W=Array.isArray(O)?[...O]:[];x.value!==null?W.splice(x.value,1,{...k}):W.push({...k}),Qe(o,R,W),f.value=!1,n("update:model",r.getCleanPayload())}}}function fT(t){const{state:o,props:n,emit:r,logic:a,mapping:s,activeSchema:i,fieldMap:l,prefetchFieldItems:c,triggerFetchRule:d,fetchSectionData:u,router:f}=t;let p="",m=!1,h=!0;const g=new Map,k=new Map,b=new Map,E=async(w,y)=>{var Z;const _=(Z=i.value)==null?void 0:Z.sections;if(!_)return;a.applyCalculations();const D=a.getNormalizedData(w),T=(U,B,A,F)=>{const I=a.isFieldVisible(U,F,B)&&A;return g.set(U.model,I),I},M=(U,B,A,F,I)=>{var J,le,ye;const v=U.model,L=U.logic,R=U.props||U.propsFieldCustom||U.propsFieldGlobal||{},O=R.endpoint||R.endpointReference||R.endpointComponent||R.endpointPropAction,W=Array.isArray(O==null?void 0:O.keyParam);if(!L&&!W)return;const K={};if(["lengthRule","optionsFilterRule","visibleRule","disabledRule"].forEach(oe=>{const ge=L==null?void 0:L[oe];if(!ge)return;let ce;if(oe==="visibleRule")ce=a.isFieldVisible(U,F,B);else if(oe==="disabledRule")ce=a.isFieldDisabled(U,F,B);else if(oe==="requiredRule")ce=a.isFieldRequired(U,F,B);else if(oe==="lengthRule")ce=a.resolveFieldLength(U,F);else{const he=a.resolveActiveRule(ge,F,`${oe}-${v}`,B);ce=he?a.evaluateLogic(he,F,`${oe}-${v}`,B):null}const de=JSON.stringify(ce);K[oe]=de;const ke=b.get(v);(ke==null?void 0:ke[oe])!==void 0&&ke[oe]!==de&&I&&(oe==="visibleRule"&&ce===!1||oe==="disabledRule"&&ce===!0||oe==="optionsFilterRule"||oe==="lengthRule")&&Qe(o.formData,B,null)}),I&&!A){const oe=Fe(o.formData,B);oe!=null&&oe!==""&&Qe(o.formData,B,null)}Array.isArray(O==null?void 0:O.keyParam)&&O.keyParam.forEach(oe=>{let ge,ce;if(typeof oe=="string")ge=F[oe],ce=`kp-${oe}`;else if(typeof oe=="object"&&oe!==null)ge=Object.values(oe).map(Ee=>F[Ee]),ce=`kp-${JSON.stringify(oe)}`;else return;const de=JSON.stringify(ge);K[ce]=de;const ke=b.get(v);if((ke==null?void 0:ke[ce])!==void 0&&ke[ce]!==de){A&&c(U,!0,B);const he=ke[ce]==="null"||ke[ce]==="undefined",Ee=de==="null"||de==="undefined",Be=typeof oe=="string"&&(oe===U.key||oe===U.model);I&&(!he||Ee)&&!Be&&Qe(o.formData,B,null)}}),(Array.isArray(L==null?void 0:L.fetchRule)?L.fetchRule:[L==null?void 0:L.fetchRule].filter(Boolean)).forEach((oe,ge)=>{var we;const ce=`fetch-${ge}`,de=a.evaluateLogic(oe.condition,F,`FETCH-${v}`,B),ke=JSON.stringify(de);F[v],K[ce]=ke;const he=b.get(v),Ee=(he==null?void 0:he[ce])==="true";let Be=!1;de&&!Ee&&(Be=!0),de&&Array.isArray((we=oe.endpoint)==null?void 0:we.keyParam)&&oe.endpoint.keyParam.forEach(De=>{let te,se;if(typeof De=="string")te=F[De],te===void 0&&U&&U.key===De&&(te=F[U.model]),se=`kp-${De}`;else if(typeof De=="object"&&De!==null)te=Object.values(De).map(ie=>F[ie]),se=`kp-${JSON.stringify(De)}`;else return;const ue=JSON.stringify(te);(he==null?void 0:he[se])!==void 0&&he[se]!==ue&&(Be=!0),K[se]=ue}),Be&&A&&d(U,oe,B)}),(Array.isArray(L==null?void 0:L.copyRule)?L.copyRule:[L==null?void 0:L.copyRule].filter(Boolean)).forEach((oe,ge)=>{const ce=`copy-${ge}`,de=oe.condition?a.evaluateLogic(oe.condition,F,`COPY-COND-${v}`,B):!0;let ke;typeof oe.source=="string"?ke=F[oe.source]:oe.source&&typeof oe.source=="object"&&(ke=a.evaluateLogic(oe.source,F,`COPY-SRC-${v}`,B));const he=JSON.stringify({conditionMet:de,sourceVal:ke}),Ee=b.get(v);if((Ee==null?void 0:Ee[ce])!==he&&de){const we=Fe(o.formData,B);JSON.stringify(we)!==JSON.stringify(ke)&&Qe(o.formData,B,ke)}K[ce]=he});const ae=a.resolveDefaultValue(U,F,B);if(ae!=null){const oe=Fe(o.formData,B),ce=(U.props||U.propsFieldCustom||U.propsFieldGlobal||{}).returnObject||((J=U.logic)==null?void 0:J.returnObject);(oe==null||oe===""||ce&&(typeof oe=="string"||typeof oe=="number")&&(typeof ae=="object"&&ae!==null))&&Qe(o.formData,B,ae)}const j=U.props||U.propsFieldCustom||U.propsFieldGlobal||{},z=((le=U.logic)==null?void 0:le.autoSelect)||j.autoSelect||"none";if(z!=="none"){const oe=o.rawItemsCache[U.key]||[];if(oe.length>0){const ge=Fe(o.formData,B);if(ge==null||ge===""){const ce=j.returnObject||((ye=U.logic)==null?void 0:ye.returnObject),de=oe[0];if(z==="single"&&oe.length===1){const ke=ce?de:de.id??de.value??de.code;Qe(o.formData,B,ke)}else if(z==="first"){const ke=ce?de:de.id??de.value??de.code;Qe(o.formData,B,ke)}}}}b.set(v,K)},P=async(U,B,A)=>{var L;if(U.type!=="WIZARD")return;const F=((L=U.propsWizard)==null?void 0:L.propsSteps)||[],I=je(U),v=o.wizardState[I]??0;for(let R=0;R<F.length;R++){const O=F[R],ne=a.isSectionVisible(O,A)&&B&&R===v,q=O.modelKey||O.key||O.id;Array.isArray(O.sectionsWizard)?await H(O.sectionsWizard,ne,q):O.sectionsWizard&&await H([O.sectionsWizard],ne,q)}},H=async(U,B=!0,A)=>{if(U)for(const F of U){const v=a.isSectionVisible(F,w)&&B,L=je(F),R=A?L?`${A}.${L}`:A:L||"ROOT",O=A&&L?`${A}.${L}`:A,W=F.propsForm||F.propsFormStep||F.propsTable||F.propsTableStep||F.propsDataTableWizard||F.props||{};if(y&&!v){const q=W.modelDatatable||W.modelKey||(F.type==="TABLE"?F.key||F.id:null);if(q){const Q=Fe(o.formData,q);(Array.isArray(Q)?Q.length>0:Q!=null&&Q!=="")&&Qe(o.formData,q,Array.isArray(Q)?[]:null)}}const K=k.get(R);v&&(K===!1||K===void 0)?(k.set(R,!0),(W.endpointSection||W.endpointForm||W.endpointTable)&&(console.log(`[useFormWatcher][TRIGGER] Auto-fetching section: ${R}`),await u(R,F,O))):k.set(R,v);const ne=W.fields||F.fields||[];for(const q of ne){if(!q.model)continue;const Q=O?`${O}.${q.model}`:q.model,ae=T(q,Q,v,w);M(q,Q,ae,D,y)}await P(F,v,w)}};await H(_,!0)};async function x(w,y=!1){if(!(w!=null&&w.sections))return;const _=T=>{if(!T)return;const M=["visibleRule","requiredRule","disabledRule","optionsFilterRule","lengthRule","calculateRule","fetchRule","copyRule","defaultValueRule"];for(const P of M){const H=T[P],Z=Array.isArray(H)?H:[H].filter(Boolean);for(const U of Z)U.condition&&Ya(U.condition),P==="copyRule"&&U.source&&typeof U.source=="object"&&Ya(U.source)}};function D(T,M){var U,B,A,F,I,v,L,R,O,W,K,ne,q,Q,ae;const P=je(T)||M,H=T.propsForm||T.propsFormStep||T.propsTable||T.propsTableStep||T.propsDataTableWizard||T.props||{};_(T.logic||H.logic);const Z=H.fields||T.fields||[];for(const j of Z){_(j.logic);const z=j.props||j.propsFieldCustom||j.propsFieldGlobal||{},J=z.endpointReference||z.endpoint||z.endpointComponent,le=!!(J!=null&&J.apiUrl);if((U=j.logic)!=null&&U.optionsFilterRule||le){if(Array.isArray(J==null?void 0:J.keyParam)&&J.keyParam.length>0){console.log(`[initSection][SKIP] Field "${j.model}" has keyParam dependencies — deferring fetch until parent is selected.`);continue}const oe=P?`${P}.${j.model}`:j.model;c(j,!1,oe)}}if((T.type==="TABLE"||T.isDataTable)&&((B=T.propsTable)!=null&&B.modelKey||(A=T.propsTable)!=null&&A.modelDatatable||(F=T.propsTableStep)!=null&&F.modelKey||(I=T.propsTableStep)!=null&&I.modelDatatable||(v=T.propsTable)!=null&&v.key||T.key)){const j=((L=T.propsTable)==null?void 0:L.modelKey)||((R=T.propsTable)==null?void 0:R.modelDatatable)||((O=T.propsTableStep)==null?void 0:O.modelKey)||((W=T.propsTableStep)==null?void 0:W.modelDatatable)||((K=T.propsTable)==null?void 0:K.key)||T.key;j&&(o.formData[j]=o.formData[j]||[])}if(T.type==="WIZARD"){const j=je(T),z=(Q=(q=(ne=f==null?void 0:f.currentRoute)==null?void 0:ne.value)==null?void 0:q.query)==null?void 0:Q[`step_${j}`];z!==void 0&&!isNaN(Number(z))?o.wizardState[j]=Number(z):o.wizardState[j]===void 0&&(o.wizardState[j]=0);for(const J of((ae=T.propsWizard)==null?void 0:ae.propsSteps)||[]){const le=J.modelKey||J.key||J.id;_(J.logic),J.sectionsWizard&&(Array.isArray(J.sectionsWizard)?J.sectionsWizard:[J.sectionsWizard]).forEach(oe=>D(oe,le))}}}for(const T of w.sections)D(T);y||(await E(o.formData,!1),h&&(console.log("[useFormWatcher] Schema initialization complete. Exiting initialization mode."),h=!1))}async function C(w,y=!1){var _,D;if(w&&Object.keys(w).length>0&&JSON.stringify(w)!==p){m=!0;const M=p?JSON.parse(p):null;for(const[P,H]of Object.entries(w)){if(!h&&H!==null&&H!==void 0&&M&&M[P]===null)continue;if(!h&&H!==null&&H!==void 0){let U=l.value.paths.get(P)||((_=l.value.models.get(P))==null?void 0:_[0]);if(U&&a.isFieldDisabled(U.field,o.formData,U.path))continue}if(!h&&H==null&&g.get(P)===!1)continue;if(H==null&&g.get(P)===!0){const U=o.formData[P];if(U!=null)continue}const Z=o.formData[P];if(JSON.stringify(Z)!==JSON.stringify(H)){let U=l.value.paths.get(P)||((D=l.value.models.get(P))==null?void 0:D[0]);const B=(U==null?void 0:U.path)||P;Qe(o.formData,B,H)}}h&&(y||(h=!1,await E(o.formData,!1)))}}let V=null;e.watch(()=>i.value,async w=>{n.dummyMode?(V&&clearTimeout(V),V=setTimeout(async()=>{await x(w)},1e3)):await x(w)},{deep:!0,immediate:!0});let N=null;return e.watch(o.formData,async w=>{N&&clearTimeout(N),N=setTimeout(async()=>{const y=!h&&!m;m=!1,await E(w,y);const _=s.getCleanPayload()||{},D=JSON.stringify(_);D!==p&&(p=D,r("update:model",_))},50)},{deep:!0}),e.watch(()=>n.model,async w=>{await C(w)},{deep:!0}),e.watch(()=>({...o.revealedSectionIds}),async()=>{await E(o.formData,!1)},{deep:!0}),e.watch(()=>({...o.wizardState}),async()=>{console.log("[useFormWatcher] wizardState changed, triggering scan..."),await E(o.formData,!1)},{deep:!0}),e.watch(()=>({...o.rawItemsCache}),async()=>{await E(o.formData,!1)},{deep:!0}),{lastEmittedPayload:()=>p}}gp();const bl=t=>{var o,n;return!t||typeof t!="object"?!1:t instanceof File||t instanceof Blob||((o=t.constructor)==null?void 0:o.name)==="File"||((n=t.constructor)==null?void 0:n.name)==="Blob"||(typeof t.name=="string"||typeof t.fileName=="string")&&(t.size!==void 0||t.fileSize!==void 0)},bp=t=>{const o=e.toRaw(t);return o&&typeof o=="object"&&o._isLogicValue===!0&&o.value!==void 0?o.value:t};function yp(t,o){var H,Z;console.log("[useDynamicForm] Initializing with props:",{hasSchema:!!t.schema,baseUrl:t.baseUrl,idTokenCore:(H=t.schema)==null?void 0:H.idTokenCore,tokenCoresCount:((Z=t.tokenCores)==null?void 0:Z.length)||0,isEditMode:t.isEditMode});const{t:n,locale:r}=Dt.useI18n(),a=e.computed(()=>r.value),{apiUrl:s}=e.inject("externalApi"),i=t.router||Ho.useRouter(),l=iT(),c=e.computed(()=>t.schema||l.internalSchema.value),d=e.computed(()=>{var U,B,A;if(typeof((U=t.selectedTokenCore)==null?void 0:U.address)=="string")return t.selectedTokenCore.address;if(typeof t.baseUrl=="string"&&t.baseUrl!=="")return t.baseUrl;if((B=c.value)!=null&&B.idTokenCore&&Array.isArray(t.tokenCores)){const F=String(c.value.idTokenCore);t.tokenCores.length>0&&console.log("[resolvedBaseUrl] Token List Check:",t.tokenCores.map(v=>({id:v.id,address:v.address})));const I=t.tokenCores.find(v=>String(v.id)===F);if(console.log(`[resolvedBaseUrl] Matching idTokenCore: "${F}" against list of ${t.tokenCores.length} tokens.`),console.log("[resolvedBaseUrl] Found token:",I?{id:I.id,address:I.address}:"NOT FOUND"),I!=null&&I.address)return I.address}console.log("[resolvedBaseUrl] Final result: undefined. Prop baseUrl:",t.baseUrl,"SelectedToken:",(A=t.selectedTokenCore)==null?void 0:A.address)}),u=e.computed(()=>{var U;return t.permissionBase?t.permissionBase:((U=c.value)==null?void 0:U.code)||""}),f=(U,B,A)=>{if(B.model){const F=A?`${A}.${B.model}`:B.model,I={field:B,path:F};U.paths.set(F,I);const v=U.models.get(B.model)||[];v.push(I),U.models.set(B.model,v)}},p=(U,B,A)=>{const F=je(B);if(F){const I=A?`${A}.${F}`:F,v={field:B,path:I},L=U.models.get(F)||[];L.push(v),U.models.set(F,L)}},m=(U,B)=>{var I,v;const A=B.modelKey||B.key||B.id,F=Array.isArray(B.sectionsWizard)?B.sectionsWizard:[B.sectionsWizard].filter(Boolean);for(const L of F){const R=je(L),O=R?`${A}.${R}`:A;p(U,L,A);const W=L.fields||((I=L.propsForm)==null?void 0:I.fields)||((v=L.propsFormStep)==null?void 0:v.fields)||[];for(const K of W)f(U,K,O)}},h=e.computed(()=>{var A,F,I;const U={paths:new Map,models:new Map},B=(A=c.value)==null?void 0:A.sections;if(!B)return U;for(const v of B){if(!v)continue;const R=(v.propsForm||v.propsTable||v.props||{}).fields||v.fields||[];je(v),p(U,v);for(const O of R)f(U,O);if(((F=v.type)==null?void 0:F.toUpperCase())==="WIZARD"&&((I=v.propsWizard)!=null&&I.propsSteps))for(const O of v.propsWizard.propsSteps)m(U,O)}return U}),g=gl({formData:l.formData,errors:l.errors,fieldMap:h,rawItemsCache:l.rawItemsCache,revealedSectionIds:l.revealedSectionIds,activeSchema:c,locale:a,tableRowFormData:l.tableRowFormData}),k=(U,B)=>{if(!B||!(U!=null&&U.sections))return B;const A={...B};return U.sections.forEach(F=>{var v;if(F.type==="WIZARD"&&((v=F.propsWizard)!=null&&v.key)){const L=F.propsWizard.key,R=B[L];Array.isArray(R)&&R.forEach(O=>{if(!(!O||typeof O!="object"))for(const W in O){const K=O[W];if(A[W]||(A[W]={}),Array.isArray(K))K.forEach(ne=>{ne&&typeof ne=="object"&&Object.assign(A[W],ne)});else if(K&&typeof K=="object")for(const ne in K){const q=K[ne];q&&typeof q=="object"&&(A[W][ne]||(A[W][ne]={}),Object.assign(A[W][ne],q))}}})}const I=je(F);I&&B[I]&&typeof B[I]=="object"&&Object.assign(A,B[I])}),A};let b="";e.watch(()=>c.value,U=>{var I,v;if(!(U!=null&&U.payload))return;const B=U.id||U.code||((v=(I=U.sections)==null?void 0:I[0])!=null&&v.key?`sec-${U.sections[0].key}`:"default");if(!(B!==b))return;const F=k(U,U.payload);b=B,Object.entries(F).forEach(([L,R])=>{const O=l.formData[L];let W=R;Array.isArray(R)&&(W=R.filter(K=>!Vr(K)),R.length!==W.length&&console.log(`[SCHEMA-INIT][${L}] Filtered out ${R.length-W.length} empty objects from initial payload.`)),O==null?l.formData[L]=W:W!=null&&typeof W=="object"&&!Array.isArray(W)&&rl(l.formData[L],W)})},{immediate:!0,deep:!0});const E=lT({formData:l.formData,locale:a,errors:l.errors,fieldMap:h,activeSchema:c,isSectionVisible:g.isSectionVisible,isFieldVisible:g.isFieldVisible,isFieldRequired:g.isFieldRequired,resolveFieldLength:g.resolveFieldLength}),x=cT({formData:l.formData,activeSchema:c,isSectionVisible:g.isSectionVisible,isFieldVisible:g.isFieldVisible,isFieldHidden:g.isFieldHidden,getWizardTabs:g.getWizardTabs,fieldMap:h,rawItemsCache:l.rawItemsCache}),C=dT({state:l,props:t,emit:o,apiUrl:s,router:i,locale:a,mapping:x,validation:E,fieldMap:h,activeSchema:c,resolvedBaseUrl:d,resolveKeyParams:w}),V=(U,B,A)=>{const F={},I=B.propsForm||B.propsFormStep||B.propsTable||B.propsTableStep||B.props||{};(I.fields||B.fields||[]).forEach(R=>{var W;const O=R.model||((W=R.props)==null?void 0:W.model)||R.key;O&&U[O]!==void 0&&Qe(F,O,U[O])});const L=je(B);if(L&&U[L]!==void 0&&F[L]===void 0&&Qe(F,L,U[L]),B.type==="TABLE"||B.propsTable){const R=I.modelKey||I.modelDatatable;R&&U[R]!==void 0&&F[R]===void 0&&(F[R]=U[R])}if(A){const R={};return Qe(R,A,F),R}return F},N=(U,B)=>{var A;if(!U)return null;for(const F of U){const I=je(F);if(I===B||B.endsWith(`.${I}`))return F;if(F.type==="WIZARD"&&((A=F.propsWizard)!=null&&A.propsSteps)){for(const v of F.propsWizard.propsSteps)if(v.sectionsWizard){const L=Array.isArray(v.sectionsWizard)?v.sectionsWizard:[v.sectionsWizard],R=N(L,B);if(R)return R}}}return null};function w(U,B,A,F){var v,L,R;const I={};if(!Array.isArray(U)||U.length===0){const O=(R=(L=(v=i==null?void 0:i.currentRoute)==null?void 0:v.value)==null?void 0:L.params)==null?void 0:R.id;return O&&(I.id=O),I}return U.forEach(O=>{const W=q=>typeof q=="string"&&q.trim()!==""&&!isNaN(Number(q))?Number(q):q,K=q=>{var Q,ae,j;if(q.startsWith("$value(")){const z=q.match(/\$value\(([^)]+)\)/);let J=z?z[1]:q.replace("$value(","").replace(")","");return(J.startsWith("'")&&J.endsWith("'")||J.startsWith('"')&&J.endsWith('"'))&&(J=J.slice(1,-1)),J}if((Q=i==null?void 0:i.currentRoute)!=null&&Q.value){if(q.startsWith("$route.")){const z=q.replace("$route.","");return(ae=i.currentRoute.value.params)==null?void 0:ae[z]}if(q.startsWith("$query.")){const z=q.replace("$query.","");if(typeof window<"u"){const J=new URLSearchParams(window.location.search);if(J.has(z))return J.get(z)}return(j=i.currentRoute.value.query)==null?void 0:j[z]}if(q.startsWith("$value.")){const z=q.replace("$value.","");return Fe(F,z)}}},ne=q=>{if(q.startsWith("$"))return K(q);let Q=F?Fe(F,q):void 0;if(Q===void 0&&l.tableRowFormData){const ae=Object.keys(l.tableRowFormData);Q=Fe(l.tableRowFormData,q),Q!==void 0?console.log(`[resolveKeyParams] Found in state.tableRowFormData '${q}':`,Q):console.log(`[resolveKeyParams] NOT found in state.tableRowFormData '${q}'. Available keys:`,ae)}return Q===void 0?(Q=Fe(l.formData,q),console.log(`[resolveKeyParams] Raw Lookup '${q}':`,Q)):console.log(`[resolveKeyParams] Resolved '${q}':`,Q),Q==null&&A&&A.key===q&&(Q=Fe(F||l.formData,A.model)),Q};if(typeof O=="string"){let q=ne(O);if(q!=null&&q!==""){q=bp(q),typeof q=="object"&&!Array.isArray(q)&&!(q instanceof Date)&&!bl(q)&&(q=q.id??q.value??q.code??q);const Q=O.startsWith("$")&&O.split(".").pop()||O;I[Q]=W(q)}}else typeof O=="object"&&O!==null&&Object.entries(O).forEach(([q,Q])=>{let j=ne(Q);j!=null&&j!==""&&(j=bp(j),typeof j=="object"&&!Array.isArray(j)&&!(j instanceof Date)&&!bl(j)&&(j=j.id??j.value??j.code??j),I[q]=W(j))})}),Object.keys(I).length>0&&console.log(`[resolveKeyParams][DEBUG] Resolved params for ${B||"root"}:`,I),I}const y=async(U,B=!1,A,F)=>{const I=U.props||{},v=I.endpointReference||I.endpoint||I.endpointComponent;if(!(v!=null&&v.apiUrl))return;const L=U.component||"";if(!["DCodeWorkflowDiagram","DCodeStaticImage","DCodeTimelineWithIcons"].includes(L)&&!(!B&&l.rawItemsCache[U.key]))try{const O=Bo(v.apiUrl,d.value);console.log(`[prefetchFieldItems][DEBUG] Field: ${U.model}, BaseURL: ${d.value}, Final URL: ${O}`);let W={page:1,perPage:100};if(Array.isArray(v.keyParam)&&Object.assign(W,w(v.keyParam,A,U,F)),Array.isArray(v.keyParam)&&v.keyParam.length>0){const ae=w(v.keyParam,A,U,F);if(Object.keys(ae).length===0){console.log(`[prefetchFieldItems][SKIPPED] Field "${U.model}" has unresolved dependencies (keyParam). Skipping fetch until parent is selected.`);return}}console.log(`[prefetchFieldItems] Executing request for ${U.key} with params:`,W);const K={...v.config||{}};v.accept&&(K.headers||(K.headers={}),K.headers.Accept=v.accept,K.headers.accept=v.accept);const ne=await s(O,v.apiMethod||"GET",W,K),q=(ne==null?void 0:ne.data)!==void 0?ne.data:ne;let Q=[];Array.isArray(q)?Q=q:q&&(Q=[q]),l.rawItemsCache[U.key]=Q}catch(O){console.error(`[prefetchFieldItems] Error fetching items for ${U.key}:`,O),l.rawItemsCache[U.key]=[]}},_=async(U=!1)=>{var A,F,I,v,L,R,O;const B=((A=c.value)==null?void 0:A.endpointAction)||((F=c.value)==null?void 0:F.endpointPropAction);if(B!=null&&B.apiUrl&&!(!t.isEditMode&&!U)){console.log(`[fetchFormData][GLOBAL] Triggered for schema: ${(I=c.value)==null?void 0:I.code}`),l.isSubmitting.value=!0;try{const W=Bo(B.apiUrl,d.value),K=w(B.keyParam||[]);console.log("[fetchFormData][GLOBAL] Executing request with params:",K);const ne={...B.config||{}};B.accept&&(ne.headers||(ne.headers={}),ne.headers.Accept=B.accept,ne.headers.accept=B.accept);const q=await s(W,B.apiMethod||"GET",K,ne);if((q==null?void 0:q.status)===!0||(q==null?void 0:q.success)===!0||(q==null?void 0:q.code)===200||(q==null?void 0:q.code)==="00"||(q==null?void 0:q.status)==="SUCCESS"){const ae=(q==null?void 0:q.data)!==void 0?q.data:q;if(Array.isArray(ae)){const j=(L=(v=c.value)==null?void 0:v.sections)==null?void 0:L.find(J=>J.type==="TABLE"||!!J.propsTable||!!J.isDataTable),z=j?je(j):null;z?Qe(l.formData,z,ae):Object.assign(l.formData,ae[0]||{})}else ae&&typeof ae=="object"&&(Object.assign(l.formData,ae),(O=(R=c.value)==null?void 0:R.sections)==null||O.forEach(j=>{const z=je(j);z&&ae[z]!==void 0&&Qe(l.formData,z,ae[z])}))}}catch(W){console.error("[fetchFormData] Error fetching initial data:",W)}finally{l.isSubmitting.value=!1}}},D=async(U,B,A,F)=>{var v,L;const I=B.endpoint;if(I!=null&&I.apiUrl){if(l.fieldLoading[U.model]){console.log(`[triggerFetchRule][SKIPPED] Rule for ${U.model} is already in progress.`);return}if(t.dummyMode){Le.info(`Simulasi Fetch Rule (${U.model})`,{autoClose:2e3}),l.formData[`_fetchStatus_${U.model}`]=!0,Array.isArray(B.revealSections)&&B.revealSections.forEach(R=>{l.revealedSectionIds[R]=!0}),Array.isArray(B.revealFields)&&B.revealFields.forEach(R=>{l.revealedFieldModels[R]=!0});return}try{l.fieldLoading[U.model]=!0;const R=Bo(I.apiUrl,d.value),O=w(I.keyParam||[],A,U,F);if(I.keyParam&&I.keyParam.length>0&&Object.keys(O).length===0){console.warn(`[triggerFetchRule][CANCELLED] Missing required dependencies for ${U.model}. Params resolved:`,O),x.handleClearMapping(B.mapping||{},A),l.formData[`_fetchStatus_${U.model}`]=!1,Array.isArray(B.revealSections)&&B.revealSections.forEach(ae=>{l.revealedSectionIds[ae]=!1}),Array.isArray(B.revealFields)&&B.revealFields.forEach(ae=>{l.revealedFieldModels[ae]=!1});return}const W={...I.config};I.accept&&(W.headers||(W.headers={}),W.headers.Accept=I.accept,W.headers.accept=I.accept),R.includes("/api/auto-layout")&&(W.isAutoLayout=!0);const K=Object.values(O).some(ae=>bl(ae));let ne=O;if(K&&(I.apiMethod||"POST").toUpperCase()!=="GET"){const ae=new FormData;Object.entries(O).forEach(([j,z])=>{z!=null&&(Array.isArray(z)?z.forEach(J=>ae.append(j,J)):ae.append(j,z))}),ne=ae,W.headers&&(delete W.headers["Content-Type"],delete W.headers["content-type"])}console.log(`[triggerFetchRule] Executing request for ${U.key}. Method: ${I.apiMethod||"GET"}, Has File: ${K}`,O);const q=await s(R,I.apiMethod||"GET",ne,W);if((q==null?void 0:q.status)===!0||(q==null?void 0:q.success)===!0||(q==null?void 0:q.code)===200||(q==null?void 0:q.code)==="00"||(q==null?void 0:q.status)==="SUCCESS"){const ae=A!=null&&A.includes(".")?A.split(".").slice(0,-1).join("."):void 0;x.handleResponseMapping(q,B.mapping||{},ae),l.formData[`_fetchStatus_${U.model}`]=!0;const j=(q==null?void 0:q.data)!==void 0?q.data:q;j&&typeof j=="object"&&Array.isArray(j)===!1&&((L=(v=c.value)==null?void 0:v.sections)==null||L.forEach(z=>{const J=je(z);J&&j[J]!==void 0&&Qe(l.formData,J,j[J])})),Array.isArray(B.revealSections)&&B.revealSections.forEach(z=>{l.revealedSectionIds[z]=!0}),Array.isArray(B.revealFields)&&B.revealFields.forEach(z=>{l.revealedFieldModels[z]=!0})}else{const ae=B.dialog||{},j=ae.type==="ALERT";l.confirmDialog.title=a.value==="id"?ae.titleID||"Perhatian":ae.titleEN||"Attention",l.confirmDialog.message=(q==null?void 0:q.message)||(a.value==="id"?"Data sudah ada atau sedang diproses.":"Data already exists or is being processed."),l.confirmDialog.showCancel=!j&&ae.showCancel!==!1,l.confirmDialog.isBlocking=ae.isBlocking===!0,l.confirmDialog.redirectUrl=ae.redirectUrl||"",l.confirmDialog.okText=a.value==="id"?ae.okTextID||ae.okText:ae.okTextEN||ae.okText,l.confirmDialog.cancelText=a.value==="id"?ae.cancelTextID||ae.cancelText:ae.cancelTextEN||ae.cancelText,l.confirmDialog.action={callback:()=>{}},l.confirmDialog.visible=!0}}catch(R){console.error(`[triggerFetchRule] Error for ${U.model}:`,R)}finally{l.fieldLoading[U.model]=!1}}},T=async(U,B,A)=>{var R,O,W;const F=B||N(((R=c.value)==null?void 0:R.sections)||[],U);if(!F){console.warn(`[fetchSectionData] Section not found for key: ${U}`);return}const I=F.propsForm||F.propsFormStep||F.propsTable||F.propsTableStep||F.props||{},v=I.endpointSection||I.endpointForm||I.endpointTable||I.endpoint;if(!(v!=null&&v.apiUrl))return;if(console.log(`[fetchSectionData][CHECK] Request for "${U}". Loading state:`,l.sectionLoading[U]),l.sectionLoading[U]){console.warn(`[fetchSectionData][CANCELLED] Request for "${U}" blocked because it is already loading.`);return}if(t.dummyMode)return;const L=A;l.sectionLoading[U]=!0,F.key&&(l.sectionLoading[F.key]=!0);try{const K=v.keyParam||[],ne=Array.isArray(K)&&K.includes("$bypassMode"),q=F.type==="FORM"||!!F.propsForm,Q=(v.apiMethod||"GET").toUpperCase()==="GET";if(q&&!t.isEditMode&&Q&&!ne){l.sectionLoading[U]=!1;return}const ae=Bo(v.apiUrl,d.value),j=F.type==="TABLE"||!!F.propsTable,z=ne?K.filter(ce=>ce!=="$bypassMode"):K,J=w(z,L);if(j&&(J.page===void 0&&(J.page=1),J.perPage===void 0)){const ce=F.propsTable||F.propsTableStep||{};J.perPage=ce.perPage||10}if(!(Array.isArray(z)&&z.length===0)&&v.keyParam&&v.keyParam.length>0&&Object.keys(J).length===0){console.warn(`[fetchSectionData][CANCELLED] Missing required dependencies for section ${U}. Skipping fetch.`);return}const ye={...v.config};v.accept&&(ye.headers||(ye.headers={}),ye.headers.Accept=v.accept,ye.headers.accept=v.accept),ae.includes("/api/auto-layout")&&(ye.isAutoLayout=!0),console.log(`[fetchSectionData] Executing request for ${U} with params:`,J);const oe=await s(ae,v.apiMethod||"GET",J,ye);if((oe==null?void 0:oe.status)===!0||(oe==null?void 0:oe.success)===!0||(oe==null?void 0:oe.code)===200||(oe==null?void 0:oe.code)==="00"||(oe==null?void 0:oe.status)==="SUCCESS")if(v.mapping&&Object.keys(v.mapping).length>0)x.handleResponseMapping(oe,v.mapping,L);else{const ce=(oe==null?void 0:oe.data)||(oe==null?void 0:oe.payload)||oe,de=Array.isArray(ce)&&!j?ce[0]:ce;if(de&&(typeof de=="object"||Array.isArray(de))){const ke=V(de,F,L);if(j&&Array.isArray(de)){const we=F.propsTable||F.propsTableStep||{},De=we.modelKey||we.modelDatatable||je(F);De&&(ke[De]=de)}const he=(we,De)=>{var se;if(!we)return[];const te=je(De);for(const ue of we)if(ue.type==="WIZARD"&&((se=ue.propsWizard)!=null&&se.propsSteps))for(const Ce of ue.propsWizard.propsSteps){const ie=Array.isArray(Ce.sectionsWizard)?Ce.sectionsWizard:Ce.sectionsWizard?[Ce.sectionsWizard]:[];if(ie.some(_e=>je(_e)===te))return ie;const me=he(ie,De);if(me.length>0)return me}return[]},Ee=he(((O=c.value)==null?void 0:O.sections)||[],F);(Ee.length>0?Ee:((W=c.value)==null?void 0:W.sections)||[]).forEach(we=>{var ue,Ce,ie,fe;if(je(we)===je(F))return;const De=we.propsForm||we.propsFormStep||we.propsTable||we.propsTableStep||we.props||{},te=!!((ue=De.endpointSection)!=null&&ue.apiUrl||(Ce=De.endpointForm)!=null&&Ce.apiUrl||(ie=De.endpointTable)!=null&&ie.apiUrl||(fe=De.endpoint)!=null&&fe.apiUrl);if(te){console.log(`[fetchSectionData][CASCADE] Skipping sibling "${je(we)}" because it has its own endpoint.`);return}const se=je(we);if(se&&de[se]!==void 0){const me=L?`${L}.${se}`:se;Fe(ke,me)===void 0&&(console.log(`[fetchSectionData][CASCADE] SUCCESS: Direct key match for section "${se}" -> path "${me}". Value:`,de[se]),Qe(ke,me,de[se]))}if(!te){const me=V(de,we);Object.keys(me).forEach(_e=>{const Ie=L?`${L}.${_e}`:_e;Fe(ke,Ie)===void 0&&(console.log(`[fetchSectionData][CASCADE] Field "${_e}" cascaded from section "${je(F)}" → "${se||we.type}" under context "${L||"root"}"`),Qe(ke,Ie,me[_e]))})}}),rl(l.formData,ke)}}}catch(K){console.error(`[fetchSectionData] Error for section ${U}:`,K)}finally{l.sectionLoading[U]=!1,F.key&&(l.sectionLoading[F.key]=!1)}},M=uT({formData:l.formData,emit:o,mapping:x,validation:E,locale:a,logic:g,state:l,activeSchema:c,prefetchFieldItems:y,triggerFetchRule:D});fT({state:l,props:t,emit:o,logic:g,mapping:x,fieldMap:h,activeSchema:c,prefetchFieldItems:y,triggerFetchRule:D,fetchSectionData:T,router:i}),e.watch(()=>({...l.wizardState}),(U,B)=>{Object.entries(U).forEach(([A,F])=>{var I,v,L,R;if((B==null?void 0:B[A])!==F){const O=(v=(I=c.value)==null?void 0:I.sections)==null?void 0:v.find(W=>je(W)===A);if(O){const W=(R=(L=O.propsWizard)==null?void 0:L.propsSteps)==null?void 0:R[F];if(W){const K=W.key||W.id;o("step-change",K)}}}})},{deep:!0,immediate:!0});const P=e.computed(()=>{const U={},B=c.value;return B!=null&&B.sections&&B.sections.forEach(A=>{var I,v,L;(((I=A.propsForm)==null?void 0:I.fields)||((v=A.propsTable)==null?void 0:v.fields)||((L=A.props)==null?void 0:L.fields)||[]).forEach(R=>{var O,W,K,ne,q,Q,ae,j,z,J,le;if(R.component==="DCodeRadioCustom"){const ye=((O=R.props)==null?void 0:O.name)||"default-group";U[ye]||(U[ye]=[]);let oe=((K=(W=R.props)==null?void 0:W.endpoint)==null?void 0:K.apiUrl)||((ne=R.props)==null?void 0:ne.apiUrl);oe=Bo(oe,d.value),U[ye].push({key:R.key,value:(q=R.props)==null?void 0:q.value,label:((Q=R.props)==null?void 0:Q.labelID)||((ae=R.props)==null?void 0:ae.labelEN)||R.key,model:R.model||R.key,apiUrl:oe,apiMethod:((z=(j=R.props)==null?void 0:j.endpoint)==null?void 0:z.apiMethod)||((J=R.props)==null?void 0:J.apiMethod),icon:(le=R.props)==null?void 0:le.icon,name:ye})}})}),U});return{t:n,locale:a,i18nLocale:r,apiUrl:s,router:i,isSubmitting:l.isSubmitting,internalSchema:l.internalSchema,activeSchema:c,resolvedBaseUrl:d,permissionBase:u,checkPermission:t.checkPermission,userPermissions:t.userPermissions,radioGroups:P,confirmDialog:l.confirmDialog,fieldMap:h,rawItemsCache:l.rawItemsCache,formData:l.formData,errors:l.errors,touched:l.touched,isSubmitted:l.isSubmitted,fieldErrors:l.fieldErrors,inlineState:l.inlineState,wizardState:l.wizardState,wizardResponses:l.wizardResponses,sectionLoading:l.sectionLoading,fieldLoading:l.fieldLoading,getSectionKey:je,sortedFields:np,prefetchFieldItems:y,fetchFormData:_,getDeepValue:Fe,setDeepValue:Qe,...g,...x,...C,...M,resolveKeyParams:w}}const pT={class:"flex items-center gap-2"},mT=e.defineComponent({__name:"DynamicFormSection",props:{section:{},sIdx:{},dummyMode:{type:Boolean}},setup(t){const o=e.inject("dynamicFormContext",{}),n=e.computed(()=>{var A,F,I;const U=(I=(F=(A=t.section)==null?void 0:A.propsForm)==null?void 0:F.actionSection)==null?void 0:I.some(v=>a==null?void 0:a(v)),B=t.sIdx===0;return U||B}),{resolveSectionLabels:r,isActionVisible:a,handleGlobalButtonClick:s,locale:i,t:l,handleCancel:c,sortedFields:d,isFieldVisible:u,isFieldHidden:f,getDeepValue:p,formData:m,sectionLoading:h,fieldLoading:g,getSectionKey:k,isFieldRequired:b,isFieldDisabled:E,isFieldReadonly:x,getFilteredItems:C,errors:V,resolveFieldLabels:N,resolveFieldLength:w,resolvedBaseUrl:y,handleFieldUpdate:_,resolveSectionGridClass:D,resolveFieldColumnClass:T,touched:M,isSubmitted:P}=o,H=(U,B)=>{_(U,B)},Z=U=>typeof d!="function"?[]:d(U||[]);return(U,B)=>{var A;return e.openBlock(),e.createBlock(co,{title:(A=e.unref(r)(t.section))==null?void 0:A.title,border:!0,padding:"",class:"overflow-hidden"},e.createSlots({default:e.withCtx(()=>{var F,I,v,L,R,O;return[e.createElementVNode("div",{class:e.normalizeClass(["p-4 grid gap-4",e.unref(D)(((I=(F=t.section)==null?void 0:F.propsForm)==null?void 0:I.layoutColumns)||((v=t.section)==null?void 0:v.layoutColumns))])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Z(((R=(L=t.section)==null?void 0:L.propsForm)==null?void 0:R.fields)||((O=t.section)==null?void 0:O.fields)),W=>{var K,ne,q,Q,ae,j,z,J,le;return e.openBlock(),e.createElementBlock(e.Fragment,{key:W==null?void 0:W.key},[e.unref(u)(W,void 0,W.model)?e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(T)(W,((ne=(K=t.section)==null?void 0:K.propsForm)==null?void 0:ne.layoutColumns)||((q=t.section)==null?void 0:q.layoutColumns)))},[e.createVNode(Fn,{field:W,"model-value":e.unref(m)[W.model],"form-data":e.unref(m),required:(Q=e.unref(b))==null?void 0:Q(W,void 0,W.model),disabled:(ae=e.unref(E))==null?void 0:ae(W,void 0,W.model),readonly:(j=e.unref(x))==null?void 0:j(W,void 0,W.model),options:(z=e.unref(C))==null?void 0:z(W,void 0,W.model),error:e.unref(M)[W.model]||e.unref(P)?e.unref(V)[W.model]:null,"dynamic-labels":(J=e.unref(N))==null?void 0:J(W,void 0,W.model),"dynamic-length":(le=e.unref(w))==null?void 0:le(W,void 0,W.model),"base-url":e.unref(y),skeleton:e.unref(h)[e.unref(k)(t.section)],loading:e.unref(g)[W.model],"dummy-mode":t.dummyMode,"onUpdate:modelValue":ye=>H(W.model,ye)},null,8,["field","model-value","form-data","required","disabled","readonly","options","error","dynamic-labels","dynamic-length","base-url","skeleton","loading","dummy-mode","onUpdate:modelValue"])],2)),[[e.vShow,!e.unref(f)(W,void 0,W.model)]]):e.createCommentVNode("",!0)],64)}),128))],2)]}),_:2},[n.value?{name:"actions",fn:e.withCtx(()=>{var F,I,v,L;return[e.createElementVNode("div",pT,[(v=(I=(F=t.section)==null?void 0:F.propsForm)==null?void 0:I.actionSection)!=null&&v.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.section.propsForm.actionSection,(R,O)=>{var W,K,ne,q,Q,ae,j,z,J,le;return e.openBlock(),e.createElementBlock(e.Fragment,{key:O},[(W=e.unref(a))!=null&&W(R)?(e.openBlock(),e.createBlock(at,{key:0,icon:R.icon||((K=R.propsActionGlobal)==null?void 0:K.icon),text:e.unref(i)==="kr"||e.unref(i)==="ko"?R.labelKR||((ne=R.propsActionGlobal)==null?void 0:ne.labelKR)||R.labelEN||((q=R.propsActionGlobal)==null?void 0:q.labelEN):e.unref(i)==="id"?R.labelID||((Q=R.propsActionGlobal)==null?void 0:Q.labelID):R.labelEN||((ae=R.propsActionGlobal)==null?void 0:ae.labelEN),"bg-color":((z=R.bgColor||((j=R.propsActionGlobal)==null?void 0:j.bgColor))==null?void 0:z.toLowerCase())||"primary",variant:((le=R.variant||((J=R.propsActionGlobal)==null?void 0:J.variant))==null?void 0:le.toLowerCase())||"outline",size:"sm",onClick:ye=>{var oe;return(oe=e.unref(s))==null?void 0:oe(R)}},null,8,["icon","text","bg-color","variant","onClick"])):e.createCommentVNode("",!0)],64)}),128)):e.createCommentVNode("",!0),t.sIdx===0?(e.openBlock(),e.createBlock(at,{key:1,size:"sm",icon:"List",text:(L=e.unref(l))==null?void 0:L("common.back"),variant:"outline",onClick:B[0]||(B[0]=R=>{var O;return(O=e.unref(c))==null?void 0:O()})},null,8,["text"])):e.createCommentVNode("",!0)])]}),key:"0"}:void 0]),1032,["title"])}}}),hT=e.defineComponent({__name:"DynamicTableSection",props:{section:{},dummyMode:{type:Boolean}},setup(t){const o=e.inject("dynamicFormContext",{}),{resolveSectionLabels:n,tableRows:r=()=>[],isTemporaryTable:a=()=>!1,handleDataTableAction:s=()=>{},resolvedBaseUrl:i="",permissionBase:l="",userPermissions:c=null,checkPermission:d=()=>!0,sectionLoading:u={},tokenCores:f=[],selectedTokenCore:p=null}=o,m=e.computed(()=>{const h=o.resolvedBaseUrl;return typeof h=="object"&&h!==null&&"value"in h?h.value:h});return(h,g)=>(e.openBlock(),e.createBlock(co,{border:!0,padding:"",class:"overflow-hidden"},{default:e.withCtx(()=>[e.createVNode(zn,{"table-config":t.section.propsTable,data:e.unref(r)(t.section.propsTable),nested:!0,"show-pagination":t.section.propsTable.pagination??!0,"has-actions":e.unref(a)(t.section.propsTable),"base-url":m.value,"dummy-mode":t.dummyMode,"permission-base":e.unref(l),"user-permissions":e.unref(c),"check-permission":e.unref(d),"token-cores":e.unref(f),"selected-token-core":e.unref(p),loading:e.unref(u)[t.section.key]||e.unref(u)[e.unref(je)(t.section)],controlled:"",onAction:g[0]||(g[0]=k=>e.unref(s)(t.section.propsTable,k))},null,8,["table-config","data","show-pagination","has-actions","base-url","dummy-mode","permission-base","user-permissions","check-permission","token-cores","selected-token-core","loading"])]),_:1}))}}),gT={class:"w-full"},bT={class:"space-y-6 mt-4"},yT={key:0,class:"flex items-center justify-between gap-4 border-b border-neutral-100 dark:border-neutral-800 pb-4 mb-2"},kT={class:"flex items-center gap-2"},xT={class:"flex items-center gap-2"},wT={key:2,class:"p-4 border border-dashed border-neutral-300 rounded-lg text-xs text-neutral-400"},CT=e.defineComponent({__name:"DynamicWizardSection",props:{section:{},dummyMode:{type:Boolean}},setup(t){const o=t,n=e.inject("dynamicFormContext"),{resolveSectionLabels:r,getWizardTabs:a,wizardState:s,isSubmitting:i,isSectionVisible:l,isFieldVisible:c,isFieldHidden:d,formData:u,isFieldRequired:f,isFieldDisabled:p,getFilteredItems:m,errors:h,resolveFieldLabels:g,resolveFieldLength:k,resolvedBaseUrl:b,handleFieldUpdate:E,tableRows:x,handleDataTableAction:C,handleResponseMapping:V,resolveSectionGridClass:N,resolveFieldColumnClass:w,touched:y,isSubmitted:_,apiUrl:D,getNormalizedData:T,applyFieldMapping:M,getCleanPayload:P,wizardResponses:H,resolveKeyParams:Z,router:U,permissionBase:B,userPermissions:A,ignorePermissions:F,handleGlobalButtonClick:I,locale:v,sectionLoading:L,isActionVisible:R,checkPermission:O,tokenCores:W=[],selectedTokenCore:K=null}=n,ne=(z,J,le)=>{const ye=je(J),oe=z.key||z.id;return oe&&ye?`${oe}.${ye}.${le.model}`:oe?`${oe}.${le.model}`:le.model},q=z=>{var oe,ge,ce;const J={key:z.key||((oe=z.propsTableStep)==null?void 0:oe.key)||((ge=z.propsTable)==null?void 0:ge.key)||((ce=z.propsDataTableWizard)==null?void 0:ce.key),...z.propsTable||{},...z.propsTableStep||{},...z.propsDataTableWizard||{}},le=de=>{if(!de||typeof de!="object")return null;if(de.modelDatatable)return de.modelDatatable;if(de.model)return de.model;for(const ke in de)if(typeof de[ke]=="object"&&ke!=="fields"){const he=le(de[ke]);if(he)return he}return null};let ye=J.modelDatatable||J.model||z.modelDatatable||z.model;return ye||(ye=J.key),ye||(ye=le(z)),J.modelDatatable=ye,J},Q=(z,J)=>{const le=q(J),ye=z.key?`${z.key}.${le.modelDatatable}`:le.modelDatatable,oe=x({...le,modelDatatable:ye});return{config:le,fullModel:ye,rows:oe,key:`${ye}-${oe==null?void 0:oe.length}`}},ae=async z=>{var de,ke;if(o.dummyMode)return Le.info(v.value==="id"?"Simulasi langkah selanjutnya (Dummy Mode)":"Next step simulated (Dummy Mode)",{autoClose:2e3}),!0;const J=z.key||z.id,le={};Object.values(H).forEach(he=>{he&&typeof he=="object"&&Object.assign(le,he)});const ye={...P()},oe=z.fieldMapping||{};let ge=Object.keys(oe).length>0?M(ye,oe):ye;ge={...ge};const ce=z.endpointActionStepNext;if(!(ce!=null&&ce.apiUrl))return!0;try{const he=Bo(ce.apiUrl,b.value),Ee=Z(ce.keyParam||[],J),Be={...ge,...Ee},we=await D(he,ce.apiMethod||"POST",Be),De=(we==null?void 0:we.status)===!0||(we==null?void 0:we.success)===!0||(we==null?void 0:we.code)===200||(we==null?void 0:we.code)==="00"||(we==null?void 0:we.status)==="SUCCESS";if(De&&z.responseMapping&&Object.keys(z.responseMapping).length>0&&V(we,z.responseMapping),De){const te=z.key||z.id;let se=(we==null?void 0:we.data)||(we==null?void 0:we.payload)||we;if(Array.isArray(se)&&se.length>0&&(se=se[0]),H[te]=se,se&&typeof se=="object"){const ue={...((ke=(de=U.currentRoute)==null?void 0:de.value)==null?void 0:ke.query)||{}};let Ce=!1;const ie=Nr(se),fe=["status","success","code","message","error","errorCode","errorMessage"];if(Object.entries(ie).forEach(([me,_e])=>{!fe.includes(me)&&_e!==null&&_e!==void 0&&(typeof _e=="string"||typeof _e=="number"||typeof _e=="boolean")&&ue[me]!==String(_e)&&(ue[me]=String(_e),Ce=!0)}),Ce&&globalThis!=null&&globalThis.window&&globalThis.window.history){const me=new URL(globalThis.window.location.href);Object.entries(ue).forEach(([_e,Ie])=>{Ie!=null&&me.searchParams.set(_e,String(Ie))}),globalThis.window.history.replaceState(globalThis.window.history.state,"",me.toString())}}}return De}catch(he){return console.error("[WizardSection] Error in handleBeforeNext:",he),!1}finally{i.value=!1}},j=async z=>{if(o.dummyMode)return!0;const J=z.endpointActionStepPrev;if(!(J!=null&&J.apiUrl))return!0;try{const le=Bo(J.apiUrl,b.value),ye=a(o.section),oe=ye.findIndex(Be=>(Be.key||Be.id)===(z.key||z.id)),ge=oe>0?ye[oe-1]:null,ce=ge?ge.key||ge.id:null,de=ce?H[ce]:null;let ke={};de?ke=Array.isArray(de)?de[0]||{}:de:ke=Z(J.keyParam||[],z.key);const he=await D(le,J.apiMethod||"POST",ke);return((he==null?void 0:he.status)===!0||(he==null?void 0:he.success)===!0||(he==null?void 0:he.code)===200||(he==null?void 0:he.status)==="SUCCESS")&&z.responseMapping&&Object.keys(z.responseMapping).length>0&&V(he,z.responseMapping),!0}catch(le){return console.error("[WizardSection] Error in handleBeforePrev:",le),!0}};return(z,J)=>{var ye;const le=e.resolveComponent("DCodeButton");return e.openBlock(),e.createElementBlock("div",gT,[e.createVNode(tl,{tabs:e.unref(a)(t.section),modelValue:e.unref(s)[e.unref(je)(t.section)],"onUpdate:modelValue":J[0]||(J[0]=oe=>e.unref(s)[e.unref(je)(t.section)]=oe),"is-vertical":t.section.propsWizard.isVertical,"is-wizard":t.section.propsWizard.isWizard,"type-wizard":((ye=t.section.propsWizard.typeWizard)==null?void 0:ye.toLowerCase())||"icon",loading:e.unref(i),"before-next":ae,"before-prev":j},e.createSlots({_:2},[e.renderList(e.unref(a)(t.section),oe=>({name:`tab-${oe.key}`,fn:e.withCtx(()=>{var ge;return[e.createElementVNode("div",bT,[(ge=oe.actions)!=null&&ge.length?(e.openBlock(),e.createElementBlock("div",yT,[J[1]||(J[1]=e.createElementVNode("div",{class:"flex-1"},null,-1)),e.createElementVNode("div",kT,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(oe.actions,(ce,de)=>{var ke,he,Ee,Be,we,De,te;return e.openBlock(),e.createElementBlock(e.Fragment,{key:de},[e.unref(R)(ce)?(e.openBlock(),e.createBlock(le,{key:0,icon:ce.icon||((ke=ce.propsActionGlobal)==null?void 0:ke.icon),text:e.unref(v)==="kr"||e.unref(v)==="ko"?ce.labelKR||((he=ce.propsActionGlobal)==null?void 0:he.labelKR)||ce.labelEN||((Ee=ce.propsActionGlobal)==null?void 0:Ee.labelEN):e.unref(v)==="id"?ce.labelID||((Be=ce.propsActionGlobal)==null?void 0:Be.labelID):ce.labelEN||((we=ce.propsActionGlobal)==null?void 0:we.labelEN),"bg-color":(ce.bgColor||((De=ce.propsActionGlobal)==null?void 0:De.bgColor)||"primary").toLowerCase(),variant:(ce.variant||((te=ce.propsActionGlobal)==null?void 0:te.variant)||"outline").toLowerCase(),size:"sm",onClick:se=>e.unref(I)(ce)},null,8,["icon","text","bg-color","variant","onClick"])):e.createCommentVNode("",!0)],64)}),128))])])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(oe.sections,(ce,de)=>{var ke,he,Ee,Be,we,De;return e.openBlock(),e.createElementBlock(e.Fragment,{key:de},[e.unref(l)(ce)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[((ke=ce.type)==null?void 0:ke.toUpperCase())==="FORM"?(e.openBlock(),e.createBlock(co,{key:0,title:(he=e.unref(r)(ce))==null?void 0:he.title,border:!0,padding:"",class:"overflow-hidden"},e.createSlots({default:e.withCtx(()=>{var te,se,ue,Ce;return[e.createElementVNode("div",{class:e.normalizeClass(["p-4 grid gap-4",e.unref(N)(ce.layoutColumns||((te=ce.propsForm)==null?void 0:te.layoutColumns)||((se=ce.propsFormStep)==null?void 0:se.layoutColumns))])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(np)(ce.fields||((ue=ce.propsForm)==null?void 0:ue.fields)||((Ce=ce.propsFormStep)==null?void 0:Ce.fields)),ie=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:ie.key},[e.unref(c)(ie,void 0,z.fullPath)?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList([ne(oe,ce,ie)],fe=>{var me,_e;return e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:fe,class:e.normalizeClass(e.unref(w)(ie,ce.layoutColumns||((me=ce.propsForm)==null?void 0:me.layoutColumns)||((_e=ce.propsFormStep)==null?void 0:_e.layoutColumns)))},[e.createVNode(Fn,{field:ie,"model-value":e.unref(Fe)(e.unref(u),fe),"form-data":e.unref(u),required:e.unref(f)(ie,void 0,fe),disabled:e.unref(p)(ie,void 0,fe),options:e.unref(m)(ie,void 0,fe),error:e.unref(y)[fe]||e.unref(_)?e.unref(h)[fe]:null,"dynamic-labels":e.unref(g)(ie,void 0,fe),"dynamic-length":e.unref(k)(ie,void 0,fe),"base-url":e.unref(b),skeleton:e.unref(L)[oe.key?`${oe.key}.${e.unref(je)(ce)}`:e.unref(je)(ce)],"dummy-mode":t.dummyMode,"onUpdate:modelValue":Ie=>e.unref(E)(ie.model,Ie,oe.key?e.unref(je)(ce)?`${oe.key}.${e.unref(je)(ce)}`:oe.key:void 0)},null,8,["field","model-value","form-data","required","disabled","options","error","dynamic-labels","dynamic-length","base-url","skeleton","dummy-mode","onUpdate:modelValue"])],2)),[[e.vShow,!e.unref(d)(ie,void 0,fe)]])}),128)):e.createCommentVNode("",!0)],64))),128))],2)]}),_:2},[(Be=(Ee=ce.propsFormStep)==null?void 0:Ee.actionSection)!=null&&Be.length?{name:"actions",fn:e.withCtx(()=>[e.createElementVNode("div",xT,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(ce.propsFormStep.actionSection,(te,se)=>{var ue,Ce,ie,fe,me,_e,Ie;return e.openBlock(),e.createElementBlock(e.Fragment,{key:se},[e.unref(R)(te)?(e.openBlock(),e.createBlock(le,{key:0,icon:te.icon||((ue=te.propsActionGlobal)==null?void 0:ue.icon),text:e.unref(v)==="kr"||e.unref(v)==="ko"?te.labelKR||((Ce=te.propsActionGlobal)==null?void 0:Ce.labelKR)||te.labelEN||((ie=te.propsActionGlobal)==null?void 0:ie.labelEN):e.unref(v)==="id"?te.labelID||((fe=te.propsActionGlobal)==null?void 0:fe.labelID):te.labelEN||((me=te.propsActionGlobal)==null?void 0:me.labelEN),"bg-color":(te.bgColor||((_e=te.propsActionGlobal)==null?void 0:_e.bgColor)||"primary").toLowerCase(),variant:(te.variant||((Ie=te.propsActionGlobal)==null?void 0:Ie.variant)||"outline").toLowerCase(),size:"sm",onClick:vt=>e.unref(I)(te)},null,8,["icon","text","bg-color","variant","onClick"])):e.createCommentVNode("",!0)],64)}),128))])]),key:"0"}:void 0]),1032,["title"])):((we=ce.type)==null?void 0:we.toUpperCase())==="TABLE"||ce.isDataTable?(e.openBlock(),e.createBlock(co,{key:1,title:(De=e.unref(r)(ce))==null?void 0:De.title,border:!0,padding:"",class:"overflow-hidden"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList([Q(oe,ce)],te=>{var se,ue,Ce;return e.openBlock(),e.createBlock(zn,{key:te.key,"dummy-mode":t.dummyMode,"table-config":{...te.config,modelDatatable:te.fullModel},"api-params":e.unref(Z)((ue=(se=te.config)==null?void 0:se.endpointTable)==null?void 0:ue.keyParam,oe.key),data:te.rows,nested:!0,"show-pagination":((Ce=te.config)==null?void 0:Ce.pagination)??!0,"user-permissions":e.unref(A),"check-permission":e.unref(O),"permission-base":te.config.permissionBase||e.unref(B),"ignore-permissions":e.unref(F),"base-url":e.unref(b),"token-cores":e.unref(W),"selected-token-core":e.unref(K),loading:e.unref(L)[oe.key?`${oe.key}.${e.unref(je)(ce)}`:e.unref(je)(ce)],onAction:ie=>{e.unref(C)({...te.config,modelDatatable:te.fullModel},ie)}},null,8,["dummy-mode","table-config","api-params","data","show-pagination","user-permissions","check-permission","permission-base","ignore-permissions","base-url","token-cores","selected-token-core","loading","onAction"])}),128))]),_:2},1032,["title"])):(e.openBlock(),e.createElementBlock("div",wT," Unknown section type: "+e.toDisplayString(ce.type),1))],64)):e.createCommentVNode("",!0)],64)}),128))])]})}))]),1032,["tabs","modelValue","is-vertical","is-wizard","type-wizard","loading"])])}}}),ET={class:"py-2 text-sm text-neutral-600 dark:text-neutral-400"},ST={key:0,class:"grid grid-cols-1 md:grid-cols-2 gap-4 py-2"},_T={class:"py-2 text-sm text-neutral-600 dark:text-neutral-400"},BT=e.defineComponent({__name:"DynamicFormDialogs",setup(t){const o=e.inject("dynamicFormContext",{}),{confirmDialog:n,t:r,confirmAction:a,tableDialogOpen:s,tableDialogTitle:i,tableDialogIcon:l,tableDialogFields:c,isFieldVisible:d,isFieldHidden:u,tableRowFormData:f,tableDialogViewOnly:p,isFieldRequired:m,isFieldDisabled:h,getFilteredItems:g,tableRowErrors:k,resolveFieldLabels:b,resolveFieldLength:E,resolvedBaseUrl:x,handleTableRowUpdate:C,locale:V,saveTableRow:N,confirmDeleteOpen:w,executeTableDelete:y,tableDialogSize:_}=o,D=e.computed(()=>{const T=e.unref(c);return Array.isArray(T)?T.some(M=>M.component==="DCodePdfViewer"||M.component==="DCodeWorkflowDiagram"):!1});return(T,M)=>(e.openBlock(),e.createElementBlock("div",null,[e.createVNode(Eo,{modelValue:e.unref(n).visible,"onUpdate:modelValue":M[1]||(M[1]=P=>e.unref(n).visible=P),title:e.unref(n).title,icon:"AlertTriangle","max-width":450,persistent:e.unref(n).isBlocking},{actions:e.withCtx(()=>[e.unref(n).showCancel?(e.openBlock(),e.createBlock(at,{key:0,variant:"outline",text:e.unref(n).cancelText||e.unref(r)("common.cancel"),onClick:M[0]||(M[0]=P=>e.unref(n).visible=!1)},null,8,["text"])):e.createCommentVNode("",!0),e.createVNode(at,{text:e.unref(n).okText||e.unref(r)("common.confirm"),onClick:e.unref(a)},null,8,["text","onClick"])]),default:e.withCtx(()=>[e.createElementVNode("div",ET,e.toDisplayString(e.unref(n).message),1)]),_:1},8,["modelValue","title","persistent"]),e.createVNode(Eo,{modelValue:e.unref(s),"onUpdate:modelValue":M[3]||(M[3]=P=>e.isRef(s)?s.value=P:null),title:e.unref(i),icon:e.unref(l),size:e.unref(_)},e.createSlots({default:e.withCtx(()=>[e.unref(c).length?(e.openBlock(),e.createElementBlock("div",ST,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(c),P=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:P.key},[e.unref(d)(P,e.unref(f))?e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(P.column==="FULL"?"md:col-span-2":"col-span-1")},[e.createVNode(Fn,{field:P,"model-value":e.unref(f)[P.model],"form-data":e.unref(f),required:e.unref(p)?!1:e.unref(m)(P,e.unref(f)),disabled:e.unref(p)||e.unref(h)(P,e.unref(f)),"view-only":e.unref(p),options:e.unref(g)(P,e.unref(f)),error:e.unref(p)?void 0:e.unref(k)[P.model],"dynamic-labels":e.unref(b)(P,e.unref(f)),"dynamic-length":e.unref(E)(P,e.unref(f)),"base-url":e.unref(x),"onUpdate:modelValue":H=>e.unref(C)(P.model,H)},null,8,["field","model-value","form-data","required","disabled","view-only","options","error","dynamic-labels","dynamic-length","base-url","onUpdate:modelValue"])],2)),[[e.vShow,!e.unref(u)(P,e.unref(f))]]):e.createCommentVNode("",!0)],64))),128))])):e.createCommentVNode("",!0)]),_:2},[D.value?void 0:{name:"actions",fn:e.withCtx(()=>[e.createVNode(at,{variant:"outline",text:e.unref(p)?e.unref(V)==="id"?"Tutup":"Close":e.unref(V)==="id"?"Batal":"Cancel",onClick:M[2]||(M[2]=P=>s.value=!1)},null,8,["text"]),e.unref(p)?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(at,{key:0,text:"Save",onClick:e.unref(N)},null,8,["onClick"]))]),key:"0"}]),1032,["modelValue","title","icon","size"]),e.createVNode(Eo,{modelValue:e.unref(w),"onUpdate:modelValue":M[5]||(M[5]=P=>e.isRef(w)?w.value=P:null),title:e.unref(V)==="id"?"Konfirmasi Hapus":"Confirm Delete",icon:"Trash2","max-width":440},{actions:e.withCtx(()=>[e.createVNode(at,{variant:"outline",text:e.unref(V)==="id"?"Batal":"Cancel",onClick:M[4]||(M[4]=P=>w.value=!1)},null,8,["text"]),e.createVNode(at,{variant:"default","bg-color":"danger",icon:"Trash2",text:e.unref(V)==="id"?"Hapus":"Delete",onClick:e.unref(y)},null,8,["text","onClick"])]),default:e.withCtx(()=>[e.createElementVNode("div",_T,e.toDisplayString(e.unref(V)==="id"?"Apakah Anda yakin ingin menghapus data ini? Tindakan ini tidak dapat dibatalkan.":"Are you sure you want to delete this row? This action cannot be undone."),1)]),_:1},8,["modelValue","title"])]))}}),vT={class:"w-full flex flex-col min-h-0"},AT={class:"flex-1 space-y-6 overflow-y-auto"},yl=e.defineComponent({__name:"DynamicForm",props:{schema:{},model:{default:()=>({})},isEditMode:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},baseUrl:{default:void 0},selectedTokenCore:{default:null},tokenCores:{default:()=>[]},dummyMode:{type:Boolean,default:!1},router:{default:null},permissionBase:{default:""},userPermissions:{default:null},checkPermission:{type:Function,default:void 0},dynamicForm:{}},emits:["submit","cancel","action","update:model","update:modelValue","success","error","step-change"],setup(t,{emit:o}){const n=t,r=o,a=n.dynamicForm||yp(n,r);a&&(a.tableRowFormData||(a.tableRowFormData=e.reactive({}))),e.provide("dynamicFormContext",a);const{activeSchema:s,isSectionVisible:i,inlineState:l,isActionVisible:c,locale:d,isSubmitting:u,isSubmitDisabled:f,handleGlobalButtonClick:p,handleSubmit:m}=a;return(h,g)=>{var k,b,E,x,C,V;return e.openBlock(),e.createElementBlock("div",vT,[e.createElementVNode("div",AT,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((k=e.unref(s))==null?void 0:k.sections,(N,w)=>{var y,_,D;return e.openBlock(),e.createElementBlock(e.Fragment,{key:w},[((y=N.type)==null?void 0:y.toUpperCase())==="FORM"&&N.propsForm&&e.unref(i)(N)?(e.openBlock(),e.createBlock(mT,{key:0,"dummy-mode":n.dummyMode,section:N,sIdx:Number(w)},null,8,["dummy-mode","section","sIdx"])):((_=N.type)==null?void 0:_.toUpperCase())==="TABLE"&&N.propsTable&&e.unref(i)(N)?(e.openBlock(),e.createBlock(hT,{key:1,"dummy-mode":n.dummyMode,section:N},null,8,["dummy-mode","section"])):((D=N.type)==null?void 0:D.toUpperCase())==="WIZARD"&&N.propsWizard&&e.unref(i)(N)?(e.openBlock(),e.createBlock(CT,{key:2,"dummy-mode":n.dummyMode,section:N},null,8,["dummy-mode","section"])):e.createCommentVNode("",!0)],64)}),128))]),(b=e.unref(l))!=null&&b.global?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(((x=(E=e.unref(s))==null?void 0:E.ui)==null?void 0:x.actionsClass)||"flex items-center gap-2 flex-wrap pt-4 mt-6 border-t border-neutral-100 dark:border-neutral-800")},[(V=(C=e.unref(s))==null?void 0:C.actionGlobal)!=null&&V.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(e.unref(s).actionGlobal,(N,w)=>{var y,_,D;return e.openBlock(),e.createElementBlock(e.Fragment,{key:w},[N.propsActionGlobal&&e.unref(c)(N)?(e.openBlock(),e.createBlock(at,{key:0,icon:N.propsActionGlobal.icon,text:e.unref(d)==="kr"||e.unref(d)==="ko"?N.propsActionGlobal.labelKR||N.propsActionGlobal.labelEN:e.unref(d)==="id"?N.propsActionGlobal.labelID:N.propsActionGlobal.labelEN,"bg-color":((y=N.propsActionGlobal.bgColor)==null?void 0:y.toLowerCase())||"primary",variant:((_=N.propsActionGlobal.variant)==null?void 0:_.toLowerCase())||"default",loading:e.unref(u),disabled:e.unref(f)&&(N.permission==="CREATE"||N.permission==="UPDATE"||((D=N.propsActionGlobal)==null?void 0:D.key)==="submit"),onClick:T=>e.unref(p)(N)},null,8,["icon","text","bg-color","variant","loading","disabled","onClick"])):e.createCommentVNode("",!0)],64)}),128)):e.createCommentVNode("",!0)],2)),e.createVNode(BT)])}}}),DT={"aria-label":"Breadcrumb"},NT={class:"flex flex-wrap items-center text-sm md:text-base"},VT={class:"truncate max-w-[100px] sm:max-w-[150px] md:max-w-none"},kp=e.defineComponent({__name:"Breadcrumb",props:{items:{},showHomeIcon:{type:Boolean,default:!0},iconSize:{default:18},separatorSize:{default:16},separatorType:{default:"chevron"},strokeWidth:{default:2}},setup(t){const o=t,n=be.Home,r=o.separatorType==="slash"?be.Slash:be.ChevronRight;return(a,s)=>(e.openBlock(),e.createElementBlock("nav",DT,[e.createElementVNode("ol",NT,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(i,l)=>(e.openBlock(),e.createElementBlock("li",{key:l,class:"flex items-center"},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.to?"router-link":"span"),{to:i.to,class:e.normalizeClass(["inline-flex items-center gap-1.5 transition-all duration-200 rounded-lg font-medium",i.to?"text-gray-700 dark:text-gray-300 hover:text-primary-600 dark:hover:text-primary-400 hover:bg-primary-50 dark:hover:bg-primary-900/20 cursor-pointer":"dark:text-gray-100 bg-primary-50 dark:bg-primary-900/30 text-primary-700"])},{default:e.withCtx(()=>[i.icon||l===0&&t.showHomeIcon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.icon||e.unref(n)),{key:0,size:t.iconSize,class:e.normalizeClass(["flex-shrink-0",i.to?"text-gray-500 dark:text-gray-400 group-hover:text-primary-600 dark:group-hover:text-primary-400":"text-primary-600 dark:text-primary-400",i.iconClass||""]),"stroke-width":t.strokeWidth},null,8,["size","class","stroke-width"])):e.createCommentVNode("",!0),e.createElementVNode("span",VT,e.toDisplayString(i.label),1)]),_:2},1032,["to","class"])),l<t.items.length-1?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(r)),{key:0,size:t.separatorSize,class:"mx-1.5 text-gray-300 dark:text-gray-700 flex-shrink-0"},null,8,["size"])):e.createCommentVNode("",!0)]))),128))])]))}});function xp(){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 MT={class:"w-full space-y-6 animate-pulse"},TT={class:"p-4 grid grid-cols-1 md:grid-cols-2 gap-4"},PT=e.defineComponent({__name:"AutoLayoutSkeleton",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",MT,[n[2]||(n[2]=e.createElementVNode("div",{class:"h-6 w-48 bg-neutral-200 dark:bg-neutral-700 rounded-md"},null,-1)),(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(2,r=>e.createElementVNode("div",{key:r,class:"rounded-xl border border-neutral-200 dark:border-neutral-700 overflow-hidden"},[n[1]||(n[1]=e.createElementVNode("div",{class:"px-4 py-3 bg-neutral-200 dark:bg-neutral-700"},[e.createElementVNode("div",{class:"h-4 w-32 bg-neutral-300 dark:bg-neutral-600 rounded"})],-1)),e.createElementVNode("div",TT,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(6,a=>e.createElementVNode("div",{key:a,class:e.normalizeClass(a>4?"md:col-span-2":"col-span-1")},[...n[0]||(n[0]=[e.createElementVNode("div",{class:"h-3 w-24 bg-neutral-200 dark:bg-neutral-700 rounded mb-2"},null,-1),e.createElementVNode("div",{class:"h-10 w-full bg-neutral-200 dark:bg-neutral-700 rounded-lg"},null,-1)])],2)),64))])])),64)),n[3]||(n[3]=e.createElementVNode("div",{class:"flex items-center gap-2"},[e.createElementVNode("div",{class:"h-9 w-24 bg-neutral-300 dark:bg-neutral-600 rounded-lg"}),e.createElementVNode("div",{class:"h-9 w-20 bg-neutral-200 dark:bg-neutral-700 rounded-lg"})],-1))]))}}),RT={class:"w-full"},OT={class:"relative mx-auto min-h-[37.5rem]"},FT={key:"content",class:"w-full"},$T={class:"mb-6"},LT={class:"text-neutral-500 dark:text-neutral-400"},IT={key:"skeleton",class:"w-full"},zT={key:"error",class:"flex items-center justify-center p-20 text-red-500 w-full"},kl=ht(e.defineComponent({name:"AutoLayoutForm",__name:"AutoLayoutForm",props:{layoutCode:{},apiToken:{},isEditMode:{type:Boolean},model:{},selectedTokenCore:{},router:{},userPermissions:{},permissionBase:{},checkPermission:{type:Function},dummyMode:{type:Boolean}},emits:["submit-success","cancel","action-success","update:model"],setup(t,{emit:o}){var U,B,A,F,I,v,L,R;const n=t,r=o,a=(B=(U=e.getCurrentInstance())==null?void 0:U.appContext)==null?void 0:B.app;a&&!a._context.provides[Symbol.for("vue-router-route-location")]&&a.provide(Symbol.for("vue-router-route-location"),{query:{},params:{},path:""});let s={query:{},params:{},path:""};try{const O=Ho.useRoute();if(O&&Object.keys(O).length>0)s=O;else{const W=e.getCurrentInstance();(I=(F=(A=W==null?void 0:W.appContext)==null?void 0:A.config)==null?void 0:F.globalProperties)!=null&&I.$route&&(s=W.appContext.config.globalProperties.$route)}}catch{console.warn("useRoute not available, using fallback")}let i={back:()=>{typeof window<"u"&&window.history&&window.history.length>1&&window.history.back()},push:O=>{if(typeof window<"u"){if(typeof O=="string")window.location.href=O;else if(O&&(O.path||O.name)){const W=O.path||"/",K=new URL(W,window.location.origin);O.query&&Object.entries(O.query).forEach(([ne,q])=>K.searchParams.set(ne,String(q))),window.location.href=K.toString()}}},replace:async O=>{if(typeof window<"u"&&window.history){const W=new URL(window.location.href);O.query&&Object.entries(O.query).forEach(([K,ne])=>W.searchParams.set(K,String(ne))),window.history.replaceState({},"",W.toString())}},currentRoute:e.computed(()=>({query:(s==null?void 0:s.query)||{},params:(s==null?void 0:s.params)||{},path:(s==null?void 0:s.path)||""})),__isFallback:!0};try{const O=n.router||Ho.useRouter();if(O)i=O;else{const W=e.getCurrentInstance();(R=(L=(v=W==null?void 0:W.appContext)==null?void 0:v.config)==null?void 0:L.globalProperties)!=null&&R.$router&&(i=W.appContext.config.globalProperties.$router)}}catch{console.warn("useRouter not available, using fallback")}const{apiUrl:l,DCodeApi:c}=e.inject("externalApi");let d;try{d=Dt.useI18n().locale}catch{d=e.ref("en")}const{setPageTitle:u}=xp(),f=e.computed(()=>n.isEditMode!==void 0?n.isEditMode:s.params&&"id"in s.params?!0:s.path?/\/edit\/[^\/]+$/.test(s.path):!1);e.watchEffect(()=>{});const p=e.computed(()=>{if(s.params&&"id"in s.params)return s.params.id;if(!s.path)return null;const O=s.path.match(/\/edit\/([^\/]+)$/);return O?O[1]:null}),m=e.ref({}),h=e.ref(null),g=e.ref(!0),k=e.ref(!1),b=e.ref(null),E="https://dcodedynamic.skyworx.co.id/api/auto-layout/form/form-dynamic?code=",x="https://dcodedynamic.skyworx.co.id/api/auto-layout/datatable/form-dynamic?code=",C=e.ref(n.layoutCode),V=e.computed(()=>{var ne;if(!h.value)return"";const O=((ne=d==null?void 0:d.value)==null?void 0:ne.toLowerCase())||"en",W=O==="kr"||O==="ko"||O.startsWith("kr-")||O.startsWith("ko-"),K=O==="en"||O.startsWith("en-");return(W?h.value.titleKR||h.value.titleEN:K?h.value.titleEN:h.value.titleID)||h.value.title||n.layoutCode});e.watch(V,O=>{O&&u(O)},{immediate:!0});const N=(O,W={})=>(!O||typeof O!="object"||Object.keys(O).forEach(K=>{const ne=O[K];W[K]=ne,ne&&typeof ne=="object"&&!Array.isArray(ne)&&!(ne instanceof Date)&&!ne._isLogicValue&&N(ne,W)}),W),w=O=>{var q;if(!O||typeof O!="string"||O.startsWith("http"))return O;const W=(q=n.selectedTokenCore)==null?void 0:q.address;if(!W||typeof W!="string")return O;const K=W.replace(/\/$/,""),ne=O.startsWith("/")?O:`/${O}`;return`${K}${ne}`},y=O=>{var W;if(!O)return!1;for(const K of O){const ne=K.propsForm||K.propsFormStep||K.propsTable||K.propsTableStep||K.props||{};if(ne.endpointForm||ne.endpointTable||K.endpointForm)return!0;if(K.type==="WIZARD"&&((W=K.propsWizard)!=null&&W.propsSteps))for(const q of K.propsWizard.propsSteps){const Q=Array.isArray(q.sectionsWizard)?q.sectionsWizard:[q.sectionsWizard].filter(Boolean);if(y(Q))return!0}}return!1},_=async()=>{var O,W,K,ne,q,Q,ae;g.value=!0;try{let j=n.layoutCode;s&&s.query&&typeof s.query=="object"&&"code"in s.query&&(j=s.query.code||n.layoutCode);const z=n.apiToken,J=z?{Authorization:`Bearer ${z}`}:{},le=w(`${E}${j}`);let ye=await l(le,"GET",null,J);if(!ye.status||!ye.data||Array.isArray(ye.data)&&ye.data.length===0)try{const oe=w(`${x}${j}`),ge=await l(oe,"GET",null,J);if(ge.status){const ce=Array.isArray(ge.data)?ge.data[0]:ge.data;ce&&ce.code&&(j=ce.code,C.value=j,ye=await l(w(`${E}${j}`),"GET",null,J))}}catch(oe){console.warn("Failed to resolve layout code via datatable",oe)}if(ye.status){h.value=Array.isArray(ye.data)?ye.data[0]:ye.data;const oe={};if((O=h.value)!=null&&O.sections&&h.value.sections.forEach(ge=>{var ke,he;((ge.propsForm||ge.props||{}).fields||ge.fields||[]).forEach(Ee=>{var we;const Be=Ee.model||((we=Ee.props)==null?void 0:we.model)||Ee.key;Be&&(oe[Be]=null)}),((ke=ge.type)==null?void 0:ke.toUpperCase())==="WIZARD"&&((he=ge.propsWizard)!=null&&he.propsSteps)&&ge.propsWizard.propsSteps.forEach(Ee=>{(Array.isArray(Ee.sectionsWizard)?Ee.sectionsWizard:[Ee.sectionsWizard].filter(Boolean)).forEach(we=>{var te;(we.fields||((te=we.propsFormStep)==null?void 0:te.fields)||[]).forEach(se=>{var Ce;const ue=se.model||((Ce=se.props)==null?void 0:Ce.model)||se.key;ue&&(oe[ue]=null)})})})}),m.value=oe,f.value&&p.value&&(m.value.id=p.value),g.value=!1,f.value&&p.value){k.value=!0;try{const ge=((K=(W=h.value.sections)==null?void 0:W[0])==null?void 0:K.propsForm)||((q=(ne=h.value.sections)==null?void 0:ne[0])==null?void 0:q.props),ce=(ge==null?void 0:ge.endpointSection)||(ge==null?void 0:ge.endpointForm),de=h.value.endpointForm,ke=ce||de;if(ke!=null&&ke.apiUrl){k.value=!0;const he=ke.apiUrl,Ee=ke.apiMethod||"GET",Be=ke.keyParam||[],we={};Be.length>0?Be.forEach(te=>{typeof te=="string"?we[te]=p.value:typeof te=="object"&&te!==null&&Object.entries(te).forEach(([se])=>{we[se]=p.value})}):we.id=p.value;const De=await c(w(he),Ee,we);if(De.status){let te=Array.isArray(De.data)?De.data[0]:De.data;De.payload&&(te={...te,...De.payload});const se=N(te);m.value={...m.value,...se,...te}}else console.warn("[AutoLayoutForm] Record API returned status: false",De)}else if((Q=h.value.endpointGlobal)!=null&&Q.apiUrl){k.value=!0;const he=h.value.endpointGlobal.apiUrl,Ee=h.value.endpointGlobal.apiMethod||"GET",Be={id:p.value},we=await c(w(he),Ee,Be);if(we.status){const De=Array.isArray(we.data)?we.data[0]:we.data,te=N(De);m.value={...m.value,...te,...De}}}else if(!y(h.value.sections)){k.value=!0;const he=((ae=h.value.endpoint)==null?void 0:ae.detailUrl)||`/api/${C.value}/detail/${p.value}`,Ee=await l(w(he),"GET");if(Ee.status){let Be=Array.isArray(Ee.data)?Ee.data[0]:Ee.data;if(Ee.payload){const te={...Ee.payload};if(Object.keys(te).forEach(se=>{Be[se]!==void 0&&Be[se]!==null&&(te[se]=Be[se])}),!("id"in te)&&Be.id){const se=Object.keys(te).find(ue=>ue.startsWith("id")&&ue.length>2&&!te[ue]);se&&(te[se]=Be.id)}Be=te}const we={...Be};Object.keys(m.value).forEach(te=>{if(we[te]===void 0||we[te]===null){if(te.toLowerCase().startsWith("id")&&te.length>2){const ue=te.substring(2).toLowerCase(),Ce=Array.isArray(Ee.data)?Ee.data[0]:Ee.data,ie=Object.keys(Ce).find(fe=>fe.toLowerCase()===ue);ie&&Ce[ie]&&typeof Ce[ie]=="object"&&"id"in Ce[ie]&&(we[te]=Ce[ie].id)}if(te==="idSupervisor"){const ue=Array.isArray(Ee.data)?Ee.data[0]:Ee.data;ue.supervisorId&&(we[te]=ue.supervisorId)}}});const De=N(we);m.value={...m.value,...De,...we}}}}catch(ge){console.error("Failed to fetch record data:",ge)}finally{k.value=!1}}}}catch(j){console.error("Failed to load form layout:",j),g.value=!1}},D=O=>{const W=Object.keys(m.value||{}).filter(ne=>m.value[ne]!==null&&m.value[ne]!==void 0),K=Object.keys(O||{}).filter(ne=>O[ne]!==null&&O[ne]!==void 0);if(W.length>3&&K.length<W.length/2){console.warn('[AutoLayoutForm] Circuit breaker triggered: Ignoring likely erroneous "empty" update from child.',{currentCount:W.length,incomingCount:K.length,data:O});return}m.value=O,r("update:model",O)},T=O=>{var K,ne;const W=(O==null?void 0:O.routeBack)||(O==null?void 0:O.pathBack)||((K=h.value)==null?void 0:K.routeBack)||((ne=h.value)==null?void 0:ne.pathBack);W?i.push(W):i.back()},M=async O=>{var W,K,ne;if(n.dummyMode){r("submit-success",O),T();return}try{const q=(ne=(K=(W=h.value.sections)==null?void 0:W[0])==null?void 0:K.propsForm)==null?void 0:ne.endpointForm,Q=h.value.endpointGlobal||h.value.endpoint,ae=(q==null?void 0:q.submitUrl)||(Q==null?void 0:Q.submitUrl)||`/api/generic/${n.layoutCode}`,j=(q==null?void 0:q.submitMethod)||(Q==null?void 0:Q.submitMethod)||(f.value?"PUT":"POST"),z=Object.values(O).some(de=>de instanceof File||de instanceof Blob);let J=O;if(b.value&&O[b.value]){const de=O[b.value];J={},Object.values(de).forEach(ke=>{typeof ke=="object"&&ke!==null&&Object.assign(J,ke)})}let le;z?(le=new FormData,Object.keys(J).forEach(de=>{const ke=J[de];ke!=null&&(Array.isArray(ke)?ke.forEach(he=>le.append(`${de}[]`,he)):le.append(de,ke))})):(le={...J},f.value&&p.value&&!le.id&&(le.id=p.value));const ye=q||Q,oe={...ye==null?void 0:ye.config};ye!=null&&ye.accept&&(oe.headers||(oe.headers={}),oe.headers.Accept=ye.accept,oe.headers.accept=ye.accept);const ge=await l(w(ae),j,le,oe),ce=(ge==null?void 0:ge.status)===!0||(ge==null?void 0:ge.success)===!0||(ge==null?void 0:ge.code)===200||(ge==null?void 0:ge.code)==="00"||(ge==null?void 0:ge.status)==="SUCCESS";if(ce){let de=(ge==null?void 0:ge.data)||(ge==null?void 0:ge.payload)||ge;if(Array.isArray(de)&&de.length>0&&(de=de[0]),de&&typeof de=="object"){const ke={...(s==null?void 0:s.query)||{}};let he=!1;if(Object.entries(de).forEach(([Ee,Be])=>{["status","success","code","message"].includes(Ee)||Be!=null&&(typeof Be=="string"||typeof Be=="number"||typeof Be=="boolean")&&ke[Ee]!==String(Be)&&(ke[Ee]=String(Be),he=!0)}),he&&typeof window<"u"&&window.history){const Ee=new URL(window.location.href);Object.entries(ke).forEach(([Be,we])=>{we!=null&&Ee.searchParams.set(Be,String(we))}),window.history.replaceState(window.history.state,"",Ee.toString())}}}ce&&(r("submit-success",le),T())}catch(q){console.error("Submit failed:",q)}},P=async(O,W,K)=>{if(O==="cancel"){H();return}const ne=W.endpointPropAction||W.propsActionGlobal&&W.propsActionGlobal.endpointPropAction;if(ne){if(n.dummyMode){r("action-success",O,W,K||m.value);return}try{g.value=!0;const q=K?{...K}:{...m.value};f.value&&W.model&&p.value&&(q[W.model]=p.value);const Q=ne.apiUrl,ae=ne.apiMethod||"POST";(await c(w(Q),ae,q)).status&&(r("action-success",O,W,q),T(W))}catch(q){console.error("Action failed:",q)}finally{g.value=!1}}},H=()=>{r("cancel"),i.back()},Z=O=>{b.value=O};return e.onMounted(()=>{_()}),e.watch(()=>n.model,O=>{O&&Object.keys(O).length>0&&(m.value={...m.value,...O})},{immediate:!0,deep:!0}),e.onUnmounted(()=>{u("")}),(O,W)=>(e.openBlock(),e.createElementBlock("div",RT,[e.createElementVNode("div",OT,[e.createVNode(e.Transition,{name:"fade",mode:"out-in"},{default:e.withCtx(()=>[!g.value&&h.value?(e.openBlock(),e.createElementBlock("div",FT,[e.createElementVNode("div",$T,[e.createElementVNode("p",LT,e.toDisplayString(h.value.description),1)]),e.createVNode(yl,{schema:h.value,model:m.value,"is-edit-mode":f.value,loading:k.value,"selected-token-core":n.selectedTokenCore,router:e.unref(i),"permission-base":n.permissionBase,"user-permissions":n.userPermissions,"check-permission":n.checkPermission,"dummy-mode":n.dummyMode,"onUpdate:model":W[0]||(W[0]=K=>D(K)),onSubmit:M,onCancel:H,onAction:P,onStepChange:Z,class:"w-full"},null,8,["schema","model","is-edit-mode","loading","selected-token-core","router","permission-base","user-permissions","check-permission","dummy-mode"])])):g.value?(e.openBlock(),e.createElementBlock("div",IT,[e.createVNode(PT)])):(e.openBlock(),e.createElementBlock("div",zT," Failed to load form configuration for "+e.toDisplayString(n.layoutCode),1))]),_:1})])]))}}),[["__scopeId","data-v-79d3a75d"]]),jT={class:"h-full flex flex-col"},UT={key:1,class:"flex-1 flex items-center justify-center"},WT={key:2,class:"flex-1 flex items-center justify-center text-red-500"},xl=e.defineComponent({name:"AutoLayoutDatatable",__name:"AutoLayoutDatatable",props:{layoutCode:{},apiToken:{},userPermissions:{},permissionBase:{},checkPermission:{type:Function}},emits:["action","navigate"],setup(t,{emit:o}){var V,N,w,y,_,D;const n=t,r=o,a=e.getCurrentInstance(),{apiUrl:s}=e.inject("externalApi");let i={query:{},params:{},path:""};try{const T=Ho.useRoute();T?i=T:(w=(N=(V=a==null?void 0:a.appContext)==null?void 0:V.config)==null?void 0:N.globalProperties)!=null&&w.$route&&(i=a.appContext.config.globalProperties.$route)}catch{console.warn("useRoute not available, using fallback")}let l={back:()=>{typeof window<"u"&&window.history&&window.history.length>1&&window.history.back()},push:T=>{typeof window<"u"&&(typeof T=="string"?window.location.href=T:T&&T.path&&(window.location.href=T.path))}};try{const T=Ho.useRouter();T?l=T:(D=(_=(y=a==null?void 0:a.appContext)==null?void 0:y.config)==null?void 0:_.globalProperties)!=null&&D.$router&&(l=a.appContext.config.globalProperties.$router)}catch{console.warn("useRouter not available, using fallback")}const c=e.inject("hasActionAccess",()=>!1),d=e.inject("userPermissions",null),u=e.ref(null),f=e.ref(!0),p=e.ref(null),m="https://dcodedynamic.skyworx.co.id/api/auto-layout/datatable/form-dynamic?code=",h=e.computed(()=>`${m}${n.layoutCode}`),{setPageTitle:g}=xp();let k;try{k=Dt.useI18n().locale}catch{k=e.ref("en")}const b=()=>{if(u.value){const M=(k.value==="kr"||k.value==="ko"?u.value.titleKR||u.value.titleEN:k.value==="id"?u.value.titleID:u.value.titleEN)||u.value.title||"Datatable";g(M)}};e.watch(k,()=>{b()});const E=async()=>{f.value=!0;try{const T=n.apiToken,M=T?{Authorization:`Bearer ${T}`}:{},P=await s(h.value,"GET",null,M);P.status&&(u.value=Array.isArray(P.data)?P.data[0]:P.data,b())}catch(T){console.error("Gagal Menampilkan Datatable:",T)}finally{f.value=!1}},x=T=>{T.action},C=T=>{let M=T.route;const P=T.path;if(!M&&P){const Z=((i==null?void 0:i.path)||"").split("/");Z.length>=2&&(M=`/${Z[1]}/create`)}if(M||P){const H={...T.query||{},code:P||void 0};Object.keys(H).forEach(Z=>H[Z]===void 0&&delete H[Z]),r("navigate",{route:M||"/form",query:H}),l&&!l.__isFallback&&l.push({path:M||"/form",query:H})}else console.warn("[DEBUG] No route or path provided for navigation")};return e.onMounted(()=>{E()}),(T,M)=>(e.openBlock(),e.createElementBlock("div",jT,[!f.value&&u.value?(e.openBlock(),e.createBlock(zn,{key:0,ref_key:"dtRef",ref:p,"api-url":h.value,"api-method":"GET","table-config":u.value,"permission-base":n.permissionBase||"","dummy-mode":["datatable-create","datatable-edit"].includes(n.layoutCode),"user-permissions":n.userPermissions||e.unref(d),"permission-checker":e.unref(c),checkPermission:n.checkPermission,onAction:x,onNavigate:C},{"header-actions":e.withCtx(()=>[...M[0]||(M[0]=[])]),_:1},8,["api-url","table-config","permission-base","dummy-mode","user-permissions","permission-checker","checkPermission"])):f.value?(e.openBlock(),e.createElementBlock("div",UT,[...M[1]||(M[1]=[e.createElementVNode("i",{class:"mdi mdi-loading mdi-spin text-4xl text-primary-600"},null,-1)])])):(e.openBlock(),e.createElementBlock("div",WT," Failed to load configuration for "+e.toDisplayString(n.layoutCode),1))]))}}),HT={class:"flex items-start justify-between"},qT={class:"flex-1"},KT={class:"text-sm font-medium text-zinc-600 dark:text-zinc-400 mb-2"},GT={class:"text-3xl font-display font-semibold text-zinc-900 dark:text-zinc-100 mb-2"},XT=["innerHTML"],YT=e.defineComponent({__name:"CardSummary",props:{title:{},value:{},trend:{},icon:{},type:{default:"primary"},format:{default:"number"},delay:{default:0}},setup(t){const o=t,n=e.computed(()=>typeof o.icon=="string"&&o.icon.trim().startsWith("<svg")),r=e.computed(()=>typeof o.icon=="string"&&(Tt[o.icon]||Tt[o.icon+"Icon"])||o.icon),a=e.computed(()=>o.format==="currency"?Ng(o.value):o.value.toLocaleString("id-ID")),s=e.computed(()=>({primary:"bg-primary-100",success:"bg-success-100",warning:"bg-warning-100",info:"bg-secondary-100"})[o.type]),i=e.computed(()=>({primary:"text-primary-600",success:"text-success-600",warning:"text-warning-600",info:"text-secondary-600"})[o.type]);return(l,c)=>(e.openBlock(),e.createBlock(co,null,{default:e.withCtx(()=>[e.createElementVNode("div",HT,[e.createElementVNode("div",qT,[e.createElementVNode("p",KT,e.toDisplayString(t.title),1),e.createElementVNode("p",GT,e.toDisplayString(a.value),1)]),e.createElementVNode("div",{class:e.normalizeClass(["w-14 h-14 rounded-xl flex items-center justify-center flex-shrink-0",s.value])},[n.value?(e.openBlock(),e.createElementBlock("div",{key:0,innerHTML:t.icon,class:e.normalizeClass(["w-7 h-7",i.value])},null,10,XT)):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value),{key:1,class:e.normalizeClass(["w-7 h-7",i.value])},null,8,["class"]))],2)])]),_:1}))}}),wp=e.defineCustomElement(kl),Cp=e.defineCustomElement(xl);typeof customElements<"u"&&(customElements.get("micro-dynamic-form")||customElements.define("micro-dynamic-form",wp),customElements.get("micro-dynamic-datatable")||customElements.define("micro-dynamic-datatable",Cp));const JT=[qr,Vs,at,co,Ys,Js,Df,un,Li,Ii,zi,Wa,Yf,Eo,Qf,Ha,Gi,qi,Wi,Zf,Xi,qa,Yi,pn,Ji,Ka,ep,tp,Qi,Zi,Ga,Xa,Sn,Rn,el,op,tl,ol,nl,On,al,sl,il,ll,Ja,zn,kl,xl,yl,kp,Fn],Ep={install(t,o={}){const n=o.externalApi||o;t.provide("externalApi",n),JT.forEach(r=>{r.name&&t.component(r.name,r)})}};Ae.AutoLayoutDatatable=xl,Ae.AutoLayoutForm=kl,Ae.Breadcrumb=kp,Ae.CardSummary=YT,Ae.DCodeAutoComplete=qr,Ae.DCodeBadge=On,Ae.DCodeBeforeAfter=Ys,Ae.DCodeButton=at,Ae.DCodeCard=co,Ae.DCodeCardCheckboxList=Li,Ae.DCodeChart=Df,Ae.DCodeCheckbox=un,Ae.DCodeCurrencyField=Ii,Ae.DCodeDatePicker=Wa,Ae.DCodeDialog=Eo,Ae.DCodeDialogCloseBtn=Qf,Ae.DCodeDropzone=Ha,Ae.DCodeDynamicUploadList=Wi,Ae.DCodeFileField=Gi,Ae.DCodeFileResult=qi,Ae.DCodeIconDropdown=Zf,Ae.DCodeImageCropperDialog=Xi,Ae.DCodeImageField=qa,Ae.DCodeImageResult=Yi,Ae.DCodeInfiniteAutoComplete=Vs,Ae.DCodeLabel=pn,Ae.DCodeListLabels=Js,Ae.DCodeMonthPicker=Yf,Ae.DCodeMultiSelect=Ji,Ae.DCodeOtpInput=Ka,Ae.DCodePdfViewer=ll,Ae.DCodePercentField=zi,Ae.DCodePermissionMenu=ol,Ae.DCodeProgress=ep,Ae.DCodeProgressBar=tp,Ae.DCodeRadio=Qi,Ae.DCodeRadioCustom=Zi,Ae.DCodeRobotList=Ja,Ae.DCodeSlider=Ga,Ae.DCodeStaticImage=sl,Ae.DCodeStaticLabel=al,Ae.DCodeSwitch=Xa,Ae.DCodeTextField=Sn,Ae.DCodeTextarea=Rn,Ae.DCodeTimelineWithIcons=el,Ae.DCodeTreePermissions=nl,Ae.DCodeUploadFile=op,Ae.DCodeWizard=tl,Ae.DCodeWorkflowDiagram=il,Ae.DataTable=zn,Ae.DataTableComponent=zn,Ae.DynamicForm=yl,Ae.DynamicFormField=Fn,Ae.DynamicUI=Ep,Ae.MicroDynamicDatatable=Cp,Ae.MicroDynamicForm=wp,Ae.default=Ep,Ae.useDynamicForm=yp,Object.defineProperties(Ae,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
149
+ ${Q.value.route}`),1)])])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(oe.value,(Ue,ut)=>{var et,Ct,We,Re,it,yt,ao;return e.openBlock(),e.createElementBlock(e.Fragment,{key:ut},[!Ue.isHidden&&!e.unref(we)(Ue)&&e.unref(ke)(Ue)&&!(t.dummyMode&&((et=Q.value)!=null&&et.route))?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(me)(Ue,((We=(Ct=Q.value)==null?void 0:Ct.dialogConfig)==null?void 0:We.layoutColumns)||((Re=Q.value)==null?void 0:Re.layoutColumns)))},[e.createElementVNode("div",sT,[e.createVNode(Fn,{class:"flex-1 w-full",field:B3(Ue),"model-value":z[Ue.model],"form-data":z,required:e.unref(he)(Ue),disabled:e.unref(Ee)(Ue),readonly:e.unref(Be)(Ue),options:e.unref(se)(Ue),"dynamic-labels":e.unref(De)(Ue),"dynamic-length":e.unref(te)(Ue),"dummy-mode":t.dummyMode,"onUpdate:modelValue":gs=>z[Ue.model]=gs},null,8,["field","model-value","form-data","required","disabled","readonly","options","dynamic-labels","dynamic-length","dummy-mode","onUpdate:modelValue"]),Ue.isCopyable||(it=Ue.props)!=null&&it.isCopyable||((yt=Q.value)==null?void 0:yt.action)==="showToken"||((ao=Q.value)==null?void 0:ao.action)==="copyToken"?(e.openBlock(),e.createBlock(at,{key:0,icon:"Copy",variant:"outline",class:"h-10 w-10 p-0 flex-shrink-0",tooltip:"Salin",onClick:gs=>W3(Ue.model)},null,8,["onClick"])):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0)],64)}),128))],2)]}),_:1},8,["modelValue","title","description","size"])])}}});function iT(){const t=e.reactive({}),o=e.reactive({}),n=e.reactive({}),r=e.reactive({}),a=e.ref(!1),s=e.reactive({}),i=e.reactive({}),l=e.reactive({}),c=e.ref(!1),d=e.ref(null),u=e.reactive({}),f=e.reactive({}),p=e.reactive({}),m=e.reactive({}),h=e.reactive({}),g=e.reactive({}),k=e.reactive({visible:!1,title:"",message:"",action:null,showCancel:!0,okText:"",cancelText:"",isBlocking:!1,redirectUrl:""});return{formData:t,tableRowFormData:o,errors:n,touched:r,isSubmitted:a,fieldErrors:s,wizardState:i,inlineState:l,isSubmitting:c,internalSchema:d,rawItemsCache:u,revealedSectionIds:f,revealedFieldModels:p,wizardResponses:m,sectionLoading:h,fieldLoading:g,confirmDialog:k}}function lT({formData:t,locale:o,errors:n,fieldMap:r,activeSchema:a,isSectionVisible:s,isFieldVisible:i,isFieldRequired:l,resolveFieldLength:c}){const d=(f,p,m)=>{const h=f.props||f.propsFieldCustom||f.propsFieldGlobal||{},g=p==null?"":String(p).trim();if(l(f,m)&&g==="")return o.value==="kr"||o.value==="ko"?"필수 입력 항목입니다":o.value==="id"?"Wajib diisi":"Required";if(g==="")return null;const k=c==null?void 0:c(f,m),b=Number((k==null?void 0:k.minLength)??h.minLength),E=Number((k==null?void 0:k.maxLength)??h.maxLength);if(!Number.isNaN(b)&&b>0&&g.length<b)return o.value==="kr"||o.value==="ko"?`최소 ${b}자여야 합니다`:o.value==="id"?`Minimal ${b} karakter`:`Minimum ${b} characters`;if(!Number.isNaN(E)&&E>0&&g.length>E)return o.value==="kr"||o.value==="ko"?`최대 ${E}자여야 합니다`:o.value==="id"?`Maksimal ${E} karakter`:`Maximum ${E} characters`;if(h.regex)try{if(!new RegExp(h.regex).test(g))return h.regexMessage||(o.value==="kr"||o.value==="ko"?"올바르지 않은 형식입니다":o.value==="id"?"Format tidak valid":"Invalid format")}catch{console.warn(`[DynamicForm] Invalid validation regex for field ${f.model}:`,h.regex)}return null};return{validateField:d,validateAll:()=>{var m,h;let f=!0;const p=(g,k)=>{var C;if(!s(g))return;const b=je(g)||k;((g.propsForm||g.propsFormStep||g.propsTable||g.propsTableStep||g.props||{}).fields||g.fields||[]).forEach(V=>{if(V.model&&i(V)){const N=b?`${b}.${V.model}`:V.model,w=r.value.paths.get(N),y=w?Fe(t,w.path):t[V.model],_=d(V,y);_&&(n[N]=_,f=!1)}}),(g.type==="WIZARD"||g.isWizard)&&(((C=g.propsWizard)==null?void 0:C.propsSteps)||[]).forEach(N=>{const w=N.key||N.id;N.sectionsWizard&&(Array.isArray(N.sectionsWizard)?N.sectionsWizard:[N.sectionsWizard]).forEach(_=>p(_,w))})};return(h=(m=a.value)==null?void 0:m.sections)==null||h.forEach(g=>p(g)),f}}}function cT({formData:t,activeSchema:o,isSectionVisible:n,isFieldVisible:r,isFieldHidden:a,getWizardTabs:s,fieldMap:i,rawItemsCache:l}){const c=()=>{var g;const m=[],h=k=>{k==null||k.forEach(b=>{if(b.type==="TABLE"||b.propsTable||b.propsTableStep||b.propsDataTableWizard){const C=b.propsTable||b.propsTableStep||b.propsDataTableWizard||b,V=C.modelKey||C.modelDatatable||je(b);V&&m.push({key:V,subFields:(C.headers||[]).map(N=>N.key)})}((b.propsForm||b.propsFormStep||b.propsTable||b.propsTableStep||b.propsDataTableWizard||b.props||{}).fields||b.fields||[]).forEach(C=>{var N,w;const V=["DCodeDynamicUploadList","DCodeUploadList","DCodeDataTable","DCodeDynamicFormList"].includes(C.component);if(C.model&&((N=C.props)!=null&&N.multiple||((w=C.props)==null?void 0:w.valueType)==="array"||V)){const y=C.component.includes("Upload")?["id","filename","document","typeDocument","idDocumentType"]:["id"];m.push({key:C.model,subFields:y})}}),b.type==="WIZARD"&&s(b).forEach(C=>h(C.sections))})};return h((g=o.value)==null?void 0:g.sections),m};return{getCleanPayload:()=>{var g;if(!((g=o.value)!=null&&g.sections))return{...t};const m={},h=new Set;return o.value.sections.forEach(k=>{if(!n(k))return;const E=je(k),x=(y,_)=>{if(y.model&&(r(y,void 0,_)||a(y,void 0,_))){const D=_?`${_}.${y.model}`:y.model;let T=Fe(t,D)??t[y.model]??_o(t,y.model);if(["DCodeAutoComplete","DCodeSelect","DCodeRadio","DCodeRadioCustom"].includes(y.component)&&T!==null&&T!==void 0&&typeof T!="object"){const P=l[y.key];if(Array.isArray(P)){const H=P.find(Z=>String(Z.code)===String(T)||String(Z.id)===String(T)||String(Z.name)===String(T));if(H){const U=(y.props||y.propsFieldCustom||y.propsFieldGlobal||{}).itemValue||"id";T=H[U]??H.id??H.code??T}}}Qe(m,D,So(T)??null),h.add(y.model)}},C=k.propsForm||k.propsFormStep||k.propsTable||k.propsTableStep||k.propsDataTableWizard||k.props||{},V=k.type==="WIZARD";(C.fields||k.fields||[]).forEach(y=>x(y,V?E||C.key:void 0)),k.type==="WIZARD"&&s(k).forEach(y=>y.sections.forEach(_=>{const D=je(_),T=D?`${y.key}.${D}`:y.key;if(_.type==="TABLE"||_.propsTable||_.propsTableStep||_.propsDataTableWizard){const P=_.propsTable||_.propsTableStep||_.propsDataTableWizard||_,H=P.modelKey||P.modelDatatable||D;if(H){const Z=`${y.key}.${H}`,U=Fe(t,Z)||Fe(t,H)||[];if(Array.isArray(U)){const B=P.headers||[],A=U.filter(F=>Vr(F)?!1:B.length>0?B.some(I=>{if(I.key==="no"||I.key==="action")return!1;let v=Fe(F,I.key);if(v!=null&&v!=="")return!0;const L=I.key.includes(".")?I.key.split(".").pop():null;return!!(L&&(v=Fe(F,L),v!=null&&v!==""))}):!0);Qe(m,Z,So(A)),console.log(`[SUBMIT][WIZARD-TABLE][${Z}] Payload before sanitize:`,U.length,"after:",A.length)}else Qe(m,Z,[]);h.add(Z)}}else((_.propsForm||_.propsFormStep||_.propsTable||_.propsTableStep||_.propsDataTableWizard||_.props||{}).fields||_.fields||[]).forEach(Z=>x(Z,T))}));const N=k.propsTable||k.propsTableStep||k.propsDataTableWizard,w=(N==null?void 0:N.modelKey)||(N==null?void 0:N.modelDatatable)||E;if(w&&(k.type==="TABLE"||k.propsTable||k.propsTableStep||k.propsDataTableWizard)){const y=Fe(t,w)||[];if(Array.isArray(y)){const _=(N==null?void 0:N.headers)||[],D=y.filter(T=>Vr(T)?!1:_.length>0?_.some(M=>{if(M.key==="no"||M.key==="action")return!1;let P=Fe(T,M.key);if(P!=null&&P!=="")return!0;const H=M.key.includes(".")?M.key.split(".").pop():null;return!!(H&&(P=Fe(T,H),P!=null&&P!==""))}):!0);m[w]=So(D),console.log(`[SUBMIT][${w}] Payload before sanitize:`,y.length,"after:",D.length)}else m[w]=[];h.add(w)}}),["id","_id"].forEach(k=>{t[k]!==void 0&&!h.has(k)&&(m[k]=So(t[k]))}),m},applyFieldMapping:(m,h)=>{const g={},k=(b,E)=>{var x,C;if(b==null)return b;if(typeof b=="object")return b._isLogicValue?b.id:b.id??b.code??b.value??b;if(E&&l&&(i!=null&&i.value)){const V=(C=(x=i.value.models)==null?void 0:x.get(E))==null?void 0:C[0],N=V==null?void 0:V.field;if(N){const w=l[N.key];if(Array.isArray(w)){const y=w.find(_=>String(_.code)===String(b)||String(_.id)===String(b));if(y&&y.id!==void 0)return y.id}}}return Array.isArray(b)&&b.length===1?k(b[0],E):b};return Object.entries(h).forEach(([b,E])=>{if(typeof E=="string"){const x=Fe(m,b)??m[b]??Fe(t,b)??t[b]??_o(m,b)??_o(t,b);x!==void 0&&(g[E]=k(x,b))}else if(Array.isArray(E)&&E.length>0){const x=E[0];let C=Fe(m,b)??m[b]??Fe(t,b)??t[b]??_o(m,b)??_o(t,b);if(!Array.isArray(C)||C.length===0){const V=typeof x=="string"?[x]:Object.keys(x),N=c().find(w=>V.some(y=>w.subFields.includes(y)));if(N){const w=Fe(m,N.key)??m[N.key]??Fe(t,N.key)??t[N.key]??_o(m,N.key)??_o(t,N.key);Array.isArray(w)&&w.length>0&&(C=w)}}if(Array.isArray(C)){if(typeof x=="string")g[b]=C.map(V=>{const w=So(V)[x]??V[x]??null;return k(w,x)}).filter(V=>V!=null);else if(typeof x=="object"&&x!==null){const V=Object.entries(x);if(V.length===1&&typeof V[0][1]=="string"){const[w,y]=V[0];g[y]=C.map(_=>{const T=So(_)[w]??_[w]??null;return k(T,w)}).filter(_=>_!=null)}else g[b]=C.map(w=>{const y={},_=So(w);return V.forEach(([D,T])=>{const M=_[D]??_[T]??w[D]??null;y[T]=k(M,D)}),y}).filter(w=>!Vr(w))}}}}),g},handleResponseMapping:(m,h,g)=>{if(!m||!h)return;const k=m,b=(m==null?void 0:m.data)!==void 0?m.data:m,E=Array.isArray(b)?b[0]:b;Object.entries(h).forEach(([x,C])=>{if(typeof x!="string"||typeof C!="string")return;const V=(w,y)=>{if(!(!y||!w||typeof y!="string")){if(y in w)return w[y];try{return y.split(".").reduce((_,D)=>_&&_[D],w)}catch{return}}},N=V(k,x)??V(k,C)??(b&&typeof b=="object"?V(b,x)??V(b,C):void 0)??(E&&typeof E=="object"?V(E,x)??V(E,C):void 0);if(N!==void 0){const w=g&&!C.includes(".")?`${g}.${C}`:C;Qe(t,w,N)}})},handleClearMapping:(m,h)=>{m&&Object.values(m).forEach(g=>{if(typeof g!="string")return;const k=h&&!g.includes(".")?`${h}.${g}`:g;Qe(t,k,null)})},getFormArrayModels:c}}function dT({state:t,props:o,emit:n,apiUrl:r,router:a,locale:s,mapping:i,validation:l,fieldMap:c,activeSchema:d,resolvedBaseUrl:u,resolveKeyParams:f}){const p=x=>{if(o.dummyMode)return!0;if(x.permission&&o.checkPermission){let C=o.checkPermission(x.permission);if(!C&&x.permission!==x.permission.toLowerCase()&&(C=o.checkPermission(x.permission.toLowerCase())),!C)return!1}return x.permission==="CREATE"?!o.isEditMode:x.permission==="UPDATE"?o.isEditMode:!0},m=x=>{var C,V,N,w,y,_;x.requireConfirm?(t.confirmDialog.title=s.value==="kr"||s.value==="ko"?((C=x.propCustomMessage)==null?void 0:C.titleKR)||"확인":s.value==="id"?((V=x.propCustomMessage)==null?void 0:V.titleID)||"Konfirmasi":((N=x.propCustomMessage)==null?void 0:N.titleEN)||"Confirm",t.confirmDialog.message=s.value==="kr"||s.value==="ko"?((w=x.propCustomMessage)==null?void 0:w.messageKR)||"계속하시겠습니까?":s.value==="id"?((y=x.propCustomMessage)==null?void 0:y.messageID)||"Lanjutkan?":((_=x.propCustomMessage)==null?void 0:_.messageEN)||"Continue?",t.confirmDialog.action=x,t.confirmDialog.visible=!0):g(x)},h=()=>{const x=t.confirmDialog.redirectUrl;if(t.confirmDialog.visible=!1,t.confirmDialog.action&&(typeof t.confirmDialog.action=="function"?t.confirmDialog.action():typeof t.confirmDialog.action.callback=="function"?t.confirmDialog.action.callback():g(t.confirmDialog.action)),x&&a){const C=x.startsWith("/")?x:"/"+x;a.push(C)}t.confirmDialog.redirectUrl="",t.confirmDialog.isBlocking=!1},g=async x=>{var _,D,T;const C=x.propsActionGlobal||x.props||{},V=i.getCleanPayload(),N=C.fieldMapping||x.fieldMapping||{},w=i.applyFieldMapping(V,N);n("action",x,w);const y=C.endpointDialogActionSave||x.endpointDialogActionSave||C.endpointDialogAction||x.endpointDialogAction||C.endpointAction||x.endpointAction||C.endpointPropAction||x.endpointPropAction||C.endpoint||x.endpoint;if((C.type==="SUBMIT"||C.type==="ACTION")&&(y!=null&&y.apiUrl)){if(o.dummyMode){Le.info(s.value==="kr"||s.value==="ko"?"제출 작업 시뮬레이션 (더미 모드)":s.value==="id"?"Simulasi aksi Submit (Dummy Mode)":"Action Submit simulated (Dummy Mode)",{autoClose:2e3}),n("success",{dummy:!0});return}const M=Le.loading(s.value==="kr"||s.value==="ko"?"처리 중...":s.value==="id"?"Memproses...":"Processing..."),P=Bo(y.apiUrl,u.value);try{let H={...w};if(f&&Array.isArray(y.keyParam)){const I=f(y.keyParam);console.log("[SUBMIT] Resolved keyParams for action:",I),Object.assign(H,I)}const Z=y.responseType==="blob"||y.responseType==="arraybuffer"||y.accept&&!y.accept.includes("json")||y.apiUrl&&(y.apiUrl.includes("/export")||y.apiUrl.includes("/download"))||x.actionType==="EXPORT"||x.permission==="EXPORT"||C.type==="EXPORT"||C.permission==="EXPORT",U={...y.config};y.accept&&(U.headers||(U.headers={}),U.headers.Accept=y.accept,U.headers.accept=y.accept),Z&&(U.responseType=y.responseType||"blob"),console.log("[SUBMIT] Starting API call to:",P,"with payload/params:",H,"and config:",U);const B=await r(P,y.apiMethod||"POST",H,U);if(console.log("[SUBMIT] API response received:",B),Z&&(B instanceof Blob||((_=B==null?void 0:B.constructor)==null?void 0:_.name)==="Blob"||(B==null?void 0:B.size)!==void 0)){const I=B instanceof Blob?B:new Blob([B],{type:y.accept||"application/octet-stream"});if(I.type==="application/json"){const q=new FileReader;q.onload=()=>{try{const ae=JSON.parse(q.result).message||(s.value==="id"?"Gagal mengunduh file":"Failed to download file");Le.update(M,{render:ae,type:"error",isLoading:!1,autoClose:5e3})}catch{const ae=window.URL.createObjectURL(I),j=document.createElement("a");j.href=ae;const J=`${x.label||C.labelID||C.labelEN||"Export"}_${new Date().toISOString().slice(0,10)}.pdf`;j.setAttribute("download",J),document.body.appendChild(j),j.click(),j.remove(),window.URL.revokeObjectURL(ae),Le.update(M,{render:s.value==="id"?"File berhasil diunduh!":"File downloaded successfully!",type:"success",isLoading:!1,autoClose:2e3})}},q.readAsText(I),t.isSubmitting.value=!1;return}const v=window.URL.createObjectURL(I),L=document.createElement("a");L.href=v;let R="bin";const O=(y.accept||"").toLowerCase(),W=(y.apiUrl||"").toLowerCase();O.includes("pdf")?R="pdf":O.includes("excel")||O.includes("sheet")||O.includes("spreadsheet")||O.includes("xlsx")?R="xlsx":O.includes("csv")?R="csv":O.includes("zip")?R="zip":W.includes("pdf")?R="pdf":W.includes("excel")||W.includes("xlsx")?R="xlsx":W.includes("csv")?R="csv":W.includes("zip")&&(R="zip");const ne=`${x.label||C.labelID||C.labelEN||"Export"}_${new Date().toISOString().slice(0,10)}.${R}`;L.setAttribute("download",ne),document.body.appendChild(L),L.click(),L.remove(),window.URL.revokeObjectURL(v),Le.update(M,{render:s.value==="id"?"File berhasil diunduh!":"File downloaded successfully!",type:"success",isLoading:!1,autoClose:2e3}),t.isSubmitting.value=!1,n("success",B);return}const A=(B==null?void 0:B.status)===!0;console.log("[SUBMIT] response.status:",B==null?void 0:B.status),console.log("[SUBMIT] isSuccess evaluated as:",A);const F=(B==null?void 0:B.message)||(A?s.value==="kr"||s.value==="ko"?"성공":s.value==="id"?"Sukses":"Success":s.value==="kr"||s.value==="ko"?"실패":s.value==="id"?"Gagal":"Failed");if(Le.update(M,{render:F,type:A?"success":"error",isLoading:!1,autoClose:A?2e3:5e3}),A){if(console.log("[SUBMIT] Success condition passed"),(C.fieldMapping||x.fieldMapping)&&(console.log("[SUBMIT] Applying field mapping for response"),i.handleResponseMapping(B,C.fieldMapping||x.fieldMapping)),n("success",B),a){const I=C.routeBack;console.log("[SUBMIT] routeBack value:",I);const v=L=>{if(!L){console.log("[SUBMIT] No path provided for navigation");return}const R=L.startsWith("/")?L:"/"+L;console.log("[SUBMIT] Triggering router.push to:",R),setTimeout(()=>{a.push(R).then(()=>{console.log("[SUBMIT] Router push success")}).catch(O=>{console.error("[SUBMIT] Router push failed:",O)})},150)};if(I)v(I);else{console.log("[SUBMIT] routeBack missing, attempting directory-up fallback");const O=((((D=a.currentRoute)==null?void 0:D.value)||a.currentRoute||{}).path||"/").split("/").filter(Boolean);O.length>1?(O.pop(),v("/"+O.join("/"))):v("/")}}try{let I=(B==null?void 0:B.data)||(B==null?void 0:B.payload)||B;if(Array.isArray(I)&&I.length>0&&(I=I[0]),I&&typeof I=="object"&&a){const L={...(((T=a.currentRoute)==null?void 0:T.value)||a.currentRoute||{}).query||{}};let R=!1;const O=Nr(I),W=["status","success","code","message","error","errorCode","errorMessage"];if(Object.entries(O).forEach(([K,ne])=>{!W.includes(K)&&ne!==null&&ne!==void 0&&(typeof ne=="string"||typeof ne=="number"||typeof ne=="boolean")&&L[K]!==String(ne)&&(L[K]=String(ne),R=!0)}),R&&typeof window<"u"&&window.history){const K=new URL(window.location.href);Object.entries(L).forEach(([ne,q])=>{q!=null&&K.searchParams.set(ne,String(q))}),window.history.replaceState(window.history.state,"",K.toString())}}}catch(I){console.warn("[SUBMIT] Failed to update query params:",I)}}else console.log("[SUBMIT] Success condition failed (status is not true). Navigation aborted."),n("error",B)}catch(H){console.error("[SUBMIT] Critical error during action execution. Navigation aborted.",H),Le.error(H.message||"Action failed"),n("error",H)}finally{t.isSubmitting.value=!1}return}else if(C.type==="SUBMIT"){if(o.dummyMode){Le.info(s.value==="kr"||s.value==="ko"?"제출 작업 시뮬레이션 (더미 모드)":s.value==="id"?"Simulasi aksi Submit (Dummy Mode)":"Action Submit simulated (Dummy Mode)",{autoClose:2e3});return}n("submit",w)}C.keyRedirect&&C.route&&a&&(console.log("[SUBMIT] Triggering synchronous keyRedirect navigation to:",C.route),a.push(C.route))};return{isActionVisible:p,handleGlobalButtonClick:m,confirmAction:h,performAction:g,handleSubmit:async()=>{var x,C;if(o.dummyMode){Le.info(s.value==="kr"||s.value==="ko"?"제출 작업 시뮬레이션 (더미 모드)":s.value==="id"?"Simulasi aksi Submit (Dummy Mode)":"Action Submit simulated (Dummy Mode)",{autoClose:2e3});return}if(t.isSubmitted.value=!0,!!l.validateAll()){t.isSubmitting.value=!0;try{const V=i.getCleanPayload(),N=(((x=d.value)==null?void 0:x.actions)||[]).find(y=>{var _;return y.type==="SUBMIT"||y.key==="SUBMIT"||((_=y.propsActionGlobal)==null?void 0:_.type)==="SUBMIT"}),w=(N==null?void 0:N.fieldMapping)||((C=N==null?void 0:N.propsActionGlobal)==null?void 0:C.fieldMapping);n("submit",w?i.applyFieldMapping(V,w):V)}finally{t.isSubmitting.value=!1}}},handleCancel:()=>n("cancel"),handleFieldUpdate:(x,C,V)=>{var T;let N=x;const w=c.value.models.get(x);w&&w.length>0&&(N=(V&&w.find(P=>P.path.startsWith(`${V}.`))||w[0]).path);const y=Fe(t.formData,N),_=M=>M==null||M===""||Array.isArray(M)&&M.length===0?null:M;JSON.stringify(_(C))!==JSON.stringify(_(y))&&(t.touched[N]=!0),V?Qe(t.formData,N,C):t.formData[x]=C;const D=(T=c.value.paths.get(N))==null?void 0:T.field;if(D){const M=l.validateField(D,C);M?t.errors[N]=M:delete t.errors[N]}}}}function uT(t){const{formData:o,emit:n,mapping:r,validation:a,locale:s,logic:i,state:l,activeSchema:c,prefetchFieldItems:d,triggerFetchRule:u}=t,f=e.ref(!1),p=e.ref(""),m=e.ref("Plus"),h=e.ref([]),g=e.ref("md"),k=(l==null?void 0:l.tableRowFormData)||e.reactive({});console.log("[useFormTable][DEBUG] Init. State passed:",!!l,"Identity Match:",k===(l==null?void 0:l.tableRowFormData)),console.log("[useFormTable][DEBUG] tableRowFormData keys:",Object.keys(k));const b=e.reactive({}),E=e.ref(""),x=e.ref(null),C=e.ref(!1),V=e.ref(null),N=e.ref(!1),w=new Map,y=()=>{!i||!h.value.length||h.value.forEach(v=>{var ae,j,z,J;const L=v.model;if(!L)return;const R=v.key||L,O=L,W={visibleRule:(ae=v.logic)==null?void 0:ae.visibleRule,disabledRule:(j=v.logic)==null?void 0:j.disabledRule,optionsFilterRule:(z=v.logic)==null?void 0:z.optionsFilterRule,lengthRule:(J=v.logic)==null?void 0:J.lengthRule},K={},ne=v.props||v.propsFieldCustom||v.propsFieldGlobal||{},q=ne.endpoint||ne.endpointReference||ne.endpointComponent||ne.endpointPropAction;if(Object.entries(W).forEach(([le,ye])=>{if(!ye)return;let oe;le==="visibleRule"?oe=i.isFieldVisible(v,k):le==="disabledRule"?oe=i.isFieldDisabled(v,k):le==="optionsFilterRule"?oe=i.getFilteredItems(v,k):le==="lengthRule"&&(oe=i.resolveFieldLength(v,k));const ge=JSON.stringify(oe);K[le]=ge;const ce=w.get(R);(ce==null?void 0:ce[le])!==void 0&&ce[le]!==ge&&(le==="visibleRule"&&oe===!1||le==="disabledRule"&&oe===!0||le==="optionsFilterRule"||le==="lengthRule")&&(k[O]=null)}),Array.isArray(q==null?void 0:q.keyParam)&&q.keyParam.forEach(le=>{var de;let ye,oe;if(typeof le=="string")ye=k[le],oe=`kp-${le}`;else if(typeof le=="object"&&le!==null)ye=Object.values(le).map(he=>k[he]),oe=`kp-${JSON.stringify(le)}`;else return;const ge=JSON.stringify(ye);K[oe]=ge;const ce=w.get(R);if(ce==null||ce[oe],ge!==(ce==null?void 0:ce[oe])){d&&d(v,!0,O,k),u&&((de=v.props)!=null&&de.fetchRule)&&u(v,v.props.fetchRule,O,k);const ke=(ce==null?void 0:ce[oe])==="null"||(ce==null?void 0:ce[oe])==="undefined"||!ce,he=ge==="null"||ge==="undefined",Ee=typeof le=="string"&&(le===v.key||le===v.model);(!ke||he)&&!Ee&&(k[O]=null)}}),w.set(R,K),!i.isFieldVisible(v,k)){const le=k[O];le!=null&&le!==""&&(k[O]=null)}})},_=()=>{!i||!h.value.length||(y(),h.value.forEach(v=>{var K,ne,q;const L=v.model;if(!L)return;const R=i.resolveDefaultValue(v,k);if(R!=null){const Q=k[L],j=(v.props||v.propsFieldCustom||v.propsFieldGlobal||{}).returnObject||((K=v.logic)==null?void 0:K.returnObject);(Q==null||Q===""||j&&(typeof Q=="string"||typeof Q=="number")&&(typeof R=="object"&&R!==null))&&(k[L]=R)}const O=v.props||v.propsFieldCustom||v.propsFieldGlobal||{},W=((ne=v.logic)==null?void 0:ne.autoSelect)||O.autoSelect||"single";if(W!=="none"&&(l!=null&&l.rawItemsCache)){const Q=l.rawItemsCache[v.key]||[];if(Q.length>0){const ae=k[L];if(ae==null||ae===""){const j=O.returnObject||((q=v.logic)==null?void 0:q.returnObject),z=Q[0];if(W==="single"&&Q.length===1){const J=j?z:z.id??z.value??z.code;k[L]=J}else if(W==="first"){const J=j?z:z.id??z.value??z.code;k[L]=J}}}}}))};e.watch(()=>({...l==null?void 0:l.rawItemsCache}),()=>{f.value&&_()},{deep:!0});const D=v=>{var L;return!(v!=null&&v.apiUrl)&&!((L=v==null?void 0:v.endpointTable)!=null&&L.apiUrl)},T=v=>{if(!v)return!1;const L=(v.key||"").toLowerCase(),R=(v.permission||"").toUpperCase();return L==="detail"||L.includes("view")||R==="VIEW"},M=v=>{var W,K;const L=v.modelKey||v.modelDatatable,R=v.key||v.id,O=(c==null?void 0:c.value)||((W=l==null?void 0:l.internalSchema)==null?void 0:W.value)||((K=i==null?void 0:i.activeSchema)==null?void 0:K.value);if(O!=null&&O.sections&&R){const ne=(Q,ae)=>{var j;for(const z of Q)if(z.type==="WIZARD"&&((j=z.propsWizard)!=null&&j.propsSteps))for(const J of z.propsWizard.propsSteps){const le=Array.isArray(J.sectionsWizard)?J.sectionsWizard:J.sectionsWizard?[J.sectionsWizard]:[];if(le.some(ge=>{var de,ke,he,Ee;return(ge.key||ge.id||((de=ge.propsTable)==null?void 0:de.key)||((ke=ge.propsTableStep)==null?void 0:ke.key)||((he=ge.propsForm)==null?void 0:he.key)||((Ee=ge.propsFormStep)==null?void 0:Ee.key))===ae}))return J.modelKey||J.key||null;const oe=ne(le,ae);if(oe)return oe}return null},q=ne(O.sections,R);if(q){const Q=`${q}.${L||R}`;return console.log(`[resolveTableDataKey][WIZARD-MATCH] Resolved nested path: "${Q}" for section: "${R}"`),Q}}return L&&Fe(o,L)!==void 0?L:R&&Fe(o,R)!==void 0?R:Fe(o,"data")!==void 0?"data":L||R},P=v=>{if(!v)return[];const L=M(v),R=Fe(o,L);if(!Array.isArray(R))return[];const O=v.headers||[],W=R.filter(K=>Vr(K)?!1:O.length===0?!0:O.some(q=>{var z,J,le;if(q.key==="no"||q.key==="action")return!1;let Q=Fe(K,q.key);if(Q!=null&&Q!=="")return!0;const ae=q.key.includes(".")?q.key.split(".").pop():null;if(ae&&(Q=Fe(K,ae),Q!=null&&Q!==""))return!0;const j=(le=(J=(z=q.custom)==null?void 0:z.propsCustom)==null?void 0:J[0])==null?void 0:le.value;return!!(j&&j!==q.key&&j!==ae&&(Q=Fe(K,j),Q!=null&&Q!==""))}));return R.length>0&&(console.log(`[TABLE][${L}] Raw rows:`,R.length,"Filtered rows:",W.length),R.length!==W.length&&console.log(`[TABLE][${L}] Filtered out ${R.length-W.length} rows (empty or mismatch).`)),W},H=v=>{var R,O;if((R=v.fields)!=null&&R.length)return v.fields;const L=(v.actionTableGlobal||[]).find(W=>W.permission==="CREATE"||(W.key||"").toLowerCase().includes("add"));return(O=L==null?void 0:L.fieldActionGlobal)!=null&&O.length?L.fieldActionGlobal:(v.headers||[]).filter(W=>W.key&&W.key!=="no").map(W=>({key:W.key,model:W.key,component:"DCodeTextField"}))},Z=(v,L)=>{V.value={propsTable:v,row:L},N.value=!0},U=()=>{if(!V.value)return;const{propsTable:v,row:L}=V.value;N.value=!1;const R=M(v),O=Fe(o,R);if(Array.isArray(O)){const W=O.indexOf(L);if(W!==-1)O.splice(W,1);else{const K=JSON.stringify(L,(q,Q)=>["no","_index"].includes(q)?void 0:Q),ne=O.findIndex(q=>JSON.stringify(q,(Q,ae)=>["no","_index"].includes(Q)?void 0:ae)===K);ne!==-1&&O.splice(ne,1)}Qe(o,R,[...O]),n("update:model",r.getCleanPayload())}},B=(v,L)=>{console.log(`[useFormTable][DEBUG] Updating ${v} with:`,L,"Target Object Keys:",Object.keys(k)),k[v]=L,_();const R=h.value.find(O=>O.model===v);if(R){const O=a.validateField(R,L);O?b[v]=O:delete b[v]}},A=(v,L,R)=>{var ne,q;const O="[FORM-TABLE-TRACER]";console.log(`${O} Starting openTableRowDialog`,{sectionKey:v.modelKey||v.key||v.id,action:L.key||L.permission,hasRowData:!!R}),R&&console.log(`${O} Raw Row Data Received:`,JSON.parse(JSON.stringify(R))),E.value=M(v),console.log(`${O} Resolved activeTableKey: "${E.value}"`),C.value=T(L),x.value=null,p.value=s.value==="id"?L.labelID||"Tambah Data":L.labelEN||"Add Data",m.value=L.icon||"Plus";const W=(((ne=L.dialogConfig)==null?void 0:ne.layoutSize)||"md").toLowerCase();g.value=W,console.log(`[useFormTable][DEBUG] Opening Dialog with size: "${W}" (from ${(q=L.dialogConfig)==null?void 0:q.layoutSize})`);const K=L.fieldActionCustom||L.fieldActionGlobal||H(v);h.value=K,console.log(`${O} Dialog Fields Count:`,K.length),Object.keys(k).forEach(Q=>{k[Q]=null}),Object.keys(b).forEach(Q=>delete b[Q]),w.clear(),K.forEach((Q,ae)=>{const j=Q.model||Q.key;if(!j){console.warn(`${O} Field at index ${ae} is missing a model/key!`);return}let z=R?Fe(R,j):null,J="DEEP_MATCH";if(R&&z==null){const le=j.includes(".")?j.split(".").pop():null;le&&(z=Fe(R,le),z!=null&&(J=`LEAF_MATCH("${le}")`))}R&&console.log(`${O} Field "${j}" [${J}] -> Resolved Value:`,z),k[j]=z??null}),console.log(`${O} Final tableRowFormData prepared:`,JSON.parse(JSON.stringify(k))),f.value=!0,setTimeout(()=>{console.log(`${O} Triggering initial scanDialogLogic...`),_()},10)};return{tableDialogOpen:f,tableDialogTitle:p,tableDialogIcon:m,tableDialogFields:h,tableRowFormData:k,tableRowErrors:b,activeTableKey:E,editingRowIndex:x,tableDialogViewOnly:C,confirmDeletePending:V,confirmDeleteOpen:N,tableDialogSize:g,isTemporaryTable:D,isActionViewOnly:T,tableRows:P,resolveTableFields:H,confirmTableDelete:Z,executeTableDelete:U,handleTableRowUpdate:B,openTableRowDialog:A,handleDataTableAction:(v,L)=>{var Q,ae,j,z,J,le,ye,oe,ge;const{action:R,row:O}=L,W=R.toLowerCase();if(L.isLocalSave||L.actionType==="CREATE"||L.actionType==="UPDATE"){const ce=L.modelDatatable||M(v);if(ce&&O&&typeof O=="object"){const de=Fe(o,ce)||[],ke=Array.isArray(de)?[...de]:[];if(L.actionType==="UPDATE"){let he=L.rowIndex!==void 0&&L.rowIndex!==null?L.rowIndex:-1;if(he===-1&&(he=L.originalRow?ke.indexOf(L.originalRow):-1),he===-1){const Ee=JSON.stringify(L.originalRow||{},(Be,we)=>["no","_index"].includes(Be)?void 0:we);he=ke.findIndex(Be=>JSON.stringify(Be,(we,De)=>["no","_index"].includes(we)?void 0:De)===Ee)}he!==-1?ke[he]={...O}:ke.push({...O})}else ke.push({...O});if(Qe(o,ce,[...ke]),l!=null&&l.formData&&Qe(l.formData,ce,[...ke]),n("update:modelValue",{...o}),n("update:model",{...o}),r!=null&&r.getCleanPayload){const he=r.getCleanPayload();n("update:modelValue",he),n("update:model",he)}}return}if(/delete|trash/i.test(R)){const ce=M(v),de=Fe(o,ce);if(Array.isArray(de)){const ke=de.indexOf(O);if(ke!==-1)de.splice(ke,1);else{const he=JSON.stringify(O,(Be,we)=>["no","_index"].includes(Be)?void 0:we),Ee=de.findIndex(Be=>JSON.stringify(Be,(we,De)=>["no","_index"].includes(we)?void 0:De)===he);Ee!==-1&&de.splice(Ee,1)}n("update:model",r.getCleanPayload())}return}let K=null;const ne=ce=>Array.isArray(ce)?ce.find(de=>{var Ee,Be,we,De;const ke=(de.key||((Ee=de.propsActionGlobal)==null?void 0:Ee.key)||((Be=de.propsActionCustom)==null?void 0:Be.key)||"").toLowerCase(),he=(de.actionType||((we=de.propsActionGlobal)==null?void 0:we.actionType)||((De=de.propsActionCustom)==null?void 0:De.actionType)||"").toLowerCase();return ke===W||he===W}):null;K=ne(v.actionTableGlobal)||ne(v.actionTableLine),!K&&Array.isArray(v.headers)&&v.headers.forEach(ce=>{var de;if(((de=ce.custom)==null?void 0:de.type)==="ACTION"){const ke=ne(ce.custom.actionCustom);ke&&(K=ke)}});const q=((K==null?void 0:K.actionType)||((Q=K==null?void 0:K.propsActionGlobal)==null?void 0:Q.actionType)||((ae=K==null?void 0:K.propsActionCustom)==null?void 0:ae.actionType)||(K==null?void 0:K.permission)||"").toLowerCase();if(q==="delete"||q==="destroy"){const ce=(K==null?void 0:K.endpoint)||((j=K==null?void 0:K.propsActionGlobal)==null?void 0:j.endpointPropAction)||((z=K==null?void 0:K.propsActionCustom)==null?void 0:z.endpointPropAction);if(!(ce!=null&&ce.apiUrl)){const de=M(v),ke=Fe(o,de);if(Array.isArray(ke)){let he=-1;if(O&&(he=ke.indexOf(O),he===-1)){const Ee=JSON.stringify(O,(Be,we)=>["no","_index"].includes(Be)?void 0:we);he=ke.findIndex(Be=>JSON.stringify(Be,(we,De)=>["no","_index"].includes(we)?void 0:De)===Ee)}he!==-1&&(ke.splice(he,1),Qe(o,de,[...ke]),n("update:model",r.getCleanPayload()))}return}}if(q==="view"||q==="detail"||/detail|view/i.test(R)){A(v,K||{key:"detail",permission:"VIEW"},O);return}if((q==="update"||q==="create"||q==="edit"||q==="add"||/edit|add|create|update/i.test(R))&&(K==null?void 0:K.openDialog)!==!1){if(q==="create"||q==="add"||/add|create/i.test(R))A(v,K||{key:"create",permission:"CREATE"});else{const de=M(v),ke=Fe(o,de);let he=Array.isArray(ke)?ke.indexOf(O):-1;if(he===-1&&Array.isArray(ke)){const Ee=JSON.stringify(O,(Be,we)=>["no","_index"].includes(Be)?void 0:we);he=ke.findIndex(Be=>JSON.stringify(Be,(we,De)=>["no","_index"].includes(we)?void 0:De)===Ee)}x.value=he!==-1?he:null,A(v,K||{key:"edit",permission:"UPDATE"},O)}return}if(O&&typeof O=="object"&&!((J=K==null?void 0:K.endpoint)!=null&&J.apiUrl)&&!((ye=(le=K==null?void 0:K.propsActionGlobal)==null?void 0:le.endpointPropAction)!=null&&ye.apiUrl)){const ce=v.modelDatatable,de=Fe(o,ce)||[],ke=Array.isArray(de)?[...de]:[],he=(oe=v.headers)==null?void 0:oe.find(De=>{var te;return((te=De.custom)==null?void 0:te.type)==="CHECKBOX"||De.keyCheckbox}),Ee=(he==null?void 0:he.keyCheckbox)||((ge=he==null?void 0:he.custom)==null?void 0:ge.keyCheckbox)||"id";let Be=-1;O[Ee]&&(Be=ke.findIndex(De=>De[Ee]===O[Ee])),Be===-1?ke.push({...O}):ke.splice(Be,1,{...O}),Qe(o,ce,ke),n("update:model",r.getCleanPayload())}},saveTableRow:()=>{console.log("[SAVE-TRACER] Starting saveTableRow",{activeTableKey:E.value,editingIndex:x.value});let L=!0;if(h.value.forEach(K=>{const ne=a.validateField(K,k[K.model]);ne&&(b[K.model]=ne,L=!1)}),!L)return;const R=E.value;if(!R)return;const O=Fe(o,R)||[],W=Array.isArray(O)?[...O]:[];x.value!==null?W.splice(x.value,1,{...k}):W.push({...k}),Qe(o,R,W),f.value=!1,n("update:model",r.getCleanPayload())}}}function fT(t){const{state:o,props:n,emit:r,logic:a,mapping:s,activeSchema:i,fieldMap:l,prefetchFieldItems:c,triggerFetchRule:d,fetchSectionData:u,router:f}=t;let p="",m=!1,h=!0;const g=new Map,k=new Map,b=new Map,E=async(w,y)=>{var Z;const _=(Z=i.value)==null?void 0:Z.sections;if(!_)return;a.applyCalculations();const D=a.getNormalizedData(w),T=(U,B,A,F)=>{const I=a.isFieldVisible(U,F,B)&&A;return g.set(U.model,I),I},M=(U,B,A,F,I)=>{var J,le,ye;const v=U.model,L=U.logic,R=U.props||U.propsFieldCustom||U.propsFieldGlobal||{},O=R.endpoint||R.endpointReference||R.endpointComponent||R.endpointPropAction,W=Array.isArray(O==null?void 0:O.keyParam);if(!L&&!W)return;const K={};if(["lengthRule","optionsFilterRule","visibleRule","disabledRule"].forEach(oe=>{const ge=L==null?void 0:L[oe];if(!ge)return;let ce;if(oe==="visibleRule")ce=a.isFieldVisible(U,F,B);else if(oe==="disabledRule")ce=a.isFieldDisabled(U,F,B);else if(oe==="requiredRule")ce=a.isFieldRequired(U,F,B);else if(oe==="lengthRule")ce=a.resolveFieldLength(U,F);else{const he=a.resolveActiveRule(ge,F,`${oe}-${v}`,B);ce=he?a.evaluateLogic(he,F,`${oe}-${v}`,B):null}const de=JSON.stringify(ce);K[oe]=de;const ke=b.get(v);(ke==null?void 0:ke[oe])!==void 0&&ke[oe]!==de&&I&&(oe==="visibleRule"&&ce===!1||oe==="disabledRule"&&ce===!0||oe==="optionsFilterRule"||oe==="lengthRule")&&Qe(o.formData,B,null)}),I&&!A){const oe=Fe(o.formData,B);oe!=null&&oe!==""&&Qe(o.formData,B,null)}Array.isArray(O==null?void 0:O.keyParam)&&O.keyParam.forEach(oe=>{let ge,ce;if(typeof oe=="string")ge=F[oe],ce=`kp-${oe}`;else if(typeof oe=="object"&&oe!==null)ge=Object.values(oe).map(Ee=>F[Ee]),ce=`kp-${JSON.stringify(oe)}`;else return;const de=JSON.stringify(ge);K[ce]=de;const ke=b.get(v);if((ke==null?void 0:ke[ce])!==void 0&&ke[ce]!==de){A&&c(U,!0,B);const he=ke[ce]==="null"||ke[ce]==="undefined",Ee=de==="null"||de==="undefined",Be=typeof oe=="string"&&(oe===U.key||oe===U.model);I&&(!he||Ee)&&!Be&&Qe(o.formData,B,null)}}),(Array.isArray(L==null?void 0:L.fetchRule)?L.fetchRule:[L==null?void 0:L.fetchRule].filter(Boolean)).forEach((oe,ge)=>{var we;const ce=`fetch-${ge}`,de=a.evaluateLogic(oe.condition,F,`FETCH-${v}`,B),ke=JSON.stringify(de);F[v],K[ce]=ke;const he=b.get(v),Ee=(he==null?void 0:he[ce])==="true";let Be=!1;de&&!Ee&&(Be=!0),de&&Array.isArray((we=oe.endpoint)==null?void 0:we.keyParam)&&oe.endpoint.keyParam.forEach(De=>{let te,se;if(typeof De=="string")te=F[De],te===void 0&&U&&U.key===De&&(te=F[U.model]),se=`kp-${De}`;else if(typeof De=="object"&&De!==null)te=Object.values(De).map(ie=>F[ie]),se=`kp-${JSON.stringify(De)}`;else return;const ue=JSON.stringify(te);(he==null?void 0:he[se])!==void 0&&he[se]!==ue&&(Be=!0),K[se]=ue}),Be&&A&&d(U,oe,B)}),(Array.isArray(L==null?void 0:L.copyRule)?L.copyRule:[L==null?void 0:L.copyRule].filter(Boolean)).forEach((oe,ge)=>{const ce=`copy-${ge}`,de=oe.condition?a.evaluateLogic(oe.condition,F,`COPY-COND-${v}`,B):!0;let ke;typeof oe.source=="string"?ke=F[oe.source]:oe.source&&typeof oe.source=="object"&&(ke=a.evaluateLogic(oe.source,F,`COPY-SRC-${v}`,B));const he=JSON.stringify({conditionMet:de,sourceVal:ke}),Ee=b.get(v);if((Ee==null?void 0:Ee[ce])!==he&&de){const we=Fe(o.formData,B);JSON.stringify(we)!==JSON.stringify(ke)&&Qe(o.formData,B,ke)}K[ce]=he});const ae=a.resolveDefaultValue(U,F,B);if(ae!=null){const oe=Fe(o.formData,B),ce=(U.props||U.propsFieldCustom||U.propsFieldGlobal||{}).returnObject||((J=U.logic)==null?void 0:J.returnObject);(oe==null||oe===""||ce&&(typeof oe=="string"||typeof oe=="number")&&(typeof ae=="object"&&ae!==null))&&Qe(o.formData,B,ae)}const j=U.props||U.propsFieldCustom||U.propsFieldGlobal||{},z=((le=U.logic)==null?void 0:le.autoSelect)||j.autoSelect||"none";if(z!=="none"){const oe=o.rawItemsCache[U.key]||[];if(oe.length>0){const ge=Fe(o.formData,B);if(ge==null||ge===""){const ce=j.returnObject||((ye=U.logic)==null?void 0:ye.returnObject),de=oe[0];if(z==="single"&&oe.length===1){const ke=ce?de:de.id??de.value??de.code;Qe(o.formData,B,ke)}else if(z==="first"){const ke=ce?de:de.id??de.value??de.code;Qe(o.formData,B,ke)}}}}b.set(v,K)},P=async(U,B,A)=>{var L;if(U.type!=="WIZARD")return;const F=((L=U.propsWizard)==null?void 0:L.propsSteps)||[],I=je(U),v=o.wizardState[I]??0;for(let R=0;R<F.length;R++){const O=F[R],ne=a.isSectionVisible(O,A)&&B&&R===v,q=O.modelKey||O.key||O.id;Array.isArray(O.sectionsWizard)?await H(O.sectionsWizard,ne,q):O.sectionsWizard&&await H([O.sectionsWizard],ne,q)}},H=async(U,B=!0,A)=>{if(U)for(const F of U){const v=a.isSectionVisible(F,w)&&B,L=je(F),R=A?L?`${A}.${L}`:A:L||"ROOT",O=A&&L?`${A}.${L}`:A,W=F.propsForm||F.propsFormStep||F.propsTable||F.propsTableStep||F.propsDataTableWizard||F.props||{};if(y&&!v){const q=W.modelDatatable||W.modelKey||(F.type==="TABLE"?F.key||F.id:null);if(q){const Q=Fe(o.formData,q);(Array.isArray(Q)?Q.length>0:Q!=null&&Q!=="")&&Qe(o.formData,q,Array.isArray(Q)?[]:null)}}const K=k.get(R);v&&(K===!1||K===void 0)?(k.set(R,!0),(W.endpointSection||W.endpointForm||W.endpointTable)&&(console.log(`[useFormWatcher][TRIGGER] Auto-fetching section: ${R}`),await u(R,F,O))):k.set(R,v);const ne=W.fields||F.fields||[];for(const q of ne){if(!q.model)continue;const Q=O?`${O}.${q.model}`:q.model,ae=T(q,Q,v,w);M(q,Q,ae,D,y)}await P(F,v,w)}};await H(_,!0)};async function x(w,y=!1){if(!(w!=null&&w.sections))return;const _=T=>{if(!T)return;const M=["visibleRule","requiredRule","disabledRule","optionsFilterRule","lengthRule","calculateRule","fetchRule","copyRule","defaultValueRule"];for(const P of M){const H=T[P],Z=Array.isArray(H)?H:[H].filter(Boolean);for(const U of Z)U.condition&&Ya(U.condition),P==="copyRule"&&U.source&&typeof U.source=="object"&&Ya(U.source)}};function D(T,M){var U,B,A,F,I,v,L,R,O,W,K,ne,q,Q,ae;const P=je(T)||M,H=T.propsForm||T.propsFormStep||T.propsTable||T.propsTableStep||T.propsDataTableWizard||T.props||{};_(T.logic||H.logic);const Z=H.fields||T.fields||[];for(const j of Z){_(j.logic);const z=j.props||j.propsFieldCustom||j.propsFieldGlobal||{},J=z.endpointReference||z.endpoint||z.endpointComponent,le=!!(J!=null&&J.apiUrl);if((U=j.logic)!=null&&U.optionsFilterRule||le){if(Array.isArray(J==null?void 0:J.keyParam)&&J.keyParam.length>0){console.log(`[initSection][SKIP] Field "${j.model}" has keyParam dependencies — deferring fetch until parent is selected.`);continue}const oe=P?`${P}.${j.model}`:j.model;c(j,!1,oe)}}if((T.type==="TABLE"||T.isDataTable)&&((B=T.propsTable)!=null&&B.modelKey||(A=T.propsTable)!=null&&A.modelDatatable||(F=T.propsTableStep)!=null&&F.modelKey||(I=T.propsTableStep)!=null&&I.modelDatatable||(v=T.propsTable)!=null&&v.key||T.key)){const j=((L=T.propsTable)==null?void 0:L.modelKey)||((R=T.propsTable)==null?void 0:R.modelDatatable)||((O=T.propsTableStep)==null?void 0:O.modelKey)||((W=T.propsTableStep)==null?void 0:W.modelDatatable)||((K=T.propsTable)==null?void 0:K.key)||T.key;j&&(o.formData[j]=o.formData[j]||[])}if(T.type==="WIZARD"){const j=je(T),z=(Q=(q=(ne=f==null?void 0:f.currentRoute)==null?void 0:ne.value)==null?void 0:q.query)==null?void 0:Q[`step_${j}`];z!==void 0&&!isNaN(Number(z))?o.wizardState[j]=Number(z):o.wizardState[j]===void 0&&(o.wizardState[j]=0);for(const J of((ae=T.propsWizard)==null?void 0:ae.propsSteps)||[]){const le=J.modelKey||J.key||J.id;_(J.logic),J.sectionsWizard&&(Array.isArray(J.sectionsWizard)?J.sectionsWizard:[J.sectionsWizard]).forEach(oe=>D(oe,le))}}}for(const T of w.sections)D(T);y||(await E(o.formData,!1),h&&(console.log("[useFormWatcher] Schema initialization complete. Exiting initialization mode."),h=!1))}async function C(w,y=!1){var _,D;if(w&&Object.keys(w).length>0&&JSON.stringify(w)!==p){m=!0;const M=p?JSON.parse(p):null;for(const[P,H]of Object.entries(w)){if(!h&&H!==null&&H!==void 0&&M&&M[P]===null)continue;if(!h&&H!==null&&H!==void 0){let U=l.value.paths.get(P)||((_=l.value.models.get(P))==null?void 0:_[0]);if(U&&a.isFieldDisabled(U.field,o.formData,U.path))continue}if(!h&&H==null&&g.get(P)===!1)continue;if(H==null&&g.get(P)===!0){const U=o.formData[P];if(U!=null)continue}const Z=o.formData[P];if(JSON.stringify(Z)!==JSON.stringify(H)){let U=l.value.paths.get(P)||((D=l.value.models.get(P))==null?void 0:D[0]);const B=(U==null?void 0:U.path)||P;Qe(o.formData,B,H)}}h&&(y||(h=!1,await E(o.formData,!1)))}}let V=null;e.watch(()=>i.value,async w=>{n.dummyMode?(V&&clearTimeout(V),V=setTimeout(async()=>{await x(w)},1e3)):await x(w)},{deep:!0,immediate:!0});let N=null;return e.watch(o.formData,async w=>{N&&clearTimeout(N),N=setTimeout(async()=>{const y=!h&&!m;m=!1,await E(w,y);const _=s.getCleanPayload()||{},D=JSON.stringify(_);D!==p&&(p=D,r("update:model",_))},50)},{deep:!0}),e.watch(()=>n.model,async w=>{await C(w)},{deep:!0}),e.watch(()=>({...o.revealedSectionIds}),async()=>{await E(o.formData,!1)},{deep:!0}),e.watch(()=>({...o.wizardState}),async()=>{console.log("[useFormWatcher] wizardState changed, triggering scan..."),await E(o.formData,!1)},{deep:!0}),e.watch(()=>({...o.rawItemsCache}),async()=>{await E(o.formData,!1)},{deep:!0}),{lastEmittedPayload:()=>p}}gp();const bl=t=>{var o,n;return!t||typeof t!="object"?!1:t instanceof File||t instanceof Blob||((o=t.constructor)==null?void 0:o.name)==="File"||((n=t.constructor)==null?void 0:n.name)==="Blob"||(typeof t.name=="string"||typeof t.fileName=="string")&&(t.size!==void 0||t.fileSize!==void 0)},bp=t=>{const o=e.toRaw(t);return o&&typeof o=="object"&&o._isLogicValue===!0&&o.value!==void 0?o.value:t};function yp(t,o){var H,Z;console.log("[useDynamicForm] Initializing with props:",{hasSchema:!!t.schema,baseUrl:t.baseUrl,idTokenCore:(H=t.schema)==null?void 0:H.idTokenCore,tokenCoresCount:((Z=t.tokenCores)==null?void 0:Z.length)||0,isEditMode:t.isEditMode});const{t:n,locale:r}=Dt.useI18n(),a=e.computed(()=>r.value),{apiUrl:s}=e.inject("externalApi"),i=t.router||Ho.useRouter(),l=iT(),c=e.computed(()=>t.schema||l.internalSchema.value),d=e.computed(()=>{var U,B,A;if(typeof((U=t.selectedTokenCore)==null?void 0:U.address)=="string")return t.selectedTokenCore.address;if(typeof t.baseUrl=="string"&&t.baseUrl!=="")return t.baseUrl;if((B=c.value)!=null&&B.idTokenCore&&Array.isArray(t.tokenCores)){const F=String(c.value.idTokenCore);t.tokenCores.length>0&&console.log("[resolvedBaseUrl] Token List Check:",t.tokenCores.map(v=>({id:v.id,address:v.address})));const I=t.tokenCores.find(v=>String(v.id)===F);if(console.log(`[resolvedBaseUrl] Matching idTokenCore: "${F}" against list of ${t.tokenCores.length} tokens.`),console.log("[resolvedBaseUrl] Found token:",I?{id:I.id,address:I.address}:"NOT FOUND"),I!=null&&I.address)return I.address}console.log("[resolvedBaseUrl] Final result: undefined. Prop baseUrl:",t.baseUrl,"SelectedToken:",(A=t.selectedTokenCore)==null?void 0:A.address)}),u=e.computed(()=>{var U;return t.permissionBase?t.permissionBase:((U=c.value)==null?void 0:U.code)||""}),f=(U,B,A)=>{if(B.model){const F=A?`${A}.${B.model}`:B.model,I={field:B,path:F};U.paths.set(F,I);const v=U.models.get(B.model)||[];v.push(I),U.models.set(B.model,v)}},p=(U,B,A)=>{const F=je(B);if(F){const I=A?`${A}.${F}`:F,v={field:B,path:I},L=U.models.get(F)||[];L.push(v),U.models.set(F,L)}},m=(U,B)=>{var I,v;const A=B.modelKey||B.key||B.id,F=Array.isArray(B.sectionsWizard)?B.sectionsWizard:[B.sectionsWizard].filter(Boolean);for(const L of F){const R=je(L),O=R?`${A}.${R}`:A;p(U,L,A);const W=L.fields||((I=L.propsForm)==null?void 0:I.fields)||((v=L.propsFormStep)==null?void 0:v.fields)||[];for(const K of W)f(U,K,O)}},h=e.computed(()=>{var A,F,I;const U={paths:new Map,models:new Map},B=(A=c.value)==null?void 0:A.sections;if(!B)return U;for(const v of B){if(!v)continue;const R=(v.propsForm||v.propsTable||v.props||{}).fields||v.fields||[];je(v),p(U,v);for(const O of R)f(U,O);if(((F=v.type)==null?void 0:F.toUpperCase())==="WIZARD"&&((I=v.propsWizard)!=null&&I.propsSteps))for(const O of v.propsWizard.propsSteps)m(U,O)}return U}),g=gl({formData:l.formData,errors:l.errors,fieldMap:h,rawItemsCache:l.rawItemsCache,revealedSectionIds:l.revealedSectionIds,activeSchema:c,locale:a,tableRowFormData:l.tableRowFormData}),k=(U,B)=>{if(!B||!(U!=null&&U.sections))return B;const A={...B};return U.sections.forEach(F=>{var v;if(F.type==="WIZARD"&&((v=F.propsWizard)!=null&&v.key)){const L=F.propsWizard.key,R=B[L];Array.isArray(R)&&R.forEach(O=>{if(!(!O||typeof O!="object"))for(const W in O){const K=O[W];if(A[W]||(A[W]={}),Array.isArray(K))K.forEach(ne=>{ne&&typeof ne=="object"&&Object.assign(A[W],ne)});else if(K&&typeof K=="object")for(const ne in K){const q=K[ne];q&&typeof q=="object"&&(A[W][ne]||(A[W][ne]={}),Object.assign(A[W][ne],q))}}})}const I=je(F);I&&B[I]&&typeof B[I]=="object"&&Object.assign(A,B[I])}),A};let b="";e.watch(()=>c.value,U=>{var I,v;if(!(U!=null&&U.payload))return;const B=U.id||U.code||((v=(I=U.sections)==null?void 0:I[0])!=null&&v.key?`sec-${U.sections[0].key}`:"default");if(!(B!==b))return;const F=k(U,U.payload);b=B,Object.entries(F).forEach(([L,R])=>{const O=l.formData[L];let W=R;Array.isArray(R)&&(W=R.filter(K=>!Vr(K)),R.length!==W.length&&console.log(`[SCHEMA-INIT][${L}] Filtered out ${R.length-W.length} empty objects from initial payload.`)),O==null?l.formData[L]=W:W!=null&&typeof W=="object"&&!Array.isArray(W)&&rl(l.formData[L],W)})},{immediate:!0,deep:!0});const E=lT({formData:l.formData,locale:a,errors:l.errors,fieldMap:h,activeSchema:c,isSectionVisible:g.isSectionVisible,isFieldVisible:g.isFieldVisible,isFieldRequired:g.isFieldRequired,resolveFieldLength:g.resolveFieldLength}),x=cT({formData:l.formData,activeSchema:c,isSectionVisible:g.isSectionVisible,isFieldVisible:g.isFieldVisible,isFieldHidden:g.isFieldHidden,getWizardTabs:g.getWizardTabs,fieldMap:h,rawItemsCache:l.rawItemsCache}),C=dT({state:l,props:t,emit:o,apiUrl:s,router:i,locale:a,mapping:x,validation:E,fieldMap:h,activeSchema:c,resolvedBaseUrl:d,resolveKeyParams:w}),V=(U,B,A)=>{const F={},I=B.propsForm||B.propsFormStep||B.propsTable||B.propsTableStep||B.props||{};(I.fields||B.fields||[]).forEach(R=>{var W;const O=R.model||((W=R.props)==null?void 0:W.model)||R.key;O&&U[O]!==void 0&&Qe(F,O,U[O])});const L=je(B);if(L&&U[L]!==void 0&&F[L]===void 0&&Qe(F,L,U[L]),B.type==="TABLE"||B.propsTable){const R=I.modelKey||I.modelDatatable;R&&U[R]!==void 0&&F[R]===void 0&&(F[R]=U[R])}if(A){const R={};return Qe(R,A,F),R}return F},N=(U,B)=>{var A;if(!U)return null;for(const F of U){const I=je(F);if(I===B||B.endsWith(`.${I}`))return F;if(F.type==="WIZARD"&&((A=F.propsWizard)!=null&&A.propsSteps)){for(const v of F.propsWizard.propsSteps)if(v.sectionsWizard){const L=Array.isArray(v.sectionsWizard)?v.sectionsWizard:[v.sectionsWizard],R=N(L,B);if(R)return R}}}return null};function w(U,B,A,F){var v,L,R;const I={};if(!Array.isArray(U)||U.length===0){const O=(R=(L=(v=i==null?void 0:i.currentRoute)==null?void 0:v.value)==null?void 0:L.params)==null?void 0:R.id;return O&&(I.id=O),I}return U.forEach(O=>{const W=q=>typeof q=="string"&&q.trim()!==""&&!isNaN(Number(q))?Number(q):q,K=q=>{var Q,ae,j;if(q.startsWith("$value(")){const z=q.match(/\$value\(([^)]+)\)/);let J=z?z[1]:q.replace("$value(","").replace(")","");return(J.startsWith("'")&&J.endsWith("'")||J.startsWith('"')&&J.endsWith('"'))&&(J=J.slice(1,-1)),J}if((Q=i==null?void 0:i.currentRoute)!=null&&Q.value){if(q.startsWith("$route.")){const z=q.replace("$route.","");return(ae=i.currentRoute.value.params)==null?void 0:ae[z]}if(q.startsWith("$query.")){const z=q.replace("$query.","");if(typeof window<"u"){const J=new URLSearchParams(window.location.search);if(J.has(z))return J.get(z)}return(j=i.currentRoute.value.query)==null?void 0:j[z]}if(q.startsWith("$value.")){const z=q.replace("$value.","");return Fe(F,z)}}},ne=q=>{if(q.startsWith("$"))return K(q);let Q=F?Fe(F,q):void 0;if(Q===void 0&&l.tableRowFormData){const ae=Object.keys(l.tableRowFormData);Q=Fe(l.tableRowFormData,q),Q!==void 0?console.log(`[resolveKeyParams] Found in state.tableRowFormData '${q}':`,Q):console.log(`[resolveKeyParams] NOT found in state.tableRowFormData '${q}'. Available keys:`,ae)}return Q===void 0?(Q=Fe(l.formData,q),console.log(`[resolveKeyParams] Raw Lookup '${q}':`,Q)):console.log(`[resolveKeyParams] Resolved '${q}':`,Q),Q==null&&A&&A.key===q&&(Q=Fe(F||l.formData,A.model)),Q};if(typeof O=="string"){let q=ne(O);if(q!=null&&q!==""){q=bp(q),typeof q=="object"&&!Array.isArray(q)&&!(q instanceof Date)&&!bl(q)&&(q=q.id??q.value??q.code??q);const Q=O.startsWith("$")&&O.split(".").pop()||O;I[Q]=W(q)}}else typeof O=="object"&&O!==null&&Object.entries(O).forEach(([q,Q])=>{let j=ne(Q);j!=null&&j!==""&&(j=bp(j),typeof j=="object"&&!Array.isArray(j)&&!(j instanceof Date)&&!bl(j)&&(j=j.id??j.value??j.code??j),I[q]=W(j))})}),Object.keys(I).length>0&&console.log(`[resolveKeyParams][DEBUG] Resolved params for ${B||"root"}:`,I),I}const y=async(U,B=!1,A,F)=>{const I=U.props||{},v=I.endpointReference||I.endpoint||I.endpointComponent;if(!(v!=null&&v.apiUrl))return;const L=U.component||"";if(!["DCodeWorkflowDiagram","DCodeStaticImage","DCodeTimelineWithIcons"].includes(L)&&!(!B&&l.rawItemsCache[U.key]))try{const O=Bo(v.apiUrl,d.value);console.log(`[prefetchFieldItems][DEBUG] Field: ${U.model}, BaseURL: ${d.value}, Final URL: ${O}`);let W={page:1,perPage:100};if(Array.isArray(v.keyParam)&&Object.assign(W,w(v.keyParam,A,U,F)),Array.isArray(v.keyParam)&&v.keyParam.length>0){const ae=w(v.keyParam,A,U,F);if(Object.keys(ae).length===0){console.log(`[prefetchFieldItems][SKIPPED] Field "${U.model}" has unresolved dependencies (keyParam). Skipping fetch until parent is selected.`);return}}console.log(`[prefetchFieldItems] Executing request for ${U.key} with params:`,W);const K={...v.config||{}};v.accept&&(K.headers||(K.headers={}),K.headers.Accept=v.accept,K.headers.accept=v.accept);const ne=await s(O,v.apiMethod||"GET",W,K),q=(ne==null?void 0:ne.data)!==void 0?ne.data:ne;let Q=[];Array.isArray(q)?Q=q:q&&(Q=[q]),l.rawItemsCache[U.key]=Q}catch(O){console.error(`[prefetchFieldItems] Error fetching items for ${U.key}:`,O),l.rawItemsCache[U.key]=[]}},_=async(U=!1)=>{var A,F,I,v,L,R,O;const B=((A=c.value)==null?void 0:A.endpointAction)||((F=c.value)==null?void 0:F.endpointPropAction);if(B!=null&&B.apiUrl&&!(!t.isEditMode&&!U)){console.log(`[fetchFormData][GLOBAL] Triggered for schema: ${(I=c.value)==null?void 0:I.code}`),l.isSubmitting.value=!0;try{const W=Bo(B.apiUrl,d.value),K=w(B.keyParam||[]);console.log("[fetchFormData][GLOBAL] Executing request with params:",K);const ne={...B.config||{}};B.accept&&(ne.headers||(ne.headers={}),ne.headers.Accept=B.accept,ne.headers.accept=B.accept);const q=await s(W,B.apiMethod||"GET",K,ne);if((q==null?void 0:q.status)===!0||(q==null?void 0:q.success)===!0||(q==null?void 0:q.code)===200||(q==null?void 0:q.code)==="00"||(q==null?void 0:q.status)==="SUCCESS"){const ae=(q==null?void 0:q.data)!==void 0?q.data:q;if(Array.isArray(ae)){const j=(L=(v=c.value)==null?void 0:v.sections)==null?void 0:L.find(J=>J.type==="TABLE"||!!J.propsTable||!!J.isDataTable),z=j?je(j):null;z?Qe(l.formData,z,ae):Object.assign(l.formData,ae[0]||{})}else ae&&typeof ae=="object"&&(Object.assign(l.formData,ae),(O=(R=c.value)==null?void 0:R.sections)==null||O.forEach(j=>{const z=je(j);z&&ae[z]!==void 0&&Qe(l.formData,z,ae[z])}))}}catch(W){console.error("[fetchFormData] Error fetching initial data:",W)}finally{l.isSubmitting.value=!1}}},D=async(U,B,A,F)=>{var v,L;const I=B.endpoint;if(I!=null&&I.apiUrl){if(l.fieldLoading[U.model]){console.log(`[triggerFetchRule][SKIPPED] Rule for ${U.model} is already in progress.`);return}if(t.dummyMode){Le.info(`Simulasi Fetch Rule (${U.model})`,{autoClose:2e3}),l.formData[`_fetchStatus_${U.model}`]=!0,Array.isArray(B.revealSections)&&B.revealSections.forEach(R=>{l.revealedSectionIds[R]=!0}),Array.isArray(B.revealFields)&&B.revealFields.forEach(R=>{l.revealedFieldModels[R]=!0});return}try{l.fieldLoading[U.model]=!0;const R=Bo(I.apiUrl,d.value),O=w(I.keyParam||[],A,U,F);if(I.keyParam&&I.keyParam.length>0&&Object.keys(O).length===0){console.warn(`[triggerFetchRule][CANCELLED] Missing required dependencies for ${U.model}. Params resolved:`,O),x.handleClearMapping(B.mapping||{},A),l.formData[`_fetchStatus_${U.model}`]=!1,Array.isArray(B.revealSections)&&B.revealSections.forEach(ae=>{l.revealedSectionIds[ae]=!1}),Array.isArray(B.revealFields)&&B.revealFields.forEach(ae=>{l.revealedFieldModels[ae]=!1});return}const W={...I.config};I.accept&&(W.headers||(W.headers={}),W.headers.Accept=I.accept,W.headers.accept=I.accept),R.includes("/api/auto-layout")&&(W.isAutoLayout=!0);const K=Object.values(O).some(ae=>bl(ae));let ne=O;if(K&&(I.apiMethod||"POST").toUpperCase()!=="GET"){const ae=new FormData;Object.entries(O).forEach(([j,z])=>{z!=null&&(Array.isArray(z)?z.forEach(J=>ae.append(j,J)):ae.append(j,z))}),ne=ae,W.headers&&(delete W.headers["Content-Type"],delete W.headers["content-type"])}console.log(`[triggerFetchRule] Executing request for ${U.key}. Method: ${I.apiMethod||"GET"}, Has File: ${K}`,O);const q=await s(R,I.apiMethod||"GET",ne,W);if((q==null?void 0:q.status)===!0||(q==null?void 0:q.success)===!0||(q==null?void 0:q.code)===200||(q==null?void 0:q.code)==="00"||(q==null?void 0:q.status)==="SUCCESS"){const ae=A!=null&&A.includes(".")?A.split(".").slice(0,-1).join("."):void 0;x.handleResponseMapping(q,B.mapping||{},ae),l.formData[`_fetchStatus_${U.model}`]=!0;const j=(q==null?void 0:q.data)!==void 0?q.data:q;j&&typeof j=="object"&&Array.isArray(j)===!1&&((L=(v=c.value)==null?void 0:v.sections)==null||L.forEach(z=>{const J=je(z);J&&j[J]!==void 0&&Qe(l.formData,J,j[J])})),Array.isArray(B.revealSections)&&B.revealSections.forEach(z=>{l.revealedSectionIds[z]=!0}),Array.isArray(B.revealFields)&&B.revealFields.forEach(z=>{l.revealedFieldModels[z]=!0})}else{const ae=B.dialog||{},j=ae.type==="ALERT";l.confirmDialog.title=a.value==="id"?ae.titleID||"Perhatian":ae.titleEN||"Attention",l.confirmDialog.message=(q==null?void 0:q.message)||(a.value==="id"?"Data sudah ada atau sedang diproses.":"Data already exists or is being processed."),l.confirmDialog.showCancel=!j&&ae.showCancel!==!1,l.confirmDialog.isBlocking=ae.isBlocking===!0,l.confirmDialog.redirectUrl=ae.redirectUrl||"",l.confirmDialog.okText=a.value==="id"?ae.okTextID||ae.okText:ae.okTextEN||ae.okText,l.confirmDialog.cancelText=a.value==="id"?ae.cancelTextID||ae.cancelText:ae.cancelTextEN||ae.cancelText,l.confirmDialog.action={callback:()=>{}},l.confirmDialog.visible=!0}}catch(R){console.error(`[triggerFetchRule] Error for ${U.model}:`,R)}finally{l.fieldLoading[U.model]=!1}}},T=async(U,B,A)=>{var R,O,W;const F=B||N(((R=c.value)==null?void 0:R.sections)||[],U);if(!F){console.warn(`[fetchSectionData] Section not found for key: ${U}`);return}const I=F.propsForm||F.propsFormStep||F.propsTable||F.propsTableStep||F.props||{},v=I.endpointSection||I.endpointForm||I.endpointTable||I.endpoint;if(!(v!=null&&v.apiUrl))return;if(console.log(`[fetchSectionData][CHECK] Request for "${U}". Loading state:`,l.sectionLoading[U]),l.sectionLoading[U]){console.warn(`[fetchSectionData][CANCELLED] Request for "${U}" blocked because it is already loading.`);return}if(t.dummyMode)return;const L=A;l.sectionLoading[U]=!0,F.key&&(l.sectionLoading[F.key]=!0);try{const K=v.keyParam||[],ne=Array.isArray(K)&&K.includes("$bypassMode"),q=F.type==="FORM"||!!F.propsForm,Q=(v.apiMethod||"GET").toUpperCase()==="GET";if(q&&!t.isEditMode&&Q&&!ne){l.sectionLoading[U]=!1;return}const ae=Bo(v.apiUrl,d.value),j=F.type==="TABLE"||!!F.propsTable,z=ne?K.filter(ce=>ce!=="$bypassMode"):K,J=w(z,L);if(j&&(J.page===void 0&&(J.page=1),J.perPage===void 0)){const ce=F.propsTable||F.propsTableStep||{};J.perPage=ce.perPage||10}if(!(Array.isArray(z)&&z.length===0)&&v.keyParam&&v.keyParam.length>0&&Object.keys(J).length===0){console.warn(`[fetchSectionData][CANCELLED] Missing required dependencies for section ${U}. Skipping fetch.`);return}const ye={...v.config};v.accept&&(ye.headers||(ye.headers={}),ye.headers.Accept=v.accept,ye.headers.accept=v.accept),ae.includes("/api/auto-layout")&&(ye.isAutoLayout=!0),console.log(`[fetchSectionData] Executing request for ${U} with params:`,J);const oe=await s(ae,v.apiMethod||"GET",J,ye);if((oe==null?void 0:oe.status)===!0||(oe==null?void 0:oe.success)===!0||(oe==null?void 0:oe.code)===200||(oe==null?void 0:oe.code)==="00"||(oe==null?void 0:oe.status)==="SUCCESS")if(v.mapping&&Object.keys(v.mapping).length>0)x.handleResponseMapping(oe,v.mapping,L);else{const ce=(oe==null?void 0:oe.data)||(oe==null?void 0:oe.payload)||oe,de=Array.isArray(ce)&&!j?ce[0]:ce;if(de&&(typeof de=="object"||Array.isArray(de))){const ke=V(de,F,L);if(j&&Array.isArray(de)){const we=F.propsTable||F.propsTableStep||{},De=we.modelKey||we.modelDatatable||je(F);De&&(ke[De]=de)}const he=(we,De)=>{var se;if(!we)return[];const te=je(De);for(const ue of we)if(ue.type==="WIZARD"&&((se=ue.propsWizard)!=null&&se.propsSteps))for(const Ce of ue.propsWizard.propsSteps){const ie=Array.isArray(Ce.sectionsWizard)?Ce.sectionsWizard:Ce.sectionsWizard?[Ce.sectionsWizard]:[];if(ie.some(_e=>je(_e)===te))return ie;const me=he(ie,De);if(me.length>0)return me}return[]},Ee=he(((O=c.value)==null?void 0:O.sections)||[],F);(Ee.length>0?Ee:((W=c.value)==null?void 0:W.sections)||[]).forEach(we=>{var ue,Ce,ie,fe;if(je(we)===je(F))return;const De=we.propsForm||we.propsFormStep||we.propsTable||we.propsTableStep||we.props||{},te=!!((ue=De.endpointSection)!=null&&ue.apiUrl||(Ce=De.endpointForm)!=null&&Ce.apiUrl||(ie=De.endpointTable)!=null&&ie.apiUrl||(fe=De.endpoint)!=null&&fe.apiUrl);if(te){console.log(`[fetchSectionData][CASCADE] Skipping sibling "${je(we)}" because it has its own endpoint.`);return}const se=je(we);if(se&&de[se]!==void 0){const me=L?`${L}.${se}`:se;Fe(ke,me)===void 0&&(console.log(`[fetchSectionData][CASCADE] SUCCESS: Direct key match for section "${se}" -> path "${me}". Value:`,de[se]),Qe(ke,me,de[se]))}if(!te){const me=V(de,we);Object.keys(me).forEach(_e=>{const Ie=L?`${L}.${_e}`:_e;Fe(ke,Ie)===void 0&&(console.log(`[fetchSectionData][CASCADE] Field "${_e}" cascaded from section "${je(F)}" → "${se||we.type}" under context "${L||"root"}"`),Qe(ke,Ie,me[_e]))})}}),rl(l.formData,ke)}}}catch(K){console.error(`[fetchSectionData] Error for section ${U}:`,K)}finally{l.sectionLoading[U]=!1,F.key&&(l.sectionLoading[F.key]=!1)}},M=uT({formData:l.formData,emit:o,mapping:x,validation:E,locale:a,logic:g,state:l,activeSchema:c,prefetchFieldItems:y,triggerFetchRule:D});fT({state:l,props:t,emit:o,logic:g,mapping:x,fieldMap:h,activeSchema:c,prefetchFieldItems:y,triggerFetchRule:D,fetchSectionData:T,router:i}),e.watch(()=>({...l.wizardState}),(U,B)=>{Object.entries(U).forEach(([A,F])=>{var I,v,L,R;if((B==null?void 0:B[A])!==F){const O=(v=(I=c.value)==null?void 0:I.sections)==null?void 0:v.find(W=>je(W)===A);if(O){const W=(R=(L=O.propsWizard)==null?void 0:L.propsSteps)==null?void 0:R[F];if(W){const K=W.key||W.id;o("step-change",K)}}}})},{deep:!0,immediate:!0});const P=e.computed(()=>{const U={},B=c.value;return B!=null&&B.sections&&B.sections.forEach(A=>{var I,v,L;(((I=A.propsForm)==null?void 0:I.fields)||((v=A.propsTable)==null?void 0:v.fields)||((L=A.props)==null?void 0:L.fields)||[]).forEach(R=>{var O,W,K,ne,q,Q,ae,j,z,J,le;if(R.component==="DCodeRadioCustom"){const ye=((O=R.props)==null?void 0:O.name)||"default-group";U[ye]||(U[ye]=[]);let oe=((K=(W=R.props)==null?void 0:W.endpoint)==null?void 0:K.apiUrl)||((ne=R.props)==null?void 0:ne.apiUrl);oe=Bo(oe,d.value),U[ye].push({key:R.key,value:(q=R.props)==null?void 0:q.value,label:((Q=R.props)==null?void 0:Q.labelID)||((ae=R.props)==null?void 0:ae.labelEN)||R.key,model:R.model||R.key,apiUrl:oe,apiMethod:((z=(j=R.props)==null?void 0:j.endpoint)==null?void 0:z.apiMethod)||((J=R.props)==null?void 0:J.apiMethod),icon:(le=R.props)==null?void 0:le.icon,name:ye})}})}),U});return{t:n,locale:a,i18nLocale:r,apiUrl:s,router:i,isSubmitting:l.isSubmitting,internalSchema:l.internalSchema,activeSchema:c,resolvedBaseUrl:d,permissionBase:u,checkPermission:t.checkPermission,userPermissions:t.userPermissions,radioGroups:P,confirmDialog:l.confirmDialog,fieldMap:h,rawItemsCache:l.rawItemsCache,formData:l.formData,errors:l.errors,touched:l.touched,isSubmitted:l.isSubmitted,fieldErrors:l.fieldErrors,inlineState:l.inlineState,wizardState:l.wizardState,wizardResponses:l.wizardResponses,sectionLoading:l.sectionLoading,fieldLoading:l.fieldLoading,getSectionKey:je,sortedFields:np,prefetchFieldItems:y,fetchFormData:_,getDeepValue:Fe,setDeepValue:Qe,...g,...x,...C,...M,resolveKeyParams:w}}const pT={class:"flex items-center gap-2"},mT=e.defineComponent({__name:"DynamicFormSection",props:{section:{},sIdx:{},dummyMode:{type:Boolean}},setup(t){const o=e.inject("dynamicFormContext",{}),n=e.computed(()=>{var A,F,I;const U=(I=(F=(A=t.section)==null?void 0:A.propsForm)==null?void 0:F.actionSection)==null?void 0:I.some(v=>a==null?void 0:a(v)),B=t.sIdx===0;return U||B}),{resolveSectionLabels:r,isActionVisible:a,handleGlobalButtonClick:s,locale:i,t:l,handleCancel:c,sortedFields:d,isFieldVisible:u,isFieldHidden:f,getDeepValue:p,formData:m,sectionLoading:h,fieldLoading:g,getSectionKey:k,isFieldRequired:b,isFieldDisabled:E,isFieldReadonly:x,getFilteredItems:C,errors:V,resolveFieldLabels:N,resolveFieldLength:w,resolvedBaseUrl:y,handleFieldUpdate:_,resolveSectionGridClass:D,resolveFieldColumnClass:T,touched:M,isSubmitted:P}=o,H=(U,B)=>{_(U,B)},Z=U=>typeof d!="function"?[]:d(U||[]);return(U,B)=>{var A;return e.openBlock(),e.createBlock(co,{title:(A=e.unref(r)(t.section))==null?void 0:A.title,border:!0,padding:"",class:"overflow-hidden"},e.createSlots({default:e.withCtx(()=>{var F,I,v,L,R,O;return[e.createElementVNode("div",{class:e.normalizeClass(["p-4 grid gap-4",e.unref(D)(((I=(F=t.section)==null?void 0:F.propsForm)==null?void 0:I.layoutColumns)||((v=t.section)==null?void 0:v.layoutColumns))])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Z(((R=(L=t.section)==null?void 0:L.propsForm)==null?void 0:R.fields)||((O=t.section)==null?void 0:O.fields)),W=>{var K,ne,q,Q,ae,j,z,J,le;return e.openBlock(),e.createElementBlock(e.Fragment,{key:W==null?void 0:W.key},[e.unref(u)(W,void 0,W.model)?e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(T)(W,((ne=(K=t.section)==null?void 0:K.propsForm)==null?void 0:ne.layoutColumns)||((q=t.section)==null?void 0:q.layoutColumns)))},[e.createVNode(Fn,{field:W,"model-value":e.unref(m)[W.model],"form-data":e.unref(m),required:(Q=e.unref(b))==null?void 0:Q(W,void 0,W.model),disabled:(ae=e.unref(E))==null?void 0:ae(W,void 0,W.model),readonly:(j=e.unref(x))==null?void 0:j(W,void 0,W.model),options:(z=e.unref(C))==null?void 0:z(W,void 0,W.model),error:e.unref(M)[W.model]||e.unref(P)?e.unref(V)[W.model]:null,"dynamic-labels":(J=e.unref(N))==null?void 0:J(W,void 0,W.model),"dynamic-length":(le=e.unref(w))==null?void 0:le(W,void 0,W.model),"base-url":e.unref(y),skeleton:e.unref(h)[e.unref(k)(t.section)],loading:e.unref(g)[W.model],"dummy-mode":t.dummyMode,"onUpdate:modelValue":ye=>H(W.model,ye)},null,8,["field","model-value","form-data","required","disabled","readonly","options","error","dynamic-labels","dynamic-length","base-url","skeleton","loading","dummy-mode","onUpdate:modelValue"])],2)),[[e.vShow,!e.unref(f)(W,void 0,W.model)]]):e.createCommentVNode("",!0)],64)}),128))],2)]}),_:2},[n.value?{name:"actions",fn:e.withCtx(()=>{var F,I,v,L;return[e.createElementVNode("div",pT,[(v=(I=(F=t.section)==null?void 0:F.propsForm)==null?void 0:I.actionSection)!=null&&v.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.section.propsForm.actionSection,(R,O)=>{var W,K,ne,q,Q,ae,j,z,J,le;return e.openBlock(),e.createElementBlock(e.Fragment,{key:O},[(W=e.unref(a))!=null&&W(R)?(e.openBlock(),e.createBlock(at,{key:0,icon:R.icon||((K=R.propsActionGlobal)==null?void 0:K.icon),text:e.unref(i)==="kr"||e.unref(i)==="ko"?R.labelKR||((ne=R.propsActionGlobal)==null?void 0:ne.labelKR)||R.labelEN||((q=R.propsActionGlobal)==null?void 0:q.labelEN):e.unref(i)==="id"?R.labelID||((Q=R.propsActionGlobal)==null?void 0:Q.labelID):R.labelEN||((ae=R.propsActionGlobal)==null?void 0:ae.labelEN),"bg-color":((z=R.bgColor||((j=R.propsActionGlobal)==null?void 0:j.bgColor))==null?void 0:z.toLowerCase())||"primary",variant:((le=R.variant||((J=R.propsActionGlobal)==null?void 0:J.variant))==null?void 0:le.toLowerCase())||"outline",size:"sm",onClick:ye=>{var oe;return(oe=e.unref(s))==null?void 0:oe(R)}},null,8,["icon","text","bg-color","variant","onClick"])):e.createCommentVNode("",!0)],64)}),128)):e.createCommentVNode("",!0),t.sIdx===0?(e.openBlock(),e.createBlock(at,{key:1,size:"sm",icon:"List",text:(L=e.unref(l))==null?void 0:L("common.back"),variant:"outline",onClick:B[0]||(B[0]=R=>{var O;return(O=e.unref(c))==null?void 0:O()})},null,8,["text"])):e.createCommentVNode("",!0)])]}),key:"0"}:void 0]),1032,["title"])}}}),hT=e.defineComponent({__name:"DynamicTableSection",props:{section:{},dummyMode:{type:Boolean}},setup(t){const o=e.inject("dynamicFormContext",{}),{resolveSectionLabels:n,tableRows:r=()=>[],isTemporaryTable:a=()=>!1,handleDataTableAction:s=()=>{},resolvedBaseUrl:i="",permissionBase:l="",userPermissions:c=null,checkPermission:d=()=>!0,sectionLoading:u={},tokenCores:f=[],selectedTokenCore:p=null}=o,m=e.computed(()=>{const h=o.resolvedBaseUrl;return typeof h=="object"&&h!==null&&"value"in h?h.value:h});return(h,g)=>(e.openBlock(),e.createBlock(co,{border:!0,padding:"",class:"overflow-hidden"},{default:e.withCtx(()=>[e.createVNode(zn,{"table-config":t.section.propsTable,data:e.unref(r)(t.section.propsTable),nested:!0,"show-pagination":t.section.propsTable.pagination??!0,"has-actions":e.unref(a)(t.section.propsTable),"base-url":m.value,"dummy-mode":t.dummyMode,"permission-base":e.unref(l),"user-permissions":e.unref(c),"check-permission":e.unref(d),"token-cores":e.unref(f),"selected-token-core":e.unref(p),loading:e.unref(u)[t.section.key]||e.unref(u)[e.unref(je)(t.section)],controlled:"",onAction:g[0]||(g[0]=k=>e.unref(s)(t.section.propsTable,k))},null,8,["table-config","data","show-pagination","has-actions","base-url","dummy-mode","permission-base","user-permissions","check-permission","token-cores","selected-token-core","loading"])]),_:1}))}}),gT={class:"w-full"},bT={class:"space-y-6 mt-4"},yT={key:0,class:"flex items-center justify-between gap-4 border-b border-neutral-100 dark:border-neutral-800 pb-4 mb-2"},kT={class:"flex items-center gap-2"},xT={class:"flex items-center gap-2"},wT={key:2,class:"p-4 border border-dashed border-neutral-300 rounded-lg text-xs text-neutral-400"},CT=e.defineComponent({__name:"DynamicWizardSection",props:{section:{},dummyMode:{type:Boolean}},setup(t){const o=t,n=e.inject("dynamicFormContext"),{resolveSectionLabels:r,getWizardTabs:a,wizardState:s,isSubmitting:i,isSectionVisible:l,isFieldVisible:c,isFieldHidden:d,formData:u,isFieldRequired:f,isFieldDisabled:p,getFilteredItems:m,errors:h,resolveFieldLabels:g,resolveFieldLength:k,resolvedBaseUrl:b,handleFieldUpdate:E,tableRows:x,handleDataTableAction:C,handleResponseMapping:V,resolveSectionGridClass:N,resolveFieldColumnClass:w,touched:y,isSubmitted:_,apiUrl:D,getNormalizedData:T,applyFieldMapping:M,getCleanPayload:P,wizardResponses:H,resolveKeyParams:Z,router:U,permissionBase:B,userPermissions:A,ignorePermissions:F,handleGlobalButtonClick:I,locale:v,sectionLoading:L,isActionVisible:R,checkPermission:O,tokenCores:W=[],selectedTokenCore:K=null}=n,ne=(z,J,le)=>{const ye=je(J),oe=z.key||z.id;return oe&&ye?`${oe}.${ye}.${le.model}`:oe?`${oe}.${le.model}`:le.model},q=z=>{var oe,ge,ce;const J={key:z.key||((oe=z.propsTableStep)==null?void 0:oe.key)||((ge=z.propsTable)==null?void 0:ge.key)||((ce=z.propsDataTableWizard)==null?void 0:ce.key),...z.propsTable||{},...z.propsTableStep||{},...z.propsDataTableWizard||{}},le=de=>{if(!de||typeof de!="object")return null;if(de.modelDatatable)return de.modelDatatable;if(de.model)return de.model;for(const ke in de)if(typeof de[ke]=="object"&&ke!=="fields"){const he=le(de[ke]);if(he)return he}return null};let ye=J.modelDatatable||J.model||z.modelDatatable||z.model;return ye||(ye=J.key),ye||(ye=le(z)),J.modelDatatable=ye,J},Q=(z,J)=>{const le=q(J),ye=z.key?`${z.key}.${le.modelDatatable}`:le.modelDatatable,oe=x({...le,modelDatatable:ye});return{config:le,fullModel:ye,rows:oe,key:`${ye}-${oe==null?void 0:oe.length}`}},ae=async z=>{var de,ke;if(o.dummyMode)return Le.info(v.value==="id"?"Simulasi langkah selanjutnya (Dummy Mode)":"Next step simulated (Dummy Mode)",{autoClose:2e3}),!0;const J=z.key||z.id,le={};Object.values(H).forEach(he=>{he&&typeof he=="object"&&Object.assign(le,he)});const ye={...P()},oe=z.fieldMapping||{};let ge=Object.keys(oe).length>0?M(ye,oe):ye;ge={...ge};const ce=z.endpointActionStepNext;if(!(ce!=null&&ce.apiUrl))return!0;try{const he=Bo(ce.apiUrl,b.value),Ee=Z(ce.keyParam||[],J),Be={...ge,...Ee},we=await D(he,ce.apiMethod||"POST",Be),De=(we==null?void 0:we.status)===!0||(we==null?void 0:we.success)===!0||(we==null?void 0:we.code)===200||(we==null?void 0:we.code)==="00"||(we==null?void 0:we.status)==="SUCCESS";if(De&&z.responseMapping&&Object.keys(z.responseMapping).length>0&&V(we,z.responseMapping),De){const te=z.key||z.id;let se=(we==null?void 0:we.data)||(we==null?void 0:we.payload)||we;if(Array.isArray(se)&&se.length>0&&(se=se[0]),H[te]=se,se&&typeof se=="object"){const ue={...((ke=(de=U.currentRoute)==null?void 0:de.value)==null?void 0:ke.query)||{}};let Ce=!1;const ie=Nr(se),fe=["status","success","code","message","error","errorCode","errorMessage"];if(Object.entries(ie).forEach(([me,_e])=>{!fe.includes(me)&&_e!==null&&_e!==void 0&&(typeof _e=="string"||typeof _e=="number"||typeof _e=="boolean")&&ue[me]!==String(_e)&&(ue[me]=String(_e),Ce=!0)}),Ce&&globalThis!=null&&globalThis.window&&globalThis.window.history){const me=new URL(globalThis.window.location.href);Object.entries(ue).forEach(([_e,Ie])=>{Ie!=null&&me.searchParams.set(_e,String(Ie))}),globalThis.window.history.replaceState(globalThis.window.history.state,"",me.toString())}}}return De}catch(he){return console.error("[WizardSection] Error in handleBeforeNext:",he),!1}finally{i.value=!1}},j=async z=>{if(o.dummyMode)return!0;const J=z.endpointActionStepPrev;if(!(J!=null&&J.apiUrl))return!0;try{const le=Bo(J.apiUrl,b.value),ye=a(o.section),oe=ye.findIndex(Be=>(Be.key||Be.id)===(z.key||z.id)),ge=oe>0?ye[oe-1]:null,ce=ge?ge.key||ge.id:null,de=ce?H[ce]:null;let ke={};de?ke=Array.isArray(de)?de[0]||{}:de:ke=Z(J.keyParam||[],z.key);const he=await D(le,J.apiMethod||"POST",ke);return((he==null?void 0:he.status)===!0||(he==null?void 0:he.success)===!0||(he==null?void 0:he.code)===200||(he==null?void 0:he.status)==="SUCCESS")&&z.responseMapping&&Object.keys(z.responseMapping).length>0&&V(he,z.responseMapping),!0}catch(le){return console.error("[WizardSection] Error in handleBeforePrev:",le),!0}};return(z,J)=>{var ye;const le=e.resolveComponent("DCodeButton");return e.openBlock(),e.createElementBlock("div",gT,[e.createVNode(tl,{tabs:e.unref(a)(t.section),modelValue:e.unref(s)[e.unref(je)(t.section)],"onUpdate:modelValue":J[0]||(J[0]=oe=>e.unref(s)[e.unref(je)(t.section)]=oe),"is-vertical":t.section.propsWizard.isVertical,"is-wizard":t.section.propsWizard.isWizard,"type-wizard":((ye=t.section.propsWizard.typeWizard)==null?void 0:ye.toLowerCase())||"icon",loading:e.unref(i),"before-next":ae,"before-prev":j},e.createSlots({_:2},[e.renderList(e.unref(a)(t.section),oe=>({name:`tab-${oe.key}`,fn:e.withCtx(()=>{var ge;return[e.createElementVNode("div",bT,[(ge=oe.actions)!=null&&ge.length?(e.openBlock(),e.createElementBlock("div",yT,[J[1]||(J[1]=e.createElementVNode("div",{class:"flex-1"},null,-1)),e.createElementVNode("div",kT,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(oe.actions,(ce,de)=>{var ke,he,Ee,Be,we,De,te;return e.openBlock(),e.createElementBlock(e.Fragment,{key:de},[e.unref(R)(ce)?(e.openBlock(),e.createBlock(le,{key:0,icon:ce.icon||((ke=ce.propsActionGlobal)==null?void 0:ke.icon),text:e.unref(v)==="kr"||e.unref(v)==="ko"?ce.labelKR||((he=ce.propsActionGlobal)==null?void 0:he.labelKR)||ce.labelEN||((Ee=ce.propsActionGlobal)==null?void 0:Ee.labelEN):e.unref(v)==="id"?ce.labelID||((Be=ce.propsActionGlobal)==null?void 0:Be.labelID):ce.labelEN||((we=ce.propsActionGlobal)==null?void 0:we.labelEN),"bg-color":(ce.bgColor||((De=ce.propsActionGlobal)==null?void 0:De.bgColor)||"primary").toLowerCase(),variant:(ce.variant||((te=ce.propsActionGlobal)==null?void 0:te.variant)||"outline").toLowerCase(),size:"sm",onClick:se=>e.unref(I)(ce)},null,8,["icon","text","bg-color","variant","onClick"])):e.createCommentVNode("",!0)],64)}),128))])])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(oe.sections,(ce,de)=>{var ke,he,Ee,Be,we,De;return e.openBlock(),e.createElementBlock(e.Fragment,{key:de},[e.unref(l)(ce)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[((ke=ce.type)==null?void 0:ke.toUpperCase())==="FORM"?(e.openBlock(),e.createBlock(co,{key:0,title:(he=e.unref(r)(ce))==null?void 0:he.title,border:!0,padding:"",class:"overflow-hidden"},e.createSlots({default:e.withCtx(()=>{var te,se,ue,Ce;return[e.createElementVNode("div",{class:e.normalizeClass(["p-4 grid gap-4",e.unref(N)(ce.layoutColumns||((te=ce.propsForm)==null?void 0:te.layoutColumns)||((se=ce.propsFormStep)==null?void 0:se.layoutColumns))])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(np)(ce.fields||((ue=ce.propsForm)==null?void 0:ue.fields)||((Ce=ce.propsFormStep)==null?void 0:Ce.fields)),ie=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:ie.key},[e.unref(c)(ie,void 0,z.fullPath)?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList([ne(oe,ce,ie)],fe=>{var me,_e;return e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:fe,class:e.normalizeClass(e.unref(w)(ie,ce.layoutColumns||((me=ce.propsForm)==null?void 0:me.layoutColumns)||((_e=ce.propsFormStep)==null?void 0:_e.layoutColumns)))},[e.createVNode(Fn,{field:ie,"model-value":e.unref(Fe)(e.unref(u),fe),"form-data":e.unref(u),required:e.unref(f)(ie,void 0,fe),disabled:e.unref(p)(ie,void 0,fe),options:e.unref(m)(ie,void 0,fe),error:e.unref(y)[fe]||e.unref(_)?e.unref(h)[fe]:null,"dynamic-labels":e.unref(g)(ie,void 0,fe),"dynamic-length":e.unref(k)(ie,void 0,fe),"base-url":e.unref(b),skeleton:e.unref(L)[oe.key?`${oe.key}.${e.unref(je)(ce)}`:e.unref(je)(ce)],"dummy-mode":t.dummyMode,"onUpdate:modelValue":Ie=>e.unref(E)(ie.model,Ie,oe.key?e.unref(je)(ce)?`${oe.key}.${e.unref(je)(ce)}`:oe.key:void 0)},null,8,["field","model-value","form-data","required","disabled","options","error","dynamic-labels","dynamic-length","base-url","skeleton","dummy-mode","onUpdate:modelValue"])],2)),[[e.vShow,!e.unref(d)(ie,void 0,fe)]])}),128)):e.createCommentVNode("",!0)],64))),128))],2)]}),_:2},[(Be=(Ee=ce.propsFormStep)==null?void 0:Ee.actionSection)!=null&&Be.length?{name:"actions",fn:e.withCtx(()=>[e.createElementVNode("div",xT,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(ce.propsFormStep.actionSection,(te,se)=>{var ue,Ce,ie,fe,me,_e,Ie;return e.openBlock(),e.createElementBlock(e.Fragment,{key:se},[e.unref(R)(te)?(e.openBlock(),e.createBlock(le,{key:0,icon:te.icon||((ue=te.propsActionGlobal)==null?void 0:ue.icon),text:e.unref(v)==="kr"||e.unref(v)==="ko"?te.labelKR||((Ce=te.propsActionGlobal)==null?void 0:Ce.labelKR)||te.labelEN||((ie=te.propsActionGlobal)==null?void 0:ie.labelEN):e.unref(v)==="id"?te.labelID||((fe=te.propsActionGlobal)==null?void 0:fe.labelID):te.labelEN||((me=te.propsActionGlobal)==null?void 0:me.labelEN),"bg-color":(te.bgColor||((_e=te.propsActionGlobal)==null?void 0:_e.bgColor)||"primary").toLowerCase(),variant:(te.variant||((Ie=te.propsActionGlobal)==null?void 0:Ie.variant)||"outline").toLowerCase(),size:"sm",onClick:vt=>e.unref(I)(te)},null,8,["icon","text","bg-color","variant","onClick"])):e.createCommentVNode("",!0)],64)}),128))])]),key:"0"}:void 0]),1032,["title"])):((we=ce.type)==null?void 0:we.toUpperCase())==="TABLE"||ce.isDataTable?(e.openBlock(),e.createBlock(co,{key:1,title:(De=e.unref(r)(ce))==null?void 0:De.title,border:!0,padding:"",class:"overflow-hidden"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList([Q(oe,ce)],te=>{var se,ue,Ce;return e.openBlock(),e.createBlock(zn,{key:te.key,"dummy-mode":t.dummyMode,"table-config":{...te.config,modelDatatable:te.fullModel},"api-params":e.unref(Z)((ue=(se=te.config)==null?void 0:se.endpointTable)==null?void 0:ue.keyParam,oe.key),data:te.rows,nested:!0,"show-pagination":((Ce=te.config)==null?void 0:Ce.pagination)??!0,"user-permissions":e.unref(A),"check-permission":e.unref(O),"permission-base":te.config.permissionBase||e.unref(B),"ignore-permissions":e.unref(F),"base-url":e.unref(b),"token-cores":e.unref(W),"selected-token-core":e.unref(K),loading:e.unref(L)[oe.key?`${oe.key}.${e.unref(je)(ce)}`:e.unref(je)(ce)],onAction:ie=>{e.unref(C)({...te.config,modelDatatable:te.fullModel},ie)}},null,8,["dummy-mode","table-config","api-params","data","show-pagination","user-permissions","check-permission","permission-base","ignore-permissions","base-url","token-cores","selected-token-core","loading","onAction"])}),128))]),_:2},1032,["title"])):(e.openBlock(),e.createElementBlock("div",wT," Unknown section type: "+e.toDisplayString(ce.type),1))],64)):e.createCommentVNode("",!0)],64)}),128))])]})}))]),1032,["tabs","modelValue","is-vertical","is-wizard","type-wizard","loading"])])}}}),ET={class:"py-2 text-sm text-neutral-600 dark:text-neutral-400"},ST={key:0,class:"grid grid-cols-1 md:grid-cols-2 gap-4 py-2"},_T={class:"py-2 text-sm text-neutral-600 dark:text-neutral-400"},BT=e.defineComponent({__name:"DynamicFormDialogs",setup(t){const o=e.inject("dynamicFormContext",{}),{confirmDialog:n,t:r,confirmAction:a,tableDialogOpen:s,tableDialogTitle:i,tableDialogIcon:l,tableDialogFields:c,isFieldVisible:d,isFieldHidden:u,tableRowFormData:f,tableDialogViewOnly:p,isFieldRequired:m,isFieldDisabled:h,getFilteredItems:g,tableRowErrors:k,resolveFieldLabels:b,resolveFieldLength:E,resolvedBaseUrl:x,handleTableRowUpdate:C,locale:V,saveTableRow:N,confirmDeleteOpen:w,executeTableDelete:y,tableDialogSize:_}=o,D=e.computed(()=>{const T=e.unref(c);return Array.isArray(T)?T.some(M=>M.component==="DCodePdfViewer"||M.component==="DCodeWorkflowDiagram"):!1});return(T,M)=>(e.openBlock(),e.createElementBlock("div",null,[e.createVNode(Eo,{modelValue:e.unref(n).visible,"onUpdate:modelValue":M[1]||(M[1]=P=>e.unref(n).visible=P),title:e.unref(n).title,icon:"AlertTriangle","max-width":450,persistent:e.unref(n).isBlocking},{actions:e.withCtx(()=>[e.unref(n).showCancel?(e.openBlock(),e.createBlock(at,{key:0,variant:"outline",text:e.unref(n).cancelText||e.unref(r)("common.cancel"),onClick:M[0]||(M[0]=P=>e.unref(n).visible=!1)},null,8,["text"])):e.createCommentVNode("",!0),e.createVNode(at,{text:e.unref(n).okText||e.unref(r)("common.confirm"),onClick:e.unref(a)},null,8,["text","onClick"])]),default:e.withCtx(()=>[e.createElementVNode("div",ET,e.toDisplayString(e.unref(n).message),1)]),_:1},8,["modelValue","title","persistent"]),e.createVNode(Eo,{modelValue:e.unref(s),"onUpdate:modelValue":M[3]||(M[3]=P=>e.isRef(s)?s.value=P:null),title:e.unref(i),icon:e.unref(l),size:e.unref(_)},e.createSlots({default:e.withCtx(()=>[e.unref(c).length?(e.openBlock(),e.createElementBlock("div",ST,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(c),P=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:P.key},[e.unref(d)(P,e.unref(f))?e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(P.column==="FULL"?"md:col-span-2":"col-span-1")},[e.createVNode(Fn,{field:P,"model-value":e.unref(f)[P.model],"form-data":e.unref(f),required:e.unref(p)?!1:e.unref(m)(P,e.unref(f)),disabled:e.unref(p)||e.unref(h)(P,e.unref(f)),"view-only":e.unref(p),options:e.unref(g)(P,e.unref(f)),error:e.unref(p)?void 0:e.unref(k)[P.model],"dynamic-labels":e.unref(b)(P,e.unref(f)),"dynamic-length":e.unref(E)(P,e.unref(f)),"base-url":e.unref(x),"onUpdate:modelValue":H=>e.unref(C)(P.model,H)},null,8,["field","model-value","form-data","required","disabled","view-only","options","error","dynamic-labels","dynamic-length","base-url","onUpdate:modelValue"])],2)),[[e.vShow,!e.unref(u)(P,e.unref(f))]]):e.createCommentVNode("",!0)],64))),128))])):e.createCommentVNode("",!0)]),_:2},[D.value?void 0:{name:"actions",fn:e.withCtx(()=>[e.createVNode(at,{variant:"outline",text:e.unref(p)?e.unref(V)==="id"?"Tutup":"Close":e.unref(V)==="id"?"Batal":"Cancel",onClick:M[2]||(M[2]=P=>s.value=!1)},null,8,["text"]),e.unref(p)?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(at,{key:0,text:"Save",onClick:e.unref(N)},null,8,["onClick"]))]),key:"0"}]),1032,["modelValue","title","icon","size"]),e.createVNode(Eo,{modelValue:e.unref(w),"onUpdate:modelValue":M[5]||(M[5]=P=>e.isRef(w)?w.value=P:null),title:e.unref(V)==="id"?"Konfirmasi Hapus":"Confirm Delete",icon:"Trash2","max-width":440},{actions:e.withCtx(()=>[e.createVNode(at,{variant:"outline",text:e.unref(V)==="id"?"Batal":"Cancel",onClick:M[4]||(M[4]=P=>w.value=!1)},null,8,["text"]),e.createVNode(at,{variant:"default","bg-color":"danger",icon:"Trash2",text:e.unref(V)==="id"?"Hapus":"Delete",onClick:e.unref(y)},null,8,["text","onClick"])]),default:e.withCtx(()=>[e.createElementVNode("div",_T,e.toDisplayString(e.unref(V)==="id"?"Apakah Anda yakin ingin menghapus data ini? Tindakan ini tidak dapat dibatalkan.":"Are you sure you want to delete this row? This action cannot be undone."),1)]),_:1},8,["modelValue","title"])]))}}),vT={class:"w-full flex flex-col min-h-0"},AT={class:"flex-1 space-y-6 overflow-y-auto"},yl=e.defineComponent({__name:"DynamicForm",props:{schema:{},model:{default:()=>({})},isEditMode:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},baseUrl:{default:void 0},selectedTokenCore:{default:null},tokenCores:{default:()=>[]},dummyMode:{type:Boolean,default:!1},router:{default:null},permissionBase:{default:""},userPermissions:{default:null},checkPermission:{type:Function,default:void 0},dynamicForm:{}},emits:["submit","cancel","action","update:model","update:modelValue","success","error","step-change"],setup(t,{emit:o}){const n=t,r=o,a=n.dynamicForm||yp(n,r);a&&(a.tableRowFormData||(a.tableRowFormData=e.reactive({}))),e.provide("dynamicFormContext",a);const{activeSchema:s,isSectionVisible:i,inlineState:l,isActionVisible:c,locale:d,isSubmitting:u,isSubmitDisabled:f,handleGlobalButtonClick:p,handleSubmit:m}=a;return(h,g)=>{var k,b,E,x,C,V;return e.openBlock(),e.createElementBlock("div",vT,[e.createElementVNode("div",AT,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((k=e.unref(s))==null?void 0:k.sections,(N,w)=>{var y,_,D;return e.openBlock(),e.createElementBlock(e.Fragment,{key:w},[((y=N.type)==null?void 0:y.toUpperCase())==="FORM"&&N.propsForm&&e.unref(i)(N)?(e.openBlock(),e.createBlock(mT,{key:0,"dummy-mode":n.dummyMode,section:N,sIdx:Number(w)},null,8,["dummy-mode","section","sIdx"])):((_=N.type)==null?void 0:_.toUpperCase())==="TABLE"&&N.propsTable&&e.unref(i)(N)?(e.openBlock(),e.createBlock(hT,{key:1,"dummy-mode":n.dummyMode,section:N},null,8,["dummy-mode","section"])):((D=N.type)==null?void 0:D.toUpperCase())==="WIZARD"&&N.propsWizard&&e.unref(i)(N)?(e.openBlock(),e.createBlock(CT,{key:2,"dummy-mode":n.dummyMode,section:N},null,8,["dummy-mode","section"])):e.createCommentVNode("",!0)],64)}),128))]),(b=e.unref(l))!=null&&b.global?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(((x=(E=e.unref(s))==null?void 0:E.ui)==null?void 0:x.actionsClass)||"flex items-center gap-2 flex-wrap pt-4 mt-6 border-t border-neutral-100 dark:border-neutral-800")},[(V=(C=e.unref(s))==null?void 0:C.actionGlobal)!=null&&V.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(e.unref(s).actionGlobal,(N,w)=>{var y,_,D;return e.openBlock(),e.createElementBlock(e.Fragment,{key:w},[N.propsActionGlobal&&e.unref(c)(N)?(e.openBlock(),e.createBlock(at,{key:0,icon:N.propsActionGlobal.icon,text:e.unref(d)==="kr"||e.unref(d)==="ko"?N.propsActionGlobal.labelKR||N.propsActionGlobal.labelEN:e.unref(d)==="id"?N.propsActionGlobal.labelID:N.propsActionGlobal.labelEN,"bg-color":((y=N.propsActionGlobal.bgColor)==null?void 0:y.toLowerCase())||"primary",variant:((_=N.propsActionGlobal.variant)==null?void 0:_.toLowerCase())||"default",loading:e.unref(u),disabled:e.unref(f)&&(N.permission==="CREATE"||N.permission==="UPDATE"||((D=N.propsActionGlobal)==null?void 0:D.key)==="submit"),onClick:T=>e.unref(p)(N)},null,8,["icon","text","bg-color","variant","loading","disabled","onClick"])):e.createCommentVNode("",!0)],64)}),128)):e.createCommentVNode("",!0)],2)),e.createVNode(BT)])}}}),DT={"aria-label":"Breadcrumb"},NT={class:"flex flex-wrap items-center text-sm md:text-base"},VT={class:"truncate max-w-[100px] sm:max-w-[150px] md:max-w-none"},kp=e.defineComponent({__name:"Breadcrumb",props:{items:{},showHomeIcon:{type:Boolean,default:!0},iconSize:{default:18},separatorSize:{default:16},separatorType:{default:"chevron"},strokeWidth:{default:2}},setup(t){const o=t,n=be.Home,r=o.separatorType==="slash"?be.Slash:be.ChevronRight;return(a,s)=>(e.openBlock(),e.createElementBlock("nav",DT,[e.createElementVNode("ol",NT,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(i,l)=>(e.openBlock(),e.createElementBlock("li",{key:l,class:"flex items-center"},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.to?"router-link":"span"),{to:i.to,class:e.normalizeClass(["inline-flex items-center gap-1.5 transition-all duration-200 rounded-lg font-medium",i.to?"text-gray-700 dark:text-gray-300 hover:text-primary-600 dark:hover:text-primary-400 hover:bg-primary-50 dark:hover:bg-primary-900/20 cursor-pointer":"dark:text-gray-100 bg-primary-50 dark:bg-primary-900/30 text-primary-700"])},{default:e.withCtx(()=>[i.icon||l===0&&t.showHomeIcon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.icon||e.unref(n)),{key:0,size:t.iconSize,class:e.normalizeClass(["flex-shrink-0",i.to?"text-gray-500 dark:text-gray-400 group-hover:text-primary-600 dark:group-hover:text-primary-400":"text-primary-600 dark:text-primary-400",i.iconClass||""]),"stroke-width":t.strokeWidth},null,8,["size","class","stroke-width"])):e.createCommentVNode("",!0),e.createElementVNode("span",VT,e.toDisplayString(i.label),1)]),_:2},1032,["to","class"])),l<t.items.length-1?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(r)),{key:0,size:t.separatorSize,class:"mx-1.5 text-gray-300 dark:text-gray-700 flex-shrink-0"},null,8,["size"])):e.createCommentVNode("",!0)]))),128))])]))}});function xp(){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 MT={class:"w-full space-y-6 animate-pulse"},TT={class:"p-4 grid grid-cols-1 md:grid-cols-2 gap-4"},PT=e.defineComponent({__name:"AutoLayoutSkeleton",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",MT,[n[2]||(n[2]=e.createElementVNode("div",{class:"h-6 w-48 bg-neutral-200 dark:bg-neutral-700 rounded-md"},null,-1)),(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(2,r=>e.createElementVNode("div",{key:r,class:"rounded-xl border border-neutral-200 dark:border-neutral-700 overflow-hidden"},[n[1]||(n[1]=e.createElementVNode("div",{class:"px-4 py-3 bg-neutral-200 dark:bg-neutral-700"},[e.createElementVNode("div",{class:"h-4 w-32 bg-neutral-300 dark:bg-neutral-600 rounded"})],-1)),e.createElementVNode("div",TT,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(6,a=>e.createElementVNode("div",{key:a,class:e.normalizeClass(a>4?"md:col-span-2":"col-span-1")},[...n[0]||(n[0]=[e.createElementVNode("div",{class:"h-3 w-24 bg-neutral-200 dark:bg-neutral-700 rounded mb-2"},null,-1),e.createElementVNode("div",{class:"h-10 w-full bg-neutral-200 dark:bg-neutral-700 rounded-lg"},null,-1)])],2)),64))])])),64)),n[3]||(n[3]=e.createElementVNode("div",{class:"flex items-center gap-2"},[e.createElementVNode("div",{class:"h-9 w-24 bg-neutral-300 dark:bg-neutral-600 rounded-lg"}),e.createElementVNode("div",{class:"h-9 w-20 bg-neutral-200 dark:bg-neutral-700 rounded-lg"})],-1))]))}}),RT={class:"w-full"},OT={class:"relative mx-auto min-h-[37.5rem]"},FT={key:"content",class:"w-full"},$T={class:"mb-6"},LT={class:"text-neutral-500 dark:text-neutral-400"},IT={key:"skeleton",class:"w-full"},zT={key:"error",class:"flex items-center justify-center p-20 text-red-500 w-full"},kl=ht(e.defineComponent({name:"AutoLayoutForm",__name:"AutoLayoutForm",props:{layoutCode:{},apiToken:{},isEditMode:{type:Boolean},model:{},selectedTokenCore:{},router:{},userPermissions:{},permissionBase:{},checkPermission:{type:Function},dummyMode:{type:Boolean}},emits:["submit-success","cancel","action-success","update:model"],setup(t,{emit:o}){var U,B,A,F,I,v,L,R;const n=t,r=o,a=(B=(U=e.getCurrentInstance())==null?void 0:U.appContext)==null?void 0:B.app;a&&!a._context.provides[Symbol.for("vue-router-route-location")]&&a.provide(Symbol.for("vue-router-route-location"),{query:{},params:{},path:""});let s={query:{},params:{},path:""};try{const O=Ho.useRoute();if(O&&Object.keys(O).length>0)s=O;else{const W=e.getCurrentInstance();(I=(F=(A=W==null?void 0:W.appContext)==null?void 0:A.config)==null?void 0:F.globalProperties)!=null&&I.$route&&(s=W.appContext.config.globalProperties.$route)}}catch{console.warn("useRoute not available, using fallback")}let i={back:()=>{typeof window<"u"&&window.history&&window.history.length>1&&window.history.back()},push:O=>{if(typeof window<"u"){if(typeof O=="string")window.location.href=O;else if(O&&(O.path||O.name)){const W=O.path||"/",K=new URL(W,window.location.origin);O.query&&Object.entries(O.query).forEach(([ne,q])=>K.searchParams.set(ne,String(q))),window.location.href=K.toString()}}},replace:async O=>{if(typeof window<"u"&&window.history){const W=new URL(window.location.href);O.query&&Object.entries(O.query).forEach(([K,ne])=>W.searchParams.set(K,String(ne))),window.history.replaceState({},"",W.toString())}},currentRoute:e.computed(()=>({query:(s==null?void 0:s.query)||{},params:(s==null?void 0:s.params)||{},path:(s==null?void 0:s.path)||""})),__isFallback:!0};try{const O=n.router||Ho.useRouter();if(O)i=O;else{const W=e.getCurrentInstance();(R=(L=(v=W==null?void 0:W.appContext)==null?void 0:v.config)==null?void 0:L.globalProperties)!=null&&R.$router&&(i=W.appContext.config.globalProperties.$router)}}catch{console.warn("useRouter not available, using fallback")}const{apiUrl:l,DCodeApi:c}=e.inject("externalApi");let d;try{d=Dt.useI18n().locale}catch{d=e.ref("en")}const{setPageTitle:u}=xp(),f=e.computed(()=>n.isEditMode!==void 0?n.isEditMode:s.params&&"id"in s.params?!0:s.path?/\/edit\/[^\/]+$/.test(s.path):!1);e.watchEffect(()=>{});const p=e.computed(()=>{if(s.params&&"id"in s.params)return s.params.id;if(!s.path)return null;const O=s.path.match(/\/edit\/([^\/]+)$/);return O?O[1]:null}),m=e.ref({}),h=e.ref(null),g=e.ref(!0),k=e.ref(!1),b=e.ref(null),E="/api/auto-layout/form/form-dynamic?code=",x="/api/auto-layout/datatable/form-dynamic?code=",C=e.ref(n.layoutCode),V=e.computed(()=>{var ne;if(!h.value)return"";const O=((ne=d==null?void 0:d.value)==null?void 0:ne.toLowerCase())||"en",W=O==="kr"||O==="ko"||O.startsWith("kr-")||O.startsWith("ko-"),K=O==="en"||O.startsWith("en-");return(W?h.value.titleKR||h.value.titleEN:K?h.value.titleEN:h.value.titleID)||h.value.title||n.layoutCode});e.watch(V,O=>{O&&u(O)},{immediate:!0});const N=(O,W={})=>(!O||typeof O!="object"||Object.keys(O).forEach(K=>{const ne=O[K];W[K]=ne,ne&&typeof ne=="object"&&!Array.isArray(ne)&&!(ne instanceof Date)&&!ne._isLogicValue&&N(ne,W)}),W),w=O=>{var q;if(!O||typeof O!="string"||O.startsWith("http"))return O;const W=(q=n.selectedTokenCore)==null?void 0:q.address;if(!W||typeof W!="string")return O;const K=W.replace(/\/$/,""),ne=O.startsWith("/")?O:`/${O}`;return`${K}${ne}`},y=O=>{var W;if(!O)return!1;for(const K of O){const ne=K.propsForm||K.propsFormStep||K.propsTable||K.propsTableStep||K.props||{};if(ne.endpointForm||ne.endpointTable||K.endpointForm)return!0;if(K.type==="WIZARD"&&((W=K.propsWizard)!=null&&W.propsSteps))for(const q of K.propsWizard.propsSteps){const Q=Array.isArray(q.sectionsWizard)?q.sectionsWizard:[q.sectionsWizard].filter(Boolean);if(y(Q))return!0}}return!1},_=async()=>{var O,W,K,ne,q,Q,ae;g.value=!0;try{let j=n.layoutCode;s&&s.query&&typeof s.query=="object"&&"code"in s.query&&(j=s.query.code||n.layoutCode);const z=n.apiToken,J=z?{Authorization:`Bearer ${z}`}:{},le=w(`${E}${j}`);let ye=await l(le,"GET",null,J);if(!ye.status||!ye.data||Array.isArray(ye.data)&&ye.data.length===0)try{const oe=w(`${x}${j}`),ge=await l(oe,"GET",null,J);if(ge.status){const ce=Array.isArray(ge.data)?ge.data[0]:ge.data;ce&&ce.code&&(j=ce.code,C.value=j,ye=await l(w(`${E}${j}`),"GET",null,J))}}catch(oe){console.warn("Failed to resolve layout code via datatable",oe)}if(ye.status){h.value=Array.isArray(ye.data)?ye.data[0]:ye.data;const oe={};if((O=h.value)!=null&&O.sections&&h.value.sections.forEach(ge=>{var ke,he;((ge.propsForm||ge.props||{}).fields||ge.fields||[]).forEach(Ee=>{var we;const Be=Ee.model||((we=Ee.props)==null?void 0:we.model)||Ee.key;Be&&(oe[Be]=null)}),((ke=ge.type)==null?void 0:ke.toUpperCase())==="WIZARD"&&((he=ge.propsWizard)!=null&&he.propsSteps)&&ge.propsWizard.propsSteps.forEach(Ee=>{(Array.isArray(Ee.sectionsWizard)?Ee.sectionsWizard:[Ee.sectionsWizard].filter(Boolean)).forEach(we=>{var te;(we.fields||((te=we.propsFormStep)==null?void 0:te.fields)||[]).forEach(se=>{var Ce;const ue=se.model||((Ce=se.props)==null?void 0:Ce.model)||se.key;ue&&(oe[ue]=null)})})})}),m.value=oe,f.value&&p.value&&(m.value.id=p.value),g.value=!1,f.value&&p.value){k.value=!0;try{const ge=((K=(W=h.value.sections)==null?void 0:W[0])==null?void 0:K.propsForm)||((q=(ne=h.value.sections)==null?void 0:ne[0])==null?void 0:q.props),ce=(ge==null?void 0:ge.endpointSection)||(ge==null?void 0:ge.endpointForm),de=h.value.endpointForm,ke=ce||de;if(ke!=null&&ke.apiUrl){k.value=!0;const he=ke.apiUrl,Ee=ke.apiMethod||"GET",Be=ke.keyParam||[],we={};Be.length>0?Be.forEach(te=>{typeof te=="string"?we[te]=p.value:typeof te=="object"&&te!==null&&Object.entries(te).forEach(([se])=>{we[se]=p.value})}):we.id=p.value;const De=await c(w(he),Ee,we);if(De.status){let te=Array.isArray(De.data)?De.data[0]:De.data;De.payload&&(te={...te,...De.payload});const se=N(te);m.value={...m.value,...se,...te}}else console.warn("[AutoLayoutForm] Record API returned status: false",De)}else if((Q=h.value.endpointGlobal)!=null&&Q.apiUrl){k.value=!0;const he=h.value.endpointGlobal.apiUrl,Ee=h.value.endpointGlobal.apiMethod||"GET",Be={id:p.value},we=await c(w(he),Ee,Be);if(we.status){const De=Array.isArray(we.data)?we.data[0]:we.data,te=N(De);m.value={...m.value,...te,...De}}}else if(!y(h.value.sections)){k.value=!0;const he=((ae=h.value.endpoint)==null?void 0:ae.detailUrl)||`/api/${C.value}/detail/${p.value}`,Ee=await l(w(he),"GET");if(Ee.status){let Be=Array.isArray(Ee.data)?Ee.data[0]:Ee.data;if(Ee.payload){const te={...Ee.payload};if(Object.keys(te).forEach(se=>{Be[se]!==void 0&&Be[se]!==null&&(te[se]=Be[se])}),!("id"in te)&&Be.id){const se=Object.keys(te).find(ue=>ue.startsWith("id")&&ue.length>2&&!te[ue]);se&&(te[se]=Be.id)}Be=te}const we={...Be};Object.keys(m.value).forEach(te=>{if(we[te]===void 0||we[te]===null){if(te.toLowerCase().startsWith("id")&&te.length>2){const ue=te.substring(2).toLowerCase(),Ce=Array.isArray(Ee.data)?Ee.data[0]:Ee.data,ie=Object.keys(Ce).find(fe=>fe.toLowerCase()===ue);ie&&Ce[ie]&&typeof Ce[ie]=="object"&&"id"in Ce[ie]&&(we[te]=Ce[ie].id)}if(te==="idSupervisor"){const ue=Array.isArray(Ee.data)?Ee.data[0]:Ee.data;ue.supervisorId&&(we[te]=ue.supervisorId)}}});const De=N(we);m.value={...m.value,...De,...we}}}}catch(ge){console.error("Failed to fetch record data:",ge)}finally{k.value=!1}}}}catch(j){console.error("Failed to load form layout:",j),g.value=!1}},D=O=>{const W=Object.keys(m.value||{}).filter(ne=>m.value[ne]!==null&&m.value[ne]!==void 0),K=Object.keys(O||{}).filter(ne=>O[ne]!==null&&O[ne]!==void 0);if(W.length>3&&K.length<W.length/2){console.warn('[AutoLayoutForm] Circuit breaker triggered: Ignoring likely erroneous "empty" update from child.',{currentCount:W.length,incomingCount:K.length,data:O});return}m.value=O,r("update:model",O)},T=O=>{var K,ne;const W=(O==null?void 0:O.routeBack)||(O==null?void 0:O.pathBack)||((K=h.value)==null?void 0:K.routeBack)||((ne=h.value)==null?void 0:ne.pathBack);W?i.push(W):i.back()},M=async O=>{var W,K,ne;if(n.dummyMode){r("submit-success",O),T();return}try{const q=(ne=(K=(W=h.value.sections)==null?void 0:W[0])==null?void 0:K.propsForm)==null?void 0:ne.endpointForm,Q=h.value.endpointGlobal||h.value.endpoint,ae=(q==null?void 0:q.submitUrl)||(Q==null?void 0:Q.submitUrl)||`/api/generic/${n.layoutCode}`,j=(q==null?void 0:q.submitMethod)||(Q==null?void 0:Q.submitMethod)||(f.value?"PUT":"POST"),z=Object.values(O).some(de=>de instanceof File||de instanceof Blob);let J=O;if(b.value&&O[b.value]){const de=O[b.value];J={},Object.values(de).forEach(ke=>{typeof ke=="object"&&ke!==null&&Object.assign(J,ke)})}let le;z?(le=new FormData,Object.keys(J).forEach(de=>{const ke=J[de];ke!=null&&(Array.isArray(ke)?ke.forEach(he=>le.append(`${de}[]`,he)):le.append(de,ke))})):(le={...J},f.value&&p.value&&!le.id&&(le.id=p.value));const ye=q||Q,oe={...ye==null?void 0:ye.config};ye!=null&&ye.accept&&(oe.headers||(oe.headers={}),oe.headers.Accept=ye.accept,oe.headers.accept=ye.accept);const ge=await l(w(ae),j,le,oe),ce=(ge==null?void 0:ge.status)===!0||(ge==null?void 0:ge.success)===!0||(ge==null?void 0:ge.code)===200||(ge==null?void 0:ge.code)==="00"||(ge==null?void 0:ge.status)==="SUCCESS";if(ce){let de=(ge==null?void 0:ge.data)||(ge==null?void 0:ge.payload)||ge;if(Array.isArray(de)&&de.length>0&&(de=de[0]),de&&typeof de=="object"){const ke={...(s==null?void 0:s.query)||{}};let he=!1;if(Object.entries(de).forEach(([Ee,Be])=>{["status","success","code","message"].includes(Ee)||Be!=null&&(typeof Be=="string"||typeof Be=="number"||typeof Be=="boolean")&&ke[Ee]!==String(Be)&&(ke[Ee]=String(Be),he=!0)}),he&&typeof window<"u"&&window.history){const Ee=new URL(window.location.href);Object.entries(ke).forEach(([Be,we])=>{we!=null&&Ee.searchParams.set(Be,String(we))}),window.history.replaceState(window.history.state,"",Ee.toString())}}}ce&&(r("submit-success",le),T())}catch(q){console.error("Submit failed:",q)}},P=async(O,W,K)=>{if(O==="cancel"){H();return}const ne=W.endpointPropAction||W.propsActionGlobal&&W.propsActionGlobal.endpointPropAction;if(ne){if(n.dummyMode){r("action-success",O,W,K||m.value);return}try{g.value=!0;const q=K?{...K}:{...m.value};f.value&&W.model&&p.value&&(q[W.model]=p.value);const Q=ne.apiUrl,ae=ne.apiMethod||"POST";(await c(w(Q),ae,q)).status&&(r("action-success",O,W,q),T(W))}catch(q){console.error("Action failed:",q)}finally{g.value=!1}}},H=()=>{r("cancel"),i.back()},Z=O=>{b.value=O};return e.onMounted(()=>{_()}),e.watch(()=>n.model,O=>{O&&Object.keys(O).length>0&&(m.value={...m.value,...O})},{immediate:!0,deep:!0}),e.onUnmounted(()=>{u("")}),(O,W)=>(e.openBlock(),e.createElementBlock("div",RT,[e.createElementVNode("div",OT,[e.createVNode(e.Transition,{name:"fade",mode:"out-in"},{default:e.withCtx(()=>[!g.value&&h.value?(e.openBlock(),e.createElementBlock("div",FT,[e.createElementVNode("div",$T,[e.createElementVNode("p",LT,e.toDisplayString(h.value.description),1)]),e.createVNode(yl,{schema:h.value,model:m.value,"is-edit-mode":f.value,loading:k.value,"selected-token-core":n.selectedTokenCore,router:e.unref(i),"permission-base":n.permissionBase,"user-permissions":n.userPermissions,"check-permission":n.checkPermission,"dummy-mode":n.dummyMode,"onUpdate:model":W[0]||(W[0]=K=>D(K)),onSubmit:M,onCancel:H,onAction:P,onStepChange:Z,class:"w-full"},null,8,["schema","model","is-edit-mode","loading","selected-token-core","router","permission-base","user-permissions","check-permission","dummy-mode"])])):g.value?(e.openBlock(),e.createElementBlock("div",IT,[e.createVNode(PT)])):(e.openBlock(),e.createElementBlock("div",zT," Failed to load form configuration for "+e.toDisplayString(n.layoutCode),1))]),_:1})])]))}}),[["__scopeId","data-v-79d3a75d"]]),jT={class:"h-full flex flex-col"},UT={key:1,class:"flex-1 flex items-center justify-center"},WT={key:2,class:"flex-1 flex items-center justify-center text-red-500"},xl=e.defineComponent({name:"AutoLayoutDatatable",__name:"AutoLayoutDatatable",props:{layoutCode:{},apiToken:{},userPermissions:{},permissionBase:{},checkPermission:{type:Function}},emits:["action","navigate"],setup(t,{emit:o}){var V,N,w,y,_,D;const n=t,r=o,a=e.getCurrentInstance(),{apiUrl:s}=e.inject("externalApi");let i={query:{},params:{},path:""};try{const T=Ho.useRoute();T?i=T:(w=(N=(V=a==null?void 0:a.appContext)==null?void 0:V.config)==null?void 0:N.globalProperties)!=null&&w.$route&&(i=a.appContext.config.globalProperties.$route)}catch{console.warn("useRoute not available, using fallback")}let l={back:()=>{typeof window<"u"&&window.history&&window.history.length>1&&window.history.back()},push:T=>{typeof window<"u"&&(typeof T=="string"?window.location.href=T:T&&T.path&&(window.location.href=T.path))}};try{const T=Ho.useRouter();T?l=T:(D=(_=(y=a==null?void 0:a.appContext)==null?void 0:y.config)==null?void 0:_.globalProperties)!=null&&D.$router&&(l=a.appContext.config.globalProperties.$router)}catch{console.warn("useRouter not available, using fallback")}const c=e.inject("hasActionAccess",()=>!1),d=e.inject("userPermissions",null),u=e.ref(null),f=e.ref(!0),p=e.ref(null),m="/api/auto-layout/datatable/form-dynamic?code=",h=e.computed(()=>`${m}${n.layoutCode}`),{setPageTitle:g}=xp();let k;try{k=Dt.useI18n().locale}catch{k=e.ref("en")}const b=()=>{if(u.value){const M=(k.value==="kr"||k.value==="ko"?u.value.titleKR||u.value.titleEN:k.value==="id"?u.value.titleID:u.value.titleEN)||u.value.title||"Datatable";g(M)}};e.watch(k,()=>{b()});const E=async()=>{f.value=!0;try{const T=n.apiToken,M=T?{Authorization:`Bearer ${T}`}:{},P=await s(h.value,"GET",null,M);P.status&&(u.value=Array.isArray(P.data)?P.data[0]:P.data,b())}catch(T){console.error("Gagal Menampilkan Datatable:",T)}finally{f.value=!1}},x=T=>{T.action},C=T=>{let M=T.route;const P=T.path;if(!M&&P){const Z=((i==null?void 0:i.path)||"").split("/");Z.length>=2&&(M=`/${Z[1]}/create`)}if(M||P){const H={...T.query||{},code:P||void 0};Object.keys(H).forEach(Z=>H[Z]===void 0&&delete H[Z]),r("navigate",{route:M||"/form",query:H}),l&&!l.__isFallback&&l.push({path:M||"/form",query:H})}else console.warn("[DEBUG] No route or path provided for navigation")};return e.onMounted(()=>{E()}),(T,M)=>(e.openBlock(),e.createElementBlock("div",jT,[!f.value&&u.value?(e.openBlock(),e.createBlock(zn,{key:0,ref_key:"dtRef",ref:p,"api-url":h.value,"api-method":"GET","table-config":u.value,"permission-base":n.permissionBase||"","dummy-mode":["datatable-create","datatable-edit"].includes(n.layoutCode),"user-permissions":n.userPermissions||e.unref(d),"permission-checker":e.unref(c),checkPermission:n.checkPermission,onAction:x,onNavigate:C},{"header-actions":e.withCtx(()=>[...M[0]||(M[0]=[])]),_:1},8,["api-url","table-config","permission-base","dummy-mode","user-permissions","permission-checker","checkPermission"])):f.value?(e.openBlock(),e.createElementBlock("div",UT,[...M[1]||(M[1]=[e.createElementVNode("i",{class:"mdi mdi-loading mdi-spin text-4xl text-primary-600"},null,-1)])])):(e.openBlock(),e.createElementBlock("div",WT," Failed to load configuration for "+e.toDisplayString(n.layoutCode),1))]))}}),HT={class:"flex items-start justify-between"},qT={class:"flex-1"},KT={class:"text-sm font-medium text-zinc-600 dark:text-zinc-400 mb-2"},GT={class:"text-3xl font-display font-semibold text-zinc-900 dark:text-zinc-100 mb-2"},XT=["innerHTML"],YT=e.defineComponent({__name:"CardSummary",props:{title:{},value:{},trend:{},icon:{},type:{default:"primary"},format:{default:"number"},delay:{default:0}},setup(t){const o=t,n=e.computed(()=>typeof o.icon=="string"&&o.icon.trim().startsWith("<svg")),r=e.computed(()=>typeof o.icon=="string"&&(Tt[o.icon]||Tt[o.icon+"Icon"])||o.icon),a=e.computed(()=>o.format==="currency"?Ng(o.value):o.value.toLocaleString("id-ID")),s=e.computed(()=>({primary:"bg-primary-100",success:"bg-success-100",warning:"bg-warning-100",info:"bg-secondary-100"})[o.type]),i=e.computed(()=>({primary:"text-primary-600",success:"text-success-600",warning:"text-warning-600",info:"text-secondary-600"})[o.type]);return(l,c)=>(e.openBlock(),e.createBlock(co,null,{default:e.withCtx(()=>[e.createElementVNode("div",HT,[e.createElementVNode("div",qT,[e.createElementVNode("p",KT,e.toDisplayString(t.title),1),e.createElementVNode("p",GT,e.toDisplayString(a.value),1)]),e.createElementVNode("div",{class:e.normalizeClass(["w-14 h-14 rounded-xl flex items-center justify-center flex-shrink-0",s.value])},[n.value?(e.openBlock(),e.createElementBlock("div",{key:0,innerHTML:t.icon,class:e.normalizeClass(["w-7 h-7",i.value])},null,10,XT)):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value),{key:1,class:e.normalizeClass(["w-7 h-7",i.value])},null,8,["class"]))],2)])]),_:1}))}}),wp=e.defineCustomElement(kl),Cp=e.defineCustomElement(xl);typeof customElements<"u"&&(customElements.get("micro-dynamic-form")||customElements.define("micro-dynamic-form",wp),customElements.get("micro-dynamic-datatable")||customElements.define("micro-dynamic-datatable",Cp));const JT=[qr,Vs,at,co,Ys,Js,Df,un,Li,Ii,zi,Wa,Yf,Eo,Qf,Ha,Gi,qi,Wi,Zf,Xi,qa,Yi,pn,Ji,Ka,ep,tp,Qi,Zi,Ga,Xa,Sn,Rn,el,op,tl,ol,nl,On,al,sl,il,ll,Ja,zn,kl,xl,yl,kp,Fn],Ep={install(t,o={}){const n=o.externalApi||o;t.provide("externalApi",n),JT.forEach(r=>{r.name&&t.component(r.name,r)})}};Ae.AutoLayoutDatatable=xl,Ae.AutoLayoutForm=kl,Ae.Breadcrumb=kp,Ae.CardSummary=YT,Ae.DCodeAutoComplete=qr,Ae.DCodeBadge=On,Ae.DCodeBeforeAfter=Ys,Ae.DCodeButton=at,Ae.DCodeCard=co,Ae.DCodeCardCheckboxList=Li,Ae.DCodeChart=Df,Ae.DCodeCheckbox=un,Ae.DCodeCurrencyField=Ii,Ae.DCodeDatePicker=Wa,Ae.DCodeDialog=Eo,Ae.DCodeDialogCloseBtn=Qf,Ae.DCodeDropzone=Ha,Ae.DCodeDynamicUploadList=Wi,Ae.DCodeFileField=Gi,Ae.DCodeFileResult=qi,Ae.DCodeIconDropdown=Zf,Ae.DCodeImageCropperDialog=Xi,Ae.DCodeImageField=qa,Ae.DCodeImageResult=Yi,Ae.DCodeInfiniteAutoComplete=Vs,Ae.DCodeLabel=pn,Ae.DCodeListLabels=Js,Ae.DCodeMonthPicker=Yf,Ae.DCodeMultiSelect=Ji,Ae.DCodeOtpInput=Ka,Ae.DCodePdfViewer=ll,Ae.DCodePercentField=zi,Ae.DCodePermissionMenu=ol,Ae.DCodeProgress=ep,Ae.DCodeProgressBar=tp,Ae.DCodeRadio=Qi,Ae.DCodeRadioCustom=Zi,Ae.DCodeRobotList=Ja,Ae.DCodeSlider=Ga,Ae.DCodeStaticImage=sl,Ae.DCodeStaticLabel=al,Ae.DCodeSwitch=Xa,Ae.DCodeTextField=Sn,Ae.DCodeTextarea=Rn,Ae.DCodeTimelineWithIcons=el,Ae.DCodeTreePermissions=nl,Ae.DCodeUploadFile=op,Ae.DCodeWizard=tl,Ae.DCodeWorkflowDiagram=il,Ae.DataTable=zn,Ae.DataTableComponent=zn,Ae.DynamicForm=yl,Ae.DynamicFormField=Fn,Ae.DynamicUI=Ep,Ae.MicroDynamicDatatable=Cp,Ae.MicroDynamicForm=wp,Ae.default=Ep,Ae.useDynamicForm=yp,Object.defineProperties(Ae,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));