1"use strict";(self.__LOADABLE_LOADED_CHUNKS__=self.__LOADABLE_LOADED_CHUNKS__||[]).push([[9875],{52240(e,t,r){var n=r(29188),a=r(35679),o=r(76730),i=r(90031),l=r(18124),d=r(64965),s=r(97361),c=r(28734),u=r(18987),p=r(17015);r.d(t,["Y",0,{PDP:"PDP_Recommendation_2",CART:"Cart_Recommendation_1",NO_SEARCH_RESULTS:"Empty_search_1",MY_ACCOUNT:"MyAccount_Recommendation_1",ERROR_PAGE:"404_Recommendation_1",WISHLIST:"Wishlist_Recommendation_1"},"c",0,({selectorName:e,productLimit:t,enabled:r=!0})=>{var m,y;const v=(0,s.$)(),{pathname:g}=(0,d.useLocation)(),{consentStatus:f}=(0,c.yD)(),b=u.default.get("_dyid"),h=u.default.get("_dyid_server"),E=u.default.get("_dyjsession"),{config:{siteLocale:O,siteId:k},context:I}=(0,o.ur)(),P=`${v}${g}`,_=!!f.personalization,{getTokenWhenReady:C}=(0,l.w)(),{shopperProducts:w}=(0,i.useCommerceApi)(),A=p.S$||null===(m=window)||void 0===m||null===(y=m.navigator)||void 0===y?void 0:y.userAgent,{queryKey:j,queryFn:L}=(0,a.Rn)({activeConsentAccepted:_,dyId:b,dyIdServer:h,dySession:E,selectorName:e,url:P,siteLocale:O,siteId:k,getTokenWhenReady:C,shopperProducts:w,productLimit:t,userAgent:A,context:I}),{data:x,isLoading:S}=(0,n.I)({queryKey:j,meta:{displayName:"useDynamicYieldRecommendations"},queryFn:L,enabled:r&&!!e&&!!P&&!!I,cacheTime:1/0,staleTime:3e5});return{data:x,isLoading:S,queryKey:j,queryFn:L}}])},7984(e,t,r){var n=r(77810),a=r(52240),o=r(75826),i=r.n(o),l=r(62539),d=r(1367);const s=({dynamicYieldCampaignName:e,title:t,productLimit:r,tileImageType:o="Model",navigationContainerStyles:i})=>{var s;const{data:c,isLoading:u}=(0,a.c)({selectorName:e,productLimit:r});return n.createElement(l.az,null,c&&n.createElement(d.A,{products:null==c||null===(s=c.productSearchResult)||void 0===s?void 0:s.hits,isLoading:u,title:t,tileImageType:o,navigationContainerStyles:i,promotionComponent:"product-slider",showGantHeritageLogo:!0}))};s.propTypes={dynamicYieldCampaignName:i().string.isRequired,title:i().string.isRequired,productLimit:i().number,tileImageType:i().string,navigationContainerStyles:i().object};const c=s;r.d(t,["A",0,c])},22846(e,t,r){r.r(t),r.d(t,{default:()=>Oe});var n=r(28407),a=r(10939),o=r(77810),i=r(75826),l=r.n(i),d=r(34692),s=r(74941),c=r(45456),u=r(62539),p=r(92519),m=r(90031),y=r(78124),v=r(88936),g=r(7711),f=r(93080),b=r(62241),h=r(69552),E=r(68066),O=r(10857),k=r(33279),I=r(18124),P=r(47817),_=r(87336),C=r(86484);const w=()=>{const e=(0,m.useCustomerId)(),{removeBasketId:t}=(0,C.Y)(),{refetch:r}=(0,P.useCustomerBaskets)({parameters:{customerId:e}},{enabled:!1}),a=(0,m.useShopperBasketsMutation)("deleteBasket"),i=(0,o.useCallback)(e=>{var t,r,n,a,o,i;if(!e)return!1;const l=(null==e||null===(t=e.response)||void 0===t||null===(r=t.data)||void 0===r?void 0:r.type)||(null==e?void 0:e.type);return!(null==l||!l.includes("customer-baskets-quota-exceeded"))||(!!((null==e||null===(n=e.response)||void 0===n||null===(a=n.data)||void 0===a?void 0:a.title)||(null==e?void 0:e.title)||"").toLowerCase().includes("quota exceeded")||!!((null==e||null===(o=e.response)||void 0===o||null===(i=o.data)||void 0===i?void 0:i.detail)||(null==e?void 0:e.message)||"").toLowerCase().includes("maximum number of baskets"))},[]),l=(0,o.useCallback)((0,n.A)(function*(){if(!e)return[];const{data:n}=yield r();if(!n||!n.baskets||0===n.baskets.length)return[];const o=[],i=[...n.baskets].sort((e,t)=>new Date(e.creationDate||0)-new Date(t.creationDate||0));let l=!1;for(const e of i.reverse())if(!l&&e.productItems&&e.productItems.length>0)l=!0;else try{yield a.mutateAsync({parameters:{basketId:e.basketId}}),o.push(e.basketId)}catch(e){}return t(),o}),[e,r,a,t]),d=(0,o.useCallback)(function(){var e=(0,n.A)(function*(e){if(!i(e))return!1;try{return(yield l()).length>0}catch(e){return!1}});return function(t){return e.apply(this,arguments)}}(),[i,l]);return{isQuotaExceededError:i,cleanupOldBaskets:l,handleQuotaExceededError:d}};function A(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function j(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};
1t%2?A(Object(r),!0).forEach(function(t){(0,a.A)(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):A(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function L(){return(L=(0,n.A)(function*(e,t){"undefined"!=typeof window&&e&&(yield e.refetchQueries({predicate:e=>{const r=e.queryKey;if(!Array.isArray(r)||"/commerce-sdk-react"!==r[0])return!1;const n=r.join("|");return!!(n.includes("baskets")&&(t&&n.includes(String(t))||n.includes("/customers/")&&n.includes("/baskets")))}}))})).apply(this,arguments)}const x=()=>{const e=(0,O.jE)(),t=(0,m.useCustomerId)(),{basketId:r,saveBasketId:a,removeBasketId:i}=(0,C.Y)(),{handleQuotaExceededError:l}=w(),d=(0,o.useCallback)(function(){var t=(0,n.A)(function*(t){yield function(e,t){return L.apply(this,arguments)}(e,t)});return function(e){return t.apply(this,arguments)}}(),[e]),{data:s,refetch:c}=(0,P.useCustomerBaskets)({parameters:{customerId:t}},{enabled:!!t&&"undefined"!=typeof window}),{data:u,isError:p,error:y}=(0,m.useBasket)({parameters:{basketId:r}},{enabled:!!r&&"undefined"!=typeof window,retry:!1,onError:e=>{var t;const r=null==e||null===(t=e.response)||void 0===t?void 0:t.status;404!==r&&400!==r||i()}}),v=(0,m.useConfig)(),{getTokenWhenReady:g}=(0,I.w)(),f=(0,m.useShopperBasketsMutation)("addItemToBasket"),b=(0,k.n)({mutationFn:(h=(0,n.A)(function*({body:e={}}={}){const t=yield g();return new _.ShopperBaskets({proxy:v.proxy,throwOnBadResponse:!0,fetchOptions:v.fetchOptions,headers:j(j({},v.headers),{},{authorization:`Bearer ${t}`}),parameters:{clientId:v.clientId,organizationId:v.organizationId,shortCode:v.shortCode,siteId:v.siteId,locale:v.locale,currency:v.currency,version:"v2"}}).createBasket({body:e})}),function(){return h.apply(this,arguments)})});var h;const E=(0,o.useMemo)(()=>{var e;if(r&&u&&!p)return u;if(r&&null!=s&&null!==(e=s.baskets)&&void 0!==e&&e.length){const e=s.baskets.find(e=>e.basketId===r);if(e)return e}if(r&&p){var t;const e=null==y||null===(t=y.response)||void 0===t?void 0:t.status;404!==e&&400!==e||i()}if(s&&s.total>0){const e=s.baskets[0];return null!=e&&e.basketId&&a(e.basketId),e}return null},[r,u,p,y,s,i,a]),A=function(){var e=(0,n.A)(function*(e){var n,o;let s=E;if(t&&!r&&(null===(n=s)||void 0===n||!n.basketId)&&"undefined"!=typeof window){var u,p;const{data:e}=yield c();if((null==e?void 0:e.total)>0&&null!=e&&null!==(u=e.baskets)&&void 0!==u&&null!==(p=u[0])&&void 0!==p&&p.basketId){var m;const t=null==e||null===(m=e.baskets)||void 0===m?void 0:m[0];a(null==t?void 0:t.basketId),s=t}}if(null!==(o=s)&&void 0!==o&&o.basketId)try{const t=yield f.mutateAsync({parameters:{basketId:s.basketId},body:e});return yield d((null==t?void 0:t.basketId)||s.basketId),t}catch(e){var y;const t=null==e||null===(y=e.response)||void 0===y?void 0:y.status;if(404!==t&&400!==t)throw e;i()}try{const t=yield b.mutateAsync({body:{}});if(!t||!t.basketId)throw new Error("Failed to create basket. Please try again.");a(t.basketId);const r=yield f.mutateAsync({parameters:{basketId:t.basketId},body:e});return yield d((null==r?void 0:r.basketId)||t.basketId),r}catch(t){if(yield l(t)){const t=yield b.mutateAsync({body:{}});if(!t||!t.basketId)throw new Error("Failed to create basket. Please try again.");a(t.basketId);const r=yield f.mutateAsync({parameters:{basketId:t.basketId},body:e});return yield d((null==r?void 0:r.basketId)||t.basketId),r}throw t}});return function(t){return e.apply(this,arguments)}}();return{addItemToNewOrExistingBasket:A,currentBasketId:(null==E?void 0:E.basketId)||null,removeBasketId:i}};var S=r(91930),T=r(64255),R=r(54752),D=r(64965),B=r(86399),M=r(73448);const q=(e,t)=>{const r=[];if(e&&r.push({"@type":"PropertyValue",name:"Fit",value:e}),null!=t&&t.length){const e=t.map(e=>{const t=e.label.trim();return t.endsWith(".")?t.slice(0,-1):t}).join(". ")+".";r.push({"@type":"PropertyValue",name:"Care",value:e})}return r.length?r:void 0},N=e=>e?Object.hasOwnProperty.call(e,"c_discountedPrice")&&e.c_discountedPrice.value?e.c_discountedPrice.value:e.price:null,U=(e,t)=>{var r,n;if(!e)return null;const a=(e=>!!e&&!!Object.hasOwnProperty.call(e,"c_variantsAvailabilityStock")&&e.c_variantsAvailabilityStock.some(e=>e.isAvailable))(e)?"https://schema.org/InStock":"https://schema.org/OutOfStock";return{"@type":"Offer",url:t||void 0,availability:a||void 0,price:(null==e||null===(r=e.c_price)||void 0===r||null===(n=r.sales)||void 0===n?void 0:n.decimalPrice)||N(e)||void 0,priceCurrency:e.currency||void 0}};var F=r(45804),$=r(4026),z=r(94615);const H=({product:e,hreflangUrls:t})=>{var r,n,a,i,l,d,s;const{site:c,buildUrl:u,locale:p}=(0,E.A)(),m=(0,D.useLocation)(),y=c.appOrigin+m.pathname,{app:v}=(0,$.getConfig)(),g=(0,F.Xd)(e,c.appOrigin,u,null==p?void 0:p.id),f=((e,t)=>{var r,n,a,o;if(!e)return null;const i=(0,B.A)(null==e?void 0:e.imageGroups,M.M0.MODEL_FV_FULLSHOT_GREY,e,{});return{"@context":"https://schema.org","@type":"Product","@id":t,name:`${e.name}${null!=e&&e.c_colorName?` - ${null==e?void 0:e.c_colorName}`:""}`,description:(null==e?void 0:e.longDescription)||void 0,image:(null==i?void 0:i.link)||(null==e||null===(r=e.imageGroups)||void 0===r||null===(n=r[0])||void 0===n?void 0:n.images[0])||void 0,brand:{"@type":"Brand",name:"Gant"},category:(null==e||null===(a=e.c_primaryCategory)||void 0===a||null===(o=a.url)||void 0===o?void 0:o.replaceAll("/"," > "))||(null==e?void 0:e.c_category)||void 0,color:(null==e?void 0:e.c_genericColor)||void 0,material:(null==e?void 0:e.c_fabrics)||void 0,additionalProperty:q(null==e?void 0:e.c_fit,null==e?void 0:e.c_careInstructions),productID:(null==e?void 0:e.id)||void 0,mpn:(null==e?void 0:e.id)||void 0,itemCondition:"https://schema.org/NewCondition",offers:U(e,t)}})(e,g||y),b=(null==t||null===(r=t.find(e=>"en-gb"===e.locale))||void 0===r?void 0:r.href)||`${v.siteOrigin}/`,h=null==e||null===(n=e.variationAttributes)||void 0===n?void 0:n.find(({id:e})=>"color"===e),O=null==e||null===(a=e.variationValues)||void 0===a?void 0:a.color,k=(0,B.A)(null==e?void 0:e.imageGroups,M.M0.MODEL_FV_FULLSHOT_GREY,e,h&&O?{color:O}:{}),I=(null==k?void 0:k.link)||(null==e||null===(i=e.imageGroups)||void 0===i||null===(l=i[0])||void 0===l||null===(d=l.images)||void 0===d||null===(s=d[0])||void 0===s?void 0:s.link)||`${c.appOrigin}${(0,z.getAssetUrl)(M.Fn)}`;return o.createElement(R.default,null,(null==t?void 0:t.length)>0&&t.filter(Boolean).map(({locale:e,href:t})=>o.createElement("link",{key:e,rel:"alternate",hrefLang:e,href:t})),o.createElement("link",{rel:"alternate",hrefLang:"x-default",href:b}),o.createElement("meta",{property:"og:title",content:null==e?void 0:e.name}),o.createElement("meta",{property:"og:description",content:null==e?void 0:e.longDescription}),o.createElement("meta",{property:"og:type",content:"Product"}),o.createElement("meta",{property:"og:image",content:I}),g&&o.createElement("link",{rel:"canonical",href:g}),g&&o.createElement("meta",{property:"og:url",content:g}),f&&o.createElement("script",{type:"application/ld+json"},JSON.stringify(f)))};H.propTypes={product:l().object.isRequired,hreflangUrls:l().array};const V=H;var G=r(85399),Y=r(439),W=r(2219),Q=r(33044),K=r(32105),X=r(84479),J=r(97660),Z=r(89049),ee=r(11692),te=r(27821),re=r(977),ne=r(52384),ae=r(7984),oe=r(76021),ie=r(96385),le=r(52240);function de(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function se(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};
1t%2?de(Object(r),!0).forEach(function(t){(0,a.A)(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):de(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}const ce=()=>{const e=(0,d.A)(),{res:t}=(0,b.useServerContext)(),{data:r,isError:n}=(0,ie.A)("error-404-pdp");if(t&&t.status(404),n||!r||0===Object.keys(r).length)return o.createElement(oe.default,{errorCode:"404",pageType:"pdp"});const a=e.formatMessage({id:"product.notFound.relatedProductsTitle",defaultMessage:[{type:0,value:"You may be interested in"}]});return o.createElement(u.az,{"data-testid":"sf-product-list-page",layerStyle:"page"},o.createElement(R.Helmet,null,o.createElement("title",null,"Not found"),o.createElement("meta",{name:"description",content:e.formatMessage({id:"category.notFound.description",defaultMessage:[{type:0,value:"Category not found"}]})}),o.createElement("meta",{name:"keywords",content:e.formatMessage({id:"category.notFound.keywords",defaultMessage:[{type:0,value:"Category not found"}]})})),o.createElement(ee.s,{sx:{alignItems:{lg:"flex-end"},paddingTop:ne.x.macro.base,flexDir:{base:"column",md:"row"},borderBottom:{lg:"1px rgba(0, 0, 0, 0.07) solid"}}},o.createElement(u.az,{sx:{width:{lg:"50%"},padding:{base:`0 ${ne.x.large.base} ${ne.x.large.base} ${ne.x.large.base}`,lg:ne.x.large.lg}}},o.createElement(te.E,{sx:se({},re.X.header_modern)},e.formatMessage({id:"product.notFound.errorCode",defaultMessage:[{type:0,value:"Error 404"}]}))),o.createElement(u.az,{sx:{width:{lg:"50%"},padding:{base:`0 ${ne.x.large.base} ${ne.x.large.base} ${ne.x.large.base}`,lg:`0 ${ne.x.extra_large.base} 18px ${ne.x.large.lg}`}}},o.createElement(te.E,{sx:se({},re.X.header_serif_1)},e.formatMessage({id:"product.notFound.errorMessage",defaultMessage:[{type:0,value:"The product you are looking for is not available."}]})))),o.createElement(u.az,null,o.createElement(ae.A,{dynamicYieldCampaignName:le.Y.ERROR_PAGE,title:a})))};var ue=r(83501),pe=r(86250),me=r(76730),ye=r(65376),ve=r(6834),ge=r(72924),fe=r(36520);function be(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function he(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?be(Object(r),!0).forEach(function(t){(0,a.A)(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):be(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}const Ee=()=>{var e,t,r,a,i,l,O,k,I,P;const{formatMessage:_}=(0,d.A)(),C=(0,D.useHistory)(),w=(0,D.useLocation)(),A=(0,f.A)(),j=(0,g.A)(),{site:L,buildUrl:R,locale:B}=(0,E.A)(),{showSnackbar:M,snackbars:q}=(0,J.d)(),N=(0,ye.A)(),{setDynamicYieldContext:U}=(0,me.ur)(),{navigateToCLP:$}=(0,fe.R)(),{isLoading:z,data:H,refetch:ee}=(0,y.X)(),{addItemToNewOrExistingBasket:te}=x(),re=(0,m.useShopperBasketsMutation)("updateItemsInBasket"),{res:ne,req:ae}=(0,b.useServerContext)();ne&&ne.set("Cache-Control","s-maxage=900, stale-while-revalidate=900");const{productId:oe,productNameWithColor:ie}=(0,D.useParams)(),de=new URLSearchParams(w.search);let se=oe;if(!se&&w.pathname.startsWith("/p/")){const e=w.pathname.split("/").filter(Boolean);e.length>1&&(se=e[e.length-1])}const be=(0,m.useProduct)({parameters:{id:de.get("pid")||se,perPricebook:!0,expand:["availability","promotions","options","images","prices","variations","set_products","bundled_products"],allImages:!0}},{keepPreviousData:!0});(0,o.useEffect)(()=>{"undefined"!=typeof window&&be.refetch()},[]);const{data:Ee,isLoading:Oe,error:ke}=be,{data:Ie}=(0,m.useCategory)({parameters:{id:null==Ee||null===(e=Ee.c_primaryCategory)||void 0===e?void 0:e.id,levels:1}},{enabled:!(null==Ee||null===(t=Ee.c_primaryCategory)||void 0===t||!t.id)});(0,o.useEffect)(()=>{var e,t;if(null==Ee||null===(e=Ee.c_primaryCategory)||void 0===e||!e.c_breadcrumbURL)return;const{pageGTMType:r}=(0,ue.kP)(w),n=(0,ue.Uj)(JSON.parse(null==Ee||null===(t=Ee.c_primaryCategory)||void 0===t?void 0:t.c_breadcrumbURL));n&&(0,ue.nh)(r,n)},[null==Ee||null===(r=Ee.c_primaryCategory)||void 0===r?void 0:r.c_breadcrumbURL]),(0,o.useEffect)(()=>{var e,t;if("undefined"==typeof window)return;if(null==Ee||null===(e=Ee.c_primaryCategory)||void 0===e||!e.c_breadcrumbURL)return;const r=null==Ie||null===(t=Ie.parentCategoryTree)||void 0===t?void 0:t[0];(0,pe.q)(Ee.c_primaryCategory,r)},[null==Ee||null===(a=Ee.c_primaryCategory)||void 0===a?void 0:a.c_breadcrumbURL,null==Ie?void 0:Ie.parentCategoryTree]);const Pe=(0,G.A)({localizedUrls:null==Ee?void 0:Ee.c_localizedNames,pageType:"product",product:Ee,currentLocale:null}),[_e,Ce]=(0,o.useState)({}),[we,Ae]=(0,o.useState)({}),[je,Le]=(0,o.useState)(1),xe=o.useRef({}),Se=null==Ee?void 0:Ee.type.set,Te=null==Ee?void 0:Ee.type.bundle;let Re="";Te&&(Re=null===(i=Object.keys(_e))||void 0===i?void 0:i.map(e=>_e[e].variant.productId).join(","));const{data:De}=(0,m.useProducts)({parameters:{ids:Re,allImages:!1,expand:["availability","variations"],select:"(data.(id,inventory,master))"}},{enabled:(null===(l=Re)||void 0===l?void 0:l.length)>0,keepPreviousData:!0});
1Te&&De&&Ee.bundledProducts.forEach(({product:e},t)=>{const r=De.data.find(t=>t.master.masterId===e.id);r&&(Ee.bundledProducts[t].product=he(he({},e),{},{inventory:r.inventory}))});const Be=Se||Te?(0,s.hh)(Ee):{},[Me,qe]=(0,o.useState)(Ie),Ne=(0,v.rn)(Ee),Ue=Ne||(null==Ee||null===(O=Ee.variants)||void 0===O?void 0:O[0]),Fe=(null==Ue?void 0:Ue.productId)||(null==Ee?void 0:Ee.id);(0,o.useEffect)(()=>{Fe&&U({type:me.gS["Product Detail"],data:[Fe]})},[Fe]),(0,o.useEffect)(()=>{Ie&&qe(Ie)},[Ie]);const $e=(0,o.useMemo)(()=>{var e;return(0,ge.x)((null==Me?void 0:Me.c_breadcrumbURL)??(null==Ee||null===(e=Ee.c_primaryCategory)||void 0===e?void 0:e.c_breadcrumbURL),[])},[null==Me?void 0:Me.c_breadcrumbURL,null==Ee||null===(k=Ee.c_primaryCategory)||void 0===k?void 0:k.c_breadcrumbURL]);(0,o.useEffect)(()=>{if(!Ne)return;const e=(0,X.tE)(`${w.pathname}${w.search}`,{pid:null==Ne?void 0:Ne.productId});C.replace(e)},[Ne]);const ze=function(){var e=(0,n.A)(function*(e){(0,ue.Oz)(K.gS,"500",K.gS,null==w?void 0:w.pathname,"API_Error");let t="";if(e&&"response"in e)try{var r;t=(null===(r=yield e.response.json())||void 0===r?void 0:r.title)??""}catch{}const n=t||_({id:"product_detail.add_to_cart.error.generic",defaultMessage:[{type:0,value:"Error"}]}),a=_({id:"product_detail.add_to_cart.error.reload",defaultMessage:[{type:0,value:"Please try reloading the page"}]});q.some(e=>e.text===n&&"error"===e.status)||M({text:n,reloadText:a,status:"error"})});return function(t){return e.apply(this,arguments)}}(),He=function(){var e=(0,n.A)(function*(e){try{let i=yield ee().then(e=>e.data);var t,r;if(i&&(i=(null===(t=i)||void 0===t||null===(r=t.baskets)||void 0===r?void 0:r[0])??H),!i){const t=e.map(({variant:e,quantity:t})=>{const r={productId:e.productId,quantity:t};return e.price&&e.c_isGiftCard&&(r.c_giftCardPriceValue=e.price,r.price=e.price),r}),r=e.map(({variant:e,quantity:t,product:r})=>({productId:e.productId,quantity:t,price:r.price}));return yield te(t),N.sendAddToCart(r),e}const l=[],d=[],s=[];for(const{variant:t,quantity:r,product:o}of e){var n,a;const e=null===(n=i)||void 0===n||null===(a=n.productItems)||void 0===a?void 0:a.find(e=>e.productId===t.productId);if(null!=e&&e.c_isGiftCard){const e=_({id:"giftcard.error.alert.selected.quantity.cannot.be.added",defaultMessage:[{type:0,value:"Unable to add the gift card. You can purchase up to 1 gift card per order."}]});return q.some(t=>t.text===e&&"error"===t.status)||M({text:e,status:"error",disableAutoClose:!0}),[]}if(e)l.push({itemId:e.itemId,quantity:e.quantity+r}),s.push({productId:e.productId,quantity:e.quantity+r,price:e.price});else{const e={productId:t.productId,quantity:r};t.price&&t.c_isGiftCard&&(e.c_giftCardPriceValue=t.price,e.price=t.price),d.push(e),s.push({productId:t.productId,quantity:r,price:o.price})}}var o;return l.length>0&&(yield re.mutateAsync({method:"PATCH",parameters:{basketId:null===(o=i)||void 0===o?void 0:o.basketId},body:l}),N.sendAddToCart(s)),d.length>0&&(yield te(d),N.sendAddToCart(s)),e}catch(e){return console.error("Add to cart error:",e),yield ze(e),[]}});return function(t){return e.apply(this,arguments)}}(),Ve=(0,o.useCallback)(()=>{var e;Object.values(xe.current).forEach(({validateOrderability:e})=>{e({scrollErrorIntoView:!1})});const t=Object.keys(_e),r=null===(e=Be.childProducts.find(({product:e})=>!t.includes(e.id)))||void 0===e?void 0:e.product;if(r){const{ref:e}=xe.current[r.id];return e.scrollIntoView&&e.scrollIntoView({behavior:"smooth",block:"end"}),!1}return!0},[Ee,_e]),Ge=function(){var e=(0,n.A)(function*(e,t){try{const e=Object.values(_e),r=[{productId:Ee.id,price:Ee.price,quantity:t,bundledProductItems:e.map(e=>({productId:e.variant.productId,quantity:e.quantity}))}],n=yield te(r),a=e.map(e=>e.product.id),o=n.productItems.find(e=>{var t,r;if(null!==(t=e.bundledProductItems)&&void 0!==t&&t.length)return(null===(r=e.bundledProductItems)||void 0===r?void 0:r.map(e=>e.productId)).every(e=>a.includes(e))}),i=(0,s.NM)(o,e);return i.length&&(yield re.mutateAsync({method:"PATCH",parameters:{basketId:n.basketId},body:i})),e}catch(e){yield ze(e)}});return function(t,r){return e.apply(this,arguments)}}();(0,o.useEffect)(()=>
1{if(Ee&&Ee.type.set)N.sendViewProduct(Ee),Ee.setProducts.map(e=>{A.sendViewProduct(Ie,e,"detail");try{N.sendViewProduct(e)}catch(t){ve.A.error("Einstein sendViewProduct error",{namespace:"ProductDetail.useEffect",additionalProperties:{error:t,child:e}})}});else if(Ee){try{N.sendViewProduct(Ee)}catch(e){ve.A.error("Einstein sendViewProduct error",{namespace:"ProductDetail.useEffect",additionalProperties:{error:e,product:Ee}})}A.sendViewProduct(Ie,Ee,"detail")}},[Ee]);const Ye=null==ke||null===(I=ke.response)||void 0===I?void 0:I.status,{data:We,isFetched:Qe}=(0,Y.H)((null==ae?void 0:ae.url)??(null==ae?void 0:ae.path),{enabled:!!ne&&404===Ye}),Ke=null==L||null===(P=L.l10n)||void 0===P?void 0:P.countryName,Xe=(0,o.useMemo)(()=>null===h.Q||void 0===h.Q?void 0:h.Q.find(e=>(null==e?void 0:e.countryName)===Ke),[Ke]),Je=(0,o.useMemo)(()=>!Oe&&!!Ee&&!(0,c.by)(Ee),[Oe,Ee]);if(404===Ye)return ne?Qe?o.createElement(Q.A,{status:parseInt(null==We?void 0:We.statusCode,10)||301,to:(null==We?void 0:We.redirectUrl)||"/"}):null:(C.replace("/"),null);if(Je)return ne?o.createElement(Q.A,{status:301,to:"/"}):(C.replace("/"),null);const Ze=(0,F.Xw)(Ee,null==B?void 0:B.id),et=null==Ze?void 0:Ze.split("/")[2];let tt;try{tt=decodeURIComponent(ie)}catch{tt=ie}if(!Oe&&!be.isPreviousData&&Ze&&ie&&tt!==et){const e=`${R(Ze)}${w.search||""}`;return ne?o.createElement(Q.A,{status:301,to:e}):(C.replace(e),null)}let rt=!1;if(null!=Ee&&Ee.c_isGiftCard){let e=null==Xe?void 0:Xe.countryCode;"GB"===e&&(e="UK"),["SE","DE","UK"].includes(e)||(rt=!0)}if(rt)return o.createElement(ce,null);if(void 0!==Ye)throw(0,ue.Oz)(`HTTP Error ${Ye} occurred.`,Ye,"general error",null==w?void 0:w.pathname,"General_Error"),new W.HTTPError(Ye,`HTTP Error ${Ye} occurred.`);return o.createElement(u.az,{className:"sf-product-detail-page",layerStyle:"page","data-testid":"product-details-page"},o.createElement(V,{product:Ee,hreflangUrls:Pe}),o.createElement(p.B,null,Se||Te?o.createElement(o.Fragment,null,o.createElement(S.A,{product:Ee,category:$e,addToCart:Se?()=>{const e=Object.values(_e);return He(e)}:Ge,isProductLoading:Oe,isBasketLoading:z,validateOrderability:Ve,childProductOrderability:we,setSelectedBundleQuantity:Le}),o.createElement("hr",null),Be.childProducts.map(({product:e,quantity:t})=>o.createElement(u.az,{key:e.id,"data-testid":"child-product"},o.createElement(S.A,{ref:function(t){xe.current[e.id]={ref:t,validateOrderability:this.validateOrderability}},product:e,isProductPartOfSet:Se,isProductPartOfBundle:Te,childOfBundleQuantity:t,selectedBundleParentQuantity:je,addToCart:Se?(t,r)=>He([{product:e,variant:t,quantity:r}]):null,onVariantSelected:(e,r,n)=>{if(n)Ce(a=>he(he({},a),{},{[e.id]:{product:e,variant:r,quantity:Te?t:n}}));else{const t=he({},_e);delete t[e.id],Ce(t)}},isProductLoading:Oe,isBasketLoading:z,setChildProductOrderability:Ae}),o.createElement(T.A,{product:e}),o.createElement(u.az,{display:["none","none","none","block"]},o.createElement("hr",null))))):o.createElement(o.Fragment,null,o.createElement(S.A,{product:Ee,category:$e,addToCart:(e,t)=>He([{product:Ee,variant:e,quantity:t}]),isProductLoading:Oe,isBasketLoading:z}))),(null==Me?void 0:Me.name)&&o.createElement(Z.A,{dynamicYieldCampaignName:le.Y.PDP,title:_({id:"product.notFound.relatedProductsTitle",defaultMessage:[{type:0,value:"You may be interested in"}]}),category:(null==Me?void 0:Me.name)||"",shopMoreOnClick:()=>{var e;const t=(0,ge.x)(null==Ie?void 0:Ie.c_breadcrumbURL,[]),r=(null==t?void 0:t.length)-1,n=(null==Ie?void 0:Ie.c_breadcrumbURL)&&(null==t||null===(e=t[r])||void 0===e?void 0:e.url),a=null!=n&&n.startsWith("/")?n.substring(1):n;return a?j(R(`/c/${a}`)):$()},listName:ue.OI.RecommendedPDP,isRefetching:Oe}),o.createElement(u.az,{id:"pdp-cta-anchor",position:"sticky",bottom:0,zIndex:1e3,pointerEvents:"none"}))};Ee.getTemplateName=()=>"product-detail",Ee.propTypes={match:l().object};const Oe=Ee},89049(e,t,r){var n=r(10939),a=r(77810),o=r(75826),i=r.n(o),l=r(85394),d=r(54443),s=r(17778),c=r(27821),u=r(62539),p=r(57460),m=r(64965),y=r(68066),v=r(52240),g=r(95563),f=r(73448),b=r(34692),h=r(29764),E=r(47903);function O(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function k(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};
1t%2?O(Object(r),!0).forEach(function(t){(0,n.A)(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):O(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}const I=()=>{var e;const t=(0,d.Vl)("Header");return a.createElement(a.Fragment,null,a.createElement(s.r,{columns:{base:2,lg:4},spacing:0,sx:t.searchSuggestionsProductGrid},null===(e=new Array(12).fill(0))||void 0===e?void 0:e.map((e,t)=>a.createElement(p.A,{key:t,aspectRatio:2/3,isLoading:!0}))))},P=({dynamicYieldCampaignName:e,title:t,category:r,shopMoreOnClick:n,listName:o,isRefetching:i=!1})=>{var p,O;const P=(0,d.Vl)("Header"),_=(0,m.useHistory)(),C=(0,b.A)(),{locale:w}=(0,y.A)(),{data:A,isLoading:j}=(0,v.c)({selectorName:e,productLimit:12}),{addItemToWishlist:L,removeItemFromWishlist:x,customerProductListItems:S}=(0,h.A)(),T=(null==A||null===(p=A.productSearchResult)||void 0===p||null===(O=p.hits)||void 0===O?void 0:O.slice(0,12))||[],{sentinelRef:R}=(0,E.d)(T,!j&&!i,{listName:o}),D=C.formatMessage({id:"shop.more.button.label",defaultMessage:[{type:0,value:"Shop more"}]}),B="fi-FI"===(null==w?void 0:w.id)?r:`${D} ${r}`;return a.createElement(u.az,{ref:R},a.createElement(u.az,{sx:P.relatedProductsHeaddingContainer},a.createElement(c.E,{sx:P.relatedProductsHeadding},t)),j||i?a.createElement(I,null):a.createElement(s.r,{columns:{base:2,lg:4},spacing:0,sx:P.searchSuggestionsProductGrid,"data-testid":"related-products-grid"},null==T?void 0:T.map((e,t)=>{const r=null==S?void 0:S.some(({productId:t})=>t===e.id);return a.createElement(l.A,{key:e.productId+"-"+t,"data-testid":"search-suggestion-product-item",product:k(k({},e),{},{productId:e.id}),dynamicImageProps:{widths:{base:"160px",mobile:"212px",tablet:"512px",desktop:"360px",display:"640px"}},enableFavourite:!0,isFavourite:r,onFavouriteToggle:(t,r)=>(t?L:x)(e,r),imageViewType:f.aX,listName:o,listPosition:t+1,showGantHeritageLogo:!0})})),a.createElement(u.az,{sx:P.shopMoreBtnContainer},a.createElement(g.S,{variant:"secondary",label:B,sx:P.shopMoreBtn,onClick:n||(()=>_.goBack())})))};P.propTypes={dynamicYieldCampaignName:i().string.isRequired,title:i().string.isRequired,category:i().string,shopMoreOnClick:i().func,listName:i().string,wishlist:i().array,onFavouriteToggle:i().func,isRefetching:i().bool};const _=P;r.d(t,["A",0,_])}}]);
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.