PageSourceSearch

https://bacctrack-7ha7hyw7.manus.space/assets/AchievementsPage-DS3eRcmm.js

js bacctrack-7ha7hyw7.manus.space collected 2026-10-03 05:00:58 UTC 5,786 bytes, 1 lines download raw bytes

1import{c as o,t as m,j as e}from"./index-C3Qps0S4.js";import{L as x}from"./loader-circle-DohmWZz_.js";import{T as g}from"./trophy-C56YBVkm.js";import{L as h}from"./lock-BImxJe9g.js";function b(){const{t:n,lang:r}=o(),{data:a,isLoading:i}=m.achievement.getAll.useQuery();if(i)return e.jsx("div",{"data-loc":"client/src/pages/AchievementsPage.tsx:11",className:"flex items-center justify-center py-20",children:e.jsx(x,{"data-loc":"client/src/pages/AchievementsPage.tsx:12",className:"w-6 h-6 text-orange-400 animate-spin"})});const c=a?.filter(t=>t.earned)??[];a?.filter(t=>!t.earned);const d=r==="th"?[{key:"games",label:"เกม"},{key:"referral",label:"แนะนำเพื่อน"},{key:"checkin",label:"เช็คอิน"},{key:"credits",label:"Point"},{key:"special",label:"พิเศษ"}]:[{key:"games",label:"Games"},{key:"referral",label:"Referral"},{key:"checkin",label:"Check-in"},{key:"credits",label:"Points"},{key:"special",label:"Special"}];return e.jsxs("div",{"data-loc":"client/src/pages/AchievementsPage.tsx:35",className:"space-y-4",children:[e.jsxs("div",{"data-loc":"client/src/pages/AchievementsPage.tsx:37",className:"flex items-center justify-between",children:[e.jsxs("div",{"data-loc":"client/src/pages/AchievementsPage.tsx:38",className:"flex items-center gap-2",children:[e.jsx(g,{"data-loc":"client/src/pages/AchievementsPage.tsx:39",className:"w-5 h-5 text-amber-400"}),e.jsx("h1",{"data-loc":"client/src/pages/AchievementsPage.tsx:40",className:"text-xl font-bold text-gold-gradient",children:n.achievement.title})]}),e.jsxs("span",{"data-loc":"client/src/pages/AchievementsPage.tsx:42",className:"text-xs text-muted-foreground px-2 py-1 rounded-full bg-muted/50",children:[c.length,"/",a?.length??0]})]}),e.jsxs("div",{"data-loc":"client/src/pages/AchievementsPage.tsx:48",className:"glass-card rounded-xl p-4",children:[e.jsxs("div",{"data-loc":"client/src/pages/AchievementsPage.tsx:49",className:"flex items-center justify-between mb-2",children:[e.jsx("p",{"data-loc":"client/src/pages/AchievementsPage.tsx:50",className:"text-xs text-muted-foreground",children:"ความคืบหน้า"}),e.jsxs("p",{"data-loc":"client/src/pages/AchievementsPage.tsx:51",className:"text-xs font-bold text-amber-400",children:[a?.length?Math.round(c.length/a.length*100):0,"%"]})]}),e.jsx("div",{"data-loc":"client/src/pages/AchievementsPage.tsx:55",className:"h-2 rounded-full bg-muted/50 overflow-hidden",children:e.jsx("div",{"data-loc":"client/src/pages/AchievementsPage.tsx:56",className:"h-full rounded-full bg-gradient-to-r from-amber-500 to-orange-500 transition-all duration-500",style:{width:`${a?.length?c.length/a.length*100:0}%`}})})]}),c.length>0&&e.jsxs("div",{"data-loc":"client/src/pages/AchievementsPage.tsx:65",className:"glass-card rounded-xl p-4",children:[e.jsxs("p",{"data-loc":"client/src/pages/AchievementsPage.tsx:66",className:"text-xs font-medium text-foreground mb-3",children:["ได้รับแล้ว (",c.length,")"]}),e.jsx("div",{"data-loc":"client/src/pages/AchievementsPage.tsx:67",className:"grid grid-cols-4 gap-2",children:c.map(t=>e.jsxs("div",{"data-loc":"client/src/pages/AchievementsPage.tsx:69",className:"text-center group",children:[e.jsx("div",{"data-loc":"client/src/pages/AchievementsPage.tsx:70",className:"w-12 h-12 mx-auto rounded-xl bg-amber-500/20 border border-amber-500/40 flex items-center justify-center text-xl mb-1 group-hover:scale-110 transition-transform",children:t.icon}),e.jsx("p",{"data-loc":"client/src/pages/AchievementsPage.tsx:73",className:"text-[9px] text-foreground font-medium truncate",children:t.name})]},t.id))})]}),d.map(t=>{const l=a?.filter(s=>s.category===t.key)??[];return l.length===0?null:e.jsxs("div",{"data-loc":"client/src/pages/AchievementsPage.tsx:85",className:"glass-card rounded-xl p-4",children:[e.jsx("p",{"data-loc":"client/src/pages/AchievementsPage.tsx:86",className:"text-xs font-medium text-foreground mb-3",children:t.label}),e.jsx("div",{"data-loc":"client/src/pages/AchievementsPage.tsx:87",className:"space-y-2",children:l.map(s=>e.jsxs("div",{"data-loc":"client/src/pages/AchievementsPage.tsx:89",className:`flex items-center gap-3 p-2.5 rounded-lg border transition-all ${s.earned?"border-amber-500/40 bg-amber-500/10":"border-border bg-muted/20 opacity-70"}`,children:[e.jsx("div",{"data-loc":"client/src/pages/AchievementsPage.tsx:97",className:`w-10 h-10 rounded-lg flex items-center justify-center text-lg shrink-0 ${s.earned?"bg-amber-500/20":"bg-muted/30"}`,children:s.earned?s.icon:e.jsx(h,{"data-loc":"client/src/pages/AchievementsPage.tsx:100",className:"w-4 h-4 text-muted-foreground"})}),e.jsxs("div",{"data-loc":"client/src/pages/AchievementsPage.tsx:102",className:"flex-1 min-w-0",children:[e.jsx("p",{"data-loc":"client/src/pages/AchievementsPage.tsx:103",className:`text-xs font-bold ${s.earned?"text-foreground":"text-muted-foreground"}`,children:s.name}),e.jsx("p",{"data-loc":"client/src/pages/AchievementsPage.tsx:106",className:"text-[10px] text-muted-foreground truncate",children:s.description})]}),e.jsx("div",{"data-loc":"client/src/pages/AchievementsPage.tsx:108",className:"text-right shrink-0",children:s.earned?e.jsx("span",{"data-loc":"client/src/pages/AchievementsPage.tsx:110",className:"text-[9px] text-green-400 font-bold",children:"สำเร็จ"}):e.jsxs("div",{"data-loc":"client/src/pages/AchievementsPage.tsx:112",className:"text-[9px] text-muted-foreground",children:[Number(s.rewardCredits)>0&&e.jsxs("p",{"data-loc":"client/src/pages/AchievementsPage.tsx:113",children:["+",s.rewardCredits," Point"]}),s.rewardPoints>0&&e.jsxs("p",{"data-loc":"client/src/pages/AchievementsPage.tsx:114",children:["+",s.rewardPoints," Points"]})]})})]},s.id))})]},t.key)})]})}export{b 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.