/* Minification failed. Returning unminified contents.
(1,96-97): run-time error JS1195: Expected expression: >
(1,456-457): run-time error JS1002: Syntax error: }
(1,2703-2704): run-time error JS1002: Syntax error: }
(1,2879-2880): run-time error JS1002: Syntax error: }
(1,3272-3273): run-time error JS1002: Syntax error: }
(1,3287-3288): run-time error JS1197: Too many errors. The file might not be a JavaScript file: =
 */
(self.webpackChunkscan_mvc_site=self.webpackChunkscan_mvc_site||[]).push([[410],{10991:(e,t,n)=>{var r=n(82702),o=n(19755),a=n(25046);e.exports={create:function(e){return new r((function(t,n){var r=a.urls.getLocalUrl("/ajax/logger"),i=!1;if(Boolean(navigator.sendBeacon)&&(i=navigator.sendBeacon(r,function(e){var t=new FormData;for(var n in e)t.append(n,e[n]);return t}(e))),i)t();else{var u=o.ajax({method:"POST",data:e,url:r});u.done(t),u.fail(n)}}))}}},85756:(e,t,n)=>{var r=n(41996),o=n(19755),a=n(25046),i=n(82702),u=new(n(63675))(n(22303).profiles.basket),c=function(e,t){return new i((function(n,r){l(e,t).then((function(e){var t=e.basket,r=e.checkoutOptions;u.set({basket:t,checkoutOptions:r}),n(e)})).catch(r)}))};function l(e,t){return o.ajax({url:a.urls.ajaxBasket+"/"+e,data:t,method:"POST"})}e.exports={addProducts:function(e){return null===e.webProductIds||void 0===e.webProductIds?(r.error("You must supply a valid webProductId when adding products"),null):(r.log("BasketApi: adding the following bundle "+e.webProductIds.join(",")),c("addproducts",{actionSource:e.actionSource,webProductIds:e.webProductIds}))},changeProductQuantity:function(e){return c("changeproductquantity",{actionSource:e.actionSource,webProductId:e.webProductId,quantity:e.quantity})},decreaseProductQuantity:function(e){return(!e.webProductId||e.webProductId<=0)&&r.error("You must supply a valid webProductId when adding a product (value: "+e.webProductId+")"),r.log("BasketApi: decreasing quantity of product "+e.webProductId),c("decreaseproductquantity",{actionSource:e.actionSource,webProductId:e.webProductId})},getBasket:function(e){var t=Boolean(e&&e.disableCache);if(r.log("BasketApi.getBasket (disableCache=".concat(t,")")),!t){var n=u.get();if(n)return new i((function(e){return e(n)}))}return c("getcurrent")},getScansureSelection:function(){return l("getscansureselection",null)},increaseProductQuantity:function(e){return(!e.webProductId||e.webProductId<=0)&&r.error("You must supply a valid webProductId when adding a product (value: "+e.webProductId+")"),r.log("BasketApi: increasing quantity of product "+e.webProductId),c("increaseproductquantity",{actionSource:e.actionSource,webProductId:e.webProductId})},setCarriageLocation:function(e,t){return u.clear(),l("setcarriagelocation",{postcode:e,countryCode:t})},setCarriageProduct:function(e,t){return u.clear(),l("setcarriageproduct",{deliveryMethod:e,carriageProductId:t})},setScansureSelection:function(e){return u.clear(),l("setscansureselection",{selection:e})},shareBasket:function(e){var t=e.emailAddress,n=e.emailSubscribe,r=e.emailConsentPrompt;return u.clear(),l("sharebasket",{emailAddress:t,emailSubscribe:n,emailConsentPrompt:r})}}},48698:(e,t,n)=>{var r=n(41996),o=n(19755),a={getCompareHtml:function(e){return r.log("Getting Compare Html"),o.ajax({url:"/compare",data:{Ids:e},method:"POST"})}};e.exports=a},68275:(e,t,n)=>{var r=n(19755),o=n(41996),a=n(25046);!function(){var t=a.urls.jsonMenu,n={getSite:function(e){return o.info("Getting site for menu [siteId: "+e+"]"),i(t+"/"+e+"/")},getMasterCategory:function(e,n){return o.info("Getting masterCategory for menu [siteId: "+e+", masterCategoryId: "+n+"]"),i(t+"/"+e+"/"+n+"/")}};function i(e){return r.ajax({method:"POST",url:e})}e.exports=n}()},22149:(e,t,n)=>{var r=n(19755),o=n(41996),a=n(25046),i=null;e.exports={search:function(e){var t=a.urls.ajaxSearch;return i&&4!==i.readyState&&(o.info("Aborting last request"),i.abort(),i=null),r.ajax({beforeSend:function(e){i=e},method:"POST",data:e,url:t})}}},21267:(e,t,n)=>{"use strict";var r=n(19755),o=n(41996),a=n(25046),i={setProductListingView:function(e){return o.info('Updating product listing view to "'+e+'"'),r.ajax({method:"POST",data:{value:e},url:a.urls.userSession.setProductListingView})},setShowProductFilter:function(e){return o.info('Updating ShowProductFilter "'+e+'"'),r.ajax({method:"POST",data:{value:e},url:a.urls.userSession.setShowProductFilter})},setShowExVatPricing:function(e){return o.info('Setting ShowExVatPricing "'+e+'"'),r.ajax({method:"POST",data:{value:e},url:a.urls.userSession.setShowExVatPricing})}};e.exports=i},67588:(e,t,n)=>{e.exports={getInstance:function(){return n.g.window.appInsights}}},30806:(e,t,n)=>{function r(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var a=n(19755),i=function(e){return e&&"[object Function]"==={}.toString.call(e)},u=[],c=!1;a((function(){c=!0;var e,t=r(u);try{for(t.s();!(e=t.n()).done;)(0,e.value)()}catch(e){t.e(e)}finally{t.f()}}));var l=[];e.exports={onPageLoad:function(e){if(!i(e))throw Error("argument is not a function");c?e():u.push(e)},onDomNodeAdded:function(e){if(!i(e))throw Error("argument is not a function");l.push(e)},domNodeAdded:function(e){var t,n=r(l);try{for(n.s();!(t=n.n()).done;)(0,t.value)(e)}catch(e){n.e(e)}finally{n.f()}}}},91363:(e,t,n)=>{var r=n(19755),o=n(25046),a=n(82702),i=n(41996),u=o.urls.basket;function c(e){return new a((function(t,n){return e.then(t).catch((function(e,t,r){return i.error("Api Response Error: ".concat(t," ").concat(r)),n(r)}))}))}e.exports={getAmazonCheckoutConfig:function(){return"amazoncheckoutconfig",e="".concat(u,"/").concat("amazoncheckoutconfig".toLowerCase()),new c(r.ajax({data:undefined,statusCode:{401:function(){return window.location.reload()}},type:"post",url:e}));var e}}},85392:(e,t,n)=>{function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var o=n(42210),a=n(45697),i=n(67294),u=i.useEffect,c=i.useRef,l=i.useState,s=function(e){var t,n,a=e.amazonCheckoutScriptUrl,s=e.amazonCheckoutUrl,f=e.buttonId,d=e.colour,p=function(){var e;OffAmazonPayments.Button(f,"A224LPOJSGNAQI",{type:"PwA",color:d,size:"medium",language:"en-GB",authorization:function(){window.amazon.Login.authorize({scope:"profile payments:widget payments:shipping_address payments:billing_address",popup:!0},(function(t){e=t.access_token}))},onSignIn:function(t){var n=t.getAmazonOrderReferenceId();n?window.location=s+"?purchaseContractId="+n+"&accessToken="+e:o.Error("Missing order reference id")},onError:function(){o.Error("A problem occured with Amazon Pay, please use the standard checkout instead.",{actionType:o.actionTypes.REPLACE_EXISTING,messageKey:"amazonPayOrderReference"})}})},m=(t=l(!1),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}}(t,n)||function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),h=m[0],y=m[1],g=c(null);return u((function(){g.current&&!h&&(y(!0),function(){if(!window.onAmazonLoginReady){var e=[],t=!1;window.onAmazonLoginReady=function(){window.amazon.Login.setClientId("amzn1.application-oa2-client.f047a6134d2b4bb8b691a860aaa67960")},window.onAmazonPaymentsReadyCallback=function(n){!0===t&&n(),e.push(n)},window.onAmazonPaymentsReady=function(){for(t=!0;e.length>0;)try{e.shift()()}catch(e){}};var n=document.createElement("script");n.src=a,n.async=!0,document.body.appendChild(n)}window.onAmazonPaymentsReadyCallback(p)}())}),[g.current]),i.createElement("div",{className:"payAmazon"},i.createElement("div",{id:f,ref:g}))};s.propTypes={amazonCheckoutScriptUrl:a.string.isRequired,amazonCheckoutUrl:a.string.isRequired,buttonId:a.string.isRequired,colour:a.oneOf(["Gold","LightGray"])},e.exports=s},9412:(e,t,n)=>{var r=["config","onGetConfig"];function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var i=n(67294),u=i.useEffect,c=n(45697),l=n(51512).connect,s=n(85392),f=n(10840).selectConfig,d=n(7111).getConfig,p=function(e){var t=e.config,n=e.onGetConfig,c=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}(e,r);if(u((function(){n()}),[]),!t)return null;var l=t.amazonCheckoutScriptUrl,f=t.amazonCheckoutUrl;return i.createElement(s,function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?o(Object(n),!0).forEach((function(t){a(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):o(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({amazonCheckoutScriptUrl:l,amazonCheckoutUrl:f},c))};p.propTypes={config:c.shape({amazonCheckoutScriptUrl:c.string.isRequired,amazonCheckoutUrl:c.string.isRequired}),onGetConfig:c.func.isRequired},e.exports=l((function(e){return{config:f(e)}}),(function(e){return{onGetConfig:function(){return e(d())}}}))(p)},17145:(e,t,n)=>{var r=n(67294),o=n(10840).registerReducer,a=n(73935).render,i=n(51512).Provider,u=n(89166),c=n(9412);o();var l=0;window.createAmazonCheckoutButton=function(e){var t="amazonCheckoutButton-".concat(l+=1);a(r.createElement(i,{store:u},r.createElement(c,{buttonId:t})),e)}},7111:(e,t,n)=>{var r=n(82702).Promise,o=n(91363),a=n(10840),i=a.GET_CONFIG_STARTED,u=a.GET_CONFIG_COMPLETED,c=a.GET_CONFIG_FAILED,l=a.selectConfig;e.exports={getConfig:function(){return function(e,t){return new r((function(n,r){Boolean(l(t()))?n():(e({type:i}),o.getAmazonCheckoutConfig().then((function(t){e({type:u,config:t}),n()})).catch((function(){e({type:c}),r()})))}))}}}},10840:(e,t,n)=>{function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach((function(t){a(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var i=n(28227),u="AmazonCheckoutButton",c=function(e){return"scan/".concat(u,"/").concat(e)},l={GET_CONFIG_STARTED:c("GET_CONFIG_STARTED"),GET_CONFIG_COMPLETED:c("GET_CONFIG_COMPLETED"),GET_CONFIG_FAILED:c("GET_CONFIG_FAILED")},s={config:null,isFetchingConfig:!1,getConfigFailed:!1};function f(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:s,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case l.GET_CONFIG_STARTED:return o(o({},e),{},{isFetchingConfig:!0});case l.GET_CONFIG_COMPLETED:var n=t.config;return o(o({},e),{},{config:n,getConfigFailed:!1,isFetchingConfig:!1});case l.GET_CONFIG_FAILED:return o(o({},e),{},{getConfigFailed:!0,isFetchingConfig:!1});default:return o({},e)}}var d=function(e){return e[u]};e.exports=o(o({},l),{},{reducerName:u,reducer:f,registerReducer:function(){return i.register(u,f)},selectStateForAmazonCheckoutButton:d,selectConfig:function(e){return d(e).config}})},2669:e=>{e.exports={liveSearch:3,liveBasket:5,frequentlyBoughtTogether:10}},2222:(e,t,n)=>{var r=n(67294);e.exports=function(){return r.createElement("div",null,r.createElement("a",{href:"#",className:"summary"},r.createElement("span",{className:"items"},r.createElement("strong",null," ")),r.createElement("i",null," "),r.createElement("span",{className:"price"}),r.createElement("span",{className:"btn"},r.createElement("i",null," "))))}},57026:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(7280),i=n(35725);function u(e){var t=e.bl,n=t.imageUrl,o=t.inStock,u=t.linePriceGross,c=t.linkNumber,l=t.productUrl,s=t.quantity,f=t.webDescription,d=t.webProductId;return r.createElement("li",null,r.createElement("ul",null,r.createElement("li",{className:"image"},r.createElement("img",{width:"100",height:"100",src:n})),r.createElement("li",{className:"description"},r.createElement("span",{className:"linkNo"},c>0?"LN"+c.toString():""),r.createElement("a",{className:"titleLong",href:l},f),r.createElement(a,{price:u})),r.createElement("li",{className:"quantity"},r.createElement("span",{className:"buyButton small"},r.createElement(i,{webProductId:d,quantity:s,inStock:o})))))}u.propTypes={bl:o.shape({imageUrl:o.string.isRequired,linkNumber:o.number.isRequired,productUrl:o.string.isRequired,webDescription:o.string.isRequired,linePriceGross:o.number.isRequired,webProductId:o.number.isRequired,quantity:o.number.isRequired,inStock:o.bool.isRequired}).isRequired},e.exports=u},36748:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function a(e,t){return(a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function i(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function u(e){return(u=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var c=n(67294),l=n(45697),s=n(57026),f=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&a(e,t)}(d,e);var t,n,r,l,f=(r=d,l=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=u(r);if(l){var n=u(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return i(this,e)});function d(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,d),f.call(this,e)}return t=d,(n=[{key:"render",value:function(){var e={};return this.props.basket.lines.forEach((function(t){e[t.webProductId]=t})),c.createElement("div",{className:"productList systemBasket"},c.createElement("ul",null,this.props.basket.categories.map((function(t){return c.createElement("li",{key:t.basketCategoryId},c.createElement("span",{className:"categoryTitle"},t.title),0===t.webProductIds.length?c.createElement("span",{className:"noItems"},"None in basket"):null,c.createElement("ul",null,t.webProductIds.map((function(t){var n=e[t];return n?c.createElement(s,{bl:n,key:n.webProductId}):null}))))}))))}}])&&o(t.prototype,n),d}(c.Component);f.propTypes={basket:l.shape({categories:l.arrayOf(l.shape({basketCategoryId:l.number.isRequired,title:l.string.isRequired,webProductIds:l.arrayOf(l.number).isRequired})).isRequired,lines:l.arrayOf(l.shape({imageUrl:l.string.isRequired,linkNumber:l.number.isRequired,productUrl:l.string.isRequired,webDescription:l.string.isRequired,linePriceGross:l.number.isRequired,webProductId:l.number.isRequired,quantity:l.number.isRequired,inStock:l.bool.isRequired})).isRequired}).isRequired},e.exports=f},95012:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function a(e,t){return(a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function i(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function u(e){return(u=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var c=n(67294),l=n(45697),s=n(57026),f=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&a(e,t)}(d,e);var t,n,r,l,f=(r=d,l=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=u(r);if(l){var n=u(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return i(this,e)});function d(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,d),f.call(this,e)}return t=d,(n=[{key:"render",value:function(){return c.createElement("div",{className:"productList"},c.createElement("ul",null,this.props.basketLines.length>0?this.props.basketLines.map((function(e){return c.createElement(s,{bl:e,key:e.webProductId})})):c.createElement("div",{className:"basketEmpty"},c.createElement("i",null,"You have no products in your basket"))))}}])&&o(t.prototype,n),d}(c.Component);f.propTypes={basketLines:l.arrayOf(l.shape({imageUrl:l.string.isRequired,linkNumber:l.number.isRequired,productUrl:l.string.isRequired,webDescription:l.string.isRequired,linePriceGross:l.number.isRequired,webProductId:l.number.isRequired,quantity:l.number.isRequired,inStock:l.bool.isRequired})).isRequired},e.exports=f},94114:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var o,a;function i(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function u(e,t){return(u=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function c(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?l(e):t}function l(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function s(e){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var f,d,p,m=n(67294),h=n(45697),y=n(4735);e.exports=(a=o=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&u(e,t)}(f,e);var t,n,r,o,a=(r=f,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=s(r);if(o){var n=s(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return c(this,e)});function f(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,f),(t=a.call(this,e)).state={showDeliveryForm:!1,showDeliveryOptions:!1,forms:{postcode:"",countryCode:""}},t.toggleDeliveryForm=t.toggleDeliveryForm.bind(l(t)),t.toggleDeliveryOptions=t.toggleDeliveryOptions.bind(l(t)),t}return t=f,(n=[{key:"toggleDeliveryForm",value:function(){this.setState({showDeliveryForm:!this.state.showDeliveryForm})}},{key:"toggleDeliveryOptions",value:function(){this.setState({showDeliveryOptions:!this.state.showDeliveryOptions})}},{key:"render",value:function(){var e=this.props,t=e.basket,n=e.setCarriageLocation,r=e.setCarriageProduct,o=this.state,a=o.showDeliveryForm,i=o.showDeliveryOptions,u=t.deliveryLocation,c=t.carriageOptions;return m.createElement(y,{deliveryLocation:u,deliveryOptions:c,setCarriageLocation:n,setCarriageProduct:r,showDeliveryForm:a,showDeliveryOptions:i,toggleDeliveryForm:this.toggleDeliveryForm,toggleDeliveryOptions:this.toggleDeliveryOptions})}}])&&i(t.prototype,n),f}(m.Component),f=o,d="propTypes",p={basket:h.object.isRequired,setCarriageLocation:h.func.isRequired,setCarriageProduct:h.func.isRequired},d in f?Object.defineProperty(f,d,{value:p,enumerable:!0,configurable:!0,writable:!0}):f[d]=p,a)},4735:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(38139),i=n(94184),u=function(e){var t=e.deliveryLocation,n=e.deliveryOptions,o=e.setCarriageLocation,u=e.setCarriageProduct,c=e.showDeliveryForm,l=e.showDeliveryOptions,s=e.toggleDeliveryForm,f=e.toggleDeliveryOptions;return t?r.createElement("div",null,r.createElement("strong",null,"Delivery to ",t),r.createElement("button",{className:"link changeLocation",onClick:s},"change"),c&&r.createElement(a,{setCarriageLocation:o,toggleDeliveryForm:s}),r.createElement("button",{className:i("link","viewDeliveryOptions",{on:l}),onClick:f},"Show all delivery options"),r.createElement("ul",{className:i("deliveryOptions",{hide:!l})},n.map((function(e){return r.createElement("li",{key:e.carriageProductId,className:i({selected:e.isSelected}),onClick:function(){return t=e.deliveryMethod,n=e.carriageProductId,u(t,n);var t,n}},r.createElement("span",{className:"option"},e.description),r.createElement("span",{className:"price"},"£",Math.abs(e.gross).toFixed(2)))})))):r.createElement("div",null,r.createElement("strong",null,"Delivery"))};u.propTypes={deliveryLocation:o.string,deliveryOptions:o.array,setCarriageLocation:o.func.isRequired,setCarriageProduct:o.func.isRequired,showDeliveryForm:o.bool.isRequired,showDeliveryOptions:o.bool.isRequired,toggleDeliveryForm:o.func.isRequired,toggleDeliveryOptions:o.func.isRequired},e.exports=u},38139:(e,t,n)=>{function r(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}}(e,t)||function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var a=n(67294),i=a.useState,u=n(45697),c=n(75047),l=function(e){var t=e.setCarriageLocation,n=e.toggleDeliveryForm,o=r(i(""),2),u=o[0],l=o[1],s=r(i("GB"),2),f=s[0],d=s[1];return a.createElement("span",{className:"deliveryLocation"},a.createElement("span",{className:"title"},"Change location"),a.createElement("span",{className:"fieldRow"},a.createElement("label",{htmlFor:"postcode"},"Postcode"),a.createElement("input",{type:"text",name:"postcode",value:u,onChange:function(e){return l(e.target.value)},maxLength:16})),a.createElement("span",{className:"fieldRow"},a.createElement("label",{htmlFor:"country"},"Country"),a.createElement("select",{name:"country",value:f,onChange:function(e){return d(e.target.value)}},c.map((function(e){return a.createElement("option",{key:e.countryCode,value:e.countryCode},e.displayName)})))),a.createElement("span",{className:"fieldRow"},a.createElement("input",{type:"button",value:"Update",className:"btn darkgrey small",onClick:function(){t(u,f),n()}})))};l.propTypes={setCarriageLocation:u.func.isRequired,toggleDeliveryForm:u.func.isRequired},e.exports=l},16842:(e,t,n)=>{function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var o=n(67294),a=o.useEffect,i=o.useRef,u=o.useState,c=n(94184),l=n(45697),s=n(76643),f=n(7280),d=n(25046),p=n(2222),m=function(e){var t,n,l=e.basket,m=e.basketFirstProductAdded,h=e.basketHighlighted,y=e.checkoutFlow,g=e.hideCheckoutButton,v=void 0!==g&&g,b=e.hideCutOff,w=void 0===b||b,E=i(null),C=(t=u(!1),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}}(t,n)||function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),S=C[0],k=C[1],O=l?l.lines.reduce((function(e,t){return e+t.quantity}),0):0,R=!v&&O>0&&"nvidia"!==y,A="nvidia"===y?d.urls.nvidiaBasket:d.urls.basket,P="nvidia"!==y;a((function(){var e=document.querySelector("header.menu");e&&e.classList.toggle("has-checkoutbutton",R)}),[R]),a((function(){m&&E.current&&(null!==E.current.offsetParent||S||(k(!0),setTimeout((function(){k(!1)}),4e3)))}),[m]);var T=function(e){P&&(e.preventDefault(),k(!S))};return l?o.createElement("div",{className:c({"basket-highlight":h})},P&&S&&o.createElement(o.Fragment,null,o.createElement("div",{className:"popupBackground",onClick:function(){k(!1)}}),o.createElement(s,{basket:l,basketUrl:A,hideCutOff:w,togglePopup:T})),o.createElement("a",{href:A,className:"summary",onClick:T},o.createElement("span",{className:"items"},o.createElement("strong",null,O)),o.createElement("i",null," "),P&&o.createElement(o.Fragment,null,o.createElement(f,{price:l.totalGrossBeforeScansure}),o.createElement("span",{className:"btn"},o.createElement("i",null," ")))),R&&o.createElement("a",{className:"btn buyAction",href:A},"Checkout"),o.createElement("a",{className:"summary responsive",href:A,ref:E},o.createElement("span",{className:"items"},o.createElement("strong",null,O)),o.createElement("i",null," "))):o.createElement(p,null)};m.propTypes={basket:l.object,basketFirstProductAdded:l.bool.isRequired,basketHighlighted:l.bool.isRequired,checkoutFlow:l.string,hideCheckoutButton:l.bool,hideCutOff:l.bool},e.exports=m},76643:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var o,a;function i(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function u(e,t){return(u=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function c(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?l(e):t}function l(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function s(e){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var f,d,p,m=n(67294),h=n(45697),y=n(95012),g=n(36748),v=n(98042),b=n(7280),w=n(23387),E={classNames:{standardBasketButton:"selected",categorisedBasketButton:""},isStandard:!0},C={classNames:{standardBasketButton:"",categorisedBasketButton:"selected"},isStandard:!1};e.exports=(a=o=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&u(e,t)}(f,e);var t,n,r,o,a=(r=f,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=s(r);if(o){var n=s(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return c(this,e)});function f(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,f),(t=a.call(this,e)).state=E,t.onBasketButtonClick=t.onBasketButtonClick.bind(l(t)),t.onCategorisedBasketButtonClick=t.onCategorisedBasketButtonClick.bind(l(t)),t}return t=f,(n=[{key:"onBasketButtonClick",value:function(){!0!==this.state.isStandard&&this.setState(E)}},{key:"onCategorisedBasketButtonClick",value:function(){!1!==this.state.isStandard&&this.setState(C)}},{key:"render",value:function(){return m.createElement("div",{className:"popup"},m.createElement("div",null,m.createElement("div",{className:"header"},m.createElement("span",{className:"btn",onClick:this.props.togglePopup},m.createElement("i",null," ")),m.createElement("ul",null,m.createElement("li",{className:this.state.classNames.standardBasketButton,onClick:this.onBasketButtonClick},"Basket"),m.createElement("li",{className:this.state.classNames.categorisedBasketButton,onClick:this.onCategorisedBasketButtonClick},"System checklist"))),this.state.isStandard?m.createElement(y,{basketLines:this.props.basket.lines}):m.createElement(g,{basket:this.props.basket}),m.createElement("div",{className:"subTotals"},m.createElement("ul",null,m.createElement("li",null,m.createElement("span",{className:"title"},m.createElement("strong",null,"Sub Total"),"Inc VAT"),m.createElement(b,{price:this.props.basket.productsGross})),m.createElement("li",{className:"delivery"},m.createElement("span",{className:"title"},m.createElement(v,null)),m.createElement(b,{price:this.props.basket.carriageGross})),m.createElement("li",{className:"total"},m.createElement("span",{className:"title"},m.createElement("strong",null,"Total"),"Inc VAT"),m.createElement(b,{price:this.props.basket.totalGrossBeforeScansure})))),m.createElement(w,{scansureGross:this.props.basket.scansureGross}),m.createElement("div",{className:"total"},m.createElement("span",{className:"title"},!this.props.hideCutOff&&this.props.basket.cutOffDetails&&m.createElement(m.Fragment,null,m.createElement("strong",null,this.props.basket.cutOffDetails.orderByText),this.props.basket.cutOffDetails.dateText,null!==this.props.basket.cutOffDetails.subText&&m.createElement("small",null,this.props.basket.cutOffDetails.subText))),m.createElement("a",{className:"btn buyAction",href:this.props.basketUrl},"Checkout"))))}}])&&i(t.prototype,n),f}(m.Component),f=o,d="propTypes",p={basket:h.object.isRequired,basketUrl:h.string.isRequired,hideCutOff:h.bool.isRequired,togglePopup:h.func.isRequired},d in f?Object.defineProperty(f,d,{value:p,enumerable:!0,configurable:!0,writable:!0}):f[d]=p,a)},23387:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(7280),i=function(e){var t=e.scansureGross;return t<=0?null:r.createElement("div",{className:"scansure"},r.createElement("i",null,"ScanProtect"),r.createElement("span",{className:"title"},r.createElement("span",null,"ScanProtect")," - Protect against installation damage for 28 days.",r.createElement("strong",null,"Available at checkout for just ",r.createElement(a,{price:t}))))};i.propTypes={scansureGross:o.number.isRequired},e.exports=i},98042:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(57481),i=a.setCarriageLocation,u=a.setCarriageProduct,c=n(51512),l=c.connect,s=c.Provider,f=n(94114),d=n(89166),p=function(e){return r.createElement(s,{store:d},r.createElement(f,e))};p.propTypes={setCarriageLocation:o.func.isRequired,setCarriageProduct:o.func.isRequired},e.exports=l((function(e){return{basket:e.basket.basket}}),(function(e){return{setCarriageLocation:function(t,n){return e(i(t,n))},setCarriageProduct:function(t,n){return e(u(t,n))}}}))(p)},49943:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(16842),i=n(51512).connect,u=function(e){return r.createElement(a,e)};u.propTypes={basket:o.object,basketFirstProductAdded:o.bool.isRequired,basketHighlighted:o.bool.isRequired,checkoutFlow:o.string,hideCheckoutButton:o.bool,hideCutOff:o.bool},e.exports=i((function(e){var t=e.basket;return{basket:t.basket,basketFirstProductAdded:t.basketFirstProductAdded,basketHighlighted:t.basketHighlighted}}),{})(u)},33803:(e,t,n)=>{function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var o=n(67294),a=n(73935).render,i=n(51512).Provider,u=n(57481),c=u.getBasket,l=u.getBasketWithoutCache,s=u.receiveBasketFromBroadcast,f=u.setScansureSelection,d=n(13383).selectBasket,p=n(85756),m=n(41996),h=n(49943),y=n(70421),g=n(89166),v=n(42699);y(),function(){var e=Boolean(document.querySelector("div#BasketOptions[data-nocache]"));e&&m.info("Found nocache option for basket - using non-cached method");var t=e?l:c;g.dispatch(t())}(),v.addListener((function(e){return g.dispatch(s(e))})),function(){var e,t=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0,a=function(){};return{s:a,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(document.querySelectorAll(".headerBasket"));try{for(t.s();!(e=t.n()).done;){var n=e.value,u=n.getAttribute("data-checkoutflow"),c=n.hasAttribute("data-hidecheckoutbutton"),l=n.hasAttribute("data-hidecutoff");a(o.createElement(i,{store:g},o.createElement(h,{checkoutFlow:u,hideCheckoutButton:c,hideCutOff:l})),n)}}catch(e){t.e(e)}finally{t.f()}}(),window.setScansureSelection=function(e){g.dispatch(f(e))},window.getScansureSelection=function(e){p.getScansureSelection().then((function(t){e(t?t.scansureSelected:null)}),(function(e,t,n){m.warn("An error occurred getting scansure selection "+t+" "+n)}))},window.getBasket=function(){return d(g.getState())}},57481:(e,t,n)=>{var r=n(82702).Promise,o=n(85756),a=n(42699),i=n(13383).selectStateForBasket,u=n(42210),c=n(13383),l=c.BASKET_API_REQUEST_STARTED,s=c.BASKET_API_REQUEST_COMPLETED,f=c.BASKET_API_REQUEST_FAILED,d=c.BASKET_FIRST_PRODUCT_ADDED,p=c.BASKET_HIGHLIGHT_ON,m=c.BASKET_HIGHLIGHT_OFF,h=c.BASKET_UPDATED,y=c.BASKET_UPDATED_FROM_BROADCAST,g=n(69351),v=g.SHARE_BASKET_API_REQUEST_STARTED,b=g.SHARE_BASKET_API_REQUEST_COMPLETED,w=g.SHARE_BASKET_API_REQUEST_FAILED,E=g.SHARE_BASKET_RESET,C=function(){return function(e){e({type:l}),o.getBasket().then(k(e)).catch(O(e))}},S=function(e){return function(){e({type:s}),e(C())}},k=function(e){return function(t){e({type:s}),e(A(t.checkoutOptions)),e(R(t)),e({type:h,getBasketApiResponse:t}),a.post(t.basket)}},O=function(e){return function(t,n,r){e({type:f,error:r})}},R=function(e){return function(t,n){var r=i(n()),o=e.basket,a=e.tracking,u=a&&a.length>0,c=null===r.basket||0===r.basket.lines.length,l=null!==o&&1===o.lines.length;u&&c&&l&&t({type:d}),a&&a.length>0&&a[0].quantityChange>0&&(t({type:p}),setTimeout((function(){t({type:m})}),2e3))}},A=function(e){return function(t,n){if(e){var r=i(n());if(r){var o=r.checkoutOptions;o&&o.disableAllCheckouts!==e.disableAllCheckouts&&(e.disableAllCheckouts?u.warning(e.disableAllCheckoutsMessage):u.info("We are now taking orders - please proceed to the checkout to complete your order"))}}}};e.exports={addProducts:function(e){var t=e.actionSource,n=e.webProductIds;return function(e){e({type:l}),o.addProducts({actionSource:t,webProductIds:n}).then(k(e)).catch(O(e))}},changeProductQuantity:function(e){var t=e.actionSource,n=e.webProductId,a=e.quantity;return function(e){return new r((function(r,i){e({type:l}),o.changeProductQuantity({actionSource:t,webProductId:n,quantity:a}).then((function(){k(e).apply(void 0,arguments),r()})).catch((function(){O(e).apply(void 0,arguments),i()}))}))}},decreaseProductQuantity:function(e){var t=e.actionSource,n=e.webProductId;return function(e){return new r((function(r,a){e({type:l}),o.decreaseProductQuantity({actionSource:t,webProductId:n}).then((function(){k(e).apply(void 0,arguments),r()})).catch((function(){O(e).apply(void 0,arguments),a()}))}))}},getBasket:C,getBasketWithoutCache:function(){return function(e){e({type:l}),o.getBasket({disableCache:!0}).then(k(e)).catch(O(e))}},increaseProductQuantity:function(e){var t=e.actionSource,n=e.webProductId;return function(e){return new r((function(r,a){e({type:l}),o.increaseProductQuantity({actionSource:t,webProductId:n}).then((function(){k(e).apply(void 0,arguments),r()})).catch((function(){O(e).apply(void 0,arguments),a()}))}))}},receiveBasketFromBroadcast:function(e){return{type:y,basket:e}},setCarriageLocation:function(e,t){return function(n){n({type:l}),o.setCarriageLocation(e,t).then(S(n)).catch(O(n))}},setCarriageProduct:function(e,t){return function(n){n({type:l}),o.setCarriageProduct(e,t).then(S(n)).catch(O(n))}},setScansureSelection:function(e){return function(t){t({type:l}),o.setScansureSelection(e).then(S(t)).catch(O(t))}},shareBasket:function(e){return function(t){t({type:v}),o.shareBasket(e).then((function(e){var n=e.success,r=e.errorMessage;t({type:b,success:n,errorMessage:r})})).catch((function(e){var n=429===e.status?"Too many requests":"Unexpected errors";t({type:w,success:!1,errorMessage:n})}))}},shareBasketReset:function(){return function(e){e({type:E})}}}},13383:(e,t,n)=>{function r(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?a(Object(n),!0).forEach((function(t){u(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):a(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function u(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var c=n(42210),l=n(95360),s=n(22558),f=n(28227),d="basket",p=function(e){return"scan/".concat(d,"/").concat(e)},m={BASKET_API_REQUEST_STARTED:p("BASKET_API_REQUEST_STARTED"),BASKET_API_REQUEST_COMPLETED:p("BASKET_API_REQUEST_COMPLETED"),BASKET_API_REQUEST_FAILED:p("BASKET_API_REQUEST_FAILED"),BASKET_FIRST_PRODUCT_ADDED:p("BASKET_FIRST_PRODUCT_ADDED"),BASKET_HIGHLIGHT_ON:p("BASKET_HIGHLIGHT_ON"),BASKET_HIGHLIGHT_OFF:p("BASKET_HIGHLIGHT_OFF"),BASKET_UPDATED:p("BASKET_UPDATED"),BASKET_UPDATED_FROM_BROADCAST:p("BASKET_UPDATED_FROM_BROADCAST")},h={basket:null,basketFirstProductAdded:!1,basketHighlighted:!1,isFetching:!1};function y(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:h,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case m.BASKET_API_REQUEST_STARTED:return i(i({},e),{},{isFetching:!0});case m.BASKET_API_REQUEST_COMPLETED:return i(i({},e),{},{isFetching:!1});case m.BASKET_API_REQUEST_FAILED:return i(i({},e),{},{error:t.error,isFetching:!1});case m.BASKET_FIRST_PRODUCT_ADDED:return i(i({},e),{},{basketFirstProductAdded:!0});case m.BASKET_HIGHLIGHT_ON:return i(i({},e),{},{basketHighlighted:!0});case m.BASKET_HIGHLIGHT_OFF:return i(i({},e),{},{basketHighlighted:!1});case m.BASKET_UPDATED:var n=t.getBasketApiResponse,r=n.basket,o=n.checkoutOptions,a=n.messages,u=n.tracking;return g(a),v(u),b(r),i(i({},e),{},{basket:r,checkoutOptions:o});case m.BASKET_UPDATED_FROM_BROADCAST:var c=t.basket;return i(i({},e),{},{basket:c});default:return i({},e)}}function g(e){if(e){var t,n=r(e);try{for(n.s();!(t=n.n()).done;){var o=t.value;c.Notify(o)}}catch(e){n.e(e)}finally{n.f()}}}function v(e){if(e){var t,n=r(e);try{for(n.s();!(t=n.n()).done;){var o=t.value;l.trackBasketChange(o)}}catch(e){n.e(e)}finally{n.f()}}}function b(e){void 0!==e.basketRevisionId&&null!==e.basketRevisionId&&s.addCustomVariable("basketRevisionId",e.basketRevisionId)}e.exports=i(i({},m),{},{reducerName:d,reducer:y,registerReducer:function(){f.register(d,y)},selectStateForBasket:function(e){return e.basket},selectBasket:function(e){return e.basket.basket}})},70421:(e,t,n)=>{var r=n(13383),o=n(69351);e.exports=function(){r.registerReducer(),o.registerReducer()}},69351:(e,t,n)=>{function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach((function(t){a(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var i=n(28227),u="shareBasket",c=function(e){return"scan/".concat(u,"/").concat(e)},l={SHARE_BASKET_API_REQUEST_STARTED:c("SHARE_BASKET_API_REQUEST_STARTED"),SHARE_BASKET_API_REQUEST_COMPLETED:c("SHARE_BASKET_API_REQUEST_COMPLETED"),SHARE_BASKET_API_REQUEST_FAILED:c("SHARE_BASKET_API_REQUEST_FAILED"),SHARE_BASKET_RESET:c("SHARE_BASKET_RESET")},s={error:null,hasAttempted:!1,isFetching:!1,success:!1};function f(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:s,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case l.SHARE_BASKET_API_REQUEST_STARTED:return o(o({},e),{},{isFetching:!0});case l.SHARE_BASKET_API_REQUEST_COMPLETED:case l.SHARE_BASKET_API_REQUEST_FAILED:return o(o({},e),{},{error:t.errorMessage,hasAttempted:!0,isFetching:!1,success:t.success});case l.SHARE_BASKET_RESET:return o({},s);default:return o({},e)}}e.exports=o(o({},l),{},{reducerName:u,reducer:f,registerReducer:function(){i.register(u,f)}})},35073:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(48698),i=n(42210),u=n(59129),c=n(41996),l=function(e){var t=e.webProductIds;return r.createElement("button",{className:"btn small",onClick:function(e){e.preventDefault(),u.showLoading(),setTimeout((function(){a.getCompareHtml(t).fail((function(e,t,n){c.error("Compare Error: "+n),i.Error({message:"A problem occurred getting compare information for your chosen products, please try again later."}),u.hide()})).done((function(e){u.show(e)}))}),100)}},"Compare ",t.length)};l.propTypes={webProductIds:o.arrayOf(o.number).isRequired},e.exports=l},40372:(e,t,n)=>{var r=n(67294),o=r.useEffect,a=r.useRef,i=n(45697),u=n(39069),c=n(19755),l=function(e){var t=e.isChecked,n=e.toggleProduct,i=e.webProductId,l=a(null);o((function(){c(l.current).closest("li.product").toggleClass("compare",t)}),[t,l.current]);var s="Compare-".concat(i);return r.createElement("span",null,t&&r.createElement(u,null),r.createElement("span",null,"Compare"),r.createElement("span",{className:"checkbox"},r.createElement("input",{id:s,type:"checkbox",checked:t,onChange:function(){return n(i)},ref:l}),r.createElement("label",{htmlFor:s})))};l.propTypes={isChecked:i.bool.isRequired,toggleProduct:i.func.isRequired,webProductId:i.number.isRequired},e.exports=l},39069:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(51512).connect,i=n(35073),u=function(e){var t=e.webProductIds;return r.createElement(i,{webProductIds:t})};u.propTypes={webProductIds:o.arrayOf(o.number).isRequired},e.exports=a((function(e){return{webProductIds:e.compare.webProductIds}}),null)(u)},71702:(e,t,n)=>{var r=n(67294),o=n(51512).connect,a=n(45697),i=n(40372),u=n(12886).toggleProduct,c=function(e){return r.createElement(i,e)};c.propTypes={isChecked:a.bool.isRequired,toggleProduct:a.func.isRequired,webProductId:a.number.isRequired},e.exports=o((function(e,t){var n=t.webProductId;return{isChecked:e.compare.webProductIds.includes(n)}}),(function(e){return{toggleProduct:function(t){return e(u(t))}}}))(c)},85234:(e,t,n)=>{"use strict";var r=window.localStorage,o="compareProducts",a=window.JSON,i=n(41996),u={init:function(){i.log("CompareDb: Init"),this.save([])},get:function(){return null===r.getItem(o)&&this.init(),a.parse(r.getItem(o))},save:function(e){r.setItem(o,a.stringify(e))},addProduct:function(e){var t=this.get();-1===t.indexOf(e)&&(i.log("CompareDb: adding "+e),t.push(e),this.save(t))},removeProduct:function(e){var t=this.get(),n=t.indexOf(e);n>-1&&(i.log("CompareDb: removing "+e),t.splice(n,1),this.save(t))},clear:function(){i.log("CompareDb: clearing all"),this.init()}};e.exports=u},27194:(e,t,n)=>{function r(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var a=n(67294),i=n(73935).render,u=n(89166),c=n(51512).Provider,l=n(12886).getData,s=n(75101),f=n(71702),d=n(30806);function p(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document,n=t.querySelectorAll(".compareCheckbox"),o=r(n);try{for(o.s();!(e=o.n()).done;){var l=e.value,s=parseInt(l.getAttribute("data-wpid"),10);null!==s&&s>0&&i(a.createElement(c,{store:u},a.createElement(f,{webProductId:s})),l)}}catch(e){o.e(e)}finally{o.f()}}s(),u.dispatch(l()),d.onPageLoad(p),d.onDomNodeAdded((function(e){return p(e)}))},59129:(e,t,n)=>{function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var o=n(19755),a=n(22558),i=n(89166),u=n(12886),c=u.clearProducts,l=u.removeProduct,s=n(30806);function f(){o("body").append('<div class="compare"></div>');var e=o("div.compare");function t(){e.hide(),a.closeVirtualPage()}return e.on("click","button.popupClose",(function(){t()})),e.on("click",".compareTable button.close",(function(e){var n=o(e.currentTarget),r=n.data("wpid");i.dispatch(l(r));var a=n.closest(".compareTemplate"),u=n.closest("td").index()+1;o("td",n.closest("table")).remove(":nth-child("+u+")"),o(".compareTable tr:first-child td",a).length<=1&&a.hide(),o(".compareTable tr:first-child td").length<=1&&t()})),e.on("click","button.popupRemoveAndClose",(function(){i.dispatch(c()),t()})),{$element:e,show:function(){e.show(),a.openVirtualPage("Compare Products")},hide:t}}var d={compare:null,getCompare:function(){return null===this.compare&&(this.compare=new f),this.compare},hide:function(){this.getCompare().hide()},showLoading:function(){var e=this.getCompare();e.$element.html('<div><div><p class="loading"> </p></div></div>'),e.show()},reactifyBuyButtons:function(){var e=this.getCompare().$element[0];s.domNodeAdded(e)},removeOldWpids:function(){var e,t=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0,a=function(){};return{s:a,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(o("[data-wpidtoremove]"));try{for(t.s();!(e=t.n()).done;){var n=e.value,a=o(n),u=parseInt(a.data("wpidtoremove"),10);i.dispatch(l(u))}}catch(e){t.e(e)}finally{t.f()}},show:function(e){var t=this.getCompare();t.$element.html(e),this.reactifyBuyButtons(),this.removeOldWpids(),t.show()}};e.exports=d},12886:(e,t,n)=>{var r=n(85234),o=n(50207).DATA_UPDATED,a=function(){return{type:o,webProductIds:r.get()}};e.exports={addProduct:function(e){return r.addProduct(e),a()},clearProducts:function(){return r.clear(),a()},getData:a,toggleProduct:function(e){return r.get().includes(e)?r.removeProduct(e):r.addProduct(e),a()},removeProduct:function(e){return r.removeProduct(e),a()}}},50207:(e,t,n)=>{function r(e){return function(e){if(Array.isArray(e))return o(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?a(Object(n),!0).forEach((function(t){u(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):a(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function u(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var c=n(28227),l="compare",s={DATA_UPDATED:("DATA_UPDATED","scan/".concat(l,"/").concat("DATA_UPDATED"))},f={webProductIds:[]};function d(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:f,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case s.DATA_UPDATED:return i(i({},e),{},{webProductIds:r(t.webProductIds.slice())});default:return i({},e)}}e.exports=i(i({},s),{},{reducer:d,reducerName:l,registerReducer:function(){c.register(l,d)}})},75101:(e,t,n)=>{var r=n(50207);e.exports=function(){r.registerReducer()}},36711:(e,t,n)=>{var r=n(19755),o=n(67294),a=n(73935),i=n(75360),u=n(41996),c=n(26636);r((function(){var e=i.getCurrentState(),t=i.shouldShowCookieBanner();if(u.info("cookie policy state: "+e+" should show: "+t),!0===t){var n=r('<div id="cookiePolicyPopup"></div>');n.appendTo("body"),a.render(o.createElement(c,null),n[0]),i.setShown()}else i.setAcceptedByContinueIfShown(),u.info("not showing cookie banner")}))},26636:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function i(e,t){return(i=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function u(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function c(e){return(c=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var l=n(67294),s=n(19755),f=n(25046),d=n(75360),p=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&i(e,t)}(h,e);var t,n,r,p,m=(r=h,p=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=c(r);if(p){var n=c(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return u(this,e)});function h(){return o(this,h),m.apply(this,arguments)}return t=h,(n=[{key:"onCloseClicked",value:function(){s("#cookiePolicyPopup").fadeOut(400),d.setAcceptedByCloseIfShown()}},{key:"render",value:function(){return l.createElement("div",{className:"cookieMsg"},l.createElement("div",{className:"contC"},l.createElement("div",{className:"inner"},l.createElement("button",{onClick:this.onCloseClicked}),l.createElement("p",null,"We use cookies to give you the best customer shopping experience on our website. By continuing to shop with us, you agree with our use of cookies. You can read more about our ",l.createElement("a",{href:f.urls.wwwRoot+"privacy/cookies"},"cookie policy HERE")," "))))}}])&&a(t.prototype,n),h}(l.Component);e.exports=p},75360:e=>{var t=window.document,n=function(){var e=t.cookie.replace(/(?:(?:^|.*;\s*)cookpol\s*\=\s*([^;]*).*$)|^.*$/,"$1");if(e&&!Number(e)&&!0===Boolean(e))return 1;if(!e||!Number(e))return 0;var n=Number(e);return n<0||n>3?1:n},r=function(e){var n=new Date;n.setTime(n.getTime()+63072e6);var r=n.toUTCString();t.cookie="cookpol="+String(e)+";path=/;expires="+r+"domain=.scan.co.uk"},o={getCurrentState:function(){return n()},shouldShowCookieBanner:function(){return 0===n()},setShown:function(){r(1)},setAcceptedByCloseIfShown:function(){1===n()&&r(2)},setAcceptedByContinueIfShown:function(){1===n()&&r(3)}};e.exports=o},94347:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function a(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function i(e,t){return(i=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function u(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?c(e):t}function c(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function l(e){return(l=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function s(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var f=n(30381),d=n(67294),p=n(45697),m=n(65259),h=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&i(e,t)}(g,e);var t,n,r,p,h=(r=g,p=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=l(r);if(p){var n=l(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return u(this,e)});function g(e){var t;if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,g),s(c(t=h.call(this,e)),"updateSecondsRemaining",(function(){var e=y(t.targetMomentDate);if(t.setState({secondsRemaining:e}),e>0)setTimeout(t.updateSecondsRemaining,1e3);else{var n=t.props.completeElementHide;if(n){var r,a=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(document.querySelectorAll(n));try{for(a.s();!(r=a.n()).done;)r.value.classList.add("hide")}catch(e){a.e(e)}finally{a.f()}}}})),t.targetMomentDate=f(e.target),!t.targetMomentDate.isValid())return u(t);var n=y(t.targetMomentDate);return t.state={secondsRemaining:n},t.updateSecondsRemaining(),t}return t=g,(n=[{key:"render",value:function(){if(!this.targetMomentDate.isValid())return d.createElement("span",null);var e=this.props,t=e.completeText,n=e.padDigits,r=this.state.secondsRemaining;if(null===r)return d.createElement("span",{className:"complete"},t);var o=function(e){var t=86400,n=3600,r=e,o=null;r>t&&(r-=(o=parseInt(r/t,10))*t);var a=null;r>n&&(r-=(a=parseInt(r/n,10))*n);var i=null;return e>60&&(r-=60*(i=parseInt(r/60,10))),{days:o,hours:a,minutes:i,seconds:r}}(r);return d.createElement(d.Fragment,null,d.createElement(m,{datePart:"days",value:o.days,padDigits:n}),d.createElement(m,{datePart:"hours",value:o.hours,padDigits:n}),d.createElement(m,{datePart:"minutes",value:o.minutes,padDigits:n}),d.createElement(m,{datePart:"seconds",value:o.seconds,padDigits:n}))}}])&&a(t.prototype,n),g}(d.Component);function y(e){var t=f();if(t.isSameOrAfter(e))return null;var n=e.diff(t),r=f.duration(n);return parseInt(r.asSeconds(),10)}s(h,"propTypes",{completeElementHide:p.string,completeText:p.string.isRequired,interval:p.number.isRequired,padDigits:p.bool.isRequired,target:p.string.isRequired}),e.exports=h},65259:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(94184);function i(e){var t=e.datePart,n=e.padDigits,o=e.value,i=a("date-part",t,{expired:null===o,plural:1!==o,singular:1===o}),u=function(e,t){var n=e||0;return t?n.toString().padStart(2,"0"):n.toString()}(o,n);return r.createElement("span",{className:i},u)}i.propTypes={datePart:o.oneOf(["days","hours","minutes","seconds"]).isRequired,padDigits:o.bool.isRequired,value:o.number},e.exports=i},43439:(e,t,n)=>{function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var o=n(67294),a=n(73935),i=n(94347);!function(){var e,t,n,u,c,l,s=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0,a=function(){};return{s:a,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(document.querySelectorAll("[data-countdown]"));try{for(s.s();!(e=s.n()).done;)t=e.value,n=void 0,u=void 0,c=void 0,l=void 0,n=t.getAttribute("data-countdown"),u=t.getAttribute("data-complete")||"Complete",c=t.getAttribute("data-complete-hide-element"),l="1"===t.getAttribute("data-padding"),a.render(o.createElement(i,{completeElementHide:c,completeText:u,interval:1,padDigits:l,target:n}),t)}catch(e){s.e(e)}finally{s.f()}}()},27442:(e,t,n)=>{"use strict";var r=n(41996),o=n(19755),a={search:function(e,t,n,a){return r.info("Searching"),o.ajax({type:"POST",url:e,data:JSON.stringify({query:t,maxResults:n,tagFilter:a}),contentType:"application/json; charset=utf-8",dataType:"json"})},submitForm:function(e,t){return r.info("Form submitted"),o.ajax({url:e,data:t,method:"POST"})},submitFeedback:function(e,t,n){return r.info("Feedback submitted"),o.ajax({url:e,data:{positiveFeedback:t,comment:n},method:"POST"})}};e.exports=a},56829:(e,t,n)=>{var r=n(67294);e.exports=function(){return r.createElement("div",{className:"complete"},"Thanks for your feedback")}},32307:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function a(e,t){return(a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function i(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?u(e):t}function u(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function c(e){return(c=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var l=n(67294),s=n(45697),f=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&a(e,t)}(d,e);var t,n,r,s,f=(r=d,s=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=c(r);if(s){var n=c(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return i(this,e)});function d(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,d),(t=f.call(this,e)).state={comments:"",feedbackType:0},t.setComments=t.setComments.bind(u(t)),t.setFeedbackPositive=t.setFeedbackPositive.bind(u(t)),t.setFeedbackNegative=t.setFeedbackNegative.bind(u(t)),t.submitFeedback=t.submitFeedback.bind(u(t)),t}return t=d,(n=[{key:"setComments",value:function(e){this.setState({comments:e.target.value})}},{key:"setFeedbackPositive",value:function(e){e.preventDefault(),this.setState({feedbackType:1})}},{key:"setFeedbackNegative",value:function(e){e.preventDefault(),this.setState({feedbackType:-1})}},{key:"submitFeedback",value:function(e){e.preventDefault();var t=1===this.state.feedbackType;this.props.onSubmitFeedback(t,this.state.comments)}},{key:"render",value:function(){var e="";switch(this.state.feedbackType){case 1:e="positive";break;case-1:e="negative"}return l.createElement("form",{className:e,onSubmit:this.submitFeedback},l.createElement("div",{className:"question"},l.createElement("span",null,"Did you find this helpful?"),l.createElement("button",{type:"button",className:"btn medium darkgrey",onClick:this.setFeedbackPositive},"Yes"),l.createElement("button",{type:"button",className:"btn medium darkgrey",onClick:this.setFeedbackNegative},"No")),0!==this.state.feedbackType?l.createElement("div",{className:"leaveComment"},l.createElement("textarea",{type:"text",placeholder:"optional comments",onChange:this.setComments}),l.createElement("button",{type:"submit",className:"btn medium darkgrey"},"Submit")):null)}}])&&o(t.prototype,n),d}(l.Component);f.propTypes={onSubmitFeedback:s.func.isRequired},e.exports=f},54372:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function a(e,t){return(a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function i(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?u(e):t}function u(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function c(e){return(c=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var l=n(67294),s=n(45697),f=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&a(e,t)}(d,e);var t,n,r,s,f=(r=d,s=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=c(r);if(s){var n=c(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return i(this,e)});function d(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,d),(t=f.call(this,e)).state={name:t.props.initialName,telephone:t.props.initialTelephone,email:t.props.initialEmail,invoiceNumber:"",message:""},t.handleNameChange=t.handleNameChange.bind(u(t)),t.handleEmailChange=t.handleEmailChange.bind(u(t)),t.handleTelephoneChange=t.handleTelephoneChange.bind(u(t)),t.handleInvoiceNumberChange=t.handleInvoiceNumberChange.bind(u(t)),t.handleMessageChange=t.handleMessageChange.bind(u(t)),t.handleSubmit=t.handleSubmit.bind(u(t)),t}return t=d,(n=[{key:"handleNameChange",value:function(e){this.setState({name:e.target.value})}},{key:"handleEmailChange",value:function(e){this.setState({email:e.target.value})}},{key:"handleTelephoneChange",value:function(e){this.setState({telephone:e.target.value})}},{key:"handleInvoiceNumberChange",value:function(e){this.setState({invoiceNumber:e.target.value})}},{key:"handleMessageChange",value:function(e){this.setState({message:e.target.value})}},{key:"handleSubmit",value:function(e){e.preventDefault(),this.props.onFormSubmit(this.state)}},{key:"render",value:function(){return l.createElement("form",{onSubmit:this.handleSubmit},l.createElement("ul",null,l.createElement("li",{className:"required"},l.createElement("label",{htmlFor:"name"},"Name"),l.createElement("input",{type:"text",className:"sessioncamexclude",name:"name",value:this.state.name,onChange:this.handleNameChange})),l.createElement("li",{className:"required"},l.createElement("label",{htmlFor:"email"},"Email"),l.createElement("input",{type:"text",className:"sessioncamexclude",name:"email",value:this.state.email,onChange:this.handleEmailChange})),l.createElement("li",null,l.createElement("label",{htmlFor:"telephone"},"Telephone"),l.createElement("input",{type:"text",className:"sessioncamexclude",name:"telephone",value:this.state.telephone,onChange:this.handleTelephoneChange})),l.createElement("li",{className:this.props.invoiceRequired?"required":""},l.createElement("label",{htmlFor:"invoiceNumber"},"Invoice Number"),l.createElement("input",{type:"text",name:"invoiceNumber",value:this.state.invoiceNumber,onChange:this.handleInvoiceNumberChange})),l.createElement("li",{className:"required"},l.createElement("label",{htmlFor:"message"},"Message"),l.createElement("textarea",{name:"message",className:"sessioncamexclude",value:this.state.message,onChange:this.handleMessageChange}))),l.createElement("button",{type:"submit",className:"btn"},"Send"))}}])&&o(t.prototype,n),d}(l.Component);f.propTypes={initialEmail:s.string,initialName:s.string,initialTelephone:s.string,invoiceRequired:s.bool.isRequired,onFormSubmit:s.func.isRequired,showInvoice:s.bool.isRequired},e.exports=f},47907:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(54372),i=function(e){var t=e.errors,n=e.formSubmitted,o=e.initialEmail,i=e.initialName,u=e.initialTelephone,c=e.invoiceRequired,l=e.onFormSubmit,s=e.showInvoice;return n?r.createElement("div",null,"Thanks"):r.createElement("div",null,t.length>0&&r.createElement("ul",{className:"errors"},t.map((function(e,t){return r.createElement("li",{key:t},e)}))),r.createElement(a,{invoiceRequired:c,initialEmail:o,initialName:i,initialTelephone:u,onFormSubmit:l,showInvoice:s}))};i.propTypes={errors:o.arrayOf(o.string).isRequired,formSubmitted:o.bool.isRequired,initialEmail:o.string,initialName:o.string,initialTelephone:o.string,invoiceRequired:o.bool.isRequired,onFormSubmit:o.func.isRequired,showInvoice:o.bool.isRequired},e.exports=i},49921:(e,t,n)=>{function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach((function(t){a(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var u=n(67294),c=u.useState,l=n(45697),s=n(41996),f=n(42678),d=n(16303),p=n(94184),m=function(e){var t,n,r=e.formAction,a=e.formMethod,l=e.inputName,m=e.navigateToUrl,h=e.onSearch,y=e.placeholder,g=e.searchApiResponse,v=(t=c(null),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}}(t,n)||function(e,t){if(e){if("string"==typeof e)return i(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?i(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),b=v[0],w=v[1];return u.createElement("form",{action:r,method:a,onSubmit:function(e){var t=null!==g.results?g.results.length:0;if(null!==b&&t>b){var n=g.results[b].questionUrl;s.info(n),e.preventDefault(),m(n)}else s.info("submit")}},u.createElement("div",{className:"searchField"},u.createElement("label",{htmlFor:l},"Ask us a question"),u.createElement(f,{inputName:l,onArrowDown:function(){var e=g.results.length;0!==e&&w(null===b?0:b>=e-1?null:b+1)},onArrowUp:function(){var e=g.results.length;0!==e&&w(null===b?e-1:b<=0?null:b-1)},onQueryChange:function(e){return h(e)},placeholder:y}),g&&u.createElement(d,o(o({},g),{},{selectedIndex:b}))),u.createElement("button",{className:p("btn grey small",{articleSelected:null!==b})},"Submit"))};m.propTypes={formAction:l.string.isRequired,formMethod:l.string.isRequired,inputName:l.string,navigateToUrl:l.func.isRequired,onSearch:l.func.isRequired,placeholder:l.string.isRequired,searchApiResponse:l.shape({numberOfResultsShown:l.number.isRequired,results:l.array.isRequired,totalNumberOfResults:l.number.isRequired}),tagFilter:l.string},e.exports=m},42678:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function a(e,t){return(a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function i(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?u(e):t}function u(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function c(e){return(c=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var l=n(67294),s=n(45697),f=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&a(e,t)}(d,e);var t,n,r,s,f=(r=d,s=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=c(r);if(s){var n=c(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return i(this,e)});function d(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,d),(t=f.call(this,e)).onQueryChange=t.onQueryChange.bind(u(t)),t.onKeyDown=t.onKeyDown.bind(u(t)),t}return t=d,(n=[{key:"onQueryChange",value:function(e){this.props.onQueryChange(e.target.value)}},{key:"onKeyDown",value:function(e){38===e.keyCode&&(e.preventDefault(),this.props.onArrowUp()),40===e.keyCode&&(e.preventDefault(),this.props.onArrowDown())}},{key:"render",value:function(){return l.createElement("input",{type:"text",autoComplete:"off",name:this.props.inputName,onChange:this.onQueryChange,onKeyDown:this.onKeyDown,placeholder:this.props.placeholder})}}])&&o(t.prototype,n),d}(l.Component);f.propTypes={inputName:s.string,onArrowDown:s.func.isRequired,onArrowUp:s.func.isRequired,onQueryChange:s.func.isRequired,placeholder:s.string},e.exports=f},16303:(e,t,n)=>{"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function a(e,t){return(a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function i(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function u(e){return(u=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var c=n(67294),l=n(45697),s=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&a(e,t)}(f,e);var t,n,r,l,s=(r=f,l=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=u(r);if(l){var n=u(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return i(this,e)});function f(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,f),s.call(this,e)}return t=f,(n=[{key:"render",value:function(){if(0===this.props.results.length)return null;for(var e=[],t=0;t<this.props.results.length;t++){var n=this.props.results[t],r=this.props.selectedIndex===t?"selected":"";e.push(c.createElement("li",{key:t,className:r},c.createElement("a",{href:n.questionUrl},n.question)))}return c.createElement("div",{className:"results"},c.createElement("p",null,"Showing ",this.props.numberOfResultsShown," of ",this.props.totalNumberOfResults," results"),c.createElement("ul",null,e))}}])&&o(t.prototype,n),f}(c.Component);s.propTypes={numberOfResultsShown:l.number.isRequired,results:l.array.isRequired,selectedIndex:l.number,totalNumberOfResults:l.number.isRequired},e.exports=s},61595:(e,t,n)=>{function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var o=n(67294),a=o.useState,i=n(45697),u=n(27442),c=n(32307),l=n(56829),s=n(42210),f=function(e){var t,n,i=e.url,f=(t=a(!1),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}}(t,n)||function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),d=f[0],p=f[1];return o.createElement("div",null,d?o.createElement(l,null):o.createElement(c,{onSubmitFeedback:function(e,t){u.submitFeedback(i,e,t).then((function(){p(!0)}),(function(){s.Error("An error occurred whilst submitting your query")}))}}))};f.propTypes={url:i.string.isRequired},e.exports=f},26085:(e,t,n)=>{function r(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}}(e,t)||function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var a=n(67294),i=a.useState,u=n(45697),c=n(27442),l=n(59790),s=n(47907),f=function(e){var t=e.initialEmail,n=e.initialName,o=e.initialTelephone,u=e.invoiceRequired,f=e.showInvoice,d=e.submitUrl,p=r(i([]),2),m=p[0],h=p[1],y=r(i(!1),2),g=y[0],v=y[1];return a.createElement(s,{errors:m,formSubmitted:g,initialEmail:t,initialName:n,initialTelephone:o,invoiceRequired:u,onFormSubmit:function(e){if(e.message&&"string"==typeof e.message){var t=new RegExp("\\r?\\n","g");e.message=e.message.replace(t,"\r\n")}c.submitForm(d,e).then((function(e){e.success?(l.trackHelpCentreForm(),v(!0),h([])):(v(!1),h(e.errors))}),(function(){h(["An error occurred"])}))},showInvoice:f})};f.propTypes={initialEmail:u.string,initialName:u.string,initialTelephone:u.string,invoiceRequired:u.bool.isRequired,showInvoice:u.bool.isRequired,submitUrl:u.string.isRequired},e.exports=f},89444:(e,t,n)=>{function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var o=n(67294),a=o.useState,i=n(45697),u=n(65906),c=n(41996),l=n(49921),s=n(27442),f=new u(500),d=function(e){var t,n,i=e.formAction,u=e.formMethod,d=e.inputName,p=e.maxResults,m=e.navigateToUrl,h=e.placeholder,y=e.tagFilter,g=e.url,v=(t=a(null),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}}(t,n)||function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),b=v[0],w=v[1];return o.createElement(l,{formAction:i,formMethod:u,inputName:d,maxResults:p,navigateToUrl:m,onSearch:function(e){return f.invoke((function(){s.search(g,e,p,y).then((function(e){return w(e)})).catch((function(e){c.error("An error occurred whilst searching",e)}))}))},placeholder:h,searchApiResponse:b})};d.propTypes={formAction:i.string.isRequired,formMethod:i.string.isRequired,inputName:i.string,maxResults:i.number.isRequired,navigateToUrl:i.func.isRequired,placeholder:i.string.isRequired,tagFilter:i.string,url:i.string.isRequired},e.exports=d},55934:(e,t,n)=>{function r(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var a=n(67294),i=n(73935).render,u=n(30806),c=n(61595),l=n(26085),s=n(89444);function f(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document;d(e),p(e),h(e)}function d(e){var t,n=r(e.querySelectorAll(".articleForm"));try{for(n.s();!(t=n.n()).done;){var o=t.value,u=o.getAttribute("data-invoicenumber"),c="1"===u||"2"===u,s="2"===u,f=o.getAttribute("data-name"),d=o.getAttribute("data-email"),p=o.getAttribute("data-telephone"),m=o.getAttribute("data-url");i(a.createElement(l,{showInvoice:c,invoiceRequired:s,initialName:f,initialEmail:d,initialTelephone:p,submitUrl:m}),o)}}catch(e){n.e(e)}finally{n.f()}}function p(e){var t,n,o=r(e.querySelectorAll(".helpCentreLiveSearch"));try{for(o.s();!(t=o.n()).done;){var u=t.value,c=u.getAttribute("data-url"),l=(n=u.getAttribute("data-maxresults"),isNaN(n)?null:parseInt(n,10)),f=u.getAttribute("data-tagfilter"),d=u.querySelector("form"),p=d.getAttribute("action"),h=d.getAttribute("method"),y=u.querySelector('input[type="text"]'),g="",v="";null!=y&&(g=y.getAttribute("placeholder"),v=y.getAttribute("name")),i(a.createElement(s,{formAction:p,formMethod:h,url:c,maxResults:l,tagFilter:f,placeholder:g,inputName:v,navigateToUrl:m}),u)}}catch(e){o.e(e)}finally{o.f()}}function m(e){window.location=e}function h(e){var t=e.querySelector("#articleFeedback");if(null!=t){var n=t.getAttribute("data-url");i(a.createElement(c,{url:n}),t)}}u.onPageLoad(f),u.onDomNodeAdded((function(e){return f(e)}))},10716:(e,t,n)=>{function r(e,t,n,r,o,a,i){try{var u=e[a](i),c=u.value}catch(e){return void n(e)}u.done?t(c):Promise.resolve(c).then(r,o)}function o(e){return function(){var t=this,n=arguments;return new Promise((function(o,a){var i=e.apply(t,n);function u(e){r(i,o,a,u,c,"next",e)}function c(e){r(i,o,a,u,c,"throw",e)}u(void 0)}))}}var a=n(25046),i=n(41996),u=n(30806),c=6e4;function l(){return s.apply(this,arguments)}function s(){return(s=o(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,f();case 2:setTimeout(l,c);case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function f(){return d.apply(this,arguments)}function d(){return(d=o(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=a.urls.userSession.ping,e.next=3,fetch(t,{method:"POST"});case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}u.onPageLoad((function(){Boolean(document.getElementById("KeepAlive"))&&(i.log("Keeping session alive"),setTimeout(l,c))}))},14364:(e,t,n)=>{function r(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var a=n(67294),i=n(73935).render,u=n(51512).Provider,c=n(89166),l=n(35725),s=n(30806);function f(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document,n=t.querySelectorAll(".buyButton[data-wpid]"),o=r(n);try{for(o.s();!(e=o.n()).done;){var s=e.value,f=s.querySelector("a"),d=f.getAttribute("href"),p=s.getAttribute("data-checkoutflow"),m=parseInt(s.getAttribute("data-wpid"),10),h="1"===s.getAttribute("data-instock"),y=s.getAttribute("data-source"),g=y?parseInt(y,10):null,v=!0;i(a.createElement(u,{store:c},a.createElement(l,{actionSource:g,addToBasketUrl:d,checkoutFlow:p,inStock:h,showCheckoutNowIfMaxQtyInBasket:v,webProductId:m})),s)}}catch(e){o.e(e)}finally{o.f()}}window.scan=window.scan||{},window.scan.buyButtons={setup:f},s.onPageLoad(f),s.onDomNodeAdded((function(e){return f(e)}))},48455:(e,t,n)=>{function r(e,t,n,r,o,a,i){try{var u=e[a](i),c=u.value}catch(e){return void n(e)}u.done?t(c):Promise.resolve(c).then(r,o)}function o(e){return function(){var t=this,n=arguments;return new Promise((function(o,a){var i=e.apply(t,n);function u(e){r(i,o,a,u,c,"next",e)}function c(e){r(i,o,a,u,c,"throw",e)}u(void 0)}))}}function a(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}}(e,t)||function(e,t){if(e){if("string"==typeof e)return i(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?i(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var u=n(67294),c=u.useState,l=n(45697),s=n(97876),f=n(4330),d=function(e){var t=e.actionSource,n=e.inStock,r=e.onChangeProductQuantity,i=e.onDecreaseProductQuantity,l=e.onIncreaseProductQuantity,d=e.quantity,p=e.webProductId,m=a(c(!1),2),h=m[0],y=m[1],g=a(c(!1),2),v=g[0],b=g[1];function w(){return E.apply(this,arguments)}function E(){return(E=o(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!v){e.next=2;break}return e.abrupt("return");case 2:return b(!0),e.prev=3,e.next=6,l({actionSource:t,webProductId:p});case 6:y(!1);case 7:return e.prev=7,b(!1),e.finish(7);case 10:case"end":return e.stop()}}),e,null,[[3,,7,10]])})))).apply(this,arguments)}function C(){return(C=o(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!v){e.next=2;break}return e.abrupt("return");case 2:return b(!0),e.prev=3,e.next=6,i({actionSource:t,webProductId:p});case 6:y(!1);case 7:return e.prev=7,b(!1),e.finish(7);case 10:case"end":return e.stop()}}),e,null,[[3,,7,10]])})))).apply(this,arguments)}function S(){return(S=o(regeneratorRuntime.mark((function e(n){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!v){e.next=2;break}return e.abrupt("return");case 2:return b(!0),e.prev=3,e.next=6,r({actionSource:t,webProductId:p,quantity:n});case 6:y(!1);case 7:return e.prev=7,b(!1),e.finish(7);case 10:case"end":return e.stop()}}),e,null,[[3,,7,10]])})))).apply(this,arguments)}var k=n?"Add To Basket":"Pre Order";return 0===d?u.createElement("span",null,u.createElement("a",{className:"btn",onClick:w},k)):u.createElement("span",null,u.createElement("span",{className:"controls"},u.createElement("a",{className:"increase",onClick:w},u.createElement("span",null,u.createElement("i",null,"increase"))),u.createElement("a",{className:"decrease",onClick:function(){return C.apply(this,arguments)}},u.createElement("span",null,u.createElement("i",null,"decrease")))),u.createElement("span",{className:"qty"},h?u.createElement(s,{onClose:function(){return y(!1)},onQuantityChanged:function(e){return S.apply(this,arguments)},quantity:d}):u.createElement(f,{onClick:function(){return y(!0)},quantity:d})),u.createElement("span",{className:"title"},"In your basket"))};d.propTypes={actionSource:l.number,inStock:l.bool.isRequired,onChangeProductQuantity:l.func.isRequired,onDecreaseProductQuantity:l.func.isRequired,onIncreaseProductQuantity:l.func.isRequired,quantity:l.number.isRequired,webProductId:l.number.isRequired},e.exports=d},20947:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(25046),i=n(94184),u=function(e){var t=e.checkoutFlow,n=e.expandTooltip,o=e.highlight,u=e.maxBasketQty,c="nvidia"===t?a.urls.nvidiaBasket:a.urls.basket;return r.createElement(r.Fragment,null,r.createElement("span",{className:i({"checkout-highlight":o})},r.createElement("a",{href:c,className:"btn"},"Checkout Now")),r.createElement("span",{className:i("qty-limit",{expanded:n})},"Limited to ",u," per customer"))};u.propTypes={checkoutFlow:o.string,expandTooltip:o.bool.isRequired,highlight:o.bool.isRequired,maxBasketQty:o.number.isRequired},e.exports=u},7280:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function a(e,t){return(a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function i(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function u(e){return(u=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var c=n(67294),l=n(45697),s=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&a(e,t)}(f,e);var t,n,r,l,s=(r=f,l=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=u(r);if(l){var n=u(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return i(this,e)});function f(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,f),s.call(this,e)}return t=f,(n=[{key:"render",value:function(){var e=this.props.price;if(isNaN(parseFloat(e))||!isFinite(e))return c.createElement("div",{className:"price"});var t,n="";t=Math.floor(e);var r=e.toFixed(2);n=r.substring(r.lastIndexOf(".")+1),n=this.padZeros(n,2);var o=this.props.prefix&&this.props.prefix.length>0?this.props.prefix+" ":null;return c.createElement("span",{className:"price"},!0===this.props.showAsFrom?c.createElement("span",{className:"from"},"from "):null,o||null,c.createElement("small",null,"£"),t,".",c.createElement("small",null,n),!0===this.props.showNetPriceText?c.createElement("span",{className:"exVat"},"EX VAT"):null)}},{key:"padZeros",value:function(e,t){var n="000000000"+e.toString();return n.substring(n.length-t)}}])&&o(t.prototype,n),f}(c.Component);s.propTypes={prefix:l.string,price:l.number.isRequired,showAsFrom:l.bool,showNetPriceText:l.bool},e.exports=s},35725:(e,t,n)=>{function r(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}}(e,t)||function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var a=n(67294),i=a.useState,u=n(45697),c=n(51512).connect,l=n(48455),s=n(20947),f=n(23097),d=n(41996),p=n(57481),m=p.changeProductQuantity,h=p.decreaseProductQuantity,y=p.increaseProductQuantity,g=function(e){var t=e.actionSource,n=e.addToBasketUrl,o=e.checkoutFlow,u=e.dispatch,c=e.inStock,p=e.maxBasketQty,g=e.quantity,v=e.showCheckoutNowIfMaxQtyInBasket,b=void 0!==v&&v,w=e.webProductId,E=r(i(!1),2),C=E[0],S=E[1],k=r(i(!1),2),O=k[0],R=k[1],A=function(){O||(R(!0),setTimeout((function(){return R(!1)}),5e3))};return C?a.createElement(f,{url:n}):p===g&&b?a.createElement(s,{checkoutFlow:o,expandTooltip:O,highlight:O,maxBasketQty:p}):a.createElement(l,{actionSource:t,inStock:c,maxBasketQty:p,onChangeProductQuantity:function(e){return u(m(e)).then(A)},onDecreaseProductQuantity:function(e){return u(h(e)).then(A)},onIncreaseProductQuantity:function(e){return u(y(e)).then(A).catch((function(){d.error("Failed to increase qty - addToBasketUrl: '".concat(n,"'")),n&&S(!0)}))},quantity:g,showCheckoutNowIfMaxQtyInBasket:b,webProductId:w})};g.propTypes={actionSource:u.number,addToBasketUrl:u.string,checkoutFlow:u.string,dispatch:u.func.isRequired,inStock:u.bool.isRequired,maxBasketQty:u.number,quantity:u.number.isRequired,showCheckoutNowIfMaxQtyInBasket:u.bool,webProductId:u.number.isRequired},e.exports=c((function(e,t){var n=0,r=null,o=e.basket.basket;if(o)for(var a=0;a<o.lines.length;a++){var i=o.lines[a];i.webProductId===t.webProductId&&(n=i.quantity,r=i.maxBasketQty)}return{maxBasketQty:r,quantity:n}}))(g)},97876:(e,t,n)=>{function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var o=n(67294),a=o.useEffect,i=o.useRef,u=o.useState,c=n(45697),l=function(e){var t,n,c=e.onClose,l=e.onQuantityChanged,s=e.quantity,f=i(null),d=(t=u(String(s)),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}}(t,n)||function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),p=d[0],m=d[1];a((function(){var e=f.current;null!==e&&(e.focus(),e.select())}),[f]),a((function(){m(String(s))}),[s]);var h=function(){/^[0-9]+$/.test(p)?l(Number(p)):m(String(s))};return o.createElement("input",{type:"text",value:p,onBlur:function(){return h()},onChange:function(e){return m(e.target.value)},onKeyUp:function(e){13===e.keyCode&&h(),27===e.keyCode&&c()},ref:f})};l.propTypes={onClose:c.func.isRequired,onQuantityChanged:c.func.isRequired,quantity:c.number.isRequired},e.exports=l},4330:(e,t,n)=>{var r=n(67294),o=n(45697),a=function(e){var t=e.onClick,n=e.quantity,o="You have ".concat(n," of these in your basket");return r.createElement("span",{title:o,onClick:t},n)};a.propTypes={onClick:o.func.isRequired,quantity:o.number.isRequired},e.exports=a},26093:(e,t,n)=>{function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var o=n(41996),a=n(19755),i=n(25046),u=n(82702),c=i.urls.ajaxLeadForms;function l(e){return new u((function(t,n){return e.then(t).catch((function(e,t,r){var a=e.status;if(o.error("Api Response Error: ".concat(a," ").concat(t," ").concat(r)),429===a){var i=parseInt(e.getResponseHeader("Retry-After"),10);return n({secondsToRetry:i,statusCode:a})}return n({statusCode:a,message:r})}))}))}e.exports=new function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),r(this,"getForm",(function(e){return function(e){var t="".concat(c,"/").concat(e.toLowerCase());return new l(a.ajax({type:"get",url:t}))}(e)})),r(this,"submitForm",(function(e,t,n){return function(e,t,n){var r="".concat(c,"/").concat(e.toLowerCase());return new l(a.ajax({contentType:"application/json",data:JSON.stringify(t),statusCode:n,type:"post",url:r}))}(e,t,n)}))}},12552:(e,t,n)=>{var r=n(67294),o=n(45697);function a(e){var t=e.errors;return t&&0!==t.length?r.createElement("div",{className:"validation-summary-errors"},r.createElement("ul",null,t.map((function(e,t){return r.createElement("li",{key:t},e)})))):null}a.propTypes={errors:o.arrayOf(o.string)},e.exports=a},46083:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var o,a;function i(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return u(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?u(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){c=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(c)throw a}}}}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function l(e,t){return(l=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function s(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?f(e):t}function f(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function d(e){return(d=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function p(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var m=n(67294),h=n(45697),y=n(11434),g=n(70137),v=n(12552);function b(e,t){return e.isLookup?function(e){return null===e?"Select a value":null}(t):function(e,t){return 0===t.length&&e.isRequired?"This field is required":t.length>0&&e.regex&&!e.regex.test(t)?"This field is invalid":null}(e,t)}e.exports=(a=o=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&l(e,t)}(u,e);var t,n,r,o,a=(r=u,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=d(r);if(o){var n=d(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return s(this,e)});function u(e){var t;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,u),p(f(t=a.call(this,e)),"handleFieldChanged",(function(e,n){var r=t.fieldValidation[e];if(!r)throw Error("Could not get field validation for field with id '".concat(e,"'"));var o=b(r,n);t.setState(p({},e,{validationMessage:o,value:n}))})),p(f(t),"handleSubmit",(function(e){e.preventDefault();var n=t.props,r=n.form,o=n.onSubmit;if(null===n.rateLimitRetrySeconds){var a,u={},c={fields:[]},l=!1,s=i(r.fields);try{for(s.s();!(a=s.n()).done;){var f=a.value.id,d=t.fieldValidation[f],p=t.state[f].value;if(!d)throw Error("Could not get field validation for field with id '".concat(f,"'"));var m=b(d,p);m&&(u[f]={validationMessage:m,value:p},l=!0),c.fields.push({id:f,value:p})}}catch(e){s.e(e)}finally{s.f()}l?t.setState(u):o(c)}})),t.fieldValidation={},t.state={};var n,r=i(e.form.fields);try{for(r.s();!(n=r.n()).done;){var o=n.value,c=o.isLookup?null:"";t.state[o.id]={validationMessage:"",value:c},t.fieldValidation[o.id]={isRequired:o.isRequired,isLookup:o.isLookup,regex:o.validationRegex?new RegExp(o.validationRegex):null}}}catch(e){r.e(e)}finally{r.f()}return t}return t=u,(n=[{key:"render",value:function(){var e=this,t=this.props,n=t.errors,r=t.form,o=t.isFetching,a=t.rateLimitRetrySeconds,i=null!==a;return o?m.createElement("p",null,"Loading..."):m.createElement(m.Fragment,null,m.createElement(v,{errors:n}),m.createElement("form",{onSubmit:this.handleSubmit},m.createElement("div",{className:"oneColumnContainer"},r.fields.map((function(t){return m.createElement(g,{key:t.id,field:t,onChange:e.handleFieldChanged,value:e.state[t.id].value,validationMessage:e.state[t.id].validationMessage})}))),m.createElement("div",{className:"buttonContainer"},a&&m.createElement("p",null,"Too many requests - please wait..."),m.createElement("button",{type:"submit",disabled:i},"Submit"))))}}])&&c(t.prototype,n),u}(m.Component),p(o,"propTypes",{errors:h.arrayOf(h.string),form:y.form.isRequired,isFetching:h.bool.isRequired,onSubmit:h.func.isRequired,rateLimitRetrySeconds:h.number}),a)},37938:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function i(e,t){return(i=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function u(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?c(e):t}function c(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function l(e){return(l=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function s(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var f=n(67294),d=n(45697),p=n(26093),m=n(46083),h=n(46391),y=n(12552),g=n(30186),v=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&i(e,t)}(b,e);var t,n,r,d,v=(r=b,d=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=l(r);if(d){var n=l(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return u(this,e)});function b(){var e;o(this,b);for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return s(c(e=v.call.apply(v,[this].concat(n))),"state",{errors:null,form:null,isFetching:!1,queryId:null,rateLimitRetrySeconds:null}),s(c(e),"handleSubmit",(function(t){var n=e.props.formKey,r=function(t){var n=1e3*t;e.setState({isFetching:!1,rateLimitRetrySeconds:t}),setTimeout((function(){return e.setState({rateLimitRetrySeconds:null})}),n)};e.setState({isFetching:!0}),p.submitForm(n,t,{429:r}).then((function(t){e.setState({errors:t.errors,isComplete:t.success,isFetching:!1,queryId:t.queryId}),g.leadForm(n)})).catch((function(t){429===t.statusCode?r(t.secondsToRetry):e.setState({errors:["onError called",t],isFetching:!1})}))})),e}return t=b,(n=[{key:"componentDidMount",value:function(){var e=this,t=this.props.formKey;p.getForm(t).then((function(t){return e.setState({errors:null,form:t,isFetching:!1})})).catch((function(){return e.setState({errors:["An error occurred whilst loading the form - please reload the page to retry"],isFetching:!1})}))}},{key:"render",value:function(){var e=this.state,t=e.errors,n=e.form,r=e.isComplete,o=e.isFetching,a=e.queryId,i=e.rateLimitRetrySeconds;return r?f.createElement(h,{queryId:a}):n?f.createElement(m,{errors:t,form:n,isFetching:o,onSubmit:this.handleSubmit,rateLimitRetrySeconds:i}):t&&t.length>0?f.createElement(y,{errors:t}):null}}])&&a(t.prototype,n),b}(f.Component);s(v,"propTypes",{formKey:d.string.isRequired}),e.exports=v},70137:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var o,a;function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function c(e,t){return(c=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function l(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?s(e):t}function s(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function f(e){return(f=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function d(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var p=n(67294),m=n(45697),h=n(11434),y=n(50862),g=n(70966),v=n(67594);e.exports=(a=o=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&c(e,t)}(m,e);var t,n,r,o,a=(r=m,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=f(r);if(o){var n=f(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return l(this,e)});function m(){var e;i(this,m);for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return d(s(e=a.call.apply(a,[this].concat(n))),"handleChange",(function(t){var n=e.props,r=n.field;(0,n.onChange)(r.id,t)})),e}return t=m,(n=[{key:"render",value:function(){var e=this.props,t=e.field,n=e.validationMessage,r=e.value,o=t.label,a=t.id;return t.isLookup?p.createElement(v,{fieldName:o,id:a,isRequired:!0,rowClassName:"size50",validationMessage:n,value:r,valueChanged:this.handleChange,values:t.lookupValues.map((function(e){return{value:e.value,text:e.text}}))}):t.multiLine?p.createElement(g,{fieldName:o,id:a,isRequired:t.isRequired,maxLength:t.maxLength,validationMessage:n,value:r,valueChanged:this.handleChange}):p.createElement(y,{fieldName:o,id:a,isRequired:t.isRequired,maxLength:t.maxLength,validationMessage:n,value:r,valueChanged:this.handleChange})}}])&&u(t.prototype,n),m}(p.Component),d(o,"propTypes",{field:m.oneOfType([h.lookupFormField,h.textFormField]),onChange:m.func.isRequired,validationMessage:m.string,value:m.string}),a)},46391:(e,t,n)=>{var r=n(67294),o=n(45697);function a(e){var t=e.queryId;return r.createElement("div",null,r.createElement("p",null,r.createElement("strong",null,"Thank you for your details")),r.createElement("p",null,"A member of our team will be in contact with you as soon as possible."),r.createElement("p",null,"Your reference number is ",r.createElement("strong",null,"OLQ ",t),"."))}a.propTypes={queryId:o.number.isRequired},e.exports=a},88332:(e,t,n)=>{function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var o=n(67294),a=n(73935),i=n(37938);!function(){var e,t=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0,a=function(){};return{s:a,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(document.querySelectorAll("div[data-leadform]"));try{for(t.s();!(e=t.n()).done;){var n=e.value,u=n.getAttribute("data-leadform");a.render(o.createElement(i,{formKey:u}),n)}}catch(e){t.e(e)}finally{t.f()}}()},11434:(e,t,n)=>{var r=n(45697),o=r.shape({id:r.string.isRequired,label:r.string.isRequired,isLookup:r.bool.isRequired,isRequired:r.bool.isRequired,lookupValues:r.arrayOf(r.shape({text:r.string.isRequired,value:r.string.isRequired})),validationRegex:r.string}),a=r.shape({key:r.string.isRequired,fields:r.arrayOf(o)}),i=r.shape({id:r.string.isRequired,label:r.string.isRequired,lookupValues:r.arrayOf(r.shape({text:r.string.isRequired,value:r.string.isRequired})).isRequired}),u=r.shape({id:r.string.isRequired,label:r.string.isRequired,maxLength:r.number,multiLine:r.bool.isRequired,isRequired:r.bool.isRequired,validationRegex:r.string});e.exports={form:a,lookupFormField:i,textFormField:u}},93936:(e,t,n)=>{var r=n(67294),o=n(45697),a=function(e){var t=e.category,n=e.checked,o=e.onChange,a="CategoryCheckbox".concat(t.id);return r.createElement("span",{className:"checkbox"},r.createElement("input",{type:"checkbox",id:a,name:t.id,checked:n,onChange:function(e){return o(t.id,e.target.checked)}}),r.createElement("label",{htmlFor:a}))};a.propTypes={category:o.shape({id:o.number.isRequired}).isRequired,checked:o.bool.isRequired,onChange:o.func.isRequired},e.exports=a},28701:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(94184),i=n(93936),u=function(e){var t=e.categoryGroups,n=e.checkedItems,o=e.onCategoryChecked;return t.map((function(e){return r.createElement("li",{key:e.id,className:a("mcg"+e.id)},r.createElement("a",{className:"small heading",href:e.u},r.createElement("span",null,e.t)),r.createElement("span",{className:"rowHolder"},r.createElement("ul",null,e.c.map((function(e){return r.createElement("li",{key:e.id},r.createElement("span",{className:"checkboxLink"},r.createElement(i,{category:e,checked:n[e.id],onChange:o}),r.createElement("a",{href:e.u},e.t)))})))))}))};u.propTypes={categoryGroups:o.arrayOf(o.shape({id:o.number.isRequired,u:o.string.isRequired,t:o.string.isRequired,c:o.arrayOf(o.shape({id:o.number.isRequired,t:o.string.isRequired,u:o.string.isRequired})).isRequired})).isRequired,checkedItems:o.object.isRequired,onCategoryChecked:o.func.isRequired},e.exports=u},42579:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(28701);function i(e){var t=e.checkedItems,n=e.masterCategory,o=e.onCheckAll,i=e.onCategoryChecked,u=!0,c=[];for(var l in t)!0===t[l]?c.push(l):u=!1;var s=n.uf,f=c.join("/"),d=s.replace("__categories__",f),p=0===c.length?0:f.length>150?2:1,m=n.c;return r.createElement("div",{className:"bodyHolder"},r.createElement("div",null,r.createElement("ul",null,r.createElement(a,{categoryGroups:m,checkedItems:t,onCategoryChecked:i})),r.createElement("div",{className:"footer"},r.createElement("span",{className:"checkboxLink"},r.createElement("span",{className:"checkbox"},r.createElement("input",{id:"checkUncheck",type:"checkbox",name:"checkUncheck",checked:u,onChange:function(e){return o(e.target.checked)}}),r.createElement("label",{htmlFor:"checkUncheck"})),r.createElement("span",null," Check/Uncheck all")),r.createElement("div",{className:"buttonHolder"},r.createElement("a",{className:"btn medium viewAll",href:n.u},"View All"),0===p&&r.createElement("button",{className:"btn medium",disabled:"disabled"},"View Selection"),2===p&&r.createElement("form",{action:n.u,method:"POST"},r.createElement("input",{type:"hidden",name:"CategoryUrls",value:f}),r.createElement("button",{className:"btn medium on"},"View Selection")),1===p&&r.createElement("a",{className:"btn medium on",href:d},"View Selection")))))}i.propTypes={checkedItems:o.object.isRequired,masterCategory:o.object,onCategoryChecked:o.func.isRequired,onCheckAll:o.func.isRequired},e.exports=i},45144:(e,t,n)=>{function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach((function(t){a(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=u(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){c=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(c)throw a}}}}function u(e,t){if(e){if("string"==typeof e)return c(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?c(e,t):void 0}}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var l=n(67294),s=l.useEffect,f=l.useState,d=n(45697),p=n(42579),m=function(e){var t,n,r=e.masterCategory,c=function(){var e,t={},n=i(r.c);try{for(n.s();!(e=n.n()).done;){var o,a=i(e.value.c);try{for(a.s();!(o=a.n()).done;)t[o.value.id]=!1}catch(e){a.e(e)}finally{a.f()}}}catch(e){n.e(e)}finally{n.f()}return t},d=(t=f(c()),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}}(t,n)||u(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),m=d[0],h=d[1];return s((function(){h(c())}),[r]),l.createElement(p,{checkedItems:m,masterCategory:r,onCheckAll:function(e){var t=o({},m);for(var n in m)t[n]=e;h(t)},onCategoryChecked:function(e,t){h(o(o({},m),{},a({},e,t)))}})};m.propTypes={masterCategory:d.object},e.exports=m},16670:(e,t,n)=>{"use strict";var r=n(67294),o=n(45697);function a(e){var t=e.masterCategory,n=e.onClose;return r.createElement("div",{className:"header"},r.createElement("div",{className:"rightColumn"},r.createElement("button",{className:"icon close",onClick:n},"Back"),r.createElement("div",{className:"filter"},"Show me",r.createElement("a",{className:"tag new",href:t.un},"New"),r.createElement("a",{className:"tag hot",href:t.uh},"Hot Sellers"),r.createElement("a",{className:"tag sale",href:t.uc},"Sale"))),r.createElement("a",{className:"large heading",href:t.u},t.t),t.ubg&&r.createElement("a",{className:"buyGuide",href:t.ubg,"data-linktrack":"BuyingGuide","data-linkvar":"Menu Popup"},"Buying Guide"))}a.propTypes={masterCategory:o.object,onClose:o.func.isRequired},e.exports=a},15877:(e,t,n)=>{"use strict";var r=n(67294),o=n(45697),a=n(94184),i=n(16670),u=n(45144);function c(e){var t=e.isVisible,n=e.masterCategory,o=e.onClose;return r.createElement("div",{className:a("menuLevel4",{visible:t,mobileVisible:t})},t&&r.createElement("div",{className:"popupBackground",onClick:o}),r.createElement("div",null,null===n?r.createElement("div",null,r.createElement("span",{className:"menuLoader"},r.createElement("i",null))):r.createElement("div",{className:a("mc"+n.id)},r.createElement(i,{masterCategory:n,onClose:o}),r.createElement("span",{className:"title"},r.createElement("i",null)," ",r.createElement("span",null,n.t)),r.createElement(u,{masterCategory:n}))))}c.propTypes={isVisible:o.bool.isRequired,masterCategory:o.object,onClose:o.func.isRequired},e.exports=c},69139:(e,t,n)=>{var r=n(67294),o=n(58786).selectState,a=n(51512).connect,i=n(56224).hidePopup,u=n(15877);e.exports=a((function(e){return o(e)}),(function(e){return{onClose:function(){return e(i())}}}))((function(e){return r.createElement(u,e)}))},64249:(e,t,n)=>{var r=n(67294),o=n(73935).render,a=n(51512).Provider,i=n(89166),u=n(30806),c=n(23426),l=n(69139),s=n(46030);c(),u.onPageLoad((function(){var e;s(),(e=document.getElementById("menuPopup"))&&o(r.createElement(a,{store:i},r.createElement(l,null)),e)}))},56224:(e,t,n)=>{var r=n(68275),o=n(42210),a=n(41996),i=n(58786),u=i.GET_MASTERCATEGORY_COMPLETED,c=i.GET_MASTERCATEGORY_FAILED,l=i.GET_MASTERCATEGORY_STARTED,s=i.HIDE_POPUP,f=i.SHOW_LOADER,d=i.SHOW_POPUP;e.exports={hidePopup:function(){return{type:s}},showCategories:function(e,t){return function(n,i){var s=Boolean(window.performance&&window.performance.mark);s&&window.performance.mark("MenuStore.onShowCategories(sid:".concat(e,", mcid:").concat(t,") Start"));var p=i();p.siteId===e&&null!==p.masterCategory&&p.masterCategory.id===t?n({type:d}):(n({type:l}),setTimeout((function(){!0===i().isFetching&&n({type:f})}),350),r.getMasterCategory(e,t).done((function(t){n({type:u,payload:{masterCategory:t,siteId:e}})})).fail((function(r,i,u){n({type:c});var l={methodAndArguments:"MenuApi.getMasterCategory(siteId:".concat(e,", masterCategoryId:").concat(t,")"),responseStatusCode:r.status,responseText:r.responseText,responseTextStatus:i};a.error("Caught error in MenuApi.getMasterCategory(siteId:".concat(e,", masterCategoryId:").concat(t,"). Received statusCode:").concat(r.status,' textStatus:"').concat(i,'"'),l,u),o.Error("A problem occured loading the menu, please try again later")})).always((function(){s&&(window.performance.mark("MenuStore.onShowCategories(sid:".concat(e,", mcid:").concat(t,") End")),window.performance.measure("MenuStore.onShowCategories(sid:".concat(e,", mcid:").concat(t,")"),"MenuStore.onShowCategories(sid:".concat(e,", mcid:").concat(t,") Start"),"MenuStore.onShowCategories(sid:".concat(e,", mcid:").concat(t,") End")))})))}}}},58786:(e,t,n)=>{function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach((function(t){a(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var i=n(28227),u="layout_menu",c=function(e){return"scan/".concat(u,"/").concat(e)},l={GET_MASTERCATEGORY_STARTED:c("GET_MASTERCATEGORY_STARTED"),GET_MASTERCATEGORY_COMPLETED:c("GET_MASTERCATEGORY_COMPLETED"),GET_MASTERCATEGORY_FAILED:c("GET_MASTERCATEGORY_FAILED"),HIDE_POPUP:c("HIDE_POPUP"),SHOW_POPUP:c("SHOW_POPUP"),SHOW_LOADER:c("SHOW_LOADER")},s={isFetching:!1,isVisible:!1,masterCategory:null,siteId:null};function f(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:s,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case l.GET_MASTERCATEGORY_STARTED:return o(o({},e),{},{isFetching:!0});case l.GET_MASTERCATEGORY_COMPLETED:var n=t.payload,r=n.masterCategory,a=n.siteId;return o(o({},e),{},{isFetching:!0,isVisible:!0,masterCategory:r,siteId:a});case l.GET_MASTERCATEGORY_FAILED:return o(o({},e),{},{masterCategory:null,isFetching:!1,isVisible:!1,siteId:null});case l.HIDE_POPUP:return o(o({},e),{},{isVisible:!1});case l.SHOW_POPUP:return o(o({},e),{},{isVisible:!0});case l.SHOW_LOADER:return o(o({},e),{},{isVisible:!0,masterCategory:null});default:return o({},e)}}e.exports=o(o({},l),{},{reducerName:u,reducer:f,registerReducer:function(){i.register(u,f)},selectState:function(e){return e.layout_menu}})},23426:(e,t,n)=>{var r=n(58786);e.exports=function(){r.registerReducer()}},46030:(e,t,n)=>{"use strict";function r(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var a=n(19755),i=n(89166),u=n(56224),c=u.hidePopup,l=u.showCategories,s=n(41996);e.exports=function(){if(a("header.menu").on("click",'button[data-action="navigate-back"]',(function(e){e.preventDefault(),window.history.back()})),0!==a("nav#mainMenu").length){a(".menuLevel2").on("click","li",(function(e){var t,n=a(e.currentTarget);t=n.data("mcgid"),a(".menuLevel3").removeClass("visible"),a(".menuLevel3[data-id='"+t+"']").addClass("visible"),a(".menuLevel2 li").removeClass("selected"),n.addClass("selected")})),a(".menuLevel3").on("click","ul > li > a",(function(e){e.preventDefault();var t=a(e.currentTarget).closest("nav").data("sid"),n=a(e.currentTarget).data("mcid");i.dispatch(l(t,n))})),a('[data-menupopup="1"]').on("click",(function(e){if(a("header button.menu").filter(":visible").length)s.log("No popup menu from breadcrumb when mobile button is visible");else{e.preventDefault();var t=a(e.currentTarget),n=t.data("sid"),r=t.data("mcid");s.log("showing site "+n+" and mc "+r),i.dispatch(l(n,r))}})),function(){var e=a(".menuLevel1 > ul > li:first").width(),t=Math.max(e,50),n=a(".menuLevel1 > ul");if(1===n.length){var r=function(e){var t=n.scrollLeft(),r=t+e;r=Math.max(r,0),r=Math.min(r,n[0].scrollWidth),s.info("MobileMenu: horizontal scrolling from "+t+" to "+r),n.scrollLeft(r)};a(".menuLevel1 .previous").on("click",(function(){r(-t)})),a(".menuLevel1 .next").on("click",(function(){r(t)}))}else s.warn("MobileMenu: Expected 1 pro tab container but found "+n.length)}();var e="mobileVisible",t="mobileSelected",n="mobileHide",o="mobileHide",u="mobileHideOptions",f=a("header button.menu"),d=a("nav, div.navBackground"),p=a("div.navBackground"),m=1,h=2,y=3,g=4,v=a("div.menuLevel2"),b=a("div.menuLevel3"),w=a("#menuPopup");f.on("click",(function(){var t=d.hasClass(e);d.toggleClass(e,!t),t?function(){var e,t=r(C);try{for(t.s();!(e=t.n()).done;){var o=e.value;a(o).toggleClass(n,!1)}}catch(e){t.e(e)}finally{t.f()}}():(!0!==E&&(v.length>0?k(v):k(b.eq(0)),E=!0),R((function(){var e,t=r(C);try{for(t.s();!(e=t.n()).done;){var o=e.value;a(o).toggleClass(n,!0)}}catch(e){t.e(e)}finally{t.f()}})))})),v.on("click","ul > li",(function(e){e.preventDefault(),e.stopPropagation();var t=a(e.currentTarget),n=t.attr("data-mcgid");if(null===n)throw new Error("masterCategoryGroupId is null");!function(e,t){if(null===e)throw new Error("masterCategoryGroupId is null");k(b.filter("[data-id="+e+"]"),t)}(n,t)})),v.on("click","span.title",(function(e){e.preventDefault(),k(a(e.currentTarget).parent(),null)})),b.on("click","ul > li > a",(function(e){var t=a(e.currentTarget);k(w,t)})),b.on("click","span.title",(function(e){e.preventDefault(),k(a(e.currentTarget).parent(),null)}));var E=!1,C=["div.main","footer","div.siteHelp","div#toolbar"],S=[]}function k(n,r){A();var a=null;n.is("nav")?a=m:n.hasClass("menuLevel2")?a=h:n.hasClass("menuLevel3")?a=y:n.is("#menuPopup")&&(a=g),s.info("Showing level "+a),a!==m?a!==h||v.length>0?(a<=g&&w.removeClass(e),a<=y&&(O(b),b.removeClass(e)),a<=h&&(O(v),v.removeClass(e),R((function(){b.addClass(o)}),!0)),a>=y&&b.removeClass(o),a!==g&&(i.dispatch(c()),R((function(){w.addClass(o)}),!0)),a===g?(w.removeClass(o),R((function(){s.info("Hiding Level 2 and Level 3 Options"),v.addClass(u),b.addClass(u)}),!0)):a===y?(R((function(){s.info("Hiding Level 2 Options"),v.addClass(u)}),!0),b.removeClass(u)):(v.removeClass(u),b.removeClass(u)),a<g&&n.addClass(e),r&&(s.info("adding mobile seleted to clicked element"),r.addClass(t).siblings().removeClass(t)),a>=y?p.hide():p.show()):s.warn("Cannot display level two when no master category groups exist"):s.warn("Cannot display level one")}function O(e){a(".mobileSelected",e).removeClass(t)}function R(e,t){var n=setTimeout((function(){e(),!0===t&&A(n)}),400);!0===t&&S.push(n)}function A(e){var t;for(S.length>0&&s.info("Stopping "+S.length+" pending timeouts (specified "+Boolean(e)+")"),t=0;t<S.length;t++){var n=S[t];e&&n!==e||(clearTimeout(n),S.splice(t,1),t--)}}}},40700:(e,t,n)=>{function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var o=n(67294),a=o.useState,i=n(43239),u=n(45697),c=function(e){var t,n,u=e.hasScanProtect,c=e.selectorForTextElements,l=(t=a(!1),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}}(t,n)||function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),s=l[0],f=l[1];return i(document,"mouseup",(function(e){e.target.closest(c)&&setTimeout((function(){document.getSelection&&(document.getSelection().isCollapsed?f(!1):f(!0))}),100)})),i(document,"mousedown",(function(e){e.target.closest(".reasons-to-buy")||s&&f(!1)})),s?o.createElement("div",{className:"reasons-to-buy"},o.createElement("h1",null,"Some reasons to buy from Scan Computers"),o.createElement("div",null,o.createElement("div",null,o.createElement("h2",null,"Competitive market prices"),o.createElement("p",null,"We constantly check market prices and order from Manufacturers directly to ensure we are offering competitive prices with a good service."))),o.createElement("div",null,o.createElement("div",null,o.createElement("h2",null,"Buy now pay in installments"),o.createElement("p",null,"Spend over ",o.createElement("strong",null,"£225")," and ",o.createElement("strong",null,"Buy Now, Pay later")," or spread the cost of your finance over ",o.createElement("strong",null,"24-48 months")," with a 10% deposit."))),u?o.createElement("div",null,o.createElement("div",null,o.createElement("h2",null,"ScanProtect Protection"),o.createElement("i",{className:"scanprotect"},"ScanProtect"),o.createElement("p",null,"Protect against installation damage for 28 days. ",o.createElement("br",null),o.createElement("a",{href:"/info/scanprotect"},"MORE")))):o.createElement("div",null,o.createElement("div",null,o.createElement("h2",null,"Next day delivery available"),o.createElement("i",{className:"dpd"},"DPD"),o.createElement("p",null,"Delivered to your specified address. Receives SMS with one-hour delivery window.")))):null};c.propTypes={hasScanProtect:u.bool.isRequired,selectorForTextElements:u.string.isRequired},e.exports=c},37273:(e,t,n)=>{var r=n(19755),o=n(67294),a=n(73935).render,i=n(29476),u=n(30806),c=n(44434),l=n(40700),s=n(25427).selectAndScrollToTab;u.onPageLoad((function(){var e,t,n;e=r("button#customersAlsoBoughtButton"),t=e.attr("data-productid"),n=function n(){r.ajax({data:{productId:t},datatype:"text/plain",type:"GET",url:"/products/getcustomersalsobought",success:function(t){var o=r(".relatedProducts");o.html(t),u.domNodeAdded(o[0]),i.addNewImages(),e.off("click",n)}})},e.on("click",n),function(){if(!c())for(var e=r('div.product:contains("ScanProtect")').length>0,t=0,n=['div.product h1[itemprop="name"]'];t<n.length;t++){var i=n[t],u=document.querySelector(i);if(u){var s=u.insertAdjacentElement("afterend",document.createElement("div"));a(o.createElement(l,{hasScanProtect:e,selectorForTextElements:i}),s)}}}()})),window.bvCallback=function(e){var t="infoTabs";e.reviews.on("show",(function(){return s(t,"reviews")})),e.questions.on("show",(function(){return s(t,"questions")}))}},8567:(e,t,n)=>{var r=n(45697),o=r.shape({id:r.string.isRequired,name:r.string.isRequired,productCount:r.number.isRequired,checked:r.bool.isRequired}),a=r.arrayOf(o),i=r.shape({approvedBy3xs:r.bool.isRequired,approvedBy3xsCount:r.number.isRequired,categories:a.isRequired,clearance:r.bool.isRequired,clearanceCount:r.number.isRequired,entryLevel:r.bool.isRequired,entryLevelCount:r.number.isRequired,filterVisible:r.bool.isRequired,freeDelivery:r.bool.isRequired,freeDeliveryCount:r.number.isRequired,highEnd:r.bool.isRequired,highEndCount:r.number.isRequired,hot:r.bool.isRequired,hotCount:r.number.isRequired,inStock:r.bool.isRequired,inStockCount:r.number.isRequired,keywords:r.string,manufacturers:a.isRequired,maxValue:r.number,midRange:r.bool.isRequired,midRangeCount:r.number.isRequired,minValue:r.number,newArrivals:r.bool.isRequired,newArrivalsCount:r.number.isRequired,r48:r.bool.isRequired,r48Count:r.number.isRequired,scanProtect:r.bool.isRequired,scanProtectCount:r.number.isRequired});e.exports={checkList:a,checkListItem:o,filter:i}},86056:(e,t,n)=>{function r(){return(r=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?o(Object(n),!0).forEach((function(t){i(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):o(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var u=n(67294),c=n(45697),l=n(40392);function s(e){var t=e.htmlIdPrefixForItems,n=e.items,o=e.onChange;return u.createElement("ul",null,n.map((function(e){return u.createElement(l,r({key:e.id},a(a({},e),{},{htmlIdPrefixForItems:t,onChange:o})))})))}s.propTypes={htmlIdPrefixForItems:c.string.isRequired,items:c.arrayOf(c.shape({checked:c.bool.isRequired,id:c.string.isRequired,name:c.string.isRequired,productCount:c.number.isRequired})).isRequired,onChange:c.func.isRequired},e.exports=s},40392:(e,t,n)=>{var r=n(67294),o=n(45697);function a(e){var t=e.checked,n=e.htmlIdPrefixForItems,o=e.id,a=e.name,i=e.onChange,u=e.productCount,c="".concat(n,"_").concat(o);return r.createElement("li",null,r.createElement("span",{className:"checkboxWithText"},r.createElement("input",{type:"checkbox",id:c,checked:t,onChange:function(e){i(o,e.target.checked)}}),r.createElement("label",{htmlFor:c},r.createElement("span",null,a," ",r.createElement("i",null,"(",u,")")))))}a.propTypes={checked:o.bool.isRequired,htmlIdPrefixForItems:o.string.isRequired,id:o.string.isRequired,name:o.string.isRequired,onChange:o.func.isRequired,productCount:o.number.isRequired},e.exports=a},63177:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var o,a;function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function u(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?i(Object(n),!0).forEach((function(t){p(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function l(e,t){return(l=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function s(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?f(e):t}function f(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function d(e){return(d=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function p(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var m=n(67294),h=n(45697);e.exports=(a=o=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&l(e,t)}(i,e);var t,n,r,o,a=(r=i,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=d(r);if(o){var n=d(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return s(this,e)});function i(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,i),p(f(t=a.call(this,e)),"handleOnChange",(function(e){e.preventDefault(),t.setState({value:e.target.value}),t.raiseOnChangeEventAfterDelay()})),p(f(t),"handleOnBlur",(function(){t.raiseOnChangeEvent()})),p(f(t),"raiseOnChangeEventAfterDelay",(function(){null!==t.onChangeTimerHandle&&clearTimeout(t.onChangeTimerHandle),t.onChangeTimerHandle=setTimeout(t.raiseOnChangeEvent,t.props.delay)})),p(f(t),"raiseOnChangeEvent",(function(){null!==t.onChangeTimerHandle&&clearTimeout(t.onChangeTimerHandle),t.props.onChange(t.state.value)})),t.state={value:e.value},t.onChangeTimerHandle=null,t}return t=i,(n=[{key:"componentDidUpdate",value:function(e){e.value!==this.props.value&&this.setState({value:this.props.value})}},{key:"render",value:function(){var e=this.props,t=this.state.value;return m.createElement("input",u(u({},e),{},{value:t,onChange:this.handleOnChange,onBlur:this.handleOnBlur}))}}])&&c(t.prototype,n),i}(m.Component),p(o,"propTypes",{delay:h.number,onChange:h.func.isRequired,value:h.string.isRequired}),p(o,"defaultProps",{delay:500}),a)},21430:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var o,a;function i(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function u(e,t){return(u=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function c(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?l(e):t}function l(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function s(e){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function f(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var d=n(67294),p=n(45697),m=n(94184);e.exports=(a=o=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&u(e,t)}(p,e);var t,n,r,o,a=(r=p,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=s(r);if(o){var n=s(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return c(this,e)});function p(e){var t;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,p),f(l(t=a.call(this,e)),"onToggleExpandableButtonClicked",(function(e){e.preventDefault(),t.setState({expanded:!t.state.expanded})}));var n=void 0===e.collapsed||null===e.collapsed||!e.collapsed;return t.state={expanded:n},t}return t=p,(n=[{key:"render",value:function(){var e=this.props,t=e.children,n=e.className,r=e.expandable,o=e.title,a=this.state.expanded;return d.createElement("div",{className:m("field-block",n,{expanded:a})},r?d.createElement(d.Fragment,null,d.createElement("button",{className:"link",onClick:this.onToggleExpandableButtonClicked},o),d.createElement("div",null,t)):d.createElement(d.Fragment,null,d.createElement("span",{className:"title"},o),t))}}])&&i(t.prototype,n),p}(d.Component),f(o,"propTypes",{children:p.oneOfType([p.node,p.arrayOf(p.node)]).isRequired,className:p.string,collapsed:p.bool,expandable:p.bool.isRequired,title:p.string.isRequired}),a)},79487:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(8567),i=n(21816),u=n(35883);function c(e){var t=e.filter,n=e.isFilterInUse,o=e.onApprovedBy3xsChange,a=e.onCategoryChange,c=e.onClearanceChange,l=e.onEntryLevelChange,s=e.onFreeDeliveryChange,f=e.onHighEndChange,d=e.onHotChange,p=e.onInStockChange,m=e.onKeywordsChange,h=e.onManufacturerChange,y=e.onMaxValueChange,g=e.onMidRangeChange,v=e.onMinValueChange,b=e.onNewArrivalsChange,w=e.onResetFilter,E=e.onToggleFilter,C=t.filterVisible;return r.createElement(r.Fragment,null,r.createElement(i,{filterVisible:C,onToggleFilter:E}),n&&r.createElement(u,{filter:t,onApprovedBy3xsChange:o,onCategoryChange:a,onClearanceChange:c,onEntryLevelChange:l,onFreeDeliveryChange:s,onHighEndChange:f,onHotChange:d,onInStockChange:p,onKeywordsChange:m,onManufacturerChange:h,onMaxValueChange:y,onMidRangeChange:g,onMinValueChange:v,onNewArrivalsChange:b,onResetFilter:w}))}c.propTypes={filter:a.filter.isRequired,isFilterInUse:o.bool.isRequired,onApprovedBy3xsChange:o.func.isRequired,onCategoryChange:o.func.isRequired,onClearanceChange:o.func.isRequired,onEntryLevelChange:o.func.isRequired,onFreeDeliveryChange:o.func.isRequired,onHighEndChange:o.func.isRequired,onHotChange:o.func.isRequired,onInStockChange:o.func.isRequired,onKeywordsChange:o.func.isRequired,onManufacturerChange:o.func.isRequired,onMaxValueChange:o.func.isRequired,onMidRangeChange:o.func.isRequired,onMinValueChange:o.func.isRequired,onNewArrivalsChange:o.func.isRequired,onResetFilter:o.func.isRequired,onToggleFilter:o.func.isRequired},e.exports=c},35883:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(86764),i=n(8567),u=function(e){var t=e.filter,n=e.onApprovedBy3xsChange,o=e.onCategoryChange,i=e.onClearanceChange,u=e.onEntryLevelChange,c=e.onFreeDeliveryChange,l=e.onHighEndChange,s=e.onHotChange,f=e.onInStockChange,d=e.onKeywordsChange,p=e.onManufacturerChange,m=e.onMaxValueChange,h=e.onMidRangeChange,y=e.onMinValueChange,g=e.onNewArrivalsChange,v=e.onResetFilter,b=t.approvedBy3xs,w=t.categories,E=t.clearance,C=t.entryLevel,S=t.freeDelivery,k=t.highEnd,O=t.hot,R=t.inStock,A=t.keywords,P=t.manufacturers,T=t.maxValue,x=t.midRange,j=t.minValue,I=t.newArrivals;return r.createElement("div",{className:"filters-applied"},r.createElement("div",{className:"title"},"Filters applied:"),r.createElement("div",{className:"filters"},w.filter((function(e){return e.checked})).map((function(e){return r.createElement(a,{key:e.id,text:e.name,onClick:function(){return o(e.id,!1)}})})),P.filter((function(e){return e.checked})).map((function(e){return r.createElement(a,{key:e.id,text:e.name,onClick:function(){return p(e.id,!1)}})})),R&&r.createElement(a,{text:"In stock",onClick:function(){return f(!1)}}),S&&r.createElement(a,{text:"Free delivery",onClick:function(){return c(!1)}}),j&&r.createElement(a,{text:"Min: £".concat(j.toFixed(2)),onClick:function(){return y(null)}}),T&&r.createElement(a,{text:"Max: £".concat(T.toFixed(2)),onClick:function(){return m(null)}}),I&&r.createElement(a,{text:"NEW",onClick:function(){return g(!1)}}),O&&r.createElement(a,{text:"HOT",onClick:function(){return s(!1)}}),E&&r.createElement(a,{text:"SALE",onClick:function(){return i(!1)}}),k&&r.createElement(a,{text:"High End",onClick:function(){return l(!1)}}),x&&r.createElement(a,{text:"Mid Range",onClick:function(){return h(!1)}}),C&&r.createElement(a,{text:"Entry Level",onClick:function(){return u(!1)}}),b&&r.createElement(a,{text:"3XS Approved",onClick:function(){return n(!1)}}),A&&A.length>0&&r.createElement(a,{text:"Keywords: ".concat(A),onClick:function(){return d("")}}),r.createElement("button",{onClick:function(e){e.preventDefault(),v()},className:"clear"},"Clear all")))};u.propTypes={filter:i.filter.isRequired,onApprovedBy3xsChange:o.func.isRequired,onCategoryChange:o.func.isRequired,onClearanceChange:o.func.isRequired,onEntryLevelChange:o.func.isRequired,onFreeDeliveryChange:o.func.isRequired,onHighEndChange:o.func.isRequired,onHotChange:o.func.isRequired,onInStockChange:o.func.isRequired,onKeywordsChange:o.func.isRequired,onManufacturerChange:o.func.isRequired,onMaxValueChange:o.func.isRequired,onMidRangeChange:o.func.isRequired,onMinValueChange:o.func.isRequired,onNewArrivalsChange:o.func.isRequired,onResetFilter:o.func.isRequired},e.exports=u},86764:(e,t,n)=>{var r=n(67294),o=n(45697),a=function(e){var t=e.onClick,n=e.text;return r.createElement("button",{onClick:function(e){e.preventDefault(),t()}},n,r.createElement("i",null))};a.propTypes={onClick:o.func.isRequired,text:o.string.isRequired},e.exports=a},21816:(e,t,n)=>{var r=n(67294),o=n(45697),a=function(e){var t=e.filterVisible,n=e.onToggleFilter,o="".concat(t?"Hide":"Show"," Filter");return r.createElement("div",{className:"filterLaunch"},r.createElement("button",{className:"link",onClick:function(e){e.preventDefault(),n()}},o))};a.propTypes={filterVisible:o.bool.isRequired,onToggleFilter:o.func.isRequired},e.exports=a},43306:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var o,a;function i(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function u(e,t){return(u=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function c(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?l(e):t}function l(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function s(e){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function f(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var d=n(67294),p=n(45697),m=function(e){return null==e||isNaN(e)?"":e.toFixed(2)};e.exports=(a=o=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&u(e,t)}(p,e);var t,n,r,o,a=(r=p,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=s(r);if(o){var n=s(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return c(this,e)});function p(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,p),f(l(t=a.call(this,e)),"onChange",(function(e){t.setState({value:e.target.value})})),f(l(t),"onBlur",(function(e){var n,r,o=(n=e.target.value,r=parseFloat(n,2),isNaN(r)?"":r.toFixed(2));t.setState({value:o});var a=Number(o);isNaN(a)||0===a?t.props.onChange(null):t.props.onChange(a)})),t.state={value:m(e.price)},t}return t=p,(n=[{key:"componentDidUpdate",value:function(e){e.price!==this.props.price&&this.setState({value:m(this.props.price)})}},{key:"render",value:function(){var e=this.props.placeholder,t=this.state.value,n=null!==t&&isNaN(t);return d.createElement("input",{className:n?"error":null,type:"text",onChange:this.onChange,onBlur:this.onBlur,placeholder:e,value:t})}}])&&i(t.prototype,n),p}(d.Component),f(o,"propTypes",{onChange:p.func.isRequired,placeholder:p.string,price:p.number}),a)},61213:(e,t,n)=>{function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var o=n(67294),a=n(45697),i=n(94184),u=n(86056),c=n(21430),l=n(8567),s=n(43306),f=n(63177),d=o.useEffect,p=function(e){var t=e.filter,n=e.onApprovedBy3xsChange,a=e.onCategoryChange,l=e.onClearanceChange,p=e.onEntryLevelChange,m=e.onFreeDeliveryChange,h=e.onHighEndChange,y=e.onHotChange,g=e.onInStockChange,v=e.onKeywordsChange,b=e.onManufacturerChange,w=e.onMaxValueChange,E=e.onMidRangeChange,C=e.onMinValueChange,S=e.onNewArrivalsChange,k=t.approvedBy3xs,O=t.approvedBy3xsCount,R=t.categories,A=t.clearance,P=t.clearanceCount,T=t.entryLevel,x=t.entryLevelCount,j=t.freeDelivery,I=t.freeDeliveryCount,_=t.highEnd,N=t.highEndCount,q=t.hot,D=t.hotCount,L=t.inStock,F=t.inStockCount,B=t.keywords,M=t.manufacturers,H=t.maxValue,U=t.midRange,G=t.midRangeCount,V=t.minValue,z=t.newArrivals,K=t.newArrivalsCount,$=t.filterVisible;d((function(){var e,t=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0,a=function(){};return{s:a,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(document.getElementsByClassName("categoryPage"));try{for(t.s();!(e=t.n()).done;)e.value.classList.toggle("productFilterHidden",!$)}catch(e){t.e(e)}finally{t.f()}}),[$]);var Q=R.length>1,W=M.length>1;return o.createElement("div",{className:i({visible:$})},o.createElement("span",{className:"title"},"Filters"),Q&&o.createElement(c,{className:"category",title:"Category",expandable:!0},o.createElement(u,{htmlIdPrefixForItems:"category",items:R,onChange:a})),W&&o.createElement(c,{className:"brand",title:"Manufacturer",expandable:!0},o.createElement(u,{htmlIdPrefixForItems:"manufacturer",items:M,onChange:b})),o.createElement("div",null,o.createElement(c,{className:"availability",title:"Availability",expandable:!0},o.createElement("ul",null,o.createElement("li",null,o.createElement("span",{className:"checkboxWithText"},o.createElement("input",{type:"checkbox",id:"filterInStock",checked:L,onChange:function(e){return g(e.target.checked)}}),o.createElement("label",{htmlFor:"filterInStock"},o.createElement("span",null,"In stock ",o.createElement("i",null,"(",F,")"))))),o.createElement("li",null,o.createElement("span",{className:"checkboxWithText"},o.createElement("input",{type:"checkbox",id:"filterFreeDelivery",name:"freeDelivery",checked:j,onChange:function(e){return m(e.target.checked)}}),o.createElement("label",{htmlFor:"filterFreeDelivery"},o.createElement("span",null,o.createElement("span",{className:"tag free"},"Free")," delivery ",o.createElement("i",null,"(",I,")"))))))),o.createElement(c,{className:"price",title:"Price",expandable:!0,collapsed:!0},o.createElement("span",{className:"min"},o.createElement("span",{className:"title"},"Min"),o.createElement(s,{onChange:C,placeholder:"min",price:V})),o.createElement("span",{className:"max"},o.createElement("span",{className:"title"},"Max"),o.createElement(s,{onChange:w,placeholder:"max",price:H}))),o.createElement(c,{className:"newHotSale",title:"New, Hot and Sale",expandable:!0,collapsed:!0},o.createElement("ul",null,o.createElement("li",null,o.createElement("span",{className:"checkboxWithText"},o.createElement("input",{type:"checkbox",id:"filterNew",checked:z,onChange:function(e){return S(e.target.checked)}}),o.createElement("label",{htmlFor:"filterNew"},o.createElement("span",{className:"tag new"},"New ",o.createElement("i",null,"(",K,")"))))),o.createElement("li",null,o.createElement("span",{className:"checkboxWithText"},o.createElement("input",{type:"checkbox",id:"filterHot",checked:q,onChange:function(e){return y(e.target.checked)}}),o.createElement("label",{htmlFor:"filterHot"},o.createElement("span",{className:"tag hot"},"Hot ",o.createElement("i",null,"(",D,")"))))),o.createElement("li",null,o.createElement("span",{className:"checkboxWithText"},o.createElement("input",{type:"checkbox",id:"filterClearance",checked:A,onChange:function(e){return l(e.target.checked)}}),o.createElement("label",{htmlFor:"filterClearance"},o.createElement("span",{className:"tag sale"},"Sale ",o.createElement("i",null,"(",P,")"))))))),o.createElement(c,{className:"scanRating",title:"Scan Rating",expandable:!0,collapsed:!0},o.createElement("ul",null,o.createElement("li",null,o.createElement("span",{className:"checkboxWithText"},o.createElement("input",{type:"checkbox",id:"filterHighEnd",checked:_,onChange:function(e){return h(e.target.checked)}}),o.createElement("label",{htmlFor:"filterHighEnd"},o.createElement("span",null,"High End ",o.createElement("i",null,"(",N,")"))))),o.createElement("li",null,o.createElement("span",{className:"checkboxWithText"},o.createElement("input",{type:"checkbox",id:"filterMidRange",checked:U,onChange:function(e){return E(e.target.checked)}}),o.createElement("label",{htmlFor:"filterMidRange"},o.createElement("span",null,"Mid Range ",o.createElement("i",null,"(",G,")"))))),o.createElement("li",null,o.createElement("span",{className:"checkboxWithText"},o.createElement("input",{type:"checkbox",id:"filterEntryLevel",checked:T,onChange:function(e){return p(e.target.checked)}}),o.createElement("label",{htmlFor:"filterEntryLevel"},o.createElement("span",null,"Entry Level ",o.createElement("i",null,"(",x,")"))))),o.createElement("li",null,o.createElement("span",{className:"checkboxWithText"},o.createElement("input",{type:"checkbox",id:"filterApprovedBy3xs",checked:k,onChange:function(e){return n(e.target.checked)}}),o.createElement("label",{htmlFor:"filterApprovedBy3xs"},o.createElement("span",null,"3XS Approved ",o.createElement("i",null,"(",O,")"))))))),o.createElement("div",{className:"keywords"},o.createElement("span",null,o.createElement(f,{onChange:v,placeholder:"Keyword(s)",type:"text",value:B})))))};p.propTypes={filter:l.filter.isRequired,onApprovedBy3xsChange:a.func.isRequired,onCategoryChange:a.func.isRequired,onClearanceChange:a.func.isRequired,onEntryLevelChange:a.func.isRequired,onFreeDeliveryChange:a.func.isRequired,onHighEndChange:a.func.isRequired,onHotChange:a.func.isRequired,onInStockChange:a.func.isRequired,onKeywordsChange:a.func.isRequired,onManufacturerChange:a.func.isRequired,onMaxValueChange:a.func.isRequired,onMidRangeChange:a.func.isRequired,onMinValueChange:a.func.isRequired,onNewArrivalsChange:a.func.isRequired,onR48Change:a.func.isRequired,onScanProtectChange:a.func.isRequired},e.exports=p},72641:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(51512).connect,i=n(17444),u=i.approvedBy3xsChanged,c=i.categoryChanged,l=i.manufacturerChanged,s=i.minValueChanged,f=i.maxValueChanged,d=i.hotChanged,p=i.newArrivalsChanged,m=i.clearanceChanged,h=i.inStockChanged,y=i.freeDeliveryChanged,g=i.highEndChanged,v=i.midRangeChanged,b=i.entryLevelChanged,w=i.keywordsChanged,E=i.resetFilter,C=i.toggleFilter,S=n(53745).selectState,k=n(8567),O=n(79487),R=function(e){var t=e.filter,n=e.onApprovedBy3xsChange,o=e.onCategoryChange,a=e.onClearanceChange,i=e.onEntryLevelChange,u=e.onFreeDeliveryChange,c=e.onHighEndChange,l=e.onHotChange,s=e.onInStockChange,f=e.onKeywordsChange,d=e.onManufacturerChange,p=e.onMaxValueChange,m=e.onMidRangeChange,h=e.onMinValueChange,y=e.onNewArrivalsChange,g=e.onResetFilter,v=e.onToggleFilter,b=A(t);return r.createElement(O,{isFilterInUse:b,onApprovedBy3xsChange:n,onCategoryChange:o,onClearanceChange:a,onEntryLevelChange:i,onFreeDeliveryChange:u,onHighEndChange:c,onHotChange:l,onInStockChange:s,onKeywordsChange:f,onManufacturerChange:d,onMaxValueChange:p,onMidRangeChange:m,onMinValueChange:h,onNewArrivalsChange:y,onResetFilter:g,onToggleFilter:v,filter:t})};R.propTypes={filter:k.filter.isRequired,onApprovedBy3xsChange:o.func.isRequired,onCategoryChange:o.func.isRequired,onClearanceChange:o.func.isRequired,onEntryLevelChange:o.func.isRequired,onFreeDeliveryChange:o.func.isRequired,onHighEndChange:o.func.isRequired,onHotChange:o.func.isRequired,onInStockChange:o.func.isRequired,onKeywordsChange:o.func.isRequired,onManufacturerChange:o.func.isRequired,onMaxValueChange:o.func.isRequired,onMidRangeChange:o.func.isRequired,onMinValueChange:o.func.isRequired,onNewArrivalsChange:o.func.isRequired,onResetFilter:o.func.isRequired,onToggleFilter:o.func.isRequired};var A=function(e){return Boolean(e.categories.some((function(e){return e.checked}))||e.manufacturers.some((function(e){return e.checked}))||e.minValue||e.maxValue||e.clearance||e.hot||e.newArrivals||e.inStock||e.freeDelivery||e.approvedBy3xs||e.entryLevel||e.midRange||e.highEnd||e.r48||e.keywords.length>0)};e.exports=a((function(e){return S(e)}),(function(e){return{onApprovedBy3xsChange:function(t){return e(u(t))},onCategoryChange:function(t,n){return e(c(t,n))},onClearanceChange:function(t){return e(m(t))},onEntryLevelChange:function(t){return e(b(t))},onFreeDeliveryChange:function(t){return e(y(t))},onHighEndChange:function(t){return e(g(t))},onHotChange:function(t){return e(d(t))},onInStockChange:function(t){return e(h(t))},onKeywordsChange:function(t){return e(w(t))},onManufacturerChange:function(t,n){return e(l(t,n))},onMaxValueChange:function(t){return e(f(t))},onMidRangeChange:function(t){return e(v(t))},onMinValueChange:function(t){return e(s(t))},onNewArrivalsChange:function(t){return e(p(t))},onResetFilter:function(){return e(E())},onToggleFilter:function(){return e(C())}}}))(R)},38940:(e,t,n)=>{var r=n(67294),o=r.useEffect,a=n(51512).connect,i=n(53745).selectState,u=n(17444),c=u.approvedBy3xsChanged,l=u.categoryChanged,s=u.manufacturerChanged,f=u.minValueChanged,d=u.maxValueChanged,p=u.hotChanged,m=u.newArrivalsChanged,h=u.clearanceChanged,y=u.inStockChanged,g=u.freeDeliveryChanged,v=u.highEndChanged,b=u.midRangeChanged,w=u.entryLevelChanged,E=u.keywordsChanged,C=u.r48Changed,S=u.scanProtectChanged,k=u.setDefaultVisibility,O=n(45697),R=n(61213),A=function(e){var t=e.onSetDefaultVisibilty,n=e.visible;return o((function(){t(n)}),[n]),r.createElement(R,e)};A.propTypes={onSetDefaultVisibilty:O.func.isRequired,visible:O.bool.isRequired},e.exports=a((function(e){return i(e)}),(function(e){return{onApprovedBy3xsChange:function(t){return e(c(t))},onCategoryChange:function(t,n){return e(l(t,n))},onClearanceChange:function(t){return e(h(t))},onEntryLevelChange:function(t){return e(w(t))},onFreeDeliveryChange:function(t){return e(g(t))},onHighEndChange:function(t){return e(v(t))},onHotChange:function(t){return e(p(t))},onInStockChange:function(t){return e(y(t))},onKeywordsChange:function(t){return e(E(t))},onManufacturerChange:function(t,n){return e(s(t,n))},onMaxValueChange:function(t){return e(d(t))},onMidRangeChange:function(t){return e(b(t))},onMinValueChange:function(t){return e(f(t))},onNewArrivalsChange:function(t){return e(m(t))},onR48Change:function(t){return e(C(t))},onScanProtectChange:function(t){return e(S(t))},onSetDefaultVisibilty:function(t){return e(k(t))}}}))(A)},50316:(e,t,n)=>{"use strict";function r(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var o=n(85690),a=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.element=t,this.categoryId=this.constructor.getCategoryId(t),this.categoryTitle=this.constructor.getCategoryTitle(t),this.productList=this.constructor.loadCategoryProductList(t),this.featuredProductList=this.constructor.loadFeaturedProductList(t),this.relatedProductList=this.constructor.loadRelatedProductList(t)}var t,n,a;return t=e,a=[{key:"getCategoryId",value:function(e){return e.getAttribute("data-cid")||null}},{key:"getCategoryTitle",value:function(e){var t=e.querySelector("h2");return t?t.innerText:""}},{key:"loadCategoryProductList",value:function(e){return new o(e.querySelector(".productList"))}},{key:"loadFeaturedProductList",value:function(e){return new o(e.querySelector(".featured"))}},{key:"loadRelatedProductList",value:function(e){return new o(e.querySelector(".relatedProducts"))}}],(n=[{key:"hasProducts",value:function(){return null!==this.productList&&this.productList.products.length>0}},{key:"hideElement",value:function(){this.element.classList.add("hide")}},{key:"showElement",value:function(){this.element.classList.remove("hide")}}])&&r(t.prototype,n),a&&r(t,a),e}();e.exports=a},93064:(e,t,n)=>{"use strict";function r(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var o=n(28944),a=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e);var n=t.getAttribute("data-productflags"),r=new o(n),a=t.getAttribute("data-description").toLowerCase(),i=t.getAttribute("data-manufacturer"),u=t.getAttribute("data-price"),c=t.getAttribute("data-pop"),l=t.getAttribute("data-featured");this.element=t,this.description=a,this.manufacturer=i,this.price=parseFloat(u),this.isHot=r.isHot,this.isNew=r.isNew,this.isClearance=r.isClearance,this.isInStock=r.isInStock,this.freeDelivery=r.freeDelivery,this.isApprovedBy3xs=r.isApprovedBy3xs,this.scanRating=r.scanRating,this.popularityIndex=parseInt(c,10),this.isFeatured="1"===l,this.r48=r.r48,this.scanProtect=r.scanProtect}var t,n;return t=e,(n=[{key:"hideElement",value:function(){this.element.classList.add("hide")}},{key:"showElement",value:function(){this.element.classList.remove("hide")}}])&&r(t.prototype,n),e}();e.exports=a},19638:e=>{"use strict";function t(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return n(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?n(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var o=0,a=function(){};return{s:a,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==r.return||r.return()}finally{if(c)throw i}}}}function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function r(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var o=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.categoryIds=e.getSelectedCategoryIdsFromFilter(t),this.keywords=e.getKeywordsFromFilter(t),this.manufacturerNames=e.getSelectedManufacturerNamesFromFilter(t),this.filter=t}var n,o,a;return n=e,a=[{key:"getKeywordsFromFilter",value:function(e){var n,r=[],o=t(e.keywords.split(" "));try{for(o.s();!(n=o.n()).done;){var a=n.value.trim();a.length>0&&r.push(a.toLowerCase())}}catch(e){o.e(e)}finally{o.f()}return r}},{key:"getSelectedCategoryIdsFromFilter",value:function(e){var n,r=[],o=t(e.categories);try{for(o.s();!(n=o.n()).done;){var a=n.value;a.checked&&r.push(a.id)}}catch(e){o.e(e)}finally{o.f()}return r}},{key:"getSelectedManufacturerNamesFromFilter",value:function(e){var n,r=[],o=t(e.manufacturers);try{for(o.s();!(n=o.n()).done;){var a=n.value;a.checked&&r.push(a.name)}}catch(e){o.e(e)}finally{o.f()}return r}}],(o=[{key:"shouldShowProduct",value:function(e){return this.shouldShowProductBasedOnManufacturer(e)&&this.shouldShowProductBasedOnMinPrice(e)&&this.shouldShowProductBasedOnMaxPrice(e)&&this.shouldShowProductBasedOnFlags(e)&&this.shouldShowProductBasedOnKeywords(e)}},{key:"isFilterInUse",value:function(){return this.categoryIds.length>0||this.manufacturerNames.length>0||""!==this.filter.minValue||""!==this.filter.maxValue||this.filter.clearance||this.filter.hot||this.filter.newArrivals||this.filter.inStock||this.filter.freeDelivery||this.filter.approvedBy3xs||this.filter.entryLevel||this.filter.midRange||this.filter.highEnd||this.filter.r48||this.keywords.length>0}},{key:"shouldShowCategoryBasedOnSelectedCategories",value:function(e){return 0===this.categoryIds.length||this.categoryIds.includes(e.categoryId)}},{key:"shouldShowProductBasedOnManufacturer",value:function(e){if(0===this.manufacturerNames.length)return!0;var n,r=t(this.manufacturerNames);try{for(r.s();!(n=r.n()).done;){var o=n.value;if(e.manufacturer===o)return!0}}catch(e){r.e(e)}finally{r.f()}return!1}},{key:"shouldShowProductBasedOnMinPrice",value:function(e){var t=parseFloat(this.filter.minValue,2);return isNaN(t)||t<=parseFloat(e.price,2)}},{key:"shouldShowProductBasedOnMaxPrice",value:function(e){var t=parseFloat(this.filter.maxValue,2);return isNaN(t)||t>=parseFloat(e.price,2)}},{key:"shouldShowProductBasedOnFlags",value:function(e){return!((this.filter.hot||this.filter.newArrivals||this.filter.clearance||this.filter.r48)&&!(this.filter.hot&&e.isHot||this.filter.newArrivals&&e.isNew||this.filter.clearance&&e.isClearance||this.filter.r48&&e.r48))&&!(this.filter.inStock&&!e.isInStock)&&!(this.filter.freeDelivery&&!e.freeDelivery)&&!(this.filter.approvedBy3xs&&!e.isApprovedBy3xs)&&(!(this.filter.entryLevel||this.filter.midRange||this.filter.highEnd)||this.filter.entryLevel&&"1"===e.scanRating||this.filter.midRange&&"2"===e.scanRating||this.filter.highEnd&&"3"===e.scanRating)}},{key:"shouldShowProductBasedOnKeywords",value:function(e){var n,r=t(this.keywords);try{for(r.s();!(n=r.n()).done;){var o=n.value;if(-1===e.description.indexOf(o))return!1}}catch(e){r.e(e)}finally{r.f()}return!0}}])&&r(n.prototype,o),a&&r(n,a),e}();e.exports=o},28944:e=>{"use strict";e.exports=function e(t){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),9!==t.length)throw new Error("Invalid data-product");var n=t.split("");this.isHot="1"===n[0],this.isNew="1"===n[1],this.isClearance="1"===n[2],this.isInStock="1"===n[3],this.freeDelivery="1"===n[4],this.isApprovedBy3xs="1"===n[5],this.scanRating=n[6],this.r48="1"===n[7],this.scanProtect="1"===n[8]}},85690:(e,t,n)=>{"use strict";function r(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function a(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var i=n(93064),u=n(29476),c=n(38686),l=function(){function e(t){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.element=t,this.canChangeView=!1,this.products=[],null!==t){var n=t.querySelectorAll(".product");this.canChangeView=t.classList.contains("productList");var o,a=r(n);try{for(a.s();!(o=a.n()).done;){var u=o.value;this.products.push(new i(u))}}catch(e){a.e(e)}finally{a.f()}}}var t,n,o;return t=e,o=[{key:"getSortValue",value:function(e,t){return e<t?-1:e>t?1:0}}],(n=[{key:"changeView",value:function(e){if(this.canChangeView){if(e<0||e>c.length-1)throw new Error("Invalid viewIndex - "+e);var t,n=c[e],o=r(c);try{for(o.s();!(t=o.n()).done;){var a=t.value;this.element.classList.remove(a)}}catch(e){o.e(e)}finally{o.f()}this.element.classList.add(n)}}},{key:"hideElement",value:function(){null!==this.element&&this.element.classList.add("hide")}},{key:"showElement",value:function(){null!==this.element&&this.element.classList.remove("hide")}},{key:"sort",value:function(e){switch(parseInt(e,10)){case 0:this.sortByFeatured();break;case 1:this.sortByPriceAscending();break;case 2:this.sortByPriceDescending();break;case 3:this.sortByDescriptionAscending();break;case 4:this.sortByDescriptionDescending();break;case 5:this.sortByPopularityDescending();break;case 6:this.sortByStockDescending();break;case 7:this.sortByManufacturerAscending()}}},{key:"sortByFeatured",value:function(){this.products.sort((function(t,n){return t.isFeatured===n.isFeatured?e.getSortValue(t.price,n.price):t.isFeatured?-1:1})),this.reapplyDomElementsAfterSort()}},{key:"sortByPriceAscending",value:function(){this.products.sort((function(t,n){return e.getSortValue(t.price,n.price)})),this.reapplyDomElementsAfterSort()}},{key:"sortByPriceDescending",value:function(){this.products.sort((function(t,n){return e.getSortValue(n.price,t.price)})),this.reapplyDomElementsAfterSort()}},{key:"sortByDescriptionAscending",value:function(){this.products.sort((function(t,n){return e.getSortValue(t.description,n.description)})),this.reapplyDomElementsAfterSort()}},{key:"sortByDescriptionDescending",value:function(){this.products.sort((function(t,n){return e.getSortValue(n.description,t.description)})),this.reapplyDomElementsAfterSort()}},{key:"sortByPopularityDescending",value:function(){this.products.sort((function(t,n){return e.getSortValue(n.popularityIndex,t.popularityIndex)})),this.reapplyDomElementsAfterSort()}},{key:"sortByStockDescending",value:function(){this.products.sort((function(t,n){return e.getSortValue(n.isInStock,t.isInStock)})),this.reapplyDomElementsAfterSort()}},{key:"sortByManufacturerAscending",value:function(){this.products.sort((function(t,n){return e.getSortValue(t.manufacturer,n.manufacturer)})),this.reapplyDomElementsAfterSort()}},{key:"reapplyDomElementsAfterSort",value:function(){for(var e=this.element.querySelector(".productColumns");e.hasChildNodes();)e.removeChild(e.lastChild);var t,n=r(this.products);try{for(n.s();!(t=n.n()).done;){var o=t.value;e.appendChild(o.element)}}catch(e){n.e(e)}finally{n.f()}u.updateImages()}}])&&a(t.prototype,n),o&&a(t,o),e}();e.exports=l},92632:(e,t,n)=>{function r(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function a(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var i=n(65906),u=n(41996),c=n(42210),l=n(21267),s=n(50316),f=n(19638),d=n(29476),p=n(38686),m=n(81565),h=new i(250),y=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.numberOfCategoriesHidden=0,this.categories=this.constructor.loadCategoriesFromDocument(t),this.productTotals=this.constructor.getProductTotalsFromCategories(this.categories),this.manufacturers=this.constructor.getManufacturersFromCategories(this.categories),this.categoryPageElement=t.querySelector(".categoryPage"),u.info("instantiating Products")}var t,n,o;return t=e,o=[{key:"loadCategoriesFromDocument",value:function(e){var t,n=[],o=r(e.querySelectorAll(".category"));try{for(o.s();!(t=o.n()).done;){var a=t.value,i=new s(a);i.hasProducts()&&n.push(i)}}catch(e){o.e(e)}finally{o.f()}return n}},{key:"getProductTotalsFromCategories",value:function(e){var t,n={approvedBy3xs:0,clearance:0,entryLevel:0,freeDelivery:0,highEnd:0,hotSellers:0,inStock:0,midRange:0,newArrivals:0,r48:0,scanProtect:0},o=r(e);try{for(o.s();!(t=o.n()).done;){var a,i=r(t.value.productList.products);try{for(i.s();!(a=i.n()).done;){var u=a.value;u.freeDelivery&&n.freeDelivery++,u.isInStock&&n.inStock++,u.isNew&&n.newArrivals++,u.isHot&&n.hotSellers++,u.isClearance&&n.clearance++,"1"===u.scanRating&&n.entryLevel++,"2"===u.scanRating&&n.midRange++,"3"===u.scanRating&&n.highEnd++,u.isApprovedBy3xs&&n.approvedBy3xs++,u.r48&&n.r48++,u.scanProtect&&n.scanProtect++}}catch(e){i.e(e)}finally{i.f()}}}catch(e){o.e(e)}finally{o.f()}return n}},{key:"getManufacturersFromCategories",value:function(e){var t,n=[],o=r(e);try{for(o.s();!(t=o.n()).done;){var a,i=r(t.value.productList.products);try{for(i.s();!(a=i.n()).done;){var u=a.value;if(0!==u.manufacturer.length){var c,l=!1,s=r(n);try{for(s.s();!(c=s.n()).done;){var f=c.value;f.name===u.manufacturer&&(l=!0,f.productCount++)}}catch(e){s.e(e)}finally{s.f()}if(!l){var d=u.manufacturer.replace(/[\W_]+/g,"_");n.push({id:d,name:u.manufacturer,productCount:1})}}}}catch(e){i.e(e)}finally{i.f()}}}catch(e){o.e(e)}finally{o.f()}return n}}],(n=[{key:"updateFilterResults",value:function(e){var t=this,n="loading",o=this.categoryPageElement;o&&o.classList.add(n);var a=this.categories;h.invoke((function(){var i,u=new f(e),l=0,s=u.isFilterInUse(),p=r(a);try{for(p.s();!(i=p.n()).done;){var m=i.value;if(s){if(!u.shouldShowCategoryBasedOnSelectedCategories(m)){m.hideElement();continue}m.showElement(),m.featuredProductList.hideElement(),m.relatedProductList.hideElement();var h,y=!1,g=r(m.productList.products);try{for(g.s();!(h=g.n()).done;){var v=h.value;u.isFilterInUse()?u.shouldShowProduct(v)?(v.showElement(),y=!0):v.hideElement():(v.showElement(),y=!0)}}catch(e){g.e(e)}finally{g.f()}y?m.showElement():(m.hideElement(),l+=1)}if(!s){m.featuredProductList.showElement(),m.relatedProductList.showElement();var b,w=r(m.productList.products);try{for(w.s();!(b=w.n()).done;)b.value.showElement()}catch(e){w.e(e)}finally{w.f()}m.showElement()}}}catch(e){p.e(e)}finally{p.f()}o&&o.classList.remove(n);var E=l!==t.numberOfCategoriesHidden;if(t.numberOfCategoriesHidden=l,E&&l>0){var C="".concat(l,l>1?" categories are hidden due to the values in your filter":" category has been hidden due to the values in your filter");c.Info(C,{actionType:c.actionTypes.REPLACE_EXISTING,messageKey:"productFilter"})}d.updateImages()}))}},{key:"changeView",value:function(e){if(e<0||e>p.length-1)throw new Error("Invalid viewIndex - "+e);var t=p[e];l.setProductListingView(e),u.info("Changing view to viewIndex "+e+", "+t),m.trackProductViewChange(t);var n,o=r(this.categories);try{for(o.s();!(n=o.n()).done;)n.value.productList.changeView(e)}catch(e){o.e(e)}finally{o.f()}}},{key:"sortProducts",value:function(e){u.info("Sorting by sortIndex "+e);var t,n=r(this.categories);try{for(n.s();!(t=n.n()).done;)t.value.productList.sort(e)}catch(e){n.e(e)}finally{n.f()}}}])&&a(t.prototype,n),o&&a(t,o),e}();e.exports=new y(document)},38686:e=>{"use strict";e.exports=["list","gallery","largeGallery","superList"]},12284:(e,t,n)=>{var r=n(19755),o=n(67294),a=n(73935).render,i=n(51512).Provider,u=n(89166),c=n(17444),l=c.loadProductsFromPage,s=c.updateFilterFromUrlFragments,f=n(38940),d=n(72641),p=n(92632),m=n(60080),h=n(30806),y=n(70363),g=n(69733).setupInfoPageImages;y(),h.onPageLoad((function(){var e;!function(){var e=document.getElementById("productFilter");if(e){var t=null===e.getAttribute("data-visible")||"true"===e.getAttribute("data-visible");a(o.createElement(i,{store:u},o.createElement(f,{visible:t})),e)}}(),(e=document.getElementById("productFilterHeader"))&&a(o.createElement(i,{store:u},o.createElement(d,null)),e),function(){r(".productsCont .view button").on("click",(function(e){var t=parseInt(r(e.currentTarget).attr("data-view"),10);p.changeView(t)}));var e=r(".productsCont .sort select");function t(){var t=parseInt(e.val(),10);isNaN(t)||p.sortProducts(t)}e.on("change",(function(n){var o=parseInt(r(n.currentTarget).val(),10);e.val(o),t()})),t()}(),window.quickView=function(e){var t=function(){null!==v&&(v.remove(),v=null)};null===v&&(v=r('<div id="popup">    <div id="popup-container" class="infoPageQuick">       <div>           <a class="close">               <span>Close</span>           </a>       </div>        <div class="content"></div>     </div></div><div id="popup-background"></div>'),r(".close",v).on("click",t),r(".popup-background",v).on("click",t),r("body").append(v)),r.post({url:e,success:function(e){r(".content",v).html(e),h.domNodeAdded(v[0]),g()}})},u.dispatch(l()),u.dispatch(s())})),m.onHashChange((function(){u.dispatch(s())}));var v=null},60080:(e,t,n)=>{function r(e){return function(e){if(Array.isArray(e))return l(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||c(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?o(Object(n),!0).forEach((function(t){i(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):o(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function u(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=c(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function c(e,t){if(e){if("string"==typeof e)return l(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?l(e,t):void 0}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var s=n(90327);e.exports=new function(){var e=this,t=["minValue","maxValue"],n=["keywords"],o=["hot","newArrivals","clearance","inStock","freeDelivery","highEnd","midRange","entryLevel","approvedBy3xs","r48","scanProtect"];function i(e){var t=Number(e);return null===e||isNaN(t)?null:t}function c(e){return!0===e?"1":null}function l(e){return null===e?"":e}function f(e){return null!==e}e.setFragmentsFromFilter=function(e){s.setValue("filter",c(e.filterVisible));var r,a=[],l=u(e.categories);try{for(l.s();!(r=l.n()).done;){var f=r.value;!0===f.checked&&a.push(f.id)}}catch(e){l.e(e)}finally{l.f()}s.setValue("categories",a.length>0?a.join("|"):null);var d,p=[],m=u(e.manufacturers);try{for(m.s();!(d=m.n()).done;){var h=d.value;!0===h.checked&&p.push(h.id)}}catch(e){m.e(e)}finally{m.f()}s.setValue("manufacturers",p.length>0?p.join("|"):null);var y,g=u(t);try{for(g.s();!(y=g.n()).done;){var v=y.value;s.setValue(v,i(e[v]))}}catch(e){g.e(e)}finally{g.f()}var b,w,E=u(n);try{for(E.s();!(b=E.n()).done;){var C=b.value;s.setValue(C,null!=(w=e[C])&&w.length>0?w:null)}}catch(e){E.e(e)}finally{E.f()}var S,k=u(o);try{for(k.s();!(S=k.n()).done;){var O=S.value;s.setValue(O,c(e[O]))}}catch(e){k.e(e)}finally{k.f()}},e.getModifiedFilter=function(e){var c=a(a({},e),{},{categories:r(e.categories),manufacturers:r(e.manufacturers)}),d=s.getValue("filter");"1"===d?c.filterVisible=!0:"0"===d&&(c.filterVisible=!1);var p,m=s.getValue("categories"),h=null!=m?m.split("|"):[],y=u(c.categories);try{for(y.s();!(p=y.n()).done;){var g=p.value,v=-1!==h.indexOf(g.id);g.checked=v}}catch(e){y.e(e)}finally{y.f()}var b,w=s.getValue("manufacturers"),E=null!=w?w.split("|"):[],C=u(c.manufacturers);try{for(C.s();!(b=C.n()).done;){var S=b.value,k=-1!==E.indexOf(S.id);S.checked=k}}catch(e){C.e(e)}finally{C.f()}var O,R=u(t);try{for(R.s();!(O=R.n()).done;){var A=O.value,P=s.getValue(A);c[A]=i(P)}}catch(e){R.e(e)}finally{R.f()}var T,x=u(n);try{for(x.s();!(T=x.n()).done;){var j=T.value,I=s.getValue(j);c[j]=l(I)}}catch(e){x.e(e)}finally{x.f()}var _,N=u(o);try{for(N.s();!(_=N.n()).done;){var q=_.value,D=s.getValue(q);c[q]=f(D)}}catch(e){N.e(e)}finally{N.f()}return c},e.onHashChange=function(e){s.onHashChange(e)}}},17444:(e,t,n)=>{function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach((function(t){a(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var i=n(92632),u=n(60080),c=n(21267),l=n(53745),s=l.LOAD_PRODUCTS,f=l.TOGGLE_FILTER,d=l.CATEGORY_CHANGED,p=l.MANUFACTURER_CHANGED,m=l.MIN_VALUE_CHANGED,h=l.MAX_VALUE_CHANGED,y=l.HOT_CHANGED,g=l.NEW_ARRIVALS_CHANGED,v=l.CLEARANCE_CHANGED,b=l.IN_STOCK_CHANGED,w=l.FREE_DELIVERY_CHANGED,E=l.HIGH_END_CHANGED,C=l.MID_RANGE_CHANGED,S=l.ENTRY_LEVEL_CHANGED,k=l.APPROVED_BY_3XS_CHANGED,O=l.KEYWORDS_CHANGED,R=l.R48_CHANGED,A=l.SCAN_PROTECT_CHANGED,P=l.RESET_FILTER,T=l.URI_FRAGMENT_UPDATED,x=l.SET_DEFAULT_VISIBILITY,j=l.selectState;function I(){var e=i.categories.map((function(e){return{id:e.categoryId,name:e.categoryTitle,productCount:e.productList.products.length,checked:!1}})).sort((function(e,t){return N(e.name.toLowerCase(),t.name.toLowerCase())})),t=i.manufacturers.map((function(e){return{id:e.id,name:e.name,productCount:e.productCount,checked:!1}})).sort((function(e,t){return N(e.name.toLowerCase(),t.name.toLowerCase())})),n={approvedBy3xsCount:i.productTotals.approvedBy3xs,clearanceCount:i.productTotals.clearance,entryLevelCount:i.productTotals.entryLevel,freeDeliveryCount:i.productTotals.freeDelivery,highEndCount:i.productTotals.highEnd,hotCount:i.productTotals.hotSellers,inStockCount:i.productTotals.inStock,midRangeCount:i.productTotals.midRange,newArrivalsCount:i.productTotals.newArrivals,r48Count:i.productTotals.r48,scanProtectCount:i.productTotals.scanProtect};return{type:s,filterUpdates:o({categories:e,manufacturers:t},n)}}function _(){return function(e,t){var n=j(t()).filter;u.setFragmentsFromFilter(n),i.updateFilterResults(n)}}var N=function(e,t){return e>t?1:e<t?-1:0};e.exports={loadProductsFromPage:I,toggleFilter:function(){return function(e,t){var n=!j(t()).filter.filterVisible;c.setShowProductFilter(n),e({type:f,filterVisible:n}),e(_())}},categoryChanged:function(e,t){return function(n){n({type:d,categoryId:e,checked:t}),n(_())}},manufacturerChanged:function(e,t){return function(n){n({type:p,manufacturerId:e,checked:t}),n(_())}},minValueChanged:function(e){return function(t){t({type:m,minValue:e}),t(_())}},maxValueChanged:function(e){return function(t){t({type:h,maxValue:e}),t(_())}},hotChanged:function(e){return function(t){t({type:y,checked:e}),t(_())}},newArrivalsChanged:function(e){return function(t){t({type:g,checked:e}),t(_())}},clearanceChanged:function(e){return function(t){t({type:v,checked:e}),t(_())}},inStockChanged:function(e){return function(t){t({type:b,checked:e}),t(_())}},freeDeliveryChanged:function(e){return function(t){t({type:w,checked:e}),t(_())}},highEndChanged:function(e){return function(t){t({type:E,checked:e}),t(_())}},midRangeChanged:function(e){return function(t){t({type:C,checked:e}),t(_())}},entryLevelChanged:function(e){return function(t){t({type:S,checked:e}),t(_())}},approvedBy3xsChanged:function(e){return function(t){t({type:k,checked:e}),t(_())}},keywordsChanged:function(e){return function(t){t({type:O,keywords:e}),t(_())}},r48Changed:function(e){return function(t){t({type:R,checked:e}),t(_())}},scanProtectChanged:function(e){return function(t){t({type:A,checked:e}),t(_())}},resetFilter:function(){return function(e){e({type:P}),e(I()),e(_())}},updateFilterFromUrlFragments:function(){return function(e,t){var n=j(t()).filter,r=u.getModifiedFilter(n);e({type:T,filter:r}),i.updateFilterResults(r)}},setDefaultVisibility:function(e){return{type:x,visible:e}}}},93890:e=>{e.exports=function(){return{filter:{approvedBy3xs:!1,approvedBy3xsCount:0,categories:[],clearance:!1,clearanceCount:0,defaultFilterVisible:!1,entryLevel:!1,entryLevelCount:0,filterVisible:!1,freeDelivery:!1,freeDeliveryCount:0,highEnd:!1,highEndCount:0,hot:!1,hotCount:0,inStock:!1,inStockCount:0,keywords:"",manufacturers:[],maxValue:null,midRange:!1,midRangeCount:0,minValue:null,newArrivals:!1,newArrivalsCount:0,r48:!1,r48Count:0,scanProtect:!1,scanProtectCount:0}}}},53745:(e,t,n)=>{function r(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?a(Object(n),!0).forEach((function(t){u(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):a(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function u(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var c=n(93890),l=n(28227),s="productFilter",f=function(e){return"scan/".concat(s,"/").concat(e)},d={LOAD_PRODUCTS:f("LOAD_PRODUCTS"),TOGGLE_FILTER:f("TOGGLE_FILTER"),CATEGORY_CHANGED:f("CATEGORY_CHANGED"),MANUFACTURER_CHANGED:f("MANUFACTURER_CHANGED"),MIN_VALUE_CHANGED:f("MIN_VALUE_CHANGED"),MAX_VALUE_CHANGED:f("MAX_VALUE_CHANGED"),HOT_CHANGED:f("HOT_CHANGED"),NEW_ARRIVALS_CHANGED:f("NEW_ARRIVALS_CHANGED"),CLEARANCE_CHANGED:f("CLEARANCE_CHANGED"),IN_STOCK_CHANGED:f("IN_STOCK_CHANGED"),FREE_DELIVERY_CHANGED:f("FREE_DELIVERY_CHANGED"),HIGH_END_CHANGED:f("HIGH_END_CHANGED"),MID_RANGE_CHANGED:f("MID_RANGE_CHANGED"),ENTRY_LEVEL_CHANGED:f("ENTRY_LEVEL_CHANGED"),APPROVED_BY_3XS_CHANGED:f("APPROVED_BY_3XS_CHANGED"),KEYWORDS_CHANGED:f("KEYWORDS_CHANGED"),R48_CHANGED:f("R48_CHANGED"),SCAN_PROTECT_CHANGED:f("SCAN_PROTECT_CHANGED"),RESET_FILTER:f("RESET_FILTER"),URI_FRAGMENT_UPDATED:f("URI_FRAGMENT_UPDATED"),SET_DEFAULT_VISIBILITY:f("SET_DEFAULT_VISIBILITY")},p=c();function m(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:p,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case d.LOAD_PRODUCTS:return i(i({},e),{},{filter:i(i({},e.filter),t.filterUpdates)});case d.TOGGLE_FILTER:var n=t.filterVisible;return i(i({},e),{},{filter:i(i({},e.filter),{},{filterVisible:n})});case d.CATEGORY_CHANGED:var o,a=t.categoryId,u=t.checked,c=e.filter.categories.concat(),l=r(c);try{for(l.s();!(o=l.n()).done;){var s=o.value;s.id===a&&(s.checked=u)}}catch(e){l.e(e)}finally{l.f()}return i(i({},e),{},{filter:i(i({},e.filter),{},{categories:c})});case d.MANUFACTURER_CHANGED:var f,m=t.checked,h=t.manufacturerId,y=e.filter.manufacturers.concat(),g=r(y);try{for(g.s();!(f=g.n()).done;){var v=f.value;v.id===h&&(v.checked=m)}}catch(e){g.e(e)}finally{g.f()}return i(i({},e),{},{filter:i(i({},e.filter),{},{manufacturers:y})});case d.MIN_VALUE_CHANGED:var b=t.minValue;return i(i({},e),{},{filter:i(i({},e.filter),{},{minValue:b})});case d.MAX_VALUE_CHANGED:var w=t.maxValue;return i(i({},e),{},{filter:i(i({},e.filter),{},{maxValue:w})});case d.HOT_CHANGED:var E=t.checked;return i(i({},e),{},{filter:i(i({},e.filter),{},{hot:E})});case d.NEW_ARRIVALS_CHANGED:var C=t.checked;return i(i({},e),{},{filter:i(i({},e.filter),{},{newArrivals:C})});case d.CLEARANCE_CHANGED:var S=t.checked;return i(i({},e),{},{filter:i(i({},e.filter),{},{clearance:S})});case d.IN_STOCK_CHANGED:var k=t.checked;return i(i({},e),{},{filter:i(i({},e.filter),{},{inStock:k})});case d.FREE_DELIVERY_CHANGED:var O=t.checked;return i(i({},e),{},{filter:i(i({},e.filter),{},{freeDelivery:O})});case d.HIGH_END_CHANGED:var R=t.checked;return i(i({},e),{},{filter:i(i({},e.filter),{},{highEnd:R})});case d.MID_RANGE_CHANGED:var A=t.checked;return i(i({},e),{},{filter:i(i({},e.filter),{},{midRange:A})});case d.ENTRY_LEVEL_CHANGED:var P=t.checked;return i(i({},e),{},{filter:i(i({},e.filter),{},{entryLevel:P})});case d.APPROVED_BY_3XS_CHANGED:var T=t.checked;return i(i({},e),{},{filter:i(i({},e.filter),{},{approvedBy3xs:T})});case d.KEYWORDS_CHANGED:var x=t.keywords;return i(i({},e),{},{filter:i(i({},e.filter),{},{keywords:x})});case d.R48_CHANGED:var j=t.checked;return i(i({},e),{},{filter:i(i({},e.filter),{},{r48:j})});case d.SCAN_PROTECT_CHANGED:var I=t.checked;return i(i({},e),{},{filter:i(i({},e.filter),{},{scanProtect:I})});case d.RESET_FILTER:return p;case d.URI_FRAGMENT_UPDATED:var _=t.filter;return i(i({},e),{},{filter:i(i({},e.filter),_)});case d.SET_DEFAULT_VISIBILITY:var N=t.visible;return i(i({},e),{},{defaultFilterVisible:N,filter:i(i({},e.filter),{},{filterVisible:N})});default:return i({},e)}}e.exports=i(i({},d),{},{reducerName:s,reducer:m,registerReducer:function(){l.register(s,m)},selectState:function(e){return e[s]}})},70363:(e,t,n)=>{var r=n(53745);e.exports=function(){r.registerReducer()}},12249:e=>{e.exports={1:{cssClass:"product",groupTitle:"Products",outputType:"product"},2:{cssClass:"category",groupTitle:"Categories",outputType:"category"},3:{cssClass:"manufacturer",groupTitle:"Brand",outputType:"manufacturer"},4:{cssClass:"techspec",groupTitle:"TekSpek Article",outputType:"normal"},5:{cssClass:"landingpage",groupTitle:"Page",outputType:"normal"},6:{cssClass:"threexs",groupTitle:"3XS System",outputType:"normal"},7:{cssClass:"help",groupTitle:"Help Centre",outputType:"normal"},100:{cssClass:"other",groupTitle:"",outputType:"normal"}}},97382:(e,t,n)=>{var r=n(67294),o=n(45697),a=function(e){var t=e.result,n=t.masterCategoryTitle,o=t.masterCategoryUrl,a=t.title,i=t.url;return r.createElement("li",null,r.createElement("span",{className:"itemCategorys"},n&&""!==n&&r.createElement("a",{href:o},n),r.createElement("a",{href:i},a)))};a.propTypes={result:o.shape({masterCategoryTitle:o.string,masterCategoryUrl:o.string,title:o.string.isRequired,url:o.string.isRequired}).isRequired},e.exports=a},11302:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(97382),i=n(15294),u=n(36297),c=n(98795),l=function(e){var t=e.outputType,n=e.result;return"category"===t?r.createElement(a,{result:n}):"manufacturer"===t?r.createElement(i,{result:n}):"normal"===t?r.createElement(u,{result:n}):"product"===t?r.createElement(c,{result:n}):null};l.propTypes={outputType:o.oneOf(["category","manufacturer","normal","product"]).isRequired,result:o.object.isRequired},e.exports=l},15294:(e,t,n)=>{var r=n(67294),o=n(45697),a=function(e){var t=e.result,n=t.imageUrl,o=t.title,a=t.url;return r.createElement("li",null,r.createElement("span",{className:"itemImage"},r.createElement("img",{src:n})),r.createElement("span",{className:"itemDescription"},r.createElement("a",{href:a},o)))};a.propTypes={result:o.shape({imageUrl:o.string.isRequired,title:o.string.isRequired,url:o.string.isRequired}).isRequired},e.exports=a},36297:(e,t,n)=>{var r=n(67294),o=n(45697),a=function(e){var t=e.result,n=t.title,o=t.url;return r.createElement("li",null,r.createElement("span",{className:"itemCategorys"},r.createElement("a",{href:o},n)))};a.propTypes={result:o.shape({title:o.string.isRequired,url:o.string.isRequired}).isRequired},e.exports=a},98795:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(35725),i=n(2669),u=n(7280),c=n(94184),l=function(e){var t=e.result,n=t.bundleTagText,o=t.buyWebProductId,l=t.canBuyProduct,s=t.imageUrl,f=t.inStock,d=t.isBlackFridayOffer,p=t.isBundle,m=t.isHotSeller,h=t.isNew,y=t.isRefurbished,g=t.isSale,v=t.linkNumber,b=t.price,w=t.priceIsGross,E=t.title,C=t.url;return r.createElement("li",null,r.createElement("span",{className:"image"},r.createElement("img",{width:"100",height:"100",src:s})),r.createElement("span",{className:"details"},r.createElement("span",{className:"tags"},h&&r.createElement("span",{className:"tag new"},"New"),m&&r.createElement("span",{className:"tag hot"},"Hot Seller"),g&&!d&&r.createElement("span",{className:"tag sale"},"Sale"),p&&r.createElement("span",{className:"tag bundle"},n),y&&r.createElement("span",{className:"tag refurbished"},"Refurbished"),d&&r.createElement("span",{className:"tag offer-blackfriday"},"Black Friday")),r.createElement("a",{className:"description",href:C},E),r.createElement("span",{className:"linkNo"},"LN",v)),l&&r.createElement("span",{className:"priceAvailability"},r.createElement("span",{className:"leftColumn"},r.createElement(u,{price:b,showNetPriceText:!w})),r.createElement("span",{className:"rightColumn"},r.createElement("span",{className:c("buyButton","medium",f?"":"preOrder")},r.createElement(a,{inStock:f,webProductId:o,actionSource:i.liveSearch})))))};l.propTypes={result:o.shape({bundleTagText:o.string,buyWebProductId:o.number.isRequired,canBuyProduct:o.bool.isRequired,imageUrl:o.string.isRequired,inStock:o.bool.isRequired,isBlackFridayOffer:o.bool.isRequired,isBundle:o.bool.isRequired,isHotSeller:o.bool.isRequired,isNew:o.bool.isRequired,isRefurbished:o.bool.isRequired,isSale:o.bool.isRequired,linkNumber:o.number.isRequired,price:o.number.isRequired,priceIsGross:o.bool.isRequired,title:o.string.isRequired,url:o.string.isRequired}).isRequired},e.exports=l},86641:(e,t,n)=>{function r(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}}(e,t)||function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var a=n(67294),i=a.useState,u=n(45697),c=n(21188),l=n(65906),s=n(25046),f=n(94184),d=new l(450),p=n(25065),m=function(e){var t=e.enableSpeech,n=e.groups,o=e.numberOfResults,u=e.onSearch,l=e.onToggleMobileSearchBar,m=e.scrollToTop,h=e.searchVersion,y=r(i(""),2),g=y[0],v=y[1],b=r(i(!1),2),w=b[0],E=b[1],C=r(i(!1),2),S=C[0],k=C[1];function O(e,t,n){v(e),k(""!==e),E(t),n&&d.invoke((function(){u(e,t,h)}))}var R=function(){return k(!1)};return a.createElement(a.Fragment,null,a.createElement("div",{className:"searchMobileBar"},a.createElement("button",{className:"x",onClick:l},"close"),a.createElement("form",{action:s.urls.search,method:"get"},w&&a.createElement("input",{type:"hidden",name:"s",value:"1"}),a.createElement("span",null,a.createElement("button",{type:"submit"},"Search"),a.createElement(p,{enableSpeech:t,id:"q",name:"q",type:"text",placeholder:"Search keyword, LN or model number",value:g,onChange:function(e,t){return O(e,t,!1)},autoComplete:"name",maxLength:"150","aria-label":"Search query"})))),a.createElement("div",{className:"toolbar"},a.createElement("div",{className:"search"},S&&null!==n&&a.createElement("div",{className:"popupBackground",onClick:R}),a.createElement("div",{className:f("searchComponents",{popupShown:S&&null!==n})},a.createElement("form",{action:s.urls.search,method:"get"},w&&a.createElement("input",{type:"hidden",name:"s",value:"1"}),a.createElement("label",{htmlFor:"q"},"Search"),a.createElement(p,{enableSpeech:t,id:"q",name:"q",type:"text",placeholder:"Search keyword, LN or model number",value:g,onChange:function(e,t){return O(e,t,!0)},autoComplete:"off",maxLength:"150","aria-label":"Search query"}),h&&a.createElement("input",{type:"hidden",name:"v",value:h}),a.createElement("button",{type:"submit",className:"btn confirm"},"Search")),S&&null!==n&&a.createElement("div",{className:"popup"},a.createElement("div",null,a.createElement("div",{className:"header"},a.createElement("span",{className:"icon close",onClick:R},"Back"),a.createElement("span",{className:"title"},"Search Results ",a.createElement("span",null,"(",o,")"))),a.createElement(c,{groups:n,scrollToTop:m})))))))};m.propTypes={enableSpeech:u.bool,groups:u.array,numberOfResults:u.number.isRequired,onSearch:u.func.isRequired,onToggleMobileSearchBar:u.func.isRequired,scrollToTop:u.bool.isRequired,searchVersion:u.string},e.exports=m},21188:(e,t,n)=>{var r=n(67294),o=r.useEffect,a=r.useRef,i=n(45697),u=n(46746),c=function(e){var t=e.groups,n=e.scrollToTop,i=a(null);return o((function(){var e=i.current;null!==e&&n&&(e.scrollTop=0)})),0===t.length?r.createElement("div",{className:"searchResultsList"},r.createElement("p",null,"We couldn't find any results for your search query")):r.createElement("div",{className:"results",ref:i},t.map((function(e,t){return r.createElement(u,{key:t,group:e})})))};c.propTypes={groups:i.array.isRequired,scrollToTop:i.bool.isRequired},e.exports=c},46746:(e,t,n)=>{function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var o=n(67294),a=o.useEffect,i=o.useState,u=n(45697),c=n(94184),l=n(11302),s=n(12249),f=function(e){var t,n,u=e.group,f=(t=i(1),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}}(t,n)||function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),d=f[0],p=f[1];a((function(){p(1)}),[u]);var m=s[u.resultType];if(null==m)throw new Error("searchResultType is null");var h=m.cssClass,y=m.groupTitle,g=m.outputType,v=c("group",h,{category:"product"!==g}),b=u.results,w=b.filter((function(e){return e.displayLevel<=d})),E=b.length>w.length;return o.createElement("div",{className:v},o.createElement("span",{className:"title"},y),o.createElement("ul",null,w.map((function(e,t){return o.createElement(l,{key:t,outputType:g,result:e})}))),E&&o.createElement("div",{className:"moreResults"},o.createElement("button",{className:"link btn",onClick:function(){return p(d+1)}},"More")))};f.propTypes={group:u.object.isRequired},e.exports=f},41605:(e,t,n)=>{function r(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}}(e,t)||function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var a=n(67294),i=a.useState,u=n(45697),c=n(89166),l=n(51512).Provider,s=n(22149),f=n(47598),d=n(41996),p=n(86641),m=n(4472).toggleSearchBar;function h(e){var t=e.enableSpeech,n=r(i(null),2),o=n[0],u=n[1],h=r(i(0),2),y=h[0],g=h[1],v=r(i(!1),2),b=v[0],w=v[1],E=r(i(f.getFlag("searchVersion")||""),2),C=E[0],S=E[1];return f.addCallback("searchVersion",(function(e){return S(e)})),a.createElement(l,{store:c},a.createElement(p,{enableSpeech:t,groups:o,numberOfResults:y,onSearch:function(e,t,n){return s.search({isUsingSpeechRecognition:t,pageSize:50,query:e,searchVersion:n}).done((function(e){var t=e.groups,n=e.numberOfResults;u(t),g(n),w(!0)})).fail((function(e,t,n){""!==n&&"abort"!==n&&d.error("SearchV2Api.onSearch: "+n)}))},onToggleMobileSearchBar:function(){return m()},scrollToTop:b,searchVersion:C}))}h.propTypes={enableSpeech:u.bool},e.exports=h},27645:(e,t,n)=>{var r=n(67294),o=n(73935).render,a=n(41605);!function(){var e=document.querySelector('[data-component="search-header"]');e&&o(r.createElement(a,{enableSpeech:!1}),e);var t=document.querySelector('[data-component="search-header-speech"]');t&&o(r.createElement(a,{enableSpeech:!0}),t)}()},76043:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var o,a;function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function c(e,t){return(c=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function l(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?s(e):t}function s(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function f(e){return(f=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function d(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var p=n(67294),m=n(45697),h=n(94184),y=n(69879),g=n(33814),v=n(15429);e.exports=(a=o=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&c(e,t)}(m,e);var t,n,r,o,a=(r=m,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=f(r);if(o){var n=f(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return l(this,e)});function m(){var e;i(this,m);for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return d(s(e=a.call.apply(a,[this].concat(n))),"state",{showPopup:!1}),d(s(e),"handleOpenPopup",(function(t){t.preventDefault(),e.setState({showPopup:!0})})),d(s(e),"handleClosePopup",(function(){e.setState({showPopup:!1})})),d(s(e),"handleToggleClicked",(function(t){t.preventDefault(),e.props.onToggle()})),e}return t=m,(n=[{key:"render",value:function(){var e=this.props,t=e.calculation,n=e.expand,r=this.state.showPopup;return p.createElement("ul",{className:"scan-finance"},p.createElement("li",{className:"image"},p.createElement("i",null,"Scan Finance")),p.createElement("li",{className:"details"},p.createElement("span",{className:"description"},t.name,p.createElement("span",null,p.createElement(g,{calculation:t,showSummary:!0})),p.createElement("a",{href:"#",onClick:this.handleOpenPopup,className:"more-info"},"More about Scan Finance"),r&&p.createElement(v,{onClose:this.handleClosePopup},p.createElement("iframe",{src:"https://www.scan.co.uk/info/finance?popup=true",height:"600",width:"800"})))),p.createElement("li",{className:"action"},p.createElement("button",{className:h({expanded:n}),onClick:this.handleToggleClicked},p.createElement("i",null," "),p.createElement("span",null,"More info"))))}}])&&u(t.prototype,n),m}(p.Component),d(o,"propTypes",{calculation:y.financeCalculation.isRequired,expand:m.bool.isRequired,onToggle:m.func.isRequired}),a)},64616:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function i(e,t){return(i=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function u(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?c(e):t}function c(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function l(e){return(l=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function s(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var f=n(67881),d=n(69879),p=n(67594),m=n(76043),h=n(87277),y=n(1612),g=n(31689),v=n(45697),b=n(67294),w=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&i(e,t)}(w,e);var t,n,r,d,v=(r=w,d=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=l(r);if(d){var n=l(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return u(this,e)});function w(){var e;o(this,w);for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return s(c(e=v.call.apply(v,[this].concat(n))),"state",{expand:!1,selectedIndex:0}),s(c(e),"onBannerToggle",(function(){var t=!e.state.expand;e.setState({expand:t})})),s(c(e),"onSelectedIndexChanged",(function(t){e.setState({selectedIndex:t})})),e}return t=w,(n=[{key:"render",value:function(){var e=this,t=this.props,n=t.apiResponse,r=t.displayBanner,o=t.isFetching,a=n.maximumOrderAmount,i=n.minimumOrderAmount,u=n.orderAmount,c=n.products,l=this.state,s=l.expand,d=l.selectedIndex,v=b.createElement("ul",{className:"scan-finance loading"},b.createElement("li",{className:"image"},b.createElement("i",null,"Scan Finance")),b.createElement("li",{className:"details"},b.createElement("i",{className:"inline-loader"}," "))),w=c&&c.length>0,E=w?c[d]:null,C=E&&new f(E,E.minDepositAmount),S=C&&C.financeResult?C.financeResult:null,k=!r||s;return b.createElement(y,{isLoading:o,loader:v,minLoaderDisplayTime:500},!w&&b.createElement(h,{maximumOrderAmount:a,minimumOrderAmount:i,orderAmount:u}),w&&r&&b.createElement(m,{calculation:S,expand:s,onToggle:this.onBannerToggle}),w&&k&&b.createElement("div",null,b.createElement("div",{className:"genericCentreForm"},b.createElement(p,{displayButton:!1,fieldName:"Select your finance option",hideFromSessioncam:!1,id:"FinanceOption",isRequired:!0,value:d.toString(),values:c.map((function(e,t){return{value:t,text:e.name}})),valueChanged:function(t){return e.onSelectedIndexChanged(t)}})),S&&b.createElement(g,{calculation:S})))}}])&&a(t.prototype,n),w}(b.Component);s(w,"propTypes",{apiResponse:d.apiResponse,displayBanner:v.bool.isRequired,isFetching:v.bool.isRequired}),e.exports=w},31689:(e,t,n)=>{var r=n(67294),o=n(69879),a=n(33814),i=function(e){var t=e.calculation;return r.createElement("div",{className:"financeTable"},r.createElement("h3",null,t.name),r.createElement(a,{calculation:t}),r.createElement("div",null,r.createElement("dl",null,r.createElement("dt",null,"Representative APR"),r.createElement("dd",null,t.apr,"%"),r.createElement("dt",null,"Cash Price"),r.createElement("dd",null,"£",t.cashPrice.toFixed(2)),r.createElement("dt",null,"Deposit"),r.createElement("dd",null,"£",t.depositAmount.toFixed(2)),r.createElement("dt",null,"Loan Amount"),r.createElement("dd",null,"£",t.loanAmount.toFixed(2)),r.createElement("dt",null,"Loan Repayment"),r.createElement("dd",null,"£",t.loanRepayment.toFixed(2)),r.createElement("dt",null,"Cost of Loan"),r.createElement("dd",null,"£",t.chargeForCredit.toFixed(2)),r.createElement("dt",null,"Total Payable"),r.createElement("dd",null,"£",t.amountPayable.toFixed(2)),r.createElement("dt",null,"Rate of Interest"),r.createElement("dd",null,t.interestRate,"%"))))};i.propTypes={calculation:o.financeCalculation.isRequired},e.exports=i},87277:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var o,a;function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function c(e,t){return(c=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function l(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?s(e):t}function s(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function f(e){return(f=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function d(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var p=n(67294),m=n(45697),h=n(7280),y=n(15429);e.exports=(a=o=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&c(e,t)}(m,e);var t,n,r,o,a=(r=m,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=f(r);if(o){var n=f(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return l(this,e)});function m(){var e;i(this,m);for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return d(s(e=a.call.apply(a,[this].concat(n))),"state",{showPopup:!1}),d(s(e),"handleOpenPopup",(function(t){t.preventDefault(),e.setState({showPopup:!0})})),d(s(e),"handleClosePopup",(function(){e.setState({showPopup:!1})})),e}return t=m,(n=[{key:"render",value:function(){var e=this.props,t=e.maximumOrderAmount,n=e.minimumOrderAmount,r=e.orderAmount,o=this.state.showPopup,a=r<n?n-r:null,i=r>t;return p.createElement("ul",{className:"scan-finance"},p.createElement("li",{className:"image"},p.createElement("i",null,"Scan Finance")),p.createElement("li",{className:"details"},a?p.createElement("span",{className:"description"},"Spend an extra ",p.createElement(h,{price:a})," for finance options."):null,i?p.createElement("span",{className:"description"},"No finance options are available on orders over ",p.createElement(h,{price:t}),"."):null,p.createElement("a",{href:"#",onClick:this.handleOpenPopup,className:"more-info"},"More about Scan Finance"),o&&p.createElement(y,{onClose:this.handleClosePopup},p.createElement("iframe",{src:"https://www.scan.co.uk/info/finance?popup=true",height:"600",width:"800"}))))}}])&&u(t.prototype,n),m}(p.Component),d(o,"propTypes",{maximumOrderAmount:m.number.isRequired,minimumOrderAmount:m.number.isRequired,orderAmount:m.number.isRequired}),a)},18115:(e,t,n)=>{var r=n(69879),o=n(7280),a=n(67294);function i(e){var t=e.calculation,n=t.initialPayments,r=t.finalPayment,i=t.months;if(n===r)return a.createElement(a.Fragment,null,i+" monthly payments of ",a.createElement(o,{price:n}));var u=i-1;return a.createElement(a.Fragment,null,u+" monthly payments of ",a.createElement(o,{price:n})," followed by a final payment of ",a.createElement(o,{price:r}))}i.propTypes={calculation:r.financeCalculation.isRequired},e.exports=i},83970:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function a(e,t){return(a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function i(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?u(e):t}function u(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function c(e){return(c=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function l(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var s=n(45697),f=n(67294),d=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&a(e,t)}(p,e);var t,n,r,s,d=(r=p,s=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=c(r);if(s){var n=c(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return i(this,e)});function p(e){var t;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,p),l(u(t=d.call(this,e)),"handleOrderAmountChanged",(function(e){var n=e.target.value;t.setState({orderAmount:n})})),l(u(t),"handleSubmit",(function(e){e.preventDefault();var n=t.state.orderAmount;t.isValidPrice(n)&&t.props.onOrderAmountChanged(parseFloat(t.state.orderAmount)),t.setState({submitAttempted:!0})})),l(u(t),"isValidPrice",(function(e){return/^\d+(.?\d{1,2})$/.test(e)})),l(u(t),"toTwoDecimalPlaces",(function(e){return parseFloat(Math.round(100*e)/100).toFixed(2)}));var n=e.orderAmount?t.toTwoDecimalPlaces(e.orderAmount):"";return t.state={orderAmount:n,submitAttempted:!1},t}return t=p,(n=[{key:"render",value:function(){var e=this.state,t=e.orderAmount,n=e.submitAttempted,r=this.isValidPrice(t);return f.createElement("form",{onSubmit:this.handleSubmit},f.createElement("div",{className:"row"},n&&!r?f.createElement("strong",null,"Invalid"):null,f.createElement("span",{className:"colLeft"},"Order Amount:"),f.createElement("span",{className:"colMiddle"},f.createElement("input",{type:"text",value:t,onChange:this.handleOrderAmountChanged}),f.createElement("button",{type:"submit"},"Update"))))}}])&&o(t.prototype,n),p}(f.Component);l(d,"propTypes",{onOrderAmountChanged:s.func.isRequired,orderAmount:s.number}),e.exports=d},33814:(e,t,n)=>{var r=n(69879),o=n(45697),a=n(18115),i=n(7280),u=n(67294),c=function(e){var t=e.calculation,n=e.showSummary,r=t.defermentPeriod,o=t.depositAmount,c=t.serviceFee,l=t.settlementFee,s=u.createElement(u.Fragment,null,"Pay a deposit of ",u.createElement(i,{price:o}),c>0&&u.createElement(u.Fragment,null," plus an arrangement fee of ",u.createElement(i,{price:c})),0===r?u.createElement(u.Fragment,null," then ",u.createElement(a,{calculation:t})):" and then nothing for "+r+" months."+(n?"":" You can then choose from the following options:"));return n?s:u.createElement(u.Fragment,null,u.createElement("p",null,s),!n&&r>0&&u.createElement(u.Fragment,null,u.createElement("p",null,u.createElement("strong",null,"Option 1"),u.createElement("br",null),0===l?"Settle the balance and pay no interest. ":u.createElement(u.Fragment,null,"Settle the balance plus a settlement fee of ",u.createElement(i,{price:l})," and pay no interest. ")),u.createElement("p",null,u.createElement("strong",null,"Option 2"),u.createElement("br",null),u.createElement(u.Fragment,null,"Repay the loan over ",u.createElement(a,{calculation:t}),".")),u.createElement("p",null,"Buy Now Pay Later Option: If you pay the amount of credit plus the settlement fee of ",u.createElement(i,{price:l})," by the end of the non-payment period you will pay no interest. If you have not paid this sum in full by that date interest will be charged but, if you made any partial repayments, only on the amount of credit which remains unpaid.")))};c.propTypes={calculation:r.financeCalculation.isRequired,showSummary:o.bool},e.exports=c},92354:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function a(e,t){return(a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function i(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?u(e):t}function u(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function c(e){return(c=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function l(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var s=n(68817),f=n(83970),d=n(45697),p=n(67294),m=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&a(e,t)}(h,e);var t,n,r,d,m=(r=h,d=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=c(r);if(d){var n=c(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return i(this,e)});function h(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,h),l(u(t=m.call(this,e)),"handleOrderAmountChanged",(function(e){return t.setState({orderAmount:e})})),t.state={orderAmount:e.orderAmount||null},t}return t=h,(n=[{key:"render",value:function(){var e=this.state.orderAmount,t=this.handleOrderAmountChanged;return p.createElement("div",null,p.createElement(f,{orderAmount:e,onOrderAmountChanged:t}),p.createElement(s,{displayBanner:!1,orderAmount:e}))}}])&&o(t.prototype,n),h}(p.Component);l(m,"propTypes",{orderAmount:d.number}),e.exports=m},68817:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function i(e,t){return(i=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function u(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?c(e):t}function c(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function l(e){return(l=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function s(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var f=n(64616),d=n(45697),p=n(67294),m=n(25046),h=n(19755),y=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&i(e,t)}(g,e);var t,n,r,d,y=(r=g,d=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=l(r);if(d){var n=l(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return u(this,e)});function g(){var e;o(this,g);for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return s(c(e=y.call.apply(y,[this].concat(n))),"state",{apiResponse:null,error:null,isFetching:!1}),e}return t=g,(n=[{key:"update",value:function(e){var t=this,n={orderAmount:e},r=m.urls.getLocalUrl("/ajax/finance/v12products?orderamount=".concat(e));return this.setState({isFetching:!0}),h.ajax({data:n,method:"post",url:r,success:function(e){t.setState({apiResponse:e,error:null,isFetching:!1})}}).fail((function(e,n,r){t.setState({error:r,apiResponse:null,isFetching:!1})}))}},{key:"componentDidMount",value:function(){this.update(this.props.orderAmount)}},{key:"componentDidUpdate",value:function(e){this.props.orderAmount!==e.orderAmount&&this.update(this.props.orderAmount)}},{key:"render",value:function(){var e=this,t=this.props.displayBanner,n=this.state,r=n.apiResponse,o=n.isFetching;return r?p.createElement(f,{apiResponse:r,displayBanner:t,isFetching:o}):p.createElement("button",{onClick:function(){return e.actions.update(e.props.orderAmount)}},"Go")}}])&&a(t.prototype,n),g}(p.Component);s(y,"propTypes",{displayBanner:d.bool.isRequired,orderAmount:d.number.isRequired}),e.exports=y},69879:(e,t,n)=>{var r=n(45697),o=r.shape({apr:r.number.isRequired,defermentPeriod:r.number.isRequired,documentFee:r.number.isRequired,documentFeeMaximum:r.number.isRequired,documentFeeMinimum:r.number.isRequired,documentFeePercentage:r.number.isRequired,financeProductId:r.number.isRequired,maxDepositAmount:r.number.isRequired,maxLoan:r.number.isRequired,minDepositAmount:r.number.isRequired,minLoan:r.number.isRequired,monthlyRate:r.number.isRequired,months:r.number.isRequired,name:r.string.isRequired,orderAmount:r.number.isRequired,serviceFee:r.number.isRequired,settlementFee:r.number.isRequired,interestRate:r.number.isRequired}),a=r.shape({name:r.string.isRequired,apr:r.number.isRequired,cashPrice:r.number.isRequired,costOfLoan:r.number.isRequired,defermentPeriod:r.number.isRequired,depositAmount:r.number.isRequired,loanAmount:r.number.isRequired,loanRepayment:r.number.isRequired,initialPayments:r.number.isRequired,finalPayment:r.number.isRequired,monthlyPaymentText:r.string.isRequired,months:r.number.isRequired,balancePayable:r.number.isRequired,interest:r.number.isRequired,chargeForCredit:r.number.isRequired,amountPayable:r.number.isRequired,serviceFee:r.number.isRequired,documentFee:r.number.isRequired,calculatedApr:r.number.isRequired,settlementFee:r.number.isRequired,interestRate:r.number.isRequired}),i=r.shape({enabled:r.bool.isRequired,maximumOrderAmount:r.number.isRequired,minimumOrderAmount:r.number.isRequired,orderAmount:r.number.isRequired,products:r.arrayOf(o).isRequired});e.exports={apiResponse:i,financeCalculation:a,financeProduct:o}},83578:(e,t,n)=>{var r=n(92354),o=n(67294),a=n(73935).render;!function(){var e=document.getElementById("customAmountFinanceCalculator");if(e){var t=e.getAttribute("data-orderamount"),n=isNaN(t)?null:parseFloat(t);a(o.createElement(r,{orderAmount:n}),e)}}()},65153:(e,t,n)=>{var r=n(45697),o=r.shape({description:r.string.isRequired,imgSrc:r.string.isRequired,price:r.string.isRequired,productCode:r.string.isRequired}),a=r.shape({name:r.string.isRequired,productQuantity:r.number.isRequired,totalPrice:r.number.isRequired,totalQuantity:r.number.isRequired,wishListGuid:r.string.isRequired});e.exports={popupDetails:o,wishListHeader:a}},15480:(e,t,n)=>{var r=n(82702).Promise,o=n(19755),a=n(25046).urls.getLocalUrl("/ajax/wishlists"),i=new(n(63675))(n(22303).profiles.wishListProductCodes);e.exports={createNewWishList:function(e,t){return i.clear(),new r((function(n,r){o.ajax({type:"POST",data:{listName:e,productCode:t},url:a+"/createnewwishlist",success:function(e){return n(e)},error:function(e,t,n){return r(n)}})}))},getProductCodesForWishLists:function(){var e=i.get();return new r(e?function(t){return t(e)}:function(e,t){o.ajax({type:"POST",url:a+"/getproductcodesforwishlists",success:function(t){i.set(t),e(t)},error:function(e,n,r){return t(r)}})})},getWishListHeadersWithProductQuantity:function(e){return new r((function(t,n){o.ajax({data:{productCode:e},type:"POST",url:a+"/getwishlistheaderswithproductquantity",success:function(e){return t(e)},error:function(e,t,r){return n(r)}})}))},setProductQuantityOnWishList:function(e,t,n){return i.clear(),new r((function(r,i){o.ajax({type:"POST",data:{listGuid:e,productCode:t,newQuantity:n},url:a+"/setproductquantityonwishlist",success:function(e){return r(e)},error:function(e,t,n){return i(n)}})}))}}},49765:(e,t,n)=>{function r(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}}(e,t)||function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var a=n(67294),i=a.useEffect,u=a.useRef,c=a.useState,l=n(45697),s=n(94184),f=function(e){var t=e.isCreateNewOpen,n=e.onCreateList,o=u(null),l=r(c(t),2),f=l[0],d=l[1],p=r(c(""),2),m=p[0],h=p[1];return i((function(){o.current&&o.current.focus()}),[o.current]),a.createElement("form",{onSubmit:function(e){e.preventDefault(),f&&0!==m.length&&(n(m),h(""),o.current.focus())}},a.createElement("div",{className:s("add-list",{expanded:f})},a.createElement("button",{className:"new-list",onClick:function(e){e.preventDefault(),d(!f)}},a.createElement("i",null)," Create new list"),f&&a.createElement("div",{className:"expands",id:"newWishListEntry",style:{display:"table"}},a.createElement("div",null,a.createElement("label",null,"New wish list name"),a.createElement("input",{type:"text",maxLength:100,ref:o,onChange:function(e){return h(e.target.value)},value:m})),a.createElement("div",null,a.createElement("button",{type:"submit",className:"btn confirm"},"Create")))))};f.propTypes={isCreateNewOpen:l.bool.isRequired,onCreateList:l.func},e.exports=f},4380:(e,t,n)=>{var r=n(67294),o=n(25046);e.exports=function(){return r.createElement("div",{className:"add-to-list"},r.createElement("a",{href:o.urls.wishLists,className:"link blue"},"View / Manage all lists"))}},18207:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(94184),i=function(e){var t=e.onClick,n=e.isSelected;return r.createElement("button",{onClick:t,className:a("btn wishList",{selected:n})})};i.propTypes={isSelected:o.bool.isRequired,onClick:o.func.isRequired},e.exports=i},98907:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(65153),i=n(94184),u=function(e){var t=e.onSetProductQuantity,n=e.wishListHeader,o=n.name,a=n.productQuantity,u=n.totalPrice,c=n.totalQuantity,l=n.wishListGuid,s=l;return r.createElement("li",{className:i({selected:a>0})},r.createElement("span",{className:"checkbox"},r.createElement("input",{type:"checkbox",id:s,onChange:function(e){e.preventDefault(),t(l,a>0?0:1)},checked:a>0}),r.createElement("label",{htmlFor:s})),r.createElement("span",{className:"description"},o,r.createElement("span",{className:"items"}," (",c," ",1===c?"item":"items",")")),r.createElement("span",{className:"value-qty"},r.createElement("span",{className:"list-value"},"£",u.toFixed(2)),r.createElement("span",{className:"qty"},r.createElement("button",{className:"decrease",onClick:function(e){e.preventDefault(),a>0&&t(l,a-1)}},r.createElement("i",null,"decrease")),r.createElement("span",null,a),r.createElement("button",{className:"increase",onClick:function(e){e.preventDefault(),a<99&&t(l,a+1)}},r.createElement("i",null,"increase")))))};u.propTypes={onSetProductQuantity:o.func.isRequired,wishListHeader:a.wishListHeader.isRequired},e.exports=u},16972:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(65153),i=n(13086),u=n(98907),c=n(7280),l=n(25046),s=n(4380),f=function(e){var t=e.isLoggedIn,n=e.onClosePopup,o=e.onSetProductQuantity,a=e.popupDetails,f=e.wishListHeaders,d=a.description,p=a.imgSrc,m=a.price,h=a.productCode,y="".concat(l.urls.login,"/login?redirecturl=").concat(encodeURIComponent(window.location)),g="".concat(l.urls.login,"/login?redirecturl=").concat(encodeURIComponent(window.location),"'#page=register"),v=t?null===f?1:0===f.length?2:3:0,b=function(e,t){o(e,h,t)};return r.createElement("div",null,r.createElement("div",{id:"popup",onClick:function(){return n()}},r.createElement("div",{id:"popup-container",style:{width:"520px"},onClick:function(e){return e.stopPropagation()}},r.createElement("div",null,r.createElement("a",{className:"close",onClick:n})),r.createElement("div",{className:"add-to-wishlist"},r.createElement("span",{className:"heading"},"Add to wish list"),r.createElement("div",{className:"product"},r.createElement("div",{className:"image"},r.createElement("img",{src:p,className:"image-replace",alt:d,"data-src":p,width:"130"})),r.createElement("div",{className:"details"},r.createElement("span",{className:"description"},d),"callforprice"===m?r.createElement("span",{className:"price call"},"Call for price"):r.createElement(c,{price:parseFloat(m)}))),0===v&&r.createElement("div",null,r.createElement("div",{className:"login-to-wishlist"},r.createElement("a",{href:y,className:"btn confirm"},"Login to add to your wish list"),r.createElement("p",null,"New to SCAN? ",r.createElement("a",{href:g,className:"link blue"},"CREATE YOUR SCAN ACCOUNT NOW")))),1===v&&r.createElement("div",null,r.createElement(i,{isCreateNewOpen:!1}),r.createElement("div",{className:"recent-list loading"}),r.createElement(s,null)),2===v&&r.createElement("div",null,r.createElement(i,{isCreateNewOpen:!0}),r.createElement("div",{className:"recent-list no-lists"}),r.createElement(s,null)),3===v&&r.createElement("div",null,r.createElement(i,{isCreateNewOpen:!1}),r.createElement("div",{className:"recent-list"},r.createElement("ul",null,f.map((function(e){return r.createElement(u,{key:e.wishListGuid,wishListHeader:e,productCode:h,onSetProductQuantity:b})})))),r.createElement(s,null))))))};f.propTypes={isLoggedIn:o.bool.isRequired,onClosePopup:o.func.isRequired,onSetProductQuantity:o.func.isRequired,popupDetails:a.popupDetails.isRequired,wishListHeaders:o.arrayOf(a.wishListHeader).isRequired},e.exports=f},13086:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(51512).connect,i=n(42721).selectState,u=n(28257).createList,c=n(49765),l=function(e){var t=e.isCreateNewOpen,n=e.onCreateList,o=e.productCode;return r.createElement(c,{isCreateNewOpen:t,onCreateList:function(e){return n(e,o)}})};l.propTypes={isCreateNewOpen:o.bool.isRequired,onCreateList:o.func.isRequired,productCode:o.string.isRequired},e.exports=a((function(e){return{productCode:i(e).popupDetails.productCode}}),(function(e){return{onCreateList:function(t,n){return e(u(t,n))}}}))(l)},60727:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(51512).connect,i=n(28257).showPopup,u=n(42721).selectState,c=n(18207),l=function(e){var t=e.isSelected,n=e.onShowPopup;return r.createElement(c,{isSelected:t,onClick:function(e){e.preventDefault(),n()}})};l.propTypes={description:o.string.isRequired,imgSrc:o.string.isRequired,isSelected:o.bool.isRequired,onShowPopup:o.func.isRequired,price:o.string.isRequired,productCode:o.string.isRequired},e.exports=a((function(e,t){return{isSelected:u(e).productCodesInUse.includes(t.productCode)}}),(function(e,t){return{onShowPopup:function(){var n=t.description,r=t.imgSrc,o=t.price,a=t.productCode;e(i({description:n,imgSrc:r,price:o,productCode:a}))}}}))(l)},30161:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(65153),i=n(51512).connect,u=n(28257),c=u.closePopup,l=u.setProductQuantity,s=n(42721).selectState,f=n(16972),d=function(e){var t=e.isLoggedIn,n=e.onClosePopup,o=e.onSetProductQuantity,a=e.popupDetails,i=e.wishListHeaders;return a?r.createElement(f,{isLoggedIn:t,onClosePopup:n,onSetProductQuantity:o,popupDetails:a,wishListHeaders:i}):r.createElement("div",null)};d.propTypes={isLoggedIn:o.bool.isRequired,onClosePopup:o.func.isRequired,onSetProductQuantity:o.func.isRequired,popupDetails:a.popupDetails,wishListHeaders:o.arrayOf(a.wishListHeader).isRequired},e.exports=i((function(e){var t=s(e);return{isLoggedIn:t.isLoggedIn,popupDetails:t.popupDetails,wishListHeaders:t.wishListHeaders}}),(function(e){return{onClosePopup:function(){return e(c())},onSetProductQuantity:function(t,n,r){return e(l(t,n,r))}}}))(d)},76085:(e,t,n)=>{function r(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var a=n(67294),i=n(73935).render,u=n(51512).Provider,c=n(89166),l=n(81764),s=n(28257).setUserLoggedIn,f=n(30806),d=n(60727),p=n(30161);function m(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document,n=t.querySelectorAll(".wishlistheart"),o=r(n);try{for(o.s();!(e=o.n()).done;){var l=e.value,s=l.getAttribute("data-description"),f=l.getAttribute("data-imgsrc"),p=l.getAttribute("data-price"),m=l.getAttribute("data-productcode");i(a.createElement(u,{store:c},a.createElement(d,{description:s,imgSrc:f,price:p,productCode:m})),l)}}catch(e){o.e(e)}finally{o.f()}}l(),f.onPageLoad((function(){var e;m(),(e=document.getElementById("wishListPopUp"))&&(Boolean(document.querySelector("[data-isloggedin]"))&&c.dispatch(s()),i(a.createElement(u,{store:c},a.createElement(p,null)),e))})),f.onDomNodeAdded((function(e){return m(e)}))},28257:(e,t,n)=>{var r=n(15480),o=n(42721),a=o.HAS_LOGGED_IN,i=o.HAS_LOGGED_OUT,u=o.POPUP_CLOSE,c=o.POPUP_OPEN,l=o.PRODUCT_CODES_UPDATED,s=o.WISHLIST_HEADER_UPDATED,f=o.WISHLIST_HEADERS_UPDATED;function d(){return function(e){r.getProductCodesForWishLists().then((function(t){var n=t.productCodes;e({type:l,productCodes:n})})).catch(p(e))}}var p=function(e){return function(t){"Unauthorized"===t&&e({type:i})}};e.exports={closePopup:function(){return{type:u}},createList:function(e,t){return function(n){r.createNewWishList(e,t).then((function(e){var t=e.success,r=e.wishListHeaders;t&&n({type:f,wishListHeaders:r})})).catch(p(n))}},getProductCodesForWishLists:d,setProductQuantity:function(e,t,n){return function(o){r.setProductQuantityOnWishList(e,t,n).then((function(e){o({type:s,wishListHeader:e}),o(d())})).catch(p(o))}},setUserLoggedIn:function(){return function(e){e({type:a}),e(d())}},showPopup:function(e){return function(t){r.getWishListHeadersWithProductQuantity(e.productCode).then((function(n){var r=n.wishListHeaders;t({type:f,wishListHeaders:r}),t({type:c,popupDetails:e})})).catch((function(n){p(t)(n),t({type:c,popupDetails:e})}))}}}},81764:(e,t,n)=>{var r=n(42721);e.exports=function(){r.registerReducer()}},42721:(e,t,n)=>{function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach((function(t){a(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var i=n(28227),u="wishLists",c=function(e){return"scan/".concat(u,"/").concat(e)},l={HAS_LOGGED_IN:c("HAS_LOGGED_IN"),HAS_LOGGED_OUT:c("HAS_LOGGED_OUT"),POPUP_CLOSE:c("POPUP_CLOSE"),POPUP_OPEN:c("POPUP_OPEN"),PRODUCT_CODES_UPDATED:c("PRODUCT_CODES_UPDATED"),WISHLIST_HEADER_UPDATED:c("WISHLIST_HEADER_UPDATED"),WISHLIST_HEADERS_UPDATED:c("WISHLIST_HEADERS_UPDATED")},s={isLoggedIn:!1,popupDetails:null,productCodesInUse:[],wishListHeaders:[]};function f(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:s,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case l.HAS_LOGGED_IN:return o(o({},e),{},{isLoggedIn:!0});case l.HAS_LOGGED_OUT:return o(o({},e),{},{isLoggedIn:!1});case l.POPUP_OPEN:var n=t.popupDetails;return o(o({},e),{},{popupDetails:n});case l.POPUP_CLOSE:return o(o({},e),{},{popupDetails:null,wishListHeaders:[]});case l.PRODUCT_CODES_UPDATED:var r=t.productCodes;return o(o({},e),{},{productCodesInUse:r});case l.WISHLIST_HEADER_UPDATED:var a=t.wishListHeader,i=e.wishListHeaders.map((function(e){return e.wishListGuid===a.wishListGuid?a:o({},e)}));return o(o({},e),{},{wishListHeaders:i});case l.WISHLIST_HEADERS_UPDATED:var u=t.wishListHeaders;return o(o({},e),{},{wishListHeaders:u});default:return o({},e)}}e.exports=o(o({},l),{},{reducerName:u,reducer:f,registerReducer:function(){i.register(u,f)},selectState:function(e){return e.wishLists}})},42699:(e,t,n)=>{function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var o=n(41996),a=[],i=function(){try{return new BroadcastChannel("basket_channel")}catch(e){return null}}();i&&(i.onmessage=function(e){if(o.info("Received broadcast basket update"),e.data){var t,n=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0,a=function(){};return{s:a,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(a);try{for(n.s();!(t=n.n()).done;)(0,t.value)(e.data)}catch(e){n.e(e)}finally{n.f()}}}),e.exports={addListener:function(e){return a.push(e)},post:function(e){i&&i.postMessage(e)}}},63675:(e,t,n)=>{var r=n(41996);e.exports=function(e){var t=e.enabled,n=e.key,o=e.ttl;r.log('Creating CachedSessionStorage - key:"'.concat(n,'" / ttl:').concat(o," / enabled:").concat(t)),this.clear=function(){t&&sessionStorage.removeItem(n)},this.get=function(){if(!t)return null;var e=sessionStorage.getItem(n);if(!e)return null;var o=null;try{o=JSON.parse(e)}catch(e){return sessionStorage.removeItem(n),null}var a=(new Date).getTime(),i=o,u=i.expiry,c=i.value;return u<=a?(r.log("CachedSessionStorage: value has expired - removing cache"),sessionStorage.removeItem(n),null):(r.log("CachedSessionStorage: value is valid"),c)},this.set=function(e){if(t)if(e){var r=(new Date).getTime()+o;sessionStorage.setItem(n,JSON.stringify({expiry:r,value:e}))}else sessionStorage.removeItem(n)}}},22303:(e,t,n)=>{var r=n(15805),o=function(e,t,n){return{key:e,enabled:t,ttl:t?n:null}},a=n(73980).publishProfile===r.secure,i=!a,u={basket:o("BasketApi.Basket",!a,3e4),wishListProductCodes:o("WishListApi.ProductCodes",i,12e4)};e.exports={profiles:u}},1612:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var o,a;function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function c(e,t){return(c=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function l(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?s(e):t}function s(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function f(e){return(f=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function d(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var p=n(67294),m=n(45697);e.exports=(a=o=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&c(e,t)}(p,e);var t,n,r,o,a=(r=p,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=f(r);if(o){var n=f(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return l(this,e)});function p(){var e;i(this,p);for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return d(s(e=a.call.apply(a,[this].concat(n))),"state",{showLoader:!1}),d(s(e),"canHideLoader",!0),d(s(e),"showLoader",(function(){var t=e.props.minLoaderDisplayTime;!0!==e.state.showLoader&&(e.setState({showLoader:!0}),t?(e.canHideLoader=!1,setTimeout((function(){e.canHideLoader=!0,!1===e.props.isLoading&&e.setState({showLoader:!1})}),t)):e.canHideLoader=!0)})),d(s(e),"hideLoader",(function(){e.canHideLoader&&e.setState({showLoader:!1})})),e}return t=p,(n=[{key:"componentDidMount",value:function(){this.props.isLoading?this.showLoader():this.hideLoader()}},{key:"componentDidUpdate",value:function(e){this.props.isLoading!==e.isLoading&&(this.props.isLoading?this.showLoader():this.hideLoader())}},{key:"render",value:function(){var e=this.state.showLoader,t=this.props,n=t.children,r=t.loader;return e?r:n}}])&&u(t.prototype,n),p}(p.Component),d(o,"propTypes",{children:m.oneOfType([m.node,m.arrayOf(m.node)]).isRequired,isLoading:m.bool,loader:m.node.isRequired,minLoaderDisplayTime:m.number}),a)},15429:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var o,a;function i(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function u(e,t){return(u=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function c(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?l(e):t}function l(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function s(e){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function f(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var d=n(67294),p=n(73935),m=n(45697);e.exports=(a=o=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&u(e,t)}(m,e);var t,n,r,o,a=(r=m,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=s(r);if(o){var n=s(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return c(this,e)});function m(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,m),f(l(t=a.call(this,e)),"handleClose",(function(e){e.preventDefault(),t.props.onClose()})),t.element=document.createElement("div"),document.body.appendChild(t.element),t}return t=m,(n=[{key:"componentWillUnmount",value:function(){document.body.removeChild(this.element)}},{key:"render",value:function(){var e=this.props,t=e.children,n=e.className,r=e.containerClassName;return p.createPortal(d.createElement(d.Fragment,null,d.createElement("div",{id:"popup",className:n,style:{width:"100%"}},d.createElement("div",{id:"popup-container",className:r},d.createElement("div",null,d.createElement("a",{className:"close",onClick:this.handleClose},d.createElement("span",null,"Close"))),t)),d.createElement("div",{id:"popup-background",onClick:this.handleClose})),this.element)}}])&&i(t.prototype,n),m}(d.Component),f(o,"propTypes",{children:m.oneOfType([m.node,m.arrayOf(m.node)]).isRequired,className:m.string,containerClassName:m.string,onClose:m.func.isRequired}),a)},23097:(e,t,n)=>{var r=n(67294).useEffect,o=n(45697),a=function(e){var t=e.url;return r((function(){window.location=t}),[]),null};a.propTypes={url:o.string.isRequired},e.exports=a},67594:(e,t,n)=>{var r=n(67294),o=n(45697),a=n(94184);function i(e){var t=e.autocomplete,n=e.buttonClicked,o=e.buttonText,i=e.displayButton,u=e.fieldName,c=e.hideFromSessioncam,l=e.hint,s=e.id,f=e.isRequired,d=e.placeholder,p=e.rowClassName,m=e.validationMessage,h=e.value,y=e.valueChanged,g=e.values,v=a("row",p,{required:f}),b=a({"input-validation-error":m,sessioncamexclude:c}),w=null==h;return r.createElement("div",{className:v},r.createElement("label",{htmlFor:s},u),r.createElement("select",{type:"text",id:s,className:b,value:h||"",onChange:function(e){y(e.target.value)},placeholder:d,autoComplete:t},w&&r.createElement("option",{value:""},"Select"),g.map((function(e){return r.createElement("option",{key:e.value,value:e.value},e.text)}))),i&&r.createElement("button",{type:"button",onClick:n},o),m&&r.createElement("span",{className:"field-validation-error"},m),l&&r.createElement("span",{className:"hint"},r.createElement("i",null)," ",l))}i.propTypes={autocomplete:o.string,buttonClicked:o.func,buttonText:o.string,displayButton:o.bool,fieldName:o.string.isRequired,hideFromSessioncam:o.bool,hint:o.string,id:o.string.isRequired,isRequired:o.bool.isRequired,placeholder:o.string,rowClassName:o.string,validationMessage:o.string,value:o.oneOfType([o.number,o.string]),valueChanged:o.func.isRequired,values:o.arrayOf(o.shape({value:o.oneOfType([o.number,o.string]).isRequired,text:o.string.isRequired})).isRequired},e.exports=i},70966:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function a(e,t){return(a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function i(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function u(e){return(u=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var c=n(67294),l=n(45697),s=n(94184),f=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&a(e,t)}(d,e);var t,n,r,l,f=(r=d,l=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=u(r);if(l){var n=u(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return i(this,e)});function d(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,d),f.call(this,e)}return t=d,(n=[{key:"render",value:function(){var e=this.props,t=s("row",{required:e.isRequired}),n=s({"input-validation-error":e.validationMessage,sessioncamexclude:e.hideFromSessioncam}),r=e.value||"";return c.createElement("div",{className:t},c.createElement("label",{htmlFor:e.id},e.fieldName),c.createElement("textarea",{autoComplete:this.props.autocomplete,className:n,id:e.id,maxLength:this.props.maxLength,onChange:function(t){return e.valueChanged(t.target.value)},placeholder:e.placeholder,type:"text",value:r}),e.displayButton?c.createElement("button",{type:"button",onClick:function(){return e.buttonClicked()}},e.buttonText):null,e.validationMessage?c.createElement("span",{className:"field-validation-error"},e.validationMessage):null,e.hint?c.createElement("span",{className:"hint"},c.createElement("i",null)," ",e.hint):null)}}])&&o(t.prototype,n),d}(c.Component);f.propTypes={autocomplete:l.string,buttonClicked:l.func,buttonText:l.string,displayButton:l.bool,fieldName:l.string.isRequired,hideFromSessioncam:l.bool,hint:l.string,id:l.string.isRequired,isRequired:l.bool.isRequired,maxLength:l.number,placeholder:l.string,validationMessage:l.string,value:l.string,valueChanged:l.func.isRequired},e.exports=f},50862:(e,t,n)=>{function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function a(e,t){return(a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function i(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function u(e){return(u=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var c=n(67294),l=n(45697),s=n(94184),f=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&a(e,t)}(d,e);var t,n,r,l,f=(r=d,l=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=u(r);if(l){var n=u(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return i(this,e)});function d(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,d),f.call(this,e)}return t=d,(n=[{key:"render",value:function(){var e=this.props,t=s("row",{required:e.isRequired}),n=s({"input-validation-error":e.validationMessage,sessioncamexclude:e.hideFromSessioncam}),r=e.value||"";return c.createElement("div",{className:t},c.createElement("label",{htmlFor:e.id},e.fieldName),c.createElement("input",{autoComplete:this.props.autocomplete,className:n,id:e.id,maxLength:this.props.maxLength,onChange:function(t){return e.valueChanged(t.target.value)},placeholder:e.placeholder,type:this.props.type,value:r}),e.displayButton?c.createElement("button",{type:"button",onClick:function(){return e.buttonClicked()}},e.buttonText):null,e.validationMessage?c.createElement("span",{className:"field-validation-error"},e.validationMessage):null,e.hint?c.createElement("span",{className:"hint"},c.createElement("i",null)," ",e.hint):null)}}])&&o(t.prototype,n),d}(c.Component);f.defaultProps={type:"text"},f.propTypes={autocomplete:l.string,buttonClicked:l.func,buttonText:l.string,displayButton:l.bool,fieldName:l.string.isRequired,hideFromSessioncam:l.bool,hint:l.string,id:l.string.isRequired,isRequired:l.bool.isRequired,maxLength:l.number,placeholder:l.string,type:l.string.isRequired,validationMessage:l.string,value:l.string,valueChanged:l.func.isRequired},e.exports=f},25046:(e,t,n)=>{"use strict";var r=n(73980),o={env:r.env,publishProfile:r.PublishProfile,appInsightsLogLevels:{0:!0,1:!1,2:!1,3:!0,4:!0},scanLoggerLogLevels:{0:!0,1:!1,2:!1,3:!0,4:!0},urls:{getLocalUrl:function(e){return r.urls.getLocalUrl(e)},wwwRoot:r.urls.getWwwUrl("/"),basket:r.urls.getSecureUrl("/basket"),nvidiaBasket:r.urls.getSecureUrl("/nvidia-basket"),checkout:r.urls.getSecureUrl("/checkout"),forgottenPassword:r.urls.getSecureUrl("/forgottenpassword"),login:r.urls.getSecureUrl("/account"),jsonMenu:r.urls.getLocalUrl("/menu/json"),search:r.urls.getWwwUrl("/search"),ajaxBasket:r.urls.getLocalUrl("/ajax/basket"),ajaxLeadForms:r.urls.getLocalUrl("/ajax/leadforms"),ajaxQuery:r.urls.getLocalUrl("/ajax/query"),ajaxSearch:r.urls.getLocalUrl("/search/live"),userSession:{ping:r.urls.getLocalUrl("/usersession/ping/"),setProductListingView:r.urls.getLocalUrl("/usersession/setproductlistingview/"),setShowProductFilter:r.urls.getLocalUrl("/usersession/setshowproductfilter/"),setShowExVatPricing:r.urls.getLocalUrl("/usersession/setshowexvatpricing/")},guestCheckout:r.urls.getSecureUrl("/guestcheckout"),payPalCheckout:r.urls.getSecureUrl("/paypalcheckout"),collectionPickup:r.urls.getSecureUrl("/qcollectpickup"),wishLists:r.urls.getSecureUrl("/wishlists")}};e.exports=o},38392:e=>{"use strict";e.exports={none:-1,verbose:0,info:1,warn:2,error:3,exception:4}},15805:e=>{"use strict";e.exports={dev:1,www:2,secure:3}},73980:(e,t,n)=>{"use strict";var r=n(9976),o=n(15805),a=o.www,i={env:"RELEASE",publishProfile:a,servers:{www:{server:"https://www.scan.co.uk",appPath:""},secure:{server:"https://secure.scan.co.uk",appPath:"/web"}},urls:{getLocalUrl:function(e){var t=f(i,a===o.secure?r.secure:r.www);return a===o.dev?c(0,e):l(t,e)},getWwwUrl:function(e){var t=f(i,r.www);return a===o.dev?c(0,e):a===o.www?l(t,e):s(t,e)},getSecureUrl:function(e){var t=f(i,r.secure);return a===o.dev?c(0,e):a===o.secure?l(t,e):s(t,e)}}};function u(e,t){return e.getAttribute(t)}function c(e,t){return t}function l(e,t){return e.appPath+t}function s(e,t){return e.server+e.appPath+t}function f(e,t){return e.servers[t]}function d(e){if(e.length>0&&"/"===e.substr(-1))throw new Error('server path value "'+e+'" is not valid - server paths should not end with "/"')}function p(e){if(e.length>0&&"/"!==e.substr(0,1))throw new Error('app path value "'+e+'" is not valid - app paths should start with "/"')}!function(e){var t=document.getElementById("jsConfig");if(null!=t){var n=u(t,"data-www-server");null!==n&&(e.servers.www.server=n);var r=u(t,"data-www-path");null!==r&&(e.servers.www.appPath=r);var o=u(t,"data-secure-server");null!==o&&(e.servers.secure.server=o);var a=u(t,"data-secure-path");null!==a&&(e.servers.secure.appPath=a)}}(i),function(e){if(!e)throw new Error("No config has been configured");var t=f(e,r.www);d(t.server),p(t.appPath);var n=f(e,r.secure);d(n.server),p(n.appPath)}(i),e.exports=i},9976:e=>{"use strict";e.exports={www:"www",secure:"secure"}},75047:e=>{e.exports=[{displayName:"United Kingdom",countryCode:"GB"}]},20148:(e,t,n)=>{var r=n(30806),o=n(29064),a=n(67842),i=n(82982);r.onPageLoad((function(){var e=document.body;o()&&e.classList.add("feature-share"),a()&&e.classList.add("device-android"),i()&&e.classList.add("device-ios")}))},29064:e=>{e.exports=function(){return navigator&&navigator.share}},67842:e=>{e.exports=function(){return/android/i.test(navigator.userAgent.toLowerCase())}},12850:e=>{e.exports=function(){return navigator.userAgent.toLowerCase().indexOf("firefox")>-1}},44434:e=>{e.exports=function(){return/android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini/i.test(navigator.userAgent.toLowerCase())}},82982:e=>{e.exports=function(){return/iphone|ipad|ipod/i.test(navigator.userAgent.toLowerCase())}},75399:(e,t,n)=>{var r=n.g.window,o=r.document,a=n(19755);r.scan=r.scan||{};var i=!1;function u(e){r.gts=r.gts||[],r.gts=e.concat(r.gts)}r.scan.googleCertifiedShop={setup:function(){if(!0===i)throw new Error("Cannot set product id for google certified shop after initialisation");if(!(a(r).width()<900)){var e=[];e.push(["id","544802"]),e.push(["badge_position","BOTTOM_LEFT"]),e.push(["locale","en_GB"]),u(e);var t=o.createElement("script");t.type="text/javascript",t.async=!0,t.src="https://www.googlecommerce.com/trustedstores/api/js";var n=o.getElementsByTagName("script")[0];n.parentNode.insertBefore(t,n),i=!0}},setProductId:function(e){if(i)throw new Error("Cannot set product id for google certified shop after initialisation");var t=[];e&&(t.push(["google_base_offer_id",e]),t.push(["google_base_subaccount_id","7343545"]),t.push(["google_base_country","GB"]),t.push(["google_base_language","en"])),u(t)}}},72637:(e,t,n)=>{var r=n(41996),o=n(78917).getInstance,a={trackBasketChange:function(e){var t=o();t?t("event",e.quantityChange>=0?"add_to_cart":"remove_from_cart",{items:[{id:e.productId,name:e.name,category:e.category,brand:e.brand,price:e.price,quantity:Math.abs(e.quantityChange)}]}):r.warn("Google Analytics is undefined")},trackCheckoutStep:function(e,t){var n=o();if(n){var a={checkout_step:e};t&&(a.checkout_option=t),n("event",1===e?"begin_checkout":"checkout_progress",a)}else r.warn("Google Analytics is undefined")},trackCheckoutStepOption:function(e,t){var n=o();n?n("event","set_checkout_option",{checkout_step:e,checkout_option:t}):r.warn("Google Analytics is undefined")}};e.exports=a},81565:(e,t,n)=>{var r=n(41996),o=n(78917).getInstance;function a(e,t,n,a,i){var u=o();u?(u("event",t,{event_category:e,event_label:n,value:a?Math.round(a):null,non_interaction:void 0!==i&&!i}),r.log("GA Event: Category - "+e+", Action - "+t+", Label - "+n)):r.warn("Google Analytics is undefined")}var i={trackBanner:function(e,t){a("Banner Click",e,t,null,!1)},trackProductViewChange:function(e){a("Product view change",e)},trackCompareLaunch:function(e){e||r.error("Track compare launch requires the number of products"),a("Compare","show",e+" products")},trackFrequentlyBoughtTogether:function(e,t){a("FrequentlyBoughtTogether","AddToBasket",e.toString(),t)},trackLink:function(e,t,n){a(e,"Link Click "+t,n,null,!0)},trackPageView:function(e,t){a(e,"PageView",t)},trackContactEvent:function(e,t){a("Contact",e,t,null,!0)},trackFormSubmission:function(e,t){a("Form Submission","Submit",e,null,t)}};e.exports=i},78917:(e,t,n)=>{var r=n(41996),o=null;e.exports={getAnalyticsTrackingId:function(){return null===o&&function(){var e="script#gtag",t="data-analyticstrackingid",n=document.querySelector(e);if(n){var a=n.getAttribute(t);null!==a?o=a:r.error("Could not find attribute ".concat(e,"[").concat(t,"] for Analytics Tracking Id"))}}(),o},getInstance:function(){return n.g.window.gtag}}},2975:(e,t,n)=>{window.performance&&window.performance.mark&&window.performance.mark("Scan.Core Start"),n(10991);var r=n(19755);n(7440),n(91651),n.g.$=n.g.jQuery=r,n(7706),n(33241),n(6955),n(69405),n(99196),n(99850),n(27194),n(17145),n(64249),n(33803),n(27645),n(14364),n(37273),n(12284),n(55934),n(36711),n(76085),n(83578),n(88332),n(43439),n(10716),n(29476),n(47985),n(89103),n(72425),n(64662),n(84225),n(75399),n(57122),n(2312),n(46958),n(81877),n(68611),n(59934),n(86857),n(20170),n(20148),window.performance&&window.performance.mark&&(window.performance.mark("Scan.Core End"),window.performance.measure("Scan.Core","Scan.Core Start","Scan.Core End"))},67881:e=>{function t(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var n=function(){function e(t,n){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),e.assertFinanceProductProperties(t),!n)throw new Error("depositAmount is not defined");if(isNaN(n))throw new Error("depositAmount is not a number");this.financeProduct=t,this.depositAmount=Number(n),this.errorMessage=null,this.financeResult=null,this.financeOverview=null,this.setFinanceResult(),this.setFinanceOverview()}var n,r,o;return n=e,o=[{key:"assertFinanceProductProperties",value:function(e){for(var t=0,n=["apr","defermentPeriod","documentFee","documentFeeMaximum","documentFeeMinimum","documentFeePercentage","maxLoan","minLoan","monthlyRate","months","orderAmount","serviceFee","settlementFee"];t<n.length;t++){var r=n[t];if(!Object.prototype.hasOwnProperty.call(e,r))throw new Error("Expected financeProduct to contain '"+r+"' property")}}},{key:"calculateApr",value:function(e,t,n,r){var o,a,i,u,c,l,s=parseFloat(0),f=parseFloat(200),d=parseFloat(0);for(o=n>1?r+n+1:r+1,a=1;a<20;)s=(f+d)/2,i=parseFloat(Math.pow(1+s/100,1/12)),u=parseFloat(1/i),n<1?(c=parseFloat(t*(1-Math.pow(u,o))/(1-u)-t),l=parseFloat(0)):(c=parseFloat(t*(1-Math.pow(u,o-1))/(1-u)-t),l=parseFloat(t*(1-Math.pow(u,n))/(1-u)-t)),c-l<e?f=s:d=s,a++;return s}}],(r=[{key:"setFinanceResult",value:function(){var t=this.financeProduct,n=t.orderAmount,r=this.depositAmount,o=Number((n-r).toFixed(2)),a=t.interestRate,i=t.settlementFee;if(0===t.monthlyRate)throw new Error("monthlyRate is zero");if(o<t.minLoan)this.error="Loan amount "+o+" (cp:"+n+", d:"+r+") is below £"+t.minLoan.toFixed(2);else if(o>t.maxLoan)this.error="Loan amount "+o+" is above £"+t.maxLoan.toFixed(2);else{var u=parseFloat(t.serviceFee),c=function(){var e=t.documentFee+o*t.documentFeePercentage;return t.documentFeeMinimum>0&&e<t.documentFeeMinimum&&(e=t.documentFeeMinimum),t.documentFeeMaximum>0&&e>t.documentFeeMaximum&&(e=t.documentFeeMaximum),e}(),l=Math.pow(t.apr/100+1,1/12),s=function(){var e=o-u;return t.defermentPeriod>1&&(e*=Math.pow(l,t.defermentPeriod-1)),e}(),f=Math.floor(100*(0-s/((Math.pow(l,0-t.months)-1)/(l-1))))/100,d=f,p=function(){t.months;return f*(t.months-1)+d}(),m=function(){var n=e.calculateApr(o-u,f,t.defermentPeriod,t.months);if(c>0)throw new Error("Requires AprFromIrr and Xirr methods");return n}(),h=p-o,y=h+u+c,g=n+y,v=f===d?t.months+" monthly payments of £"+f.toFixed(2):t.months-1+" monthly payments of £"+f.toFixed(2)+" followed by a final payment of "+d.toFixed(2),b=g-r,w=g-n;this.financeResult={name:t.name,apr:t.apr,cashPrice:this.to2Dp(n),costOfLoan:this.to2Dp(w),depositAmount:this.to2Dp(r),defermentPeriod:t.defermentPeriod,loanAmount:this.to2Dp(o),loanRepayment:this.to2Dp(b),initialPayments:this.to2Dp(f),finalPayment:this.to2Dp(d),monthlyPaymentText:v,months:t.months,balancePayable:this.to2Dp(p),interest:this.to2Dp(h),chargeForCredit:this.to2Dp(y),amountPayable:this.to2Dp(g),serviceFee:this.to2Dp(u),documentFee:this.to2Dp(c),calculatedApr:this.to2Dp(m),settlementFee:this.to2Dp(i),interestRate:a}}}},{key:"setFinanceOverview",value:function(){if(this.financeResult){var e=this.financeProduct,t=this.financeResult;this.financeOverview="Pay a deposit of £"+this.depositAmount.toFixed(2)+" "+(t.serviceFee>0?"plus an arrangement fee of £"+t.serviceFee.toFixed(2)+" ":"")+(0===e.defermentPeriod?"then "+t.monthlyPaymentText+".":"and then nothing for "+e.defermentPeriod+" months. You can then choose to settle the balance and pay no interest, or repay the loan over "+t.monthlyPaymentText+".")+(e.settlementFee>0?" And settlement fee of "+e.settlementFee.toFixed(2)+".":" And no settlement fee.")}}},{key:"to2Dp",value:function(e){return parseFloat(e.toFixed(2))}}])&&t(n.prototype,r),o&&t(n,o),e}();e.exports=n},38984:(e,t,n)=>{var r=n(19755);r((function(){var e=r("[data-focuscontainer]"),t="input,select,button,a[href],textarea";e.on("keydown",t,(function(n){if(9===(n.keyCode||n.which)){var o=r(t,e).filter(":not(:disabled):visible"),a=o.filter("[tabindex]");a.length>0&&(o=r(a.toArray().sort((function(e,t){return parseInt(e.getAttribute("tabindex"),10)-parseInt(t.getAttribute("tabindex"),10)}))));var i=!n.shiftKey,u=o.length,c=o.index(this);i?c===u-1&&(o.first().focus(),n.preventDefault()):0===c&&(o.last().focus(),n.preventDefault())}}))}))},36373:(e,t,n)=>{"use strict";var r=n(19755);r((function(){r("#tracking-forms .tabHolder").on("click","button",(function(e){var t;(t=r(e.currentTarget)).addClass("on").siblings(".on").removeClass("on"),r("#tracking-forms form").hide().eq(t.index()).show()}))}))},72425:(e,t,n)=>{"use strict";var r=n(57481).addProducts,o=n(19755),a=n(41996),i=n(81565),u=n(2669),c=n(89166);function l(e){var t=0;return e.filter(":checked").each((function(e,n){var r;t+=(r=o(n).attr("data-price"),parseInt(r.replace(".",""),10))})),t}o(".frequentlyBoughtTogether form").each((function(e,t){var n=o(t),s=n.find('input[type="checkbox"]'),f=n.find('button[type="submit"]'),d=n.find(".product.buyGroup .priceAvailability");function p(){var e,t,n,r,a=s.filter(":checked"),i=s.length,u=a.length,c=i===u,p=0===u;e=l(s),t=Math.floor(e/100),r=(n=(e/100).toFixed(2)).substr(n.indexOf(".")+1),d.html(o('<span class="price"><small>&pound;</small>'+t+".<small>"+r+"</small>")),p?f.hide():c?f.text("Buy All").show():f.text("Buy "+u+" products").show()}n.on("submit",(function(e){e.preventDefault();var t=function(e){var t=[];return e.filter(":checked").each((function(e,n){t.push(o(n).val())})),t}(s),n=l(s);t.length>0&&(i.trackFrequentlyBoughtTogether(t,n/100),c.dispatch(r({actionSource:u.frequentlyBoughtTogether,webProductIds:t})),f.addClass("clicked"),a.info("submitted"))})),s.on("click",(function(){p()})),p()}))},49569:(e,t,n)=>{function r(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var a=n(19755),i=n(25046),u=n(42210),c=n(30186),l=n(41996),s=["Audio","Business","ComputerHardware","DeepLearning","Gaming","Graphics","Systems","Video"];a.fn.emailsubscribe=function(){return this.each((function(e,t){var n=a(t),o=function(e){var t,n=[],o=null!==(t=e.attr("data-prefs"))&&void 0!==t?t:"";if(null!==o&&o.length>0){var a,i=r(o.split(","));try{var u=function(){var e=a.value,t=s.find((function(t){return t.toLocaleLowerCase()===e.toLocaleLowerCase().trim()}));t?n.push(t):l.warn("The preference named '".concat(e,"' is not allowed and will be ignored"))};for(i.s();!(a=i.n()).done;)u()}catch(e){i.e(e)}finally{i.f()}}return n}(n);a("input.email",n).on("keydown",(function(e){13===e.keyCode&&(e.preventDefault(),a(".button",n).trigger("click"))})),a(".button",n).on("click",(function(){var e=a("input.email",n),t=a("p",n).html();if(null!==t&&0!==t.length){var l,s={email:e.val(),emailSubscriptionPrompt:t},f=r(o);try{for(f.s();!(l=f.n()).done;)s[l.value]=!0}catch(e){f.e(e)}finally{f.f()}a.ajax({type:"POST",url:i.urls.wwwRoot+"scanshot/subscribebyemail",data:JSON.stringify(s),dataType:"json",contentType:"application/json; charset=utf-8",success:function(t){switch(e.removeClass("error"),t.responseCode){case 0:e.val(""),u.Info("You are now subscribed to future Scanshots"),c.scanshotSubscribe();break;case 1:u.Error("An unexpected error occurred - please try again later");break;case 2:e.addClass("error"),u.Error("Your email address is invalid - please try again");break;default:u.Error("An unexpected response was returned - please try again later")}},error:function(){u.Error("An unexpected response was returned - please try again later")}})}else u.Error("There was a problem getting the prompt text - please report this error")}))}))}},62719:(e,t,n)=>{"use strict";var r=n(19755),o=n(41996);r((function(){r.fn.expandableBlock=function(){this.each((function(e,t){var n=r(t),a=r("div.expands",n),i=r('[data-action="expand"]',n),u=r('[data-action="collapse"]',n),c=r('[data-action="toggle"]',n),l=!1,s=100,f=800;0===c.length&&0===i.length&&o.warn("ExpandableBlock: You are missing an expand button"),0===c.length&&0===u.length&&o.warn("ExpandableBlock: You are missing a collapse button");var d=function(e,t){var r;if(l)r=s;else{var o=a.css("height","auto").height();a.css("height",s+"px"),r=o}a.animate({height:r+"px"},e?f:0,(function(){n.toggleClass("collapsed",l),n.toggleClass("expanded",!l),t&&"function"==typeof t&&t()}))};i.on("click",(function(){l=!1,d(!0)})),u.on("click",(function(){l=!0,d(!0)})),c.on("click",(function(){l=!l,d(!0,(function(){c.toggleClass("expanded",!l).toggleClass("collapsed",l)}))})),function(){if(n.data("expandableblock")){var e=n.data("expandableblock");l=function(e,t){if(t.mobileStart&&t.mobileMaxWidth){var n=parseInt(t.mobileMaxWidth,10);if(!isNaN(n)&&r(window).width()<=n){if("collapsed"===t.mobileStart)return!0;if("expanded"===t.mobileStart)return!1;o.warn("ExpandableBlock: Invalid value for settings mobileStart, allowed values (collapsed,expanded)")}}if(t.start){if("collapsed"===t.start)return!0;if("expanded"===t.start)return!1;o.warn("ExpandableBlock: Invalid value for settings start, allowed values (collapsed,expanded)")}return e.hasClass("collapsed")}(n,e),void 0!==e.height&&null!==e.height&&(s=parseInt(e.height,10)),e.animationTime&&(f=parseInt(e.animationTime,10))}}(),a.css("overflow","hidden"),d(!1)}))}}))},83481:(e,t,n)=>{var r=n(19755);r.fn.fixedPanel=function(){var e=r(document);return this.each((function(){var t=r(this),n=t.closest(".fixedPanelContainer");t.addClass("fixedPanel");var o,a,i,u=function(){var r=parseInt(t.css("margin-top"),10),o=parseInt(t.css("padding-top"),10);isNaN(r)&&(r=0),isNaN(o)&&(o=0);var a=r+o,i=n.offset().top+a,u=i+n.height(),c=e.scrollTop()+5;t.height()>=n.height()?t.removeClass("fixedTop").removeClass("fixedBottom"):c+t.outerHeight(!0)>=u-a?t.addClass("fixedBottom").removeClass("fixedTop"):c+r>=i?t.addClass("fixedTop").removeClass("fixedBottom"):t.removeClass("fixedTop").removeClass("fixedBottom")};r(window).on("scroll",u),r(window).on("resize",u),o=u,i=document.body.clientHeight,function e(){a=document.body.clientHeight,i!==a&&o(),i=a,setTimeout(e,200)}()}))}},14195:(e,t,n)=>{var r=n(19755),o={init:function(e,t){var n,o=r("<div></div>").addClass(t.containerClass).css("width",e.width()).css("height",e.height()).css("overflow","hidden").css("z-index",1e3),a=o.width(),i=o.height();e.data("opts",t),e.after(o),o.append(e);var u=!1,c=0,l=0,s=0,f=0,d=r("<img />").attr("src",e.attr(t.largeImageSourceAttribute)).attr("alt",t.altText).css("z-index",100).hide().on("load",(function(){u=!0,c=d.width(),l=d.height(),s=(c-a)/a,f=(l-i)/i}));o.append(d),o.hover((function(){u&&(r(this).css("cursor","all-scroll"),n&&clearTimeout(n),e.fadeOut(100),n=setTimeout((function(){d.fadeIn(200)}),100))}),(function(){r(this).css("cursor","auto"),n&&clearTimeout(n),d.fadeOut(100),n=setTimeout((function(){e.fadeIn(200)}),100)})),o.mousemove((function(e){var t=o.offset(),n=-(e.pageX-t.left)*s,a=-(e.pageY-t.top)*f;d.css({position:"relative",left:n+"px",top:a+"px"}),r("#info").text("px:"+e.pageX+" py:"+e.pageY+" x:"+n+" y:"+a+" xmultiplier:"+s+" ymultiplier:"+f)}))},update:function(){var e,t=this,n=!1,o=0,a=0,i=0,u=0,c=t.parent(),l=t.siblings().first(),s=c.width(),f=c.height(),d=t.data("opts");l.attr("src",t.attr(d.largeImageSourceAttribute)).hide().on("load",(function(){n=!0,o=l.width(),a=l.height(),i=(o-s)/s,u=(a-f)/f})),c.hover((function(){n&&(r(this).css("cursor","all-scroll"),e&&clearTimeout(e),t.fadeOut(100),e=setTimeout((function(){l.fadeIn(200)}),100))}),(function(){r(this).css("cursor","auto"),e&&clearTimeout(e),l.fadeOut(100),e=setTimeout((function(){t.fadeIn(200)}),100)})),c.mousemove((function(e){var t=c.offset(),n=-(e.pageX-t.left)*i,o=-(e.pageY-t.top)*u;l.css({position:"relative",left:n+"px",top:o+"px"}),r("#info").text("px:"+e.pageX+" py:"+e.pageY+" x:"+n+" y:"+o+" xmultiplier:"+i+" ymultiplier:"+u)}))}};r((function(){r.fn.imageZoom=function(e,t){if("init"===e){var n=r.extend({},r.fn.imageZoom.defaults,t);return this.each((function(e,t){var a=r(t);a.is("["+n.largeImageSourceAttribute+"]")&&o.init.apply(this,[a,n])}))}return o[e]?o[e].apply(this,Array.prototype.slice.call(arguments,1)):(r.error("Method "+e+" does not exist on jQuery.imagezoom"),null)},r.fn.imageZoom.defaults={containerClass:"image-zoom-window",largeImageSourceAttribute:"data-largeimagesrc",altText:""}}))},1669:(e,t,n)=>{var r=n(19755),o=n(89681);r.fn.passwordComplexity=function(){var e=new o.Checker;this.each((function(){var t=r(this),n=r("<div class='passwordComplexity'><div class='bar'>&nbsp;</div><div class='message'></div></div>");t.after(n),t.on("keyup",(function(){var a=t.val(),i=e.check(a);r(".message",n).text(i.message),i.result!==o.passwordComplexityResult.INVALID?i.result!==o.passwordComplexityResult.WEAK?i.result!==o.passwordComplexityResult.OK?i.result!==o.passwordComplexityResult.GOOD?i.result!==o.passwordComplexityResult.STRONG?i.result!==o.passwordComplexityResult.STRONGHORSE||n.attr("class","passwordComplexity correcthorsebatterystaple"):n.attr("class","passwordComplexity strong"):n.attr("class","passwordComplexity good"):n.attr("class","passwordComplexity ok"):n.attr("class","passwordComplexity weak"):n.attr("class","passwordComplexity hide")}))}))}},47144:(e,t,n)=>{var r=n(19755),o="hide";r.fn.readMore=function(e){var t=r.extend({},r.fn.readMore.defaults,e);return this.each((function(e,n){!function(e,t){var n=r(e),a=r("[data-readmorelevel]",n),i=r('[data-action="more"]',n),u=t.displayLevel||1,c=function(){var e=!0;a.each((function(t,n){var a=r(n),i=parseInt(a.data("readmorelevel"),10);a.toggleClass(o,i>u),i>u&&(e=!1)})),i.toggleClass(o,e)};i.on("click",(function(){u+=1,c()})),c()}(n,t)}))},r.fn.readMore.defaults={displayLevel:1}},31312:(e,t,n)=>{var r,o=n(19755);r="a, button",o.fn.slidingOffers=function(e){return this.each((function(t,n){!function(e,t){var n=o(e),a=o(".sliding-banner-pages > *",n),i=o(".sliding-banner-tabs",n),u=o(".sliding-banner-links > a",n),c=function(e,t){var n={};return Object.assign(n,e),Object.assign(n,t),n}(t,n.data("banneropts")),l=0,s=!0;if(null!==c.maxWidth){var f=function(){var e=o(window).width()<=c.maxWidth,t=s!==e;s=e,t&&(s?h(0):m())};f(),s||m(),o(window).on("resize",f)}if(i.each((function(e,t){var n=o(t),a=o(r,n);a.on("click",(function(e){e.preventDefault(),h(a.index(this))}))})),u.on("mouseover",(function(){h(u.index(this))})),n.length>0){var d=n[0];d.addEventListener("swipeleft",(function(){return y()})),d.addEventListener("swiperight",(function(){return g()}))}function p(){c.autoPage&&(clearTimeout(l),l=setTimeout((function(){return y()}),c.autoPageInterval))}function m(){a.show()}function h(e){s&&(0===c.slideAnimationDuration?(a.filter(":visible").hide(),a.eq(e).show(),i.each((function(t,n){var a=o(n);o(r,a).removeClass("on").eq(e).addClass("on")})),u.removeClass("on").eq(e).addClass("on")):a.filter(":visible").fadeOut(c.slideAnimationDuration,(function(){a.eq(e).fadeIn(c.slideAnimationDuration),i.each((function(t,n){var a=o(n);o(r,a).removeClass("on").eq(e).addClass("on")})),u.removeClass("on").eq(e).addClass("on")})),p())}function y(){if(s){var e=a.index(a.filter(":visible"))+1;e>a.length-1?h(0):h(e)}}function g(){if(s){var e=a.index(a.filter(":visible"))-1,t=a.length-1;h(e<0?t:e)}}o(".sliding-banner-next",n).on("click",(function(e){e.preventDefault(),y()})),o(".sliding-banner-previous",n).on("click",(function(e){e.preventDefault(),g()})),s&&h(0),p()}(n,o.extend({},o.fn.slidingOffers.defaults,e))}))},o.fn.slidingOffers.defaults={slideAnimationDuration:0,autoPage:!0,autoPageInterval:15e3,maxWidth:null,selectedPageIndex:0}},89103:(e,t,n)=>{var r=n(19755);n(63930),n(35835),(0,n(25427).setupTabsPlugin)(),n(12406),(0,n(4472).setupToggleSearchBarButtons)(),n(37027),n(38984),n(34214),n(99075),n(23856),n(49569),n(47144),n(62719),n(83481),n(31312),n(14195),n(1669),n(36373);var o=n(69733).setupInfoPageImages;function a(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document;r('[data-plugin="expandableBlock"]').expandableBlock(),r('[data-plugin="fixedPanel"]',e).fixedPanel(),r('[data-plugin="readmore"]',e).readMore(),r(".sliding-banner",e).slidingOffers(),r(".scanshot-subscribe",e).emailsubscribe(),r("div[data-passwordplugin] input",e).passwordComplexity(),o()}n(87905),n(21381),n(40336),n(49147),n(83710),n(69188),r((function(){a()})),e.exports={loadPlugins:a}},4472:(e,t,n)=>{var r=n(19755);function o(){r(".searchMobileBar").slideToggle(300,(function(){r('.searchMobileBar:visible input[name="q"]').focus()}))}e.exports={toggleSearchBar:o,setupToggleSearchBarButtons:function(){r((function(){r('[data-action="toggleSearch"]').on("click",(function(){o()}))}))}}},37027:(e,t,n)=>{"use strict";var r=n(19755);r((function(){var e=r("#myAccountMenu");if(0!==e.length){var t=r('[data-action="myAccountMenu"]'),n=r("#myAccountMenu .popupBackground, #myAccountMenu .close");t.attr("role","button"),t.attr("aria-label","open my account menu"),t.on("click",o),n.attr("role","button"),n.attr("aria-label","close"),n.on("click",o),a()}function o(){e.toggle(),a()}function a(){var r=e.is(":visible");t.attr("aria-pressed",r),n.attr("aria-pressed",!r)}}))},83710:(e,t,n)=>{"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function a(e,t,n){return t&&o(e.prototype,t),n&&o(e,n),e}var i=n(19755),u=n(41996),c=n.g.window,l=function(){function e(){r(this,e),this.popupShown=!1}return a(e,[{key:"containerExists",value:function(){return Object.prototype.hasOwnProperty.call(this,"$popup")&&void 0!==this.$popup}},{key:"createContainer",value:function(){this.$popup=i('<div id="popup">    <div id="popup-container">       <div>           <a class="close">               <span>Close</span>           </a>       </div>     </div></div><div id="popup-background"></div>'),i("body").append(this.$popup),this.$popupContainer=i("#popup-container"),this.$popupBackground=i("#popup-background");var e=this,t=function(t){t.preventDefault(),e.hide()};i(".close",this.$popup).on("click",t),this.$popupBackground.on("click",t)}},{key:"deleteContainer",value:function(){this.$popup.remove(),this.$popup=void 0,this.$popupContainer=void 0,this.$popupBackground=void 0}},{key:"show",value:function(e){if(!0!==this.popupShown){this.containerExists()||this.createContainer();var t=e.getIframe();this.$popupContainer.width(e.containerWidth),this.$popupContainer.append(t),this.popupShown=!0}else u.error("Popup already shown, cannot display two popups")}},{key:"hide",value:function(){this.deleteContainer(),this.popupShown=!1}}]),e}(),s=function(){function e(t,n,o,a,i){r(this,e),this.container=t,this.url=n,this.width=o,this.height=a,this.containerWidth=i}return a(e,[{key:"show",value:function(){this.container.show(this)}},{key:"getIframe",value:function(){var e=i('<iframe frameborder="0"></iframe>');return e.attr("src",this.url),e.attr("width",this.width),e.attr("height",this.height),e.attr("scrolling",this.scrolling?"yes":"no"),e}},{key:"hide",value:function(){this.container.hide()}}]),e}(),f=function(){function e(t,n,o,a,i){r(this,e),this.url=t,this.windowWidth=n,this.windowHeight=o,this.windowTop=a,this.windowLeft=i}return a(e,[{key:"show",value:function(){var e=this.getFeaturesString();c.open(this.url,"scanpopup",e)}},{key:"getFeaturesString",value:function(){var e="",t=function(t){""!==e&&(e+=","),e+=t};return this.windowHeight&&t("height="+this.windowHeight),this.windowWidth&&t("width="+this.windowWidth),this.windowTop&&t("top="+this.windowTop),this.windowLeft&&t("left="+this.windowLeft),t("scrollbars=no"),t("toolbar=no"),t("titlebar=no"),t("resizable=no"),t("menubar=no"),e}}]),e}();i((function(){var e=new l;i('[data-plugin="popup-iframe"]').on("click",(function(t){var n=i(t.currentTarget);return new s(e,n.data("url"),n.data("width"),n.data("height"),n.data("divwidth")).show(),t.preventDefault(),!1})),i('[data-plugin="popup-window"]').on("click",(function(e){var t=i(e.currentTarget);return new f(t.data("url"),t.data("width"),t.data("height"),e.pageY-t.data("height"),e.pageX-t.data("width")).show(),e.preventDefault(),!1}))}))},40336:(e,t,n)=>{"use strict";var r=n(19755);r((function(){r(".reviewMobile").on("click",(function(){var e=r('[data-showtab="reviews"]'),t=100;if(e.length){e.click();var n=r("productInfoStickBar");n.length&&0===n.offset.top&&(t=n.height+5),r("html, body").animate({scrollTop:Math.max(e.offset().top-t,0)},400)}}))}))},69733:(e,t,n)=>{"use strict";var r=n(19755),o=n(41996),a=350;e.exports={setupInfoPageImages:function(){var e=document.querySelector(".media-window");if(e){e.addEventListener("swipeleft",(function(){return s(1)})),e.addEventListener("swiperight",(function(){return s(-1)}));var t,n,i=r(".productImages .thumbnails span"),u=r(".media-window .media-item"),c=r(".productImages .leftArrow"),l=r(".productImages .rightArrow");i.on("click",(function(e){var t=i.index(e.currentTarget),n=u.eq(t);!1===n.is(":visible")?(u.filter(":visible").fadeOut(a),n.fadeIn(a),f(t),o.log("Clicked thumbnail with index "+t)):o.log("Clicked currently visible thumbnail")})),c.on("click",(function(e){e.preventDefault(),s(-1)})),l.on("click",(function(e){e.preventDefault(),s(1)})),t=0,n=null,u.each((function(e,o){var a=r(o);!0===a.is(":visible")&&(null===n&&(n=e),(t+=1)>1&&a.hide())})),null!==n&&f(n)}function s(e){var t=0,n=u.length-1;u.each((function(e,n){!0===r(n).is(":visible")&&(t=e)}));var i=t+e;if(i<0?i=0:i>n&&(i=n),i!==t){var c=u.eq(i);u.filter(":visible").fadeOut(a),c.fadeIn(a),f(i),o.log("Displaying the thumbnail with index "+i)}else o.log("Clicked back/forward, same as the current index, no change")}function f(e){var t=u.length-1;c.css("visibility",e>0?"visible":"hidden"),l.css("visibility",e<t?"visible":"hidden")}}}},21381:(e,t,n)=>{"use strict";function r(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var o=n(19755),a=n(41996),i=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.isShown=!1,this.barSelector=".productInfoStickBar",this.buyButtonSelector=t}var t,n;return t=e,(n=[{key:"show",value:function(){var e=o(this.barSelector);e.is(":visible")||e.slideDown(300),this.isShown=!0,a.log("StickyBar: showing")}},{key:"hide",value:function(){o(this.barSelector).slideUp(300),this.isShown=!1,a.log("StickyBar: hiding")}},{key:"wireUpEvents",value:function(){var e=this;o(window).on("scroll",(function(){var t=o(e.buyButtonSelector);if(0!==t.length){var n=t.offset().top+t.outerHeight();o(window).scrollTop()>n&&!1===e.isShown?e.show():o(window).scrollTop()<n&&!0===e.isShown&&e.hide()}else a.log("StickyBar: But button was not found")}))}}])&&r(t.prototype,n),e}();o((function(){var e=o(".productInfoStickBar");if(e.length>0){var t=e.attr("data-forbuybutton"),n=t?"#".concat(t):".productPageActionColumn .buyButton.large";a.info("STICKY: "+n),new i(n).wireUpEvents()}}))},87905:(e,t,n)=>{"use strict";var r=n(19755),o=n(41996);r((function(){if(0!==r(".zoom-view").length){var e=".zoom-view",t=!1,n=[],a=null,i=function(){var e=r(".page-overlay");e.hide(300),o.log("ZoomView: hiding "+e.length+" elements")},u=function(e){var n;(n=r(".page-overlay")).is(":visible")||n.show(400),o.log("ZoomView: showing"),a=e,o.log("ZoomView: showing image "+e);var i=r('.lrg-thumbs img[data-zoomimageid="'+e+'"]'),u=i.data("zoomlargeurl"),c=i.data("zoomsuperurl");!0===t?(r("img#imageZoomViewXLarge").attr("src",u).attr("data-largeimagesrc",c).imageZoom("update"),o.log("ZoomView: Updating")):(r("img#imageZoomViewXLarge").attr("src",u).attr("data-largeimagesrc",c).imageZoom("init"),t=!0,o.log("ZoomView: Loading First Time")),r(".lrg-thumbs > a").removeClass("on"),i.parent().addClass("on")},c=function(e){var t=n.length-1;return e<0?n[t]:e>t?n[0]:n[e]};r(".zoom-view-close, .zoom-view button.close").on("click",i),r(e).on("click",(function(e){e.stopPropagation()})),r("img[data-zoomimageid]").each((function(e,t){var o=r(t).data("zoomimageid");n.includes(o)||n.push(o),r(t).parent().on("click",(function(e){u(o),e.preventDefault()}))}));var l=document.querySelector(e);l&&(l.addEventListener("swipeleft",(function(){if(0!==n.length)if(null===a)u(0);else{var e=n.indexOf(a);u(c(e+1))}})),l.addEventListener("swiperight",(function(){if(0!==n.length)if(null===a)u(0);else{var e=n.indexOf(a);u(c(e-1))}})),l.addEventListener("swipeup",i),l.addEventListener("swipedown",i))}}))},12406:(e,t,n)=>{"use strict";var r=n(19755);r((function(){var e="hide";r(".categoryPage .category .relatedProducts").each((function(t,n){var o=r(n),a=o.find("ul.productColumns li"),i=o.find('[data-action="previous"]'),u=o.find('[data-action="next"]'),c=0,l=a.length<3?0:a.length-3;function s(){var t=c,n=c+3-1;i.toggleClass(e,c<=0),u.toggleClass(e,c>=l),a.each((function(o,a){o>=t&&o<=n?r(a).removeClass(e):r(a).addClass(e)}))}i.on("click",(function(){c<=0||(c--,s())})),u.on("click",(function(){c>=l||(c++,s())})),s()}))}))},84225:(e,t,n)=>{"use strict";var r=n(19755);r((function(){var e,t=function(e){var t=r(window).height();r(document).scrollTop()>t/2?e.show(250):e.hide(250)};e=function(){var e=r('<div id="scrollHelper"><a href="javascript://" aria-label="scroll to top">&nbsp;</a></div>');return e.on("click",(function(){window.scrollTo(0,0)})),e}(),r("body").append(e),r(window).on("scroll",(function(){t(e)})),t(e)}))},64662:(e,t,n)=>{"use strict";var r=n(19755),o=n(41996);r((function(){r(document).on("click","a[data-scrollto]",(function(e){e.preventDefault();var t=r(e.currentTarget),n=t.attr("data-scrollto"),a=parseInt(t.attr("data-scrollto-offset")||0,10),i=r(n);i.is(":visible")&&(o.info("scrolling to "+n+" with offset "+a),r.scrollTo(i,500,{easing:"easeInBack",offset:{top:a}}))}))}))},49147:(e,t,n)=>{"use strict";var r=n(19755),o=n(41996),a='button[data-action="share"]',i=window.navigator;r((function(){r(a).length&&r(document).on("click",a,(function(e){e.preventDefault();var t=r(e.currentTarget).attr("data-share-title")||window.document.title,n=window.location.href,a=new URLSearchParams(window.location.search);a.set("utm_source","webshare"),a.set("utm_medium","link"),a.set("utm_campaign","share"),window.location.search?n=n.replace(window.location.search,"?"+a.toString()):n+=("?"!==n.slice(-1)?"?":"")+a.toString();var u={title:"SCAN",text:t,url:n};i.share(u).catch((function(e){return o.error("Sharing Failed: "+e)}))}))}))},35835:(e,t,n)=>{var r=n(19755),o=new function(e){var t=this;t.selector=".siteHelp",t.$elements=null,t.isLoaded=!1,t.isOpen=!1,t.liveChatVisibility=0,t.loadElements=function(){t.$elements=r(this.selector),t.isLoaded=!0,t.$elements.on("click","button.help",(function(){t.isOpen=!t.isOpen,t.refresh()})),t.$elements.on("click","button.close",(function(){t.isOpen=!1,t.refresh()}))},t.setLiveChatVisibility=function(){return{hidden:function(){e(0)},minimised:function(){e(1)},maximised:function(){e(2)}};function e(e){t.liveChatVisibility=e,t.refresh()}},t.refresh=function(){if(t.isLoaded){t.$elements.toggleClass("open",t.isOpen),t.$elements.removeClass("liveChatMinimised liveChatMaximised");var e=1===t.liveChatVisibility?"liveChatMinimised":2===t.liveChatVisibility?"liveChatMaximised":"";t.$elements.addClass(e)}}}(".siteHelp");r((function(){o.loadElements()})),e.exports=o},34214:(e,t,n)=>{var r=n(19755);r((function(){r('select[data-eventhandlers="submitOnChange"]').on("change",(function(e){r(e.target).closest("form").submit()}))}))},25427:(e,t,n)=>{"use strict";function r(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var a=n(19755),i=n(41996),u=n(90327),c=function(e,t){var n=document.querySelector('[data-tab="'.concat(t,'"]'));if(n){document.querySelectorAll('[data-tabgroup="'.concat(e,'"]:not([data-tab="').concat(t,'"])')).forEach((function(e){return e.classList.toggle("hide",!0)})),n.classList.toggle("hide",!1);var r=document.querySelector('[data-showtab="'.concat(t,'"]')),o=r.closest("div").querySelectorAll('button[data-showtab]:not([data-showtab="'.concat(t,'"])'));r.classList.toggle("selected",!0),o.forEach((function(e){return e.classList.toggle("selected",!1)}))}else i.error('Tab "'.concat(t,"' could not be found"))},l=function(e,t){-1!==d.indexOf(e)?function(e,t){u.setValue(e,t)}(e,t):c(e,t)},s=function(e){var t=document.querySelector('[data-tabgroup="'.concat(e,'"]:not(.hide)'));t&&a.scrollTo(a(t))},f=!1,d=[];e.exports={setupTabsPlugin:function(){return a((function(){if(f=!0,d=function(){var e,t,n=[],o=r((e=[],document.querySelectorAll("[data-tabgroup]").forEach((function(t){var n=t.getAttribute("data-tabgroup");-1===e.indexOf(n)&&e.push(n)})),e));try{for(o.s();!(t=o.n()).done;){var a=t.value;u.getValue(a)&&n.push(a)}}catch(e){o.e(e)}finally{o.f()}return n}(),a("button[data-showtab]").on("click",(function(){var e=this.getAttribute("data-showtab"),t=function(e){var t=document.querySelector('[data-tab="'.concat(e,'"]'));return t?t.getAttribute("data-tabgroup"):null}(e);t?l(t,e):i.error("Could not get tabGroup for tab ".concat(e))})),d.length>0){var e,t=r(d);try{for(t.s();!(e=t.n()).done;){var n=e.value,o=u.getValue(n);c(n,o)}}catch(e){t.e(e)}finally{t.f()}u.onHashChange((function(){var e,t=r(d);try{for(t.s();!(e=t.n()).done;){var n=e.value,o=u.getValue(n);c(n,o)}}catch(e){t.e(e)}finally{t.f()}}))}var p=u.getValue("tabScroll");p&&setTimeout((function(){s(p)}),1e3)}))},selectAndScrollToTab:function(e,t){f?(i.log("Selecting tab ".concat(t," for group ").concat(e)),l(e,t),s(e)):i.warn("Tabs have not been setup yet")}}},63930:(e,t,n)=>{var r=n(19755),o=n.g.window;r((function(){var e,t,n;e=r("header"),t=r("#toolbar:not(.hideFixed)"),n=!1,0!==e.length&&0!==t.length&&r(o).on("scroll",(function(o){var a=e.offset().top+e.outerHeight(!0),i=r(o.currentTarget).scrollTop()>a;i!==n&&(t.toggleClass("fixedTop",i),n=i)}))}))},99075:(e,t,n)=>{"use strict";var r=n(19755),o=n(21267);r((function(){r('[data-action="vatToggle"]').on("click",(function(e){!0===r(e.currentTarget).data("exvat")?o.setShowExVatPricing(!1).done((function(){window.location.reload()})):o.setShowExVatPricing(!0).done((function(){window.location.reload()}))}))}))},23856:(e,t,n)=>{"use strict";var r=n(19755);r((function(){r(".wishlist-cont .wishListItem").each((function(e,t){var n=r(t),o=n.find(".description").text(),a=n.find(".wishListGuid").val(),i=n.find(".basketLineId").val();n.find("button.remove").on("click",(function(){r("#popup .sub-heading").text(o),r("#popup .wishListGuid").val(a),r("#popup .basketLineId").val(i),r("#popup").show()}))})),r("#popup .btnNo").on("click",(function(){r("#popup").hide()})),r("#popup .btnYes").on("click",(function(){r("#popup form.deleteForm").submit()})),r("div.rename-duplicate").each((function(e,t){var n=r(t),o=n.find("form.duplicate-form"),a=n.find("form.rename-form"),i=n.find("button.duplicate"),u=n.find("button.rename"),c=250;function l(e){var t=r(e.target).find("input[type=text]").val().length;(t<=0||t>100)&&e.preventDefault()}i.on("click",(function(){o.is(":visible")?(o.slideUp(c),i.removeClass("on")):(a.slideUp(c,(function(){o.slideDown(c)})),u.removeClass("on"),i.addClass("on"))})),u.on("click",(function(){a.is(":visible")?(a.slideUp(c),u.removeClass("on")):(o.slideUp(c,(function(){a.slideDown(c)})),i.removeClass("on"),u.addClass("on"))})),a.on("submit",(function(e){l(e)})),o.on("submit",(function(e){l(e)}))}))}))},69188:(e,t,n)=>{"use strict";var r=n(19755),o=n(41996),a=function(e){var t=r(e.currentTarget),n=t.data("youtubeid"),a=t.data("width")||350,i=t.data("height")||245;if(n){var u=r('<iframe frameborder=""0"" allowfullscreen></iframe>');u.attr("width",a),u.attr("height",i),u.attr("src","//www.youtube-nocookie.com/embed/"+n+"?rel=0"),t.replaceWith(u)}else o.error("Youtube id not found, could not load iframe")};r((function(){r('[data-plugin="youtube"]').on("click",a)}))},99196:()=>{!function(e,t){"function"!=typeof e.CustomEvent&&(e.CustomEvent=function(e,n){var r=n||{bubbles:!1,cancelable:!1,detail:void 0},o=t.createEvent("CustomEvent");return o.initCustomEvent(e,r.bubbles,r.cancelable,r.detail),o},e.CustomEvent.prototype=e.Event.prototype)}(window,document)},99850:()=>{!function(e){e.addEventListener("touchstart",(function(e){i=e.target,a=Date.now(),t=e.touches[0].clientX,n=e.touches[0].clientY,r=0,o=0}),!1),e.addEventListener("touchmove",(function(e){if(t&&n){var a=e.touches[0].clientX,i=e.touches[0].clientY;r=t-a,o=n-i}}),!1),e.addEventListener("touchend",(function(e){if(i===e.target){var u=Date.now()-a,c=Math.abs(r),l=Math.abs(o),s=c>l;if((s?c:l)>20&&u<500){var f=s?r>0?"swipeleft":"swiperight":o>0?"swipeup":"swipedown";i.dispatchEvent(new CustomEvent(f,{bubbles:!0,cancelable:!0}))}t=null,n=null,a=null}}),!1);var t=null,n=null,r=null,o=null,a=null,i=null}(document)},6955:()=>{Array.prototype.forEach||(Array.prototype.forEach=function(e,t){var n,r;if(null==this)throw new TypeError(" this is null or not defined");var o=Object(this),a=o.length>>>0;if("function"!=typeof e)throw new TypeError(e+" is not a function");for(arguments.length>1&&(n=t),r=0;r<a;){var i;r in o&&(i=o[r],e.call(n,i,r,o)),r++}})},69405:()=>{try{if(!window.localStorage||!window.sessionStorage)throw new Error("exception");localStorage.setItem("test",1),localStorage.removeItem("test")}catch(e){!function(){var e=function(e){function t(e,t,n){var r,o;n?((r=new Date).setTime(r.getTime()+864e5*n),o="; expires="+r.toGMTString()):o="",document.cookie=e+"="+t+o+"; path=/"}function n(n){var o=encodeURIComponent(JSON.stringify(n));"session"===e?t(r(),o):t("localStorage",o,365)}function r(){return window.name||(window.name=(new Date).getTime()),"sessionStorage"+window.name}var o=function(){var t=function(e){var t,n,r=e+"=",o=document.cookie.split(";");for(t=0;t<o.length;t++){for(n=o[t];" "===n.charAt(0);)n=n.substring(1,n.length);if(0===n.indexOf(r))return n.substring(r.length,n.length)}return null}("session"===e?r():"localStorage");return t?JSON.parse(decodeURIComponent(t)):{}}();return{length:0,clear:function(){o={},this.length=0,t("session"===e?r():"localStorage","",365)},getItem:function(e){return void 0===o[e]?null:o[e]},key:function(e){var t=0;for(var n in o){if(t===e)return n;t++}return null},removeItem:function(e){delete o[e],this.length--,n(o)},setItem:function(e,t){o[e]=String(t),this.length++,n(o)}}},t=new e("local"),n=new e("session");try{window.localStorage=t,window.sessionStorage=n}catch(e){}window.localStorage.__proto__=t,window.sessionStorage.__proto__=n}()}},25065:(e,t,n)=>{var r=["enableSpeech","onChange","value"];function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var i=n(67294),u=n(45697),c=n(94184),l=n(20285);function s(e){var t=e.enableSpeech,n=e.onChange,u=e.value,s=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}(e,r),f=function(e,t){return n(e,t)},d=l({onResult:function(e){return f(e,!0)},onError:function(e){return console.error(e)}}),p=t&&d.isAvailable;return i.createElement(i.Fragment,null,i.createElement("input",function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?o(Object(n),!0).forEach((function(t){a(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):o(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({className:c({"speech-available":p,"speech-listening":d.isListening}),onChange:function(e){return f(e.target.value,!1)},value:u},s)),p&&i.createElement("button",{type:"button",className:"mic",onClick:function(){return d.isListening?d.stop():d.start()}}))}s.propTypes={enableSpeech:u.bool.isRequired,onChange:u.func.isRequired,value:u.string.isRequired},e.exports=s},43239:(e,t,n)=>{var r=n(67294).useEffect;e.exports=function(e,t,n){return r((function(){return e.addEventListener(t,n),function(){return e.removeEventListener(t,n)}}))}},20285:(e,t,n)=>{function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var o=n(67294),a=o.useMemo,i=o.useState,u=window.SpeechRecognition||window.webkitSpeechRecognition;e.exports=function(e){var t,n,o=e.onResult,c=e.onError,l=(t=i(!1),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}}(t,n)||function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),s=l[0],f=l[1],d=a((function(){if(!u)return null;var e=new u;return e.continuous=!1,e.interimResults=!1,e.onerror=function(e){c(e)},e.onstart=function(){f(!0)},e.onresult=function(t){t.results.length>0&&o(t.results[0][0].transcript),e.stop()},e.onend=function(){f(!1)},e}));return{isAvailable:null!==d,isListening:s,start:function(){d&&d.start()},stop:function(){d&&d.stop()}}}},28227:e=>{function t(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function n(e){for(var n=1;n<arguments.length;n++){var o=null!=arguments[n]?arguments[n]:{};n%2?t(Object(o),!0).forEach((function(t){r(e,t,o[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):t(Object(o)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(o,t))}))}return e}function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var o=null,a={},i=function(){return n({},a)};e.exports={getReducers:i,register:function(e,t){a=n(n({},a),{},r({},e,t)),o&&o(i())},setChangeListener:function(e){o=e}}},89166:(e,t,n)=>{var r=n(14890),o=r.applyMiddleware,a=r.combineReducers,i=r.createStore,u=n(28227),c=n(53894).Z,l=n(41996),s=function(e){var t=Object.keys(e);return t.length>0?(l.log("Updating reducers - ".concat(t.join(", "))),a(e)):(l.log("No reducers so setting up empty function"),function(){})},f=i(s(u.getReducers()),o(c));u.setChangeListener((function(e){f.replaceReducer(s(e))})),e.exports=f},29476:(e,t,n)=>{var r=new(n(42653))(".lazy-load-image",{lazyload:!0,lazyloadOffset:250}),o={updateImages:function(){r.scrolled=!0},addNewImages:function(){r.add(".lazy-load-image")}};n.g.lazyImageLoader=o,e.exports=o},47985:()=>{document.addEventListener("DOMContentLoaded",(function(){var e=[].slice.call(document.querySelectorAll("video.lazy"));if("IntersectionObserver"in window){var t=new IntersectionObserver((function(e){e.forEach((function(e){if(e.isIntersecting){for(var n in e.target.children){var r=e.target.children[n];"string"==typeof r.tagName&&"SOURCE"===r.tagName&&(r.src=r.dataset.src)}e.target.load(),e.target.classList.remove("lazy"),t.unobserve(e.target)}}))}));e.forEach((function(e){return t.observe(e)}))}}))},41996:(e,t,n)=>{var r=n(25046),o=n(38392),a=n(67588),i=n(10991),u=function(e,t,n,a){if(!0===r.scanLoggerLogLevels[e]&&i){var u="";for(var c in o)e===o[c]&&(u=c);var l={severity:u,message:t};if(n)for(var s in n)if(Object.prototype.hasOwnProperty.call(n,s)){var f=n[s];l[s]="string"==typeof f||"boolean"==typeof f||"number"==typeof f?f:JSON.stringify(f)}if(a)for(var d in a)if(Object.prototype.hasOwnProperty.call(a,d)){var p=a[d];l["error"+d.replace(/\w+/g,(function(e){return e[0].toUpperCase()+e.slice(1).toLowerCase()}))]="string"==typeof p||"boolean"==typeof p||"number"==typeof p?p:JSON.stringify(p)}i.create(l)}};n.g.window.addEventListener("error",(function(e){u(o.error,e.message,null,e)}));var c=function(e,t,n,o){(function(e,t,n,o){if(!0===r.appInsightsLogLevels[e]){var i=a.getInstance();i&&(o?i.trackException({exception:o}):i.trackTrace({message:t,severity:e,properties:n}))}})(e,t,n,o),u(e,t,n,o)},l={error:function(){for(var e,t,n,r=arguments.length,a=new Array(r),i=0;i<r;i++)a[i]=arguments[i];a.forEach((function(r){if(r){var o=Boolean(r.stack&&r.message),a=!o&&Boolean(r.code&&r.message&&r.name);o?e={message:r.message,stack:r.stack}:a?e={code:r.code,message:r.message,name:r.name}:"string"==typeof r||r instanceof String?n=r:t=r}})),!n&&e&&(n=e.message),c(o.error,n,t,e)},warn:function(e,t){c(o.warn,e,t)},info:function(e,t){c(o.info,e,t)},trace:function(e,t){c(o.verbose,e,t)},log:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o.info;c(t,e)}};e.exports=l},42210:(e,t,n)=>{function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function o(e){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var a=n(41996),i=n(19755),u=n(22558),c={APPEND:1,REPLACE_EXISTING:2,IGNORE_ADDITIONAL:3};function l(){i("#messages").on("click",".message button.close",(function(e){var t=e.currentTarget;i(t).closest(".message").hide()}))}function s(e,t,n){var r=n&&n.actionType||c.APPEND,o=n&&n.messageKey||"";if(r!==c.APPEND&&("string"==typeof o&&0!==o.length||(a.warn("Notifictions - messageKey is required for all action types other than append, actionType will be ignored"),r=c.APPEND),r===c.APPEND||/^[A-Za-z0-9]+$/.test(o)||(a.warn("Notifications - messageKey contains invalid characters and will be ignored"),r=c.APPEND)),r!==c.APPEND){var u=i("#messages .message").filter(":visible").filter('[data-key="'+o+'"]');if(r===c.IGNORE_ADDITIONAL&&u.length>0)return;r===c.REPLACE_EXISTING&&u.length>0&&u.remove()}i("#messages").length||(i("body").append('<div id="messages"></div>'),l());var s=7e3+1500*i("#messages .message").length;i(function(e,t,n){return'<div class="message '+t+'" data-key="'+n+'">     <div>       <button class="close">Close</button>        <p>'+e+"</p>     </div>   </div>"}(e,t,o)).appendTo("#messages").delay(s).fadeOut(1500,(function(){i(this).remove()}))}var f=function(e){return"string"==typeof e?e:e.message};function d(e,t){var n=f(e);a.log(n),s(n,"info",t)}function p(e,t){var n=f(e);a.warn(n),s(n,"warning",t)}function m(e,t){var n=f(e);a.error(n),s(n,"caution",t),u.addEvent("Notification Error","Seen")}function h(e,t){var n=function(e){var n=e;e.messageType&&(n.importance=e.messageType),arguments[1]&&"string"==typeof e&&(n={message:e,importance:arguments[1]});var r=null;switch(t&&"object"===o(t)&&Object.prototype.hasOwnProperty.call(t,"actionType")&&(r=t),n.importance){case 3:m(n,r);break;case 2:p(n,r);break;default:d(n,r)}};if(Array.isArray(e)){var a,i=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0,a=function(){};return{s:a,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(e);try{for(i.s();!(a=i.n()).done;)n(a.value)}catch(e){i.e(e)}finally{i.f()}}else n(e)}var y={info:d,warning:p,error:m,notify:h,Info:d,Warning:p,Error:m,Notify:h,actionTypes:c};i((function(){l()})),n.g.scan=n.g.scan||{},n.g.scan.notifications=y,e.exports=y},89681:e=>{var t={},n={INVALID:-1,WEAK:1,OK:2,GOOD:3,STRONG:4,STRONGHORSE:100};t.Checker=function(){var e=["123456","password","12345","12345678","qwerty","123456789","1234","baseball","dragon","football","1234567","monkey","letmein","abc123","111111","mustang","access","shadow","master","michael","superman","696969","123123","batman","trustno1"];return this.check=function(t){return function(t){if(!("string"==typeof t||t instanceof String))return{result:n.INVALID,message:""};var r=/[A-Z]/.test(t),o=/[a-z]/.test(t),a=/[0-9]/.test(t),i=0,u=0;r&&u++,o&&u++,a&&u++,/[^A-Za-z0-9]/.test(t)&&u++;for(var c=0;c<t.length;c++){var l=t[c];t.indexOf(l)===c&&(i+=1)}return"correcthorsebatterystaple"===t?{result:n.STRONGHORSE,message:"Your password is strong"}:function(t){return e.indexOf(t)>-1}(t)?{result:n.WEAK,message:"Your password is one of the most commonly used passwords and easy to guess, we recommend using a mixture of upper, lowercase, numbers and punctuation characters"}:a&&1===u?{result:n.WEAK,message:"Your password is very weak, we recommend using a mixture of upper, lowercase, numbers and punctuation characters"}:t.length<8?{result:n.WEAK,message:"Your password is short, we recommend making your password longer and using a mixture of upper, lowercase, numbers and punctuation characters"}:i<=3?{result:n.WEAK,message:"Your password is weak, we recommend using a mixture of upper, lowercase, numbers and punctuation characters"}:(t.length<12&&(u-=1),t.length>=15&&(u+=1),u<=1?{result:n.OK,message:"Your password is okay, we recommend using a longer password with a mixture of upper, lowercase, numbers and punctuation characters"}:2===u?{result:n.GOOD,message:"Your password is good"}:u>2?{result:n.STRONG,message:"Your password is strong"}:null)}(t)},this},t.passwordComplexityResult=n,e.exports=t},95360:(e,t,n)=>{var r=n(41996),o=n(72637),a=n(8250),i={trackBasketChange:function(e){o.trackBasketChange(e),a.trackBasketChange(e),r.info("BasketTracking: "+(e.quantityChange>=0?"added":"removed")+" "+Math.abs(e.quantityChange)+" of '"+e.name+"' ("+e.productId+")")}};e.exports=i},90327:e=>{"use strict";function t(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}e.exports=new function(e){var n=this,r=[],o=[];function a(){for(var e=[],t=0;t<r.length;t++)e.push(encodeURIComponent(r[t][0])+"="+encodeURIComponent(r[t][1]));return e.join("&")}function i(){r=[];var t=e.location.hash;if(null!=t&&0!==t.length&&("#"===t[0]&&(t=t.substr(1)),null!=t&&0!==t.length)){for(var n=t.split("&"),o=0;o<n.length;o++){var a=n[o].split("="),i=decodeURIComponent(a[0]),c=decodeURIComponent(a[1]);r.push([i,c])}u()}}function u(){r.sort((function(e,t){return e[0].toLowerCase()>t[0].toLowerCase()}))}n.getValue=function(e){if(null==e||0===e.length)return null;for(var t=e.toLowerCase(),n=0;n<r.length;n++)if(r[n][0].toLowerCase()===t)return r[n][1];return null},n.setValue=function(t,n){if(null!=t&&0!==t.length){var o=t.toLowerCase();if(null!==n){for(var i=!1,c=0;c<r.length;c++)r[c][0].toLowerCase()===o&&(r[c][1]=n,i=!0);i||(r.push([t,n]),u())}else for(var l=0;l<r.length;l++)r[l][0].toLowerCase()===o&&r.splice(l,1);e.location.hash=a()}},n.getFragment=a,n.onHashChange=function(e){o.push(e)},i(),e.addEventListener("hashchange",(function(){i();var e,n=function(e,n){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,n){if(e){if("string"==typeof e)return t(e,n);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?t(e,n):void 0}}(e))||n&&e&&"number"==typeof e.length){r&&(e=r);var o=0,a=function(){};return{s:a,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==r.return||r.return()}finally{if(c)throw i}}}}(o);try{for(n.s();!(e=n.n()).done;)(0,e.value)()}catch(e){n.e(e)}finally{n.f()}}))}(window)},86857:(e,t,n)=>{function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var o,a=n(19755),i=n(41996);(o=a)((function(){var e,t,n=("jsLazyScriptsConfig",document.getElementById("jsLazyScriptsConfig")||null);if(n){var a,u=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0,a=function(){};return{s:a,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}([{name:"gallery",selector:".galleryPhotos"}]);try{for(u.s();!(a=u.n()).done;){var c=a.value;o(c.selector).length>0?(i.info("Lazy script loader: '"+c.name+"' required"),e=c.name,void 0,(t=s(e,"js"))&&(i.info("Lazy script loader: '"+e+"' loading js from '"+t+"'"),o.getScript(t)),l(c.name)):i.info("Lazy script loader: '"+c.name+"' not required")}}catch(e){u.e(e)}finally{u.f()}}function l(e){var t=s(e,"css");t&&(i.info("Lazy script loader: '"+e+"' loading css from '"+t+"'"),o("head").append('<link rel="stylesheet" type="text/css" href="'+t+'" />'))}function s(e,t){return n.getAttribute("data-"+e+"-"+t)}}))},20170:(e,t,n)=>{var r=n(25046),o=n(41996),a=n(12850);!function(){if("serviceWorker"in navigator){var e=r.urls.getLocalUrl("/sw.js");if(!e)return void o.error('Service worker registration failed to get url - "'+e+'"');window.addEventListener("load",(function(){navigator.serviceWorker.register(e).then((function(){o.info('Service worker registration succeeded for "'.concat(e,'"'))})).catch((function(t){a()&&t&&"The operation is insecure."===t.message||o.error('Service worker registration failed for "'.concat(e,'"'),t)}))}))}}()},47598:e=>{function t(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return n(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?n(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var o=0,a=function(){};return{s:a,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==r.return||r.return()}finally{if(c)throw i}}}}function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function r(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var o=new(function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.flags={},this.callbacks={}}var n,o;return n=e,(o=[{key:"addCallback",value:function(e,t){this.callbacks[e]||(this.callbacks[e]=[]),this.callbacks[e].push(t)}},{key:"deleteFlag",value:function(e){if(delete this.flags[e],this.callbacks[e]){var n,r=t(this.callbacks[e]);try{for(r.s();!(n=r.n()).done;)(0,n.value)(null)}catch(e){r.e(e)}finally{r.f()}delete this.callbacks[e]}}},{key:"getFlag",value:function(e){return this.flags[e]}},{key:"setFlag",value:function(e,n){if(this.flags[e]=n,this.callbacks[e]){var r,o=t(this.callbacks[e]);try{for(o.s();!(r=o.n()).done;)(0,r.value)(n)}catch(e){o.e(e)}finally{o.f()}}}}])&&r(n.prototype,o),e}());window.scan=window.scan||{},window.scan.tests=window.scan.tests||o,e.exports=o},59790:(e,t,n)=>{var r=n(81565),o={trackCall:function(e){r.trackContactEvent("Phone Call",e)},trackEmailLink:function(e){r.trackContactEvent("Email",e)},trackLiveChat:function(){r.trackContactEvent("Live Chat")},trackCallback:function(){r.trackContactEvent("Callback Request")},trackHelpCentreForm:function(){r.trackContactEvent("Help Centre Contact Form")},trackContactForm:function(){r.trackContactEvent("Contact Form Submission")}};e.exports=o},2312:(e,t,n)=>{var r=n(19755),o=n(81565);r((function(){r("[data-bannertrack]").on("click",(function(e){var t=r(e.currentTarget),n=t.data("bannertrack"),a=t.attr("href")||"no-href";o.trackBanner(n,a)}))}))},81877:(e,t,n)=>{var r=n(19755),o=n(59790);r((function(){var e="tel:",t="mailto:";r("a[href]").filter((function(){return r(this).attr("href").toLowerCase().substr(0,e.length)===e})).on("click",(function(){var t=r(event.currentTarget).attr("href");t&&t.length>e.length&&(t=t.substr(e.length)),o.trackCall(t)})),r("a[href]").filter((function(){return r(this).attr("href").toLowerCase().substr(0,t.length)===t})).on("click",(function(){var e=r(event.currentTarget).attr("href");e&&e.length>t.length&&(e=e.substr(t.length)),o.trackEmailLink(e)})),r('[data-contacttrack="callback"]').length>0&&o.trackCallback()}))},68611:(e,t,n)=>{var r=n(19755),o=n(30186);r((function(){r("footer form#order-tracking").on("submit",(function(){o.footerForm("Order tracking")})),r("footer form#returns-tracking").on("submit",(function(){o.footerForm("Returns tracking")})),r("footer form#system-tracking").on("submit",(function(){o.footerForm("System tracking")}))}))},59934:(e,t,n)=>{var r=n(19755),o=n(81565);r((function(){r(document).on("click","a[data-linktrack], button[data-linktrack]",(function(e){var t=r(e.currentTarget),n=t.data("linktrack"),a=t.data("linkvar")||"",i=t.attr("href")||"no-href";o.trackLink(n,a,i)}))}))},46958:(e,t,n)=>{var r=n(19755),o=n(81565);r((function(){r("[data-pagetrack]").each((function(e,t){var n=r(t),a=n.data("pagetype"),i=n.data("page");o.trackPageView(a,i)}))}))},8250:(e,t,n)=>{var r=n(41996),o={trackBasketChange:function(e){var t=n(30021)();t?e.quantityChange<=0||(t("track","AddToCart",{content_name:e.name,content_category:e.category,content_ids:[e.sageCode],content_type:"product",value:e.quantityChange*e.price,currency:"GBP"}),r.log("Facebook tracking AddToCart")):r.warn("Facebook pixel is not loaded, could not track basket change")}};e.exports=o},30021:(e,t,n)=>{e.exports=function(){return n.g.window.fbq}},30186:(e,t,n)=>{var r=n(81565),o={scanshotSubscribe:function(){r.trackFormSubmission("Scanshot Subscribe",!0)},footerForm:function(e){r.trackFormSubmission(e+" footer",!0)},leadForm:function(e){r.trackFormSubmission("LeadForm: "+e,!0)}};e.exports=o},22558:(e,t,n)=>{"use strict";var r,o=n.g.window,a=n(41996);function i(e,t){var n=u();if(null!=n){n.SessionCamPath=e,n.SessionCamPageName=t;var r="SessionCam.setCustomPageName(path: "+e+", pageName: "+t+")";a.info(r)}}function u(){return o.sessioncamConfiguration||(o.sessioncamConfiguration=new Object),o.sessioncamConfiguration.customDataObjects||(o.sessioncamConfiguration.customDataObjects=[]),o.sessioncamConfiguration}function c(){return o.sessionCamRecorder&&o.sessionCamRecorder.createVirtualPageLoad?o.sessionCamRecorder:null}null!=(r=document.getElementById("sessioncam_custompagename"))&&i(r.getAttribute("data-path"),r.getAttribute("data-pagename")),e.exports={addEvent:function(e,t){var n=u();if(null!=n){n.customDataObjects.push({key:e,value:t});var r="SessionCam.addEvent(key: "+e+", value: "+t+")";a.info(r)}},addCustomVariable:function(e,t){var n=u();if(null!=n){n.customDataObjects.push({key:e,value:t});var r="SessionCam.addCustomVariable(key: "+e+", value: "+t+")";a.info(r)}},openVirtualPage:function(e){var t=c();if(null!=t){t.createVirtualPageLoad(e);var n="SessionCam.openVirtualPage(pageName: "+e+")";a.info(n)}},closeVirtualPage:function(){null!=c()&&(o.sessionCamRecorder.closeVirtualPage(),a.info("SessionCam.closeVirtualPage()"))},getSessionId:function(){return o.sessionCamRecorder?o.sessionCamRecorder.sessionId():null},setCustomPageName:i}},65906:e=>{"use strict";e.exports=function(e){var t=null;this.invoke=function(n){null!==t&&clearTimeout(t),t=setTimeout(n,e)}}},57122:(e,t,n)=>{var r=n(19755),o=n(35835),a=n(59790),i=function(e,t,n){e.livechat.isChatting()||n?(e.livechat.window.show(),o.setLiveChatVisibility().maximised()):(e.livechat.button.show(),o.setLiveChatVisibility().minimised())},u=function(e){window.$zopim?i(window.$zopim,0,!0):(window.$zopim||function(e,t){var n=window.$zopim=function(e){n._.push(e)},r=n.s=e.createElement(t),o=e.getElementsByTagName(t)[0];n.set=function(e){n.set._.push(e)},n._=[],n.set._=[],r.async=!0,r.setAttribute("charset","utf-8"),r.src="//v2.zopim.com/?1YNS3VrcbmWhu8qSSfBPZx2PpNptdPKe",n.t=+new Date,r.type="text/javascript",o.parentNode.insertBefore(r,o)}(document,"script"),window.$zopim((function(){$zopim.livechat.theme.setColors({primary:"#3d70b7",bubble:"#3d70b7",badge:"#FFFFFF"}),$zopim.livechat.theme.reload(),$zopim.livechat.setGreetings({online:"Ask us anything",offline:"Leave a message"}),$zopim.livechat.concierge.setName("Scan Support"),$zopim.livechat.concierge.setTitle("Ask me anything"),$zopim.livechat.badge.setLayout("image_only"),$zopim.livechat.badge.setImage("//www.scan.co.uk/images/scan-live-chat.png"),$zopim.livechat.window.setTitle("Scan Live Chat"),$zopim.livechat.window.setSize("large"),$zopim.livechat.window.setPosition("br"),$zopim.livechat.window.onShow((function(){o.setLiveChatVisibility().maximised()})),$zopim.livechat.window.onHide((function(){o.setLiveChatVisibility().minimised(),$zopim.livechat.badge.hide(),$zopim.livechat.button.show()})),window.sessionStorage.setItem("livechat",!0),i($zopim,0,!1)})))},c=function(){return window.sessionStorage&&window.sessionStorage.getItem("livechat")};r((function(){r(".launchChat").on("click",(function(e){e.preventDefault(),c(),u(),a.trackLiveChat()})),c()&&u()}))},46700:(e,t,n)=>{var r={"./af":42786,"./af.js":42786,"./ar":30867,"./ar-dz":14130,"./ar-dz.js":14130,"./ar-kw":96135,"./ar-kw.js":96135,"./ar-ly":56440,"./ar-ly.js":56440,"./ar-ma":47702,"./ar-ma.js":47702,"./ar-sa":16040,"./ar-sa.js":16040,"./ar-tn":37100,"./ar-tn.js":37100,"./ar.js":30867,"./az":31083,"./az.js":31083,"./be":9808,"./be.js":9808,"./bg":68338,"./bg.js":68338,"./bm":67438,"./bm.js":67438,"./bn":8905,"./bn-bd":76225,"./bn-bd.js":76225,"./bn.js":8905,"./bo":11560,"./bo.js":11560,"./br":1278,"./br.js":1278,"./bs":80622,"./bs.js":80622,"./ca":2468,"./ca.js":2468,"./cs":5822,"./cs.js":5822,"./cv":50877,"./cv.js":50877,"./cy":47373,"./cy.js":47373,"./da":24780,"./da.js":24780,"./de":59740,"./de-at":60217,"./de-at.js":60217,"./de-ch":60894,"./de-ch.js":60894,"./de.js":59740,"./dv":5300,"./dv.js":5300,"./el":50837,"./el.js":50837,"./en-au":78348,"./en-au.js":78348,"./en-ca":77925,"./en-ca.js":77925,"./en-gb":22243,"./en-gb.js":22243,"./en-ie":46436,"./en-ie.js":46436,"./en-il":47207,"./en-il.js":47207,"./en-in":44175,"./en-in.js":44175,"./en-nz":76319,"./en-nz.js":76319,"./en-sg":31662,"./en-sg.js":31662,"./eo":92915,"./eo.js":92915,"./es":55655,"./es-do":55251,"./es-do.js":55251,"./es-mx":96112,"./es-mx.js":96112,"./es-us":71146,"./es-us.js":71146,"./es.js":55655,"./et":5603,"./et.js":5603,"./eu":77763,"./eu.js":77763,"./fa":76959,"./fa.js":76959,"./fi":11897,"./fi.js":11897,"./fil":42549,"./fil.js":42549,"./fo":94694,"./fo.js":94694,"./fr":94470,"./fr-ca":63049,"./fr-ca.js":63049,"./fr-ch":52330,"./fr-ch.js":52330,"./fr.js":94470,"./fy":5044,"./fy.js":5044,"./ga":29295,"./ga.js":29295,"./gd":2101,"./gd.js":2101,"./gl":38794,"./gl.js":38794,"./gom-deva":27884,"./gom-deva.js":27884,"./gom-latn":23168,"./gom-latn.js":23168,"./gu":95349,"./gu.js":95349,"./he":24206,"./he.js":24206,"./hi":30094,"./hi.js":30094,"./hr":30316,"./hr.js":30316,"./hu":22138,"./hu.js":22138,"./hy-am":11423,"./hy-am.js":11423,"./id":29218,"./id.js":29218,"./is":90135,"./is.js":90135,"./it":90626,"./it-ch":10150,"./it-ch.js":10150,"./it.js":90626,"./ja":39183,"./ja.js":39183,"./jv":24286,"./jv.js":24286,"./ka":12105,"./ka.js":12105,"./kk":47772,"./kk.js":47772,"./km":18758,"./km.js":18758,"./kn":79282,"./kn.js":79282,"./ko":33730,"./ko.js":33730,"./ku":1408,"./ku.js":1408,"./ky":33291,"./ky.js":33291,"./lb":36841,"./lb.js":36841,"./lo":55466,"./lo.js":55466,"./lt":57010,"./lt.js":57010,"./lv":37595,"./lv.js":37595,"./me":39861,"./me.js":39861,"./mi":35493,"./mi.js":35493,"./mk":95966,"./mk.js":95966,"./ml":87341,"./ml.js":87341,"./mn":5115,"./mn.js":5115,"./mr":10370,"./mr.js":10370,"./ms":9847,"./ms-my":41237,"./ms-my.js":41237,"./ms.js":9847,"./mt":72126,"./mt.js":72126,"./my":56165,"./my.js":56165,"./nb":64924,"./nb.js":64924,"./ne":16744,"./ne.js":16744,"./nl":93901,"./nl-be":59814,"./nl-be.js":59814,"./nl.js":93901,"./nn":83877,"./nn.js":83877,"./oc-lnc":92135,"./oc-lnc.js":92135,"./pa-in":15858,"./pa-in.js":15858,"./pl":64495,"./pl.js":64495,"./pt":89520,"./pt-br":57971,"./pt-br.js":57971,"./pt.js":89520,"./ro":96459,"./ro.js":96459,"./ru":21793,"./ru.js":21793,"./sd":40950,"./sd.js":40950,"./se":10490,"./se.js":10490,"./si":90124,"./si.js":90124,"./sk":81111,"./sk.js":81111,"./sl":14985,"./sl.js":14985,"./sq":51104,"./sq.js":51104,"./sr":49131,"./sr-cyrl":79915,"./sr-cyrl.js":79915,"./sr.js":49131,"./ss":85893,"./ss.js":85893,"./sv":98760,"./sv.js":98760,"./sw":91172,"./sw.js":91172,"./ta":27333,"./ta.js":27333,"./te":23110,"./te.js":23110,"./tet":52095,"./tet.js":52095,"./tg":27321,"./tg.js":27321,"./th":9041,"./th.js":9041,"./tk":19005,"./tk.js":19005,"./tl-ph":75768,"./tl-ph.js":75768,"./tlh":72367,"./tlh.js":72367,"./tr":72397,"./tr.js":72397,"./tzl":28254,"./tzl.js":28254,"./tzm":51106,"./tzm-latn":30699,"./tzm-latn.js":30699,"./tzm.js":51106,"./ug-cn":9288,"./ug-cn.js":9288,"./uk":67691,"./uk.js":67691,"./ur":13795,"./ur.js":13795,"./uz":6791,"./uz-latn":60588,"./uz-latn.js":60588,"./uz.js":6791,"./vi":65666,"./vi.js":65666,"./x-pseudo":14378,"./x-pseudo.js":14378,"./yo":75805,"./yo.js":75805,"./zh-cn":83839,"./zh-cn.js":83839,"./zh-hk":55726,"./zh-hk.js":55726,"./zh-mo":99807,"./zh-mo.js":99807,"./zh-tw":74152,"./zh-tw.js":74152};function o(e){var t=a(e);return n(t)}function a(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}o.keys=function(){return Object.keys(r)},o.resolve=a,e.exports=o,o.id=46700}},e=>{"use strict";var t=t=>e(e.s=t);e.O(0,[216],(()=>(t(26981),t(2975)))),e.O()}]);;
