1import{r as g,j as e}from"./vendor-react-DY70i_w5.js";import{c as v,t as y,h as p,i as k,L as x,A as w,j,S as C,Z as A,k as h}from"./index-CLHH4l98.js";import{S as i,B as S}from"./skeleton-PQaDF7Ln.js";import{I as L}from"./input-Cz0hGy6D.js";import{S as u}from"./star-UcfEUxfI.js";import"./vendor-trpc-mfBlu3Ix.js";import"./vendor-radix-D9cCyuPm.js";import"./useComposition-DHFKFSxt.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 P=v("SlidersHorizontal",[["line",{x1:"21",x2:"14",y1:"4",y2:"4",key:"obuewd"}],["line",{x1:"10",x2:"3",y1:"4",y2:"4",key:"1q6298"}],["line",{x1:"21",x2:"12",y1:"12",y2:"12",key:"1iu8h1"}],["line",{x1:"8",x2:"3",y1:"12",y2:"12",key:"ntss68"}],["line",{x1:"21",x2:"16",y1:"20",y2:"20",key:"14d8ph"}],["line",{x1:"12",x2:"3",y1:"20",y2:"20",key:"m0wm8r"}],["line",{x1:"14",x2:"14",y1:"2",y2:"6",key:"14e1ph"}],["line",{x1:"8",x2:"8",y1:"10",y2:"14",key:"1i6ji0"}],["line",{x1:"16",x2:"16",y1:"18",y2:"22",key:"1lctlv"}]]),m=["dell-latitude-5490-intel-core-i5-8th-gen-8gb-ram-256gb-ssd-14-refurbished","aoc-27g2sp-27-hdmi-dp-1920-x-1080","am-series-am-10-51-2v-7-6kw-10kwh-lithium-wall-mount"],R={"dell-latitude-5490-intel-core-i5-8th-gen-8gb-ram-256gb-ssd-14-refurbished":{badge:"Best Value Laptop",tagline:"Refurbished Dell i5 â business-grade performance at a fraction of the cost. Ideal for remote work and field teams.",icon:u},"aoc-27g2sp-27-hdmi-dp-1920-x-1080":{badge:"Top Display Pick",tagline:'27" Full HD IPS with DP & HDMI â crisp visuals for productivity, presentations, and dual-screen setups.',icon:A},"am-series-am-10-51-2v-7-6kw-10kwh-lithium-wall-mount":{badge:"Power Resilience",tagline:"10kWh wall-mount lithium battery â keep your business running through load-shedding without compromise.",icon:C}};function T({product:s}){const{addItem:d,loading:t}=j(),l=s.variants[0],c=s.images[0],n=l?.availableForSale??!1,o=R[s.handle],a=o?.icon??u;return e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:46",className:"relative glass-card group overflow-hidden border-gekko-green/20 hover:border-gekko-green/50 transition-all duration-300 flex flex-col",children:[e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:48",className:"absolute top-3 right-3 z-10",children:e.jsxs("span",{"data-loc":"client/src/pages/Shop.tsx:49",className:"flex items-center gap-1 px-2.5 py-1 rounded-full bg-gekko-green text-black text-xs font-bold shadow-lg",children:[e.jsx(a,{"data-loc":"client/src/pages/Shop.tsx:50",className:"w-3 h-3"}),o?.badge??"Featured"]})}),e.jsx(x,{"data-loc":"client/src/pages/Shop.tsx:56",href:`/shop/${s.handle}`,children:e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:57",className:"relative h-56 bg-secondary overflow-hidden",children:c?e.jsx("img",{"data-loc":"client/src/pages/Shop.tsx:59",src:c.url,alt:c.altText??s.title,className:"h-full w-full object-cover group-hover:scale-105 transition-transform duration-500"}):e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:65",className:"h-full w-full flex items-center justify-center text-muted-foreground",children:e.jsx(p,{"data-loc":"client/src/pages/Shop.tsx:66",className:"h-12 w-12 opacity-30"})})})}),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:73",className:"p-5 flex flex-col flex-1",children:[e.jsx(x,{"data-loc":"client/src/pages/Shop.tsx:74",href:`/shop/${s.handle}`,children:e.jsx("h3",{"data-loc":"client/src/pages/Shop.tsx:75",className:"font-bold text-foreground group-hover:text-gekko-green transition-colors line-clamp-2 leading-snug",children:s.title})}),o?.tagline&&e.jsx("p",{"data-loc":"client/src/pages/Shop.tsx:80",className:"text-sm text-muted-foreground mt-2 leading-relaxed flex-1",children:o.tagline}),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:82",className:"flex items-center justify-between mt-4 gap-3",children:[e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:83",children:[e.jsx("p",{"data-loc":"client/src/pages/Shop.tsx:84",className:"text-xl font-bold text-gekko-green",children:h(s.priceRange.min)}),s.priceRange.min.amount!==s.priceRange.max.amount&&e.jsxs("p",{"data-loc":"client/src/pages/Sh
6op.tsx:88",className:"text-xs text-muted-foreground",children:["to ",h(s.priceRange.max)]})]}),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:91",className:"flex gap-2",children:[e.jsx(x,{"data-loc":"client/src/pages/Shop.tsx:92",href:`/shop/${s.handle}`,children:e.jsx("button",{"data-loc":"client/src/pages/Shop.tsx:93",className:"cta-button-secondary text-sm px-4 py-2",children:"View"})}),e.jsx("button",{"data-loc":"client/src/pages/Shop.tsx:95",onClick:()=>l&&d(l.id,1),disabled:!n||t||!l,className:"cta-button text-sm px-4 py-2 disabled:opacity-50 disabled:cursor-not-allowed",children:e.jsx(p,{"data-loc":"client/src/pages/Shop.tsx:100",className:"h-4 w-4"})})]})]})]})]})}const E=["All","Laptops","Computer Monitor","Power Solutions","Solar Panels","Components","Wireless Routers","Accessories","Storage","Printer","Projector","VoIP Phones","Audio","Bag","Scanner"],I=["battery","hybrid inverter","inverter","ups"];function F({product:s}){const{addItem:d,loading:t}=j(),l=s.variants[0],c=s.images[0],n=l?.availableForSale??!1;return e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:138",className:"glass-card group overflow-hidden hover:border-gekko-green/30 transition-all duration-300",children:[e.jsx(x,{"data-loc":"client/src/pages/Shop.tsx:140",href:`/shop/${s.handle}`,children:e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:141",className:"relative h-52 bg-secondary overflow-hidden",children:[c?e.jsx("img",{"data-loc":"client/src/pages/Shop.tsx:143",src:c.url,alt:c.altText??s.title,className:"h-full w-full object-cover group-hover:scale-105 transition-transform duration-500"}):e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:149",className:"h-full w-full flex items-center justify-center text-muted-foreground",children:e.jsx(p,{"data-loc":"client/src/pages/Shop.tsx:150",className:"h-12 w-12 opacity-30"})}),!n&&e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:154",className:"absolute inset-0 bg-black/50 flex items-center justify-center",children:e.jsx(S,{"data-loc":"client/src/pages/Shop.tsx:155",variant:"secondary",children:"Out of Stock"})}),s.productType&&e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:159",className:"absolute top-3 left-3",children:e.jsx(S,{"data-loc":"client/src/pages/Shop.tsx:160",className:"bg-gekko-green/90 text-black text-xs font-semibold",children:s.productType})})]})}),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:169",className:"p-5",children:[e.jsx(x,{"data-loc":"client/src/pages/Shop.tsx:170",href:`/shop/${s.handle}`,children:e.jsx("h3",{"data-loc":"client/src/pages/Shop.tsx:171",className:"font-semibold text-foreground group-hover:text-gekko-green transition-colors line-clamp-2 leading-snug",children:s.title})}),s.vendor&&e.jsx("p",{"data-loc":"client/src/pages/Shop.tsx:176",className:"text-xs text-muted-foreground mt-1",children:s.vendor}),e.jsx("p",{"data-loc":"client/src/pages/Shop.tsx:178",className:"text-sm text-muted-foreground mt-2 line-clamp-2 leading-relaxed",children:s.description}),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:182",className:"flex items-center justify-between mt-4 gap-3",children:[e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:183",children:[e.jsx("p",{"data-loc":"client/src/pages/Shop.tsx:184",className:"text-lg font-bold text-gekko-green",children:h(s.priceRange.min)}),s.priceRange.min.amount!==s.priceRange.max.amount&&e.jsxs("p",{"data-loc":"client/src/pages/Shop.tsx:188",className:"text-xs text-muted-foreground",children:["to ",h(s.priceRange.max)]})]}),e.jsx("button",{"data-loc":"client/src/pages/Shop.tsx:193",onClick:()=>l&&d(l.id,1),disabled:!n||t||!l,className:"cta-button text-sm px-4 py-2 disabled:opacity-50 disabled:cursor-not-allowed",children:n?e.jsxs(e.Fragment,{children:[e.jsx(p,{"data-loc":"client/src/pages/Shop.tsx:200",className:"h-4 w-4 mr-1.5"}),"Add"]}):"Unavailable"})]})]})]})}function f(){return e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:215",className:"glass-card overflow-hidden",children:[e.jsx(i,{"data-loc":"client/src/pages/Shop.tsx:216",className:"h-52 w-full rounded-none"}
6),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:217",className:"p-5 space-y-3",children:[e.jsx(i,{"data-loc":"client/src/pages/Shop.tsx:218",className:"h-5 w-3/4"}),e.jsx(i,{"data-loc":"client/src/pages/Shop.tsx:219",className:"h-4 w-1/3"}),e.jsx(i,{"data-loc":"client/src/pages/Shop.tsx:220",className:"h-4 w-full"}),e.jsx(i,{"data-loc":"client/src/pages/Shop.tsx:221",className:"h-4 w-2/3"}),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:222",className:"flex justify-between items-center pt-2",children:[e.jsx(i,{"data-loc":"client/src/pages/Shop.tsx:223",className:"h-6 w-24"}),e.jsx(i,{"data-loc":"client/src/pages/Shop.tsx:224",className:"h-9 w-20"})]})]})]})}function G(){const[s,d]=g.useState("All"),[t,l]=g.useState(""),{data:c=[],isLoading:n}=y.commerce.products.list.useQuery({first:250}),o=g.useMemo(()=>c.filter(a=>{const r=(a.productType??"").toLowerCase(),b=s==="All"||(s==="Power Solutions"?I.includes(r):r===s.toLowerCase()),N=!t||a.title.toLowerCase().includes(t.toLowerCase())||a.description.toLowerCase().includes(t.toLowerCase())||(a.vendor??"").toLowerCase().includes(t.toLowerCase())||r.includes(t.toLowerCase());return b&&N}),[c,s,t]);return e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:256",className:"pt-20",children:[e.jsx("section",{"data-loc":"client/src/pages/Shop.tsx:258",className:"section-padding bg-gradient-to-b from-gekko-darker to-background",children:e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:259",className:"container",children:e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:260",className:"max-w-3xl",children:[e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:261",className:"inline-flex items-center gap-2 px-3 py-1.5 rounded-full bg-gekko-green/10 border border-gekko-green/20 text-gekko-green text-sm font-medium mb-6",children:[e.jsx(p,{"data-loc":"client/src/pages/Shop.tsx:262",className:"h-4 w-4"}),"GekkoTech Online Store"]}),e.jsxs("h1",{"data-loc":"client/src/pages/Shop.tsx:265",className:"text-4xl md:text-5xl font-bold mb-6",children:[e.jsx("span",{"data-loc":"client/src/pages/Shop.tsx:266",className:"gradient-text",children:"Shop"})," Business Hardware"]}),e.jsx("p",{"data-loc":"client/src/pages/Shop.tsx:268",className:"text-xl text-muted-foreground leading-relaxed",children:"Business-grade laptops, networking, displays, power solutions, and accessories â all backed by GekkoTech support and competitive pricing."})]})})}),e.jsx("section",{"data-loc":"client/src/pages/Shop.tsx:276",className:"sticky top-16 md:top-20 z-30 bg-background/95 backdrop-blur-md border-b border-border/30",children:e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:277",className:"container py-4",children:e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:278",className:"flex flex-col sm:flex-row gap-3 items-start sm:items-center",children:[e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:280",className:"relative flex-1 max-w-sm",children:[e.jsx(k,{"data-loc":"client/src/pages/Shop.tsx:281",className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),e.jsx(L,{"data-loc":"client/src/pages/Shop.tsx:282",placeholder:"Search products...",value:t,onChange:a=>l(a.target.value),className:"pl-9 bg-secondary border-border/50 focus:border-gekko-green/50"})]}),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:291",className:"flex items-center gap-1.5 overflow-x-auto pb-1 scrollbar-none flex-1",children:[e.jsx(P,{"data-loc":"client/src/pages/Shop.tsx:292",className:"h-4 w-4 text-muted-foreground shrink-0"}),E.map(a=>e.jsx("button",{"data-loc":"client/src/pages/Shop.tsx:294",onClick:()=>d(a),className:`px-3 py-1.5 rounded-full text-xs font-medium transition-all duration-200 whitespace-nowrap shrink-0 ${s===a?"bg-gekko-green text-black":"bg-secondary text-muted-foreground hover:text-foreground hover:bg-secondary/80"}`,children:a},a))]})]})})}),s==="All"&&!t&&e.jsx("section",{"data-loc":"client/src/pages/Shop.tsx:313",className:"py-10 border-b border-border/30",children:e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:314",className:"container",children:[e.jsxs("div",{"data-loc":"client/src/pages/Sh
6op.tsx:315",className:"flex items-center gap-3 mb-6",children:[e.jsx(u,{"data-loc":"client/src/pages/Shop.tsx:316",className:"w-5 h-5 text-gekko-green"}),e.jsx("h2",{"data-loc":"client/src/pages/Shop.tsx:317",className:"text-lg font-bold",children:"Featured Products"}),e.jsx("span",{"data-loc":"client/src/pages/Shop.tsx:318",className:"text-xs text-muted-foreground",children:"Hand-picked for business value"})]}),e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:320",className:"grid grid-cols-1 md:grid-cols-3 gap-6",children:n?Array.from({length:3}).map((a,r)=>e.jsx(f,{"data-loc":"client/src/pages/Shop.tsx:322"},r)):c.filter(a=>m.includes(a.handle)).sort((a,r)=>m.indexOf(a.handle)-m.indexOf(r.handle)).map(a=>e.jsx(T,{"data-loc":"client/src/pages/Shop.tsx:326",product:a},a.id))})]})}),e.jsx("section",{"data-loc":"client/src/pages/Shop.tsx:334",className:"section-padding",children:e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:335",className:"container",children:n?e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:337",className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-6",children:Array.from({length:4}).map((a,r)=>e.jsx(f,{"data-loc":"client/src/pages/Shop.tsx:339"},r))}):o.length===0?e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:343",className:"text-center py-24",children:[e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:344",className:"h-16 w-16 rounded-full bg-secondary flex items-center justify-center mx-auto mb-4",children:e.jsx(p,{"data-loc":"client/src/pages/Shop.tsx:345",className:"h-8 w-8 text-muted-foreground"})}),e.jsx("h3",{"data-loc":"client/src/pages/Shop.tsx:347",className:"text-lg font-semibold mb-2",children:"No products found"}),e.jsx("p",{"data-loc":"client/src/pages/Shop.tsx:348",className:"text-muted-foreground mb-6",children:t?`No results for "${t}"`:`No products in the "${s}" category yet.`}),e.jsx("button",{"data-loc":"client/src/pages/Shop.tsx:353",onClick:()=>{d("All"),l("")},className:"cta-button-secondary text-sm",children:"Clear Filters"})]}):e.jsxs(e.Fragment,{children:[e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:362",className:"flex items-center justify-between mb-6",children:e.jsxs("p",{"data-loc":"client/src/pages/Shop.tsx:363",className:"text-sm text-muted-foreground",children:[o.length," product",o.length!==1?"s":"",s!=="All"?` in ${s}`:""]})}),e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:368",className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-6",children:o.map(a=>e.jsx(F,{"data-loc":"client/src/pages/Shop.tsx:370",product:a},a.id))})]})})}),e.jsx("section",{"data-loc":"client/src/pages/Shop.tsx:379",className:"section-padding bg-gekko-darker/30",children:e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:380",className:"container text-center",children:[e.jsx("h2",{"data-loc":"client/src/pages/Shop.tsx:381",className:"text-2xl font-bold mb-4",children:"Need Help Choosing?"}),e.jsx("p",{"data-loc":"client/src/pages/Shop.tsx:382",className:"text-muted-foreground max-w-lg mx-auto mb-6",children:"Our team can recommend the right hardware for your specific requirements and budget."}),e.jsxs(x,{"data-loc":"client/src/pages/Shop.tsx:385",href:"/contact",className:"cta-button text-sm",children:["Get Expert Advice ",e.jsx(w,{"data-loc":"client/src/pages/Shop.tsx:386",className:"ml-2 h-4 w-4"})]})]})})]})}export{G 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.