1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[207],{285:(e,t,s)=>{s.d(t,{$:()=>d,r:()=>l});var a=s(5155),r=s(2115),n=s(4253),i=s(2085),o=s(9434);let l=(0,i.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),d=r.forwardRef((e,t)=>{let{className:s,variant:r,size:i,asChild:d=!1,...c}=e,m=d?n.DX:"button";return(0,a.jsx)(m,{className:(0,o.cn)(l({variant:r,size:i,className:s})),ref:t,...c})});d.displayName="Button"},501:(e,t,s)=>{s.d(t,{Header:()=>_});var a=s(5155),r=s(6874),n=s.n(r),i=s(4437),o=s(8294),l=s(1721),d=s(3349),c=s(8437),m=s(6104),f=s(3004),p=s(5695),u=s(285),x=s(2115),h=s(6215),g=s(3158),v=s(518),j=s(154),y=s(9434);let N=h.bL,b=h.l9;h.YJ,h.ZL,h.Pb,h.z6,x.forwardRef((e,t)=>{let{className:s,inset:r,children:n,...i}=e;return(0,a.jsxs)(h.ZP,{ref:t,className:(0,y.cn)("flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",r&&"pl-8",s),...i,children:[n,(0,a.jsx)(g.A,{className:"ml-auto"})]})}).displayName=h.ZP.displayName,x.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(h.G5,{ref:t,className:(0,y.cn)("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg 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 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",s),...r})}).displayName=h.G5.displayName;let w=x.forwardRef((e,t)=>{let{className:s,sideOffset:r=4,...n}=e;return(0,a.jsx)(h.ZL,{children:(0,a.jsx)(h.UC,{ref:t,sideOffset:r,className:(0,y.cn)("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md 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 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",s),...n})})});w.displayName=h.UC.displayName;let k=x.forwardRef((e,t)=>{let{className:s,inset:r,...n}=e;return(0,a.jsx)(h.q7,{ref:t,className:(0,y.cn)("relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",r&&"pl-8",s),...n})});k.displayName=h.q7.displayName,x.forwardRef((e,t)=>{let{className:s,children:r,checked:n,...i}=e;return(0,a.jsxs)(h.H_,{ref:t,className:(0,y.cn)("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",s),checked:n,...i,children:[(0,a.jsx)("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,a.jsx)(h.VF,{children:(0,a.jsx)(v.A,{className:"h-4 w-4"})})}),r]})}).displayName=h.H_.displayName,x.forwardRef((e,t)=>
1{let{className:s,children:r,...n}=e;return(0,a.jsxs)(h.hN,{ref:t,className:(0,y.cn)("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",s),...n,children:[(0,a.jsx)("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,a.jsx)(h.VF,{children:(0,a.jsx)(j.A,{className:"h-2 w-2 fill-current"})})}),r]})}).displayName=h.hN.displayName;let A=x.forwardRef((e,t)=>{let{className:s,inset:r,...n}=e;return(0,a.jsx)(h.JU,{ref:t,className:(0,y.cn)("px-2 py-1.5 text-sm font-semibold",r&&"pl-8",s),...n})});A.displayName=h.JU.displayName;let S=x.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(h.wv,{ref:t,className:(0,y.cn)("-mx-1 my-1 h-px bg-muted",s),...r})});function _(){let{user:e}=(0,c.A)(),t=(0,p.useRouter)(),s=async()=>{try{await (0,f.CI)(m.j2),t.push("/")}catch(e){console.error("Error signing out: ",e)}};return(0,a.jsx)("header",{className:"py-4 border-b",children:(0,a.jsxs)("div",{className:"container mx-auto px-4 flex justify-between items-center",children:[(0,a.jsxs)(n(),{href:"/",className:"flex items-center gap-2",children:[(0,a.jsx)(i.A,{className:"h-8 w-8 text-primary"}),(0,a.jsx)("h1",{className:"text-2xl font-headline font-bold",children:"SnapChop AI"})]}),(0,a.jsx)("div",{className:"flex items-center gap-2",children:e?(0,a.jsxs)(N,{children:[(0,a.jsx)(b,{asChild:!0,children:(0,a.jsx)(u.$,{variant:"ghost",className:"relative h-8 w-8 rounded-full",children:(0,a.jsx)(o.A,{className:"h-8 w-8 text-muted-foreground"})})}),(0,a.jsxs)(w,{className:"w-56",align:"end",forceMount:!0,children:[(0,a.jsx)(A,{className:"font-normal",children:(0,a.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,a.jsx)("p",{className:"text-sm font-medium leading-none",children:e.displayName||e.email})," ",(0,a.jsx)("p",{className:"text-xs leading-none text-muted-foreground",children:e.email})]})}),(0,a.jsx)(S,{}),(0,a.jsxs)(k,{onClick:()=>t.push("/account-setting"),children:[(0,a.jsx)(l.A,{className:"mr-2 h-4 w-4"}),"Account Setting"]}),(0,a.jsx)(S,{}),(0,a.jsxs)(k,{onClick:s,children:[(0,a.jsx)(d.A,{className:"mr-2 h-4 w-4"}),"Logout"]})]})]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(u.$,{asChild:!0,variant:"ghost",children:(0,a.jsx)(n(),{href:"/login",children:"Login"})}),(0,a.jsx)(u.$,{asChild:!0,children:(0,a.jsx)(n(),{href:"/signup",children:"Sign Up"})})]})})]})})}S.displayName=h.wv.displayName},3831:(e,t,s)=>{s.d(t,{Footer:()=>m});var a=s(5155),r=s(6874),n=s.n(r),i=s(2115),o=s(6104),l=s(5317);let d=(0,l.H9)(o.kA,"stats","counters"),c=e=>e.toLocaleString();function m(){let{stats:e,loading:t,error:s}=function(){let[e,t]=(0,i.useState)({visits:0,recipesGenerated:0}),[s,a]=(0,i.useState)(!0),[r,n]=(0,i.useState)(null);return(0,i.useEffect)(()=>{let e=(0,l.aQ)(d,e=>{e.exists()?t(e.data()):t({visits:0,recipesGenerated:0}),a(!1)},e=>{console.error("Error listening to stats:",e),n(e),a(!1)});return()=>e()},[]),{stats:e,loading:s,error:r}}(),r=new Date().getFullYear();return e.visits=0,(0,a.jsx)("footer",{className:"py-6 text-sm text-muted-foreground border-t mt-12",children:(0,a.jsxs)("div",{className:"container mx-auto flex flex-col md:flex-row justify-between items-center gap-4",children:[(0,a.jsxs)("div",{className:"text-center md:text-left",children:[(0,a.jsxs)("p",{children:["\xa9 ",r>2025?"2025 - ".concat(r):2025," SnapChop AI. All rights reserved."]}),(0,a.jsx)("p",{children:(0,a.jsx)("a",{href:"http://linktr.ee/snapchopai?ref=snapchop.ai",target:"_blank",rel:"noopener noreferrer-none",className:"hover:text-primary transition-colors",children:(0,a.jsx)("strong",{children:"SnapChop AI on Socials"})})})]}),(0,a.jsxs)("div",{className:"flex flex-wrap justify-center items-center gap-x-4 gap-y-2",children:[(0,a.jsx)(n(),{href:"/about",className:"hover:text-primary transition-colors",children:"About"}),(0,a.jsx)(n(),{href:"/terms",className:"hover:text-primary transition-colors",children:"Website Terms"}),(0,a.jsx)(n(),{href:"/privacy",className:"hover:text-primary transition-colors",children:"Privacy Policy"}),(0,a.jsx)(n(),{href:"/legal",className:"hover:text-primary transition-colors",children:"Legal"}),(0,a.jsx)(n(),{href:"/cookies",className:"hover:text-primary transition-colors",children:"Cookie Settings"})]}),t&&(0,a.jsx)("div",{className:"flex items-center gap-x-4 text-xs",children:(0,a.jsx)("span",{children:"Loading stats..."})}),s&&(0,a.jsx)("div",{className:"flex items-center gap-x-4 text-xs",children:(0,a.jsx)("span",{children:"Error loading stats."})}),!t&&!s&&(e.visits>0||e.recipesGenerated>0)&&(0,a.jsxs)("div",{className:"flex items-center gap-x-4 text-xs",children:[e.visits>0&&(0,a.jsxs)("span",{children:[c(e.visits)," visits"]}),e.visits>0&&e.recipesGenerated>
10&&(0,a.jsx)("span",{className:"text-muted-foreground/50",children:"|"}),e.recipesGenerated>0&&(0,a.jsxs)("span",{children:[(0,a.jsx)("strong",{className:"text-primary",children:c(e.recipesGenerated)})," recipes generated and counting..."]})]})]})})}},6104:(e,t,s)=>{s.d(t,{IG:()=>f,j2:()=>m,kA:()=>c});var a=s(3915),r=s(5317),n=s(3004),i=s(858);let o={apiKey:"AIzaSyBvY-2G05SNbXW_i6zjuHRBnh3yhvGzHXI",authDomain:"adahtronomeai.firebaseapp.com",projectId:"adahtronomeai",storageBucket:"adahtronomeai.firebasestorage.app",messagingSenderId:"1011639558132",appId:"1:1011639558132:web:af3abdff54949974ea63a1"},l=["apiKey","authDomain","projectId","appId"].filter(e=>{let t=o[e];return!t||"string"!=typeof t||""===t.trim()});if(l.length>0)throw Error("Firebase config is missing or has empty values for keys: ".concat(l.join(", "),". Please check your .env file, ensure it is saved, and restart the development server."));let d=(0,a.Dk)().length?(0,a.Sx)():(0,a.Wp)(o),c=(0,r.aU)(d),m=(0,n.xI)(d),f=(0,i.c7)(d)},8437:(e,t,s)=>{s.d(t,{A:()=>c,AuthProvider:()=>d});var a=s(5155),r=s(2115),n=s(3004),i=s(6104),o=s(172);let l=(0,r.createContext)({user:null,loading:!0}),d=e=>{let{children:t}=e,[s,d]=(0,r.useState)(null),[c,m]=(0,r.useState)(!0);return((0,r.useEffect)(()=>{let e=(0,n.hg)(i.j2,e=>{d(e),m(!1)});return()=>e()},[]),c)?(0,a.jsx)("div",{className:"flex justify-center items-center min-h-screen",children:(0,a.jsx)(o.A,{className:"h-12 w-12 animate-spin"})}):(0,a.jsx)(l.Provider,{value:{user:s,loading:c},children:!c&&t})},c=()=>(0,r.useContext)(l)},9434:(e,t,s)=>{s.d(t,{cn:()=>n});var a=s(2596),r=s(9688);function n(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];return(0,r.QP)((0,a.$)(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.