1import{a as u,j as e,L as S,D as E,aM as F,B as o,e as z,f as P,g as Y,p as L,G as M,z as p,s as I}from"./index-ku9TN11n.js";import{I as c}from"./input-fZET9lN6.js";import{T as v}from"./textarea-C9cyUWBy.js";import{L as r}from"./label-BuRQCBzH.js";import{T as O,a as B,b as y,c as N}from"./tabs-DRluBKfe.js";import{A as G,h as R,a as H,b as U,c as $,d as V,e as K,f as Q,g as J}from"./alert-dialog-D-5rcu66.js";import{I as W}from"./image-upload-Bn0FROJK.js";import{D as X}from"./DashboardSidebar-EW6Fuxxh.js";import{a as Z,T as ee,h as te}from"./translation-badge-CHHpJmml.js";import{a as ae,b as se,c as ie,d as re}from"./useTestimonials-rBtF1y3Q.js";import{A as le}from"./arrow-left-DqARQGJ1.js";import{P as ne}from"./plus-D87lASzJ.js";import{S as oe}from"./sparkles-DVU8Sy3i.js";import{S as b}from"./star-BVGglQ_m.js";import{G as ce}from"./grip-vertical-_FG_hBIw.js";import{P as me}from"./pencil-C-sHMoto.js";import{T as de}from"./trash-2--jGBABLw.js";import"./index-BV8PEpIW.js";import"./upload-9gXKldt5.js";import"./image-ChuTrIC8.js";import"./check-uqncKYKR.js";import"./triangle-alert-CPYMpVAr.js";import"./InstallAppButton-B4ORbPCe.js";import"./pwa-analytics-BPl5M53e.js";import"./sheet-CC2Ve4Zb.js";import"./chevron-right-smfaXfQ7.js";import"./chevron-left-DQYi-0gy.js";import"./bell-CgDMWImU.js";import"./flask-conical-BgFrYPiX.js";import"./house-BIWU5abC.js";import"./link-2-M1vATu36.js";import"./mail-BvnEkqiv.js";import"./video-D-S3kOXo.js";import"./stamp-CczzgxKF.js";import"./calculator-CbgVodli.js";import"./calendar-clock-C2oTCq-E.js";import"./stethoscope-BqMx7KqX.js";import"./megaphone-1iAd_1JP.js";import"./scale-C5-al7al.js";import"./file-text-B6qh_Ob8.js";import"./bike-VBeAlBcc.js";import"./truck-CGSdli-E.js";import"./hard-hat-ONarbGO3.js";import"./layout-dashboard-eH06ni_L.js";import"./inbox-CQS62KJ8.js";import"./circle-help-DOxzJxN_.js";import"./users-DBMWsAiY.js";import"./briefcase-6G1pWVvM.js";import"./user-cog-C0rjwm5F.js";import"./pen-tool-bSF9nViI.js";import"./credit-card-R3piJgwU.js";import"./search-BhAzteM-.js";import"./globe-CL8vzLd6.js";import"./wrench-BAjhyg4-.js";import"./crown-sZqJXUTJ.js";import"./activity-B6P6x54O.js";import"./message-square-DnnPzbtC.js";import"./circle-check-big-BhK-dlus.js";import"./circle-alert-CFA1To2U.js";import"./languages-CJqFSqBg.js";const jt=()=>{const{data:l,isLoading:w}=ae(),h=se(),x=ie(),T=re(),[q,m]=u.useState(!1),[d,g]=u.useState(null),[_,j]=u.useState(!1),[a,i]=u.useState({client_name:"",client_title:"",client_title_en:"",company_name:"",quote:"",quote_en:"",image_url:"",rating:5,display_order:0,is_active:!0}),f=()=>{i({client_name:"",client_title:"",client_title_en:"",company_name:"",quote:"",quote_en:"",image_url:"",rating:5,display_order:0,is_active:!0}),g(null)},D=t=>{g(t),i({client_name:t.client_name,client_title:t.client_title||"",client_title_en:t.client_title_en||"",company_name:t.company_name||"",quote:t.quote,quote_en:t.quote_en||"",image_url:t.image_url||"",rating:t.rating,display_order:t.display_order,is_active:t.is_active}),m(!0)},C=async()=>{if(!a.quote&&!a.client_title){p.error("Ãevrilecek içerik yok");return}j(!0);try{const{data:t,error:s}=await I.functions.invoke("translate-content",{body:{title:a.client_title||void 0,content:a.quote||void 0}});if(s)throw s;if(t.error)throw new Error(t.error);i(n=>({...n,client_title_en:t.title_en||n.client_title_en,quote_en:t.content_en||n.quote_en})),p.success("İçerik İngilizceye çevrildi")}catch(t){console.error("Translation error:",t),p.error("Ãeviri baÅarısız oldu")}finally{j(!1)}},k=async t=>{t.preventDefault();const s={client_name:a.client_name,client_title:a.client_title||null,client_title_en:a.client_title_en||null,company_name:a.company_name||null,quote:a.quote,quote_en:a.quote_en||null,image_url:a.image_url||null,rating:a.rating,display_order:a.display_order,is_active:a.is_active};d?await x.mutateAsync({id:d.id,...s}):await h.mutateAsync(s),m(!1),f()},A=async t=>{await T.mutateAsync(t)};return e.jsxs("div",{className:"min-h-screen flex w-full bg-background",children:[e.jsx(X,{}),e.jsx("main",{className:"flex-1 overflow-auto p-6",children:e.jsxs("div",{className:"space-y-6",children:[e.jsxs(S,{to:"/dashboard",className:"inline-flex items-center gap-2 text-sm text-muted-foreground hover:text-foreground transition-colors",children:[e.jsx(le,{className:"w-4 h-4"}),"Dashboard'a Dön"]}),e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"text-2xl font-semibold text-slate-800",children:"MüÅteri Yorumları"}),e.jsxs("div",{className:"flex items-center gap-4",children:[e.jsx("p",{className:"text-muted-foreground",children:"MüÅteri yorumlarını yönetin"}),l&&l.length>0&&e.jsx(Z,{items:l,translationFields:["quote_en"]})]})]}),e.jsxs(E,{open:q,onOpenChange:t=>{m(t),t||f()},children:[e.jsx(F,{asChild:!0,children:e.jsxs(o,{className:"gap-2",children:[e.jsx(ne,{className:"w-4 h-4"}),"Yeni Yorum Ekle"]})}),e.jsxs(z,{className:"max-w-2xl max-h-[90vh] overflow-y-auto",children:[e.jsx(P,{children:e.jsx(Y,{children:d?"Yorumu Düzenle":"Yeni Yorum Ekle"})}),e.jsxs("form",{onSubmit:k,className:"space-y-4",children:[e.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(r,{htmlFor:"client_name",children:"MüÅteri Adı *"}),e.jsx(c,{id:"client_name",value:a.client_name,onChange:t=>i(s=>({...s,client_name:t.target.value})),placeholder:"Ãrn: Ahmet Yılmaz",required:!0})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(r,{htmlFor:"company_name",children:"Åirket Adı"}),e.jsx(c,{id:"company_name",value:a.company_name,onChange:t=>i(s=>({...s,company_name:t.target.value})),placeholder:"Ãrn: ABC Åirketi"})]})]}),e.jsx(W,{value:a.image_url,onChange:t=>i(s=>({...s,image_url:t})),bucket:"testimonial-images",folder:"profiles",label:"Profil FotoÄrafı",hint:"Profil fotoÄrafı yükleyin veya URL girin"}),e.jsxs(O,{defaultValue:"tr",className:"w-full",children:[e.jsxs(B,{className:"grid w-full grid-cols-2",children:[e.jsx(y,{value:"tr",className:"gap-2",children:"ð¹ð· Türkçe"}),e.jsx(y,{value:"en",className:"gap-2",children:"ð¬ð§ English"})]}
1),e.jsxs(N,{value:"tr",className:"space-y-4 mt-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(r,{htmlFor:"client_title",children:"Ãnvan (TR)"}),e.jsx(c,{id:"client_title",value:a.client_title,onChange:t=>i(s=>({...s,client_title:t.target.value})),placeholder:"Ãrn: CEO / Kurucu / Oyuncu"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx(r,{htmlFor:"quote",children:"Yorum (TR) *"}),e.jsxs(o,{type:"button",variant:"outline",size:"sm",onClick:C,disabled:_||!a.quote&&!a.client_title,className:"gap-2",children:[_?e.jsx(L,{className:"w-4 h-4 animate-spin"}):e.jsx(oe,{className:"w-4 h-4"}),"İngilizceye Ãevir"]})]}),e.jsx(v,{id:"quote",value:a.quote,onChange:t=>i(s=>({...s,quote:t.target.value})),placeholder:"MüÅteri yorumu...",rows:4,required:!0})]})]}),e.jsxs(N,{value:"en",className:"space-y-4 mt-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(r,{htmlFor:"client_title_en",children:"Title (EN)"}),e.jsx(c,{id:"client_title_en",value:a.client_title_en,onChange:t=>i(s=>({...s,client_title_en:t.target.value})),placeholder:"e.g., CEO / Founder / Actor"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(r,{htmlFor:"quote_en",children:"Quote (EN)"}),e.jsx(v,{id:"quote_en",value:a.quote_en,onChange:t=>i(s=>({...s,quote_en:t.target.value})),placeholder:"Customer testimonial in English...",rows:4})]})]})]}),e.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(r,{htmlFor:"rating",children:"Puan (1-5)"}),e.jsx("div",{className:"flex items-center gap-1",children:[1,2,3,4,5].map(t=>e.jsx("button",{type:"button",onClick:()=>i(s=>({...s,rating:t})),className:"focus:outline-none",children:e.jsx(b,{className:`w-6 h-6 transition-colors ${t<=a.rating?"text-yellow-400 fill-yellow-400":"text-gray-300"}`})},t))})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(r,{htmlFor:"display_order",children:"Sıralama"}),e.jsx(c,{id:"display_order",type:"number",value:a.display_order,onChange:t=>i(s=>({...s,display_order:parseInt(t.target.value)||0}))})]})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(M,{id:"is_active",checked:a.is_active,onCheckedChange:t=>i(s=>({...s,is_active:t}))}),e.jsx(r,{htmlFor:"is_active",children:"Aktif"})]}),e.jsxs("div",{className:"flex justify-end gap-2 pt-4",children:[e.jsx(o,{type:"button",variant:"outline",onClick:()=>m(!1),children:"İptal"}),e.jsx(o,{type:"submit",disabled:h.isPending||x.isPending,children:d?"Güncelle":"Ekle"})]})]})]})]})]}),e.jsx("div",{className:"bg-card rounded-xl border border-border overflow-hidden",children:w?e.jsx("div",{className:"p-8 text-center text-muted-foreground",children:"Yükleniyor..."}):l&&l.length>0?e.jsx("div",{className:"divide-y divide-border",children:l.map(t=>e.jsxs("div",{className:"flex items-center gap-4 p-4 hover:bg-muted/50 transition-colors",children:[e.jsx(ce,{className:"w-5 h-5 text-muted-foreground cursor-grab"}),t.image_url?e.jsx("img",{src:t.image_url,alt:t.client_name,className:"w-12 h-12 rounded-full object-cover ring-2 ring-emerald/20"}):e.jsx("div",{className:"w-12 h-12 rounded-full bg-emerald/10 flex items-center justify-center text-emerald font-bold",children:t.client_name.charAt(0)}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("h3",{className:"font-semibold text-foreground truncate",children:t.client_name}),e.jsx(ee,{hasTranslation:te(t,["quote_en"])}),!t.is_active&&e.jsx("span",{className:"px-2 py-0.5 text-xs bg-muted text-muted-foreground rounded",children:"Pasif"})]}),e.jsxs("p",{className:"text-sm text-muted-foreground truncate",children:[t.client_title,t.company_name&&` ⢠${t.company_name}`]}),e.jsxs("p",{className:"text-sm text-muted-foreground truncate mt-1 italic",children:['"',t.quote.substring(0,80),'..."']})]}),e.jsx("div",{className:"flex items-center gap-1",children:[...Array(5)].map((s,n)=>e.jsx(b,{className:`w-4 h-4 ${n<t.rating?"text-yellow-400 fill-yellow-400":"text-gray-300"}`},n))}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(o,{variant:"ghost",size:"icon",onClick:()=>D(t),children:e.jsx(me,{className:"w-4 h-4"})}),e.jsxs(G,{children:[e.jsx(R,{asChild:!0,children:e.jsx(o,{variant:"ghost",size:"icon",className:"text-destructive",children:e.jsx(de,{className:"w-4 h-4"})})}
1),e.jsxs(H,{children:[e.jsxs(U,{children:[e.jsx($,{children:"Yorumu Sil"}),e.jsxs(V,{children:['"',t.client_name,'" yorumunu silmek istediÄinize emin misiniz?']})]}),e.jsxs(K,{children:[e.jsx(Q,{children:"İptal"}),e.jsx(J,{onClick:()=>A(t.id),className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Sil"})]})]})]})]})]},t.id))}):e.jsx("div",{className:"p-8 text-center text-muted-foreground",children:"Henüz müÅteri yorumu eklenmemiÅ."})})]})})]})};export{jt 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.