1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9776],{26519:(e,t,s)=>{s.d(t,{i:()=>i});var a=s(10492),n=s(28996),l=s(30029);let r=e=>new URLSearchParams(window.location.search).get(e),i=e=>{let{popupId:t,cookieName:s,cookieExpiryDays:i=30,enabled:o=!0,urlOverrideParam:d}=e,{currentPopup:c,closeCurrentPopup:u,isPopupActive:m}=(0,l.G)(),[x,p]=(0,a.useState)(!1);return(0,a.useEffect)(()=>{d&&"true"===r(d)&&p(!0)},[d]),(0,a.useEffect)(()=>{o&&(!d||"true"!==r(d))&&((0,n.Hr)(s)||(m(t)?p(!0):p(!1)))},[o,s,t,m,d]),{isOpen:x,setIsOpen:p,handleClose:()=>{p(!1),(0,n.TV)(s,"true",{expires:i}),u()},handleSubmit:()=>{p(!1),(0,n.TV)(s,"true",{expires:i}),u()},resetPopup:()=>{(0,n.TV)(s,"",{expires:-1}),p(!1)}}}},28996:(e,t,s)=>{s.d(t,{Hr:()=>n,TV:()=>a});let a=(e,t,s={})=>{if("undefined"==typeof document)return;let{expires:a=30,path:n="/",domain:l,secure:r=!0,sameSite:i="lax"}=s,o=`${encodeURIComponent(e)}=${encodeURIComponent(t)}`;if(a){let e=new Date;e.setTime(e.getTime()+24*a*36e5),o+=`; expires=${e.toUTCString()}`}n&&(o+=`; path=${n}`),l&&(o+=`; domain=${l}`),r&&(o+="; secure"),i&&(o+=`; samesite=${i}`),document.cookie=o},n=e=>null!==(e=>{if("undefined"==typeof document)return null;let t=`${encodeURIComponent(e)}=`,s=document.cookie.split(";");for(let e=0;e<s.length;e++){let a=s[e];for(;" "===a.charAt(0);)a=a.substring(1,a.length);if(0===a.indexOf(t))return decodeURIComponent(a.substring(t.length,a.length))}return null})(e)},30029:(e,t,s)=>{s.d(t,{PopupSequenceProvider:()=>o,G:()=>i});var a=s(25360),n=s(10492),l=s(28996);let r=(0,n.createContext)(null),i=()=>{let e=(0,n.useContext)(r);if(!e)throw Error("usePopupSequenceProvider must be used within PopupSequenceProvider");return e},o=({children:e,sequence:t})=>{let[s,i]=(0,n.useState)(null),[o,d]=(0,n.useState)(0),[c,u]=(0,n.use
1State)(new Set),m=t.filter(e=>e.scrollPercentage&&!1!==e.enabled&&!(0,l.Hr)(e.cookieName))[0];!function(e){let{scrollPercentage:t,onTrigger:s,enabled:a=!0,delay:l=0}=e,[r,i]=(0,n.useState)(!1),o=(0,n.useRef)(!1),[d,c]=(0,n.useState)(!1),[u,m]=(0,n.useState)(0===l);(0,n.useEffect)(()=>{if(l>0&&d){let e=setTimeout(()=>{m(!0)},l);return()=>clearTimeout(e)}},[l,d]),(0,n.useEffect)(()=>{if(!a||r||o.current)return;let e=!1,n=()=>{e||(requestAnimationFrame(()=>{let a=window.scrollY,n=document.body.scrollHeight;Math.round((a+window.innerHeight)/n*100)>=t&&!d&&(c(!0),0===l&&(o.current=!0,i(!0),s())),d&&u&&!o.current&&(o.current=!0,i(!0),s()),e=!1}),e=!0)};return window.addEventListener("scroll",n,{passive:!0}),()=>{window.removeEventListener("scroll",n)}},[t,s,a,r,d,u,l])}({scrollPercentage:m?.scrollPercentage||0,onTrigger:()=>m&&(e=>{c.has(e)||(u(t=>new Set(t).add(e)),i(e),console.log(`Showing scroll-triggered popup: ${e}`))})(m.id),enabled:!!m,delay:m?.delay||0}),(0,n.useEffect)(()=>{(()=>{for(let e=0;e<t.length;e++){let s=t[e];if(!1!==s.enabled&&!(0,l.Hr)(s.cookieName)&&s.delay&&!s.scrollPercentage){console.log(`Starting sequence with delay-only popup: ${s.id}`),d(e),setTimeout(()=>{i(s.id),console.log(`Showing delay-only popup: ${s.id}`)},s.delay);return}}console.log("No delay-only popups to show in sequence")})()},[t]);let x=e=>{if(s===e)return;let a=o+1;if(a<t.length){let e=t[a];!1===e.enabled||(0,l.Hr)(e.cookieName)||(console.log(`Showing next popup: ${e.id}`),d(a),i(e.id))}};return(0,a.jsx)(r.Provider,{value:{currentPopup:s,showNextPopup:x,closeCurrentPopup:()=>{s&&(console.log(`Closing popup: ${s}`),i(null),setTimeout(()=>{x("")},1e3))},isPopupActive:e=>s===e},children:e})}},54400:(e,t,s)=>{s.d(t,{p:()=>l});var a=s(25360);s(10492);var n=s(85131);function l({className:e,type:t,...s}){return(0,a.jsx)("input",{type:t,"data-slot":"input",className:(0,n.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",e),...s})}},67384:(e,t,s)=>{s.d(t,{lV:()=>c,MJ:()=>g,zB:()=>m,eI:()=>f,lR:()=>h,C5:()=>b});var a=s(25360),n=s(10492),l=s(13959),r=s(94317),i=s(85131),o=s(68335);function d({className:e,...t}){return(0,a.jsx)(o.b,{"data-slot":"label",className:(0,i.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",e),...t})}let c=r.Op,u=n.createContext({}),m=({...e})=>(0,a.jsx)(u.Provider,{value:{name:e.name},children:(0,a.jsx)(r.xI,{...e})}),x=()=>{let e=n.useContext(u),t=n.useContext(p),{getFieldState:s}=(0,r.xW)(),a=(0,r.lN)({name:e.name}),l=s(e.name,a);if(!e)throw Error("useFormField should be used within <FormField>");let{id:i}=t;return{id:i,name:e.name,formItemId:`${i}-form-item`,formDescriptionId:`${i}-form-item-description`,formMessageId:`${i}-form-item-message`,...l}},p=n.createContext({});function f({className:e,...t}){let s=n.useId();return(0,a.jsx)(p.Provider,{value:{id:s},children:(0,a.jsx)("div",{"data-slot":"form-item",className:(0,i.cn)("grid gap-2",e),...t})})}function h({className:e,...t}){let{error:s,formItemId:n}=x();return(0,a.jsx)(d,{"data-slot":"form-label","data-error":!!s,className:(0,i.cn)("data-[error=true]:text-destructive",e),htmlFor:n,...t})}function g({...e}){let{error:t,formItemId:s,formDescriptionId:n,formMessageId:r}=x();return(0,a.jsx)(l.DX,{"data-slot":"form-control",id:s,"aria-describedby":t?`${n} ${r}`:`${n}`,"aria-invalid":!!t,...e})}function b({className:e,...t}){let{error:s,formMessageId:n}=x(),l=s?String(s?.message??""):t.children;return l?(0,a.jsx)("p",{"data-slot":"form-message",id:n,className:(0,i.cn)("text-destructive text-sm",e),...t,children:l}):null}},76743:(e,t,s)=>{s.d(t,{a:()=>n});var a=s(10492);function n(){let[e,t]=a.useState(void 0);return a.useEffect(()=>{let e=window.matchMedia("(max-width: 767px)"),s=()=>{t(window.innerWidth<768)};return e.addEventListener("change",s),t(window.innerWidth<768),()=>e.removeEventListener("change",s)},[]),!!e}},97384:(e,t,s)=>{s.d(t,{EmailSubscribeArticleInline:()=>F,EmailSubscribeFooter:()=>P,EmailSubscribePopup:()=>$});var a=s(25360),n=s(10492),l=s(55475),r=s(90124),i=s(85276);let o=r.Ik({email:r.Yj().email({message:"Please enter a valid email address"})}),d=async e=>{try{return await (0,i.FO)(e.email),{success:!0}}catch(e){throw e}};var c=s(99900),u=s(54400),m=s(10440),x=s(94317),p=s(41688),f=s(16282),h=s(85131),g=s(26519),b=s(70490),w=s(88069);function j({...e}){return(0,a.jsx)(b.bL,{"data-slot":"dialog",...e})}function v({...e}){return(0,a.jsx)(b.ZL,{"data-slot":"dialog-portal",...e})}function N({...e}){return(0,a.jsx)(b.bm,{"data-slot":"dialog-close",...e})}function y({className:e,...t}){return(0,a.jsx)(b.hJ,{"data-slot":"dialog-overlay",className:(0,h.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",e),...t})}function S({className:e,children:t,showCloseButton:s=!0,...n}){return(0,a.jsxs)(v,{"data-slot":"dialog-portal",children:[(0,a.jsx)(y,{}),(0,a.jsxs)(b.UC,{"data-slot":"dialog-content",className:(0,h.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 roun
1ded-lg border p-6 shadow-lg duration-200 sm:max-w-lg",e),...n,children:[t,s&&(0,a.jsxs)(b.bm,{"data-slot":"dialog-close",className:"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",children:[(0,a.jsx)(w.A,{}),(0,a.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})}function _({className:e,...t}){return(0,a.jsx)("div",{"data-slot":"dialog-header",className:(0,h.cn)("flex flex-col gap-2 text-center sm:text-left",e),...t})}function C({className:e,...t}){return(0,a.jsx)(b.hE,{"data-slot":"dialog-title",className:(0,h.cn)("text-lg leading-none font-semibold",e),...t})}var E=s(67384),I=s(13986),k=s(27007);function P(){let[e,t]=(0,n.useState)(!1),{settingsJSON:s}=(0,l.Us)(),{edmThumbnail:r,edmHeading:i,edmCallToActionButton:g,edmCallToActionSubtext:b}=s,w=(0,x.mN)({resolver:(0,m.u)(o),defaultValues:{email:""}}),j=async e=>{try{await d(e),t(!0),(0,p.WH)({event:"sign_up",method:"footer",...(0,p.ir)()}),(0,p.WH)({event:"email_signup",site_location:"footer",form_name:"IT Newsletter"}),(0,f.N1)(e.email,"footer")}catch{w.setError("email",{message:"Something went wrong, please try again later."})}};return(0,a.jsx)("div",{className:"h-full min-h-[500px] rounded-2xl px-6 py-17 sm:min-h-[500px] sm:px-12",children:(0,a.jsx)(E.lV,{...w,children:(0,a.jsxs)("form",{className:(0,h.cn)("mx-auto flex h-full w-full max-w-[397px] flex-col items-center justify-between",w.formState.isSubmitting&&"pointer-events-none opacity-50"),onSubmit:w.handleSubmit(j),children:[(0,a.jsxs)("div",{className:"flex w-full flex-col items-center gap-8",children:[(0,a.jsx)("h2",{className:"text-gold w-full text-center font-serif text-xl font-light text-balance sm:text-[28px]",dangerouslySetInnerHTML:{__html:i}}),(0,a.jsxs)("div",{className:"flex w-full flex-col gap-3",children:[(0,a.jsx)(k._,{src:r?.url,alt:"Email Subscribe Footer",className:"w-full rounded-md",transform:{quality:80,w:397},srcSetWidths:[397,794],sizes:"(max-width: 640px) 100vw, 397px"}),e?(0,a.jsx)(z,{}):(0,a.jsx)(E.zB,{control:w.control,name:"email",render:({field:e})=>(0,a.jsxs)(E.eI,{className:"w-full",children:[(0,a.jsx)(E.MJ,{children:(0,a.jsx)(u.p,{placeholder:"Email address",className:"text-gold placeholder:text-gold/70 h-12 w-full border border-white bg-transparent text-base placeholder:text-base",...e})}),(0,a.jsx)(E.C5,{})]})})]})]}),!e&&(0,a.jsxs)("div",{className:"mt-8",children:[(0,a.jsx)(c.$,{variant:"outline",size:"lg",className:"border-gold text-charcoal mb-4 bg-white font-medium hover:bg-white/90",pill:!0,children:w.formState.isSubmitting?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(I.FI.Spinner,{className:"size-6 animate-spin"}),"Please wait"]}):(0,a.jsx)(a.Fragment,{children:g?.replace(/\.\s*$/,"")})}),(0,a.jsx)("span",{className:"text-gold/70 block min-h-[20px] text-center font-sans text-sm",children:b})]})]})})})}function F(){let{settingsJSON:e}=(0,l.Us)(),{edmHeading:t}=e,[s,r]=(0,n.useState)(!1),i=(0,x.mN)({resolver:(0,m.u)(o),defaultValues:{email:""}}),g=async e=>{try{await d(e),r(!0),(0,p.WH)({event:"sign_up",method:"article_inline",...(0,p.ir)()}),(0,p.WH)({event:"email_signup",site_location:"article",form_name:"IT Newsletter"}),(0,f.N1)(e.email,"article_inline")}catch{i.setError("email",{message:"Something went wrong, please try again later."})}};return(0,a.jsx)("div",{className:"w-full rounded-[8px] bg-[#F9F7F6] px-[24px] py-[29px]",children:(0,a.jsxs)("div",{className:"flex flex-col items-center",children:[(0,a.jsx)("div",{className:"mb-4 flex items-center gap-4",children:(0,a.jsx)("p",{className:"w-fit font-serif text-lg leading-[139%] font-light",dangerouslySetInnerHTML:{__html:t}})}),(0,a.jsx)("div",{className:(0,h.cn)("relative w-full",i.formState.isSubmitting&&"pointer-events-none opacity-50"),children:s?(0,a.jsx)(z,{}):(0,a.jsx)(E.lV,{...i,children:(0,a.jsx)("form",{className:"space-y-4",onSubmit:i.handleSubmit(g),children:(0,a.jsxs)("div",{className:"relative",children:[(0,a.jsx)(E.zB,{control:i.control,name:"email",render:({field:e})=>(0,a.jsxs)(E.eI,{children:[(0,a.jsx)(E.MJ,{children:(0,a.jsx)(u.p,{className:"w-full rounded-2xl bg-white px-4.5 py-8 !text-xl placeholder:text-xl",placeholder:"Email",...e})}),(0,a.jsx)(E.C5,{})]})}),(0,a.jsx)(c.$,{variant:"default",size:"md",className:"border-primary absolute top-1/2 right-4 mb-4 h-9 -translate-y-1/2",children:i.formState.isSubmitting?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(I.FI.Spinner,{className:"size-4 animate-spin"}),"Please wait"]}):(0,a.jsxs)(a.Fragment,{children:["Subscribe",(0,a.jsx)(I.FI.PaperPlaneTiltIcon,{className:"size-4"})]})})]})})})})]})})}function $(){let{settingsJSON:e}=(0,l.Us)(),{edmThumbnail:t,emailSubscribePopup:s}
1=e,[r,i]=(0,n.useState)(!1),{isOpen:b,handleClose:w,handleSubmit:v}=(0,g.i)({popupId:"email_subscribe",cookieName:s?.cookieName??"email_subscribe_popup_shown",cookieExpiryDays:s?.cookieExpiryDays??30,enabled:s?.enabled??!0,urlOverrideParam:"newsletter-popup"}),y=(0,x.mN)({resolver:(0,m.u)(o),defaultValues:{email:""}}),P=async e=>{try{await d(e),i(!0),(0,p.WH)({event:"sign_up",method:"popup",...(0,p.ir)()}),(0,p.WH)({event:"email_signup",site_location:"popup",form_name:"IT Newsletter"}),(0,f.N1)(e.email,"popup")}catch{y.setError("email",{message:"Something went wrong, please try again later."})}};return(0,a.jsx)(j,{open:b,onOpenChange:w,children:(0,a.jsxs)(S,{className:"rounded-2xl border-none bg-[#FCFBF6] py-10 sm:max-w-[450px]",showCloseButton:!1,children:[(0,a.jsx)(N,{asChild:!0,children:(0,a.jsx)(c.$,{variant:"ghost",size:"icon",className:"absolute -top-14 right-0 size-11 rounded-full bg-white",onClick:w,"aria-label":"Close email subscription dialog",children:(0,a.jsx)(I.FI.X,{className:"size-5 text-black"})})}),(0,a.jsxs)(_,{className:"space-y-4",children:[(0,a.jsxs)(C,{className:"text-center font-serif text-2xl leading-[137%] font-normal",children:["Get the latest ",(0,a.jsx)("i",{children:"travel news, experiences insider tips, offers,"})," ","and more."]}),(0,a.jsx)(k._,{src:t?.url,alt:"Email Subscribe Popup",className:"w-full rounded-sm",transform:{quality:80,w:397},srcSetWidths:[400,794],sizes:"(max-width: 640px) 100vw, 400px"}),r?(0,a.jsxs)("div",{className:"flex flex-col items-center gap-4",children:[(0,a.jsx)(z,{}),(0,a.jsx)(c.$,{type:"submit",variant:"outline",size:"lg",className:"border-primary",pill:!0,onClick:v,children:"Close"})]}):(0,a.jsx)(E.lV,{...y,children:(0,a.jsxs)("form",{className:(0,h.cn)("space-y-4",y.formState.isSubmitting&&"pointer-events-none opacity-50"),onSubmit:y.handleSubmit(P),children:[(0,a.jsx)(E.zB,{control:y.control,name:"email",render:({field:e})=>(0,a.jsxs)(E.eI,{children:[(0,a.jsx)(E.MJ,{children:(0,a.jsx)(u.p,{...e,placeholder:"Email",className:"shadow-card h-12 rounded-xl border-none bg-white"})}),(0,a.jsx)(E.C5,{})]})}),(0,a.jsxs)("div",{className:"mt-6 flex flex-col items-center justify-center gap-4",children:[(0,a.jsx)(c.$,{type:"submit",variant:"outline",size:"lg",className:"border-primary",pill:!0,children:y.formState.isSubmitting?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(I.FI.Spinner,{className:"size-6 animate-spin"}),"Please wait"]}):(0,a.jsx)(a.Fragment,{children:"Receive updates"})}),(0,a.jsx)("span",{className:"block text-center font-sans text-sm",children:"No spam, just good travel vibes"})]})]})})]})]})})}function z({className:e,...t}){return(0,a.jsx)("div",{className:(0,h.cn)("flex flex-col items-center py-10",e),...t,children:(0,a.jsx)("p",{className:"w-full text-center text-xl text-balance sm:w-8/12",children:"Pack your bags! Your first newsletter lands this week"})})}}}]);
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.