PageSourceSearch

https://bacctrack-7ha7hyw7.manus.space/assets/AdminTitlesPage-fYweP-b0.js

js bacctrack-7ha7hyw7.manus.space collected 2026-10-03 05:02:29 UTC 23,837 bytes, 1 lines download raw bytes

1import{r as j,j as e,t as o,b as h,U as H}from"./index-C3Qps0S4.js";import{B as r}from"./button-xdpkFraK.js";import{C as I,b as $,c as O,a as M}from"./card-DtXeaqs_.js";import{I as p}from"./input-Dj8udylZ.js";import{L as l}from"./label-yaeAnB07.js";import{B as Y}from"./badge-DBCec9J8.js";import{T as _,a as q,b as E,c as V}from"./tabs-CqWqAAjb.js";import{D as F,b as L,c as U,d as Q}from"./dialog-BY1FISUw.js";import{S as y,a as N,b as f,c as C,d as A}from"./select-C8zBw1Za.js";import{C as G}from"./crown-BPkd65ql.js";import{P as J}from"./plus-BLlLQSZn.js";import{A as B}from"./award-pfkAt33H.js";import{P as D}from"./pencil-BOPWUr1Y.js";import{T as z}from"./trash-2-DOBLe4Vk.js";import"./index-Jol-UBUv.js";import"./index-BKUanX19.js";import"./index-Dr02_Kwf.js";import"./index-BdQq_4o_.js";import"./index-BBBp6CNx.js";import"./chevron-up-F-ZIdiqt.js";const w=[{label:"Yellow",value:"text-yellow-300",bg:"bg-yellow-500/20"},{label:"Amber",value:"text-amber-300",bg:"bg-amber-500/20"},{label:"Orange",value:"text-orange-300",bg:"bg-orange-500/20"},{label:"Red",value:"text-red-300",bg:"bg-red-500/20"},{label:"Rose",value:"text-rose-300",bg:"bg-rose-500/20"},{label:"Pink",value:"text-pink-300",bg:"bg-pink-500/20"},{label:"Fuchsia",value:"text-fuchsia-300",bg:"bg-fuchsia-500/20"},{label:"Purple",value:"text-purple-300",bg:"bg-purple-500/20"},{label:"Violet",value:"text-violet-300",bg:"bg-violet-500/20"},{label:"Indigo",value:"text-indigo-300",bg:"bg-indigo-500/20"},{label:"Blue",value:"text-blue-300",bg:"bg-blue-500/20"},{label:"Sky",value:"text-sky-300",bg:"bg-sky-500/20"},{label:"Cyan",value:"text-cyan-300",bg:"bg-cyan-500/20"},{label:"Emerald",value:"text-emerald-300",bg:"bg-emerald-500/20"},{label:"Green",value:"text-green-300",bg:"bg-green-500/20"},{label:"Lime",value:"text-lime-300",bg:"bg-lime-500/20"},{label:"Slate",value:"text-slate-300",bg:"bg-slate-500/20"},{label:"Gray",value:"text-gray-400",bg:"bg-gray-500/20"}];function Ae(){const[m,g]=j.useState("tiers");return e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:40",className:"p-4 space-y-4 max-w-4xl mx-auto",children:[e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:41",className:"flex items-center gap-2 mb-4",children:[e.jsx(G,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:42",className:"w-6 h-6 text-yellow-400"}),e.jsx("h1",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:43",className:"text-xl font-bold text-white",children:"จัดการฉายาผู้เล่น"})]}),e.jsxs(_,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:46",value:m,onValueChange:g,children:[e.jsxs(q,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:47",className:"grid w-full grid-cols-2 bg-gray-800",children:[e.jsx(E,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:48",value:"tiers",children:"ฉายาตามระดับ"}),e.jsx(E,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:49",value:"custom",children:"ฉายาพิเศษ"})]}),e.jsx(V,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:51",value:"tiers",children:e.jsx(K,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:52"})}),e.jsx(V,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:54",value:"custom",children:e.jsx(X,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:55"})})]})]})}function K(){const{data:m,refetch:g}=o.admin.listTitleTiers.useQuery(),S=o.admin.createTitleTier.useMutation({onSuccess:()=>{g(),h.success("เพิ่มฉายาสำเร็จ")}}),R=o.admin.updateTitleTier.useMutation({onSuccess:()=>{g(),h.success("อัปเดตสำเร็จ")}}),P=o.admin.deleteTitleTier.useMutation({onSuccess:()=>{g(),h.success("ลบสำเร็จ")}}),[W,T]=j.useState(!1),[x,i]=j.useState(null),[t,c]=j.useState({title:"",emoji:"",minWinRate:"",maxWinRate:"",color:"text-yellow-300",bgColor:"bg-yellow-500/20",category:"winning",sortOrder:0}),b=()=>c({title:"",emoji:"",minWinRate:"",maxWinRate:"",color:"text-yellow-300",bgColor:"bg-yellow-500/20",category:"winning",sortOrder:0}),k=()=>{if(!t.title||!t.emoji||!t.minWinRate||!t.maxWinRate){h.error("กรุณากรอกข้อมูลให้ครบ");return}x?(R.mutate({id:x.id,data:{...t,sortOrder:t.sortOrder}}),i(null)):S.mutate(t),T(!1),b()},s=a=>{i(a),c({title:a.title,emoji:a.emoji,minWinRate:String(a.minWinRate),maxWinRate:String(a.maxWinRate),color:a.color,bgColor:a.bgColor,category:a.category,sortOrder:a.sortOrder}),T(!0)},d=m?.filter(a=>a.category==="winning")||[],u=m?.filter(a=>a.category==="losing")||[];return e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:112",className:"space-y-4",children:[e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:113",className:"flex justify-between items-center",children:[e.jsx("p",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:114",className:"text-sm text-gray-400",children:"ฉายาจะแสดงอัตโนมัติตาม Win Rate ของผู้เล่น (ต้องใช้สูตรอย่างน้อย 10 ครั้ง)"}),e.jsxs(r,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:115",size:"sm",onClick:()=>{b(),i(null),T(!0)},children:[e.jsx(J,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:116",className:"w-4 h-4 mr-1"})," เพิ่มฉายา"]})]}),e.jsx(F,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:121",open:W,onOpenChange:T,children:e.jsxs(L,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:122",className:"bg-gray-900 border-gray-700 max-w-md",children:[e.jsx(U,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:123",children:e.jsx(Q,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:124",children:x?"แก้ไขฉายา":"เพิ่มฉายาใหม่"})}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:126",className:"space-y-3",children:[e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:127",className:"grid grid-cols-2 gap-3",children:[e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:128",children:[e.jsx(l,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:129",children:"ชื่อฉายา"}),e.jsx(p,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:130",value:t.title,onChange:a=>c(n=>({...n,title:a.target.value})),placeholder:"เทพบาคาร่า",className:"bg-gray-800"})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:132",children:[e.jsx(l,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:133",children:"Emoji"}),e.jsx(p,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:134",value:t.emoji,onChange:a=>c(n=>({...n,emoji:a.target.value})),placeholder:"👑",className:"bg-gray-800"})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:137",className:"grid grid-cols-2 gap-3",children:[e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:138",children:[e.jsx(l,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:139",children:"Win Rate ขั้นต่ำ (%)"}),e.jsx(p,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:140",type:"number",value:t.minWinRate,onChange:a=>c(n=>({...n,minWinRate:a.target.value})),placeholder:"90",className:"bg-gray-800"})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:142",children:[e.jsx(l,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:143",children:"Win Rate สูงสุด (%)"}),e.jsx(p,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:144",type:"number",value:t.maxWinRate,onChange:a=>c(n=>({...n,maxWinRate:a.target.value})),placeholder:"100",className:"bg-gray-800"})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:147",className:"grid grid-cols-2 gap-3",children:[e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:148",children:[e.jsx(l,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:149",children:"ประเภท"}),e.jsxs(y,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:150",value:t.category,onValueChange:a=>c(n=>({...n,category:a})),children:[e.jsx(N,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:151",className:"bg-gray-800",children:e.jsx(f,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:151"})}),e.jsxs(C,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:152",children:[e.jsx(A,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:153",value:"winning",children:"สายชนะ"}),e.jsx(A,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:154",value:"losing",children:"สายแพ้"})]})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:158",children:[e.jsx(l,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:159",children:"ลำดับ"}),e.jsx(p,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:160",type:"number",value:t.sortOrder,onChange:a=>c(n=>({...n,sortOrder:parseInt(a.target.value)||0})),className:"bg-gray-800"})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:163",children:[e.jsx(l,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:164",children:"สี"}),e.jsxs(y,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:165",value:t.color,onValueChange:a=>{const n=w.find(v=>v.value===a);c(v=>({...v,color:a,bgColor:n?.bg||v.bgColor}))},children:[e.jsx(N,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:169",className:"bg-gray-800",children:e.jsx(f,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:169"})}),e.jsx(C,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:170",children:w.map(a=>e.jsx(A,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:172",value:a.value,children:e.jsx("span",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:173",className:`${a.value} ${a.bg} px-2 py-0.5 rounded text-xs`,children:a.label})},a.value))})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:180",className:"p-3 bg-gray-800 rounded-lg",children:[e.jsx(l,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:181",className:"text-xs text-gray-500",children:"ตัวอย่าง:"}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:182",className:"mt-1",children:[e.jsxs("span",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:183",className:`text-xs px-2 py-1 rounded-full ${t.bgColor} ${t.color}`,children:[t.emoji||"?"," ",t.title||"ชื่อฉายา"]}),e.jsxs("span",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:186",className:"text-xs text-gray-500 ml-2",children:["(",t.minWinRate||"?","-",t.maxWinRate||"?","%)"]})]})]}),e.jsx(r,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:189",onClick:k,className:"w-full",children:x?"บันทึก":"เพิ่ม"})]})]})}),e.jsxs(I,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:195",className:"bg-gray-900/50 border-gray-700",children:[e.jsx($,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:196",className:"pb-2",children:e.jsxs(O,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:197",className:"text-sm text-emerald-400 flex items-center gap-2",children:[e.jsx(B,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:198",className:"w-4 h-4"})," สายชนะ (",d.length," ฉายา)"]})}),e.jsx(M,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:201",className:"space-y-1",children:d.map(a=>e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:203",className:"flex items-center justify-between p-2 rounded-lg bg-gray-800/50 hover:bg-gray-800",children:[e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:204",className:"flex items-center gap-2",children:[e.jsxs("span",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:205",className:`text-xs px-2 py-0.5 rounded-full ${a.bgColor} ${a.color}`,children:[a.emoji," ",a.title]}),e.jsxs("span",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:208",className:"text-[10px] text-gray-500",children:[String(a.minWinRate),"-",String(a.maxWinRate),"%"]})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:210",className:"flex gap-1",children:[e.jsx(r,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:211",variant:"ghost",size:"sm",className:"h-7 w-7 p-0",onClick:()=>s(a),children:e.jsx(D,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:212",className:"w-3 h-3"})}),e.jsx(r,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:214",variant:"ghost",size:"sm",className:"h-7 w-7 p-0 text-red-400 hover:text-red-300",onClick:()=>{confirm("ลบฉายานี้?")&&P.mutate({id:a.id})},children:e.jsx(z,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:217",className:"w-3 h-3"})})]})]},a.id))})]}),e.jsxs(I,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:226",className:"bg-gray-900/50 border-gray-700",children:[e.jsx($,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:227",className:"pb-2",children:e.jsxs(O,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:228",className:"text-sm text-rose-400 flex items-center gap-2",children:[e.jsx(B,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:229",className:"w-4 h-4"})," สายแพ้ (",u.length," ฉายา)"]})}),e.jsx(M,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:232",className:"space-y-1",children:u.map(a=>e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:234",className:"flex items-center justify-between p-2 rounded-lg bg-gray-800/50 hover:bg-gray-800",children:[e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:235",className:"flex items-center gap-2",children:[e.jsxs("span",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:236",className:`text-xs px-2 py-0.5 rounded-full ${a.bgColor} ${a.color}`,children:[a.emoji," ",a.title]}),e.jsxs("span",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:239",className:"text-[10px] text-gray-500",children:[String(a.minWinRate),"-",String(a.maxWinRate),"%"]})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:241",className:"flex gap-1",children:[e.jsx(r,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:242",variant:"ghost",size:"sm",className:"h-7 w-7 p-0",onClick:()=>s(a),children:e.jsx(D,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:243",className:"w-3 h-3"})}),e.jsx(r,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:245",variant:"ghost",size:"sm",className:"h-7 w-7 p-0 text-red-400 hover:text-red-300",onClick:()=>{confirm("ลบฉายานี้?")&&P.mutate({id:a.id})},children:e.jsx(z,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:248",className:"w-3 h-3"})})]})]},a.id))})]})]})}function X(){const{data:m,refetch:g}=o.admin.listCustomTitles.useQuery(),{data:S}=o.admin.users.useQuery(),R=o.admin.assignCustomTitle.useMutation({onSuccess:()=>{g(),h.success("มอบฉายาพิเศษสำเร็จ")}}),P=o.admin.removeCustomTitle.useMutation({onSuccess:()=>{g(),h.success("ยกเลิกฉายาสำเร็จ")}}),W=o.admin.deleteCustomTitle.useMutation({onSuccess:()=>{g(),h.success("ลบสำเร็จ")}}),[T,x]=j.useState(!1),[i,t]=j.useState({userId:0,title:"",emoji:"",color:"text-yellow-300",bgColor:"bg-yellow-500/20",reason:""}),c=()=>t({userId:0,title:"",emoji:"",color:"text-yellow-300",bgColor:"bg-yellow-500/20",reason:""}),b=()=>
1{if(!i.userId||!i.title||!i.emoji){h.error("กรุณาเลือกผู้เล่นและกรอกข้อมูลให้ครบ");return}R.mutate(i),x(!1),c()},k=S||[];return e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:286",className:"space-y-4",children:[e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:287",className:"flex justify-between items-center",children:[e.jsx("p",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:288",className:"text-sm text-gray-400",children:"มอบฉายาพิเศษให้ผู้เล่นเฉพาะคน (จะแสดงแทนฉายาตามระดับ)"}),e.jsxs(r,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:289",size:"sm",onClick:()=>{c(),x(!0)},children:[e.jsx(H,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:290",className:"w-4 h-4 mr-1"})," มอบฉายา"]})]}),e.jsx(F,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:295",open:T,onOpenChange:x,children:e.jsxs(L,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:296",className:"bg-gray-900 border-gray-700 max-w-md",children:[e.jsx(U,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:297",children:e.jsx(Q,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:298",children:"มอบฉายาพิเศษ"})}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:300",className:"space-y-3",children:[e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:301",children:[e.jsx(l,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:302",children:"เลือกผู้เล่น"}),e.jsxs(y,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:303",value:i.userId?String(i.userId):"",onValueChange:s=>t(d=>({...d,userId:parseInt(s)})),children:[e.jsx(N,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:304",className:"bg-gray-800",children:e.jsx(f,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:304",placeholder:"เลือกผู้เล่น..."})}),e.jsx(C,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:305",children:k.map(s=>e.jsx(A,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:307",value:String(s.id),children:s.displayName||s.name||`User #${s.id}`},s.id))})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:314",className:"grid grid-cols-2 gap-3",children:[e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:315",children:[e.jsx(l,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:316",children:"ชื่อฉายา"}),e.jsx(p,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:317",value:i.title,onChange:s=>t(d=>({...d,title:s.target.value})),placeholder:"ราชาบาคาร่า",className:"bg-gray-800"})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:319",children:[e.jsx(l,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:320",children:"Emoji"}),e.jsx(p,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:321",value:i.emoji,onChange:s=>t(d=>({...d,emoji:s.target.value})),placeholder:"🏆",className:"bg-gray-800"})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:324",children:[e.jsx(l,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:325",children:"สี"}),e.jsxs(y,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:326",value:i.color,onValueChange:s=>{const d=w.find(u=>u.value===s);t(u=>({...u,color:s,bgColor:d?.bg||u.bgColor}))},children:[e.jsx(N,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:330",className:"bg-gray-800",children:e.jsx(f,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:330"})}),e.jsx(C,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:331",children:w.map(s=>e.jsx(A,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:333",value:s.value,children:e.jsx("span",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:334",className:`${s.value} ${s.bg} px-2 py-0.5 rounded text-xs`,children:s.label})},s.value))})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:340",children:[e.jsx(l,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:341",children:"เหตุผล (ไม่บังคับ)"}),e.jsx(p,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:342",value:i.reason,onChange:s=>t(d=>({...d,reason:s.target.value})),placeholder:"ชนะติดต่อ 20 ครั้ง",className:"bg-gray-800"})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:345",className:"p-3 bg-gray-800 rounded-lg",children:[e.jsx(l,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:346",className:"text-xs text-gray-500",children:"ตัวอย่าง:"}),e.jsx("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:347",className:"mt-1",children:e.jsxs("span",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:348",className:`text-xs px-2 py-1 rounded-full ${i.bgColor} ${i.color}`,children:[i.emoji||"?"," ",i.title||"ชื่อฉายา"]})})]}),e.jsx(r,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:353",onClick:b,className:"w-full",children:"มอบฉายา"})]})]})}),e.jsxs(I,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:359",className:"bg-gray-900/50 border-gray-700",children:[e.jsx($,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:360",className:"pb-2",children:e.jsxs(O,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:361",className:"text-sm text-yellow-400 flex items-center gap-2",children:[e.jsx(G,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:362",className:"w-4 h-4"})," ฉายาพิเศษที่มอบแล้ว (",m?.length||0,")"]})}),e.jsxs(M,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:365",className:"space-y-1",children:[(!m||m.length===0)&&e.jsx("p",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:367",className:"text-sm text-gray-500 text-center py-4",children:"ยังไม่มีฉายาพิเศษ"}),m?.map(s=>e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:370",className:"flex items-center justify-between p-2 rounded-lg bg-gray-800/50 hover:bg-gray-800",children:[e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:371",className:"flex items-center gap-2",children:[e.jsx("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:372",className:"w-7 h-7 rounded-full bg-gray-700 flex items-center justify-center text-[10px] font-bold text-white overflow-hidden",children:s.userAvatar?e.jsx("img",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:373",src:s.userAvatar,className:"w-full h-full object-cover"}):(s.userName||"?")[0]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:375",children:[e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:376",className:"flex items-center gap-1.5",children:[e.jsx("span",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:377",className:"text-xs text-white",children:s.userName||`User #${s.userId}`}),e.jsxs("span",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:378",className:`text-[10px] px-1.5 py-0.5 rounded-full ${s.bgColor} ${s.color}`,children:[s.emoji," ",s.title]})]}),s.reason&&e.jsx("p",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:382",className:"text-[9px] text-gray-500",children:s.reason})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:385",className:"flex gap-1",children:[s.isActive===1?e.jsx(r,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:387",variant:"ghost",size:"sm",className:"h-7 text-[10px] text-orange-400",onClick:()=>{confirm("ยกเลิกฉายาพิเศษนี้?")&&P.mutate({id:s.id})},children:"ยกเลิก"}):e.jsx(Y,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:391",variant:"secondary",className:"text-[9px]",children:"ปิดใช้งาน"}),e.jsx(r,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:393",variant:"ghost",size:"sm",className:"h-7 w-7 p-0 text-red-400",onClick:()=>{confirm("ลบถาวร?")&&W.mutate({id:s.id})},children:e.jsx(z,{"data-loc":"client/src/pages/admin/AdminTitlesPage.tsx:396",className:"w-3 h-3"})})]})]},s.id))]})]})]})}export{Ae 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.