PageSourceSearch

https://www.boohoo.com/build/_shared/chunk-3H3AXFZI.js

js boohoo.com collected 2026-09-24 08:32:41 UTC 12,379 bytes, 1 lines download raw bytes

1import{A as oe,e as L,h as A,i as C,x as te,y as re,z as ie}from"/build/_shared/chunk-AEBGQOM5.js";import{d as W}from"/build/_shared/chunk-WOCI7MY6.js";import{a as ee}from"/build/_shared/chunk-PHB6ZJYR.js";import{a as J,b as X,d as Y}from"/build/_shared/chunk-WYWTJVVI.js";import{a as U}from"/build/_shared/chunk-RZLDKGLN.js";import{a as Z}from"/build/_shared/chunk-TGDXDXUC.js";import{a as Q}from"/build/_shared/chunk-UDBCBQQO.js";import{a as O}from"/build/_shared/chunk-FD5H2VPE.js";import{a as K}from"/build/_shared/chunk-POUH3CHJ.js";import{a as _}from"/build/_shared/chunk-FONEQPGK.js";import{a as b}from"/build/_shared/chunk-I5UT2UAU.js";import{a as j}from"/build/_shared/chunk-UXJUA2QE.js";import{a as $}from"/build/_shared/chunk-DEVQKMWM.js";import{a as V}from"/build/_shared/chunk-5OBEDPFR.js";import{a as R}from"/build/_shared/chunk-H6S7FWVP.js";import{d as w}from"/build/_shared/chunk-T36URGAI.js";var de={paths:'<path d="M22,11.1H12.9V2H11.1v9.1H2v1.8h9.1V22h1.8V12.9H22Z" fill="#000000"/>'};var fe={width:24,height:24,paths:'<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12.7 22.9998H4.98746C3.77682 22.9998 2.84376 21.9326 3.00535 20.7328L4.92226 6.49976H20.4778L21.0334 10.6248L21.3667 13.0623M18.7 14.9998L18.7 18.9998M18.7 18.9998L18.7 22.9998M18.7 18.9998H22.7M18.7 18.9998H14.7M16.5889 9.79976V4.88864C16.5889 2.74087 14.8478 0.999756 12.7 0.999756C10.5522 0.999756 8.81113 2.74087 8.81113 4.88864V9.79976" stroke="black" stroke-linecap="round"/></svg>'};var Pe={width:24,height:24,paths:'<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12.7 22.9998H4.98746C3.77682 22.9998 2.84376 21.9326 3.00535 20.7328L4.92226 6.49976H20.4778L21.0334 10.6248L21.3667 13.0623M18.7 14.9998L18.7 18.9998M18.7 18.9998L18.7 22.9998M18.7 18.9998H22.7M18.7 18.9998H14.7M16.5889 9.79976V4.88864C16.5889 2.74087 14.8478 0.999756 12.7 0.999756C10.5522 0.999756 8.81113 2.74087 8.81113 4.88864V9.79976" stroke="#6B7280" stroke-linecap="round"/></svg>'};var xe={paths:'<path d="M22,11.1H12.9V2H11.1v9.1H2v1.8h9.1V22h1.8V12.9H22Z" fill="#FFFFFF"/>'};var ve=(e,r,t)=>{var i;return(i=e==null?void 0:e.variants)==null?void 0:i.find(n=>{var g,o,m,u;let s=(o=(g=n==null?void 0:n.attributes)==null?void 0:g.find(a=>(a==null?void 0:a.name)==="colour"))==null?void 0:o.key,l=(u=(m=n==null?void 0:n.attributes)==null?void 0:m.find(a=>(a==null?void 0:a.name)==="size"))==null?void 0:u.key;return r&&!t?s===r:s===r&&l===t})},Be=(e,r,t)=>{var i;return(i=e==null?void 0:e.variants)==null?void 0:i.find(n=>{let s=n==null?void 0:n.sku_color_group;if(r&&!t)return s===r})};var F=w(R());var I=e=>e?e.replace(/[^0-9.]+/g,""):null;var H={categoryTaxonomy:"category",occasion:"dimension60",gender:"dimension61",styleTaxonomy:"dimension62",colour:"dimension65",size:"dimension68"},ce=e=>e.reduce((r,t)=>{var i;return"name"in t&&t.name in H||t.key in H?{...r,[H["name"in t?t.name:t.key]]:"value"in t&&t.value?t.value:"values"in t&&t.values?(i=t.values)==null?void 0:i.join():t.key}:r},{}),le=e=>{var i,n,s,l,g,o,m,u,a,c,d,P;let r="attributes"in e?(g=(n=(i=e.attributes)==null?void 0:i.find(p=>p.key==="colour"))==null?void 0:n.value)!=null?g:(l=(s=e.attributes)==null?void 0:s.find(p=>"name"in p&&p.name==="colour"))==null?void 0:l.key:(o=e.colour)!=null?o:"",t="attributes"in e?(d=(u=(m=e.attributes)==null?void 0:m.find(p=>p.key==="size"))==null?void 0:u.value)!=null?d:(c=(a=e.attributes)==null?void 0:a.find(p=>"name"in p&&p.name==="size"))==null?void 0:c.key:(P=e.size)!=null?P:"";return`${r}|${t}`},pe=e=>{var o,m,u;
1let r,t,i=null,n=e,s="variants"in n&&((o=n.variants)==null?void 0:o.find(a=>(a==null?void 0:a.rawSku)===n.sku||(a==null?void 0:a.sku)===n.sku));if(s){let a=s.salePrice&&s.salePrice!==s.wasPrice;r=I(s.wasPrice||s.price),t=(m=a&&I(s.salePrice||void 0))!=null?m:s.wasPrice&&I(s.price),i=s.salePrice&&I(s.price)}else r=I(e.wasPrice||e.price),t=e.wasPrice&&I(e.price);let l=(u=i&&Number(r)-Number(i))!=null?u:t&&Number(r)-Number(t),g=l&&(+(l/Number(r)*100).toFixed(2)).toString();return{price:r,salePrice:t||void 0,discount:l?l.toFixed(2).toString():void 0,markdown:g||void 0,promoPrice:i||void 0}},ne=({product:e,position:r,list:t})=>{var a,c,d,P,p,y;let i=le(e),{price:n,salePrice:s,discount:l,markdown:g,promoPrice:o}=pe(e),m="breadcrumbs"in e&&e.breadcrumbs?e.breadcrumbs:[],u=m.filter(f=>typeof f=="object"&&f!==null).filter(f=>(f==null?void 0:f.slug)!=="/"&&(f==null?void 0:f.slug)!=="");return{name:e.name,id:e.productKey,itemId:"rawSku"in e&&e.rawSku?e.rawSku:"sku"in e&&e.sku?e.sku:e.id,price:n,pricePerItem:"pricePerItem"in e?e.pricePerItem:null,brand:e.brand,category:e.categoryTaxonomy||null,category1:(c=(a=u==null?void 0:u[0])==null?void 0:a.name)!=null?c:null,category2:(P=(d=u==null?void 0:u[1])==null?void 0:d.name)!=null?P:null,category3:(y=(p=u==null?void 0:u[2])==null?void 0:p.name)!=null?y:null,categoryPath:m.map(f=>typeof f=="object"&&f!==null?f==null?void 0:f.name:null).join(" > "),metric36:null,metric37:"qtyInStock"in e?e.qtyInStock:null,position:r||0,discount:l,markdown:g,promoPrice:o,salePrice:s,slicedId:null,variant:i,...t&&{list:t},..."attributes"in e&&e.attributes?ce(e.attributes):{dimension60:e.occasion||null,dimension61:e.gender||null,dimension62:e.styleTaxonomy||null,dimension65:e.colour||null,dimension68:e.size||null},dimension64:i.split("|")[0].length>0?"Colour":null,..."quantity"in e&&{quantity:e.quantity}}};var $e=()=>{let{user:e}=(0,F.useContext)(U),r=(0,F.useContext)($),{enableAlgoliaAppSeparation:t}=(0,F.useContext)(K);return{productClick:({props:i,analyticsEventType:n})=>{var c;let{algoliaAppId:s,algoliaSearchKey:l}=ee(r.key,t),{queryId:g,position:o,...m}=i,u="id"in m?m.id:"pid"in m?m.pid:void 0;if(!u){console.warn("ProductClick: Missing product id or pid");return}let a=g&&o?J({queryId:g,ids:[u],positions:[o],userToken:e&&!e.guest?e.id:void 0,algoliaAppId:s,algoliaSearchKey:l,algoliaQueryIndex:(c=r==null?void 0:r.algolia)==null?void 0:c.algoliaQueryIndex}):null;g&&X(a),_({event:"productClick",ecommerce:{currencyCode:r==null?void 0:r.currency,click:{analyticsEventType:n||"default",actionField:{list:Y()||void 0},products:[ne({product:m})],...a?{algolia:a}:{}}}})}}};var se=w(R());var v=w(V()),Te=({images:e,urlFormat:r,productKey:t,productId:i,imageWidths:n,lazyLoad:s})=>(0,v.jsx)("div",{className:"relative w-full h-fit",children:(0,v.jsx)(W,{carouselConfig:{all:{enableAutoplay:!1,loop:!1},"(min-width: 0px)":{slidesToShow:1,slideGap:"0px",draggable:!0}},carouselName:"plp-product-gallery",children:e.map((l,g)=>(0,v.jsx)(me,{urlFormat:"plp",index:g,image:l,imageWidths:n,lazyLoad:s},`${t}-${g}`))},`plp-gallery-${i}-${t}`)}),me=({image:e,imageWidths:r,alt:t,lazyLoad:i,index:n,urlFormat:s})=>{let{createResponsiveImageSrc:l}=Z(),g=(0,se.useMemo)(()=>l({media:e,widths:r,breakpoints:O}),[e,r,l]);return(0,v.jsxs)("div",{className:"relative overflow-hidden",children:[(0,v.jsx)("div",{className:"absolute top-0 left-0 right-0 bottom-0 flex flex-colum justify-center items-center z-10",children:(0,v.jsx)(Q,{alt:t,urlFormat:s,src:g,lazyLoad:i,fetchPriority:n===0&&!i?"high":"auto"})}),(0,v.jsx)("div",{className:"w-full pb-[150%] h-0 relative"})]})};function Ge(e,r="en-GB"){if(!e)return 0;let i=new Intl.NumberFormat(r).formatToParts(1234.5),n=".",s=",";i.forEach(m=>{m.type==="decimal"?n=m.value:m.type==="group"&&(s=m.value)});let l=e.replace(/[^\d\-.,\s]/g,""),g=s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");if(l=l.replace(new RegExp(g,"g"),""),l=l.replace(/\s/g,""),n!=="."){let m=n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");l=l.replace(new RegExp(m,"g"),".")}let o=Number(l);return isNaN(o)?0:o}var x=w(R());var D=w(V()),ae=34,Ke=({categorySlugs:e,position:r,checkClassBadge:t})=>{var a,c;let{adminConfig:i}=(0,x.useContext)(L),n=(0,x.useContext)(A),s=(0,x.useContext)($),l=(0,x.useMemo)(()=>{var P,p;let d=[...n];if((P=i==null?void 0:i.data)!=null&&P.previewBadges&&((p=i==null?void 0:i.data)!=null&&p.isPreview)){let y=i.data.previewBadges;d.some(k=>k.id===y.id)||d.push(y)}return d},[n,(a=i==null?void 0:i.data)==null?void 0:a.previewBadges,(c=i==null?void 0:i.data)==null?void 0:c.isPreview]),g=(0,x.useMemo)(()=>{let P=l.filter(p=>{var M;if(!p||!p.placement||!(r==="PLP"?["PLP"]:["CAROUSEL"]).flatMap(h=>[`${h}-bottomLeft_productImage`,`${h}-topLeft_productImage`,`${h}-bottomRight_productImage`,`${h}-topRight_productImage`]).some(h=>p.placement.includes(h))||C(p,e))return!1;if(((M=p.categorySlug)==null?void 0:M.length)===0)return!0;let N=p!=null&&p.categorySlug?p.categorySlug.split(",").map(h=>
1h.trim()).filter(Boolean):[];return e.some(h=>N.includes(h))}).sort((p,y)=>(p.priority||1)-(y.priority||1)).slice(0,2);return P.length?P.sort((p,y)=>(y.priority||1)-(p.priority||1)):[]},[l,e,r]),o=(0,x.useMemo)(()=>t?[g[g.length-1]]:g,[t,g]),m={topLeft:"left-0 mt-2 ml-2",topRight:"right-0 mt-2 mr-2",bottomLeft:" left-0 mb-2 ml-2",bottomRight:"right-0 mb-2 mr-2"},u;return(0,D.jsx)(D.Fragment,{children:o.map((d,P)=>{var M,h,q,T,E;if(!d||!d.placement)return null;let p=Array.isArray(d.placement)?d.placement.find(G=>r==="PLP"?G.startsWith("PLP"):G.startsWith("CAROUSEL")):void 0,y=(M=p==null?void 0:p.split("-")[1])==null?void 0:M.split("_")[0],f=m[y]||"",k=0;P===1?y===u&&(k=ae):P===0&&(u=y,y==="bottomLeft"&&t&&((q=(h=s.theming)==null?void 0:h.global)==null?void 0:q.imageBadgeStyle)!=="plt"&&(k=ae));let z=(y==null?void 0:y.startsWith("top"))?{top:`${k}px`}:{bottom:`${k}px`};return(0,D.jsx)("div",{style:{...z,backgroundColor:d.backgroundColor||"#e7e7e7",color:d.textColor||void 0,borderColor:d.borderColor||void 0},className:`text-xs font-light px-2 py-1 absolute rounded ${f} ${d.borderColor?"border":""} z-10 ${((E=(T=s.theming)==null?void 0:T.global)==null?void 0:E.imageBadgeStyle)==="plt"?"opacity-50 uppercase":""}`,children:d.text1},d.id)})})},Qe=e=>{var i,n;let{adminConfig:r}=(0,x.useContext)(L),t=(0,x.useContext)(A);return(0,x.useMemo)(()=>{var l,g;let s=[...t];if((l=r==null?void 0:r.data)!=null&&l.previewBadges&&((g=r==null?void 0:r.data)!=null&&g.isPreview)){let o=r.data.previewBadges;s.some(u=>u.id===o.id)||s.push(o)}return s.some(o=>{var a;if(!(o!=null&&o.placement)||!o.placement.includes("PLP-bottomLeft_productImage")||C(o,e))return!1;if(!((a=o.categorySlug)!=null&&a.length))return!0;let u=o.categorySlug.split(",").map(c=>c.trim()).filter(Boolean);return e.some(c=>u.includes(c))})},[t,(i=r==null?void 0:r.data)==null?void 0:i.previewBadges,(n=r==null?void 0:r.data)==null?void 0:n.isPreview,e])};var S=w(R());var B=w(V()),ue={promo_badge:oe,christmas_tree:te,fast_delivery_truck:ie,delivery_truck:re},st=({categorySlugs:e,position:r})=>{var l,g;let{adminConfig:t}=(0,S.useContext)(L),i=(0,S.useContext)(A),n=(0,S.useMemo)(()=>{var m,u;let o=[...i];if((m=t==null?void 0:t.data)!=null&&m.previewBadges&&((u=t==null?void 0:t.data)!=null&&u.isPreview)){let a=t.data.previewBadges;if(!o.some(d=>d.id===a.id)){let d=a.categorySlug==="view-all"?1:a.priority||1;o.push({...a,priority:d})}}return o},[i,(l=t==null?void 0:t.data)==null?void 0:l.previewBadges,(g=t==null?void 0:t.data)==null?void 0:g.isPreview]),s=(0,S.useMemo)(()=>{let o=n.filter(c=>{var y;let d=(y=c==null?void 0:c.placement)==null?void 0:y.includes(r==="PLP"?"PLP_promo":"CAROUSEL_promo"),P=c!=null&&c.categorySlug?c.categorySlug.split(",").map(f=>f.trim()).filter(Boolean):[],p=e.some(f=>P.includes(f))||!(c!=null&&c.categorySlug);return d&&p&&!C(c,e)});if(!o.length)return[];let m=Math.min(...o.map(c=>{var d;return(d=c.priority)!=null?d:1})),u=o.filter(c=>{var d;return((d=c.priority)!=null?d:1)===m});return Array.from(new Map(u.map(c=>[c.id||`${c.icon}-${c.text1}`,c])).values()).slice(0,1)},[n,e,r]);return(0,B.jsx)(B.Fragment,{children:s.map(o=>(0,B.jsxs)("div",{"data-test-id":"promo-badge-ct-card",className:"flex gap-2 text-sm",children:[o.icon&&(0,B.jsx)("div",{className:"max-h-[21px] flex items-center",children:(0,B.jsx)(b,{icon:ue[o.icon]})}),(0,B.jsx)(j,{children:o.text1})]},o.id||`${o.icon}-${o.text1}`))})};var lt=()=>({carouselProductClick:({productId:e,carouselName:r})=>{_({event:r,carousel:{eventValue:(i=>({product_recs:"Product_Recs: ",sponsoredPDP:"Sponsored_Recs: ",pdpRecent:"Recently_Viewed: ",sponsored_in_recs_pdp:"Sponsored_In_Recs: "})[i])(r)+(e!=null?e:"")}})}});export{de as a,fe as b,Pe as c,xe as d,ve as e,Be as f,ne as g,$e as h,Te as i,Ge as j,Ke as k,Qe as l,st as m,lt as n};

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.