1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2526],{42526:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>J});var r=t(22599),a=t(92166),i=t(42174),s=t(79e3),c=t(77192),u=t(21745),l=t(73808),o=t.n(l),d=t(42413),p=t(76282),h=t(30908),f=t(55657),v=t(34965),x=t(4822),y=t(24097),g=t(52720),b=t(3411),m=t(56299),_=t(19565),E=t(86699),S=function(e){function n(){var e;return(0,y._)(this,n),e=(0,x._)(this,n,arguments),e.siteName="charlottetilbury-eefku9",e.handleScriptLoad=function(){n.isLoading=!1,n.isLoaded=!0,e.props.onLoad&&e.setState({loaded:!0},function(){var n,t;null==(n=(t=e.props).onLoad)||n.call(t,window.crl8)})},e}return(0,b._)(n,e),n.prototype.render=function(){if(!this.canRender)return null;var e=!n.isLoaded&&!n.isLoading&&this.props.isClient&&!window.crl8&&!navigator.userAgent.match(/(MSIE|Trident|Edge)/),t=this.props.isClient&&!!window.crl8;return e&&(n.isLoading=!0),(0,u.jsxs)(u.Fragment,{children:[t&&this.props.children,e&&(0,u.jsx)(_.A,{cookieConsent:E.dn.Performance,src:this.scriptSrc,onLoad:this.handleScriptLoad})]})},(0,g._)(n,[{key:"scriptSrc",get:function(){return"https://cdn.curalate.com/sites/".concat(this.siteName,"/site/latest/site.js")}},{key:"canRender",get:function(){return!!n.isLoaded||!n.isLoading}}]),n}(d.PureComponent);S.isLoading=!1,S.isLoaded=!1;let w=(0,m.A)(S);var C=t(29794),I=(0,d.forwardRef)(function(e,n){return(0,u.jsx)("div",(0,C._)({ref:n},e))}),P=t(23513),L=t(86716),j=t(87984),T=t(92015),F=t.n(T),k=t(4638),M=t(416),D=t(45080),q=(0,M.tZ)("FanreelCoordinator");let A=function e(){var n=this;(0,y._)(this,e),this.crl8=void 0,this.instances={},this.experienceTypeInstanceMap={},this.setCrl8=function(e){n.crl8||(n.crl8=e,n.resolveReadyPromise(e),n.queueCreatePendingExperiences())},this.setInstance=function(e,t,r,a){return(0,P._)(function(){var n,i,s,c,u,l;return(0,L._)(this,function(o){return null!=(n=this.instances)[i=e]||(n[i]={containerElements:new Set,experienceType:t,experienceStatus:"uninitialised",instanceStatus:"active",instanceId:e}),s=this.instances[e],a&&(s.handleUpdate=a),r&&(l=!s.containerElements.size,s.containerElements.add(r),null!=(c=this.experienceTypeInstanceMap)[u=t]||(c[u]=s),l&&this.queueCreatePendingExperiences()),[2]})}).call(n)},this.removeInstance=function(e){var t=n.instances[e];t&&(t.instanceStatus="destroyed",n.queueDestroyDanglingExperiences())},this.cleanUpInstance=function(e){e.experienceStatus="destroyed",e.containerElements.clear();var t=e.experienceType;n.experienceTypeInstanceMap[t]===e&&(n.experienceTypeInstanceMap[t]=void 0)},this.tryCreateExperience=function(e,n){return(0,P._)(function(){var t;return(0,L._)(this,function(r){switch(r.label){case 0:return r.trys.push([0,2,,3]),[4,e.createExperience(n)];case 1:return[2,r.sent()];case 2:return t=r.sent(),q.info("Could not render fanreel",{error:t}),[3,3];case 3:return[2,null]}})})()},this.createExperienceForInstance=function(e,t){return(0,P._)(function(){var n,r,a,i,s,c,u,l,o,d;return(0,L._)(this,function(p){switch(p.label){case 0:n=this,r=!1,a=!0,i=!1,s=void 0,p.label=1;case 1:p.trys.push([1,6,7,8]),u=function(){var a,i,s;return(0,L._)(this,function(u){switch(u.label){case 0:if(!((a=o.value).isConnected&&"uninitialised"===t.experienceStatus&&"active"===t.instanceStatus))return[3,2];return t.experienceStatus="initialising",[4,c.tryCreateExperience(e,a)];case 1:(i=u.sent())&&(r=!0,t.experienceStatus="activating",null==i||null==(s=i.store)||s.subscribe(function(){var e,r,a,s,c,u=null==i||null==(r=i.store)||null==(e=r.getState)?void 0:e.call(r);"activating"===t.experienceStatus&&(null==u||null==(s=u.content)||null==(a=s.main)?void 0:a.length)&&(t.experienceStatus="active",n.queueDestroyDanglingExperiences()),null==(c=t.handleUpdate)||c.call(t,u)})),u.label=2;case 2:return[2]}})},l=t.containerElements[Symbol.iterator](),p.label=2;case 2:if(a=(o=l.next()).done)return[3,5];return c=this,[5,(0,j.Ju)(u())];case 3:p.sent(),p.label=4;case 4:return a=!0,[3,2];case 5:return[3,8];case 6:return d=p.sent(),i=!0,s=d,[3,8];case 7:try{a||null==l.return||l.return()}finally{if(i)throw s}return[7];case 8:return[2,r]}})}).call(n)},this.createPendingExperiences=function(){return(0,P._)(function(){var e,n,t,r,a,i,s,c,u,l,o,d,p;return(0,L._)(this,function(h){switch(h.label){case 0:if(e=this,t=!1,null==(n=this.crl8))return[3,1];return a=n,[3,3];case 1:return[4,this.readyPromise];case 2:a=h.sent(),h.label=3;case 3:r=a,i=!0,s=!1,c=void 0,h.label=4;case 4:h.trys.push([4,9,10,11]),l=function(){var n;return(0,L._)(this,function(a){switch(a.label){case 0:var i;if("uninitialised"!==(n=d.value).experienceStatus||"active"!==n.instanceStatus||!((i=e.experienceTypeInstanceMap[n.experienceType])?n===i:(e.experienceTypeInstanceMap[n.experienceType]=n,
1!0)))return[2,"continue"];return[4,u.createExperienceForInstance(r,n)];case 1:return t=a.sent(),[2]}})},o=Object.values(this.instances)[Symbol.iterator](),h.label=5;case 5:if(i=(d=o.next()).done)return[3,8];return u=this,[5,(0,j.Ju)(l())];case 6:h.sent(),h.label=7;case 7:return i=!0,[3,5];case 8:return[3,11];case 9:return p=h.sent(),s=!0,c=p,[3,11];case 10:try{i||null==o.return||o.return()}finally{if(s)throw c}return[7];case 11:return t&&this.queueDestroyDanglingExperiences(),[2]}})}).call(n)},this.destroyExperienceForInstance=function(e){return(0,P._)(function(){var n,t,r,a,i,s,c,u,l,o,d;return(0,L._)(this,function(p){switch(p.label){case 0:n=!1,t=!0,r=!1,a=void 0,p.label=1;case 1:p.trys.push([1,15,16,17]),i=e.containerElements[Symbol.iterator](),p.label=2;case 2:if(t=(s=i.next()).done)return[3,14];if(c=s.value,"destroyed"===e.experienceStatus)return[3,12];if(null==(u=this.crl8))return[3,3];return o=u,[3,5];case 3:return[4,this.readyPromise];case 4:o=p.sent(),p.label=5;case 5:l=o,p.label=6;case 6:return p.trys.push([6,8,,9]),[4,l.getExperience(c)];case 7:case 8:return p.sent(),[3,9];case 9:return p.trys.push([9,11,,12]),[4,l.destroyExperience(c)];case 10:case 11:return p.sent(),[3,12];case 12:this.cleanUpInstance(e),n=!0,p.label=13;case 13:return t=!0,[3,2];case 14:return[3,17];case 15:return d=p.sent(),r=!0,a=d,[3,17];case 16:try{t||null==i.return||i.return()}finally{if(r)throw a}return[7];case 17:return[2,n]}})}).call(n)},this.destroyDanglingExperiences=function(){return(0,P._)(function(){var e,n,t,r,a,i,s,c;return(0,L._)(this,function(u){switch(u.label){case 0:e=!1,n=!0,t=!1,r=void 0,u.label=1;case 1:u.trys.push([1,6,7,8]),a=Object.values(this.instances)[Symbol.iterator](),u.label=2;case 2:if(n=(i=a.next()).done)return[3,5];if("uninitialised"===(s=i.value).experienceStatus&&"destroyed"===s.instanceStatus)return this.cleanUpInstance(s),e=!0,[3,4];if("active"!==s.experienceStatus||"destroyed"!==s.instanceStatus)return[3,4];return s.experienceStatus="destroying",[4,this.destroyExperienceForInstance(s)];case 3:e=u.sent(),u.label=4;case 4:return n=!0,[3,2];case 5:return[3,8];case 6:return c=u.sent(),t=!0,r=c,[3,8];case 7:try{n||null==a.return||a.return()}finally{if(t)throw r}return[7];case 8:return e&&this.queueCreatePendingExperiences(),[2]}})}).call(n)};var t=(0,k.lM)(),r=t.promise,a=t.resolve;this.readyPromise=r,this.resolveReadyPromise=a,this.queueCreatePendingExperiences=F()(this.createPendingExperiences,5),this.queueDestroyDanglingExperiences=F()(this.destroyDanglingExperiences,5),(0,D.oc)()&&window.crl8&&this.setCrl8(window.crl8)};var N=function(e){var n,t=e.container,r=e.filter,a=e.storeLocale,i=void 0===a?"en_GB":a,s=e.onFanreelUpdate,c=(0,d.useId)();null!=N.coordinator||(N.coordinator=new A);var l=N.coordinator,o=(null!=(n=v.JP[i.toLowerCase()])?n:i).replace("_","-"),p=(0,d.useCallback)(function(e){t&&l.setInstance(c,t,e,s)},[l,c,t,s]);return((0,d.useEffect)(function(){return function(){t&&l.removeInstance(c)}},[l,c,t]),t)?(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(I,{ref:p,"data-crl8-container-id":t,"data-crl8-filter":r||void 0,"data-crl8-auto-init":"false","data-crl8-api-locale":o}),(0,u.jsx)(w,{onLoad:N.coordinator.setCrl8})]}):void 0};N.coordinator=void 0;var U=t(51908),H=t(1319);t(47535);var R="FanreelWidget";let J=(0,r.Ng)(function(e){return{pageType:(0,i.M5)(e),pageModel:(0,i.Hx)(e)}})((0,a.A)(function(e){var n=e.pageModel,t=e.pageType,r=e.container,a=e.filter,i=e.title,l=e.subtitle,v=e.storeCode,x=(0,c._)((0,d.useState)(0),2),y=x[0],g=x[1],b=(0,d.useCallback)(function(e){var n,t,r;g(null!=(n=null==e||null==(r=e.content)||null==(t=r.main)?void 0:t.length)?n:0)},[]);return(0,u.jsx)(f.A,{cookieConsent:E.dn.Performance,children:(0,u.jsxs)("article",{className:o()(R,(0,s._)({},"".concat(R,"--is-loaded"),!!y)),"aria-label":i,id:"".concat(R,"-root-id"),children:[i&&y?t===H.g.Home?(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(p.Ay,{dataTestId:"FanreelHeader",level:p._4.H2,className:"".concat(R,"__heading"),children:i}),l&&(0,u.jsx)(p.Ay,{dataTestId:"FanreelSubheader",level:p._4.H3,className:"".concat(R,"__subheading"),children:l})]}):(0,u.jsx)(h.A,{title:i}):null,(0,u.jsx)(N,{container:function(){switch(t){case H.g.Product:case H.g.Products:return t;default:return r}}(),filter:function(){if(t===H.g.Product&&"product"in n){var e=n.product.sku;if(e)return"productId:'".concat(e,"'")}if(t===H.g.Products&&"breadcrumbs"in n){var r=n.breadcrumbs.map(function(e){return e.label}).join(" > ");if(r)return"category:'".concat(r,"'")}return a||""}(),storeLocale:(0,U.h)(v),onFanreelUpdate:b})]})})}))},47535:()=>{}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.