1"use strict";(globalThis.webpackChunknikon_client=globalThis.webpackChunknikon_client||[]).push([[2330,5298,5763,7262],{77450(e,t,a){a.d(t,{A:()=>b});var r=a(92727),l=a(89993),i=a(76439),n=a(47976),c=a(11661),o=a(77244),s=a(81894),d=a(35682),u=a(66665),m=a(84501),p=a(28885),f=a(97500),h=a.n(f),g=a(59471);const b=({addToBasketLabel:e,buyNowLink:t,category:a,className:f,fromPriceLabel:b,hidePriceFromSavePill:v,image:x,learnMoreLink:y,name:C,newProductLabel:E,pricingData:P,productNameClasses:k,savePriceLabel:A,shippingLabel:w,sku:R,statusLabels:N,tabletImageContainerHeight:S,thumbnail:L,trackingData:T,useShortCardOnMobile:I=!1,vatLabel:j,dataTestId:$,onAddToCart:F})=>{const[O,D]=(0,g.useState)(!1),M=(0,p.A)(1440),[W,B]=(0,g.useState)(0),z=(0,g.useRef)(null),H=JSON.stringify(T??""),_=e=>{T&&(0,u.A)({event:"intentToBuy",content_type:e,items:[(0,m.A)(T)]})},q=()=>{T&&(0,u.A)({event:"selectItem",ecommerce:{currency:T.currency,items:[(0,m.A)(T)]}})};(0,g.useEffect)(()=>{B(z.current?.clientHeight||0)},[]);const G={hover:{y:-W},initial:{y:0}},J={hover:{opacity:1},initial:{opacity:M?1:0}};return React.createElement("div",{onFocus:()=>D(!0),onBlur:()=>D(!1),onMouseEnter:()=>D(!0),onMouseLeave:()=>D(!1),"track-product-impression":"true","data-product":H,className:h()("pointer-events-auto relative flex h-full w-full flex-col justify-end gap-5 overflow-hidden rounded-[10px] bg-grey-200 px-5 py-8 xl:px-7 xl:py-15 dark:bg-grey-600",f),"data-testid":$},x&&React.createElement(i.A,{image:x,classes:"z-5 absolute top-0 right-0 left-0 m-2.5 md:m-5",imageClasses:"rounded-[10px] object-contain"}),(A||E||N)&&React.createElement("div",{className:"absolute top-0 left-0 z-20 flex w-full flex-row flex-wrap gap-4 p-5"},React.createElement(d.A,{dataTestId:"Product-Card-Tag",hidePriceFromSavePill:v,newProductLabel:E,pricingData:P,savePriceLabel:A,statusLabels:N})),React.createElement("div",{className:h()("relative flex h-full w-full flex-col lg:gap-4 2xl:gap-7.5",I?"gap-4":"gap-8")},React.createElement(n.A,{initial:"initial",className:h()("relative flex h-[254px] w-full shrink-0 items-center justify-center lg:h-[220px] xl:h-[250px] xl:pb-10 2xl:h-[300px]",S||"md:h-[165px]"),animate:O&&!M?"hover":"initial",variants:{hover:{y:-15,scale:1.1},initial:{y:0,scale:1}},transition:o.am},L&&React.createElement("a",{href:y?.url||t?.url,onClick:()=>{y?.url?_("product picture"):t?.url&&q()},"aria-label":C,className:"flex h-full w-full"},React.createElement(i.A,{image:L,classes:"z-10 w-full h-full",imageClasses:"w-full h-full object-contain",sizes:"(max-width: 768px) 376px, 500px",dataTestId:"Product-Card-Image"}),React.createElement(n.A,{initial:"initial",animate:O&&!M?"hover":"initial",variants:{hover:{opacity:.2},initial:{opacity:0}
1},className:"pointer-events-none absolute top-10 left-0 z-0 flex h-full scale-150 items-center justify-center"},React.createElement(r.A,{colour:s.A.Yellow,className:"hidden w-full object-contain dark:block"})))),React.createElement(n.A,{initial:"initial",animate:O&&!M?"hover":"initial",variants:G,transition:o.am,className:"relative flex w-full grow flex-col items-center justify-center gap-3 dark:text-white"},a&&React.createElement("p",{className:"body-two text-center","data-testid":"Product-Card-Category"},a),C&&React.createElement("p",{className:h()("h5 pb-7.5 text-center",k),"data-testid":"Product-Card-Name"},C),P?.formattedCalculatedPrice&&React.createElement(c.A,{pricingData:P,vatLabel:j,shippingLabel:w,fromPriceLabel:b,centerText:!0,containerClassName:"mt-auto",dataTestId:"Product-Card-Price-Display-Text"}),React.createElement(n.A,{initial:"initial",animate:O&&!M?"hover":"initial",variants:J,transition:{duration:.3},ref:z,className:h()("flex flex-col flex-wrap items-center justify-center gap-5 xl:absolute xl:top-full xl:flex-row xl:gap-[10px]",I?"pt-2":"pt-5"),"data-testid":"Product-Card-Item-Hover"},y?.name&&y?.url&&React.createElement(l.A,{link:y,secondary:!0,linkCallback:()=>_(y.name||"Learn more"),dataTestId:"Product-Card-Learn More"}),t?.url&&t?.name&&React.createElement("a",{href:t.url,"track-product-click":"true","data-product":H,className:"cta primary","data-testid":"Product-Card-Buy-Now",onClick:q},t.name),!(t?.url&&t?.name)&&e&&R&&F&&React.createElement(l.A,{onClick:()=>F(R),dataTestId:"Product-Card-Add-To-Cart"},e)))))}},4190(e,t,a){a.r(t),a.d(t,{default:()=>f});var r=a(47976),l=a(14120),i=a(77450),n=a(37875),c=a(90184),o=a(97500),s=a.n(o),d=a(32088),u=a(59471),m=a(90683);function p(){return p=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)({}).hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e},p.apply(null,arguments)}const f=({title:e="",items:t,isScrollAnimationEnabled:a=!1,embedded:o=!1,headerWrapperClassName:f,headerSlot:h,meta:g,anchorId:b="featured-product-carousel"})=>{const{productPageContent:v}=(0,n.A)(),{compatibleProducts:x}=v,y=(0,u.useRef)(null),C=(0,d.W)(y,{amount:.25}),[E,P]=(0,u.useState)(!1),k=void 0===x?t:x?.items??[];return(0,u.useEffect)(()=>{C&&P(!0)},[C]),k?.length?React.createElement("section",{ref:y,className:s()({"component-padding":!o},"bg-white text-black-100 dark:bg-black-100 dark:text-white"),id:`a-${b}`,"data-testid":"CT-35-Product-Carousel-Block"},React.createElement(l.A,{id:`product-carousel-${g?.contentLink??""}`,items:k,shadows:!0,slidesToShowDesktop:4,title:x?.title??e,headerWrapperClassName:a?"container":f,headerSlot:h,isScrollAnimationEnabled:a,isSoftLoadAnimationDisabled:o,isLoadedInView:E},e=>e.map(({ariaHidden:e,ariaLabel:t,...l},n)=>React.createElement(m.qr,{key:(0,c.A)(`${l.name}-${n}`),className:"stretch-card","aria-label":t},React.createElement("div",{inert:e||void 0,className:"h-full"},a?React.createElement(r.A,{className:"h-full",initial:{opacity:0,x:100},animate:E?{opacity:1,x:0}:{},transition:{duration:.75,ease:"easeInOut",delay:.2*(n+1)}},React.createElement(i.A,p({},l,{hidePriceFromSavePill:l.hidePriceFromSavePill,dataTestId:`CT-35-Product-Carousel-Card-${n}`}))):React.createElement(i.A,p({},l,{hidePriceFromSavePill:l.hidePriceFromSavePill,dataTestId:`CT-35-Product-Carousel-Card-${n}`}))))))):null}},55861(e,t,a){a.r(t),a.d(t,{default:()=>u});var r=a(47976),l=a(44578),i=a(719),n=a(13282),c=a(8222),o=a(4190),s=a(34629),d=a(59471);const u=({anchorId:e="",items:t,meta:a,title:u})=>{const[m,p]=(0,d.useState)(0),f=t?.filter(e=>e.title&&!!e.items?.length)??[],h=f.map(e=>e.title)??[],g=React.createElement(l.A,{threshold:.01,hasTabbableNestedItems:!0,className:"min-w-0"},React.createElement("div",{className:"flex gap-x-5"},h.map((e,t)=>{const a=t===m;return React.createElement(i.A,{key:e,text:e,tagType:a?n.A.Secondary:n.A.Primary,pointerStates:!a,disabled:a,onClick:()=>p(t)})})));return React.createElement("section",{className:"component-padding bg-white text-black-100 dark:bg-black-100 dark:text-white",id:`a-${e}`},React.createElement(c.A,null,u&&React.createElement("h2",{className:"container mb-7.5 lg:mb-10"},u),!!f?.length&&React.createElement(s.N,null,React.createElement(r.A,{initial:{opacity:0}
1,animate:{opacity:1},exit:{opacity:0,transition:{duration:0}},key:`${h[m]}-${m}`},React.createElement(o.default,{embedded:!0,meta:a??{},items:f[m].items,headerWrapperClassName:"xl:min-h-[2.5rem] gap-x-5 xl:gap-x-20",headerSlot:g})))))}},37875(e,t,a){a.d(t,{A:()=>r});const r=(0,a(44285).A)(e=>({productPageContent:{awardsCarousel:void 0,breadcrumbs:void 0,cardCarousel:void 0,customerQuotes:void 0,compatibleProducts:void 0,extendedWarrantyCTAFeature:void 0,featuredImageGallery:void 0,includedAccessories:void 0,optionalAccessories:void 0,productFootnote:void 0,productOverview:void 0,subheaderStatementCards:void 0,tabbedProductsCrossSellList:void 0,technicalSpecifications:void 0},setProductPageContent:t=>e({productPageContent:t})}))},90184(e,t,a){a.d(t,{A:()=>r});const r=e=>e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/(?:^-+|-+$)/g,"")},32088(e,t,a){a.d(t,{W:()=>n});var r=a(59471),l=a(57671);const i={some:0,all:1};function n(e,{root:t,margin:a,amount:n,once:c=!1,initial:o=!1}={}){const[s,d]=(0,r.useState)(o);return(0,r.useEffect)(()=>{if(!e.current||c&&s)return;const r={root:t&&t.current||void 0,margin:a,amount:n};return function(e,t,{root:a,margin:r,amount:n="some"}={}){const c=(0,l.K)(e),o=new WeakMap,s=new IntersectionObserver(e=>{e.forEach(e=>{const a=o.get(e.target);if(e.isIntersecting!==Boolean(a))if(e.isIntersecting){const a=t(e.target,e);"function"==typeof a?o.set(e.target,a):s.unobserve(e.target)}else"function"==typeof a&&(a(e),o.delete(e.target))})},{root:a,rootMargin:r,threshold:"number"==typeof n?n:i[n]});return c.forEach(e=>s.observe(e)),()=>s.disconnect()}(e.current,()=>(d(!0),c?void 0:()=>d(!1)),r)},[t,e,a,c,n]),s}}}]); 2//# sourceMappingURL=TabbedProductListing-Chunk-af12cac9f4ceb26c0d24.js.map
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.