1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3393],{63393:function(e,t,n){"use strict";n.r(t),n.d(t,{RecentlyViewed:function(){return x}});var l=n(52322),i=n(83112),r=n(49558),u=n(2784),o=n(51286),s=n(25204),a=n(73235),c=n(13282),d=n(46268);function g(){let e=(0,a._)(["\n query getProductWidget(\n $pageSize: Int!\n $currentPage: Int!\n $filters: ProductAttributeFilterInput!\n $sort: ProductAttributeSortInput\n ) {\n products(\n pageSize: $pageSize\n currentPage: $currentPage\n filter: $filters\n sort: $sort\n ) {\n items {\n ...listFragment\n }\n }\n }\n ","\n"]);return g=function(){return e},e}let f=(0,c.Ps)(g(),d.P);var p=n(48579),v=n(24818),y=n(66551);async function _(e){let{filter:t=null,context:n,query:l=f}=e;try{var i;let e={};t&&Object.keys(t).map(function(n,l){["page","slug"].includes(n)||(e[n]={in:t[n].split(",")})});let{data:r}=await (0,p.$S)(l,{variables:{pageSize:(null===v.themeConfig||void 0===v.themeConfig?void 0:null===(i=v.themeConfig.recentlyViewed)||void 0===i?void 0:i.count)||5,inputText:"",currentPage:1,filters:e},context:n});return await (0,y.B)(r)}catch(e){console.error(e)}return null}var m=n(77787),S=n(77865);let h=e=>{let t=[];if(localStorage.getItem(e))try{t=JSON.parse(localStorage.getItem(e))}catch(e){}return t},w=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,{user:t}=(0,s.ZP)(),{storeCode:n,currencyCode:l}=(0,m.l8)(),[i,r]=(0,u.useState)(h("recently_viewed_items")),[a,c]=(0,u.useState)(!1),d=(0,u.useMemo)(()=>{let t=h("recently_viewed_skus");return e&&t.length>v.themeConfig.recentlyViewed.count&&t.shift(),e&&!t.includes(e)&&(c(!0),t.push(e)),localStorage.setItem("recently_viewed_skus",JSON.stringify(t)),t},[e]),{data:g}=(0,o.ZP)(e&&a&&d.length?{filter:{sku:null==d?void 0:d.join(",")},context:{authToken:null==t?void 0:t.token,storeCode:n,currencyCode:l}}:null,_,{revalidateIfStale:!1});return{getRecentlyViewedItems:(0,u.useMemo)(async()=>{var e;if(g&&(null==g?void 0:null===(e=g.items)||void 0===e?void 0:e.length)){let e=g.items.sort((e,t)=>{let n=d.indexOf(!(0,S.h)(e)&&(null==e?void 0:e.parentSku)?e.parentSku:e.sku),l=d.indexOf(!(0,S.h)(t)&&(null==t?void 0:t.parentSku)?t.parentSku:e.sku);return n<l?1:n>l?-1:0});localStorage.setItem("recently_viewed_items",JSON.stringify(e)),r(e)}return i},[d,g,i]),items:i.filter(t=>{let{sku:n}=t;return n!==e})}};var k=n(218),I=n(90690),P=n(26988),V=n.n(P);let x=(0,r.x)(V())(e=>{let{classes:t,product:n=null}=e,{items:r}=w((0,S.h)(n)&&(null==n?void 0:n.parentSku)?null==n?void 0:n.parentSku:null==n?void 0:n.sku),{formatMessage:u}
1=(0,i.Z)(),o=u({id:"productPage.recentlyViewedTitle",defaultMessage:"Recently Viewed"});return r.length?(0,l.jsx)(k.G,{title:o,applyItemStyling:!0,products:r,extraClasses:{root:t.root,title:t.title,list_withItemStyling:t.list},dataCy:"recently-viewed",children:r.map((e,t)=>(0,l.jsx)(I.x,{item:e,listId:"recently_viewed",listName:"RecentlyViewed"},t))}):null})},26988:function(e){e.exports={primaryColor:"#ffed00",root:"recentlyViewed_root___8Fi5",list:"recentlyViewed_list__5JVFE",title:"recentlyViewed_title__c_DJf"}}}]);
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.