PageSourceSearch

https://bacctrack-7ha7hyw7.manus.space/assets/LoginPage-DGJlFESn.js

js bacctrack-7ha7hyw7.manus.space collected 2026-10-03 05:00:20 UTC 20,863 bytes, 6 lines download raw bytes

1import{f as j,c as N,u as v,r as s,t as k,j as e,Q as S,E as A,U as C,W as I,J as M,T as W,b as o}from"./index-C3Qps0S4.js";import{A as E,L as R}from"./AuthPageNav-IqLJpsg0.js";import{U as T}from"./users-DTIsUZbE.js";import{S as H}from"./shield-dycmF_Bu.js";import{E as O}from"./eye-off-BKF-pIRA.js";import{B as U}from"./brain-B6nwQ_cR.js";import{C as z}from"./circle-stop-qoZmCpEf.js";import"./arrow-left-AxGNO8ZF.js";/**
2 * @license lucide-react v0.453.0 - ISC
3 *
4 * This source code is licensed under the ISC license.
5 * See the LICENSE file in the root directory of this source tree.
6 */const B=j("HeartHandshake",[["path",{d:"M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z",key:"c3ymky"}],["path",{d:"M12 5 9.04 7.96a2.17 2.17 0 0 0 0 3.08c.82.82 2.13.85 3 .07l2.07-1.9a2.82 2.82 0 0 1 3.79 0l2.96 2.66",key:"4oyue0"}],["path",{d:"m18 15-2-2",key:"60u0ii"}],["path",{d:"m15 18-2-2",key:"6p76be"}]]),h=!1;function Z(){const{lang:a}=N(),[,r]=v(),[n,u]=s.useState(""),[i,b]=s.useState(""),[c,f]=s.useState(!1),[g,L]=s.useState(!1),[d,x]=s.useState(!1),[p,m]=s.useState(null),{data:D}=k.tutorialVideos.active.useQuery(void 0,{enabled:h}),y=a==="th"?["เล่นต่อเนื่องจนควบคุมเวลาไม่ได้","เพิ่มเงินเพื่อพยายามเอาส่วนที่เสียคืน","ใช้อารมณ์ ความเครียด หรือความโกรธตัดสินใจ","ปกปิดการเล่น หรือกระทบงาน ความสัมพันธ์ และค่าใช้จ่ายจำเป็น"]:["Playing longer than intended and losing track of time","Increasing stakes to chase previous losses","Making decisions while stressed, angry, or distressed","Hiding play or harming work, relationships, or essential expenses"],P=async t=>{if(t.preventDefault(),!n||!i){o.error(a==="th"?"กรุณากรอกชื่อผู้ใช้/เบอร์โทร และรหัสผ่าน":"Please enter username/phone and password");return}x(!0);try{const l=await fetch("/api/auth/login",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({identifier:n,password:i,rememberMe:g})}),w=await l.json();if(!l.ok){o.error(w.error||(a==="th"?"เข้าสู่ระบบไม่สำเร็จ":"Login failed"));return}o.success(a==="th"?"เข้าสู่ระบบสำเร็จ":"Login successful"),window.location.replace("/dashboard")}catch{o.error(a==="th"?"เกิดข้อผิดพลาด กรุณาลองใหม่":"Something went wrong. Please try again.")}finally{x(!1)}};return e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:98",className:"min-h-screen bg-[#0A0A0F] relative overflow-hidden",children:[e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:100",className:"absolute inset-0 overflow-hidden pointer-events-none",children:[e.jsx("div",{"data-loc":"client/src/pages/LoginPage.tsx:101",className:"absolute top-0 left-1/4 w-96 h-96 bg-purple-500/5 rounded-full blur-3xl animate-pulse"}),e.jsx("div",{"data-loc":"client/src/pages/LoginPage.tsx:102",className:"absolute bottom-1/4 right-1/4 w-80 h-80 bg-orange-500/5 rounded-full blur-3xl animate-pulse",style:{animationDelay:"2s"}}),e.jsx("div",{"data-loc":"client/src/pages/LoginPage.tsx:103",className:"absolute top-1/2 left-0 w-64 h-64 bg-blue-500/5 rounded-full blur-3xl animate-pulse",style:{animationDelay:"4s"}})]}),e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:106",className:"relative z-10 min-h-screen flex flex-col",children:[e.jsx(E,{"data-loc":"client/src/pages/LoginPage.tsx:107",current:"login"}),e.jsx("div",{"data-loc":"client/src/pages/LoginPage.tsx:109",className:"flex flex-1 flex-col items-center px-4 pb-5 pt-2",children:e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:110",className:"w-full max-w-md",children:[e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:112",className:"my-3 text-center sm:my-4",children:[e.jsx(S,{"data-loc":"client/src/pages/LoginPage.tsx:113",alt:"MAWIN SIAM - ระบบวิเคราะห์เกมด้วย AI",className:"mx-auto mb-1.5 h-32 w-32 rounded-2xl text-2xl sm:h-36 sm:w-36"}),e.jsx("h1",{"data-loc":"client/src/pages/LoginPage.tsx:117",className:"mt-1 text-base font-bold text-white sm:text-lg",children:"MAWIN SIAM - ระบบวิเคราะห์เกมด้วย AI อัจฉริยะ"}),e.jsx("h2",{"data-loc":"client/src/pages/LoginPage.tsx:118",className:"text-xs text-gray-500 mt-1",children:a==="th"?"AI Analytics สำหรับข้อมูล สถิติ ความน่าจะเป็น และการวางขอบเขต":"AI Analytics for data, statistics, probability and personal limits"})]}),e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:122",className:"mb-4 grid grid-cols-3 gap-2",children:[e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:123",className:"bg-white/5 backdrop-blur-sm rounded-xl p-2.5 text-center border border-white/5",children:[e.jsx(T,{"data-loc":"client/src/pages/LoginPage.tsx:124",className:"w-4 h-4 text-blue-400 mx-auto mb-1"}),e.jsx("p",{"data-loc":"client/src/pages/LoginPage.tsx:125",className:"text-xs font-bold text-white",children:"6"}),e.jsx("p",{"data-loc":"client/src/pages/LoginPage.tsx:126",className:"text-[10px] text-gray-500",children:a==="th"?"เครื่องมือ":"Tools"})]}),e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:128",className:"bg-white/5 backdrop-blur-sm rounded-xl p-2.5 text-center border border-white/5",children:[e.jsx(B,{"data-loc":"client/src/pages/LoginPage.tsx:129",className:"w-4 h-4 text-green-400 mx-auto mb-1"}),e.jsxs("p",{"data-loc":"client/src/pages/LoginPage.tsx:130",className:"text-xs font-bold text-white",children:["4 ",a==="th"?"มิติ":"Areas"]}),e.jsx("p",{"data-loc":"client/src/pages/LoginPage.tsx:131",className:"text-[10px] text-gray-500",children:"Data • Risk"})]}),e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:133",className:"bg-white/5 backdrop-blur-sm rounded-xl p-2.5 text-center border border-white/5",children:[e.jsx(H,{"data-loc":"client/src/pages/LoginPage.tsx:134",className:"w-4 h-4 text-purple-400 mx-auto mb-1"}),e.jsx("p",{"data-loc":"client/src/pages/LoginPage.tsx:135",className:"text-xs font-bold text-white",children:"Smart Limit"}),e.jsx("p",{"data-loc":"client/src/pages/LoginPage.tsx:136",className:"text-[10px] text-gray-500",children:a==="th"?"กำหนดขอบเขต":"Set Limits"})]})]}),e.jsxs("form",{"data-loc":"client/src/pages/LoginPage.tsx:141",onSubmit:P,className:"relative space-y-4 rounded-2xl border border-white/10 bg-gradient-to-b from-white/[0.08] to-white/[0.02] p-4 shadow-2xl backdrop-blur-xl sm:p-5",children:[e.jsx("div",{"data-loc":"client/src/pages/LoginPage.tsx:142",className:"absolute inset-0 rounded-2xl bg-gradient-to-br from-orange-500/5 to-purple-500/5 pointer-events-none"}),e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:144",className:"relative space-y-3.5",children:[e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:145",children:[e.jsx("label",{"data-loc":"client/src/pages/LoginPage.tsx:146",className:"text-xs font-medium text-gray-300 mb-1.5 block",children:a==="th"?"ชื่อผู้ใช้ หรือ เบอร์โทรศัพท์":"Username or Phone Number"}),e.jsx("input",{"data-loc":"client/src/pages/LoginPage.tsx:147",type:"text",value:n,onChange:t=>u(t.target.value),className:"w-full bg-black/40 border border-white/10 rounded-xl px-4 py-3 text-sm text-white placeholder:text-gray-600 focus:border-orange-500/50 focus:ring-1 focus:ring-orange-500/20 focus:outline-none transition-all",placeholder:a==="th"?"username หรือ 0812345678":"username or 0812345678",autoComplete:"username"})]}),e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:157",children:[e.jsx("label",{"data-loc":"client/src/pages/LoginPage.tsx:158",className:"text-xs font-medium text-gray-300 mb-1.5 block",children:a==="th"?"รหัสผ่าน":"Password"}),e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:159",className:"relative",children:[e.jsx("input",{"data-loc":"client/src/pages/LoginPage.tsx:160",type:c?"text":"password",value:i,onChange:t=>b(t.target.value),className:"w-full bg-black/40 border border-white/10 rounded-xl px-4 py-3 pr-10 text-sm text-white placeholder:text-gray-600 focus:border-orange-500/50 focus:ring-1 focus:ring-orange-500/20 focus:outline-none transition-all",placeholder:"••••••",autoComplete:"current-password"}),e.jsx("button",{"data-loc":"client/src/pages/LoginPage.tsx:168",type:"button",onClick:()=>f(!c),className:"absolute right-3 top-1/2 -translate-y-1/2 text-gray-500 hover:text-gray-300 transition-colors",children:c?e.jsx(O,{"data-loc":"client/src/pages/LoginPage.tsx:173",className:"w-4 h-4"}):e.jsx(A,{"data-loc":"client/src/pages/LoginPage.tsx:173",className:"w-4 h-4"})})]})]}),e.jsx("div",{"data-loc":"client/src/pages/LoginPage.tsx:178",className:"flex items-center justify-between",children:e.jsxs("label",{"data-loc":"client/src/pages/LoginPage.tsx:179",className:"flex items-center gap-2 cursor-pointer",children:[e.jsx("input",{"data-loc":"client/src/pages/LoginPage.tsx:180",type:"checkbox",checked:g,onChange:t=>L(t.target.checked),className:"w-3.5 h-3.5 rounded border-gray-600 bg-black/60 text-orange-500 focus:ring-orange-500/50"}),e.jsx("span",{"data-loc":"client/src/pages/LoginPage.tsx:186",className:"text-xs text-gray-400",children:a==="th"?"จดจำฉัน":"Remember me"})]})}),e.jsxs("button",{"data-loc":"client/src/pages/LoginPage.tsx:191",type:"submit",disabled:d,className:"w-full py-3.5 rounded-xl bg-gradient-to-r from-orange-500 via-red-500 to-pink-500 text-white font-bold text-sm disabled:opacity-50 transition-all duration-200 active:scale-[0.97] flex items-center justify-center gap-2 shadow-lg shadow-orange-500/25 hover:shadow-orange-500/40",children:[e.jsx(R,{"data-loc":"client/src/pages/LoginPage.tsx:196",className:"w-4 h-4"}),d?a==="th"?"กำลังเข้าสู่ระบบ...":"Logging in...":a==="th"?"เข้าสู่ระบบ":"Login"]}),e.jsx("div",{"data-loc":"client/src/pages/LoginPage.tsx:201",className:"text-center",children:e.jsx("button",{"data-loc":"client/src/pages/LoginPage.tsx:202",type:"button",onClick:()=>r("/forgot-password"),className:"text-xs text-gray-400 hover:text-orange-400 transition-colors",children:a==="th"?"ลืมรหัสผ่าน?":"Forgot password?"})}),e.jsxs("button",{"data-loc":"client/src/pages/LoginPage.tsx:212",type:"button",onClick:()=>r("/register"),className:"w-full py-3.5 rounded-xl border border-orange-500/30 bg-
6orange-500/5 text-orange-400 font-bold text-sm transition-all duration-200 active:scale-[0.97] flex items-center justify-center gap-2 hover:bg-orange-500/10 hover:border-orange-500/50",children:[e.jsx(C,{"data-loc":"client/src/pages/LoginPage.tsx:217",className:"w-4 h-4"}),a==="th"?"สมัครสมาชิกใหม่ - ฟรี!":"Register - Free!"]})]})]}),h,e.jsxs("section",{"data-loc":"client/src/pages/LoginPage.tsx:260","aria-labelledby":"responsible-play-heading",className:"relative left-1/2 mt-6 w-[calc(100vw-2rem)] max-w-5xl -translate-x-1/2 overflow-hidden rounded-[1.75rem] border border-amber-400/25 bg-gradient-to-b from-[#111621] via-[#0c1018] to-[#080b11] shadow-2xl shadow-black/50",children:[e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:264",className:"grid lg:grid-cols-[1.08fr_0.92fr]",children:[e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:265",className:"relative min-h-56 overflow-hidden lg:min-h-[430px]",children:[e.jsx("img",{"data-loc":"client/src/pages/LoginPage.tsx:266",src:"/manus-storage/mawin-siam-responsible-play_d7a0f7ff.png",alt:a==="th"?"คนกำลังวางแผนขอบเขตการเล่นอย่างมีสติกับเพื่อนที่คอยสนับสนุน":"A person planning healthy play boundaries with support from a trusted friend",className:"absolute inset-0 h-full w-full object-cover",loading:"lazy"}),e.jsx("div",{"data-loc":"client/src/pages/LoginPage.tsx:272",className:"absolute inset-0 bg-gradient-to-t from-[#080b11] via-transparent to-black/20 lg:bg-gradient-to-r lg:from-transparent lg:via-transparent lg:to-[#0c1018]"}),e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:273",className:"absolute inset-x-0 bottom-0 p-5 lg:hidden",children:[e.jsx("p",{"data-loc":"client/src/pages/LoginPage.tsx:274",className:"text-xs font-semibold uppercase tracking-[0.22em] text-amber-300",children:"MAWIN SIAM CARE"}),e.jsx("h2",{"data-loc":"client/src/pages/LoginPage.tsx:275",id:"responsible-play-heading",className:"mt-1 text-2xl font-black leading-tight text-white",children:a==="th"?"เล่นอย่างมีสติ ชีวิตดีกว่าเดิม":"Play Mindfully. Live Better."})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:281",className:"flex flex-col justify-center p-5 sm:p-7 lg:p-9",children:[e.jsx("p",{"data-loc":"client/src/pages/LoginPage.tsx:282",className:"hidden text-xs font-semibold uppercase tracking-[0.22em] text-amber-300 lg:block",children:"MAWIN SIAM CARE"}),e.jsx("h2",{"data-loc":"client/src/pages/LoginPage.tsx:283",id:"responsible-play-heading-desktop",className:"hidden text-3xl font-black leading-tight text-white lg:mt-2 lg:block",children:a==="th"?"เล่นอย่างมีสติ ชีวิตดีกว่าเดิม":"Play Mindfully. Live Better."}),e.jsx("p",{"data-loc":"client/src/pages/LoginPage.tsx:286",className:"text-sm leading-6 text-gray-300 lg:mt-4 lg:text-base lg:leading-7",children:a==="th"?"เราไม่ได้บอกให้คุณเล่นมากขึ้น แต่ช่วยให้คุณมองเห็นพฤติกรรม วางขอบเขต และตัดสินใจหยุดได้เร็วขึ้น":"We do not encourage you to play more. We help you notice patterns, set boundaries, and decide to stop sooner."}),e.jsx("blockquote",{"data-loc":"client/src/pages/LoginPage.tsx:291",className:"mt-5 border-l-2 border-amber-400/70 pl-4 text-sm italic leading-6 text-amber-100/90",children:a==="th"?"เหมือนมีเพื่อนช่วยเตือน อยู่ข้างคุณโดยไม่ตัดสิน":"Like a trusted friend who helps you pause without judgment."}),e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:296",className:"mt-6 rounded-2xl border border-amber-400/15 bg-amber-400/[0.06] p-4",children:[e.jsx("p",{"data-loc":"client/src/pages/LoginPage.tsx:297",className:"text-sm font-bold text-amber-200",children:a==="th"?"หลักสำคัญ: เงินที่เสียไปแล้วไม่ใช่เหตุผลให้เล่นต่อ":"Key rule: money already lost is not a reason to continue."}),e.jsx("p",{"data-loc":"client/src/pages/LoginPage.tsx:300",className:"mt-1 text-xs leading-5 text-gray-400",children:a==="th"?"ไม่มีระบบหรือสูตรใดรับประกันกำไรหรือผลลัพธ์ได้":"No system or formula can guarantee profit or outcomes."})]})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:307",className:"border-t border-amber-400/15 px-5 py-6 sm:px-7 lg:px-9 lg:py-8",children:[e.jsx("h3",{"data-loc":"client/src/pages/LoginPage.tsx:308",className:"text-lg font-bold text-white",children:a==="th"?"แผน 4 ด้านก่อนตัดสินใจ":"A 4-part plan before you decide"}),e.jsx("div",{"data-loc":"client/src/pages/LoginPage.tsx:311",className:"mt-4 grid gap-3 sm:grid-cols-2 lg:grid-cols-4",children:[{icon:I,title:a==="th"?"ตั้งงบที่รับได้":"Set an affordable limit",body:a==="th"?"ไม่ใช้เงินค่าใช้จ่ายจำเป็น เงินกู้ หรือเงินของคนอื่น":"Never use essential-expense money, loans, or someone else’s funds."},{icon:M,title:a==="th"?"จำกัดเวลา":"Limit your time",body:a==="th"?"ตั้งเวลาเลิกและพักจากหน้าจอเมื่อครบà¸
6à¸³à¸«à¸™à¸”":"Choose an end time and step away when it arrives."},{icon:U,title:a==="th"?"เช็กอารมณ์":"Check your emotions",body:a==="th"?"อย่าตัดสินใจเมื่อเครียด โกรธ เหงา หรืออยากเอาคืน":"Do not decide while stressed, angry, lonely, or chasing losses."},{icon:z,title:a==="th"?"กำหนดจุดหยุด":"Set a stop point",body:a==="th"?"ถึงงบหรือเวลาที่ตั้งไว้ให้หยุดทันที ไม่ต่อรองกับตัวเอง":"Stop when your time or money limit is reached—no exceptions."}].map(t=>{const l=t.icon;return e.jsxs("article",{"data-loc":"client/src/pages/LoginPage.tsx:336",className:"rounded-2xl border border-white/10 bg-white/[0.035] p-4",children:[e.jsx("div",{"data-loc":"client/src/pages/LoginPage.tsx:337",className:"flex h-10 w-10 items-center justify-center rounded-xl border border-amber-400/25 bg-amber-400/10 text-amber-300",children:e.jsx(l,{"data-loc":"client/src/pages/LoginPage.tsx:338",className:"h-5 w-5"})}),e.jsx("h4",{"data-loc":"client/src/pages/LoginPage.tsx:340",className:"mt-3 text-sm font-bold text-white",children:t.title}),e.jsx("p",{"data-loc":"client/src/pages/LoginPage.tsx:341",className:"mt-1.5 text-xs leading-5 text-gray-400",children:t.body})]},t.title)})})]}),e.jsx("div",{"data-loc":"client/src/pages/LoginPage.tsx:348",className:"border-t border-amber-400/15",children:e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:349",className:"p-5 sm:p-7 lg:p-9",children:[e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:350",className:"flex items-center gap-3",children:[e.jsx("div",{"data-loc":"client/src/pages/LoginPage.tsx:351",className:"flex h-10 w-10 items-center justify-center rounded-xl bg-red-500/10 text-red-300",children:e.jsx(W,{"data-loc":"client/src/pages/LoginPage.tsx:352",className:"h-5 w-5"})}),e.jsx("h3",{"data-loc":"client/src/pages/LoginPage.tsx:354",className:"text-lg font-bold text-white",children:a==="th"?"ถ้าคุณกำลังเจอปัญหาเหล่านี้":"Warning signs to notice"})]}),e.jsx("ul",{"data-loc":"client/src/pages/LoginPage.tsx:358",className:"mt-4 grid gap-2.5 sm:grid-cols-2 sm:gap-x-8",children:y.map(t=>e.jsxs("li",{"data-loc":"client/src/pages/LoginPage.tsx:360",className:"flex gap-2.5 text-sm leading-5 text-gray-300",children:[e.jsx("span",{"data-loc":"client/src/pages/LoginPage.tsx:361",className:"mt-2 h-1.5 w-1.5 shrink-0 rounded-full bg-red-400"}),e.jsx("span",{"data-loc":"client/src/pages/LoginPage.tsx:362",children:t})]},t))})]})})]}),e.jsx("div",{"data-loc":"client/src/pages/LoginPage.tsx:371",className:"text-center mt-6 pb-4",children:e.jsxs("p",{"data-loc":"client/src/pages/LoginPage.tsx:372",className:"text-[10px] text-gray-600",children:["เข้าสู่ระบบเพื่อยอมรับ"," ",e.jsx("span",{"data-loc":"client/src/pages/LoginPage.tsx:374",className:"text-gray-500 underline",children:"เงื่อนไขการใช้งาน"})," ","และ"," ",e.jsx("span",{"data-loc":"client/src/pages/LoginPage.tsx:376",className:"text-gray-500 underline",children:"นโยบายความเป็นส่วนตัว"})]})})]})})]}),p&&e.jsx("div",{"data-loc":"client/src/pages/LoginPage.tsx:385",className:"fixed inset-0 z-50 flex items-center justify-center p-4 bg-black/80 backdrop-blur-sm",onClick:()=>m(null),children:e.jsxs("div",{"data-loc":"client/src/pages/LoginPage.tsx:386",className:"w-full max-w-lg rounded-2xl overflow-hidden shadow-2xl",onClick:t=>t.stopPropagation(),children:[e.jsx("div",{"data-loc":"client/src/pages/LoginPage.tsx:387",className:"aspect-video bg-black",children:e.jsx("iframe",{"data-loc":"client/src/pages/LoginPage.tsx:388",src:`https://www.youtube.com/embed/${p}?autoplay=1`,className:"w-full h-full",allow:"autoplay; encrypted-media",allowFullScreen:!0})}),e.jsx("button",{"data-loc":"client/src/pages/LoginPage.tsx:395",onClick:()=>m(null),className:"w-full py-3 bg-zinc-900 text-gray-300 text-sm font-medium hover:bg-zinc-800 transition-colors",children:"ปิด"})]})})]})}export{Z 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.