(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9186],{10956:function(e,t,r){"use strict";r.r(t),r.d(t,{__N_SSP:function(){return h}});var a=r(94922),s=r(46420),l=r(36796),i=r(64897),n=r(50530),o=r(58139),c=r(75668),u=(r(66998),r(92072)),d=r(52322);var h=!0;t.default=function(e){let{page:t,preview:r,renderFullBleedPageHero:h}=e;const p=(0,i.Z)(),m=t.content.pageHeader.heading,g=t.content?.productsCategoryUid,f=[{href:"/",title:"Home"},{href:"/store",title:"My Nintendo Store"},{href:"/store/merchandise",title:"Merchandise"},{href:"/store/merchandise/[slug]",title:m}],b=a.e.MERCHANDISE,y=(0,u.XD)({category:b,productsCategoryUid:g,merchandisedGrid:t?.content?.merchandisedGrid,router:p});return g?(0,d.jsx)(s.X$,{router:p,categoryConfig:y,defaultCategory:b,searchParamWhitelist:n.uy,preserveQueryParamKeys:n.aq,children:(0,d.jsx)(o.Z,{preview:r,breadcrumbLinks:f,page:t.content,pageIcon:"t-shirt",cachePrefix:`${(0,l.GL)(m)}`,filterSections:a.I,analytics:{eventPrefix:`Merchandise:${m}`,pageName:`Merchandise PLP - ${m}`},fullBleedHero:h})}):(0,d.jsx)(c.Z,{preview:r,breadcrumbLinks:f,page:t.content,filterSections:a.I,analytics:{pageName:`Merchandise PLP - ${m}`}})}},75668:function(e,t,r){"use strict";var a=r(82269),s=r(95235),l=r(2784),i=r(5632),n=r.n(i),o=r(82091),c=r(97224),u=r(94922),d=r(46420),h=r(51505),p=r(82732),m=r(97895),g=r(24574),f=r(1505),b=r(25698),y=r(85288),j=r(38280),v=r(9873),x=r(33721),P=r(36796),S=r(13852),k=r(80963),w=r(57912),M=r(5297),O=(r(71105),r(50530)),F=r(72354),C=r(32075),H=r(11034),N=r(29019),L=r(42924),B=r(47975),E=r(62898),_=r(52322);const D=["title","attribute"];function z(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function I(e){for(var t=1;t{let{preview:t,breadcrumbLinks:r,filterSections:s,lightScrim:O,page:z,pageIcon:Z,sortByOptions:$,showRating:A,analytics:R,enableStickyCollectionNav:q,fullBleedHero:G,cmsProductPageSize:V,hiddenFilters:U,disableDefaultMarketingPageHeading:X}=e;const{pageHeader:K,ctaCollection:Q,merchandisedGrid:Y,legalText:J,marketingPage:W}=z||{},ee=W?L[W?.templateName??"plmpStandard"]:null,te=X?l.Fragment:m.H.NewLevel,re=(0,S.O_)(),{text:ae}=(0,o.useLocalizer)(),{trackLoadMoreProducts:se}=(0,u.u)(),le=(0,i.useRouter)(),{asPath:ie,pathname:ne,query:oe}=le,ce=(0,S.D9)(oe?.slug),ue=(0,o.useFeature)("wdev-1631-horizontal-tiles"),de=ue?.variant?.payload?.value,he=(0,k.Z)(k.o.TABLET_SMALL),pe="horizontal"===de&&!he,me=(0,o.deserializeHash)(ie),ge=(0,l.useRef)(),{0:fe,1:be}=(0,l.useState)((()=>$.find((e=>{let{param:t}=e;return t===me.sort}))?.value||$[0].value)),{0:ye,1:je}=(0,l.useState)((()=>parseInt(me.p)||0)),{isFilterModalOpen:ve,selectedSortByOption:xe,toggleModalFiltersMenu:Pe,handleSortByChange:Se}=(0,d.sI)({sortBy:fe,sortByOptions:$,analytics:R,applySortBy:e=>{be((()=>e))}}),ke=(0,l.useMemo)((()=>$.map((e=>{let{value:t,label:r}=e;return{value:t,label:ae(r)}}))),[$,ae]),we=(0,l.useMemo)((()=>({value:xe.value,label:ae(xe.label)})),[xe,ae]),Me=(0,l.useMemo)((()=>s.map((e=>{let{attribute:t}=e;return t}))),[s]),Oe=(Y||[]).flat(),Fe=(Y||[]).flat().filter((e=>{let{sku:t}=e;return Boolean(t)})),{appliedFilters:Ce,appliedFiltersQuery:He,filteredProducts:Ne,filteredState:Le,refine:Be,refineByQuery:Ee,clearFilters:_e}=(0,S.x3)(Fe,Me,{operator:S.fP.AND,queryToInitializeFilters:me,hidden:U}),De=0===Ce?.length&&xe.value===$[0].value,ze=(0,k.Z)(k.o.DESKTOP),Ie=(0,l.useRef)();Ie.current=ze;const Te=De?Oe:Ne,Ze=(0,l.useMemo)((()=>Te.slice(0,(V||Te.length)*(ye+1))),[ye,Te,V]),$e=Ze.lengthfe?[...Ze].sort(fe):Ze),[Ze,fe]),Re=(0,l.useCallback)((()=>{const e=(0,o.deserializeHash)(ie),t=$.find((t=>{let{param:r}=t;return r===e.sort}))?.value||$[0].value;Ee(e),be((()=>t)),je(parseInt(e.p)||0)}),[$,ie,Ee]),qe=(0,l.useCallback)((e=>{const t=$.find((e=>{let{value:t}=e;return t===fe}))?.param||$[0].value;return`#${new URLSearchParams(I(I({},e),{},{sort:t,p:ye})).toString()}`}),[$,fe,ye]),Ge=(0,l.useCallback)((e=>(je((()=>0)),e)),[]),Ve=(0,l.useCallback)((function(){Ge(Be)(...arguments)}),[Be,Ge]),Ue=(0,l.useCallback)((function(){Ge(_e)(...arguments)}),[_e,Ge]),Xe=(0,l.useCallback)((function(){Ge(Se)(...arguments)}),[Se,Ge]),Ke=(0,l.useCallback)((()=>{const{pageName:e}=R;se(e);const t=(0,o.deserializeHash)(),r=ye+1;t.p=r,je((()=>r))}),[ye,R,se]),Qe=(0,l.useMemo)((()=>qe(He)),[He,qe]),Ye=(0,l.useMemo)((()=>Ce.map((e=>({attribute:e.split(S.HA)[0],label:e.split(S.HA)[1],value:e})))),[Ce]),Je=(0,l.useMemo)((()=>R?.featureFlag?{featureFlag:R.featureFlag}:{featureFlag:ue?.id,featureFlagVariant:de}),[R,ue,de]),We=(0,l.useMemo)((()=>s.filter((e=>{let{attribute:t}=e;return Le[t]?.items?.length>0})).map(((e,t)=>{let{title:r,attribute:s}=e,l=(0,a.Z)(e,D);return(0,_.jsx)(M.vT,I({attribute:s,title:r&&ae(r),startCollapsed:0!==t,refine:Ve,items:Le[s]?.items||[],showMoreLabel:ae("Show more"),showLessLabel:ae("Show less"),collapsible:!0,limit:5,showMore:!0,analytics:{pageName:R?.pageName}},l),s)}))),[s,Le,Ve,ae,R]),et=(0,l.useMemo)((()=>(0,_.jsxs)(_.Fragment,{children:[(0,_.jsx)(M.en,{$singleColumnMobile:pe,children:Ae.map(((e,t)=>e.sku?(0,l.createElement)(x.I8,I(I(I({},Je),{},{key:e.sku+t},e),{},{constrain:!1,showRating:A||Boolean(le.query[F.Tx.UTM_CODE])||!1,mobileHorizontal:pe,analytics:{listDetails:{id:`clp-${(0,P.GL)(R.pageName)}`,name:R.pageName}}})):(0,_.jsx)(H.Z,{asset:e.asset.primary.assetPath,cta:e.cta,heading:e.heading},e.heading+t)))}),$e&&(0,_.jsx)(E.VR,{children:(0,_.jsx)(g.B,{variant:"tertiary",icon:f.Z,onClick:Ke,children:ae("Load more")})})]})),[le.query,R,Je,A,$e,Ae,pe,Ke,ae]);(0,w.Z)({isDesktop:ze,scrollToRef:ge,scrollToElementID:T,enableStickyCollectionNav:q,pillFarm:Q.list}),(0,l.useEffect)((()=>{n().push({pathname:n().pathname,query:n().query,hash:Qe},null,{shallow:!0}).catch((e=>{if(!e.cancelled)throw e}))}),[Qe]),(0,P.nw)((()=>{Re()})),(0,l.useEffect)((()=>{!0===Ie.current&&ge.current&&(0,P.n5)(ge.current,{offsetY:q&&B.d})}),[Ce.length,q]),(0,l.useEffect)((()=>{q&&ge.current&&oe?.slug!==ce&&(0,P.n5)(ge.current,{offsetY:B.d,behavior:"smooth",onlyScrollIfAbove:!0})}),[q,oe?.slug,ce]),(0,l.useEffect)((()=>{const e=oe?.slug;Boolean(ce)&&Boolean(e)&&e!==ce&&Re()}),[Re,ce,oe?.slug]);const tt=(0,l.useMemo)((()=>r?(0,_.jsx)(b.B,{currentPage:ne,children:r.map(((e,t)=>(0,_.jsx)(c.Z,{href:e.href,children:(0,_.jsx)("a",{children:ae(e.title)})},e.title+t)))}):null),[r,ae,ne]),rt=(0,l.useMemo)((()=>K?.asset?.primary?.assetPath?G?(0,_.jsxs)(_.Fragment,{children:[(0,_.jsx)(y.F,{heading:K.heading,subtitle:K.description,image:{desktop:{assetPath:K.asset?.primary?.assetPath},mobile:{assetPath:K.asset?.secondary?.assetPath}},pillFarm:Q.list,icon:Z}),(0,_.jsx)(M.Hr,{})]}):(0,_.jsx)(M.tm,{iconName:Z,content:{assetPath:K.asset?.primary?.assetPath,assetPathAlt:K.asset?.alt,background:K.background,cta:K.cta,description:K.description,heading:K.heading,modifiers:K.modifiers},lightScrim:O}):null),[K,G,Z,O,Q]);return(0,_.jsxs)(N.Kq,{preview:t,children:[W&&(0,_.jsx)(te,{children:(0,_.jsx)(ee,{marketingPage:W})}),r&&(0,_.jsx)(M.JL,{children:tt}),rt,(0,_.jsxs)(m.H.NewLevel,{children:[!G&&Q?.list.length>0&&(0,_.jsx)(M.$0,{constrained:!0,small:!0,divider:["bottom"],children:(0,_.jsx)(M.l6,{center:!0,items:Q.list})}),(0,_.jsx)("span",{ref:ge,id:"products","data-drawer-id":T}),(0,_.jsx)(j.S,{size:36,axis:"vertical"}),(0,_.jsxs)(M.He,{children:[(0,_.jsxs)(E.zB,{$breadcrumbs:!!r,children:[(0,_.jsx)(h.D,{children:tt}),(0,_.jsx)(p.S,{label:ae("Sort by"),onSelect:Xe,options:ke,dropdownValue:re?we:null}),(0,_.jsx)(h.M,{children:(0,_.jsx)(M.Lb,{icon:v.Z,variant:"tertiary",onClick:Pe,children:ae("Filter")})})]}),(0,_.jsx)(j.S,{size:32,axis:"vertical"}),(0,_.jsx)(M.dA,{enableStickyFilterPanel:!0,isFilterModalOpen:ve,toggleModalFiltersMenu:Pe,attributeFilterSets:We,isDesktop:ze,stickyOffset:q&&parseInt(C.TH)+16,customizeFilters:{clearFilters:Ue,removeFilter:Ve,activeFilters:Ye,totalHits:Ne.length},children:et}),J&&(0,_.jsx)(E.VH,{children:(0,_.jsx)(M.Ho,{data:J,textVariant:"legal"})})]}),(0,_.jsx)(M.y4,{})]})]})};Z.defaultProps={sortByOptions:O.Op},t.Z=Z},89554:function(e,t,r){(window.__NEXT_P=window.__NEXT_P||[]).push(["/store/merchandise/[slug]",function(){return r(10956)}])}},function(e){e.O(0,[5208,8286,4511,2072,5297,9019,7106,8139,9774,2888,179],(function(){return t=89554,e(e.s=t);var t}));var t=e.O();_N_E=t}]);