PageSourceSearch

https://cloudposse.com/_next/static/chunks/12485-18c7a1aff6b34a02.js?dpl=dpl_AxYZ4WwUEXLmdFVTuzZeVsLoddfE

js cloudposse.com collected 2026-09-25 02:47:20 UTC 32,686 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[12485],{37962:(e,t,s)=>{s.d(t,{Or:()=>o,gw:()=>a,xf:()=>l});let o={demo:{slug:"demo",title:"Book a Demo",description:"See Cloud Posse platform in action with a personalized demo",calLink:"team/cloudposse/live-demo",enabled:!0,metadata:{duration:"60 minutes",type:"demo"},pageContent:{mainHeading:"Book a Demo",bulletPoints:["Get pricing tailored to your needs","See a personalized product demo","Understand implementation timeline"],alternativeOption:{text:"Need to talk to an engineer?",linkText:"Talk to an Engineer",linkSlug:"consultation"},supportSection:{text:"Technical issues or need help?",linkText:"Contact support",linkHref:"/support"},emailSection:{text:"You can also email us at",email:"[email protected]"},bottomContent:{line1:"Thousands of companies use Cloud Posse's Open Source to build their infrastructure.",line2:"From next-gen startups to established enterprises. Will you be next?"},showCustomerGrid:!0},seo:{metaTitle:"Book a Demo | Cloud Posse",metaDescription:"See Cloud Posse platform in action with a personalized demo",ogTitle:"Book a Demo",ogSubtitle:"See Our Platform in Action",ogDescription:"Book a 60-minute demo to see Cloud Posse platform in action and understand how we can accelerate your AWS infrastructure.",ogCtaLabel:"Book Demo",ogImageText:"Book a Cloud Posse Demo"},contactForm:{enabled:!0,customSubject:"Demo Request",emailValidation:{blockFreeEmailProviders:!0,blockDisposableEmails:!0,requireMxRecord:!0}},nextSteps:{avatar:"https://github.com/osterman.png",name:"Erik Osterman",timezone:"America/Chicago",email:"[email protected]",socialLinks:{linkedin:"https://www.linkedin.com/company/cloudposse",github:"https://github.com/cloudposse",youtube:"https://www.youtube.com/@cloudposse"}}},sales:{slug:"sales",title:"Talk to Sales",description:"Discuss pricing and see Cloud Posse platform in action",calLink:"team/cloudposse/sales",enabled:!0,metadata:{duration:"30 minutes",type:"sales"},pageContent:{mainHeading:"Talk to Sales",bulletPoints:["Get pricing tailored to your needs","See a personalized product demo","Understand implementation timeline"],alternativeOption:{text:"Need to talk to an engineer?",linkText:"Talk to an Engineer",linkSlug:"consultation"},supportSection:{text:"Technical issues or need help?",linkText:"Contact support",linkHref:"/support"},emailSection:{text:"You can also email us at",email:"[email protected]"},bottomContent:{line1:"Thousands of companies use Cloud Posse's Open Source to build their infrastructure.",line2:"From next-gen startups to established enterprises. Will you be next?"},showCustomerGrid:!0},seo:{metaTitle:"Talk to Sales | Cloud Posse",metaDescription:"Book a call with Cloud Posse sales team to discuss pricing and see our platform in action",ogTitle:"Talk to Sales",ogSubtitle:"Discuss Your Cloud Posse Implementation",ogDescription:"Book a 30-minute call with our sales team to discuss pricing, see a demo, and understand how Cloud Posse can accelerate your AWS infrastructure.",ogCtaLabel:"Book Call",ogImageText:"Talk to Cloud Posse Sales"},contactForm:{enabled:!0,customSubject:"Sales Inquiry",emailValidation:{blockFreeEmailProviders:!0,blockDisposableEmails:!0,requireMxRecord:!0}},nextSteps:{avatar:"https://github.com/osterman.png",name:"Erik Osterman",timezone:"America/Chicago",email:"[email protected]",socialLinks:{linkedin:"https://www.linkedin.com/company/cloudposse",github:"https://github.com/cloudposse",youtube:"https://www.youtube.com/@cloudposse"}}},consultation:{slug:"consultation",title:"Discuss your infrastructure problem",description:"Talk through your infrastructure problem, goals, and constraints with Cloud Posse.",calLink:"team/cloudposse/free-consultation",enabled:!0,aliases:["free-consultation"],metadata:{duration:"1 hour",type:"consultation"},pageContent:{mainHeading:"Start with your infrastructure problem",bulletPoints:["Explain what is getting in the way and what needs to change","Discuss your existing infrastructure, priorities, and constraints","Establish fit and agree on the next step or assessment scope"],supportSection:{text:"Need immediate assistance?",linkText:"Contact support",linkHref:"/support"},emailSection:{text:"You can also email us at",email:"[email protected]"},bottomContent:{line1:"This conversation establishes fit and the next step;
1 it is not a comprehensive infrastructure audit.",line2:"Any deeper assessment has its own agreed scope and terms. Implementation follows a defined proposal."},showCustomerGrid:!1},seo:{metaTitle:"Discuss Your Infrastructure Problem | Cloud Posse",metaDescription:"Discuss your Terraform, Atmos, or AWS infrastructure problem and determine the next step with Cloud Posse.",ogTitle:"Discuss your infrastructure problem",ogSubtitle:"Cloud infrastructure consulting",ogDescription:"Start with your infrastructure problem, goals, and constraints. Establish fit and agree on the next step with Cloud Posse.",ogCtaLabel:"Book Call",ogImageText:"Discuss Your Infrastructure Problem"},contactForm:{enabled:!0,customSubject:"Engineering Consultation Request",emailValidation:{blockFreeEmailProviders:!0,blockDisposableEmails:!0,requireMxRecord:!0}},nextSteps:{avatar:"https://github.com/osterman.png",name:"Erik Osterman",timezone:"America/Chicago",email:"[email protected]",socialLinks:{linkedin:"https://www.linkedin.com/company/cloudposse",github:"https://github.com/cloudposse",youtube:"https://www.youtube.com/@cloudposse"}}},"free-assessment":{slug:"free-assessment",title:"Free Assessment Consultation",description:"Discuss your goals and scope a paid cloud infrastructure assessment",calLink:"team/cloudposse/free-assessment",enabled:!0,aliases:["assessment"],metadata:{duration:"30 minutes",type:"assessment"},pageContent:{mainHeading:"Book a Free Assessment Consultation",bulletPoints:["Discuss your environment and the decisions you need to make","Identify the questions an assessment should answer","Establish fit and scope for a $24,000 USD assessment","Paid deliverables include recommendations, future-state architecture, and a migration plan"],alternativeOption:{text:"Have a specific project in mind instead?",linkText:"Discuss your project",linkSlug:"consultation"},supportSection:{text:"Technical issues or need help?",linkText:"Contact support",linkHref:"/support"},emailSection:{text:"You can also email us at",email:"[email protected]"},bottomContent:{line1:"The consultation is free. The technical assessment is a separate, paid engagement.",line2:"$24,000 USD includes recommendations, a future-state architecture, a migration plan, and four weeks of post-delivery questions and clarifications within scope."},showCustomerGrid:!1},seo:{metaTitle:"Free Assessment Consultation | Cloud Posse",metaDescription:"Book a free consultation to discuss your cloud environment, establish fit, and scope a paid infrastructure assessment.",ogTitle:"Free Assessment Consultation",ogSubtitle:"Define the right assessment for your environment",ogDescription:"Discuss your goals and the questions you need answered. The technical assessment is a separate, paid engagement.",ogCtaLabel:"Book a Free Consultation",ogImageText:"Free Assessment Consultation"},contactForm:{enabled:!0,customSubject:"Assessment Consultation Request",emailValidation:{blockFreeEmailProviders:!0,blockDisposableEmails:!0,requireMxRecord:!0}},nextSteps:{avatar:"https://github.com/osterman.png",name:"Erik Osterman",timezone:"America/Chicago",email:"[email protected]",socialLinks:{linkedin:"https://www.linkedin.com/company/cloudposse",github:"https://github.com/cloudposse",youtube:"https://www.youtube.com/@cloudposse"}}},roadmap:{slug:"roadmap",title:"Roadmap Review",description:"Walk through Cloud Posse's product roadmap and see what's coming next",calLink:"team/cloudposse/roadmap",enabled:!0,metadata:{duration:"60 minutes",type:"consultation"},pageContent:{mainHeading:"Roadmap Review",bulletPoints:["See what Cloud Posse is shipping next and what's on the horizon","Plan ahead so you don't rebuild what we're about to release","Learn how upcoming features fit into your infrastructure strategy","Ask questions and share what you'd like to see prioritized"],alternativeOption:{text:"Need help with your infrastructure now?",linkText:"Talk to an Engineer",linkSlug:"consultation"},supportSection:{text:"Technical issues or need help?",linkText:"Contact support",linkHref:"/support"},emailSection:{text:"You can also email us at",email:"[email protected]"},bottomContent:{line1:"Hundreds of companies trust Cloud Posse to accelerate their cloud infrastru
1cture.",line2:"See what we're building next and how it fits into your plans."},showCustomerGrid:!0},seo:{metaTitle:"Roadmap Review | Cloud Posse",metaDescription:"Book a free 60-minute call to walk through Cloud Posse's product roadmap. See what's coming next and plan ahead so you don't rebuild what we're about to ship.",ogTitle:"Roadmap Review",ogSubtitle:"See What Cloud Posse Is Building Next",ogDescription:"Schedule a free 60-minute call to walk through our product roadmap. See what's shipping next and plan your infrastructure strategy around it.",ogCtaLabel:"Book Roadmap Review",ogImageText:"Cloud Posse Roadmap Review"},contactForm:{enabled:!0,customSubject:"Roadmap Review Request",emailValidation:{blockFreeEmailProviders:!0,blockDisposableEmails:!0,requireMxRecord:!0}},nextSteps:{avatar:"https://github.com/osterman.png",name:"Erik Osterman",timezone:"America/Chicago",email:"[email protected]",socialLinks:{linkedin:"https://www.linkedin.com/company/cloudposse",github:"https://github.com/cloudposse",youtube:"https://www.youtube.com/@cloudposse"}}},kickoff:{slug:"kickoff",title:"Project Kickoff",description:"Kick off your Cloud Posse engagement with a structured project kickoff session",calLink:"team/cloudposse/kickoff",enabled:!0,metadata:{duration:"60 minutes",type:"kickoff"},pageContent:{mainHeading:"Project Kickoff",bulletPoints:["Align on goals, scope, and success criteria","Meet the team and establish communication cadence","Review your infrastructure roadmap and first milestones","Walk through next steps so everyone hits the ground running"],alternativeOption:{text:"Not a customer yet?",linkText:"Talk to Sales",linkSlug:"sales"},supportSection:{text:"Technical issues or need help?",linkText:"Contact support",linkHref:"/support"},emailSection:{text:"You can also email us at",email:"[email protected]"},bottomContent:{line1:"Hundreds of companies trust Cloud Posse to accelerate their cloud infrastructure.",line2:"Let's kick off your engagement the right way."},showCustomerGrid:!0},seo:{metaTitle:"Project Kickoff | Cloud Posse",metaDescription:"Schedule your Cloud Posse project kickoff. Align on goals, meet the team, and establish a clear path to your first milestones.",ogTitle:"Project Kickoff",ogSubtitle:"Start Your Engagement Right",ogDescription:"Book a 60-minute project kickoff to align on goals, meet the team, and map out your first milestones with Cloud Posse.",ogCtaLabel:"Book Kickoff",ogImageText:"Cloud Posse Project Kickoff"},contactForm:{enabled:!0,customSubject:"Project Kickoff Request",emailValidation:{blockFreeEmailProviders:!0,blockDisposableEmails:!0,requireMxRecord:!0}},nextSteps:{avatar:"https://github.com/osterman.png",name:"Erik Osterman",timezone:"America/Chicago",email:"[email protected]",socialLinks:{linkedin:"https://www.linkedin.com/company/cloudposse",github:"https://github.com/cloudposse",youtube:"https://www.youtube.com/@cloudposse"}}},osterman:{slug:"osterman",title:"Meet with Erik Osterman",description:"Schedule a meeting with Erik Osterman, CEO & Founder of Cloud Posse",calLink:"osterman/meet",enabled:!0,aliases:["erik"],headshot:{src:"https://github.com/osterman.png",alt:"Erik Osterman",title:"CEO & Founder of Cloud Posse",bio:"Trusted advisor for high-performing DevOps teams."},metadata:{duration:"30 minutes",type:"meeting"},pageContent:{mainHeading:"Meet with Erik Osterman",bulletPoints:["Get answers from someone who's built hundreds of platforms","Shortcut a decade of lessons in minutes","Learn what actually works in production"],alternativeOption:{text:"Need to talk to our sales team?",linkText:"Talk to Sales",linkSlug:"demo"},emailSection:{text:"You can also email us at",email:"[email protected]"},showCustomerGrid:!1},seo:{metaTitle:"Meet with Erik Osterman | Cloud Posse",metaDescription:"Schedule a meeting with Erik Osterman, CEO & Founder of Cloud Posse",ogTitle:"Meet with Erik Osterman",ogSubtitle:"CEO & Founder of Cloud Posse",ogDescription:"Schedule a 30-minute meeting with Erik Osterman to discu
1ss your cloud infrastructure challenges and explore how Cloud Posse can help.",ogCtaLabel:"Book Call",ogImageText:"Meet with Erik Osterman"},contactForm:{enabled:!0,customSubject:"Meeting Request for Erik Osterman",emailValidation:{blockFreeEmailProviders:!0,blockDisposableEmails:!0,requireMxRecord:!0}},nextSteps:{avatar:"https://github.com/osterman.png",name:"Erik Osterman",timezone:"America/Chicago",email:"[email protected]",socialLinks:{linkedin:"https://www.linkedin.com/in/osterman",github:"https://github.com/osterman",youtube:"https://www.youtube.com/@cloudposse"}}}};function a(e){if(o[e])return o[e];for(let s of Object.values(o)){var t;if(null==(t=s.aliases)?void 0:t.includes(e))return s}return null}let n={blockFreeEmailProviders:!0,blockDisposableEmails:!0},i={};for(let e of Object.values(o)){var r;e.calLink&&(null==(r=e.contactForm)?void 0:r.emailValidation)&&(i[e.calLink]=e.contactForm.emailValidation)}function l(e){var t;return null!=(t=i[e])?t:n}},49264:(e,t,s)=>{s.d(t,{HU:()=>p,DH:()=>j,PY:()=>N,sy:()=>O,tU:()=>M});
1var o=s(99010),a=s(3242),n=s(63150),i=s(72138),r=s(27202),l=s(67551),c=s(82084),d=s(89969),u=s(15032);function m(e,t,s){(0,d.i)({eventName:u.Vf.ContentViewed,platform:"local",customData:{engagement_type:"booking_step",meeting_type:e,booking_step:t,...s?{failure_reason:s}:{}}}).catch(()=>{})}function p(e){let{config:t,email:s}=e,[d,u]=(0,a.useState)(!0),[p]=(0,a.useState)(c.X),h=(0,r.useRouter)(),f="meeting-".concat(t.slug),g=(0,a.useRef)(!1);return(0,a.useEffect)(()=>{let e,s,o=!1,a=!1,n=()=>{!o&&(u(!1),g.current||(g.current=!0,m(t.slug,"calendar_opened")))},r=s=>{if(o||a)return;let n=(0,l.Z)(s);n&&(a=!0,l.r.saveBookingData("meeting-".concat(t.slug),"booking",n),m(t.slug,"booking_reported"),e=setTimeout(()=>{o||h.push("/meet/".concat(t.slug,"/confirmation"))},1e3))},c=setTimeout(()=>{o||u(!1)},5e3);return(0,i.T)({namespace:f}).then(e=>{o||(s=e,e("on",{action:"linkReady",callback:n}),e("on",{action:"bookingSuccessful",callback:r}),e("on",{action:"bookingSuccessfulV2",callback:r}))}).catch(()=>{o||u(!1)}),()=>{o=!0,clearTimeout(c),e&&clearTimeout(e),null==s||s("off",{action:"linkReady",callback:n}),null==s||s("off",{action:"bookingSuccessful",callback:r}),null==s||s("off",{action:"bookingSuccessfulV2",callback:r})}},[t.slug,f,h]),(0,o.jsxs)("div",{className:"relative w-full","aria-busy":d,"data-sentry-component":"CalEmbedFullWidth","data-sentry-source-file":"cal-embed-fullwidth.client.tsx",children:[d&&(0,o.jsx)("div",{className:"absolute left-1/2 top-1/2 z-10 -translate-x-1/2 -translate-y-1/2",children:(0,o.jsx)(n.M,{enabled:d})}),(0,o.jsx)(i.A,{namespace:f,calLink:t.calLink,config:{theme:"dark",layout:"month_view",hideEventTypeDetails:"true",embedType:"inline",...s?{email:s}:{},...p},"data-sentry-element":"CalEmbed","data-sentry-source-file":"cal-embed-fullwidth.client.tsx"})]})}var h=s(85438),f=s(15963),g=s(5895),x=s(5688),b=s(65384),k=s(45747),y=s(43565),w=s(60450),v=s(97853);let C=(0,f.default)(()=>Promise.all([s.e(14482),s.e(47698),s.e(48257)]).then(s.bind(s,70638)).then(e=>e.PhoneInput),{loadableGenerated:{webpack:()=>[70638]},ssr:!1});function j(e){var t,s,n,i,l,c,d,u,m,p,f;let{config:j}=e,N=(0,r.useRouter)(),S=(0,r.useSearchParams)().get("product"),{register:E,handleSubmit:P,formState:{errors:T},reset:D,watch:A,setValue:F}=(0,g.mN)({defaultValues:{firstName:"",lastName:"",email:"",phone:"",message:""}}),R=(0,y.F)(null!=(f=null==(t=j.contactForm)?void 0:t.emailValidation)?f:{}),{attributionData:O}=(0,x.z)(),{data:L}=(0,b.F)(),M=A("firstName"),_=A("lastName");A("email");let I=A("phone");(0,a.useEffect)(()=>{let e=(0,k.o6)();e&&F("email",e)},[F]),(0,a.useEffect)(()=>{let e=(0,w.fq)("meet-contact-firstName"),t=(0,w.fq)("meet-contact-lastName"),s=(0,w.fq)("meet-contact-phone");e&&F("firstName",e),t&&F("lastName",t),s&&F("phone",s)},[F]),(0,a.useEffect)(()=>{M&&(0,w.$2)("meet-contact-firstName",M,365)},[M]),(0,a.useEffect)(()=>{_&&(0,w.$2)("meet-contact-lastName",_,365)},[_]),(0,a.useEffect)(()=>{I&&(0,w.$2)("meet-contact-phone",I,365)},[I]);let q=(0,h.useMutation)({mutationFn:async e=>{var t,s;let o=await fetch("/api/contact",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...e,visitorId:(0,v.YA)(),subject:null!=(s=null==(t=j.contactForm)?void 0:t.customSubject)?s:"Contact Form Submission",source:j.slug,product:S,attributionData:O,geoData:L})});if(!o.ok)throw Error("Failed to submit form");return o.json()},onSuccess:(e,t)=>{(0,k.uY)(t.email),D(),N.push("/meet/".concat(j.slug,"/next-steps"))},onError:e=>{console.error("Form submission error:",e)}}),V=e=>{q.mutate(e)};return(0,o.jsx)("div",{className:"w-full max-w-2xl space-y-4 rounded-lg bg-surface-raised p-2 sm:space-y-6 sm:p-8","data-sentry-component":"ContactForm","data-sentry-source-file":"contact-form.client.tsx",children:(0,o.jsxs)("form",{onSubmit:e=>{P(V)(e)},className:"space-y-6",children:[(0,o.jsxs)("div",{className:"grid grid-cols-1 gap-6 sm:grid-cols-2",children:[(0,o.jsxs)("div",{children:[(0,o.jsxs)("label",{htmlFor:"firstName",className:"mb-2 block text-sm font-medium text-stone-800 dark:text-stone-200",children:["First Name ",(0,o.jsx)("span",{className:"text-violet-700",children:"*"})]}),(0,o.jsx)("input",{type:"text",id:"firstName",...E("firstName",{required:"First name is required"}),className:"w-full rounded-lg border border-stone-200 bg-stone-100 px-4 py-2 text-foreground placeholder-stone-500 focus:border-primary focus:outline-none focus:ring-2 focus:ring-primary/20 dark:border-stone-700 dark:bg-stone-900",placeholder:"John"}),T.firstName&&(0,o.jsx)("p",{className:"mt-1 text-sm font-bold text-violet-700",children:T.firstName.message})]}),(0,o.jsxs)("div",{children:[(0,o.jsxs)("label",{htmlFor:"lastName",className:"mb-2 block text-sm font-medium text-stone-800 dark:text-stone-200",children:["Last Name ",(0,o.jsx)("span",{className:"text-violet-700",children:"*"})]}),(0,o.jsx)("input",{type:"text",id:"lastName",...E("lastName",{required:"Last name is required"}),className:"w-full rounded-lg border border-stone-200 bg-stone-100 px-4 py-2 text-foreground placeholder-stone-500 focus:border-primary focus:outline-none focus:ring-2 focus:ring-primary/20 dark:border-stone-700 dark:bg-stone-900",placeholder:"Doe"}),T.lastName&&(0,o.jsx)("p",{className:"mt-1 text-sm font-bold text-violet-700",children:T.lastName.message})]})]}),(0,o.jsxs)("div",{children:[(0,o.jsxs)("label",{htmlFor:"email",className:"mb-2 block text-sm font-medium text-stone-800 dark:text-stone-200",children:["Email ",(0,o.jsx)("span",{className:"text-violet-700",children:"*"})]}),(0,o.jsx)("input",{type:"email",id:"email",...E("email",{validate:R}),className:"w-full rounded-lg border border-stone-200 bg-stone-100 px-4 py-2 text-foreground placeholder-stone-500 focus:border-primary focus:outline-none focus:ring-2 focus:ring-primary/20 dark:border-stone-700 dark:bg-stone-900",placeholder:"[email protected]"}),T.email&&(0,o.jsx)("p",{className:"mt-1 text-sm font-bold text-violet-700",children:T.email.message})]}),(0,o.jsxs)("div",{children:[(0,o.jsxs)("label",{htmlFor:"phone",className:"mb-2 block text-sm font-medium text-stone-800 dark:text-stone-200",children:["Phone Number ",(0,o.jsx)("span",{className:"text-violet-700",children:"*"})]}),(0,o.jsx)(C,{name:"phone",register:E,watch:A,setValue:F,required:!0,placeholder:"Enter your phone number",error:null==(s=T.phone)?void 0:s.message,"data-sentry-element":"PhoneInput","data-sentry-source-file":"contact-form.client.tsx"})]}),(0,o.jsxs)("div",{children:[(0,o.jsxs)("label",{htmlFor:"message",className:"mb-2 block text-sm font-medium text-stone-800 dark:text-stone-200",children:["Message ",(0,o.jsx)("span",{className:"text-violet-700",children:"*"})]}),(0,o.jsx)("textarea",{id:"message",...E("message",{required:"Message is required"}),rows:6,className:"w-full rounded-lg border border-stone-200 bg-stone-100 px-4 py-2 text-foreground placeholder-stone-500 focus:border-primary focus:outline-none focus:ring-2 focus:ring-primary/20 dark:border-stone-700 dark:bg-stone-900",placeholder:"Tell us about your project..."}),T.message&&(0,o.jsx)("p",{className:"mt-1 text-sm font-bold text-violet-700",children:T.message.message})]}),q.isError&&(0,o.jsxs)("div",{className:"rounded-lg bg-red-900/50 p-4 text-red-700 dark:text-red-300",children:["Something went wrong. Please try again or email us directly at"," ",(null==(i=j.pageContent)||null==(n=i.emailSection)?void 0:n.email)||"[email protected]"]}),(0,o.jsx)("button",{type:"submit",disabled:q.isPending,className:"hero-button-gradient flex w-full items-center justify-center rounded-lg px-7 py-3 font-medium text-white duration-300 ease-in hover:opacity-80 disabled:cursor-not-allowed disabled:opacity-50",children:q.isPending?"Sending...":"Send Message"}),(0,o.jsxs)("div",{className:"text-center text-stone-600",children:[(null==(c=j.pageContent)||null==(l=c.emailSection)?void 0:l.text)||"(You can also email us at"," ",(0,o.jsx)("a",{href:"mailto:".concat((null==(u=j.pageContent)||null==(d=u.emailSection)?void 0:d.email)||"[email protected]"),className:"text-stone-500 transition-colors duration-300 ease-in-out hover:text-stone-800 dark:hover:text-stone-200",children:(null==(p=j.pageContent)||null==(m
1=p.emailSection)?void 0:m.email)||"[email protected]"}),")"]})]})})}function N(e){let{onEmailSubmit:t,emailValidation:s,meetingType:n}=e,[i,r]=(0,a.useState)(!1),l=(0,a.useRef)(!1),c=(0,y.F)(null!=s?s:{}),{register:d,handleSubmit:u,formState:{errors:p}}=(0,g.mN)({defaultValues:{email:(0,k.o6)()||""}}),h=e=>{r(!0),m(n,"email_accepted"),(0,k.uY)(e.email),setTimeout(()=>{t(e.email),r(!1)},500)};return(0,o.jsxs)("div",{className:"w-full space-y-4 rounded-lg bg-surface-raised p-2 sm:space-y-6 sm:p-8","data-sentry-component":"EmailCollection","data-sentry-source-file":"email-collection.client.tsx",children:[(0,o.jsxs)("div",{className:"space-y-2",children:[(0,o.jsx)("h3",{className:"text-xl font-semibold text-foreground",children:"Let's get started"}),(0,o.jsx)("p",{className:"text-sm text-stone-600 dark:text-stone-400",children:"What's your work email for the calendar invite and zoom link?"})]}),(0,o.jsxs)("form",{noValidate:!0,onSubmit:e=>{m(n,"email_submitted"),u(h,e=>{var t,s;m(n,"email_rejected","string"!=typeof(s=null==(t=e.email)?void 0:t.message)?"validation_failed":"Email is required"===s?"required":s.includes("business email")?"free_email_provider":s.includes("Disposable")||s.includes("relay")?"disposable_or_relay":s.includes("Plus addressing")?"plus_addressing":s.includes("not configured to receive")?"no_mx_record":s.includes("Unable to verify")?"verification_unavailable":s.includes("TLD")?"invalid_tld":"invalid_format")})(e)},className:"space-y-4",children:[(0,o.jsxs)("div",{children:[(0,o.jsx)("label",{htmlFor:"email",className:"mb-2 block text-sm font-medium text-stone-800 dark:text-stone-200",children:"Email Address"}),(0,o.jsx)("input",{type:"email",id:"email",...d("email",{validate:c}),onInput:()=>{l.current||(l.current=!0,m(n,"email_started"))},"aria-invalid":!!p.email,"aria-describedby":p.email?"email-error":void 0,className:"w-full rounded-lg border border-stone-200 bg-stone-100 px-4 py-3 text-foreground placeholder-stone-500 focus:border-primary focus:outline-none focus:ring-2 focus:ring-primary/20 dark:border-stone-700 dark:bg-stone-900",placeholder:"[email protected]",autoFocus:!0}),p.email&&(0,o.jsx)("p",{id:"email-error",role:"alert",className:"mt-1 text-sm font-medium text-violet-700 dark:text-violet-300",children:p.email.message})]}),(0,o.jsx)("div",{className:"flex justify-center",children:(0,o.jsx)("button",{type:"submit",disabled:i,className:"hero-button-gradient flex w-full max-w-sm items-center justify-center rounded-lg px-7 py-3 font-medium text-white duration-300 ease-in hover:opacity-80 disabled:cursor-not-allowed disabled:opacity-50",children:i?"Processing...":"Continue to Calendar"})})]})]})}var S=s(54440),E=s(14176),P=s(88966),T=s(88440),D=s(16728),A=s(13889),F=s(36614),R=s(33900);function O(e){let{bookingData:t,email:s}=e,[n,i]=(0,a.useState)(!1);(0,a.useEffect)(()=>{i(!0)},[]);let{title:r,videoCallUrl:l,startTime:c,endTime:d}=t,u=((e,t)=>{try{let s=(0,S.H)(e),o=(0,S.H)(t),a=(0,E.GP)(s,"EEEE, MMMM d, yyyy"),n="".concat((0,E.GP)(s,"h:mm a")," - ").concat((0,E.GP)(o,"h:mm a"));return{date:a,time:n}}catch(e){return{date:"TBD",time:"TBD"}}})(c,d),m=e=>{try{let t=(0,S.H)(e);if(!(0,P.f)(t))return console.warn("[MeetingDetailsCard] Invalid date:",e),null;return(0,E.GP)(t,"yyyyMMdd'T'HHmmss")}catch(e){return console.error("[MeetingDetailsCard] Failed to format calendar date:",e),null}},p=m(c),h=m(d);return(0,o.jsxs)("div",{className:"mb-8 w-full max-w-2xl rounded-xl border border-purple-500/20 bg-gradient-to-br from-purple-100/10 to-purple-100/20 p-8 backdrop-blur-sm dark:from-purple-900/10 dark:to-purple-950/20","data-sentry-component":"MeetingDetailsCard","data-sentry-source-file":"meeting-details-card.tsx",children:[(0,o.jsx)("h3",{className:"mb-6 text-center text-2xl font-bold text-foreground",children:"Your Meeting Details"}),(0,o.jsxs)("div",{className:"space-y-5",children:[(0,o.jsxs)("div",{className:"flex items-start space-x-4",children:[(0,o.jsx)(T.A,{className:"mt-1 h-5 w-5 flex-shrink-0 text-purple-700 dark:text-purple-400","data-sentry-element":"Calendar","data-sentry-source-file":"meeting-details-card.tsx"}),(0,o.jsxs)("div",{className:"flex-1",children:[(0,o.jsx)("p",{className:"text-sm font-medium text-purple-700 dark:text-purple-300",children:"Meeting"}),(0,o.jsx)("p",{className:"text-lg font-semibold text-foreground",children:r})]})]}),(0,o.jsxs)("div",{className:"flex items-start space-x-4",children:[(0,o.jsx)(D.A,{className:"mt-1 h-5 w-5 flex-shrink-0 text-purple-700 dark:text-purple-400","data-sentry-element":"Clock","data-sentry-source-file":"meeting-details-card.tsx"}),(0,o.jsxs)("div",{className:"flex-1",children:[(0,o.jsx)("p",{className:"text-sm font-medium text-purple-700 dark:text-purple-300",children:"Date & Time"}),(0,o.jsx)("p",{className:"font-semibold text-foreground",children:u.date}),(0,o.jsx)("p",{className:"text-gray-700 dark:text-gray-300",children:u.time})]}),n&&(0,o.jsxs)("div",{className:"text-right",children:[(0,o.jsx)("p",{className:"mb-2 text-sm font-medium text-purple-700 dark:text-purple-300",children:"Starts in"}),(0,o.jsx)(R.MeetingCountdown,{meetingTime:new Date(c),variant:"minimal",showLabels:!0})]})]}),l&&(0,o.jsxs)("div",{className:"flex items-start space-x-4",children:[(0,o.jsx)(A.A,{className:"mt-1 h-5 w-5 flex-shrink-0 text-purple-700 dark:text-purple-400"}),(0,o.jsxs)("div",{className:"flex-1",children:[(0,o.jsx)("p",{className:"text-sm font-medium text-purple-700 dark:text-purple-300",children:"Video Conference"}),(0,o.jsxs)("a",{href:l,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center space-x-2 text-purple-700 transition-colors hover:text-purple-700 dark:text-purple-400 dark:hover:text-purple-300",children:[(0,o.jsx)("span",{children:"Join Meeting"}),(0,o.jsx)("span",{className:"text-sm",children:"→"})]})]})]}),(0,o.jsxs)("div",{className:"flex items-start space-x-4",children:[(0,o.jsx)(F.A,{className:"mt-1 h-5 w-5 flex-shrink-0 text-purple-700 dark:text-purple-400","data-sentry-element":"MapPin","data-sentry-source-file":"meeting-details-card.tsx"}),(0,o.jsxs)("div",{className:"flex-1",children:[(0,o.jsx)("p",{className:"text-sm font-medium text-purple-700 dark:text-purple-300",children:"Location"}),(0,o.jsx)("p",{className:"text-foreground",children:"Virtual Meeting (Zoom)"})]})]}),s&&(0,o.jsx)("div",{className:"border-t border-purple-500/20 pt-5",children:(0,o.jsxs)("p",{className:"text-sm text-gray-600 dark:text-gray-400",children:["Calendar invite sent to: ",(0,o.jsx)("span",{className:"font-medium text-foreground",children:s})]})})]}),p&&h?(0,o.jsxs)("div",{className:"mt-8 flex flex-col space-y-3 sm:flex-row sm:space-x-3 sm:space-y-0",children:[(0,o.jsxs)("a",{href:"https://calendar.google.com/calendar/render?action=TEMPLATE&text=".concat(encodeURIComponent(r),"&dates=").concat(p,"/").concat(h,"&details=").concat(encodeURIComponent("
1Video call: ".concat(l||""))),target:"_blank",rel:"noopener noreferrer",className:"flex items-center justify-center rounded-lg bg-purple-600 px-4 py-2.5 text-sm font-medium text-white transition-all hover:bg-purple-700 hover:shadow-lg",children:[(0,o.jsx)(T.A,{className:"mr-2 h-4 w-4"}),"Add to Google Calendar"]}),(0,o.jsxs)("a",{href:"data:text/calendar;charset=utf8,BEGIN:VCALENDAR%0AVERSION:2.0%0ABEGIN:VEVENT%0AURL:".concat(encodeURIComponent(l||""),"%0ADTSTART:").concat(p,"%0ADTEND:").concat(h,"%0ASUMMARY:").concat(encodeURIComponent(r),"%0ADESCRIPTION:").concat(encodeURIComponent("Video call: ".concat(l||"")),"%0AEND:VEVENT%0AEND:VCALENDAR"),download:"meeting.ics",className:"flex items-center justify-center rounded-lg border border-purple-500/30 bg-purple-900/20 px-4 py-2.5 text-sm font-medium text-foreground transition-all hover:bg-purple-900/30",children:[(0,o.jsx)(T.A,{className:"mr-2 h-4 w-4"}),"Download Calendar File"]})]}):(0,o.jsx)("div",{className:"mt-8 text-center text-sm text-gray-600 dark:text-gray-400",children:"Calendar links unavailable due to invalid date format"})]})}var L=s(99626);function M(e){let{tabs:t,activeTab:s,onTabChange:a}=e;return(0,o.jsxs)("div",{className:"w-full md:-mt-4","data-sentry-component":"Tabs","data-sentry-source-file":"tabs.client.tsx",children:[(0,o.jsx)("div",{className:"border-b border-stone-200 dark:border-stone-800",children:(0,o.jsx)("nav",{className:"-mb-px flex space-x-8","aria-label":"Tabs",role:"tablist",children:t.map(e=>(0,o.jsx)("button",{type:"button",onClick:()=>a(e.id),className:(0,L.cn)("whitespace-nowrap border-b-2 px-1 py-4 text-sm font-medium transition-colors",s===e.id?"border-primary text-foreground":"border-transparent text-stone-600 hover:border-stone-200 hover:text-stone-700 dark:text-stone-400 dark:hover:border-stone-700 dark:hover:text-stone-300"),role:"tab","aria-selected":s===e.id,"aria-controls":"panel-".concat(e.id),id:"tab-".concat(e.id),tabIndex:s===e.id?0:-1,children:e.label},e.id))})}),(0,o.jsx)("div",{className:"mt-8",children:t.map(e=>(0,o.jsx)("div",{id:"panel-".concat(e.id),role:"tabpanel","aria-labelledby":"tab-".concat(e.id),className:s===e.id?"block":"hidden",children:e.content},e.id))})]})}},82084:(e,t,s)=>{s.d(t,{v:()=>c,X:()=>d});let o=["visitorId","sessionId","utmSource","utmMedium","utmCampaign","utmTerm","utmContent","landingUrl","landingPath","referrer"];function a(e){if("string"==typeof e)try{let t=new URL(e);if(!["https:","http:"].includes(t.protocol)||t.username||t.password)return;let s=t.origin+t.pathname;return s.length<=500?s:void 0}catch(e){return}}var n=s(85999),i=s(97853);let r="cp-booking-entry",l={utm_source:"utmSource",utm_medium:"utmMedium",utm_campaign:"utmCampaign",utm_term:"utmTerm",utm_content:"utmContent"};function c(){let e=Date.now(),t=new URL(window.location.href),s={landingUrl:a(t.href),landingPath:t.pathname,referrer:a(document.referrer)};for(let[e,o]of Object.entries(l)){let a=t.searchParams.get(e);a&&(s[o]=a.slice(0,256))}try{let o=sessionStorage.getItem(r),a=o?JSON.parse(o):null,n=!Object.keys(l).some(e=>
1t.searchParams.has(e))&&(null==a?void 0:a.entry)&&"number"==typeof a.touchedAt&&e-a.touchedAt<18e5?a.entry:s;return sessionStorage.setItem(r,JSON.stringify({touchedAt:e,entry:n})),n}catch(e){return s}}function d(){return Object.fromEntries(Object.entries(function(e){let t={};for(let s of o){let o=null==e?void 0:e["cp_".concat(s)];if(!("string"!=typeof o||!o.trim()||[...o].some(e=>32>e.charCodeAt(0))))if("landingUrl"===s||"referrer"===s){let e=a(o);e&&(t[s]=e)}else"landingPath"===s?o.startsWith("/")&&!o.startsWith("//")&&!/[?#]/.test(o)&&o.length<=500&&(t[s]=o):o.length<=256&&(t[s]=o)}return t}(Object.fromEntries(Object.entries({...c(),visitorId:(0,i.YA)(),sessionId:(0,n._9)()||void 0}).map(e=>{let[t,s]=e;return["cp_".concat(t),s]})))).map(e=>{let[t,s]=e;return["metadata[cp_".concat(t,"]"),s]}))}}}]);

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.