(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[974],{692:(e,t,s)=>{"use strict";s.d(t,{Gq:()=>o,Jz:()=>a,kI:()=>n});let r={newsletter:{maxRequests:5,windowMs:36e5},feedback:{maxRequests:3,windowMs:36e5},contact:{maxRequests:2,windowMs:36e5},popularFeatures:{maxRequests:10,windowMs:36e5}};function a(e){let t=r[e],s=Date.now();try{let r=localStorage.getItem("rateLimit_".concat(e)),a=r?JSON.parse(r):{count:0,windowStart:s};return s-a.windowStart>t.windowMs&&(a.count=0,a.windowStart=s),a.count>=t.maxRequests}catch(e){return console.warn("Rate limiting check failed:",e),!1}}function o(e){let t=r[e],s="rateLimit_".concat(e),a=Date.now();try{let e=localStorage.getItem(s),r=e?JSON.parse(e):{count:0,windowStart:a};a-r.windowStart>t.windowMs?(r.count=1,r.windowStart=a):r.count+=1,localStorage.setItem(s,JSON.stringify(r))}catch(e){console.warn("Failed to record submission:",e)}}function n(e){let t=r[e],s=Date.now();try{let r=localStorage.getItem("rateLimit_".concat(e)),a=r?JSON.parse(r):{count:0,windowStart:s};if(s-a.windowStart>t.windowMs)return t.maxRequests;return Math.max(0,t.maxRequests-a.count)}catch(e){return console.warn("Failed to get remaining submissions:",e),t.maxRequests}}},6877:(e,t,s)=>{"use strict";s.d(t,{Qu:()=>l,tN:()=>d,xs:()=>u});var r=s(1906),a=s(7039);let o=(e,t)=>{if(a.z){let s={page_title:document.title,page_location:window.location.pathname,timestamp:Date.now(),...t};(0,r.$s)(a.z,e,s)}},n=e=>{o("form_start",{form_type:e,event_category:"form"})},i=(e,t,s)=>{o(t?"form_success":"form_error",{form_type:e,error_message:s,event_category:"form"})},c=(e,t,s)=>{o("validation_error"===e?"form_validation_error":"form_field_".concat(e),{field_name:t,form_type:s,event_category:"form"})},l={start:()=>{o("contact_form_start"),n("contact")},submit:(e,t)=>{i("contact",e,t),e?o("contact_form_success"):o("contact_form_error",{error_message:t})},field:(e,t)=>c(e,t,"contact"),inquiryType:e=>{o("inquiry_type_select",{inquiry_type:e})}},u={start:()=>{o("feedback_form_start"),n("feedback")},submit:(e,t)=>{i("feedback",e,t),e?o("feedback_form_success"):o("feedback_form_error",{error_message:t})},field:(e,t)=>c(e,t,"feedback"),type:e=>{o("feedback_type_select",{feedback_type:e})},rating:e=>{o("rating_submit",{rating_value:e,rating_context:"feedback_form",event_category:"feedback"}),o("rating_click",{rating_value:e})},feature:e=>{o("feature_selection",{feature_name:e,selection_context:"feedback_form",event_category:"engagement"}),o("popular_feature_select",{feature_name:e})},style:e=>{o("photography_style_select",{photography_style:e})}},d={subscribe:(e,t)=>{i("newsletter",e,t),e?o("newsletter_subscribe",{success:!0}):o("newsletter_subscribe",{success:!1,error_message:t})}}},7039:(e,t,s)=>{"use strict";let r;s.d(t,{db:()=>c,z:()=>r});var a=s(1906),o=s(3915),n=s(5317);let i=(0,o.Wp)({apiKey:"AIzaSyDuXmoACmYcS38pRnSKT7pZiB2YFAtB35w",authDomain:"frametimesync.firebaseapp.com",projectId:"frametimesync",storageBucket:"frametimesync.firebasestorage.app",messagingSenderId:"593555084950",appId:"1:593555084950:web:183fdaa8121df4f54ed4b7",measurementId:"G-80HV83B5GQ"}),c=(0,n.aU)(i);r=(0,a.P5)(i)},7213:(e,t,s)=>{Promise.resolve().then(s.t.bind(s,6874,23)),Promise.resolve().then(s.t.bind(s,3063,23)),Promise.resolve().then(s.bind(s,8998))},7892:(e,t,s)=>{"use strict";s.d(t,{Ay:()=>m,ZG:()=>i,oI:()=>u,xI:()=>l});var r=s(1990),a=s(5317),o=s(7039),n=s(692);let i=(0,r.zD)("newsletter/subscribe",async(e,t)=>{let{rejectWithValue:s}=t;try{if((0,n.Jz)("newsletter")){let e=(0,n.kI)("newsletter");return s("Too many newsletter subscriptions. You can subscribe ".concat(e," more times in the next hour."))}let t=await (0,a.gS)((0,a.rJ)(o.db,"newsletter-subscribers"),{email:e,subscribedAt:a.Dc.now(),isActive:!0,source:"landing-page"});return(0,n.Gq)("newsletter"),{email:e,id:t.id,message:"Successfully subscribed to newsletter!"}}catch(e){return s(e instanceof Error?e.message:"Failed to subscribe to newsletter")}}),c=(0,r.Z0)({name:"newsletter",initialState:{email:"",isLoading:!1,isSubscribed:!1,error:null,successMessage:null},reducers:{setEmail:(e,t)=>{e.email=t.payload,(e.error||e.successMessage)&&(e.error=null,e.successMessage=null)},clearMessages:e=>{e.error=null,e.successMessage=null},resetNewsletter:e=>{e.email="",e.isLoading=!1,e.isSubscribed=!1,e.error=null,e.successMessage=null}},extraReducers:e=>{e.addCase(i.pending,e=>{e.isLoading=!0,e.error=null,e.successMessage=null}).addCase(i.fulfilled,(e,t)=>{e.isLoading=!1,e.isSubscribed=!0,e.email="",e.successMessage=t.payload.message}).addCase(i.rejected,(e,t)=>{e.isLoading=!1,e.error=t.payload})}}),{setEmail:l,clearMessages:u,resetNewsletter:d}=c.actions,m=c.reducer},8418:(e,t,s)=>{"use strict";s.d(t,{G:()=>o,j:()=>a});var r=s(4540);let a=()=>(0,r.wA)(),o=r.d4},8998:(e,t,s)=>{"use strict";s.d(t,{default:()=>c});var r=s(5155),a=s(8418),o=s(7892),n=s(2115),i=s(6877);function c(){let e=(0,a.j)(),{email:t,isLoading:s,error:c,successMessage:l}=(0,a.G)(e=>e.newsletter);return(0,n.useEffect)(()=>{l?i.tN.subscribe(!0):c&&i.tN.subscribe(!1,c)},[l,c]),(0,n.useEffect)(()=>{if(c||l){let t=setTimeout(()=>{e((0,o.oI)())},5e3);return()=>clearTimeout(t)}},[c,l,e]),(0,r.jsx)("section",{className:"w-full py-20 lg:py-32 bg-gray-800",children:(0,r.jsxs)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 text-center",children:[(0,r.jsx)("h2",{className:"text-3xl md:text-4xl lg:text-5xl font-bold text-white mb-6",children:"Stay Updated"}),(0,r.jsx)("p",{className:"text-lg md:text-xl text-gray-300 mb-12 max-w-2xl mx-auto",children:"Get notified about new photography features and updates"}),(0,r.jsxs)("form",{onSubmit:s=>{s.preventDefault(),t.trim()&&e((0,o.ZG)(t.trim()))},className:"flex flex-col sm:flex-row gap-4 max-w-md mx-auto mb-6",children:[(0,r.jsx)("input",{type:"email",value:t,onChange:t=>{e((0,o.xI)(t.target.value))},placeholder:"your@email.com",className:"flex-1 px-6 py-4 rounded-2xl bg-white text-gray-900 placeholder-gray-500 focus:outline-none focus:ring-2 focus:ring-orange-400 font-medium disabled:opacity-50",required:!0,disabled:s}),(0,r.jsx)("button",{type:"submit",disabled:s||!t.trim(),className:"px-8 py-4 bg-orange-400 hover:bg-orange-500 text-white font-semibold rounded-2xl transition-colors duration-200 shadow-lg hover:shadow-xl disabled:opacity-50 disabled:cursor-not-allowed",children:s?"Subscribing...":"Subscribe"})]}),c&&(0,r.jsx)("div",{className:"max-w-md mx-auto",children:(0,r.jsx)("p",{className:"text-red-400 text-sm bg-red-100 bg-opacity-10 px-4 py-2 rounded-lg",children:c})}),l&&(0,r.jsx)("div",{className:"max-w-md mx-auto",children:(0,r.jsx)("p",{className:"text-green-400 text-sm bg-green-100 bg-opacity-10 px-4 py-2 rounded-lg",children:l})})]})})}}},e=>{e.O(0,[135,992,724,441,964,358],()=>e(e.s=7213)),_N_E=e.O()}]);