PageSourceSearch

https://fastlist.co/_next/static/chunks/7637-3cb925d45ab6b054.js?dpl=dpl_EX3Qv3FZF8YJA3f25KJLSGBUz7UZ

js fastlist.co collected 2026-09-24 14:37:01 UTC 10,605 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7637],{7637:(e,t,n)=>{n.d(t,{CreditPricingGrid:()=>x});var i=n(95155),s=n(98500),r=n.n(s),a=n(12115),l=n(86901),o=n(5872),d=n(94514),u=n(6296),c=n(21628),m=n(15098),h=n(93694),p=n(25490),f=n(41289),g=n(40980);function x({location:e,className:t,highlightPackId:n="pro"}){let{isSignedIn:s,isLoaded:w,getToken:y}=(0,m.As)(),[b,N]=(0,a.useState)(null);async function _(t){if(!w)return;if(!s)return void(0,f.s)("pricing_cta_click",{plan:t,location:e});N(t),(0,f.s)("credit_checkout_started",{pack_id:t,location:"landing"===e?"landing":"pricing_page"});let n=await (0,h.NZ)(t,y);(N(null),n.ok)?window.location.href=n.url:alert(n.error)}return(0,i.jsxs)("div",{className:(0,g.cn)("space-y-6",t),children:[(0,i.jsx)("div",{className:"mx-auto grid max-w-4xl grid-cols-1 gap-5 min-[480px]:grid-cols-3 lg:gap-6",children:p.Kp.map(t=>{let a=t.id===n;return(0,i.jsxs)("article",{className:(0,g.cn)("relative flex h-full flex-col rounded-3xl border bg-card p-5 shadow-sm transition-shadow touch-manipulation sm:p-6",a?"border-primary/45 ring-2 ring-primary/15 shadow-md":"border-border hover:shadow-md"),children:[a?(0,i.jsxs)("span",{className:"absolute -top-3 left-1/2 inline-flex -translate-x-1/2 items-center gap-1 rounded-full border border-primary/30 bg-background px-3 py-1 text-[11px] font-semibold text-primary shadow-md",children:[(0,i.jsx)(l.A,{className:"h-3 w-3","aria-hidden":!0}),"Recommended"]}):null,(0,i.jsxs)("header",{className:"space-y-1",children:[(0,i.jsx)("h3",{className:"text-base font-semibold text-foreground md:text-[17px]",children:t.title}),(0,i.jsx)("p",{className:"text-[12px] text-muted-foreground md:text-[13px]",children:t.bonusPct>0?`+${t.bonusPct}% bonus credits`:"Pay as you go"})]}),(0,i.jsxs)("div",{className:"mt-4 flex items-baseline gap-1.5",children:[(0,i.jsx)("span",{className:"text-3xl font-bold tracking-tight text-foreground md:text-[34px]",children:t.priceLabel}),(0,i.jsx)("span",{className:"text-sm text-muted-foreground",children:"one-time"})]}),(0,i.jsxs)("p",{className:"mt-2 flex items-center gap-1.5 text-sm font-medium text-foreground",children:[(0,i.jsx)(o.A,{className:"h-4 w-4 text-primary","aria-hidden":!0}),t.credits.toLocaleString("en-US")," credits"]}),(0,i.jsx)("p",{className:"mt-0.5 text-[11px] text-muted-foreground",children:t.perCreditLabel}),(0,i.jsxs)("ul",{className:"mt-4 space-y-2 text-[13px] text-foreground/85",role:"list",children:[(0,i.jsxs)("li",{className:"flex items-start gap-2 leading-snug",children:[(0,i.jsx)(d.A,{className:"mt-0.5 h-4 w-4 shrink-0 text-primary","aria-hidden":!0}),(0,i.jsx)("span",{children:"Valid 1 year from purchase"})]}),(0,i.jsxs)("li",{className:"flex items-start gap-2 leading-snug",children:[(0,i.jsx)(d.A,{className:"mt-0.5 h-4 w-4 shrink-0 text-primary","aria-hidden":!0}),(0,i.jsx)("span",{children:"No monthly subscription"})]})]}),(0,i.jsx)("div",{className:"mt-auto pt-5",children:w?s?(0,i.jsx)("button",{type:"button",disabled:null!=b,onClick:()=>void _(t.id),className:(0,g.cn)("inline-flex min-h-11 w-full items-center justify-center gap-1.5 rounded-full px-4 py-2.5 text-sm font-semibold shadow-sm transition-colors disabled:opacity-70",a?"bg-primary text-primary-foreground hover:bg-primary/90":"border border-primary/30 bg-background text-primary hover:bg-primary/5"),children:b===t.id?(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(u.A,{className:"h-4 w-4 animate-spin","aria-hidden":!0}),"Redirecting…"]}):(0,i.jsxs)(i.Fragment,{children:["Buy pack",(0,i.jsx)(c.A,{className:"h-4 w-4","aria-hidden":!0})]})}):(0,i.jsxs)(r(),{href:`/auth/signup?next=${encodeURIComponent("/settings/credits")}`,onClick:()=>(0,f.s)("pricing_cta_click",{plan:t.id,location:e}),className:(0,g.cn)("inline-flex min-h-11 w-full items-center justify-center gap-1.5 rounded-full px-4 py-2.5 text-sm font-semibold shadow-sm transition-colors",a?"bg-primary text-primary-foreground hover:bg-primary/90":"border border-primary/30 bg-background text-primary hover:bg-primary/5"),children:["Sign up to buy",(0,i.jsx)(c.A,{className:"h-4 w-4","aria-hidden":!0})]}):(0,i.jsxs)("div",{className:"flex h-11 w-full items-center justify-center rounded-full border border-border bg-muted/50 text-sm text-muted-foreground",children:[(0,i.jsx)(u.A,{className:"mr-2 h-4 w-4 animate-spin","aria-hidden":!0}),"Loading…"]})})]},t.id)})}),(0,i.jsxs)("p",{className:"text-center text-[12px] leading-relaxed text-muted-foreground md:text-[13px]",children:["New accounts receive"," ",(0,i.jsxs)("span",{className:"font-semibold text-foreground",children:[p.od," free credits"]})," ","to try the studio — no card required. Credits deduct only when you run AI features."]})]})}}
1,15098:(e,t,n)=>{n.d(t,{AuthProvider:()=>c,hZ:()=>f,uF:()=>g,As:()=>m,NQ:()=>p,Jd:()=>h});var i=n(95155),s=n(98500),r=n.n(s),a=n(73321),l=n(12115),o=n(22308),d=n(87358);let u=(0,l.createContext)(null);function c({children:e}){let[t,n]=(0,l.useState)(!1),[s,r]=(0,l.useState)(null),[a,m]=(0,l.useState)(null),h=(0,o.c)();(0,l.useEffect)(()=>{let e=!0;h.auth.getSession().then(({data:t})=>{e&&(r(t.session??null),m(t.session?.user??null),n(!0))});let{data:t}=h.auth.onAuthStateChange((e,t)=>{r(t??null),m(t?.user??null),n(!0)});return()=>{e=!1,t.subscription.unsubscribe()}},[h]),(0,l.useEffect)(()=>{window.__fastlistAuthToken=s?.access_token??null,window.__fastlistAuthFetchPatched||(window.__fastlistOriginalFetch=window.fetch.bind(window),window.__fastlistAuthFetchPatched=!0,window.fetch=async(e,t)=>{let n=window.__fastlistOriginalFetch??window.fetch.bind(window),i=window.__fastlistAuthToken;if(!i)return n(e,t);let s="string"==typeof e?e:e instanceof URL?e.toString():e.url;if(!(s.startsWith("/api/")||s.startsWith(window.location.origin)&&s.includes("/api/")))return n(e,t);let r=new Headers(t?.headers??(e instanceof Request?e.headers:void 0));return r.has("Authorization")||r.has("authorization")?n(e,t):(r.set("Authorization",`Bearer ${i}`),e instanceof Request)?n(new Request(e,{...t,headers:r})):n(e,{...t,headers:r})})},[s?.access_token]);let p=(0,l.useMemo)(()=>(function(e){if(!e)return null;let t=e.user_metadata??{},n=e.email??"",i="string"==typeof t.first_name?t.first_name:"string"==typeof t.given_name?t.given_name:null,s="string"==typeof t.last_name?t.last_name:"string"==typeof t.family_name?t.family_name:null,r=function(e){if(!e)return{firstName:null,lastName:null};let t=e.trim();if(!t)return{firstName:null,lastName:null};let n=t.split(/\s+/);return 1===n.length?{firstName:n[0],lastName:null}:{firstName:n[0],lastName:n.slice(1).join(" ")}}("string"==typeof t.full_name?t.full_name:"string"==typeof t.name?t.name:void 0),a=i??r.firstName,l=s??r.lastName;return{id:e.id,firstName:a,lastName:l,primaryEmailAddress:n?{emailAddress:n}:null,emailAddresses:n?[{emailAddress:n}]:[]}})(a),[a]),f=(0,l.useMemo)(()=>{var e;return{isLoaded:t,isSignedIn:!!s?.access_token,isAdmin:!!(e=a?.email)&&[...new Set((d.env.ADMIN_EMAILS??"").split(",").map(e=>e.trim().toLowerCase()).filter(Boolean))].includes(e.trim().toLowerCase()),user:p,getToken:async()=>s?.access_token??null,signOut:async()=>{await h.auth.signOut()}}},[h.auth,t,p,s?.access_token,a?.email]);return(0,i.jsx)(u.Provider,{value:f,children:e})}function m(){let e=(0,l.useContext)(u);return e?{isLoaded:e.isLoaded,isSignedIn:e.isSignedIn,isAdmin:e.isAdmin,getToken:e.getToken}:{isLoaded:!1,isSignedIn:!1,isAdmin:!1,getToken:async()=>null}}function h(){let e=(0,l.useContext)(u);return e?{isLoaded:e.isLoaded,isSignedIn:e.isSignedIn,user:e.user}:{isLoaded:!1,isSignedIn:!1,user:null}}function p(){let e=(0,a.useRouter)(),t=(0,l.useContext)(u);return{openSignIn:({forceRedirectUrl:t}={})=>{let n=t?`?next=${encodeURIComponent(t)}`:"";e.push(`/auth/signin${n}`)},openSignUp:({forceRedirectUrl:t}={})=>{let n=t?`?next=${encodeURIComponent(t)}`:"";e.push(`/auth/signup${n}`)},signOut:async()=>{await t?.signOut(),e.push("/")}}}function f({children:e,forceRedirectUrl:t}){let n=t?`?next=${encodeURIComponent(t)}`:"";return(0,i.jsx)(r(),{href:`/auth/signin${n}`,children:e})}function g({showName:e}){let t=(0,l.useContext)(u),n=(0,a.useRouter)(),s=t?.user?.primaryEmailAddress?.emailAddress??"";return t?.isSignedIn?(0,i.jsxs)("button",{type:"button",className:"inline-flex items-center gap-2 rounded-full border border-border bg-background px-3 py-1.5 text-xs font-medium hover:bg-muted",onClick:async()=>{await t.signOut(),n.push("/")},"aria-label":"Sign out",title:s?`Signed in as ${s}`:"Sign out",children:[e&&s?(0,i.jsx)("span",{className:"max-w-40 truncate",children:s}):null,(0,i.jsx)("span",{children:"Sign out"})]}):null}},22308:(e,t,n)=>{n.d(t,{c:()=>r});var i=n(19338);let s=null;function r(){if(s)return s;let e="https://gttmhutgmovqdtyzfmzh.supabase.co",t="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6Imd0dG1odXRnbW92cWR0eXpmbXpoIiwicm9sZSI6ImFub24iLCJpYXQiOjE3NzMxODY2MTUsImV4cCI6MjA4ODc2MjYxNX0.tkTU4sHhPYIWIfiadiK3nYsyUHfJKe9lqIV6ZcB0rHI";if(!e||!t)throw Error("Missing browser Supabase env: NEXT_PUBLIC_SUPABASE_URL and NEXT_PUBLIC_SUPABASE_ANON_KEY are required.");return s=(0,i.createBrowserClient)(e,t)}},78080:(e,t,n)=>{n.d(t,{t:()=>r});var i=n(22308);let s=["/api/health/","/api/client-transactions/","/api/webhooks/","/api/audio/tracks"];async function r(e,t){let n="string"==typeof e?e:e instanceof URL?e.toString():e.url;if(!(n.startsWith("/api/")||n.startsWith(window.location.origin)&&n.includes("/api/")))return fetch(e,t);let r=function(e){if(e.startsWith("/api/"))return e;if(!e.startsWith(window.location.origin))return null;try{return new URL(e).pathname}catch{return null}}(n);if(!r||s.some(e=>r.startsWith(e)))return fetch(e,t);let a=(0,i.c)(),{data:{session:l}}=await a.auth.getSession(),o=l?.access_token;if(!o)return fetch(e,t);let d=new Headers(t?.headers??(e instanceof Request?e.headers:void 0));return(d.has("Authorization")||d.has("authorization")||d.set("Authorization",`Bearer ${o}
1`),e instanceof Request)?fetch(new Request(e,{...t,headers:d})):fetch(e,{...t,headers:d})}},93694:(e,t,n)=>{n.d(t,{NZ:()=>r});var i=n(78080);async function s(e){let t=new Headers;if(t.set("Content-Type","application/json"),e){let n=await e();n&&t.set("Authorization",`Bearer ${n}`)}return t}async function r(e,t){let n=await s(t),r=await (0,i.t)("/api/stripe/checkout-credits",{method:"POST",headers:n,credentials:"include",body:JSON.stringify({packId:e})}),a={};try{a=await r.json()}catch{}return r.ok?a.url&&"string"==typeof a.url?{ok:!0,url:a.url}:{ok:!1,error:"No checkout URL returned."}:{ok:!1,error:"string"==typeof a.error?a.error:"Credit checkout failed."}}}}]);

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.