PageSourceSearch

https://go-nanny.id/_nuxt/index.73ee2a38.js

js go-nanny.id collected 2026-10-02 01:03:11 UTC 8,417 bytes, 1 lines download raw bytes

1import le from"./Icon.835a50bf.js";import{_ as ne}from"./Btn.vue.011855f3.js";import{a as ie,d as ce,u as re,f as de,h as ue,b as me,_ as _e}from"./entry.036824a3.js";import{_ as pe}from"./Pagination.vue.5c1886fa.js";import{_ as ge}from"./Sp.909e5685.js";import{u as he,_ as fe}from"./Faq.ef0fc23f.js";import{_ as ve}from"./ModalContainer.vue.008a7330.js";import{u as xe}from"./useToast.acdd6c2f.js";import{m as ye,a as u,an as be,k as b,b as we,p as ke,N as d,O as e,W as o,V as p,ac as T,ao as Fe,P as j,a2 as E,af as Ae,R as B,_ as n,K as Ce,a6 as Me,I as Ve,J as De,M as i,a4 as Qe,u as I}from"./swiper-vue.9554298b.js";import"./config.aec7d9fd.js";import"./TextField.vue.82f1a95e.js";import"./useSchema.043d0c7b.js";import"./index.18d85234.js";import"./Group.vue.a955ec46.js";import"./index.7c2fa202.js";import"./index.1ba5d69d.js";const c=w=>(Ve("data-v-536523f3"),w=w(),De(),w),$e={class:"p-4 md:p-6"},qe={class:"flex flex-col md:flex-row md:items-center md:justify-between mb-6 gap-4"},Ne=c(()=>e("div",null,[e("h1",{class:"text-2xl font-bold text-gray-800"},"FAQ Management"),e("p",{class:"text-sm text-gray-500 mt-1"},"Manage FAQs on your landing page.")],-1)),Se={class:"flex gap-2"},Te=c(()=>e("span",null,"Add New FAQ",-1)),je={class:"flex flex-col md:flex-row justify-between items-stretch md:items-center mb-6 gap-4 bg-white p-4 rounded-lg shadow-sm"},Ee={class:"flex items-center gap-3 w-full md:w-auto"},Be=c(()=>e("label",{class:"text-sm font-medium text-gray-700 whitespace-nowrap"},"Filter by Category:",-1)),Ie=c(()=>e("option",{value:""},"All Categories",-1)),Le=["value"],Ue={class:"relative w-full md:w-80"},Pe={key:0,class:"flex justify-center items-center py-20"},Re=c(()=>e("span",{class:"loading loading-spinner loading-lg text-primary"},null,-1)),Oe=[Re],He={key:1,class:"bg-white rounded-lg shadow-sm p-12 text-center"},ze=c(()=>e("h3",{class:"text-lg font-semibold text-gray-700 mb-2"},"No FAQs Found",-1)),Ge={class:"text-gray-500 text-sm"},Je={class:"px-4 py-3 text-center text-sm"},Ke={class:"px-4 py-3"},We={class:"font-medium text-gray-800 text-sm max-w-xs"},Ye={class:"px-4 py-3"},Xe=["title"],Ze={class:"px-4 py-3"},et={class:"inline-flex items-center px-2.5 py-1 rounded-full text-xs font-medium bg-blue-100 text-blue-800"},tt={class:"px-4 py-3"},st={class:"flex items-center justify-center gap-2"},at=["onClick"],ot=c(()=>e("span",{class:"hidden sm:inline"},"Edit",-1)),lt=["onClick"],nt=c(()=>e("span",{class:"hidden sm:inline"},"Delete",-1)),it={class:"flex flex-col sm:flex-row items-center justify-between w-full py-3 px-4 gap-3"},ct={class:"text-xs text-gray-500"},rt={class:"text-center space-y-4"},dt={class:"bg-red-100 w-16 h-16 rounded-full flex items-center justify-center mx-auto text-red-600"},ut=c(()=>e("h3",{class:"text-xl font-bold text-gray-800"},"Delete FAQ",-1)),mt=c(()=>e("p",{class:"text-gray-500 mt-2 text-sm"}," Are you sure you want to delete this FAQ? ",-1)),_t={class:"font-medium text-gray-700 mt-1"},pt={class:"flex gap-3 mt-6"},gt=["disabled"],ht=["disabled"],ft={key:0,class:"loading loading-spinner loading-sm"},vt=ye({__name:"index",async setup(w){let k,A;const{requestOptions:C}=ie(),M=xe(),L=ce();re({title:"Manage FAQs - Go Nanny Bali"});const r=u(1),g=u(""),h=u(""),F=u(!1),f=u(!1),v=u(!1);u(void 0);const{selectedFaq:m}=he(),x=u("");let V;const U=["No.","Question","Answer","Category",""],{data:y,refresh:D,pending:P}=([k,A]=be(()=>me(`admin-faqs-${r.value}-${x.value}-${h.value}`,()=>$fetch("/admin/faqs",{params:{page:r.value,search:x.value||void 0,category_id:h.value||void 0},...C}),{watch:[r,x,h],server:!1})),k=await k,A(),k),R=b(()=>P.value),Q=b(()=>{var s;return((s=y.value)==null?void 0:s.data)||[]}),_=b(()=>{var s;return(s=y.value)==null?void 0:s.meta});b(()=>{var s,a;return((a=(s=y.value)==null?void 0:s.meta)==null?void 0:a.total)||0});const O=b(()=>{var a;if(!((a=y.value)!=null&&a.data))return[];const s=new Map;return y.value.data.forEach(l=>{l.category&&!s.has(l.category.id)&&s.set(l.category.id,l.category)}),Array.from(s.values())}),H=s=>{var a;return s+1+(r.value-1)*(((a=_.value)==null?void 0:a.per_page)||10)},z=()=>{g.value="",x.value="",r.value=1},G=()=>{r.value=1};we(g,s=>{clearTimeout(V),V=setTimeout(()=>{x.value=s,r.value=1},500)});const J=s=>{v.value=!v.value,m.value=s};function K(){v.value=!1,D()}const W=s=>{m.value=s,F.value=!0},$=()=>{F.value=!1,m.value=null},Y=async()=>{var s;if(m.value){f.value=!0;try{await $fetch(`/admin/faqs/${m.value.id}`,{method:"DELETE",...C}),M.success("FAQ deleted successfully!"),await D(),$()}catch(a){console.error("Delete error:",a),M.error(((s=a.data)==null?void 0:s.message)||"Failed to delete FAQ")}finally{f.value=!1}}},{hasPermissionVisit:X}=de();return ke(()=>{X("landing_page")||L.push("/")}),(s,a)=>{const l=le,Z=ne,q=ue,ee=pe,te=ge,se=fe,N=ve;return i(),d("div",$e,[e("div",qe,[Ne,e("div",Se,[o(q,{to:"/admin/landing-page/faqs/create"},{default:p(()=>[o(Z,{class:"btn btn-primary flex items-center gap-2"},{default:p(()=>[o(l,{name:"heroicons:plus",width:"18",height:"18"}),Te]),_:1})]),_:1})])]),e("div",je,[e("div",Ee,[Be,T(e("select",{class:"select select-bordered w-full md:w-64 roun
1ded-lg text-sm","onUpdate:modelValue":a[0]||(a[0]=t=>h.value=t),onChange:G},[Ie,(i(!0),d(j,null,E(O.value,t=>(i(),d("option",{key:t.id,value:t.id},n(t.name),9,Le))),128))],544),[[Fe,h.value]])]),e("div",Ue,[T(e("input",{"onUpdate:modelValue":a[1]||(a[1]=t=>g.value=t),type:"text",placeholder:"Search questions or answers...",class:"input input-bordered w-full pl-10 pr-10 rounded-lg text-sm"},null,512),[[Ae,g.value]]),o(l,{name:"heroicons:magnifying-glass",class:"absolute left-3 top-1/2 -translate-y-1/2 text-gray-400 w-5 h-5"}),g.value?(i(),d("button",{key:0,onClick:z,class:"absolute right-3 top-1/2 -translate-y-1/2 text-gray-400 hover:text-gray-600"},[o(l,{name:"heroicons:x-mark",class:"w-5 h-5"})])):B("",!0)])]),R.value?(i(),d("div",Pe,Oe)):Q.value.length===0?(i(),d("div",He,[o(l,{name:"heroicons:chat-bubble-left-right",class:"w-16 h-16 text-gray-300 mx-auto mb-4"}),ze,e("p",Ge,n(g.value||h.value?"Try adjusting your filters":"Start by creating your first FAQ"),1),o(q,{to:"/admin/landing-page/faqs/create",class:"btn btn-primary mt-4"},{default:p(()=>[Qe(" Create New FAQ ")]),_:1})])):(i(),Ce(te,{key:2,headers:U,title:"FAQs List"},Me({default:p(()=>[(i(!0),d(j,null,E(Q.value,(t,ae)=>{var S;return i(),d("tr",{key:t.id,class:"hover:bg-gray-50 transition-colors"},[e("td",Je,n(H(ae)),1),e("td",Ke,[e("div",We,n(t.question),1)]),e("td",Ye,[e("div",{class:"text-gray-600 text-sm max-w-md line-clamp-3",title:t.answer},n(t.answer),9,Xe)]),e("td",Ze,[e("span",et,n(((S=t.category)==null?void 0:S.name)||"Uncategorized"),1)]),e("td",tt,[e("div",st,[e("button",{onClick:oe=>J(t),class:"btn btn-ghost btn-sm text-blue-600 hover:bg-blue-50 normal-case gap-1",title:"Edit FAQ"},[o(l,{name:"heroicons:pencil",class:"w-4 h-4"}),ot],8,at),e("button",{onClick:oe=>W(t),class:"btn btn-ghost btn-sm text-red-600 hover:bg-red-50 normal-case gap-1",title:"Delete FAQ"},[o(l,{name:"heroicons:trash",class:"w-4 h-4"}),nt],8,lt)])])])}),128))]),_:2},[_.value?{name:"rightFooter",fn:p(()=>[e("div",it,[e("span",ct," Showing "+n(_.value.from||0)+" to "+n(_.value.to||0)+" of "+n(_.value.total)+" entries ",1),o(ee,{modelValue:r.value,"onUpdate:modelValue":a[2]||(a[2]=t=>r.value=t),"per-page":_.value.per_page,total:_.value.total},null,8,["modelValue","per-page","total"])])]),key:"0"}:void 0]),1024)),o(N,{modelValue:v.value,"onUpdate:modelValue":a[4]||(a[4]=t=>v.value=t),"click-outsite":"","esc-click":"",class:"p-6 max-w-md"},{default:p(()=>[o(se,{exitingData:I(m),"on@close":a[3]||(a[3]=t=>K())},null,8,["exitingData"])]),_:1},8,["modelValue"]),o(N,{modelValue:F.value,"onUpdate:modelValue":a[5]||(a[5]=t=>F.value=t),"click-outsite":"","esc-click":"",class:"p-6 max-w-md"},{default:p(()=>{var t;return[e("div",rt,[e("div",dt,[o(l,{name:"heroicons:exclamation-triangle",class:"w-10 h-10"})]),e("div",null,[ut,mt,e("p",_t,' "'+n((t=I(m))==null?void 0:t.question)+'" ',1)]),e("div",pt,[e("button",{onClick:$,disabled:f.value,class:"btn btn-ghost flex-1 normal-case"}," Cancel ",8,gt),e("button",{onClick:Y,disabled:f.value,class:"btn btn-error flex-1 normal-case gap-2"},[f.value?(i(),d("span",ft)):B("",!0),e("span",null,n(f.value?"Deleting...":"Yes, Delete"),1)],8,ht)])])]}),_:1},8,["modelValue"])])}}});const Tt=_e(vt,[["__scopeId","data-v-536523f3"]]);export{Tt as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.