File manager - Edit - /home/webapp69.cm.in.th/u69319090023/Shop23/_next/static/chunks/37npwb6nyapqv.js
Back
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,28623,e=>{"use strict";let t=(0,e.i(56420).default)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]]);e.s(["Sparkles",0,t],28623)},84026,e=>{"use strict";let t=(0,e.i(56420).default)("shield-check",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);e.s(["ShieldCheck",0,t],84026)},67927,e=>{"use strict";let t=(0,e.i(56420).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",0,t],67927)},79258,e=>{"use strict";let t=(0,e.i(56420).default)("package",[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]]);e.s(["Package",0,t],79258)},88442,e=>{"use strict";var t=e.i(43476);let s=({className:e=""})=>(0,t.jsx)("div",{className:`animate-pulse rounded-md bg-gray-200 dark:bg-gray-700 ${e}`}),r=()=>(0,t.jsxs)("div",{className:"flex flex-col overflow-hidden bg-white shadow-card-soft rounded-premium p-4 border border-gray-100",children:[(0,t.jsx)(s,{className:"aspect-square w-full rounded-premium mb-4"}),(0,t.jsx)(s,{className:"h-4 w-1/3 mb-2"}),(0,t.jsx)(s,{className:"h-6 w-3/4 mb-3"}),(0,t.jsxs)("div",{className:"flex items-center justify-between mt-auto pt-2",children:[(0,t.jsx)(s,{className:"h-6 w-1/4"}),(0,t.jsx)(s,{className:"h-10 w-24 rounded-full"})]})]});e.s(["SkeletonProductGrid",0,({count:e=4})=>(0,t.jsx)("div",{className:"grid grid-cols-1 gap-6 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4",children:Array.from({length:e}).map((e,s)=>(0,t.jsx)(r,{},s))}),"default",0,s])},58214,e=>{"use strict";let t=new(e.i(61621)).LocalStorageAdapter,s=new class{storage;constructor(e){this.storage=e}getKey(e){return`ctc_profile_${e}`}async getProfile(e){let t=await this.storage.getItem(this.getKey(e));if(t)return t;let s=await this.storage.getItem("ctc_accounts"),r=s?.find(t=>t.id===e);if(r){let t=r.email.toLowerCase().includes("student")||r.email.toLowerCase().includes("user3"),s={id:r.id,email:r.email,fullName:r.fullName,phone:r.phone||"053-211-048",studentId:r.studentId||("admin"===r.role?"ADM-2819":t?"632012800"+r.id.replace(/\D/g,""):"STF-5481"),role:r.role,isVerified:"approved"===r.status,memberSince:r.date||"01/07/2569"};return await this.saveProfile(e,s),s}return null}async saveProfile(e,t){await this.storage.setItem(this.getKey(e),t)}async deleteProfile(e){await this.storage.removeItem(this.getKey(e))}}(t),r=new class{repository;constructor(e=s){this.repository=e}async getProfile(e){try{let t=await this.repository.getProfile(e);if(!t)return{success:!1,error:{code:"NOT_FOUND",message:"ไม่พบข้อมูลโปรไฟล์ผู้ใช้งาน"}};return{success:!0,data:t}}catch(e){return{success:!1,error:{code:"DATABASE_ERROR",message:e?.message||"ข้อผิดพลาดในระบบฐานข้อมูล"}}}}async updateProfile(e,t){try{if(void 0!==t.fullName&&""===t.fullName.trim())return{success:!1,error:{code:"VALIDATION_ERROR",message:"ชื่อ-นามสกุลไม่สามารถปล่อยว่างได้"}};if(void 0!==t.phone&&!/^(0\d{8,9}|0\d{1,2}-\d{3,4}-\d{3,4})$/.test(t.phone.trim())&&""!==t.phone.trim())return{success:!1,error:{code:"VALIDATION_ERROR",message:"รูปแบบเบอร์โทรศัพท์ไม่ถูกต้อง (เช่น 0812345678 หรือ 081-234-5678)"}};let s=await this.repository.getProfile(e);if(!s)return{success:!1,error:{code:"NOT_FOUND",message:"ไม่พบข้อมูลโปรไฟล์ที่ต้องการแก้ไข"}};let r={...s,...t,id:s.id,email:s.email};await this.repository.saveProfile(e,r);{let t=localStorage.getItem("ctc_user");if(t){let e=JSON.parse(t);e.fullName=r.fullName,e.avatarUrl=r.avatarUrl,localStorage.setItem("ctc_user",JSON.stringify(e)),window.dispatchEvent(new Event("storage"))}let s=localStorage.getItem("ctc_accounts");if(s)try{let t=JSON.parse(s).map(t=>t.id===e?{...t,fullName:r.fullName}:t);localStorage.setItem("ctc_accounts",JSON.stringify(t))}catch(e){console.error("Error updating ctc_accounts:",e)}}return{success:!0,data:r}}catch(e){return{success:!1,error:{code:"DATABASE_ERROR",message:e?.message||"ไม่สามารถอัปเดตข้อมูลโปรไฟล์ได้"}}}}async deleteAccount(e){try{return await this.repository.deleteProfile(e),{success:!0,data:void 0}}catch(e){return{success:!1,error:{code:"DATABASE_ERROR",message:e?.message||"ไม่สามารถลบบัญชีผู้ใช้งานจากระบบได้"}}}}};e.s(["default",0,r],58214)},38815,e=>{"use strict";let t=new(e.i(61621)).LocalStorageAdapter,s=new class{storage;constructor(e){this.storage=e}getKey(e){return`ctc_collected_coupons_${e}`}async getCollectedCoupons(e){let t=await this.storage.getItem(this.getKey(e));if(t)return t;{let t=localStorage.getItem("collected_coupons");if(t)try{let s=JSON.parse(t);return await this.saveCollectedCoupons(e,s),s}catch{}}return[]}async saveCollectedCoupons(e,t){await this.storage.setItem(this.getKey(e),t)}}(t),r=[{code:"CMTC50",title:"ส่วนลดพิเศษ CMTC",description:"รับส่วนลด ฿50 ไม่มีขั้นต่ำ สำหรับคนรักวิทยาลัยเทคนิคเชียงใหม่ทุกคน",discount:50,minPurchase:0},{code:"WELCOME100",title:"ต้อนรับเปิดเทอมใหม่",description:"รับส่วนลด ฿100 เมื่อมียอดสั่งซื้อสินค้าตั้งแต่ ฿1,000 ขึ้นไป",discount:100,minPurchase:1e3},{code:"FREESHIP",title:"จัดส่งฟรีทั่วประเทศ",description:"ฟรีค่าจัดส่งพัสดุ เมื่อมียอดสั่งซื้อขั้นต่ำ ฿500 ขึ้นไป",discount:30,minPurchase:500}],a=new class{repository;constructor(e=s){this.repository=e}async getAvailableCoupons(){return{success:!0,data:r}}async getCollectedCoupons(e){try{let t=await this.repository.getCollectedCoupons(e);return{success:!0,data:t}}catch(e){return{success:!1,error:{code:"DATABASE_ERROR",message:e?.message||"ไม่สามารถดึงประวัติคูปองได้"}}}}async collectCoupon(e,t){try{let s=t.toUpperCase().trim();if(!r.some(e=>e.code===s))return{success:!1,error:{code:"NOT_FOUND",message:"ไม่พบรหัสคูปองนี้ในระบบร้านค้า"}};let a=await this.repository.getCollectedCoupons(e);if(a.includes(s))return{success:!1,error:{code:"ALREADY_COLLECTED",message:"คุณได้เก็บคูปองส่วนลดนี้ไปแล้ว"}};let c=[...a,s];return await this.repository.saveCollectedCoupons(e,c),localStorage.setItem("collected_coupons",JSON.stringify(c)),window.dispatchEvent(new Event("storage")),{success:!0,data:void 0}}catch(e){return{success:!1,error:{code:"DATABASE_ERROR",message:e?.message||"ไม่สามารถเก็บคูปองส่วนลดได้"}}}}};e.s(["default",0,a],38815)},61621,e=>{"use strict";e.s(["LocalStorageAdapter",0,class{async getItem(e){try{let t=localStorage.getItem(e);return t?JSON.parse(t):null}catch(t){return console.error(`Error reading key "${e}" from LocalStorage:`,t),null}}async setItem(e,t){try{localStorage.setItem(e,JSON.stringify(t))}catch(t){console.error(`Error writing key "${e}" to LocalStorage:`,t)}}async removeItem(e){try{localStorage.removeItem(e)}catch(t){console.error(`Error removing key "${e}" from LocalStorage:`,t)}}}])},86624,e=>{"use strict";let t=new(e.i(61621)).LocalStorageAdapter,s=new class{storage;constructor(e){this.storage=e}getKey(e){return`ctc_addresses_${e}`}async getAddresses(e){let t=await this.storage.getItem(this.getKey(e));if(t)return t;let s=[{id:"addr_default_1",label:"หอพักนักศึกษา (Dormitory)",fullName:"อาทิตย์ ลุงกอ",phone:"088-765-4321",address:"123 หอพักนักศึกษาวิทยาลัยเทคนิคเชียงใหม่ ถ.ห้วยแก้ว ต.ศรีภูมิ",province:"เชียงใหม่",postalCode:"50200",isDefault:!0}];return await this.saveAddresses(e,s),s}async saveAddresses(e,t){await this.storage.setItem(this.getKey(e),t)}}(t),r=new class{repository;constructor(e=s){this.repository=e}async getAddresses(e){try{let t=await this.repository.getAddresses(e);return{success:!0,data:t}}catch(e){return{success:!1,error:{code:"DATABASE_ERROR",message:e?.message||"ไม่สามารถดึงที่อยู่จัดส่งได้"}}}}async saveAddress(e,t){try{if(!t.fullName.trim())return{success:!1,error:{code:"VALIDATION_ERROR",message:"กรุณากรอกชื่อผู้รับจริง"}};if(!t.phone.trim()||!/^(0\d{8,9}|0\d{1,2}-\d{3,4}-\d{3,4})$/.test(t.phone.trim()))return{success:!1,error:{code:"VALIDATION_ERROR",message:"รูปแบบเบอร์โทรศัพท์ผู้รับไม่ถูกต้อง (เช่น 0812345678 หรือ 081-234-5678)"}};if(!t.address.trim())return{success:!1,error:{code:"VALIDATION_ERROR",message:"กรุณากรอกข้อมูลที่อยู่ เช่น ถนน ซอย บ้านเลขที่"}};if(!t.province.trim())return{success:!1,error:{code:"VALIDATION_ERROR",message:"กรุณากรอกจังหวัดผู้รับ"}};if(!t.postalCode.trim()||!/^\d{5}$/.test(t.postalCode.trim()))return{success:!1,error:{code:"VALIDATION_ERROR",message:"รูปแบบรหัสไปรษณีย์ไม่ถูกต้อง (ต้องประกอบด้วยตัวเลข 5 หลัก)"}};let s=await this.repository.getAddresses(e),r=[...s],a=0===s.length||t.isDefault;a&&(r=r.map(e=>({...e,isDefault:!1})));let c=s.findIndex(e=>e.id===t.id),l={...t,isDefault:a};return c>-1?r[c]=l:r.push(l),await this.repository.saveAddresses(e,r),window.dispatchEvent(new Event("storage")),{success:!0,data:l}}catch(e){return{success:!1,error:{code:"DATABASE_ERROR",message:e?.message||"ไม่สามารถบันทึกที่อยู่ลงฐานข้อมูลได้"}}}}async deleteAddress(e,t){try{let s=await this.repository.getAddresses(e),r=s.find(e=>e.id===t),a=s.filter(e=>e.id!==t);return r?.isDefault&&a.length>0&&(a[0]={...a[0],isDefault:!0}),await this.repository.saveAddresses(e,a),window.dispatchEvent(new Event("storage")),{success:!0,data:void 0}}catch(e){return{success:!1,error:{code:"DATABASE_ERROR",message:e?.message||"ไม่สามารถลบที่อยู่ออกจากฐานข้อมูลได้"}}}}async setDefaultAddress(e,t){try{let s=await this.repository.getAddresses(e);if(!s.some(e=>e.id===t))return{success:!1,error:{code:"NOT_FOUND",message:"ไม่พบรายละเอียดที่อยู่นี้ในประวัติของคุณ"}};let r=s.map(e=>({...e,isDefault:e.id===t}));return await this.repository.saveAddresses(e,r),window.dispatchEvent(new Event("storage")),{success:!0,data:void 0}}catch(e){return{success:!1,error:{code:"DATABASE_ERROR",message:e?.message||"ไม่สามารถสลับที่อยู่หลักได้"}}}}};e.s(["default",0,r],86624)},96365,e=>{"use strict";let t=class{static STORAGE_KEY="ctc_orders";static getStoredOrders(){try{let e=localStorage.getItem(this.STORAGE_KEY);return e?JSON.parse(e):[]}catch{return[]}}static saveOrders(e){try{localStorage.setItem(this.STORAGE_KEY,JSON.stringify(e))}catch(e){console.error("Failed to write orders database:",e)}}static async createOrder(e,t,s,r){let a,c="ORD-"+Math.floor(1e5+9e5*Math.random()),l="CTC-"+Math.floor(1e8+9e8*Math.random());{let e=localStorage.getItem("ctc_user");if(e)try{a=JSON.parse(e).email}catch{}}let i={id:c,items:e,totalAmount:t,status:"pending",shippingAddress:s,paymentMethod:r,trackingCode:l,createdAt:new Date().toISOString(),userEmail:a};try{let e=window.location.pathname.startsWith("/u69319090023/Shop23")?"/u69319090023/Shop23/api":"/api",t=await fetch(`${e}/orders.php`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(i)}),s=await t.json();if(s&&s.success&&s.data){let e=this.getStoredOrders();return this.saveOrders([s.data,...e]),s.data}}catch{}let o=this.getStoredOrders();return this.saveOrders([i,...o]),i}static async getOrderById(e){return new Promise(t=>{setTimeout(()=>{t(this.getStoredOrders().find(t=>t.id===e))},200)})}static async trackOrder(e){return new Promise(t=>{setTimeout(()=>{t(this.getStoredOrders().find(t=>t.trackingCode===e||t.id===e))},200)})}static async searchOrders(e){return new Promise(t=>{setTimeout(()=>{let s=this.getStoredOrders(),r=e.trim().toLowerCase();r?t(s.filter(e=>e.id.toLowerCase().includes(r)||e.shippingAddress.phone.replace(/[^0-9]/g,"").includes(r.replace(/[^0-9]/g,"")))):t([])},200)})}static async getRecentOrders(){return new Promise(e=>{setTimeout(()=>{let t;{let e=localStorage.getItem("ctc_user");if(e)try{t=JSON.parse(e).email}catch{}}let s=this.getStoredOrders();t?e(s.filter(e=>!e.userEmail||e.userEmail.toLowerCase()===t.toLowerCase())):e(s)},100)})}};e.s(["default",0,t])},55677,e=>{"use strict";let t=(0,e.i(56420).default)("clipboard-list",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",key:"116196"}],["path",{d:"M12 11h4",key:"1jrz19"}],["path",{d:"M12 16h4",key:"n85exb"}],["path",{d:"M8 11h.01",key:"1dfujw"}],["path",{d:"M8 16h.01",key:"18s6g9"}]]);e.s(["ClipboardList",0,t],55677)},19172,e=>{"use strict";var t=e.i(43476),s=e.i(71645),r=e.i(22016),a=e.i(63448),c=e.i(57657),l=e.i(20865),i=e.i(1279),o=e.i(67927),d=e.i(79258),n=e.i(84026),u=e.i(28623),m=e.i(55677),h=e.i(44779),x=e.i(58214),g=e.i(38815),p=e.i(86624),f=e.i(96365),y=e.i(88442);e.s(["default",0,function(){let[e,w]=(0,s.useState)(null),[b,N]=(0,s.useState)(null),[j,v]=(0,s.useState)(!0),[S,A]=(0,s.useState)([]),[O,R]=(0,s.useState)(!0),[E,C]=(0,s.useState)(0),[k,I]=(0,s.useState)(!0),[_,T]=(0,s.useState)(null),[D,L]=(0,s.useState)(!0);(0,s.useEffect)(()=>{let e=h.default.getCurrentUser();e&&(w(e),P(e.id))},[]);let P=e=>{x.default.getProfile(e).then(e=>{e.success&&N(e.data),v(!1)}),f.default.getRecentOrders().then(e=>{A(e.slice(0,3)),R(!1)}),g.default.getCollectedCoupons(e).then(e=>{e.success&&C(e.data.length),I(!1)}),p.default.getAddresses(e).then(e=>{e.success&&T(e.data.find(e=>e.isDefault)||e.data[0]||null),L(!1)})};return(0,t.jsxs)("div",{className:"space-y-8 text-left font-prompt",children:[j?(0,t.jsxs)("div",{className:"bg-gradient-to-r from-primary to-secondary rounded-3xl p-6 text-white space-y-3",children:[(0,t.jsx)(y.default,{className:"h-6 w-48 bg-white/20"}),(0,t.jsx)(y.default,{className:"h-4 w-72 bg-white/10"})]}):(0,t.jsxs)("div",{className:"relative bg-gradient-to-r from-primary to-secondary rounded-3xl p-6 sm:p-8 text-white overflow-hidden shadow-luxury",children:[(0,t.jsx)("div",{className:"absolute right-0 top-0 translate-x-12 -translate-y-12 w-64 h-64 bg-white/5 rounded-full blur-3xl pointer-events-none"}),(0,t.jsx)("div",{className:"absolute left-1/3 bottom-0 translate-y-12 w-48 h-48 bg-accent/20 rounded-full blur-2xl pointer-events-none"}),(0,t.jsxs)("div",{className:"relative z-10 flex flex-col sm:flex-row sm:items-center sm:justify-between gap-4",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,t.jsxs)("span",{className:"text-xl sm:text-2xl font-bold tracking-wide",children:["สวัสดีคุณ ",b?.fullName.split(" ")[0]||"ผู้ใช้งาน"]}),(0,t.jsx)(u.Sparkles,{className:"w-5 h-5 text-amber-300 animate-pulse flex-shrink-0"})]}),(0,t.jsx)("p",{className:"text-xs sm:text-sm text-text-secondary/80 font-light max-w-xl leading-relaxed",children:"ยินดีต้อนรับสู่แดชบอร์ดจัดการบัญชีวิทยาลัยเทคนิคเชียงใหม่ของคุณ คุณสามารถจัดการข้อมูลที่อยู่ หรือสะสมคูปองได้จากที่นี่"})]}),(0,t.jsx)("div",{className:"flex items-center space-x-2 self-start sm:self-center",children:b?.isVerified?(0,t.jsxs)("span",{className:"inline-flex items-center space-x-1 px-3 py-1 rounded-full bg-emerald-500/20 text-emerald-300 border border-emerald-500/35 text-xs font-semibold",children:[(0,t.jsx)(n.ShieldCheck,{className:"w-3.5 h-3.5"}),(0,t.jsx)("span",{children:"ยืนยันตัวตนบุคลากรแล้ว"})]}):(0,t.jsx)("span",{className:"inline-flex items-center space-x-1 px-3 py-1 rounded-full bg-white/10 text-white/80 border border-white/15 text-xs font-medium",children:(0,t.jsx)("span",{children:"บัญชีทั่วไป"})})})]})]}),(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4",children:[(0,t.jsxs)(r.default,{href:"/account/coupons",className:"bg-white border border-gray-150 rounded-2xl p-4 flex flex-col justify-between hover:border-accent/30 hover:shadow-card-soft transition-all duration-200 cursor-pointer",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("span",{className:"text-xs font-semibold text-gray-500",children:"คูปองสะสม"}),(0,t.jsx)("div",{className:"p-2 bg-amber-50 rounded-xl text-amber-500",children:(0,t.jsx)(c.Ticket,{className:"w-4 h-4"})})]}),(0,t.jsx)("div",{className:"mt-4 text-left",children:k?(0,t.jsx)(y.default,{className:"h-7 w-12"}):(0,t.jsxs)("span",{className:"text-2xl font-bold text-gray-900",children:[E," ",(0,t.jsx)("span",{className:"text-xs font-normal text-gray-400",children:"ใบ"})]})})]}),(0,t.jsxs)(r.default,{href:"/account/addresses",className:"col-span-2 bg-white border border-gray-150 rounded-2xl p-4 flex flex-col justify-between hover:border-accent/30 hover:shadow-card-soft transition-all duration-200 cursor-pointer",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("span",{className:"text-xs font-semibold text-gray-500",children:"ที่อยู่จัดส่งหลัก"}),(0,t.jsx)("div",{className:"p-2 bg-blue-50 rounded-xl text-blue-500",children:(0,t.jsx)(l.MapPin,{className:"w-4 h-4"})})]}),(0,t.jsx)("div",{className:"mt-2 text-left min-w-0",children:D?(0,t.jsx)(y.default,{className:"h-10 w-full"}):_?(0,t.jsxs)("div",{className:"truncate text-left pt-1",children:[(0,t.jsx)("span",{className:"text-sm font-semibold text-gray-800 block truncate",children:_.fullName}),(0,t.jsxs)("span",{className:"text-xs text-gray-400 font-light truncate block",children:[_.address,", ",_.province]})]}):(0,t.jsx)("span",{className:"text-xs text-gray-400 font-light block pt-3",children:"ยังไม่ได้เพิ่มที่อยู่จัดส่ง"})})]})]}),(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-12 gap-6 items-start",children:[(0,t.jsxs)("section",{className:"md:col-span-8 space-y-4",children:[(0,t.jsxs)("div",{className:"flex justify-between items-center select-none",children:[(0,t.jsxs)("h3",{className:"text-base font-bold text-gray-900 flex items-center space-x-2",children:[(0,t.jsx)(a.ShoppingBag,{className:"w-5 h-5 text-accent"}),(0,t.jsx)("span",{children:"คำสั่งซื้อล่าสุด"})]}),(0,t.jsxs)(r.default,{href:"/tracking",className:"text-xs font-semibold text-accent hover:underline flex items-center space-x-0.5",children:[(0,t.jsx)("span",{children:"ดูทั้งหมด"}),(0,t.jsx)(o.ChevronRight,{className:"w-3.5 h-3.5"})]})]}),(0,t.jsx)("div",{className:"space-y-3",children:O?[1,2].map(e=>(0,t.jsxs)("div",{className:"border border-gray-100 rounded-2xl p-4 flex items-center justify-between bg-gray-50/20",children:[(0,t.jsxs)("div",{className:"flex items-center space-x-3 flex-1",children:[(0,t.jsx)(y.default,{className:"w-12 h-12 rounded-xl flex-shrink-0"}),(0,t.jsxs)("div",{className:"space-y-1.5 flex-1",children:[(0,t.jsx)(y.default,{className:"h-4 w-40"}),(0,t.jsx)(y.default,{className:"h-3.5 w-24"})]})]}),(0,t.jsx)(y.default,{className:"h-6 w-20 rounded-full"})]},e)):S.length>0?S.map(e=>{let s=e.items[0];return(0,t.jsxs)("div",{className:"border border-gray-150 rounded-2xl p-4 flex flex-col sm:flex-row sm:items-center sm:justify-between gap-4 bg-white hover:border-gray-200 transition-colors",children:[(0,t.jsxs)("div",{className:"flex items-center space-x-3 min-w-0 flex-1",children:[(0,t.jsx)("div",{className:"w-12 h-12 bg-gray-50 border border-gray-100/80 rounded-xl flex-shrink-0 flex items-center justify-center text-gray-400 font-bold overflow-hidden",children:s?.product.images?.[0]?(0,t.jsx)("img",{src:s.product.images[0],alt:s.product.name,className:"object-contain w-10 h-10"}):(0,t.jsx)(d.Package,{className:"w-6 h-6"})}),(0,t.jsxs)("div",{className:"text-left min-w-0 flex-1",children:[(0,t.jsx)("span",{className:"text-sm font-bold text-gray-800 block truncate leading-tight",children:s?.product.name||"คำสั่งซื้อไร้ชื่อ"}),(0,t.jsxs)("div",{className:"flex items-center text-xs text-gray-400 font-light space-x-2 mt-1",children:[(0,t.jsxs)("span",{children:["สั่งเมื่อ ",new Date(e.createdAt).toLocaleDateString("th-TH")]}),(0,t.jsx)("span",{children:"•"}),(0,t.jsxs)("span",{className:"font-medium text-accent",children:["฿",e.totalAmount.toLocaleString()]})]})]})]}),(0,t.jsxs)("div",{className:"flex items-center justify-between sm:justify-end gap-3 flex-shrink-0",children:[(0,t.jsx)("span",{className:`text-[10px] font-bold px-2.5 py-0.5 rounded-full ${"delivered"===e.status?"bg-emerald-50 text-emerald-600 border border-emerald-100":"cancelled"===e.status?"bg-red-50 text-red-600 border border-red-100":"bg-accent/10 text-accent border border-rose-100/30"}`,children:{pending:"รอดำเนินการ",processing:"กำลังจัดเตรียม",shipped:"จัดส่งแล้ว",delivered:"นำจ่ายสำเร็จ",cancelled:"ยกเลิกแล้ว"}[e.status]||e.status}),(0,t.jsx)(r.default,{href:`/tracking?id=${e.id}`,className:"text-xs font-semibold text-gray-500 hover:text-accent border border-gray-200 hover:border-accent px-3 py-1.5 rounded-full transition-all",children:"ติดตามพัสดุ"})]})]},e.id)}):(0,t.jsxs)("div",{className:"border border-dashed border-gray-200 rounded-3xl p-8 text-center bg-gray-50/20",children:[(0,t.jsx)(m.ClipboardList,{className:"w-8 h-8 text-gray-300 mx-auto mb-2"}),(0,t.jsx)("p",{className:"text-xs text-gray-400 font-light",children:"ไม่พบประวัติคำสั่งซื้อล่าสุดของคุณ"}),(0,t.jsx)(r.default,{href:"/products",className:"inline-flex mt-4 text-xs font-bold text-accent hover:underline",children:"เริ่มสั่งซื้อชิ้นงานวิทยาลัยได้ที่นี่"})]})})]}),(0,t.jsxs)("section",{className:"md:col-span-4 space-y-4",children:[(0,t.jsxs)("h3",{className:"text-base font-bold text-gray-900 flex items-center space-x-2",children:[(0,t.jsx)(i.User,{className:"w-5 h-5 text-accent"}),(0,t.jsx)("span",{children:"ทางลัดจัดการบัญชี"})]}),(0,t.jsxs)("div",{className:"bg-gray-50/30 border border-gray-150 rounded-2xl p-4 space-y-2",children:[(0,t.jsxs)(r.default,{href:"/account/profile",className:"flex items-center justify-between px-3.5 py-2.5 rounded-xl bg-white border border-gray-100 hover:border-accent/15 hover:shadow-sm text-xs font-semibold text-gray-700 hover:text-accent transition-all cursor-pointer",children:[(0,t.jsx)("span",{children:"แก้ไขประวัติส่วนตัว"}),(0,t.jsx)(o.ChevronRight,{className:"w-4 h-4 text-gray-400"})]}),(0,t.jsxs)(r.default,{href:"/account/addresses",className:"flex items-center justify-between px-3.5 py-2.5 rounded-xl bg-white border border-gray-100 hover:border-accent/15 hover:shadow-sm text-xs font-semibold text-gray-700 hover:text-accent transition-all cursor-pointer",children:[(0,t.jsx)("span",{children:"จัดการสมุดที่อยู่จัดส่ง"}),(0,t.jsx)(o.ChevronRight,{className:"w-4 h-4 text-gray-400"})]}),(0,t.jsxs)(r.default,{href:"/account/settings",className:"flex items-center justify-between px-3.5 py-2.5 rounded-xl bg-white border border-gray-100 hover:border-accent/15 hover:shadow-sm text-xs font-semibold text-gray-700 hover:text-accent transition-all cursor-pointer",children:[(0,t.jsx)("span",{children:"แก้ไขรหัสผ่านและสิทธิ์"}),(0,t.jsx)(o.ChevronRight,{className:"w-4 h-4 text-gray-400"})]})]})]})]})]})}])}]);
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | Generation time: 0.25 |
proxy
|
phpinfo
|
Settings