1import{a as F,o as I,r as s,t as f,b as d,j as e,z as v,F as E,p as W}from"./index-DRYNtDfq.js";import{I as i}from"./input-Bz87F-Tp.js";import{L as n}from"./label-CD9P1Z7v.js";import{S as q}from"./switch-BCRcmYG1.js";import{D as z,A as B}from"./DashboardLayout-2PNDDCmu.js";import{M as G}from"./mail-Dy7s7wzw.js";import{S as $}from"./send-BLEe7uzJ.js";import{C as H}from"./circle-x-BiYcOnSB.js";import"./dialog-D6TyplgW.js";import"./useComposition-Lg3rnDe0.js";import"./index-CZ-4w4yO.js";import"./trending-up-CvKbjCgH.js";import"./circle-arrow-down-HHKk6hyR.js";import"./circle-arrow-up-DUs07WdU.js";import"./file-text-CvyTzFOR.js";import"./message-circle-DuGz_h7Q.js";import"./index-BfJPPodk.js";function de(){const{user:l}=F(),[,M]=I(),[o,N]=s.useState(""),[p,b]=s.useState(587),[g,y]=s.useState(""),[x,C]=s.useState(""),[h,w]=s.useState(""),[u,P]=s.useState("DoiNhanh"),[S,T]=s.useState(!1),[m,k]=s.useState(""),[c,r]=s.useState(null),{data:a,isLoading:L}=f.admin.getSmtpConfig.useQuery(void 0,{enabled:l?.role==="admin"});s.useEffect(()=>{a&&(N(a.host||""),b(a.port||587),y(a.username||""),C(a.password||""),w(a.fromEmail||""),P(a.fromName||"DoiNhanh"),T(a.secure||!1))},[a]);const A=f.admin.saveSmtpConfig.useMutation({onSuccess:()=>d.success("Äã lưu cấu hình SMTP"),onError:t=>d.error(t.message)}),j=f.admin.testSmtp.useMutation({onSuccess:t=>{r(t),t.success?d.success("Gá»i email test thà nh công!"):d.error(`Test thất bại: ${t.error}`)},onError:t=>{r({success:!1,error:t.message}),d.error(t.message)}}),D=t=>{t.preventDefault(),A.mutate({host:o,port:p,username:g,password:x,fromEmail:h,fromName:u,secure:S})},R=()=>{if(!m){d.error("Nháºp email nháºn test");return}r(null),j.mutate({host:o,port:p,username:g,password:x,fromEmail:h,fromName:u,secure:S,testEmail:m})};return l?.role!=="admin"?(M("/"),null):e.jsx(z,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:79",title:"Admin Panel",navItems:B,userName:l?.name||"Admin",children:e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:80",style:{maxWidth:640,margin:"0 auto",padding:"24px 0"},children:[e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:81",className:"flex items-center gap-3 mb-6",children:[e.jsx("div",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:82",style:{width:40,height:40,borderRadius:10,background:"linear-gradient(135deg, #7c3aed, #f97316)",display:"flex",alignItems:"center",justifyContent:"center"},children:e.jsx(G,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:83",className:"w-5 h-5 text-white"})}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:85",children:[e.jsx("h1",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:86",style:{fontSize:22,fontWeight:700},children:"Cà i Äặt SMTP"}),e.jsx("p",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:87",className:"text-sm text-muted-foreground",children:"Cấu hình email server Äá» gá»i email reset máºt khẩu, thông báo"})]})]}),L?e.jsx("div",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:92",className:"flex items-center justify-center p-12",children:e.jsx(v,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:92",className:"w-6 h-6 animate-spin"})}):e.jsxs(e.Fragment,{children:[e.jsxs("form",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:95",onSubmit:D,className:"space-y-4",style:{background:"var(--card)",border:"1px solid var(--border)",borderRadius:12,padding:24},children:[e.jsx("h3",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:96",style:{fontSize:16,fontWeight:600,marginBottom:4},children:"Thông tin SMTP Server"}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:98",className:"grid grid-cols-2 gap-4",children:[e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:99",children:[e.jsx(n,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:100",children:"SMTP Host"}),e.jsx(i,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:101",value:o,onChange:t=>N(t.target.value),placeholder:"smtp.gmail.com",required:!0})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:103",children:[e.jsx(n,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:104",children:"Port"}),e.jsx(i,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:105",type:"number",value:p,onChange:t=>b(Number(t.target.value)),placeholder:"587",required:!0})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:109",className:"grid grid-cols-2 gap-4",children:[e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:110",children:[e.jsx(n,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:111",children:"Username"}),e.jsx(i,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:112",value:g,onChange:t=>y(t.target.value),placeholder:"[email protected]",required:!0})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:114",children:[e.jsx(n,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:115",children:"Password"}),e.jsx(i,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:116",type:"password",value:x,onChange:t=>C(t.target.value),placeholder:"â¢â¢â¢â¢â¢â¢â¢â¢"}),e.jsx("p",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:117",className:"text-xs text-muted-foreground mt-1",children:"Äá» trá»ng nếu không muá»n thay Äá»i"})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:121",className:"grid grid-cols-2 gap-4",children:[e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:122",children:[e.jsx(n,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:123",children:"From Email"}),e.jsx(i,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:124",type:"email",value:h,onChange:t=>w(t.target.value),placeholder:"[email protected]",required:!0})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:126",children:[e.jsx(n,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:127",children:"From Name"}),e.jsx(i,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:128",value:u,onChange:t=>P(t.target.value),placeholder:"DoiNhanh"})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:132",className:"flex items-center gap-3 py-2",children:[e.jsx(q,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:133",checked:S,onCheckedChange:T}),e.jsx(n,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:134",className:"cursor-pointer",children:"Secure / TLS"}),e.jsx("span",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:135",className:"text-xs text-muted-foreground",children:"(Báºt cho port 465, tắt cho port 587)"})]}),e.jsxs(E,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:138",type:"submit",disabled:A.isPending,className:"w-full",style:{background:"linear-gradient(135deg, #7c3aed, #f97316)",color:"#fff",height:44,fontWeight:600},children:[A.isPending?e.jsx(v,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:139",className:"w-4 h-4 animate-spin mr-2"}):null,"Lưu cấu hình"]})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:145",style:{marginTop:24,padding:24,background:"var(--card)",borderRadius:12,border:"1px solid var(--border)"},children:[e.jsxs("h3",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:146",className:"flex items-center gap-2 mb-4",style:{fontSize:16,fontWeight:600},children:[e.jsx($,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:147",className:"w-4 h-4 text-purple-600"})," Gá»i email test"]}),e.jsx("p",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:149",className:"text-sm text-muted-foreground mb-4",children:"Nháºp email Äá» kiá»m tra cấu hình SMTP hoạt Äá»ng Äúng."}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:150",className:"flex gap-3",children:[e.jsx(i,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:151",type:"email",value:m,onChange:t=>{k(t.target.value),r(null)},placeholder:"Email nháºn test",className:"flex-1"}),e.jsxs(E,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:158",onClick:R,disabled:j.isPending||!m,variant:"outline",style:{height:40},children:[j.isPending?e.jsx(v,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:159",className:"w-4 h-4 animate-spin mr-2"}):null,"Gá»i test"]})]}),c&&e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:164",className:`mt-3 flex items-center gap-2 text-sm ${c.success?"text-green-600":"text-red-600"}`,style:{padding:"10px 14px",borderRadius:8,background:c.success?"rgba(34,197,94,0.08)":"rgba(239,68,68,0.08)"},children:[c.success?e.jsx(W,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:165",className:"w-4 h-4"}):e.jsx(H,{"data-loc":"client/src/pages/admin/AdminSmtp.tsx:165",className:"w-4 h-4"}),c.success?"Gá»i email test thà nh công!":`Thất bại: ${c.error}`]})]})]})]})})}export{de 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.