(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[824],{4824:function(t,e,i){"use strict";i.r(e),i.d(e,{default:function(){return W}});var n=i(5944),a=i(7294),l=i(6524);i(9409);var o=i(5203),r=i(917),c=i(9017),s=i(3302);let h=t=>{var e,i,l;let{ariaHidden:o,className:r,explicitImgixHeightHack:c,lazyload:h,onClick:d,picture:u,unscaledWidth:p}=t,[g,m]=(0,a.useState)(!1),f=(0,a.useRef)(null),x=t=>{if(!t)return;let e=c?c/p:null;return t.map(t=>{let i="";if(e){let n=Math.round(t.width*e),a=t.url.includes("?")?"&":"?";i="".concat(a,"h=").concat(n)}return"".concat(t.url).concat(i," ").concat(t.width||1,"w")}).join(",")},v=x(null===(e=u.variations)||void 0===e?void 0:e.default),w=(null===(l=u.variations)||void 0===l?void 0:null===(i=l.priorityTypes)||void 0===i?void 0:i.map(t=>({type:t.type,srcSet:x(t.images)})))||[],y=(0,s.TC)(p),b=u.altText||"";return g?(0,n.tZ)("div",{style:{height:"100%",width:"100%",backgroundColor:"#EEEEEE",display:"flex",alignItems:"center",justifyContent:"center"},children:(0,n.tZ)("img",{src:"non-existent.jpg"})}):(0,n.BX)("picture",{style:{top:0,left:0,height:"100%",width:"100%"},children:[w.map((t,e)=>(0,n.tZ)("source",{type:t.type,srcSet:t.srcSet},e)),(0,n.tZ)("img",{ref:f,style:{maxHeight:"100%",maxWidth:"100%"},alt:b,title:u.title,src:u.imageUrl,srcSet:v,sizes:y,className:r,loading:h?"lazy":"eager","aria-hidden":"true"===o,onError:()=>{m(!0)},onClick:d||null,onKeyDown:d||null})]})},d=(0,r.iv)({width:"8px",height:"8px",borderRadius:"100%",backgroundColor:"white",boxShadow:"0px 1px 2px rgba(0,0,0,0.15)",opacity:".45",margin:"0 4px",mixBlendMode:"difference",transition:"all .3s ease","&.active":{opacity:1},flexShrink:0,cursor:"pointer"}),u=(0,r.iv)({position:"absolute",transform:"translate3d(0, 0, 0)",bottom:"20px",zIndex:500,left:0,height:0,display:"flex",width:"100%",justifyContent:"center",alignItems:"center"}),p=(0,r.iv)({transition:"transform .3s ease",display:"flex"});var g=t=>{let{pageList:e,currentPageIndex:i,onDotClick:a,children:l}=t,o=e.length>7,c=(0,r.iv)({width:"".concat(o?"".concat(112,"px"):"auto"),overflow:"hidden",paddingBottom:"2px",maskImage:"linear-gradient(to right, transparent 0%, black ".concat(o&&i>=5?40:0,"px, black calc(100% - ").concat(40,"px), ").concat(o&&i<=e.length-6?"transparent":"black"," 100%)")});return e.length<=1?null:(0,n.tZ)("div",{css:u,children:(0,n.BX)("div",{style:{position:"relative"},children:[(0,n.tZ)("div",{css:c,children:(0,n.tZ)("div",{css:p,style:{transform:"translateX(-".concat(i>=5?i>=e.length-4?16+16*(e.length-4-5+1):16+16*(i-5+1):0,"px)")},children:e.map((t,e)=>{let l={className:"".concat(e===i?"active":""),onClick:t=>{t.preventDefault(),a(e)}};return t.slug&&"string"==typeof t.slug?(0,n.tZ)("a",{href:"/".concat(t.slug),css:d,...l},e):(0,n.tZ)("div",{css:d,...l},e)})})}),l]})})};let m=(0,r.iv)("& .swiper-button-prev,& .swiper-button-next{height:100%;position:absolute;}"),f=(0,r.iv)({width:"100%",height:"100%",cursor:"pointer"});var x=t=>{let{height:e,imageIndex:i,isAboveTheFold:l,pictures:o,showLightbox:r,width:s}=t,[d,u]=(0,a.useState)(0),[p,x]=(0,a.useState)(null),v=function(t){let e=(0,a.useRef)();return(0,a.useEffect)(()=>(e.current=t,()=>{e.current=void 0}),[t]),e.current}(i);(0,a.useEffect)(()=>{v!==i&&p&&p.slideTo(i+1)},[i,p]);let w=(0,a.useCallback)(t=>{p||x(t)},[]);return o.length>1?(0,n.BX)("div",{css:m,onMouseDown:t=>{t.stopPropagation()},children:[(0,n.tZ)(g,{pageList:o,currentPageIndex:d,onDotClick:t=>{p&&p.slideTo(t+1)}}),(()=>{let t=o.map((t,i)=>(0,n.tZ)(c.Mi,{children:(0,n.tZ)(h,{ariaHidden:"",css:f,explicitImgixHeightHack:e,lazyload:!l,onClick:t=>{t.preventDefault()},picture:t,unscaledWidth:s},"img_carousel_".concat(i))},i));return(0,n.tZ)(c.tq,{swiperOptions:{slidesPerView:1,loop:!0,loopedSlides:0},onInitSwiper:w,onTransitionStart:t=>{u(t.realIndex)},onClick:(t,e)=>{e.target.className.includes("swiper-button-")||r(d)},children:t})})()]}):(0,n.tZ)(h,{css:f,explicitImgixHeightHack:e,lazyload:!l,onClick:t=>{t.preventDefault()},picture:o[0],unscaledWidth:s},"img_carousel_only")},v=t=>{let{height:e,isAboveTheFold:i,pictures:a,showLightbox:l,width:o}=t,c=Math.round(Math.sqrt(a.length)),s=Math.floor(a.length/c),d=a.length-c*s,u=[];for(let t=0;t<s;t++)u.push(c);d>0&&u.push(d);let p=[],g=0,m=e/u.length,f=1/u.length*100;u.forEach((t,e)=>{let i=Math.ceil(o/t),n=100/t;for(let l=0;l<t;l++){let o="calc(".concat(n,"% - ").concat((t-1)/t*1,"px)"),c="calc(".concat(f,"% - ").concat((u.length-1)/u.length*1,"px)"),s="calc(".concat(f*e,"% + ").concat(1/u.length*1*e,"px)"),h="calc(".concat(n*l,"% + ").concat(1/t*1*l,"px)");p.push({style:(0,r.iv)({position:"absolute",width:o,height:c,top:s,left:h,cursor:"pointer"}),picture:a[g],imageWidth:i,imageHeight:m}),g++}});let x=p.map((t,e)=>(0,n.tZ)("div",{css:t.style,children:(0,n.tZ)(h,{className:"hover-bright",explicitImgixHeightHack:t.imageHeight,lazyload:!i,onClick:()=>l(e),picture:t.picture,unscaledWidth:t.imageWidth})},"img_grid_".concat(e)));return(0,n.tZ)(n.HY,{children:x})},w=t=>{let{displayStyle:e,height:i,isAboveTheFold:a,pictures:l,showLightbox:o,width:c}=t,s={rows:{imageHeight:i/l.length,imageWidth:c,rowWidth:100,rowHeight:1/l.length*100},columns:{imageHeight:i,imageWidth:c/l.length,rowWidth:1/l.length*100,rowHeight:100}},d=s[e]||s.columns;return l.map((t,i)=>{let l=(0,r.iv)({position:"absolute",width:"".concat(d.rowWidth,"%"),height:"".concat(d.rowHeight,"%"),top:"rows"===e?"".concat(d.rowHeight*i,"%"):0,left:"rows"===e?0:"".concat(d.rowWidth*i,"%"),cursor:"pointer"});return(0,n.tZ)("div",{css:l,children:(0,n.tZ)(h,{className:"hover-bright",explicitImgixHeightHack:d.imageHeight,lazyload:!a,onClick:()=>o(i),picture:t,unscaledWidth:d.imageWidth})},"img_".concat(i))})};class y extends a.Component{render(){let t=this.state.assetInfo;if(!t)return null;let{width:e,height:i,isAboveTheFold:a,pictures:l}=this.props,{zIndexList:o,randomOffsets:c}=this.state,s="".concat(80,"%"),d=e/i,u=Math.floor(.8*e),p=Math.floor(.8*i);return l.map((l,g)=>{let m=t[l.imageUrl]||{height:100,width:100},f=m.width/m.height,x=0===o[g],v={},w=u,y=p/m.height*m.width,b=u/m.width*m.height;f<1?(v.height=s,v.left="".concat(50+c[g].x-y/2/e*100,"%"),v.top="".concat(50+c[g].y-p/2/i*100,"%"),w=Math.round(m.width*p/m.height)):f>1?(v.left="".concat(50+c[g].x-u/2/e*100,"%"),v.top="".concat(50+c[g].y-b/2/i*100,"%"),v.width=s):d<1?(v.left="".concat(50+c[g].x-u/2/e*100,"%"),v.top="".concat(50+c[g].y-b/2/i*100,"%"),v.width=s):d>1?(v.height=s,v.left="".concat(50+c[g].x-y/2/e*100,"%"),v.top="".concat(50+c[g].y-p/2/i*100,"%")):(v.height=s,v.width=s,v.left="".concat(50+c[g].x-y/2/e*100,"%"),v.top="".concat(50+c[g].y-b/2/i*100,"%"));let Z=(0,r.iv)({transition:"left 0.2s, top 0.2s, opacity 0.3s",filter:"drop-shadow(0 0 6px rgba(0, 0, 0, 0.15))",position:"absolute",zIndex:1e3-o[g],cursor:x?"pointer":"inherit",...v});return(0,n.tZ)("div",{css:Z,children:(0,n.tZ)(h,{lazyload:!a,onClick:()=>{if(x){let t=this.state.randomOffsets;t[g]={x:this.getRandomInt(-9,9),y:this.getRandomInt(-9,9)},this.setState({zIndexList:this.rotateArray(this.state.zIndexList,1),randomOffsets:t})}},picture:l,unscaledWidth:w})},"img_stack_".concat(g))})}constructor(t){super(t),this.getAssetInfo=()=>{let{pictures:t}=this.props;Promise.all(t.map(async t=>{var e;let i=null;if((null===(e=t.variations)||void 0===e?void 0:e.default)&&(i=t.variations.default[t.variations.default.length-1]),i&&i.height)return{height:i.height,width:i.width};try{let e="".concat(t.imageUrl.split("?")[0],"?fm=json"),i=await fetch(e).then(t=>t.json());if(i.PixelWidth&&i.PixelHeight)return{height:i.PixelHeight,width:i.PixelWidth}}catch(t){}let n=(null==i?void 0:i.width)||100;return{height:n,width:n}})).then(e=>{let i={};e.forEach((e,n)=>{i[t[n].imageUrl]=e}),this.setState({assetInfo:i})})},this.getRandomInt=(t,e)=>Math.floor(Math.random()*(e-t))+t,this.rotateArray=(t,e)=>{if((e%=t.length)<t.length-e)for(;e--;)t.unshift(t.pop());else for(e=t.length-e;e--;)t.push(t.shift());return t};let e=[],i=[];t.pictures.forEach((t,n)=>{e.push({x:this.getRandomInt(-9,9),y:this.getRandomInt(-9,9)}),i.push(n)}),this.state={randomOffsets:e,zIndexList:i,assetInfo:null},this.getAssetInfo()}}let b=t=>{let{activeThumbnailIndex:e,height:i,isAboveTheFold:a,marginWidth:l,numImages:o,pictures:c,setActiveThumbnail:s,width:d}=t,u=Math.round(d/o),p=100/o,g=u/i*100,m="calc(".concat(p,"% - ").concat((o-1)*l/o,"px)"),f="calc(".concat(g,"% - ").concat(l,"px)"),x=c.map((t,i)=>{let c="calc(".concat(i*p,"% + ").concat(1/o*l*i,"px)"),d=(0,r.iv)({backgroundColor:e===i?"white":"",opacity:e===i?.5:1,position:"absolute",bottom:0,left:c,width:m,height:f,cursor:"pointer"}),g=(0,r.iv)({position:"absolute"});return(0,n.tZ)("div",{css:d,children:(0,n.tZ)(h,{ariaHidden:"",className:"hover-bright",css:g,explicitImgixHeightHack:u,lazyload:!a,onClick:()=>s(i),picture:t,unscaledWidth:u})},"thumbnail_".concat(i))});return(0,n.tZ)(n.HY,{children:x})},Z=t=>{let{activeThumbnailIndex:e,height:i,isAboveTheFold:a,numImages:l,pictures:o,showLightbox:c,width:s}=t,d=100-s/l/i*100,u=(0,r.iv)({position:"absolute",top:0,left:0,width:"100%",height:"".concat(d,"%"),cursor:"pointer"});return(0,n.tZ)("div",{css:u,children:(0,n.tZ)(h,{ariaHidden:"",explicitImgixHeightHack:d/100*i,lazyload:!a,onClick:()=>c(e),picture:o[e],unscaledWidth:s})})};var k=t=>{let{height:e,imageIndex:i,isAboveTheFold:l,pictures:o,showLightbox:c,width:s}=t,[h,d]=(0,a.useState)(i||0),u=o.length;return(0,n.BX)(n.HY,{children:[(0,r.az)(b,{activeThumbnailIndex:h,height:e,isAboveTheFold:l,marginWidth:1,numImages:u,setActiveThumbnail:d,pictures:o,width:s,key:"thumbnails"}),(0,r.az)(Z,{activeThumbnailIndex:h,pictures:o,height:e,isAboveTheFold:l,numImages:u,width:s,showLightbox:c,key:"featured-image"})]})},H=i(7e3),I=i(9058);i(5635);var C=i(8855),W=t=>{let{data:e,context:i}=t,{aspectRatio:r,layoutName:c,pictures:s,unscaledBlockSize:h}=e,{isAboveTheFold:d}=i,[u,p]=(0,a.useState)(!1),[g,m]=(0,a.useState)(0),f=(0,a.useMemo)(()=>s.map(t=>(0,H.$)(t)),[s]),b=(0,a.useMemo)(()=>(0,I.Z)(),[s]),{enable:Z,disable:W}=(0,a.useContext)(o.Z),S=t=>{let e=0;f[t]&&(e=t),p(!0),m(e),W()},M={aspectRatio:(0,C.W)(r)},z=f.map(t=>({src:t}));return(0,n.BX)("div",{className:"photogallery-block",style:M,children:[(()=>{let t={showLightbox:S,pictures:s,width:h.width,height:h.height,imageIndex:g,isAboveTheFold:d};switch(c){case"carousel":return(0,n.tZ)(x,{...t});case"columns":return(0,n.tZ)(w,{...t,displayStyle:"columns"});case"grid":return(0,n.tZ)(v,{...t});case"rows":return(0,n.tZ)(w,{...t,displayStyle:"rows"});case"stacks":return(0,n.tZ)(y,{...t});case"thumbnails":return(0,n.tZ)(k,{...t})}})(),(0,n.tZ)(l.ZP,{open:u,index:g,close:()=>{p(!1),Z()},slides:z})]},b)}},5635:function(){}}]);