PageSourceSearch

https://britishboxers.uk/assets/Shop-xOuSvVHf.js

js britishboxers.uk collected 2026-10-09 05:15:37 UTC 17,236 bytes, 11 lines download raw bytes

1import{c as w,r as h,t as j,j as e,l as N,B as m,C,a as P,L as A,E as v}from"./index-CAgTsS9I.js";import{L as B,S as i,H as F}from"./Layout-D_oP4nSj.js";import{I as M}from"./input-B8nvoARq.js";import{B as I}from"./badge-Dfqv_Hz3.js";import{S as L}from"./search-CkMXx1d0.js";import{F as R}from"./filter-BcRaVPdw.js";import{F as T}from"./flame-D1BHbPmC.js";import{S as y}from"./shield-D7osdQuE.js";import{L as E}from"./layers-CjJgXVMN.js";import{S as D}from"./shirt-1kzUxkzy.js";import{D as z}from"./dumbbell--rGGwSez.js";import"./settings-Dqu1Zn_r.js";import"./check-DXYeM_Sd.js";import"./trash-2-B8kvyBWw.js";import"./mail-SHgAPKVI.js";import"./dialog-70VskD_D.js";import"./index-CSdx2VRY.js";import"./user-Bzsp7ULD.js";import"./arrow-left-BuPJNO5W.js";import"./camera-DxANKcNo.js";import"./shield-check-BgNs-s5f.js";import"./house-CVZTxZpZ.js";import"./useComposition-EK3NmjJ_.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 $=w("Baby",[["path",{d:"M9 12h.01",key:"157uk2"}],["path",{d:"M15 12h.01",key:"1k8ypt"}],["path",{d:"M10 16c.5.3 1.2.5 2 .5s1.5-.2 2-.5",key:"1u7htd"}],["path",{d:"M19 6.3a9 9 0 0 1 1.8 3.9 2 2 0 0 1 0 3.6 9 9 0 0 1-17.6 0 2 2 0 0 1 0-3.6A9 9 0 0 1 12 3c2 0 3.5 1.1 3.5 2.5s-.9 2.5-2 2.5c-.8 0-1.5-.4-1.5-1",key:"5yv0yz"}]]);/**
7 * @license lucide-react v0.453.0 - ISC
8 *
9 * This source code is licensed under the ISC license.
10 * See the LICENSE file in the root directory of this source tree.
11 */const X=w("Tag",[["path",{d:"M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z",key:"vktsd0"}],["circle",{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor",key:"kqv944"}]]),_={"🥊":e.jsx(P,{"data-loc":"client/src/pages/Shop.tsx:16",className:"w-5 h-5"}),"🤼":e.jsx(y,{"data-loc":"client/src/pages/Shop.tsx:17",className:"w-5 h-5"}),"💪":e.jsx(z,{"data-loc":"client/src/pages/Shop.tsx:18",className:"w-5 h-5"}),"🧘":e.jsx(F,{"data-loc":"client/src/pages/Shop.tsx:19",className:"w-5 h-5"}),"👕":e.jsx(D,{"data-loc":"client/src/pages/Shop.tsx:20",className:"w-5 h-5"}),"🧒":e.jsx($,{"data-loc":"client/src/pages/Shop.tsx:21",className:"w-5 h-5"}),"🏋️":e.jsx(E,{"data-loc":"client/src/pages/Shop.tsx:22",className:"w-5 h-5"})},u=24;function pe(){const[t,n]=h.useState(""),[l,p]=h.useState(void 0),[a,r]=h.useState(0),{data:g}=j.shop.categories.useQuery(),{data:b,isLoading:f}=j.shop.products.useQuery({categoryId:l,search:t||void 0,limit:1e3}),x=h.useMemo(()=>b??[],[b]),o=Math.ceil(x.length/u),k=x.slice(a*u,(a+1)*u),S=g?.find(s=>s.id===l)?.name;return e.jsxs(B,{"data-loc":"client/src/pages/Shop.tsx:47",children:[e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:49",className:"relative w-full overflow-hidden bg-black min-h-[300px]",children:[e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:50",className:"absolute inset-0 pointer-events-none",children:[e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:51",className:"absolute top-0 left-0 w-[600px] h-[600px] bg-boxing-red/8 rounded-full blur-[200px]"}),e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:52",className:"absolute bottom-0 right-0 w-[500px] h-[500px] bg-blue-600/5 rounded-full blur-[180px]"}),e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:53",className:"absolute inset-0",style:{backgroundImage:"radial-gradient(rgba(255,255,255,0.015) 1px, transparent 1px)",backgroundSize:"40px 40px"}})]}),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:56",className:"relative z-10 w-full px-4 sm:px-6 md:px-10 lg:px-16 py-10 md:py-14",children:[e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:58",className:"flex flex-wrap gap-4 md:gap-6 mb-8",children:[e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:59",className:"flex items-center gap-3 bg-card/40 border border-border rounded-xl px-4 py-2.5 backdrop-blur-sm",children:[e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:60",className:"w-9 h-9 rounded-lg bg-boxing-red/20 flex items-center justify-center",children:e.jsx(i,{"data-loc":"client/src/pages/Sh
11op.tsx:61",className:"h-4 w-4 text-boxing-red"})}),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:63",children:[e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:64",className:"text-xl font-heading text-foreground",children:x.length}),e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:65",className:"text-[10px] text-muted-foreground uppercase tracking-wider",children:"Products"})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:68",className:"flex items-center gap-3 bg-card/40 border border-border rounded-xl px-4 py-2.5 backdrop-blur-sm",children:[e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:69",className:"w-9 h-9 rounded-lg bg-blue-600/20 flex items-center justify-center",children:e.jsx(X,{"data-loc":"client/src/pages/Shop.tsx:70",className:"h-4 w-4 text-blue-400"})}),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:72",children:[e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:73",className:"text-xl font-heading text-foreground",children:g?.length??0}),e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:74",className:"text-[10px] text-muted-foreground uppercase tracking-wider",children:"Categories"})]})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:80",className:"flex flex-col lg:flex-row lg:items-end lg:justify-between gap-6",children:[e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:81",children:[e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:82",className:"inline-flex items-center gap-2 px-4 py-1.5 rounded-full bg-boxing-red/10 border border-boxing-red/20 text-boxing-red text-xs font-bold tracking-wider uppercase mb-4",children:[e.jsx(i,{"data-loc":"client/src/pages/Shop.tsx:83",className:"w-3.5 h-3.5"})," OFFICIAL AFFILIATE PARTNER"]}),e.jsxs("h1",{"data-loc":"client/src/pages/Shop.tsx:85",className:"text-3xl md:text-4xl lg:text-5xl font-heading font-black text-white leading-[0.95] tracking-tight",children:["RDX SPORTS",e.jsx("br",{"data-loc":"client/src/pages/Shop.tsx:86"}),e.jsx("span",{"data-loc":"client/src/pages/Shop.tsx:86",className:"text-boxing-red",children:"EQUIPMENT"})]}),e.jsx("p",{"data-loc":"client/src/pages/Shop.tsx:88",className:"text-muted-foreground mt-3 max-w-lg text-sm",children:"British Boxers is an official affiliate partner of RDX Sports. Browse their full range of boxing, MMA, fitness, and yoga equipment. Click through to purchase directly from RDX."})]}),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:92",className:"w-full lg:w-80 relative",children:[e.jsx(L,{"data-loc":"client/src/pages/Shop.tsx:93",className:"absolute left-3 top-1/2 -translate-y-1/2 w-4 h-4 text-muted-foreground"}),e.jsx(M,{"data-loc":"client/src/pages/Shop.tsx:94",value:t,onChange:s=>{n(s.target.value),r(0)},placeholder:"Search 900+ products...",className:"pl-10 bg-card/50 border-border text-white placeholder:text-muted-foreground h-11 rounded-xl backdrop-blur-sm"})]})]})]})]}),e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:106",className:"w-full bg-[#0a0a0a] min-h-screen min-h-dvh",children:e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:107",className:"w-full px-4 sm:px-6 md:px-10 lg:px-16 py-8",children:[e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:109",className:"mb-8",children:[e.jsxs("h2",{"data-loc":"client/src/pages/Shop.tsx:110",className:"text-xs font-bold text-muted-foreground uppercase tracking-wider mb-3 flex items-center gap-2",children:[e.jsx(R,{"data-loc":"client/src/pages/Shop.tsx:111",className:"w-3.5 h-3.5 text-boxing-red"})," Filter by Category"]}),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:113",className:"flex gap-2 overflow-x-auto pb-2 scrollbar-hide",children:[e.jsxs("button",{"data-loc":"client/src/pages/Shop.tsx:114",onClick:()=>{p(void 0),r(0)},className:`flex items-center gap-2 px-4 py-2.5 rounded-xl border whitespace-nowrap transition-all shrink-0 text-sm font-bold ${l?"bg-card/40 border-border text-muted-foreground hover:text-foreground hover:border-border":"bg-boxing-red/15 border-boxing-red/30 text-boxing-red"}`,children:[e.jsx(i,{"data-loc":"client/src/pages/Shop.tsx:122",className:"w-4 h-4"})," All Products"]}),g?.map(s=>
11e.jsxs("button",{"data-loc":"client/src/pages/Shop.tsx:125",onClick:()=>{p(l===s.id?void 0:s.id),r(0)},className:`flex items-center gap-2 px-4 py-2.5 rounded-xl border whitespace-nowrap transition-all shrink-0 text-sm font-bold ${l===s.id?"bg-boxing-red/10 border-boxing-red/30 text-white":"bg-card/40 border-border text-muted-foreground hover:text-foreground hover:border-border"}`,children:[e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:134",className:`w-7 h-7 rounded-lg flex items-center justify-center ${l===s.id?"bg-boxing-red/20":"bg-white/5"}`,children:_[s.icon||""]||e.jsx(i,{"data-loc":"client/src/pages/Shop.tsx:137",className:"w-4 h-4"})}),s.name]},s.id))]})]}),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:146",className:"flex items-center justify-between mb-6",children:[e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:147",className:"flex items-center gap-3",children:[l&&e.jsxs("button",{"data-loc":"client/src/pages/Shop.tsx:149",onClick:()=>{p(void 0),r(0)},className:"text-xs text-muted-foreground hover:text-foreground flex items-center gap-1",children:[e.jsx(N,{"data-loc":"client/src/pages/Shop.tsx:150",className:"w-3 h-3"})," All"]}),e.jsx("h2",{"data-loc":"client/src/pages/Shop.tsx:153",className:"text-lg font-heading font-bold text-foreground flex items-center gap-2",children:t?e.jsxs(e.Fragment,{children:['Search: "',t,'"']}):S?e.jsx(e.Fragment,{children:S}):e.jsxs(e.Fragment,{children:[e.jsx(T,{"data-loc":"client/src/pages/Shop.tsx:159",className:"w-5 h-5 text-amber-400"})," All Products"]})}),e.jsxs("span",{"data-loc":"client/src/pages/Shop.tsx:162",className:"text-sm text-muted-foreground",children:["(",x.length," items)"]})]}),o>1&&e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:165",className:"flex items-center gap-2 text-sm text-muted-foreground",children:["Page ",a+1," of ",o]})]}),e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:172",className:"grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-5 xl:grid-cols-6 gap-2.5 sm:gap-3",children:k.map(s=>e.jsx(q,{"data-loc":"client/src/pages/Shop.tsx:174",product:s},s.id))}),!f&&x.length===0&&e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:180",className:"text-center py-20",children:[e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:181",className:"w-16 h-16 rounded-2xl bg-card/30 border border-border flex items-center justify-center mx-auto mb-4",children:e.jsx(i,{"data-loc":"client/src/pages/Shop.tsx:182",className:"w-8 h-8 text-muted-foreground"})}),e.jsx("h3",{"data-loc":"client/src/pages/Shop.tsx:184",className:"text-lg font-bold text-foreground mb-2",children:"No products found"}),e.jsx("p",{"data-loc":"client/src/pages/Shop.tsx:185",className:"text-sm text-muted-foreground mb-4",children:"Try a different search or category"}),e.jsx(m,{"data-loc":"client/src/pages/Shop.tsx:186",variant:"outline",className:"border-border text-muted-foreground hover:text-foreground",onClick:()=>{n(""),p(void 0),r(0)},children:"Clear Filters"})]}),f&&e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:198",className:"grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-5 xl:grid-cols-6 gap-2.5 sm:gap-3",children:Array.from({length:12}).map((s,d)=>e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:200",className:"bg-card/30 border border-border rounded-xl overflow-hidden animate-pulse",children:[e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:201",className:"aspect-square bg-card/40"}),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:202",className:"p-3 space-y-2",children:[e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:203",className:"h-3 bg-card/60 rounded w-3/4"}),e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:204",className:"h-3 bg-card/40 rounded w-1/2"})]})]},d))}),o>1&&e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:213",className:"flex items-center justify-center gap-2 mt-10",children:[e.jsxs(m,{"data-loc":"client/src/pages/Shop.tsx:214",variant:"outline",size:"sm",disabled:a===0,onClick:()=>{r(s=>s-1),window.scrollTo({top:0,behavior:"smooth"})},className:"border-border text-muted-foreground",children:[e.jsx(N,{"data-loc":"client/src/pages/Sh
11op.tsx:221",className:"w-4 h-4 mr-1"})," Previous"]}),e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:223",className:"flex gap-1",children:Array.from({length:Math.min(o,7)}).map((s,d)=>{let c;return o<=7||a<3?c=d:a>o-4?c=o-7+d:c=a-3+d,e.jsx("button",{"data-loc":"client/src/pages/Shop.tsx:236",onClick:()=>{r(c),window.scrollTo({top:0,behavior:"smooth"})},className:`w-8 h-8 rounded-lg text-xs font-bold transition-all ${a===c?"bg-boxing-red text-white":"bg-card/40 border border-border text-muted-foreground hover:text-foreground"}`,children:c+1},c)})}),e.jsxs(m,{"data-loc":"client/src/pages/Shop.tsx:250",variant:"outline",size:"sm",disabled:a>=o-1,onClick:()=>{r(s=>s+1),window.scrollTo({top:0,behavior:"smooth"})},className:"border-border text-muted-foreground",children:["Next ",e.jsx(C,{"data-loc":"client/src/pages/Shop.tsx:257",className:"w-4 h-4 ml-1"})]})]}),e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:263",className:"mt-16 pt-8 border-t border-border",children:e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:264",className:"flex items-start gap-4 bg-card/30 border border-border rounded-xl p-5",children:[e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:265",className:"w-10 h-10 rounded-lg bg-blue-600/20 flex items-center justify-center shrink-0 mt-0.5",children:e.jsx(y,{"data-loc":"client/src/pages/Shop.tsx:266",className:"w-5 h-5 text-blue-400"})}),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:268",children:[e.jsx("h3",{"data-loc":"client/src/pages/Shop.tsx:269",className:"text-sm font-bold text-foreground mb-1",children:"Affiliate Partnership Disclosure"}),e.jsx("p",{"data-loc":"client/src/pages/Shop.tsx:270",className:"text-xs text-muted-foreground leading-relaxed",children:"British Boxers is an official affiliate partner of RDX Sports. When you click through and make a purchase on rdxsports.com, we may earn a small commission at no extra cost to you. This helps support British Boxers and allows us to continue providing free boxing content, news, and community features. All products are sold and fulfilled directly by RDX Sports."})]})]})})]})})]})}function q({product:t}){const n=t.originalPrice&&t.originalPrice!==t.price;return e.jsx(A,{"data-loc":"client/src/pages/Shop.tsx:286",href:`/shop/${t.slug}`,children:e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:287",className:"group bg-card/30 border border-border rounded-xl overflow-hidden transition-all cursor-pointer hover:border-boxing-red/30 hover:bg-card/50",children:[e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:289",className:"aspect-square relative overflow-hidden bg-card/30",children:[t.imageUrl?e.jsx("img",{"data-loc":"client/src/pages/Shop.tsx:291",src:t.imageUrl,alt:t.name,loading:"lazy",decoding:"async",className:"w-full h-full object-cover group-hover:scale-105 transition-transform duration-500"}):e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:299",className:"w-full h-full flex items-center justify-center",children:e.jsx(i,{"data-loc":"client/src/pages/Shop.tsx:300",className:"w-8 h-8 text-zinc-700"})}),e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:304",className:"absolute top-1.5 left-1.5 flex flex-col gap-1",children:n&&e.jsx(I,{"data-loc":"client/src/pages/Shop.tsx:306",className:"bg-boxing-red/90 text-white text-[9px] px-1.5 py-0.5 border-none",children:"Sale"})}),e.jsx("div",{"data-loc":"client/src/pages/Shop.tsx:311",className:"absolute top-1.5 right-1.5",children:e.jsx(v,{"data-loc":"client/src/pages/Shop.tsx:312",className:"w-3 h-3 text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity"})})]}),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:317",className:"p-2.5",children:[e.jsx("p",{"data-loc":"client/src/pages/Shop.tsx:318",className:"text-[10px] text-muted-foreground font-bold uppercase mb-0.5 truncate",children:"RDX Sports"}),e.jsx("h3",{"data-loc":"client/src/pages/Shop.tsx:319",className:"text-xs font-bold text-foreground line-clamp-2 mb-1.5 group-hover:text-boxing-red transition-colors leading-snug min-h-[2.25rem]",children:t.name}),e.jsxs("div",{"data-loc":"client/src/pages/Shop.tsx:322",className:"flex items-baseline gap-1.5",children:[t.price&&e.jsxs("span",{"data-loc":"client/src/pages/Sh
11op.tsx:324",className:"text-sm font-bold text-boxing-red",children:["$",t.price]}),n&&e.jsxs("span",{"data-loc":"client/src/pages/Shop.tsx:329",className:"text-[10px] text-muted-foreground line-through",children:["$",t.originalPrice]})]}),e.jsxs("button",{"data-loc":"client/src/pages/Shop.tsx:334",className:"w-full mt-2 text-[10px] font-bold py-1.5 rounded-lg flex items-center justify-center gap-1 bg-boxing-red/15 text-boxing-red hover:bg-boxing-red/25 border border-boxing-red/20 transition-all",children:[e.jsx(v,{"data-loc":"client/src/pages/Shop.tsx:335",className:"w-2.5 h-2.5"})," View Product"]})]})]})})}export{pe 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.