1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6907],{504:(e,t,n)=>{"use strict";n.d(t,{A:()=>i,AuthProvider:()=>s});var l=n(7814),a=n(7446);let r=(0,a.createContext)(null);function s(e){let{children:t}=e,[n,s]=(0,a.useState)("checking"),[i,c]=(0,a.useState)(null),o=(0,a.useCallback)(async()=>{try{let e=await fetch("/api/v2/auth/check",{cache:"no-store",credentials:"same-origin"}),t=e.ok?await e.json():null;(null==t?void 0:t.ok)&&t.authenticated&&t.user?(c(t.user),s("authenticated")):(c(null),s("anonymous"))}catch(e){c(null),s("anonymous")}},[]),u=(0,a.useCallback)(()=>{c(null),s("anonymous")},[]);return(0,a.useEffect)(()=>{o()},[o]),(0,l.jsx)(r.Provider,{value:{status:n,user:i,logout:u},children:t})}function i(){let e=(0,a.useContext)(r);if(!e)throw Error("useAuth must be used within an <AuthProvider>");return e}},903:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var l=n(7814),a=n(7246),r=n.n(a);function s(e){var t;return(0,l.jsx)(r(),{...e,prefetch:null!=(t=e.prefetch)&&t})}},3638:(e,t,n)=>{"use strict";n.d(t,{BillingAlert:()=>i});var l=n(7814),a=n(903),r=n(7446),s=n(9229);function i(){let{data:e,loggedOut:t,refresh:n}=(0,s.R)(),[i,c]=(0,r.useState)(!1);if(t||!e||!e.active)return null;let o="past_due"===e.status||"unpaid"===e.status,u=!!e.cancelAtPeriodEnd;if(o)return(0,l.jsxs)("div",{className:"mb-5 flex flex-col gap-3 rounded-lg border border-red-200 bg-red-50 p-4 sm:flex-row sm:items-center sm:justify-between",children:[(0,l.jsx)("p",{className:"text-sm font-semibold text-red-900",children:"Your last payment didn't go through. Update your payment method to keep your access."}),(0,l.jsx)(a.A,{href:"/api/v2/private/account/billing-portal?update_user=1",className:"inline-flex shrink-0 items-center justify-center rounded-lg bg-[#d32f2f] px-4 py-2 text-sm font-bold text-white hover:bg-[#b71c1c]",children:"Update payment method"})]});if(u){let t=function(e){if(!e)return"";let t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleDateString(void 0,{year:"numeric",month:"long",day:"numeric"})}(e.renewsOn);async function d(){c(!0);try{(await fetch("/api/v2/private/account/subscription/reactivate",{method:"POST",credentials:"include",headers:{accept:"application/json"}})).ok&&await n()}finally{c(!1)}}return(0,l.jsxs)("div",{className:"mb-5 flex flex-col gap-3 rounded-lg border border-amber-200 bg-amber-50 p-4 sm:flex-row sm:items-center sm:justify-between",children:[(0,l.jsxs)("p",{className:"text-sm font-semibold text-amber-900",children:["Your plan is set to cancel",t?" on ".concat(t):" at the end of the period",". You can keep it active."]}),(0,l.jsx)("button",{type:"button",onClick:d,disabled:i,className:"inline-flex shrink-0 items-center justify-center rounded-lg border border-amber-400 bg-white px-4 py-2 text-sm font-bold text-amber-900 hover:bg-amber-100 disabled:opacity-50",children:i?"Resumingâ¦":"Resume plan"})]})}return null}},3706:(e,t,n)=>{"use strict";n.d(t,{AuthCta:()=>r});var l=n(7814),a=n(504);function r(e){let{loggedOut:t,loggedIn:n=null}=e,{status:r}=(0,a.A)();return(0,l.jsx)(l.Fragment,{children:"authenticated"===r?n:t})}},6427:(e,t,n)=>{Promise.resolve().then(n.bind(n,3706)),Promise.resolve().then(n.bind(n,3638)),Promise.resolve().then(n.bind(n,8791)),Promise.resolve().then(n.t.bind(n,7246,23)),Promise.resolve().then(n.t.bind(n,9795,23))},8791:(e,t,n)=>{"use strict";n.d(t,{PricingPlans:()=>h});var l=n(7814),a=n(903),r=n(7446),s=n(9229);let i=[{icon:"\uD83D\uDD0D",label:"3 Company Page Views per month"},{icon:"\uD83C\uDF10",label:"Chrome Extension"},{icon:"\uD83E\uDD16",label:"Access To Latka AI"},{icon:"\uD83D\uDCAC",label:"3 AI Conversations per month"}],c=[{icon:"\uD83D\uDD0D",label:"Unlimited Company Page Views"},{icon:"\uD83D\uDCCA",label:"Unlimited Excel Exports"},{icon:"\uD83D\uDCD1",label:"Unlimited Rows per Export"},{icon:"\uD83C\uDFAF",label:"Targeting Filters"},{icon:"\uD83D\uDCB0",label:"Revenue Data"},{icon:"\uD83D\uDCC8",label:"Valuations"},{icon:"\uD83D\uDC41ï¸",label:"Funding Data"},{icon:"\uD83D\uDCCA",label:"SaaS Metrics"},{icon:"\uD83C\uDF10",label:"Chrome Extension"},{icon:"\uD83E\uDD16",label:"Latka AI â Unlimited Conversations"}],o={month:"pro_monthly",year:"pro_yearly"};function u(e){let{features:t}=e,[n,a]=(0,r.useState)(!1),s=t.length>4,i=s&&!n?t.slice(0,4):t;return(0,l.jsxs)("div",{className:"flex-1",children:[(0,l.jsx)("ul",{className:"space-y-4",children:i.map(e=>(0,l.jsxs)("li",{className:"flex items-start gap-3 text-sm leading-6 text-neutral-700",children:[(0,l.jsx)("span",{"aria-hidden":!0,
1className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-neutral-100 text-base",children:e.icon}),(0,l.jsx)("span",{className:"pt-1",children:e.label})]},e.label))}),s?(0,l.jsxs)("button",{type:"button",onClick:()=>a(e=>!e),className:"mt-5 inline-flex items-center gap-1.5 text-sm font-semibold text-[#d32f2f] hover:underline",children:[(0,l.jsx)("span",{"aria-hidden":!0,className:"text-xs",children:n?"â²":"â¼"}),n?"Hide all":"See all"]}):null]})}let d="mt-7 inline-flex items-center justify-center rounded-lg px-4 py-3 text-sm font-bold transition";function x(){return(0,l.jsx)("span",{className:"inline-flex items-center rounded-full bg-[#d32f2f]/10 px-2.5 py-0.5 text-xs font-bold text-[#d32f2f]",children:"Current plan"})}function h(){let{data:e,loggedOut:t}=(0,s.R)(),[n,h]=(0,r.useState)("month"),[m,f]=(0,r.useState)(null),b=(0,r.useRef)(!1);(0,r.useEffect)(()=>{!b.current&&(null==e?void 0:e.active)&&("month"===e.period||"year"===e.period)&&(h(e.period),b.current=!0)},[e]);let p=!!(null==e?void 0:e.active),v=!!(null==e?void 0:e.legacy);async function y(e){f(e);try{let t=await fetch("/api/v2/public/checkout?plan=".concat(e),{headers:{accept:"application/json"},credentials:"include"}),n=await t.json().catch(()=>null);if(t.ok&&(null==n?void 0:n.url))return void window.location.assign(n.url);window.alert((null==n?void 0:n.error)==="SUBSCRIPTION_EXISTS"?"You already have an active plan. Cancel it from your account before subscribing again.":"We couldn't start checkout. Please try again.")}catch(e){window.alert("We couldn't start checkout. Please try again.")}f(null)}return(0,l.jsxs)("div",{className:"mx-auto max-w-280",children:[(0,l.jsx)("div",{className:"mb-8 flex items-center justify-center",children:(0,l.jsxs)("div",{className:"inline-flex rounded-full border border-neutral-200 bg-white p-1 text-sm font-bold",children:[(0,l.jsx)("button",{type:"button",onClick:()=>h("month"),className:"rounded-full px-4 py-1.5 transition ".concat("month"===n?"bg-neutral-100 text-neutral-950":"text-neutral-500 hover:text-neutral-800"),children:"Billed monthly"}),(0,l.jsx)("button",{type:"button",onClick:()=>h("year"),className:"rounded-full px-4 py-1.5 transition ".concat("year"===n?"bg-neutral-100 text-neutral-950":"text-neutral-500 hover:text-neutral-800"),children:"Billed yearly"})]})}),(0,l.jsxs)("div",{className:"mx-auto grid max-w-3xl items-stretch gap-5 lg:grid-cols-2",children:[(0,l.jsxs)("div",{className:"flex flex-col rounded-2xl border border-neutral-200 bg-white p-7",children:[(0,l.jsx)("h3",{className:"text-2xl font-extrabold text-neutral-950",children:"Free"}),(0,l.jsx)("div",{className:"mt-4 text-4xl font-extrabold text-neutral-950",children:"$0.00"}),(0,l.jsx)("div",{className:"mt-6 flex flex-1 flex-col",children:(0,l.jsx)(u,{features:i})}),t?(0,l.jsx)(a.A,{href:"/auth/signup",className:"".concat(d," bg-[#d32f2f] text-white hover:bg-[#b71c1c]"),children:"Choose plan"}):p?(0,l.jsx)("span",{title:"Cancel your paid plan from your account to return to Free.",className:"".concat(d," cursor-default border border-neutral-200 text-neutral-400"),children:"Included"}):(0,l.jsx)("span",{title:"This is your current plan",className:"".concat(d," cursor-default border border-neutral-300 text-neutral-500"),children:"Current plan"})]}),(0,l.jsxs)("div",{className:"flex flex-col rounded-2xl border-2 border-[#d32f2f] bg-white p-7",children:[(0,l.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,l.jsx)("h3",{className:"text-2xl font-extrabold text-neutral-950",children:"Pro"}),p?(0,l.jsx)(x,{}):null]}),(0,l.jsxs)("div",{className:"mt-4 text-4xl font-extrabold text-neutral-950",children:["$".concat(("year"===n?397:49).toLocaleString(),".00"),(0,l.jsx)("span",{className:"text-base font-semibold text-neutral-500",children:"year"===n?"/year":"/month"})]}),(0,l.jsxs)("div",{className:"mt-6 flex flex-1 flex-col",children:[(0,l.jsx)("p",{className:"mb-4 text-sm font-semibold text-neutral-500",children:"Everything in Free, plus unlimited access to everything"}),(0,l.jsx)(u,{features:c})]}),(0,l.jsx)(function(){let e=o[n];if(p)return v?(0,l.jsx)(a.A,{href:"/account",className:"".concat(d," border border-neutral-300 text-neutral-800 hover:border-neutral-500"),
1children:"Manage in account"}):(0,l.jsx)("span",{title:"Manage or cancel your plan from your account.",className:"".concat(d," cursor-default border border-neutral-300 text-neutral-500"),children:"Current plan"});if(t){let t="/api/v2/public/checkout?plan=".concat(e);return(0,l.jsx)(a.A,{href:"/auth/login?next=".concat(encodeURIComponent(t)),className:"".concat(d," bg-[#d32f2f] text-white hover:bg-[#b71c1c]"),children:"Choose plan"})}return(0,l.jsx)("button",{type:"button",onClick:()=>y(e),disabled:null!==m,className:"".concat(d," bg-[#d32f2f] text-white hover:bg-[#b71c1c] disabled:opacity-50"),children:m===e?"Redirectingâ¦":"Choose plan"})},{})]})]})]})}},9229:(e,t,n)=>{"use strict";n.d(t,{R:()=>a});var l=n(7446);function a(){let[e,t]=(0,l.useState)(null),[n,a]=(0,l.useState)(!0),[r,s]=(0,l.useState)(!1),i=(0,l.useCallback)(async()=>{a(!0);try{let e=await fetch("/api/v2/private/account/subscription",{credentials:"include",headers:{accept:"application/json"},cache:"no-store"});if(401===e.status||403===e.status){s(!0),t(null);return}if(!e.ok)return void t(null);s(!1),t(await e.json())}catch(e){t(null)}finally{a(!1)}},[]);return(0,l.useEffect)(()=>{i()},[i]),{data:e,loading:n,loggedOut:r,refresh:i}}}},e=>{e.O(0,[7246,9795,505,5288,7358],()=>e(e.s=6427)),_N_E=e.O()}]);
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.