1try{!function(){var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},t=(new e.Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3d5c3012-3ca7-4c57-a23d-08504bcbda3d",e._sentryDebugIdIdentifier="sentry-dbid-3d5c3012-3ca7-4c57-a23d-08504bcbda3d")}()}catch(e){}(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[91],{56249:function(){},63200:function(e,t,n){"use strict";n.d(t,{Nh:function(){return o},hi:function(){return c}});var r=n(3260),a=n(61493),s=n.n(a);let i="".concat("https://knwxh8dmh1.execute-api.eu-central-1.amazonaws.com","/graphql"),l="Bearer ".concat("qNG1MfNixLtJU_iE_nvJ3ssmMY5NZ3Nx"),o="".concat(s().aws.lambda.endpoint),u=()=>new r.g6(i,{headers:{Authorization:l},fetch}),c={query:async e=>{let{query:t,variables:n}=e;try{let e=u();return await e.request(t,n)}catch(e){return{error:e.message}}},queryREST:async e=>{let{url:t,headers:n={},body:r,method:a="GET"}=e;try{return await fetch(t,{method:a,headers:{"Content-Type":"application/json",...n},body:r?JSON.stringify(r):void 0})}catch(e){return{error:e.message}}},mutate:async()=>{}}},17002:function(e,t,n){"use strict";n.d(t,{a:function(){return L}});var r,a,s=n(57437),i=n(27259),l=n(64625),o=n(688),u=n(14438),c=n(2265),d=n(43618),f=n(99376),p=n(71096),m=n.n(p);let y=()=>"https://www.paradiso.nl"+(0,f.usePathname)();var w=n(68009),h=n(61493),g=n.n(h);let _=Array(12).fill(0),v=()=>(0,s.jsx)("div",{className:"sonner-loading-wrapper",children:(0,s.jsx)("div",{className:"sonner-spinner",children:_.map((e,t)=>(0,s.jsx)("div",{className:"sonner-loading-bar"},"spinner-bar-".concat(t)))})}),b=e=>{var t,n;if(!e)return null;let r=(null===(t=e.attributes)||void 0===t?void 0:t.address)?JSON.parse(null===(n=e.attributes)||void 0===n?void 0:n.address):{};return{...e.attributes,...r}};var E=n(67739),A=n(63200);let U=async e=>{let{user:t}=e,n="".concat(A.Nh,"/get-newsletter-details"),r={Authorization:"Bearer ".concat(t.signInUserSession.accessToken.jwtToken)},a=await A.hi.queryREST({url:n,headers:r});return(await a.json()).customfields};var k=n(52848);let S=null===(a=n.n(k)().aws)||void 0===a?void 0:null===(r=a.auth)||void 0===r?void 0:r.clientId,C={login:{nl:"https://auth.paradiso.nl/authorize?response_type=id_token%20token&response_mode=query&prompt=login&redirect_uri=REDIRECT_URL&client_id=".concat(S,"&state=3kTW3arfPQJ&ui_locales=LOCALE"),en:"https://auth.paradiso.nl/authorize?response_type=id_token%20token&response_mode=query&prompt=login&redirect_uri=REDIRECT_URL&client_id=".concat(S,"&state=3kTW3arfPQJ&ui_locales=LOCALE")},logout:{nl:"https://auth.paradiso.nl/logout?client_id=".concat(S,"&redirect_uri=REDIRECT_URL"),en:"https://auth.paradiso.nl/logout?client_id=".concat(S,"&redirect_uri=REDIRECT_URL")},register:{nl:"https://auth.paradiso.nl/signup?response_type=id_token%20token&response_mode=query&prompt=login&redirect_uri=REDIRECT_URL&client_id=".concat(S,"&state=3kTW3arfPQJ&ui_locales=LOCALE"),en:"https://auth.paradiso.nl/signup?response_type=id_token%20token&response_mode=query&prompt=login&redirect_uri=REDIRECT_URL&client_id=".concat(S,"&state=3kTW3arfPQJ&ui_locales=LOCALE")}},I=async e=>{let{user:t,newsletters:n}=e,r="".concat(A.Nh,"/post-newsletter-details"),a={Authorization:"Bearer ".concat(t.signInUserSession.accessToken.jwtToken)},s=e=>A.hi.queryREST({url:r,headers:a,method:"POST",body:e});try{let e=Object.entries(n).map(e=>{let t=e[0],n=e[1].toString();return s({[t]:n})}),t=(await Promise.all(e)).map(e=>e.json());return await Promise.all(t)}catch(e){return e}},N=e=>{let t=e.split(".")[1].replace(/-/g,"+").replace(/_/g,"/");return JSON.parse(decodeURIComponent(window.atob(t).split("").map(e=>"%".concat("00".concat(e.charCodeAt(0).toString(16)).slice(-2))).join("")))},T=e=>{let t=["preferred_language","address"],n=["given_name","family_name","birthdate","phone_number"],r=["identities","sub","email_verified","phone_number_verified","custom:provider_email","custom:provider_given_name","custom:provider_family_name"],a=Object.fromEntries(Object.entries(e).filter(e=>{let[r]=e;return t.includes(r)||n.includes(r)}));return{cognitoData:Object.fromEntries(Object.entries(e).filter(e=>{let[n]=e;return!t.includes(n)&&!r.includes(n)})),squeezelyData:a}},P=async e=>{let{user:t,body:n}=e;try{var r;let e=(r={fe:"https://knwxh8dmh1.execute-api.eu-central-1.amazonaws.com",be:"https://admin.paradiso.nl"},void 0===r)?void 0:r.be,a={email:t.attributes.email,preferred_language:n.preferred_language,userid:t.attributes.sub};if(n.given_name&&(a.firstname=n.given_name),n.family_name&&(a.lastname=n.family_name),n.birthdate&&(
1a.birthdate=n.birthdate),n.phone_number&&(a.phone=n.phone_number.replace(/^\+/,"")),n.address)try{let e=JSON.parse(n.address);e.postal_code&&(a.postal_code=e.postal_code),e.locality&&(a.city=e.locality),e.country&&(a.country=e.country),e.street_address&&(a.custom_street_address=e.street_address)}catch(e){console.warn("Failed to parse address:",e)}return await A.hi.queryREST({url:"".concat(e,"/api/squeezely/update-profile"),method:"POST",headers:{Authorization:"Bearer ".concat(t.signInUserSession.accessToken.jwtToken)},body:a})}catch(e){return e}};var R=n(26717),O=n(36065);let q=e=>(0,u.A)(e,{icon:(0,s.jsx)(v,{})}),L=()=>{let[e,t]=(0,d.FV)(w.b),n=(0,d.Zl)(w.y),r=(0,f.useRouter)(),a=(0,f.usePathname)(),{locale:s}=(0,f.useParams)(),p=encodeURIComponent(y()),_="https://www.paradiso.nl"+(0,E.G)({href:"/".concat(h.routes.RECOMMENDATIONS[s]),pathname:a}),v=e=>({event:"ProfileUpdate",firstname:e.given_name||"",lastname:e.family_name||"",email:e.email||"",userid:e.sub||"",postcode:e.postal_code||"",city:e.locality||"",country:e.country||"",custom_street_address:e.street_address||""}),A=e=>{let{url:t,redirectUrl:n=p}=e,r=t[s];return null==r?void 0:r.replace("REDIRECT_URL",n).replace("LOCALE",s)},k=A({url:C.login,redirectUrl:_}),S=A({url:C.login}),L=A({url:C.logout}),z=A({url:C.register,redirectUrl:_});i.d.configure({Auth:{...g().aws.auth}});let j=(0,c.useMemo)(()=>{var e,t,n,r;return{UserPoolId:null===(t=g().aws)||void 0===t?void 0:null===(e=t.auth)||void 0===e?void 0:e.userPoolId,ClientId:null===(r=g().aws)||void 0===r?void 0:null===(n=r.auth)||void 0===n?void 0:n.userPoolWebClientId}},[]),D=(0,c.useMemo)(()=>new o.AM(j),[j]),J=(0,c.useCallback)(()=>D.getCurrentUser(),[D]),x=(0,c.useCallback)(()=>new Promise((e,t)=>{let n=J();if(!n){t(Error("No user found"));return}n.getSession((r,a)=>{if(r){t(r);return}e({session:a,cognitoUser:n})})}),[J]),M=async()=>{let e=await Z()||await B();if(!e)return;let t=N(e),n=m()(),r=m().unix(t.auth_time),a=m().unix(t.exp),s=14>n.diff(r,"day"),i=30>a.diff(n,"m");s&&i&&(window.location.href=S)},V=(0,c.useCallback)(async()=>{try{t(!0),await M();let{session:e,cognitoUser:r}=await x(),a=await new Promise((e,t)=>{r.getUserAttributes((n,r)=>{if(n){t(n);return}let a={};r.forEach(e=>{a[e.getName()]=e.getValue()}),e(a)})});if(a){let t=b({attributes:a,signInUserSession:e});n(t)}else n(null)}catch(e){await M(),n(null)}finally{t(!1)}},[]),F=(0,c.useCallback)(async e=>{let{username:i,password:l}=e;t(!0);try{q("Logging you in..");let e=new o.sD({Username:i,Password:l}),t=new o.ws({Username:i,Pool:D}),c=await new Promise((n,r)=>{t.authenticateUser(e,{onSuccess:e=>n(e),onFailure:e=>r(e)})}),d=await new Promise((e,n)=>{t.getUserAttributes((t,r)=>{if(t){n(t);return}let a={};r.forEach(e=>{a[e.getName()]=e.getValue()}),e(a)})}),f=b({attributes:d,signInUserSession:c});n(f),u.A.success("Logged in succesfully");try{let e=v(f);(0,R.c)(e),(0,O.$m)()}catch(e){console.warn("Failed to send ProfileUpdate event:",e)}let p=(0,E.G)({href:"/".concat(h.routes.RECOMMENDATIONS[s]),pathname:a});r.push(p)}catch(e){u.A.error(e.message)}finally{t(!1)}},[n]),Q=async e=>{let{accessToken:t,idToken:n}=e,r=new o.ZA({AccessToken:t}),a=new o.xk({IdToken:n}),s=new o.bR({RefreshToken:""}),i=new o.MZ({IdToken:a,AccessToken:r,RefreshToken:s}),l={Username:r.payload.username,Pool:D};new o.ws(l).setSignInUserSession(i),await V();try{let{session:e,cognitoUser:t}=await x(),n=await new Promise((e,n)=>{t.getUserAttributes((t,r)=>{if(t){n(t);return}let a={};r.forEach(e=>{a[e.getName()]=e.getValue()}),e(a)})});if(n){let t=b({attributes:n,signInUserSession:e}),r=v(t);(0,R.c)(r),(0,O.$m)()}}catch(e){console.warn("Failed to send ProfileUpdate event:",e)}},Z=(0,c.useCallback)(async()=>{try{let{session:e}=await x();return e.getAccessToken().getJwtToken()}catch(e){}},[]),B=async()=>{try{var e,t,n;let r=null===(e=Object.keys(window.localStorage))||void 0===e?void 0:e.find(e=>(null==e?void 0:e.includes(".accessToken"))&&(null==e?void 0:e.startsWith("CognitoIdentityServiceProvider")));if(r)return null===(n=window)||void 0===n?void 0:null===(t=n.localStorage)||void 0===t?void 0:t.getItem(r)}catch(e){}},W=(0,c.useCallback)(async e=>{t(!0);try{q("Updating your profile..");let{cognitoData:t,squeezelyData:n}=T(e),r=await l.g.currentAuthenticatedUser(),a=[];t&&Object.keys(t).length>0&&a.push(l.g.updateUserAttributes(r,t)),n&&Object.keys(n).length>0&&a.push(P({user:r,body:n})),await Promise.all(a),u.A.success("Your profile has been updated succesfully")}catch(e){u.A.error(e.message)}finally{t(!1)}},[]),Y=(0,c.useCallback)(async e=>{t(!0);try{let{email:t,password:n,given_name:a,family_name:i}=e;q("Creating your account..");let c=[new o.KC({Name:"email",Value:t}),new o.KC({Name:"given_name",Value:a}),new o.KC({Name:"family_name",Value:i})];await new Promise((e,r)=>{D.signUp(t,n,c,null,(t,n)=>{if(t){r(t);return}e(n)})}),await F({username:t,password:n});try{let e=await l.g.currentAuthenticatedUser(),n={event:"ProfileUpdate",firstname:a||"",lastname:i||"",email:t||"",userid:e.attributes.sub||""};(0,R.c)(n),(0,O.$m)()}catch(e){console.warn("Failed to send ProfileUpdate event:",e)}u.A.success("Account created succesfully"),r.push("/".concat(h.routes.RECOMMENDATIONS[s]))}catch(e){u.A.error(e.message)}finally{t(!1)}},[]),$=(0,c.useCallback)(async e=>{let{oldPassword:n,newPassword:r}=e;t(!0);try{q("Updating your password..");let{cognitoUser:e}=await x();await new Promise((t,a)=>{e.changePassword(n,r,(e,n)=>{if(e){a(e);return}t(n)})}),u.A.success("Your password has been updated succesfully")}catch(e){u.A.error(e.message)}finally{t(!1)}},[]),G=(0,c.useCallback)(async e=>{let{email:n}=e;t(!0);try{let e=new o.ws({Username:n,Pool:D});await new Promise((t,n)=>{e.forgotPassword({onSuccess:e=>t(e),onFailure:e=>n(e)})}),u.A.success("An email with instructions has been sent to ".concat(n,"}"))}catch(e){u.A.error(e.message)}finally{t(!1)}},[]),K=(0,c.useCallback)(async()=>{let e=J();e&&e.signOut(),setTimeout(()=>{window.location.href=L},500)},[L,J]);return{checkForAuthenticatedUser:V,getNewsletterSubscriptions:(0,c.useCallback)(async()=>{t(!0);try{let{session:e,cognitoUser:t}
1=await x(),n=await new Promise((e,n)=>{t.getUserAttributes((t,r)=>{if(t){n(t);return}let a={};r.forEach(e=>{a[e.getName()]=e.getValue()}),e(a)})}),r=await U({user:{attributes:n,signInUserSession:e}});return Object.keys(r).reduce((e,t)=>{let n=r[t];return e[t]=!!("true"===n||"1"===n),e},{})}catch(e){}finally{t(!1)}},[]),loginLinkWithRedirectToCurrentPage:S,updateNewsletterSubscriptions:(0,c.useCallback)(async e=>{try{q("Updating your newsletters..");let{session:t,cognitoUser:n}=await x(),r=await new Promise((e,t)=>{n.getUserAttributes((n,r)=>{if(n){t(n);return}let a={};r.forEach(e=>{a[e.getName()]=e.getValue()}),e(a)})});await I({user:{attributes:r,signInUserSession:t},newsletters:e}),u.A.success("Newsletters updated succesfully")}catch(e){u.A.error(e.message)}},[]),signIn:F,signInWithAccessToken:Q,updateUserProfile:W,updatePassword:$,forgotPassword:G,signUp:Y,signOut:K,getJwtToken:Z,loginLink:k,registerLink:z,isLoading:e}}},68009:function(e,t,n){"use strict";n.d(t,{b:function(){return s},y:function(){return a}});var r=n(43618);let a=(0,r.cn)({key:"currentUserState",default:null}),s=(0,r.cn)({key:"authLoadingStateAtom",default:!0})},26717:function(e,t,n){"use strict";n.d(t,{c:function(){return r}});let r=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};window._sqzl&&(window._sqzl=window._sqzl||[],window._sqzl.push(e))}},36065:function(e,t,n){"use strict";n.d(t,{CF:function(){return i},q:function(){return l},ov:function(){return s},Bo:function(){return u},vA:function(){return v},gt:function(){return _},Bd:function(){return g},gJ:function(){return E},a9:function(){return y},o$:function(){return w},$m:function(){return A},e5:function(){return b}});let r={SQUEEZELY_AUDIENCES:"paradiso_sqzl_audiences"},a="paradiso_sqzl_audiences",s="paradiso:sqzl-audiences-updated",i="paradiso:sqzl-audiences-ready",l=5e3,o=!1,u=()=>o,c=void 0,d=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return[...new Set(e.filter(Boolean).map(e=>String(e)))]},f=e=>{if(!e)return null;try{let t=decodeURIComponent(e),n=JSON.parse(t);if(Array.isArray(n))return d(n);if(Array.isArray(null==n?void 0:n.audience))return d(n.audience);if(Array.isArray(null==n?void 0:n.audiences))return d(n.audiences);if(Array.isArray(null==n?void 0:n.audience_ids))return d(n.audience_ids)}catch(t){if(/^\d+(,\d+)*$/.test(e))return d(e.split(","))}return null},p=e=>{if("undefined"!=typeof document)try{let t=encodeURIComponent(JSON.stringify(d(e)));document.cookie="".concat(r.SQUEEZELY_AUDIENCES,"=").concat(t,"; path=/").concat(null!=c?"; max-age=".concat(c):"")}catch(e){}},m=()=>{if("undefined"==typeof document)return null;let e=document.cookie.split(";").map(e=>e.trim()).find(e=>e.startsWith("".concat(r.SQUEEZELY_AUDIENCES,"=")));return e?f(e.slice(r.SQUEEZELY_AUDIENCES.length+1)):null},y=()=>{var e;let t=w();return t.length?t:null!==(e=E())&&void 0!==e?e:[]},w=()=>{var e;try{let e=sessionStorage.getItem(a);if(e){let t=JSON.parse(e);if(Array.isArray(t))return d(t)}}catch(e){}return null!==(e=m())&&void 0!==e?e:[]},h=e=>{let t=d(e);try{sessionStorage.setItem(a,JSON.stringify(t))}catch(e){}p(t)},g=e=>{let t=d(e);return h(t),window.dispatchEvent(new CustomEvent(s,{detail:t})),t},_=()=>{o=!0,window.dispatchEvent(new CustomEvent(i))},v=e=>{var t,n,r;if(!e||"object"!=typeof e)return null;if("sqzl_customer_audiences"===e.event){let n=null!==(t=e.audience)&&void 0!==t?t:e.audiences;return Array.isArray(n)?d(n):null}if("SqueezelyAudience"===e.event){let t=null!==(r=null!==(n=e.audience_ids)&&void 0!==n?n:e.audiences)&&void 0!==r?r:e.audience;return Array.isArray(t)?d(t):null}return null},b=e=>{if(!Array.isArray(e))return null;for(let t=e.length-1;t>=0;t-=1){let n=v(e[t]);if(null!=n)return n}return null},E=()=>{if("undefined"==typeof document)return null;let e=m();if(null!=e)return e;let t=document.cookie.split(";").reduce((e,t)=>{let[n,...r]=t.trim().split("=");return n&&(e[n]=r.join("=")),e},{}),n=["sqzl_audiences","sqzl_customer_audiences","sqzl_customer_audience","sqzllocal"].map(e=>f(t[e])).find(e=>null==e?void 0:e.length);return null!=n?n:null},A=()=>{var e,t;null===(t=window.sqzlTransmit)||void 0===t||null===(e=t.loadDataLayer)||void 0===e||e.call(t)}}}]);
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.