PageSourceSearch

https://tplab.vn/_next/static/chunks/0ff66e9d78b82991.js

js tplab.vn collected 2026-10-08 08:03:55 UTC 34,269 bytes, 1 lines download raw bytes

1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,32036,e=>{"use strict";function t(e){return"".concat(e.toLocaleString("vi-VN"),"₫")}function a(e,a){switch(a){case"currency_vnd":return t(e);case"percent":return"".concat(e,"%");default:return e.toLocaleString("vi-VN")}}function r(e){return e.replace(/đ/g,"d").replace(/Đ/g,"D").normalize("NFD").replace(/[̀-ͯ]/g,"").toLowerCase().trim().replace(/[^a-z0-9\s-]/g,"").replace(/\s+/g,"-").replace(/-+/g,"-").replace(/^-|-$/g,"")}function n(e){let t=new Date(e),a=String(t.getDate()).padStart(2,"0"),r=String(t.getMonth()+1).padStart(2,"0"),n=t.getFullYear();return"".concat(a,".").concat(r,".").concat(n)}function l(e){let t=new Date(e),a=String(t.getHours()).padStart(2,"0"),r=String(t.getMinutes()).padStart(2,"0");return"".concat(n(t)," ").concat(a,":").concat(r)}function s(e){return new Intl.NumberFormat("en-US",{notation:"compact",maximumFractionDigits:1}).format(e)}function i(e,t){return t<=0?e:Math.round(e/t)}function c(e){return e.trim().split(/\s+/).slice(-2).map(e=>{var t,a;return null!=(a=null==(t=e[0])?void 0:t.toUpperCase())?a:""}).join("")}e.s(["compactNumber",()=>s,"fmtVND",()=>t,"formatDate",()=>n,"formatDateTime",()=>l,"formatKpiValue",()=>a,"initials",()=>c,"priceMonthly",()=>i,"slugify",()=>r])},96640,e=>{"use strict";e.s(["Badge",()=>n]);var t=e.i(51574),a=e.i(49838);let r={deal:"bg-green text-page border-transparent",new:"border-accent text-accent bg-transparent",success:"border-transparent text-green bg-green-wash",info:"border-transparent text-accent bg-accent-wash",warning:"border-transparent text-warning bg-warning-wash",error:"border-transparent text-error-text bg-error-wash","stock-in":"border-transparent text-green bg-green-wash","stock-out":"border-transparent text-pewter bg-border",neutral:"border-transparent text-pewter bg-border"};function n(e){let{variant:n="neutral",children:l,className:s}=e;return(0,t.jsx)("span",{className:(0,a.cn)("inline-flex items-center rounded-sharp border px-2 py-0.5 font-display text-[11px] font-bold uppercase tracking-wide",r[n],s),children:l})}},37698,e=>{"use strict";e.s(["Search",()=>t],37698);let t=(0,e.i(44133).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]])},95134,e=>{"use strict";e.s(["ChevronDown",()=>t],95134);let t=(0,e.i(44133).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]])},58651,e=>{"use strict";e.s(["IconButton",()=>s]);var t=e.i(51574),a=e.i(78543),r=e.i(49838);let n={sm:"size-[34px]",md:"size-9",lg:"size-10"},l={default:"border border-border bg-surface text-body hover:border-accent hover:text-accent",ghost:"border border-transparent bg-transparent text-body hover:text-accent",round:"rounded-full border border-border-soft bg-page/60 text-heading backdrop-blur hover:border-accent hover:text-accent"},s=(0,a.forwardRef)(function(e,a){let{icon:s,variant:i="default",size:c="md",badge:o,className:d,...h}=e;return(0,t.jsxs)("button",{ref:a,className:(0,r.cn)("relative inline-flex shrink-0 items-center justify-center transition-all duration-150 ease-out","round"!==i&&"rounded-sharp",l[i],n[c],d),...h,children:[(0,t.jsx)(s,{className:"size-[18px]","aria-hidden":!0}),null!=o&&(0,t.jsx)("span",{className:"absolute -right-1.5 -top-1.5 flex h-4 min-w-4 items-center justify-center rounded-full bg-accent px-1 text-[10px] font-bold text-page tnum",children:o})]})})},65959,e=>{"use strict";e.s(["useTranslations",()=>r]);var t=e.i(43711);function a(e,t){return function(){for(var e=arguments.length,a=Array(e),r=0;r<e;r++)a[r]=arguments[r];try{return t(...a)}catch(e){throw Error(void 0)}}}let r=a(0,t.useTranslations);a(0,t.useFormatter)},44705,e=>{"use strict";e.s(["Link",()=>d,"usePathname",()=>u,"useRouter",()=>p],44705);var t=e.i(55642),a=e.i(78543),r=e.i(43711),n=a["use".trim()],l=e.i(96266),s=e.i(76715),i=e.i(7369),c=e.i(51574),o=e.i(10726);let{Link:d,redirect:h,usePathname:u,useRouter:p,getPathname:m}=function(e){let{Link:d,config:h,getPathname:u,...p}=function(e,r){var o,d,h,u,p;let m={...o=r||{},localePrefix:"object"==typeof(h=o.localePrefix)?h:{mode:h||"always"},localeCookie:!!(null!=(d=o.localeCookie)?d:1)&&{name:"NEXT_LOCALE",
1sameSite:"lax",..."object"==typeof d&&d},localeDetection:null==(u=o.localeDetection)||u,alternateLinks:null==(p=o.alternateLinks)||p},x=m.pathnames,g=(0,a.forwardRef)(function(t,a){let r,i,{href:o,locale:d,...h}=t;"object"==typeof o?(r=o.pathname,i=o.params):r=o;let u=(0,l.isLocalizableHref)(o),p=e(),g=(0,l.isPromise)(p)?n(p):p,b=u?f({locale:d||g,href:null==x?r:{pathname:r,params:i},forcePrefix:null!=d||void 0}):r;return(0,c.jsx)(s.default,{ref:a,href:"object"==typeof o?{...o,pathname:b}:b,locale:d,localeCookie:m.localeCookie,...h})});function f(e){let t,{forcePrefix:a,href:r,locale:n}=e;return null==x?"object"==typeof r?(t=r.pathname,r.query&&(t+=(0,i.serializeSearchParams)(r.query))):t=r:t=(0,i.compileLocalizedPathname)({locale:n,...(0,i.normalizeNameOrNameWithParams)(r),pathnames:m.pathnames}),(0,i.applyPathnamePrefix)(t,n,m,a)}function b(e){return function(t){for(var a=arguments.length,r=Array(a>1?a-1:0),n=1;n<a;n++)r[n-1]=arguments[n];return e(f(t),...r)}}return{config:m,Link:g,redirect:b(t.redirect),permanentRedirect:b(t.permanentRedirect),getPathname:f}}(r.useLocale,e);return{...p,Link:d,usePathname:function(){let e=function(e){let n=(0,t.usePathname)(),s=(0,r.useLocale)();return(0,a.useMemo)(()=>{if(!n)return n;let t=n,a=(0,l.getLocalePrefix)(s,e.localePrefix);if((0,l.hasPathnamePrefixed)(a,n))t=(0,l.unprefixPathname)(n,a);else if("never"!==e.localePrefix.mode&&e.localePrefix.prefixes){let e=(0,l.getLocaleAsPrefix)(s);(0,l.hasPathnamePrefixed)(e,n)&&(t=(0,l.unprefixPathname)(n,e))}return t},[e.localePrefix,s,n])}(h),n=(0,r.useLocale)();return(0,a.useMemo)(()=>e&&h.pathnames?(0,i.getRoute)(n,e,h.pathnames):e,[n,e])},useRouter:function(){let e=(0,t.useRouter)(),n=(0,r.useLocale)(),l=(0,t.usePathname)();return(0,a.useMemo)(()=>{function t(e){return function(t,a){let{locale:r,...s}=a||{},i=[u({href:t,locale:r||n,forcePrefix:null!=r||void 0})];Object.keys(s).length>0&&i.push(s),(0,o.default)(h.localeCookie,l,n,r),e(...i)}}return{...e,push:t(e.push),replace:t(e.replace),prefetch:t(e.prefetch)}},[n,l,e])},getPathname:u}}({locales:["vi","en"],defaultLocale:"vi",localePrefix:"always"})},52320,e=>{"use strict";e.s(["RefreshCw",()=>t],52320);let t=(0,e.i(44133).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]])},49537,e=>{"use strict";e.s(["Truck",()=>t],49537);let t=(0,e.i(44133).default)("truck",[["path",{d:"M14 18V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v11a1 1 0 0 0 1 1h2",key:"wrbu53"}],["path",{d:"M15 18H9",key:"1lyqi6"}],["path",{d:"M19 18h2a1 1 0 0 0 1-1v-3.65a1 1 0 0 0-.22-.624l-3.48-4.35A1 1 0 0 0 17.52 8H14",key:"lysw3i"}],["circle",{cx:"17",cy:"18",r:"2",key:"332jqn"}],["circle",{cx:"7",cy:"18",r:"2",key:"19iecd"}]])},70192,e=>{"use strict";e.s(["Cpu",()=>t],70192);let t=(0,e.i(44133).default)("cpu",[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]])},6772,e=>{"use strict";e.s(["ShieldCheck",()=>t],6772);let t=(0,e.i(44133).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"}]])},18350,e=>{"use strict";e.s(["MapPin",()=>t],18350);let t=(0,e.i(44133).default)("map-pin",[["path",{d:"M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0",key:"1r0f0z"}],["circle",{cx:"12",cy:"10",r:"3",key:"ilqhr7"}]])},63065,e=>{"use strict";e.s(["Zap",()=>t],63065);let t=(0,e.i(44133).default)("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]])},38404,e=>{"use strict";e.s(["Phone",()=>t],38404);let t=(0,e.i(44133).default)("phone",[["path",{d:"M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 
10 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384",key:"9njp5v"}]])},84046,e=>{"use strict";e.s(["MessageCircle",()=>t],84046);let t=(0,e.i(44133).default)("message-circle",[["path",{d:"M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719",key:"1sd12s"}]])},66418,e=>{"use strict";e.s(["User",()=>t],66418);let t=(0,e.i(44133).default)("user",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]])},24846,e=>{"use strict";e.s(["Send",()=>t],24846);let t=(0,e.i(44133).default)("send",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]])},99056,e=>{"use strict";e.s(["StorefrontFooter",()=>u],99056);var t=e.i(51574),a=e.i(44705),r=e.i(65959),n=e.i(44133);let l=(0,n.default)("at-sign",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-4 8",key:"7n84p3"}]]),s=(0,n.default)("globe",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]]);var i=e.i(84046),c=e.i(24846),o=e.i(59544);let d=[i.MessageCircle,l,c.Send,s],h=["VISA","MOMO","VNPAY","COD","QR"];function u(){let e=(0,r.useTranslations)("Footer"),n=[{label:e("about.intro"),href:"/about"},{label:e("about.careers"),href:"/careers"},{label:e("about.contact"),href:"/contact"},{label:e("about.showroom"),href:"/showroom"}],l=[{label:e("support.trackOrder"),href:"/track-order"},{label:e("support.warrantyLookup"),href:"/warranty-lookup"},{label:e("support.returns"),href:"/returns"},{label:e("support.installment"),href:"/installment"},{label:e("support.faq"),href:"/faq"}],s=[{label:e("policies.privacy"),href:"/pages/chinh-sach-bao-mat-thong-tin"},{label:e("policies.shipping"),href:"/pages/chinh-sach-van-chuyen"},{label:e("policies.buying"),href:"/pages/chinh-sach-mua-hang"},{label:e("policies.goods"),href:"/pages/chinh-sach-hang-hoa"},{label:e("policies.terms"),href:"/pages/dieu-khoan-dich-vu"},{label:e("policies.payment"),href:"/pages/phuong-thuc-thanh-toan"},{label:e("policies.warranty"),href:"/pages/chinh-sach-bao-hanh-va-doi-tra"},{label:e("policies.showcase"),href:"/pages/showcase-tong-hop-nhung-bo-pc-custom-build-tai-tplab"}];return(0,t.jsx)("footer",{className:"mt-6 border-t border-border bg-footer",children:(0,t.jsxs)("div",{className:"mx-auto max-w-[1440px] px-6 pt-12 pb-7",children:[(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-9 lg:grid-cols-[1.4fr_1fr_1fr_1fr_1.3fr]",children:[(0,t.jsxs)("div",{className:"col-span-2 lg:col-span-1",children:[(0,t.jsxs)("span",{className:"font-display text-[22px] font-bold uppercase tracking-widest text-heading",children:["TP",(0,t.jsx)("span",{className:"text-accent",children:"·"}),"LAB"]}),(0,t.jsx)("p",{className:"my-3.5 max-w-[300px] text-[13px] leading-relaxed text-muted",children:e("desc")}),(0,t.jsx)("div",{className:"flex gap-2.5",children:d.map((e,a)=>(0,t.jsx)("span",{className:"flex size-[34px] cursor-pointer items-center justify-center rounded-sharp border border-border text-muted transition-colors hover:border-accent hover:text-accent",children:(0,t.jsx)(e,{className:"size-4","aria-hidden":!0})},a))})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("h4",{className:"mb-3.5 font-display text-sm font-semibold uppercase tracking-wide text-heading",children:e("about.title")}),(0,t.jsx)("ul",{className:"flex flex-col gap-2.5 text-[13px] text-muted",children:n.map(e=>(0,t.jsx)("li",{children:(0,t.jsx)(a.Link,{href:e.href,className:"hover:text-accent",children:e.label})},e.href))})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("h4",{className:"mb-3.5 font-display text-sm font-semibold uppercase tracking-wide text-heading",children:e("support.title")}),(0,t.jsx)("ul",{className:"flex flex-col gap-2.5 text-[13px] text-muted",children:l.map(e=>(0,t.jsx)("li",{children:(0,t.jsx)(a.Link,{href:e.href,className:"hover:text-accent",children:e.label})},e.href))})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("h4",{className:"mb-3.5 font-display text-sm font-semibold uppercase tracking-wide text-heading",children:e("policies.title")}),(0,t.jsx)("ul",{className:"flex flex-col gap-2.5 text-[13px] text-muted",children:s.map(e=>(0,t.jsx)("li",{children:(0,t.jsx)(a.Link,{href:e.href,className:"hover:text-accent",children:e.label})},e.href))})]}),(0,t.jsxs)("div",{className:"col-span-2 lg:col-span-1",children:[(0,t.jsx)("h4",{className:"mb-3.5 font-display text-sm font-semibold uppercase tracking-wide text-heading",children:e("newsletter.title")}),(0,t.jsx)("p",{className:"mb-3 text-[13px] text-muted",children:e("newsletter.sub")}),(0,t.jsxs)("form",{onSubmit:e=>e.preventDefault(),className:"flex gap-2",children:[(0,t.jsx)("input",{type:"email",placeholder:e("newsletter.placeholder"),className:"h-[38px] flex-1 rounded-sharp border border-border bg-input px-3 text-[13px] text-body outline-none focus:border-accent"}),(0,t.jsx)(o.Button,{type:"submit",variant:"primary",size:"sm",children:e("newsletter.send")})]}),(0,t.jsx)("div",{className:"mt-4.5 flex flex-wrap gap-2",children:h.map(e=>(0,t.jsx)("span",{className:"rounded-sharp border border-border px-2 py-1.5 text-[10px] tracking-wide text-muted",children:e},e))})]})]}),(0,t.jsxs)("div",{className:"mt-8 flex flex-wrap items-center justify-between gap-3 border-t border-border-soft pt-5 text-xs text-muted",children:[(0,t.jsx)("span",{children:e("copyright")}),(0,t.jsxs)("div",{className:"flex items-center gap-4",children:[(0,t.jsx)("span",{children:e("registered")}
1),(0,t.jsx)(a.Link,{href:"/pages/chinh-sach-bao-mat-thong-tin",className:"hover:text-accent",children:e("privacy")})]})]})]})})}},75159,e=>{"use strict";e.s(["StorefrontHeader",()=>E],75159);var t=e.i(51574),a=e.i(44705),r=e.i(65959),n=e.i(95134),l=e.i(70192),s=e.i(69367),i=e.i(44133);let c=(0,i.default)("menu",[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]]);var o=e.i(38404),d=e.i(6772),h=e.i(13954),u=e.i(49537),p=e.i(66418),m=e.i(63065);let x=[{key:"pc-gaming-pc-do-hoa",label:"Máy Bộ TPLAB",href:"/categories/pc-gaming-pc-do-hoa"},{key:"pc-ai",label:"PC AI",href:"/categories/pc-ai"},{key:"linh-kien-may-tinh",label:"Linh Kiện",href:"/categories/linh-kien-may-tinh"},{key:"laptop",label:"Laptop",href:"/categories/laptop"},{key:"man-hinh-may-tinh",label:"Màn Hình",href:"/categories/man-hinh-may-tinh"},{key:"chuot-phim-tai-nghe",label:"Gaming Gear",href:"/categories/chuot-phim-tai-nghe"},{key:"worksation-sever",label:"Workstation",href:"/categories/worksation-sever"}];var g=e.i(33477),f=e.i(33576),b=e.i(79323),y=e.i(22108),k=e.i(59544),v=e.i(58651),j=e.i(78543),N=e.i(87645),w=e.i(98197),C=e.i(49838),M=e.i(36763);let P=(0,i.default)("percent",[["line",{x1:"19",x2:"5",y1:"5",y2:"19",key:"1x9vlm"}],["circle",{cx:"6.5",cy:"6.5",r:"2.5",key:"4mh3h7"}],["circle",{cx:"17.5",cy:"17.5",r:"2.5",key:"1mdrzq"}]]);var L=e.i(52320),S=e.i(18350);let T={brand_mouse:"chuot-may-tinh-mouse",brand_keyboard:"ban-phim-may-tinh-keyboard",brand_headset:"tai-nghe-gaming",brand_mousepad:"lot-chuot-pad-mouse",brand_chair:"ghe-gaming-cong-thai-hoc",brand_desk:"ban-gaming-cong-thai-hoc",brand_vga:"card-man-hinh",brand_psu:"nguon",brand_case:"vo-may-tinh",brand_cooler:"tan-nhiet"},z=[{heading:"PC & Máy Bộ TPLAB",groups:[{slug:"pc-ai",mode:"children",label:"PC AI Chuyên Dụng",badge:"NEW"},{slug:"pc-gaming",mode:"children",label:"Máy Tính Gaming",badge:"HOT"},{slug:"pc-van-phong",mode:"children",label:"Máy Tính Văn Phòng"},{slug:"pc-do-hoa-ky-thuat",mode:"link",label:"PC Kết Cấu Đồ Họa Kỹ Thuật"},{slug:"pc-thiet-ke-noi-that",mode:"link",label:"PC Thiết Kế Nội Thất"},{slug:"pc-kien-truc-quy-hoach",mode:"link",label:"PC Kiến Trúc - Quy Hoạch - Cảnh Quan"},{slug:"pc-edit-video-images",mode:"link",label:"PC Edit Video Images"},{slug:"pc-do-hoa-2d",mode:"link",label:"PC Thiết Kế Đồ Họa 2D"},{slug:"pc-do-hoa-3d",mode:"link",label:"PC Thiết Kế Đồ Họa 3D"},{slug:"pc-edit-video-workstation",mode:"link",label:"PC Edit Video - Workstation"}]},{heading:"Linh Kiện Máy Tính",groups:[{slug:"combo-gia-tot",mode:"children",label:"COMBO Khuyến Mãi",badge:"HOT"},{slug:"cpu",mode:"children",label:"Bộ Vi Xử Lý (CPU)"},{slug:"bo-mach-chu",mode:"children",label:"Bo Mạch Chủ (Mainboard)"},{slug:"card-man-hinh",mode:"children",label:"Card Màn Hình (VGA)"},{slug:"ram",mode:"children",label:"Bộ Nhớ Trong (RAM)"},{slug:"ssd",mode:"children",label:"Ổ Cứng SSD"},{slug:"hdd",mode:"children",label:"Ổ Cứng HDD"},{slug:"nguon",mode:"children",label:"Nguồn Máy Tính (PSU)"},{slug:"tan-nhiet",mode:"children",label:"Tản Nhiệt"},{slug:"vo-may-tinh",mode:"children",label:"Vỏ Case Máy Tính"},{slug:"fan-case",mode:"children",label:"Quạt Tản Nhiệt (Fan Case)"}]},{heading:"Màn Hình & Gear",groups:[{slug:"man-hinh-may-tinh",mode:"children",label:"Màn Hình Máy Tính",allLabel:"Tất cả Màn hình"},{slug:"phu-kien-man-hinh",mode:"children",label:"Phụ Kiện Màn Hình"},{slug:"ban-phim-may-tinh-keyboard",mode:"children",label:"Bàn Phím Cơ Gaming"},{slug:"chuot-may-tinh-mouse",mode:"children",label:"Chuột Gaming"},{slug:"tai-nghe-gaming",mode:"children",label:"Tai Nghe Gaming"},{slug:"lot-chuot-pad-mouse",mode:"children",label:"Lót Chuột (Mouse Pad)"},{slug:"ghe-gaming-cong-thai-hoc",mode:"children",label:"Ghế Gaming & Công Thái Học"},{slug:"ban-gaming-cong-thai-hoc",mode:"children",label:"Bàn Gaming & Công Thái Học"}]},{heading:"Laptop & Thiết Bị",groups:[{slug:"laptop",mode:"children",label:"Laptop",badge:"HOT"},{slug:"phan-mem",mode:"children",label:"Phần Mềm Bản Quyền"},{slug:"phu-kien-laptop",mode:"children",label:"Phụ Kiện Laptop"},{slug:"thiet-bi-am-thanh",mode:"children",label:"Loa & Thiết Bị Âm Thanh"},{slug:"mic",mode:"children",label:"Microphone & Thu Âm"},{slug:"webcam",mode:"children",label:"Webcam & Capture Card"},{slug:"console-thiet-bi-gia-lap",mode:"children",label:"Console & Giả Lập"},{slug:"worksation-sever",mode:"children",label:"Workstation & Server"}]}];function R(e){let{badge:a}=e,r="NEW"===a;return(0,t.jsx)("span",{className:(0,C.cn)("ml-1.5 inline-block scale-90 rounded border px-1 py-0.5 align-middle text-[9px] font-bold uppercase leading-none tracking-wide",r?"border-accent text-accent":"border-green text-green"),children:a})}let _={products:[],meta:void 0,tree:[],filterColumns:[]};function H(e){var a,r,n;let{categoryKey:s,onNavigate:i}
1=e,[c,o]=(0,j.useState)({}),h=(0,j.useRef)(new Set),u=(0,j.useRef)(!1);if((0,j.useEffect)(()=>()=>{u.current=!0},[]),(0,j.useEffect)(()=>{!s||h.current.has(s)||(h.current.add(s),("all"===s?w.catalogService.allCategoryMeta().then(e=>({..._,tree:e})):Promise.all([w.catalogService.byCategory(s),w.catalogService.allCategoryMeta(),w.catalogService.filterMenu(s)]).then(e=>{let[t,a,r]=e;return{products:t,tree:a,meta:function e(t,a){for(let n of t){var r;if(n.slug===a)return n;let t=e(null!=(r=n.children)?r:[],a);if(t)return t}}(a,s),filterColumns:r}})).then(e=>{u.current||o(t=>({...t,[s]:e}))}).catch(()=>{h.current.delete(s)}))},[s]),!s)return null;let{products:p,meta:x,tree:g,filterColumns:f}=null!=(a=c[s])?a:_;if("all"===s){let e=function(e){let t=new Map;return!function e(a){for(let r of a)t.set(r.slug,r),r.children&&r.children.length>0&&e(r.children)}(e),t}(g);return(0,t.jsx)("div",{className:"absolute inset-x-0 top-full z-40 border-t border-border bg-surface shadow-pop animate-tp-fade",children:(0,t.jsxs)("div",{className:"mx-auto grid max-w-[1440px] grid-cols-[3.8fr_1.2fr] gap-8 px-6 py-6",children:[(0,t.jsx)("div",{className:"grid grid-cols-4 gap-8",children:z.map(a=>{let r=1===a.groups.length;return(0,t.jsxs)("div",{children:[(0,t.jsxs)("p",{className:"mb-3.5 flex items-center gap-1.5 font-display text-xs font-bold uppercase tracking-wide text-accent",children:[(0,t.jsx)("span",{className:"h-[2px] w-1.5 bg-accent"})," ",a.heading]}),(0,t.jsx)("ul",{className:"flex flex-col gap-3",children:a.groups.map(a=>((a,r)=>{var n,l,s,c;let o=e.get(a.slug),d=(null!=(n=null==o?void 0:o.children)?n:[]).filter(e=>e.visible),h=null!=(s=null!=(l=null==o?void 0:o.name)?l:a.label)?s:a.slug;return"link"===a.mode||0===d.length?(0,t.jsx)("li",{children:(0,t.jsxs)(N.default,{href:"/categories/".concat(a.slug),onClick:i,className:"flex items-center text-sm font-medium text-body hover:text-accent",children:[h,a.badge&&(0,t.jsx)(R,{badge:a.badge})]})},a.slug):(0,t.jsxs)("li",{className:(0,C.cn)(!r&&"[&:not(:first-child)]:mt-3.5"),children:[(0,t.jsxs)(N.default,{href:"/categories/".concat(a.slug),onClick:i,className:"mb-2 flex items-center font-display text-[11px] font-bold uppercase tracking-wide text-accent hover:underline",children:[r&&null!=(c=a.allLabel)?c:h,a.badge&&(0,t.jsx)(R,{badge:a.badge})]}),(0,t.jsx)("ul",{className:"flex flex-col gap-1.5",children:d.map(e=>(0,t.jsx)("li",{children:(0,t.jsx)(N.default,{href:"/categories/".concat(e.slug),onClick:i,className:"text-[13px] text-body hover:text-accent",children:e.name})},e.id))})]},a.slug)})(a,r))})]},a.heading)})}),(0,t.jsxs)("div",{className:"flex flex-col gap-4 border-l border-border-soft pl-6",children:[(0,t.jsxs)(N.default,{href:"/promotions",onClick:i,className:"group block rounded-sharp border border-border bg-surface-2 p-3 transition-colors hover:border-green",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5 text-[10px] font-bold uppercase tracking-wider text-green",children:[(0,t.jsx)(m.Zap,{className:"size-3.5 fill-green"})," FLASH SALE"]}),(0,t.jsx)("p",{className:"mt-1 font-display text-base font-extrabold uppercase tracking-wide text-heading",children:"GIẢM ĐẾN 15%"}),(0,t.jsx)("p",{className:"text-[11px] text-muted",children:"VGA RTX 50 • PC Gaming • Gear"}),(0,t.jsx)("span",{className:"mt-2.5 inline-flex items-center justify-center rounded-sharp bg-green px-2.5 py-1 text-[10px] font-bold uppercase text-black transition-transform group-hover:scale-105",children:"SĂN DEAL ›"})]}),(0,t.jsxs)(N.default,{href:"/build-pc",onClick:i,className:"group block rounded-sharp border border-border bg-surface-2 p-3 transition-colors hover:border-accent",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5 text-[10px] font-bold uppercase tracking-wider text-accent",children:[(0,t.jsx)(l.Cpu,{className:"size-3.5"})," SMART BUILDER"]}),(0,t.jsx)("p",{className:"mt-1 font-display text-base font-extrabold uppercase tracking-wide text-heading",children:"TỰ RÁP CẤU HÌNH"}),(0,t.jsx)("p",{className:"text-[11px] text-muted",children:"Kiểm tra tương thích realtime"})]}),(0,t.jsxs)("div",{className:"mt-2 flex flex-col gap-2.5 text-xs font-semibold text-body",children:[(0,t.jsxs)(N.default,{href:"/installment",onClick:i,className:"flex items-center gap-2 hover:text-accent",children:[(0,t.jsx)(P,{className:"size-3.5 text-muted"})," Trả góp 0%"]}),(0,t.jsxs)(N.default,{href:"/trade-in",onClick:i,className:"flex items-center gap-2 hover:text-accent",children:[(0,t.jsx)(L.RefreshCw,{className:"size-3.5 text-muted"})," Thu cũ đổi mới"]}),(0,t.jsxs)(N.default,{href:"/warranty",onClick:i,className:"flex items-center gap-2 hover:text-accent",children:[(0,t.jsx)(d.ShieldCheck,{className:"size-3.5 text-muted"})," Bảo hành tận nơi"]}),(0,t.jsxs)(N.default,{href:"/showroom",onClick:i,className:"flex items-center gap-2 hover:text-accent",children:[(0,t.jsx)(S.MapPin,{className:"size-3.5 text-muted"})," Hệ thống showroom"]})]})]})]})})}let b=(null!=(r=null==x?void 0:x.children)?r:[]).filter(e=>e.visible),y=Array.from(new Set(p.map(e=>e.brand).filter(e=>!!e))).slice(0,8),k=p.slice(0,2),v=f.length>0?f:y.length>0?[{label:"Thương hiệu",filterKey:"brand",specLabel:null,unit:null,options:y.map(e=>({label:e,value:e}))}]:[];return(0,t.jsx)("div",{className:"absolute inset-x-0 top-full z-40 border-t border-border bg-surface shadow-pop animate-tp-fade",children:(0,t.jsxs)("div",{className:"mx-auto flex max-w-[1440px] gap-8 px-6 py-6",children:[(0,t.jsxs)("div",{className:"w-48 shrink-0",children:[(0,t.jsx)("p",{className:"mb-3 font-display text-[11px] font-bold uppercase tracking-wide text-accent",children:null!=(n=null==x?void 0:x.name)?n:s}),(0,t.jsxs)("ul",{className:"flex flex-col gap-2",children:[(0,t.jsx)("li",{children:(0,t.jsx)(N.default,{href:"/categories/".concat(s),onClick:i,className:"text-sm font-semibold text-body hover:text-accent",children:"Xem tất cả"})}),b.map(e=>(0,t.jsx)("li",{children:(0,t.jsx)(N.default,{href:"/categories/".concat(e.slug),onClick:i,className:"text-sm text-body hover:text-accent",children:e.name})},e.id))]})]}),(0,t.jsx)("div",{className:"flex flex-1 flex-wrap gap-x-8 gap-y-5",children:v.map(e=>(0,t.jsxs)("div",{className:"min-w-[130px] max-w-[180px]",children:[(0,t.jsx)("p",{className:"mb-3 font-display text-[11px] font-bold uppercase tracking-wide text-accent",children:e.label}),(0,t.jsx)("ul",{className:"flex flex-col gap-2",children:e.options.map(a=>(0,t.jsx)("li",{children:(0,t.jsx)(N.default,{href:function(e,t,a){let r=T[t]||e;if("brand"===t||t.startsWith("brand_")||t.endsWith("_brand"))return"/categories/".concat(r,"?brand=").concat(encodeURIComponent(a));if("price_range"===t){let e=a.split("-"),t=e[0],n=e[1],l="/categories/".concat(r,"?");return t&&"0"!==t&&(l+="min_price=".concat(encodeURIComponent(t),"&")),n&&"999000000"!==n&&(l+="max_price=".concat(encodeURIComponent(n))),l.replace(/[&?]$/,"")}return"cpu_series"===t||"cpu_intel"===t||"cpu_amd"===t?"/categories/".concat(r,"?spec[cpu]=").concat(encodeURIComponent(a)):"gpu"===t||"vga"===t?"/categories/".concat(r,"?spec[vga]=").concat(encodeURIComponent(a)):"/categories/".concat(r,"?").concat(encodeURIComponent("spec[".concat(t,"]")),"=").concat(encodeURIComponent(a))}(s,e.filterKey,a.value),onClick:i,className:"text-sm text-body hover:text-accent",children:a.label})},a.value))})]},e.filterKey))}),(0,t.jsx)("div",{className:"grid w-64 shrink-0 grid-cols-1 gap-4",children:k.map(e=>(0,t.jsx)(M.ProductCard,{product:e,variant:"mini"},e.id))})]})})}var A=e.i(38968),B=e.i(55642),D=e.i(37698),U=e.i(32036);
1let K=["RTX 5090","PC Gaming","Laptop Gaming","Màn hình OLED","Bàn phím cơ"];function I(e){let{className:a}=e,r=(0,B.useRouter)(),[n,l]=(0,j.useState)(""),[s,i]=(0,j.useState)(!1),[c,o]=(0,j.useState)([]);(0,j.useEffect)(()=>{if(!n.trim())return void o([]);let e=!1;return w.catalogService.search(n,5).then(t=>{e||o(t)}).catch(()=>{e||o([])}),()=>{e=!0}},[n]);let d=s&&(n.trim().length>0||K.length>0);function h(e){let t=e.trim();t&&(i(!1),r.push("/search?q=".concat(encodeURIComponent(t))))}return(0,t.jsxs)("div",{className:(0,C.cn)("relative w-full",a),children:[(0,t.jsxs)("form",{onSubmit:e=>{e.preventDefault(),h(n)},className:"flex h-10 items-center gap-2 rounded-sharp border border-border bg-input px-3 transition-all duration-150 ease-out focus-within:border-accent focus-within:shadow-tron",children:[(0,t.jsx)(D.Search,{className:"size-4 shrink-0 text-muted","aria-hidden":!0}),(0,t.jsx)("input",{type:"search",value:n,onChange:e=>l(e.target.value),onFocus:()=>i(!0),onBlur:()=>window.setTimeout(()=>i(!1),150),placeholder:"Tìm sản phẩm, thương hiệu…",className:"h-full w-full bg-transparent text-sm text-body outline-none placeholder:text-muted","aria-label":"Tìm kiếm sản phẩm"})]}),d&&(0,t.jsxs)("div",{className:"absolute left-0 right-0 top-full z-40 mt-2 overflow-hidden rounded border border-border bg-surface shadow-pop",children:[c.length>0?(0,t.jsx)("ul",{children:c.map(e=>{var a;return(0,t.jsx)("li",{children:(0,t.jsxs)(N.default,{href:"/products/".concat(e.slug),className:"flex items-center gap-3 px-3 py-2.5 hover:bg-surface-2",children:[(0,t.jsx)("div",{className:"relative size-10 shrink-0 overflow-hidden rounded-sharp bg-surface-2",children:(null==(a=e.images[0])?void 0:a.url)&&(0,t.jsx)(A.default,{src:e.images[0].url,alt:e.name,fill:!0,sizes:"40px",className:"object-contain p-1"})}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("p",{className:"truncate text-sm text-body",children:e.name}),(0,t.jsx)("p",{className:"tnum text-xs text-accent",children:(0,U.fmtVND)(e.price)})]})]})},e.id)})}):n.trim()?(0,t.jsxs)("p",{className:"px-3 py-3 text-sm text-muted",children:["Không tìm thấy kết quả cho “",n,"”."]}):(0,t.jsxs)("div",{className:"px-3 py-3",children:[(0,t.jsx)("p",{className:"mb-2 text-[11px] font-semibold uppercase tracking-wide text-muted",children:"Từ khoá phổ biến"}),(0,t.jsx)("div",{className:"flex flex-wrap gap-2",children:K.map(e=>(0,t.jsx)("button",{type:"button",onMouseDown:()=>h(e),className:"rounded-sharp border border-border px-2.5 py-1 text-xs text-body hover:border-accent hover:text-accent",children:e},e))})]}),c.length>0&&(0,t.jsxs)("button",{type:"button",onMouseDown:()=>h(n),className:"block w-full border-t border-border px-3 py-2.5 text-center text-xs font-semibold uppercase tracking-wide text-accent hover:bg-surface-2",children:["Xem tất cả kết quả cho “",n,"”"]})]})]})}function E(e){let{variant:i="default"}=e,j=(0,r.useTranslations)("Header"),N=(0,f.useCartStore)(f.selectCartCount),w=(0,y.useWishlistStore)(e=>e.ids.length),C=(0,g.useAuthStore)(e=>e.user),M=(0,b.useUiStore)(e=>e.openNav),P=(0,b.useUiStore)(e=>e.setOpenNav),L=(0,b.useUiStore)(e=>e.setMiniCartOpen);return(0,t.jsxs)("header",{className:"sticky top-0 z-30 border-b border-border bg-page/95 backdrop-blur",children:[(0,t.jsx)("div",{className:"hidden border-b border-border-soft md:block",children:(0,t.jsxs)("div",{className:"mx-auto flex max-w-[1440px] items-center justify-between px-6 py-2 text-[11.5px] tracking-wide text-muted",children:[(0,t.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,t.jsx)(o.Phone,{className:"size-3.5 text-accent","aria-hidden":!0})," ",j("hotline")," ",(0,t.jsx)("a",{href:"tel:0789709799",className:"hover:text-accent transition-colors",children:"0789 709 799"})]}),(0,t.jsxs)("div",{className:"flex items-center gap-5.5",children:[(0,t.jsx)(a.Link,{href:"/showroom",className:"hover:text-accent",children:j("showroom")}),(0,t.jsxs)(a.Link,{href:"/track-order",className:"flex items-center gap-1.5 hover:text-accent",children:[(0,t.jsx)(u.Truck,{className:"size-3.5","aria-hidden":!0})," ",j("trackOrder")]}),(0,t.jsxs)(a.Link,{href:"/warranty-lookup",className:"flex items-center gap-1.5 hover:text-accent",children:[(0,t.jsx)(d.ShieldCheck,{className:"size-3.5","aria-hidden":!0})," ",j("warrantyLookup")]}),C?(0,t.jsx)("span",{className:"flex items-center gap-2",children:(0,t.jsx)(a.Link,{href:"/account",className:"hover:text-accent",children:j("welcome",{name:C.name})})}):(0,t.jsx)(a.Link,{href:"/account/login",className:"font-semibold text-accent hover:[text-shadow:0_0_8px_var(--accent-line)]",children:j("loginRegister")}),(0,t.jsx)("span",{className:"text-muted/70",children:"VN ▾"})]})]})}),(0,t.jsxs)("div",{className:"mx-auto flex max-w-[1440px] items-center gap-6 px-6 py-4",children:[(0,t.jsxs)(a.Link,{href:"/",className:"shrink-0 font-display text-2xl font-bold uppercase tracking-widest text-heading",children:["TP",(0,t.jsx)("span",{className:"text-accent",children:"·"}),"LAB"]}),(0,t.jsx)(I,{className:"max-w-[620px] flex-1"}),(0,t.jsx)(a.Link,{href:"/build-pc",className:"hidden shrink-0 lg:inline-flex",children:(0,t.jsx)(k.Button,{variant:"primary",size:"sm",iconLeft:l.Cpu,children:j("buildPc")})}),(0,t.jsxs)("div",{className:"flex shrink-0 items-center gap-2",children:[(0,t.jsx)(a.Link,{href:"/account",children:(0,t.jsx)(v.IconButton,{icon:p.User,"aria-label":j("account"),size:"lg"})}),(0,t.jsx)(a.Link,{href:"/account?tab=wishlist",children:(0,t.jsx)(v.IconButton,{icon:s.Heart,"aria-label":j("wishlist"),size:"lg",badge:w||void 0})}),(0,t.jsx)(v.IconButton,{icon:h.ShoppingCart,"aria-label":j("cart"),size:"lg",badge:N||void 0,onClick:()=>L(!0)})]})]}),"default"===i&&(0,t.jsxs)("nav",{className:"relative hidden border-t border-border-soft md:block",onMouseLeave:()=>P(null),children:[(0,t.jsxs)("div",{className:"mx-auto flex max-w-[1440px] items-center gap-6.5 px-6 font-display text-[13px] font-semibold uppercase tracking-wide text-body",children:[(0,t.jsxs)("button",{type:"button",onMouseEnter:()=>P("all"),className:"flex items-center gap-1.5 py-3 text-body hover:text-accent",children:[(0,t.jsx)(c,{className:"size-4","aria-hidden":!0})," ",j("categories"),(0,t.jsx)(n.ChevronDown,{className:"size-3.5","aria-hidden":!0})]}),x.map(e=>(0,t.jsx)("div",{onMouseEnter:()=>P(e.key),className:"flex items-center",children:(0,t.jsx)(a.Link,{href:e.href,className:M===e.key?"py-3 text-accent":"py-3 hover:text-accent",children:j("nav.".concat(e.key))})},e.key)),(0,t.jsx)(a.Link,{href:"/tech-news",className:"py-3 hover:text-accent",onMouseEnter:()=>P(null),children:j("techNews")}),(0,t.jsxs)(a.Link,{href:"/promotions",className:"ml-auto flex items-center gap-1.5 py-3 text-green hover:[text-shadow:0_0_8px_rgba(117,255,0,0.5)]",onMouseEnter:()=>P(null),children:[(0,t.jsx)(m.Zap,{className:"size-4","aria-hidden":!0})," ",j("flashSale")]})]}),(0,t.jsx)(H,{categoryKey:M,onNavigate:()=>P(null)})]})]})}}]);

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.