PageSourceSearch

https://prompthero.com/_next/static/chunks/3484.b2110fa9190cc710.js

js prompthero.com collected 2026-09-24 09:24:54 UTC 17,821 bytes, 2 lines download raw bytes

1!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._posthogChunkIds=e._posthogChunkIds||{},e._posthogChunkIds[n]="01a06284-76aa-7451-b55e-5d522325b09a")}catch(e){}}();"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3484],{23484:(e,t,r)=>{r.r(t),r.d(t,{AuthWallModal:()=>R});var a=r(54568),n=r(50063),i=r(46548),s=r(58299),o=r(84504),l=r(65587),d=r.n(l),c=r(79748),u=r(7620),m=r(42584),x=r(83297),f=r(66888),h=r(23941),p=r(92952),g=r(28465),b=r(44986),y=r(21345),v=r(62739),w=r(23623),k=r(45190),j=r(51484),N=r(11922),C=r(41520);let _=h.Ik({email:h.Yj().email({message:"Please enter a valid email address."})});function R({open:e,onOpenChange:t}){let r=(0,c.usePathname)(),l=(0,c.useSearchParams)(),h=(0,u.useId)(),[I,P]=(0,u.useState)(!1),[S,E]=(0,u.useState)(!1),[$,A]=(0,u.useState)(!1),[M,L]=(0,u.useState)(!1),F=l.toString()?`${r}?${l.toString()}`:r,D=(0,m.mN)({resolver:(0,n.u)(_),defaultValues:{email:""}}),T=async()=>{(0,j.e7)(),(0,C.p)(M),P(!0),(0,k.sx)("auth_started",{method:"google"}),(0,k.sx)("auth_google_start");try{let e=await N.yK.signIn.social({provider:"google",callbackURL:window.location.href});if(e?.error){(0,k.sx)("auth_google_error",{message:e.error.message??"unknown"}),f.oR.error("Failed to sign in with Google",{description:e.error.message||"Please try again."}),P(!1);return}e?.data?.redirect||((0,k.sx)("auth_google_no_redirect"),P(!1))}catch(e){console.error("Google sign in error:",e),(0,k.sx)("auth_google_error",{message:e instanceof Error?e.message:"unknown"}),f.oR.error("Failed to sign in with Google",{description:"Please try again."}),P(!1)}},W=async e=>{(0,j.e7)(),(0,C.p)(M),E(!0);try{let t=await N.Jv.magicLink({email:e.email,callbackURL:window.location.href});if(t.error){let e=t.error.message||"";e.includes("domain")||e.includes("not allowed")?f.oR.error("Email domain not allowed",{description:"Registration from this email domain is not permitted. Please use a different email address."}):f.oR.error("Failed to send magic link",{description:"Please check your email and try again."})}else A(!0),(0,k.sx)("auth_started",{method:"magic_link"}),f.oR.success("Magic link sent!",{description:"Check your email for a sign-in link."})}catch(e){console.error("Magic link error:",e),f.oR.error("An error occurred",{description:"Please try again later."})}finally{E(!1)}},z=I||S;return(0,a.jsx)(y.lG,{open:e,onOpenChange:t,children:(0,a.jsxs)(y.Cf,{className:"sm:max-w-[480px] bg-neutral-900 border-neutral-800",showCloseButton:!0,children:[(0,a.jsxs)(y.c7,{className:"space-y-3",children:[(0,a.jsxs)("div",{className:"flex items-center justify-center gap-2 text-xl font-bold text-white",children:[(0,a.jsx)(i.A,{className:"h-5 w-5 text-rose-500"}),(0,a.jsx)(y.L3,{className:"text-xl",children:"Unlock Millions of Prompts"})]}),(0,a.jsx)(y.rr,{className:"text-center text-base text-gray-400",children:"Create a free account to continue exploring AI-generated images and prompts"})]}),(0,a.jsxs)("div",{className:"space-y-4 pt-2",children:[(0,a.jsx)("div",{className:"rounded-md border border-neutral-800 bg-neutral-950/60 p-3",children:(0,a.jsxs)("div",{className:"flex items-start gap-3",children:[(0,a.jsx)(b.S,{id:"marketing-consent-modal",checked:M,onCheckedChange:e=>{L(!0===e)}}),(0,a.jsxs)("label",{htmlFor:"marketing-consent-modal",className:"cursor-pointer space-y-1 text-sm leading-tight",children:[(0,a.jsx)("span",{className:"block text-gray-200",children:"Check this box if you'd like to receive product updates, new feature announcements, and occasional offers from PromptHero."}),(0,a.jsx)("span",{className:"block text-xs text-gray-400",children:"Leave it unchecked to continue without subscribing."})]})]})}),(0,a.jsxs)(g.$,{type:"button",variant:"secondary",className:"w-full cursor-pointer",onClick:T,disabled:z,children:[I?(0,a.jsx)(s.A,{className:"mr-2 h-4 w-4 animate-spin"}):(0,a.jsx)(p.U,{icon:x.MGH,className:"mr-2 size-4"}),"Continue with Google"]}),(0,a.jsxs)("div",{className:"relative",children:[(0,a.jsx)("div",{className:"absolute inset-0 flex items-center",children:(0,a.jsx)("span",{className:"w-full border-t border-neutral-700"})}),(0,a.jsx)("div",{className:"relative flex justify-center text-xs uppercase",children:(0,a.jsx)("span",{className:"bg-neutral-900 px-2 text-gray-500",children:"or continue with email"})})]}),$?(0,a.jsxs)("div",{className:"space-y-4 text-center py-4",children:[(0,a.jsx)("div",{className:"mx-auto flex h-12 w-12 items-center justify-center rounded-full bg-rose-100",children:(0,a.jsx)(o.A,{className:"h-6 w-6 text-rose-600"})}),(0,a.jsxs)("div",{children:[(0,a.jsx)("h3",{className:"text-lg font-semibold text-white",children:"Check Your Email"}),(0,a.jsxs)("p",{className:"mt-1 text-sm text-gray-400",children:["We've sent a sign-in link to"," ",(0,a.jsx)("strong",{className:"text-white",children:D.getValues("email")})]}),(0,a.jsx)("p",{className:"mt-2 text-sm text-gray-400",children:"Click the link in the email to sign in."})]}),(0,a.jsx)(g.$,{variant:"outline",onClick:()=>A(!1),className:"mt-4",children:"Use a different email"})]}):(0,a.jsx)(v.lV,{...D,children:(0,a.jsxs)("form",{onSubmit:D.handleSubmit(W),className:"space-y-3",children:[(0,a.jsx)(v.zB,{control:D.control,name:"email",render:({field:e})=>(0,a.jsxs)(v.eI,{children:[(0,a.jsx)(v.lR,{className:"text-gray-300",children:"Email"}),(0,a.jsx)(v.MJ,{children:(0,a.jsx)(w.p,{id:h,type:"email",placeholder:"[email protected]",autoComplete:"email",disabled:z,...e})}),(0,a.jsx)(v.C5,{})]})}),(0,a.jsx)("p",{className:"text-sm text-gray-400",children:"We'll send you a link to sign in without a password."}),(0,a.jsxs)(g.$,{type:"submit",disabled:z,className:"w-full bg-linear-to-r from-rose-600 to-pink-600 hover:from-rose-700 hover:to-pink-700 text-white font-medium shadow-lg hover:shadow-xl transition-all duration-200 cursor-pointer",children:[S?(0,a.jsx)(s.A,{className:"mr-2 h-4 w-4 animate-spin"}):(0,a.jsx)(o.A,{className:"mr-2 h-4 w-4"}),S?"Sending...":"Send Magic Link"]})]})}),(0,a.jsxs)("div",{className:"text-center text-sm text-gray-400 pt-2 border-t border-neutral-800",children:["Don't have an account?"," ",(0,a.jsx)(d(),{href:`/auth/sign-in?next=${encodeURIComponent(F)}`,className:"font-medium text-rose-500 hover:text-rose-400 transition-colors",children:"Sign up for free"})]})]})]})})}},23623:(e,t,r)=>{r.d(t,{p:()=>i});var a=r(54568),n=r(64318);function i({className:e,type:t,...r}){return(0,a.jsx)("input",{type:t,"data-slot":"input",style:{color:"#000000",WebkitTextFillColor:"#000000"},className:(0,n.cn)("file:text-foreground placeholder:text-muted-foreground placeholder:opacity-70 placeholder:font-normal placeholder:text-sm selection:bg-primary selection:text-primary-foreground bg-white! dark:bg-input/30 border-neutral-200! dark:border-input flex h-11 w-full min-w-0 rounded-lg border px-4 py-2 text-base text-black! dark:text-white shadow-sm transition-[box-shadow,border-color,background-color] 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:bg-white! focu
1s-visible:border-rose-500! focus-visible:ring-rose-200 focus-visible:ring-4 focus-visible:shadow-lg","hover:border-neutral-300!","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive","[&:-webkit-autofill]:[-webkit-text-fill-color:#000000]",e),...r})}},41520:(e,t,r)=>{r.d(t,{p:()=>a});function a(e){document.cookie=`ph_marketing_consent=${e?"1":"0"}; path=/; max-age=3600; SameSite=Lax`}},44986:(e,t,r)=>{r.d(t,{S:()=>o});var a=r(54568),n=r(34309),i=r(86150),s=r(64318);function o({className:e,...t}){return(0,a.jsx)(i.Root,{"data-slot":"checkbox",className:(0,s.cn)("peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",e),...t,children:(0,a.jsx)(i.Indicator,{"data-slot":"checkbox-indicator",className:"flex items-center justify-center text-current transition-none",children:(0,a.jsx)(n.A,{className:"size-3.5"})})})}},45190:(e,t,r)=>{function a(){return"function"==typeof window.gtag}async function n(e){if(!e.measurementId.trim()||!await s(e.readinessTimeoutMs??5e3,e.pollIntervalMs??50))return;let t=e.responseTimeoutMs??2e3,[r,a]=await Promise.all([o(e.measurementId,"client_id",t),o(e.measurementId,"session_id",t)]),n=function(e){if("string"!=typeof e)return;let t=e.trim();return t.length<=200&&/^\d+\.\d+$/.test(t)?t:void 0}(r),i=function(e){if("string"!=typeof e)return;let t=e.trim();return t.length<=200&&/^\d+$/.test(t)?t:void 0}(a);if(n)return{gaClientId:n,...i?{gaSessionId:i}:{}}}function i(e,t){try{let r=function(e){let t={...e};for(let e of["email","phone","password","token","api_key"])e in t&&delete t[e];return t}(t||{});return window.gtag?window.gtag("event",e,r):(window.dataLayer??=[],function(){window.dataLayer?.push(arguments)}("event",e,r)),!0}catch(e){return console.error("[Analytics] Failed to track event:",e),!1}}async function s(e,t){let r=Date.now()+Math.max(0,e);for(;!a()&&Date.now()<r;)await new Promise(e=>setTimeout(e,Math.max(1,t)));return a()}function o(e,t,r){return new Promise(a=>{let n=!1,i=e=>{n||(n=!0,clearTimeout(s),a(e))},s=setTimeout(()=>i(),Math.max(1,r));try{window.gtag?.("get",e,t,i)}catch{i()}})}r.d(t,{Ni:()=>a,gL:()=>n,sx:()=>i})},50541:(e,t,r)=>{r.d(t,{J:()=>s});var a=r(54568),n=r(39771),i=r(64318);function s({className:e,...t}){return(0,a.jsx)(n.Root,{"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})}},58299:(e,t,r)=>{r.d(t,{A:()=>a});let a=(0,r(81007).A)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]])},62739:(e,t,r)=>{r.d(t,{C5:()=>b,MJ:()=>p,Rr:()=>g,eI:()=>f,lR:()=>h,lV:()=>d,zB:()=>u});var a=r(54568),n=r(6596),i=r(7620),s=r(42584),o=r(50541),l=r(64318);let d=s.Op,c=i.createContext({}),u=({...e})=>(0,a.jsx)(c.Provider,{value:{name:e.name},children:(0,a.jsx)(s.xI,{...e})}),m=()=>{let e=i.useContext(c),t=i.useContext(x),{getFieldState:r}=(0,s.xW)(),a=(0,s.lN)({name:e.name}),n=r(e.name,a);if(!e)throw Error("useFormField should be used within <FormField>");let{id:o}=t;return{id:o,name:e.name,formItemId:`${o}-form-item`,formDescriptionId:`${o}-form-item-description`,formMessageId:`${o}-form-item-message`,...n}},x=i.createContext({});function f({className:e,...t}){let r=i.useId();return(0,a.jsx)(x.Provider,{value:{id:r},children:(0,a.jsx)("div",{"data-slot":"form-item",className:(0,l.cn)("grid gap-2",e),...t})})}function h({className:e,...t}){let{error:r,formItemId:n}=m();return(0,a.jsx)(o.J,{"data-slot":"form-label","data-error":!!r,className:(0,l.cn)("data-[error=true]:text-destructive",e),htmlFor:n,...t})}function p({...e}){let{error:t,formItemId:r,formDescriptionId:i,formMessageId:s}=m();return(0,a.jsx)(n.DX,{"data-slot":"form-control",id:r,"aria-describedby":t?`${i} ${s}`:`${i}`,"aria-invalid":!!t,...e})}function g({className:e,...t}){let{formDescriptionId:r}=m();return(0,a.jsx)("p",{"data-slot":"form-description",id:r,className:(0,l.cn)("text-muted-foreground text-sm",e),...t})}function b({className:e,...t}){let{error:r,formMessageId:n}=m(),i=r?String(r?.message??""):t.children;return i?(0,a.jsx)("p",{"data-slot":"form-message",id:n,className:(0,l.cn)("text-destructive text-sm",e),...t,children:i}):null}},84504:(e,t,r)=>{r.d(t,{A:()=>a});let a=(0,r(81007).A)("mail",[["path",{d:"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7",key:"132q7q"}],["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}]])},86150:(e,t,r)=>{r.r(t),r.d(t,{Checkbox:()=>j,CheckboxIndicator:()=>C,Indicator:()=>C,Root:()=>j,createCheckboxScope:()=>g,unstable_BubbleInput:()=>R,unstable_CheckboxBubbleInput:()=>
1R,unstable_CheckboxProvider:()=>v,unstable_CheckboxTrigger:()=>k,unstable_Provider:()=>v,unstable_Trigger:()=>k});var a=r(7620),n=r(33670),i=r(55556),s=r(37188),o=r(3198),l=r(89828),d=r(13160),c=r(98386);r(97509);var u=r(54568),m=Symbol("radix.slottable");function x(e){return a.isValidElement(e)&&"function"==typeof e.type&&"__radixId"in e.type&&e.type.__radixId===m}var f=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,t)=>{var r,i;let s,o,l,d=(i=r=`Primitive.${t}`,(s=a.forwardRef((e,t)=>{let{children:r,...i}=e;if(a.isValidElement(r)){var s;let e,o,l=(s=r,(o=(e=Object.getOwnPropertyDescriptor(s.props,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?s.ref:(o=(e=Object.getOwnPropertyDescriptor(s,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?s.props.ref:s.props.ref||s.ref),d=function(e,t){let r={...t};for(let a in t){let n=e[a],i=t[a];/^on[A-Z]/.test(a)?n&&i?r[a]=(...e)=>{let t=i(...e);return n(...e),t}:n&&(r[a]=n):"style"===a?r[a]={...n,...i}:"className"===a&&(r[a]=[n,i].filter(Boolean).join(" "))}return{...e,...r}}(i,r.props);return r.type!==a.Fragment&&(d.ref=t?(0,n.t)(t,l):l),a.cloneElement(r,d)}return a.Children.count(r)>1?a.Children.only(null):null})).displayName=`${i}.SlotClone`,o=s,(l=a.forwardRef((e,t)=>{let{children:r,...n}=e,i=a.Children.toArray(r),s=i.find(x);if(s){let e=s.props.children,r=i.map(t=>t!==s?t:a.Children.count(e)>1?a.Children.only(null):a.isValidElement(e)?e.props.children:null);return(0,u.jsx)(o,{...n,ref:t,children:a.isValidElement(e)?a.cloneElement(e,void 0,r):null})}return(0,u.jsx)(o,{...n,ref:t,children:r})})).displayName=`${r}.Slot`,l),c=a.forwardRef((e,r)=>{let{asChild:a,...n}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,u.jsx)(a?d:t,{...n,ref:r})});return c.displayName=`Primitive.${t}`,{...e,[t]:c}},{}),h="Checkbox",[p,g]=(0,i.A)(h),[b,y]=p(h);function v(e){let{__scopeCheckbox:t,checked:r,children:n,defaultChecked:i,disabled:s,form:l,name:d,onCheckedChange:c,required:m,value:x="on",internal_do_not_use_render:f}=e,[p,g]=(0,o.i)({prop:r,defaultProp:i??!1,onChange:c,caller:h}),[y,v]=a.useState(null),[w,k]=a.useState(null),j=a.useRef(!1),N=!y||!!l||!!y.closest("form"),C={checked:p,disabled:s,setChecked:g,control:y,setControl:v,name:d,form:l,value:x,hasConsumerStoppedPropagationRef:j,required:m,defaultChecked:!I(i)&&i,isFormControl:N,bubbleInput:w,setBubbleInput:k};return(0,u.jsx)(b,{scope:t,...C,children:"function"==typeof f?f(C):n})}var w="CheckboxTrigger",k=a.forwardRef(({__scopeCheckbox:e,onKeyDown:t,onClick:r,...i},o)=>{let{control:l,value:d,disabled:c,checked:m,required:x,setControl:h,setChecked:p,hasConsumerStoppedPropagationRef:g,isFormControl:b,bubbleInput:v}=y(w,e),k=(0,n.s)(o,h),j=a.useRef(m);return a.useEffect(()=>{let e=l?.form;if(e){let t=()=>p(j.current);return e.addEventListener("reset",t),()=>e.removeEventListener("reset",t)}},[l,p]),(0,u.jsx)(f.button,{type:"button",role:"checkbox","aria-checked":I(m)?"mixed":m,"aria-required":x,"data-state":P(m),"data-disabled":c?"":void 0,disabled:c,value:d,...i,ref:k,onKeyDown:(0,s.mK)(t,e=>{"Enter"===e.key&&e.preventDefault()}),onClick:(0,s.mK)(r,e=>{p(e=>!!I(e)||!e),v&&b&&(g.current=e.isPropagationStopped(),g.current||e.stopPropagation())})})});k.displayName=w;var j=a.forwardRef((e,t)=>{let{__scopeCheckbox:r,name:a,checked:n,defaultChecked:i,required:s,disabled:o,value:l,onCheckedChange:d,form:c,...m}=e;return(0,u.jsx)(v,{__scopeCheckbox:r,checked:n,defaultChecked:i,disabled:o,required:s,onCheckedChange:d,name:a,form:c,value:l,internal_do_not_use_render:({isFormControl:e})=>(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(k,{...m,ref:t,__scopeCheckbox:r}),e&&(0,u.jsx)(R,{__scopeCheckbox:r})]})})});j.displayName=h;var N="CheckboxIndicator",C=a.forwardRef((e,t)=>{let{__scopeCheckbox:r,forceMount:a,...n}=e,i=y(N,r);return(0,u.jsx)(c.C,{present:a||I(i.checked)||!0===i.checked,children:(0,u.jsx)(f.span,{"data-state":P(i.checked),"data-disabled":i.disabled?"":void 0,...n,ref:t,style:{pointerEvents:"none",...e.style}})})});C.displayName=N;var _="CheckboxBubbleInput",R=a.forwardRef(({__scopeCheckbox:e,...t},r)=>{let{control:i,hasConsumerStoppedPropagationRef:s,checked:o,defaultChecked:c,required:m,disabled:x,name:h,value:p,form:g,bubbleInput:b,setBubbleInput:v}=y(_,e),w=(0,n.s)(r,v),k=(0,l.Z)(o),j=(0,d.X)(i);a.useEffect(()=>{if(!b)return;let e=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set,t=!s.current;if(k!==o&&e){let r=new Event("click",{bubbles:t});b.indeterminate=I(o),e.call(b,!I(o)&&o),b.dispatchEvent(r)}},[b,k,o,s]);let N=a.useRef(!I(o)&&o);return(0,u.jsx)(f.input,{type:"checkbox","aria-hidden":!0,defaultChecked:c??N.current,required:m,disabled:x,name:h,value:p,form:g,...t,tabIndex:-1,ref:w,style:{...t.style,...j,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});function I(e){return"indeterminate"===e}function P(e){return I(e)?"indeterminate":e?"checked":"unchecked"}R.displayName=_},92952:(e,t,r)=>{r.d(t,{U:()=>i});var a=r(54568),n=r(64318);function i({icon:e,className:t,...r}){let{title:s,path:o}=e;return(0,a.jsxs)("svg",{viewBox:"0 0 24 24","aria-label":s,"aria-hidden":"false",focusable:"false",className:(0,n.cn)("fill-foreground size-5",t),...r,children:[(0,a.jsx)("title",{children:s}),(0,a.jsx)("path",{d:o})]})}}}]);
2//# chunkId=01a06284-76aa-7451-b55e-5d522325b09a

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.